dos33fsprogs/demos/megademo
..
disk
images
music
music_chunks
music_chunks.old
writeup
apple_40_96.inc
arrival.png
arrival.s
bg_scroll.s
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
FAQ
fireworks.s
fs_hgr.bmp
fs_hgr.png
fs.png
fw_background.inc
fw_state_machine.s
fw.s
gr_copy.s
gr_fast_clear.s
gr_hlin_double.s
gr_hline.s
gr_offsets.s
gr_pageflip.s
gr_putsprite.s
gr_scroll.s
gr_setpage.s
gr_unrle.s
hardware.inc
hgr.s
KATC.BIN.lz4
leaving.png
leaving.s
letters.s
lg_hgr.bmp
lg_hgr.png
lg.png
lz4_decode.s
Makefile
megademo.dsk
megademo.s
megaload.s
mockingboard.s
mode7_sprites.inc
mode7_zp.inc
mode7.s
move_letters.s
multiply_fast.s
music_2nd_d000.s
music_1000.s
music_d000.s
random16.s
README
SB_BACKGROUNDC.BIN.lz4
screen_split.s
SIZE
sp_names.png
space_bars.s
starring_1.png
starring_2.png
starring_3_hgr.png
starring_3.png
starring_people.s
starring.s
starry_sky.scroll
takeoff_hgr.png
takeoff.png
takeoff.s
text_print.s
tfv_sprites.inc
TIMING
TODO
vapor_lock.s
wait_keypress.s
waterfall_page1.inc
waterfall_page2.inc
waterfall.s
zp.inc

Apple II Cycle Counting Megadmo

Demosplash 2018 1st place Retro Demo

by Vince "deater" Weaver, VMW Productions




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

	Largest can load from $4000 to $9600 = 22,016
	Largest can load from $1000 to $9600 = 34,304
	$4000-$C000 = 32768


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)