It is currently Mon Oct 16, 2017 3:20 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 4 posts ] 
Author Message
PostPosted: Mon Apr 18, 2016 7:55 pm 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 3064
Location: Brazil
1. In the pre-rendered scanline, are the sprites evaluated the same way of other lines?

2. Are writes to $2006 allowed if backgroud or sprites are enabled? I'm just getting writes around cycle 256 (a bit before, a bit later) and it makes the title screen of Kick Master "waving".


Top
 Profile  
 
PostPosted: Mon Apr 18, 2016 8:34 pm 
Online

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19081
Location: NE Indiana, USA (NTSC)
2. Writes to $2005 and $2006 during active picture affect the scroll in ways described in "The skinny on NES scrolling", now incorporated into "PPU scrolling" on the wiki.


Top
 Profile  
 
PostPosted: Mon Apr 18, 2016 8:46 pm 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 10045
Location: Rio de Janeiro - Brazil
Zepper wrote:
1. In the pre-rendered scanline, are the sprites evaluated the same way of other lines?

I'm gonna guess "no", since no sprites are rendered in scanline 0, but I'd like a definitive answer too.

Quote:
2. Are writes to $2006 allowed if backgroud or sprites are enabled? I'm just getting writes around cycle 256 (a bit before, a bit later) and it makes the title screen of Kick Master "waving".

$2006 writes are always allowed, and they can affect the temporary address register or the actual address register, as explained in loopy's "skinny" document, even during rendering. Since the actual address register is also incremented/modified automatically by the PPU during rendering, the order in which programmatical modifications and automatic modifications are applied is very important.


Top
 Profile  
 
PostPosted: Tue Apr 19, 2016 2:31 pm 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 3064
Location: Brazil
I believe my 2nd question wasn't clear. :oops:
From the tracelogs, there's a "conflict" between Y increment (+0x1000) and a write to $2006. If the increment at dot 256 occurs after the $2006 write, the screen is "waving" (loopy_v gets an increment); otherwise, it's fine (loopy_v = loopy_t after the increment).


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 4 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: Bing [Bot] and 9 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group