ootw: intro: more splitting up
This commit is contained in:
parent
7a9357ed5d
commit
dc6a889398
|
@ -0,0 +1,76 @@
|
|||
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
|
||||
|
||||
all: INTRO
|
||||
|
||||
####
|
||||
|
||||
INTRO: intro.o
|
||||
ld65 -o INTRO intro.o -C $(LINKER_SCRIPTS)/apple2_1700.inc
|
||||
|
||||
intro.o: intro.s \
|
||||
$(COMMON)/gr_copy.s \
|
||||
$(COMMON)/gr_fast_clear.s \
|
||||
$(COMMON)/gr_pageflip.s \
|
||||
$(COMMON)/gr_unrle.s \
|
||||
$(COMMON)/gr_putsprite.s \
|
||||
$(COMMON)/gr_overlay.s \
|
||||
gr_run_sequence.s \
|
||||
$(COMMON)/keyboard.s \
|
||||
$(COMMON)/random16.s \
|
||||
$(COMMON)/text_print.s \
|
||||
$(COMMON)/zp.inc \
|
||||
intro_01_building.s \
|
||||
intro_02_outer_door.s \
|
||||
intro_03_elevator.s \
|
||||
graphics/01_building/intro_car.inc \
|
||||
graphics/01_building/intro_building.inc \
|
||||
graphics/01_building/intro_building_car.inc \
|
||||
graphics/02_outer_door/outer_door.inc \
|
||||
graphics/02_outer_door/feet.inc \
|
||||
graphics/03_elevator/intro_elevator.inc \
|
||||
graphics/03_elevator/intro_off_elevator.inc \
|
||||
graphics/03_elevator/intro_walking.inc \
|
||||
graphics/04_keypad/intro_scanner_door.inc \
|
||||
graphics/04_keypad/intro_approach.inc \
|
||||
graphics/04_keypad/intro_keypad_bg.inc \
|
||||
graphics/04_keypad/intro_hands.inc \
|
||||
graphics/04_keypad/intro_opening.inc \
|
||||
graphics/05_scanner/intro_scanner.inc \
|
||||
graphics/05_scanner/intro_scanning.inc \
|
||||
graphics/05_scanner/intro_ai_bg.inc \
|
||||
graphics/05_scanner/intro_ai.inc \
|
||||
graphics/06_console/intro_desktop.inc \
|
||||
graphics/06_console/intro_cursor.inc \
|
||||
graphics/06_console/intro_collider.inc \
|
||||
graphics/07_soda/intro_open_soda.inc \
|
||||
graphics/07_soda/intro_drinking.inc \
|
||||
graphics/08_lightning/lightning.inc \
|
||||
graphics/09_tunnel/intro_tunnel1.inc \
|
||||
graphics/09_tunnel/intro_tunnel2.inc \
|
||||
graphics/10_gone/intro_zappo.inc \
|
||||
graphics/10_gone/intro_gone.inc
|
||||
ca65 -o intro.o intro.s -l intro.lst
|
||||
|
||||
####
|
||||
|
||||
graphics/01_building/intro_car.inc:
|
||||
cd graphics && make
|
||||
|
||||
####
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst *.lz4 *.lzsa INTRO \
|
||||
intro_data_01 intro_data_04 intro_data_06 \
|
||||
intro_data_08 intro_data_09
|
||||
|
||||
distclean:
|
||||
cd graphics && make clean
|
|
@ -37,22 +37,7 @@ intro_building_car.inc: \
|
|||
intro_building_car.lzsa
|
||||
echo "intro_building_car_lzsa: .incbin \"intro_building_car.lzsa\"" > intro_building_car.inc
|
||||
|
||||
|
||||
|
||||
|
||||
# $(PNG2RLE) asm intro_car1.png intro_car1 > intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car2.png intro_car2 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car3.png intro_car3 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car4.png intro_car4 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car5.png intro_car5 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car6.png intro_car6 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car7.png intro_car7 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car8.png intro_car8 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car9.png intro_car9 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car10.png intro_car10 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car12.png intro_car12 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car13.png intro_car13 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car14.png intro_car14 >> intro_car.inc
|
||||
#####
|
||||
|
||||
%.gr: %.png
|
||||
$(PNG2GR) $< $@
|
||||
|
@ -60,75 +45,6 @@ intro_building_car.inc: \
|
|||
%.lzsa: %.gr
|
||||
$(LZSA) -r -f2 $< $@
|
||||
|
||||
#all: intro_car.inc intro_building.inc intro_building_car.inc \
|
||||
# intro_car_lz4.inc intro_building_lz4.inc intro_building_car_lz4.inc
|
||||
|
||||
#####
|
||||
|
||||
#intro_building_car.inc: $(PNG2RLE) intro_building_car.png
|
||||
# $(PNG2RLE) asm intro_building_car.png building_car_rle > intro_building_car.inc
|
||||
|
||||
#####
|
||||
|
||||
#intro_building.inc: $(PNG2RLE) intro_building.png
|
||||
# $(PNG2RLE) asm intro_building.png building_rle > intro_building.inc
|
||||
|
||||
#####
|
||||
|
||||
#intro_car.inc: $(PNG2RLE) intro_car1.png intro_car2.png \
|
||||
# intro_car3.png intro_car4.png intro_car5.png \
|
||||
# intro_car6.png intro_car7.png intro_car8.png \
|
||||
# intro_car9.png intro_car10.png intro_car12.png \
|
||||
# intro_car13.png intro_car14.png
|
||||
# $(PNG2RLE) asm intro_car1.png intro_car1 > intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car2.png intro_car2 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car3.png intro_car3 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car4.png intro_car4 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car5.png intro_car5 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car6.png intro_car6 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car7.png intro_car7 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car8.png intro_car8 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car9.png intro_car9 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car10.png intro_car10 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car12.png intro_car12 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car13.png intro_car13 >> intro_car.inc
|
||||
# $(PNG2RLE) asm intro_car14.png intro_car14 >> intro_car.inc
|
||||
|
||||
|
||||
#####
|
||||
|
||||
#intro_building_car_lz4.inc: $(PNG2LZ4) intro_building_car.png
|
||||
# $(PNG2LZ4) asm intro_building_car.png building_car_rle > intro_building_car_lz4.inc
|
||||
|
||||
#####
|
||||
|
||||
#intro_building_lz4.inc: $(PNG2LZ4) intro_building.png
|
||||
# $(PNG2LZ4) asm intro_building.png building_rle > intro_building_lz4.inc
|
||||
|
||||
|
||||
|
||||
#####
|
||||
|
||||
#intro_car_lz4.inc: $(PNG2LZ4) intro_car1.png intro_car2.png \
|
||||
# intro_car3.png intro_car4.png intro_car5.png \
|
||||
# intro_car6.png intro_car7.png intro_car8.png \
|
||||
# intro_car9.png intro_car10.png intro_car12.png \
|
||||
# intro_car13.png intro_car14.png
|
||||
# $(PNG2LZ4) asm intro_car1.png intro_car1 > intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car2.png intro_car2 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car3.png intro_car3 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car4.png intro_car4 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car5.png intro_car5 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car6.png intro_car6 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car7.png intro_car7 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car8.png intro_car8 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car9.png intro_car9 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car10.png intro_car10 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car12.png intro_car12 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car13.png intro_car13 >> intro_car_lz4.inc
|
||||
# $(PNG2LZ4) asm intro_car14.png intro_car14 >> intro_car_lz4.inc
|
||||
|
||||
|
||||
#####
|
||||
|
||||
clean:
|
||||
|
|
|
@ -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
|
||||
|
||||
|
@ -42,62 +40,6 @@ feet.inc: feet01.lzsa feet02.lzsa \
|
|||
%.lzsa: %.gr
|
||||
$(LZSA) -r -f2 $< $@
|
||||
|
||||
|
||||
#outer_door.inc: $(PNG2RLE) outer_door.png
|
||||
# $(PNG2RLE) asm outer_door.png outer_door_rle > outer_door.inc
|
||||
|
||||
#feet.inc: $(PNG2RLE) feet01.png feet02.png \
|
||||
# feet03.png feet04.png feet05.png feet06.png \
|
||||
# feet07.png feet08.png feet09.png feet10.png \
|
||||
# feet11.png feet12.png feet13.png feet14.png \
|
||||
# feet15.png blank.png
|
||||
# $(PNG2RLE) asm feet01.png feet01_rle > feet.inc
|
||||
# $(PNG2RLE) asm feet02.png feet02_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet03.png feet03_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet04.png feet04_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet05.png feet05_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet06.png feet06_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet07.png feet07_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet08.png feet08_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet09.png feet09_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet10.png feet10_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet11.png feet11_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet12.png feet12_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet13.png feet13_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet14.png feet14_rle >> feet.inc
|
||||
# $(PNG2RLE) asm feet15.png feet15_rle >> feet.inc
|
||||
|
||||
|
||||
#####
|
||||
|
||||
#outer_door_lz4.inc: $(PNG2LZ4) outer_door.png
|
||||
# $(PNG2LZ4) asm outer_door.png outer_door_rle > outer_door_lz4.inc
|
||||
|
||||
#feet_lz4.inc: $(PNG2LZ4) feet01.png feet02.png \
|
||||
# feet03.png feet04.png feet05.png feet06.png \
|
||||
# feet07.png feet08.png feet09.png feet10.png \
|
||||
# feet11.png feet12.png feet13.png feet14.png \
|
||||
# feet15.png blank.png
|
||||
# $(PNG2LZ4) asm feet01.png feet01_rle > feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet02.png feet02_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet03.png feet03_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet04.png feet04_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet05.png feet05_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet06.png feet06_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet07.png feet07_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet08.png feet08_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet09.png feet09_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet10.png feet10_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet11.png feet11_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet12.png feet12_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet13.png feet13_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet14.png feet14_rle >> feet_lz4.inc
|
||||
# $(PNG2LZ4) asm feet15.png feet15_rle >> feet_lz4.inc
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#####
|
||||
|
||||
clean:
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
include ../../../../../Makefile.inc
|
||||
|
||||
#PNG2RLE = ../../../gr-utils/png2rle
|
||||
#PNG2LZ4 = ../../../gr-utils/png2lz4
|
||||
|
||||
PNG2GR = ../../../../../utils/gr-utils/png2gr
|
||||
LZSA = ~/research/lzsa/lzsa/lzsa
|
||||
|
||||
|
@ -41,49 +38,6 @@ intro_walking.inc: walking00.lzsa walking01.lzsa walking02.lzsa \
|
|||
%.lzsa: %.gr
|
||||
$(LZSA) -r -f2 $< $@
|
||||
|
||||
#####
|
||||
#
|
||||
#intro_elevator.inc: $(PNG2RLE) intro_elevator.png
|
||||
# $(PNG2RLE) asm intro_elevator.png elevator_rle > intro_elevator.inc
|
||||
#
|
||||
#intro_off_elevator.inc: $(PNG2RLE) intro_off_elevator.png
|
||||
# $(PNG2RLE) asm intro_off_elevator.png off_elevator_rle > intro_off_elevator.inc
|
||||
#
|
||||
#intro_walking.inc: $(PNG2RLE) walking00.png walking01.png walking02.png \
|
||||
# walking03.png walking04.png walking05.png walking06.png \
|
||||
# walking07.png walking08.png
|
||||
# $(PNG2RLE) asm walking01.png walking00_rle > intro_walking.inc
|
||||
# $(PNG2RLE) asm walking01.png walking01_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking02.png walking02_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking03.png walking03_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking04.png walking04_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking05.png walking05_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking06.png walking06_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking07.png walking07_rle >> intro_walking.inc
|
||||
# $(PNG2RLE) asm walking08.png walking08_rle >> intro_walking.inc
|
||||
|
||||
#####
|
||||
|
||||
#intro_elevator_lz4.inc: $(PNG2LZ4) intro_elevator.png
|
||||
# $(PNG2LZ4) asm intro_elevator.png elevator_rle > intro_elevator_lz4.inc
|
||||
|
||||
#intro_off_elevator_lz4.inc: $(PNG2LZ4) intro_off_elevator.png
|
||||
# $(PNG2LZ4) asm intro_off_elevator.png off_elevator_rle > intro_off_elevator_lz4.inc
|
||||
|
||||
#intro_walking_lz4.inc: $(PNG2LZ4) walking00.png walking01.png walking02.png \
|
||||
# walking03.png walking04.png walking05.png walking06.png \
|
||||
# walking07.png walking08.png
|
||||
# $(PNG2LZ4) asm walking01.png walking00_rle > intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking01.png walking01_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking02.png walking02_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking03.png walking03_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking04.png walking04_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking05.png walking05_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking06.png walking06_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking07.png walking07_rle >> intro_walking_lz4.inc
|
||||
# $(PNG2LZ4) asm walking08.png walking08_rle >> intro_walking_lz4.inc
|
||||
|
||||
|
||||
#####
|
||||
|
||||
clean:
|
||||
|
|
|
@ -33,460 +33,15 @@ repeat_intro:
|
|||
|
||||
jsr intro_01_building
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
; Walk into door
|
||||
;===============================
|
||||
;===============================
|
||||
;===============================
|
||||
; Walking to door
|
||||
|
||||
;==================================
|
||||
; draw feet going into door
|
||||
jsr intro_02_outer_door
|
||||
|
||||
lda #<feet_sequence
|
||||
sta INTRO_LOOPL
|
||||
lda #>feet_sequence
|
||||
sta INTRO_LOOPH
|
||||
;===============================
|
||||
; Elevator
|
||||
|
||||
jsr run_sequence
|
||||
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
; Elevator going down
|
||||
;===============================
|
||||
;===============================
|
||||
|
||||
elevator:
|
||||
;=============================
|
||||
; Load background to $c00 and $1000
|
||||
|
||||
lda #<(intro_elevator_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(intro_elevator_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$c ; load to off-screen $c00
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
lda #<(intro_elevator_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(intro_elevator_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$10 ; load also to off-screen $1000
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
lda #$66
|
||||
sta COLOR
|
||||
|
||||
; elevator outer door
|
||||
|
||||
ldx #39
|
||||
stx V2
|
||||
ldx #4
|
||||
ldy #14
|
||||
jsr vlin ; VLIN 4,39 AT 14 (X, V2 at Y)
|
||||
|
||||
ldx #35
|
||||
stx V2
|
||||
ldx #7
|
||||
ldy #18
|
||||
jsr vlin ; VLIN 7,35 AT 18 (X, V2 at Y)
|
||||
|
||||
; elevator inner door
|
||||
ldx #2
|
||||
stx ELEVATOR_COUNT
|
||||
elevator_middle:
|
||||
ldx #38
|
||||
stx V2
|
||||
ldx #5
|
||||
ldy #15
|
||||
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
ldx #36
|
||||
stx V2
|
||||
ldx #6
|
||||
ldy #17
|
||||
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
elevator_inner:
|
||||
ldx #37
|
||||
stx V2
|
||||
ldx #5
|
||||
ldy #16
|
||||
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
|
||||
|
||||
jsr page_flip
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
ldx #50
|
||||
jsr long_wait
|
||||
|
||||
dec ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
beq elevator_inner
|
||||
cmp #1
|
||||
beq elevator_middle
|
||||
|
||||
; door closed
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #100
|
||||
jsr long_wait
|
||||
|
||||
;======================
|
||||
; yellow line goes down
|
||||
;======================
|
||||
|
||||
lda #0
|
||||
sta COLOR
|
||||
lda #5
|
||||
sta V2
|
||||
yellow_line_down:
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
ldx #5
|
||||
ldy #16
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #12
|
||||
jsr long_wait
|
||||
|
||||
inc V2
|
||||
lda V2
|
||||
cmp #37
|
||||
bne yellow_line_down
|
||||
|
||||
lda DRAW_PAGE
|
||||
pha
|
||||
|
||||
lda #$c ; erase yellow line
|
||||
sta DRAW_PAGE ; on page $1000 version
|
||||
ldx #5
|
||||
ldy #16
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
pla
|
||||
sta DRAW_PAGE
|
||||
|
||||
;========================
|
||||
; change floor indicators
|
||||
;========================
|
||||
|
||||
lda #$33
|
||||
sta COLOR
|
||||
lda #5
|
||||
sta V2
|
||||
|
||||
lda #4
|
||||
sta PARTICLE_COUNT
|
||||
floor_loop:
|
||||
|
||||
jsr gr_copy_to_current_1000
|
||||
|
||||
lda PARTICLE_COUNT
|
||||
asl
|
||||
tay
|
||||
ldx indicators,Y
|
||||
lda indicators+1,Y
|
||||
|
||||
jsr plot
|
||||
|
||||
jsr page_flip
|
||||
ldx #150
|
||||
jsr long_wait
|
||||
|
||||
dec PARTICLE_COUNT
|
||||
bpl floor_loop
|
||||
|
||||
;====================
|
||||
; dark elevator
|
||||
;====================
|
||||
|
||||
; clear $c00 to black
|
||||
|
||||
lda DRAW_PAGE
|
||||
pha
|
||||
|
||||
lda #$8
|
||||
sta DRAW_PAGE
|
||||
jsr clear_all
|
||||
|
||||
pla
|
||||
sta DRAW_PAGE
|
||||
|
||||
; blue from 20, 30 - 20,34 and yellow (brown?) from 20,0 to 20,30
|
||||
; scrolls down until all yellow
|
||||
|
||||
lda #30
|
||||
sta ELEVATOR_COUNT
|
||||
going_down_loop:
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
|
||||
; draw the yellow part
|
||||
|
||||
lda #$DD
|
||||
sta COLOR
|
||||
lda ELEVATOR_COUNT
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
lda #$22 ; draw the blue part
|
||||
sta COLOR
|
||||
|
||||
lda ELEVATOR_COUNT
|
||||
clc
|
||||
adc #4
|
||||
cmp #40
|
||||
bmi not_too_big
|
||||
|
||||
lda #40
|
||||
not_too_big:
|
||||
sta V2
|
||||
ldx ELEVATOR_COUNT
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #8 ; pause
|
||||
jsr long_wait
|
||||
|
||||
inc ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
cmp #40
|
||||
bne going_down_loop
|
||||
|
||||
;=====================
|
||||
; all yellow for a bit
|
||||
;=====================
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
lda #$DD
|
||||
sta COLOR
|
||||
lda #40
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
jsr page_flip
|
||||
|
||||
ldx #100 ; wait a bit
|
||||
jsr long_wait
|
||||
|
||||
|
||||
; single blue dot
|
||||
; solid blue line 10 later
|
||||
|
||||
lda #2
|
||||
sta ELEVATOR_CYCLE
|
||||
|
||||
going_down_repeat:
|
||||
|
||||
lda #1
|
||||
sta ELEVATOR_COUNT
|
||||
going_down_blue:
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
|
||||
; draw the blue part
|
||||
|
||||
lda #$22
|
||||
sta COLOR
|
||||
lda ELEVATOR_COUNT
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
gdb_smc:
|
||||
lda #$dd ; draw the blue part
|
||||
sta COLOR
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx ELEVATOR_COUNT
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #8 ; pause
|
||||
jsr long_wait
|
||||
|
||||
inc ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
cmp #40
|
||||
bne going_down_blue
|
||||
|
||||
dec ELEVATOR_CYCLE
|
||||
beq elevator_exit
|
||||
|
||||
|
||||
lda #1
|
||||
sta ELEVATOR_COUNT
|
||||
going_down_black:
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
|
||||
; draw the blue part
|
||||
|
||||
lda #$00
|
||||
sta COLOR
|
||||
lda ELEVATOR_COUNT
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
lda #$22 ; draw the blue part
|
||||
sta COLOR
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx ELEVATOR_COUNT
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #8 ; pause
|
||||
jsr long_wait
|
||||
|
||||
inc ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
cmp #40
|
||||
bne going_down_black
|
||||
|
||||
lda #$00
|
||||
sta gdb_smc+1
|
||||
|
||||
jmp going_down_repeat
|
||||
|
||||
|
||||
; black, 2, blue, black about 20
|
||||
; blue until hit bottom, doors open
|
||||
|
||||
|
||||
|
||||
elevator_exit:
|
||||
|
||||
ldx #100 ; pause
|
||||
jsr long_wait
|
||||
|
||||
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
; Getting out of Elevator
|
||||
;===============================
|
||||
;===============================
|
||||
|
||||
|
||||
;=============================
|
||||
; Load elevator background
|
||||
|
||||
lda #<(intro_off_elevator_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(intro_off_elevator_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$c ; load to off-screen $c00
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
lda #<(walking00_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(walking00_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$10 ; load to off-screen $1000
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
|
||||
lda #10
|
||||
sta ELEVATOR_COUNT
|
||||
|
||||
elevator_open_loop:
|
||||
jsr gr_overlay ; note: overwrites color
|
||||
lda #$00
|
||||
sta COLOR
|
||||
|
||||
; Would have liked to have a central purple stripe, but not easy
|
||||
|
||||
; 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
||||
|
||||
|
||||
lda ELEVATOR_COUNT
|
||||
sta ELEVATOR_CYCLE
|
||||
elevator_inner_loop:
|
||||
lda #9
|
||||
clc
|
||||
adc ELEVATOR_CYCLE
|
||||
tay
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx #0
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
sec
|
||||
lda #30
|
||||
sbc ELEVATOR_CYCLE
|
||||
tay
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx #0
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
dec ELEVATOR_CYCLE
|
||||
bne elevator_inner_loop
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #25
|
||||
jsr long_wait ; pause
|
||||
|
||||
dec ELEVATOR_COUNT
|
||||
bne elevator_open_loop
|
||||
|
||||
;==================================
|
||||
; draw walking off the elevator
|
||||
|
||||
lda #<walking_sequence
|
||||
sta INTRO_LOOPL
|
||||
lda #>walking_sequence
|
||||
sta INTRO_LOOPH
|
||||
|
||||
jsr run_sequence
|
||||
|
||||
;======================================
|
||||
; make background black and pause a bit
|
||||
|
||||
jsr clear_all
|
||||
jsr page_flip
|
||||
|
||||
; no need to pause as uncompressing LZ4 below
|
||||
; takes a bit
|
||||
|
||||
; ldx #80
|
||||
; jsr long_wait
|
||||
jsr intro_03_elevator
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
|
@ -1843,27 +1398,10 @@ plot_particle:
|
|||
rts
|
||||
|
||||
|
||||
;.include "../intro_data.s"
|
||||
|
||||
|
||||
DATA_LOCATION = $9000
|
||||
|
||||
; intro1,intro2,intro3
|
||||
; get these addresses from intro_data_01.lst
|
||||
|
||||
.if 0
|
||||
building_sequence = (DATA_LOCATION+$06C9)
|
||||
feet_sequence = (DATA_LOCATION+$0DDD)
|
||||
walking_sequence = (DATA_LOCATION+$1304)
|
||||
|
||||
walking00_lzsa = (DATA_LOCATION+$0F10)
|
||||
intro_off_elevator_lzsa = (DATA_LOCATION+$0ECB)
|
||||
indicators = (DATA_LOCATION+$12FA)
|
||||
intro_elevator_lzsa = (DATA_LOCATION+$0DF9)
|
||||
.endif
|
||||
|
||||
intro1_data_lzsa:
|
||||
; .incbin "intro_data_01.lzsa"
|
||||
.include "intro_data_01.s"
|
||||
|
||||
; intro4,intro5
|
||||
|
||||
|
@ -1957,3 +1495,5 @@ intro9_data_lzsa:
|
|||
;========================
|
||||
|
||||
.include "intro_01_building.s"
|
||||
.include "intro_02_outer_door.s"
|
||||
.include "intro_03_elevator.s"
|
||||
|
|
|
@ -1,3 +1,27 @@
|
|||
;==================================
|
||||
; OOTW -- Intro -- Walking to door
|
||||
;==================================
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
; Walk into door
|
||||
;===============================
|
||||
;===============================
|
||||
|
||||
intro_02_outer_door:
|
||||
|
||||
;==================================
|
||||
; draw feet going into door
|
||||
|
||||
lda #<feet_sequence
|
||||
sta INTRO_LOOPL
|
||||
lda #>feet_sequence
|
||||
sta INTRO_LOOPH
|
||||
|
||||
jmp run_sequence ; returns for us
|
||||
|
||||
|
||||
|
||||
;=================================
|
||||
;=================================
|
||||
; Intro Segment 02 Data (Door)
|
||||
|
@ -8,7 +32,7 @@
|
|||
|
||||
.include "graphics/02_outer_door/outer_door.inc"
|
||||
.include "graphics/02_outer_door/feet.inc"
|
||||
;.include "graphics/08_lightning/nothing.inc"
|
||||
|
||||
|
||||
;=============================
|
||||
; Feet going in door sequence
|
||||
|
@ -39,41 +63,3 @@ feet_sequence:
|
|||
.word nothing_lzsa
|
||||
.byte 0
|
||||
|
||||
|
||||
;=================================
|
||||
;=================================
|
||||
; Intro Segment 03 Data (Elevator)
|
||||
;=================================
|
||||
;=================================
|
||||
|
||||
.include "graphics/03_elevator/intro_elevator.inc"
|
||||
.include "graphics/03_elevator/intro_off_elevator.inc"
|
||||
.include "graphics/03_elevator/intro_walking.inc"
|
||||
|
||||
|
||||
; Elevator light co-ordinates
|
||||
; we load them backwards
|
||||
indicators:
|
||||
.byte 18,4 ; 4
|
||||
.byte 16,3 ; 3
|
||||
.byte 14,2 ; 2
|
||||
.byte 18,2 ; 1
|
||||
.byte 16,1 ; 0
|
||||
|
||||
; Walking off elevator sequence
|
||||
|
||||
; FIXME: why do we skip walking00????
|
||||
|
||||
walking_sequence:
|
||||
.byte 20
|
||||
.word walking01_lzsa
|
||||
.byte 128+20 ; .word walking02_lzsa
|
||||
.byte 128+20 ; .word walking03_lzsa
|
||||
.byte 128+20 ; .word walking04_lzsa
|
||||
.byte 128+20 ; .word walking05_lzsa
|
||||
.byte 128+20 ; .word walking06_lzsa
|
||||
.byte 128+20 ; .word walking07_lzsa
|
||||
.byte 128+20 ; .word walking08_lzsa
|
||||
.byte 20
|
||||
.word walking08_lzsa
|
||||
.byte 0
|
|
@ -0,0 +1,477 @@
|
|||
;==============================
|
||||
; OOTW -- Intro -- The Elevator
|
||||
;==============================
|
||||
|
||||
|
||||
intro_03_elevator:
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
; Elevator going down
|
||||
;===============================
|
||||
;===============================
|
||||
|
||||
elevator:
|
||||
;=============================
|
||||
; Load background to $c00 and $1000
|
||||
|
||||
lda #<(intro_elevator_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(intro_elevator_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$c ; load to off-screen $c00
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
lda #<(intro_elevator_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(intro_elevator_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$10 ; load also to off-screen $1000
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
lda #$66
|
||||
sta COLOR
|
||||
|
||||
; elevator outer door
|
||||
|
||||
ldx #39
|
||||
stx V2
|
||||
ldx #4
|
||||
ldy #14
|
||||
jsr vlin ; VLIN 4,39 AT 14 (X, V2 at Y)
|
||||
|
||||
ldx #35
|
||||
stx V2
|
||||
ldx #7
|
||||
ldy #18
|
||||
jsr vlin ; VLIN 7,35 AT 18 (X, V2 at Y)
|
||||
|
||||
; elevator inner door
|
||||
ldx #2
|
||||
stx ELEVATOR_COUNT
|
||||
elevator_middle:
|
||||
ldx #38
|
||||
stx V2
|
||||
ldx #5
|
||||
ldy #15
|
||||
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
ldx #36
|
||||
stx V2
|
||||
ldx #6
|
||||
ldy #17
|
||||
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
elevator_inner:
|
||||
ldx #37
|
||||
stx V2
|
||||
ldx #5
|
||||
ldy #16
|
||||
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
|
||||
|
||||
jsr page_flip
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
ldx #50
|
||||
jsr long_wait
|
||||
|
||||
dec ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
beq elevator_inner
|
||||
cmp #1
|
||||
beq elevator_middle
|
||||
|
||||
; door closed
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #100
|
||||
jsr long_wait
|
||||
|
||||
;======================
|
||||
; yellow line goes down
|
||||
;======================
|
||||
|
||||
lda #0
|
||||
sta COLOR
|
||||
lda #5
|
||||
sta V2
|
||||
yellow_line_down:
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
ldx #5
|
||||
ldy #16
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #12
|
||||
jsr long_wait
|
||||
|
||||
inc V2
|
||||
lda V2
|
||||
cmp #37
|
||||
bne yellow_line_down
|
||||
|
||||
lda DRAW_PAGE
|
||||
pha
|
||||
|
||||
lda #$c ; erase yellow line
|
||||
sta DRAW_PAGE ; on page $1000 version
|
||||
ldx #5
|
||||
ldy #16
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
pla
|
||||
sta DRAW_PAGE
|
||||
|
||||
;========================
|
||||
; change floor indicators
|
||||
;========================
|
||||
|
||||
lda #$33
|
||||
sta COLOR
|
||||
lda #5
|
||||
sta V2
|
||||
|
||||
lda #4
|
||||
sta PARTICLE_COUNT
|
||||
floor_loop:
|
||||
|
||||
jsr gr_copy_to_current_1000
|
||||
|
||||
lda PARTICLE_COUNT
|
||||
asl
|
||||
tay
|
||||
ldx indicators,Y
|
||||
lda indicators+1,Y
|
||||
|
||||
jsr plot
|
||||
|
||||
jsr page_flip
|
||||
ldx #150
|
||||
jsr long_wait
|
||||
|
||||
dec PARTICLE_COUNT
|
||||
bpl floor_loop
|
||||
|
||||
;====================
|
||||
; dark elevator
|
||||
;====================
|
||||
|
||||
; clear $c00 to black
|
||||
|
||||
lda DRAW_PAGE
|
||||
pha
|
||||
|
||||
lda #$8
|
||||
sta DRAW_PAGE
|
||||
jsr clear_all
|
||||
|
||||
pla
|
||||
sta DRAW_PAGE
|
||||
|
||||
; blue from 20, 30 - 20,34 and yellow (brown?) from 20,0 to 20,30
|
||||
; scrolls down until all yellow
|
||||
|
||||
lda #30
|
||||
sta ELEVATOR_COUNT
|
||||
going_down_loop:
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
|
||||
; draw the yellow part
|
||||
|
||||
lda #$DD
|
||||
sta COLOR
|
||||
lda ELEVATOR_COUNT
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
lda #$22 ; draw the blue part
|
||||
sta COLOR
|
||||
|
||||
lda ELEVATOR_COUNT
|
||||
clc
|
||||
adc #4
|
||||
cmp #40
|
||||
bmi not_too_big
|
||||
|
||||
lda #40
|
||||
not_too_big:
|
||||
sta V2
|
||||
ldx ELEVATOR_COUNT
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #8 ; pause
|
||||
jsr long_wait
|
||||
|
||||
inc ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
cmp #40
|
||||
bne going_down_loop
|
||||
|
||||
;=====================
|
||||
; all yellow for a bit
|
||||
;=====================
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
lda #$DD
|
||||
sta COLOR
|
||||
lda #40
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
jsr page_flip
|
||||
|
||||
ldx #100 ; wait a bit
|
||||
jsr long_wait
|
||||
|
||||
|
||||
; single blue dot
|
||||
; solid blue line 10 later
|
||||
|
||||
lda #2
|
||||
sta ELEVATOR_CYCLE
|
||||
|
||||
going_down_repeat:
|
||||
|
||||
lda #1
|
||||
sta ELEVATOR_COUNT
|
||||
going_down_blue:
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
|
||||
; draw the blue part
|
||||
|
||||
lda #$22
|
||||
sta COLOR
|
||||
lda ELEVATOR_COUNT
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
gdb_smc:
|
||||
lda #$dd ; draw the blue part
|
||||
sta COLOR
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx ELEVATOR_COUNT
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #8 ; pause
|
||||
jsr long_wait
|
||||
|
||||
inc ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
cmp #40
|
||||
bne going_down_blue
|
||||
|
||||
dec ELEVATOR_CYCLE
|
||||
beq elevator_exit
|
||||
|
||||
|
||||
lda #1
|
||||
sta ELEVATOR_COUNT
|
||||
going_down_black:
|
||||
|
||||
jsr gr_copy_to_current ; copy black screen in
|
||||
|
||||
; draw the blue part
|
||||
|
||||
lda #$00
|
||||
sta COLOR
|
||||
lda ELEVATOR_COUNT
|
||||
sta V2
|
||||
ldx #0
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
lda #$22 ; draw the blue part
|
||||
sta COLOR
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx ELEVATOR_COUNT
|
||||
ldy #20
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #8 ; pause
|
||||
jsr long_wait
|
||||
|
||||
inc ELEVATOR_COUNT
|
||||
lda ELEVATOR_COUNT
|
||||
cmp #40
|
||||
bne going_down_black
|
||||
|
||||
lda #$00
|
||||
sta gdb_smc+1
|
||||
|
||||
jmp going_down_repeat
|
||||
|
||||
|
||||
; black, 2, blue, black about 20
|
||||
; blue until hit bottom, doors open
|
||||
|
||||
elevator_exit:
|
||||
|
||||
ldx #100 ; pause
|
||||
jsr long_wait
|
||||
|
||||
|
||||
|
||||
;===============================
|
||||
;===============================
|
||||
; Getting out of Elevator
|
||||
;===============================
|
||||
;===============================
|
||||
|
||||
|
||||
;=============================
|
||||
; Load elevator background
|
||||
|
||||
lda #<(intro_off_elevator_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(intro_off_elevator_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$c ; load to off-screen $c00
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
lda #<(walking00_lzsa)
|
||||
sta getsrc_smc+1 ; LZSA_SRC_LO
|
||||
lda #>(walking00_lzsa)
|
||||
sta getsrc_smc+2 ; LZSA_SRC_HI
|
||||
|
||||
lda #$10 ; load to off-screen $1000
|
||||
jsr decompress_lzsa2_fast
|
||||
|
||||
|
||||
lda #10
|
||||
sta ELEVATOR_COUNT
|
||||
|
||||
elevator_open_loop:
|
||||
jsr gr_overlay ; note: overwrites color
|
||||
lda #$00
|
||||
sta COLOR
|
||||
|
||||
; Would have liked to have a central purple stripe, but not easy
|
||||
|
||||
; 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
||||
|
||||
|
||||
lda ELEVATOR_COUNT
|
||||
sta ELEVATOR_CYCLE
|
||||
elevator_inner_loop:
|
||||
lda #9
|
||||
clc
|
||||
adc ELEVATOR_CYCLE
|
||||
tay
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx #0
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
sec
|
||||
lda #30
|
||||
sbc ELEVATOR_CYCLE
|
||||
tay
|
||||
|
||||
lda #40
|
||||
sta V2
|
||||
ldx #0
|
||||
jsr vlin ; X, V2 at Y
|
||||
|
||||
dec ELEVATOR_CYCLE
|
||||
bne elevator_inner_loop
|
||||
|
||||
jsr page_flip
|
||||
|
||||
ldx #25
|
||||
jsr long_wait ; pause
|
||||
|
||||
dec ELEVATOR_COUNT
|
||||
bne elevator_open_loop
|
||||
|
||||
;==================================
|
||||
; draw walking off the elevator
|
||||
|
||||
lda #<walking_sequence
|
||||
sta INTRO_LOOPL
|
||||
lda #>walking_sequence
|
||||
sta INTRO_LOOPH
|
||||
|
||||
jsr run_sequence
|
||||
|
||||
;======================================
|
||||
; make background black and pause a bit
|
||||
|
||||
jsr clear_all
|
||||
jsr page_flip
|
||||
|
||||
ldx #80
|
||||
jmp long_wait ; returns for us
|
||||
|
||||
|
||||
|
||||
;=================================
|
||||
;=================================
|
||||
; Intro Segment 03 Data (Elevator)
|
||||
;=================================
|
||||
;=================================
|
||||
|
||||
.include "graphics/03_elevator/intro_elevator.inc"
|
||||
.include "graphics/03_elevator/intro_off_elevator.inc"
|
||||
.include "graphics/03_elevator/intro_walking.inc"
|
||||
|
||||
|
||||
; Elevator light co-ordinates
|
||||
; we load them backwards
|
||||
indicators:
|
||||
.byte 18,4 ; 4
|
||||
.byte 16,3 ; 3
|
||||
.byte 14,2 ; 2
|
||||
.byte 18,2 ; 1
|
||||
.byte 16,1 ; 0
|
||||
|
||||
; Walking off elevator sequence
|
||||
|
||||
walking_sequence:
|
||||
.byte 20
|
||||
.word walking01_lzsa
|
||||
.byte 128+20 ; .word walking02_lzsa
|
||||
.byte 128+20 ; .word walking03_lzsa
|
||||
.byte 128+20 ; .word walking04_lzsa
|
||||
.byte 128+20 ; .word walking05_lzsa
|
||||
.byte 128+20 ; .word walking06_lzsa
|
||||
.byte 128+20 ; .word walking07_lzsa
|
||||
.byte 128+20 ; .word walking08_lzsa
|
||||
.byte 20
|
||||
.word walking08_lzsa
|
||||
.byte 0
|
Loading…
Reference in New Issue