Official Nintendo Emulator
Moderator: Moderators
"So, do you allow me to break out the case and see the processor that's inside it?"
Zepper
RockNES author
RockNES author
There is no distinct PPU chip inside a Game Boy
The CPU in a Nintendo video game system usually has some I/O on the CPU die because it's cheaper than putting I/O on separate chips with separate pins. In the case of the handhelds, "some I/O" includes the entire audio and video rendering circuitry.
I don't know how accurate acNES is, but the point is that it doesn't need to be accurate. If Nintendo controls both the emulator and the ROM, then Nintendo employees can "train" (i.e. patch) the ROM to be compatible with a kinda-sorta emulator in much the same way that some NES games had Nesticle compatibility patches back in the day, or the emulator shipped with each game can be customized with hacks for just that game.
Possibly more importantly, it can be modified to not need emulator features that are somewhat costly to implement. For example, they might convert games from sprite 0 hit to MMC3-style scanline IRQ, or add a new mapper type that gives the best speed.tepples wrote:Nintendo controls both the emulator and the ROM, then Nintendo employees can "train" (i.e. patch) the ROM to be compatible with a kinda-sorta emulator in much the same way that some NES games had Nesticle compatibility patches back in the day
A) you found an exact copy of the Metroid NES ROM in Metroid Zero Mission (except for these font changes), or B) you didn't notice any changes when playing the game?Dwedit wrote:I've only seen the fonts get changed, nothing else. Then again, my only reference is NES Metroid included with Metroid Zero Mission.
500 bytes are different between the extracted metroid rom and the original version.
some general difference ranges:
514-524
1392-1396
19f4-1a05
4d85-5165
1137b-1142b
15134-1516b bg tile graphics
18D50-1B8BE title screen graphics, (c) symbol, bg tile graphics, japanese characters replaced by numbers, font
1E18C-1E1E1
The rest look like possible code or data changes, and I underestimated the number of changes made by Nintendo.
some general difference ranges:
514-524
1392-1396
19f4-1a05
4d85-5165
1137b-1142b
15134-1516b bg tile graphics
18D50-1B8BE title screen graphics, (c) symbol, bg tile graphics, japanese characters replaced by numbers, font
1E18C-1E1E1
The rest look like possible code or data changes, and I underestimated the number of changes made by Nintendo.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
So in other words, it's like a [hFFE], right? Hack it to run on a different mapper that happens to be easier to implement inside GBA hardware. Or as Kevin Horton might put it in the Kevtendo design doc:
It's still the same mapper (MMC1). It still runs perfectly on Nintendulator.
edit:
The Metroid Zero Mission version of acnes will play any 128k PRG 0 CHR MMC1 game you throw at it. The unmodified Metroid worked perfectly, so did Zelda and Kid Icarus. Zelda had some junk at the top of the screen when scrolling from area to area, as well as numeric sprite junk in the title screen.
Rad racer worked surprisingly well, a few glitches.
To inject a game into the Metroid Zero Mission gba emulator, use VBA, select "Play Original Metroid" from the options menu (must have beaten game), run metroid, then use the memory viewer to inject a 128k mapper 1 nes file into 0201BFF0.
edit:
The Metroid Zero Mission version of acnes will play any 128k PRG 0 CHR MMC1 game you throw at it. The unmodified Metroid worked perfectly, so did Zelda and Kid Icarus. Zelda had some junk at the top of the screen when scrolling from area to area, as well as numeric sprite junk in the title screen.
Rad racer worked surprisingly well, a few glitches.
To inject a game into the Metroid Zero Mission gba emulator, use VBA, select "Play Original Metroid" from the options menu (must have beaten game), run metroid, then use the memory viewer to inject a 128k mapper 1 nes file into 0201BFF0.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!