3-game cartridge and MMC3 / reset vector issue

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
LilaQ
Posts: 29
Joined: Mon Sep 02, 2019 3:28 pm

3-game cartridge and MMC3 / reset vector issue

Post by LilaQ »

Hi guys,

I'm trying to implement MMC3 right now. And I really want to get this multi-game cartridge to run, that I had myself when I got my NES back then (SMB - Tetris - World Cup, that was packaged with the NES)

So, I think I kinda grasped the concept of MMC3, but I'm actually stuck when initializing it. So, the area 0xe000-0xffff is supposed to be statically mapped to the last PRG bank. Now, when evaluating the iNES header, I get a 16 / 0x10. And as these banks are only 8k, not 16k, I double the value. So, I have 32 * 8k banks to my avail. (Additionally 256k CHR ROM, but that shouldn't be important right now).

Now, when I actually implement it this way I start with the PC 0xff82, which should be wrong. When I compare to Mesen, it starts with PC 0xff00. So I check the memory in Mesen, and search for the bytes of the reset vector (plus a few around them) in the ROM, and there is only a single occurence - at 0xfffc / 0xfffd. And that is, for my understanding, wrong?! For all that I know, the last bank should be bank 31 (* 0x2000), so the reset vector should be around 0x3fffc / 0x3fffd...?

Am I missing something? Has someone had the same problem? Maybe I'm just blind, or not seeing the obvious here.

Any help would be greatly appreciated.
lidnariq
Site Admin
Posts: 11621
Joined: Sun Apr 13, 2008 11:12 am

Re: 3-game cartridge and MMC3 / reset vector issue

Post by lidnariq »

That specific multicart isn't plain MMC3 (mapper 4)! It's mapper 37.

I'd recommend starting with something that's not a multicart.
LilaQ
Posts: 29
Joined: Mon Sep 02, 2019 3:28 pm

Re: 3-game cartridge and MMC3 / reset vector issue

Post by LilaQ »

Thank you so much!
Post Reply