all 21 comments

sorted by: hot top controversial new old
[–] 66 points 3 months ago* (3 children)

Cartridge games were always fast to start. There are essentially no loading times on them, just maybe some logos that you would have to wait through. CD based systems are what introduced the concept of loading times to console gamers, because cds read data from the disk at a massively slower speed than a cartridge.

  • source
  • hideshow 3 child comments
  • [+] [S] 13 points 3 months ago (1 child)
  • [–] 9 points 3 months ago

    Also the data on a cartridge is read using addresses just like memory, whereas on a disc you use tracks and then do a long sequential read. If you want one byte of data from a specific place you have to read much more than one byte from a disc, but from an addressed system you may be able to read an individual address then move on.

    Also if you have 600mb to work with you tend to be a little less frugal thab if you have only a few megs to work with like on a GBA.

  • source
  • parent
  • [–] 4 points 3 months ago

    I remember once watching someone play a game on a PSP when that was a current console... and being absolutely surprised that on occasion, frames didn't load completely instantly. I only owned Nintendo consoles (GBA, NDS) at the time, so wasn't used to this.

  • source
  • parent
  • [–] 27 points 3 months ago

    Traditional cartridge based games (NES, SNES, N64, GB, GBA, Sega Genesis) had pretty much no load times, this is because a cartridge is a memory chip you connect directly to the console, so its contents can be read instantly. There are a few exceptions, some cartridge games still have loading screens because they need to decompress assets (an example that comes to mind is crazy taxi for GBA).

    Disc based games (PS1, PS2, Xbox, PSP) have load times because they need to physically spin the disc and move the laser to read its contents. This was also the case with floppy disc and tape based games (commodore 64).

  • source
  • [–] 17 points 3 months ago*

    Today's equivalent of a GBA cartridge would be a special read-only DDR5 stick that you plug into your mainboard, and the game runs directly from the installed memory. They don't need loading, they don't need booting at all, when you power up it is already in the memory.

  • source
  • The Gameboy Advance is a little weird, but most cartridge-based game systems featured little to no boot or loading time because the ROM chips in the cartridge are attached to the CPU the same way the RAM does (electrically speaking), and has similar performance. So game data, things like textures, sprites, level data, audio, are just...accessible to the CPU already. It has to do a very brief initialization to set up some variables but other than that everything is just ready to go.

    On a disc-based system like Playstations, the game data is on an optical disc. So the game has to be read into memory from the disc before the game can start. That takes time, hence boot times and loading screens. PCs are similar, it takes time to load the game data from a hard disk or SSD or optical drive or diskette into working memory. Fun fact about this: CD-based games usually stored the background music as red book digital audio, so the console would load game data into memory, start executing it from there, then the optical drive just starts playing the disc like a normal CD simultaneously, which 1. allows the background music to be very high quality and 2. completely frees the CPU from that task.

    Another fun fact, on at least some consoles it was possible to add additional RAM or even sound or graphics accelerators to the cartridge. Super Mario Bros 3 on the NES has additional RAM in the cartridge, Star Fox on the SNES has a 3D accelerator chip.

  • source
  • [–] 8 points 3 months ago*

    To expand on what the others are saying here, cartridge based systems load quickly because they are more or less directly accessing the data in the cartridge as if it were memory. In fact, in many older systems the cartridge storage area is mapped directly into the memory (RAM) address space. Disk based systems need to sequentially read data into memory temporarily in order to use it for anything, and are inherently limited by their small amount of memory so they can't load anything even approaching the entire contents of the disk at once, and they also tended to have slow drives in order to make them cheaper. A Playstation 1 has 2 megabytes of memory but a CD can hold somewhere in the neighborhood of 650 or 700 megabytes of data. There's no amount of programming trickery that's going to get the entire game into memory all at once unless your game is hilariously small, so the system is going to have to pull the parts of it needs off of the disk as it needs them, which necessitates loading screens.

    Meanwhile a cartridge based system can access all (deliberately leaving more complicated topics like bank switching out of the conversation, here) of the data on cartridge more or less instantly.

    Things are starting to come full circle here a bit with the Switch and Switch 2 which are indeed cartridge based, but have to load as if they had a disk because the data on their cartridges is both encrypted and compressed, so it can't be used directly off of the cart like in the good old days and instead has to be unpacked and copied into the system's memory first.

  • source
  • [–] 6 points 3 months ago* (last edited 3 months ago) (5 children)

    Solid state storage is fast. CDs are slower and because it's a physically spinning disc, there are seek times that delay reading too.

    On gba you should be able to just stream things directly from the cartidge instead of loading everything to memory first.

    Edit: and your modern emulator console can load the entire gba rom into memory in the blink of an eye.

  • source
  • hideshow 5 child comments
  • [–] 3 points 3 months ago (4 children)

    Actually you don't even stream from the cartridge. The cartridge connector is part of the system bus. The equivalent of the CPU-RAM connection on the current motherboards. When you insert a cartridge, the ROM chips inside the cartridge becomes part of your system memory. So you literally run it directly from the cartridge. Imagine today's games came inside RAM sticks, and inserting them into DDR5 slots.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 2 points 3 months ago (3 children)

    More like a PCie storage device with DMA no?

    Sorry if that's pedantic lmao, but I feel like even the GBA ram blew nonvolatile storage out of the water

  • source
  • parent
  • hideshow 3 child comments
  • [–] 2 points 3 months ago (2 children)

    I'm not sure about GBA architecture specifically, but earlier systems just plugged those into the system bus directly.

    According to here the ROM is directly on the bus, but since ROMs are slower than RAM, there is a cache-like buffer in between. But it's not a separate IO bus, it's still the memory-mapped system bus.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 5 points 3 months ago

    Pretty good video on the topic, but it mostly just says what other commenters have said

    https://youtu.be/kBTfo5xXH1c

  • source
  • [–] 4 points 3 months ago

    One more note to clarify what's already been said: While the CPU in older consoles can read data and execute instructions directly from the cartridge because it's connected to the CPU's memory map like all the other hardware and RAM in the system, most consoles still needed graphics and sound data to be copied into specific areas of onboard RAM, and couldn't use them straight from the cartridge. This is because those subsystems were hardwired to work only from certain addresses, or even their own, separate RAM.

    (I'm aware that the Famicom/NES doesn't do graphics this way by default, but in terms of hardware design it's an outlier, and getting into the weeds explaining everything related to that would at least double the length of this comment.)

    Because the CPU can read and write that data so fast, however, it's still orders of magnitude faster than reading from most external media like tapes, floppy disks, and optical discs.

  • source
  • [–] 5 points 3 months ago (3 children)

    The games are tiny so it doesn't take long to load stuff.

  • source
  • hideshow 3 child comments
  • [–] -2 points 3 months ago