I've been attempting to make a custom game and run it on my NES. I started with a Gyromite cart, removed the PRG and CHR PROMs, added bridges in their place, and popped in my own burned PRG and CHR EPROMs. All I get, however, is a solid grey screen (no blinking).
My NES absoloutely works, and I tested this board specifically before I modded it and it played fine. The board was not damaged at all during the removal of the original PROMs.
My code runs fine in FCEU. I tried splitting it into CHR and PRG manually and with a utility, and they produced the same result.
I then tried burning Gyromite back on to my EPROMs, and again, I was greeted with the same solid grey screen.
Any ideas what might be going on?
Are the original maskroms still in a condition where they can be used on it? The pinout should be the same as EPROMs, as I suppose you know.
I'm not sure what's wrong, with NROM there's not much that can mess up. Seems like it would have to be a ROM splitting or electrical issue (open or short on a pin?), sounds like you've ruled out the ROM split already though.
All the pins of the bridges should be connected back to the original spots where the CHR and PRG EPROMs were, right? I noted that one some tutorials using boards with mappers that they left some pins unconnected..
EDIT: Here's the code for the
PRG and
CHR.
Hm. I see it's a 16kB PRG and the code is at $80xx. That's shouldn't be a problem though, since the NES should mirror a 16kB rom $8000 and $C000.
If you have a 32kB EPROM, perhaps you could try copying your PRG into it twice and burning that. I remember there's a couple different NROM board types though, NROM-128 and NROM-256, I can't recall what the differences were exactly (maybe search the forum if you want to).
Just double it up with no buffer between them? Or are there specific locations on the EPROM it should go in?
Should I double the CHR and PRG both, or just the PRG?
^^^ That post was mine, I forgot to log in.
You mentioned that $80xx might be a bad location?
But would the 32k EPROM explain why Gyromite wouldn't run again on it's own board?
Yeah, just doubling up the PRG is what I meant.
Starting at $8xxx is generally fine for 16kB games, I've seen some games (I think Lunar Pool was one) that do exactly that.
So yeah, I'm a bit mystified about why your cart isn't working. Doubling up the PRG really shouldn't fix Gyromite, it should work already like you suspected.
If you're new to soldering stuff, make sure the rom socket is joined to the board properly (using a multimeter or just up-close visual inspection).
Yeah, the board looks clean, just from a visual inspection. Taking out the original PROMs was pretty involved, and I ruined a bunch of boards before finally getting this one right, which made it twice as frustrating when this board turned out not to work, either. Unfortunately I don't have a multimeter to test with.
One other thing, as I trying to get the cart into the correct vertical position, I noticed a few stray tiles appeared on the screen for a moment, but I couldn't get them back. I could have been random, but I doubt it..
Can you provide me with any more info about "doubleing up"? An example, maybe?
At the command prompt (or batch file, or anything) you can type "copy /b file1.prg+file1.prg file2.prg"
Ah ha! It did work!
There's still an inssue, though, in that it will display the a weird glitched out version of what I should see (it's a single screen), and only when I press reset, but at least this rules out the board not working!
Thanks so much!
If you have any further suggestions, I'd love to hear them
I can almost get it to display properly if I don't seat the CHR EPROM all the way. Are there pins that should be bridged or not inserted?
Just a stab in the dark here, but did you check that the pinouts of your EEPROMS match the ROM pinouts? When you say you "bridged" the chips, I'm assuming you connected pin 1 to pin 1, pin 2 to pin 2 etc. There are a couple of pins that don't match on most EEPROMS, so you have to re-route a bit. What is the part number of the EEPROMS you have?
They're M27C256B
I was looking through the "Cart Types" doc, and I couldn't find anything that matched the Gyromite board (it's listed at the bottom, though).
It's cool then, it's the 28xxx series ones that are EEPROMs. Gyromite board is probably NROM-128, you should be able to see it printed in gold on the board.
However, CHR uses 8kB ROM (which would be a 27C64 EPROM, but it's possibly not worth getting those because they're older/rarer). So I think I realize the CHR problem now, maybe you burned CHR into the lower 8kB then the NES is probably displaying the upper 8kB. So try duplicating the CHR.
Like "copy /b file.chr+file.chr+file.chr+file.chr file2.chr"
I'm going to give that a go in a few minutes (it's finals week, and I've got a huge stack of Art History flashcards in front of me
). I really want to thank all you guys for helping me out. I can say without a doubt that I wouldn't have gotten as far as I have in this project without the input from this board. I really, really appreciate it
It works!
Congratulations!!
I never have the will to do something like that.
That's why I quit working on JQ.
So you took the top off of the nes instead of cutting holes in everything?
Brilliant!
I never thought of that!
Thanks
I still had to cut the cart, but if I leave the top off the NES I can pull the EEPROMs out without having to remove the cart everytime, which is pretty nice.
i see you have it fixed, part of the problem you were having i believe, is due to pin 27 on the CHR rom... the Mask ROM has this set to +5v where the (E)EPROM uses this for an address line. you either have to mirror the CHR multiple times (like you did, i believe) in the (E)EPROM or disconnect pin 27
Also, if you EEPROM (or EPROM) is CMOS (it most likely is, too), don't leave any pins floating. Always tie them to +5V or GND through a 10K resistor.
CMOS should never be left floating.
The reason CMOS shouldn't have floating pins is because when a pin isn't connected to something, it tends to randomly toggle on or off, because of the electrical fields and other convenient stuff in the air.