mist: move to lzsa compression of graphics

saves 7k or so
This commit is contained in:
Vince Weaver 2020-03-04 22:25:46 -05:00
parent a304431fa2
commit 8d654dce84
8 changed files with 224 additions and 2730 deletions

View File

@ -47,7 +47,7 @@ MIST: mist.o
mist.o: mist.s zp.inc hardware.inc \
graphics_island/mist_graphics.inc \
gr_copy.s gr_unrle.s audio.s text_print.s
gr_copy.s gr_unrle.s audio.s text_print.s decompress_small_v2.s
ca65 -o mist.o mist.s -l mist.lst
####

View File

@ -16,3 +16,16 @@ Make graphics use lzsa compression
Move sound to language card (meaning no sound on II+ w/o language card)
Marker Switches (8):
+ * Dock
+ * Gears
+ Dentist
+ * Pool
+ Spaceship
+ Clock
+ Cabin
Fireplace:
+ 8x6 grid

View File

@ -44,7 +44,12 @@
;NIBCOUNT = $FC ; zero-page location for temp offset
decompress_lzsa2:
; page to decompress to in a
sta LZSA_DST_HI
ldy #$00
sty LZSA_DST_LO
sty NIBCOUNT
decode_token:

View File

@ -1,85 +1,94 @@
#include ../Makefile.inc
PNG2RLE = ../../gr-utils/png2rle
PNG2GR = ../../gr-utils/png2gr
LZSA = ~/research/lzsa/lzsa/lzsa
all: mist_graphics.inc
####
mist_graphics.inc: \
m_link_book.png \
dock_n.png dock_s.png dock_e.png dock_w.png \
dock_switch_n.png \
dock_steps_w.png \
above_dock_e.png above_dock_n.png above_dock_s.png \
step_base_s.png step_base_n.png \
step_land1_w.png step_land1_e.png \
step_land2_e.png step_land2_w.png \
step_dentist_e.png step_dentist_w.png \
step_land3_w.png step_land3_e.png \
step_top_e.png step_top_w.png step_top_n.png step_top_s.png \
temple_door_n.png temple_door_s.png \
temple_center_n.png temple_center_w.png \
red_book_shelf.png \
red_book_closed.png \
pool_s.png \
clock_s.png \
spaceship_far_e.png spaceship_far_n.png \
red_book_open.png red_book_static.png red_book_static2.png \
tree2_n.png \
tree5_n.png tree5_e.png \
gear_n.png gear_w.png gear_s.png \
gear_base_n.png
$(PNG2RLE) asm m_link_book.png link_book_rle > mist_graphics.inc
$(PNG2RLE) asm dock_n.png dock_n_rle >> mist_graphics.inc
$(PNG2RLE) asm dock_s.png dock_s_rle >> mist_graphics.inc
$(PNG2RLE) asm dock_e.png dock_e_rle >> mist_graphics.inc
$(PNG2RLE) asm dock_w.png dock_w_rle >> mist_graphics.inc
$(PNG2RLE) asm dock_switch_n.png dock_switch_n_rle >> mist_graphics.inc
$(PNG2RLE) asm dock_switch_s.png dock_switch_s_rle >> mist_graphics.inc
$(PNG2RLE) asm dock_steps_w.png dock_steps_w_rle >> mist_graphics.inc
$(PNG2RLE) asm above_dock_e.png above_dock_e_rle >> mist_graphics.inc
$(PNG2RLE) asm above_dock_s.png above_dock_s_rle >> mist_graphics.inc
$(PNG2RLE) asm above_dock_n.png above_dock_n_rle >> mist_graphics.inc
$(PNG2RLE) asm step_base_n.png step_base_n_rle >> mist_graphics.inc
$(PNG2RLE) asm step_base_s.png step_base_s_rle >> mist_graphics.inc
$(PNG2RLE) asm step_land1_w.png step_land1_w_rle >> mist_graphics.inc
$(PNG2RLE) asm step_land1_e.png step_land1_e_rle >> mist_graphics.inc
$(PNG2RLE) asm step_land2_w.png step_land2_w_rle >> mist_graphics.inc
$(PNG2RLE) asm step_land2_e.png step_land2_e_rle >> mist_graphics.inc
$(PNG2RLE) asm step_dentist_w.png step_dentist_w_rle >> mist_graphics.inc
$(PNG2RLE) asm step_dentist_e.png step_dentist_e_rle >> mist_graphics.inc
$(PNG2RLE) asm step_land3_w.png step_land3_w_rle >> mist_graphics.inc
$(PNG2RLE) asm step_land3_e.png step_land3_e_rle >> mist_graphics.inc
$(PNG2RLE) asm step_top_e.png step_top_e_rle >> mist_graphics.inc
$(PNG2RLE) asm step_top_w.png step_top_w_rle >> mist_graphics.inc
$(PNG2RLE) asm step_top_n.png step_top_n_rle >> mist_graphics.inc
$(PNG2RLE) asm step_top_s.png step_top_s_rle >> mist_graphics.inc
$(PNG2RLE) asm temple_door_n.png temple_door_n_rle >> mist_graphics.inc
$(PNG2RLE) asm temple_door_s.png temple_door_s_rle >> mist_graphics.inc
$(PNG2RLE) asm temple_center_n.png temple_center_n_rle >> mist_graphics.inc
$(PNG2RLE) asm temple_center_s.png temple_center_s_rle >> mist_graphics.inc
$(PNG2RLE) asm temple_center_e.png temple_center_e_rle >> mist_graphics.inc
$(PNG2RLE) asm temple_center_w.png temple_center_w_rle >> mist_graphics.inc
$(PNG2RLE) asm red_book_closed.png red_book_closed_rle >> mist_graphics.inc
$(PNG2RLE) asm red_book_shelf.png red_book_shelf_rle >> mist_graphics.inc
$(PNG2RLE) asm pool_s.png pool_s_rle >> mist_graphics.inc
$(PNG2RLE) asm clock_s.png clock_s_rle >> mist_graphics.inc
$(PNG2RLE) asm spaceship_far_n.png ss_far_n_rle >> mist_graphics.inc
$(PNG2RLE) asm spaceship_far_e.png ss_far_e_rle >> mist_graphics.inc
$(PNG2RLE) asm red_book_open.png red_book_open_rle >> mist_graphics.inc
$(PNG2RLE) asm red_book_static.png red_book_static_rle >> mist_graphics.inc
$(PNG2RLE) asm red_book_static2.png red_book_static2_rle >> mist_graphics.inc
$(PNG2RLE) asm tree2_n.png tree2_n_rle >> mist_graphics.inc
$(PNG2RLE) asm tree5_n.png tree5_n_rle >> mist_graphics.inc
$(PNG2RLE) asm tree5_e.png tree5_e_rle >> mist_graphics.inc
$(PNG2RLE) asm gear_n.png gear_n_rle >> mist_graphics.inc
$(PNG2RLE) asm gear_s.png gear_s_rle >> mist_graphics.inc
$(PNG2RLE) asm gear_w.png gear_w_rle >> mist_graphics.inc
$(PNG2RLE) asm gear_base_n.png gear_base_n_rle >> mist_graphics.inc
m_link_book.lzsa \
dock_n.lzsa dock_s.lzsa dock_e.lzsa dock_w.lzsa \
dock_switch_n.lzsa dock_switch_s.lzsa \
dock_steps_w.lzsa \
above_dock_e.lzsa above_dock_n.lzsa above_dock_s.lzsa \
step_base_s.lzsa step_base_n.lzsa \
step_land1_w.lzsa step_land1_e.lzsa \
step_land2_e.lzsa step_land2_w.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 \
red_book_shelf.lzsa \
red_book_closed.lzsa \
pool_s.lzsa \
clock_s.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_base_n.lzsa
echo "m_link_book_lzsa: .incbin \"m_link_book.lzsa\"" > mist_graphics.inc
echo "dock_n_lzsa: .incbin \"dock_n.lzsa\"" >> mist_graphics.inc
echo "dock_s_lzsa: .incbin \"dock_s.lzsa\"" >> mist_graphics.inc
echo "dock_e_lzsa: .incbin \"dock_e.lzsa\"" >> mist_graphics.inc
echo "dock_w_lzsa: .incbin \"dock_w.lzsa\"" >> mist_graphics.inc
echo "dock_switch_n_lzsa: .incbin \"dock_switch_n.lzsa\"" >> mist_graphics.inc
echo "dock_switch_s_lzsa: .incbin \"dock_switch_s.lzsa\"" >> mist_graphics.inc
echo "dock_steps_w_lzsa: .incbin \"dock_steps_w.lzsa\"" >> mist_graphics.inc
echo "above_dock_e_lzsa: .incbin \"above_dock_e.lzsa\"" >> mist_graphics.inc
echo "above_dock_s_lzsa: .incbin \"above_dock_s.lzsa\"" >> mist_graphics.inc
echo "above_dock_n_lzsa: .incbin \"above_dock_n.lzsa\"" >> mist_graphics.inc
echo "step_base_n_lzsa: .incbin \"step_base_n.lzsa\"" >> mist_graphics.inc
echo "step_base_s_lzsa: .incbin \"step_base_s.lzsa\"" >> mist_graphics.inc
echo "step_land1_w_lzsa: .incbin \"step_land1_w.lzsa\"" >> mist_graphics.inc
echo "step_land1_e_lzsa: .incbin \"step_land1_e.lzsa\"" >> mist_graphics.inc
echo "step_land2_w_lzsa: .incbin \"step_land2_w.lzsa\"" >> mist_graphics.inc
echo "step_land2_e_lzsa: .incbin \"step_land2_e.lzsa\"" >> mist_graphics.inc
echo "step_dentist_w_lzsa: .incbin \"step_dentist_w.lzsa\"" >> mist_graphics.inc
echo "step_dentist_e_lzsa: .incbin \"step_dentist_e.lzsa\"" >> mist_graphics.inc
echo "step_land3_w_lzsa: .incbin \"step_land3_w.lzsa\"" >> mist_graphics.inc
echo "step_land3_e_lzsa: .incbin \"step_land3_e.lzsa\"" >> mist_graphics.inc
echo "step_top_e_lzsa: .incbin \"step_top_e.lzsa\"" >> 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 "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 "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
echo "gear_n_lzsa: .incbin \"gear_n.lzsa\"" >> mist_graphics.inc
echo "gear_s_lzsa: .incbin \"gear_s.lzsa\"" >> mist_graphics.inc
echo "gear_w_lzsa: .incbin \"gear_w.lzsa\"" >> mist_graphics.inc
echo "gear_base_n_lzsa: .incbin \"gear_base_n.lzsa\"" >> mist_graphics.inc
%.gr: %.png
$(PNG2GR) $< $@
%.lzsa: %.gr
$(LZSA) -r -f2 $< $@
####
clean:
rm -f *~ *.o *.lst mist_graphics.inc
rm -f *~ *.o *.lst *.gr mist_graphics.inc

