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


Forums > C64 Coding > $d011 trickery – duplicated text lines
2011-04-29 21:39
Digger

Registered: Mar 2005
Posts: 447
$d011 trickery – duplicated text lines

Does any one know the $d011 trick to repeat the first char row? I am trying to cancel badlines on the 8th line of each charline (between cycles 54-57) but it doesn't work. The first line gets duplicated but only twice.
 
... 57 posts hidden. Click here to view all posts....
 
2011-04-30 11:31
Testa
Account closed

Registered: Oct 2004
Posts: 197
assiduous: yep i see now.... but i'am still confused.
i have an old source: i repeat the first char row
al the way down with only one $d011 write each 8th line.
if i have used this trick to create 25 text swingers
upper scroll style (no linecrunch)

i remember that you also can abort the duplicated char-raw earlier then rc7.. so you can display more then 25 char-raws.. or do i mess up things here...

edit: oh see now.. i checked my source, i do line
doubeling, i display the first char row over and
over again by fetching the same 40 charpointers again.
you can also do the same without fetching the same
charpointers again. this wil give you some more
free cycles: 40 minus the lda $xx sta $d011 writes to
prevent the badline..

2011-04-30 14:11
Digger

Registered: Mar 2005
Posts: 447
@Fenek: Thanks! I've seen this part before and I was impressed! Was wondering how did you do it :) I suppose the only disadvantage is the fragmented memory – you have to use 25 charset banks (only 80 * 8 = $280 bytes each though, right?) Do you use double buffering there at all?
2011-05-01 00:59
SIDWAVE
Account closed

Registered: Apr 2002
Posts: 2238
Wizz did this in 1988:
Broken Ass!

Notice the release id nr :)
2019-11-01 21:14
Oswald

Registered: Apr 2002
Posts: 5126
Hello :-)

Before I go into trial and error mode I ask: I want to repeat full rows, but I also want badlines, and preferably the least d011 writes possible. it this possible, and how? :)

judging by cruzer's post doable, but he seemingly talks about toucing d011 every line.
2019-11-01 23:16
Digger

Registered: Mar 2005
Posts: 447
@Oswald: Badline will cause to refetch the next charline, and you want to have a badline without that I presume? Why? :D
2019-11-02 07:27
JackAsser

Registered: Jun 2002
Posts: 2038
Quote: Hello :-)

Before I go into trial and error mode I ask: I want to repeat full rows, but I also want badlines, and preferably the least d011 writes possible. it this possible, and how? :)

judging by cruzer's post doable, but he seemingly talks about toucing d011 every line.


Just trigger a badline before RC<7. If RC==7 on a badline you’ll go to the next row. This is just an FPP. You will not be able to have full 8 lines high rows, only 7.
2019-11-02 09:11
Oswald

Registered: Apr 2002
Posts: 5126
Quote: Just trigger a badline before RC<7. If RC==7 on a badline you’ll go to the next row. This is just an FPP. You will not be able to have full 8 lines high rows, only 7.

ah ok guess this is the easy to do, you can repeat a char row after having any nr of its lines displayed.

but I really really need full 8 lines. impossible? : (
2019-11-02 09:12
Oswald

Registered: Apr 2002
Posts: 5126
Quote: @Oswald: Badline will cause to refetch the next charline, and you want to have a badline without that I presume? Why? :D

hehe, there is a neat trick (or rather plan) behind it, yes. I'll tell when the part is released :) if only 7 lines rows possible then its pointless I guess.
2019-11-02 12:41
JackAsser

Registered: Jun 2002
Posts: 2038
Quote: hehe, there is a neat trick (or rather plan) behind it, yes. I'll tell when the part is released :) if only 7 lines rows possible then its pointless I guess.

If RC=7 then VC->VCBASE regardless of badline condition, so no, only 7 lines.
2019-11-02 14:18
ChristopherJam

Registered: Aug 2004
Posts: 1423
Quoting Oswald
if only 7 lines rows possible then its pointless I guess.

Eh, I used a new instance of row 0 every 5 rasters in Jam Ball 2 to keep my framebuffer size down and thought that was reasonably worthwhile :)

Alternately (assuming you can afford to lose another 60 or so cycles) you could do two badlines at the start of every group of eight and use one charset/bitmap for the first line and another for the remaining seven.
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 - 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
B.A./QUANTUM
Didi/Laxity
hedning/G★P
6R6/shape/[n0]
Guests online: 254
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Codeboys & Endians  (9.7)
4 Mojo  (9.6)
5 Coma Light 13  (9.6)
6 Edge of Disgrace  (9.6)
7 Signal Carnival  (9.6)
8 Uncensored  (9.5)
9 Wonderland XIV  (9.5)
10 No Bounds  (9.5)
Top onefile Demos
1 Nine  (9.7)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.5)
6 Scan and Spin  (9.5)
7 Onscreen 5k  (9.5)
8 Grey  (9.5)
9 Dawnfall V1.1  (9.5)
10 Rainbow Connection  (9.5)
Top Groups
1 Artline Designs  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Performers  (9.3)
5 Censor Design  (9.3)
Top Logo Graphicians
1 t0m3000  (10)
2 Sander  (9.8)
3 Shine  (9.5)
4 Mermaid  (9.5)
5 Pal  (9.4)

Home - Disclaimer
Copyright © No Name 2001-2025
Page generated in: 0.045 sec.