From 9f31ed98beeab72a90b332f07623aa71635b1fe7 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 3 Aug 2024 22:37:49 -0400 Subject: [PATCH] riven: figured out how to allow split-directions for going forward engine actually more or less supported it already --- games/riven_hgr/NOTES | 14 +++++++- .../disk02_files/graphics_steps1/Makefile | 4 ++- .../disk02_files/graphics_steps1/steps2_e.png | Bin 0 -> 2295 bytes games/riven_hgr/disk02_files/level_steps3.s | 33 ++++++++++++++++++ games/riven_hgr/disk02_files/level_top.s | 1 - .../disk02_files/leveldata_steps1.inc | 4 +-- .../disk02_files/leveldata_steps3.inc | 8 +++-- .../riven_hgr/disk02_files/leveldata_top.inc | 3 +- .../disk04_files/graphics_tunnel4/Makefile | 28 +++++++++++++++ games/riven_hgr/draw_pointer.s | 4 ++- 10 files changed, 90 insertions(+), 9 deletions(-) create mode 100644 games/riven_hgr/disk02_files/graphics_steps1/steps2_e.png create mode 100644 games/riven_hgr/disk04_files/graphics_tunnel4/Makefile diff --git a/games/riven_hgr/NOTES b/games/riven_hgr/NOTES index 68493c7d..b3f8f8f6 100644 --- a/games/riven_hgr/NOTES +++ b/games/riven_hgr/NOTES @@ -85,7 +85,7 @@ Disk02 Map (disk has 35 tracks, each 4k in size) T 0 = Qboot T 0.5 = TITLE 1805 bytes 8S = 0T8S (2048) 400B free T 1 = QLOAD 2314 bytes 16S= 1T0S (4096) 2k free -T 2 = STEPS1 21647 bytes = 6T0S (24576) 3k free +T 2 = STEPS1 23639 bytes = 6T0S (24576) 1k free T 8 = STEPS3 15872 bytes = 6T0S (24576) 9k free T 14 = TOP 15210 bytes = 4T0S (16384) 1k free T 18 = BRIDGE 15021 bytes = 4T0S (16384) 1k free @@ -257,3 +257,15 @@ API for loading: only one copy of qload/title + +IN_SPECIAL +IN_RIGHT +IN_LEFT + + SPECIAL + FF = not special + bottom nibble = directions + 1/3/4/8 direction + 40 = only point + 80 = split screen + diff --git a/games/riven_hgr/disk02_files/graphics_steps1/Makefile b/games/riven_hgr/disk02_files/graphics_steps1/Makefile index aedacebd..a1fb2be6 100644 --- a/games/riven_hgr/disk02_files/graphics_steps1/Makefile +++ b/games/riven_hgr/disk02_files/graphics_steps1/Makefile @@ -8,12 +8,14 @@ all: steps1_graphics.inc steps1_graphics.inc: \ steps1_n.hgr.zx02 steps1_s.hgr.zx02 \ steps1_e.hgr.zx02 \ - steps2_n.hgr.zx02 steps2_s.hgr.zx02 + steps2_n.hgr.zx02 steps2_s.hgr.zx02 \ + steps2_e.hgr.zx02 echo "steps1_n_zx02: .incbin \"steps1_n.hgr.zx02\"" > steps1_graphics.inc echo "steps1_s_zx02: .incbin \"steps1_s.hgr.zx02\"" >> steps1_graphics.inc echo "steps1_e_zx02: .incbin \"steps1_e.hgr.zx02\"" >> steps1_graphics.inc echo "steps2_n_zx02: .incbin \"steps2_n.hgr.zx02\"" >> steps1_graphics.inc echo "steps2_s_zx02: .incbin \"steps2_s.hgr.zx02\"" >> steps1_graphics.inc + echo "steps2_e_zx02: .incbin \"steps2_e.hgr.zx02\"" >> steps1_graphics.inc #### diff --git a/games/riven_hgr/disk02_files/graphics_steps1/steps2_e.png b/games/riven_hgr/disk02_files/graphics_steps1/steps2_e.png new file mode 100644 index 0000000000000000000000000000000000000000..5aee827d1152ddbd6795871bdbf03503eb99ba7a GIT binary patch literal 2295 zcmVEX>4Tx04R}tkv&MmKpe$iQ>7vm2Rn##$WX<>BB+R?R-p(LLaorMgUO{|(4-+r zad8w}3l4rPRvlcNb#-tR1i=pwX9p)m7b)?7NufoI2gm(*ckglc4iFj@rdeIHfTr7K zI++l&xm7XriV&iRU>u_|vy3@OO2K!0-6O!)yExDCKlkV8Q}Y%B0wVD&GfbO!gLrz= zHaPDSM_5T#iO-40Ou8WPBi9v=-#8at7I=bb^8^S!16O+6Uu^(0pQP8@ zTI>ku-v%zO+nTZmTBLp$mHkJSY02y>eSad^g zZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00zTJL_t(|+U=X!nZqCqgw;Z7Q44Be z`fp|969M9KIQ+19zijUO9t}cZn<(FK+~9nG{cpd2H3rkZZSDIXM*Do<&mcL!=lrz( z)c!dtwiD<44~lViBJj~nmXF$_n}+>X1#^9m+o|h&H44sMv{=4xWkn+A*PMbL@=!I* zsSMQJP#n$(vqk9p%EcqsPPHimA4YrU#BsttbD13yb8IzbHN}>b2x&O5|C&=kGBoQ990uIZiqnOd^X3UkmJHZ zk%nSvEF4uO!_iP8rx?$Qoq`kFcB2pMJwpW8vEQ14&<)GOM@d}tP z3wvd9qQ51TF{1!AZq*k{vel$g%#g?yacOz7HHgVlRoGRuikd8kLV~R}7pX~$8Ch&~ z&Hl2NLVhVR9NTJNCXkCcBaGEHH1p%q6GESqO4VD6=*TNqAHV~aHAFG@6-DUMBO zY8h!HhN-Mf*;O=PW4R&481@XN4(+)z0gtr0I$P=?wS|+&V;Kw3s~(^(?Np^vn63D9 zeN~7n^r?c$%97ePE!fEVKPwY0w`9G$$14;;Iw_-NA>|)iuD$!kvoy{uK(u;>y_MeM zvE9G67o{x$H_W4+3`(K^Gb|H01*Ur<$M8_k97B{FsNl(k zhLaikq+mBlhn3AKjdUzA3svx4za(8WS{M?;BZ=)ZS{U#2g8Y`L#QVjmn&m~x2;)7< zcr433bJEB=l;QC(coe7hDK17R^Au)fFkVnE7$+qhI znK5tD%FumF>UKL1d_(z6NP2X~#u1!n`@7rEzKtH4NS{S>u|N^+gr74^GS4#>$D!5+ zqT@6}8TO*2wj)fRd7cR!qm?0=BFn8ziiF~`CWWRbv!14)3TWOqN#t~)I%USr{q>a~ z6;T@OV13O_ibdwY`1`+D87e3vt5_@=nHMCYAQmefLyc&;*( zW04oJ3_pb1M8h+*Nsm`ym}D6Xx-TO3RA#hm>?^pERo*&fcyedTDkF0ZL(~wZJPZcY z%x|a~vDURWv3NB6CS_!~LU5OA^9$m{M$VgA^l29KaWMM8P|KPtvd^N6GH+>Mcg6U! z_;@QN2aK9i$r@qqqbc4wak4f_UT1DQCU>p*^odhkPswB7{KRA*O_6q%PRbyzIb~6= zifT@7r|8zd*}4u-s(qWTub;)~w>?A0D5a{=C-V;cKIH$Tj9XXkJvOxM70g&+E`-5= z#G1>GF!DS`&m59_ULGogu08zuj352RrXX1Sut%XQ%W)NF3k|z8yv8$T7JTPaHz2_=DyxoIE z9`x(jy<@Xq?TW{snaZQy9iAgJo(h#}tY2-PJsOlKFi9g+&M9eX#zS#lS^NIqH9?|x z&CD^@o+6sj*`qcFx&)cgYFvJ?_7KT6T6niBJd6o5-2e99{@Z{1Z~v`J`vc+TjZ?U{ RjNt$P002ovPDHLkV1f tunnel4_graphics.inc + echo "tunnel4_e_zx02: .incbin \"tunnel4_e.hgr.zx02\"" >> tunnel4_graphics.inc + echo "tunnel5_w_zx02: .incbin \"tunnel5_w.hgr.zx02\"" >> tunnel4_graphics.inc + echo "tunnel5_e_zx02: .incbin \"tunnel5_e.hgr.zx02\"" >> tunnel4_graphics.inc + +#### + +%.hgr: %.png + $(PNG_TO_HGR) $< > $@ + +%.hgr.zx02: %.hgr + $(ZX02) -f $< $@ + +#### + +clean: + rm -f *~ *.o *.lst *.zx02 *.hgr tunnel4_graphics.inc + diff --git a/games/riven_hgr/draw_pointer.s b/games/riven_hgr/draw_pointer.s index 623aa24f..5282b615 100644 --- a/games/riven_hgr/draw_pointer.s +++ b/games/riven_hgr/draw_pointer.s @@ -75,8 +75,10 @@ finger_grab: rts really_draw_grab: + ldy #LOCATION_SPECIAL_EXIT + lda (LOCATION_STRUCT_L),Y - lda DIRECTION +; lda DIRECTION and #DIRECTION_ONLY_POINT bne special_but_point