Everdrive save states, how is it possible?
In a previous topic, we have an explanation on why a device between the console and the card game cannot save the current state of the game :
Save States for older game consoles?
[...] Saving state is done by copying the current contents of memory/registers into a file, and then loading that file again later. The console's memory is not part of the cartridge. Therefore, this can't be done by capturing the data coming off the cartridge - you'd have to open the case, and solder down something that is capable of reading the contents of the console's memory, and allow it to be restored later. This is a complicated process, and would likely be hard to get right. [...] - agent86
This explanation makes a lot of sense and I'm agree with that.
But then I think about the Everdrive, made by Krikzz, the x7 model notably. This stuff can actually make save states, the game is like emulated with a rom, just like PC emulators, but it's running on the real console hardware. So how is it possible ?
I'm confused, please enlight me.
Solution 1:
Although the theory is somewhat sound, the answer you quoted is probably mistaking these older cartridge consoles as computers.
If you look at some of the weirder hacks, there are ways to reprogram a game via legit, but vigorously timed, controller input. This is an example of hacking Super Mario World to play snakes via controller inputs (vs hacking the ROM or modifying memory).
The fact that you can do this, and various super weird non-direct hacking (via controller inputs and not changing ROM or memory), you can indeed access memory much easier than how you do it on a computer.
Having a hardware cartridge connected between the game and the console most likely gives it a much more direct memory access than plugging a USB flash drive into a computer.