about scanline.asm (Quietust's classical demo)

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
Boolean
Posts: 87
Joined: Thu Jan 02, 2014 7:58 am

about scanline.asm (Quietust's classical demo)

Post by Boolean »

I find its text is abnormal.
So please open attachment question.txt.
Thank you.

tips:
normal should be normally in question.txt line 14.
normal should be normally in question.txt line 29.
Attachments
result.png
result.png (13.02 KiB) Viewed 2098 times
scanline.png
scanline.png (5.9 KiB) Viewed 2098 times
question.txt
(1.05 KiB) Downloaded 97 times
User avatar
Quietust
Posts: 1786
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Re: about scanline.asm (Quietust's classical demo)

Post by Quietust »

I don't know - I wrote that demo nearly 14 years ago (and about 10 years ago released the patched version you're running), and I think it was the first test ROM I ever wrote.

My best guess is that it's due to timing differences in the actual operations - turning off background rendering (test #1) takes effect immediately, but changing the pattern table address (test #2) or the nametable address (test #3) takes longer because of pipelining within the PPU. Looking back at my old IRC logs (from October 2000), it looks like I arrived at those numbers through experimentation, namely by having kevtris run it on his CopyNES and tweaking it until it worked.
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.
Boolean
Posts: 87
Joined: Thu Jan 02, 2014 7:58 am

Re: about scanline.asm (Quietust's classical demo)

Post by Boolean »

I figure it out.
Column w and column x aren't hidden in test #2 and #3.
PPU is drawing tiles fetched from column u and column v in test #2 and #3 at that time.

As you say, it is pipelining.
PPU already fetched 2 tiles data from tick 321 to 336 at previous scanline.
Boolean
Posts: 87
Joined: Thu Jan 02, 2014 7:58 am

Re: about scanline.asm (Quietust's classical demo)

Post by Boolean »

There's a screenshot for displaying dynamic effect. I think it can help you to understand this demo clearly.
Image
Post Reply