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 > Working with bad lines
2006-12-02 23:35
Conrad

Registered: Nov 2006
Posts: 839
Working with bad lines

hi.

Could someone help me with how to detect the bad lines properly and how to avoid them for raster based routines such as side borders. Would adjusting $d011 at each bad line be the best way?
2006-12-03 02:27
Style

Registered: Jun 2004
Posts: 498
Badlines occur anywhere between raster line $30 and $f9 (from memory) where SCROLY (ie the lower 3 bits of $d011) match the lower 3 bits of $d012.

Yes, you can avoid them by never allowing SCROLY to equal the lower 3 bits of $d012. However, this will FLD the screen downwards so you wont be able to have anything on screen except sprites.

2006-12-03 09:22
Oswald

Registered: Apr 2002
Posts: 5034
I think there's no such easy solution u want to get.
2006-12-03 12:27
Ninja

Registered: Jan 2002
Posts: 408
Maybe this thread can help you, too?

Screen with no Badlines
2006-12-03 20:28
Radiant

Registered: Sep 2004
Posts: 639
You can still open the side borders on a badline, however you can't have more than 6 sprites on that line. No need to remove the badlines just to open the sideborder, unless you need those last two sprites.
2006-12-04 07:48
HCL

Registered: Feb 2003
Posts: 719
@radiantx: Hmm, here at my place 4 sprites is maximum if you want open sideborder on a normal badline.. Also you can not use *any* 4 sprites, but only the 4 lowest priority (d015 = $f0).
2006-12-04 08:53
Radiant

Registered: Sep 2004
Posts: 639
HCL: Really? I had a chat with Clarence about this some half a year ago, and IIRC he claimed six was the maximum, but I may be mixing things up. (Upd.: Most probably, as a more in-depth look at the timing charts reveal 4 is the maximum, and Clarence would know about these things.)
2006-12-04 12:22
Oswald

Registered: Apr 2002
Posts: 5034
is it so hard to admit your mistake, was it nessesary to point a finger at Clarence ?
2006-12-04 18:47
Conrad

Registered: Nov 2006
Posts: 839
HCL is right, you have to have the last 4 ($f0) sprites switched on for sideborder WITHOUT FLD (so you can make those nice sideborder DYCPs/pics/plasmas etc) and for side border with FLD (the 1001 crew way :) you have to have all 8 sprites switched on for it to work. I've never seen a demo with sideborder using SIX sprites before.
2006-12-04 18:50
Radiant

Registered: Sep 2004
Posts: 639
Oswald: "I may be mixing things up" + "Most probably" = point a finger at Clarence?
2006-12-04 18:53
Scout

Registered: Dec 2002
Posts: 1568
Quote: Oswald: "I may be mixing things up" + "Most probably" = point a finger at Clarence?

It's just a baaaad case of


---
8Bit Mayhem - The C64 Scenemusic Podcast
http://8bitmayhem.untergrund.net
2006-12-04 20:28
Danzig

Registered: Jun 2002
Posts: 431
@crd: not exactly true iirc... you can use any 4 sprites but NOT sprite0 (f.e. $d015=$1e). and it is NOT necessary to use all 8 sprites for "escos"-like spriteroutines but makes sense ;)

and maybe you should f.e. take a look at this:
Spritemania

count the sprites and you will get 7 :D but ofcourse this is the good old "anti-badline" trick f.e. vision/crest used for his sideborder-dycp over sideborder-logo...
2006-12-04 21:05
tlr

Registered: Sep 2003
Posts: 1737
Exilon/MDT used that trick in Bonanza aswell.
2006-12-04 21:57
Danzig

Registered: Jun 2002
Posts: 431
@tlr: not the same, this one is "just" opening the sideborder in the linecrunching-routine... it's NOT displaying any grafik in that area (bit 4,5 & 6 set in $d011)... that lc-sb-effect was done dozens of times (f.e. censor wonderland)
2006-12-04 22:06
tlr

