Mapper recommendation?
Moderator: Moderators
The original iNES format is ambiguous about presence or absence of bus-conflict-avoiding hardware. Mapper 7 encompasses both AMROM, which has bus conflicts, and ANROM and AOROM, which behave identically except for lacking them.
It also has no standard way to denote presence or absence of PRG RAM, other than that the battery bit implies that some sort of battery-backed RAM is present. Any discrete mapper can have PRG RAM added to it. For example, mapper 0 covers both NROM (no PRG RAM) and the Family BASIC board (PRG RAM decoded with a 74HC20). Three different configurations are combined in mapper 4: MMC3 without PRG RAM, MMC3 with PRG RAM, and MMC6 (like MMC3 with a small amount of internal PRG RAM). StarTropics needs an MMC6, and Low G Man needs no PRG RAM. Telling the difference is one reason why kevtris designed NES 2.0.
Why do I bring up PRG RAM? A board using one side of a 74HC20 to decode PRG RAM might use the other side of it to invert PRG R/W to produce /OE for the PRG ROM chip. So I'd almost be willing to assume that a board based on a discrete mapper and modified with PRG RAM has also been modified with no bus conflicts.
Long story short: Use mapper 2.
It also has no standard way to denote presence or absence of PRG RAM, other than that the battery bit implies that some sort of battery-backed RAM is present. Any discrete mapper can have PRG RAM added to it. For example, mapper 0 covers both NROM (no PRG RAM) and the Family BASIC board (PRG RAM decoded with a 74HC20). Three different configurations are combined in mapper 4: MMC3 without PRG RAM, MMC3 with PRG RAM, and MMC6 (like MMC3 with a small amount of internal PRG RAM). StarTropics needs an MMC6, and Low G Man needs no PRG RAM. Telling the difference is one reason why kevtris designed NES 2.0.
Why do I bring up PRG RAM? A board using one side of a 74HC20 to decode PRG RAM might use the other side of it to invert PRG R/W to produce /OE for the PRG ROM chip. So I'd almost be willing to assume that a board based on a discrete mapper and modified with PRG RAM has also been modified with no bus conflicts.
Long story short: Use mapper 2.