Page 1 of 1

VERA FX 1 Demo (FLD effect preview)

Posted: Tue Jan 26, 2021 3:55 am
by Geehaf

I did publish this link on the FB group earlier but just in case you missed it

A very small sneak peek at one of the effects I've coded for my upcoming X16 demo:

VERA.FX 1

Inspiration came from a C64 Flexible Line Distance (FLD) routine I wrote back in the 1980s!

Hopefully the full demo will be released soon...(all fingers crossed ? ).

Not a sprite in sight!

 





 


VERA FX 1 Demo (FLD effect preview)

Posted: Wed Jan 27, 2021 5:22 pm
by Chris L

Man, that is an awesome effect demo - well done!


VERA FX 1 Demo (FLD effect preview)

Posted: Wed Jan 27, 2021 6:24 pm
by desertfish

is this sumulated by drawing graphics or have you actually replicated the same effect on the Vera? :classic_ohmy:


VERA FX 1 Demo (FLD effect preview)

Posted: Wed Jan 27, 2021 7:48 pm
by Guybrush

It's most probably made by changing a bitmap layer's tile data address for each scanline.


VERA FX 1 Demo (FLD effect preview)

Posted: Thu Jan 28, 2021 8:12 am
by Geehaf

Thanks for the interest! It works by generating a pair of line interrupts for each visible line of tiles, then adjusting the vertical scroll position for the Tile layer accordingly based upon a sine wave pattern, i.e. the 1st line interrupt "switches on" the tile line and the 2nd "switches off" the tile line and is then repeated for all visible moving lines. 

Tile graphics data is not manipulated as such.

Initially I did consider basing the effect on updating the tile base address register but the "grain" of this address is limited to a multiple of 2048 bytes.

?


VERA FX 1 Demo (FLD effect preview)

Posted: Thu Jan 28, 2021 9:51 am
by desertfish

Ah I see.  It's using the documented stuff to scroll tiles, not somehow disabling all video output during a certain time and then re-enabling it again a few raster lines later  (as it had to be done with the FLD effect on the c64 I believe?)


VERA FX 1 Demo (FLD effect preview)

Posted: Thu Jan 28, 2021 10:37 am
by Geehaf


28 minutes ago, desertfish said:




Ah I see.  It's using the documented stuff to scroll tiles, not somehow disabling all video output during a certain time and then re-enabling it again a few raster lines later  (as it had to be done with the FLD effect on the c64 I believe?)



Yes, all documented VERA registers etc. The routine does disable the tile layer between each tile line to stop VERA outputting any tile graphics (this is the space highlighted in yellow below) and dynamically determines the next relative vertical scroll position for the layer in relation to the end position of the previous line. 

Cheers.

image.png.599c2bff771bd96c21b1e871e43a971f.png