Diagnosing NES graphics corruption

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderators: B00daW, Moderators

Post Reply
FrankWDoom
Posts: 226
Joined: Mon Jan 23, 2012 11:27 pm

Diagnosing NES graphics corruption

Post by FrankWDoom » Tue Mar 31, 2020 9:24 pm

Howdy, anyone have ideas whats wrong with this toploader? Nothing obviously wrong with the board. Ive swapped vram on the board and the ppu and results are the same.

Screenshot is title screen of action 53 vol 3. Other carts behave similarly. Haven't found any that show correctly. Program and sound appear fine otherwise.
Attachments
IMG_20200328_205337.jpg

tepples
Posts: 21975
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Diagnosing NES graphics corruption

Post by tepples » Wed Apr 01, 2020 7:52 am

I'm seeing VWF tiles repeat at a 2-tile stride, which is 32 bytes. I'm seeing nametable rows repeat at a 1-row stride, which is 32 bytes. So I'd start by checking whether PPU AD5 (pin 33; see pinout) is continuous to the address latch and A5 out of the latch is continuous to VRAM and to the PA5 line of the Game Pak slot (see pinout).

FrankWDoom
Posts: 226
Joined: Mon Jan 23, 2012 11:27 pm

Re: Diagnosing NES graphics corruption

Post by FrankWDoom » Wed Apr 01, 2020 1:24 pm

It does appear ppu pin 33 has no continuity to the 373. The surrounding ppu pins connect in sequence to 373 inputs so i have a reasonable guess where it should go. Ill try to patch it tonight and report back.

Just to understand your reasoning, you are saying ppu ad0-ad4 are working to address a 32 byte chunk, and ad5 is broken resulting in the wrong 32 byte chunk?

User avatar
Quietust
Posts: 1557
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Re: Diagnosing NES graphics corruption

Post by Quietust » Wed Apr 01, 2020 1:30 pm

FrankWDoom wrote:
Wed Apr 01, 2020 1:24 pm
Just to understand your reasoning, you are saying ppu ad0-ad4 are working to address a 32 byte chunk, and ad5 is broken resulting in the wrong 32 byte chunk?
A0-A4 are used to select individual bytes within a 32-byte chunk - A5 (and everything above it) is what selects the 32-byte chunk itself.

He's saying that it looks like every "odd" 32-byte chunk in memory appears to be a mirror of its "even" neighbor, which is a typical symptom of the address line A5 being forced to a constant value (e.g. due to being disconnected from the PPU and possibly attached to a weak pullup/pulldown).
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.

tepples
Posts: 21975
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Diagnosing NES graphics corruption

Post by tepples » Wed Apr 01, 2020 1:43 pm

Quietust is right. I'm saying AD0-AD4 appear to be addressing the correct byte within a 32-byte chunk, and AD6-AD7 and A8-A13 appear to be addressing the correct 64-byte chunk within video memory. But with AD5 not connected, it is not selecting the correct 32-byte half within a 64-byte chunk.

FrankWDoom
Posts: 226
Joined: Mon Jan 23, 2012 11:27 pm

Re: Diagnosing NES graphics corruption

Post by FrankWDoom » Wed Apr 01, 2020 2:15 pm

Ok. I think i understood correctly, if i didnt repeat it back right.

I went ahead with the suggested fix and it looks good now. Thanks for the help!
Attachments
IMG_20200401_141210.jpg

Post Reply