diff --git a/games/riven_hgr/NOTES b/games/riven_hgr/NOTES index d87ac258..d37081dd 100644 --- a/games/riven_hgr/NOTES +++ b/games/riven_hgr/NOTES @@ -9,7 +9,7 @@ $0800-$0bff = lores graphics page2 $800-$8ff = (qboot initial sector) $1000-$11ff = qboot_stage2 (disk code) $1200-$12ff = QLOAD tables -$1300-$16FF = HGR lookup tables +$1300-$16FF = HGR lookup tables (NOTE! we probably don't need div7/mod7) $1700-$1FFF = QLOAD = loader code (2k?) $2000-$3FFF = HGR Page1, lores movie overlays $4000-$BFFF = our code (up to 32k in theory) diff --git a/games/riven_hgr/disk40_files/disk40_defines.inc b/games/riven_hgr/disk40_files/disk40_defines.inc index d0f48a7a..e2e16271 100644 --- a/games/riven_hgr/disk40_files/disk40_defines.inc +++ b/games/riven_hgr/disk40_files/disk40_defines.inc @@ -12,8 +12,9 @@ LOAD_MOVIE2 = 4 RIVEN_LOOKIN = 0 RIVEN_INSEAT = 1 RIVEN_READYTOGO = 2 +RIVEN_OUTSIDE = 3 ; Outside -RIVEN_OUTSIDE = 0 - +RIVEN_OUTSIDE_PATH = 0 +RIVEN_OUTSIDE_PLAZA = 1 diff --git a/games/riven_hgr/disk40_files/graphics_maglev/Makefile b/games/riven_hgr/disk40_files/graphics_maglev/Makefile index 7f8b08c0..c3163b46 100644 --- a/games/riven_hgr/disk40_files/graphics_maglev/Makefile +++ b/games/riven_hgr/disk40_files/graphics_maglev/Makefile @@ -7,12 +7,14 @@ all: maglev_graphics.inc maglev_graphics.inc: \ inseat_s.hgr.zx02 inseat_w.hgr.zx02 inseat_e.hgr.zx02 \ - lookin_w.hgr.zx02 + lookin_w.hgr.zx02 \ + outside_w.hgr.zx02 outside_n.hgr.zx02 echo "inseat_s_zx02: .incbin \"inseat_s.hgr.zx02\"" > maglev_graphics.inc echo "inseat_w_zx02: .incbin \"inseat_w.hgr.zx02\"" >> maglev_graphics.inc echo "inseat_e_zx02: .incbin \"inseat_e.hgr.zx02\"" >> maglev_graphics.inc echo "lookin_w_zx02: .incbin \"lookin_w.hgr.zx02\"" >> maglev_graphics.inc - + echo "outside_w_zx02: .incbin \"outside_w.hgr.zx02\"" >> maglev_graphics.inc + echo "outside_n_zx02: .incbin \"outside_n.hgr.zx02\"" >> maglev_graphics.inc #### diff --git a/games/riven_hgr/disk40_files/graphics_outside/outside_n.png b/games/riven_hgr/disk40_files/graphics_maglev/outside_n.png similarity index 100% rename from games/riven_hgr/disk40_files/graphics_outside/outside_n.png rename to games/riven_hgr/disk40_files/graphics_maglev/outside_n.png diff --git a/games/riven_hgr/disk40_files/graphics_outside/outside_w.png b/games/riven_hgr/disk40_files/graphics_maglev/outside_w.png similarity index 100% rename from games/riven_hgr/disk40_files/graphics_outside/outside_w.png rename to games/riven_hgr/disk40_files/graphics_maglev/outside_w.png diff --git a/games/riven_hgr/disk40_files/graphics_outside/Makefile b/games/riven_hgr/disk40_files/graphics_outside/Makefile index 171b81df..d5a4588c 100644 --- a/games/riven_hgr/disk40_files/graphics_outside/Makefile +++ b/games/riven_hgr/disk40_files/graphics_outside/Makefile @@ -6,12 +6,15 @@ PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr all: outside_graphics.inc outside_graphics.inc: \ - outside_w.hgr.zx02 outside_n.hgr.zx02 \ - out_path_e.hgr.zx02 out_path_w.hgr.zx02 - echo "outside_w_zx02: .incbin \"outside_w.hgr.zx02\"" > outside_graphics.inc - echo "outside_n_zx02: .incbin \"outside_n.hgr.zx02\"" >> outside_graphics.inc - echo "out_path_e_zx02: .incbin \"out_path_e.hgr.zx02\"" >> outside_graphics.inc + out_path_e.hgr.zx02 out_path_w.hgr.zx02 \ + out_plaza_n.hgr.zx02 out_plaza_s.hgr.zx02 out_plaza_e.hgr.zx02 out_plaza_w.hgr.zx02 + echo "out_path_e_zx02: .incbin \"out_path_e.hgr.zx02\"" > outside_graphics.inc echo "out_path_w_zx02: .incbin \"out_path_w.hgr.zx02\"" >> outside_graphics.inc + echo "out_plaza_n_zx02: .incbin \"out_plaza_n.hgr.zx02\"" >> outside_graphics.inc + echo "out_plaza_s_zx02: .incbin \"out_plaza_s.hgr.zx02\"" >> outside_graphics.inc + echo "out_plaza_e_zx02: .incbin \"out_plaza_e.hgr.zx02\"" >> outside_graphics.inc + echo "out_plaza_w_zx02: .incbin \"out_plaza_w.hgr.zx02\"" >> outside_graphics.inc + #### diff --git a/games/riven_hgr/disk40_files/graphics_outside/out_plaza_e.png b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_e.png new file mode 100644 index 00000000..48b9cfbc Binary files /dev/null and b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_e.png differ diff --git a/games/riven_hgr/disk40_files/graphics_outside/out_plaza_n.png b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_n.png new file mode 100644 index 00000000..58e9681b Binary files /dev/null and b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_n.png differ diff --git a/games/riven_hgr/disk40_files/graphics_outside/out_plaza_s.png b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_s.png new file mode 100644 index 00000000..e7e5d860 Binary files /dev/null and b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_s.png differ diff --git a/games/riven_hgr/disk40_files/graphics_outside/out_plaza_w.png b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_w.png new file mode 100644 index 00000000..ad6d9686 Binary files /dev/null and b/games/riven_hgr/disk40_files/graphics_outside/out_plaza_w.png differ diff --git a/games/riven_hgr/disk40_files/leveldata_maglev.inc b/games/riven_hgr/disk40_files/leveldata_maglev.inc index bde0af5b..f8aa12a7 100644 --- a/games/riven_hgr/disk40_files/leveldata_maglev.inc +++ b/games/riven_hgr/disk40_files/leveldata_maglev.inc @@ -3,14 +3,14 @@ ;=============================================== locations: - .word location0,location1,location2 + .word location0,location1,location2,location3 ; RIVEN_LOOKIN -- looking into the maglev location0: - .byte $FF ; north exit - .byte LOAD_OUTSIDE<<4|RIVEN_OUTSIDE ; south exit - .byte $ff ; east exit + .byte $FF ; north exit + .byte RIVEN_OUTSIDE ; south exit + .byte $ff ; east exit .byte RIVEN_INSEAT ; west exit .byte $FF ; north exit_dir .byte DIRECTION_W ; south exit_dir @@ -26,7 +26,7 @@ location0: ; RIVEN_INSEAT -- when sitting in seat location1: .byte $FF ; north exit - .byte LOAD_OUTSIDE<<4|RIVEN_OUTSIDE ; south exit + .byte RIVEN_OUTSIDE ; south exit .byte $ff ; east exit .byte $ff ; west exit .byte $FF ; north exit_dir @@ -46,10 +46,10 @@ location1: ; RIVEN_READY2GO -- ready for maglev ride location2: - .byte $FF ; north exit - .byte $FF ; south exit - .byte $ff ; east exit - .byte $ff ; west exit + .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 @@ -64,3 +64,20 @@ location2: .byte 127,168 ; special y .word handle2_clicked-1 ; special function + +; RIVEN_JUNGLE_OUTSIDE -- just outside the maglev +location3: + .byte RIVEN_LOOKIN ; north exit + .byte $FF ; south exit + .byte $FF ; east exit + .byte LOAD_OUTSIDE<<4|RIVEN_OUTSIDE_PATH ; west exit + .byte DIRECTION_W ; north exit_dir + .byte $ff ; south exit_dir + .byte $ff ; east exit_dir + .byte DIRECTION_W ; west exit_dir + .word outside_n_zx02 ; north bg + .word $0000 ; south bg + .word $0000 ; east bg + .word outside_w_zx02 ; west bg + .byte BG_WEST|BG_NORTH + .byte $ff ; special exit diff --git a/games/riven_hgr/disk40_files/leveldata_outside.inc b/games/riven_hgr/disk40_files/leveldata_outside.inc index 2c1f5f1b..1687c6cb 100644 --- a/games/riven_hgr/disk40_files/leveldata_outside.inc +++ b/games/riven_hgr/disk40_files/leveldata_outside.inc @@ -3,22 +3,40 @@ ;=============================================== locations: - .word location0 + .word location0,location1 -; RIVEN_JUNGLE_OUTSIDE -- just outside the maglev +; RIVEN_OUTSIDE_PATH -- path away from maglev location0: - .byte LOAD_MAGLEV<<4|RIVEN_LOOKIN ; north exit + .byte $FF ; north exit .byte $FF ; south exit + .byte LOAD_MAGLEV<<4|RIVEN_OUTSIDE ; east exit + .byte RIVEN_OUTSIDE_PLAZA ; west exit + .byte $FF ; north exit_dir + .byte $ff ; south exit_dir + .byte DIRECTION_N ; east exit_dir + .byte DIRECTION_W ; west exit_dir + .word $0000 ; north bg + .word $0000 ; south bg + .word out_path_e_zx02 ; east bg + .word out_path_w_zx02 ; west bg + .byte BG_WEST|BG_EAST + .byte $ff ; special exit + +; RIVEN_OUTSIDE_PLAZA -- plaza near maglev +location1: + .byte $FF ; north exit + .byte $E0|0 ; change disk, exit 0 ; south exit .byte $FF ; east exit - .byte $E0|0 ; change disk, exit 0 ; west exit - .byte DIRECTION_W ; north exit_dir + .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 outside_n_zx02 ; north bg - .word $0000 ; south bg - .word $0000 ; east bg - .word outside_w_zx02 ; west bg - .byte BG_WEST|BG_NORTH + .word out_plaza_n_zx02 ; north bg + .word out_plaza_s_zx02 ; south bg + .word out_plaza_e_zx02 ; east bg + .word out_plaza_w_zx02 ; west bg + .byte BG_WEST|BG_NORTH|BG_SOUTH|BG_EAST .byte $ff ; special exit +