eolas/neuron/0c4abb9b-c940-4636-84e0-b880b7c1ac8b/ROM_versus_disk_loading.md

59 lines
3 KiB
Markdown
Raw Normal View History

2024-12-09 18:34:15 +00:00
---
id: rmvm
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 systems point of view, this ROM chip behaves as
an extension of the systems 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 consoles 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