Question About Emulation...


Rigor Mortis

Member
Joined
May 21, 2003
Messages
174
Is it possible to circumvent RAM limits by downsampling graphics or sound in a ROM while loading into memory? For example, replacing 16 bit 44 khz sfx inside the ROM with 8 bit 11 khz sfx at load time, to save RAM space. Or is it possible to avoid loading the sound data altogether? How about saving RAM by not loading backgrounds?

Now, just so we're clear, I'm just asking if this is theoretically possible, not whether it's practical or not. Neither am I telling any coders to do this in their emus. I just want to know, out of pure curiousity, if it could work under any circumstances.
 
Theoretically possible, but practically impossible.
You'd have to disassemble each rom and ripout that stuff...
Not possible doing this on the fly (well - at least not very easy)
 
That's actually not a bad idea. There's this dos program that can rip/change the sfx of snes roms, you could downgrade the quality or even reduce the sample to nothing. Although snes games fit into the ram perfectly, I wonder if there is a similar way to do this to gba roms.
 
Yes, you can RIP the graphics out of SNES games and you can CHANGE them.
But as a rom is a binary compiled code, you can't make the graphics size smaller because the game looks for this graphic at a specific address...
So you would have to disassemble the rom completely and change all the accesses to the graphics...
 
Yes, you can RIP the graphics out of SNES games and you can CHANGE them.
But as a rom is a binary compiled code, you can't make the graphics size smaller because the game looks for this graphic at a specific address...
So you would have to disassemble the rom completely and change all the accesses to the graphics...
What if you made it so that when the emulator tried to look up a memory address, the access was intercepted by a seperate subroutine in the emulator that redirected it to a new address, making it think it was still looking at the original address? Basically, creating a list of old addresses and their corresponding new addresses while downsampling the data and then using this to fool the emulator when it went to access data.
 
Last edited by a moderator:
Back
Top