How do I rewire a TLROM cart for EPROMs/Flash ROMs?

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
How do I rewire a TLROM cart for EPROMs/Flash ROMs?
by on (#11631)
I burned a Megaman 5 ROM hack to two 39SF020 flash ROMs and wired them into a real cart. The instructions on the site didn't mention how to do this with TLROM carts, so I followed the directions for TSROM carts.
The result was a flash of scrambled tiles followed by a gray screen when I tried to start the game. Did I put the ROMs in wrong, or did I use the wrong flash chips?

by on (#11656)
TLROM would have the same modifications as TSROM.
I put those here in case of you're interested, but it only works up to 128kb of either PRG and CHR.
Actually, figuring yourself the modification to do is rather simple. Just compare the pinout of both chips, and note wich signals have to be rewired.

by on (#11794)
some types of flash memory needs /WE connection to +5V or /OE
(especially in CHR ROM!)

- connect FLASH /WE (pin #31) to FLASH +5V (pin #32)
- or /WE (pin #31) to /OE (pin #24)

try both method if one not help.

by on (#11944)
That fixed it! Thanks!

While we're on the subject, is there any way to tell if a game uses a TLROM or TSROM board just by using an emulator?

by on (#11946)
TSROM has PRG RAM at $6000-$7FFF, where TLROM has open bus. If an MMC3 game writes to RAM and expects to read the same value back, it's TSROM. If not, it's TLROM for manufacturing cost reasons. TKROM is identical to TSROM except it has a battery.

See KH's list of MMC3 boards

by on (#11952)
So if I pull up the debugger and look at that range of RAM you mentioned, and the game just keeps it at 00 instead of twiddling it around like the rest of the RAM, then it's a safe bet that the game I'm running uses a TLROM board?

by on (#11953)
If it keeps the RAM all at $00, it's a safe bet you're using an inaccurate emulator. :)

by on (#11961)
blargg wrote:
If it keeps the RAM all at $00, it's a safe bet you're using an inaccurate emulator. :)

Or an inaccurate file format. The iNES header makes no distinction between TLROM and TSROM. There is an unofficial extension that uses bit 4 of byte 10 to distinguish TLROM from TSROM, but few emulators honor it.

by on (#11962)
Emulating SRAM on a card that doesn't have any or emulating no bus conflicts on a card that have bus conflicts typically have no effect.
However, this is important for people developping games, while not really important for emulators.
As for SRAM, emulating 64kb for MMC5 games will work with all games with 32kb, 16kb and 8kb, so this is what most emulators does. It doesn't really matter in the emulator's point of view, but it does for the developper.

by on (#11963)
Bregalad wrote:
Emulating SRAM on a card that doesn't have any or emulating no bus conflicts on a card that have bus conflicts typically have no effect.

Low G Man is the exception that proves the rule. It depends on open bus in $6000-$7FFF.