dos33fsprogs/still_alive
Vince Weaver f1e41a1340 sa: add blinky cursor
not sure this is an improvement, but is accurate
2018-05-24 10:33:05 -04:00
..
art sa: try to encrypt the ascii art 2018-05-23 16:04:27 -04:00
lyrics sa: move lyrics conversion to own directory 2018-05-23 14:20:38 -04:00
music sa: add raw music 2018-05-23 23:29:51 -04:00
ascii_art_lz4.inc sa: try to encrypt the ascii art 2018-05-23 16:04:27 -04:00
ascii_art.inc sa: work on getting art displayed 2018-05-21 17:04:18 -04:00
display_art.s sa: back to uncompressed ascii art 2018-05-23 16:09:44 -04:00
display_lyrics.s sa: add blinky cursor 2018-05-24 10:33:05 -04:00
interrupt_handler.s sa: move lyrics printing out of interrupt handler file 2018-05-24 09:48:48 -04:00
lyrics.inc sa: lyrics playing nicely now 2018-05-21 15:12:53 -04:00
Makefile sa: try to encrypt the ascii art 2018-05-23 16:04:27 -04:00
README.still_alive sa: add blinky cursor 2018-05-24 10:33:05 -04:00
SA.KR4 sa: add 4-channel KR4 file 2018-05-23 23:49:18 -04:00
SA.KRW sa: start work on this 2018-04-27 21:24:57 -04:00
still_alive.dsk sa: have 40col working 2018-05-23 14:07:19 -04:00
still_alive.s sa: add 4-channel KR4 file 2018-05-23 23:49:18 -04:00
title.bas sa: update title screen 2018-05-22 12:14:29 -04:00
TODO sa: have 40col working 2018-05-23 14:07:19 -04:00
zp.inc sa: add blinky cursor 2018-05-24 10:33:05 -04:00

Challenges:
	+ 6-channel audio
	+ Fitting it all in 48k (want to avoid disk routines if can)
	+ Printing the ASCII art simple code (takes longer than 50Hz)

ASCII Art Size
	The ASCII art is roughly 7k.
	You can LZ4 compress it and decompress on the fly, saving 3k or
	so even when factoring in the decompression code.
	The problem is decompression is slower (pauses the music) and
	can't be run at the same time as the music decompression is
	happening unless we duplicate a lot of code.
	May revisit if we need the room.


Goal: Binary fits in 16k (16384 bytes)

note						size (bytes)
---------------------				------
initial music player:				 2078
add raw ascii art:				 9142
add 3-channel music+lyrics,then slim a bit:	18787
initial 40 col support:				18864
have art loading properly 40col:		18910
lz4 encode the ascii art:			15529
revert because lz4 code not re-entrant:		18910
add 4-channel music (KR4):			20128
add cursor (a bit distracting)			20162


Memory Map


Lowmem:		4k
Code:		20k (8k=audio, 5k=lyrics, 3k=art)
Sound buffers:	14k