I've been working on finding differences independently, though I used a different method from the method used in the first post. Basically, I've used the method described here to dump the 3DS's RAM while I had a Virtual Console game running, then I was able to find the ROM within the dumped RAM. All GB/GBC ROMs (and possibly other systems, I haven't looked at any others yet) start at 0x28002C4 in a RAM dump. (Note that my 3DS is on 9.5.0-22; this method is not possible in later firmware versions.)
I've made some notes here, which are currently disorganized at the moment, but at least you can see internal changes for the games that I looked at.
I've looked at the following games:
Donkey Kong Land
This is completely identical to the original English version.
Donkey Kong Land 2
The flashing that occurs in Lava Lagoon, Glimmer's Galleon, and Clapper's Cavern was toned down (reduced to half of its original blinking rate).
Donkey Kong Land III
This is completely identical to English version 1.1.
Super Mario Land 2
On the screen where Mario is standing in front of Wario's castle, the flashes from the lightning strikes have been toned town (the 3DS version has fewer flashes whenever there is a lightning strike).
Metroid II
The title screen had a subtle change. Every 1,024 frames, the screen flashes 3 times on the 3DS, and 4 times on the Game Boy. Strangely, the blinking rate was not slowed down at all.
Wario Land 3
I haven't finished looking at this game yet, but I do know that some cutscenes have altered color palettes. The most notable one (that I've found so far) is that when The Steep Canyon becomes accessible, there are dark gray colors in the 3DS version whenever there is a lightning strike (the Game Boy version uses white colors). (This is easier to understand if you view this animated GIF.) Some cutscenes share color palettes, so this change also affects other cutscenes as well.
Super Mario Bros. Deluxe- As the patch file in the original post shows, some text strings in the Fortune Teller were changed. All text strings that were removed were related to multiplayer features (like VS Mode). This was obviously due to the fact that the 3DS doesn't support the Link Cable or infrared. The strings that replaced the old strings are duplicates of existing strings.
- There are some aforementioned FC opcodes, which would crash on emulators like BGB or real hardware. Like what other people mentioned, I think the 3DS does some weird patching when it sees an FC opcode. After some experimentation (via Virtual Console ROM injection), I found that the FC opcodes at 0x120D and 0x1211 make the "Print" option do nothing when A is pressed (not even an Error 02 message appears, as was the case on the Game Boy Color).
- There are also FC opcodes at 0x3D68 and 0x3D6C, but I have no idea what these do.
The Legend of Zelda: Link's Awakening DX
OK, I haven't really looked at this one yet, though I did notice some FC opcodes. I did notice that people already found some changes in the 3DS version, so this is a low priority for me.
Other
I also have a few NES/FDS games on the 3DS, namely Super Mario Bros. 2 (Japanese), The Legend of Zelda, and Zelda II, but I haven't looked at these yet (short of dumping RAM when running these games). I'll get to these after I get to all the Game Boy (Color) games.
Because the 3DS needs to be updated to the latest firmware in order to access the eShop, I will never be able to look at any other game unless a future exploit is discovered. (And I will need to update my 3DS at some point anyway, because I have plans to use the eShop in the future.) But hopefully, other people will be able to find Virtual Console changes.
By the way... should the Bob template on TCRF have a parameter for Virtual Console changes? Considering there are quite a few games that have VC changes, I think it would be helpful (especially having a category for them). |