mist: give names to all the raw constants for rooms
also split off the octagon room probably broke some things :(
@ -8,12 +8,13 @@ B2D = ../bmp2dhr/b2d
|
||||
|
||||
all: mist.dsk
|
||||
|
||||
mist.dsk: HELLO LOADER MIST_TITLE MIST MECHE SELENA
|
||||
mist.dsk: HELLO LOADER MIST_TITLE MIST OCTAGON MECHE SELENA
|
||||
cp empty.dsk mist.dsk
|
||||
$(DOS33) -y mist.dsk SAVE A HELLO
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x1000 LOADER
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x4000 MIST_TITLE
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x1400 MIST
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x1400 OCTAGON
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x1400 MECHE
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x1400 SELENA
|
||||
$(DOS33) -y mist.dsk BSAVE -a 0x9000 ./audio/link_noise.btc LINK_NOISE.BTC
|
||||
@ -55,10 +56,8 @@ mist.o: mist.s zp.inc hardware.inc common_defines.inc \
|
||||
common_sprites.inc \
|
||||
leveldata_mist.inc \
|
||||
clock_bridge_puzzle.s clock_sprites.inc \
|
||||
link_book_mist_dock.s \
|
||||
letter_cat.s \
|
||||
marker_switch.s \
|
||||
brother_books.s \
|
||||
keyboard.s \
|
||||
draw_pointer.s \
|
||||
end_level.s \
|
||||
@ -68,6 +67,25 @@ mist.o: mist.s zp.inc hardware.inc common_defines.inc \
|
||||
|
||||
####
|
||||
|
||||
OCTAGON: octagon.o
|
||||
ld65 -o OCTAGON octagon.o -C ../linker_scripts/apple2_1400.inc
|
||||
|
||||
octagon.o: octagon.s zp.inc hardware.inc common_defines.inc \
|
||||
graphics_octagon/octagon_graphics.inc \
|
||||
common_sprites.inc \
|
||||
leveldata_octagon.inc \
|
||||
letter_cat.s \
|
||||
marker_switch.s \
|
||||
brother_books.s \
|
||||
keyboard.s \
|
||||
draw_pointer.s \
|
||||
end_level.s \
|
||||
gr_copy.s audio.s text_print.s decompress_fast_v2.s
|
||||
ca65 -o octagon.o octagon.s -l octagon.lst
|
||||
|
||||
|
||||
####
|
||||
|
||||
MECHE: meche.o
|
||||
ld65 -o MECHE meche.o -C ../linker_scripts/apple2_1400.inc
|
||||
|
||||
@ -110,4 +128,4 @@ graphics_island/mist_graphics.inc:
|
||||
####
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst HELLO LOADER MIST_TITLE MIST MECHE SELENA
|
||||
rm -f *~ *.o *.lst HELLO LOADER MIST_TITLE MIST OCTAGON MECHE SELENA
|
||||
|
@ -1,3 +1,6 @@
|
||||
put settining init values into TITLE? This would allow save/load
|
||||
if we ever got to that point
|
||||
|
||||
Selena:
|
||||
+ turn around?
|
||||
+ whole way to tower thing
|
||||
|
@ -193,24 +193,24 @@ open_the_gear:
|
||||
|
||||
yes_gear_open:
|
||||
ldy #LOCATION_NORTH_EXIT
|
||||
lda #30
|
||||
sta location19,Y
|
||||
lda #MIST_OPEN_GEAR
|
||||
sta location15,Y ; MIST_GEAR
|
||||
|
||||
ldy #LOCATION_NORTH_EXIT_DIR
|
||||
lda #DIRECTION_E
|
||||
sta location19,Y
|
||||
sta location15,Y ; MIST_GEAR
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<gear_open_n_lzsa
|
||||
sta location19,Y
|
||||
sta location15,Y ; MIST_GEAR
|
||||
lda #>gear_open_n_lzsa
|
||||
sta location19+1,Y
|
||||
sta location15+1,Y ; MIST_GEAR
|
||||
|
||||
ldy #LOCATION_SOUTH_BG
|
||||
lda #<clock_inside_open_lzsa
|
||||
sta location27,Y
|
||||
sta location23,Y ; MIST_CLOCK_INSIDE
|
||||
lda #>clock_inside_open_lzsa
|
||||
sta location27+1,Y
|
||||
sta location23+1,Y ; MIST_CLOCK_INSIDE
|
||||
|
||||
jmp done_open_the_gear
|
||||
|
||||
@ -219,23 +219,23 @@ no_gear_open:
|
||||
|
||||
ldy #LOCATION_NORTH_EXIT
|
||||
lda #$FF
|
||||
sta location19,Y
|
||||
sta location15,Y ; MIST_GEAR
|
||||
|
||||
; ldy #LOCATION_NORTH_EXIT_DIR
|
||||
; lda #DIRECTION_E
|
||||
; sta location19,Y
|
||||
; sta location15,Y
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<gear_n_lzsa
|
||||
sta location19,Y
|
||||
sta location15,Y ; MIST_GEAR
|
||||
lda #>gear_n_lzsa
|
||||
sta location19+1,Y
|
||||
sta location15+1,Y ; MIST_GEAR
|
||||
|
||||
ldy #LOCATION_SOUTH_BG
|
||||
lda #<clock_inside_s_lzsa
|
||||
sta location27,Y
|
||||
lda #<clock_inside_s_lzsa ; MIST_CLOCK_INSIDE
|
||||
sta location23,Y
|
||||
lda #>clock_inside_s_lzsa
|
||||
sta location27+1,Y
|
||||
sta location23+1,Y
|
||||
|
||||
done_open_the_gear:
|
||||
|
||||
@ -254,49 +254,49 @@ raise_bridge:
|
||||
beq lower_bridge
|
||||
|
||||
ldy #LOCATION_SOUTH_EXIT
|
||||
lda #26
|
||||
sta location25,Y
|
||||
lda #MIST_CLOCK_ISLAND
|
||||
sta location21,Y ; MIST_CLOCK_PUZZLE
|
||||
|
||||
ldy #LOCATION_SOUTH_EXIT_DIR
|
||||
lda #DIRECTION_S
|
||||
sta location25,Y
|
||||
sta location21,Y ; MIST_CLOCK_PUZZLE
|
||||
|
||||
ldy #LOCATION_SOUTH_BG
|
||||
lda #<clock_puzzle_bridge_lzsa
|
||||
sta location25,Y
|
||||
sta location21,Y ; MIST_CLOCK_PUZZLE
|
||||
lda #>clock_puzzle_bridge_lzsa
|
||||
sta location25+1,Y
|
||||
sta location21+1,Y ; MIST_CLOCK_PUZZLE
|
||||
|
||||
; draw it on other too
|
||||
lda #<clock_bridge_lzsa
|
||||
sta location15,Y
|
||||
sta location11,Y ; MIST_CLOCK
|
||||
lda #>clock_bridge_lzsa
|
||||
sta location15+1,Y
|
||||
sta location11+1,Y ; MIST_CLOCK
|
||||
|
||||
jmp done_clock_bridge
|
||||
|
||||
lower_bridge:
|
||||
|
||||
ldy #LOCATION_SOUTH_EXIT
|
||||
lda #18
|
||||
sta location25,Y
|
||||
lda #MIST_TREE_CORRIDOR_5
|
||||
sta location21,Y ; MIST_CLOCK_PUZZLE
|
||||
|
||||
ldy #LOCATION_SOUTH_EXIT_DIR
|
||||
lda #DIRECTION_N
|
||||
sta location25,Y
|
||||
sta location21,Y ; MIST_CLOCK_PUZZLE
|
||||
|
||||
ldy #LOCATION_SOUTH_BG
|
||||
lda #<clock_puzzle_s_lzsa
|
||||
sta location25,Y
|
||||
sta location21,Y ; MIST_CLOCK_PUZZLE
|
||||
lda #>clock_puzzle_s_lzsa
|
||||
sta location25+1,Y
|
||||
sta location21+1,Y ; MIST_CLOCK_PUZZLE
|
||||
|
||||
; lower on other too
|
||||
|
||||
lda #<clock_s_lzsa
|
||||
sta location15,Y
|
||||
sta location11,Y ; MIST_CLOCK
|
||||
lda #>clock_s_lzsa
|
||||
sta location15+1,Y
|
||||
sta location11+1,Y ; MIST_CLOCK
|
||||
|
||||
done_clock_bridge:
|
||||
jsr change_location
|
||||
@ -430,13 +430,13 @@ check_gear_delete:
|
||||
bne done_gear_delete
|
||||
|
||||
lda LOCATION
|
||||
cmp #4
|
||||
cmp #MIST_ABOVE_DOCK
|
||||
beq gear_look1
|
||||
cmp #3
|
||||
cmp #MIST_DOCK_STEPS
|
||||
beq gear_look2
|
||||
cmp #20
|
||||
cmp #MIST_GEAR_BASE
|
||||
beq gear_look2
|
||||
cmp #5
|
||||
cmp #MIST_BASE_STEPS
|
||||
beq gear_look3
|
||||
bne done_gear_delete
|
||||
|
||||
|
@ -42,3 +42,97 @@ LOCATION_SPECIAL_Y1=20
|
||||
LOCATION_SPECIAL_Y2=21
|
||||
LOCATION_SPECIAL_FUNC=22 ; pointer-1 of function to call on click
|
||||
|
||||
|
||||
;================================
|
||||
; Loader definitions
|
||||
|
||||
LOAD_TITLE = $0
|
||||
LOAD_MIST = $1
|
||||
LOAD_MECHE = $2
|
||||
LOAD_SELENA = $3
|
||||
LOAD_OCTAGON = $4
|
||||
|
||||
|
||||
|
||||
;================================
|
||||
; Level definitions
|
||||
|
||||
; Title
|
||||
|
||||
TITLE_MIST_LINKING_DOCK = 0
|
||||
|
||||
; Mist
|
||||
|
||||
MIST_ARRIVAL_DOCK = 0
|
||||
MIST_DOCK_SWITCH = 1
|
||||
MIST_DOCK_STEPS = 2
|
||||
MIST_ABOVE_DOCK = 3
|
||||
MIST_BASE_STEPS = 4
|
||||
MIST_STEPS_1ST_LANDING = 5
|
||||
MIST_STEPS_2ND_LANDING = 6
|
||||
MIST_STEPS_DENTIST = 7
|
||||
MIST_STEPS_4TH_LANDING = 8
|
||||
MIST_OUTSIDE_TEMPLE = 9
|
||||
MIST_POOL = 10
|
||||
MIST_CLOCK = 11
|
||||
MIST_SPACESHIP_FAR = 12
|
||||
MIST_TREE_CORRIDOR_2 = 13
|
||||
MIST_TREE_CORRIDOR_5 = 14
|
||||
MIST_GEAR = 15
|
||||
MIST_GEAR_BASE = 16
|
||||
MIST_DENTIST_DOOR = 17
|
||||
MIST_SPACESHIP_SWITCH = 18
|
||||
MIST_TREE_CORRIDOR_4 = 19
|
||||
MIST_TREE_CABIN = 20
|
||||
MIST_CLOCK_PUZZLE = 21
|
||||
MIST_CLOCK_ISLAND = 22
|
||||
MIST_CLOCK_INSIDE = 23
|
||||
MIST_OPEN_GEAR = 24
|
||||
MIST_CHAIR_VIEW = 25
|
||||
MIST_GREEN_SHACK = 26
|
||||
MIST_GREEN_STEPS1 = 27
|
||||
MIST_GREEN_STEPS6 = 28
|
||||
MIST_GENERATOR_DOOR = 29
|
||||
MIST_GENERATOR_ROOM = 30
|
||||
MIST_ROCKET_PATH_PAD = 31
|
||||
MIST_ROCKET_CLOSE = 32
|
||||
MIST_TOWER2_PATH = 33
|
||||
MIST_TOWER2_BASE = 34
|
||||
MIST_TOWER2_TOP = 35
|
||||
MIST_TOWER1_TRAIL = 36
|
||||
MIST_TOWER1_TRAIL2 = 37
|
||||
MIST_TOWER1_BOTTOM = 38
|
||||
MIST_TOWER1_TOP = 39
|
||||
|
||||
|
||||
; Mist Octagon Building
|
||||
|
||||
OCTAGON_TEMPLE_DOORWAY = 0
|
||||
OCTAGON_TEMPLE_CENTER = 1
|
||||
OCTAGON_RED_BOOKSHELF = 2
|
||||
OCTAGON_FIREPLACE = 3
|
||||
OCTAGON_IN_FIREPLACE = 4
|
||||
OCTAGON_CEILING = 5
|
||||
|
||||
; Mechanical Engineering
|
||||
|
||||
MECHE_INSIDE_GEAR = 0
|
||||
MECHE_CLOSED_BOOK = 1
|
||||
MECHE_OPEN_BOOK = 2
|
||||
MECHE_ARRIVAL = 3
|
||||
MECHE_ENTRANCE = 4
|
||||
MECHE_FORT_VIEW = 5
|
||||
|
||||
; Selena Age
|
||||
|
||||
SELENA_INSIDE_SHIP = 0
|
||||
SELENA_CONTROLS = 1
|
||||
SELENA_ELECTRIC_ORGAN = 2
|
||||
SELENA_WALKWAY1 = 3
|
||||
SELENA_SPACESHIP_DOOR = 4
|
||||
SELENA_WALKWAY4 = 5
|
||||
SELENA_BUNKER = 6
|
||||
SELENA_SUB_ROOM = 7
|
||||
SELENA_BOOK_ROOM = 8
|
||||
SELENA_BOOK_CLOSED = 9
|
||||
SELENA_BOOK_OPEN = 10
|
||||
|
@ -1,15 +1,15 @@
|
||||
;=======================
|
||||
; flip circuit breaker
|
||||
|
||||
; if room==42, and with #$fe
|
||||
; if room==??, and with #$fd
|
||||
; if room==MIST_TOWER2_TOP, and with #$fe
|
||||
; if room==MIST_TOWER1_TOP, and with #$fd
|
||||
|
||||
circuit_breaker:
|
||||
|
||||
bit $C030 ; click speaker
|
||||
|
||||
lda LOCATION
|
||||
cmp #42
|
||||
cmp #MIST_TOWER2_TOP
|
||||
bne other_circuit_breaker
|
||||
|
||||
lda BREAKER_TRIPPED
|
||||
@ -53,16 +53,16 @@ open_ss_door:
|
||||
; change to open door image
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<spaceship_door_open_n_lzsa
|
||||
sta location38,Y
|
||||
sta location32,Y ; MIST_ROCKET_CLOSE
|
||||
lda #>spaceship_door_open_n_lzsa
|
||||
sta location38+1,Y
|
||||
sta location32+1,Y ; MIST_ROCKET_CLOSE
|
||||
|
||||
; change to load new level if through
|
||||
ldy #LOCATION_SPECIAL_FUNC
|
||||
lda #<(go_to_selena-1)
|
||||
sta location38,Y
|
||||
sta location32,Y ; MIST_ROCKET_CLOSE
|
||||
lda #>(go_to_selena-1)
|
||||
sta location38+1,Y
|
||||
sta location32+1,Y ; MIST_ROCKET_CLOSE
|
||||
|
||||
jsr change_location
|
||||
|
||||
@ -91,18 +91,18 @@ go_to_selena:
|
||||
open_gen_door:
|
||||
|
||||
ldy #LOCATION_NORTH_EXIT
|
||||
lda #36
|
||||
sta location35,Y
|
||||
lda #MIST_GENERATOR_ROOM
|
||||
sta location29,Y ; MIST_GENERATOR_DOOR
|
||||
|
||||
ldy #LOCATION_NORTH_EXIT_DIR
|
||||
lda #(DIRECTION_N | DIRECTION_SPLIT | DIRECTION_ONLY_POINT)
|
||||
sta location35,Y
|
||||
sta location29,Y ; MIST_GENERATOR_DOOR
|
||||
|
||||
ldy #LOCATION_NORTH_BG
|
||||
lda #<gen_door_open_n_lzsa
|
||||
sta location35,Y
|
||||
sta location29,Y ; MIST_GENERATOR_DOOR
|
||||
lda #>gen_door_open_n_lzsa
|
||||
sta location35+1,Y
|
||||
sta location29+1,Y ; MIST_GENERATOR_DOOR
|
||||
|
||||
jsr change_location
|
||||
|
||||
@ -129,7 +129,7 @@ needle_strings:
|
||||
|
||||
generator_button_press:
|
||||
|
||||
lda YPOS
|
||||
lda CURSOR_Y
|
||||
cmp #38
|
||||
bcs button_bottom_row ; bge
|
||||
|
||||
|
@ -20,15 +20,9 @@ mist_graphics.inc: \
|
||||
step_dentist_n.lzsa step_dentist_e.lzsa step_dentist_w.lzsa \
|
||||
step_land3_w.lzsa step_land3_e.lzsa \
|
||||
step_top_e.lzsa step_top_w.lzsa step_top_n.lzsa step_top_s.lzsa \
|
||||
temple_door_n.lzsa temple_door_s.lzsa \
|
||||
temple_center_n.lzsa temple_center_s.lzsa temple_center_e.lzsa \
|
||||
temple_center_w.lzsa temple_center_up.lzsa \
|
||||
red_book_shelf.lzsa \
|
||||
red_book_closed.lzsa \
|
||||
pool_s.lzsa \
|
||||
clock_s.lzsa clock_bridge.lzsa \
|
||||
spaceship_far_e.lzsa spaceship_far_n.lzsa \
|
||||
red_book_open.lzsa red_book_static.lzsa red_book_static2.lzsa \
|
||||
tree2_n.lzsa \
|
||||
tree5_n.lzsa tree5_e.lzsa \
|
||||
gear_n.lzsa gear_w.lzsa gear_s.lzsa gear_open_n.lzsa\
|
||||
@ -40,8 +34,6 @@ mist_graphics.inc: \
|
||||
clock_island_s.lzsa clock_island_n.lzsa \
|
||||
clock_puzzle_s.lzsa clock_puzzle_bridge.lzsa \
|
||||
clock_inside_s.lzsa clock_inside_open.lzsa \
|
||||
fireplace_e.lzsa \
|
||||
in_fireplace_w.lzsa in_fireplace_door.lzsa \
|
||||
gear_open_e.lzsa \
|
||||
chair_view_s.lzsa chair_view_n.lzsa \
|
||||
generator_n.lzsa generator_s.lzsa \
|
||||
@ -82,23 +74,11 @@ mist_graphics.inc: \
|
||||
echo "step_top_w_lzsa: .incbin \"step_top_w.lzsa\"" >> mist_graphics.inc
|
||||
echo "step_top_n_lzsa: .incbin \"step_top_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "step_top_s_lzsa: .incbin \"step_top_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_door_n_lzsa: .incbin \"temple_door_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_door_s_lzsa: .incbin \"temple_door_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_center_n_lzsa: .incbin \"temple_center_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_center_s_lzsa: .incbin \"temple_center_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_center_e_lzsa: .incbin \"temple_center_e.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_center_w_lzsa: .incbin \"temple_center_w.lzsa\"" >> mist_graphics.inc
|
||||
echo "temple_center_up_lzsa: .incbin \"temple_center_up.lzsa\"" >> mist_graphics.inc
|
||||
echo "red_book_closed_lzsa: .incbin \"red_book_closed.lzsa\"" >> mist_graphics.inc
|
||||
echo "red_book_shelf_lzsa: .incbin \"red_book_shelf.lzsa\"" >> mist_graphics.inc
|
||||
echo "pool_s_lzsa: .incbin \"pool_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "clock_s_lzsa: .incbin \"clock_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "clock_bridge_lzsa: .incbin \"clock_bridge.lzsa\"" >> mist_graphics.inc
|
||||
echo "spaceship_far_n_lzsa: .incbin \"spaceship_far_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "spaceship_far_e_lzsa: .incbin \"spaceship_far_e.lzsa\"" >> mist_graphics.inc
|
||||
echo "red_book_open_lzsa: .incbin \"red_book_open.lzsa\"" >> mist_graphics.inc
|
||||
echo "red_book_static_lzsa: .incbin \"red_book_static.lzsa\"" >> mist_graphics.inc
|
||||
echo "red_book_static2_lzsa: .incbin \"red_book_static2.lzsa\"" >> mist_graphics.inc
|
||||
echo "tree2_n_lzsa: .incbin \"tree2_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "tree5_n_lzsa: .incbin \"tree5_n.lzsa\"" >> mist_graphics.inc
|
||||
echo "tree5_e_lzsa: .incbin \"tree5_e.lzsa\"" >> mist_graphics.inc
|
||||
@ -121,9 +101,6 @@ mist_graphics.inc: \
|
||||
echo "clock_puzzle_bridge_lzsa: .incbin \"clock_puzzle_bridge.lzsa\"" >> mist_graphics.inc
|
||||
echo "clock_inside_s_lzsa: .incbin \"clock_inside_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "clock_inside_open_lzsa: .incbin \"clock_inside_open.lzsa\"" >> mist_graphics.inc
|
||||
echo "fireplace_e_lzsa: .incbin \"fireplace_e.lzsa\"" >> mist_graphics.inc
|
||||
echo "in_fireplace_w_lzsa: .incbin \"in_fireplace_w.lzsa\"" >> mist_graphics.inc
|
||||
echo "in_fireplace_door_lzsa: .incbin \"in_fireplace_door.lzsa\"" >> mist_graphics.inc
|
||||
echo "gear_open_e_lzsa: .incbin \"gear_open_e.lzsa\"" >> mist_graphics.inc
|
||||
echo "chair_view_s_lzsa: .incbin \"chair_view_s.lzsa\"" >> mist_graphics.inc
|
||||
echo "chair_view_n_lzsa: .incbin \"chair_view_n.lzsa\"" >> mist_graphics.inc
|
||||
@ -164,4 +141,4 @@ mist_graphics.inc: \
|
||||
####
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst *.gr mist_graphics.inc
|
||||
rm -f *~ *.o *.lst *.gr *.lzsa mist_graphics.inc
|
||||
|
@ -23,23 +23,11 @@ step_top_e_lzsa: .incbin "step_top_e.lzsa"
|
||||
step_top_w_lzsa: .incbin "step_top_w.lzsa"
|
||||
step_top_n_lzsa: .incbin "step_top_n.lzsa"
|
||||
step_top_s_lzsa: .incbin "step_top_s.lzsa"
|
||||
temple_door_n_lzsa: .incbin "temple_door_n.lzsa"
|
||||
temple_door_s_lzsa: .incbin "temple_door_s.lzsa"
|
||||
temple_center_n_lzsa: .incbin "temple_center_n.lzsa"
|
||||
temple_center_s_lzsa: .incbin "temple_center_s.lzsa"
|
||||
temple_center_e_lzsa: .incbin "temple_center_e.lzsa"
|
||||
temple_center_w_lzsa: .incbin "temple_center_w.lzsa"
|
||||
temple_center_up_lzsa: .incbin "temple_center_up.lzsa"
|
||||
red_book_closed_lzsa: .incbin "red_book_closed.lzsa"
|
||||
red_book_shelf_lzsa: .incbin "red_book_shelf.lzsa"
|
||||
pool_s_lzsa: .incbin "pool_s.lzsa"
|
||||
clock_s_lzsa: .incbin "clock_s.lzsa"
|
||||
clock_bridge_lzsa: .incbin "clock_bridge.lzsa"
|
||||
spaceship_far_n_lzsa: .incbin "spaceship_far_n.lzsa"
|
||||
spaceship_far_e_lzsa: .incbin "spaceship_far_e.lzsa"
|
||||
red_book_open_lzsa: .incbin "red_book_open.lzsa"
|
||||
red_book_static_lzsa: .incbin "red_book_static.lzsa"
|
||||
red_book_static2_lzsa: .incbin "red_book_static2.lzsa"
|
||||
tree2_n_lzsa: .incbin "tree2_n.lzsa"
|
||||
tree5_n_lzsa: .incbin "tree5_n.lzsa"
|
||||
tree5_e_lzsa: .incbin "tree5_e.lzsa"
|
||||
@ -62,9 +50,6 @@ clock_puzzle_s_lzsa: .incbin "clock_puzzle_s.lzsa"
|
||||
clock_puzzle_bridge_lzsa: .incbin "clock_puzzle_bridge.lzsa"
|
||||
clock_inside_s_lzsa: .incbin "clock_inside_s.lzsa"
|
||||
clock_inside_open_lzsa: .incbin "clock_inside_open.lzsa"
|
||||
fireplace_e_lzsa: .incbin "fireplace_e.lzsa"
|
||||
in_fireplace_w_lzsa: .incbin "in_fireplace_w.lzsa"
|
||||
in_fireplace_door_lzsa: .incbin "in_fireplace_door.lzsa"
|
||||
gear_open_e_lzsa: .incbin "gear_open_e.lzsa"
|
||||
chair_view_s_lzsa: .incbin "chair_view_s.lzsa"
|
||||
chair_view_n_lzsa: .incbin "chair_view_n.lzsa"
|
||||
|
48
mist/graphics_octagon/Makefile
Normal file
@ -0,0 +1,48 @@
|
||||
#include ../Makefile.inc
|
||||
|
||||
PNG2RLE = ../../gr-utils/png2rle
|
||||
PNG2GR = ../../gr-utils/png2gr
|
||||
LZSA = ~/research/lzsa/lzsa/lzsa
|
||||
|
||||
all: octagon_graphics.inc
|
||||
|
||||
|
||||
####
|
||||
|
||||
octagon_graphics.inc: \
|
||||
temple_door_n.lzsa temple_door_s.lzsa \
|
||||
temple_center_n.lzsa temple_center_s.lzsa temple_center_e.lzsa \
|
||||
temple_center_w.lzsa temple_center_up.lzsa \
|
||||
red_book_shelf.lzsa \
|
||||
red_book_open.lzsa red_book_closed.lzsa \
|
||||
red_book_static.lzsa red_book_static2.lzsa \
|
||||
fireplace_e.lzsa \
|
||||
in_fireplace_w.lzsa in_fireplace_door.lzsa
|
||||
echo "temple_door_n_lzsa: .incbin \"temple_door_n.lzsa\"" > octagon_graphics.inc
|
||||
echo "temple_door_s_lzsa: .incbin \"temple_door_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_n_lzsa: .incbin \"temple_center_n.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_s_lzsa: .incbin \"temple_center_s.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_e_lzsa: .incbin \"temple_center_e.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_w_lzsa: .incbin \"temple_center_w.lzsa\"" >> octagon_graphics.inc
|
||||
echo "temple_center_up_lzsa: .incbin \"temple_center_up.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_open_lzsa: .incbin \"red_book_open.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_closed_lzsa: .incbin \"red_book_closed.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_shelf_lzsa: .incbin \"red_book_shelf.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_static_lzsa: .incbin \"red_book_static.lzsa\"" >> octagon_graphics.inc
|
||||
echo "red_book_static2_lzsa: .incbin \"red_book_static2.lzsa\"" >> octagon_graphics.inc
|
||||
echo "fireplace_e_lzsa: .incbin \"fireplace_e.lzsa\"" >> octagon_graphics.inc
|
||||
echo "in_fireplace_w_lzsa: .incbin \"in_fireplace_w.lzsa\"" >> octagon_graphics.inc
|
||||
echo "in_fireplace_door_lzsa: .incbin \"in_fireplace_door.lzsa\"" >> octagon_graphics.inc
|
||||
|
||||
|
||||
|
||||
%.gr: %.png
|
||||
$(PNG2GR) $< $@
|
||||
|
||||
%.lzsa: %.gr
|
||||
$(LZSA) -r -f2 $< $@
|
||||
|
||||
####
|
||||
|
||||
clean:
|
||||
rm -f *~ *.o *.lst *.gr octagon_graphics.inc
|
Before Width: | Height: | Size: 897 B After Width: | Height: | Size: 897 B |
Before Width: | Height: | Size: 918 B After Width: | Height: | Size: 918 B |
Before Width: | Height: | Size: 1000 B After Width: | Height: | Size: 1000 B |
Before Width: | Height: | Size: 771 B After Width: | Height: | Size: 771 B |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 979 B After Width: | Height: | Size: 979 B |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 831 B After Width: | Height: | Size: 831 B |
@ -7,12 +7,12 @@ locations:
|
||||
.word location0, location1, location2, location3
|
||||
.word location4, location5
|
||||
|
||||
; Inside gear on Mist
|
||||
; MECHE_INSIDE_GEAR -- Inside gear on Mist
|
||||
location0:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 1 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MECHE_CLOSED_BOOK ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -25,12 +25,12 @@ location0:
|
||||
.byte $ff ; special exit
|
||||
|
||||
|
||||
; closed book
|
||||
; MECHE_CLOSED_BOOK -- closed book
|
||||
location1:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 2 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MECHE_OPEN_BOOK ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -42,12 +42,12 @@ location1:
|
||||
.byte BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; open book
|
||||
; MECHE_OPEN_BOOK -- open book
|
||||
location2:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 0 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MECHE_INSIDE_GEAR ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -63,12 +63,12 @@ location2:
|
||||
.word meche_link_book-1 ; special function
|
||||
|
||||
|
||||
; arrival
|
||||
; MECHE_ARRIVAL -- arrival
|
||||
location3:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 4 ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MECHE_ENTRANCE ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -80,12 +80,12 @@ location3:
|
||||
.byte BG_WEST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; entrance
|
||||
; MECHE_ENTRANCE -- entrance
|
||||
location4:
|
||||
.byte 5 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 3 ; west exit
|
||||
.byte MECHE_FORT_VIEW ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MECHE_ARRIVAL ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -97,12 +97,12 @@ location4:
|
||||
.byte BG_NORTH|BG_SOUTH|BG_EAST|BG_WEST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; fort view
|
||||
; MECHE_FORT_VIEW -- fort view
|
||||
location5:
|
||||
.byte 5 ; north exit
|
||||
.byte 4 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte MECHE_FORT_VIEW ; north exit
|
||||
.byte MECHE_ENTRANCE ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_S ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
|
@ -4,7 +4,7 @@
|
||||
;===============================================
|
||||
|
||||
locations:
|
||||
.word location1, location1, location2, location3
|
||||
.word location0, location1, location2, location3
|
||||
.word location4, location5, location6, location7
|
||||
.word location8, location9, location10,location11
|
||||
.word location12,location13,location14,location15
|
||||
@ -14,36 +14,13 @@ locations:
|
||||
.word location28,location29,location30,location31
|
||||
.word location32,location33,location34,location35
|
||||
.word location36,location37,location38,location39
|
||||
.word location40,location41,location42,location43
|
||||
.word location44,location45,location46
|
||||
|
||||
; myst linking book
|
||||
;location0:
|
||||
; .byte $ff ; north exit
|
||||
; .byte $ff ; south exit
|
||||
; .byte $ff ; east exit
|
||||
; .byte $ff ; west exit
|
||||
; .byte $ff ; north exit_dir
|
||||
; .byte $ff ; south exit_dir
|
||||
; .byte $ff ; east exit_dir
|
||||
; .byte $ff ; west exit_dir
|
||||
; .word m_link_book_lzsa ; north bg
|
||||
; .word $0000 ; south bg
|
||||
; .word $0000 ; east bg
|
||||
; .word $0000 ; west bg
|
||||
; .byte BG_NORTH ; only north bg
|
||||
; .byte DIRECTION_N ; special exit
|
||||
; .byte 21,31 ; special x
|
||||
; .byte 10,24 ; special y
|
||||
; .word mist_link_book-1 ; special function
|
||||
|
||||
|
||||
; dock
|
||||
location1:
|
||||
.byte $2 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_ARRIVAL_DOCK -- dock
|
||||
location0:
|
||||
.byte MIST_DOCK_SWITCH ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -55,12 +32,12 @@ location1:
|
||||
.byte BG_EAST|BG_NORTH|BG_SOUTH|BG_WEST ; all bgs
|
||||
.byte $ff ; special exit
|
||||
|
||||
; by dock switch
|
||||
location2:
|
||||
.byte 3 ; north exit
|
||||
.byte 1 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_DOCK_SWITCH -- by dock switch
|
||||
location1:
|
||||
.byte MIST_DOCK_STEPS ; north exit
|
||||
.byte MIST_DOCK_SWITCH ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_W ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -75,14 +52,12 @@ location2:
|
||||
.byte 25,32 ; special y
|
||||
.word click_switch-1 ; special function
|
||||
|
||||
|
||||
|
||||
; dock steps
|
||||
location3:
|
||||
.byte 19 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 2 ; east exit
|
||||
.byte 4 ; west exit
|
||||
; MIST_DOCK_STEPS -- dock steps
|
||||
location2:
|
||||
.byte MIST_GEAR ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_DOCK_SWITCH ; east exit
|
||||
.byte MIST_ABOVE_DOCK ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_S ; east exit_dir
|
||||
@ -96,12 +71,12 @@ location3:
|
||||
|
||||
|
||||
|
||||
; above dock path
|
||||
location4:
|
||||
.byte 20 ; north exit
|
||||
.byte 5 ; south exit
|
||||
.byte 2 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_ABOVE_DOCK -- above dock path
|
||||
location3:
|
||||
.byte MIST_GEAR_BASE ; north exit
|
||||
.byte MIST_BASE_STEPS ; south exit
|
||||
.byte MIST_DOCK_SWITCH ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte DIRECTION_S ; east exit_dir
|
||||
@ -114,11 +89,11 @@ location4:
|
||||
.byte $ff ; special exit
|
||||
|
||||
; base of steps
|
||||
location5:
|
||||
.byte 4 ; north exit
|
||||
.byte 6 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
location4:
|
||||
.byte MIST_ABOVE_DOCK ; north exit
|
||||
.byte MIST_STEPS_1ST_LANDING ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_W ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -130,12 +105,12 @@ location5:
|
||||
.byte BG_SOUTH|BG_NORTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; steps 1st landing
|
||||
location6:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 5 ; east exit
|
||||
.byte 7 ; west exit
|
||||
; MIST_STEPS_1ST_LANDING -- steps 1st landing
|
||||
location5:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_BASE_STEPS ; east exit
|
||||
.byte MIST_STEPS_2ND_LANDING ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_N ; east exit_dir
|
||||
@ -147,12 +122,12 @@ location6:
|
||||
.byte BG_WEST | BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; steps 2nd landing
|
||||
location7:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 6 ; east exit
|
||||
.byte 8 ; west exit
|
||||
; MIST_STEPS_2ND_LANDING -- steps 2nd landing
|
||||
location6:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_STEPS_1ST_LANDING ; east exit
|
||||
.byte MIST_STEPS_DENTIST ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -168,12 +143,12 @@ location7:
|
||||
.word read_letter-1
|
||||
|
||||
|
||||
; steps outside dentist chair branch
|
||||
location8:
|
||||
.byte 21 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 7 ; east exit
|
||||
.byte 9 ; west exit
|
||||
; MIST_STEPS_DENTIST -- steps outside dentist chair branch
|
||||
location7:
|
||||
.byte MIST_DENTIST_DOOR ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_STEPS_2ND_LANDING ; east exit
|
||||
.byte 8 ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -185,12 +160,12 @@ location8:
|
||||
.byte BG_EAST|BG_WEST|BG_NORTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; steps one more time up
|
||||
location9:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 8 ; east exit
|
||||
.byte 10 ; west exit
|
||||
; MIST_STEPS_4TH_LANDING -- steps one more time up
|
||||
location8:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_STEPS_DENTIST ; east exit
|
||||
.byte MIST_OUTSIDE_TEMPLE ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -202,12 +177,13 @@ location9:
|
||||
.byte BG_WEST | BG_EAST ; west and eastl
|
||||
.byte $ff ; special exit
|
||||
|
||||
; at the top outside temple
|
||||
location10:
|
||||
.byte 11 ; north exit
|
||||
.byte 14 ; south exit
|
||||
.byte 9 ; east exit
|
||||
.byte 37 ; west exit
|
||||
; MIST_OUTSIDE_TEMPLE -- at the top outside temple
|
||||
location9:
|
||||
; .byte 10 ; north exit
|
||||
.byte $ff ; north exit
|
||||
.byte MIST_POOL ; south exit
|
||||
.byte MIST_STEPS_4TH_LANDING ; east exit
|
||||
.byte MIST_ROCKET_PATH_PAD ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -219,67 +195,13 @@ location10:
|
||||
.byte BG_EAST|BG_WEST|BG_NORTH|BG_SOUTH ; all dirs
|
||||
.byte $ff ; special exit
|
||||
|
||||
; temple doorway
|
||||
location11:
|
||||
.byte 12 ; north exit
|
||||
.byte 10 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word temple_door_n_lzsa ; north bg
|
||||
.word temple_door_s_lzsa ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH|BG_SOUTH ; north and south
|
||||
.byte $ff ; special exit
|
||||
|
||||
; temple inside
|
||||
location12:
|
||||
.byte $ff ; north exit
|
||||
.byte 11 ; south exit
|
||||
.byte 28 ; east exit
|
||||
.byte 13 ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word temple_center_n_lzsa ; north bg
|
||||
.word temple_center_s_lzsa ; south bg
|
||||
.word temple_center_e_lzsa ; east bg
|
||||
.word temple_center_w_lzsa ; west bg
|
||||
.byte BG_NORTH|BG_WEST|BG_SOUTH|BG_EAST ; all directions
|
||||
.byte $ff ; special exit
|
||||
|
||||
; red book shelf
|
||||
location13:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 12 ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word red_book_shelf_lzsa ; west bg
|
||||
.byte BG_WEST ; west
|
||||
.byte DIRECTION_N ; special exit
|
||||
.byte 16,25 ; special x
|
||||
.byte 16,32 ; special y
|
||||
.word red_book-1 ; special function
|
||||
|
||||
|
||||
; pool
|
||||
location14:
|
||||
.byte $ff ; north exit
|
||||
.byte 23 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_POOL -- pool
|
||||
location10:
|
||||
.byte $ff ; north exit
|
||||
.byte MIST_TREE_CORRIDOR_4 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -291,12 +213,12 @@ location14:
|
||||
.byte BG_SOUTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; clock
|
||||
location15:
|
||||
.byte $ff ; north exit
|
||||
.byte 25 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_CLOCK -- clock
|
||||
location11:
|
||||
.byte $ff ; north exit
|
||||
.byte MIST_CLOCK_PUZZLE ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -308,12 +230,12 @@ location15:
|
||||
.byte BG_SOUTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; spaceship far
|
||||
location16:
|
||||
.byte 22 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 37 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_SPACESHIP_FAR -- spaceship far
|
||||
location12:
|
||||
.byte MIST_SPACESHIP_SWITCH ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_ROCKET_PATH_PAD ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -325,12 +247,12 @@ location16:
|
||||
.byte BG_NORTH|BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; tree corridor #2
|
||||
location17:
|
||||
.byte 10 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TREE_CORRIDOR_2 -- tree corridor #2
|
||||
location13:
|
||||
.byte MIST_OUTSIDE_TEMPLE ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -345,12 +267,12 @@ location17:
|
||||
.byte 19,23 ; special y
|
||||
.word click_switch-1 ; special function
|
||||
|
||||
; tree corridor #5
|
||||
location18:
|
||||
.byte 23 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 24 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TREE_CORRIDOR_5 -- tree corridor #5
|
||||
location14:
|
||||
.byte MIST_TREE_CORRIDOR_4 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_TREE_CABIN ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -362,12 +284,12 @@ location18:
|
||||
.byte BG_NORTH | BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; gear
|
||||
location19:
|
||||
.byte $ff ; north exit
|
||||
.byte 4 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_GEAR -- gear
|
||||
location15:
|
||||
.byte $ff ; north exit
|
||||
.byte MIST_ABOVE_DOCK ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_E ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -383,12 +305,12 @@ location19:
|
||||
.word click_switch-1 ; special function
|
||||
|
||||
|
||||
; gear base
|
||||
location20:
|
||||
.byte 19 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 2 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_GEAR_BASE -- gear base
|
||||
location16:
|
||||
.byte MIST_GEAR ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_DOCK_SWITCH ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_S ; east exit_dir
|
||||
@ -400,12 +322,12 @@ location20:
|
||||
.byte BG_NORTH | BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; dentist door
|
||||
location21:
|
||||
.byte 31 ; north exit
|
||||
.byte 9 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_DENTIST_DOOR -- dentist door
|
||||
location17:
|
||||
.byte MIST_CHAIR_VIEW ; north exit
|
||||
.byte MIST_STEPS_4TH_LANDING ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_W ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -417,12 +339,12 @@ location21:
|
||||
.byte BG_NORTH | BG_SOUTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; spaceship switch
|
||||
location22:
|
||||
.byte 38 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_SPACESHIP_SWITCH -- spaceship switch
|
||||
location18:
|
||||
.byte MIST_ROCKET_CLOSE ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -434,12 +356,12 @@ location22:
|
||||
.byte BG_NORTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; tree corridor4 (with generator switch)
|
||||
location23:
|
||||
.byte 17 ; north exit
|
||||
.byte 15 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 43 ; west exit
|
||||
; MIST_TREE_CORRIDOR_4 -- tree corridor4 (with generator switch)
|
||||
location19:
|
||||
.byte MIST_TREE_CORRIDOR_2 ; north exit
|
||||
.byte MIST_CLOCK ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MIST_TOWER1_TRAIL ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -454,12 +376,12 @@ location23:
|
||||
.byte 0,46 ; special y
|
||||
.word green_house-1 ; special function
|
||||
|
||||
; tree cabin
|
||||
location24:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 18 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TREE_CABIN -- tree cabin
|
||||
location20:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_TREE_CORRIDOR_5 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -471,12 +393,12 @@ location24:
|
||||
.byte BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; clock puzzle
|
||||
location25:
|
||||
.byte $ff ; north exit
|
||||
.byte 18 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_CLOCK_PUZZLE -- clock puzzle
|
||||
location21:
|
||||
.byte $ff ; north exit
|
||||
.byte MIST_TREE_CORRIDOR_5 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_N ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -491,10 +413,10 @@ location25:
|
||||
.byte 38,48 ; special y
|
||||
.word clock_puzzle-1 ; special function
|
||||
|
||||
; clock island
|
||||
location26:
|
||||
.byte 18 ; north exit
|
||||
.byte 27 ; south exit
|
||||
; MIST_CLOCK_ISLAND -- clock island
|
||||
location22:
|
||||
.byte MIST_TREE_CORRIDOR_5 ; north exit
|
||||
.byte MIST_CLOCK_INSIDE ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
@ -508,12 +430,12 @@ location26:
|
||||
.byte BG_SOUTH|BG_NORTH
|
||||
.byte $ff ; special exit
|
||||
|
||||
; clock inside
|
||||
location27:
|
||||
.byte $ff ; north exit
|
||||
.byte 26 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MYST_CLOCK_INSIDE -- clock inside
|
||||
location23:
|
||||
.byte $ff ; north exit
|
||||
.byte MIST_CLOCK_ISLAND ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_N ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -528,45 +450,12 @@ location27:
|
||||
.byte 8,32 ; special y
|
||||
.word clock_inside_puzzle-1 ; special function
|
||||
|
||||
; fireplace
|
||||
location28:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 29 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_W ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word fireplace_e_lzsa ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; in fireplace
|
||||
location29:
|
||||
; MIST_OPEN_GEAR -- open_gear (?)
|
||||
location24:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 12 ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word in_fireplace_w_lzsa ; west bg
|
||||
.byte BG_WEST ; west
|
||||
.byte $ff ; special exit
|
||||
|
||||
; open_gear
|
||||
location30:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 19 ; east exit
|
||||
.byte MIST_GEAR ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
@ -582,12 +471,12 @@ location30:
|
||||
.byte 14,24 ; special y
|
||||
.word go_to_meche-1 ; special function
|
||||
|
||||
; chair view
|
||||
location31:
|
||||
.byte 31 ; north exit
|
||||
.byte 21 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_CHAIR_VIEW -- chair view
|
||||
location25:
|
||||
.byte MIST_CHAIR_VIEW ; north exit
|
||||
.byte MIST_DENTIST_DOOR ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_S ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -599,12 +488,12 @@ location31:
|
||||
.byte BG_NORTH | BG_SOUTH
|
||||
.byte $ff ; TODO: lightswitch
|
||||
|
||||
; green shack
|
||||
location32:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 23 ; east exit
|
||||
.byte 33 ; west exit
|
||||
; MIST_GREEN_SHACK
|
||||
location26:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_TREE_CORRIDOR_4 ; east exit
|
||||
.byte MIST_GREEN_STEPS1 ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -616,12 +505,12 @@ location32:
|
||||
.byte BG_EAST | BG_WEST
|
||||
.byte $ff
|
||||
|
||||
; green shack steps 1
|
||||
location33:
|
||||
.byte 34 ; north exit
|
||||
.byte 32 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_GREEN_STEPS1 -- green shack steps 1
|
||||
location27:
|
||||
.byte MIST_GREEN_STEPS6 ; north exit
|
||||
.byte MIST_GREEN_SHACK ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_E ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -633,12 +522,12 @@ location33:
|
||||
.byte BG_NORTH | BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; green shack steps 6
|
||||
location34:
|
||||
.byte 35 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 33 ; west exit
|
||||
; MIST_GREEN_STEPS6 -- green shack steps 6
|
||||
location28:
|
||||
.byte MIST_GENERATOR_DOOR ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MIST_GREEN_STEPS1 ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -650,12 +539,12 @@ location34:
|
||||
.byte BG_NORTH | BG_WEST
|
||||
.byte $ff
|
||||
|
||||
; generator room door
|
||||
location35:
|
||||
.byte 35 ; north exit
|
||||
.byte 34 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_GENERATOR_DOOR -- generator room door
|
||||
location29:
|
||||
.byte MIST_GENERATOR_DOOR ; north exit
|
||||
.byte MIST_GREEN_STEPS6 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_S ; north exit_dir
|
||||
.byte DIRECTION_W ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -671,10 +560,10 @@ location35:
|
||||
.word open_gen_door-1 ; special function
|
||||
|
||||
|
||||
; generator room
|
||||
location36:
|
||||
.byte 36 ; north exit
|
||||
.byte 35 ; south exit
|
||||
; MIST_GENERATOR_ROOM -- generator room
|
||||
location30:
|
||||
.byte MIST_GENERATOR_ROOM ; north exit
|
||||
.byte MIST_GENERATOR_DOOR ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_S ; north exit_dir
|
||||
@ -691,12 +580,12 @@ location36:
|
||||
.byte 34,40 ; special y
|
||||
.word generator_button_press-1 ; special function
|
||||
|
||||
; pad on way to rocket
|
||||
location37:
|
||||
.byte 16 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 10 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_ROCKET_PATH_PAD -- pad on way to rocket
|
||||
location31:
|
||||
.byte MIST_SPACESHIP_FAR ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_OUTSIDE_TEMPLE ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -711,12 +600,12 @@ location37:
|
||||
.byte 0,48 ; special y
|
||||
.word pad_special-1 ; special function
|
||||
|
||||
; rocket close in
|
||||
location38:
|
||||
.byte 16 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_ROCKET_CLOSE -- rocket close in
|
||||
location32:
|
||||
.byte MIST_SPACESHIP_FAR ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_E ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -731,29 +620,13 @@ location38:
|
||||
.byte 8,46 ; special y
|
||||
.word open_ss_door-1 ; special function
|
||||
|
||||
; ceiling of temple
|
||||
location39:
|
||||
.byte 12 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word temple_center_up_lzsa ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH
|
||||
.byte $ff
|
||||
|
||||
; tower2 path
|
||||
location40:
|
||||
.byte 41 ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 37 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TOWER2_PATH -- tower2 path
|
||||
location33:
|
||||
.byte MIST_TOWER2_BASE ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_ROCKET_PATH_PAD ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_W|DIRECTION_ONLY_POINT ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -765,12 +638,12 @@ location40:
|
||||
.byte BG_NORTH|BG_EAST
|
||||
.byte $ff
|
||||
|
||||
; tower2 base
|
||||
location41:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 40 ; west exit
|
||||
; MIST_TOWER2_BASE -- tower2 base
|
||||
location34:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MIST_TOWER2_PATH ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -785,12 +658,12 @@ location41:
|
||||
.byte 0,46 ; special y
|
||||
.word leave_tower2-1 ; special function
|
||||
|
||||
; tower2 top
|
||||
location42:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 41 ; west exit
|
||||
; MIST_TOWER2_TOP -- tower2 top
|
||||
location35:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte MIST_TOWER2_BASE ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -805,12 +678,12 @@ location42:
|
||||
.byte 10,18 ; special y
|
||||
.word circuit_breaker-1 ; special function
|
||||
|
||||
; tower1 trail
|
||||
location43:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 23 ; east exit
|
||||
.byte 44 ; west exit
|
||||
; MIST_TOWER1_TRAIL -- tower1 trail
|
||||
location36:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_TREE_CORRIDOR_4 ; east exit
|
||||
.byte MIST_TOWER1_TRAIL2 ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -822,12 +695,12 @@ location43:
|
||||
.byte BG_WEST|BG_EAST
|
||||
.byte $ff
|
||||
|
||||
; tower1 trail2
|
||||
location44:
|
||||
.byte 45 ; north exit
|
||||
.byte 43 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TOWER1_TRAIL2 -- tower1 trail2
|
||||
location37:
|
||||
.byte MIST_TOWER1_BOTTOM ; north exit
|
||||
.byte MIST_TOWER1_TRAIL ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_E|DIRECTION_ONLY_POINT ; north exit_dir
|
||||
.byte DIRECTION_E ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -839,12 +712,12 @@ location44:
|
||||
.byte BG_NORTH|BG_SOUTH|BG_WEST
|
||||
.byte $ff
|
||||
|
||||
; tower1 bottom
|
||||
location45:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 44 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TOWER1_BOTTOM -- tower1 bottom
|
||||
location38:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_TOWER1_TRAIL2 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_N ; east exit_dir
|
||||
@ -860,12 +733,12 @@ location45:
|
||||
.word leave_tower1-1 ; special function
|
||||
|
||||
|
||||
; tower1 top
|
||||
location46:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 45 ; east exit
|
||||
.byte $ff ; west exit
|
||||
; MIST_TOWER1_TOP -- tower1 top
|
||||
location39:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte MIST_TOWER1_BOTTOM ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E|DIRECTION_ONLY_POINT ; east exit_dir
|
||||
@ -880,4 +753,3 @@ location46:
|
||||
.byte 10,18 ; special y
|
||||
.word circuit_breaker-1 ; special function
|
||||
|
||||
|
||||
|
115
mist/leveldata_octagon.inc
Normal file
@ -0,0 +1,115 @@
|
||||
|
||||
;===============================================
|
||||
; level data for the Octagon Temple on Mist
|
||||
;===============================================
|
||||
|
||||
locations:
|
||||
.word location0, location1, location2, location3
|
||||
.word location4, location5
|
||||
|
||||
; OCTAGON_TEMPLE_DOORWAY -- temple doorway
|
||||
location0:
|
||||
.byte OCTAGON_TEMPLE_CENTER ; north exit
|
||||
; .byte 9 ; south exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word temple_door_n_lzsa ; north bg
|
||||
.word temple_door_s_lzsa ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH|BG_SOUTH ; north and south
|
||||
.byte $ff ; special exit
|
||||
|
||||
|
||||
; OCTAGON_TEMPLE_CENTER -- temple inside
|
||||
location1:
|
||||
.byte $ff ; north exit
|
||||
.byte OCTAGON_TEMPLE_DOORWAY ; south exit
|
||||
.byte OCTAGON_FIREPLACE ; east exit
|
||||
.byte OCTAGON_RED_BOOKSHELF ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word temple_center_n_lzsa ; north bg
|
||||
.word temple_center_s_lzsa ; south bg
|
||||
.word temple_center_e_lzsa ; east bg
|
||||
.word temple_center_w_lzsa ; west bg
|
||||
.byte BG_NORTH|BG_WEST|BG_SOUTH|BG_EAST ; all directions
|
||||
.byte $ff ; special exit
|
||||
|
||||
; OCTAGON_RED_BOOK_SHELF -- red book shelf
|
||||
location2:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte OCTAGON_TEMPLE_CENTER ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word red_book_shelf_lzsa ; west bg
|
||||
.byte BG_WEST ; west
|
||||
.byte DIRECTION_N ; special exit
|
||||
.byte 16,25 ; special x
|
||||
.byte 16,32 ; special y
|
||||
.word red_book-1 ; special function
|
||||
|
||||
; OCTAGON_FIREPLACE -- fireplace
|
||||
location3:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte OCTAGON_IN_FIREPLACE ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_W ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word fireplace_e_lzsa ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_EAST
|
||||
.byte $ff ; special exit
|
||||
|
||||
; OCTAGON_IN_FIREPLACE -- in fireplace
|
||||
location4:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte OCTAGON_TEMPLE_CENTER ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte DIRECTION_W ; west exit_dir
|
||||
.word $0000 ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word in_fireplace_w_lzsa ; west bg
|
||||
.byte BG_WEST ; west
|
||||
.byte $ff ; special exit
|
||||
|
||||
; OCTAGON_CEILING -- ceiling of temple
|
||||
location5:
|
||||
.byte OCTAGON_TEMPLE_CENTER ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
.byte $ff ; west exit_dir
|
||||
.word temple_center_up_lzsa ; north bg
|
||||
.word $0000 ; south bg
|
||||
.word $0000 ; east bg
|
||||
.word $0000 ; west bg
|
||||
.byte BG_NORTH
|
||||
.byte $ff
|
@ -8,12 +8,12 @@ locations:
|
||||
.word location4, location5, location6, location7
|
||||
.word location8, location9, location10
|
||||
|
||||
; Inside Ship
|
||||
; SELENA_INSIDE_SHIP -- Inside Ship
|
||||
location0:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 1 ; east exit
|
||||
.byte 2 ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte SELENA_CONTROLS ; east exit
|
||||
.byte SELENA_ELECTRIC_ORGAN ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte (DIRECTION_E|DIRECTION_ONLY_POINT) ; east exit_dir
|
||||
@ -28,12 +28,12 @@ location0:
|
||||
.byte 2,46 ; special y
|
||||
.word back_to_mist-1 ; special function
|
||||
|
||||
; controls
|
||||
; SELENA_CONTROLS -- controls
|
||||
location1:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte 0 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte SELENA_INSIDE_SHIP ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte DIRECTION_E ; east exit_dir
|
||||
@ -49,12 +49,12 @@ location1:
|
||||
.word controls_pressed-1 ; special function
|
||||
|
||||
|
||||
; electric organ
|
||||
; SELENA_ELECTRIC_ORGAN -- electric organ
|
||||
location2:
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte 0 ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte $ff ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte SELENA_INSIDE_SHIP ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte $ff ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -70,12 +70,12 @@ location2:
|
||||
.word organ_pressed-1 ; special function
|
||||
|
||||
|
||||
; walkway1
|
||||
; SELENA_WALKWAY1 -- walkway1
|
||||
location3:
|
||||
.byte 5 ; north exit
|
||||
.byte 4 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte SELENA_WALKWAY4 ; north exit
|
||||
.byte SELENA_SPACESHIP_DOOR ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -87,12 +87,12 @@ location3:
|
||||
.byte BG_NORTH
|
||||
.byte $ff
|
||||
|
||||
; spaceship door
|
||||
; SELENA_SPACESHIP_DOOR -- spaceship door
|
||||
location4:
|
||||
.byte $ff ; north exit
|
||||
.byte 3 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte SELENA_WALKWAY1 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_N ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -104,12 +104,12 @@ location4:
|
||||
.byte BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; walkway4
|
||||
; SELENA_WALKWAY4 -- walkway4
|
||||
location5:
|
||||
.byte 6 ; north exit
|
||||
.byte 3 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte SELENA_BUNKER ; north exit
|
||||
.byte SELENA_WALKWAY1 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte DIRECTION_N ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -121,12 +121,12 @@ location5:
|
||||
.byte BG_NORTH|BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; bunker
|
||||
; SELENA_BUNKER -- bunker
|
||||
location6:
|
||||
.byte $ff ; north exit
|
||||
.byte 5 ; south exit
|
||||
.byte 7 ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte SELENA_WALKWAY4 ; south exit
|
||||
.byte SELENA_SUB_ROOM ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte DIRECTION_S ; east exit_dir
|
||||
@ -138,12 +138,12 @@ location6:
|
||||
.byte BG_NORTH|BG_SOUTH|BG_EAST
|
||||
.byte $ff
|
||||
|
||||
; sub room
|
||||
; SELENA_SUB_ROOM -- sub room
|
||||
location7:
|
||||
.byte $ff ; north exit
|
||||
.byte 8 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte SELENA_BOOK_ROOM ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -155,12 +155,12 @@ location7:
|
||||
.byte BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; book room
|
||||
; SELENA_BOOK_ROOM -- book room
|
||||
location8:
|
||||
.byte $ff ; north exit
|
||||
.byte 9 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte SELENA_BOOK_CLOSED ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -172,12 +172,12 @@ location8:
|
||||
.byte BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; book
|
||||
; SELENA_BOOK_CLOSED -- book
|
||||
location9:
|
||||
.byte $ff ; north exit
|
||||
.byte 10 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte SELENA_BOOK_OPEN ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
@ -189,12 +189,12 @@ location9:
|
||||
.byte BG_SOUTH
|
||||
.byte $ff
|
||||
|
||||
; mist book open
|
||||
; SELENA_BOOK_OPEN -- mist book open
|
||||
location10:
|
||||
.byte $ff ; north exit
|
||||
.byte 8 ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit
|
||||
.byte SELENA_BOOK_ROOM ; south exit
|
||||
.byte $ff ; east exit
|
||||
.byte $ff ; west exit
|
||||
.byte $ff ; north exit_dir
|
||||
.byte DIRECTION_S ; south exit_dir
|
||||
.byte $ff ; east exit_dir
|
||||
|
@ -33,7 +33,7 @@ meche_link_book:
|
||||
ldx #LINKING_NOISE_LENGTH ; 45 pages long???
|
||||
jsr play_audio
|
||||
|
||||
lda #3
|
||||
lda #MECHE_ARRIVAL
|
||||
sta LOCATION
|
||||
lda #DIRECTION_W
|
||||
sta DIRECTION
|
||||
|
@ -22,12 +22,12 @@ mist_link_book:
|
||||
ldx #LINKING_NOISE_LENGTH ; 45 pages long???
|
||||
jsr play_audio
|
||||
|
||||
lda #39
|
||||
lda #OCTAGON_CEILING
|
||||
sta LOCATION
|
||||
lda #DIRECTION_N
|
||||
sta DIRECTION
|
||||
|
||||
lda #LOAD_MIST ; return to MIST
|
||||
lda #LOAD_OCTAGON ; return to OCTAGON on MIST
|
||||
sta WHICH_LOAD
|
||||
|
||||
lda #$ff
|
||||
|
@ -23,7 +23,7 @@ mist_link_book:
|
||||
ldx #LINKING_NOISE_LENGTH ; 45 pages long???
|
||||
jsr play_audio
|
||||
|
||||
lda #1
|
||||
lda #MIST_ARRIVAL_DOCK
|
||||
sta LOCATION
|
||||
|
||||
lda #LOAD_MIST ; start at Mist
|
||||
|
@ -145,7 +145,7 @@ copy_filename_done:
|
||||
|
||||
filenames:
|
||||
.word intro_filename
|
||||
.word mist_filename,meche_filename,selena_filename
|
||||
.word mist_filename,meche_filename,selena_filename,octagon_filename
|
||||
.word ending_filename
|
||||
|
||||
intro_filename:
|
||||
@ -156,6 +156,8 @@ meche_filename:
|
||||
.byte "MECHE",0
|
||||
selena_filename:
|
||||
.byte "SELENA",0
|
||||
octagon_filename:
|
||||
.byte "OCTAGON",0
|
||||
ending_filename:
|
||||
.byte "ENDING",0
|
||||
|
||||
|
19
mist/meche.s
@ -29,23 +29,6 @@ meche_start:
|
||||
sta CURSOR_X
|
||||
sta CURSOR_Y
|
||||
|
||||
;=================
|
||||
; init vars
|
||||
; FIXME: we could be re-called from other books
|
||||
; so don't set location here
|
||||
|
||||
lda #0
|
||||
sta LOCATION
|
||||
lda #DIRECTION_E
|
||||
sta DIRECTION
|
||||
|
||||
|
||||
lda LOCATION
|
||||
bne not_first_time
|
||||
|
||||
not_first_time:
|
||||
|
||||
|
||||
; set up initial location
|
||||
|
||||
jsr change_location
|
||||
@ -78,7 +61,7 @@ game_loop:
|
||||
;====================================
|
||||
|
||||
lda LOCATION
|
||||
cmp #2
|
||||
cmp #MECHE_OPEN_BOOK
|
||||
bne nothing_special
|
||||
|
||||
; handle animated linking book
|
||||
|
17
mist/mist.s
@ -33,7 +33,7 @@ mist_start:
|
||||
sta CURSOR_Y
|
||||
|
||||
lda LOCATION
|
||||
cmp #1 ; FIXME
|
||||
cmp #MIST_ARRIVAL_DOCK
|
||||
bne not_first_time
|
||||
|
||||
; first time init
|
||||
@ -111,9 +111,9 @@ not_gear_related:
|
||||
; handle clock puzzles
|
||||
|
||||
lda LOCATION
|
||||
cmp #25 ; clock puzzle
|
||||
cmp #MIST_CLOCK_PUZZLE ; clock puzzle
|
||||
beq location_clock
|
||||
cmp #27
|
||||
cmp #MIST_CLOCK_INSIDE
|
||||
beq location_inside_clock
|
||||
bne location_generator
|
||||
|
||||
@ -126,7 +126,7 @@ location_inside_clock:
|
||||
|
||||
; handle generator puzzle
|
||||
location_generator:
|
||||
cmp #36
|
||||
cmp #MIST_GENERATOR_ROOM
|
||||
bne nothing_special
|
||||
lda DIRECTION
|
||||
and #$f
|
||||
@ -192,14 +192,14 @@ go_to_meche:
|
||||
|
||||
|
||||
pad_special:
|
||||
lda #40
|
||||
lda #MIST_TOWER2_PATH
|
||||
sta LOCATION
|
||||
jsr change_location
|
||||
|
||||
rts
|
||||
|
||||
leave_tower2:
|
||||
lda #42
|
||||
lda #MIST_TOWER2_TOP
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_W
|
||||
@ -210,7 +210,7 @@ leave_tower2:
|
||||
rts
|
||||
|
||||
leave_tower1:
|
||||
lda #46
|
||||
lda #MIST_TOWER1_TOP
|
||||
sta LOCATION
|
||||
|
||||
lda #DIRECTION_E
|
||||
@ -225,7 +225,7 @@ green_house:
|
||||
|
||||
; FIXME: handle switch separately
|
||||
|
||||
lda #32
|
||||
lda #MIST_GREEN_SHACK
|
||||
sta LOCATION
|
||||
|
||||
jsr change_location
|
||||
@ -258,7 +258,6 @@ green_house:
|
||||
|
||||
.include "clock_bridge_puzzle.s"
|
||||
.include "marker_switch.s"
|
||||
.include "brother_books.s"
|
||||
.include "generator_puzzle.s"
|
||||
|
||||
; linking books
|
||||
|
@ -70,10 +70,6 @@ done_keyloop:
|
||||
|
||||
bit KEYRESET
|
||||
|
||||
lda #0
|
||||
sta LOCATION ; start at first room
|
||||
lda #LOAD_MIST ; load mist
|
||||
sta WHICH_LOAD
|
||||
|
||||
|
||||
;===================
|
||||
@ -97,12 +93,19 @@ done_keyloop:
|
||||
sta CURSOR_Y
|
||||
|
||||
lda #0
|
||||
sta LOCATION
|
||||
sta LEVEL_OVER
|
||||
|
||||
; set up initial location
|
||||
|
||||
lda #TITLE_MIST_LINKING_DOCK
|
||||
sta LOCATION ; start at first room
|
||||
|
||||
lda #DIRECTION_N
|
||||
sta DIRECTION
|
||||
|
||||
; set up initial location
|
||||
lda #LOAD_MIST ; load mist
|
||||
sta WHICH_LOAD
|
||||
|
||||
|
||||
jsr change_location
|
||||
|
||||
@ -133,39 +136,9 @@ game_loop:
|
||||
; handle special-case forground logic
|
||||
;====================================
|
||||
|
||||
lda LOCATION
|
||||
cmp #2
|
||||
bne nothing_special
|
||||
|
||||
; handle animated linking book
|
||||
|
||||
; lda ANIMATE_FRAME
|
||||
; asl
|
||||
; tay
|
||||
; lda meche_movie,Y
|
||||
; sta INL
|
||||
; lda meche_movie+1,Y
|
||||
; sta INH
|
||||
|
||||
; lda #22
|
||||
; sta XPOS
|
||||
; lda #12
|
||||
; sta YPOS
|
||||
|
||||
; jsr put_sprite_crop
|
||||
|
||||
; lda FRAMEL
|
||||
; and #$f
|
||||
; bne done_animate_book
|
||||
|
||||
; inc ANIMATE_FRAME
|
||||
; lda ANIMATE_FRAME
|
||||
; cmp #11
|
||||
; bne done_animate_book
|
||||
; lda #0
|
||||
; sta ANIMATE_FRAME
|
||||
|
||||
;done_animate_book:
|
||||
; note: the linking book to the dock doesn't have much action
|
||||
|
||||
nothing_special:
|
||||
|
||||
|
142
mist/octagon.s
Normal file
@ -0,0 +1,142 @@
|
||||
; Octagon -- inside the Octagon Temple
|
||||
|
||||
; by deater (Vince Weaver) <vince@deater.net>
|
||||
|
||||
; Zero Page
|
||||
.include "zp.inc"
|
||||
.include "hardware.inc"
|
||||
.include "common_defines.inc"
|
||||
|
||||
octagon_start:
|
||||
;===================
|
||||
; init screen
|
||||
jsr TEXT
|
||||
jsr HOME
|
||||
bit KEYRESET
|
||||
|
||||
bit SET_GR
|
||||
bit PAGE0
|
||||
bit LORES
|
||||
bit FULLGR
|
||||
|
||||
lda #0
|
||||
sta DRAW_PAGE
|
||||
sta LEVEL_OVER
|
||||
|
||||
; init cursor
|
||||
|
||||
lda #20
|
||||
sta CURSOR_X
|
||||
sta CURSOR_Y
|
||||
|
||||
|
||||
; set up initial location
|
||||
|
||||
jsr change_location
|
||||
|
||||
lda #1
|
||||
sta CURSOR_VISIBLE ; visible at first
|
||||
|
||||
|
||||
|
||||
game_loop:
|
||||
;=================
|
||||
; reset things
|
||||
;=================
|
||||
|
||||
lda #0
|
||||
sta IN_SPECIAL
|
||||
sta IN_RIGHT
|
||||
sta IN_LEFT
|
||||
|
||||
;====================================
|
||||
; copy background to current page
|
||||
;====================================
|
||||
|
||||
jsr gr_copy_to_current
|
||||
|
||||
;====================================
|
||||
; handle special-case forground logic
|
||||
;====================================
|
||||
|
||||
nothing_special:
|
||||
|
||||
;====================================
|
||||
; draw pointer
|
||||
;====================================
|
||||
|
||||
jsr draw_pointer
|
||||
|
||||
;====================================
|
||||
; page flip
|
||||
;====================================
|
||||
|
||||
jsr page_flip
|
||||
|
||||
;====================================
|
||||
; handle keypress/joystick
|
||||
;====================================
|
||||
|
||||
jsr handle_keypress
|
||||
|
||||
|
||||
;====================================
|
||||
; inc frame count
|
||||
;====================================
|
||||
|
||||
inc FRAMEL
|
||||
bne room_frame_no_oflo
|
||||
inc FRAMEH
|
||||
room_frame_no_oflo:
|
||||
|
||||
;====================================
|
||||
; check level over
|
||||
;====================================
|
||||
|
||||
lda LEVEL_OVER
|
||||
bne really_exit
|
||||
jmp game_loop
|
||||
|
||||
really_exit:
|
||||
jmp end_level
|
||||
|
||||
|
||||
;==========================
|
||||
; includes
|
||||
;==========================
|
||||
|
||||
.include "gr_copy.s"
|
||||
.include "gr_offsets.s"
|
||||
.include "gr_pageflip.s"
|
||||
.include "gr_putsprite_crop.s"
|
||||
.include "text_print.s"
|
||||
.include "gr_fast_clear.s"
|
||||
.include "decompress_fast_v2.s"
|
||||
.include "keyboard.s"
|
||||
.include "draw_pointer.s"
|
||||
|
||||
.include "audio.s"
|
||||
|
||||
.include "graphics_octagon/octagon_graphics.inc"
|
||||
|
||||
.include "end_level.s"
|
||||
|
||||
; puzzles
|
||||
|
||||
.include "brother_books.s"
|
||||
|
||||
; linking books
|
||||
|
||||
; letters
|
||||
|
||||
.include "common_sprites.inc"
|
||||
|
||||
.include "leveldata_octagon.inc"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
;.align $100
|
||||
;audio_red_page:
|
||||
;.incbin "audio/red_page.btc"
|
@ -33,7 +33,7 @@ dome_press_second:
|
||||
|
||||
; re-route door to selena
|
||||
ldy #LOCATION_NORTH_EXIT
|
||||
lda #3
|
||||
lda #SELENA_WALKWAY1
|
||||
sta location0,Y
|
||||
ldy #LOCATION_NORTH_EXIT_DIR
|
||||
lda #DIRECTION_N
|
||||
|
@ -53,20 +53,15 @@ selena_start:
|
||||
lda #DIRECTION_N
|
||||
sta location0,Y ; enable mist exit
|
||||
|
||||
lda #0
|
||||
lda #SELENA_INSIDE_SHIP
|
||||
sta LOCATION
|
||||
|
||||
lda #0
|
||||
sta LEVEL_OVER
|
||||
|
||||
lda #DIRECTION_E
|
||||
sta DIRECTION
|
||||
|
||||
|
||||
lda LOCATION
|
||||
bne not_first_time
|
||||
|
||||
not_first_time:
|
||||
|
||||
|
||||
; set up initial location
|
||||
|
||||
jsr change_location
|
||||
@ -99,9 +94,9 @@ game_loop:
|
||||
;====================================
|
||||
|
||||
lda LOCATION
|
||||
cmp #1
|
||||
cmp #SELENA_CONTROLS
|
||||
beq controls_animation
|
||||
cmp #10
|
||||
cmp #SELENA_BOOK_OPEN
|
||||
beq mist_book_animation
|
||||
jmp nothing_special
|
||||
|
||||
@ -241,7 +236,7 @@ back_to_mist:
|
||||
lda #$ff
|
||||
sta LEVEL_OVER
|
||||
|
||||
lda #16 ; pathway outside rocket
|
||||
lda #MIST_SPACESHIP_FAR ; pathway outside rocket
|
||||
sta LOCATION
|
||||
lda #DIRECTION_E
|
||||
sta DIRECTION
|
||||
|
@ -4,11 +4,6 @@
|
||||
NIBCOUNT = $00
|
||||
WHICH_LOAD = $05
|
||||
|
||||
LOAD_TITLE = $0
|
||||
LOAD_MIST = $1
|
||||
LOAD_MECHE = $2
|
||||
LOAD_SELENA = $3
|
||||
|
||||
;; Zero page monitor routines addresses
|
||||
|
||||
WNDLFT = $20
|
||||
|