Sorry, if this gets a little long, but am looking for some help here, it feels like I am 99% of the way there.
So, I hate replacing 28 pin Mask ROMs with 32 pin EPROMs, it looks ugly. I found a guy who made an adapter board for TSOP32 to 28 pin DIP to replace old Mask ROMs (https://blog.system11.org/?p=1871) and I figured I'd give it a try. (I ordered 12 from OHS Park just to try them out). FYI - he was replacing Mask ROMs on an acrade board, but as far as I could tell, they matched the pinout of the 28 pin Mask ROM that Famicom carts are using.
I bought some AM29F010B-120EC on ebay to pair with the boards. Just wanted to call out the flash chip I am using.
So, I decide to try this on Ganbare Goemon 2 as it has 1Mbit 28 pin Mask ROMs - CHR and PRG. Good experiment. I am using the most recent translation from 2022 (https://www.romhacking.net/translations/1329/). The cart tests OK and boots with original ROMs. The translation checks out and loads in Mesen emulator. I figure I should have a good chance of success here.
Just to note, the patch was .BPS, and I used Beat v1 to apply the patch to the original ROM.
So I have replaced the ROMs with the TSOP adapters and low and behold, it boots right up. But there is a problem. Although the graphics are nice and clean, the text that scrolls (ex. at the beginning, or when you walk into a door or the shop) is garbled and scrolls all over the screen.
It should be noted that with this patch, the size of the PRG was doubled from 128K to 256K. I did patch the original Famicom image per the instructions. I used famiROM to extend the CHR and PRG to 1MB.
I am wondering what I am missing. I figured using the original board would not introduce any issues, like with the mapper (unless the extended PRG did something weird). I've read about needing to swap A0 and A1 on some cases on Konami mappers, but I imagined this would not be required as in most cases that is when trying to use as a donor for something else.
Otherwise I am assuming that these boards will be a good replacement in other carts that have 28 pin Mask ROMs. However, I would like to see if I can figure out what is going on here with Ganbare Goemon 2 as I would love to see it working 100%.
Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
Moderator: Moderators
Re: Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
It sounds like it cannot access the data in the new, expanded banks. Look into the address line that goes over the original 128k.
edit: you could try this theory in an emulator too, by writing garbage over the patched rom's latter prg half.
edit: you could try this theory in an emulator too, by writing garbage over the patched rom's latter prg half.
Re: Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
You've mixed up megabits and megabytes. A 1 megabit ROM is 128 kilobytes. Your extended PRG is 256 kilobytes, which is 2 megabits, so it doesn't fit.
You can make it work though! Get a 2 megabit flash ROM and add a wire between pin 6 of the flash ROM (not pin 6 of the original ROM socket!) and pin 39 of the VRC2.
You can make it work though! Get a 2 megabit flash ROM and add a wire between pin 6 of the flash ROM (not pin 6 of the original ROM socket!) and pin 39 of the VRC2.
Re: Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
AFAIK, the 29F010 is a 128 kByte Flash ROM. It sounds like you are trying to program 256 kBytes PRG-ROM data into a 128 kByte chip. Is that a correct observation?
If so, you are going to have to add more PRG-ROM capacity to the cartridge, and PRG A17 is going to need to be hooked up to something. You have a couple of options to make that happen. I looked at the board, and it does seem to support the '020 and '040:
So, you can simply replace the 29F010 with a 29F020 or 29F040 to double or quadruple the capacity. That is probably the easiest.
Another option, since you likely have a few of these boards and 010 chips already, is to use 2x 29F010 for the PRG-ROM. We can give you details how to hook that up if you are interested in that. It will require lots of more wires, but maybe you can take a shortcut with that by "stacking" the PCBs, since I am guessing they are pretty thin. It may also require an extra logic gate chip, I am not sure. Let us know; I will be happy to look into it for you.
Edit:
I also have a recommendation for you. You could use a PLCC-32 socket/adapter like this:
Then, just the the PLCC-32 version of the Flash ROM chip. I believe that this would be a lot cheaper, and also giving you the benefit of a removable ROM chip. You would be able to easily remove the chip and reprogram it.
In fact, you can buy only the thru-hole socket:
The socket can be soldered into a cheap prototype PCB or solder directly to the pins. Using a PCB will prevent the pins from bending and making contact with each other, also just generally giving you a nice rigid area to work with:
For tight spaces, you can also use the surface-mount version of this socket, but it will require good soldering equipment and skills to use those.
If so, you are going to have to add more PRG-ROM capacity to the cartridge, and PRG A17 is going to need to be hooked up to something. You have a couple of options to make that happen. I looked at the board, and it does seem to support the '020 and '040:
So, you can simply replace the 29F010 with a 29F020 or 29F040 to double or quadruple the capacity. That is probably the easiest.
Another option, since you likely have a few of these boards and 010 chips already, is to use 2x 29F010 for the PRG-ROM. We can give you details how to hook that up if you are interested in that. It will require lots of more wires, but maybe you can take a shortcut with that by "stacking" the PCBs, since I am guessing they are pretty thin. It may also require an extra logic gate chip, I am not sure. Let us know; I will be happy to look into it for you.
Edit:
I also have a recommendation for you. You could use a PLCC-32 socket/adapter like this:
Then, just the the PLCC-32 version of the Flash ROM chip. I believe that this would be a lot cheaper, and also giving you the benefit of a removable ROM chip. You would be able to easily remove the chip and reprogram it.
In fact, you can buy only the thru-hole socket:
The socket can be soldered into a cheap prototype PCB or solder directly to the pins. Using a PCB will prevent the pins from bending and making contact with each other, also just generally giving you a nice rigid area to work with:
For tight spaces, you can also use the surface-mount version of this socket, but it will require good soldering equipment and skills to use those.
Last edited by Ben Boldt on Sun Jul 24, 2022 2:17 pm, edited 1 time in total.
Re: Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
Oh I made a bad assumption that the DIP pinout was the same as a standard '010. Heck, it is a totally different number of pins... Thank you for pointing that out.
Re: Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
One problem is probably that a 28-pin ROM can only possibly hold 128KiB of data, not 256KiB. At least one bodge wire will be required to use this original PCB.
(28 pins: 2 for power and ground, 8 for data, 1 for "emit data", leaves 17 for address. 2^17 = 131072)
(28 pins: 2 for power and ground, 8 for data, 1 for "emit data", leaves 17 for address. 2^17 = 131072)
Re: Ganbare Goemon 2 English Translation - 28 Pin Mask ROMs
Here is the corrected image. The pads for those pins don't go anywhere unfortunately.