botdemo: more work on it

This commit is contained in:
Vince Weaver 2020-11-15 21:43:16 -05:00
parent 1902b9c01a
commit 9d9d4899cd
7 changed files with 133 additions and 101 deletions

View File

@ -33,8 +33,8 @@ BOTDEMO: botdemo.o
ld65 -o BOTDEMO botdemo.o -C ../linker_scripts/apple2_6000.inc
botdemo.o: botdemo.s \
zp.inc hardware.inc nozp.inc \
load.s bg.inc \
zp.inc hardware.inc nozp.inc timeline.inc \
commands.s bg.inc \
interrupt_handler.s \
wipe.s
ca65 -o botdemo.o botdemo.s -l botdemo.lst

View File

@ -141,43 +141,6 @@ mock_string:
mock2_string:
.byte "WHERE AVAILABLE",0
todo_list:
.byte DO_LOAD,1
.byte DO_LIST,5
.byte DO_RUN,15 ; a2
.byte DO_LOAD,1
.byte DO_LIST,4
.byte DO_RUN,10 ; flyer
.byte DO_LOAD,1
.byte DO_LIST,4
.byte DO_RUN,20 ; nyan
.byte DO_LOAD,1
.byte DO_LIST,5
.byte DO_RUN,15 ; qr
.byte DO_LOAD,1
.byte DO_LIST,5
.byte DO_RUN,15
.byte DO_LOAD,1
.byte DO_LIST,5
.byte DO_RUN,15
.byte DO_LOAD,1
.byte DO_LIST,5
.byte DO_RUN,15
.byte DO_LOAD,1
.byte DO_LIST,5
.byte DO_RUN,15
.byte DONE,$FF
command: .byte $00
which: .byte $00
@ -187,7 +150,6 @@ original_stack: .byte $00
.include "gr_unrle.s"
.include "gr_offsets.s"
; .include "gr_copy.s"
.include "bg.inc"
.include "pt3_lib_core.s"
@ -197,8 +159,10 @@ original_stack: .byte $00
; if you're self patching, detect has to be after interrupt_handler.s
.include "pt3_lib_mockingboard_detect.s"
.include "commands.s"
.include "timeline.inc"
.include "wipe.s"
.include "load.s"
.include "nozp.inc"

View File

@ -245,58 +245,3 @@ file_size: .word $dede
which_file: .byte $0
file_list:
.word a2,a2_end
.word flyer,flyer_end
.word nyan,nyan_end
.word autumn,autumn_end
.word rle,rle_end
.word raster,raster_end
.word qr,qr_end
.word flame,flame_end ; flame destroys zero page
title_list:
.word flyer_title
.word nyan_title
.word qr_title
flyer_title:
.byte 8,10,"HI-RES SHAPETABLE FLYER",0
nyan_title:
.byte 8,10,"HI-RES ANIMATED NYAN CAT",0
qr_title:
.byte 0,10,"MYSTERY BAR CODE WILL NEVER LET YOU DOWN",0
flyer:
.incbin "FLYER.BAS"
flyer_end:
nyan:
.incbin "NYAN.BAS"
nyan_end:
qr:
.incbin "QR.BAS"
qr_end:
flame:
.incbin "FLAME2.BAS"
flame_end:
a2:
.incbin "A2.BAS"
a2_end:
autumn:
.incbin "AUTUMN.BAS"
autumn_end:
rle:
.incbin "RLE.BAS"
rle_end:
raster:
.incbin "RASTER4.BAS"
raster_end:

View File

@ -1,7 +1,11 @@
5 HOME
10 PRINT " LOADING APPLEBOT DEMO V0.1"
15 PRINT
20 HTAB 15:PRINT " _ "
30 HTAB 15:PRINT " _: :_ _"
40 HTAB 15:PRINT ":_: _: : "
50 PRINT CHR$(4)"BRUN LOADER"
20 PRINT
30 PRINT " A COLLECTION OF BASIC DEMOS"
40 PRINT " THAT EACH FIT IN A 280 CHARACTER TWEET"
42 PRINT " FIRST TESTED ON THE @APPLEIIBOT"
45 PRINT
50 HTAB 15:PRINT " _ "
60 HTAB 15:PRINT " _: :_ _"
70 HTAB 15:PRINT ":_: _: : "
80 PRINT CHR$(4)"BRUN LOADER"

27
bot_demo/nozp.inc Normal file
View File

@ -0,0 +1,27 @@
;; Things that normally would go in the zero page
AY_REGISTERS:
A_FINE_TONE: .byte $00
A_COARSE_TONE: .byte $00
B_FINE_TONE: .byte $00
B_COARSE_TONE: .byte $00
C_FINE_TONE: .byte $00
C_COARSE_TONE: .byte $00
NOISE: .byte $00
ENABLE:
PT3_MIXER_VAL: .byte $00
A_VOLUME: .byte $00
B_VOLUME: .byte $00
C_VOLUME: .byte $00
ENVELOPE_FINE: .byte $00
ENVELOPE_COARSE:.byte $00
ENVELOPE_SHAPE: .byte $00
LOOP: .byte $00
MB_VALUE: .byte $00
DONE_PLAYING: .byte $00
DONE_SONG: .byte $00
PT3_TEMP: .byte $00

90
bot_demo/timeline.inc Normal file
View File

@ -0,0 +1,90 @@
; flame: clean
; a2: clean
; flyer: clean
; nyan: clean
; rle: ??
; autumn: ??
; raster: ??
; qr: ??
; circles: ??
todo_list:
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; flame
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; a2
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; flyer
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; nyan
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; autumn
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; rle
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; raster
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; dhgr
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; qr
.byte DO_LOAD,1, DO_LIST,4, DO_RUN,10 ; circles
.byte DONE,$FF
file_list:
.word flame,flame_end
.word a2,a2_end
.word flyer,flyer_end
.word nyan,nyan_end
.word autumn,autumn_end
.word rle,rle_end
.word raster,raster_end
.word dhgr,dhgr_end
.word qr,qr_end
.word circles,circles_end
title_list:
.word flyer_title
.word nyan_title
.word qr_title
flyer_title:
.byte 8,10,"HI-RES SHAPETABLE FLYER",0
nyan_title:
.byte 8,10,"HI-RES ANIMATED NYAN CAT",0
qr_title:
.byte 0,10,"MYSTERY BAR CODE WILL NEVER LET YOU DOWN",0
flyer:
.incbin "FLYER.BAS"
flyer_end:
nyan:
.incbin "NYAN.BAS"
nyan_end:
qr:
.incbin "QR.BAS"
qr_end:
flame:
.incbin "FLAME2.BAS"
flame_end:
a2:
.incbin "A2.BAS"
a2_end:
autumn:
.incbin "AUTUMN.BAS"
autumn_end:
rle:
.incbin "RLE.BAS"
rle_end:
raster:
.incbin "RASTER4.BAS"
raster_end:
dhgr:
.incbin "DHGR.BAS"
dhgr_end:
circles:
.incbin "CIRCLES.BAS"
circles_end:

View File

@ -1,3 +1,5 @@
; modified to avoid using zero-page addresses
; Apple ][ Lo-res fire animation, size-optimized to 64 bytes
; by deater (Vince Weaver) <vince@deater.net>