Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in 
CSDb User Forums


Forums > C64 Coding > Issues with Double Buffering $0400+$0c00, $d011, vertical scrolling
2017-01-02 21:03
wbochar

Registered: May 2002
Posts: 20
Issues with Double Buffering $0400+$0c00, $d011, vertical scrolling

I'm having some screen jitter, when doing vertical scrolling. The basic overview is I have open top and bottom borders, with sprites in them (acting as blockers and a Logo). I also have a fixed text line in the upper screen
and text/char bitmap that is the bottom half. The lower half is about 14 char lines (with a total bitmap size of 63 char lines). The screen is double buffered, so $0400 and $0c00 flip back and forth. The Bitmap drawing is done 2 lines at
a time, over 7 frames on the 8th frame the screen banks flip and the bitmap is moved up one charline. This works fine, No glitches or anything.

The moment I start messing with $d011 vertical scroll, it works but there are a lot of glitches..

Layout below:

A.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
A.=-=-SPRITE IMAGE UPPER BORDER-=-=-=-=-
B.=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

C.        Fixed Text Line

D.========SPRITE BLOCKER MID============
E.00000000000000000000000000000000000000
E.99999999999999999999999999999999999999
E.88888888-TEXT/CHAR IMAGE -888888888888
E.77777777777777777777777777777777777777
E.66666666666666666666666666666666666666
F.-=-SPRITE BLOCKER LOWER BORDER-=-=-=-=

All done through IRQ's:

A. Open Border with $D011, Display Sprite Logo
B. Fixed $d011 AND#248 to ORA#7, so the text stays still
C. After text line is rendered, Apply Lower screen scroll value from YScroll variable/label
D. After mid blocker sprites render/set, Play Music Routine (disabled)
E. Setup lower Blocker Sprites
F. Open Border, Frame Calculations, Set YScroll Value and 2/14 lines of the character bitmap.

Is my logic correct for when I do things? Is there something
that I am missing when I switch screen banks and YScrolling?

-wbochar
2017-01-02 21:46
Oswald

Registered: Apr 2002
Posts: 4054
wild guess:

maybe you should try to time your finescroll write to d011 so, that its on the last line of the previous text row, or first row of next char row.

description or screenshot of the glitch would help a lot to understand what goes wrong.
2017-01-03 05:16
The Phantom

Registered: Jan 2004
Posts: 348
Are you jsr'ing to your yscroll routine in the area you are scrolling?
2017-01-03 15:30
Martin Piper

Registered: Nov 2007
Posts: 375
Are you accidentally triggering a line crunch when you don't want one?
Link to a prg would help. :)
2017-01-15 04:36
wbochar

Registered: May 2002
Posts: 20
Quoting Oswald
wild guess:

maybe you should try to time your finescroll write to d011 so, that its on the last line of the previous text row, or first row of next char row.

description or screenshot of the glitch would help a lot to understand what goes wrong.



-- Yup, that's the one. I was triggering a scroll through an ora from a subtracted value, which was 1 step out of alignment. So it would bounce from 0 to 7 then flip banks. Being able to slow things to crawl really helps debug that kind of thing.
2017-01-15 10:42
Oswald

Registered: Apr 2002
Posts: 4054
thats a different bug than what I was thinking of. but doesnt matter, hooray you found it :)
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Martin Piper
Alakran_64
Sparta/OMG
Guests online: 45
Top Demos
1 Uncensored  (9.7)
2 Edge of Disgrace  (9.7)
3 Coma Light 13  (9.6)
4 The Shores of Reflec..  (9.6)
5 Lunatico  (9.6)
6 Comaland 100%  (9.5)
7 Incoherent Nightmare  (9.5)
8 Wonderland XII  (9.5)
9 Comaland  (9.5)
10 Wonderland XIII  (9.5)
Top onefile Demos
1 Dawnfall V1.1  (9.5)
2 F1 Evolution  (9.5)
3 Daah, Those Acid Pil..  (9.5)
4 Treu Love [reu]  (9.4)
5 Dawnfall  (9.3)
6 SidRok  (9.3)
7 One-Der  (9.2)
8 Tunnel Vision  (9.2)
9 Game of Thrones [2sid]  (9.1)
10 Safe VSP  (9.1)
Top Groups
1 Pond  (10)
2 Booze Design  (9.4)
3 Censor Design  (9.4)
4 Oxyron  (9.4)
5 Crest  (9.3)
Top Hardware-Gurus
1 Soci  (9.9)
2 Wiesel  (9.9)
3 Grue  (9.8)
4 Zer0-X  (9.8)
5 Lemming  (9.7)

Home - Disclaimer
Copyright © No Name 2001-2017
Page generated in: 2.509 sec.