mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-27 02:31:00 +00:00
.. | ||
images | ||
apple_40_96.inc | ||
bird_mountain.s | ||
c64_opener.s | ||
c64_updated.png | ||
c64.png | ||
check_email.s | ||
d_hgr.bmp | ||
deater_hgr.bmp | ||
deater_hgr.png | ||
deater.png | ||
delay_a.s | ||
email_40_96.png | ||
falling_apple.s | ||
fireworks.s | ||
fs_hgr.bmp | ||
fs_hgr.png | ||
fs.png | ||
fw_background.inc | ||
fw_state_machine.s | ||
fw.s | ||
gr_copy.s | ||
gr_hline.s | ||
gr_offsets.s | ||
gr_putsprite.s | ||
hardware.inc | ||
hgr.s | ||
KATC.BIN.lz4 | ||
landing.png | ||
lz4_decode.s | ||
Makefile | ||
megademo.dsk | ||
megademo.s | ||
move_letters.s | ||
random16.s | ||
README | ||
starring_1.png | ||
starring_2.png | ||
starring_3_hgr.png | ||
starring_3.png | ||
starring_people.s | ||
starring.s | ||
tfv_sprites.inc | ||
TODO | ||
vapor_lock.s | ||
wait_keypress.s | ||
zp.inc |
Memory Map: $0000-$0100 = ZERO PAGE $0100-$0200 = STACK $0400-$0800 = TEXT/GR PAGE0 $0800-$0C00 = TEXT/GR PAGE1 $0C00-$0fff = we use this as TEXT/GR offscreen buffer $1000-$1fff = 4k free $2000-$3fFF = HGR1 page ; note we never use HGR2 ($4000-$6000) $4000-$9600 = roughly 20k(?) $9600-$BFFF = DOS3.3 $C000-$FFFF = peripherals/ROM C64: Apple II: Starring: Three pages page flipping. Hires colors subset of Lores so can replicate a blocky color image. Could in theory animate this at 60Hz. Also could flip between 4 pages, but need the 8k of HGR page2. For cycle-counting timing, jmp one into a bit $C055 instruction which is EOR $C0,X (4 cycles) Note, discover that the LORES and HIRES pages aren't exact matches for each other, even when using same color. Half-pixel off? E-mail: Half screen text, half 40x96 lores. Text is also interlaced top/bottom to create new chars (including some lowercase) on Apple II+ and before w/o lower case. Trouble as the built-in font is offset a frame on II vs IIe? Also annoyance, my GR compressor uses Grey2 (color $a) as encoding, which means can't use a GR image to hold plain black spaces (char $a0)