I've been studying this wiki article:
Split X Y Scroll
In order to get a split screen sufficient for scrolling a large boss on the screen. That was fairly easy to get working.
I decided to proceed to trying to create a generic system where I could specify as many split points as I wanted, so I could use this system both for scrolling a large boss around or for, say, parallax scrolling.
Once I got that working, I couldn't seem to get fine horizontal scrolling to work. I noticed the Split X Scroll section of the wiki is probably aimed towards this particular use case. I also noticed Doug's tutorial on splits use this latter technique.
So my question is, why can't I use the Split X Y Scroll to successfully arbitrarily set the fine X and Y scroll at the split point? I.e., as I increment X, the ppu seems to "pop" over a few pixels further rather than smoothly scrolling.
I'm fine with using the two techniques separately, just curious why Split X/Y can't be used in both cases (apparently).
*edit* I did find a couple of threads on this issue, and the only hint I could find towards my question was that I probably have the timing off; and that it's a bit trickier to get the fine timing right for clean X/Y scroll. I did try fiddling with the timing (the empty loop that pushes the code into the next hblank) but never got the "pop" to go away.
Understanding clean X/Y split
Moderator: Moderators
- GradualGames
- Posts: 1106
- Joined: Sun Nov 09, 2008 9:18 pm
- Location: Pennsylvania, USA
- Contact:
- Broke Studio
- Formerly glutock
- Posts: 181
- Joined: Sat Aug 15, 2015 3:42 pm
- Location: France
- Contact:
Re: Understanding clean X/Y split
I don't know if it'll help, but here's a good talk about the 2005/2006 split : viewtopic.php?p=78593#p78593
My first game : Twin Dragons available at Broke Studio.
- GradualGames
- Posts: 1106
- Joined: Sun Nov 09, 2008 9:18 pm
- Location: Pennsylvania, USA
- Contact:
Re: Understanding clean X/Y split
Yeah that's one of the ones I was looking at. I actually just figured it out, I missed an lsr when computing the formula listed in the wiki for the last write. Sweet, generic system working now.glutock wrote:I don't know if it'll help, but here's a good talk about the 2005/2006 split : viewtopic.php?p=78593#p78593
Last edited by GradualGames on Thu Aug 03, 2017 7:42 am, edited 1 time in total.
Re: Understanding clean X/Y split
I'm not clear on exactly what you are trying. Can you post code of every $2000,$2005,$2006 write?
When I am confused, I try to find a game that does what I want, and set breakpoints for scroll changes.
When I am confused, I try to find a game that does what I want, and set breakpoints for scroll changes.
nesdoug.com -- blog/tutorial on programming for the NES
- rainwarrior
- Posts: 8732
- Joined: Sun Jan 22, 2012 12:03 pm
- Location: Canada
- Contact:
Re: Understanding clean X/Y split
I think the result was just that the full X/Y scroll does work, but GradualGames had a bug that made it seem like it didn't.
Re: Understanding clean X/Y split
Good luck finding a game from back in the day that uses the $2006/5/5/6 trick. AFAIK, that was discovered by reverse engineering the hardware, not by looking at existing software. Old games did mess with $2005/6 mid-frame in various ways, but I don't think any of them managed to set arbitrary X/Y positions anywhere on the screen like we can now.