Registered: Sep 2003
Posts: 1737
Quote: @tlr: not the same, this one is "just" opening the sideborder in the linecrunching-routine... it's NOT displaying any grafik in that area (bit 4,5 & 6 set in $d011)... that lc-sb-effect was done dozens of times (f.e. censor wonderland)

Wrong part. I mean in the one with the Tetris picture with sprite scroller over.
I think it was 7 sprites but maybe it's fewer, I don't remember exactly.

EDIT: just checked, it is 7 sprites (part 2). It has some bugs, but it is that same technique.
I guess he wanted to get it released before anyone else did it. :)
2006-12-05 01:12
Codey

Registered: Oct 2005
Posts: 79
Quote: HCL is right, you have to have the last 4 ($f0) sprites switched on for sideborder WITHOUT FLD (so you can make those nice sideborder DYCPs/pics/plasmas etc) and for side border with FLD (the 1001 crew way :) you have to have all 8 sprites switched on for it to work. I've never seen a demo with sideborder using SIX sprites before.

when i first saw escos i was absolutely baffled. i never knew they used fld to make the timing so simple. makes sense now.
2006-12-05 06:59
MagerValp

Registered: Dec 2001
Posts: 1060
Escos uses the escos trick, not FLD. With a little $d011 twiddling, you get open top/bottom borders, open screen, but no badlines (and no char/bitmap gfx) and sprites visible. All you need then is $d016 on every line for the sideborder, and a simple plex.
2006-12-05 08:53
JackAsser

Registered: Jun 2002
Posts: 1997
Yes, escos simply open the top/bottom border and at the same time disable the display => all the screen becomes top/bottom border which you open, so you get classic $3fff everywhere + sprites visible. There is a thread about this aswell FYI.
2006-12-05 10:05
Conrad

Registered: Nov 2006
Posts: 839
Ah... NOW I see how it works... I just didn't know what ESCOS actually was until now! It's pretty obvious! Oh how ashamed I am with what I discussed!! =(

Anyway, I've managed to work out how side border routines work now, so thanks very much for your advices! :)
2006-12-05 11:01
Copyfault

Registered: Dec 2001
Posts: 467
@JA: it's the thread about a "screen with no badline"; ninja already pointed to it here in this thread.

@HCL: hmm, counting cycles gives me four and a half sprites ;p

CF
2006-12-05 12:52
Oswald

Registered: Apr 2002
Posts: 5034
copy, including the cycles needed for the code ?
2006-12-05 16:33
Graham
Account closed

Registered: Dec 2002
Posts: 990
@Danzig: Nopes, you can not use any sprites. Sprites 2,3,5,7 for example will not allow open sideborder on badlines.
2006-12-05 23:18
Danzig

Registered: Jun 2002
Posts: 431
@graham: i ment "in a row" but since if haven't ever tested it all maybe i'm wrong. just can remember using 1-4 and 4-7 but it's all sooo long ago
2006-12-07 08:07
MRT
Account closed

Registered: Sep 2005
Posts: 149
Blocking thos badlines is oldschool stuf ;-)

2006-12-07 09:12
Oswald

Registered: Apr 2002
Posts: 5034
LOL :D
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
rambo/Therapy/ Resou..
jmin
Stryyker/Tide
thesuperfrog
Sentinel/Excess/TREX
CopAss/Leader
zscs
Guests online: 93
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.7)
5 Edge of Disgrace  (9.6)
6 Uncensored  (9.6)
7 Comaland 100%  (9.6)
8 No Bounds  (9.6)
9 Aliens in Wonderland  (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 Rainbow Connection  (9.5)
6 It's More Fun to Com..  (9.5)
7 Dawnfall V1.1  (9.5)
8 Birth of a Flower  (9.5)
9 Daah, Those Acid Pil..  (9.5)
10 Morph  (9.5)
Top Groups
1 Nostalgia  (9.4)
2 Oxyron  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Offence  (9.3)
Top Coders
1 Axis  (9.8)
2 Graham  (9.8)
3 Crossbow  (9.8)
4 Lft  (9.8)
5 HCL  (9.8)

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