| |
tecM0
Registered: Jan 2002 Posts: 40 |
4x4 FLI
hi,
i never used that (overused?) 4x4_effect by myself.
i think itb looks really cool with dithered chars.
the "fractal_vector_part" in MATHEMATICA uses
something like that, or?
how does this 4x4_FLI_FX work? as i sayd..i never
used FLI...and really hates timing.
but it could be a very short routine within a kind
of loop.
if i set a IRQ to the 1st line of the FLI...set the
screen and then set the IRQ to the next line of FLI
(4 pixellines down?) ....do this work? and how?
i never can find a demo_source around the net and
all demos i have "monitored" use speedcode(generators).
does a routine like the one i explained exist and does
it work like this at all?
thanx for help,
tecM0
|
|
| |
White Flame
Registered: Sep 2002 Posts: 136 |
For 4x4 FLI, there needs to be a "bad line" every 4 lines in order for this effect to work. Since the VIC automatically makes one every 8 lines if left alone, you could actually only set an IRQ every 8 lines, interleaved between the normal VIC bad lines. Read this for how to instigate bad lines, and basically everything else about the VIC-II itself: http://www.funet.fi/pub/cbm/documents/chipdata/VIC-Article.gz
I'm guessing that these modes use hi-res bitmap mode, with every byte set to %00001111 (or %11110000) so that one nybble of "screen ram" sets the left color of the pixel, and the other sets the right color. Again, it's just a guess. Every 4 lines, the VIC re-reads the 40 bytes for color info, and you get 4x4 pixels, each with an independent color from all 16. |
| |
White Flame
Registered: Sep 2002 Posts: 136 |
oh, btw, those dithered ones usually use only 4 colors. How I would accomplish that would be to use multi-color char mode, and draw 16 levels of fade between them. Set up your font so that the left side & right side have all 16, giving the full 256 chars. From there out, use the exact same technique, using FLI to refresh the screen ram every 4 lines, and you get 80x50 res with 16 shades (using 4 colors) per pixel. |
| |
Spinball
Registered: Sep 2002 Posts: 88 |
ftp://ftp.elysium.pl/gnu-generation/Brush/raster.zip
this file contains a 4x4 fli and a normal fli-source as well. but they are not commented at all :( |
| |
fade Account closed
Registered: Mar 2002 Posts: 290 |
i think there is also some documentation and source from the aussie mag by nitros, but i forget the name because it is too fucken early for my brain :) |
| |
Stryyker
Registered: Dec 2001 Posts: 468 |
Emphatic is the diskmag. 4x4 mode is often done wiht multicolour mode to hide the 3 char bug along the left.
As for the source provided by Brush or someone not being commented, why would a coder need comments for something that is so simple? It is easy to see what is happening. It is nice of Brush to provide sources and anyone serious about using/reading it should do some homework to understand it, not read comments and not have much of an understanding how it really works. |
| |
Spinball
Registered: Sep 2002 Posts: 88 |
stryyker: of course it´s great that brush released those sources, but i think it´s not that easy to understand such stuff if one doesn´t know to much about timing relevant vic coding. but i agree that one should learn the basics first, instead of just using such a routine. (like so many pc-people do, with there ready to use libraries for just everything)
for all who can read german there is some great tutorial about vic-stuff. it´s written by mr cursor was published by magic-disk from 11.1993-03.1995. (http://www.c64-mags.de/files.php?cat=20)
|
| |
St0fF
Registered: Oct 2002 Posts: 40 |
4x4d-fli ...
Basics:
you have one MC charset, 4 Colors.
each letter is filled with two half pixels of according darkness
so: char#0F will look like this:
+----|----+ the left is completely bright, =0
|OOOO| | the right is completely dark. =f
|OOOO| |
|OOOO| |
|OOOO| |
|OOOO| |
|OOOO| |
|OOOO| |
|OOOO| |
+----|----+
we have two screens. one for the even lines, one for odd lines. 1st Irq sets appropriate text mode for 1st screen.
2nd irq happens 3 lines after the first badline, and repeats every 8th line until end_of_display
2nd irq does: wait for appropriate point in the next rasterline to set the badline- and screen- states, then resets screen state (note: this reset occurs in the next regular badline, but you can issue it directly!)
end_of_display ... play music, whatever, reset irq state and continue with 1st Irq.
4x4d-ifli ...
you have two MC Charsets, 4 Colors.
in the 1st irq you just switch the charsets every frame -> gives a smoother picture using $800 bytes more.
This should explain the available routines a little ;)
|
| |
Cybernator
Registered: Jun 2002 Posts: 154 |
About dithered 4x4, how can I calculate the pixels? (Drawing them by hand is the last thing I would do. Don't ask why! :)) I'm about to create a bumpmapper. Now I can create a dithered environment map, and extract blocks out of it. Or I can create pixels using some algorithm which takes the shade (0-15) as input parameter. Which one is, in your opinion, better?
Btw, I'm still having problems with the Floyd-Steinberg thingy. ;-P Anyone has experience with it? |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
just draw the shades. it's only 2x4x16 pixels. not worth the effort and code something. |
| |
St0fF
Registered: Oct 2002 Posts: 40 |
Floyd-Steinberg thingy? What's that? |
... 17 posts hidden. Click here to view all posts.... |
Previous - 1 | 2 | 3 - Next |