Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user eightbitswide ! (Registered 2024-12-24) You are not logged in - nap
CSDb User Forums


Forums > C64 Coding > D011 scrolling
2004-06-08 00:17
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
D011 scrolling

Hi,

What is the best rasterline to flip the D011, when
scrolling the screen ?

No FLD!

Plain old scrolling ?

I have timing error, so the text jumps a bit.
Scroll the colorram too in same scan, takes a lot
of time..

Thanks for ANY help!!
 
... 34 posts hidden. Click here to view all posts....
 
2004-06-11 12:40
Stingray
Account closed

Registered: Feb 2003
Posts: 117
Thanks again Oswald. I get the wrapping part, thats not the part i'm having trouble understanding. What I wont to know is how you change just the new column so you arn't just continuesly wrapping round or is that just not possible?
2004-06-20 10:42
Krill

Registered: Apr 2002
Posts: 2980
Quote: Thanks again Oswald. I get the wrapping part, thats not the part i'm having trouble understanding. What I wont to know is how you change just the new column so you arn't just continuesly wrapping round or is that just not possible?

you scroll say one char left and have to put a new column in to the right. that can be at any offset of $00-$27 into a char line, depending on the current x-offset. so you just need to get you x hardscroll value, add some constant value and do mod 40 on it.
2004-06-22 23:16
White Flame

Registered: Sep 2002
Posts: 136
I'm still confused on how to use DMA delay for >80 char wide screens (ie, when you've already delayed 40 cycles and need to go more). I don't need it for anything that I'm currently writing, but I tried to mess with it and got stumped, besides either doing a full redraw every 40 chars, or doing multiple delay lines to line things up (which loses more and more display lines). How wide do levels max out at in games like Mayhem in Monsterland? It looks like it's a flush 24 chars tall, so giving 8 lines of delay, I'm guessing 40+40*8=360. But IIRC, some levels are like 13 screens wide or more... bleargh!
2004-06-23 06:43
AmiDog

Registered: Mar 2003
Posts: 97
Well, look at this column display (read as 2 number values from top to bottom):

start:

00...34
12...90

rotated a lot left:

3400...
9012...

one more:

400...3
012...9

one more:

00...34
12...90

and what do we have? The start position!

So, when you have scrolled the screen 40 chars, you are back at the start position and have changed all columns, so I assume you just start over, i.e. set DMA delay to zero and repeat the procedure... Not that I know for sure, since I've not tried anything like this myself...
2004-06-23 08:39
Oswald

Registered: Apr 2002
Posts: 5094
amidog: you're almost right, except that if you have scrolled the screen by 40 columns, it also moves one char row UP. So when starting the process again, you will have to change to another screen, built up while scrolling, to hide the jump one row down, when starting over.

for example at soiled legacy there's a loader part wich swings in a bitmap gfx in from the left, and then it goes out to right, I had to copy the gfx to another bitmap shifted by one char row, and change the display to it, when it started to move its next 40 char.
2004-06-25 22:32
White Flame

Registered: Sep 2002
Posts: 136
...plus a full copy of colorram if you're using it, which is the real killer.
2004-06-27 10:39
raven
Account closed

Registered: Jan 2002
Posts: 137
@White Flame:

Check out the end-part of Insomnia.
There's a continuous fullscreen bitmap scroll using
DMA delay, including color-ram.
2004-06-28 08:53
White Flame

Registered: Sep 2002
Posts: 136
Yeah, works great when you can pause the screen for a couple of seconds every 40 chars... ;)
2004-06-29 05:56
AmiDog

Registered: Mar 2003
Posts: 97
Well, the only real problem as I see it is the color-ram copy. After all, by using simple double buffering, when you copy a column to the visible screen (it being text, bitmap or whatever), just copy the same column to your second buffer. This will double the amount of bytes to copy for each char scrolled (from 25 to 50 for text), but after you've scrolled 40 chars, you have already prepared the next screen and can easily just switch to it without any overhead what so ever (except for color-ram).

As I found this VSP discussion rather interesting, I've now written my very first VSP routine using the method above (only for text yet though and without using color-ram, but the theory is the same) and it's working nicely.
2004-07-02 02:51
Stingray
Account closed

Registered: Feb 2003
Posts: 117
AmiDog, any chance of posting your code here, or is it to long to post?
Previous - 1 | 2 | 3 | 4 | 5 - Next
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
iAN CooG/HVSC
psych
Hydrogen/Glance
anonym/padua
REBEL 1/HF
Slajerek/Samar
Mojzesh/TGR🇬🇧
Mason/Unicess
Alakran_64
rexbeng
pcollins/Quantum
jmagic
.jetan/AI-supported ..
lallafa
SoNiC/Onslaught/tOM
Guests online: 100
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 The Demo Coder  (9.6)
6 Edge of Disgrace  (9.6)
7 What Is The Matrix 2  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 Cubic Dream  (9.6)
3 Party Elk 2  (9.6)
4 Copper Booze  (9.6)
5 X-Mas Demo 2024  (9.5)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Censor Design  (9.3)
5 Triad  (9.3)
Top Organizers
1 Burglar  (9.9)
2 Sixx  (9.8)
3 hedning  (9.7)
4 Irata  (9.7)
5 Tim  (9.7)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.036 sec.