Autosave: 2024-06-24 18:00:04
This commit is contained in:
parent
c61585eafc
commit
f31d4de92b
2 changed files with 59 additions and 0 deletions
BIN
.zk/notebook.db
BIN
.zk/notebook.db
Binary file not shown.
59
zk/ROM versus disk loading.md
Normal file
59
zk/ROM versus disk loading.md
Normal file
|
@ -0,0 +1,59 @@
|
|||
---
|
||||
id: rmvm
|
||||
title: ROM versus disk loading
|
||||
tags: [computer-architecture, memory]
|
||||
created: Monday, June 24, 2024
|
||||
---
|
||||
|
||||
# ROM versus disk loading
|
||||
|
||||
I will explore the concept via the practical examples of cartridge-based and
|
||||
disk-based video games console.
|
||||
|
||||
When you insert a disk into an Xbox, the game data is typically read from the
|
||||
disk and transferred into the console's memory by the OS. If the game is
|
||||
installed to the hard drive, this initially involves transferring substantial
|
||||
amounts of data to speed up future access. When you insert a cartridge into a
|
||||
console like the SNES, the data is not transferred in the same way. Instead, the
|
||||
cartridge contains a ROM chip that, when inserted, integrates directly with the
|
||||
motherboard. From the operating system’s point of view, this ROM chip behaves as
|
||||
an extension of the system’s memory architecture.
|
||||
|
||||
The primary advantage of a ROM-based game is significantly reduced latency. The
|
||||
game data can be accessed as rapidly as any other data moving along the buses of
|
||||
the motherboard. With a disk, the data must first be read into a buffer and then
|
||||
transferred to a memory address where it can be accessed by the CPU.
|
||||
|
||||
With a ROM, while the console CPU still uses its own RAM to run the game
|
||||
(similar to disk-based systems), the game data on the ROM can be loaded into
|
||||
this RAM more quickly because it is directly attached to the motherboard. This
|
||||
makes the ROM cartridge effectively a fast, directly connected storage device.
|
||||
|
||||
However, despite its speed, the limitation of a ROM cartridge is its storage
|
||||
capacity—it can hold only as much data as the chip can accommodate. In contrast,
|
||||
a disk can store much more data. This larger storage capacity allows not just
|
||||
for bigger and more complex games but also for the possibility of expanding the
|
||||
game through additional data downloaded to the console's hard drive. Such
|
||||
expansions or patches represent additional data from the console’s storage that,
|
||||
combined with the original disk data, are synthesized in memory at runtime for
|
||||
enhanced or updated gameplay experiences.
|
||||
|
||||
(Note however that modern cartridge-based consoles like the Nintendo Switch can
|
||||
also combine ROM-data with expanded data from the console HDD, sourced from the
|
||||
internet.)
|
||||
|
||||
Both disks and ROMs are forms of static storage in the context of a game
|
||||
console. While disks can technically be overwritten with new data, in practice,
|
||||
manufacturers implement various locks and protections to prevent this. Any
|
||||
changes or additions to the game, such as patches or expansions, are not written
|
||||
back to the original disk. Instead, these updates are stored on the console's
|
||||
hard drive.
|
||||
|
||||
Therefore, if you download an expansion for a game on your Xbox, the original
|
||||
disk remains unchanged as when you first purchased it. Consequently, if you were
|
||||
to take that disk and load it on another Xbox, it would not include any of the
|
||||
expansions or updates. The game would function in its original form, as the
|
||||
additional content and updates reside solely on the hard drive of the first
|
||||
console where they were downloaded.
|
||||
|
||||
## Related notes
|
Loading…
Add table
Reference in a new issue