Download
HFLI-mode (used in VICSTRIP)
A new graphics-mode for PAL combining high-resolution with BASIC-interoperability:
168x160 HFLI (8x2 colour-blocks and raster-splits for $900e and $900f every 2 lines).
Provided in the downloadable archive are
- a Slide Show-disk image with some more pictures that shows how to easily show graphics from BASIC.
Feel free to press RUN/STOP anytime and use the BASIC-editor to your liking - a version specifically for 35K-expansions that "hides" im RAM1/2/3 ($0400-$0ff) and BLK5 ($a000-$bfff) providing as much BASIC-RAM as possible.
- Mike's converter for the mode. First save your desired image as an .PPM-file in 168x160 pixel-resolution and name it "input.ppm". Then execute hfli_quant.cmd to start the conversion.The resulting files must then be processed with "ppm import" on a VIC-20 (preferably in VICE). In VICE disable True Drive Emulation and enable Virtual Device traps. Then just drop the "boot"-file from the same directory into VICE and it should start automatically. Make sure all the files stay within the same directory. The resulting target file can then be loaded as shown in the Slide Show-BASIC program.
- the source-files for the graphics-mode are included as well for anyone interested
+24K-version:
SYS 9192: Turn on mode and copy colours
SYS 9195: Copy colours
SYS 9198: Turn off mode
+35K-version:
SYS 40960: Turn on mode and copy colours
SYS 40963: Copy colours
SYS 40969: Turn off mode
Note: Set volume-register ($900e) before activating graphics-mode. Because this register is shared with the auxiliary color it cannot be changed when the graphics-mode is active. Its value will be copied into the executed code when turning on the graphics.
Technical background:
- 21 x Color-RAM-Update = 126 Cycles
- 900e Update = 6 Cycles
- 900f Update = 6 Cycles
- 9002 Update = 4 Cycles
= 142 Cycles (2x71) (71 cycles in a PAL-rasterline)
Memory layout:
$1000 .. $10D1: Screen 1
$10D2 .. $11E4: Splitscreen 11 text-lines of 25 characters
$11E5 .. $11FF: free (27 Bytes)
$1200 .. $12D1: Screen 2
$12D2 .. $12DF: free (14 Bytes)
$12E0 .. $1FFF: Characters $2E .. $FF (exactly 210 Characters)
$2000 .. $2347: Color-RAM (lower nibble: lines 1,2,5,6,9,10,13,14,... -> $9600
higher nibble: lines 3,4,7,8,11,12,15,16,... -> $9400 )
$2348 .. $2397: $900f (80 Bytes)
$2398 .. $23e7: $900e (80 Bytes)
+24K-version:
$23e8 .. $4f8e: Code
+35K-version
$0400 .. $0ffe: Code
$a000 .. $bfc7: Code