From f042f3ba6d691d78c94d0ba2153fd78f2d8c7609 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Mon, 22 Mar 2021 22:58:32 -0400 Subject: [PATCH] ootw: intro: split off console --- games/ootw/intro/Makefile | 7 +- games/ootw/intro/graphics/06_console/Makefile | 82 +- games/ootw/intro/intro.s | 737 +------------- games/ootw/intro/intro_06_console.s | 943 ++++++++++++++++++ games/ootw/intro/intro_data_06.s | 231 ----- 5 files changed, 952 insertions(+), 1048 deletions(-) create mode 100644 games/ootw/intro/intro_06_console.s diff --git a/games/ootw/intro/Makefile b/games/ootw/intro/Makefile index 7d60483e..a78fa95f 100644 --- a/games/ootw/intro/Makefile +++ b/games/ootw/intro/Makefile @@ -1,11 +1,5 @@ include ../../../Makefile.inc -#DOS33 = ../../utils/dos33fs-utils/dos33 -#PNG2RLE = ../../utils/gr-utils/png2rle -#PNG2LZ4 = ../../utils/gr-utils/png2lz4 -#TOKENIZE = ../../utils/asoft_basic-utils/tokenize_asoft -#LZSA = ~/research/lzsa/lzsa/lzsa - COMMON = .. LINKER_SCRIPTS = ../../../linker_scripts @@ -33,6 +27,7 @@ intro.o: intro.s \ intro_03_elevator.s \ intro_04_keypad.s \ intro_05_scanner.s \ + intro_06_console.s \ graphics/01_building/intro_car.inc \ graphics/01_building/intro_building.inc \ graphics/01_building/intro_building_car.inc \ diff --git a/games/ootw/intro/graphics/06_console/Makefile b/games/ootw/intro/graphics/06_console/Makefile index 71e5892d..5696606e 100644 --- a/games/ootw/intro/graphics/06_console/Makefile +++ b/games/ootw/intro/graphics/06_console/Makefile @@ -1,7 +1,5 @@ include ../../../../../Makefile.inc -#PNG2RLE = ../../../gr-utils/png2rle -#PNG2LZ4 = ../../../gr-utils/png2lz4 PNG2GR = ../../../../../utils/gr-utils/png2gr LZSA = ~/research/lzsa/lzsa/lzsa @@ -52,85 +50,7 @@ intro_cursor.inc: desktop_bg.lzsa \ %.lzsa: %.gr $(LZSA) -r -f2 $< $@ - - -# -#intro_collider.inc: collider_bg.png \ -# collider_phase2_00.png collider_phase2_01.png \ -# collider_phase2_02.png collider_phase2_03.png -# $(PNG2RLE) asm collider_bg.png collider_rle > intro_collider.inc -# $(PNG2RLE) asm collider_phase2_00.png collider_p200_rle >> intro_collider.inc -# $(PNG2RLE) asm collider_phase2_01.png collider_p201_rle >> intro_collider.inc -# $(PNG2RLE) asm collider_phase2_02.png collider_p202_rle >> intro_collider.inc -# $(PNG2RLE) asm collider_phase2_03.png collider_p203_rle >> intro_collider.inc -# -# -###### -# -#intro_desktop.inc: $(PNG2RLE) intro_desktop.png \ -# powerup01.png powerup02.png powerup03.png -# $(PNG2RLE) asm intro_desktop.png desktop_rle > intro_desktop.inc -# $(PNG2RLE) asm powerup01.png powerup01_rle >> intro_desktop.inc -# $(PNG2RLE) asm powerup02.png powerup02_rle >> intro_desktop.inc -# $(PNG2RLE) asm powerup03.png powerup03_rle >> intro_desktop.inc -# -###### -# -#intro_cursor.inc: $(PNG2RLE) desktop_bg.png \ -# cursor01.png cursor02.png cursor03.png cursor04.png \ -# cursor05.png cursor06.png cursor07.png cursor08.png -# $(PNG2RLE) asm desktop_bg.png desktop_bg_rle > intro_cursor.inc -# $(PNG2RLE) asm cursor01.png cursor01_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor02.png cursor02_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor03.png cursor03_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor04.png cursor04_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor05.png cursor05_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor06.png cursor06_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor07.png cursor07_rle >> intro_cursor.inc -# $(PNG2RLE) asm cursor08.png cursor08_rle >> intro_cursor.inc -# -# - - - -##### -##### - -#intro_collider_lz4.inc: $(PNG2LZ4) collider_bg.png \ -# collider_phase2_00.png collider_phase2_01.png \ -# collider_phase2_02.png collider_phase2_03.png -# $(PNG2LZ4) asm collider_bg.png collider_rle > intro_collider_lz4.inc -# $(PNG2LZ4) asm collider_phase2_00.png collider_p200_rle >> intro_collider_lz4.inc -# $(PNG2LZ4) asm collider_phase2_01.png collider_p201_rle >> intro_collider_lz4.inc -# $(PNG2LZ4) asm collider_phase2_02.png collider_p202_rle >> intro_collider_lz4.inc -# $(PNG2LZ4) asm collider_phase2_03.png collider_p203_rle >> intro_collider_lz4.inc - - -##### - -#intro_desktop_lz4.inc: $(PNG2LZ4) intro_desktop.png \ -# powerup01.png powerup02.png powerup03.png -# $(PNG2LZ4) asm intro_desktop.png desktop_rle > intro_desktop_lz4.inc -# $(PNG2LZ4) asm powerup01.png powerup01_rle >> intro_desktop_lz4.inc -# $(PNG2LZ4) asm powerup02.png powerup02_rle >> intro_desktop_lz4.inc -# $(PNG2LZ4) asm powerup03.png powerup03_rle >> intro_desktop_lz4.inc - -##### - -#intro_cursor_lz4.inc: $(PNG2LZ4) desktop_bg.png \ -# cursor01.png cursor02.png cursor03.png cursor04.png \ -# cursor05.png cursor06.png cursor07.png cursor08.png -# $(PNG2LZ4) asm desktop_bg.png desktop_bg_rle > intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor01.png cursor01_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor02.png cursor02_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor03.png cursor03_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor04.png cursor04_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor05.png cursor05_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor06.png cursor06_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor07.png cursor07_rle >> intro_cursor_lz4.inc -# $(PNG2LZ4) asm cursor08.png cursor08_rle >> intro_cursor_lz4.inc - - +### clean: rm -f *~ *.inc *.gr *.lzsa diff --git a/games/ootw/intro/intro.s b/games/ootw/intro/intro.s index 47c7ca91..5197d46a 100644 --- a/games/ootw/intro/intro.s +++ b/games/ootw/intro/intro.s @@ -53,525 +53,10 @@ repeat_intro: jsr intro_05_scanner + ;=============================== + ; Nuclear Physics, part 1 -;=============================== -; Sitting at Desk -;=============================== - - ;====================== - ; load bg - - lda #<(desktop_lzsa) - sta getsrc_smc+1 ; LZSA_SRC_LO - lda #>(desktop_lzsa) - sta getsrc_smc+2 ; LZSA_SRC_HI - - lda #$c ; load to off-screen $c00 - jsr decompress_lzsa2_fast - - jsr gr_copy_to_current - - bit FULLGR ; back to full graphics - - jsr page_flip - - ;================================= - ; Display rises up - ;================================= - - lda #powerup_sequence - sta INTRO_LOOPH - - jsr run_sequence - - ldx #80 ; pause a bit - jsr long_wait - - ;================================= - ; Zoom in, mouse move - ;================================= - ; FIXME: shimmery edges to display? - - lda #<(desktop_bg_lzsa) - sta getsrc_smc+1 ; LZSA_SRC_LO - lda #>(desktop_bg_lzsa) - sta getsrc_smc+2 ; LZSA_SRC_HI - - lda #$c ; load to off-screen $c00 - jsr decompress_lzsa2_fast - - jsr gr_copy_to_current - jsr page_flip - - lda #cursor_sequence - sta INTRO_LOOPH - - jsr run_sequence - - ldx #40 ; pause a bit - jsr long_wait - - -;=============================== -; Peanut OS -;=============================== - -peanutos: - - ; 1 2 3 - ; 0123456789012345678901234567890123456789 - ; - ; Copyright (c) 1977 Peanut Computer, Inc. - ; All rights reserved. - ; - ; CDOS Version 5.01 - ; - ; > # - - lda #$a0 - jsr clear_top_a - jsr clear_bottom - - lda #peanut - sta OUTH - - jsr move_and_print_list - - jsr page_flip - - bit SET_TEXT - - ; wait 1s - - ldx #60 - jsr long_wait - - lda #1 - sta CURSOR_COUNT - -project_23_loop: - ; RUN PROJECT 23# (typed) - ; # - - lda #$a0 - jsr clear_top_a - jsr clear_bottom - - lda #peanut - sta OUTH - - jsr move_and_print_list - - ; $550 - - lda #$5 - clc - adc DRAW_PAGE - sta OUTH - lda #$52 - sta OUTL - - ldy #0 -print_project23_loop: - - lda project_23,Y - eor #$80 - sta (OUTL),Y - - iny - cpy CURSOR_COUNT - bne print_project23_loop - - lda #' ' - sta (OUTL),Y - - jsr page_flip - - ldx #10 - jsr long_wait - - inc CURSOR_COUNT - lda CURSOR_COUNT - cmp #15 - bne project_23_loop - - ldx #20 ; brief pasue at end of line - jsr long_wait - - lda #(' '|$80) ; clear out last cursor - sta (OUTL),Y - - lda #' ' ; put cursor on next line - sta $5d2 ; both pages - sta $9d2 - - - ; wait 1s - - ldx #100 - jsr long_wait - - - -;=============================== -; Particle Accelerator Screen -;=============================== - - ; MODIFICATION OF PARAMETERS - ; RELATING TO PARTICLE - ; ACCELERATOR (SYNCHOTRON). - ;____________ E: 23% - ; ROOM 3 X:\ g: .005 - ; : : - ; : : RK: 77.2L - ; : : - ;___________:_: opt: g+ - ; ROOM 1 X: : - ; : : Shield: - ; : : 1: OFF - ; : : 2: ON - ; : : 3: ON - ; : : - ; : : P^: 1 - ; __________: : - ;/__________|/ - - ; the actual intro draws background 3-d stuff first, gradually - ; then writes text - - - lda #$a0 - jsr clear_top_a - jsr clear_bottom - - lda #accelerator - sta OUTH - - jsr move_and_print_list - - jsr page_flip - - ldx #50 - jsr long_wait - - ; Cusrsor starts at E - ; Down to .005 (pauses) - ; End of RK - ; End of g+ (pauses) - ; erase + - ; change to - (pauses) - ; down to 1 (pauses) - ; down to 2 - ; down to 3 - ; down to P (pause) - - ldy #0 - lda #accel_paramaters - sta INH -accel_input_loop: - lda (INL),Y ; get X - cmp #$ff - beq done_accel_input - sta accel_smc+1 - sta accel_smc+4 - iny - lda (INL),Y ; get Y - sta accel_smc+2 - clc - adc #$4 - sta accel_smc+5 - iny - lda (INL),Y ; get char - iny -accel_smc: - sta $400 - sta $800 - - lda (INL),Y ; get time - tax - jsr long_wait - iny - jmp accel_input_loop -done_accel_input: - - - ; FLASH: RUN EXPERIMENT ? (pause) - ; Y - lda #2 - sta CURSOR_COUNT -flash_loop: - - lda #run_experiment - sta OUTH - jsr print_both_pages - - ldx #75 - jsr long_wait - - lda #run_blank - sta OUTH - jsr print_both_pages - - ldx #75 - jsr long_wait - - lda CURSOR_COUNT - cmp #1 - bne not_yes - - lda #'Y'|$80 - sta $670 - sta $A70 - -not_yes: - dec CURSOR_COUNT - bpl flash_loop - - -;====================== -; Accelerate -;====================== - bit SET_GR - - lda #<(collider_lzsa) - sta getsrc_smc+1 ; LZSA_SRC_LO - lda #>(collider_lzsa) - sta getsrc_smc+2 ; LZSA_SRC_HI - - lda #$c ; load to off-screen $c00 - jsr decompress_lzsa2_fast - - jsr gr_copy_to_current - jsr page_flip - - bit TEXTGR - jsr clear_bottoms - - ; --- Theoretical Study --- - ; make this inverse? - - lda #theoretical_study - sta OUTH - - jsr print_both_pages - - ;========================== - ; - Phase 0: - ; INJECTION of particles - ; into synchrotron - - lda #0 - sta PARTICLE_COUNT - - lda #phase0 - sta OUTH - - jsr move_and_print_list_both_pages - - jsr gr_copy_to_current_40x40 - jsr plot_particle - jsr page_flip - ldx #40 - jsr long_wait - - jsr gr_copy_to_current_40x40 - jsr plot_particle - jsr page_flip - ldx #40 - jsr long_wait - - - ;=========================== - ; - Phase 1: - ; Particle ACCELERATION. - - - ; Note: goes around at least 4 times - - jsr clear_bottoms - - ; --- Theoretical Study --- - lda #theoretical_study - sta OUTH - - jsr print_both_pages - - lda #phase1 - sta OUTH - - jsr move_and_print_list_both_pages - - ; 5 times around? (total = 39) - -particle_loop: - jsr gr_copy_to_current_40x40 - jsr plot_particle - jsr page_flip - ldx #20 - jsr long_wait - - lda PARTICLE_COUNT - cmp #38 - bne particle_loop - - ;===================================== - ; - Phase 2: - ; EJECTION of particles - ; on the shield. - - ; Note: goes around once more, then does shield animation - - jsr clear_bottoms - - ; --- Theoretical Study --- - lda #theoretical_study - sta OUTH - - jsr print_both_pages - - lda #phase2 - sta OUTH - - jsr move_and_print_list_both_pages - - - jsr gr_copy_to_current_40x40 - jsr plot_particle - jsr page_flip - ldx #20 - jsr long_wait - - lda #shield_sequence - sta INTRO_LOOPH - - jsr run_sequence_40x40 - - ldx #30 - jsr long_wait - - ;============================= - ; A N A L Y S I S - - jsr clear_bottoms - - ; --- Theoretical Study --- - lda #theoretical_study - sta OUTH - - jsr print_both_pages - - lda #analysis - sta OUTH - - jsr print_both_pages - - ldx #200 - jsr long_wait - - ;============================= - ; - RESULT: - ; Probability of creating: - ; ANTIMATTER: 91.V % - ; NEUTRINO 27: 0.04 % - ; NEUTRINO 424: 18 % - - jsr clear_bottoms - - lda #result - sta OUTH - - jsr move_and_print_list_both_pages - - ldx #200 - jsr long_wait - - - ;================================ - ; Practical verification Y/N ?" - - jsr clear_bottoms - - lda #practical_verification - sta OUTH - - jsr print_both_pages - - ldx #200 - jsr long_wait - - ;========================================== - ; THE EXPERIMENT WILL BEGIN IN 20 SECONDS - ; 19, 18, 17 - - jsr gr_copy_to_current_40x40 - jsr page_flip - - jsr clear_bottoms - - lda #experiment - sta OUTH - - ; 20 - jsr print_both_pages - ldx #100 - jsr long_wait - - ; 19 - jsr print_both_pages - ldx #100 - jsr long_wait - - ; 18 - jsr print_both_pages - ldx #100 - jsr long_wait - - ; 17 - jsr print_both_pages - ldx #100 - jsr long_wait - - + jsr intro_06_console_part1 ;=============================== ;=============================== @@ -635,157 +120,10 @@ soda: ; bit KEYRESET -;=============================== -;=============================== -; More crazy screen -;=============================== -;=============================== + ;=============================== + ; Nuclear Physics, part 2 - lda #<(collider_lzsa) - sta getsrc_smc+1 ; LZSA_SRC_LO - lda #>(collider_lzsa) - sta getsrc_smc+2 ; LZSA_SRC_HI - - lda #$c ; load to off-screen $c00 - jsr decompress_lzsa2_fast - - bit TEXTGR - jsr clear_bottoms - - ; THE EXPERIMENT WILL BEGIN IN 5 SECONDS - jsr gr_copy_to_current_40x40 - jsr page_flip - - lda #experiment - sta OUTH - jsr print_both_pages - - lda #five - sta OUTH - jsr print_both_pages - - lda #0 - sta MESSAGE_COUNT - sta MESSAGE_CURRENT - sta TIME_COUNT -message_loop: - - ; Shield 9A.5F Ok - ; Flux % 5.0177 Ok - ; CDI Vector ok - ; %%%ddd ok - ; Race-Track ok - ; -----REPEAT ; 10 - - ldx MESSAGE_CURRENT - lda message_list,X - sta OUTL - lda message_list+1,X - sta OUTH - jsr print_both_pages - - inc MESSAGE_CURRENT - inc MESSAGE_CURRENT - lda MESSAGE_CURRENT - cmp #10 - bne not_ten - lda #0 - sta MESSAGE_CURRENT -not_ten: - - ; 4 SECONDS - ; Shield " - ; -----REPEAT ; 10 - - ; 3 SECONDS - ; Sheild " - ; -----REPEAT ; 10 - - ; 2 SECONDS ; 10 - - ; 1 SECONDS (at CDI Vector) ; 10 - ; 0 SECONDS (at %%%) ; 10 - - ldx #10 - jsr long_wait - - inc CURSOR_COUNT - - lda CURSOR_COUNT - and #$07 - bne not_time_oflo - - inc TIME_COUNT - inc TIME_COUNT - - ; update seconds - - ldx TIME_COUNT - lda times,X - sta OUTL - lda times+1,X - sta OUTH - jsr print_both_pages - -not_time_oflo: - - lda CURSOR_COUNT - cmp #42 - bne not_time_gone - - ; clear out when near end - jsr clear_bottoms - -not_time_gone: - - lda CURSOR_COUNT - cmp #48 - bne message_loop - - ;============================= - ; EXPERIMENT LINES GOES AWAY - ; Stop printing at race track - ; dark blue going around track - - ; Note: goes around at least 4 times - - jsr clear_bottoms - - ldx #30 - jsr long_wait - -;collider_ui_loop: -; lda KEYPRESS -; bpl collider_ui_loop -; bit KEYRESET - - - - ; 1 times around? (total = 8) - - lda #0 - sta PARTICLE_COUNT - -particle_loop2: - jsr gr_copy_to_current_40x40 - jsr plot_particle - jsr page_flip - ldx #20 - jsr long_wait - - lda PARTICLE_COUNT - cmp #10 - bne particle_loop2 - - -;collider_ui_loop: -; lda KEYPRESS -; bpl collider_ui_loop -; bit KEYRESET + jsr intro_06_console_part2 @@ -1005,70 +343,8 @@ done_intro: .include "gr_run_sequence.s" - - - ;====================== - ; Plot particle - ;====================== -plot_particle: - ; Xcoord in X - ; Ycoord in A - ; color in COLOR - - lda #$22 - sta COLOR - - lda PARTICLE_COUNT - and #7 - asl - tay - ldx particles,Y - lda particles+1,Y - - jsr plot - - inc PARTICLE_COUNT - - rts - - - - DATA_LOCATION = $9000 -; intro6,intro7 - -.if 0 -experiment = (DATA_LOCATION+$0D2C) -practical_verification = (DATA_LOCATION+$0D0D) -result = (DATA_LOCATION+$0CA6) -analysis = (DATA_LOCATION+$0C8D) -shield_sequence = (DATA_LOCATION+$0D75) -phase2 = (DATA_LOCATION+$0C56) -phase1 = (DATA_LOCATION+$0C2F) -phase0 = (DATA_LOCATION+$0BF5) -particles = (DATA_LOCATION+$0D65) -theoretical_study = (DATA_LOCATION+$0BD9) -collider_lzsa = (DATA_LOCATION+$06D8) -run_blank = (DATA_LOCATION+$0BC6) -run_experiment = (DATA_LOCATION+$0BB3) -accel_paramaters = (DATA_LOCATION+$0B62) -accelerator = (DATA_LOCATION+$09C1) -project_23 = (DATA_LOCATION+$09B2) -peanut = (DATA_LOCATION+$0955) -cursor_sequence = (DATA_LOCATION+$0947) -desktop_bg_lzsa = (DATA_LOCATION+$0242) -powerup_sequence = (DATA_LOCATION+$093E) -desktop_lzsa = (DATA_LOCATION+$0000) - -times = (DATA_LOCATION+$0E0C) -message_list = (DATA_LOCATION+$0DE4) -five = (DATA_LOCATION+$0DEE) -drinking_sequence = (DATA_LOCATION+$1C29) -drinking02_lzsa = (DATA_LOCATION+$1705) -soda_sequence = (DATA_LOCATION+$1C1A) -soda_bg_lzsa = (DATA_LOCATION+$0E1A) -.endif intro6_data_lzsa: ; .incbin "intro_data_06.lzsa" @@ -1110,3 +386,4 @@ intro9_data_lzsa: .include "intro_03_elevator.s" .include "intro_04_keypad.s" .include "intro_05_scanner.s" + .include "intro_06_console.s" diff --git a/games/ootw/intro/intro_06_console.s b/games/ootw/intro/intro_06_console.s new file mode 100644 index 00000000..308e6703 --- /dev/null +++ b/games/ootw/intro/intro_06_console.s @@ -0,0 +1,943 @@ +;============================== +; OOTW -- Intro -- The Console +;============================== + +intro_06_console_part1: + +;=============================== +; Sitting at Desk +;=============================== + + ;====================== + ; load bg + + lda #<(desktop_lzsa) + sta getsrc_smc+1 ; LZSA_SRC_LO + lda #>(desktop_lzsa) + sta getsrc_smc+2 ; LZSA_SRC_HI + + lda #$c ; load to off-screen $c00 + jsr decompress_lzsa2_fast + + jsr gr_copy_to_current + + bit FULLGR ; back to full graphics + + jsr page_flip + + ;================================= + ; Display rises up + ;================================= + + lda #powerup_sequence + sta INTRO_LOOPH + + jsr run_sequence + + ldx #80 ; pause a bit + jsr long_wait + + ;================================= + ; Zoom in, mouse move + ;================================= + ; FIXME: shimmery edges to display? + + lda #<(desktop_bg_lzsa) + sta getsrc_smc+1 ; LZSA_SRC_LO + lda #>(desktop_bg_lzsa) + sta getsrc_smc+2 ; LZSA_SRC_HI + + lda #$c ; load to off-screen $c00 + jsr decompress_lzsa2_fast + + jsr gr_copy_to_current + jsr page_flip + + lda #cursor_sequence + sta INTRO_LOOPH + + jsr run_sequence + + ldx #40 ; pause a bit + jsr long_wait + + +;=============================== +; Peanut OS +;=============================== + +peanutos: + + ; 1 2 3 + ; 0123456789012345678901234567890123456789 + ; + ; Copyright (c) 1977 Peanut Computer, Inc. + ; All rights reserved. + ; + ; CDOS Version 5.01 + ; + ; > # + + lda #$a0 + jsr clear_top_a + jsr clear_bottom + + lda #peanut + sta OUTH + + jsr move_and_print_list + + jsr page_flip + + bit SET_TEXT + + ; wait 1s + + ldx #60 + jsr long_wait + + lda #1 + sta CURSOR_COUNT + +project_23_loop: + ; RUN PROJECT 23# (typed) + ; # + + lda #$a0 + jsr clear_top_a + jsr clear_bottom + + lda #peanut + sta OUTH + + jsr move_and_print_list + + ; $550 + + lda #$5 + clc + adc DRAW_PAGE + sta OUTH + lda #$52 + sta OUTL + + ldy #0 +print_project23_loop: + + lda project_23,Y + eor #$80 + sta (OUTL),Y + + iny + cpy CURSOR_COUNT + bne print_project23_loop + + lda #' ' + sta (OUTL),Y + + jsr page_flip + + ldx #10 + jsr long_wait + + inc CURSOR_COUNT + lda CURSOR_COUNT + cmp #15 + bne project_23_loop + + ldx #20 ; brief pasue at end of line + jsr long_wait + + lda #(' '|$80) ; clear out last cursor + sta (OUTL),Y + + lda #' ' ; put cursor on next line + sta $5d2 ; both pages + sta $9d2 + + + ; wait 1s + + ldx #100 + jsr long_wait + + + +;=============================== +; Particle Accelerator Screen +;=============================== + + ; MODIFICATION OF PARAMETERS + ; RELATING TO PARTICLE + ; ACCELERATOR (SYNCHOTRON). + ;____________ E: 23% + ; ROOM 3 X:\ g: .005 + ; : : + ; : : RK: 77.2L + ; : : + ;___________:_: opt: g+ + ; ROOM 1 X: : + ; : : Shield: + ; : : 1: OFF + ; : : 2: ON + ; : : 3: ON + ; : : + ; : : P^: 1 + ; __________: : + ;/__________|/ + + ; the actual intro draws background 3-d stuff first, gradually + ; then writes text + + + lda #$a0 + jsr clear_top_a + jsr clear_bottom + + lda #accelerator + sta OUTH + + jsr move_and_print_list + + jsr page_flip + + ldx #50 + jsr long_wait + + ; Cusrsor starts at E + ; Down to .005 (pauses) + ; End of RK + ; End of g+ (pauses) + ; erase + + ; change to - (pauses) + ; down to 1 (pauses) + ; down to 2 + ; down to 3 + ; down to P (pause) + + ldy #0 + lda #accel_paramaters + sta INH +accel_input_loop: + lda (INL),Y ; get X + cmp #$ff + beq done_accel_input + sta accel_smc+1 + sta accel_smc+4 + iny + lda (INL),Y ; get Y + sta accel_smc+2 + clc + adc #$4 + sta accel_smc+5 + iny + lda (INL),Y ; get char + iny +accel_smc: + sta $400 + sta $800 + + lda (INL),Y ; get time + tax + jsr long_wait + iny + jmp accel_input_loop +done_accel_input: + + + ; FLASH: RUN EXPERIMENT ? (pause) + ; Y + lda #2 + sta CURSOR_COUNT +flash_loop: + + lda #run_experiment + sta OUTH + jsr print_both_pages + + ldx #75 + jsr long_wait + + lda #run_blank + sta OUTH + jsr print_both_pages + + ldx #75 + jsr long_wait + + lda CURSOR_COUNT + cmp #1 + bne not_yes + + lda #'Y'|$80 + sta $670 + sta $A70 + +not_yes: + dec CURSOR_COUNT + bpl flash_loop + + +;====================== +; Accelerate +;====================== + bit SET_GR + + lda #<(collider_lzsa) + sta getsrc_smc+1 ; LZSA_SRC_LO + lda #>(collider_lzsa) + sta getsrc_smc+2 ; LZSA_SRC_HI + + lda #$c ; load to off-screen $c00 + jsr decompress_lzsa2_fast + + jsr gr_copy_to_current + jsr page_flip + + bit TEXTGR + jsr clear_bottoms + + ; --- Theoretical Study --- + ; make this inverse? + + lda #theoretical_study + sta OUTH + + jsr print_both_pages + + ;========================== + ; - Phase 0: + ; INJECTION of particles + ; into synchrotron + + lda #0 + sta PARTICLE_COUNT + + lda #phase0 + sta OUTH + + jsr move_and_print_list_both_pages + + jsr gr_copy_to_current_40x40 + jsr plot_particle + jsr page_flip + ldx #40 + jsr long_wait + + jsr gr_copy_to_current_40x40 + jsr plot_particle + jsr page_flip + ldx #40 + jsr long_wait + + + ;=========================== + ; - Phase 1: + ; Particle ACCELERATION. + + + ; Note: goes around at least 4 times + + jsr clear_bottoms + + ; --- Theoretical Study --- + lda #theoretical_study + sta OUTH + + jsr print_both_pages + + lda #phase1 + sta OUTH + + jsr move_and_print_list_both_pages + + ; 5 times around? (total = 39) + +particle_loop: + jsr gr_copy_to_current_40x40 + jsr plot_particle + jsr page_flip + ldx #20 + jsr long_wait + + lda PARTICLE_COUNT + cmp #38 + bne particle_loop + + ;===================================== + ; - Phase 2: + ; EJECTION of particles + ; on the shield. + + ; Note: goes around once more, then does shield animation + + jsr clear_bottoms + + ; --- Theoretical Study --- + lda #theoretical_study + sta OUTH + + jsr print_both_pages + + lda #phase2 + sta OUTH + + jsr move_and_print_list_both_pages + + + jsr gr_copy_to_current_40x40 + jsr plot_particle + jsr page_flip + ldx #20 + jsr long_wait + + lda #shield_sequence + sta INTRO_LOOPH + + jsr run_sequence_40x40 + + ldx #30 + jsr long_wait + + ;============================= + ; A N A L Y S I S + + jsr clear_bottoms + + ; --- Theoretical Study --- + lda #theoretical_study + sta OUTH + + jsr print_both_pages + + lda #analysis + sta OUTH + + jsr print_both_pages + + ldx #200 + jsr long_wait + + ;============================= + ; - RESULT: + ; Probability of creating: + ; ANTIMATTER: 91.V % + ; NEUTRINO 27: 0.04 % + ; NEUTRINO 424: 18 % + + jsr clear_bottoms + + lda #result + sta OUTH + + jsr move_and_print_list_both_pages + + ldx #200 + jsr long_wait + + + ;================================ + ; Practical verification Y/N ?" + + jsr clear_bottoms + + lda #practical_verification + sta OUTH + + jsr print_both_pages + + ldx #200 + jsr long_wait + + ;========================================== + ; THE EXPERIMENT WILL BEGIN IN 20 SECONDS + ; 19, 18, 17 + + jsr gr_copy_to_current_40x40 + jsr page_flip + + jsr clear_bottoms + + lda #experiment + sta OUTH + + ; 20 + jsr print_both_pages + ldx #100 + jsr long_wait + + ; 19 + jsr print_both_pages + ldx #100 + jsr long_wait + + ; 18 + jsr print_both_pages + ldx #100 + jsr long_wait + + ; 17 + jsr print_both_pages + ldx #100 + jsr long_wait + + + rts + + + + +intro_06_console_part2: + + + +;=============================== +;=============================== +; More crazy screen +;=============================== +;=============================== + + lda #<(collider_lzsa) + sta getsrc_smc+1 ; LZSA_SRC_LO + lda #>(collider_lzsa) + sta getsrc_smc+2 ; LZSA_SRC_HI + + lda #$c ; load to off-screen $c00 + jsr decompress_lzsa2_fast + + bit TEXTGR + jsr clear_bottoms + + ; THE EXPERIMENT WILL BEGIN IN 5 SECONDS + jsr gr_copy_to_current_40x40 + jsr page_flip + + lda #experiment + sta OUTH + jsr print_both_pages + + lda #five + sta OUTH + jsr print_both_pages + + lda #0 + sta MESSAGE_COUNT + sta MESSAGE_CURRENT + sta TIME_COUNT +message_loop: + + ; Shield 9A.5F Ok + ; Flux % 5.0177 Ok + ; CDI Vector ok + ; %%%ddd ok + ; Race-Track ok + ; -----REPEAT ; 10 + + ldx MESSAGE_CURRENT + lda message_list,X + sta OUTL + lda message_list+1,X + sta OUTH + jsr print_both_pages + + inc MESSAGE_CURRENT + inc MESSAGE_CURRENT + lda MESSAGE_CURRENT + cmp #10 + bne not_ten + lda #0 + sta MESSAGE_CURRENT +not_ten: + + ; 4 SECONDS + ; Shield " + ; -----REPEAT ; 10 + + ; 3 SECONDS + ; Sheild " + ; -----REPEAT ; 10 + + ; 2 SECONDS ; 10 + + ; 1 SECONDS (at CDI Vector) ; 10 + ; 0 SECONDS (at %%%) ; 10 + + ldx #10 + jsr long_wait + + inc CURSOR_COUNT + + lda CURSOR_COUNT + and #$07 + bne not_time_oflo + + inc TIME_COUNT + inc TIME_COUNT + + ; update seconds + + ldx TIME_COUNT + lda times,X + sta OUTL + lda times+1,X + sta OUTH + jsr print_both_pages + +not_time_oflo: + + lda CURSOR_COUNT + cmp #42 + bne not_time_gone + + ; clear out when near end + jsr clear_bottoms + +not_time_gone: + + lda CURSOR_COUNT + cmp #48 + bne message_loop + + ;============================= + ; EXPERIMENT LINES GOES AWAY + ; Stop printing at race track + ; dark blue going around track + + ; Note: goes around at least 4 times + + jsr clear_bottoms + + ldx #30 + jsr long_wait + +;collider_ui_loop: +; lda KEYPRESS +; bpl collider_ui_loop +; bit KEYRESET + + + + ; 1 times around? (total = 8) + + lda #0 + sta PARTICLE_COUNT + +particle_loop2: + jsr gr_copy_to_current_40x40 + jsr plot_particle + jsr page_flip + ldx #20 + jsr long_wait + + lda PARTICLE_COUNT + cmp #10 + bne particle_loop2 + + +;collider_ui_loop: +; lda KEYPRESS +; bpl collider_ui_loop +; bit KEYRESET + + rts + + + ;====================== + ; Plot particle + ;====================== +plot_particle: + ; Xcoord in X + ; Ycoord in A + ; color in COLOR + + lda #$22 + sta COLOR + + lda PARTICLE_COUNT + and #7 + asl + tay + ldx particles,Y + lda particles+1,Y + + jsr plot + + inc PARTICLE_COUNT + + rts + + + +;================================= +;================================= +; Intro Segment 06 Data (Console) +;================================= +;================================= + +.include "graphics/06_console/intro_desktop.inc" +.include "graphics/06_console/intro_cursor.inc" +.include "graphics/06_console/intro_collider.inc" + + +; Power-up sequence + +powerup_sequence: + .byte 20 + .word powerup01_lzsa + .byte 128+60 ; .word powerup02_lzsa + .byte 128+20 ; .word powerup03_lzsa + .byte 20 + .word powerup03_lzsa + .byte 0 + + +; Cursor sequence + +cursor_sequence: + .byte 60 + .word cursor01_lzsa + .byte 128+40 ; .word cursor02_lzsa + .byte 128+20 ; .word cursor03_lzsa + .byte 128+20 ; .word cursor04_lzsa + .byte 128+20 ; .word cursor05_lzsa + .byte 128+20 ; .word cursor06_lzsa + .byte 128+20 ; .word cursor07_lzsa + .byte 128+20 ; .word cursor08_lzsa + .byte 60 + .word cursor08_lzsa + .byte 0 + + +peanut: + .byte 0,2,"COPYRIGHT (C) 1977 PEANUT COMPUTER, INC.",0 + .byte 0,3,"ALL RIGHTS RESERVED.",0 + .byte 0,5,"CDOS VERSION 5.01",0 + .byte 0,18,"> ",(' '|$80),0 + .byte 255 +project_23: + .byte "RUN PROJECT 23",0 + +accelerator: + .byte 0,0, "MODIFICATION OF PARAMETERS",0 + .byte 0,1, "RELATING TO PARTICLE",0 + .byte 0,2, "ACCELERATOR (SYNCHOTRON).",0 + .byte 0,3, " ___________",0 + .byte 0,4, ":ROOM 3 ",('+'|$80),":\ E: 23%",0 + .byte 0,5, ": : : G: .005",0 + .byte 0,6, ": : : : RK: 77.2L",0 + .byte 0,7, ": : :",0 + .byte 0,8, ": : : OPT: G+",0 + .byte 0,9, ": : : :",0 + .byte 0,10, ":__________:_: SHIELD:",0 + .byte 0,11, ":ROOM 1 ",('+'|$80),": : 1: OFF",0 + .byte 0,12, ": : : : 2: ON",0 + .byte 0,13, ": : : 3: ON",0 + .byte 0,14, ": : : :",0 + .byte 0,15, ": : : P^: 1",0 + .byte 0,16, ": : : :",0 + .byte 0,17, ": _________:_:",0 + .byte 0,18, ":/_________:/",0 + .byte 255 + +accel_paramaters: + .byte $15,$6,' ',20 ; 21,4 = $615 Cursor starts at E + .byte $15,$6,' '|$80,1 ; Cusrsor off at E + .byte $96,$6,' ',100 ; 22,5 = $696 Down to .005 (pauses) + .byte $96,$6,' '|$80,1 ; off + .byte $18,$7,' ',20 ; 24,6 = $718 End of RK + .byte $18,$7,' '|$80,1 ; off + .byte $3E,$4,' ',100 ; 22,8 = $43E End of g+ (pauses) + .byte $3E,$4,' '|$80,1 ; off + .byte $3D,$4,' ',20 ; 21,8 = $43D erase + + .byte $3D,$4,'-'|$80,1 ; change to - (pauses) + .byte $3E,$4,' ',100 ; 22,8 = $43e change to - (pauses) + .byte $3E,$4,' '|$80,1 ; off + .byte $BD,$5,' ',100 ; 22,11= $5bd down to 1 (pauses) + .byte $BD,$5,' '|$80,1 ; off + .byte $3C,$6,' ',20 ; 21,12= $63c down to 2 + .byte $3C,$6,' '|$80,1 ; off + .byte $BC,$6,' ',20 ; 21,13= $6bc down to 3 + .byte $BC,$6,' '|$80,1 ; off + .byte $BC,$7,' ',20 ; 21,15= $7bc down to P (pause) + .byte $BC,$7,' '|$80,1 ; off + .byte $ff + + + ; FLASH: RUN EXPERIMENT ? (pause) +run_experiment: + .byte 10,20,"RUN EXPERIMENT ?",0 +run_blank: + .byte 10,20," ",0 + +;'R'|$80,'U'|$80,'N'|$80,' '|$80 +; .byte 10,20,'R'|$80,'U'|$80,'N'|$80,' '|$80 +; .byte 'E'|$80,'X'|$80,'P'|$80,'E'|$80,'R'|$80,'I'|$80 +; .byte 'M'|$80,'E'|$80,'N'|$80,'T'|$80,' '|$80,'?'|$80,0 + + + + + ; --- Theoretical Study --- + ; make this inverse? +theoretical_study: + .byte 7,20,"--- THEORETICAL STUDY ---",0 + + ; - Phase 0: + ; INJECTION of particles + ; into synchrotron +phase0: + .byte 0,21,"- PHASE 0:",0 + .byte 0,22,"INJECTION OF PARTICLES",0 + .byte 0,23,"INTO SYNCHROTRON",0 + .byte $ff + + ; - Phase 1: + ; Particle ACCELERATION. +phase1: + .byte 0,21,"- PHASE 1:",0 + .byte 0,22,"PARTICLE ACCELERATION.",0 + .byte $ff + + ; - Phase 2: + ; EJECTION of particles + ; on the shield. +phase2: + .byte 0,21,"- PHASE 2:",0 + .byte 0,22,"EJECTION OF PARTICLES",0 + .byte 0,23,"ON THE SHIELD.",0 + .byte $ff + + ; A N A L Y S I S +analysis: + .byte 8,22,"A N A L Y S I S",0 + + ; - RESULT: + ; Probability of creating: + ; ANTIMATTER: 91.V % + ; NEUTRINO 27: 0.04 % + ; NEUTRINO 424: 18 % +result: + .byte 0,20,"- RESULT, PROBABILITY OF CREATING:",0 + .byte 10,21,"ANTIMATTER: 91.V %",0 + .byte 10,22,"NEUTRINO 27: 0.04 %",0 + .byte 10,23,"NEUTRINO 424: 18 %",0 + .byte $ff + + ; Practical verification Y/N ?" +practical_verification: + .byte 6,21,"PRACTICAL VERIFICATION Y/N ?",0 + + ; THE EXPERIMENT WILL BEGIN IN 20 SECONDS +experiment: + .byte 0,20,"THE EXPERIMENT WILL BEGIN IN 20 SECONDS",0 + .byte 29,20,"19",0 + .byte 29,20,"18",0 + .byte 29,20,"17",0 + + + ; Particle co-ordinates +particles: + .byte 21,23 ; 0 + .byte 21,15 ; 1 + .byte 22,7 ; 2 + .byte 27,2 ; 3 + .byte 32,6 ; 4 + .byte 34,13 ; 5 + .byte 31,26 ; 6 + .byte 27,28 ; 7 + + +shield_sequence: + .byte 30 + .word collider_p200_lzsa + .byte 30 + .word collider_p201_lzsa + .byte 30 + .word collider_p202_lzsa + .byte 30 + .word collider_p203_lzsa + .byte 30 + .word collider_p200_lzsa + .byte 0 + + +message0: + .byte 8,22,"SHIELD 9A.5F OK ",0 +message1: + .byte 8,22,"FLUX % 5.0177 OK",0 +message2: + .byte 8,22,"CDI VECTOR OK ",0 +message3: + .byte 8,22,"%%%DDD OK ",0 +message4: + .byte 8,22,"RACE-TRACK OK ",0 + +message_list: + .word message0 + .word message1 + .word message2 + .word message3 + .word message4 + + +five: + .byte 29,20,"5 ",0 +four: + .byte 29,20,"4 ",0 +three: + .byte 29,20,"3 ",0 +two: + .byte 29,20,"2 ",0 +one: + .byte 29,20,"1 ",0 +zero: + .byte 29,20,"0 ",0 + +times: + ; note, the second zero is there because we get a TIME_COUNT + ; of 6 even though it is printed then erased (but never displayed) + .word five,four,three,two,one,zero,zero diff --git a/games/ootw/intro/intro_data_06.s b/games/ootw/intro/intro_data_06.s index 81d9d80d..46a89064 100644 --- a/games/ootw/intro/intro_data_06.s +++ b/games/ootw/intro/intro_data_06.s @@ -1,234 +1,3 @@ -;================================= -;================================= -; Intro Segment 06 Data (Console) -;================================= -;================================= - -.include "graphics/06_console/intro_desktop.inc" -.include "graphics/06_console/intro_cursor.inc" -.include "graphics/06_console/intro_collider.inc" - - -; Power-up sequence - -powerup_sequence: - .byte 20 - .word powerup01_lzsa - .byte 128+60 ; .word powerup02_lzsa - .byte 128+20 ; .word powerup03_lzsa - .byte 20 - .word powerup03_lzsa - .byte 0 - - -; Cursor sequence - -cursor_sequence: - .byte 60 - .word cursor01_lzsa - .byte 128+40 ; .word cursor02_lzsa - .byte 128+20 ; .word cursor03_lzsa - .byte 128+20 ; .word cursor04_lzsa - .byte 128+20 ; .word cursor05_lzsa - .byte 128+20 ; .word cursor06_lzsa - .byte 128+20 ; .word cursor07_lzsa - .byte 128+20 ; .word cursor08_lzsa - .byte 60 - .word cursor08_lzsa - .byte 0 - - -peanut: - .byte 0,2,"COPYRIGHT (C) 1977 PEANUT COMPUTER, INC.",0 - .byte 0,3,"ALL RIGHTS RESERVED.",0 - .byte 0,5,"CDOS VERSION 5.01",0 - .byte 0,18,"> ",(' '|$80),0 - .byte 255 -project_23: - .byte "RUN PROJECT 23",0 - -accelerator: - .byte 0,0, "MODIFICATION OF PARAMETERS",0 - .byte 0,1, "RELATING TO PARTICLE",0 - .byte 0,2, "ACCELERATOR (SYNCHOTRON).",0 - .byte 0,3, " ___________",0 - .byte 0,4, ":ROOM 3 ",('+'|$80),":\ E: 23%",0 - .byte 0,5, ": : : G: .005",0 - .byte 0,6, ": : : : RK: 77.2L",0 - .byte 0,7, ": : :",0 - .byte 0,8, ": : : OPT: G+",0 - .byte 0,9, ": : : :",0 - .byte 0,10, ":__________:_: SHIELD:",0 - .byte 0,11, ":ROOM 1 ",('+'|$80),": : 1: OFF",0 - .byte 0,12, ": : : : 2: ON",0 - .byte 0,13, ": : : 3: ON",0 - .byte 0,14, ": : : :",0 - .byte 0,15, ": : : P^: 1",0 - .byte 0,16, ": : : :",0 - .byte 0,17, ": _________:_:",0 - .byte 0,18, ":/_________:/",0 - .byte 255 - -accel_paramaters: - .byte $15,$6,' ',20 ; 21,4 = $615 Cursor starts at E - .byte $15,$6,' '|$80,1 ; Cusrsor off at E - .byte $96,$6,' ',100 ; 22,5 = $696 Down to .005 (pauses) - .byte $96,$6,' '|$80,1 ; off - .byte $18,$7,' ',20 ; 24,6 = $718 End of RK - .byte $18,$7,' '|$80,1 ; off - .byte $3E,$4,' ',100 ; 22,8 = $43E End of g+ (pauses) - .byte $3E,$4,' '|$80,1 ; off - .byte $3D,$4,' ',20 ; 21,8 = $43D erase + - .byte $3D,$4,'-'|$80,1 ; change to - (pauses) - .byte $3E,$4,' ',100 ; 22,8 = $43e change to - (pauses) - .byte $3E,$4,' '|$80,1 ; off - .byte $BD,$5,' ',100 ; 22,11= $5bd down to 1 (pauses) - .byte $BD,$5,' '|$80,1 ; off - .byte $3C,$6,' ',20 ; 21,12= $63c down to 2 - .byte $3C,$6,' '|$80,1 ; off - .byte $BC,$6,' ',20 ; 21,13= $6bc down to 3 - .byte $BC,$6,' '|$80,1 ; off - .byte $BC,$7,' ',20 ; 21,15= $7bc down to P (pause) - .byte $BC,$7,' '|$80,1 ; off - .byte $ff - - - ; FLASH: RUN EXPERIMENT ? (pause) -run_experiment: - .byte 10,20,"RUN EXPERIMENT ?",0 -run_blank: - .byte 10,20," ",0 - -;'R'|$80,'U'|$80,'N'|$80,' '|$80 -; .byte 10,20,'R'|$80,'U'|$80,'N'|$80,' '|$80 -; .byte 'E'|$80,'X'|$80,'P'|$80,'E'|$80,'R'|$80,'I'|$80 -; .byte 'M'|$80,'E'|$80,'N'|$80,'T'|$80,' '|$80,'?'|$80,0 - - - - - ; --- Theoretical Study --- - ; make this inverse? -theoretical_study: - .byte 7,20,"--- THEORETICAL STUDY ---",0 - - ; - Phase 0: - ; INJECTION of particles - ; into synchrotron -phase0: - .byte 0,21,"- PHASE 0:",0 - .byte 0,22,"INJECTION OF PARTICLES",0 - .byte 0,23,"INTO SYNCHROTRON",0 - .byte $ff - - ; - Phase 1: - ; Particle ACCELERATION. -phase1: - .byte 0,21,"- PHASE 1:",0 - .byte 0,22,"PARTICLE ACCELERATION.",0 - .byte $ff - - ; - Phase 2: - ; EJECTION of particles - ; on the shield. -phase2: - .byte 0,21,"- PHASE 2:",0 - .byte 0,22,"EJECTION OF PARTICLES",0 - .byte 0,23,"ON THE SHIELD.",0 - .byte $ff - - ; A N A L Y S I S -analysis: - .byte 8,22,"A N A L Y S I S",0 - - ; - RESULT: - ; Probability of creating: - ; ANTIMATTER: 91.V % - ; NEUTRINO 27: 0.04 % - ; NEUTRINO 424: 18 % -result: - .byte 0,20,"- RESULT, PROBABILITY OF CREATING:",0 - .byte 10,21,"ANTIMATTER: 91.V %",0 - .byte 10,22,"NEUTRINO 27: 0.04 %",0 - .byte 10,23,"NEUTRINO 424: 18 %",0 - .byte $ff - - ; Practical verification Y/N ?" -practical_verification: - .byte 6,21,"PRACTICAL VERIFICATION Y/N ?",0 - - ; THE EXPERIMENT WILL BEGIN IN 20 SECONDS -experiment: - .byte 0,20,"THE EXPERIMENT WILL BEGIN IN 20 SECONDS",0 - .byte 29,20,"19",0 - .byte 29,20,"18",0 - .byte 29,20,"17",0 - - - ; Particle co-ordinates -particles: - .byte 21,23 ; 0 - .byte 21,15 ; 1 - .byte 22,7 ; 2 - .byte 27,2 ; 3 - .byte 32,6 ; 4 - .byte 34,13 ; 5 - .byte 31,26 ; 6 - .byte 27,28 ; 7 - - -shield_sequence: - .byte 30 - .word collider_p200_lzsa - .byte 30 - .word collider_p201_lzsa - .byte 30 - .word collider_p202_lzsa - .byte 30 - .word collider_p203_lzsa - .byte 30 - .word collider_p200_lzsa - .byte 0 - - -message0: - .byte 8,22,"SHIELD 9A.5F OK ",0 -message1: - .byte 8,22,"FLUX % 5.0177 OK",0 -message2: - .byte 8,22,"CDI VECTOR OK ",0 -message3: - .byte 8,22,"%%%DDD OK ",0 -message4: - .byte 8,22,"RACE-TRACK OK ",0 - -message_list: - .word message0 - .word message1 - .word message2 - .word message3 - .word message4 - - -five: - .byte 29,20,"5 ",0 -four: - .byte 29,20,"4 ",0 -three: - .byte 29,20,"3 ",0 -two: - .byte 29,20,"2 ",0 -one: - .byte 29,20,"1 ",0 -zero: - .byte 29,20,"0 ",0 - -times: - ; note, the second zero is there because we get a TIME_COUNT - ; of 6 even though it is printed then erased (but never displayed) - .word five,four,three,two,one,zero,zero - - ;================================= ;================================= ; Intro Segment 07 Data (Soda)