Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

Post Reply
User avatar
Posts: 210
Joined: Thu Oct 21, 2004 4:02 pm
Location: San Diego


Post by teaguecl » Tue Oct 26, 2004 5:09 pm

I was looking at the PPU patent, US patent 5,125,671. I noticed that in Fig. 2 of that document, they consider the horizontal blanking period to be at the beginning of a scanline instead of at the end. I realize this is just anohter way of looking at how things work, but this way might be less confusing. Under this scheme, there no longer is "prefetching" of data for the next scanline. Instead this fetching is done during the HBLANK of the current scanline, which happens before the render. This seems like it could reduce some of the confusion involved with the pixel pipeline. Although I am uncertain how they account for scanline 1 not having an HBLANK period. Anyway, seemed interesting and so I thought I would throw it out here.
Last edited by teaguecl on Mon Nov 15, 2004 5:08 pm, edited 1 time in total.

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

Re: Perspective

Post by tepples » Tue Oct 26, 2004 6:13 pm

teaguecl wrote:they consider the horizontal blanking period to be an the beginning of a scanline instead of at the end.
The Atari 2600 console considers hblank to start a scanline as well. The GBA, on the other hand, follows the opposite convention, which causes no end of "what's the deal with the first scanline?" questions when newbies discover hblank DMA.

User avatar
Posts: 1606
Joined: Sun Sep 19, 2004 10:59 pm

Post by Quietust » Tue Oct 26, 2004 7:21 pm

The NES PPU itself considers hblank to end the scanline, especially if you look at its memory fetch patterns (each scanline ends with half a memory access) and when it sets/clears the flags in $2002 (the beginning of scanlines 241 and 0, respectively).
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.

Post Reply