Hey all, just need a quick pointer. Im making a Hot Slots using a CNROM 07. Ive wired it up correctly, (161 lift pin 5, CHR pin 1 to 151 pin 5, prg gnd to 161 pin 12) and changed the mirroring to H. Ive done this before without any problem. Game boots fine, and works, but for some reason during the text part of the game, when you're choosing what slot to play, the graphics are all garbled.
My wiring is fine, pins are clean, nes is clean, and i cant see anything on the board anywhere were i might have created a solder bridge. I even pulled out the chr and replaced it, same problem. At first I thought it might have been still a solder bridge between the V and H part but thats not it. So im really stumped. What would you guys do next? Or even, how can I test the memory location of that text and then test the address pins on my board?
The HVC-CNROM and NES-CNROM boards are designed to work with only a 256 Kbit (32 KiB) CHR ROM. These Panesian games need a bigger CHR ROM.
Hot Slots isn't in NesCartDB, but
Bubble Bath Babes is, and I assume they're on the same board. My first guess is you'll need to wire PRG ROM D2 to D2 of the '161 and Q2 of the '161 to CHR ROM A15, cutting traces as needed.
If you've already done that, could you take a screenshot of the garbled mess with a capture card or camera? Someone might be able to help troubleshoot the problem based on its appearance.
You could try replicating the problem in an emulator. For example, if the CHR-ROM is indeed larger than 32KB, you could try making a new ROM with the CHR truncated to 32KB and open it in an emulator to see it it matches what you're seeing on hardware. Then you'll know for sure that this is the problem.
If you want to test mirroring problems, you can simply change the mirroring type in the iNES header, to see what kinds of glitches that generates. FCEUX also allows you to change the mirroring type in real time, in the name table viewer window.
It seems that different revisions of the CNROM board require different wiring. This is what ive had thats been successful with CNROM 07s, using a 64k CHR chip:
Bend pin 5 on 161
Bend pin 1 on CHR
Wire CHR pin 1 to pin 5 of 161
Wire 151 pin 12 to PRG GND
Ive done this before and it has worked for those games. Its not a mirroring problem because i tried it in an emulator. Plus if it was, the game wouldn't work at all, it would look like a mess. I learned that the hard way. The game works and the title screen works, just the txt for that one screen is messed up. Ill post pics within the hr.
guitarzombie wrote:
Wire CHR pin 1 to pin 5 of 161
Wire 151 pin 12 to PRG GND
There's no way that's right. 161 pin 5 is an input, as is CHR pin 1. Similiarly, 151 pin 12 is an output, and mustn't be tied to ground.
It works, ive done it a few times.
EDIT, just to say that wiring only works with CNROM 07
I remember having this discussion with you before, actually...
Look, either you're counting pins really funny, or you're doing something WILDLY out of spec and it just magically happens to work.
The correct rewiring would be PRG pin 13 to '161 pin 5 and '161 pin 12 to CHR pin 1.
I remember reading it somewhere and trying it and it worked and I stuck with it. I did Bubble Bath Babes today with the same board and same wiring and it worked.
EDIT. So I tried your wiring and it worked. So now im really confused why it works on some but not others? Im gonna check that other CNROM 07 board and see if its identical.
And I agree with you, it doesnt make sense esp when I read up on it, but it always worked and i never questioned it.
Do the ones that work with the weird wiring have a 74LS161, and the ones that don't work have a 74HC161 ?
No it doesnt, the BBB that worked with my weird wiring is a Texas Instrument 74HC161 and the HS that worked with yours is a Goldstar GD74HC161. I think what it boils down to really is the type of game. It might work or BBB but not HS and it could be some weird thing in the code.
The GD is just a manufacturer prefix. The potential issue is the use of HC parts, when the NES used TTL logic levels, which can potentially be out of spec for CMOS (HC) inputs. CMOS outputs are fully within spec for TTL inputs though. You might want to try an LS or HCT part instead of the HC (HCT are TTL-tolerant input/CMOS output, making them fully compatible with both HC and LS parts).
BTW for what its worth, that wiring diagram doesnt work ONLY for Hot Slots, seems like the one that I was told to do (the logical one) always works for Hot Slots, while the others work regardless.
It's pin 4 of the 161 not pin 5.
Heres another weird version I cant for the life of me figure out.
I made another one and used a CNROM-05 board and used the same wiring. I booted it up, everything works fine, then I get to the actual slot machine, graphics go crazy and the game kinda slows down.
BUUUT heres the kicker...
After a few minutes... the graphics go back to normal and the game works perfectly! Even after a hard or soft reset or turning the game off its perfect! The problem is only when i re-insert the game fresh!
I have the wiring as PRG D3 to 161s pin 6 (lifted), and CHR A15 to 161 pin 11 (lifted). Every trace is good, checked every connected with a multimeter AND burned new chips. AND cleaned the shit out of the pins. And this isnt a mirroring problem, cuz i tried that to. I am so thoroughly confused.
"stops or starts working after a while" in electronics usually implies something thermal. I'd run your NES and cart open and see if anything gets REALLY warm.
I dont have any other problems with any other games. JUST this one. I wonder then if its something like a bad capacitor or something?
Right, something on the cartridge could cause something not on the cartridge to get warm.
Right and im telling you its not that. It might even be another wiring thing because there are so many cnrom revisions and theyre all a little different.
I took a bunch of pics
I see 3 is the max attach...
Also please ignore the sloppy wiring and such. Ive been tinkering with the same board and chips for a while now. Diff wire configs, reburning chips, diff 161 legs.
I also tried to put the pics in order from game start up.
Also even during the intro cutscene, when the demo appears there are no glitches at the slot machine. As soon as the lever is pulled, it freaks out. I really hope this isnt ANOTHER bad PRG chip... the last one I had in there was bad.
Why not another update. So I got another board, same wiring as how it worked last time. Used the same chips and the problem is identical, which leaves me to believe its the chips. Ugh... fucking hate this.
Problem is, i dunno which one is bad! Will the game boot up even if the PRG chip is bad?
Sometimes, sometimes not. Depends on whether the corruption is in program or data.
Given that the pictures are internally consistent, just in the wrong place on screen, it's more likely the PRG UVEPROM is bad here
Yeah it was, which was annoying.
The first chip i used was bad. Game didnt boot at all. Used another chip, and thats what I got. What made this even stranger is that when i put the mirroring incorrectly, the game worked better, but still it was all messy!
Eventually i used used a 64k and it worked.
I wish there was a better way to test the chips. As im unclear how that you can burn a chip, and then verify it 100% and it read wrong?
Verification may not account for access speed? ISTR that UVEPROMs (and EEPROMs and FLASH to a lesser extent) get slower (and also hold onto their data less long) the more times they've been erased+programmed.
See the red line I added on your pic? Put a wire there.
... Why would you need to additionally connect CPU D2 again? It already has to be connected to the PRG ROM...
No need to. I dunno if you read but the cause of the problem was 2 bad over-erased EPROMs.