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 > Picture without badlines.
2018-02-08 10:15
Golara

Registered: Jan 2018
Posts: 154
Picture without badlines.

In the last part of Time Machine by Booze Design HCL says that the picture looks very colorful despite not having any badlines. How is that possible to have pictures without badlines ? Lack of badlines causes FLD effect, right ?
 
... 30 posts hidden. Click here to view all posts....
 
2019-11-13 15:11
Oswald

Registered: Apr 2002
Posts: 4467
Quote: Something doesn't quite add up then. If you're getting any kind of badline DMA, colour information should be read and applied. Can you post a binary of your code?

he can have a bad line from some other bank buffered by the VIC forever.
2019-11-13 15:13
Oswald

Registered: Apr 2002
Posts: 4467
btw I have code somewhere to repeat first char row's full 8 lines somewhere,would that be useful ? (not sure if works in bitmap mode) there must be even a topic about it, I asked here a few years ago.
2019-11-13 16:03
JackAsser

Registered: Jun 2002
Posts: 1547
Quote: he can have a bad line from some other bank buffered by the VIC forever.

Indeed, if you constantly avoid the bad line condition the char pointers are the same forever.
2019-11-13 16:13
Golara

Registered: Jan 2018
Posts: 154
Quote: In fact, Golara, I was not seeking for extra cycles by removing badlines. My goal is to get rid of screen RAM due to memory constraints, so I can use 1 single VIC bank for 2 bitmaps, without screen RAM. And with the code I posted I succeeded in that. On the practical side, I have half badlines allover the screen.

Oh ok, then it makes some sense.. I actually tried doing it just now and I think it's possible. You need to make a badline condition when RC=7 on cycles 55-58. That will cause the last charline to be repeated. You then need to set the YSCROLL back to some other value... easier to explain in steps, so here's the recipe:

Get at least one badline in a frame to read in one line of chars (even from previous frame)!

Start with Y scroll 0 (badline at line $30, $38 etc..)
IRQ at line $30 + 7
set Y scroll to 7 (make badline) but at cycle 55-58
wait for line 30 + 8 + 1
set Y scroll to 0
IRQ at line $30 + 8 + 7
set y scroll to 7 (make badline) but at cycle 55-58
wait for line 30 + 16 + 1
set Y scroll to 0

see the pattern ? Still, not sure how viable it is, since you need to waste some cycles to stabilize the raster IRQ.
2019-11-13 16:31
Krill

Registered: Apr 2002
Posts: 1267
Quoting Oswald
he can have a bad line from some other bank buffered by the VIC forever.
Quoting JackAsser
Indeed, if you constantly avoid the bad line condition the char pointers are the same forever.
My point was that if there is badline DMA as ready. claims, the buffer (or parts thereof) will get updated pretty much by definition.
2019-11-13 18:17
ready.

Registered: Feb 2003
Posts: 438
well, I posted above the irq code that does it. It lacks of course the rest of the code like stabilized irq and so on. Irq is stabilized via CIA timer, basically CIA timer is the inverted horizontal raster position in terms of O2 cycles. Should you need more I can provide.
2019-11-14 08:56
HCL

Registered: Feb 2003
Posts: 685
The demo you're looking for is Bonanza.

Something that confuses this topic is that there are two different techniques to do pictures without badline, as was the original question:

First LineCrunch, which is used in the demo above, enables you to have open sideborders with up to 7 sprites, but needs to be triggered every rasterline. This effectively *eats* up the image, displaying only line 7 of each char. Thus you can also use it for moving pictures vertically, which is also displayed in the demo above.

Then you have the RepeatingChar, where you need only 2 writes to $d011 for each char-line. Not combinable with open sideborders, but sprites of course. I use this always! ..unless i need more than 4 color.. or i need open sideborder ..or i need more char buffers .. or..
2019-11-14 09:02
Oswald

Registered: Apr 2002
Posts: 4467
so no way to have *any* kind of gfx for a bigger area (stretched or not whatever) and open sideborder and 8 sprites ?
2019-11-14 11:03
HCL

Registered: Feb 2003
Posts: 685
Nope.. 3:rd part of Time Machine is pretty maxed out.. Different colors in each char "column", extended into sideborder using sprites and 12 moving sprites on top.

The last part looks similar, only the graphics is FPD-stretched there. Helluvalot more complicated :P
2019-11-15 03:39
קєคςє๓คкєг

Registered: Sep 2004
Posts: 189
have a part that exacatly does what the threadcreator is asking for plus some "effect" on it.
maybe one day ill release the little demo along some other parts.
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
Matt
Core/VPN
Radd Maxx/SWIM
Saitenguru
tNG
Guests online: 24
Top Demos
1 Uncensored  (9.7)
2 Unboxed  (9.7)
3 Edge of Disgrace  (9.7)
4 Coma Light 13  (9.7)
5 Comaland 100%  (9.6)
6 Lunatico  (9.6)
7 The Shores of Reflec..  (9.5)
8 Rivalry  (9.5)
9 C=Bit 18  (9.5)
10 X Marks the Spot  (9.5)
Top onefile Demos
1 Instinct  (9.6)
2 Sprite Font Compo Re..  (9.5)
3 The Tuneful Eight [u..  (9.5)
4 Smile to the Sky  (9.5)
5 Dawnfall V1.1  (9.5)
6 Space Demo  (9.5)
7 The Tuneful Eight (U..  (9.5)
8 Crystal Gazer  (9.5)
9 Je t'aime mon Monstre  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 PriorArt  (9.6)
2 Fossil  (9.5)
3 Oxyron  (9.5)
4 Booze Design  (9.4)
5 Arsenic  (9.4)
Top Mega Swappers
1 Aslive  (9.4)
2 Dishy  (9.2)
3 Nightshade  (9.1)
4 R.C.S.  (9.1)
5 Calypso  (9.0)

Home - Disclaimer
Copyright © No Name 2001-2019
Page generated in: 0.081 sec.