Viewing Single Trivia
▲
1
▼
According to programmer Zoid Kirsch, when rooms are streamed in behind doors, it's loading a compressed copy of the room (i.e. geometry, textures, models, game data). After the compressed copy is loaded into internal memory, space is allocated to decompress the room into, meaning memory is needed for both the compressed and decompressed copy. Since the GameCube has 24MB of RAM, the developers found that having both compressed and decompressed was too expensive to work with (see top image).
To solve this problem, they licensed an open source decompression library (Kirsch does not remember specifically what library but it might have been Lempel–Ziv–Oberhumer) that allows allocation of a single decompressed sized block, then loads the compressed copy into the upper section of the memory block, and decompresses it in place overwriting the compressed copy (see bottom image). This library fixed many issues with memory fragmentation and basically allowed the size of the game's rooms to be much larger.
To solve this problem, they licensed an open source decompression library (Kirsch does not remember specifically what library but it might have been Lempel–Ziv–Oberhumer) that allows allocation of a single decompressed sized block, then loads the compressed copy into the upper section of the memory block, and decompresses it in place overwriting the compressed copy (see bottom image). This library fixed many issues with memory fragmentation and basically allowed the size of the game's rooms to be much larger.
Zoid Kirsch tweet:
https://twitter.com/ZoidCTF/status/1590137508830285825
Lempel-Ziv-Oberhumer:
http://oberhumer.com/opensource/lzo/
https://twitter.com/ZoidCTF/status/1590137508830285825
Lempel-Ziv-Oberhumer:
http://oberhumer.com/opensource/lzo/
Comments (0)
You must be logged in to post comments.
Related Games
Metroid Prime: Federation Force
Metroid Dread
Metroid: Zero Mission
Metroid Fusion
Metroid Prime Hunters
Metroid II: Return of Samus
Metroid Prime: Trilogy
Metroid: Other M
Metroid
New Play Control! Metroid Prime
New Play Control! Metroid Prime 2: Dark Echoes
Super Metroid
Metroid Prime 3: Corruption
Metroid Prime 2: Echoes
Super Smash Bros. Melee
NES Remix 2
New Trivia!
Super Smash Bros. for Nintendo 3DS
Super Smash Bros. Brawl
Metroid Dread
New Trivia!
Super Smash Bros. for Wii U
Ultimate NES Remix
New Trivia!
Super Smash Bros. Ultimate
Nintendo Land
Super Smash Bros.
Nintendo World Championships: NES Edition
Metroid II: Return of Samus DX
Mario Power Tennis
Luigi's Mansion
Super Mario Sunshine
Mario & Luigi: Superstar Saga
Mario Sports Mix
Harvest Moon: Magical Melody
Pikmin 3
New Super Mario Bros. 2
Virtual Boy Wario Land
Super Mario Advance 4: Super Mario Bros. 3
WarioWare Gold
Pokémon Blue Version
Mario Kart 64
Radar Scope
Paper Mario: The Thousand-Year Door
Waluigi's Foot Fault
Banjo-Kazooie: Grunty's Curse
Hyrule Warriors: Age of Calamity
Mario Kart: Super Circuit
The Legend of Zelda: Tri Force Heroes
Professor Layton and the Azran Legacy
Phoenix Wright: Ace Attorney
StarCraft 64
Wario Land 4