File diff suppressed because it is too large Load Diff

View File

@ -55,3 +55,10 @@ tree5_n.png 704 649 546
sound:
red_page.btc 5386 4366 4209
link_noise.btc 11656 7878 7371
original rle version:
43,866
lzsa2 version
36,324

View File

@ -422,12 +422,12 @@ change_direction:
tay
lda (LOCATION_STRUCT_L),Y
sta GBASL
sta LZSA_SRC_LO
iny
lda (LOCATION_STRUCT_L),Y
sta GBASH
sta LZSA_SRC_HI
lda #$c ; load to page $c00
jsr load_rle_gr
jsr decompress_lzsa2
rts
@ -645,12 +645,12 @@ red_book:
red_book_loop:
lda #<red_book_static_rle
sta GBASL
lda #>red_book_static_rle
sta GBASH
lda #<red_book_static_lzsa
sta LZSA_SRC_LO
lda #>red_book_static_lzsa
sta LZSA_SRC_HI
lda #$c ; load to page $c00
jsr load_rle_gr
jsr decompress_lzsa2
jsr gr_copy_to_current
@ -659,12 +659,12 @@ red_book_loop:
lda #120
jsr WAIT
lda #<red_book_static2_rle
sta GBASL
lda #>red_book_static2_rle
sta GBASH
lda #<red_book_static2_lzsa
sta LZSA_SRC_LO
lda #>red_book_static2_lzsa
sta LZSA_SRC_HI
lda #$c ; load to page $c00
jsr load_rle_gr
jsr decompress_lzsa2
jsr gr_copy_to_current
@ -682,12 +682,12 @@ red_book_loop:
;; annoying brother
lda #<red_book_open_rle
sta GBASL
lda #>red_book_open_rle
sta GBASH
lda #<red_book_open_lzsa
sta LZSA_SRC_LO
lda #>red_book_open_lzsa
sta LZSA_SRC_HI
lda #$c ; load to page $c00
jsr load_rle_gr
jsr decompress_lzsa2
jsr gr_copy_to_current
@ -716,12 +716,12 @@ red_book_done:
; restore bg
lda #<red_book_shelf_rle
sta GBASL
lda #>red_book_shelf_rle
sta GBASH
lda #<red_book_shelf_lzsa
sta LZSA_SRC_LO
lda #>red_book_shelf_lzsa
sta LZSA_SRC_HI
lda #$c ; load to page $c00
jsr load_rle_gr
jsr decompress_lzsa2
rts
@ -735,12 +735,13 @@ red_book_done:
;==========================
.include "gr_copy.s"
.include "gr_unrle.s"
; .include "gr_unrle.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_small_v2.s"
.include "audio.s"
@ -829,7 +830,7 @@ location0:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $00 ; special exit
.word link_book_rle ; north bg
.word m_link_book_lzsa ; north bg
.word $0000 ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
@ -849,10 +850,10 @@ location1:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word dock_n_rle ; north bg
.word dock_s_rle ; south bg
.word dock_e_rle ; east bg
.word dock_w_rle ; west bg
.word dock_n_lzsa ; north bg
.word dock_s_lzsa ; south bg
.word dock_e_lzsa ; east bg
.word dock_w_lzsa ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -869,8 +870,8 @@ location2:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $00 ; special exit
.word dock_switch_n_rle ; north bg
.word dock_switch_s_rle ; south bg
.word dock_switch_n_lzsa ; north bg
.word dock_switch_s_lzsa ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte 23,30 ; special x
@ -890,10 +891,10 @@ location3:
.byte DIRECTION_S ; east exit_dir
.byte DIRECTION_S ; west exit_dir
.byte $ff ; special exit
.word gear_base_n_rle ; north bg
.word gear_base_n_lzsa ; north bg
.word $0000 ; south bg
.word $0000 ; east bg
.word dock_steps_w_rle ; west bg
.word dock_steps_w_lzsa ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -910,9 +911,9 @@ location4:
.byte DIRECTION_S ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word above_dock_n_rle ; north bg
.word above_dock_s_rle ; south bg
.word above_dock_e_rle ; east bg
.word above_dock_n_lzsa ; north bg
.word above_dock_s_lzsa ; south bg
.word above_dock_e_lzsa ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
@ -930,8 +931,8 @@ location5:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word step_base_n_rle ; north bg
.word step_base_s_rle ; south bg
.word step_base_n_lzsa ; north bg
.word step_base_s_lzsa ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
@ -952,8 +953,8 @@ location6:
.byte $ff ; special exit
.word $0000 ; north bg
.word $0000 ; south bg
.word step_land1_e_rle ; east bg
.word step_land1_w_rle ; west bg
.word step_land1_e_lzsa ; east bg
.word step_land1_w_lzsa ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -972,8 +973,8 @@ location7:
.byte $00 ; special exit
.word $0000 ; north bg
.word $0000 ; south bg
.word step_land2_e_rle ; east bg
.word step_land2_w_rle ; west bg
.word step_land2_e_lzsa ; east bg
.word step_land2_w_lzsa ; west bg
.byte 29,32 ; special x
.byte 38,45 ; special y
.word read_letter-1
@ -992,8 +993,8 @@ location8:
.byte $ff ; special exit
.word $0000 ; north bg
.word $0000 ; south bg
.word step_dentist_e_rle ; east bg
.word step_dentist_w_rle ; west bg
.word step_dentist_e_lzsa ; east bg
.word step_dentist_w_lzsa ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -1012,8 +1013,8 @@ location9:
.byte $ff ; special exit
.word $0000 ; north bg
.word $0000 ; south bg
.word step_land3_e_rle ; east bg
.word step_land3_w_rle ; west bg
.word step_land3_e_lzsa ; east bg
.word step_land3_w_lzsa ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -1031,10 +1032,10 @@ location10:
.byte DIRECTION_E ; east exit_dir
.byte DIRECTION_N ; west exit_dir
.byte $ff ; special exit
.word step_top_n_rle ; north bg
.word step_top_s_rle ; south bg
.word step_top_e_rle ; east bg
.word step_top_w_rle ; west bg
.word step_top_n_lzsa ; north bg
.word step_top_s_lzsa ; south bg
.word step_top_e_lzsa ; east bg
.word step_top_w_lzsa ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -1051,8 +1052,8 @@ location11:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word temple_door_n_rle ; north bg
.word temple_door_s_rle ; south bg
.word temple_door_n_lzsa ; north bg
.word temple_door_s_lzsa ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
@ -1071,10 +1072,10 @@ location12:
.byte $ff ; east exit_dir
.byte DIRECTION_W ; west exit_dir
.byte $ff ; special exit
.word temple_center_n_rle ; north bg
.word temple_center_s_rle ; south bg
.word temple_center_e_rle ; east bg
.word temple_center_w_rle ; west bg
.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 $ff,$ff ; special x
.byte $ff,$ff ; special y
.word $0000 ; special function
@ -1094,7 +1095,7 @@ location13:
.word $0000 ; north bg
.word $0000 ; south bg
.word $0000 ; east bg
.word red_book_shelf_rle ; west bg
.word red_book_shelf_lzsa ; west bg
.byte 16,25 ; special x
.byte 16,32 ; special y
.word red_book-1 ; special function
@ -1112,7 +1113,7 @@ location14:
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word $0000 ; north bg
.word pool_s_rle ; south bg
.word pool_s_lzsa ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
@ -1132,7 +1133,7 @@ location15:
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word $0000 ; north bg
.word clock_s_rle ; south bg
.word clock_s_lzsa ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
@ -1152,9 +1153,9 @@ location16:
.byte DIRECTION_E ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word ss_far_n_rle ; north bg
.word spaceship_far_n_lzsa ; north bg
.word $0000 ; south bg
.word ss_far_e_rle ; east bg
.word spaceship_far_e_lzsa ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
@ -1173,7 +1174,7 @@ location17:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $00 ; special exit
.word tree2_n_rle ; north bg
.word tree2_n_lzsa ; north bg
.word $0000 ; south bg
.word $0000 ; east bg
.word $0000 ; west bg
@ -1194,9 +1195,9 @@ location18:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word tree5_n_rle ; north bg
.word tree5_n_lzsa ; north bg
.word $0000 ; south bg
.word tree5_e_rle ; east bg
.word tree5_e_lzsa ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y
@ -1214,10 +1215,10 @@ location19:
.byte $ff ; east exit_dir
.byte $ff ; west exit_dir
.byte $00 ; special exit
.word gear_n_rle ; north bg
.word gear_s_rle ; south bg
.word gear_n_lzsa ; north bg
.word gear_s_lzsa ; south bg
.word $0000 ; east bg
.word gear_w_rle ; west bg
.word gear_w_lzsa ; west bg
.byte 5,10 ; special x
.byte 29,35 ; special y
.word click_switch-1 ; special function
@ -1234,9 +1235,9 @@ location20:
.byte DIRECTION_E ; east exit_dir
.byte $ff ; west exit_dir
.byte $ff ; special exit
.word gear_base_n_rle ; north bg
.word gear_base_n_lzsa ; north bg
.word $0000 ; south bg
.word above_dock_e_rle ; east bg
.word above_dock_e_lzsa ; east bg
.word $0000 ; west bg
.byte $ff,$ff ; special x
.byte $ff,$ff ; special y

View File

@ -1,6 +1,7 @@
;; Zero Page
;; LZ4 addresses
NIBCOUNT = $00
LZ4_SRC = $00
LZ4_DST = $02