mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-09-09 02:54:25 +00:00
ootw: intro: split off console
This commit is contained in:
parent
0d1e97c966
commit
f042f3ba6d
@ -1,11 +1,5 @@
|
|||||||
include ../../../Makefile.inc
|
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 = ..
|
COMMON = ..
|
||||||
LINKER_SCRIPTS = ../../../linker_scripts
|
LINKER_SCRIPTS = ../../../linker_scripts
|
||||||
|
|
||||||
@ -33,6 +27,7 @@ intro.o: intro.s \
|
|||||||
intro_03_elevator.s \
|
intro_03_elevator.s \
|
||||||
intro_04_keypad.s \
|
intro_04_keypad.s \
|
||||||
intro_05_scanner.s \
|
intro_05_scanner.s \
|
||||||
|
intro_06_console.s \
|
||||||
graphics/01_building/intro_car.inc \
|
graphics/01_building/intro_car.inc \
|
||||||
graphics/01_building/intro_building.inc \
|
graphics/01_building/intro_building.inc \
|
||||||
graphics/01_building/intro_building_car.inc \
|
graphics/01_building/intro_building_car.inc \
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
include ../../../../../Makefile.inc
|
include ../../../../../Makefile.inc
|
||||||
|
|
||||||
#PNG2RLE = ../../../gr-utils/png2rle
|
|
||||||
#PNG2LZ4 = ../../../gr-utils/png2lz4
|
|
||||||
PNG2GR = ../../../../../utils/gr-utils/png2gr
|
PNG2GR = ../../../../../utils/gr-utils/png2gr
|
||||||
LZSA = ~/research/lzsa/lzsa/lzsa
|
LZSA = ~/research/lzsa/lzsa/lzsa
|
||||||
|
|
||||||
@ -52,85 +50,7 @@ intro_cursor.inc: desktop_bg.lzsa \
|
|||||||
%.lzsa: %.gr
|
%.lzsa: %.gr
|
||||||
$(LZSA) -r -f2 $< $@
|
$(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:
|
clean:
|
||||||
rm -f *~ *.inc *.gr *.lzsa
|
rm -f *~ *.inc *.gr *.lzsa
|
||||||
|
@ -53,525 +53,10 @@ repeat_intro:
|
|||||||
|
|
||||||
jsr intro_05_scanner
|
jsr intro_05_scanner
|
||||||
|
|
||||||
|
;===============================
|
||||||
|
; Nuclear Physics, part 1
|
||||||
|
|
||||||
;===============================
|
jsr 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_LOOPL
|
|
||||||
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_LOOPL
|
|
||||||
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 OUTL
|
|
||||||
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 OUTL
|
|
||||||
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 OUTL
|
|
||||||
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 INL
|
|
||||||
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 OUTL
|
|
||||||
lda #>run_experiment
|
|
||||||
sta OUTH
|
|
||||||
jsr print_both_pages
|
|
||||||
|
|
||||||
ldx #75
|
|
||||||
jsr long_wait
|
|
||||||
|
|
||||||
lda #<run_blank
|
|
||||||
sta OUTL
|
|
||||||
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 OUTL
|
|
||||||
lda #>theoretical_study
|
|
||||||
sta OUTH
|
|
||||||
|
|
||||||
jsr print_both_pages
|
|
||||||
|
|
||||||
;==========================
|
|
||||||
; - Phase 0:
|
|
||||||
; INJECTION of particles
|
|
||||||
; into synchrotron
|
|
||||||
|
|
||||||
lda #0
|
|
||||||
sta PARTICLE_COUNT
|
|
||||||
|
|
||||||
lda #<phase0
|
|
||||||
sta OUTL
|
|
||||||
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 OUTL
|
|
||||||
lda #>theoretical_study
|
|
||||||
sta OUTH
|
|
||||||
|
|
||||||
jsr print_both_pages
|
|
||||||
|
|
||||||
lda #<phase1
|
|
||||||
sta OUTL
|
|
||||||
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 OUTL
|
|
||||||
lda #>theoretical_study
|
|
||||||
sta OUTH
|
|
||||||
|
|
||||||
jsr print_both_pages
|
|
||||||
|
|
||||||
lda #<phase2
|
|
||||||
sta OUTL
|
|
||||||
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_LOOPL
|
|
||||||
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 OUTL
|
|
||||||
lda #>theoretical_study
|
|
||||||
sta OUTH
|
|
||||||
|
|
||||||
jsr print_both_pages
|
|
||||||
|
|
||||||
lda #<analysis
|
|
||||||
sta OUTL
|
|
||||||
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 OUTL
|
|
||||||
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 OUTL
|
|
||||||
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 OUTL
|
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;===============================
|
;===============================
|
||||||
;===============================
|
;===============================
|
||||||
@ -635,157 +120,10 @@ soda:
|
|||||||
; bit KEYRESET
|
; bit KEYRESET
|
||||||
|
|
||||||
|
|
||||||
;===============================
|
;===============================
|
||||||
;===============================
|
; Nuclear Physics, part 2
|
||||||
; More crazy screen
|
|
||||||
;===============================
|
|
||||||
;===============================
|
|
||||||
|
|
||||||
lda #<(collider_lzsa)
|
jsr intro_06_console_part2
|
||||||
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 OUTL
|
|
||||||
lda #>experiment
|
|
||||||
sta OUTH
|
|
||||||
jsr print_both_pages
|
|
||||||
|
|
||||||
lda #<five
|
|
||||||
sta OUTL
|
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1005,70 +343,8 @@ done_intro:
|
|||||||
.include "gr_run_sequence.s"
|
.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
|
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:
|
intro6_data_lzsa:
|
||||||
; .incbin "intro_data_06.lzsa"
|
; .incbin "intro_data_06.lzsa"
|
||||||
@ -1110,3 +386,4 @@ intro9_data_lzsa:
|
|||||||
.include "intro_03_elevator.s"
|
.include "intro_03_elevator.s"
|
||||||
.include "intro_04_keypad.s"
|
.include "intro_04_keypad.s"
|
||||||
.include "intro_05_scanner.s"
|
.include "intro_05_scanner.s"
|
||||||
|
.include "intro_06_console.s"
|
||||||
|
943
games/ootw/intro/intro_06_console.s
Normal file
943
games/ootw/intro/intro_06_console.s
Normal file
@ -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_LOOPL
|
||||||
|
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_LOOPL
|
||||||
|
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 OUTL
|
||||||
|
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 OUTL
|
||||||
|
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 OUTL
|
||||||
|
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 INL
|
||||||
|
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 OUTL
|
||||||
|
lda #>run_experiment
|
||||||
|
sta OUTH
|
||||||
|
jsr print_both_pages
|
||||||
|
|
||||||
|
ldx #75
|
||||||
|
jsr long_wait
|
||||||
|
|
||||||
|
lda #<run_blank
|
||||||
|
sta OUTL
|
||||||
|
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 OUTL
|
||||||
|
lda #>theoretical_study
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
jsr print_both_pages
|
||||||
|
|
||||||
|
;==========================
|
||||||
|
; - Phase 0:
|
||||||
|
; INJECTION of particles
|
||||||
|
; into synchrotron
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta PARTICLE_COUNT
|
||||||
|
|
||||||
|
lda #<phase0
|
||||||
|
sta OUTL
|
||||||
|
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 OUTL
|
||||||
|
lda #>theoretical_study
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
jsr print_both_pages
|
||||||
|
|
||||||
|
lda #<phase1
|
||||||
|
sta OUTL
|
||||||
|
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 OUTL
|
||||||
|
lda #>theoretical_study
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
jsr print_both_pages
|
||||||
|
|
||||||
|
lda #<phase2
|
||||||
|
sta OUTL
|
||||||
|
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_LOOPL
|
||||||
|
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 OUTL
|
||||||
|
lda #>theoretical_study
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
jsr print_both_pages
|
||||||
|
|
||||||
|
lda #<analysis
|
||||||
|
sta OUTL
|
||||||
|
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 OUTL
|
||||||
|
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 OUTL
|
||||||
|
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 OUTL
|
||||||
|
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 OUTL
|
||||||
|
lda #>experiment
|
||||||
|
sta OUTH
|
||||||
|
jsr print_both_pages
|
||||||
|
|
||||||
|
lda #<five
|
||||||
|
sta OUTL
|
||||||
|
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
|
@ -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)
|
; Intro Segment 07 Data (Soda)
|
||||||
|
Loading…
Reference in New Issue
Block a user