From ae4b392cb54d34e45face84b3fa92c17d59ec9f8 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Thu, 31 Oct 2019 21:05:42 -0400 Subject: [PATCH 01/22] ds: fix up some things --- demosplash/ansi/Makefile | 8 ++++---- gr-sim/mode7_demo/lookup_tables.c | 15 +++++++++++++-- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/demosplash/ansi/Makefile b/demosplash/ansi/Makefile index b20fa3d8..e3960c8a 100644 --- a/demosplash/ansi/Makefile +++ b/demosplash/ansi/Makefile @@ -1,9 +1,9 @@ ANSI2PNG = ~/research/ansi2gif/ansi2gif.git/ansi2png -all: kfest.png +all: kfest2020.png -kfest.png: kfest.ans - $(ANSI2PNG) --ysize auto kfest.ans > kfest.png +kfest2020.png: kfest2020.ans + $(ANSI2PNG) --ysize auto kfest2020.ans > kfest2020.png clean: - rm -f kfest.png *~ + rm -f kfest2020.png *~ diff --git a/gr-sim/mode7_demo/lookup_tables.c b/gr-sim/mode7_demo/lookup_tables.c index 48e2731c..6bd72ffb 100644 --- a/gr-sim/mode7_demo/lookup_tables.c +++ b/gr-sim/mode7_demo/lookup_tables.c @@ -2,7 +2,18 @@ #include -#define ANGLE_STEPS 16 +#define ANGLE_STEPS 64 + +static int double_to_fixed(double d) { + + int temp; + + temp=d*4096; + + return temp; + +} + int main(int argc, char **argv) { @@ -12,7 +23,7 @@ int main(int argc, char **argv) { printf("Sin\n"); for(i=0;i Date: Thu, 31 Oct 2019 23:55:29 -0400 Subject: [PATCH 02/22] ds: work on missing screen --- demosplash/Makefile | 5 +- demosplash/k_40_48d.inc | 146 +++++++++++++++++++++++----------------- demosplash/k_40_48d.png | Bin 0 -> 11809 bytes demosplash/musictest.s | 22 ++++-- 4 files changed, 102 insertions(+), 71 deletions(-) create mode 100644 demosplash/k_40_48d.png diff --git a/demosplash/Makefile b/demosplash/Makefile index 5f7ee62e..78d49e44 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -53,7 +53,7 @@ musictest.o: musictest.s \ pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ pt3_lib_play_frame.s pt3_lib_write_frame.s \ interrupt_handler.s \ - missing.s missing_screen_update.s \ + missing.s k_40_48d.inc missing_screen_update.s \ dya_space_demo2.pt3 ca65 -o musictest.o musictest.s -l musictest.lst @@ -89,6 +89,9 @@ BOOK_HGR2C.BIN: book_hgr2.bmp book_40_48d.inc: book_40_48d.png $(PNG_TO_40x48D) asm book_40_48d.png book > book_40_48d.inc +k_40_48d.inc: k_40_48d.png + $(PNG_TO_40x48D) asm k_40_48d.png k > k_40_48d.inc + ##### clean: diff --git a/demosplash/k_40_48d.inc b/demosplash/k_40_48d.inc index bd71525f..e8b8f1f5 100644 --- a/demosplash/k_40_48d.inc +++ b/demosplash/k_40_48d.inc @@ -4,73 +4,93 @@ k_low: .byte $28 ; ysize=48 .byte $A0,$18,$00, $10, $00,$00, $50, $10, $A0,$22,$00, $11 .byte $10, $00, $55, $A5,$11, $10, $A0,$1D,$00, $10 .byte $31,$31, $10, $55, $A6,$11, $A0,$1D,$00, $11, $31 - .byte $33, $11, $15, $A6,$11, $A5,$00, $01, $A0,$16,$00 - .byte $11, $33, $11, $13, $11, $01,$01, $11,$11 - .byte $01, $10, $01, $11, $00,$00, $55, $A0,$18,$00 - .byte $11, $33, $11, $44, $04, $54,$54, $41 - .byte $54,$54, $14, $41, $11, $40, $04, $55 - .byte $A0,$17,$00, $11,$11, $13, $31, $44, $04, $5F - .byte $50, $44, $55, $5F, $10, $44, $14 - .byte $50, $55, $05, $A0,$17,$00, $11, $13, $03 - .byte $10, $14, $40, $45,$45, $14, $45,$45, $41 - .byte $14, $11, $15, $05, $00, $01, $A0,$16,$00 - .byte $10,$10, $00, $01, $11, $55,$55, $15, $11 - .byte $51, $55, $A4,$11, $A0,$19,$00, $01,$01, $A3,$00, $05 - .byte $55, $A3,$51, $55, $51, $A3,$11, $A0,$19,$00, $11,$11 - .byte $A4,$00, $55, $A4,$71, $55, $A3,$11, $A0,$19,$00, $11 - .byte $A5,$00, $05, $55, $17,$17, $A5,$11, $A0,$19,$00, $11,$11 - .byte $00,$00, $10, $00,$00, $55,$55, $A3,$11, $51,$51, $15 - .byte $A0,$19,$00, $01, $10, $00,$00, $11, $00,$00, $05 - .byte $55, $11, $51, $55, $15, $A3,$11, $A0,$18,$00 - .byte $11, $31, $33, $10, $A4,$00, $05, $A3,$55 - .byte $A3,$11, $01, $A0,$18,$00, $10, $01, $00, $01 - .byte $A4,$00, $80, $A5,$55, $A0,$1A,$00, $11, $01, $30,$30 - .byte $01, $A3,$00, $88, $A3,$55, $05, $A0,$1B,$00, $01 - .byte $11, $01,$01, $10, $00,$00, $55, $58, $85,$85 - .byte $A0,$1D,$00, $11,$11, $00,$00, $01, $00,$00, $55, $00 - .byte $50, $05, $A0,$1D,$00, $01,$01, $A4,$00, $50, $A3,$55 - .byte $A0,$1E,$00, $01,$01, $A4,$00, $55,$55, $05, $AB,$00 + .byte $33, $11, $15, $A6,$11, $A5,$00, $01, $A9,$00 + .byte $06, $00,$00, $26, $A4,$00, $62, $A4,$00, $11 + .byte $33, $11, $13, $11, $01,$01, $11,$11, $01 + .byte $10, $01, $11, $00,$00, $55, $AB,$00, $32 + .byte $30, $00, $20, $A4,$00, $76, $A4,$00, $11 + .byte $33, $11, $44, $04, $54,$54, $41, $54,$54 + .byte $14, $41, $11, $40, $04, $55, $A0,$17,$00 + .byte $11,$11, $13, $31, $44, $04, $5F, $50 + .byte $44, $55, $5F, $10, $44, $14, $50 + .byte $55, $05, $A0,$17,$00, $11, $13, $03, $10 + .byte $14, $40, $45,$45, $14, $45,$45, $41, $14 + .byte $11, $15, $05, $00, $01, $A0,$16,$00, $10,$10 + .byte $00, $01, $11, $55,$55, $15, $11, $51 + .byte $55, $A4,$11, $A0,$1A,$00, $01, $A3,$00, $05, $55 + .byte $A3,$51, $55, $51, $A3,$11, $A0,$1F,$00, $55, $A4,$71 + .byte $55, $A3,$11, $A0,$1F,$00, $05, $55, $17,$17, $A5,$11 + .byte $A0,$1D,$00, $10, $00,$00, $55,$55, $A3,$11, $51,$51, $15 + .byte $A0,$1D,$00, $11, $00,$00, $05, $55, $11, $51 + .byte $55, $15, $A3,$11, $A0,$1A,$00, $33, $10, $A4,$00 + .byte $05, $A3,$55, $A3,$11, $01, $A0,$1B,$00, $01, $A4,$00 + .byte $80, $A5,$55, $A0,$1C,$00, $30,$30, $01, $A3,$00, $88 + .byte $A3,$55, $05, $A0,$1C,$00, $11, $01,$01, $10, $00,$00 + .byte $55, $58, $85,$85, $A0,$1D,$00, $11,$11, $00,$00, $01 + .byte $00,$00, $55, $00, $50, $05, $A0,$1D,$00, $01,$01 + .byte $A4,$00, $50, $A3,$55, $A0,$1E,$00, $01,$01, $A4,$00, $55,$55 + .byte $05, $AB,$00 .byte $A1 k_high: .byte $28 ; ysize=48 .byte $A0,$1A,$00, $C0, $A7,$CC, $22,$22, $CC,$CC, $C2, $2C - .byte $A0,$19,$00, $20, $CC,$CC, $5C, $5A, $0A,$0A, $5A - .byte $5C, $A4,$CC, $C2, $2C, $A0,$19,$00, $C2, $0A - .byte $00, $5A, $0A, $A3,$00, $0A, $5A, $5C - .byte $A3,$CC, $22, $A0,$18,$00, $2C, $5C, $00, $90 - .byte $DA, $50,$50, $A5,$00, $5A, $CC, $C4, $CC - .byte $A0,$17,$00, $22, $2C, $5A, $99, $A5,$DD, $DA - .byte $A3,$00, $5A, $CC, $C4, $CC, $A0,$16,$00, $20 - .byte $B2,$B2, $2C, $99, $A6,$DD, $5A, $A3,$00, $A3,$CC - .byte $A0,$16,$00, $22, $B2, $BB, $22, $D9, $A6,$DD - .byte $5A, $A3,$00, $CC, $42, $44, $A0,$15,$00, $22 - .byte $BB, $22, $2B, $22, $8D,$8D, $DD,$DD, $8D - .byte $D8, $8D, $DD, $00,$00, $99, $A3,$44, $A0,$15,$00 - .byte $22, $BB, $22, $66, $C6, $96,$96, $6D - .byte $96,$96, $D6, $6D, $DD, $60, $06, $99 - .byte $44,$44, $4C, $A0,$14,$00, $22,$22, $7B, $B2, $66 - .byte $C6, $9F, $98, $66, $99, $9F, $D8 - .byte $66, $D6, $90, $99, $C9, $A3,$CC, $A0,$14,$00 - .byte $22, $2B, $CB, $2C, $26, $6C, $69,$69 - .byte $D6, $69,$69, $6D, $D6, $DD, $D9, $59 - .byte $5C, $C2, $CC,$CC, $A0,$14,$00, $2C,$2C, $CC, $C2 - .byte $22, $99,$99, $79, $DD, $9D, $99, $A4,$DD - .byte $00, $0A, $5C, $CC,$CC, $A0,$14,$00, $C2,$C2, $44 - .byte $C4, $CC, $C9, $99, $A3,$97, $99, $9D - .byte $A3,$DD, $00,$00, $50, $CC,$CC, $A0,$14,$00, $22,$22, $44 - .byte $A3,$CC, $99, $A4,$F7, $99, $A3,$DD, $00,$00, $0A - .byte $CC,$CC, $A0,$14,$00, $22, $C4,$C4, $CC, $CB, $CC - .byte $C9, $99, $7F,$7F, $D7, $A4,$DD, $A3,$00, $CC,$CC - .byte $A0,$14,$00, $22,$22, $CC, $B4, $2C, $4C, $CC - .byte $99,$99, $A3,$DD, $9D,$9D, $D9, $A3,$00, $CC,$CC, $A0,$14,$00 - .byte $C2, $2C, $CC,$CC, $22, $CC,$CC, $C9, $99 + .byte $A0,$19,$00, $20, $CC,$CC, $A0,$01,$AC, $A0,$01,$AA, $0A,$0A, $A0,$01,$AA + .byte $A0,$01,$AC, $A4,$CC, $C2, $2C, $A0,$19,$00, $C2, $0A + .byte $00, $A0,$01,$AA, $0A, $A3,$00, $0A, $A0,$01,$AA, $A0,$01,$AC + .byte $A3,$CC, $22, $A0,$18,$00, $2C, $A0,$01,$AC, $00, $90 + .byte $DA, $A0,$02,$A0, $A5,$00, $A0,$01,$AA, $CC, $C4, $CC + .byte $A0,$17,$00, $22, $2C, $A0,$01,$AA, $99, $A5,$DD, $DA + .byte $A3,$00, $A0,$01,$AA, $CC, $C4, $CC, $A0,$16,$00, $20 + .byte $B2,$B2, $2C, $99, $A6,$DD, $A0,$01,$AA, $A3,$00, $A3,$CC + .byte $00, $10, $A3,$00, $10, $00,$00, $60,$60, $00 + .byte $20, $10,$10, $00, $A3,$20, $A4,$00, $22, $B2 + .byte $BB, $22, $D9, $A6,$DD, $A0,$01,$AA, $A3,$00, $CC + .byte $42, $44, $11, $10, $11, $00, $11 + .byte $A3,$00, $26, $20, $00, $3F, $00, $11 + .byte $00,$00, $76, $A4,$00, $22, $BB, $22, $2B + .byte $22, $8D,$8D, $DD,$DD, $8D, $D8, $8D, $DD + .byte $00,$00, $99, $A3,$44, $11, $00, $11, $00 + .byte $01, $10, $11, $00, $B3, $B0, $00 + .byte $FB, $00, $11, $00,$00, $FF, $A4,$00, $22 + .byte $BB, $22, $66, $C6, $96,$96, $6D, $96,$96 + .byte $D6, $6D, $DD, $60, $06, $99, $44,$44 + .byte $4C, $A3,$10, $00, $10,$10, $A3,$00, $10, $A3,$00 + .byte $10, $00,$00, $10, $00, $10, $00, $22,$22 + .byte $7B, $B2, $66, $C6, $9F, $98, $66 + .byte $99, $9F, $D8, $66, $D6, $90, $99 + .byte $C9, $A3,$CC, $11, $10, $00,$00, $11, $10 + .byte $01, $00, $11, $00, $11, $00, $11 + .byte $A3,$00, $01, $10, $01, $00, $22, $2B + .byte $CB, $2C, $26, $6C, $69,$69, $D6, $69,$69 + .byte $6D, $D6, $DD, $D9, $A0,$01,$A9, $A0,$01,$AC, $C2 + .byte $CC,$CC, $11, $A3,$00, $11, $00, $11, $00 + .byte $01, $10, $01, $00, $01, $10, $11 + .byte $00,$00, $11, $00,$00, $2C,$2C, $CC, $C2, $22 + .byte $99,$99, $79, $DD, $9D, $99, $A4,$DD, $00 + .byte $0A, $A0,$01,$AC, $CC,$CC, $A3,$10, $00, $10,$10, $AF,$00 + .byte $02, $44, $C4, $CC, $C9, $99, $A3,$97 + .byte $99, $9D, $A3,$DD, $00,$00, $A0,$01,$A0, $CC,$CC, $00 + .byte $11, $00,$00, $11, $10, $A0,$10,$00, $44, $A3,$CC + .byte $99, $A4,$F7, $99, $A3,$DD, $00,$00, $0A, $CC,$CC + .byte $10, $11, $10, $00, $10, $11, $A0,$10,$00 + .byte $C4, $CC, $CB, $CC, $C9, $99, $7F,$7F + .byte $D7, $A4,$DD, $A3,$00, $CC,$CC, $10, $00, $10 + .byte $00, $10, $00,$00, $10, $00,$00, $10, $00 + .byte $10, $00, $A3,$10, $00,$00, $10, $00,$00, $CC + .byte $B4, $2C, $4C, $CC, $99,$99, $A3,$DD, $9D,$9D + .byte $D9, $A3,$00, $CC,$CC, $11, $01, $11, $00 + .byte $11, $00, $01, $10, $00, $01, $10 + .byte $00, $11, $00, $11, $00, $11, $00 + .byte $11, $A3,$00, $CC,$CC, $22, $CC,$CC, $C9, $99 .byte $DD, $9D, $99, $D9, $A3,$DD, $00,$00, $CC,$CC - .byte $A0,$14,$00, $22, $B2, $BB, $24, $CC,$CC, $0C - .byte $00, $09, $A3,$99, $A3,$DD, $0D, $00,$00, $CC,$CC - .byte $A0,$14,$00, $2C, $C2, $CC, $C2, $CC, $A3,$00 - .byte $50, $A5,$99, $A4,$00, $0C, $CC, $A0,$14,$00, $22 - .byte $C2, $BC,$BC, $C2, $A3,$00, $5A, $A3,$99, $09 - .byte $A6,$00, $0C, $A0,$14,$00, $C2, $22, $C2, $42 - .byte $2C, $00,$00, $99, $9A, $59,$59, $A0,$1D,$00, $22,$22 + .byte $11, $00, $11, $00, $11, $00, $10 + .byte $01, $00, $10, $01, $00, $11, $00 + .byte $11, $00, $11, $00, $01, $10, $11 + .byte $00, $BB, $24, $CC,$CC, $0C, $00, $09 + .byte $A3,$99, $A3,$DD, $0D, $00,$00, $CC,$CC, $A0,$16,$00, $CC + .byte $C2, $CC, $A3,$00, $A0,$01,$A0, $A5,$99, $A4,$00, $0C + .byte $CC, $A0,$16,$00, $BC,$BC, $C2, $A3,$00, $A0,$01,$AA, $A3,$99 + .byte $09, $A6,$00, $0C, $A0,$15,$00, $22, $C2, $42 + .byte $2C, $00,$00, $99, $9A, $A0,$02,$A9, $A0,$1D,$00, $22,$22 .byte $CC, $C4, $02, $00,$00, $99, $22, $92 .byte $09, $A0,$1D,$00, $C2,$C2, $CC,$CC, $00,$00, $90, $A3,$99 .byte $A0,$1E,$00, $C2,$C2, $CC, $0C, $00,$00, $99,$99, $09 diff --git a/demosplash/k_40_48d.png b/demosplash/k_40_48d.png new file mode 100644 index 0000000000000000000000000000000000000000..f233d47c1ef76bcf4c88e76dbe3af59c15e8fd90 GIT binary patch literal 11809 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 Date: Fri, 1 Nov 2019 11:23:11 -0400 Subject: [PATCH 03/22] ds: work on screen generator with the power out --- demosplash/generator/Makefile | 14 + demosplash/generator/creator.c | 18 + demosplash/k_40_48d.inc | 174 +- demosplash/k_40_48d.png | Bin 11809 -> 12706 bytes demosplash/missing_screen_update.s | 6748 ++++++++++++------------ demosplash/missing_screen_update.s.old | 3368 ++++++++++++ 6 files changed, 7008 insertions(+), 3314 deletions(-) create mode 100644 demosplash/generator/Makefile create mode 100644 demosplash/generator/creator.c create mode 100644 demosplash/missing_screen_update.s.old diff --git a/demosplash/generator/Makefile b/demosplash/generator/Makefile new file mode 100644 index 00000000..511f6f7b --- /dev/null +++ b/demosplash/generator/Makefile @@ -0,0 +1,14 @@ +CC = gcc +CFLAGS = -Wall -O2 +LFLAGS = + +all: creator + +creator: creator.o + $(CC) -o creator creator.o $(LFLAGS) + +creator.o: creator.c + $(CC) $(CFLAGS) -c creator.c + +clean: + rm -f *.o creator diff --git a/demosplash/generator/creator.c b/demosplash/generator/creator.c new file mode 100644 index 00000000..e5c9a2a5 --- /dev/null +++ b/demosplash/generator/creator.c @@ -0,0 +1,18 @@ +#include + +int main(int argc, char **argv) { + + int i,j,page=0; + + for(i=0;i<192;i++) { + printf("\n; Line %d\n",i); + printf("\tbit\tPAGE%d\t;4\n",page); + printf("\tlda\t#$0b\t; 2\n"); + for(j=0;j<14;j++) { + printf("\tsta\t$200\t; 4\n"); + } + printf("\tlda\tTEMP\t; 3\n"); + page=!page; + } + return 0; +} diff --git a/demosplash/k_40_48d.inc b/demosplash/k_40_48d.inc index e8b8f1f5..88ea1f6c 100644 --- a/demosplash/k_40_48d.inc +++ b/demosplash/k_40_48d.inc @@ -4,32 +4,47 @@ k_low: .byte $28 ; ysize=48 .byte $A0,$18,$00, $10, $00,$00, $50, $10, $A0,$22,$00, $11 .byte $10, $00, $55, $A5,$11, $10, $A0,$1D,$00, $10 .byte $31,$31, $10, $55, $A6,$11, $A0,$1D,$00, $11, $31 - .byte $33, $11, $15, $A6,$11, $A5,$00, $01, $A9,$00 - .byte $06, $00,$00, $26, $A4,$00, $62, $A4,$00, $11 - .byte $33, $11, $13, $11, $01,$01, $11,$11, $01 - .byte $10, $01, $11, $00,$00, $55, $AB,$00, $32 - .byte $30, $00, $20, $A4,$00, $76, $A4,$00, $11 - .byte $33, $11, $44, $04, $54,$54, $41, $54,$54 - .byte $14, $41, $11, $40, $04, $55, $A0,$17,$00 - .byte $11,$11, $13, $31, $44, $04, $5F, $50 - .byte $44, $55, $5F, $10, $44, $14, $50 - .byte $55, $05, $A0,$17,$00, $11, $13, $03, $10 - .byte $14, $40, $45,$45, $14, $45,$45, $41, $14 - .byte $11, $15, $05, $00, $01, $A0,$16,$00, $10,$10 - .byte $00, $01, $11, $55,$55, $15, $11, $51 - .byte $55, $A4,$11, $A0,$1A,$00, $01, $A3,$00, $05, $55 - .byte $A3,$51, $55, $51, $A3,$11, $A0,$1F,$00, $55, $A4,$71 - .byte $55, $A3,$11, $A0,$1F,$00, $05, $55, $17,$17, $A5,$11 - .byte $A0,$1D,$00, $10, $00,$00, $55,$55, $A3,$11, $51,$51, $15 - .byte $A0,$1D,$00, $11, $00,$00, $05, $55, $11, $51 - .byte $55, $15, $A3,$11, $A0,$1A,$00, $33, $10, $A4,$00 - .byte $05, $A3,$55, $A3,$11, $01, $A0,$1B,$00, $01, $A4,$00 - .byte $80, $A5,$55, $A0,$1C,$00, $30,$30, $01, $A3,$00, $88 - .byte $A3,$55, $05, $A0,$1C,$00, $11, $01,$01, $10, $00,$00 - .byte $55, $58, $85,$85, $A0,$1D,$00, $11,$11, $00,$00, $01 - .byte $00,$00, $55, $00, $50, $05, $A0,$1D,$00, $01,$01 - .byte $A4,$00, $50, $A3,$55, $A0,$1E,$00, $01,$01, $A4,$00, $55,$55 - .byte $05, $AB,$00 + .byte $33, $11, $15, $A6,$11, $A5,$00, $01, $00 + .byte $62, $60, $62, $00, $62, $A3,$00, $62 + .byte $60, $00, $62, $00, $62, $00,$00, $62 + .byte $A4,$00, $11, $33, $11, $13, $11, $01,$01 + .byte $11,$11, $01, $10, $01, $11, $00,$00, $55 + .byte $A3,$00, $76, $00, $76, $00, $06, $70 + .byte $76, $00, $76, $70, $00, $76, $00 + .byte $76, $00,$00, $76, $A4,$00, $11, $33, $11 + .byte $44, $04, $54,$54, $41, $54,$54, $14, $41 + .byte $11, $40, $04, $55, $A0,$17,$00, $11,$11, $13 + .byte $31, $44, $04, $5F, $50, $44, $55 + .byte $5F, $10, $44, $14, $50, $55, $05 + .byte $A3,$00, $62, $60, $00,$00, $62, $60, $02 + .byte $00, $62, $00, $62, $00, $62, $A3,$00 + .byte $02, $60, $02, $00, $11, $13, $03 + .byte $10, $14, $40, $45,$45, $14, $45,$45, $41 + .byte $14, $11, $15, $05, $00, $01, $00,$00 + .byte $76, $A3,$00, $76, $00, $76, $00, $06 + .byte $70, $06, $00, $06, $70, $76, $00,$00 + .byte $76, $00,$00, $10,$10, $00, $01, $11, $55,$55 + .byte $15, $11, $51, $55, $A4,$11, $A0,$1A,$00, $01 + .byte $A3,$00, $05, $55, $A3,$51, $55, $51, $A3,$11 + .byte $A6,$00, $62, $00,$00, $02, $60, $A0,$14,$00, $55 + .byte $A4,$71, $55, $A3,$11, $A5,$00, $70, $76, $70 + .byte $00, $70, $06, $A0,$14,$00, $05, $55, $17,$17 + .byte $A5,$11, $A0,$1D,$00, $10, $00,$00, $55,$55, $A3,$11, $51,$51 + .byte $15, $A5,$00, $62, $02, $62, $00, $62 + .byte $00, $02, $60, $00, $02, $60, $00 + .byte $62, $00, $62, $00, $62, $00, $62 + .byte $A5,$00, $11, $00,$00, $05, $55, $11, $51 + .byte $55, $15, $A3,$11, $A4,$00, $76, $00, $76 + .byte $00, $76, $00, $70, $06, $00, $70 + .byte $06, $00, $76, $00, $76, $00, $76 + .byte $00, $06, $70, $76, $00, $33, $10 + .byte $A4,$00, $05, $A3,$55, $A3,$11, $01, $A0,$1B,$00, $01 + .byte $A4,$00, $80, $A5,$55, $A0,$1C,$00, $30,$30, $01, $A3,$00 + .byte $88, $A3,$55, $05, $A0,$1C,$00, $11, $01,$01, $10 + .byte $00,$00, $55, $58, $85,$85, $A0,$1D,$00, $11,$11, $00,$00 + .byte $01, $00,$00, $55, $00, $50, $05, $A0,$1D,$00 + .byte $01,$01, $A4,$00, $50, $A3,$55, $A0,$1E,$00, $01,$01, $A4,$00 + .byte $55,$55, $05, $AB,$00 .byte $A1 k_high: .byte $28 ; ysize=48 .byte $A0,$1A,$00, $C0, $A7,$CC, $22,$22, $CC,$CC, $C2, $2C @@ -41,58 +56,57 @@ k_high: .byte $28 ; ysize=48 .byte $A0,$17,$00, $22, $2C, $A0,$01,$AA, $99, $A5,$DD, $DA .byte $A3,$00, $A0,$01,$AA, $CC, $C4, $CC, $A0,$16,$00, $20 .byte $B2,$B2, $2C, $99, $A6,$DD, $A0,$01,$AA, $A3,$00, $A3,$CC - .byte $00, $10, $A3,$00, $10, $00,$00, $60,$60, $00 - .byte $20, $10,$10, $00, $A3,$20, $A4,$00, $22, $B2 - .byte $BB, $22, $D9, $A6,$DD, $A0,$01,$AA, $A3,$00, $CC - .byte $42, $44, $11, $10, $11, $00, $11 - .byte $A3,$00, $26, $20, $00, $3F, $00, $11 - .byte $00,$00, $76, $A4,$00, $22, $BB, $22, $2B - .byte $22, $8D,$8D, $DD,$DD, $8D, $D8, $8D, $DD - .byte $00,$00, $99, $A3,$44, $11, $00, $11, $00 - .byte $01, $10, $11, $00, $B3, $B0, $00 - .byte $FB, $00, $11, $00,$00, $FF, $A4,$00, $22 - .byte $BB, $22, $66, $C6, $96,$96, $6D, $96,$96 - .byte $D6, $6D, $DD, $60, $06, $99, $44,$44 - .byte $4C, $A3,$10, $00, $10,$10, $A3,$00, $10, $A3,$00 - .byte $10, $00,$00, $10, $00, $10, $00, $22,$22 - .byte $7B, $B2, $66, $C6, $9F, $98, $66 - .byte $99, $9F, $D8, $66, $D6, $90, $99 - .byte $C9, $A3,$CC, $11, $10, $00,$00, $11, $10 - .byte $01, $00, $11, $00, $11, $00, $11 - .byte $A3,$00, $01, $10, $01, $00, $22, $2B - .byte $CB, $2C, $26, $6C, $69,$69, $D6, $69,$69 - .byte $6D, $D6, $DD, $D9, $A0,$01,$A9, $A0,$01,$AC, $C2 - .byte $CC,$CC, $11, $A3,$00, $11, $00, $11, $00 - .byte $01, $10, $01, $00, $01, $10, $11 - .byte $00,$00, $11, $00,$00, $2C,$2C, $CC, $C2, $22 - .byte $99,$99, $79, $DD, $9D, $99, $A4,$DD, $00 - .byte $0A, $A0,$01,$AC, $CC,$CC, $A3,$10, $00, $10,$10, $AF,$00 - .byte $02, $44, $C4, $CC, $C9, $99, $A3,$97 - .byte $99, $9D, $A3,$DD, $00,$00, $A0,$01,$A0, $CC,$CC, $00 - .byte $11, $00,$00, $11, $10, $A0,$10,$00, $44, $A3,$CC - .byte $99, $A4,$F7, $99, $A3,$DD, $00,$00, $0A, $CC,$CC - .byte $10, $11, $10, $00, $10, $11, $A0,$10,$00 - .byte $C4, $CC, $CB, $CC, $C9, $99, $7F,$7F - .byte $D7, $A4,$DD, $A3,$00, $CC,$CC, $10, $00, $10 - .byte $00, $10, $00,$00, $10, $00,$00, $10, $00 - .byte $10, $00, $A3,$10, $00,$00, $10, $00,$00, $CC - .byte $B4, $2C, $4C, $CC, $99,$99, $A3,$DD, $9D,$9D - .byte $D9, $A3,$00, $CC,$CC, $11, $01, $11, $00 - .byte $11, $00, $01, $10, $00, $01, $10 - .byte $00, $11, $00, $11, $00, $11, $00 - .byte $11, $A3,$00, $CC,$CC, $22, $CC,$CC, $C9, $99 - .byte $DD, $9D, $99, $D9, $A3,$DD, $00,$00, $CC,$CC - .byte $11, $00, $11, $00, $11, $00, $10 - .byte $01, $00, $10, $01, $00, $11, $00 - .byte $11, $00, $11, $00, $01, $10, $11 - .byte $00, $BB, $24, $CC,$CC, $0C, $00, $09 - .byte $A3,$99, $A3,$DD, $0D, $00,$00, $CC,$CC, $A0,$16,$00, $CC - .byte $C2, $CC, $A3,$00, $A0,$01,$A0, $A5,$99, $A4,$00, $0C - .byte $CC, $A0,$16,$00, $BC,$BC, $C2, $A3,$00, $A0,$01,$AA, $A3,$99 - .byte $09, $A6,$00, $0C, $A0,$15,$00, $22, $C2, $42 - .byte $2C, $00,$00, $99, $9A, $A0,$02,$A9, $A0,$1D,$00, $22,$22 - .byte $CC, $C4, $02, $00,$00, $99, $22, $92 - .byte $09, $A0,$1D,$00, $C2,$C2, $CC,$CC, $00,$00, $90, $A3,$99 - .byte $A0,$1E,$00, $C2,$C2, $CC, $0C, $00,$00, $99,$99, $09 - .byte $AB,$00 + .byte $00, $20, $A3,$00, $20, $00,$00, $20,$20, $00 + .byte $A3,$20, $00, $A3,$20, $A4,$00, $22, $B2, $BB + .byte $22, $D9, $A6,$DD, $A0,$01,$AA, $A3,$00, $CC, $42 + .byte $44, $76, $70, $76, $00, $76, $A3,$00 + .byte $76, $70, $00, $76, $00, $76, $00,$00 + .byte $76, $A4,$00, $22, $BB, $22, $2B, $22 + .byte $8D,$8D, $DD,$DD, $8D, $D8, $8D, $DD, $00,$00 + .byte $99, $A3,$44, $FF, $00, $FF, $00, $0F + .byte $F0, $FF, $00, $FF, $F0, $00, $FF + .byte $00, $FF, $00,$00, $FF, $A4,$00, $22, $BB + .byte $22, $66, $C6, $96,$96, $6D, $96,$96, $D6 + .byte $6D, $DD, $60, $06, $99, $44,$44, $4C + .byte $A3,$20, $00, $20,$20, $A3,$00, $20, $A3,$00, $20 + .byte $00,$00, $20, $00, $20, $00, $22,$22, $7B + .byte $B2, $66, $C6, $9F, $98, $66, $99 + .byte $9F, $D8, $66, $D6, $90, $99, $C9 + .byte $A3,$CC, $76, $70, $00,$00, $76, $70, $06 + .byte $00, $76, $00, $76, $00, $76, $A3,$00 + .byte $06, $70, $06, $00, $22, $2B, $CB + .byte $2C, $26, $6C, $69,$69, $D6, $69,$69, $6D + .byte $D6, $DD, $D9, $A0,$01,$A9, $A0,$01,$AC, $C2, $CC,$CC + .byte $FF, $A3,$00, $FF, $00, $FF, $00, $0F + .byte $F0, $0F, $00, $0F, $F0, $FF, $00,$00 + .byte $FF, $00,$00, $2C,$2C, $CC, $C2, $22, $99,$99 + .byte $79, $DD, $9D, $99, $A4,$DD, $00, $0A + .byte $A0,$01,$AC, $CC,$CC, $A3,$20, $00,$00, $20, $AF,$00, $02 + .byte $44, $C4, $CC, $C9, $99, $A3,$97, $99 + .byte $9D, $A3,$DD, $00,$00, $A0,$01,$A0, $CC,$CC, $00, $76 + .byte $00,$00, $06, $70, $A0,$10,$00, $44, $A3,$CC, $99 + .byte $A4,$F7, $99, $A3,$DD, $00,$00, $0A, $CC,$CC, $F0 + .byte $FF, $F0, $00, $F0, $0F, $A0,$10,$00, $C4 + .byte $CC, $CB, $CC, $C9, $99, $7F,$7F, $D7 + .byte $A4,$DD, $A3,$00, $CC,$CC, $20, $00, $20, $00 + .byte $20, $00,$00, $20, $00,$00, $20, $00, $20 + .byte $00, $A3,$20, $00,$00, $20, $00,$00, $CC, $B4 + .byte $2C, $4C, $CC, $99,$99, $A3,$DD, $9D,$9D, $D9 + .byte $A3,$00, $CC,$CC, $76, $06, $76, $00, $76 + .byte $00, $06, $70, $00, $06, $70, $00 + .byte $76, $00, $76, $00, $76, $00, $76 + .byte $A3,$00, $CC,$CC, $22, $CC,$CC, $C9, $99, $DD + .byte $9D, $99, $D9, $A3,$DD, $00,$00, $CC,$CC, $FF + .byte $00, $FF, $00, $FF, $00, $F0, $0F + .byte $00, $F0, $0F, $00, $FF, $00, $FF + .byte $00, $FF, $00, $0F, $F0, $FF, $00 + .byte $BB, $24, $CC,$CC, $0C, $00, $09, $A3,$99 + .byte $A3,$DD, $0D, $00,$00, $CC,$CC, $A0,$16,$00, $CC, $C2 + .byte $CC, $A3,$00, $A0,$01,$A0, $A5,$99, $A4,$00, $0C, $CC + .byte $A0,$16,$00, $BC,$BC, $C2, $A3,$00, $A0,$01,$AA, $A3,$99, $09 + .byte $A6,$00, $0C, $A0,$15,$00, $22, $C2, $42, $2C + .byte $00,$00, $99, $9A, $A0,$02,$A9, $A0,$1D,$00, $22,$22, $CC + .byte $C4, $02, $00,$00, $99, $22, $92, $09 + .byte $A0,$1D,$00, $C2,$C2, $CC,$CC, $00,$00, $90, $A3,$99, $A0,$1E,$00 + .byte $C2,$C2, $CC, $0C, $00,$00, $99,$99, $09, $AB,$00 .byte $A1 diff --git a/demosplash/k_40_48d.png b/demosplash/k_40_48d.png index f233d47c1ef76bcf4c88e76dbe3af59c15e8fd90..0c4280a5eb718a1655abbc003c14e2fe28374715 100644 GIT binary patch delta 11922 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 Y1)&avg-N;-2mk;807*qoM6N<$f-oM?!vFvP delta 11018 zcmV+lEA`Z(W1(D-BY!CHdQ@0+Qek%>aB^>EX>4U6ba`-PAZ2)IW&i+q+U=ZMa^yOb zq~EcMUIK9kmV>L=>|mBZpM%WQrBtWt^vp}!{H2moVv-<$i12U^fN9qM{$Jbt*MI$& zbv9on#9UHM>Ed6gp}NK|<+}f^^V448{5=2M>plDRxbe^N%YSi5e>?|zdX8_7J6@l^ z`*^i;AGh^sXt?K%S3~xF$NQ!6Tm1NYz8dOZkDC?VUH;n8(=%_M9z6}L=heHXN6+^dYWph;s#A!FYeH3a9D*I<@<#GjtI@YOdRR0UY}>bK6hZ8 zUyir-9JkeeZs^#K8=A}2FaFTi`vP~hkK^NY16RL{V1GR48}9t&g88~2e!XD6ZjkF& zH;Iq=uln_k*ZWud+R%D#kO#*Z8Zmi1aJ_m&#GW@^fodPWy420DlPZgznE5G`jGF%J zq2m=C{_FAgAXfX*Q@YddhW58No*vn&{TMPf|9spq1b>F`Em#>s_;SG;ZoVCV56%DP zg23@lJ%9Dj5U%v|`R4uG^TrNObia_WyYq=1o%b>H z=Vjl&nP;xvF#Y;__kI4oF3jQU`=!|P&blM=GPXZ=@t=I=hAjEi>&o*pJZBu7b|0;R zqW2ux@$HRQ@8^BYJ;Ml33b5-r_W}Oou4JBZo_{yWgU4yy7r3YKR_}QLmha>KY3Mxy z5K`T8`F`Wo6I`ymE$7Zq@4$T>pTCaa^vFG3_4aM@(`ong)V(stxR0On+%t5Ipj`Dd z zcz=cv#_iAcy1pZTdg)JNdk0BeVe~)Lg)#F&gU!e?Ve*^8AMIrJ%Vtb1OLBU zjkyV$u}{bN%RIAVpYOy;XV!fAZBsg*Nq;^w`#x^|-wfc}K5CI6rJ7xuIVa1j{3s?> z%b1FKSJ1HD^0&mTVFq;fPc^mgB{dofoET!rziN?F#d6;&6z>AVC*hN>+mC+vx37dvk0 zRB0Gk?fS#NUwY)`M`hyFV?T<**KR+E!yg;^nC7M`#CESn!`1-b73KGEpVwC<;@l;? z@BGz1<=2|_jK9{j&6jEZUekWnjQqFCa(chMkDJeL*!XiP`V=ic^@t(%=f>_!kH&Jp z4(IvadzQV|J-QYW-kv@=h<$%GZ#Yqbek=LJSLQqNdp=*4FI4?CaFdDmb-sqJ)&Yv! z20LxD+b%l|zYII*V{prX(9XHx{5e)Y?CQp;bOn9cO-NQhfjZ|05$T0vcUMf%MAq{) z&fN-ko|aRcr7?Rl%wK$&zdiA%uR8{;W$@NKenG$PvXj*`di~_I@DzWkuCwA`KYe}w zM?-QzRU9?Vg#os!-%a#rKYZ)J4nHGb;c;G@=c}511;f1~ogpy?dnN0mP4>#pWowzp zf`J-cC+)e81#FCN(n%MTFS8@5aceHg#-4LsbocS<8kUGh2^FmZV5|V_rI16xhZ@Kj zVvN9LEV0H$iU|pjH7S25tsOP=Q^+x=oO8)Fx8h4Ev80kqDYdlf$WdTw1*&VQwYJ7R z8!b03ZpAc?bk}_kJ@(XdFTM6QaGw!I9BJfHMjdUs>1UX6g7>q`I@_`fS6X4kl~y*Z zth(C9*S6nb#|^gcvg>YdtJx=PzkmG;tJ%kD?pR9a<+s&1n)82a6~fXGjmTzL%ms_Z zm8Yy&g=}^e8-kPNWV5Tf!z1Wqlx?P!#js#l*0{JWSKhY!u-w14n@Q=nc60y6az>{6 zzp&ifZf51jZa-LUwzDkZkA)P4ioweheZ0R)bESz0oLBSu zFijfRqt=17aDac}0%XCj8jFpqOzYGWH6xFx@0z6jrNt&LU(gnDN`_88qjm4~0u zjF$Uca~BUTo||u%YIGHPkxJdL&OAK%4XzS6cP$$t|I^-)W;3z2v7XD_?LL5Z_{+A9 zekWKTfZ5Wn$peYx-9~xa5O9ZtL zR1CaBo(dU79IDSAIA@f-dflt-se_vL?P-_!M2@m+$-c7UxcKe>K2y6f7tQ?jcQPbmg$>}Lr*$5!idsU?!34>esY z=f!>L1TM8wn#)w+36ss#7S?Z*Q5QlEycPnqVzt<^xJe^0@V%Ky!W%PmIy-as{K37V zA?S84y~k_19UEQsr>j5rG_*>d<^Ogg)MkUz|51OhY09#i`FZ6LC$3D`GXWEhe$CMX z9bTgX8z>BUTfev)p;}tUHD>3R6>({6G_W~S$A=w0kO(Evr-V_ik=nQxS;{l*%o|~! zH4ztcARk#P11p8t$8`+TwU^uTdc_5iO}4syWG#HK;WPREdlW!p{OA+r4^Gp&otIoP z*;apP_KGV2OQVhI(i#P9M28Vhrk9Vbk9a(rl#65U z15+aI_+J!q6CzAxs(sm=z-Iz`wnEelKqO3`CoNWu8hgEn(gwQOM1f z5icuP)n~*aM`Ld_li*$lC3Tc6_85*`$1A~C+VVLTx%+OXI zgeY=45akx=hOy=}Hhm*ZXTy(31Z0d+Tqbh>^PEn)!R8ZiH;j5TTe~GS20+7>9a>@f zfVoY#{cM`TLU55_&=Re0-bHG~9s&VdYoaM@>VTz&G)7o~d-Y<4vpo{XWCW&rk`jNL zt|5pS%7ogCASXkutbqJvE^tygWW09Kvg&MH4v=Ru+=xtRabs~Y$y$S3g`t&W+yMrc zuxi7zwm(j1zye4szTUAJxhz)E46vB|zC1<%dV;)Stj?%vvYmW6BMjOC$OxTGT#RLC zbT5F`fuVjSayv+qDrpWV2cSWC(jR}_0!MDR&(nhJ?fyf19nPz{z8(1WHLg0B^-4=A z9p(0sn5n&nF01b@H%aal(PL6R(&(kN&4}yQi6~#&L zBah7x;P|9nliU}Y2gnFXI01kv)U$>3#blyr_iAyF0-a61nHa5bY`a-A`Lm=I?+Ny{ zUFTQnYEnT{B?33L+}^<&8C}jHLCT7?-IKBzERJ^N1`C@24_t)&A~u)-<fMC}p^>8J{wM^8B6nO1oF3FygRO?hdblXDa4F0f* zJ?_%-)y2f&hK)R%y&Ey0s*%#%6QV@Q5IUxB=tv*|jz;JhD%m^id;#RGP3SUOpcMqV z6QhDkB#>4%UsEspUYfqjgh1_gsZd2I z4yphONdkuQjV+nfAuXm{rO<3;-V)-32!o^o10A@rbs{%N19@&?DwsrS6{BCd(Z>z( z6f7m#)rvuq{+J=ULQJc$_v8QvM9DCT}OxKA!_`)VP z2fMB^aA6fC!JEyk92zNHh|@k)Fu5JG`)grM zFJS@7khuYa*%GmaT|uaANDyP=I{v{k><%dIVh>RylsmQmt~(B?UL$=n5!i8fyj^EpsvW8(@_Tx`|{aQIOwhPLvq! z(dgr}5FU_Q7s3NjM|c&G2>vs5D5Wy5wO5=0KP-++PS&h05Stf40G0sopl66kAZBhU zbfE~#;C6lq+@W&^+`;ez?pGJjkGYW_qoVnuOBa8=I1oruoy#>6C5dp6F%7wd3oI89 zp2+QvR~1C&u(PV2p9KTMf@KECBy#}jgkpxgcSg*Me#L=?3nYdGM1nSu93b2UPRAE; zIaEs_ym2_hDQrjIr}S72X&IRtS`-6n1924#UTtxJzM_PCST^+z_d7#I9FE%v5|JJy z!xw+JX-FnDLC;bIXtTEK*0HX7=9A19;tSxQVNYhz5|(H-M8yl-HgW+`gQrNUEM*Jg z84&O&F-`Zv+n}g0|Cxa~C=%Qkg^K6;K7>xrx=Q4C{LLU^7|I8VsDT?tl&5x5{dEiHAafAu>JFujJDr$%v zEzwPcXSA(@X~0HY6|~dKpg0q>lc@=siSLkVr^9wgwSp=lzsPg28`QZg2iRvc9_shZ z2g9+*QBWx)0v4)Jka#U9+gNlKn#>7&g+H85N8m27Ig9S&8_ez-`jD7JI@-BYBFlf1 zVL&G*c}!GfSqcz`81=O^Ps78wNpd+MK(NWk2Akuo7kJ)B*6v(_et@aCHkj|T%{XLt zaJ(VMq>Jfl+!d`<@i8FlAV9_;QNSBH#KgFR#=!1)#vv3R1QHpjrKXT32a*K=MoSWg z_{btK0q@OSO?bP*cW-$4g8%L}-%o!uAAZ9Nx&2tyD@Y5$4)~DJkdI_wi>;wm%!CLe znl4|=<+YKW#Jc*tq9Z&DuHd^1_^0}M64UeXOtDM1L^@yhRA>W@q*u- zZ^&wahy;P)GCO60dBW7R?u3b;Ke^zH1S=fGLQ=I~Q*bj?h(lFc;fXED#Dg11)Q$v( zJCE2JkP#qMFgrVao4G>sS}n+M*d)qAg=a)WN#qGcE_t>))1Zu`Uf4OFs%6}P_7y{g z#v*+bj|#^^5*JB9n+&Ah&G3IJNyn80bDR~TRqYZmLor~eYs4*m3Fe^vAo=9fR%UUG z9;#3;cyw^&WqN%@`sC>xscD;8*F?f=)dZw~mq6|C2SOY1un}UaK;}$nT`*9<$-yET zPmlB6py^d6oLOo)p!W5QqGdX#oWyP7S$cmAy*0HvBad$1WLU@tUfQh=rT&q^*2<3}egHlYUdT!(m=7GDyfADN(A6d-wRh7+7 z4&RSUX(7NK(I4-)^uE|o?%)^wmF)&$L43dXDZ7{RIgOWn^%-C-S>!bz#`6zO0B zdPuG06DKByqD_K|eD;4WNlTc3a$|>xxW8x{O zku2d@x)?HzEB%r4A(C20S#Y*OO4`VKT#Z1q@Bt=X> zOT8S*-z3z!!$C_ChfL)NK1&Wk!p*dpGnI*mI}&z^6*2hYya$-!yoYQNiML8}ZV>%i zkUmb%{Nr&q-__FNT}*jVUWfzI;O<-Z=`?ViNP~afk(*3LGFi;3N-0VyN^KO{Jhi$> zYD{SO_?gX|AZd0IWT0=?5;KCwKu^+nR7~s+X{Z`Qk_fIU5rC)8GTTA*=!}@j3{xcm z@Xsm1L|X|oQo8}UwIv4=&ceK)^I@%yn1KDBbwXN2c_56rOC*S5Y(on)V7SlXoDF;| z#b|#rlVwEX5`R^$0e|2P^2e%G6U*41&^3JqMVhsI|>Q znSm*Z2eN_ZbVxApvE`f4@125d(jLIjNe#L5%}*seI{G*MLgOseplMX<}>@ zn6(=U768#XX%BuR0+SmsvAnbw1{i;9Hm zO+8eO(Vt?|B!!To^Nqt8n=Fl}XGWOsj_406EKR5rF{;@Mt}d%b4~>>aiFVMA*c5+l zC!D0*WGql@6d>)ck)))h-$?F0#c2d20wKUpF-Tfws(wM1oLml#;Ag2IsYA9LERvrQ z%p^}FYLgeKfX_*|ZGwCtqr9Ur1D0sLUEYh0>F#P*3}C%t4}OBduH7f2CF{{JIV*Y) zHcY%p)rN^@%{9!NDyu*cw6C&4r#*l6oUsCETJbsM3Z_^j^=8{;BedO16Tc;~`9%|> zg8(Y}d}^Wfk;PC#iO`#c+~%3>CHm4!i#(!FI8-3}v5S=m@R)&$v?fsMP19@OmpD#S zc(&3y7~a8hbHE&C{VLO;T~ww+;W4}QwD4R{FVup!Dv7IH5gLDt{$7K23A$1#&iRHN0NsM0jFAy*YbiR zJ7}$|2RklH@Q^GT!Z-jP@I-&INb6*=rp0@1xAgGtZw3hwYrij}o2QN*|G*JGQv|JT zz_KsKF$RLYLXoP0+Q4>*C58Q!0b~%~LTy#%!Pm5h0Uv93Rpq3qlTie_sp+v zp6EM%lgW)`$Wf8bgRwfY1(lJ$1>yW>5f_8tszzK0G@(?lu z%1?wX7yw)m1~pK;8AG6sKm_2zxK!KCqLCw3#qZic+e=H52+7?*1(I$PsA(ymB(#^Z zuohodL)_Oo;E2W}VXH4w+bc+W+B<<)OjV2AoZbP`5MBU#M`8UzrF8;BEJp-O;?#emYW zE}yFQbg9-xe+PfO2NrUOA>8X;nPiBWURJur9ekF|@_5;PRwbTA37@|o*BYtUaz4}; zfep5yriCMP2u{3AW+Ef=Fy<$P_({b1Xk5yp1{TbR%0UvCFPtH0C2!@SDosSqjF1`Y)|S2j5IYzJCSky|o>g@M7N#ML z;M|b2R-k|D37=s$;W;344&zP&dBo>d498Zl71jWO_DD#A_Dr}zjiV;lLPKJZtUa{| zWjakPA-2g#5a4A`iL;b2)%GAU8ux+pHa$tu$pTeN+A+;U& z!kQ5)=0@maR(lF9F`qs&{n;>kH~@~mW>xtYKCyp~+&r=c=)Efx;QLPFU^;{sJhy)N z%RC#zNY8dRchU=l#Yif45tPXPho z-(4+QI)Kvo3UAcPYXgsIsB2e?X-rO>QFQ=>K8eyR2%&6qKv9B4=3SEc z+FyTcKh+mei!rY05SGYq4_y7RcpTz zfl^T$)hNg(45(`-3#{&JAIvCEhOCFvv8PH9V-7qk?5SNYqocrFl+&%kc?r+cLlt0} z_AtREL6}-^qO%L?`)pq!8kG)V_k0#BRBCmGUH!a9uVDiHGGyv^3l!pZEP3mEH z0(U}2k?&UfEJ&tz{muz-q=nLsM!|5GRNx4w_$TeTwedI;fm_UuUJhJQ)lM=vw0I#7 z6K?Ff<3A~4RC9OYDt9Neec8dc$gh8a{t{?5u7G}(Px?MI?4=#{+Q&#v{Yc*CBYS^M z-r9cmfi^#Y4U8p^wCAO?Eri5Hs@6Pd3BcRh=hcr&EB4;!L&jMu+5BeT?*W7JnJnM% z;DLkrtbKx_+8s(1{BtSD+_fMEd}@CI7(2^*^%Z^fjy~`gn+f)=K=5Pg55Py4u3 zwSv~1!kEexs`klyrZ!U@1w?O#>Iy<%@Cg@MLwh=6*Fz-aMF=w@7G@iq$%z3d7hc*l zgw8yUwAJ|j(+-X%q`Xr<4ZTzUhhkG;N^nAgeXzvU*UH(Cg<$h9%ZF{4c{9ui6b!hIkQqM4(@B!?p%kQ4}IcyiSuT{}y? zS|roaj-P1*I*&%;Zlo*xKNJ>cH z=wB7oqvG`uVULhkxqqwNzfZZp0zpwA`WMR(u%(;~nlfjnbu?82s~{TiF5^`&`&)|| znN%BjMI38OwMsKhJwtJ651Upds`i^}N4H-nW#txarAxv*raRvSV52R(cMZ5o7*%a8 zgOXMFqwV6G2ulnq4X=ONlKZ@oM3tJ?RuaQN@GR?8VTe(t>8jnVvpWVs>{V{dqk-GG zKs&Xv9ki56p4V(UtuThF2Xj*r)AeGKp`;jVgOKZSCi!Uy$dQ$7zY{Xq5k2Zdw%Wa7 z^#D!CS_vx#$O?_Qt|0&~pD6!Av~|LRyaGXYGyVM<>mb%#XhSS=bF`38QGV{$9c zZXa>itlfyVISZQ~R(l7P8U;p|wrMmyO8_+&Bkv~T>yl4(I=AxusY*$o#zoel&%^_6 z4ma2KZI39{(-wbzyq#w zIFZ)M$pluri06-0N%O6&co!ANyV1X>K#r*m^`{KowTFN9UtCCH`6ZEve6N2&xQ6-bvTD=wnLQ!tA-!33BVb*%uC2#nylKlH1O<>9jLd2$ z$|3-_9@hg(4lPxFQ!cu+`UA#S`jh;rh|Zinc!D1_a&)K&NA0S@U(mQxelYtjK^75; zTNWYXi+-)^uAb_{=McR^Ii8L+J>=CrZUlE6s>gq@3#)%LrdSd#tsxjBmQy!6L|WfvF+~_o)#g1mOh@7;f6t zUx~E|<~kKvf}Tul;BRiIWNyqDtS7%}2fo(HlkUiXREQKAJ5TefICrW%#2V3nUgOq! zj23?&=z5NZ$U+<}TFybwn30ANF~qv|ydl@Hd`XvT_febZE_8oLt1B}$@u<0^4z(G4 zX=B2K!FVlSoe!H^1$h!?XxaxF@VAccUJ$_=-8RWytLDVq#UsLDHe|GS8bhy$FF`f5 zbF=6%S1s!n00S|Pk^9mBFRK!(e~i6ME-^96)hJ=h4#QT2Iga}SxZk3#sMUxj}d z?!ZXb+V9!cmQG7FdmcFO%?^JmT89qYTYncxaO(M30yS&%2$UDWb9tjjyDn`{)5Dw) z>)irgT^PxfqLjLalj3HfkQ_-0_`jYFFLt6;m7^ya(@o=(HjWQ(wVs=`D=>76uu|n7 z3yZF)WUI1Rd@Lr&Ll>UeBMslgQCfdQ%UJqo4xuyEj<)JP${zAk95J zhYjux_;x+s9r7#$BR_@co+AE&jhOqooc?xs#sv5kI;m0( zeAbh`{kl?11S7&PweyT5IVzN`&4*o8Ej{TzwG(&J8gjFO`C8Ia(R-5B$ax-Cb595P zaGEck2>Df-CJ&{M#qzam3|mMZ*EwQA53A~vU>G}j(lK<14>Pq5lgEEl7BmAR(3(-d ziq=qI^n@4vIiL5?=p+n@>$MXl!ja)bS~qBfjPh7E*mi1EJqgAFW0b`RPfFm$ED zg}jtBIz1)SNd^c~l2ldf;F7uG;)bZZs?)wx#Fj6WU~g`gyP6CD#6K-@Jg?>-PS|0c zokH(@LT_wmCa3?r`>1~+A-;k;VXe9u1k(-ljvm{c(Tcd8NBy+W9?>#*r?$4MmOQea z9PwtU0JQig3sfvczNFqf~y-DP9l{N?^efYu9Grj`Pvq7df=bk+gcin$Z4m>1gF8n;{sW*$u zMK>`1J|6&pa=gO*)C_&t=-{cMxHgBVGK#y}4l5KzgoGt}HMz7}!PXGkIO(M$u<0>2q8 z49!Nmw0(7G5sH64Ma~fVER?N{#7B*1??ww92fu+S+J8bW^XFuIKX}^wvReJbK~nN{ zuaB)~08O7J;8*Y+jK9Vy3hws_wuw+e$#=!@M43L2pkLJzcm;wakCPmpq}^fW`DB=N zkvvEgq`gbSR6&^eC7;+vj?*3@9HHh5TBs$>NEU{;S*Cx|*44O;nFwZ}zr|Kk>3TRB zj&Aiy4JzF`Jt@dkYXMJt!p22X%cvi%CPt8ijGT}wDysWaTEGY52CHLC+^R}NYvhD2{|YwBlz8rdIC(p=CMQP&`!;Jr3B z`Q7lei|&k!m!7BlOjkiY!0}aeF!$$2 zJNc;|NM!hy6x@`#&qq!48q>ihAZ*m%uDfo1+E6wB2WB#;L!}>_#D@!_maWlcoS&djRjg1252yIfD0Gy5&oboJLX= zI2DkuKTXLpKz&3Th9U@MXxaolYxdB`S-W_f{l3WQkhS3Uh>bknaCEP5UE>L&CW2iK<%@s!5AkRw=>z$a zsQ&?aqKM;??hc%wO@^Ep87_$oimYrkFC4>VaR_DCrxCaq>3Al3)i-eQ$O67k+ Date: Sat, 2 Nov 2019 00:01:15 -0400 Subject: [PATCH 04/22] ds: autogen graphcis code --- demosplash/Makefile | 1 + demosplash/NOTES | 3 +- demosplash/create_update_type1.s | 69 ++++++++++++++++++++++++++++++++ demosplash/missing.s | 41 +++++++++---------- demosplash/musictest.s | 1 + 5 files changed, 93 insertions(+), 22 deletions(-) create mode 100644 demosplash/create_update_type1.s diff --git a/demosplash/Makefile b/demosplash/Makefile index 78d49e44..9cad1ef5 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -54,6 +54,7 @@ musictest.o: musictest.s \ pt3_lib_play_frame.s pt3_lib_write_frame.s \ interrupt_handler.s \ missing.s k_40_48d.inc missing_screen_update.s \ + create_update_type1.s \ dya_space_demo2.pt3 ca65 -o musictest.o musictest.s -l musictest.lst diff --git a/demosplash/NOTES b/demosplash/NOTES index 5ec6f7d7..679d7103 100644 --- a/demosplash/NOTES +++ b/demosplash/NOTES @@ -67,7 +67,8 @@ Memory Map ~~~~~~~~~~ 0000-00ff zero page 0100-01ff stack -0200-02ff ????? +0200 fake store for graphics update +0201-02ff ????? 0300-03ff nibble table, irq vectors 0400-07FF lores page1 0800-0bff lores page2 diff --git a/demosplash/create_update_type1.s b/demosplash/create_update_type1.s new file mode 100644 index 00000000..6841c9b6 --- /dev/null +++ b/demosplash/create_update_type1.s @@ -0,0 +1,69 @@ + + ; Autogenerates code that does interleaved Page0/Page1 lores mode + ; but leaving room for 14 pixels/line of per-scanline color + +UPDATE_START = $9000 + +create_update_type1: + ldx #192 + lda #UPDATE_START + sta OUTH + lda #one_scanline + sta INH +create_update_outer_loop: + ldy #0 +create_update_inner_loop: + lda (INL),Y + sta (OUTL),Y + iny + cpy #49 + bne create_update_inner_loop + + ; toggl PAGE0/PAGE1 + txa + and #$1 ; ror? + clc + adc #$54 + ldy #1 + sta (OUTL),Y + + clc + lda #49 + adc OUTL + sta OUTL + lda OUTH + adc #0 + sta OUTH + + dex + bne create_update_outer_loop + + ldy #0 + lda #$60 + sta (OUTL),Y + + rts + +one_scanline: +.byte $2C,$54,$C0 ; bit PAGE0 ; 4 +.byte $A9,$0B ; lda #$0b ; 2 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $8D,$00,$02 ; sta $200 ; 4 +.byte $A5,$FA ; lda TEMP ; 3 + diff --git a/demosplash/missing.s b/demosplash/missing.s index 937d52da..290c8373 100644 --- a/demosplash/missing.s +++ b/demosplash/missing.s @@ -18,6 +18,11 @@ missing_intro: lda #0 sta DRAW_PAGE + ;============================= + ; setup graphics code + + jsr create_update_type1 + ;============================= ; Load graphic page0 @@ -130,17 +135,20 @@ mloopB: dex ; 2 missing_display_loop: -.include "missing_screen_update.s" + jsr $9000 ; update_type1 +;.include "missing_screen_update.s" ;====================================================== ; We have 4550 cycles in the vblank, use them wisely ;====================================================== ; do_nothing should be ; 4550 - ; -6 - ; -10 + ; -12 jsr/ret to update_type1 + ; -6 jsr do_nothing_missing + ; - 7 check keypress + ; - 3 jmp loop ;============= - ; 4534 + ; 4522 jsr do_nothing_missing ; 6 @@ -158,32 +166,23 @@ missing_no_keypress: ;================================= ; do nothing ;================================= - ; and take 4534-6 = 4528 cycles to do it + ; and take 4522 cycles to do it ; blah, current code the tight loops are right at a page boundary do_nothing_missing: - ; want 4528-12=4516 + ; want 4522-6 (return)=4516 - ; Try X=4 Y=174 cycles=4525 R3 -3 X loops + ;Try X=99 Y=9 cycles=4510 R6 - ; Try X=3 Y=215 cycles=4516 + nop + nop + nop - nop ; 2 - nop ; 2 - - nop ; 2 - nop ; 2 - - nop ; 2 - nop ; 2 - - - - ldy #215 ; 2 -gloop1: ldx #3 ; 2 + ldy #9 ; 2 +gloop1: ldx #99 ; 2 gloop2: dex ; 2 bne gloop2 ; 2nt/3 dey ; 2 diff --git a/demosplash/musictest.s b/demosplash/musictest.s index 8e29f0f0..a3345422 100644 --- a/demosplash/musictest.s +++ b/demosplash/musictest.s @@ -199,6 +199,7 @@ wait_until_keypressed: .include "interrupt_handler.s" .include "pt3_lib_play_frame.s" .include "pt3_lib_write_frame.s" +.include "create_update_type1.s" PT3_LOC = song From 335f5c0bd2c6150954727b5375ccd55b6bfece30 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 11:22:21 -0400 Subject: [PATCH 05/22] ds: update to use common code --- demosplash/Makefile | 1 + demosplash/book.s | 106 +++++++++++------------------------------ demosplash/musictest.s | 10 ++-- 3 files changed, 33 insertions(+), 84 deletions(-) diff --git a/demosplash/Makefile b/demosplash/Makefile index 9cad1ef5..1fddc948 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -55,6 +55,7 @@ musictest.o: musictest.s \ interrupt_handler.s \ missing.s k_40_48d.inc missing_screen_update.s \ create_update_type1.s \ + book.s \ dya_space_demo2.pt3 ca65 -o musictest.o musictest.s -l musictest.lst diff --git a/demosplash/book.s b/demosplash/book.s index c9102b82..077c7f8f 100644 --- a/demosplash/book.s +++ b/demosplash/book.s @@ -4,20 +4,8 @@ ; by deater (Vince Weaver) -; Zero Page -;FRAME = $60 -;BLARGH = $69 -;DRAW_PAGE = $EE -;LASTKEY = $F1 -;PADDLE_STATUS = $F2 -;TEMP = $FA -WHICH = $E3 - - -book: - lda #0 - sta WHICH +end_book: ;=================== ; init screen @@ -31,17 +19,17 @@ book: lda #0 sta DRAW_PAGE + ;=================== + ; setup grahics + + jsr create_update_type1 + ;============================= ; Load graphic page0 - lda WHICH - asl - asl ; which*4 - tay - - lda pictures,Y + lda #book_low sta GBASH lda #$c ; load image to $c00 @@ -67,14 +55,9 @@ book: ;============================= ; Load graphic page1 - lda WHICH - asl - asl ; which*4 - tay - - lda pictures+2,Y + lda #book_high sta GBASH lda #$c ; load image to $c00 jsr load_rle_gr @@ -128,72 +111,34 @@ loopR: dex ; 2 ;================================================ ; Display Loop ;================================================ - ; each scan line 65 cycles - ; 1 cycle each byte (40cycles) + 25 for horizontal - ; Total of 12480 cycles to draw screen - ; Vertical blank = 4550 cycles (70 scan lines) - ; Total of 17030 cycles to get back to where was - ; We want to alternate between page1 and page2 every 65 cycles ; vblank = 4550 cycles to do scrolling - - ; 2 + 48*( (4+2+25*(2+3)) + (4+2+23*(2+3)+4+5)) + 9) - ; 48*[(6+125)-1] + [(6+115+10)-1] - book_loop: - ldy #96 ; 2 - -book_outer_loop: - - bit PAGE0 ; 4 - ldx #12 ; 65 cycles with PAGE0 ; 2 -book_page0_loop: ; delay 61+bit - dex ; 2 - bne book_page0_loop ; 2/3 - - - ; bit(4) -1(fallthrough) + loop*5 -1(fallthrouh)+4 extra = 61 - ; 5L = 55 - - bit PAGE1 ; 4 - ldx #11 ; 65 cycles with PAGE1 ; 2 - ; -book_page1_loop: ; delay 115+(7 loop)+4 (bit)+4(extra) - dex ; 2 - bne book_page1_loop ; 2/3 - - dey ; 2 - bne book_outer_loop ; 2/3 - - + jsr $9000 ; cycle-counted page0/page1 flip code ;====================================================== ; We have 4550 cycles in the vblank, use them wisely ;====================================================== - ; do_nothing should be 4550+1 -2-9 -7= 4533 - - jsr book_do_nothing ; 6 - - lda KEYPRESS ; 4 - bpl book_no_keypress ; 3 - rts -book_no_keypress: - - jmp book_loop ; 3 - + ; do_nothing should be + ; 4550 + ; -12 -- enter/leave flip code + ; -10 -- keypress code + ; ======= + ; 4528 cycles ;================================= ; do nothing ;================================= - ; and take 4533-6 = 4527 cycles to do it + ; and take 4528 + book_do_nothing: - ; Try X=4 Y=174 cycles=4525 R2 + ; Try X=4 Y=174 cycles=4525 R3 - nop ; 2 + lda TEMP ; 3 ldy #174 ; 2 bloop1: @@ -206,11 +151,14 @@ bloop2: bne bloop1 ; 2nt/3 - rts ; 6 + lda KEYPRESS ; 4 + bpl book_no_keypress ; 3 + rts ; 6 +book_no_keypress: + + jmp book_loop ; 3 -pictures: - .word book_low,book_high .include "book_40_48d.inc" diff --git a/demosplash/musictest.s b/demosplash/musictest.s index a3345422..d576e090 100644 --- a/demosplash/musictest.s +++ b/demosplash/musictest.s @@ -113,21 +113,21 @@ frame_decode_loop: ; start irq music ;======================== - cli ; enable interrupts +; cli ; enable interrupts ;=========================== ; book scene ;============================ - +; jsr open_book ;=========================== ; starbase scene ;=========================== - jsr starbase +; jsr starbase ;=========================== ; escape scene @@ -139,7 +139,7 @@ frame_decode_loop: ; book scene ;=========================== -; jsr book + jsr end_book ; wait wait wait @@ -190,7 +190,7 @@ wait_until_keypressed: ;.include "escape.s" ; book -;.include "book.s" +.include "book.s" ; Music player .include "pt3_lib_core.s" From 04c8163e56d1255d09e989c74e61d5924f2f85e7 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 11:44:11 -0400 Subject: [PATCH 06/22] ds: fine tune some things --- demosplash/Makefile | 2 +- demosplash/book.s | 6 - demosplash/missing.s | 53 +- demosplash/missing_screen_update.s | 3648 ------------------------ demosplash/missing_screen_update.s.old | 3368 ---------------------- 5 files changed, 21 insertions(+), 7056 deletions(-) delete mode 100644 demosplash/missing_screen_update.s delete mode 100644 demosplash/missing_screen_update.s.old diff --git a/demosplash/Makefile b/demosplash/Makefile index 1fddc948..a6abf0b3 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -53,7 +53,7 @@ musictest.o: musictest.s \ pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ pt3_lib_play_frame.s pt3_lib_write_frame.s \ interrupt_handler.s \ - missing.s k_40_48d.inc missing_screen_update.s \ + missing.s k_40_48d.inc \ create_update_type1.s \ book.s \ dya_space_demo2.pt3 diff --git a/demosplash/book.s b/demosplash/book.s index 077c7f8f..d23c20ea 100644 --- a/demosplash/book.s +++ b/demosplash/book.s @@ -49,9 +49,6 @@ end_book: bit SET_GR ; 4 bit FULLGR ; 4 - jsr wait_until_keypressed - - ;============================= ; Load graphic page1 @@ -70,9 +67,6 @@ end_book: ; GR part bit PAGE0 - jsr wait_until_keypressed - - ;============================== ; setup graphics for vapor lock ;============================== diff --git a/demosplash/missing.s b/demosplash/missing.s index 290c8373..60fd5b35 100644 --- a/demosplash/missing.s +++ b/demosplash/missing.s @@ -144,13 +144,29 @@ missing_display_loop: ; do_nothing should be ; 4550 ; -12 jsr/ret to update_type1 - ; -6 jsr do_nothing_missing ; - 7 check keypress ; - 3 jmp loop ;============= - ; 4522 + ; 4528 + + + ; blah, current code the tight loops are right at a page boundary + +do_nothing_missing: + + ; want 4528 + + ; Try X=4 Y=174 cycles=4525 R3 + + lda TEMP ; nop 3 + + ldy #174 ; 2 +gloop1: ldx #4 ; 2 +gloop2: dex ; 2 + bne gloop2 ; 2nt/3 + dey ; 2 + bne gloop1 ; 2nt/3 - jsr do_nothing_missing ; 6 lda KEYPRESS ; 4 bpl missing_no_keypress ; 3 @@ -163,36 +179,7 @@ missing_no_keypress: .align $100 - ;================================= - ; do nothing - ;================================= - ; and take 4522 cycles to do it - - - ; blah, current code the tight loops are right at a page boundary - -do_nothing_missing: - - ; want 4522-6 (return)=4516 - - ;Try X=99 Y=9 cycles=4510 R6 - - nop - nop - nop - - ldy #9 ; 2 -gloop1: ldx #99 ; 2 -gloop2: dex ; 2 - bne gloop2 ; 2nt/3 - dey ; 2 - bne gloop1 ; 2nt/3 - - rts ; 6 - - .include "k_40_48d.inc" -krg: - .byte $0 + diff --git a/demosplash/missing_screen_update.s b/demosplash/missing_screen_update.s deleted file mode 100644 index 90d12149..00000000 --- a/demosplash/missing_screen_update.s +++ /dev/null @@ -1,3648 +0,0 @@ - -; Line 0 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 1 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 2 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 3 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 4 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 5 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 6 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 7 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 8 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 9 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 10 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 11 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 12 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 13 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 14 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 15 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 16 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 17 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 18 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 19 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 20 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 21 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 22 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 23 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 24 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 25 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 26 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 27 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 28 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 29 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 30 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 31 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 32 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 33 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 34 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 35 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 36 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 37 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 38 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 39 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 40 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 41 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 42 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 43 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 44 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 45 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 46 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 47 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 48 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 49 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 50 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 51 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 52 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 53 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 54 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 55 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 56 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 57 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 58 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 59 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 60 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 61 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 62 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 63 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 64 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 65 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 66 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 67 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 68 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 69 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 70 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 71 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 72 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 73 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 74 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 75 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 76 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 77 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 78 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 79 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 80 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 81 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 82 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 83 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 84 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 85 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 86 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 87 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 88 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 89 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 90 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 91 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 92 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 93 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 94 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 95 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 96 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 97 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 98 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 99 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 100 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 101 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 102 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 103 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 104 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 105 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 106 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 107 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 108 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 109 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 110 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 111 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 112 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 113 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 114 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 115 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 116 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 117 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 118 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 119 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 120 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 121 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 122 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 123 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 124 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 125 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 126 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 127 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 128 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 129 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 130 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 131 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 132 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 133 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 134 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 135 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 136 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 137 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 138 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 139 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 140 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 141 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 142 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 143 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 144 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 145 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 146 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 147 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 148 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 149 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 150 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 151 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 152 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 153 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 154 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 155 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 156 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 157 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 158 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 159 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 160 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 161 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 162 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 163 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 164 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 165 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 166 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 167 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 168 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 169 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 170 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 171 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 172 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 173 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 174 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 175 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 176 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 177 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 178 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 179 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 180 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 181 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 182 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 183 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 184 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 185 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 186 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 187 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 188 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 189 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 190 - bit PAGE0 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 - -; Line 191 - bit PAGE1 ;4 - lda #$0b ; 2 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - sta $200 ; 4 - lda TEMP ; 3 diff --git a/demosplash/missing_screen_update.s.old b/demosplash/missing_screen_update.s.old deleted file mode 100644 index ce537489..00000000 --- a/demosplash/missing_screen_update.s.old +++ /dev/null @@ -1,3368 +0,0 @@ - - ; want colors 01234567 - ; line 0: $X0 to $800 - ; line 1: $X1 to $400 - ; line 2: $X2 - ; line 3: $X3 - ; line 4: $4X - ; line 5: $5X - ; line 6: $6X - ; line 7: $7X - - ; UNROLL 96 TIMES! ARE WE MAD? YES! - -;========= -; 0(0) = $400 - ; 65 cycles total - bit PAGE0 ; 4 - lda #$0b ; 2 - sta $800 ; 4 - sta $801 ; 4 - sta $802 ; 4 - sta $803 ; 4 - sta $804 ; 4 - sta $805 ; 4 - sta $806 ; 4 - sta $807 ; 4 - sta $808 ; 4 - sta $809 ; 4 - sta $80a ; 4 - sta $80b ; 4 - sta $80c ; 4 - sta $80d ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $400 ; 4 - sta $401 ; 4 - sta $402 ; 4 - sta $403 ; 4 - sta $404 ; 4 - sta $405 ; 4 - sta $406 ; 4 - sta $407 ; 4 - sta $408 ; 4 - sta $409 ; 4 - sta $40a ; 4 - sta $40b ; 4 - sta $40c ; 4 - sta $40d ; 4 - lda TEMP ; 3 - - -; 1 - ; 65 cycles - bit PAGE0 ; 4 - lda #$0b ; 2 - sta $800 ; 4 - sta $801 ; 4 - sta $802 ; 4 - sta $803 ; 4 - sta $804 ; 4 - sta $805 ; 4 - sta $806 ; 4 - sta $807 ; 4 - sta $808 ; 4 - sta $809 ; 4 - sta $80a ; 4 - sta $80b ; 4 - sta $80c ; 4 - sta $80d ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$30 ; 2 - sta $400 ; 4 - sta $401 ; 4 - sta $402 ; 4 - sta $403 ; 4 - sta $404 ; 4 - sta $405 ; 4 - sta $406 ; 4 - sta $407 ; 4 - sta $408 ; 4 - sta $409 ; 4 - sta $40a ; 4 - sta $40b ; 4 - sta $40c ; 4 - sta $40d ; 4 - lda TEMP ; 3 - -; 2 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $800 ; 4 - sta $801 ; 4 - sta $802 ; 4 - sta $803 ; 4 - sta $804 ; 4 - sta $805 ; 4 - sta $806 ; 4 - sta $807 ; 4 - sta $808 ; 4 - sta $809 ; 4 - sta $80a ; 4 - sta $80b ; 4 - sta $80c ; 4 - sta $80d ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $400 ; 4 - sta $401 ; 4 - sta $402 ; 4 - sta $403 ; 4 - sta $404 ; 4 - sta $405 ; 4 - sta $406 ; 4 - sta $407 ; 4 - sta $408 ; 4 - sta $409 ; 4 - sta $40a ; 4 - sta $40b ; 4 - sta $40c ; 4 - sta $40d ; 4 - lda TEMP ; 3 - -; 3 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $800 ; 4 - sta $801 ; 4 - sta $802 ; 4 - sta $803 ; 4 - sta $804 ; 4 - sta $805 ; 4 - sta $806 ; 4 - sta $807 ; 4 - sta $808 ; 4 - sta $809 ; 4 - sta $80a ; 4 - sta $80b ; 4 - sta $80c ; 4 - sta $80d ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $400 ; 4 - sta $401 ; 4 - sta $402 ; 4 - sta $403 ; 4 - sta $404 ; 4 - sta $405 ; 4 - sta $406 ; 4 - sta $407 ; 4 - sta $408 ; 4 - sta $409 ; 4 - sta $40a ; 4 - sta $40b ; 4 - sta $40c ; 4 - sta $40d ; 4 - lda TEMP ; 3 - -;=================== -; 4 (L1)=$480 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $880 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $480 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 5 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $880 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $480 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 6 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $880 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $480 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 7 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $880 ; 4 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $500 ; 4 - lda #$00 ; 2 - sta $501 ; 4 - lda #$00 ; 2 - sta $502 ; 4 - lda #$00 ; 2 - sta $503 ; 4 - lda #$00 ; 2 - sta $504 ; 4 - lda #$00 ; 2 - sta $505 ; 4 - lda #$00 ; 2 - sta $506 ; 4 - lda #$00 ; 2 - sta $507 ; 4 - lda #$00 ; 2 - sta $508 ; 4 - bit krg ; 4 - lda TEMP ; 3 - -;================================ -; 8 (L2) = $500 - - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $902 ; 4 - lda #$00 ; 2 - sta $903 ; 4 - lda #$00 ; 2 - sta $904 ; 4 - lda #$00 ; 2 - sta $905 ; 4 - lda #$00 ; 2 - sta $906 ; 4 - lda #$00 ; 2 - sta $907 ; 4 - lda #$00 ; 2 - sta $908 ; 4 - lda #$00 ; 2 - sta $909 ; 4 - lda #$00 ; 2 - sta $90a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $502 ; 4 - lda #$00 ; 2 - sta $503 ; 4 - lda #$00 ; 2 - sta $504 ; 4 - lda #$00 ; 2 - sta $505 ; 4 - lda #$00 ; 2 - sta $506 ; 4 - lda #$00 ; 2 - sta $507 ; 4 - lda #$00 ; 2 - sta $508 ; 4 - lda #$00 ; 2 - sta $509 ; 4 - lda #$00 ; 2 - sta $50a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 9 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $902 ; 4 - lda #$00 ; 2 - sta $903 ; 4 - lda #$00 ; 2 - sta $904 ; 4 - lda #$00 ; 2 - sta $905 ; 4 - lda #$00 ; 2 - sta $906 ; 4 - lda #$00 ; 2 - sta $907 ; 4 - lda #$00 ; 2 - sta $908 ; 4 - lda #$00 ; 2 - sta $909 ; 4 - lda #$00 ; 2 - sta $90a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $502 ; 4 - lda #$00 ; 2 - sta $503 ; 4 - lda #$00 ; 2 - sta $504 ; 4 - lda #$10 ; 2 - sta $505 ; 4 - lda #$10 ; 2 - sta $506 ; 4 - lda #$10 ; 2 - sta $507 ; 4 - lda #$00 ; 2 - sta $508 ; 4 - lda #$00 ; 2 - sta $509 ; 4 - lda #$00 ; 2 - sta $50a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 10 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $902 ; 4 - lda #$00 ; 2 - sta $903 ; 4 - lda #$00 ; 2 - sta $904 ; 4 - lda #$90 ; 2 - sta $905 ; 4 - lda #$90 ; 2 - sta $906 ; 4 - lda #$90 ; 2 - sta $907 ; 4 - lda #$00 ; 2 - sta $908 ; 4 - lda #$00 ; 2 - sta $909 ; 4 - lda #$00 ; 2 - sta $90a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $502 ; 4 - lda #$00 ; 2 - sta $503 ; 4 - lda #$10 ; 2 - sta $504 ; 4 - lda #$d0 ; 2 - sta $505 ; 4 - lda #$d0 ; 2 - sta $506 ; 4 - lda #$d0 ; 2 - sta $507 ; 4 - lda #$10 ; 2 - sta $508 ; 4 - lda #$00 ; 2 - sta $509 ; 4 - lda #$00 ; 2 - sta $50a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 11 - ; 65 cycles - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $902 ; 4 - lda #$00 ; 2 - sta $903 ; 4 - lda #$90 ; 2 - sta $904 ; 4 - lda #$40 ; 2 - sta $905 ; 4 - lda #$40 ; 2 - sta $906 ; 4 - lda #$40 ; 2 - sta $907 ; 4 - lda #$90 ; 2 - sta $908 ; 4 - lda #$00 ; 2 - sta $909 ; 4 - lda #$00 ; 2 - sta $90a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $582 ; 4 - lda #$01 ; 2 - sta $583 ; 4 - lda #$0d ; 2 - sta $584 ; 4 - lda #$06 ; 2 - sta $585 ; 4 - lda #$06 ; 2 - sta $586 ; 4 - lda #$06 ; 2 - sta $587 ; 4 - lda #$0d ; 2 - sta $588 ; 4 - lda #$01 ; 2 - sta $589 ; 4 - lda #$00 ; 2 - sta $58a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -;================================ -; 12 (L3) = $580 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $982 ; 4 - lda #$09 ; 2 - sta $983 ; 4 - lda #$04 ; 2 - sta $984 ; 4 - lda #$02 ; 2 - sta $985 ; 4 - lda #$02 ; 2 - sta $986 ; 4 - lda #$02 ; 2 - sta $987 ; 4 - lda #$04 ; 2 - sta $988 ; 4 - lda #$09 ; 2 - sta $989 ; 4 - lda #$00 ; 2 - sta $98a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$01 ; 2 - sta $582 ; 4 - lda #$0d ; 2 - sta $583 ; 4 - lda #$06 ; 2 - sta $584 ; 4 - lda #$00 ; 2 - sta $585 ; 4 - lda #$00 ; 2 - sta $586 ; 4 - lda #$00 ; 2 - sta $587 ; 4 - lda #$06 ; 2 - sta $588 ; 4 - lda #$0d ; 2 - sta $589 ; 4 - lda #$01 ; 2 - sta $58a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 13 - - bit PAGE0 ; 4 - lda #$09 ; 2 - sta $982 ; 4 - lda #$04 ; 2 - sta $983 ; 4 - lda #$02 ; 2 - sta $984 ; 4 - lda #$00 ; 2 - sta $985 ; 4 - lda #$00 ; 2 - sta $986 ; 4 - lda #$00 ; 2 - sta $987 ; 4 - lda #$02 ; 2 - sta $988 ; 4 - lda #$04 ; 2 - sta $989 ; 4 - lda #$09 ; 2 - sta $98a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$d0 ; 2 - sta $582 ; 4 - lda #$60 ; 2 - sta $583 ; 4 - lda #$00 ; 2 - sta $584 ; 4 - lda #$00 ; 2 - sta $585 ; 4 - lda #$00 ; 2 - sta $586 ; 4 - lda #$00 ; 2 - sta $587 ; 4 - lda #$00 ; 2 - sta $588 ; 4 - lda #$60 ; 2 - sta $589 ; 4 - lda #$d0 ; 2 - sta $58a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - -; 14 - bit PAGE0 ; 4 - lda #$40 ; 2 - sta $982 ; 4 - lda #$20 ; 2 - sta $983 ; 4 - lda #$00 ; 2 - sta $984 ; 4 - lda #$00 ; 2 - sta $985 ; 4 - lda #$00 ; 2 - sta $986 ; 4 - lda #$00 ; 2 - sta $987 ; 4 - lda #$00 ; 2 - sta $988 ; 4 - lda #$20 ; 2 - sta $989 ; 4 - lda #$40 ; 2 - sta $98a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$60 ; 2 - sta $582 ; 4 - lda #$00 ; 2 - sta $583 ; 4 - lda #$00 ; 2 - sta $584 ; 4 - lda #$00 ; 2 - sta $585 ; 4 - lda #$00 ; 2 - sta $586 ; 4 - lda #$00 ; 2 - sta $587 ; 4 - lda #$00 ; 2 - sta $588 ; 4 - lda #$00 ; 2 - sta $589 ; 4 - lda #$60 ; 2 - sta $58a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 15 - - bit PAGE0 ; 4 - lda #$20 ; 2 - sta $982 ; 4 - lda #$00 ; 2 - sta $983 ; 4 - lda #$00 ; 2 - sta $984 ; 4 - lda #$00 ; 2 - sta $985 ; 4 - lda #$00 ; 2 - sta $986 ; 4 - lda #$00 ; 2 - sta $987 ; 4 - lda #$00 ; 2 - sta $988 ; 4 - lda #$00 ; 2 - sta $989 ; 4 - lda #$20 ; 2 - sta $98a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $602 ; 4 - lda #$00 ; 2 - sta $603 ; 4 - lda #$00 ; 2 - sta $604 ; 4 - lda #$00 ; 2 - sta $605 ; 4 - lda #$00 ; 2 - sta $606 ; 4 - lda #$00 ; 2 - sta $607 ; 4 - lda #$00 ; 2 - sta $608 ; 4 - lda #$00 ; 2 - sta $609 ; 4 - lda #$00 ; 2 - sta $60a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - -;================================ -; 16 (L4) = $600 - - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $a02 ; 4 - lda #$00 ; 2 - sta $a03 ; 4 - lda #$00 ; 2 - sta $a04 ; 4 - lda #$00 ; 2 - sta $a05 ; 4 - lda #$05 ; 2 - sta $a06 ; 4 - lda #$00 ; 2 - sta $a07 ; 4 - lda #$00 ; 2 - sta $a08 ; 4 - lda #$00 ; 2 - sta $a09 ; 4 - lda #$20 ; 2 - sta $a0a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $602 ; 4 - lda #$00 ; 2 - sta $603 ; 4 - lda #$00 ; 2 - sta $604 ; 4 - lda #$00 ; 2 - sta $605 ; 4 - lda #$07 ; 2 - sta $606 ; 4 - lda #$00 ; 2 - sta $607 ; 4 - lda #$00 ; 2 - sta $608 ; 4 - lda #$00 ; 2 - sta $609 ; 4 - lda #$00 ; 2 - sta $60a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - -; 17 - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $a02 ; 4 - lda #$00 ; 2 - sta $a03 ; 4 - lda #$00 ; 2 - sta $a04 ; 4 - lda #$00 ; 2 - sta $a05 ; 4 - lda #$0f ; 2 - sta $a06 ; 4 - lda #$00 ; 2 - sta $a07 ; 4 - lda #$00 ; 2 - sta $a08 ; 4 - lda #$00 ; 2 - sta $a09 ; 4 - lda #$00 ; 2 - sta $a0a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $602 ; 4 - lda #$00 ; 2 - sta $603 ; 4 - lda #$00 ; 2 - sta $604 ; 4 - lda #$80 ; 2 - sta $605 ; 4 - lda #$80 ; 2 - sta $606 ; 4 - lda #$80 ; 2 - sta $607 ; 4 - lda #$00 ; 2 - sta $608 ; 4 - lda #$00 ; 2 - sta $609 ; 4 - lda #$40 ; 2 - sta $60a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 18 - - bit PAGE0 ; 4 - lda #$b0 ; 2 - sta $a02 ; 4 - lda #$e0 ; 2 - sta $a03 ; 4 - lda #$e0 ; 2 - sta $a04 ; 4 - lda #$e0 ; 2 - sta $a05 ; 4 - lda #$e0 ; 2 - sta $a06 ; 4 - lda #$e0 ; 2 - sta $a07 ; 4 - lda #$c0 ; 2 - sta $a08 ; 4 - lda #$c0 ; 2 - sta $a09 ; 4 - lda #$40 ; 2 - sta $a0a ; 4 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$30 ; 2 - sta $602 ; 4 - lda #$e0 ; 2 - sta $603 ; 4 - lda #$e0 ; 2 - sta $604 ; 4 - lda #$e0 ; 2 - sta $605 ; 4 - lda #$e0 ; 2 - sta $606 ; 4 - lda #$e0 ; 2 - sta $607 ; 4 - lda #$c0 ; 2 - sta $608 ; 4 - lda #$c0 ; 2 - sta $609 ; 4 - lda #$c0 ; 2 - sta $60a ; 4 - bit krg ; 4 - lda TEMP ; 3 - -; 19 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - -;================================ -; 20 (L5) = $680 - - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 21 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 22 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 23 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - -;================================ -; 24 (L6) = $700 - - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 25 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 26 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 27 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -;================================ -; 28 (L7) = $780 - - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 29 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - -; 30 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 31 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 32 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 33 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 34 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 35 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 36 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 37 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 38 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 39 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 40 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 41 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 42 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 43 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 44 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 45 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 46 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 47 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 48 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 49 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 50 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 51 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 52 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 53 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 54 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 55 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 56 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 57 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 58 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 59 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 60 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 61 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 62 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - ; 63 - bit PAGE0 ; 4 - ; 65 cycles - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - inc krg ; 6 - bit krg ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$03 ; 2 - sta $450 ; 4 - sta $451 ; 4 - sta $452 ; 4 - sta $453 ; 4 - sta $454 ; 4 - sta $455 ; 4 - sta $456 ; 4 - sta $457 ; 4 - sta $458 ; 4 - sta $459 ; 4 - sta $45a ; 4 - sta $45b ; 4 - sta $45c ; 4 - sta $45d ; 4 - lda TEMP ; 3 - -;========= -; 64(L16) = $450 - - bit PAGE0 ; 4 - lda #$0b ; 2 - sta $850 ; 4 - sta $851 ; 4 - sta $852 ; 4 - sta $853 ; 4 - sta $854 ; 4 - sta $855 ; 4 - sta $856 ; 4 - sta $857 ; 4 - sta $858 ; 4 - sta $859 ; 4 - sta $85a ; 4 - sta $85b ; 4 - sta $85c ; 4 - sta $85d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $450 ; 4 - sta $451 ; 4 - sta $452 ; 4 - sta $453 ; 4 - sta $454 ; 4 - sta $455 ; 4 - sta $456 ; 4 - sta $457 ; 4 - sta $458 ; 4 - sta $459 ; 4 - sta $45a ; 4 - sta $45b ; 4 - sta $45c ; 4 - sta $45d ; 4 - lda TEMP ; 3 - -; 65 - bit PAGE0 ; 4 - lda #$0b ; 2 - sta $850 ; 4 - sta $851 ; 4 - sta $852 ; 4 - sta $853 ; 4 - sta $854 ; 4 - sta $855 ; 4 - sta $856 ; 4 - sta $857 ; 4 - sta $858 ; 4 - sta $859 ; 4 - sta $85a ; 4 - sta $85b ; 4 - sta $85c ; 4 - sta $85d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$30 ; 2 - sta $450 ; 4 - sta $451 ; 4 - sta $452 ; 4 - sta $453 ; 4 - sta $454 ; 4 - sta $455 ; 4 - sta $456 ; 4 - sta $457 ; 4 - sta $458 ; 4 - sta $459 ; 4 - sta $45a ; 4 - sta $45b ; 4 - sta $45c ; 4 - sta $45d ; 4 - lda TEMP ; 3 - -; 66 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $850 ; 4 - sta $851 ; 4 - sta $852 ; 4 - sta $853 ; 4 - sta $854 ; 4 - sta $855 ; 4 - sta $856 ; 4 - sta $857 ; 4 - sta $858 ; 4 - sta $859 ; 4 - sta $85a ; 4 - sta $85b ; 4 - sta $85c ; 4 - sta $85d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $450 ; 4 - sta $451 ; 4 - sta $452 ; 4 - sta $453 ; 4 - sta $454 ; 4 - sta $455 ; 4 - sta $456 ; 4 - sta $457 ; 4 - sta $458 ; 4 - sta $459 ; 4 - sta $45a ; 4 - sta $45b ; 4 - sta $45c ; 4 - sta $45d ; 4 - lda TEMP ; 3 - -; 67 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $850 ; 4 - sta $851 ; 4 - sta $852 ; 4 - sta $853 ; 4 - sta $854 ; 4 - sta $855 ; 4 - sta $856 ; 4 - sta $857 ; 4 - sta $858 ; 4 - sta $859 ; 4 - sta $85a ; 4 - sta $85b ; 4 - sta $85c ; 4 - sta $85d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$02 ; 2 - sta $4d0 ; 4 - sta $4d1 ; 4 - sta $4d2 ; 4 - sta $4d3 ; 4 - sta $4d4 ; 4 - sta $4d5 ; 4 - sta $4d6 ; 4 - sta $4d7 ; 4 - sta $4d8 ; 4 - sta $4d9 ; 4 - sta $4da ; 4 - sta $4db ; 4 - sta $4dc ; 4 - sta $4dd ; 4 - lda TEMP ; 3 - -;========= -; 68(L17) = $4d0 - - bit PAGE0 ; 4 - lda #$06 ; 2 - sta $8d0 ; 4 - sta $8d1 ; 4 - sta $8d2 ; 4 - sta $8d3 ; 4 - sta $8d4 ; 4 - sta $8d5 ; 4 - sta $8d6 ; 4 - sta $8d7 ; 4 - sta $8d8 ; 4 - sta $8d9 ; 4 - sta $8da ; 4 - sta $8db ; 4 - sta $8dc ; 4 - sta $8dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $4d0 ; 4 - sta $4d1 ; 4 - sta $4d2 ; 4 - sta $4d3 ; 4 - sta $4d4 ; 4 - sta $4d5 ; 4 - sta $4d6 ; 4 - sta $4d7 ; 4 - sta $4d8 ; 4 - sta $4d9 ; 4 - sta $4da ; 4 - sta $4db ; 4 - sta $4dc ; 4 - sta $4dd ; 4 - lda TEMP ; 3 - -; 69 - - bit PAGE0 ; 4 - lda #$06 ; 2 - sta $8d0 ; 4 - sta $8d1 ; 4 - sta $8d2 ; 4 - sta $8d3 ; 4 - sta $8d4 ; 4 - sta $8d5 ; 4 - sta $8d6 ; 4 - sta $8d7 ; 4 - sta $8d8 ; 4 - sta $8d9 ; 4 - sta $8da ; 4 - sta $8db ; 4 - sta $8dc ; 4 - sta $8dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$20 ; 2 - sta $4d0 ; 4 - sta $4d1 ; 4 - sta $4d2 ; 4 - sta $4d3 ; 4 - sta $4d4 ; 4 - sta $4d5 ; 4 - sta $4d6 ; 4 - sta $4d7 ; 4 - sta $4d8 ; 4 - sta $4d9 ; 4 - sta $4da ; 4 - sta $4db ; 4 - sta $4dc ; 4 - sta $4dd ; 4 - lda TEMP ; 3 - -; 70 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $8d0 ; 4 - sta $8d1 ; 4 - sta $8d2 ; 4 - sta $8d3 ; 4 - sta $8d4 ; 4 - sta $8d5 ; 4 - sta $8d6 ; 4 - sta $8d7 ; 4 - sta $8d8 ; 4 - sta $8d9 ; 4 - sta $8da ; 4 - sta $8db ; 4 - sta $8dc ; 4 - sta $8dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $4d0 ; 4 - sta $4d1 ; 4 - sta $4d2 ; 4 - sta $4d3 ; 4 - sta $4d4 ; 4 - sta $4d5 ; 4 - sta $4d6 ; 4 - sta $4d7 ; 4 - sta $4d8 ; 4 - sta $4d9 ; 4 - sta $4da ; 4 - sta $4db ; 4 - sta $4dc ; 4 - sta $4dd ; 4 - lda TEMP ; 3 - -; 71 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $8d0 ; 4 - sta $8d1 ; 4 - sta $8d2 ; 4 - sta $8d3 ; 4 - sta $8d4 ; 4 - sta $8d5 ; 4 - sta $8d6 ; 4 - sta $8d7 ; 4 - sta $8d8 ; 4 - sta $8d9 ; 4 - sta $8da ; 4 - sta $8db ; 4 - sta $8dc ; 4 - sta $8dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$04 ; 2 - sta $550 ; 4 - sta $551 ; 4 - sta $552 ; 4 - sta $553 ; 4 - sta $554 ; 4 - sta $555 ; 4 - sta $556 ; 4 - sta $557 ; 4 - sta $558 ; 4 - sta $559 ; 4 - sta $55a ; 4 - sta $55b ; 4 - sta $55c ; 4 - sta $55d ; 4 - lda TEMP ; 3 - - -;========= -; 72(L18) = $550 - - bit PAGE0 ; 4 - lda #$0c ; 2 - sta $950 ; 4 - sta $951 ; 4 - sta $952 ; 4 - sta $953 ; 4 - sta $954 ; 4 - sta $955 ; 4 - sta $956 ; 4 - sta $957 ; 4 - sta $958 ; 4 - sta $959 ; 4 - sta $95a ; 4 - sta $95b ; 4 - sta $95c ; 4 - sta $95d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $550 ; 4 - sta $551 ; 4 - sta $552 ; 4 - sta $553 ; 4 - sta $554 ; 4 - sta $555 ; 4 - sta $556 ; 4 - sta $557 ; 4 - sta $558 ; 4 - sta $559 ; 4 - sta $55a ; 4 - sta $55b ; 4 - sta $55c ; 4 - sta $55d ; 4 - lda TEMP ; 3 - -; 73 - - bit PAGE0 ; 4 - lda #$0c ; 2 - sta $950 ; 4 - sta $951 ; 4 - sta $952 ; 4 - sta $953 ; 4 - sta $954 ; 4 - sta $955 ; 4 - sta $956 ; 4 - sta $957 ; 4 - sta $958 ; 4 - sta $959 ; 4 - sta $95a ; 4 - sta $95b ; 4 - sta $95c ; 4 - sta $95d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$40 ; 2 - sta $550 ; 4 - sta $551 ; 4 - sta $552 ; 4 - sta $553 ; 4 - sta $554 ; 4 - sta $555 ; 4 - sta $556 ; 4 - sta $557 ; 4 - sta $558 ; 4 - sta $559 ; 4 - sta $55a ; 4 - sta $55b ; 4 - sta $55c ; 4 - sta $55d ; 4 - lda TEMP ; 3 - -; 74 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $950 ; 4 - sta $951 ; 4 - sta $952 ; 4 - sta $953 ; 4 - sta $954 ; 4 - sta $955 ; 4 - sta $956 ; 4 - sta $957 ; 4 - sta $958 ; 4 - sta $959 ; 4 - sta $95a ; 4 - sta $95b ; 4 - sta $95c ; 4 - sta $95d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $550 ; 4 - sta $551 ; 4 - sta $552 ; 4 - sta $553 ; 4 - sta $554 ; 4 - sta $555 ; 4 - sta $556 ; 4 - sta $557 ; 4 - sta $558 ; 4 - sta $559 ; 4 - sta $55a ; 4 - sta $55b ; 4 - sta $55c ; 4 - sta $55d ; 4 - lda TEMP ; 3 - -; 75 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $950 ; 4 - sta $951 ; 4 - sta $952 ; 4 - sta $953 ; 4 - sta $954 ; 4 - sta $955 ; 4 - sta $956 ; 4 - sta $957 ; 4 - sta $958 ; 4 - sta $959 ; 4 - sta $95a ; 4 - sta $95b ; 4 - sta $95c ; 4 - sta $95d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$05 ; 2 - sta $5d0 ; 4 - sta $5d1 ; 4 - sta $5d2 ; 4 - sta $5d3 ; 4 - sta $5d4 ; 4 - sta $5d5 ; 4 - sta $5d6 ; 4 - sta $5d7 ; 4 - sta $5d8 ; 4 - sta $5d9 ; 4 - sta $5da ; 4 - sta $5db ; 4 - sta $5dc ; 4 - sta $5dd ; 4 - lda TEMP ; 3 - - -;========= -; 76(L19) = $5d0 - - bit PAGE0 ; 4 - lda #$07 ; 2 - sta $9d0 ; 4 - sta $9d1 ; 4 - sta $9d2 ; 4 - sta $9d3 ; 4 - sta $9d4 ; 4 - sta $9d5 ; 4 - sta $9d6 ; 4 - sta $9d7 ; 4 - sta $9d8 ; 4 - sta $9d9 ; 4 - sta $9da ; 4 - sta $9db ; 4 - sta $9dc ; 4 - sta $9dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $5d0 ; 4 - sta $5d1 ; 4 - sta $5d2 ; 4 - sta $5d3 ; 4 - sta $5d4 ; 4 - sta $5d5 ; 4 - sta $5d6 ; 4 - sta $5d7 ; 4 - sta $5d8 ; 4 - sta $5d9 ; 4 - sta $5da ; 4 - sta $5db ; 4 - sta $5dc ; 4 - sta $5dd ; 4 - lda TEMP ; 3 - -; 77 - - bit PAGE0 ; 4 - lda #$07 ; 2 - sta $9d0 ; 4 - sta $9d1 ; 4 - sta $9d2 ; 4 - sta $9d3 ; 4 - sta $9d4 ; 4 - sta $9d5 ; 4 - sta $9d6 ; 4 - sta $9d7 ; 4 - sta $9d8 ; 4 - sta $9d9 ; 4 - sta $9da ; 4 - sta $9db ; 4 - sta $9dc ; 4 - sta $9dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$50 ; 2 - sta $5d0 ; 4 - sta $5d1 ; 4 - sta $5d2 ; 4 - sta $5d3 ; 4 - sta $5d4 ; 4 - sta $5d5 ; 4 - sta $5d6 ; 4 - sta $5d7 ; 4 - sta $5d8 ; 4 - sta $5d9 ; 4 - sta $5da ; 4 - sta $5db ; 4 - sta $5dc ; 4 - sta $5dd ; 4 - lda TEMP ; 3 - -; 78 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $9d0 ; 4 - sta $9d1 ; 4 - sta $9d2 ; 4 - sta $9d3 ; 4 - sta $9d4 ; 4 - sta $9d5 ; 4 - sta $9d6 ; 4 - sta $9d7 ; 4 - sta $9d8 ; 4 - sta $9d9 ; 4 - sta $9da ; 4 - sta $9db ; 4 - sta $9dc ; 4 - sta $9dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $5d0 ; 4 - sta $5d1 ; 4 - sta $5d2 ; 4 - sta $5d3 ; 4 - sta $5d4 ; 4 - sta $5d5 ; 4 - sta $5d6 ; 4 - sta $5d7 ; 4 - sta $5d8 ; 4 - sta $5d9 ; 4 - sta $5da ; 4 - sta $5db ; 4 - sta $5dc ; 4 - sta $5dd ; 4 - lda TEMP ; 3 - -; 79 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $9d0 ; 4 - sta $9d1 ; 4 - sta $9d2 ; 4 - sta $9d3 ; 4 - sta $9d4 ; 4 - sta $9d5 ; 4 - sta $9d6 ; 4 - sta $9d7 ; 4 - sta $9d8 ; 4 - sta $9d9 ; 4 - sta $9da ; 4 - sta $9db ; 4 - sta $9dc ; 4 - sta $9dd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$01 ; 2 - sta $650 ; 4 - sta $651 ; 4 - sta $652 ; 4 - sta $653 ; 4 - sta $654 ; 4 - sta $655 ; 4 - sta $656 ; 4 - sta $657 ; 4 - sta $658 ; 4 - sta $659 ; 4 - sta $65a ; 4 - sta $65b ; 4 - sta $65c ; 4 - sta $65d ; 4 - lda TEMP ; 3 - - -;========= -; 80(L20) = $650 - - bit PAGE0 ; 4 - lda #$03 ; 2 - sta $a50 ; 4 - sta $a51 ; 4 - sta $a52 ; 4 - sta $a53 ; 4 - sta $a54 ; 4 - sta $a55 ; 4 - sta $a56 ; 4 - sta $a57 ; 4 - sta $a58 ; 4 - sta $a59 ; 4 - sta $a5a ; 4 - sta $a5b ; 4 - sta $a5c ; 4 - sta $a5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $650 ; 4 - sta $651 ; 4 - sta $652 ; 4 - sta $653 ; 4 - sta $654 ; 4 - sta $655 ; 4 - sta $656 ; 4 - sta $657 ; 4 - sta $658 ; 4 - sta $659 ; 4 - sta $65a ; 4 - sta $65b ; 4 - sta $65c ; 4 - sta $65d ; 4 - lda TEMP ; 3 - -; 81 - - bit PAGE0 ; 4 - lda #$03 ; 2 - sta $a50 ; 4 - sta $a51 ; 4 - sta $a52 ; 4 - sta $a53 ; 4 - sta $a54 ; 4 - sta $a55 ; 4 - sta $a56 ; 4 - sta $a57 ; 4 - sta $a58 ; 4 - sta $a59 ; 4 - sta $a5a ; 4 - sta $a5b ; 4 - sta $a5c ; 4 - sta $a5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$10 ; 2 - sta $650 ; 4 - sta $651 ; 4 - sta $652 ; 4 - sta $653 ; 4 - sta $654 ; 4 - sta $655 ; 4 - sta $656 ; 4 - sta $657 ; 4 - sta $658 ; 4 - sta $659 ; 4 - sta $65a ; 4 - sta $65b ; 4 - sta $65c ; 4 - sta $65d ; 4 - lda TEMP ; 3 - -; 82 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $a50 ; 4 - sta $a51 ; 4 - sta $a52 ; 4 - sta $a53 ; 4 - sta $a54 ; 4 - sta $a55 ; 4 - sta $a56 ; 4 - sta $a57 ; 4 - sta $a58 ; 4 - sta $a59 ; 4 - sta $a5a ; 4 - sta $a5b ; 4 - sta $a5c ; 4 - sta $a5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $650 ; 4 - sta $651 ; 4 - sta $652 ; 4 - sta $653 ; 4 - sta $654 ; 4 - sta $655 ; 4 - sta $656 ; 4 - sta $657 ; 4 - sta $658 ; 4 - sta $659 ; 4 - sta $65a ; 4 - sta $65b ; 4 - sta $65c ; 4 - sta $65d ; 4 - lda TEMP ; 3 - -; 83 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $a50 ; 4 - sta $a51 ; 4 - sta $a52 ; 4 - sta $a53 ; 4 - sta $a54 ; 4 - sta $a55 ; 4 - sta $a56 ; 4 - sta $a57 ; 4 - sta $a58 ; 4 - sta $a59 ; 4 - sta $a5a ; 4 - sta $a5b ; 4 - sta $a5c ; 4 - sta $a5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$08 ; 2 - sta $6d0 ; 4 - sta $6d1 ; 4 - sta $6d2 ; 4 - sta $6d3 ; 4 - sta $6d4 ; 4 - sta $6d5 ; 4 - sta $6d6 ; 4 - sta $6d7 ; 4 - sta $6d8 ; 4 - sta $6d9 ; 4 - sta $6da ; 4 - sta $6db ; 4 - sta $6dc ; 4 - sta $6dd ; 4 - lda TEMP ; 3 - - -;========= -; 84(21) = $6d0 - - bit PAGE0 ; 4 - lda #$0d ; 2 - sta $ad0 ; 4 - sta $ad1 ; 4 - sta $ad2 ; 4 - sta $ad3 ; 4 - sta $ad4 ; 4 - sta $ad5 ; 4 - sta $ad6 ; 4 - sta $ad7 ; 4 - sta $ad8 ; 4 - sta $ad9 ; 4 - sta $ada ; 4 - sta $adb ; 4 - sta $adc ; 4 - sta $add ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $6d0 ; 4 - sta $6d1 ; 4 - sta $6d2 ; 4 - sta $6d3 ; 4 - sta $6d4 ; 4 - sta $6d5 ; 4 - sta $6d6 ; 4 - sta $6d7 ; 4 - sta $6d8 ; 4 - sta $6d9 ; 4 - sta $6da ; 4 - sta $6db ; 4 - sta $6dc ; 4 - sta $6dd ; 4 - lda TEMP ; 3 - -; 85 - - bit PAGE0 ; 4 - lda #$0d ; 2 - sta $ad0 ; 4 - sta $ad1 ; 4 - sta $ad2 ; 4 - sta $ad3 ; 4 - sta $ad4 ; 4 - sta $ad5 ; 4 - sta $ad6 ; 4 - sta $ad7 ; 4 - sta $ad8 ; 4 - sta $ad9 ; 4 - sta $ada ; 4 - sta $adb ; 4 - sta $adc ; 4 - sta $add ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$80 ; 2 - sta $6d0 ; 4 - sta $6d1 ; 4 - sta $6d2 ; 4 - sta $6d3 ; 4 - sta $6d4 ; 4 - sta $6d5 ; 4 - sta $6d6 ; 4 - sta $6d7 ; 4 - sta $6d8 ; 4 - sta $6d9 ; 4 - sta $6da ; 4 - sta $6db ; 4 - sta $6dc ; 4 - sta $6dd ; 4 - lda TEMP ; 3 - -; 86 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $ad0 ; 4 - sta $ad1 ; 4 - sta $ad2 ; 4 - sta $ad3 ; 4 - sta $ad4 ; 4 - sta $ad5 ; 4 - sta $ad6 ; 4 - sta $ad7 ; 4 - sta $ad8 ; 4 - sta $ad9 ; 4 - sta $ada ; 4 - sta $adb ; 4 - sta $adc ; 4 - sta $add ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $6d0 ; 4 - sta $6d1 ; 4 - sta $6d2 ; 4 - sta $6d3 ; 4 - sta $6d4 ; 4 - sta $6d5 ; 4 - sta $6d6 ; 4 - sta $6d7 ; 4 - sta $6d8 ; 4 - sta $6d9 ; 4 - sta $6da ; 4 - sta $6db ; 4 - sta $6dc ; 4 - sta $6dd ; 4 - lda TEMP ; 3 - -; 87 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $ad0 ; 4 - sta $ad1 ; 4 - sta $ad2 ; 4 - sta $ad3 ; 4 - sta $ad4 ; 4 - sta $ad5 ; 4 - sta $ad6 ; 4 - sta $ad7 ; 4 - sta $ad8 ; 4 - sta $ad9 ; 4 - sta $ada ; 4 - sta $adb ; 4 - sta $adc ; 4 - sta $add ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0c ; 2 - sta $750 ; 4 - sta $751 ; 4 - sta $752 ; 4 - sta $753 ; 4 - sta $754 ; 4 - sta $755 ; 4 - sta $756 ; 4 - sta $757 ; 4 - sta $758 ; 4 - sta $759 ; 4 - sta $75a ; 4 - sta $75b ; 4 - sta $75c ; 4 - sta $75d ; 4 - lda TEMP ; 3 - - -;========= -; 88(L22) = $750 - - bit PAGE0 ; 4 - lda #$0e ; 2 - sta $b50 ; 4 - sta $b51 ; 4 - sta $b52 ; 4 - sta $b53 ; 4 - sta $b54 ; 4 - sta $b55 ; 4 - sta $b56 ; 4 - sta $b57 ; 4 - sta $b58 ; 4 - sta $b59 ; 4 - sta $b5a ; 4 - sta $b5b ; 4 - sta $b5c ; 4 - sta $b5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $750 ; 4 - sta $751 ; 4 - sta $752 ; 4 - sta $753 ; 4 - sta $754 ; 4 - sta $755 ; 4 - sta $756 ; 4 - sta $757 ; 4 - sta $758 ; 4 - sta $759 ; 4 - sta $75a ; 4 - sta $75b ; 4 - sta $75c ; 4 - sta $75d ; 4 - lda TEMP ; 3 - -; 89 - - bit PAGE0 ; 4 - lda #$0e ; 2 - sta $b50 ; 4 - sta $b51 ; 4 - sta $b52 ; 4 - sta $b53 ; 4 - sta $b54 ; 4 - sta $b55 ; 4 - sta $b56 ; 4 - sta $b57 ; 4 - sta $b58 ; 4 - sta $b59 ; 4 - sta $b5a ; 4 - sta $b5b ; 4 - sta $b5c ; 4 - sta $b5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$c0 ; 2 - sta $750 ; 4 - sta $751 ; 4 - sta $752 ; 4 - sta $753 ; 4 - sta $754 ; 4 - sta $755 ; 4 - sta $756 ; 4 - sta $757 ; 4 - sta $758 ; 4 - sta $759 ; 4 - sta $75a ; 4 - sta $75b ; 4 - sta $75c ; 4 - sta $75d ; 4 - lda TEMP ; 3 - -; 90 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $b50 ; 4 - sta $b51 ; 4 - sta $b52 ; 4 - sta $b53 ; 4 - sta $b54 ; 4 - sta $b55 ; 4 - sta $b56 ; 4 - sta $b57 ; 4 - sta $b58 ; 4 - sta $b59 ; 4 - sta $b5a ; 4 - sta $b5b ; 4 - sta $b5c ; 4 - sta $b5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $750 ; 4 - sta $751 ; 4 - sta $752 ; 4 - sta $753 ; 4 - sta $754 ; 4 - sta $755 ; 4 - sta $756 ; 4 - sta $757 ; 4 - sta $758 ; 4 - sta $759 ; 4 - sta $75a ; 4 - sta $75b ; 4 - sta $75c ; 4 - sta $75d ; 4 - lda TEMP ; 3 - -; 91 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $b50 ; 4 - sta $b51 ; 4 - sta $b52 ; 4 - sta $b53 ; 4 - sta $b54 ; 4 - sta $b55 ; 4 - sta $b56 ; 4 - sta $b57 ; 4 - sta $b58 ; 4 - sta $b59 ; 4 - sta $b5a ; 4 - sta $b5b ; 4 - sta $b5c ; 4 - sta $b5d ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$09 ; 2 - sta $7d0 ; 4 - sta $7d1 ; 4 - sta $7d2 ; 4 - sta $7d3 ; 4 - sta $7d4 ; 4 - sta $7d5 ; 4 - sta $7d6 ; 4 - sta $7d7 ; 4 - sta $7d8 ; 4 - sta $7d9 ; 4 - sta $7da ; 4 - sta $7db ; 4 - sta $7dc ; 4 - sta $7dd ; 4 - lda TEMP ; 3 - - -;========= -; 92(L23) = $7d0 - - bit PAGE0 ; 4 - lda #$0d ; 2 - sta $bd0 ; 4 - sta $bd1 ; 4 - sta $bd2 ; 4 - sta $bd3 ; 4 - sta $bd4 ; 4 - sta $bd5 ; 4 - sta $bd6 ; 4 - sta $bd7 ; 4 - sta $bd8 ; 4 - sta $bd9 ; 4 - sta $bda ; 4 - sta $bdb ; 4 - sta $bdc ; 4 - sta $bdd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$0f ; 2 - sta $7d0 ; 4 - sta $7d1 ; 4 - sta $7d2 ; 4 - sta $7d3 ; 4 - sta $7d4 ; 4 - sta $7d5 ; 4 - sta $7d6 ; 4 - sta $7d7 ; 4 - sta $7d8 ; 4 - sta $7d9 ; 4 - sta $7da ; 4 - sta $7db ; 4 - sta $7dc ; 4 - sta $7dd ; 4 - lda TEMP ; 3 - -; 93 - - bit PAGE0 ; 4 - lda #$0d ; 2 - sta $bd0 ; 4 - sta $bd1 ; 4 - sta $bd2 ; 4 - sta $bd3 ; 4 - sta $bd4 ; 4 - sta $bd5 ; 4 - sta $bd6 ; 4 - sta $bd7 ; 4 - sta $bd8 ; 4 - sta $bd9 ; 4 - sta $bda ; 4 - sta $bdb ; 4 - sta $bdc ; 4 - sta $bdd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$90 ; 2 - sta $7d0 ; 4 - sta $7d1 ; 4 - sta $7d2 ; 4 - sta $7d3 ; 4 - sta $7d4 ; 4 - sta $7d5 ; 4 - sta $7d6 ; 4 - sta $7d7 ; 4 - sta $7d8 ; 4 - sta $7d9 ; 4 - sta $7da ; 4 - sta $7db ; 4 - sta $7dc ; 4 - sta $7dd ; 4 - lda TEMP ; 3 - -; 94 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $bd0 ; 4 - sta $bd1 ; 4 - sta $bd2 ; 4 - sta $bd3 ; 4 - sta $bd4 ; 4 - sta $bd5 ; 4 - sta $bd6 ; 4 - sta $bd7 ; 4 - sta $bd8 ; 4 - sta $bd9 ; 4 - sta $bda ; 4 - sta $bdb ; 4 - sta $bdc ; 4 - sta $bdd ; 4 - lda TEMP ; 3 - - bit PAGE1 ; 4 - lda #$00 ; 2 - sta $7d0 ; 4 - sta $7d1 ; 4 - sta $7d2 ; 4 - sta $7d3 ; 4 - sta $7d4 ; 4 - sta $7d5 ; 4 - sta $7d6 ; 4 - sta $7d7 ; 4 - sta $7d8 ; 4 - sta $7d9 ; 4 - sta $7da ; 4 - sta $7db ; 4 - sta $7dc ; 4 - sta $7dd ; 4 - lda TEMP ; 3 - -; 95 - - bit PAGE0 ; 4 - lda #$00 ; 2 - sta $bd0 ; 4 - sta $bd1 ; 4 - sta $bd2 ; 4 - sta $bd3 ; 4 - sta $bd4 ; 4 - sta $bd5 ; 4 - sta $bd6 ; 4 - sta $bd7 ; 4 - sta $bd8 ; 4 - sta $bd9 ; 4 - sta $bda ; 4 - sta $bdb ; 4 - sta $bdc ; 4 - sta $bdd ; 4 - lda TEMP ; 3 - - ; 65 cycles - bit PAGE1 ; 4 - lda #$03 ; 2 - sta $400 ; 4 - sta $401 ; 4 - sta $402 ; 4 - sta $403 ; 4 - sta $404 ; 4 - sta $405 ; 4 - sta $406 ; 4 - sta $407 ; 4 - sta $408 ; 4 - sta $409 ; 4 - sta $40a ; 4 - sta $40b ; 4 - sta $40c ; 4 - sta $40d ; 4 - lda TEMP ; 3 - - From 692180b3c89dc141d08d06051d3d8687bae0115e Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 11:44:20 -0400 Subject: [PATCH 07/22] ds: add TODO list --- demosplash/TODO | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 demosplash/TODO diff --git a/demosplash/TODO b/demosplash/TODO new file mode 100644 index 00000000..e0e9d22a --- /dev/null +++ b/demosplash/TODO @@ -0,0 +1,27 @@ +General: ++ get music working + + +OPENER: + + Done? + +MISSING: + + Add colored bars for accent? + +PACKAGE: + + Implement + +STARBASE: + + Fix sprites + + Keyboard emulation + +ESCAPE: + + Get working + + Keyboard emulation + +READING: + + Add message of some sort? + +CREDITS: + + implement text + + implement rasterbars From 2a8a41030369b921ed5a38b73f02a9a499ea7534 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 15:47:58 -0400 Subject: [PATCH 08/22] ds: almost have rasterbars again --- demosplash/Makefile | 6 +- demosplash/NOTES | 2 +- demosplash/TODO | 10 + demosplash/create_update_type1.s | 59 ++++- demosplash/credits.s | 402 +++++++++++++++++++++++++++++++ demosplash/demosplash.s | 3 + demosplash/generator/Makefile | 10 +- demosplash/generator/offsets.c | 28 +++ demosplash/movement_table.s | 257 ++++++++++++++++++++ demosplash/musictest.s | 21 +- 10 files changed, 791 insertions(+), 7 deletions(-) create mode 100644 demosplash/credits.s create mode 100644 demosplash/generator/offsets.c create mode 100644 demosplash/movement_table.s diff --git a/demosplash/Makefile b/demosplash/Makefile index a6abf0b3..a5ad39ac 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -55,7 +55,8 @@ musictest.o: musictest.s \ interrupt_handler.s \ missing.s k_40_48d.inc \ create_update_type1.s \ - book.s \ + book.s book_40_48d.inc \ + credits.s credits_bg.inc offsets_table.s \ dya_space_demo2.pt3 ca65 -o musictest.o musictest.s -l musictest.lst @@ -88,6 +89,9 @@ BOOK_HGR2C.BIN: book_hgr2.bmp ##### +credits_bg.inc: credits_bg.png + $(PNG_TO_40x48D) asm credits_bg.png credits > credits_bg.inc + book_40_48d.inc: book_40_48d.png $(PNG_TO_40x48D) asm book_40_48d.png book > book_40_48d.inc diff --git a/demosplash/NOTES b/demosplash/NOTES index 679d7103..953a47a0 100644 --- a/demosplash/NOTES +++ b/demosplash/NOTES @@ -75,7 +75,7 @@ Memory Map 0c00-0fff (used as page3) 1400-16ff Loader -1700-???? executable +1700-???? executable (30976 bytes) 9000-bfff audio buffer diff --git a/demosplash/TODO b/demosplash/TODO index e0e9d22a..075d089d 100644 --- a/demosplash/TODO +++ b/demosplash/TODO @@ -25,3 +25,13 @@ READING: CREDITS: + implement text + implement rasterbars + + 012345678901 + CODE: DEATER + MUSIC: DYA + MISC MAGIC: QKUMBA + THANKS: + FROGYSUE + S. SUSIE + 0101TALBOT +18*4= diff --git a/demosplash/create_update_type1.s b/demosplash/create_update_type1.s index 6841c9b6..d497fe0c 100644 --- a/demosplash/create_update_type1.s +++ b/demosplash/create_update_type1.s @@ -23,7 +23,7 @@ create_update_inner_loop: cpy #49 bne create_update_inner_loop - ; toggl PAGE0/PAGE1 + ; toggle PAGE0/PAGE1 txa and #$1 ; ror? clc @@ -48,6 +48,63 @@ create_update_inner_loop: rts + ;=========================== + ; from 32 to 160? +setup_rasterbars: + + lda #4 ; which page + sta TEMP + + ldx #32 + lda #<(UPDATE_START+(32*49)) + sta OUTL + lda #>(UPDATE_START+(32*49)) + sta OUTH +setup_rasterbars_outer_loop: + ldy #6 +setup_rasterbars_inner_loop: + txa + pha + inx + txa ; start one earlier + lsr + lsr + and #$fe + tax + lda gr_offsets,X + sta (OUTL),Y + iny + clc + lda gr_offsets+1,X + adc TEMP + sta (OUTL),Y + iny + iny + pla + tax + + cpy #48 + bne setup_rasterbars_inner_loop + + clc + lda #49 + adc OUTL + sta OUTL + lda OUTH + adc #0 + sta OUTH + + + lda TEMP + eor #$04 + sta TEMP + + inx + cpx #160 + bne setup_rasterbars_outer_loop + + rts + one_scanline: .byte $2C,$54,$C0 ; bit PAGE0 ; 4 .byte $A9,$0B ; lda #$0b ; 2 diff --git a/demosplash/credits.s b/demosplash/credits.s new file mode 100644 index 00000000..41991998 --- /dev/null +++ b/demosplash/credits.s @@ -0,0 +1,402 @@ +; Uses the 40x48d page1/page2 every-1-scanline pageflip mode + +; self modifying code to get some extra colors (pseudo 40x192 mode) + +; by deater (Vince Weaver) + +credits: + + ;=================== + ; init screen + jsr TEXT + jsr HOME + bit KEYRESET + + ;=================== + ; init vars + + lda #0 + sta DRAW_PAGE + + ;================== + ; setup graphics + + jsr create_update_type1 + jsr setup_rasterbars + + ;============================= + ; Load graphic page0 + + lda #credits_low + sta GBASH + + lda #$c ; load image to $c00 + + jsr load_rle_gr + + lda #4 + sta DRAW_PAGE + + jsr gr_copy_to_current ; copy to page1 + + ; GR part + bit PAGE1 + bit LORES ; 4 + bit SET_GR ; 4 + bit FULLGR ; 4 + +; jsr wait_until_keypressed + + + ;============================= + ; Load graphic page1 + + lda #credits_high + sta GBASH + lda #$c ; load to $c00 + jsr load_rle_gr + + lda #0 + sta DRAW_PAGE + + jsr gr_copy_to_current + +; ; GR part + bit PAGE0 + +; jsr wait_until_keypressed + + + ;============================== + ; setup graphics for vapor lock + ;============================== + + jsr vapor_lock + + ; vapor lock returns with us at beginning of hsync in line + ; 114 (7410 cycles), so with 5070 lines to go + + ; GR part + bit LORES ; 4 + bit SET_GR ; 4 + bit FULLGR ; 4 + + jsr gr_copy_to_current ; 6+ 9292 + + ; 5070 + 4550 = 9620 + ; 9292 + ; 12 + ; 6 + ; ==== + ; 310 + + ; - 3 for jmp + ; 307 + + ; Try X=9 Y=6 cycles=307 + + ldy #6 ; 2 +tloopA: ldx #9 ; 2 +tloopB: dex ; 2 + bne tloopB ; 2nt/3 + dey ; 2 + bne tloopA ; 2nt/3 + + jmp credits_loop ; 3 + +.align $100 + + ;================================================ + ; Display Loop + ;================================================ + ; each scan line 65 cycles + ; 1 cycle each byte (40cycles) + 25 for horizontal + ; Total of 12480 cycles to draw screen + ; Vertical blank = 4550 cycles (70 scan lines) + ; Total of 17030 cycles to get back to where was + + ; We want to alternate between page1 and page2 every 65 cycles + ; vblank = 4550 cycles to do scrolling + + +credits_loop: + + jsr $9000 + + ;====================================================== + ; We have 4550 cycles in the vblank, use them wisely + ;====================================================== + + ; 4550 -- VBLANK + ; -582 -- erase 22+4*(8+6+126) = 582 + ; -696 -- move+draw 4*(16+26+6+126) = 696 + ; -10 -- keypress + ; -12 -- call/return of draw code + ;======= + ; 3250 + +pad_time: + + ; we erase, then draw + ; doing a blanket erase of all 128 lines would cost 3459 cycles! + + ;========================= + ; ERASE + ;========================= + + lda #$00 ; 2 + sta smc_raster_color1_1+1 ; 4 + sta smc_raster_color1_2+1 ; 4 + sta smc_raster_color2_1+1 ; 4 + sta smc_raster_color2_2+1 ; 4 + sta smc_raster_color3_1+1 ; 4 + ;============= + ; 22 + + ; erase red + + lda red_x ; 4 + and #$7f ; 2 + tax ; 2 + + jsr draw_rasterbar ; 6+126 + + ; erase yellow + + lda yellow_x ; 4 + and #$7f ; 2 + tax ; 2 + + jsr draw_rasterbar ; 6+126 + + ; erase green + + lda green_x ; 4 + and #$7f ; 2 + tax ; 2 + + jsr draw_rasterbar ; 6+126 + + ; erase red + + lda blue_x ; 4 + and #$7f ; 2 + tax ; 2 + + jsr draw_rasterbar ; 6+126 + + + ;========================= + ; MOVE and DRAW + ;========================= + + + ;============ + ; move red + + ldy red_x ; 4 + lda movement_table,Y ; 4 + sta red_x ; 4 + and #$7f ; 2 + tax ; 2 + ;========== + ; 16 + + ; draw red + + lda #$33 ; 2 + sta smc_raster_color1_1+1 ; 4 + sta smc_raster_color1_2+1 ; 4 + lda #$bb ; 2 + sta smc_raster_color2_1+1 ; 4 + sta smc_raster_color2_2+1 ; 4 + lda #$ff ; 2 + sta smc_raster_color3_1+1 ; 4 + ;============= + ; 26 + + + jsr draw_rasterbar ; 6+126 + + + ;============ + ; move yellow + + ldy yellow_x ; 4 + lda movement_table,Y ; 4 + sta yellow_x ; 4 + and #$7f ; 2 + tax ; 2 + ;========== + ; 16 + + ; draw yellow + + lda #$88 ; 2 + sta smc_raster_color1_1+1 ; 4 + sta smc_raster_color1_2+1 ; 4 + lda #$dd ; 2 + sta smc_raster_color2_1+1 ; 4 + sta smc_raster_color2_2+1 ; 4 + lda #$ff ; 2 + sta smc_raster_color3_1+1 ; 4 + ;============= + ; 26 + + + jsr draw_rasterbar ; 6+126 + + ;============ + ; move green + + ldy green_x ; 4 + lda movement_table,Y ; 4 + sta green_x ; 4 + and #$7f ; 2 + tax ; 2 + ;========== + ; 16 + + ; draw green + + lda #$44 ; 2 + sta smc_raster_color1_1+1 ; 4 + sta smc_raster_color1_2+1 ; 4 + lda #$cc ; 2 + sta smc_raster_color2_1+1 ; 4 + sta smc_raster_color2_2+1 ; 4 + lda #$ff ; 2 + sta smc_raster_color3_1+1 ; 4 + ;============= + ; 26 + + + jsr draw_rasterbar ; 6+126 + + ;============ + ; move blue + + ldy blue_x ; 4 + lda movement_table,Y ; 4 + sta blue_x ; 4 + and #$7f ; 2 + tax ; 2 + ;========== + ; 16 + + ; draw blue + + lda #$22 ; 2 + sta smc_raster_color1_1+1 ; 4 + sta smc_raster_color1_2+1 ; 4 + lda #$66 ; 2 + sta smc_raster_color2_1+1 ; 4 + sta smc_raster_color2_2+1 ; 4 + lda #$ff ; 2 + sta smc_raster_color3_1+1 ; 4 + ;============= + ; 26 + + + jsr draw_rasterbar ; 6+126 + + + + + ;============================ + ; WAIT for VBLANK to finish + ;============================ + + ; Try X=71 Y=9 cycles=3250 + + ldy #9 ; 2 +tloop1: ldx #71 ; 2 +tloop2: dex ; 2 + bne tloop2 ; 2nt/3 + dey ; 2 + bne tloop1 ; 2nt/3 + + + lda KEYPRESS ; 4 + bpl cno_keypress ; 3 + jmp credits_loop +cno_keypress: + + jmp credits_loop ; 3 + + + ;======================== + ; Draw a rasterbar + ; unroll as memory is free! haha + ;======================== + ; X is location + + ; 2+22+24+24+24+24+6 = 126 + +draw_rasterbar: + + ldy #0 ; 2 + ;==== + + lda y_lookup_l,X ; 4 + sta OUTL ; 3 + lda y_lookup_h,X ; 4 + sta OUTH ; 3 + +smc_raster_color1_1: + lda #$33 ; 2 + sta (OUTL),Y ; 6 + ;============ + ; 22 + + inx ; 2 + lda y_lookup_l,X ; 4 + sta OUTL ; 3 + lda y_lookup_h,X ; 4 + sta OUTH ; 3 + +smc_raster_color2_1: + lda #$bb ; 2 + sta (OUTL),Y ; 6 + + inx ; 2 + lda y_lookup_l,X ; 4 + sta OUTL ; 3 + lda y_lookup_h,X ; 4 + sta OUTH ; 3 + +smc_raster_color3_1: + lda #$ff ; 2 + sta (OUTL),Y ; 6 + + inx + lda y_lookup_l,X ; 4 + sta OUTL ; 3 + lda y_lookup_h,X ; 4 + sta OUTH ; 3 + +smc_raster_color2_2: + lda #$bb ; 2 + sta (OUTL),Y ; 6 + + inx + lda y_lookup_l,X ; 4 + sta OUTL ; 3 + lda y_lookup_h,X ; 4 + sta OUTH ; 3 + +smc_raster_color1_2: + lda #$33 ; 2 + sta (OUTL),Y ; 6 + + rts ; 6 + + +red_x: .byte $10 +yellow_x: .byte $20 +green_x: .byte $30 +blue_x: .byte $40 diff --git a/demosplash/demosplash.s b/demosplash/demosplash.s index b2f18d49..7304d267 100644 --- a/demosplash/demosplash.s +++ b/demosplash/demosplash.s @@ -132,6 +132,9 @@ wait_until_keypressed: .include "pt3_lib_mockingboard.s" .include "interrupt_handler.s" +; Images (no need to align) +.include "credits_bg.inc" + PT3_LOC = song diff --git a/demosplash/generator/Makefile b/demosplash/generator/Makefile index 511f6f7b..a18a2e3f 100644 --- a/demosplash/generator/Makefile +++ b/demosplash/generator/Makefile @@ -2,7 +2,7 @@ CC = gcc CFLAGS = -Wall -O2 LFLAGS = -all: creator +all: creator offsets creator: creator.o $(CC) -o creator creator.o $(LFLAGS) @@ -10,5 +10,11 @@ creator: creator.o creator.o: creator.c $(CC) $(CFLAGS) -c creator.c +offsets: offsets.o + $(CC) -o offsets offsets.o $(LFLAGS) + +offsets.o: offsets.c + $(CC) $(CFLAGS) -c offsets.c + clean: - rm -f *.o creator + rm -f *.o creator offsets diff --git a/demosplash/generator/offsets.c b/demosplash/generator/offsets.c new file mode 100644 index 00000000..2879c718 --- /dev/null +++ b/demosplash/generator/offsets.c @@ -0,0 +1,28 @@ +#include + +#define NUMBER 128 + +int main(int argc, char **argv) { + + int i; + + printf("y_lookup_h:\n"); + + for(i=0;i(smc%3d+1)",i+32); + printf(">($%4X)",0x9000+(i+32)*49+4); + if (i%8!=7) printf(","); + else printf("\n"); + } + printf("y_lookup_l:\n"); + for(i=0;i 1 + .byte $02 ; 1 -> 2 + .byte $03 ; 2 -> 3 + .byte $04 ; 3 -> 4 + .byte $05 ; 4 -> 5 + .byte $06 ; 5 -> 6 + .byte $07 ; 6 -> 7 + .byte $08 ; 7 -> 8 + .byte $09 ; 8 -> 9 + .byte $0A ; 9 -> 10 + .byte $0B ; 10 -> 11 + .byte $0C ; 11 -> 12 + .byte $0D ; 12 -> 13 + .byte $0E ; 13 -> 14 + .byte $0F ; 14 -> 15 + .byte $10 ; 15 -> 16 + .byte $11 ; 16 -> 17 + .byte $12 ; 17 -> 18 + .byte $13 ; 18 -> 19 + .byte $14 ; 19 -> 20 + .byte $15 ; 20 -> 21 + .byte $16 ; 21 -> 22 + .byte $17 ; 22 -> 23 + .byte $18 ; 23 -> 24 + .byte $19 ; 24 -> 25 + .byte $1A ; 25 -> 26 + .byte $1B ; 26 -> 27 + .byte $1C ; 27 -> 28 + .byte $1D ; 28 -> 29 + .byte $1E ; 29 -> 30 + .byte $1F ; 30 -> 31 + .byte $20 ; 31 -> 32 + .byte $21 ; 32 -> 33 + .byte $22 ; 33 -> 34 + .byte $23 ; 34 -> 35 + .byte $24 ; 35 -> 36 + .byte $25 ; 36 -> 37 + .byte $26 ; 37 -> 38 + .byte $27 ; 38 -> 39 + .byte $28 ; 39 -> 40 + .byte $29 ; 40 -> 41 + .byte $2A ; 41 -> 42 + .byte $2B ; 42 -> 43 + .byte $2C ; 43 -> 44 + .byte $2D ; 44 -> 45 + .byte $2E ; 45 -> 46 + .byte $2F ; 46 -> 47 + .byte $30 ; 47 -> 48 + .byte $31 ; 48 -> 49 + .byte $32 ; 49 -> 50 + .byte $33 ; 50 -> 51 + .byte $34 ; 51 -> 52 + .byte $35 ; 52 -> 53 + .byte $36 ; 53 -> 54 + .byte $37 ; 54 -> 55 + .byte $38 ; 55 -> 56 + .byte $39 ; 56 -> 57 + .byte $3A ; 57 -> 58 + .byte $3B ; 58 -> 59 + .byte $3C ; 59 -> 60 + .byte $3D ; 60 -> 61 + .byte $3E ; 61 -> 62 + .byte $3F ; 62 -> 63 + .byte $40 ; 63 -> 64 + .byte $41 ; 64 -> 65 + .byte $42 ; 65 -> 66 + .byte $43 ; 66 -> 67 + .byte $44 ; 67 -> 68 + .byte $45 ; 68 -> 69 + .byte $46 ; 69 -> 70 + .byte $47 ; 70 -> 71 + .byte $48 ; 71 -> 72 + .byte $49 ; 72 -> 73 + .byte $4A ; 73 -> 74 + .byte $4B ; 74 -> 75 + .byte $4C ; 75 -> 76 + .byte $4D ; 76 -> 77 + .byte $4E ; 77 -> 78 + .byte $4F ; 78 -> 79 + .byte $50 ; 79 -> 80 + .byte $51 ; 80 -> 81 + .byte $52 ; 81 -> 82 + .byte $53 ; 82 -> 83 + .byte $54 ; 83 -> 84 + .byte $55 ; 84 -> 85 + .byte $56 ; 85 -> 86 + .byte $57 ; 86 -> 87 + .byte $58 ; 87 -> 88 + .byte $59 ; 88 -> 89 + .byte $5A ; 89 -> 90 + .byte $5B ; 90 -> 91 + .byte $5C ; 91 -> 92 + .byte $5D ; 92 -> 93 + .byte $5E ; 93 -> 94 + .byte $5F ; 94 -> 95 + .byte $60 ; 95 -> 96 + .byte $61 ; 96 -> 97 + .byte $62 ; 97 -> 98 + .byte $63 ; 98 -> 99 + .byte $64 ; 99 -> 100 + .byte $65 ; 100 -> 101 + .byte $66 ; 101 -> 102 + .byte $67 ; 102 -> 103 + .byte $68 ; 103 -> 104 + .byte $69 ; 104 -> 105 + .byte $6A ; 105 -> 106 + .byte $6B ; 106 -> 107 + .byte $6C ; 107 -> 108 + .byte $6D ; 108 -> 109 + .byte $6E ; 109 -> 110 + .byte $6F ; 110 -> 111 + .byte $70 ; 111 -> 112 + .byte $71 ; 112 -> 113 + .byte $72 ; 113 -> 114 + .byte $73 ; 114 -> 115 + .byte $74 ; 115 -> 116 + .byte $75 ; 116 -> 117 + .byte $76 ; 117 -> 118 + .byte $77 ; 118 -> 119 + .byte $78 ; 119 -> 120 + .byte $79 ; 120 -> 121 + .byte $7A ; 121 -> 122 + .byte $7B ; 122 -> 123 + .byte $FB ; 123 -> 251 + .byte $7B ; 124 -> 123 + .byte $7B ; 125 -> 123 + .byte $7B ; 126 -> 123 + .byte $7B ; 127 -> 123 + .byte $00 ; 128 -> 0 + .byte $80 ; 129 -> 128 + .byte $81 ; 130 -> 129 + .byte $82 ; 131 -> 130 + .byte $83 ; 132 -> 131 + .byte $84 ; 133 -> 132 + .byte $85 ; 134 -> 133 + .byte $86 ; 135 -> 134 + .byte $87 ; 136 -> 135 + .byte $88 ; 137 -> 136 + .byte $89 ; 138 -> 137 + .byte $8A ; 139 -> 138 + .byte $8B ; 140 -> 139 + .byte $8C ; 141 -> 140 + .byte $8D ; 142 -> 141 + .byte $8E ; 143 -> 142 + .byte $8F ; 144 -> 143 + .byte $90 ; 145 -> 144 + .byte $91 ; 146 -> 145 + .byte $92 ; 147 -> 146 + .byte $93 ; 148 -> 147 + .byte $94 ; 149 -> 148 + .byte $95 ; 150 -> 149 + .byte $96 ; 151 -> 150 + .byte $97 ; 152 -> 151 + .byte $98 ; 153 -> 152 + .byte $99 ; 154 -> 153 + .byte $9A ; 155 -> 154 + .byte $9B ; 156 -> 155 + .byte $9C ; 157 -> 156 + .byte $9D ; 158 -> 157 + .byte $9E ; 159 -> 158 + .byte $9F ; 160 -> 159 + .byte $A0 ; 161 -> 160 + .byte $A1 ; 162 -> 161 + .byte $A2 ; 163 -> 162 + .byte $A3 ; 164 -> 163 + .byte $A4 ; 165 -> 164 + .byte $A5 ; 166 -> 165 + .byte $A6 ; 167 -> 166 + .byte $A7 ; 168 -> 167 + .byte $A8 ; 169 -> 168 + .byte $A9 ; 170 -> 169 + .byte $AA ; 171 -> 170 + .byte $AB ; 172 -> 171 + .byte $AC ; 173 -> 172 + .byte $AD ; 174 -> 173 + .byte $AE ; 175 -> 174 + .byte $AF ; 176 -> 175 + .byte $B0 ; 177 -> 176 + .byte $B1 ; 178 -> 177 + .byte $B2 ; 179 -> 178 + .byte $B3 ; 180 -> 179 + .byte $B4 ; 181 -> 180 + .byte $B5 ; 182 -> 181 + .byte $B6 ; 183 -> 182 + .byte $B7 ; 184 -> 183 + .byte $B8 ; 185 -> 184 + .byte $B9 ; 186 -> 185 + .byte $BA ; 187 -> 186 + .byte $BB ; 188 -> 187 + .byte $BC ; 189 -> 188 + .byte $BD ; 190 -> 189 + .byte $BE ; 191 -> 190 + .byte $BF ; 192 -> 191 + .byte $C0 ; 193 -> 192 + .byte $C1 ; 194 -> 193 + .byte $C2 ; 195 -> 194 + .byte $C3 ; 196 -> 195 + .byte $C4 ; 197 -> 196 + .byte $C5 ; 198 -> 197 + .byte $C6 ; 199 -> 198 + .byte $C7 ; 200 -> 199 + .byte $C8 ; 201 -> 200 + .byte $C9 ; 202 -> 201 + .byte $CA ; 203 -> 202 + .byte $CB ; 204 -> 203 + .byte $CC ; 205 -> 204 + .byte $CD ; 206 -> 205 + .byte $CE ; 207 -> 206 + .byte $CF ; 208 -> 207 + .byte $D0 ; 209 -> 208 + .byte $D1 ; 210 -> 209 + .byte $D2 ; 211 -> 210 + .byte $D3 ; 212 -> 211 + .byte $D4 ; 213 -> 212 + .byte $D5 ; 214 -> 213 + .byte $D6 ; 215 -> 214 + .byte $D7 ; 216 -> 215 + .byte $D8 ; 217 -> 216 + .byte $D9 ; 218 -> 217 + .byte $DA ; 219 -> 218 + .byte $DB ; 220 -> 219 + .byte $DC ; 221 -> 220 + .byte $DD ; 222 -> 221 + .byte $DE ; 223 -> 222 + .byte $DF ; 224 -> 223 + .byte $E0 ; 225 -> 224 + .byte $E1 ; 226 -> 225 + .byte $E2 ; 227 -> 226 + .byte $E3 ; 228 -> 227 + .byte $E4 ; 229 -> 228 + .byte $E5 ; 230 -> 229 + .byte $E6 ; 231 -> 230 + .byte $E7 ; 232 -> 231 + .byte $E8 ; 233 -> 232 + .byte $E9 ; 234 -> 233 + .byte $EA ; 235 -> 234 + .byte $EB ; 236 -> 235 + .byte $EC ; 237 -> 236 + .byte $ED ; 238 -> 237 + .byte $EE ; 239 -> 238 + .byte $EF ; 240 -> 239 + .byte $F0 ; 241 -> 240 + .byte $F1 ; 242 -> 241 + .byte $F2 ; 243 -> 242 + .byte $F3 ; 244 -> 243 + .byte $F4 ; 245 -> 244 + .byte $F5 ; 246 -> 245 + .byte $F6 ; 247 -> 246 + .byte $F7 ; 248 -> 247 + .byte $F8 ; 249 -> 248 + .byte $F9 ; 250 -> 249 + .byte $FA ; 251 -> 250 + .byte $FB ; 252 -> 251 + .byte $FC ; 253 -> 252 + .byte $FD ; 254 -> 253 + .byte $FE ; 255 -> 254 diff --git a/demosplash/musictest.s b/demosplash/musictest.s index d576e090..870a56e6 100644 --- a/demosplash/musictest.s +++ b/demosplash/musictest.s @@ -139,8 +139,16 @@ frame_decode_loop: ; book scene ;=========================== - jsr end_book + nop + nop + nop +; jsr end_book + ;=========================== + ; credits + ;=========================== + + jsr credits ; wait wait wait @@ -177,8 +185,10 @@ wait_until_keypressed: .include "gr_fast_clear.s" ;.include "gr_overlay.s" .align $100 +.include "movement_table.s" .include "font.s" - +.align $100 +.include "offsets_table.s" ; missing .include "missing.s" @@ -192,6 +202,9 @@ wait_until_keypressed: ; book .include "book.s" +; credits +.include "credits.s" + ; Music player .include "pt3_lib_core.s" .include "pt3_lib_init.s" @@ -201,6 +214,10 @@ wait_until_keypressed: .include "pt3_lib_write_frame.s" .include "create_update_type1.s" +; Pictures (no need to align) +.include "credits_bg.inc" + + PT3_LOC = song ; must be page aligned From 87de0c0aaf7637751187215f9b2b4ab4e700752b Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 16:04:11 -0400 Subject: [PATCH 09/22] ds: rasterbars work --- demosplash/create_update_type1.s | 27 ++++++++++++++++--------- demosplash/generator/offsets.c | 11 +++++++---- demosplash/offsets_table.s | 34 ++++++++++++++++++++++++++++++++ demosplash/zp.inc | 2 ++ 4 files changed, 61 insertions(+), 13 deletions(-) create mode 100644 demosplash/offsets_table.s diff --git a/demosplash/create_update_type1.s b/demosplash/create_update_type1.s index d497fe0c..8a4a1121 100644 --- a/demosplash/create_update_type1.s +++ b/demosplash/create_update_type1.s @@ -4,6 +4,8 @@ UPDATE_START = $9000 +DEFAULT_COLOR = $0 + create_update_type1: ldx #192 lda #(UPDATE_START+(32*49)) + lda #>(UPDATE_START+(BARS_START*49)) sta OUTH setup_rasterbars_outer_loop: ldy #6 + lda #13 + sta RASTER_X setup_rasterbars_inner_loop: txa pha @@ -71,12 +77,15 @@ setup_rasterbars_inner_loop: lsr and #$fe tax + clc lda gr_offsets,X + adc RASTER_X + inc RASTER_X sta (OUTL),Y iny clc lda gr_offsets+1,X - adc TEMP + adc RASTER_PAGE sta (OUTL),Y iny iny @@ -95,19 +104,19 @@ setup_rasterbars_inner_loop: sta OUTH - lda TEMP + lda RASTER_PAGE eor #$04 - sta TEMP + sta RASTER_PAGE inx - cpx #160 + cpx #168 bne setup_rasterbars_outer_loop rts one_scanline: .byte $2C,$54,$C0 ; bit PAGE0 ; 4 -.byte $A9,$0B ; lda #$0b ; 2 +.byte $A9,DEFAULT_COLOR ; lda #$0b ; 2 .byte $8D,$00,$02 ; sta $200 ; 4 .byte $8D,$00,$02 ; sta $200 ; 4 .byte $8D,$00,$02 ; sta $200 ; 4 diff --git a/demosplash/generator/offsets.c b/demosplash/generator/offsets.c index 2879c718..41bf271e 100644 --- a/demosplash/generator/offsets.c +++ b/demosplash/generator/offsets.c @@ -2,6 +2,9 @@ #define NUMBER 128 +//#define START 32 +#define START 40 + int main(int argc, char **argv) { int i; @@ -10,16 +13,16 @@ int main(int argc, char **argv) { for(i=0;i(smc%3d+1)",i+32); - printf(">($%4X)",0x9000+(i+32)*49+4); + //printf(">(smc%3d+1)",i+START); + printf(">($%4X)",0x9000+(i+START)*49+4); if (i%8!=7) printf(","); else printf("\n"); } printf("y_lookup_l:\n"); for(i=0;i($97AC),>($97DD),>($980E),>($983F),>($9870),>($98A1),>($98D2),>($9903) +.byte >($9934),>($9965),>($9996),>($99C7),>($99F8),>($9A29),>($9A5A),>($9A8B) +.byte >($9ABC),>($9AED),>($9B1E),>($9B4F),>($9B80),>($9BB1),>($9BE2),>($9C13) +.byte >($9C44),>($9C75),>($9CA6),>($9CD7),>($9D08),>($9D39),>($9D6A),>($9D9B) +.byte >($9DCC),>($9DFD),>($9E2E),>($9E5F),>($9E90),>($9EC1),>($9EF2),>($9F23) +.byte >($9F54),>($9F85),>($9FB6),>($9FE7),>($A018),>($A049),>($A07A),>($A0AB) +.byte >($A0DC),>($A10D),>($A13E),>($A16F),>($A1A0),>($A1D1),>($A202),>($A233) +.byte >($A264),>($A295),>($A2C6),>($A2F7),>($A328),>($A359),>($A38A),>($A3BB) +.byte >($A3EC),>($A41D),>($A44E),>($A47F),>($A4B0),>($A4E1),>($A512),>($A543) +.byte >($A574),>($A5A5),>($A5D6),>($A607),>($A638),>($A669),>($A69A),>($A6CB) +.byte >($A6FC),>($A72D),>($A75E),>($A78F),>($A7C0),>($A7F1),>($A822),>($A853) +.byte >($A884),>($A8B5),>($A8E6),>($A917),>($A948),>($A979),>($A9AA),>($A9DB) +.byte >($AA0C),>($AA3D),>($AA6E),>($AA9F),>($AAD0),>($AB01),>($AB32),>($AB63) +.byte >($AB94),>($ABC5),>($ABF6),>($AC27),>($AC58),>($AC89),>($ACBA),>($ACEB) +.byte >($AD1C),>($AD4D),>($AD7E),>($ADAF),>($ADE0),>($AE11),>($AE42),>($AE73) +.byte >($AEA4),>($AED5),>($AF06),>($AF37),>($AF68),>($AF99),>($AFCA),>($AFFB) +y_lookup_l: +.byte <($97AC),<($97DD),<($980E),<($983F),<($9870),<($98A1),<($98D2),<($9903) +.byte <($9934),<($9965),<($9996),<($99C7),<($99F8),<($9A29),<($9A5A),<($9A8B) +.byte <($9ABC),<($9AED),<($9B1E),<($9B4F),<($9B80),<($9BB1),<($9BE2),<($9C13) +.byte <($9C44),<($9C75),<($9CA6),<($9CD7),<($9D08),<($9D39),<($9D6A),<($9D9B) +.byte <($9DCC),<($9DFD),<($9E2E),<($9E5F),<($9E90),<($9EC1),<($9EF2),<($9F23) +.byte <($9F54),<($9F85),<($9FB6),<($9FE7),<($A018),<($A049),<($A07A),<($A0AB) +.byte <($A0DC),<($A10D),<($A13E),<($A16F),<($A1A0),<($A1D1),<($A202),<($A233) +.byte <($A264),<($A295),<($A2C6),<($A2F7),<($A328),<($A359),<($A38A),<($A3BB) +.byte <($A3EC),<($A41D),<($A44E),<($A47F),<($A4B0),<($A4E1),<($A512),<($A543) +.byte <($A574),<($A5A5),<($A5D6),<($A607),<($A638),<($A669),<($A69A),<($A6CB) +.byte <($A6FC),<($A72D),<($A75E),<($A78F),<($A7C0),<($A7F1),<($A822),<($A853) +.byte <($A884),<($A8B5),<($A8E6),<($A917),<($A948),<($A979),<($A9AA),<($A9DB) +.byte <($AA0C),<($AA3D),<($AA6E),<($AA9F),<($AAD0),<($AB01),<($AB32),<($AB63) +.byte <($AB94),<($ABC5),<($ABF6),<($AC27),<($AC58),<($AC89),<($ACBA),<($ACEB) +.byte <($AD1C),<($AD4D),<($AD7E),<($ADAF),<($ADE0),<($AE11),<($AE42),<($AE73) +.byte <($AEA4),<($AED5),<($AF06),<($AF37),<($AF68),<($AF99),<($AFCA),<($AFFB) diff --git a/demosplash/zp.inc b/demosplash/zp.inc index f87f6c6e..9dc547a8 100644 --- a/demosplash/zp.inc +++ b/demosplash/zp.inc @@ -152,8 +152,10 @@ BLAST_OUT = $D8 ; 2+ SHIELD_OUT = $D9 ; 2+ ALIEN_OUT = $DA ; 2+ +RASTER_PAGE = $DA ; rasters LASER_OUT = $DB ; 2+ +RASTER_X = $DB ; rasters GUN_CHARGE = $DC ; 2+ From 6aa869da592d5df6ab47da86bf4b918d658e8be6 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 16:09:01 -0400 Subject: [PATCH 10/22] ds: fix rasterbar artifacts sorta looked cool but also sorta not --- demosplash/create_update_type1.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demosplash/create_update_type1.s b/demosplash/create_update_type1.s index 8a4a1121..859de506 100644 --- a/demosplash/create_update_type1.s +++ b/demosplash/create_update_type1.s @@ -109,7 +109,7 @@ setup_rasterbars_inner_loop: sta RASTER_PAGE inx - cpx #168 + cpx #176 bne setup_rasterbars_outer_loop rts From d63c556d3d69e7d23baf5d4d26821521cafe7360 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 21:05:11 -0400 Subject: [PATCH 11/22] ds: rename to make more sense also faster loads --- demosplash/Makefile | 46 ++++---- demosplash/credits_bg.png | Bin 0 -> 3694 bytes demosplash/demosplash.s | 112 ++++++++++++++++--- demosplash/{musictest.s => demosplash.s.old} | 112 +++---------------- demosplash/hello.bas | 3 +- 5 files changed, 137 insertions(+), 136 deletions(-) create mode 100644 demosplash/credits_bg.png rename demosplash/{musictest.s => demosplash.s.old} (59%) diff --git a/demosplash/Makefile b/demosplash/Makefile index a5ad39ac..ec3823f0 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -9,12 +9,12 @@ B2D = ../bmp2dhr/b2d all: demosplash.dsk -demosplash.dsk: HELLO LOADER BOOK_HGR2C.BIN MUSICTEST # DEMOSPLASH +demosplash.dsk: HELLO LOADER DEMOSPLASH cp empty.dsk demosplash.dsk $(DOS33) -y demosplash.dsk SAVE A HELLO $(DOS33) -y demosplash.dsk BSAVE -a 0x1400 LOADER -# $(DOS33) -y demosplash.dsk BSAVE -a 0x1700 DEMOSPLASH - $(DOS33) -y demosplash.dsk BSAVE -a 0x1700 MUSICTEST + $(DOS33) -y demosplash.dsk BSAVE -a 0x1700 DEMOSPLASH +# $(DOS33) -y demosplash.dsk BSAVE -a 0x1700 MUSICTEST #### @@ -23,31 +23,31 @@ HELLO: hello.bas ../asoft_basic-utils/tokenize_asoft < hello.bas > HELLO +##### + +#DEMOSPLASH: demosplash.o +# ld65 -o DEMOSPLASH demosplash.o -C ../linker_scripts/apple2_1700.inc + +#demosplash.o: demosplash.s \ +# zp.inc hardware.inc \ +# appleII_intro.s vapor_lock.s delay_a.s \ +# pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ +# interrupt_handler.s \ +# starbase.s starbase_action.s \ +# graphics/starbase/starbase.inc \ +# graphics/sprites/alien.inc graphics/sprites/astronaut.inc \ +# dya_space_demo.pt3 appleII_40_96.inc \ +# book.s book_40_48d.inc \ +# missing.s \ +# escape.s +# ca65 -o demosplash.o demosplash.s -l demosplash.lst + ##### DEMOSPLASH: demosplash.o ld65 -o DEMOSPLASH demosplash.o -C ../linker_scripts/apple2_1700.inc demosplash.o: demosplash.s \ - zp.inc hardware.inc \ - appleII_intro.s vapor_lock.s delay_a.s \ - pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ - interrupt_handler.s \ - starbase.s starbase_action.s \ - graphics/starbase/starbase.inc \ - graphics/sprites/alien.inc graphics/sprites/astronaut.inc \ - dya_space_demo.pt3 appleII_40_96.inc \ - book.s book_40_48d.inc \ - missing.s \ - escape.s - ca65 -o demosplash.o demosplash.s -l demosplash.lst - -##### - -MUSICTEST: musictest.o - ld65 -o MUSICTEST musictest.o -C ../linker_scripts/apple2_1700.inc - -musictest.o: musictest.s \ zp.inc hardware.inc \ appleII_intro.s font.s \ pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ @@ -58,7 +58,7 @@ musictest.o: musictest.s \ book.s book_40_48d.inc \ credits.s credits_bg.inc offsets_table.s \ dya_space_demo2.pt3 - ca65 -o musictest.o musictest.s -l musictest.lst + ca65 -o demosplash.o demosplash.s -l demosplash.lst ##### diff --git a/demosplash/credits_bg.png b/demosplash/credits_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..fac63d21859c81cb490435b55f68c4d43bf12e28 GIT binary patch literal 3694 zcmXw*c{G%L+{VX}om7$#k}XS7gi>V2GTE18ElaY`*oHys8Iq9@gKRMq8XioRVMv)_ zj4j!QgzU;lSxPBl-rw`S=l$cJIluc{=en=&=lb5~+$px!X2JrJ0uTs97;X-;2mdPI z(&Xa;zmDZSl@JI&PpqSJq`g&sH7 zLA4Bng(Zva!POR?lJ(_y28Eim-t7^aw%hY$4=p_UqrmX^*;$1DADy-~+2|1J`j-0E z4t*-2H!A&Z=8Y#WlkD$y(N`%_n}5!&CNI9;Cq_L*m;C(`jZlCJB%XeSwm09u*X2iq zi3ODP`pw}o{ZHkrpGIA=P&NEKIC1v$E#-~9DdOKhdy+P@BlE@mZAzmyF|ldM-%3kn7QcLS&gzlUzvn;n_?Bgg-1@e9(eUkC^tY9 zSZc&ipLLs;7YwOFAGi}fy=aM`t&BHxs?NKGl&3~~XK3l{5|^O3an3UA8^LzlY5m`l z_WU}(#eD=Z22mUNFd2t*L2lzPMFG36BKreHG9k#dfcb$m#Vhn7K_fBAat>i(ZfE_c z?kf~)ek-%ZCHrd{HCyNUsw+Rc2G-O_+PuqkMU;=dcSV-ID~??&AD@X`FC9E&meBP` z3Pm37mWZfd>BluH{ZQsoBay$WR*{-^B!dure#;(F(;?fJe`Tw{@et+f1(CH-no(knI!1)rNH^Irdh(T<1JKEjn}rR$5aZ(+X!8uK}ZYkQk-`l z#<`!Pv+$(RRWo}3_LB(hC86_%-r=Wn%(EG^OiwJv^U6ta;q?#k&^2PSe*Nz3f;iQ9 z;CSSH-tYnZ?mr(hn&UAA{T7rJ&f6a5)?PiZU9I`8o59{f6^Ql@;uzy=mK;SFg)i-dLn=T8e z2M$txg}%x8gF-O5pkaRx%R_V*We9;fioKG~LstX*H zn|L+ufv@6k{osm99jwZ#K2La>=k%S_#f2%;F(&nHH$~=N@SZxVV&-m}+VZGyjZ3t~ zf77a}$H_z!<-qAtFhx0IoKZs}oVYR-w@`wWj_MMwGX51maMH_YW`y4KyFHmU*kq|t zKbOvPHvEMp_SpB12K1Apm+?shd+kz<;)SC+euljzN%F-x-L9DGpKTdC!NsZ2V;dtMKfvXqQMgOkveMSOaU?k19^l+i6Q%$K*yn zyRMLSMkLHzt{8q}-ug`P+%@(oNmmDjC%0>SFKY8r6{SLqYfY>DqPK>L*0UrM>RNf} zLwx)pKl5Z>Px}H~B8Hq3(?8=f>jL>*9c&xaO0%VlgSR+eVgK9F2LdJ8f!4|$wqIP_ z6Y&WxiWD>FIB&gE2L1KW z8!zpM#1#X+L9TB316OmWU;0`UdfES}_z~nHy#3`OuY|UG(PT|r_>I#RyOWMbJzShd zJaSZR$Xx`dBYjkatf#vAn@INolDBTq1!&rG=5QrrX%iCpEl-NGu;%5z%pZAn3paBQ z1>$AhCTnk@vl|ly8#?-`Jae@Xe0S6G>eOl@W|F&Q`XxUNYaQKM8HkMS`)rxZv!lwK zjN@^=P0wQ#JE>5n%ue)u){9{39=KGh2=(tt7h?&(&wU=D$t#Yo)py0~L6U(`bam=XkG5nfFc?o_Fa~SP^R9$%*^G!(K;B9gyGgs!iKuO7uIz ziWi%k%z$ZnWB~+)tdI{kVJMKH5eGBoUQk8dx9@6s5QLB%!A7E?o)s|8uOq~X z$CYnJkl$cE{1+3`e)(TKnWaQ;Ps@LZ?R4;#IfX02ve4QE*_{?L%H+TYgpZ~&I^O6l z`;;D^+kMi4 ztwfHhZ+zh3njq!W%QJWbW{#b>)=w9b5y0i}j2iVVKQul3F8}0ks~KJWZ{Rj3j}+(o zh=DF`gPXMYnL4S{H<+6)o44VjBh{&&1IQ;G6UCz2x$#$Pwf{VPdtl%Uwf~^KJer`G zudyMagp!sDpgiNTx#ZKi$d^UW6+*dOwpAsYew9nx!0~3to1~)N@{f~6(kSGdoOMEK z%dPC(Yo$oRgO3bm=9TYIuRp}Jf8Xodj6Y+3Ykz#TBxzrL%a6cbHGYD7F2v^1$>cEP zyDfeh0^xWN0EODZq0s;TA_5;xnemyI&FMzcj9U&S!;i2hVAAItl~bR~r@JP}JMuLe zSBWS+y>}J&P=Ud)3)Rs3UFVDn4SPS71M9~W>7YO=@qiSZ4-NnmX4+p~n#^7~N%J%Xy z?hpO6ShDZA&V8zzvu{YQ_1=cz@9CPH!lI2VV=eq1BkamUOu7gDCaP%Nr@OKQ((X5R z4Y~7H$MZ98E6^cTn&ZtBje&A-`1Q}*6P|OuPpl?#610=tMbL(&$Uev(#b~@>+|5Up zc+lw4t7{)2yva24;`;IUndyniDXO33-X7#EDg5!r3^RWSgbQM8>1YBzSn)@pP~9Z5 zW<4YVia;Plvg&auWT-7C`I;&ci6n>NL~2xVMLxD<9GOf8;zb!x(xseDZ7Lq+*%68% z;HVR+G?D{!)5?|}marK?AdqY)o}n8W37d^H;0(l`)^BL=S?K*7Ok9mg(JUc*&eJQ2 z=J7Zou7(!hWzzVVQ2rv|br}LIFp1>@vB5 z!Yb`&yjo_z+6S3I4B!mJkWx=X2}a}<71uz6K8BK0Y?1f`GJzm6WQ*%S+rB4|-_yW= zATx*otbn+vs0c|Jq0}-lSOhaE3LKfm6y&=o3N;(cq%fIGKm!a2GJ_bv8HmLO_i(-Y zCd7Jj83i24&C6m76x{oMJJvFpwGYq%8el+>8N>k2Ks-ce6H3UeqL$`5Caa!>n{F8z z8XzvPSPN{x8KC=L8ucJEhyk2|*fX4qhEPpNLDC-KOsJ}amp%au9F0K+r2x(V9iRaQ z1erk$;0(m>0DT8O+;E z%}HT4gLy&Spg~Z|f1C*fKm!a2GJ_bv8Hm~VA@V>zi&n=N9b%8Nz;1xLL4%+az!_Nm zM`OALWCk(75s1Zp8sJuf?RN6XJ1t<5z;1xLL4%+az!{(eG{Ar$Gl&74fp};-jks3F zS{ndc2NntJ2B;e}2ucB*0Xjef3W)K5712LP;Mt`+41n&TUsJTl71R{9kzl#G>P$U6v@L3DY$BxWkr|6xIH!_h%i=>uNYm&5<{eCR)(pHXOv4qVTLsn`5OF z|ML8kAG6jbj*&BS!^TVP$$W?_&&S04B6WRN73t Date: Sat, 2 Nov 2019 21:17:42 -0400 Subject: [PATCH 12/22] ds: working on credits --- demosplash/credits.s | 117 +++++++++++++++++++++++++++++++++++++++++-- demosplash/font.s | 10 ++-- demosplash/zp.inc | 4 ++ 3 files changed, 123 insertions(+), 8 deletions(-) diff --git a/demosplash/credits.s b/demosplash/credits.s index 41991998..23154956 100644 --- a/demosplash/credits.s +++ b/demosplash/credits.s @@ -17,6 +17,12 @@ credits: lda #0 sta DRAW_PAGE + sta FRAME + + lda #credits_text + sta CREDITS_POINTERH ;================== ; setup graphics @@ -136,14 +142,21 @@ credits_loop: ; -696 -- move+draw 4*(16+26+6+126) = 696 ; -10 -- keypress ; -12 -- call/return of draw code + ; -377 -- do_words ;======= - ; 3250 + ; 2873 pad_time: ; we erase, then draw ; doing a blanket erase of all 128 lines would cost 3459 cycles! + ;========================= + ; do words + ;========================= + + jsr draw_credits + ;========================= ; ERASE ;========================= @@ -311,10 +324,12 @@ pad_time: ; WAIT for VBLANK to finish ;============================ - ; Try X=71 Y=9 cycles=3250 + ; Try X=7 Y=70 cycles=2871 R2 - ldy #9 ; 2 -tloop1: ldx #71 ; 2 + nop + + ldy #70 ; 2 +tloop1: ldx #7 ; 2 tloop2: dex ; 2 bne tloop2 ; 2nt/3 dey ; 2 @@ -400,3 +415,97 @@ red_x: .byte $10 yellow_x: .byte $20 green_x: .byte $30 blue_x: .byte $40 + + ;================================= + ; draw credits + ;================================= + ; credits pointer +draw_credits: + inc FRAME ; 5 + lda FRAME ; 3 + and #$f ; 2 + beq credits_handle_next ; 3 +credits_long_delay: + ; -1 +credits_skip: + +credits_short_delay: + + rts + + +credits_handle_next: + ldy #0 ; 2 + lda (CREDITS_POINTERL),Y ; 5+ + cmp #$ff ; 2 + beq credits_skip ; 3 + ; -1 + cmp #'@' ; 2 + bcs credits_put_char ; bge ; 3 + +credits_check_xy: + ; -1 + sta CREDITS_Y + iny + lda (CREDITS_POINTERL),Y + sta CREDITS_X + iny + lda (CREDITS_POINTERL),Y + sta colors_hi + iny + lda (CREDITS_POINTERL),Y + sta colors_hi+1 + iny + lda (CREDITS_POINTERL),Y + sta colors_lo + iny + lda (CREDITS_POINTERL),Y + sta colors_lo+1 + + iny + clc + tya + adc CREDITS_POINTERL + sta CREDITS_POINTERL + lda #0 + adc CREDITS_POINTERH + sta CREDITS_POINTERH + + jmp credits_short_delay + +credits_put_char: + ldx CREDITS_X ; 2 + ldy CREDITS_Y ; 3 + jsr put_char ; 6+365 + + clc + lda CREDITS_X + adc #4 + sta CREDITS_X + + clc + lda #1 + adc CREDITS_POINTERL + sta CREDITS_POINTERL + lda #0 + adc CREDITS_POINTERH + sta CREDITS_POINTERH + +draw_credits_end: + rts ; 6 + +credits_text: +.byte 0,10, $C4,$CF,$FC,$4C, 'C','O','D','E','[' ; "CODE:" +.byte 4,8, $C4,$CF,$FC,$4C, 'D','E','A','T','E','R' ; "DEATER" +.byte '@','@' ; time pad +.byte 0,10, $00,$00,$00,$00, 'C','O','D','E','[' ; "CODE:" +.byte 4,8, $00,$00,$00,$00, 'D','E','A','T','E','R' ; "DEATER" + +.byte 0,8, $C4,$CF,$FC,$4C, 'M','U','S','I','C','[' ; "MUSIC:" +.byte 4,14, $C4,$CF,$FC,$4C, 'D','Y','A' ; "DYA" +.byte '@','@' ; time pad +.byte 0,8, $00,$00,$00,$00, 'M','U','S','I','C','[' ; "MUSIC:" +.byte 4,14, $00,$00,$00,$00, 'D','Y','A' ; "DYA" + + +.byte 255 ; done diff --git a/demosplash/font.s b/demosplash/font.s index 5ebc5a17..ab91f699 100644 --- a/demosplash/font.s +++ b/demosplash/font.s @@ -205,16 +205,17 @@ font_high: .byte $00,$00,$00,$00,$00,$00,$00,$00 ; X ;H0H ** ** ** ** ** -;L0H ** ** ** -;H0L ** ** ** +;L0H ** ** ** ** +;H0L ** ** ** ** ;L0L ** ** ** ** ;H1H ** ** -;L1H ** ** -;H1L ** ** +;L1H ** ** ** +;H1L ** ** ** ;L1L ** ** ** ** .byte $00,$00,$00,$00,$00,$00,$00,$00 ; Y .byte $00,$00,$00,$00,$00,$00,$00,$00 ; Z +.byte $00,$0f,$00,$00,$0f,$00,$00,$00 ; : ([) @@ -252,3 +253,4 @@ font_low: ; 2 pages later .byte $00,$00,$00,$00,$00,$00,$00,$00 ; Y .byte $00,$00,$00,$00,$00,$00,$00,$00 ; Z +.byte $00,$f0,$00,$00,$f0,$00,$00,$00 ; : ([) diff --git a/demosplash/zp.inc b/demosplash/zp.inc index 9dc547a8..41d492bb 100644 --- a/demosplash/zp.inc +++ b/demosplash/zp.inc @@ -158,14 +158,18 @@ LASER_OUT = $DB ; 2+ RASTER_X = $DB ; rasters GUN_CHARGE = $DC ; 2+ +CREDITS_POINTERL= $DC ; credits MONSTER_AI = $DD ; C1 underwater ACTION_COUNT = $DD ; C4 +CREDITS_POINTERH= $DD ; credits BG_BEAST = $DE ; C1 ACTION_TRIGGERED= $DE ; C4 +CREDITS_X = $DE ; credits ON_ELEVATOR = $DF ; ALL +CREDITS_Y = $DF ; credits LEFT_LIMIT = $E0 ; ALL RIGHT_LIMIT = $E1 ; ALL From db4c8a655a80918514e0b76f726c46488fdfc152 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 22:30:51 -0400 Subject: [PATCH 13/22] ds: credits cycle count good --- demosplash/credits.s | 155 ++++++++++++++++++++++++++++++------------- 1 file changed, 109 insertions(+), 46 deletions(-) diff --git a/demosplash/credits.s b/demosplash/credits.s index 23154956..6f372946 100644 --- a/demosplash/credits.s +++ b/demosplash/credits.s @@ -142,9 +142,9 @@ credits_loop: ; -696 -- move+draw 4*(16+26+6+126) = 696 ; -10 -- keypress ; -12 -- call/return of draw code - ; -377 -- do_words + ; -446 -- do_words ;======= - ; 2873 + ; 2804 pad_time: @@ -155,7 +155,7 @@ pad_time: ; do words ;========================= - jsr draw_credits + jsr draw_credits ; 6+440 ;========================= ; ERASE @@ -324,12 +324,12 @@ pad_time: ; WAIT for VBLANK to finish ;============================ - ; Try X=7 Y=70 cycles=2871 R2 - + ; Try X=61 Y=9 cycles=2800 R4 + nop nop - ldy #70 ; 2 -tloop1: ldx #7 ; 2 + ldy #9 ; 2 +tloop1: ldx #61 ; 2 tloop2: dex ; 2 bne tloop2 ; 2nt/3 dey ; 2 @@ -416,84 +416,129 @@ yellow_x: .byte $20 green_x: .byte $30 blue_x: .byte $40 + ;================================= ; draw credits ;================================= ; credits pointer + ; + ; noframe: 13 = 13 (need 427) +12 + ; end: 13+12= 25 (need 415) +83 + ; newchar: 13+12+4+79 = 108 (need 333) +332 + ; putchar: 13+12+4+377+28+6 = 440 + draw_credits: inc FRAME ; 5 lda FRAME ; 3 and #$f ; 2 beq credits_handle_next ; 3 + ;==== + ; 13 credits_long_delay: ; -1 + ; 12+1 = 13 cycles + + lda TEMP ; 3 + lda TEMP ; 3 + lda TEMP ; 3 + nop ; 2 + nop ; 2 + credits_skip: + ; 83 cycles + lda #56 ; 2 + jsr delay_a ; delay 25+a (81) credits_short_delay: + ; 332 cycles-6 = 326 - rts + ; 83 cycles + lda #56 ; 2 + jsr delay_a ; delay 25+a (81) + + ; 243 cycles + lda #216 ; 2 + jsr delay_a ; delay 25+a (241) + + rts ; 6 credits_handle_next: ldy #0 ; 2 - lda (CREDITS_POINTERL),Y ; 5+ + lda (CREDITS_POINTERL),Y ; 5 cmp #$ff ; 2 beq credits_skip ; 3 + ;=== + ; 12 + ; -1 cmp #'@' ; 2 bcs credits_put_char ; bge ; 3 + ;==== + ; 4 credits_check_xy: ; -1 - sta CREDITS_Y - iny - lda (CREDITS_POINTERL),Y - sta CREDITS_X - iny - lda (CREDITS_POINTERL),Y - sta colors_hi - iny - lda (CREDITS_POINTERL),Y - sta colors_hi+1 - iny - lda (CREDITS_POINTERL),Y - sta colors_lo - iny - lda (CREDITS_POINTERL),Y - sta colors_lo+1 + sta CREDITS_Y ; 3 + iny ; 2 + lda (CREDITS_POINTERL),Y ; 5 + sta CREDITS_X ; 3 + iny ; 2 + ;==== + ; 14 - iny - clc - tya - adc CREDITS_POINTERL - sta CREDITS_POINTERL - lda #0 - adc CREDITS_POINTERH - sta CREDITS_POINTERH + lda (CREDITS_POINTERL),Y ; 5 + sta colors_hi ; 4 + iny ; 2 + lda (CREDITS_POINTERL),Y ; 5 + sta colors_hi+1 ; 4 + iny ; 2 + lda (CREDITS_POINTERL),Y ; 5 + sta colors_lo ; 4 + iny ; 2 + lda (CREDITS_POINTERL),Y ; 5 + sta colors_lo+1 ; 4 + iny ; 2 + ;=== + ; 44 - jmp credits_short_delay + clc ; 2 + tya ; 2 + adc CREDITS_POINTERL ; 3 + sta CREDITS_POINTERL ; 3 + lda #0 ; 2 + adc CREDITS_POINTERH ; 3 + sta CREDITS_POINTERH ; 3 + jmp credits_short_delay ; 3 + ;==== + ; 21 credits_put_char: - ldx CREDITS_X ; 2 + ldx CREDITS_X ; 3 ldy CREDITS_Y ; 3 jsr put_char ; 6+365 + ;====== + ; 377 - clc - lda CREDITS_X - adc #4 - sta CREDITS_X + clc ; 2 + lda CREDITS_X ; 3 + adc #4 ; 2 + sta CREDITS_X ; 3 - clc - lda #1 - adc CREDITS_POINTERL - sta CREDITS_POINTERL - lda #0 - adc CREDITS_POINTERH - sta CREDITS_POINTERH + clc ; 2 + lda #1 ; 2 + adc CREDITS_POINTERL ; 3 + sta CREDITS_POINTERL ; 3 + lda #0 ; 2 + adc CREDITS_POINTERH ; 3 + sta CREDITS_POINTERH ; 3 + ;===== + ; 28 draw_credits_end: rts ; 6 +.align $100 credits_text: .byte 0,10, $C4,$CF,$FC,$4C, 'C','O','D','E','[' ; "CODE:" .byte 4,8, $C4,$CF,$FC,$4C, 'D','E','A','T','E','R' ; "DEATER" @@ -507,5 +552,23 @@ credits_text: .byte 0,8, $00,$00,$00,$00, 'M','U','S','I','C','[' ; "MUSIC:" .byte 4,14, $00,$00,$00,$00, 'D','Y','A' ; "DYA" +.byte 0,8, $C4,$CF,$FC,$4C, 'M','A','G','I','C','[' ; "MAGIC:" +.byte 4,8, $C4,$CF,$FC,$4C, 'Q','K','U','M','B','A' ; "QKUMBA" +.byte '@','@' ; time pad +.byte 0,8, $00,$00,$00,$00, 'M','A','G','I','C','[' ; "MAGIC:" +.byte 4,8, $00,$00,$00,$00, 'Q','K','U','M','B','A' ; "QKUMBA" +.byte 0,8, $C4,$CF,$FC,$4C, 'T','H','A','N','K','S' ; "THANKS" +.byte 4,4, $C4,$CF,$FC,$4C, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" +.byte '@' ; time pad +.byte 0,8, $00,$00,$00,$00, 'T','H','A','N','K','S' ; "THANKS" +.byte 4,4, $00,$00,$00,$00, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" + + +.byte 0,10, $C4,$CF,$FC,$4C, 'A','@','V','M','W' ; "A VMW" +.byte 4,0, $C4,$CF,$FC,$4C, 'P','R','O','D','U','C','T','I','O','N' + ; "PRODUCTION" .byte 255 ; done +credits_text_end: + +.assert >credits_text = >(credits_text_end-1), error, "credits_text crosses page" From d3ee164f148a60db3862427b9bc1bceb7fc5db6e Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 23:07:17 -0400 Subject: [PATCH 14/22] ds: font: all chars now --- demosplash/font.s | 69 ++++++++++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 34 deletions(-) diff --git a/demosplash/font.s b/demosplash/font.s index ab91f699..dbb122c1 100644 --- a/demosplash/font.s +++ b/demosplash/font.s @@ -165,12 +165,12 @@ font_high: ;H1L ** ** ** ** ** ** ** ** ** ** ;L1L ** ** ** ** ** ** ** ** ** ** ** ** ** -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; G -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; H -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; I -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; J -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; K -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; L +.byte $f0,$0f,$0f,$ff,$00,$ff,$00,$00 ; G +.byte $ff,$00,$ff,$ff,$0f,$ff,$00,$00 ; H +.byte $0f,$ff,$0f,$00,$ff,$00,$00,$00 ; I +.byte $00,$00,$ff,$f0,$00,$ff,$00,$00 ; J +.byte $ff,$00,$ff,$ff,$0f,$f0,$00,$00 ; K +.byte $ff,$00,$00,$ff,$00,$00,$00,$00 ; L ;H0H ** ** ** ** ** ** ** ** ** ** ;L0H ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** @@ -181,11 +181,11 @@ font_high: ;H1L ** ** ** ** ** ** ** ** ** ** ** ** ** ;L1L ** ** ** ** ** ** ** ** ** ** -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; M -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; N +.byte $ff,$f0,$ff,$ff,$0f,$ff,$00,$00 ; M +.byte $ff,$0f,$f0,$ff,$00,$ff,$00,$00 ; N .byte $f0,$0f,$f0,$ff,$f0,$ff,$00,$00 ; O -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; P -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; Q +.byte $ff,$0f,$f0,$ff,$0f,$00,$00,$00 ; P +.byte $f0,$0f,$f0,$ff,$f0,$ff,$00,$00 ; Q .byte $ff,$0f,$f0,$ff,$0f,$f0,$00,$00 ; R ;H0H ** ** ** ** ** ** ** ** ** ** ** ** ** @@ -197,12 +197,13 @@ font_high: ;H1L ** ** ** ** ** ** ** ** ** ** ** ;L1L ** ** ** ** ** ** ** ** ** -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; S +.byte $f0,$0f,$0f,$00,$0f,$ff,$00,$00 ; S .byte $0f,$ff,$0f,$00,$ff,$00,$00,$00 ; T -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; U +.byte $ff,$00,$ff,$ff,$f0,$ff,$00,$00 ; U .byte $ff,$00,$ff,$0f,$f0,$0f,$00,$00 ; V -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; W -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; X +.byte $ff,$00,$ff,$ff,$f0,$ff,$00,$00 ; W +.byte $ff,$00,$ff,$f0,$0f,$f0,$00,$00 ; X + ;H0H ** ** ** ** ** ;L0H ** ** ** ** @@ -213,9 +214,9 @@ font_high: ;H1L ** ** ** ;L1L ** ** ** ** -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; Y -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; Z -.byte $00,$0f,$00,$00,$0f,$00,$00,$00 ; : ([) +.byte $ff,$00,$ff,$00,$ff,$00,$00,$00 ; Y +.byte $0f,$0f,$ff,$f0,$00,$00,$00,$00 ; Z +.byte $00,$f0,$00,$00,$f0,$00,$00,$00 ; : ([) @@ -230,27 +231,27 @@ font_low: ; 2 pages later .byte $ff,$ff,$0f,$ff,$f0,$f0,$00,$00 ; E .byte $ff,$ff,$0f,$ff,$00,$00,$00,$00 ; F -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; G -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; H -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; I -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; J -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; K -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; L +.byte $ff,$00,$f0,$0f,$f0,$ff,$00,$00 ; G +.byte $ff,$f0,$ff,$ff,$00,$ff,$00,$00 ; H +.byte $00,$ff,$00,$f0,$ff,$f0,$00,$00 ; I +.byte $00,$00,$ff,$00,$f0,$0f,$00,$00 ; J +.byte $ff,$f0,$0f,$ff,$00,$ff,$00,$00 ; K +.byte $ff,$00,$00,$ff,$f0,$f0,$00,$00 ; L -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; M -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; N +.byte $ff,$ff,$ff,$ff,$00,$ff,$00,$00 ; M +.byte $ff,$0f,$ff,$ff,$00,$ff,$00,$00 ; N .byte $ff,$0f,$ff,$0f,$f0,$0f,$00,$00 ; O -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; P -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; Q +.byte $ff,$f0,$ff,$ff,$00,$00,$00,$00 ; P +.byte $ff,$0f,$ff,$0f,$f0,$ff,$00,$00 ; Q .byte $ff,$ff,$0f,$ff,$00,$ff,$00,$00 ; R -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; S +.byte $ff,$f0,$00,$f0,$f0,$0f,$00,$00 ; S .byte $00,$ff,$00,$00,$ff,$00,$00,$00 ; T -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; U +.byte $ff,$00,$ff,$0f,$f0,$0f,$00,$00 ; U .byte $ff,$00,$ff,$0f,$ff,$0f,$00,$00 ; V -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; W -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; X +.byte $ff,$00,$ff,$ff,$0f,$ff,$00,$00 ; W +.byte $0f,$f0,$0f,$ff,$00,$ff,$00,$00 ; X -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; Y -.byte $00,$00,$00,$00,$00,$00,$00,$00 ; Z -.byte $00,$f0,$00,$00,$f0,$00,$00,$00 ; : ([) +.byte $ff,$f0,$ff,$00,$ff,$00,$00,$00 ; Y +.byte $00,$f0,$0f,$ff,$f0,$f0,$00,$00 ; Z +.byte $00,$0f,$00,$00,$0f,$00,$00,$00 ; : ([) From fca6dce0260c9025b3d19a0c826e1b637a55c79b Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 23:16:50 -0400 Subject: [PATCH 15/22] ds: credits: have text more or less working --- demosplash/credits.s | 47 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/demosplash/credits.s b/demosplash/credits.s index 6f372946..c4321dc1 100644 --- a/demosplash/credits.s +++ b/demosplash/credits.s @@ -30,6 +30,33 @@ credits: jsr create_update_type1 jsr setup_rasterbars + ; change to page0/page0/page1/page1 for first 32 lines + ; 0101010101010101010101010101010101010101 + ; 1100110011001100110011001100110011001100 + ; | *| *| *| *--------| *| *| *| * + ; 0 34 78 12 5 4 78 12 56 9 + ; 11 1 2 22 33 33 3 + lda #$54 + sta $9001+(49*3) + sta $9001+(49*7) + sta $9001+(49*11) + sta $9001+(49*15) + sta $9001+(49*27) + sta $9001+(49*31) + sta $9001+(49*35) + sta $9001+(49*39) + + lda #$55 + sta $9001+(49*0) + sta $9001+(49*4) + sta $9001+(49*8) + sta $9001+(49*12) + sta $9001+(49*24) + sta $9001+(49*28) + sta $9001+(49*32) + sta $9001+(49*36) + + ;============================= ; Load graphic page0 @@ -71,7 +98,7 @@ credits: jsr gr_copy_to_current -; ; GR part + ; GR part bit PAGE0 ; jsr wait_until_keypressed @@ -541,32 +568,32 @@ draw_credits_end: .align $100 credits_text: .byte 0,10, $C4,$CF,$FC,$4C, 'C','O','D','E','[' ; "CODE:" -.byte 4,8, $C4,$CF,$FC,$4C, 'D','E','A','T','E','R' ; "DEATER" +.byte 6,8, $C4,$CF,$FC,$4C, 'D','E','A','T','E','R' ; "DEATER" .byte '@','@' ; time pad .byte 0,10, $00,$00,$00,$00, 'C','O','D','E','[' ; "CODE:" -.byte 4,8, $00,$00,$00,$00, 'D','E','A','T','E','R' ; "DEATER" +.byte 6,8, $00,$00,$00,$00, 'D','E','A','T','E','R' ; "DEATER" .byte 0,8, $C4,$CF,$FC,$4C, 'M','U','S','I','C','[' ; "MUSIC:" -.byte 4,14, $C4,$CF,$FC,$4C, 'D','Y','A' ; "DYA" +.byte 6,14, $C4,$CF,$FC,$4C, 'D','Y','A' ; "DYA" .byte '@','@' ; time pad .byte 0,8, $00,$00,$00,$00, 'M','U','S','I','C','[' ; "MUSIC:" -.byte 4,14, $00,$00,$00,$00, 'D','Y','A' ; "DYA" +.byte 6,14, $00,$00,$00,$00, 'D','Y','A' ; "DYA" .byte 0,8, $C4,$CF,$FC,$4C, 'M','A','G','I','C','[' ; "MAGIC:" -.byte 4,8, $C4,$CF,$FC,$4C, 'Q','K','U','M','B','A' ; "QKUMBA" +.byte 6,8, $C4,$CF,$FC,$4C, 'Q','K','U','M','B','A' ; "QKUMBA" .byte '@','@' ; time pad .byte 0,8, $00,$00,$00,$00, 'M','A','G','I','C','[' ; "MAGIC:" -.byte 4,8, $00,$00,$00,$00, 'Q','K','U','M','B','A' ; "QKUMBA" +.byte 6,8, $00,$00,$00,$00, 'Q','K','U','M','B','A' ; "QKUMBA" .byte 0,8, $C4,$CF,$FC,$4C, 'T','H','A','N','K','S' ; "THANKS" -.byte 4,4, $C4,$CF,$FC,$4C, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" +.byte 6,4, $C4,$CF,$FC,$4C, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" .byte '@' ; time pad .byte 0,8, $00,$00,$00,$00, 'T','H','A','N','K','S' ; "THANKS" -.byte 4,4, $00,$00,$00,$00, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" +.byte 6,4, $00,$00,$00,$00, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" .byte 0,10, $C4,$CF,$FC,$4C, 'A','@','V','M','W' ; "A VMW" -.byte 4,0, $C4,$CF,$FC,$4C, 'P','R','O','D','U','C','T','I','O','N' +.byte 6,0, $C4,$CF,$FC,$4C, 'P','R','O','D','U','C','T','I','O','N' ; "PRODUCTION" .byte 255 ; done credits_text_end: From d2fe97bceda98f39aae9823ea6ce4d261646453f Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 23:22:16 -0400 Subject: [PATCH 16/22] ds: move raster bars down so not to interfere with text --- demosplash/create_update_type1.s | 6 +++--- demosplash/generator/offsets.c | 3 ++- demosplash/offsets_table.s | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/demosplash/create_update_type1.s b/demosplash/create_update_type1.s index 859de506..84fbabc8 100644 --- a/demosplash/create_update_type1.s +++ b/demosplash/create_update_type1.s @@ -50,10 +50,10 @@ create_update_inner_loop: rts -BARS_START = 38 +BARS_START = 46 ;=========================== - ; from 32 to 160? + ; from 40 to 168? setup_rasterbars: lda #4 ; which page @@ -109,7 +109,7 @@ setup_rasterbars_inner_loop: sta RASTER_PAGE inx - cpx #176 + cpx #184 bne setup_rasterbars_outer_loop rts diff --git a/demosplash/generator/offsets.c b/demosplash/generator/offsets.c index 41bf271e..5bbc97fe 100644 --- a/demosplash/generator/offsets.c +++ b/demosplash/generator/offsets.c @@ -3,7 +3,8 @@ #define NUMBER 128 //#define START 32 -#define START 40 +//#define START 40 +#define START 48 int main(int argc, char **argv) { diff --git a/demosplash/offsets_table.s b/demosplash/offsets_table.s index fa1baaec..8485bb04 100644 --- a/demosplash/offsets_table.s +++ b/demosplash/offsets_table.s @@ -1,5 +1,4 @@ y_lookup_h: -.byte >($97AC),>($97DD),>($980E),>($983F),>($9870),>($98A1),>($98D2),>($9903) .byte >($9934),>($9965),>($9996),>($99C7),>($99F8),>($9A29),>($9A5A),>($9A8B) .byte >($9ABC),>($9AED),>($9B1E),>($9B4F),>($9B80),>($9BB1),>($9BE2),>($9C13) .byte >($9C44),>($9C75),>($9CA6),>($9CD7),>($9D08),>($9D39),>($9D6A),>($9D9B) @@ -15,8 +14,8 @@ y_lookup_h: .byte >($AB94),>($ABC5),>($ABF6),>($AC27),>($AC58),>($AC89),>($ACBA),>($ACEB) .byte >($AD1C),>($AD4D),>($AD7E),>($ADAF),>($ADE0),>($AE11),>($AE42),>($AE73) .byte >($AEA4),>($AED5),>($AF06),>($AF37),>($AF68),>($AF99),>($AFCA),>($AFFB) +.byte >($B02C),>($B05D),>($B08E),>($B0BF),>($B0F0),>($B121),>($B152),>($B183) y_lookup_l: -.byte <($97AC),<($97DD),<($980E),<($983F),<($9870),<($98A1),<($98D2),<($9903) .byte <($9934),<($9965),<($9996),<($99C7),<($99F8),<($9A29),<($9A5A),<($9A8B) .byte <($9ABC),<($9AED),<($9B1E),<($9B4F),<($9B80),<($9BB1),<($9BE2),<($9C13) .byte <($9C44),<($9C75),<($9CA6),<($9CD7),<($9D08),<($9D39),<($9D6A),<($9D9B) @@ -32,3 +31,4 @@ y_lookup_l: .byte <($AB94),<($ABC5),<($ABF6),<($AC27),<($AC58),<($AC89),<($ACBA),<($ACEB) .byte <($AD1C),<($AD4D),<($AD7E),<($ADAF),<($ADE0),<($AE11),<($AE42),<($AE73) .byte <($AEA4),<($AED5),<($AF06),<($AF37),<($AF68),<($AF99),<($AFCA),<($AFFB) +.byte <($B02C),<($B05D),<($B08E),<($B0BF),<($B0F0),<($B121),<($B152),<($B183) From bdbb01a45f731f04ed0a992b725e84c03d681043 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 2 Nov 2019 23:26:52 -0400 Subject: [PATCH 17/22] ds: font: fine tune some letters still not happy with 'M' but I guess it's more or less legible --- demosplash/font.s | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/demosplash/font.s b/demosplash/font.s index dbb122c1..4824b7c2 100644 --- a/demosplash/font.s +++ b/demosplash/font.s @@ -172,20 +172,20 @@ font_high: .byte $ff,$00,$ff,$ff,$0f,$f0,$00,$00 ; K .byte $ff,$00,$00,$ff,$00,$00,$00,$00 ; L -;H0H ** ** ** ** ** ** ** ** ** ** -;L0H ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** +;H0H ** ** ** ** ** ** ** ** ** +;L0H ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ;H0L ** ** ** ** ** ** ** ** ** ** ** ** ** ;L0L ** ** ** ** ** ** ** ** ** ** ** ** ** ** ;H1H ** ** ** ** ** ** ** ** ** ** ** ** ** ;L1H ** ** ** ** ** ** ** ** ** ** ** -;H1L ** ** ** ** ** ** ** ** ** ** ** ** ** -;L1L ** ** ** ** ** ** ** ** ** ** +;H1L ** ** ** ** ** ** ** ** ** ** ** +;L1L ** ** ** ** ** ** ** ** ** -.byte $ff,$f0,$ff,$ff,$0f,$ff,$00,$00 ; M +.byte $ff,$f0,$f0,$ff,$0f,$ff,$00,$00 ; M .byte $ff,$0f,$f0,$ff,$00,$ff,$00,$00 ; N .byte $f0,$0f,$f0,$ff,$f0,$ff,$00,$00 ; O .byte $ff,$0f,$f0,$ff,$0f,$00,$00,$00 ; P -.byte $f0,$0f,$f0,$ff,$f0,$ff,$00,$00 ; Q +.byte $f0,$0f,$f0,$0f,$f0,$0f,$00,$00 ; Q .byte $ff,$0f,$f0,$ff,$0f,$f0,$00,$00 ; R ;H0H ** ** ** ** ** ** ** ** ** ** ** ** ** @@ -238,11 +238,11 @@ font_low: ; 2 pages later .byte $ff,$f0,$0f,$ff,$00,$ff,$00,$00 ; K .byte $ff,$00,$00,$ff,$f0,$f0,$00,$00 ; L -.byte $ff,$ff,$ff,$ff,$00,$ff,$00,$00 ; M +.byte $ff,$ff,$f0,$ff,$00,$ff,$00,$00 ; M .byte $ff,$0f,$ff,$ff,$00,$ff,$00,$00 ; N .byte $ff,$0f,$ff,$0f,$f0,$0f,$00,$00 ; O .byte $ff,$f0,$ff,$ff,$00,$00,$00,$00 ; P -.byte $ff,$0f,$ff,$0f,$f0,$ff,$00,$00 ; Q +.byte $ff,$0f,$ff,$0f,$00,$ff,$00,$00 ; Q .byte $ff,$ff,$0f,$ff,$00,$ff,$00,$00 ; R .byte $ff,$f0,$00,$f0,$f0,$0f,$00,$00 ; S From f9bc90c9622f5fc5b17369bdc7ac72028c8c5478 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sun, 3 Nov 2019 00:22:20 -0400 Subject: [PATCH 18/22] ds: change the colors on the fonts --- demosplash/credits.s | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/demosplash/credits.s b/demosplash/credits.s index c4321dc1..d19db093 100644 --- a/demosplash/credits.s +++ b/demosplash/credits.s @@ -567,20 +567,20 @@ draw_credits_end: .align $100 credits_text: -.byte 0,10, $C4,$CF,$FC,$4C, 'C','O','D','E','[' ; "CODE:" -.byte 6,8, $C4,$CF,$FC,$4C, 'D','E','A','T','E','R' ; "DEATER" +.byte 0,10, $B1,$3F,$F3,$1B, 'C','O','D','E','[' ; "CODE:" +.byte 6,8, $B1,$3F,$F3,$1B, 'D','E','A','T','E','R' ; "DEATER" .byte '@','@' ; time pad .byte 0,10, $00,$00,$00,$00, 'C','O','D','E','[' ; "CODE:" -.byte 6,8, $00,$00,$00,$00, 'D','E','A','T','E','R' ; "DEATER" +.byte 6,8, $00,$00,$00,$00, 'D','E','A','T','E','R' ; "DEATER" -.byte 0,8, $C4,$CF,$FC,$4C, 'M','U','S','I','C','[' ; "MUSIC:" -.byte 6,14, $C4,$CF,$FC,$4C, 'D','Y','A' ; "DYA" +.byte 0,8, $D8,$9F,$F9,$8D, 'M','U','S','I','C','[' ; "MUSIC:" +.byte 6,14, $D8,$9F,$F9,$8D, 'D','Y','A' ; "DYA" .byte '@','@' ; time pad -.byte 0,8, $00,$00,$00,$00, 'M','U','S','I','C','[' ; "MUSIC:" +.byte 0,8, $00,$00,$00,$00, 'M','U','S','I','C','[' ; "MUSIC:" .byte 6,14, $00,$00,$00,$00, 'D','Y','A' ; "DYA" -.byte 0,8, $C4,$CF,$FC,$4C, 'M','A','G','I','C','[' ; "MAGIC:" -.byte 6,8, $C4,$CF,$FC,$4C, 'Q','K','U','M','B','A' ; "QKUMBA" +.byte 0,8, $72,$6F,$F6,$27, 'M','A','G','I','C','[' ; "MAGIC:" +.byte 6,8, $72,$6F,$F6,$27, 'Q','K','U','M','B','A' ; "QKUMBA" .byte '@','@' ; time pad .byte 0,8, $00,$00,$00,$00, 'M','A','G','I','C','[' ; "MAGIC:" .byte 6,8, $00,$00,$00,$00, 'Q','K','U','M','B','A' ; "QKUMBA" @@ -592,8 +592,8 @@ credits_text: .byte 6,4, $00,$00,$00,$00, 'F','R','O','G','Y','S','U','E' ; "FROGYSUE" -.byte 0,10, $C4,$CF,$FC,$4C, 'A','@','V','M','W' ; "A VMW" -.byte 6,0, $C4,$CF,$FC,$4C, 'P','R','O','D','U','C','T','I','O','N' +.byte 0,10, $75,$5F,$F5,$57, 'A','@','V','M','W' ; "A VMW" +.byte 6,0, $75,$5F,$F5,$57, 'P','R','O','D','U','C','T','I','O','N' ; "PRODUCTION" .byte 255 ; done credits_text_end: From 1dce4d689c7e46285fa77948d1ebbe12ac69eb4a Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sun, 3 Nov 2019 00:37:31 -0400 Subject: [PATCH 19/22] ds: can quit credits --- demosplash/credits.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/demosplash/credits.s b/demosplash/credits.s index d19db093..0ff34992 100644 --- a/demosplash/credits.s +++ b/demosplash/credits.s @@ -365,7 +365,8 @@ tloop2: dex ; 2 lda KEYPRESS ; 4 bpl cno_keypress ; 3 - jmp credits_loop + rts + cno_keypress: jmp credits_loop ; 3 From 28d0d81ad24bba36315b310a1472fc17e6226ab2 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sun, 3 Nov 2019 11:23:53 -0500 Subject: [PATCH 20/22] ds: more work on escape getting closer --- demosplash/Makefile | 4 +- demosplash/book.s | 3 - demosplash/create_update_type2.s | 143 +++++++++++++++++++++++++++++++ demosplash/demosplash.s | 8 +- demosplash/escape.s | 37 ++++---- demosplash/generator/Makefile | 10 ++- demosplash/generator/offsets2.c | 32 +++++++ 7 files changed, 210 insertions(+), 27 deletions(-) create mode 100644 demosplash/create_update_type2.s create mode 100644 demosplash/generator/offsets2.c diff --git a/demosplash/Makefile b/demosplash/Makefile index ec3823f0..c8e917e8 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -53,8 +53,8 @@ demosplash.o: demosplash.s \ pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ pt3_lib_play_frame.s pt3_lib_write_frame.s \ interrupt_handler.s \ - missing.s k_40_48d.inc \ - create_update_type1.s \ + missing.s k_40_48d.inc create_update_type1.s \ + escape.s create_update_type2.s offsets_table2.s \ book.s book_40_48d.inc \ credits.s credits_bg.inc offsets_table.s \ dya_space_demo2.pt3 diff --git a/demosplash/book.s b/demosplash/book.s index d23c20ea..bfc5059b 100644 --- a/demosplash/book.s +++ b/demosplash/book.s @@ -155,6 +155,3 @@ book_no_keypress: -.include "book_40_48d.inc" - - diff --git a/demosplash/create_update_type2.s b/demosplash/create_update_type2.s new file mode 100644 index 00000000..ed5525fd --- /dev/null +++ b/demosplash/create_update_type2.s @@ -0,0 +1,143 @@ + + ; Autogenerates code for Type2 (escape) + + ; First 9 (?) lines = text mode + ; + +UPDATE2_START = $9000 + +;DEFAULT_COLOR = $0 + +create_update_type2: + ldx #192 + lda #UPDATE2_START + sta OUTH + lda #another_scanline + sta INH +create_update2_outer_loop: + ldy #0 +create_update2_inner_loop: + lda (INL),Y + sta (OUTL),Y + iny + cpy #47 + bne create_update2_inner_loop + + ; toggle PAGE0/PAGE1 + txa + and #$1 ; ror? + clc + adc #$54 + ldy #1 + sta (OUTL),Y + + clc + lda #47 + adc OUTL + sta OUTL + lda OUTH + adc #0 + sta OUTH + + dex + bne create_update2_outer_loop + + ldy #0 + lda #$60 ; rts + sta (OUTL),Y + + rts + +;BARS_START = 46 + +.if 0 + ;=========================== + ; from 40 to 168? +setup_rasterbars: + + lda #4 ; which page + sta RASTER_PAGE + + ldx #BARS_START + lda #<(UPDATE_START+(BARS_START*49)) + sta OUTL + lda #>(UPDATE_START+(BARS_START*49)) + sta OUTH +setup_rasterbars_outer_loop: + ldy #6 + lda #13 + sta RASTER_X +setup_rasterbars_inner_loop: + txa + pha + inx + txa ; start one earlier + lsr + lsr + and #$fe + tax + clc + lda gr_offsets,X + adc RASTER_X + inc RASTER_X + sta (OUTL),Y + iny + clc + lda gr_offsets+1,X + adc RASTER_PAGE + sta (OUTL),Y + iny + iny + pla + tax + + cpy #48 + bne setup_rasterbars_inner_loop + + clc + lda #49 + adc OUTL + sta OUTL + lda OUTH + adc #0 + sta OUTH + + + lda RASTER_PAGE + eor #$04 + sta RASTER_PAGE + + inx + cpx #184 + bne setup_rasterbars_outer_loop + + rts +.endif + +another_scanline: +.byte $2C,$54,$C0 ; bit PAGE0 ; 4 +.byte $A2,$01 ;smc018: ldx #$01 ; 2 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A9,$00 ; lda #$00 ; 2 +.byte $9D,$00,$02 ; sta $c00,X ; 5 +.byte $A2,$00 ; ldx #$00 ; 2 +.byte $A5,$85 ; lda ZERO ; 3 +.byte $9D,$00,$02 ; sta $c00,X ; 5 + ;========== ;=== + ; 47??? ; 65 + diff --git a/demosplash/demosplash.s b/demosplash/demosplash.s index 870a56e6..7fcd2860 100644 --- a/demosplash/demosplash.s +++ b/demosplash/demosplash.s @@ -133,7 +133,7 @@ frame_decode_loop: ; escape scene ;=========================== -; jsr escape + jsr escape ;=========================== ; book scene @@ -197,7 +197,7 @@ wait_until_keypressed: .include "starbase.s" ; escape -;.include "escape.s" +.include "escape.s" ; book .include "book.s" @@ -212,9 +212,13 @@ wait_until_keypressed: .include "interrupt_handler.s" .include "pt3_lib_play_frame.s" .include "pt3_lib_write_frame.s" + .include "create_update_type1.s" +.include "create_update_type2.s" ; Pictures (no need to align) +.include "earth.inc" +.include "book_40_48d.inc" .include "credits_bg.inc" diff --git a/demosplash/escape.s b/demosplash/escape.s index 1777e522..981108a7 100644 --- a/demosplash/escape.s +++ b/demosplash/escape.s @@ -5,11 +5,6 @@ ; by deater (Vince Weaver) -; TODO: -; end level after a certain number of points -; track score properly - - escape: ;=================== @@ -59,6 +54,13 @@ escape: sta ASTEROID_SPEED sta XPOS + ;================== + ; setup graphics + + jsr create_update_type2 +; jsr setup_rasterbars + + ;============================= ; Load graphic page0 @@ -107,8 +109,7 @@ escape: jsr move_and_print - -; ; GR part + ; GR part bit PAGE0 ;============================== @@ -165,13 +166,15 @@ loopRR: dex ; 2 sprites_display_loop: -.include "sprites_screen.s" + jsr $9000 +;.include "sprites_screen.s" ;====================================================== ; We have 4550 cycles in the vblank, use them wisely ;====================================================== ; 4550 -- VBLANK + ; -12 -- call to graphics code ;-1835 -- draw ship (131*14)+1 ; -829 -- erase ship (100*8)+(14*2)+1 ; -167 -- erase fire @@ -883,7 +886,7 @@ done_sparkle: -pad_time: +pad_time2: ;============================ @@ -1150,9 +1153,9 @@ keypress_done: sprite_line: sty TEMPY ; 3 - lda y_lookup_l,Y ; 4 + lda y_lookup2_l,Y ; 4 sta OUTL ; 3 - lda y_lookup_h,Y ; 4 + lda y_lookup2_h,Y ; 4 sta OUTH ; 3 ;======= ; 17 @@ -1224,9 +1227,9 @@ sprite_line: erase_line: sty TEMPY ; 3 - lda y_lookup_l,Y ; 4 + lda y_lookup2_l,Y ; 4 sta OUTL ; 3 - lda y_lookup_h,Y ; 4 + lda y_lookup2_h,Y ; 4 sta OUTH ; 3 ;======= ; 17 @@ -1274,9 +1277,9 @@ erase_line: fire_line: sty TEMPY ; 3 - lda y_lookup_l,Y ; 4 + lda y_lookup2_l,Y ; 4 sta OUTL ; 3 - lda y_lookup_h,Y ; 4 + lda y_lookup2_h,Y ; 4 sta OUTH ; 3 ;======= ; 17 @@ -1365,7 +1368,7 @@ erase_fire: .align $100 random_values: .incbin "random.data" -.include "sprites_table.s" +.include "offsets_table2.s" .include "text_print.s" .align $100 .include "gr_putsprite_fast.s" @@ -1373,8 +1376,6 @@ random_values: ;.assert >gr_offsets = >gr_offsets_done, error, "gr_offsets crosses page" .assert >escape_wait_loop = >(escape_wait_loop_end-1), error, "escape_wait_loop crosses page" -.include "earth.inc" - .align $100 ship_sprite: diff --git a/demosplash/generator/Makefile b/demosplash/generator/Makefile index a18a2e3f..2daff0c4 100644 --- a/demosplash/generator/Makefile +++ b/demosplash/generator/Makefile @@ -2,7 +2,7 @@ CC = gcc CFLAGS = -Wall -O2 LFLAGS = -all: creator offsets +all: creator offsets offsets2 creator: creator.o $(CC) -o creator creator.o $(LFLAGS) @@ -16,5 +16,11 @@ offsets: offsets.o offsets.o: offsets.c $(CC) $(CFLAGS) -c offsets.c +offsets2: offsets2.o + $(CC) -o offsets2 offsets2.o $(LFLAGS) + +offsets2.o: offsets2.c + $(CC) $(CFLAGS) -c offsets2.c + clean: - rm -f *.o creator offsets + rm -f *.o creator offsets offsets2 diff --git a/demosplash/generator/offsets2.c b/demosplash/generator/offsets2.c new file mode 100644 index 00000000..e0982183 --- /dev/null +++ b/demosplash/generator/offsets2.c @@ -0,0 +1,32 @@ +#include + +#define NUMBER 128 + +#define START 32 +//#define START 40 +//#define START 48 + +int main(int argc, char **argv) { + + int i; + + printf("y_lookup2_h:\n"); + + for(i=0;i(smc%3d+1)",i+START); + printf(">($%4X)",0x9000+(i+START)*47+4); + if (i%8!=7) printf(","); + else printf("\n"); + } + printf("y_lookup2_l:\n"); + for(i=0;i Date: Sun, 3 Nov 2019 21:58:21 -0500 Subject: [PATCH 21/22] ds: update sprites and first level of starbase --- demosplash/Makefile | 4 + demosplash/demosplash.s | 11 ++- demosplash/graphics/sprites/astronaut.inc | 92 +++++++++--------- demosplash/graphics/starbase/Makefile | 2 +- demosplash/graphics/starbase/jail.png | Bin 1665 -> 5158 bytes .../ootw_running-20190309-163912.piskel | 1 + demosplash/graphics/starbase/starbase.inc | 34 ++++++- demosplash/starbase.s | 2 +- demosplash/starbase_action.s | 23 ++--- 9 files changed, 103 insertions(+), 66 deletions(-) create mode 100644 demosplash/graphics/starbase/ootw_running-20190309-163912.piskel diff --git a/demosplash/Makefile b/demosplash/Makefile index c8e917e8..425e9024 100644 --- a/demosplash/Makefile +++ b/demosplash/Makefile @@ -53,7 +53,11 @@ demosplash.o: demosplash.s \ pt3_lib_init.s pt3_lib_core.s pt3_lib_mockingboard.s \ pt3_lib_play_frame.s pt3_lib_write_frame.s \ interrupt_handler.s \ + starbase.s \ + starbase_action.s \ missing.s k_40_48d.inc create_update_type1.s \ + graphics/starbase/starbase.inc \ + graphics/sprites/alien.inc graphics/sprites/astronaut.inc \ escape.s create_update_type2.s offsets_table2.s \ book.s book_40_48d.inc \ credits.s credits_bg.inc offsets_table.s \ diff --git a/demosplash/demosplash.s b/demosplash/demosplash.s index 7fcd2860..613cf116 100644 --- a/demosplash/demosplash.s +++ b/demosplash/demosplash.s @@ -127,13 +127,16 @@ frame_decode_loop: ; starbase scene ;=========================== -; jsr starbase + jsr starbase ;=========================== ; escape scene ;=========================== - jsr escape + nop + nop + nop +; jsr escape ;=========================== ; book scene @@ -170,7 +173,6 @@ wait_until_keypressed: ; Apple II intro .include "appleII_intro.s" -.include "appleII_40_96.inc" .align $100 .include "vapor_lock.s" @@ -197,7 +199,7 @@ wait_until_keypressed: .include "starbase.s" ; escape -.include "escape.s" +;.include "escape.s" ; book .include "book.s" @@ -217,6 +219,7 @@ wait_until_keypressed: .include "create_update_type2.s" ; Pictures (no need to align) +.include "appleII_40_96.inc" .include "earth.inc" .include "book_40_48d.inc" .include "credits_bg.inc" diff --git a/demosplash/graphics/sprites/astronaut.inc b/demosplash/graphics/sprites/astronaut.inc index 66be47b5..153d3d39 100644 --- a/demosplash/graphics/sprites/astronaut.inc +++ b/demosplash/graphics/sprites/astronaut.inc @@ -12,8 +12,8 @@ astro_stand: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -44,8 +44,8 @@ astro_walk_progression: astro_walk_left1: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ab,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -55,8 +55,8 @@ astro_walk_left1: astro_walk_left2: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -66,8 +66,8 @@ astro_walk_left2: astro_walk_left3: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -77,8 +77,8 @@ astro_walk_left3: astro_walk_left4: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -88,8 +88,8 @@ astro_walk_left4: astro_walk_left5: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$bb,$22,$aa,$aa .byte $fa,$aa,$22,$aa,$aa @@ -99,8 +99,8 @@ astro_walk_left5: astro_walk_left6: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$6a,$22,$aa,$aa @@ -110,8 +110,8 @@ astro_walk_left6: astro_walk_left7: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$2b,$aa,$aa .byte $aa,$6a,$22,$aa,$aa @@ -121,8 +121,8 @@ astro_walk_left7: astro_walk_left8: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$6a,$22,$aa,$aa @@ -132,8 +132,8 @@ astro_walk_left8: astro_walk_left9: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -143,8 +143,8 @@ astro_walk_left9: astro_walk_left10: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -286,8 +286,8 @@ astro_run_left9: kick1: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $bb,$ab,$22,$ba,$aa .byte $aa,$aa,$22,$aa,$aa @@ -303,8 +303,8 @@ kick1: shooting1: .byte 5,8 .byte $AA,$AA,$8A,$8A,$AA - .byte $AA,$AA,$bb,$88,$AA - .byte $0A,$0A,$AA,$2B,$AA + .byte $AA,$AA,$bb,$88,$8A + .byte $0A,$0A,$AA,$2B,$88 .byte $AA,$A0,$AB,$B2,$AA .byte $AA,$AA,$AA,$22,$AA .byte $AA,$AA,$AA,$22,$AA @@ -347,8 +347,8 @@ crouch1: .byte 3,8 .byte $aa,$aa,$aa .byte $8a,$8a,$aa - .byte $bb,$88,$aa - .byte $aa,$2b,$aa + .byte $bb,$88,$8a + .byte $aa,$2b,$88 .byte $aa,$bb,$aa .byte $aa,$bb,$aa .byte $22,$22,$aa @@ -359,8 +359,8 @@ crouch2: .byte $AA,$aa,$aa,$aa,$AA .byte $AA,$aa,$aa,$aa,$AA .byte $AA,$8a,$8a,$aa,$AA - .byte $AA,$bb,$88,$aa,$AA - .byte $AA,$aa,$2b,$2a,$AA + .byte $AA,$bb,$88,$8a,$AA + .byte $AA,$aa,$2b,$28,$AA .byte $AA,$aa,$bb,$22,$AA .byte $AA,$ba,$2b,$aa,$AA .byte $AA,$52,$f2,$f2,$AA @@ -477,8 +477,8 @@ astro_jump_progression: jump1: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -488,7 +488,7 @@ jump1: jump2: .byte 5,8 .byte $8a,$8a,$aa,$aa,$aa - .byte $bb,$88,$aa,$aa,$aa + .byte $bb,$88,$8a,$8a,$aa .byte $aa,$2b,$22,$aa,$aa .byte $aa,$22,$bb,$aa,$aa .byte $aa,$a2,$bb,$aa,$aa @@ -499,7 +499,7 @@ jump2: jump3: .byte 5,8 .byte $8a,$8a,$aa,$aa,$aa - .byte $bb,$88,$aa,$aa,$aa + .byte $bb,$88,$8a,$8a,$aa .byte $aa,$2b,$22,$aa,$aa .byte $aa,$22,$bb,$aa,$aa .byte $aa,$a2,$bb,$aa,$aa @@ -510,7 +510,7 @@ jump3: jump4: .byte 5,8 .byte $8a,$8a,$aa,$aa,$aa - .byte $bb,$88,$aa,$aa,$aa + .byte $bb,$88,$8a,$8a,$aa .byte $aa,$2b,$22,$aa,$aa .byte $aa,$22,$bb,$aa,$aa .byte $aa,$a2,$bb,$aa,$aa @@ -521,7 +521,7 @@ jump4: jump5: .byte 5,8 .byte $b8,$88,$aa,$aa,$aa - .byte $ab,$b8,$aa,$aa,$aa + .byte $ab,$b8,$8a,$8a,$aa .byte $ba,$b2,$2b,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -532,8 +532,8 @@ jump5: jump6: .byte 5,8 .byte $aa,$b8,$88,$aa,$aa - .byte $aa,$ab,$b8,$aa,$aa - .byte $ab,$ba,$b2,$aa,$aa + .byte $aa,$ab,$b8,$8a,$aa + .byte $ab,$ba,$b2,$aa,$a8 .byte $aa,$aa,$22,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$66,$22,$2a,$fa @@ -543,8 +543,8 @@ jump6: jump7: .byte 5,8 .byte $aa,$b8,$88,$aa,$aa - .byte $aa,$ab,$b8,$aa,$aa - .byte $aa,$aa,$b2,$aa,$aa + .byte $aa,$ab,$b8,$8a,$aa + .byte $aa,$aa,$b2,$a8,$aa .byte $ab,$ab,$22,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$66,$22,$2a,$fa @@ -554,8 +554,8 @@ jump7: jump8: .byte 5,8 .byte $aa,$8a,$8a,$aa,$aa - .byte $aa,$bb,$88,$aa,$aa - .byte $aa,$aa,$2b,$aa,$aa + .byte $aa,$bb,$88,$8a,$aa + .byte $aa,$aa,$2b,$88,$aa .byte $aa,$b2,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$2a,$22,$aa,$aa @@ -590,8 +590,8 @@ crouch_shooting: .byte $AA,$AA,$aa,$aa,$aa .byte $AA,$AA,$aa,$aa,$aa .byte $AA,$AA,$8a,$8a,$aa - .byte $AA,$AA,$bb,$88,$aa - .byte $0A,$0A,$aa,$2b,$2a + .byte $AA,$AA,$bb,$88,$8a + .byte $0A,$0A,$aa,$2b,$28 .byte $AA,$A0,$ba,$bb,$22 .byte $AA,$AA,$2a,$2b,$aa .byte $AA,$AA,$52,$f2,$f2 @@ -607,8 +607,8 @@ crouch_kicking: .byte $AA,$AA,$aa,$aa,$aa .byte $AA,$AA,$aa,$aa,$aa .byte $AA,$AA,$8a,$8a,$aa - .byte $AA,$AA,$bb,$88,$aa - .byte $AA,$AA,$aa,$2b,$2a + .byte $AA,$AA,$bb,$88,$8a + .byte $AA,$AA,$aa,$2b,$28 .byte $AA,$AA,$aa,$bb,$22 .byte $AA,$AA,$2a,$bb,$a2 .byte $5A,$56,$A2,$f2,$f2 diff --git a/demosplash/graphics/starbase/Makefile b/demosplash/graphics/starbase/Makefile index 02e4f0f9..3df29e28 100644 --- a/demosplash/graphics/starbase/Makefile +++ b/demosplash/graphics/starbase/Makefile @@ -9,7 +9,7 @@ all: starbase.inc starbase.inc: $(PNG2RLE) \ jail.png hallway.png window.png ship.png - $(PNG2RLE) asm jail.png jail_rle >> starbase.inc + $(PNG2RLE) asm jail.png jail_rle > starbase.inc $(PNG2RLE) asm hallway.png hallway_rle >> starbase.inc $(PNG2RLE) asm window.png window_rle >> starbase.inc $(PNG2RLE) asm ship.png ship_rle >> starbase.inc diff --git a/demosplash/graphics/starbase/jail.png b/demosplash/graphics/starbase/jail.png index 4c66796ad3285ad24256c8f375f5432ba7ea2397..916c74abce6349193047dcff3a315f519de2fe1f 100644 GIT binary patch delta 5044 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 KMNUMnLSTZ~2C}CB delta 1524 zcmVSdQ@0+Qek%>aB^>EX>4U6ba`-PAZ2)IW&i+q+U-|cmg^`C z{AU%j1SAj=%Mq`0W(TwUDI6!=ozCq?x<9W;43=>rR05NY@t((SA4uR!;eZoY9|8d4E4~9CCRDROk7ky?x;) z5ZgJxDZdVs=rTY&frFnwiO-Sq<+)v^6-zaJJ%xVuU+4S74ETqA%SmCcLYi^U992t2 z+c;*0-NvCPUo6MyGML-!mN!gI>F&JBG@wekdn-k%!lm9=yF8xs?_ zE_-7xT4JI@7EF6X4KQ#@Me*S58euL_FdFVVKKcd00bCDGwW15VaZI#ps& zwkXper$zIqJ9Vg-d9tEr?wqIx2n}RZ?g!m@7h0?!cz+}V(H-uPAmy7bbPQXM;W`-x z9%KRDK>#Cs@}m;I(rK-|py)6$sHY3RyxkF6Z03kUBy`M=@JSP{G=KAyS*A{#b^3yuDL-BE9>L8^L%puL^Q<_wH+CJ?Th0ZM^+a~6$q=FQyZEY`gd3PVZR zZQDegD8{OIP z!+(MKNgcl0@w-5&tFB3<%?9^KvpSx~YPz5wCTP1h@#S;3`tnl8ZUvpF_sa$sE`~|Y z*`9!cL;em_*v;R73YQuF94cIm^;4+uV)vgxh1V4R1S-7shUcNey<8RUlXqn@LU5bBN zfJEZe)XV5P2K*|iuk2yT&)_~j9G7#;+(U?ogNb+P%A5}P8pOPz$On>eq z3o*l(2uw;C3#YQQKGGaKOOCDO)JODIBVvC>Y%=pej-g}W6ivwbcc2m^RQ_*VK%xXS9(Df}@F0sJ5Xl z>K(%(dWC&_AnIGw6gh1x!_j?JN@>UUj895O)Rv2~XPX|8^kQQ`f(DWRyC#x|F-u*D z=+b7?X@+7V-QYtAK;fIk^v>Dy>HFPj^J)vz0Z+F2c>O>F-_J&usjkrxfn>`t&E-Rs>D@=hYDcR zyQ*+%uw%xp!_Kn5u135n65~ykowY-k!1kO??oAS&waL9n!m~EHH%WNbCif-@k8I-l zt@Zj~t^J_>3v}J%kV#cA^a($>|4vZE#89S_!V+Ey3IhWj17ITeJd-ICC{a8~L_t(Y z$L-cJ5dbg@fWR#EZ@DHI((5CD73RbY;X)w*;9K%C Date: Mon, 4 Nov 2019 00:47:34 -0500 Subject: [PATCH 22/22] ds: more work on starbase --- demosplash/TODO | 24 ++ demosplash/gr_twoscreen_scroll.s | 130 ------- demosplash/graphics/sprites/astronaut.inc | 22 +- demosplash/graphics/starbase/jail.png | Bin 5158 -> 5385 bytes demosplash/graphics/starbase/starbase.inc | 17 +- demosplash/offsets_table2.s | 34 ++ demosplash/starbase.s | 8 - demosplash/starbase_action.s | 424 ++++------------------ demosplash/starbase_doors.s | 1 - 9 files changed, 151 insertions(+), 509 deletions(-) delete mode 100644 demosplash/gr_twoscreen_scroll.s create mode 100644 demosplash/offsets_table2.s diff --git a/demosplash/TODO b/demosplash/TODO index 075d089d..433a5d56 100644 --- a/demosplash/TODO +++ b/demosplash/TODO @@ -15,6 +15,30 @@ STARBASE: + Fix sprites + Keyboard emulation + + change colors of shield? laser? blast? + + + room0 + - open with wall blasting open + - run down steps + - blast open door + - run through + + room1 + - columns + - run in + - duck, start shield + - blash shield, alien + - run through doors + + + room2 (planet) + - shoot another alien? + - foreground animation (robot?) + + + room3 (ship) + - blast control / free ship/ + - run to ship + - engines start + - some sort of fade-to-white transition + ESCAPE: + Get working + Keyboard emulation diff --git a/demosplash/gr_twoscreen_scroll.s b/demosplash/gr_twoscreen_scroll.s deleted file mode 100644 index bf90920f..00000000 --- a/demosplash/gr_twoscreen_scroll.s +++ /dev/null @@ -1,130 +0,0 @@ - ;========================================================= - ; gr_twoscreen_scroll, 40x48 version - ;========================================================= - ; offset is in BG_SCROLL, must be multiple of 2 - ; - ; two screens, top is at $1000, bottom at $BC00 - ; copy lines Y-48 from $1000 to $c00 - ; copy lines 0 - (48-y) from $BC00 to $c00 - -gr_twoscreen_scroll: - - lda #0 - sta TEMPY ; dest - - ldy BG_SCROLL - cpy #48 - beq gr_twoscreen_bottom ; no top to draw - -gr_twoscreen_top: - - ; calculate source - - lda gr_offsets+1,Y - clc - adc #($10-4) - sta gr_twoscreen_smc_src+2 - lda gr_offsets,Y - sta gr_twoscreen_smc_src+1 - tya - pha - - ; calculate destination - - lda TEMPY - tay - lda gr_offsets+1,Y - clc - adc #($c-4) - sta gr_twoscreen_smc_dst+2 - lda gr_offsets,Y - sta gr_twoscreen_smc_dst+1 - - ldx #0 -gr_twoscreen_line_loop: - -gr_twoscreen_smc_src: - lda $1000,X -gr_twoscreen_smc_dst: - sta $c00,X - - inx - cpx #40 - bne gr_twoscreen_line_loop - - - inc TEMPY - inc TEMPY - - pla - tay - - iny - iny - - cpy #48 - - bne gr_twoscreen_top - - - ;=============================== - ; now copy the bottom from $BC00 - - lda BG_SCROLL - beq done_twoscreen_bottom ; if 0, no bottom - -gr_twoscreen_bottom: - - ldy #0 - -gr_twoscreen_bottom_loop: - - ; calculate source - - lda gr_offsets+1,Y - clc - adc #($bc-4) - sta gr_twoscreen_bottom_smc_src+2 - lda gr_offsets,Y - sta gr_twoscreen_bottom_smc_src+1 - tya - pha - - ; calculate destination - - lda TEMPY - tay - lda gr_offsets+1,Y - clc - adc #($c-4) - sta gr_twoscreen_bottom_smc_dst+2 - lda gr_offsets,Y - sta gr_twoscreen_bottom_smc_dst+1 - - ldx #0 -gr_twoscreen_bottom_line_loop: - -gr_twoscreen_bottom_smc_src: - lda $BC00,X -gr_twoscreen_bottom_smc_dst: - sta $c00,X - - inx - cpx #40 - bne gr_twoscreen_bottom_line_loop - - - inc TEMPY - inc TEMPY - - pla - tay - - iny - iny - - cpy BG_SCROLL - - bne gr_twoscreen_bottom_loop -done_twoscreen_bottom: - rts ; 6 diff --git a/demosplash/graphics/sprites/astronaut.inc b/demosplash/graphics/sprites/astronaut.inc index 153d3d39..77321274 100644 --- a/demosplash/graphics/sprites/astronaut.inc +++ b/demosplash/graphics/sprites/astronaut.inc @@ -14,7 +14,7 @@ astro_stand: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$aa,$22,$aa,$aa @@ -46,7 +46,7 @@ astro_walk_left1: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ab,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$22,$a2,$66,$aa @@ -57,7 +57,7 @@ astro_walk_left2: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ba,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$22,$a2,$66,$aa @@ -68,7 +68,7 @@ astro_walk_left3: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$22,$a2,$66,$aa @@ -79,7 +79,7 @@ astro_walk_left4: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$22,$a2,$6a,$aa @@ -90,7 +90,7 @@ astro_walk_left5: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$bb,$22,$aa,$aa .byte $fa,$aa,$22,$aa,$aa .byte $aa,$66,$22,$aa,$aa @@ -101,7 +101,7 @@ astro_walk_left6: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$6a,$22,$aa,$aa .byte $fa,$66,$a2,$2a,$aa @@ -112,7 +112,7 @@ astro_walk_left7: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$aa,$2b,$aa,$aa .byte $aa,$6a,$22,$aa,$aa .byte $aa,$66,$a2,$2a,$aa @@ -123,7 +123,7 @@ astro_walk_left8: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ba,$2b,$aa,$aa .byte $aa,$6a,$22,$aa,$aa .byte $aa,$66,$a2,$22,$aa @@ -134,7 +134,7 @@ astro_walk_left9: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$aa,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$aa,$62,$a2,$fa @@ -145,7 +145,7 @@ astro_walk_left10: .byte $aa,$8a,$8a,$aa,$aa .byte $aa,$bb,$88,$8a,$aa .byte $aa,$aa,$2b,$88,$aa - .byte $aa,$aa,$bb,$aa,$aa + .byte $aa,$a2,$bb,$aa,$aa .byte $aa,$ba,$bb,$aa,$aa .byte $aa,$aa,$22,$aa,$aa .byte $aa,$aa,$22,$aa,$aa diff --git a/demosplash/graphics/starbase/jail.png b/demosplash/graphics/starbase/jail.png index 916c74abce6349193047dcff3a315f519de2fe1f..6a4d8688bd01088e5bc31e2bb0078deef8cf4d5e 100644 GIT binary patch delta 4868 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,>($9613),>($9642),>($9671),>($96A0),>($96CF),>($96FE),>($972D) +.byte >($975C),>($978B),>($97BA),>($97E9),>($9818),>($9847),>($9876),>($98A5) +.byte >($98D4),>($9903),>($9932),>($9961),>($9990),>($99BF),>($99EE),>($9A1D) +.byte >($9A4C),>($9A7B),>($9AAA),>($9AD9),>($9B08),>($9B37),>($9B66),>($9B95) +.byte >($9BC4),>($9BF3),>($9C22),>($9C51),>($9C80),>($9CAF),>($9CDE),>($9D0D) +.byte >($9D3C),>($9D6B),>($9D9A),>($9DC9),>($9DF8),>($9E27),>($9E56),>($9E85) +.byte >($9EB4),>($9EE3),>($9F12),>($9F41),>($9F70),>($9F9F),>($9FCE),>($9FFD) +.byte >($A02C),>($A05B),>($A08A),>($A0B9),>($A0E8),>($A117),>($A146),>($A175) +.byte >($A1A4),>($A1D3),>($A202),>($A231),>($A260),>($A28F),>($A2BE),>($A2ED) +.byte >($A31C),>($A34B),>($A37A),>($A3A9),>($A3D8),>($A407),>($A436),>($A465) +.byte >($A494),>($A4C3),>($A4F2),>($A521),>($A550),>($A57F),>($A5AE),>($A5DD) +.byte >($A60C),>($A63B),>($A66A),>($A699),>($A6C8),>($A6F7),>($A726),>($A755) +.byte >($A784),>($A7B3),>($A7E2),>($A811),>($A840),>($A86F),>($A89E),>($A8CD) +.byte >($A8FC),>($A92B),>($A95A),>($A989),>($A9B8),>($A9E7),>($AA16),>($AA45) +.byte >($AA74),>($AAA3),>($AAD2),>($AB01),>($AB30),>($AB5F),>($AB8E),>($ABBD) +.byte >($ABEC),>($AC1B),>($AC4A),>($AC79),>($ACA8),>($ACD7),>($AD06),>($AD35) +y_lookup2_l: +.byte <($95E4),<($9613),<($9642),<($9671),<($96A0),<($96CF),<($96FE),<($972D) +.byte <($975C),<($978B),<($97BA),<($97E9),<($9818),<($9847),<($9876),<($98A5) +.byte <($98D4),<($9903),<($9932),<($9961),<($9990),<($99BF),<($99EE),<($9A1D) +.byte <($9A4C),<($9A7B),<($9AAA),<($9AD9),<($9B08),<($9B37),<($9B66),<($9B95) +.byte <($9BC4),<($9BF3),<($9C22),<($9C51),<($9C80),<($9CAF),<($9CDE),<($9D0D) +.byte <($9D3C),<($9D6B),<($9D9A),<($9DC9),<($9DF8),<($9E27),<($9E56),<($9E85) +.byte <($9EB4),<($9EE3),<($9F12),<($9F41),<($9F70),<($9F9F),<($9FCE),<($9FFD) +.byte <($A02C),<($A05B),<($A08A),<($A0B9),<($A0E8),<($A117),<($A146),<($A175) +.byte <($A1A4),<($A1D3),<($A202),<($A231),<($A260),<($A28F),<($A2BE),<($A2ED) +.byte <($A31C),<($A34B),<($A37A),<($A3A9),<($A3D8),<($A407),<($A436),<($A465) +.byte <($A494),<($A4C3),<($A4F2),<($A521),<($A550),<($A57F),<($A5AE),<($A5DD) +.byte <($A60C),<($A63B),<($A66A),<($A699),<($A6C8),<($A6F7),<($A726),<($A755) +.byte <($A784),<($A7B3),<($A7E2),<($A811),<($A840),<($A86F),<($A89E),<($A8CD) +.byte <($A8FC),<($A92B),<($A95A),<($A989),<($A9B8),<($A9E7),<($AA16),<($AA45) +.byte <($AA74),<($AAA3),<($AAD2),<($AB01),<($AB30),<($AB5F),<($AB8E),<($ABBD) +.byte <($ABEC),<($AC1B),<($AC4A),<($AC79),<($ACA8),<($ACD7),<($AD06),<($AD35) diff --git a/demosplash/starbase.s b/demosplash/starbase.s index 095c7483..f176a36b 100644 --- a/demosplash/starbase.s +++ b/demosplash/starbase.s @@ -57,17 +57,9 @@ wait_loop: rts .include "starbase_action.s" -;.include "text_print.s" -;.include "gr_pageflip.s" -;.include "gr_unrle.s" -;.include "gr_fast_clear.s" -;.include "gr_copy.s" .include "gr_hlin.s" -.include "gr_twoscreen_scroll.s" .include "gr_putsprite.s" -;.include "gr_putsprite_flipped.s" .include "gr_putsprite_crop.s" -;.include "gr_offsets.s" .include "keyboard.s" .include "starbase_astronaut.s" diff --git a/demosplash/starbase_action.s b/demosplash/starbase_action.s index 2f3f8142..965513cb 100644 --- a/demosplash/starbase_action.s +++ b/demosplash/starbase_action.s @@ -10,7 +10,6 @@ starbase_init: lda #0 sta WHICH_ROOM sta BG_SCROLL - sta DIRECTION ; left sta LASER_OUT sta BLAST_OUT sta CHARGER_COUNT @@ -21,18 +20,16 @@ starbase_init: sta ACTION_TRIGGERED sta ACTION_COUNT + lda #1 + sta DIRECTION ; right + lda #100 sta GUN_CHARGE ;==================== ; reset doors - lda #DOOR_STATUS_CLOSED - sta c4_r0_door0_status - sta c4_r0_door1_status lda #DOOR_STATUS_LOCKED - sta c4_r0_door2_status - sta c4_r0_door3_status - sta c4_r0_door4_status + sta c4_r0_door0_status ;=============== ; set up aliens @@ -61,21 +58,12 @@ starbase_init: lda #0 sta ASTRONAUT_X - lda #20 ; start offscreen + lda #10 sta ASTRONAUT_Y -; lda #28 -; sta fall_down_destination_smc+1 - -; lda #28 -; sta fall_sideways_destination_smc+1 - - lda #P_STANDING ; fall into level + lda #P_STANDING sta ASTRONAUT_STATE -; lda #$2c -; sta falling_stop_smc - rts @@ -115,12 +103,12 @@ starbase_setup_room: bne room1 ;====================== - ; Room0 with recharger + ; Room0 with ramp room0: ; set up doors - lda #5 + lda #2 sta NUM_DOORS lda #(jail_rle) @@ -344,47 +328,10 @@ ootw_room_already_set: ;============================ ;============================ - ; City Loop + ; starbase Loop ;============================ ;============================ -city_loop: - - ;====================================== - ; draw split screen if falling into pit - ;====================================== - - ; only fall in room3 - lda WHICH_ROOM - cmp #3 - bne no_scroll - - lda BG_SCROLL - beq no_scroll - - lda FRAMEL ; slow down a bit - and #$1 - bne no_scroll_progress - - inc BG_SCROLL - inc BG_SCROLL -no_scroll_progress: - - ldy BG_SCROLL - cpy #48 - bne scroll_it - - ; exit to next room when done scrolling - - lda #0 - sta BG_SCROLL - lda #4 - sta WHICH_ROOM - rts - -scroll_it: - jsr gr_twoscreen_scroll -no_scroll: - +starbase_loop: ;================================ ;================================ @@ -394,101 +341,6 @@ no_scroll: jsr gr_copy_to_current - - ;========================= - ;========================= - ; Handle Falling into Pit - ;========================= - ;========================= - - lda WHICH_ROOM - cmp #3 - beq check_falling - cmp #4 - beq check_falling - - jmp not_falling - -check_falling: - ; only fall if falling sideways/down - lda ASTRONAUT_STATE - cmp #P_FALLING_SIDEWAYS - beq falling_sideways - cmp #P_FALLING_DOWN - beq falling_down - - jmp not_falling - -falling_sideways: - ; if falling sideways - - lda BG_SCROLL - cmp #16 - bcc before ; blt - - lda FRAMEL - and #$3 - bne no_fall_undo - - dec ASTRONAUT_X - dec ASTRONAUT_Y - dec ASTRONAUT_Y - dec ASTRONAUT_Y - dec ASTRONAUT_Y -no_fall_undo: - jmp scroll_check -before: - - lda FRAMEL - and #$1 - bne extra_boost - - inc ASTRONAUT_X -extra_boost: - jmp scroll_check - - -falling_down: - ; if falling down, and Y>=32, then impale - lda ASTRONAUT_Y - cmp #32 - bcc scroll_check ; blt - - lda #9 - sta ASTRONAUT_X - - lda #38 - sta ASTRONAUT_Y - - lda #0 - sta GAIT - - lda #P_IMPALED - sta ASTRONAUT_STATE - - jmp not_falling - -scroll_check: - lda BG_SCROLL ; if done scrolling, re-enable falling - bne scroll_bg_check22 - - lda #$2c ; re-enable falling - sta falling_stop_smc - jmp not_far_enough - -scroll_bg_check22: - - lda ASTRONAUT_Y ; once Y=22, stop falling (scroll instead) - cmp #22 - bcc not_far_enough ; blt - - lda #$4c ; disable yinc in falling - sta falling_stop_smc - -not_far_enough: - -not_falling: - ;================================== ; draw background action ;================================== @@ -507,9 +359,9 @@ bg_room0: tay - lda #11 + lda #0 sta XPOS - lda #24 + lda #26 sta YPOS lda recharge_bg_progression,Y @@ -525,21 +377,6 @@ bg_room0: lsr tay - lda #5 - sta XPOS - lda #24 - sta YPOS - - lda recharge_sprite_progression,Y - sta INL - lda recharge_sprite_progression+1,Y - sta INH - - - - jsr put_sprite - - c4_no_bg_action: @@ -551,7 +388,7 @@ c4_no_bg_action: jsr handle_keypress ;=============================== - ; move physicist + ; move astronaut ;=============================== jsr move_astronaut @@ -569,84 +406,41 @@ c4_no_bg_action: done_room_limits: - ;============================= - ;============================= - ; Detect if falling off ledge - ;============================= - ;============================= + ;=============== + ; draw astronaut + ;=============== - ; only fall in room#3 + ; only have slope in room0 lda WHICH_ROOM - cmp #3 - bne regular_room - - ; don't start fall if impaled or already falling - lda ASTRONAUT_STATE - cmp #P_IMPALED - beq regular_room - cmp #P_FALLING_DOWN - beq regular_room - cmp #P_FALLING_SIDEWAYS - beq regular_room - - - ; only start falling if y>=18 - lda ASTRONAUT_Y - cmp #18 - bcc regular_room ; blt - - ; only start falling if x>=7 and positive - lda ASTRONAUT_X - bmi regular_room - cmp #7 - bcc regular_room ; blt - - lda ASTRONAUT_STATE - cmp #P_JUMPING - beq fall_sideways - - ; if not jumping then fall down - - lda #P_FALLING_DOWN - sta ASTRONAUT_STATE - - lda #2 - sta BG_SCROLL - - jmp regular_room - -fall_sideways: - - lda #P_FALLING_SIDEWAYS - sta ASTRONAUT_STATE - - lda #2 - sta BG_SCROLL - -regular_room: - - ;=============== - ; draw physicist - ;=============== - - ; if in charger, draw that - lda WHICH_ROOM ; charger only room0 bne just_draw_astronaut + ; adjust y for slope + lda ASTRONAUT_X - cmp #10 - bne just_draw_astronaut + cmp #11 + bcc asstr_above ; blt - lda GUN_CHARGE - cmp #200 - bcs just_draw_astronaut ; bge + cmp #22 + bcs asstr_below ; bge - lda #P_STANDING - sta ASTRONAUT_STATE + sec + sbc #11 + and #$fe ; our sprite code only draws even y + adc #11 - jsr draw_charger + jmp asstr_adjust_y - jmp after_draw_astronaut +asstr_below: + lda #22 + jmp asstr_adjust_y + +asstr_above: + lda #10 + +asstr_adjust_y: + sta ASTRONAUT_Y + + jsr recalc_walk_collision just_draw_astronaut: jsr draw_astronaut @@ -687,18 +481,18 @@ no_draw_alien: ;======================== lda WHICH_ROOM - cmp #2 - beq c4_room2_cover + beq c4_room0_cover cmp #4 beq c4_room4_cover jmp c4_no_fg_cover -c4_room2_cover: + +c4_room0_cover: lda #0 sta XPOS - lda #18 + lda #6 sta YPOS lda #