diff --git a/mist/Makefile b/mist/Makefile index 7a0c8032..2d78f7e3 100644 --- a/mist/Makefile +++ b/mist/Makefile @@ -81,6 +81,7 @@ generate_common.o: generate_common.c $(CC) $(CFLAGS) -c generate_common.c #### + common_routines.inc: loader.lst generate_common ./generate_common > common_routines.inc @@ -124,7 +125,7 @@ GENERATOR: generator.o generator.o: generator.s zp.inc hardware.inc \ common_defines.inc common_routines.inc \ - graphics_mist/mist_graphics.inc \ + graphics_generator/generator_graphics.inc \ leveldata_generator.inc \ generator_puzzle.s ca65 -o generator.o generator.s -l generator.lst @@ -308,8 +309,47 @@ dentist.o: dentist.s zp.inc hardware.inc common_defines.inc \ #### -graphics_island/mist_graphics.inc: - cd graphics_island && make +graphics_title/title_graphics.inc: + cd graphics_title && make + +graphics_mist/mist_graphics.inc: + cd graphics_mist && make + +graphics_octagon/octagon_graphics.inc: + cd graphics_octagon && make + +books/octagon_books.inc: + cd books && make + +graphics_viewer/viewer_graphics.inc: + cd graphics_viewer && make + +graphics_meche/meche_graphics.inc: + cd graphics_meche && make + +graphics_selena/selena_graphics.inc: + cd graphics_selena && make + +graphics_cabin/cabin_graphics.inc: + cd graphics_cabin && make + +graphics_channel/channel_graphics.inc: + cd graphics_channel && make + +graphics_stoney/stoney_graphics.inc: + cd graphics_stoney && make + +graphics_dentist/dentist_graphics.inc: + cd graphics_dentist && make + +graphics_generator/generator_graphics.inc: + cd graphics_generator && make + +graphics_arbor/arbor_graphics.inc: + cd graphics_arbor && make + +graphics_nibel/nibel_graphics.inc: + cd graphics_nibel && make #### @@ -318,4 +358,5 @@ clean: rm -f *~ *.o *.lst HELLO HELLO_DISK2 \ LOADER MIST_TITLE \ MIST OCTAGON VIEWER DENTIST \ - MECHE SELENA STONEY CHANNEL ARBOR NIBEL + MECHE SELENA STONEY CHANNEL ARBOR NIBEL \ + GENERATOR diff --git a/mist/arbor_switches.s b/mist/arbor_switches.s index b448b724..6e2cc3c9 100644 --- a/mist/arbor_switches.s +++ b/mist/arbor_switches.s @@ -25,7 +25,7 @@ elev1_handle: sta LEVEL_OVER lda CHANNEL_SWITCHES ; make elevator down - and #~CHANNEL_ELEVATOR1_UP + and #<(~CHANNEL_ELEVATOR1_UP) sta CHANNEL_SWITCHES @@ -167,7 +167,7 @@ close_stair_gate: ; open the gate lda CHANNEL_SWITCHES - and #~CHANNEL_SW_GATE_BOTTOM + and #<(~CHANNEL_SW_GATE_BOTTOM) jmp update_stair_gate diff --git a/mist/channel.s b/mist/channel.s index 78939e7f..33bb853e 100644 --- a/mist/channel.s +++ b/mist/channel.s @@ -54,7 +54,8 @@ channel_start: ; actual game does this too? lda CHANNEL_SWITCHES - and #~(CHANNEL_BRIDGE_UP|CHANNEL_PIPE_EXTENDED|CHANNEL_BOOK_ELEVATOR_UP) + ; hack to avoid "RANGE ERROR" on some versions of ca65 + and #<(~(CHANNEL_BRIDGE_UP|CHANNEL_PIPE_EXTENDED|CHANNEL_BOOK_ELEVATOR_UP)) sta CHANNEL_SWITCHES ; set up bridges diff --git a/mist/graphics_meche/meche_graphics.inc b/mist/graphics_meche/meche_graphics.inc deleted file mode 100644 index 5bc86608..00000000 --- a/mist/graphics_meche/meche_graphics.inc +++ /dev/null @@ -1,92 +0,0 @@ -departure_e_lzsa: .incbin "departure_e.lzsa" -arrival_w_lzsa: .incbin "arrival_w.lzsa" -entrance_e_lzsa: .incbin "entrance_e.lzsa" -entrance_s_lzsa: .incbin "entrance_s.lzsa" -entrance_n_lzsa: .incbin "entrance_n.lzsa" -entrance_w_lzsa: .incbin "entrance_w.lzsa" -entrance_open_n_lzsa: .incbin "entrance_open_n.lzsa" -meche_book_closed_lzsa: .incbin "meche_book_closed.lzsa" -meche_book_open_lzsa: .incbin "meche_book_open.lzsa" -fort_view_n_lzsa: .incbin "fort_view_n.lzsa" -fort_view_s_lzsa: .incbin "fort_view_s.lzsa" -bridge2_n_lzsa: .incbin "bridge2_n.lzsa" -bridge2_s_lzsa: .incbin "bridge2_s.lzsa" -bridge2_e_lzsa: .incbin "bridge2_e.lzsa" -bridge2_w_lzsa: .incbin "bridge2_w.lzsa" -fort_door_n_lzsa: .incbin "fort_door_n.lzsa" -fort_entry_n_lzsa: .incbin "fort_entry_n.lzsa" -fort_entry_s_lzsa: .incbin "fort_entry_s.lzsa" -fort_entry_e_lzsa: .incbin "fort_entry_e.lzsa" -westturn_n_lzsa: .incbin "westturn_n.lzsa" -westturn_s_lzsa: .incbin "westturn_s.lzsa" -westturn_e_lzsa: .incbin "westturn_e.lzsa" -westturn_w_lzsa: .incbin "westturn_w.lzsa" -north_hint_n_lzsa: .incbin "north_hint_n.lzsa" -north_top_n_lzsa: .incbin "north_top_n.lzsa" -north_top_s_lzsa: .incbin "north_top_s.lzsa" -north_dip_n_lzsa: .incbin "north_dip_n.lzsa" -north_dip_s_lzsa: .incbin "north_dip_s.lzsa" -northturn_n_lzsa: .incbin "northturn_n.lzsa" -northturn_s_lzsa: .incbin "northturn_s.lzsa" -northturn_e_lzsa: .incbin "northturn_e.lzsa" -northturn_w_lzsa: .incbin "northturn_w.lzsa" -left_hall2_n_lzsa: .incbin "left_hall2_n.lzsa" -left_hall2_s_lzsa: .incbin "left_hall2_s.lzsa" -left_hall_corner_s_lzsa: .incbin "left_hall_corner_s.lzsa" -left_hall_corner_e_lzsa: .incbin "left_hall_corner_e.lzsa" -red_room_center_e_lzsa: .incbin "red_room_center_e.lzsa" -red_room_center_w_lzsa: .incbin "red_room_center_w.lzsa" -red_room_center_n_lzsa: .incbin "red_room_center_n.lzsa" -red_room_center_s_lzsa: .incbin "red_room_center_s.lzsa" -center_hall_e_lzsa: .incbin "center_hall_e.lzsa" -center_hall_w_lzsa: .incbin "center_hall_w.lzsa" -center_hall_s_lzsa: .incbin "center_hall_s.lzsa" -red_button_n_lzsa: .incbin "red_button_n.lzsa" -red_button_s_lzsa: .incbin "red_button_s.lzsa" -red_button_e_lzsa: .incbin "red_button_e.lzsa" -red_button_of_oe_w_lzsa: .incbin "red_button_of_oe_w.lzsa" -red_button_cf_oe_w_lzsa: .incbin "red_button_cf_oe_w.lzsa" -red_button_of_ce_w_lzsa: .incbin "red_button_of_ce_w.lzsa" -red_button_cf_ce_w_lzsa: .incbin "red_button_cf_ce_w.lzsa" -basement_controls_w_lzsa: .incbin "basement_controls_w.lzsa" -elevator_basement_w_lzsa: .incbin "elevator_basement_w.lzsa" -elevator_basement_e_lzsa: .incbin "elevator_basement_e.lzsa" -right_hall2_s_lzsa: .incbin "right_hall2_s.lzsa" -right_hall_corner_n_lzsa: .incbin "right_hall_corner_n.lzsa" -right_hall_corner_w_lzsa: .incbin "right_hall_corner_w.lzsa" -blue_room_center_n_lzsa: .incbin "blue_room_center_n.lzsa" -blue_room_center_s_lzsa: .incbin "blue_room_center_s.lzsa" -blue_room_center_e_lzsa: .incbin "blue_room_center_e.lzsa" -blue_room_center_w_lzsa: .incbin "blue_room_center_w.lzsa" -center_hall2_n_lzsa: .incbin "center_hall2_n.lzsa" -center_hall2_s_lzsa: .incbin "center_hall2_s.lzsa" -center_hall2_w_lzsa: .incbin "center_hall2_w.lzsa" -elevator_path_w_lzsa: .incbin "elevator_path_w.lzsa" -elevator_path_e_lzsa: .incbin "elevator_path_e.lzsa" -elevator_ground_e_lzsa: .incbin "elevator_ground_e.lzsa" -elevator_half_e_lzsa: .incbin "elevator_half_e.lzsa" -elevator_top_e_lzsa: .incbin "elevator_top_e.lzsa" -top_floor_e_lzsa: .incbin "top_floor_e.lzsa" -top_floor_ye_w_lzsa: .incbin "top_floor_ye_w.lzsa" -top_floor_ne_w_lzsa: .incbin "top_floor_ne_w.lzsa" -rotate_controls_e_lzsa: .incbin "rotate_controls_e.lzsa" -eastturn_e_lzsa: .incbin "eastturn_e.lzsa" -eastturn_w_lzsa: .incbin "eastturn_w.lzsa" -east_arch_w_lzsa: .incbin "east_arch_w.lzsa" -east_arch_s_lzsa: .incbin "east_arch_s.lzsa" -east_hint_e_lzsa: .incbin "east_hint_e.lzsa" -east_top_e_lzsa: .incbin "east_top_e.lzsa" -east_top_w_lzsa: .incbin "east_top_w.lzsa" -fort_exit_n_lzsa: .incbin "fort_exit_n.lzsa" -fort_exit_w_lzsa: .incbin "fort_exit_w.lzsa" -fort_exit_e_lzsa: .incbin "fort_exit_e.lzsa" -exit_puzzle_n_lzsa: .incbin "exit_puzzle_n.lzsa" -book_stairs_n_lzsa: .incbin "book_stairs_n.lzsa" -book_stairs_s_lzsa: .incbin "book_stairs_s.lzsa" -book_room_n_lzsa: .incbin "book_room_n.lzsa" -book_open_n_lzsa: .incbin "book_open_n.lzsa" -book_closed_n_lzsa: .incbin "book_closed_n.lzsa" -blue_secret_door_w_lzsa: .incbin "blue_secret_door_w.lzsa" -blue_secret_room_w_lzsa: .incbin "blue_secret_room_w.lzsa" -red_secret_door_s_lzsa: .incbin "red_secret_door_s.lzsa" -red_secret_room_s_lzsa: .incbin "red_secret_room_s.lzsa" diff --git a/mist/graphics_title/Makefile b/mist/graphics_title/Makefile index 9702dbe4..78079bb0 100644 --- a/mist/graphics_title/Makefile +++ b/mist/graphics_title/Makefile @@ -5,7 +5,7 @@ PNG2GR = ../../gr-utils/png2gr LZSA = ~/research/lzsa/lzsa/lzsa -all: mist_title.lzsa title_graphics.inc +all: title_graphics.inc ####