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 > New modes/VIC manipulation questions.
2006-07-19 12:40
Jetboy

Registered: Jul 2006
Posts: 337
New modes/VIC manipulation questions.

HI!
I had some break since... well... long ago :)
I was pretty much up to date with all the tricks done up to middle of the nineties, then i somewhat lost track.

I came across some new(to me) stuff when trying to catch up and watching the demos. BTW. Respect!

I wonder if there is some more details about UFLI and MUFLI modes?

I understand there is AFLI every second line with hi-res sprites over(under?) it.

I guess you can do it with 8 sprites - hence change every second line. Would that work at all?

Sprites are y expanded (due to colorbanks switches they take data from 2 sprite blocks so they look highres. But what wonders me - highres sprites can cover only 8*24 pixels - that's only 192 pixels width. So how its handled? Does cover only part of the screen, or are they sprites moved around to cover places where they are needed?

I ve been looking rhrough some posts here, but could you point me to some more info? Thank you.
 
... 10 posts hidden. Click here to view all posts....
 
2006-07-26 08:57
Jetboy

Registered: Jul 2006
Posts: 337
> Usually people fire IRQs or NMIs (I'd use nmi's in this
> case) every 4 (but i think every 8 lines is also enough!)
> lines. Smart people do this using the CIA timers.

OF COURSE 8th LINE! Brilant ideas are so simple... so simple it hurts when one didnt thought of it oneself. (banging my head against the wall again). So it uses about 2 lines every 8 lines i presume. First you generate badline, then after graphics is shown for that line, set y-scrolling so next bad line will be after 4 lines, and the data is fetched from the same color memory...

> I think the best demo to watch and learn from is Real
> (Real ) from
> Resource and The Dreams. Take a look at the
> every-2-lines-fli routine made by Ninja. He even wrote a
> complete explanation of that routine somewhere, but I cant
> remember exactly where ;D

Will look through it after i get home, and also put a google to good use :)

So i guess every 2 lines fli needs interupts every 4th line? :)
2006-07-26 09:16
WVL

Registered: Mar 2002
Posts: 902
Quote: > Usually people fire IRQs or NMIs (I'd use nmi's in this
> case) every 4 (but i think every 8 lines is also enough!)
> lines. Smart people do this using the CIA timers.

OF COURSE 8th LINE! Brilant ideas are so simple... so simple it hurts when one didnt thought of it oneself. (banging my head against the wall again). So it uses about 2 lines every 8 lines i presume. First you generate badline, then after graphics is shown for that line, set y-scrolling so next bad line will be after 4 lines, and the data is fetched from the same color memory...

> I think the best demo to watch and learn from is Real
> (Real ) from
> Resource and The Dreams. Take a look at the
> every-2-lines-fli routine made by Ninja. He even wrote a
> complete explanation of that routine somewhere, but I cant
> remember exactly where ;D

Will look through it after i get home, and also put a google to good use :)

So i guess every 2 lines fli needs interupts every 4th line? :)


for fli every 2 lines you definately need more than one interrupt every 2 lines.. You see, the advantage from fli-every-4-lines comes from the fact there is a badline every 8 anyway. I think for fli-every-second-line you'd need at least 3 interrupts. But probably 4 interrupts arrange the memory more efficiently.

example

line 0 : d018 = 0x
line 2 : d018 = 2x
line 4 : d018 = 4x
line 6 : d018 = 6x
line 8 : d018 = 6x <- you don't have to change here, since the vic will read colors from the next line anyway.
line 10 : d018 = 4x
line 12 : d018 = 2x
line 14 : d018 = 0x
line 16 : d018 = 0x <- again, no need to change

etc
2006-07-26 23:38
Cruzer

Registered: Dec 2001
Posts: 1048
Just if noone has mentined it... 4x4 and other modes that require VIC registers to be changed at certain rasterlines can also be done without interrupts, if your code is 100% cycle stable, e.g. if it's all lda lut,x / sta gfx. Then the displayer code can be merged into the effect, and this is of course a bit faster.
2006-07-27 08:10
Ninja

Registered: Jan 2002
Posts: 411
Check Vandalism News 43 for that article. Mail me if you need more sourcecodes for Double-Timer-Routines. :)
2006-08-29 16:16
Viktor
Account closed

Registered: Apr 2002
Posts: 78
All the resource links are very usefull here.
Thank you.

Viktor
Previous - 1 | 2 - 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
Guests online: 85
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 Fullscreen Graphicians
1 Joe  (9.7)
2 Sulevi  (9.6)
3 The Sarge  (9.6)
4 Veto  (9.6)
5 Facet  (9.6)

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