From 49d55a9dbf07f651452627567e5c16d3de5616d8 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Mon, 22 Jul 2024 00:27:40 -0400 Subject: [PATCH] riven: more locations --- games/riven_hgr/Makefile | 12 +- games/riven_hgr/NOTES | 4 +- games/riven_hgr/disk01_files/Makefile | 23 +++- games/riven_hgr/disk01_files/disk01.s | 8 +- .../riven_hgr/disk01_files/disk01_defines.inc | 7 ++ .../disk01_files/graphics_arrival/Makefile | 3 +- .../disk01_files/graphics_arrival3/Makefile | 31 +++++ .../graphics_arrival3/arrival3_e.png | Bin 0 -> 5523 bytes .../graphics_arrival3/arrival3_s.png | Bin 0 -> 3631 bytes .../graphics_arrival3/arrival4_n.png | Bin 0 -> 3973 bytes .../graphics_arrival3/arrival4_s.png | Bin 0 -> 4825 bytes .../graphics_arrival3/arrival5_n.png | Bin 0 -> 4429 bytes games/riven_hgr/disk01_files/level_arrival3.s | 112 ++++++++++++++++++ .../disk01_files/leveldata_arrival.inc | 4 +- .../disk01_files/leveldata_arrival3.inc | 58 +++++++++ .../disk01_files/leveldata_telescope.inc | 2 +- 16 files changed, 249 insertions(+), 15 deletions(-) create mode 100644 games/riven_hgr/disk01_files/graphics_arrival3/Makefile create mode 100644 games/riven_hgr/disk01_files/graphics_arrival3/arrival3_e.png create mode 100644 games/riven_hgr/disk01_files/graphics_arrival3/arrival3_s.png create mode 100644 games/riven_hgr/disk01_files/graphics_arrival3/arrival4_n.png create mode 100644 games/riven_hgr/disk01_files/graphics_arrival3/arrival4_s.png create mode 100644 games/riven_hgr/disk01_files/graphics_arrival3/arrival5_n.png create mode 100644 games/riven_hgr/disk01_files/level_arrival3.s create mode 100644 games/riven_hgr/disk01_files/leveldata_arrival3.inc diff --git a/games/riven_hgr/Makefile b/games/riven_hgr/Makefile index b86f1cbb..e83c32d1 100644 --- a/games/riven_hgr/Makefile +++ b/games/riven_hgr/Makefile @@ -46,7 +46,8 @@ riven_disk01.dsk: QBOOT QLOAD TITLE_01 \ disk01_files/DISK01 \ disk01_files/LEVEL_ARRIVAL \ disk01_files/LEVEL_ARRIVAL2 \ - disk01_files/LEVEL_TELESCOPE + disk01_files/LEVEL_TELESCOPE \ + disk01_files/LEVEL_ARRIVAL3 cp $(EMPTY_DISK)/empty.dsk riven_disk01.dsk $(DOS33_RAW) riven_disk01.dsk 0 0 QBOOT 0 1 $(DOS33_RAW) riven_disk01.dsk 0 2 QBOOT 1 1 @@ -57,6 +58,8 @@ riven_disk01.dsk: QBOOT QLOAD TITLE_01 \ $(DOS33_RAW) riven_disk01.dsk 2 0 disk01_files/LEVEL_ARRIVAL 0 0 $(DOS33_RAW) riven_disk01.dsk 9 0 disk01_files/LEVEL_ARRIVAL2 0 0 $(DOS33_RAW) riven_disk01.dsk 13 0 disk01_files/LEVEL_TELESCOPE 0 0 + $(DOS33_RAW) riven_disk01.dsk 20 0 disk01_files/LEVEL_ARRIVAL3 0 0 + ### @@ -309,6 +312,9 @@ disk01_files/LEVEL_ARRIVAL: disk01_files/LEVEL_ARRIVAL2: cd disk01_files && make +disk01_files/LEVEL_ARRIVAL3: + cd disk01_files && make + #### disk00_files/DISK00: cd disk00_files && make @@ -478,6 +484,7 @@ riven_hgr.2mg: dts_block PROBOOTHD QLOAD_HD \ disk01_files/LEVEL_ARRIVAL \ disk01_files/LEVEL_ARRIVAL2 \ disk01_files/LEVEL_TELESCOPE \ + disk01_files/LEVEL_ARRIVAL3 \ disk38_files/DISK38 \ disk38_files/LEVEL_PROJECTOR \ disk39_files/DISK39 \ @@ -519,8 +526,9 @@ riven_hgr.2mg: dts_block PROBOOTHD QLOAD_HD \ $(PRODOS_RAW) riven_hgr.2mg `./dts_block 0 31 0` disk00_files/LEVEL_START 0 0 $(PRODOS_RAW) riven_hgr.2mg `./dts_block 1 0 2` disk01_files/DISK01 0 0 $(PRODOS_RAW) riven_hgr.2mg `./dts_block 1 2 0` disk01_files/LEVEL_ARRIVAL 0 0 - $(PRODOS_RAW) riven_hgr.2mg `./dts_block 1 9 0` disk01_files/LEVEL_ARRIVAL 0 0 + $(PRODOS_RAW) riven_hgr.2mg `./dts_block 1 9 0` disk01_files/LEVEL_ARRIVAL2 0 0 $(PRODOS_RAW) riven_hgr.2mg `./dts_block 1 13 0` disk01_files/LEVEL_TELESCOPE 0 0 + $(PRODOS_RAW) riven_hgr.2mg `./dts_block 1 20 0` disk01_files/LEVEL_ARRIVAL3 0 0 $(PRODOS_RAW) riven_hgr.2mg `./dts_block 38 0 2` disk38_files/DISK38 0 0 $(PRODOS_RAW) riven_hgr.2mg `./dts_block 38 2 0` disk38_files/LEVEL_PROJECTOR 0 0 $(PRODOS_RAW) riven_hgr.2mg `./dts_block 39 0 2` disk39_files/DISK39 0 0 diff --git a/games/riven_hgr/NOTES b/games/riven_hgr/NOTES index 1b0e1a96..365043de 100644 --- a/games/riven_hgr/NOTES +++ b/games/riven_hgr/NOTES @@ -107,10 +107,10 @@ Disk01 Map (disk has 35 tracks, each 4k in size) T 0 = Qboot T 0.5 = TITLE 1823 bytes 8S = 0T8S (2048) 400B free T 1 = QLOAD 2393 bytes 16S= 1T0S (4096) 2k free -T 2 = ARRIVAL 25512 bytes = 7T0S (28672) 3k free +T 2 = ARRIVAL 27040 bytes = 7T0S (28672) 1k free T 9 = ARRIVAL2 15920 bytes = 4T0S (16384) 400B free T 13 = TELESCOPE 19484 bytes = 7T0S (28672) 9k free -T 20 = ARRIVAL3 +T 20 = ARRIVAL3 30786 bytes = 7T15S (32512) 2k free Disk38 Map (disk has 35 tracks, each 4k in size) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/games/riven_hgr/disk01_files/Makefile b/games/riven_hgr/disk01_files/Makefile index 8e480287..d67eaf70 100644 --- a/games/riven_hgr/disk01_files/Makefile +++ b/games/riven_hgr/disk01_files/Makefile @@ -3,7 +3,7 @@ include ../../../Makefile.inc LINKER_SCRIPTS = ../../../linker_scripts/ -all: DISK01 LEVEL_ARRIVAL LEVEL_ARRIVAL2 LEVEL_TELESCOPE +all: DISK01 LEVEL_ARRIVAL LEVEL_ARRIVAL2 LEVEL_TELESCOPE LEVEL_ARRIVAL3 #### @@ -53,6 +53,19 @@ level_telescope.o: level_telescope.s \ #### + +LEVEL_ARRIVAL3: level_arrival3.o + ld65 -o LEVEL_ARRIVAL3 level_arrival3.o -C $(LINKER_SCRIPTS)/apple2_4000.inc + +level_arrival3.o: level_arrival3.s \ + ../zp.inc ../hardware.inc ../qload.inc \ + ../common_defines.inc disk01_defines.inc \ + leveldata_arrival3.inc \ + graphics_arrival3/arrival3_graphics.inc + ca65 -o level_arrival3.o level_arrival3.s -l level_arrival3.lst + +#### + graphics_arrival/arrival_graphics.inc: cd graphics_arrival && make @@ -62,18 +75,22 @@ graphics_arrival2/arrival2_graphics.inc: graphics_telescope/telescope_graphics.inc: cd graphics_telescope && make +graphics_arrival3/arrival3_graphics.inc: + cd graphics_arrival3 && make + #### clean: rm -f *~ *.o *.lst \ - DISK01 LEVEL_ARRIVAL LEVEL_ARRIVAL2 LEVEL_TELESCOPE + DISK01 LEVEL_ARRIVAL LEVEL_ARRIVAL2 LEVEL_TELESCOPE LEVEL_ARRIVAL3 #### distclean: rm -f *~ *.o *.lst \ - DISK01 LEVEL_ARRIVAL LEVEL_ARRIVAL2 LEVEL_TELESCOPE + DISK01 LEVEL_ARRIVAL LEVEL_ARRIVAL2 LEVEL_TELESCOPE LEVEL_ARRIVAL3 cd graphics_arrival && make clean cd graphics_arrival2 && make clean cd graphics_telescope && make clean + cd graphics_arrival3 && make clean diff --git a/games/riven_hgr/disk01_files/disk01.s b/games/riven_hgr/disk01_files/disk01.s index 8b77e93d..64ac3a9a 100644 --- a/games/riven_hgr/disk01_files/disk01.s +++ b/games/riven_hgr/disk01_files/disk01.s @@ -10,18 +10,18 @@ which_disk_bin: load_address_array: .byte $40,$40,$40,$40 ; TITLE, ARRIVAL, ARRIVAL2, TELESCOPE - .byte $00,$00,$00,$00 + .byte $40,$00,$00,$00 ; ARRIVAL3 track_array: .byte 0, 2, 9,13 ; TITLE, ARRIVAL, ARRIVAL2, TELESCOPE - .byte 0,0,0,0 + .byte 20,0,0,0 ; ARRIVAL3 sector_array: .byte 8, 0, 0, 0 ; TITLE, ARRIVAL, ARRIVAL2, TELESCOPE - .byte 0,0,0,0 + .byte 0,0,0,0 ; ARRIVAL3 length_array: .byte 8, 112,64, 112 ; TITLE, ARRIVAL, ARRIVAL2, TELESCOPE - .byte 0,0,0,0 + .byte 127,0,0,0 ; ARRIVAL3 disk_exit_disk: ; note: not BCD anymore diff --git a/games/riven_hgr/disk01_files/disk01_defines.inc b/games/riven_hgr/disk01_files/disk01_defines.inc index aad5c802..4f6fe9dc 100644 --- a/games/riven_hgr/disk01_files/disk01_defines.inc +++ b/games/riven_hgr/disk01_files/disk01_defines.inc @@ -2,6 +2,7 @@ LOAD_TITLE_01 = 0 LOAD_ARRIVAL = 1 LOAD_ARRIVAL2 = 2 LOAD_TELESCOPE = 3 +LOAD_ARRIVAL3 = 4 ;================================ ; Level definitions @@ -20,3 +21,9 @@ RIVEN_ARRIVAL2 = 0 RIVEN_TELESCOPE = 0 RIVEN_MANHOLE = 1 + +; Arrival3 +RIVEN_ARRIVAL3 = 0 +RIVEN_ARRIVAL4 = 1 +RIVEN_ARRIVAL5 = 2 + diff --git a/games/riven_hgr/disk01_files/graphics_arrival/Makefile b/games/riven_hgr/disk01_files/graphics_arrival/Makefile index a42d8b7b..9047eb8c 100644 --- a/games/riven_hgr/disk01_files/graphics_arrival/Makefile +++ b/games/riven_hgr/disk01_files/graphics_arrival/Makefile @@ -7,13 +7,14 @@ all: arrival_graphics.inc arrival_graphics.inc: \ arrival_near_n.hgr.zx02 arrival_near_s.hgr.zx02 arrival_near_e.hgr.zx02 arrival_near_w.hgr.zx02 \ - arrival_n.hgr.zx02 \ + arrival_n.hgr.zx02 arrival_s.hgr.zx02 \ arrival_handle_n.hgr.zx02 echo "arrival_near_n_zx02: .incbin \"arrival_near_n.hgr.zx02\"" > arrival_graphics.inc echo "arrival_near_s_zx02: .incbin \"arrival_near_s.hgr.zx02\"" >> arrival_graphics.inc echo "arrival_near_e_zx02: .incbin \"arrival_near_e.hgr.zx02\"" >> arrival_graphics.inc echo "arrival_near_w_zx02: .incbin \"arrival_near_w.hgr.zx02\"" >> arrival_graphics.inc echo "arrival_n_zx02: .incbin \"arrival_n.hgr.zx02\"" >> arrival_graphics.inc + echo "arrival_s_zx02: .incbin \"arrival_s.hgr.zx02\"" >> arrival_graphics.inc echo "arrival_handle_n_zx02: .incbin \"arrival_handle_n.hgr.zx02\"" >> arrival_graphics.inc diff --git a/games/riven_hgr/disk01_files/graphics_arrival3/Makefile b/games/riven_hgr/disk01_files/graphics_arrival3/Makefile new file mode 100644 index 00000000..963e5425 --- /dev/null +++ b/games/riven_hgr/disk01_files/graphics_arrival3/Makefile @@ -0,0 +1,31 @@ +include ../../../../Makefile.inc + +ZX02 = ~/research/6502_compression/zx02.git/build/zx02 +PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr + +all: arrival3_graphics.inc + +arrival3_graphics.inc: \ + arrival3_n.hgr.zx02 arrival3_s.hgr.zx02 arrival3_e.hgr.zx02 arrival3_w.hgr.zx02 \ + arrival4_n.hgr.zx02 arrival4_s.hgr.zx02 arrival5_n.hgr.zx02 + echo "arrival3_n_zx02: .incbin \"arrival3_n.hgr.zx02\"" > arrival3_graphics.inc + echo "arrival3_s_zx02: .incbin \"arrival3_s.hgr.zx02\"" >> arrival3_graphics.inc + echo "arrival3_e_zx02: .incbin \"arrival3_e.hgr.zx02\"" >> arrival3_graphics.inc + echo "arrival3_w_zx02: .incbin \"arrival3_w.hgr.zx02\"" >> arrival3_graphics.inc + echo "arrival4_n_zx02: .incbin \"arrival4_n.hgr.zx02\"" >> arrival3_graphics.inc + echo "arrival4_s_zx02: .incbin \"arrival4_s.hgr.zx02\"" >> arrival3_graphics.inc + echo "arrival5_n_zx02: .incbin \"arrival5_n.hgr.zx02\"" >> arrival3_graphics.inc + +#### + +%.hgr: %.png + $(PNG_TO_HGR) $< > $@ + +%.hgr.zx02: %.hgr + $(ZX02) -f $< $@ + +#### + +clean: + rm -f *~ *.o *.lst *.zx02 *.hgr arrival3_graphics.inc + diff --git a/games/riven_hgr/disk01_files/graphics_arrival3/arrival3_e.png b/games/riven_hgr/disk01_files/graphics_arrival3/arrival3_e.png new file mode 100644 index 0000000000000000000000000000000000000000..3ecabb94ff8f9af1046d28ebbf336137836bd0e9 GIT binary patch literal 5523 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 B2UGw6 literal 0 HcmV?d00001 diff --git a/games/riven_hgr/disk01_files/graphics_arrival3/arrival4_n.png b/games/riven_hgr/disk01_files/graphics_arrival3/arrival4_n.png new file mode 100644 index 0000000000000000000000000000000000000000..c10dbe5fb9e0d1b34f91d7e5bf85ca49ada57e80 GIT binary patch literal 3973 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 Tz|AIs00000NkvXXu0mjf + +; Zero Page + .include "../zp.inc" + .include "../hardware.inc" + .include "../common_defines.inc" + .include "../qload.inc" + .include "disk01_defines.inc" + +riven_arrival2: + + ;=================== + ; init screen + ;=================== + + bit KEYRESET + + bit SET_GR + bit PAGE1 + bit HIRES + bit FULLGR + + ;======================== + ; set up location + ;======================== + + lda #locations + sta LOCATIONS_H + + lda #0 + sta DRAW_PAGE + sta LEVEL_OVER + + lda #0 + sta JOYSTICK_ENABLED + sta UPDATE_POINTER + + lda #1 + sta CURSOR_VISIBLE + + lda #20 + sta CURSOR_X + sta CURSOR_Y + + + + + ;=================================== + ; init + ;=================================== + +; done in title + +; lda #$20 +; sta HGR_PAGE +; jsr hgr_make_tables + + jsr change_location + + jsr save_bg_14x14 ; save old bg + +game_loop: + + ;=================================== + ; draw pointer + ;=================================== + + jsr draw_pointer + + ;=================================== + ; handle keypress/joystick + ;=================================== + + jsr handle_keypress + + ;=================================== + ; increment frame count + ;=================================== + + inc FRAMEL + bne frame_no_oflo + + inc FRAMEH +frame_no_oflo: + + ;==================================== + ; check level over + ;==================================== + + lda LEVEL_OVER + bne really_exit + + jmp game_loop + +really_exit: + + rts + + + + ;========================== + ; includes + ;========================== + + +.include "graphics_arrival3/arrival3_graphics.inc" + +.include "leveldata_arrival3.inc" diff --git a/games/riven_hgr/disk01_files/leveldata_arrival.inc b/games/riven_hgr/disk01_files/leveldata_arrival.inc index 141534fc..4fb1e141 100644 --- a/games/riven_hgr/disk01_files/leveldata_arrival.inc +++ b/games/riven_hgr/disk01_files/leveldata_arrival.inc @@ -16,10 +16,10 @@ location0: .byte $ff ; east exit_dir .byte $ff ; west exit_dir .word arrival_n_zx02 ; north bg - .word $0000 ; south bg + .word arrival_s_zx02 ; south bg .word $0000 ; east bg .word $0000 ; west bg - .byte BG_NORTH + .byte BG_NORTH|BG_SOUTH .byte $ff ; special exit diff --git a/games/riven_hgr/disk01_files/leveldata_arrival3.inc b/games/riven_hgr/disk01_files/leveldata_arrival3.inc new file mode 100644 index 00000000..6a035298 --- /dev/null +++ b/games/riven_hgr/disk01_files/leveldata_arrival3.inc @@ -0,0 +1,58 @@ +;=============================================== +; level data for Dome Island level -- arrival3 +;=============================================== + +locations: + .word location0,location1,location2 + +; RIVEN_ARRIVAL3 - third arrival +location0: + .byte RIVEN_ARRIVAL4 ; north exit + .byte LOAD_TELESCOPE<<4|RIVEN_TELESCOPE ; 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 arrival3_n_zx02 ; north bg + .word arrival3_s_zx02 ; south bg + .word arrival3_e_zx02 ; east bg + .word arrival3_w_zx02 ; west bg + .byte BG_NORTH|BG_SOUTH|BG_EAST|BG_WEST + .byte $ff ; special exit + +; arrival4 +location1: + .byte RIVEN_ARRIVAL5 ; north exit + .byte RIVEN_ARRIVAL3 ; 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 arrival4_n_zx02 ; north bg + .word arrival4_s_zx02 ; south bg + .word $0000 ; east bg + .word $0000 ; west bg + .byte BG_NORTH|BG_SOUTH + .byte $ff ; special exit + +; arrival5 +location2: + .byte RIVEN_ARRIVAL4 ; 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 arrival5_n_zx02 ; north bg + .word $0000 ; south bg + .word $0000 ; east bg + .word $0000 ; west bg + .byte BG_NORTH + .byte $ff ; special exit + diff --git a/games/riven_hgr/disk01_files/leveldata_telescope.inc b/games/riven_hgr/disk01_files/leveldata_telescope.inc index e37ce4b8..fb3f228c 100644 --- a/games/riven_hgr/disk01_files/leveldata_telescope.inc +++ b/games/riven_hgr/disk01_files/leveldata_telescope.inc @@ -7,7 +7,7 @@ locations: ; RIVEN_TELESCOPE -- near telescope location0: - .byte $ff ; north exit + .byte LOAD_ARRIVAL3<<4|RIVEN_ARRIVAL3 ; north exit .byte LOAD_ARRIVAL2<<4|RIVEN_ARRIVAL2 ; south exit .byte $FF ; east exit .byte RIVEN_MANHOLE ; west exit