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 > scrolling with $d011
2006-10-31 06:25
itch

Registered: Aug 2006
Posts: 24
scrolling with $d011

Hi! .. I made a nice working screen scroller from the bottom to the top of the screen. It worked fine and looked good in VICE thet is .. BUT when i tested the code at my c64c it did don't work properly... Chars disapering and whole linse invisible...

I used default screen adress ( $0400 ), and copied the default font from rom to ram ( as hardware reference manual told me ), and pointed vic to the new char adress.

What could be wrong ?

//itch
 
... 26 posts hidden. Click here to view all posts....
 
2006-10-31 18:31
itch

Registered: Aug 2006
Posts: 24
Quote: vertical hardware scrolling is known to be failing on some c64s. it depends on the memory model. this trick modifyes the timing of the vic's ram refresh, and some memory type doesnt likes that -> the memory slowly gets eatan up by garbage. I have my bets that you have this problem.

Hmmm .. ok .. But this scroller is a ordenary scroll .. Nothing fancy ...

scrolllda $d011
and #%00000111
tax
dex
bmi supp
dec $d011
2006-10-31 18:36
itch

Registered: Aug 2006
Posts: 24
Quote: vertical hardware scrolling is known to be failing on some c64s. it depends on the memory model. this trick modifyes the timing of the vic's ram refresh, and some memory type doesnt likes that -> the memory slowly gets eatan up by garbage. I have my bets that you have this problem.

Okay but this is a ordenary scroll , nothing fancy ..

scroll

lda $d011
and #%00000111
tax
dex
bmi supp
dec $d011
...
...

supp

lda $d011
and #247
ora #7
sta $d011

lda $0428
sta $0400
lda $0429
sta $0401
...
...

somthing like that ... i ofcourse insert new data on last row of the screen ...
2006-10-31 22:20
Devia

Registered: Oct 2004
Posts: 401
If you're not using the timers, remember to disable the timer interrupt, otherwise excessive interrupts "might" occur. This can result in the behaviour you describe and will seem to occur randomly on some machines or maybe not at all on others, since it all depends on when you start your code.

sei
...some shit
lda #$7f
sta $dc0d
sta $dd0d
lda $dc0d
...enable your ints
cli


The final lda clears any "pending" interrupts and thus is VERY important here.
2006-10-31 23:35
Style

Registered: Jun 2004
Posts: 498
Devia: Alot of my early stuff suffers from this :)
2006-11-01 07:22
HCL

Registered: Feb 2003
Posts: 728
Oh, a vertical scroller :). I think we all got fooled here and started talking about a VSP-scroller. Doh! Then i see no reason why your vertical scroller shouldn't work on a real c64. I do have a c64 in the basement with some corrupted memory chips though.. some (small) programs work anyway, but others don't. Haven't really investigated which part of the memory that fails though, but maybe you have the same problem.
2006-11-01 07:41
Style

Registered: Jun 2004
Posts: 498
scroll

lda $d011
and #%00000111
tax
dex
bmi supp
dec $d011
...
...

supp

lda $d011
and #247 *** Dont you mean #248?
ora #7
sta $d011

lda $0428
sta $0400
lda $0429
sta $0401
...



2006-11-01 09:06
algorithm

Registered: May 2002
Posts: 705
When I had a 'real' c64, VSP would occasionally crash the machine. (sometimes grey dots would also occur when changing colors and sometimes not) A new C64 power supply got rid of the previous memory corruption problem
2006-11-01 10:44
itch

Registered: Aug 2006
Posts: 24
Quote: If you're not using the timers, remember to disable the timer interrupt, otherwise excessive interrupts "might" occur. This can result in the behaviour you describe and will seem to occur randomly on some machines or maybe not at all on others, since it all depends on when you start your code.

sei
...some shit
lda #$7f
sta $dc0d
sta $dd0d
lda $dc0d
...enable your ints
cli


The final lda clears any "pending" interrupts and thus is VERY important here.


Thanx, I'll try this later tonight.
2006-11-01 10:47
Oswald

Registered: Apr 2002
Posts: 5094
slap an lda $dd0d to the code above aswell
2006-11-01 10:51
itch

Registered: Aug 2006
Posts: 24
Quote: Oh, a vertical scroller :). I think we all got fooled here and started talking about a VSP-scroller. Doh! Then i see no reason why your vertical scroller shouldn't work on a real c64. I do have a c64 in the basement with some corrupted memory chips though.. some (small) programs work anyway, but others don't. Haven't really investigated which part of the memory that fails though, but maybe you have the same problem.

Yes a vertical scroller, sorry if i diden't get that trough :)..

I hate to see YET another one of my C64's die :( But it's the circle of life i guess.

If the irq timing stuff doesn't work, i will have to accept the death of my machine ...

Thankyou all for helping me out EVEN though it was just a vertical scroll. :)
Previous - 1 | 2 | 3 | 4 - 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
The Phantom
aeeben
Exploding Fi../Techn..
Yogibear/Protovision
Krill/Plush
Guests online: 79
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 Musicians
1 Rob Hubbard  (9.7)
2 Mutetus  (9.7)
3 Jeroen Tel  (9.7)
4 Linus  (9.6)
5 Stinsen  (9.6)

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