Joe wrote: ↑Thu Jun 30, 2022 1:40 pm
Which games did you try? Super Mario Bros. stores the title screen layout in CHR ROM, so if the title screen displays correctly then the problem is with the EPROM you're using for Battle City.
The only cart with SMB is the one boundled together with duck hunt. It uses a mapper thugh, not sure if it makes any difference, but both games play fine with no issues.
Look at what happens if you use the tile editor in Mesen to clear the tiles for the letters A B C E I L T Y. When you do this, the BATTLE CITY letter bricks are missing and the collisions no longer happen. However, in this test, the letters are also blanked out in normal text.
In your repo cart, the letter tiles are working correctly in normal text. So I was wondering if there could be some problem that only happens when the game looks at the letter tiles to decide which brick tiles it needs to use for the letter-shaped bricks. When the PPU looks at the letter tiles to put normal text on the screen it works fine.
Ah I see now yes, clearing the tiles used as font does indeed clear the title AND the collisions! But, as you said, it also clears the characters used for normal text, but it seems we are getting closer to something.
It indeed seems that the PPU cannot read the tile fonts when it needs them to display the "brick style" letters, be the title or the "GAME OVER".
I created a nes file with a 64kb CHR and only the first 8kb containing the actual rom (the other bytes are 0) thinking that maybe for the title the PPU uses a different address, but the game works just fine. If the problem is likely not inside my NES do you have any clue on what can make the PPU not read those tiles?
Quietust wrote: ↑Thu Jun 30, 2022 3:02 pm
How are the upper address lines of those ROMs connected? Normally, if you're going to plug a 64KB ROM into an 8KB socket then you'd want to connect A15+A14+A13 to either +5V or GND, not some signal that could be allowed to vary (or, worse yet, allowing any of them to
float).
No modifications have been done on the PCB. Plugging a M27c512 in the CHR socket would connect:
eprom PIN 1 (A15) to 5V
eprom PIN 28 (A14) to 5V
eprom PIN 27 (A13) actually I just found that is left floating (I actuallty though it was connected to A14-5V, bu there's no continuty)
On the PRG rom A15 is 5V and address A14 is connected to pin 41 in the 72 cart connector.
I will definitively connect the eprom PIN 27 to 5V just like A14, but since the eprom is repeated 8 times (already verified it) can it be really the problem? What I mean is that even if A13 floats between 0 and 1 the byte read would be the same, just from a different memory cell. Worth give it a try anyway.
I also have a 2764 which is exactly 8kb, but I tend to keep those for atari 2600 games since they are not CMOS and slower, might give them a try too.
In your first post, it looks like you modified an emulator screenshot to show what the screen looked like with your repo cart...
...However, this also changes the colors and reduces the graphic details. When you used your repo cart, did you happen to notice any colors like the following?:
Yes I edited a Mesen screen because at that time I had already desoldered the PRG rom and was not sure to put it back, but in the light of the latest posts it might be a good idea to solder again the prg and the chr so I can take some photos.
The graphics however appeared normally when played on the NES, not like the image you posted.
Tomorrow I'll put the cart together and make some photos,
Thanks!