parrot.zip 5.86K
77 downloadsZip contains Parrot.XEX binary load program (parrot picture). Colours are a bit out, but it shows what can be done.
apachip.zip 3.45K
67 downloadsZip contains .ATR with a BASIC LOAD file, as well as .BAS file (run under BASIC from H: drive).
This demo uses a DLI to create a graphics window with 160x160 resolution mixed APAC and HIP modes, with 256 colours.
It uses 2 Display Lists and alternates graphics modes as follows:
Frame 0:
GR. 11 (16 colours, 1 lum) - 1st line from frame buffer 1
GR. 9 (16 lum) - 1st line from frame buffer 2
GR. 11 - 2nd line from frame buffer 1
GR. 10 (9 colours) - 2nd line from frame buffer 3
... repeated 40 times
Frame 1:
GR. 11 - 1st line from frame buffer 1
GR. 10 - 1st line from frame buffer 3
GR. 11 - 2nd line from frame buffer 1
GR. 9 - 2nd line from frame buffer 2
... repeated 40 times
As such, the colour component is displayed every second line for every frame. Every other second line alternates between GR. 9 and 10, which due to the GTIA bug/feature gives 160 perceived pixels instead of 80, albeit with some flickering.
A more complex setup might have the colour and luminence lines interlaced. You can get some idea of how that would look by changing one of the display lists. Try entering POKE 20480,96 to force interlace (poke 112 back to restore).
The program uses short VBI and DLI routines (DLI @ $6000, VBI @ $6080).
The actual display uses around 12K RAM. 3 graphics 7 displays are allocated, then 2 display lists are setup.
Colour 8 (mapped to COLBK in GR. 10) is not used - for purpose of simplifying the code.
You can play around with the program. Before drawing, use POKE 89, SC1H or SC2H or SC3H to select which frame buffer to draw to (colour, lum. mode 10 or lum. mode 9).
For the GR. 10 buffer - the colours used should be 0 thru 7, corresponding to lum values 0, 2, ... 14.
For the GR. 9 buffer - the colours used correspond to the luminence value (0-15).













