Identifying Which Boards to Use for MMC1/MMC3 Romhacks

A place that you can discuss reproduction of classic titles or "licensed-for-reproduction" homebrew for personal use.

Moderators: B00daW, Moderators

Forum rules
1. NO BLATANT PIRACY. This includes reproducing homebrew less than 10 years old, with the exception of free software.
2. No advertising your reproductions, with the exception of free software.
3. Be nice. See RFC 1855 if you aren't sure what this means.
Post Reply
slickrasta
Posts: 2
Joined: Thu May 06, 2021 3:02 pm

Identifying Which Boards to Use for MMC1/MMC3 Romhacks

Post by slickrasta » Thu May 06, 2021 3:16 pm

Hello,

I'm new to reproductions and intend to use RetroBlasters NES Blaster boards for my NES repros. Problem is I have to know which exact board types I need to use for my romhacks. The games I'm trying to make repros of are the following:
Final Fantasy II Restored
Final Fantasy III Redux
Mother 25th Anniversary Edition
Super Mario Bros II Japan MMC3 Conversion
Super Mario Bros III Mix

Resources I've Been Using:
NES Mapper Reader: https://www.romhacking.net/utilities/683/
http://wiki.nesdev.com/w/index.php/TxROM
http://wiki.nesdev.com/w/index.php/SxROM
http://bootgod.dyndns.org:7777/home.php

I'm mystified with trying to identify what exact TxROM and SxROM boards I need to order for these 5 games since they are all romhacks. The NES Mapper Reader program will show if they are MMC1 or MMC3 but doesn't actually specify an exact board. Further the PRG, CHR size and if they need a battery are listed but no other relevant info seems to load when looking at the roms in the program to cross reference with the nesdev wiki list.

The best I've accomplished so far is identifying Mother 25th Anni can be used on a TKROM board because I found a post of a guy showing how he built his repro for it and what original game he used (NBA Basketball - TKROM). The other four I still have no idea. I must be missing something simple but for the life of me I can't seem to find a way to identify what exact boards I need. Any help or insight would be greatly appreciated as I've literally been Googling this for weeks trying to find some answers and still feel totally stumped.

lidnariq
Posts: 10666
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Identifying Which Boards to Use for MMC1/MMC3 Romhacks

Post by lidnariq » Thu May 06, 2021 3:45 pm

The iNES format unfortunately provides a bunch of "better than reality" defaults, and it's often difficult to know if a ROM hack relies on them.

For MMC3 games that have the battery bit set, that's basically always TKROM (unless it's actually MMC6). If the battery bit isn't set, you have to use a debugger to find out it you're talking about TSROM or TLROM.

For MMC1 games, if there's more than 8KB of CHR, and the battery bit is set, that's almost always SKROM. But if there's 8KB or less of CHR (e.g. CHR RAM), you have to use a debugger to distinguish between SUROM, SOROM, and SXROM. If the battery bit is clear, you have to use a debugger to distinguish between SLROM and SKROM without a battery.

slickrasta
Posts: 2
Joined: Thu May 06, 2021 3:02 pm

Re: Identifying Which Boards to Use for MMC1/MMC3 Romhacks

Post by slickrasta » Fri May 07, 2021 12:36 am

I really appreciate the detailed response. I've sorted out four titles now but the FF2 {MMC1) has 0 KB CHR and need a battery so I need to use a debugger to identify it. Would you be able to tell me what I'm looking for or is it more complicated than that? I suspect the latter.
Last edited by slickrasta on Fri May 07, 2021 12:00 pm, edited 1 time in total.

lidnariq
Posts: 10666
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Identifying Which Boards to Use for MMC1/MMC3 Romhacks

Post by lidnariq » Fri May 07, 2021 1:12 am

Looks like the FF2 Restored patch shouldn't change PCB requirements relative to the original game. Check the corresponding translation instead.

For distinguishing between SNROM, SOROM, and SXROM, you're looking for writes to the CHR bankswitching registers: https://wiki.nesdev.com/w/index.php/MMC ... _and_SXROM - you'll just have to keep track of what values are written, and see what that could plausibly correspond to.

Emulators might automatically handle this and let you detect what's correct based on the size of the save game file - 8KB = SNROM(≤256KB PRG) or SUROM(512KB PRG); 16KB = SOROM; 32KB = SXROM.

Jon Nielsen
Posts: 2
Joined: Sat Apr 10, 2021 1:13 am

Re: Identifying Which Boards to Use for MMC1/MMC3 Romhacks

Post by Jon Nielsen » Sun May 09, 2021 10:37 am

For what it's worth I've recently put the Earthbound VC ROM on a real Mother cart which is TKROM. I believe that romhack you mentioned don't change which board type is required. I also plan to put Final Fantasy 3 English version on the original cart seeing as how there's a patch that stays within the 4Mbit ROM capacity. I've done a few repros where the hack changed mappers, and generally had good results with SLROM, SNROM, TLROM and TKROM donors for MMC1, MMC3 games without and with battery saves respectively. As mentioned, when there's additional RAM involved it's more of an issue. I suggest to check out Bisqwits massively impressive Castlevania 2 retranslation to get an idea of how the different features offered changes the requirement of mapper/board configuration :-)

Post Reply