EMU618社区

 找回密码
 立即注册
搜索
查看: 411|回复: 13

[原创FC/FDS-HACK] [FC][魂斗罗旋风终板END暂停显菜单]

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
9 Z  u: I4 V# h. D2 G
* ^+ X" ]# ^! _
     [FC][魂斗罗旋风终板END暂停显菜单]

2 D9 i8 c6 K/ z作者:FlameCyclone(flamecyclone.ys168.com)
* l& Z) n! k5 E时间:2016/11/19 21:46:00% A+ S3 j3 s* W+ B1 |  [, j4 x* H0 B
更新日志:

! D  @5 f6 A* A) {& b$ x2016.11.19:加入暂停显菜单(共5页).  |! I8 Y0 R$ \  ~% g& p+ \6 v  O9 C
2016.11.12:加入无限跳跃.4 H7 S: P2 |6 E5 L2 E
2016.11.12:加入速度调节.

+ O" i& w" o, V5 y0 c2016.11.11:加入敌我子弹对消功能.
& y  ^5 L, U1 }- |+ k# ~2016.11.11:加入全屏闪灭功能.
$ U" b7 s" }# w2016.06.08:加入全屏瞄准功能.8 J" Y( X9 A* `7 O2 p) m  s& e
2016.05.31:加入弹速调节功能.7 ^5 t7 B  A6 g* w& k. f0 s
2016.01.01:加入高难度模式.- |$ w2 {+ d7 F; v$ \# s% D6 {/ T
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.8 d+ M" a1 T- P% x
2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.5 F8 U8 k1 T% ?5 x' X; }; i. h
2014.07.05:双人切换功能优化.
8 t- B2 F9 W. ]& V7 j# ?2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
3 a# W8 q4 k! F' X+ u- Q/ V3 W) d2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.
- o0 H: j3 {# ^/ M. Q2 `2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.
: J& A( H# K% \2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
. F6 \1 U) {  l6 r' X3 @2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)3 e8 w' h5 V, {. C; J7 I
2014.02.13:加入自动演示通关.
9 D: @. Z9 i' i" W% w" z内容:
# a' ^, q& Y% ?- f2 o1 j/ e! a23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
- e" ]" {( _9 Z7 z$ j! r9 M( y22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.5 t+ T0 C1 \$ Z% \
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
/ X6 a: y5 S* y
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.$ k& q3 g& L' w9 m- e2 a0 B6 @
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
3 o# G: R7 W. X. j2 h* [6 d18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.: {8 Z; Q( g! o8 [. ]9 R
17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.
, ^  C( k4 c" O16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.1 _9 Y  Y% Z# y, x8 j
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
$ R. w" i- w& J2 g; a2 C7 O( d4 O02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
" u# y! l, u: c. K" \+ _8 Z" s- }03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.- u' j* s. x* u: J
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.) w: c# C$ |9 u. m
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.9 u* a" p8 s2 ?" @2 H! i! v% O
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.2 |4 z( x! l4 y% k% l. \
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.$ p2 \8 E+ W" z9 y& r
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
1 k# z: e( H5 H' X09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.3 d) t( ?& n' O
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.. y% E% x! [$ l9 w( K$ l
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.2 M" D5 {5 E1 ]3 o
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
/ u- ?8 F6 h# @6 v13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
; z: \/ B9 h8 R0 ^14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).6 q6 [* l: o  ^0 Q. Z3 m: }- T
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。# k5 Z  C; W9 I( r' ~/ \( B1 l
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.2 B% Z: l2 {" o/ Q; ~3 f/ M
B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!/ U- S' X* l6 i' W* y
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作., {1 D1 J! i6 t1 {' r
" s3 }, b' Q" t" i: |
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
2 v0 w# G7 k6 Q# w欢迎大家转载,转载时必须注明出处.: ?3 F: z' @2 {- Y5 m
" N* M% p# n. ]' [
游客,如果您要查看本帖隐藏内容请回复

- a) m/ [3 i9 X( K- c* E6 P
6 [. t& R! X* j3 b9 x2 E2 C3 v忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.5 c8 @7 C! U3 N! K' u$ l
这几天的劳动成果如下:
  1. .ORG $B4001 |2 }, [3 P) \1 `( d0 h

  2. 8 x' i6 X& B; d1 O8 }4 j% X
  3. : e( ~. a# l$ a( }# i* ]
  4. PROREG:' _4 B  q# D9 D" s6 f9 J" O$ e
  5. PHA/ r% j! K5 T" y
  6. TXA
      I+ K* h7 j) q; ^) f" S) B
  7. PHA
    * g) n9 g' H: a/ i/ F
  8. TYA% m0 b: r* W6 r* L! y
  9. PHA$ O' I1 s+ e; D& z2 c
  10. LDA $25
    4 k% L, A8 d* o( Z
  11. CMP #$01
    7 M- r: _2 Y( [4 q0 l
  12. BNE RE& E, S* a' ]. h# J, d+ I6 Z
  13. LDA $010A
    2 N5 c- S/ s9 A2 q' d/ z. r" N
  14. CMP #$009 I, m$ A4 X5 \- E' e
  15. BEQ P16 a6 j+ C; H0 {# [; j

  16. " C, ^# O6 o! Q  L& M
  17. RE:! D- T1 u. G. x) O8 N% u
  18. JMP PPUWRITE
      ~& r6 U* c9 m$ L2 o

  19. , n+ ~  ~* C2 M
  20. P1:                ; 条件判断
    7 R7 T" j- z1 g7 ^$ w
  21. LDA $7FFF
    2 _; k* J$ S- [' n$ g
  22. CMP #$FF" N6 s8 H$ A' ^+ @4 ?
  23. BNE P1RP
    3 `$ o/ B8 x* D) F& z
  24. LDA $7FA0
    ) l5 h  y( Z; u3 H
  25. CMP #$00! t& q8 g% \* k
  26. BNE P1CMP
    . Z" O# a* g# z5 R! R! d& t
  27. LDA $2001" f- ]0 w- o0 t
  28. PHA
    ! S) M3 x# p' O% O5 N5 D
  29. LDA #$00# r6 b9 u$ N$ t& k. A6 ?3 m/ d
  30. STA $2001
    0 h5 ]. L8 m' O7 n- ^7 |
  31. LDA #$FF; U) V. e% o1 n9 T5 w! L7 |8 B
  32. STA $7FA0
    6 T; e2 z3 g4 D' U
  33. JSR CLEANA
    9 [+ K. S$ W  d$ e' c
  34. PLA
    6 v% v# X4 ^8 o$ b5 f
  35. STA $2001, h: m; S9 t/ P! H8 w) R
  36. JMP PPUWRITE
    1 M4 ?' }+ `& h9 F; K0 g0 J
  37. P1CMP:
    ( j5 m) k5 N% j5 Y/ n
  38. LDA $7FFF& }# g) ]# c; C; z8 |! B4 {
  39. CMP #$00
    ( I/ _$ O) ~! T8 n& P0 M1 M; R
  40. BNE RE
    4 N7 |; l9 t1 K' |
  41. P1RP:
    ; H* w; t! ]5 N/ Q$ h( A- H$ p
  42. LDA $2002* E( e1 j) n2 f
  43. LDA #$00
    % W  ]; L# J" n
  44. STA $2001
    9 a4 m; w4 {3 L
  45. LDA #$FF
    ( {3 v" M8 c5 j& A7 T# f
  46. STA $7FFF( Q$ H& a+ }- O
  47. STA $7FA0+ j4 {* g' T9 k
  48. JSR COPYPPU' G; j6 C/ t& |* M9 Z
  49. PIRP2:
    1 s# \" z" {0 E4 O
  50. JSR CLEANA  y6 @9 {5 z; a& l( {3 \
  51. JMP PPUWRITE' c5 u& g" h) P9 c& n
  52. 8 o. i# G: |, G
  53. COPYPPU:7 N$ ?% m4 I! E6 t' D
  54. L0:6 w  q1 H; B6 h0 J$ v% ?/ }9 ]
  55. LDA $302 D% `$ S2 d4 u7 B3 I7 D% e
  56. CMP #$02
      g. J5 @$ F: i, s7 z* ~+ I3 ~
  57. BNE UNPROFC9 v% H/ R/ U1 r( R# @2 F8 N1 U
  58. LDA $FC1 \7 Q7 m: l0 v- O& G& J0 K
  59. STA $7EFC
      }$ Y% X7 T8 q. k
  60. LDA #$00' K- ], ~" P: x6 f
  61. STA $FC5 b2 _/ y5 I; a- B6 W, |: f% ~" F
  62. UNPROFC:5 Q- o/ ]0 ?) X8 c3 c7 Z
  63. LDA $FD/ v  T; y. H" ?- C* i
  64. STA $7EFD9 b5 m9 f, `6 z4 n" C
  65. LDA $FF0 S. F# i; T1 l
  66. STA $7EFF
    " U$ |, Q. }5 R7 G+ D% d0 x
  67. LDA #$00
    4 C  e. ?5 P2 U7 J: u7 K
  68. STA $FD
    ) a; v( M& Z- X; E9 ~0 W' t* N
  69. LDA #$B0$ z# V' J& ?9 K7 f$ o
  70. STA $FF% R, Y2 W- J* D; v8 i# a
  71. LDA $07C1
    ; u' H* ]3 ?+ n. ~( G. l
  72. STA $7FC1
    8 h- b" A  X( t. A; C% [
  73. LDA #$3F
    9 J: ^! I. v1 ]' _. ^
  74. STA $2006' ?& y4 A7 U6 v7 Q' t
  75. LDA #$01
    1 ^/ x. f8 a( G: H- c" c) U
  76. STA $2006. T& F) s7 Z  f) g0 k7 {: c
  77. LDA #$244 l- d4 q8 F' A
  78. STA $2007
    3 B1 E" L9 q5 V) h$ o7 r7 K6 X
  79. LDA $07F6# F: o# D+ m# B" L
  80. STA $7FFE
    4 M/ i4 f3 r1 ?2 `
  81. LDA $00FE
    4 D/ x. _: E2 h. H
  82. STA $7FFD" m" K' [! O% ]' ^
  83. LDX #$00
    9 p2 H1 A) k+ I+ D
  84. LDY #$00
    6 P2 m8 x. {" [+ g* D  A2 O
  85. LDA $BD5 A2 P# R+ @# W- f" X: E% y/ n# a+ z
  86. PHA6 s( q5 E8 k+ y1 g, Y8 `: t
  87. LDA $BC; e# {1 P4 z$ {; E$ s5 f
  88. PHA
    ' x) ]# B. u1 H5 P9 V
  89. LDA $BB( k6 P) u. }4 P  i, W! R
  90. PHA& j: |! h8 C4 n! q8 N5 \
  91. LDA $BA
    + s/ ~2 y  }1 d
  92. PHA7 Z5 B% A" }5 `  z% p+ N  f
  93. LDA $B9% _3 f) U6 p3 S4 H- p
  94. PHA
    / O6 }' J% S( u5 y, b0 T
  95. LDA $B8$ t7 B5 h1 w% G" }5 v1 [
  96. PHA
    + Y5 V) S1 R, T
  97. LDA #$00
    9 i) Y, ^2 s6 g9 g: E+ @" ~6 D7 Q
  98. STA $B8# J9 i' H' r) U$ P6 f- j
  99. STA $B9. E8 e* B; Q' }  n/ ]! z& L
  100. STA $BA9 P% J: W) c1 S( c/ K) h
  101. STA $BB! X0 r7 o) G1 ^( t" _5 f
  102. STA $BC
    ! t  m1 q' A6 x' @
  103. STA $BD- f) u: |2 A+ {  Z( f$ t7 s
  104. LDA #$00+ \( }: Q, S/ z3 k3 l- h+ E
  105. STA $BA, {4 n# m& _' M" L. |8 }! j
  106. LDA #$20
    ; e3 L/ \9 L# n
  107. STA $BB9 H  q" \9 Z( f2 B
  108. LDA #$00- e" H- f9 x! q& q+ b
  109. STA $BC$ c) P& W* I4 C& y7 d/ O  {% v
  110. LDA #$60  M1 H3 g) B# b" y, P: g
  111. STA $BD
    * a9 m- i5 d1 @" c0 }8 c, G, u
  112. 0 T  V/ h# ~) [0 z4 W( k. m9 ~
  113. L1:                ; PPU复制. m7 j  j$ @0 c* f# u
  114. LDA $BB
    4 r5 _* E! H/ ?, ?, o/ B9 h1 g
  115. CMP #$30
    8 b2 i+ o/ Q! f5 @; j  m% m
  116. BNE L2* f' {3 K# t0 G' d" g
  117. LDA $BA' q1 p/ Q8 U8 H6 {' R4 C/ {3 [
  118. CMP #$00
    * }$ N5 W+ n7 P0 L
  119. BEQ PROADPLA
    5 D$ g4 _+ d1 `' v

  120. 4 a* }8 C3 w% g1 J* h
  121. L2:. a/ _2 |: c- x$ Z& g8 p4 R! q
  122. LDA $BB
    3 @# }2 p7 y: ?3 Z9 `5 d
  123. STA $2006
    ! o: X# L4 h0 w! i4 `# a
  124. LDA $BA
    ' m/ C5 a/ w# T; ]0 Z
  125. STA $2006* F/ A0 Z; X! g, u' s
  126. 2 p8 u# _# E/ O" r8 u- g  ~' s9 E
  127. L3:. N/ R0 p# @' y" n) i7 _& g+ y
  128. LDA $2007
    * F- }9 }; |) }5 K+ h- b
  129. LDA $2007/ B! Z1 r& M( a% D) }+ |3 {. i% Q
  130. STA ($BC),Y3 d& D0 L, w9 ^2 L

  131. % f) u; W& ~( y; @& E+ s
  132. L4:5 n6 M5 D/ @( l4 S% x( H6 O
  133. LDA #$00  J( X! B3 Y: w+ }. @3 P
  134. STA $2000- {# U% r8 _7 t0 _9 `5 s( F+ Y
  135. INX' e) l2 P, H; ^' S9 i+ f- `
  136. INC $BA% f" R: K" H: ?$ [8 r- m
  137. INC $BC% L$ z; |) x( M+ E4 b4 o$ K+ \
  138. CPX #$00
    ! {" T# _* m( U  `
  139. BNE L1+ E5 c  Z" ]/ D& t
  140. INC $BB
    ) W, b% b3 T3 e) ]0 n
  141. INC $BD) ^/ n6 M; h# [! P3 f
  142. JMP L14 C+ Z) c+ Y' n/ M' t) r& L7 d
  143. , t3 z# W& i+ A+ g% f& g$ n
  144. PROADPLA:                ;出栈
    7 }: W; {8 W4 k: U% H% |3 t, @' B
  145. PLA! J1 n3 N% D# t6 o' O0 l# a
  146. STA $B8
    & x" d% L/ v/ F+ G. ]' m
  147. PLA: s" e+ x' {& ^, f* W
  148. STA $B9" _7 Q' W' M: @/ n8 R- s6 W* Q/ g* k
  149. PLA6 B' X. t  V- y& s$ w/ V% ?6 U5 x
  150. STA $BA
    ( m; [4 f: a) v7 a% @7 T$ x! A
  151. PLA; Y+ {" |% A6 H
  152. STA $BB
    ) L% Y: p; R& p. u4 ~2 v
  153. PLA' }6 c7 \$ o% K4 E! p! f5 F0 ~& q: M
  154. STA $BC; D$ _, T# L  T+ d
  155. PLA0 U6 a3 G* ~. ~8 B  i, |8 [
  156. STA $BD
      O/ a( x7 X) r- z7 W" k7 c8 k4 D
  157. CPRE:
      [( F# a; C3 D. g, Z' L
  158. RTS
    . a0 P. i0 i% L
  159. 9 w4 a6 g8 `1 p2 X+ W7 a
  160. CLEANA:                ; PPU清空" Y9 L6 O- i. P$ C
  161. LDA $BD# r# ]+ t4 A. ]' u5 N* k+ t
  162. PHA) l7 G5 P* A% Z" t/ }6 m& F
  163. LDA $BC
    * {; P8 F' s+ k4 c% \$ Z' F
  164. PHA3 l! B( c- m2 t* S" u
  165. LDA $BB2 ]8 t$ N5 C5 b. s# K/ S
  166. PHA7 b, W. v" F4 Q- o
  167. LDA $BA6 K8 c; t* }) _3 Q
  168. PHA. B; [7 `' `. H+ E0 e& j- Y# x
  169. LDA $B9! [: b" j% r$ M! R  z
  170. PHA: R. \+ u7 d+ `8 Y8 ?& f! X4 i* f
  171. LDA $B8
    ( U+ _2 s3 ?9 W* I2 o
  172. PHA8 B. `2 X$ R9 t, Z
  173. LDA #$003 N) j; `  C6 b
  174. STA $B8
    0 Q' y+ m* F3 E
  175. STA $B9: K4 n2 n0 G1 x4 `
  176. STA $BA
    ! M7 R, F. u: ~. h$ Z
  177. STA $BB
    . ~0 a5 \  |* i) ~
  178. STA $BC
    * n4 i. m3 m/ b0 j- W6 A
  179. STA $BD* J' J  M  v7 ~+ Y  I: Y9 x
  180. LDX #$00$ l0 q) G& }% ?! W1 T$ J
  181. LDY #$008 C& n" R9 F' E$ }1 a/ p. I
  182. LDA #$00
    : e/ [8 C) M. R0 m) X5 a/ v
  183. STA $BA- B* `) Z6 U0 f6 ~
  184. LDA #$209 K! _* ^6 `% M
  185. STA $BB0 N$ y+ p4 d) a5 [: j: W. O, M, r# v
  186. % ~* N; u3 h" @- k9 R( W1 X
  187. CL1:! ^+ j. f3 ?# |1 k/ S9 S- a
  188. LDA $BB8 y$ M4 H7 z' G5 U6 w# f; e) ~
  189. CMP #$30
    5 k% a2 K" u+ P, f5 Q! |# O- z' N
  190. BNE CL2
    # t2 y. N$ p3 I5 n
  191. LDA $BA
    3 S/ G0 _# w: g" n" @+ L5 c
  192. CMP #$00: j; B% s; `9 `4 L% f, q
  193. BEQ FREEWRIYE. e8 \: Z+ u6 p2 a8 B/ }: Z2 [! u
  194. 5 G- O! E1 G  y) s9 p
  195. CL2:
    # u( e( X0 y  w8 y/ G
  196. LDA $BB
    3 t9 r' {8 g& |* D) R) p
  197. STA $2006
    / V9 x4 E" y$ T% C3 O" @; _
  198. LDA $BA) w4 v$ h1 Z) b& I. g, w
  199. STA $2006- v( ?3 K* X6 r2 q
  200. * j, P( ~. J/ g- I9 i: d1 \4 ?5 p
  201. CL3:8 p$ x1 l" [9 R: E9 j9 \
  202. LDA #$007 r- Y3 k5 k/ A4 V. H
  203. STA $2007( }* i( U  w" o0 |) e% j  ~

  204. 7 D" T0 s- Z& J$ F+ G/ C
  205. CL4:" |9 p( ?- C! i
  206. LDA #$007 Y. i7 _# _/ w3 @
  207. STA $2000/ ]% W; r/ |% l. K# S3 }
  208. INX# |  p" M' g$ k7 y; D% U% [
  209. INC $BA
    , D$ K) a1 V" d5 Q$ K
  210. CPX #$00
    8 [8 T& [' K, P& Q$ X6 q# [" Q7 e
  211. BNE CL1
    ) _! m7 i7 m( f' T
  212. INC $BB9 k( W3 F+ Y% |* o8 \" P5 n. G  \7 Q- O
  213. JMP CL1 ; h: V" e+ {  g1 f! z- u7 l) K' e1 m

  214. 2 |' \+ X) r5 Z/ h5 U

  215. / Z  h% C8 }. n% r
  216. FREEWRIYE:5 J, f4 r9 O. h6 t# k' U
  217. JSR FREE
    # L9 J3 o" @7 K$ a* F" M7 J

  218. # L' @# G4 j/ K

  219. ' {! f, c4 ?+ }5 H' l2 _2 ?6 v
  220. ) f! k4 D# q; R& E

  221. 6 \  p7 y5 n2 @7 `3 {, X- J0 a; H
  222. / T. M2 K& q8 L+ N( ?2 E& H2 J3 |
  223. CLEANF:                ; 恢复现场% b* G- U! U0 X+ n! I  Y, t; c
  224. LDA #$08
    & h# ]1 ]# l- ~: O5 _
  225. STA $FE2 m! y- q" v' [/ [4 |  O# I
  226. LDA #$00
    - W7 l  A$ v- \( Z0 \( M
  227. STA $07F6: M! g# v. B# Y: @+ n$ c
  228. LDA #$24. V. Q9 r' }3 H$ d" X- X8 H
  229. STA $7FC0
    2 _: ~, p" [; E/ [1 C' }1 Q# s
  230. PLA  i, `" e" x, N3 K) v* U
  231. STA $B8
    , b1 S. T7 j* E6 u, k
  232. PLA2 I9 e" i) J& s' `  p
  233. STA $B9
    7 _9 x3 H& i! N
  234. PLA. ~1 `, W3 Y0 _% ?
  235. STA $BA
    . k3 o- f* \& D
  236. PLA
    0 ?0 ]2 H' p3 J4 |1 K3 O
  237. STA $BB) I# L# L+ w2 X) p
  238. PLA
    ; E) ~% w- y9 {/ `& K) S
  239. STA $BC
    0 o9 }9 [+ F2 V" g4 n7 ^8 M# ^) s) S
  240. PLA- V+ e  a9 Z9 b* H
  241. STA $BD0 M  e, y& I. B" [: K' h  |7 X
  242. CLRF:' V, [/ [+ d! m2 k7 x! Q! o
  243. RTS
    - m$ V; @+ b! x" l, @) z8 d

  244. 0 w: [# a% t9 H  F! @4 a/ E3 h
  245. W_DATA:
    , G" W7 t$ h0 N: d; I/ y# O4 s! p* W# o
  246. .BYTE $00,$01,$02,$03,$04, n1 C$ R5 m4 _6 p; l7 l  J9 C
  247.   
    $ e/ Q' l( P0 k2 S$ D5 c
  248. W_PPU:' o  u/ I' |- h6 n/ f9 _
  249. .BYTE $98,$97,$90,$9D,$96; J4 e! n" I9 }! b1 o( H
  250. ( m  j) f+ D2 V8 n1 d
  251. P1_STRING:
      D8 `7 n6 B; I- `4 O) K9 x
  252. .BYTE $9A,$82,$00                ;"P1"$ m  T6 [2 {( ]" `% ^
  253. + c+ }6 g2 [- C$ j- K/ D4 q
  254. P2_STRING:7 l$ G) K5 }0 h8 X6 f' Z
  255. .BYTE $9A,$83,$00                ;"P2"
    - @) a' r: K9 J, W& g! K

  256. 5 L) O* s3 ^% g$ I* A
  257. WEAPON_STRING:. y- t. j# x" }2 o' }5 r
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"7 m8 x8 K; }; S/ \8 q* l- V0 m3 `9 ]

  259. 8 j* E$ r) b4 O6 s0 x6 {+ Y3 s
  260. RELIFE_STRING:* q2 q& _, }7 K' A( P* x
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    + ~( R1 y2 f) ~6 V. N" a5 d# o7 X

  262. - {" q4 I; Y9 M' S  `
  263. P1_PPU:
    & r* R1 V9 q; s- X& J4 d! f9 E
  264. LDX #$00  R. g& T4 R" @' v: Z& c

  265. 5 z- j; Z+ p2 `( [* h
  266. P1_PPUW:7 O! S( ~3 b& C/ l4 [  G
  267. JSR PPUADDR_PROCESS
    ' ?6 ?# u6 f, N. F4 E6 Z9 F! l
  268. LDA P1_STRING,X
    6 p0 |7 T8 v) ?- x
  269. STA $2007
    0 z/ w6 Q  T# U2 E$ {
  270. INX
    2 \5 r6 H3 u* ?( j  g. W) x
  271. INC $BA0 L+ \/ A0 b& M& E5 @* f& ]
  272. CPX #$03: ^4 _5 I' E; k, \
  273. BCC P1_PPUW
    2 Y0 ^2 e1 I' e* Z2 l& e
  274. LDX #$006 |! V- q2 q2 O$ L, q" h
  275. RTS
    8 T0 O0 @4 q4 ]+ J) V( L% g
  276. " m! `. q2 ^) S. P0 B
  277. P2_PPU:
    " U% V6 n: ^% N% H) y% e
  278. LDX #$008 g; r+ M9 `" V
  279. # H6 l6 R! |8 v" D. Y) X- ^
  280. P2_PPUW:# J' A- K& z" U
  281. JSR PPUADDR_PROCESS0 o, u* e) \2 U
  282. LDA P2_STRING,X
    7 m0 t6 K! F! S' N& i
  283. STA $2007. B! b5 q9 p  v# i. L  }2 l
  284. INX' S( H. V9 A: _. `4 Q
  285. INC $BA
    2 O6 n" L$ e$ R' [
  286. CPX #$03
    1 B( P  N" p. N6 G' W1 h; J8 C
  287. BCC P2_PPUW
    : q5 Q$ B) d2 a5 U
  288. LDX #$00
      o2 a4 Y, h! a. K, z
  289. RTS
    5 E7 @! x, {! v/ H* N4 y3 M
  290. % G( E( s- O) z/ Q
  291. " Y. X- u) E- N/ D, k
  292. LDA $BB: D% I; N% [0 Z- N
  293. STA $2006
    ; e7 I. b  [3 @* U
  294. LDA $BA8 i* B9 p; y, b1 h, T3 Z5 |! ]
  295. STA $2006
    . m8 ]7 t. u1 e( Z1 p  E
  296. RTS* I; i% ?5 \/ L' i2 ~4 M% F, x' \
  297. - p7 |+ R- f9 R

  298. , G) W/ b& _4 B8 J8 S3 |6 P9 Q

  299. & Z' L( F8 ?% k# i# H- O- V: Z
  300. PLAYERLIFE:
    ; J4 J/ a; L1 e# o
  301. JSR LIFETODEC7 y% y0 }4 F: z
  302. LIFEPPU1:' D+ t; r$ d4 g4 V8 q0 J" v8 o, N
  303. LDX #$00* X) T- S( t& f3 V+ h* V
  304. LIFEPPU1RE:) ~! W6 p$ H9 P4 n  R. r
  305. JSR PPUADDR_PROCESS
    + K! c4 D& {6 q$ h6 I5 t
  306. LDA RELIFE_STRING,X
    5 k- c9 q* g% S5 m8 ~; ^
  307. STA $2007
    4 Q( `! n" @* d( U/ V3 s
  308. INX
    7 u# W! m; U1 {" W+ M: U
  309. INC $BA* u- e( e& }$ C6 o3 N
  310. CPX #$075 [. p- d8 i7 |/ l! r% Q
  311. BCC LIFEPPU1RE$ y' z3 @$ E3 D* M& e

  312. + _; B+ }/ s! u; t
  313. LIFEDEC:                ;生命显示写入
    # r3 o+ V8 n" d# f, `% \
  314. LDX #$00) f5 Q) q" Z" Z) A! v
  315. LIFEDECRE:- j& @* j6 h. K  j
  316. LDA $7A03,X
    4 E: ~4 w4 v6 F+ v
  317. CLC. d% [1 I2 b* o4 |+ Z3 R- c7 d0 a
  318. ADC #$81
    2 p9 q# @. T, f$ T9 b- E6 V
  319. STA $2007
    $ l/ Z% ]9 @6 \6 O0 y  a
  320. INX
    0 N. k0 Q1 u8 f# J
  321. INC $BA
      e  ]/ L( Q$ p, J/ V
  322. CPX #$03
    / k& S- f" }) ^
  323. BCC LIFEDECRE
    ! k, L0 j8 b( \- P1 U# _
  324. LDX #$00
    , e" `) p+ e# Q- Y) g+ j
  325. RTS
    - ]# D" T4 g$ Y3 b! e# H  L
  326. ) A7 Z! ~  D+ I, e) f+ l
  327. LIFETODEC:                ;十进制转换
    , s$ C3 D  q' f4 Y8 g3 g# D( F+ @
  328. LIFEL1:        ;initialise2 K5 P  j, \7 w2 g9 W0 G1 Y
  329. STA $7A00        ;$7A00=F3
    2 r4 C9 P7 K) Y; _1 j4 s6 e8 \9 U) F
  330. LDA #$00; s1 I% o% u. i* M8 X
  331. STA $7A03        ;$7A03=00
    , R. ]$ h: l$ q0 M9 A0 ^9 f8 R
  332. STA $7A04        ;$7A04=004 @5 g4 O( W, A# f( L: p4 B
  333. STA $7A05        ;$7A05=00
    7 W5 N5 ?& t& ^! k) F0 Y6 q
  334. LIFEL2:        ;copy data $7A00 to 6001
    # ]3 D  f* E/ Y0 u% q
  335. LDA $7A00
    - |$ d) I( j/ B# j1 n+ R
  336. STA $7A019 E4 B% p2 D; t# D) U; h2 P6 m- }5 D

  337. ; x' ?3 f+ M' Q, w' z0 B( O
  338. LIFEL3:         ;hundred8 R# b- g. p& b
  339. LDA $7A01
    4 I) B, y' y' Z% h  o8 d# D
  340. CMP #$64
    2 o1 a' s& s& W% x
  341. BCC LIFEL6                ;$7A01<100 goto L6% T9 \3 _4 e& K; @. C1 A
  342. LIFEL4:8 q0 G" G6 L' c, D
  343. LDA $7A01
    $ {& I( a+ V+ ^5 j& F
  344. SEC
    ! \6 t/ j8 E, e
  345. SBC #$64        ;$7A01=$7A01-100
    6 i% Y6 {( E& z3 u2 k) H) P% T# M  r1 _
  346. STA $7A01
    - X2 M8 L- t$ d0 V" F% X+ @8 K& F
  347. INC $7A03        ;hundred++3 L( q. d6 R# j/ o1 l
  348. LIFEL5:  H& L$ ]$ w- |2 g; a1 ?. k% v" r
  349. LDA $7A01& O8 q2 {2 Z. N+ k1 d. A( J( `
  350. CMP #$642 G) A% t. O. m8 [6 p" ~( l0 T, B
  351. BCS LIFEL4                ;$7A01>100 goto L48 J" O* a) E! E4 h7 c8 O

  352. 7 G+ z% Q+ p$ [; \0 W
  353. LIFEL6:        ;decade/ _& a3 v# a5 g$ `
  354. LDA $7A01
      u- R* l( M/ Q& q
  355. CMP #$0A
    4 z" }* a; D: `
  356. BCC LIFEL9                ;$7A01<10 goto L94 p, K! h5 T; }0 ?# _
  357. LIFEL7:       
    & R6 r4 F  O# Y7 x8 r& }" |: ?
  358. LDA $7A01
    3 u3 _+ q. E- i, D& W
  359. SEC
    6 y6 b' H+ ~/ z1 P
  360. SBC #$0A3 R7 Y% ~8 Q4 A( e  x% D
  361. STA $7A01        ;$7A01=$7A01-101 Y- g( h/ q* d3 L) ~
  362. INC $7A04        ;decade++
    : I( X& x9 w2 @3 `. A& Q6 q1 X
  363. LIFEL8:
    * n$ c) z2 p) j$ l, _- I) f
  364. LDA $7A01
    8 {! F' P' c8 g  Y; {6 }$ v9 N
  365. CMP #$0A
    ) ^$ z  K, N$ w% x5 ~; Q. F) E
  366. BCS LIFEL7                ;$7A01>10 goto L7
    . w$ [8 \, I, E& W1 D+ |
  367. ;unit
    2 @4 K8 S/ U9 R7 d2 R
  368. LIFEL9:
    + ]- d/ g( P+ t( }. {5 I' A- p
  369. LDA $7A01        ;$7A05=$7A01
    " w2 |1 J% T. [# y
  370. STA $7A05        ;unit9 e1 o) k5 x: B0 N2 _2 g: _8 r' b
  371. RTS        ;return
    0 {" b- l' G+ s  V6 K0 V- o3 W8 n, W

  372. ; T! m' @  ^2 R' Y2 H
  373. * K. Q: m6 g8 R* w0 C. y1 B
  374. " x. f* E0 i% J& Q' H
  375. WEA:                ;武器ppu写入
    % ]$ I# Q# L! k' e8 R8 o
  376. LDX #$009 }% J- F# D( j: H4 p2 a: ^
  377. WEARE:1 U# V  w  S6 P, s% x+ n
  378. JSR PPUADDR_PROCESS
    / N1 v7 D; Q, @; ~8 ]
  379. LDA WEAPON_STRING,X
    8 }) d0 E8 O, Q$ J  G
  380. STA $2007
    . D5 ~6 ~# ?$ u  S( I) D/ ~
  381. LDA #$00
    - p8 l( y" e! x) ~
  382. STA $20005 E, I3 H6 Z, t+ e5 U# x
  383. INX4 U9 o8 {4 \: @5 u' K: r* F- E
  384. INC $BA
    $ Y& _9 l' Y8 W3 p# u* _
  385. CPX #$07
    % t5 Y3 G. J" h* F# A
  386. BCC WEARE
    4 b' \) V+ f# V
  387. 2 W( Z; c( |! y' `/ o# _
  388. READ_WEA:" w6 a* U# v, i: Z( L
  389. LDA $B93 H7 V1 a) d1 ~0 K9 j% o8 `
  390. AND #$10: c1 l# t' V& I5 ]7 x/ ?
  391. BEQ NWEA9 i. }4 Y; _5 {' j
  392. SWEA:
    ; x0 h, k% J3 q! [

  393.   y( Y+ E* K9 ?% w" R6 [
  394. LDA #$9D- m0 O. |' \1 Q6 w
  395. STA $2007
    " u* W: S# G2 J  [
  396. LDA #$00
    3 M0 y/ c, n: x. G9 P" s) l" R. ^, P
  397. STA $2000
    - n& F5 \, I4 [
  398. INC $BA
    % D! C- @0 G2 J! ^& M. y7 H
  399. LDX #$005 B5 u6 B! k" I2 ^
  400. JMP WEAREAD/ d$ g$ |/ A  T: j6 f
  401. NWEA:' z0 `0 S9 S6 H2 b
  402. / Y  S1 O) ?, u, v8 B' {$ _4 L
  403. LDA #$8D' E$ ^9 }" O8 l6 d3 k
  404. STA $2007+ {( W+ h* I3 T) l
  405. LDA #$00
    2 j' l0 Y2 q. Y' s( P2 m- p& N* v
  406. STA $2000, H- _1 @9 l( R6 {9 [& o/ b
  407. INC $BA
    ' l, q6 L. T  e$ _8 v
  408. LDX #$00
    # B+ |6 ]9 v3 O+ `, E  A0 ~: c; T
  409. WEAREAD:
    $ O- b1 h+ G. x) F& i
  410. LDA $B9
    0 f6 C' F7 G. ^7 m/ v: `
  411. AND #$EF4 e  b4 |" n3 e# N
  412. CMP W_DATA,X7 p4 S9 _7 G0 z' C* m2 g; u
  413. BNE WEACMP
    # _* ~8 H# _. ?0 X& m# a

  414.   J' C1 O$ [2 h' Q" k4 o
  415. LDA W_PPU,X4 y& H/ c0 f! w' ?8 m! `$ s0 {$ ?
  416. STA $2007
    & V0 p/ J7 |6 O5 {# X) ]' G
  417. LDA #$00
    + V- B# |; O3 I# ]3 W
  418. STA $2000, K) i5 M+ m5 R* h* \/ u
  419. 8 x  }6 }1 {4 ^% S' H5 q
  420. WEACMP:
    " k& `% z, u  ]% r) T
  421. INX
    # T3 }& i) V3 ~
  422. CPX #$05, o3 Y, X0 ?+ M( e( l. ?
  423. BCC WEAREAD2 Q7 E9 o- P7 {$ g) C
  424. RTS9 L6 l& W/ T: [4 u

  425. * C$ @/ e/ D+ p9 {
  426. " B, P1 P, H8 X4 x6 [6 h
  427. PPUWRITE:
    % P; r7 |/ @, m) z" s6 ?' ~& D
  428. PLA8 {! ?& c9 {+ v0 Z, O: z  ~
  429. TAY# \" t1 y7 F  M( {- m* G" F
  430. PLA
    : ]% D9 t/ z/ u1 r, X. Z
  431. TAX3 r5 {- Q3 E" L. n$ p5 G) R
  432. PLA
    $ `$ t1 k# c1 Z
  433. LDA $25
    6 N  p* B) m0 t8 }: l- x+ u3 g3 o
  434. CMP #$002 z8 W/ \0 x8 l3 M9 p4 S' c
  435. BEQ WP1
    # F/ u$ b( a7 T+ i) H6 {* b) l
  436. LDA $25
    7 f2 K6 L- T) k/ \
  437. CMP #$016 y0 ?  a( I' X7 `. V
  438. BNE WRE2 }1 a4 |/ Z2 ], U
  439. LDA $F5,X) N8 b! r- Z$ L7 ?/ Q1 Y, J
  440. AND #$EF$ f7 K% i$ |6 Q7 }( K  X/ e3 }+ s
  441. BEQ WRE
    ! g7 B, W7 N7 v& ]0 m
  442. LDA #$00
    ; N( T6 Y, I) }  b5 o
  443. STA $7FA0! o& a% v2 f- @' P  K+ P. J" S1 u

  444. * c9 R2 J' X9 ?% m* a4 y; }
  445. WRE:0 o7 A7 C8 J( B) Y; J6 E
  446. JMP $A000
      o, x6 q$ L  @( }  X. |

  447.   Q% U) v5 N  ^
  448. WP1:: S1 A' Q+ K& P# m2 r( a
  449. LDA $7FFF$ H  Q; r# X. M( r* s
  450. CMP #$FF; c' R- A4 _9 R4 Y1 U; T: E+ f
  451. BNE WRE" |! C  ]; y% M4 z+ j+ z, L( W9 _
  452. LDA #$00& A* g( o2 X8 \, i* @. A
  453. STA $2001
    & d& I8 ]% d" a9 A* F* s
  454. LDA $BD
    ; l$ t6 n, ?& C1 r! O
  455. PHA
    4 @$ w5 \' @5 Z! w2 `; N1 J
  456. LDA $BC
    2 u2 E2 i7 c; W
  457. PHA
    $ P; x! A- Q% k" s
  458. LDA $BB
    7 ?' v& R: `* p; Z
  459. PHA
    1 e; ~& J: W9 G6 O
  460. LDA $BA) y  \0 [$ ~1 J+ m$ W0 D9 V+ _1 X
  461. PHA
    9 W$ W. ?. E$ e& B$ x# N4 k
  462. LDA $B9
    3 m) I. q6 s' `8 G% ^) A0 G" k
  463. PHA' E4 J* g- K$ M$ p- `& x
  464. LDA $B8
    0 K" o( k! S8 p
  465. PHA
    & \' f4 m% |) B7 o7 o6 t8 g
  466. LDA #$00/ [* ^) s: l( ?) k7 a: ~( M! C
  467. STA $B8
    3 g( p/ m& S4 }1 K
  468. STA $B92 _* ?. f- |  k# ^5 l
  469. STA $BA
    3 K4 e. P" w% D' b* P4 u( A& W" G$ g. ^
  470. STA $BB
    / C9 ~% U/ P) {: z3 h+ ~
  471. STA $BC1 t7 a: K; G# P2 E2 b
  472. STA $BD- a$ B* l. C; w* D. S" D
  473. LDA #$00
    - b: }0 ], A; ~2 Q* Z
  474. STA $7FFF
      U  T3 P' w$ n: x- f7 N( s, t
  475. LDA $303 c6 U  y  U8 t6 ]2 D$ {# k3 A
  476. CMP #$02
    8 w; z, O; Z+ Y6 ?+ ]8 G
  477. BNE UNPROCPL7 e# \4 Z5 [8 U) ~3 {) U0 T4 D
  478. LDA $7EFC1 c& s" S- r7 ~
  479. STA $FC
    7 c0 q- T5 |$ n" U8 ]" C$ A' h% H
  480. LDA #$00
    + `+ X, ^4 N& W6 A+ ^' d
  481. STA $A4
    7 k! G$ _: w5 @1 _- c* }
  482. STA $A5
    + P+ c5 Q, Y% S4 f
  483. UNPROCPL:* F" f4 z/ k+ M- ?2 S3 f7 w% F5 q
  484. LDA $7EFD
    & g* O, N" c" z+ q* e/ J9 M
  485. STA $FD* E7 z' z8 m' Y' r/ x& l7 }
  486. LDA $7EFF
    ' {$ Q& x) o, q$ l( E$ ?; @# }' R
  487. STA $FF; W6 R7 [+ Q& T; b9 e$ b

  488. 1 m! r# E/ v. s2 O" m$ u, z. f! \0 O
  489. WL0:8 a: ]" B  A2 x
  490. LDX #$002 l+ m; H% b% ?+ g
  491. LDY #$00% @( H7 g- u: X# _5 f& U. [
  492. LDA #$00
    $ n! i" {3 Z' O5 }
  493. STA $BA
    ' U' Y' f8 ^! a" v8 g  Z: f1 y
  494. LDA #$20* q# ^, |/ y. c( J$ H9 O
  495. STA $BB2 Q: f; C7 F2 ?
  496. LDA #$00/ O+ H9 ~$ n  Y- ^
  497. STA $BC
    / U4 Z* p" p' q  @1 J$ h7 U2 U
  498. LDA #$60" n' q  d# J* Q# |" y& ?
  499. STA $BD
    / P4 F, d1 R6 V) ~* R5 A# X3 V
  500. 6 y: a0 e% s. A4 A4 J- u
  501. WL1:
    . f- b5 r/ t* a  r+ x
  502. LDA $BD' h# A( }% ~& q! l+ r" [# Z
  503. CMP #$70
    + T# l& q- ~; l7 u2 o. M( E
  504. BNE WL2$ t3 x6 R6 `* j8 t; @7 ]6 f( D8 ^
  505. LDA $BC
    ! o, Q0 P0 p( S3 x) }/ d+ {" F! d
  506. CMP #$00
    8 X0 E$ O! s5 ?
  507. BEQ WLR
    & {/ Y; b3 F* D5 F

  508. " n# H) y' [3 w2 O3 N# ~
  509. WL2:( ^/ ]0 j2 L" D# k' i' Y" _
  510. LDA $BD
    5 m& i& U( X! n8 ]6 O* k
  511. STA $20065 ^  P6 M! B0 @# ^( o, P8 v$ F( H
  512. LDA $BC, a2 v; p0 f0 Z  K) \$ n
  513. STA $2006
    " V& l* I% ]9 p2 ?  R& ^! l6 k2 o

  514. - A: _' o+ R! L
  515. WL3:1 z: y# W# j( C4 h
  516. LDA ($BC),Y
    3 H& _( Y  a  j: _# K/ M8 ?( j
  517. STA $2007
    / l' L( `' Q" }5 [- O; ~0 b9 w
  518. 9 p* p; I" o) \+ N
  519. WL4:
    . s0 W5 b& F% H
  520. LDA #$00
    $ r" L1 ^* L/ m$ J+ I
  521. STA $2000, p3 @2 n  Y1 l; Y- @0 L
  522. INX+ ~% y/ E/ w$ m8 Q
  523. INC $BA
    4 T+ C( Q" X& U' C
  524. INC $BC. K8 ^4 M9 r6 U5 n( e2 u! v
  525. CPX #$00  M" h! |  O7 S3 D
  526. BNE WL15 \5 O' `& G( j  b3 ~
  527. INC $BB
    3 ~* D! X- S' P0 }2 x) p3 ?
  528. INC $BD
    + \7 a# y4 o3 Q2 t5 r
  529. JMP WL15 r3 i0 Y: U0 x: \( u, N7 K, E( j
  530. * b' B3 r  t' X9 {# W" J' V- Y: n- w
  531. WLR:
    ( ^8 y, P8 U2 ^; s( s( n  K' z. B6 Z
  532. LDA $7FFE
    2 U' W9 {0 p+ v: M- B
  533. STA $07F6
    9 c% F$ U& M% I
  534. LDA $7FFD- p8 P, i" B' x. I
  535. STA $00FE
    ( W" D! q$ c' _; A8 u& o
  536. LDA $7FC1( ^, e0 ~' k' ?/ ^2 F$ O+ j
  537. STA $07C16 [* \5 I" Y8 c5 E- }& S8 C# P6 L
  538. LDA #$3F! g9 @# a3 J. l0 E
  539. STA $2006: O' `6 B  |+ }9 b: R% R4 k
  540. LDA #$01% U( A* J$ M+ g- S
  541. STA $2006& E% i+ s$ ?# m' l
  542. LDA $07C1
    3 I! w) B8 L2 `7 ^
  543. STA $2007# u( Y9 N5 A3 H5 X4 V7 F+ t
  544. LDA #$007 x9 e& Q# S3 g2 Q
  545. STA $2000
    7 M; A; d4 }' }! T4 }  k0 n5 f
  546. PLA
    * O) O8 z9 f9 R4 k1 `
  547. STA $B89 |' ^5 c4 Z3 [" e! z
  548. PLA
    7 _" O# a5 I+ U% w9 `
  549. STA $B9
    8 j5 U" r2 E, _; Y& i
  550. PLA, C8 S) p5 }0 L9 V  D6 Q
  551. STA $BA
    ! G) F. n: s: U9 j0 z; J1 M
  552. PLA( C0 [. Q- A9 s& |4 x* r
  553. STA $BB
    / K/ i+ v( a1 N
  554. PLA
    4 f+ L! t: A" A! R/ N2 b  f9 \# d
  555. STA $BC
    $ n) ^1 _7 q# |. n6 o3 D
  556. PLA3 |  t) ]0 F, [, u1 Y) b
  557. STA $BD6 U1 B9 R# R6 p" O" [
  558. JMP $A000: C9 [% J$ R0 G+ A$ w/ Z( M

  559. + P6 D. {1 g% n. K* x
  560. FREE:                ; 暂存器保护
    . p/ t: ~  t% e/ k3 v6 ^7 w) D
  561. LDA $BD- P7 {& W# v  {/ T0 I' A/ L
  562. PHA
    0 O3 }+ U/ E1 K+ T
  563. LDA $BC
    3 l" K& e& G0 U/ q
  564. PHA
    & R+ m5 W, Z% Z; K  V. W  n0 M
  565. LDA $BB9 g( h( {" j' X  _- ]
  566. PHA+ T# H7 a3 \! x: K
  567. LDA $BA
    9 H  ?3 U/ T1 M  b6 i- \
  568. PHA/ q9 o% d0 o  e" w7 |2 Z( K( P, h
  569. LDA $B9
    : h* K, x( @1 @/ Q6 K* i
  570. PHA7 E+ ^1 c' \' V/ \5 s6 H  J1 ^& g
  571. LDA $B8# d# {7 o& b* d/ I: F# L- c
  572. PHA
    ( x5 F0 z* _/ t6 K5 R+ O; L. _
  573. LDA #$00
    ' K1 I+ n' x: y- i' `4 b
  574. STA $B8. Z, N4 Q+ K' @- V
  575. STA $B9
    * Y. D" D9 a! F6 j
  576. STA $BA
    ! g9 t+ P. i# [7 Q- [$ K" k' g# h
  577. STA $BB  c$ e( E- K5 p  h
  578. STA $BC  F$ V2 `  Q( d" o+ T6 }+ a
  579. STA $BD9 V9 T7 Z+ V8 o7 j1 A

  580. : H+ G7 V9 n# O7 ]- |
  581. WEAWRITE:                ;武器ppu写入
    / Y' j# V( t# |+ A0 T
  582. LDX #$00
    . O& I' N. ^* G; V$ e2 A2 [5 [! l
  583. LDA $AA$ i& e+ B5 q- }7 `' ~" Y5 l
  584. STA $B96 o: P/ n1 Y) f2 ~4 f% u
  585. WEAINI:                ;地值初始化
    + {! X+ S% f: t$ b; _) X, L
  586. LDA #$A4- E' u$ R- B5 z, C
  587. STA $BA  F8 u2 P: b& y/ A) l
  588. LDA #$20
    # `; q  ^# d6 e6 }- p2 \* y' D& R0 `
  589. STA $BB0 L: h+ E: L3 o% r( T1 A, j+ ^
  590. . v* p0 g# r$ s9 `" X
  591. ( P$ |+ e6 z# }- K( c# ]$ j# n- {2 M4 I
  592. JSR WEA
    8 s' G; H7 U9 G
  593. LDX #$00                ;武器ppu写入) B( p# J$ K: q6 _3 }+ [
  594. LDA $AB
    , d" W3 c- ]6 O1 j% S, a
  595. STA $B9
    ' I- r; b  T8 n" L" E% T; y% R
  596. LDA #$B3, [- x( U# G# A1 X! D( h8 n! t
  597. STA $BA  @7 S; @  q% `2 x
  598. LDA #$20! W- S' X! H0 P7 Z
  599. STA $BB
    1 \. H  G* J. K7 N
  600. 9 Q  x* p6 U$ X3 _
  601. & _, \7 B/ m2 T1 p. Y# W" ~
  602. JSR WEA
    6 V' q6 g6 e" i. O
  603. + M' O! c7 I- `6 t' W* N
  604. LDX #$00
    6 c+ S' }; u& z1 O9 a
  605. LDA #$E4
    ( O5 A4 ~' {9 ?2 N' T6 V9 s2 R
  606. STA $BA
    3 \0 l9 f$ U) v& I
  607. LDA #$20$ b8 `4 Y) X+ G, Y0 o
  608. STA $BB
    4 g$ t. ^& \; P+ Q! ~; N

  609. ) X  M  N" j; |( P

  610. " Q. C9 t% |9 h( V  M3 V
  611. LDA $32; N8 ~+ @, G4 B- O+ l2 s5 ~
  612. JSR PLAYERLIFE$ t) h& z# w- h) m4 T- v

  613. " ^# H' {  `3 G0 X4 L2 A* z$ ^1 n
  614. LDX #$00, r$ h0 B; P" j8 @/ o5 f4 S) [, @
  615. LDA #$F3" i7 S3 `& I% m# w
  616. STA $BA
    - M# N9 i5 `0 i& [
  617. LDA #$205 X7 b( }9 g( z7 R3 C
  618. STA $BB( Z; O, ]9 o) t6 i3 r

  619. ; n# ~7 d/ p' Q8 z. e! t1 k& V
  620. ! A" [+ o' ?1 L
  621. LDA $33
    ( |+ e5 t9 R0 q& s  u% ]3 |0 U- ~
  622. JSR PLAYERLIFE
      N( i. c4 G, O" P  F% U5 E' H& z

  623. $ {# q+ l& V: a: P
  624. # @& n8 w( R& h2 N9 e
  625. JSR PLAYER_01_PPU8 T, M. N& O4 C4 p& H
  626. JSR PLAYER_02_PPU1 P) P& D) q! j5 u4 E/ E

  627. 3 g) `5 G7 {# Z& s5 T* X( @$ ^
  628. ) A4 V* i$ h$ X4 Z6 [2 m/ M2 p
  629. JSR PAGE_PPU
    ( e' S0 o" V0 ~" @3 N
  630. JSR PAGESELECT1 b# l& G/ K5 @( t: Y3 X5 w

  631. * t1 d& s' ~7 A3 z3 t, _3 Q
  632. ( |, o1 S4 f0 U* V; t( I

  633. $ q* K0 G4 X# T# k6 e; m6 ?

  634. 9 o& m8 s# \6 t" f  n' k6 \

  635. 9 T" k% f& d7 o4 s( @; Q3 z# Q
  636. 8 H5 p/ P) a2 N# Y9 u
  637. ; ?' L, I/ m0 t# H* f

  638. - P; @  `1 m% f! Z

  639. $ N: G1 g) p3 \, b9 t- |* J) Z
  640. ( F8 Y/ t' w4 y5 t7 G( V
  641. 1 }- u* W$ B8 _4 ?" \3 x

  642. 0 a0 U6 X) [) _, i

  643. 5 r- E8 ]- \) |7 k1 F1 `
  644. PLAPRO:                ;恢复现场7 m4 R2 _3 z' x+ _% M3 C2 }  c
  645. PLA
    - H) Q  W! s- p1 n
  646. STA $B8
    " f' I: A! C* W: e& i7 \
  647. PLA
    , J: Q5 ?. R" L1 T4 H
  648. STA $B9
    0 z4 p3 P/ }1 z2 q* V
  649. PLA1 U! k2 G% n0 P+ u( v# @
  650. STA $BA( F' O" B( H3 P* u& F7 _
  651. PLA2 }( ~& v5 G4 C: [8 ^/ I
  652. STA $BB1 h- a+ a4 {3 }% g) v$ z
  653. PLA1 n- j! W) B* h0 Z/ o9 u  m
  654. STA $BC
    2 O" I6 w) Z% l# {3 j: Q  v
  655. PLA3 E* F" F1 e8 V. B3 H  W
  656. STA $BD1 T$ ?: P- m8 p$ E
  657. FREERTS:
    * E# z. j# q1 W
  658. RTS, h0 K- b2 j# q# W9 f

  659. " T, }  ]; u5 \( j$ F
  660. INVINC_STRING:                        ;invincible
    , o0 m2 d# \0 P, q5 o* f4 v' X+ B
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$802 M2 S; ?6 K  G  G; W

  662. 5 q& I4 K5 \0 x* ?' Y6 |
  663. INVINC_PPU:
    ) K6 Q) f9 Q) ]( V2 F( Z$ C) R- b
  664. LDX #$00
    : r1 A; e- }4 r
  665. LDA #$62+ n( q: i- U% f  o* i
  666. STA $BA, U; Z# ]( A. J+ C6 N* u3 \
  667. LDA #$21! }/ j9 N0 a$ ?. A
  668. STA $BB
    ( M4 b3 Z1 n, t! ]3 V5 l2 V5 w

  669. 6 e7 t, n5 ]+ l9 z
  670. 2 m- |/ w$ t# I7 T$ E% B
  671. JSR UP_PPU
    * j& j0 N# j! W& D+ ?
  672. JSR INVINC_WRITE
    9 h- d' [! Y+ ]3 o( s
  673. LDX #$00
    & L" B& `( ^6 e6 K
  674. LDA $07A01 }2 S8 _" a; Z/ M1 x
  675. AND #$01
    * a8 X7 H" N9 b& b0 V- P
  676. JSR ON_OFF_PPU
    8 L) x1 w% ^/ l
  677. LDX #$00
    ' A0 J, F  V- D: k) D# P/ v  k1 ?: w9 J
  678. LDA #$71$ @, s2 u  O  G% W
  679. STA $BA
    $ |! p1 m9 |; Y* d# V0 g, `. e2 l+ H7 p
  680. LDA #$21# Y. c6 }/ _' K1 h7 ]
  681. STA $BB* Q8 {- S! K/ P& P3 a2 \1 r# i9 s1 y

  682. ; c* w1 ~, `0 Q  ^
  683. ' s/ c# Y' l5 i$ {
  684. JSR UP_PPU
    & U$ Y9 s+ J6 B$ A9 N9 t7 l  P6 M
  685. JSR INVINC_WRITE
    " h! _* y7 E( H4 d3 C
  686. LDX #$00& b5 G/ E7 |1 L" d- |8 T
  687. LDA $07A1* }4 o( A7 j' R, a; e6 C0 Q6 F
  688. AND #$013 a) G7 l7 H1 Q; P: @
  689. JSR ON_OFF_PPU$ ~* E9 u7 @9 q9 v- i* H3 G
  690. RTS% X6 g2 ]' g* [& `/ t2 {" w/ f
  691. / S, ]5 C! @  M& Y) H0 {- D
  692. INVINC_WRITE:% a% k4 r' C, c, {! \8 ~' [/ K
  693. LDX #$00
    + O* {- s! Y& x& H: x9 I# v+ [9 u/ F
  694. INWRITE:- _  p9 u5 V# W# G! P6 R
  695. JSR PPUADDR_PROCESS* o5 Q# A+ {3 g
  696. LDA INVINC_STRING,X
    " q9 @* z3 A$ v1 b+ }
  697. STA $2007
    " l+ S: Z5 \% I) S" ]
  698. LDA #$00
    , `( c; f, N0 S6 g
  699. STA $2000
    0 i, W$ I/ h: G. h/ x
  700. INC $BA
    - f- P" @, l6 y+ b
  701. INX2 ?; O; ^: z4 ?  O/ }+ a
  702. CPX #$07
    0 I1 N0 v# O  R! u2 A5 i( d( n5 a
  703. BCC INWRITE. @3 K7 E8 l+ m
  704. RTS3 Q# z2 a& K* Y) v$ q" w2 p% h

  705. ) ~" z$ `5 E6 n* V
  706. ON_STRING:
    / ]" c0 b6 F4 F6 w4 h) P6 p  p
  707. .BYTE $99,$98,$806 l/ N0 l, y& A0 S' u: v

  708. + x. w4 B6 o1 |
  709. OFF_STRING:9 M9 Y5 w9 k' q
  710. .BYTE $99,$90,$90
    0 }. p, b: m0 O- |: Z9 x6 J5 O
  711. 8 ^5 l2 h9 n! |
  712. ON_OFF_PPU:& H# e+ T& e! N0 ~; t
  713. BEQ OFFWR* n: w" R2 d+ k( d# a9 z$ @
  714. ONWR:
      {% v& m: R1 i% m: ^/ t% x
  715. JSR PPUADDR_PROCESS
    * D. H/ @# w3 Y% T: I9 p3 B9 v
  716. LDA ON_STRING,X
    & K# W8 f2 p/ C* ^
  717. STA $2007% D! ~6 h. C/ q0 _2 G  B% e4 h+ J: p
  718. INC $BA
    9 J3 G4 R! X' i* x, i6 F
  719. INX( J, ~: h! Y3 D5 ~2 u; N
  720. CPX #$03( {  H7 X7 }' _! m, {" a
  721. BCC ONWR( F( w; ]: `; t3 X" g' u  P
  722. RTS1 Q: y- v/ z) @, q* P% g6 a
  723. OFFWR:
    : R2 C+ {) N+ z* d
  724. JSR PPUADDR_PROCESS- \6 f2 R5 X6 R1 `7 c
  725. LDA OFF_STRING,X% k. Y/ Q$ E3 H! {
  726. STA $2007
    6 ^% ~& F4 b! M1 u. q) z2 d4 h4 m
  727. INC $BA1 L% c! b" s# o3 _# b# W' J
  728. INX- b9 C* x5 w: E- l3 @+ ~6 y
  729. CPX #$03% R! T5 X2 e  R* \8 c, J
  730. BCC OFFWR
    5 {8 j4 q7 L; a& }8 Z. w/ M
  731. RTS
    ' s7 U& \: B/ F

  732. 8 k" m( I4 e# ?' `9 S7 T1 I: \# q
  733. LIFELC15_STRING:  d4 H& j  g- f" _
  734. .BYTE $96,$93,$90,$8F,$82,$86,$804 L& K1 b  l  s5 L4 ^' x- M

  735. 5 t! \1 s7 z2 X/ F; b6 W! A1 P; f! i
  736. LIFELC15_WRITE:0 j3 F9 `8 p1 ^
  737. LDX #$00! l/ s! `* w4 r0 [5 K& X8 c
  738. LIFELC15:: _- i. j/ a0 f4 J8 |
  739. JSR PPUADDR_PROCESS
    " E2 w2 G# N; ^3 Z
  740. LDA LIFELC15_STRING,X- f' u' i2 Y6 C5 @) i
  741. STA $2007
    % E! e/ B& R6 J. j3 N7 k6 p8 M
  742. LDA #$00* z# Y% ]1 P1 P' A
  743. STA $20002 I) }' a$ h) v( m5 p4 G6 z
  744. INC $BA
    ' p1 O- s- }- N3 y! J
  745. INX: N$ z+ O/ u3 Z: x0 d
  746. CPX #$07% N& v# z5 \$ F
  747. BCC LIFELC15- l$ c# l" u% L2 q
  748. RTS' V7 x7 s" |' `/ Y

  749. : M9 D7 B# R  ]) x9 A9 r
  750. LIFELC15_PPU:8 G2 \( P7 F5 E' s4 a2 r
  751. LDX #$00: f5 F! p* h+ l# y2 E0 L
  752. LDA #$A2: q0 e7 f& m7 ?/ B. C7 O' w
  753. STA $BA
    ( [, M* v5 h4 h% n' H) ~
  754. LDA #$21
    * W7 o& N- N3 T9 o2 I
  755. STA $BB
      c" a, M7 V3 W! _4 n0 {
  756. JSR DN_PPU
    ) m9 r# v9 V& ^
  757. JSR LIFELC15_WRITE
    % S) t" d' A5 i; M5 Q3 p
  758. LDX #$00
    ! ]0 H# H$ s/ Q
  759. LDA $07A0
    ; w: g& H: R$ H
  760. AND #$02
    9 N+ e! Y4 P  s: N3 ]! K. X+ x( A
  761. JSR ON_OFF_PPU4 v8 v# w; ]: Z$ b
  762. LDX #$003 ~' g) ?+ q! r& G& @' A$ G5 l
  763. LDA #$B15 d/ S! h! ]! s) h2 t3 ]* _" h
  764. STA $BA$ h: O. [/ ^4 F9 ?! ]
  765. LDA #$21) v. E  r7 E. A+ }
  766. STA $BB
    . O$ S  j. _/ ]9 V+ ]# O) W) m
  767. JSR DN_PPU
      B4 [3 d7 O* k; z  b
  768. JSR LIFELC15_WRITE
    & d; r  {8 Z2 f: U9 \% D
  769. LDX #$00; X8 h$ ?' |7 o
  770. LDA $07A1
    4 C# Y) Q3 ?; M) J
  771. AND #$02) b+ v9 y# [8 i
  772. JSR ON_OFF_PPU  g+ a! z( c; u
  773. RTS
    4 a: M4 D/ d! T1 y! |+ P
  774. ' a3 S7 Y9 R, K8 _* r: j
  775. DOUCON_STRING:
    & b$ j/ t% M% O
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    " U! `2 l) D  q' G4 z, P

  777. / x( U( E0 m2 C! {0 \
  778. DOUCON_WRITE:
    : C" r; g% w! [( |
  779. LDX #$00
    9 g* ]* {0 k4 k1 f& o# H5 r
  780. DOUCON:
    8 `! O' ~8 P. r
  781. JSR PPUADDR_PROCESS7 Y9 ]2 f3 G" z) V" b7 l
  782. LDA DOUCON_STRING,X
    % g/ K, y" m- f
  783. STA $2007  `3 i0 S2 ^& k( Z& Z
  784. LDA #$00
    7 N2 L, d- H7 |7 _. k  b$ z8 Y
  785. STA $2000
    ) S$ P2 _6 S6 X  {
  786. INC $BA) r% o* k2 z5 `! {
  787. INX4 O  n1 p" Z, I! l, ]7 f
  788. CPX #$07
    , ]" m! g2 T2 S: X: m
  789. BCC DOUCON1 Q) o% f/ z9 `6 c5 v
  790. RTS2 M7 y" d( b2 d8 W, o* m. `
  791. 0 M0 s7 {& b8 F1 r" U4 x' L
  792. DOUCON_PPU:8 a9 Z: f% c% Q
  793. LDX #$00
    2 q$ e# [3 |; f! |- W
  794. LDA #$E25 ?- e; ?: J& h- w- V; h7 W, L
  795. STA $BA& K7 u, S+ z( o2 I. y
  796. LDA #$21
    + _5 U) F9 N) R) w5 q/ c
  797. STA $BB& l+ b! I" `  d+ I* ?3 e
  798. JSR LF_PPU
    . B+ i# G/ Y' ?& C# W
  799. JSR DOUCON_WRITE
    & j; K5 m; \: c
  800. LDX #$00: Z& n! F1 M$ N+ w% T
  801. LDA $07A0
    + d5 I5 j5 _8 }3 q! i
  802. AND #$04
    6 t; o; P, ]  J) U3 C* j
  803. JSR ON_OFF_PPU
    . J- R9 J5 r0 [1 P
  804. LDX #$004 d5 f5 O: w+ L( N; {
  805. LDA #$F11 Q) e# [# n$ P3 r9 f3 V& z
  806. STA $BA/ d$ h. f9 y8 b  \+ ?
  807. LDA #$21
    # a9 I9 n9 M# U% w/ n8 P
  808. STA $BB3 p8 A- U6 p2 o8 O
  809. JSR LF_PPU
    & L8 R2 L* Z' P6 }+ l( h
  810. JSR DOUCON_WRITE) Q2 _. P' k! p9 \
  811. LDX #$00/ f$ E9 U' b% ~5 i* y/ u
  812. LDA $07A1
    ( f( V2 `% X0 s! S; z
  813. AND #$04
    ) w, P; {$ B/ m6 Y% c5 n8 E# [& K
  814. JSR ON_OFF_PPU, ~! m- i. c! w
  815. RTS5 ?$ N0 W! N! [6 v- `: I7 {
  816. % ^7 Z$ U* \* _" a3 l& g: J
  817. LIFELOW_STRING:9 |4 R. \+ k  l
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80# I6 v) j4 g4 I4 |6 M6 Z4 b7 F; n
  819. ! G/ F9 p3 T1 o4 f- e$ P; v
  820. LIFELOW_WRITE:
    - J7 D: \- c8 G1 L4 t
  821. LDX #$003 M2 F. K* F0 p0 l/ K$ f5 r1 s
  822. LIFELOW:2 I- u8 `! A: C' V- `! Q' i6 Y/ r
  823. JSR PPUADDR_PROCESS. G$ g2 [2 N/ w5 `
  824. LDA LIFELOW_STRING,X
    1 I0 d2 D& R* C, I
  825. STA $2007
    % a5 i$ X, u$ j* p
  826. LDA #$00! L+ A, f8 H* i6 n
  827. STA $2000' R1 q$ F: v- ^- L1 J
  828. INC $BA! n; m* t4 _2 q6 @0 @9 P
  829. INX
    % ?& w) j& i* l+ D9 ^
  830. CPX #$07' o. h" J3 {' g$ g( S
  831. BCC LIFELOW
    6 i& P) b2 K  I; H$ s
  832. RTS
      I1 R/ `6 x# U# h
  833. ( }* z) E; C+ U- B: K$ p
  834. LIFELOW_PPU:
    & E3 U8 ?% ]$ _
  835. LDX #$00
    - ^2 l- [! y9 @- Q, Q
  836. LDA #$22
    2 r/ G7 F/ B5 J( ]4 e" g
  837. STA $BA, g: N% N3 {; Z8 S8 B  b1 C
  838. LDA #$22
    ' \  a5 Q- s4 f# {. `5 i
  839. STA $BB% n* _0 D( T0 S
  840. ' X0 ^$ w% j, e  s8 _3 ?; {4 F0 `
  841. ' n) Z8 A! T9 Z" F% D/ j3 n! a
  842. JSR RG_PPU( t+ d3 E, o! O
  843. JSR LIFELOW_WRITE2 e7 z* D* E# W* b" p
  844. LDX #$00. s0 y2 V- `/ z5 ^4 Z- j0 P4 D, ]
  845. LDA $07A0: V- H/ f5 {; J4 v9 I) Y+ _* \
  846. AND #$08: p% G/ V# j  M. b# B
  847. JSR ON_OFF_PPU3 V0 B( J6 j0 S3 k! D1 j  ^/ [
  848. LDX #$00  C* ~, I3 M* i7 |# x" v
  849. LDA #$314 z. g2 g- |$ U" |
  850. STA $BA
    7 Q3 }/ z0 d8 {5 p# i2 _
  851. LDA #$22
    # ?$ a' W, n7 y9 j$ f$ P
  852. STA $BB
    / D* v( }5 L" v, R

  853. + {8 l! H6 H* q' x/ ^5 f

  854. 0 o) h1 Z, }# x) ^9 v8 l
  855. JSR RG_PPU8 F7 a% k7 k; @$ _/ D6 ?  k/ y2 S
  856. JSR LIFELOW_WRITE
    - S2 r7 r4 T6 @1 Y
  857. LDX #$00# x: h! V- a% j, E+ d  c7 [& Y0 Y
  858. LDA $07A12 L4 z- A( y3 }; A' P. T% j
  859. AND #$084 Z3 ~2 d! C% t4 t6 D: H5 N7 |
  860. JSR ON_OFF_PPU( Q/ a! j6 ^) E6 B4 W, N- R
  861. RTS
    ) B; E4 h- }( U( {: Q8 G% M- E8 K$ n! b8 M
  862. 8 e+ \8 t  Y. k. O1 s
  863. KILLON_STRING:
    - t8 i3 J0 c* P6 Q8 i& F: A
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    4 ]3 h+ ~1 ~( _
  865. 2 w) K/ r- r: [- h. E6 d. T6 A4 A/ G
  866. KILLON_WRITE:
    5 E; i  O- n, W
  867. LDX #$00+ j" R: E. M" P* {2 P
  868. KILLON:7 J) X4 l1 l' F' L9 ~- }8 ?1 G: @
  869. JSR PPUADDR_PROCESS
    3 n7 T0 `9 ?# ^5 r2 E
  870. LDA KILLON_STRING,X
    # Q0 R9 D$ Q& A: M0 C2 j2 h- w
  871. STA $2007
    5 }1 I2 i% H7 c; B( I# }/ W
  872. LDA #$00& T" A) y0 `  s$ i" ?6 G% n
  873. STA $2000
    3 J4 f( R$ O% C
  874. INC $BA
    6 |: _- S/ _" S2 Z7 t: |( D
  875. INX
    9 {6 ~/ }0 c! t2 X0 i& Y& d  ]
  876. CPX #$07$ L0 K) h  ~: f/ D
  877. BCC KILLON
    6 W3 I1 E! ]3 l# g- f4 M" V) R
  878. RTS
    - l  B; e" W% Z* Y4 T3 D8 }) e/ M

  879. / V/ T2 f: e) w# z) x6 V, s
  880. KILLON_PPU:& ~! ]: e2 m4 l" L
  881. LDX #$00
    $ q* }# {; @1 ^) r! \$ D
  882. LDA #$620 @  U' y1 }, i0 h8 B5 A1 c# `3 U
  883. STA $BA
    * C, W. p" M9 `4 N$ C
  884. LDA #$22, R9 b0 h9 p2 Q
  885. STA $BB: l( B2 i& W5 q: f
  886. 7 Z$ k, s) Q( j; Q
  887. " t9 c3 O5 o- y( l3 L
  888. JSR B_PPU1 P2 |, R6 [  p" H) _
  889. JSR KILLON_WRITE
    & v* i1 s# Q) F. k: o6 S
  890. LDX #$00& l8 U/ b" Y4 v* J3 ], q+ s6 r
  891. LDA $07A0
    5 F$ G+ J% D  c/ L: B
  892. AND #$100 m: M" p8 f' N0 `/ c
  893. JSR ON_OFF_PPU% e7 d1 J  T" L& s
  894. LDX #$007 q7 w" v) y; [
  895. LDA #$71
    / _% S! f# Q8 ^+ X" A5 z
  896. STA $BA
    ! N3 J3 e4 @, ?: R+ w: S
  897. LDA #$22
    # r6 k% N6 n' D
  898. STA $BB
    2 w  i+ f( J8 n& {4 b& o; S/ U

  899. ; I! H! g" c3 _; d. I% S

  900. $ D  U* j' q  J9 d
  901. JSR B_PPU8 ]# N- p0 H: b
  902. JSR KILLON_WRITE; |: }, F7 ?3 ^6 H2 L3 D& R
  903. LDX #$00
    , b4 _2 Y6 C  v3 S0 }
  904. LDA $07A1
    ( v& N! q( y- ?0 _
  905. AND #$10
    ! P& |8 q5 D% k3 |0 W# O
  906. JSR ON_OFF_PPU
    % ^. F' v! _. K* v/ F
  907. RTS
    + E) _1 f& G6 B/ c6 y4 \/ Q9 i

  908. 0 [; J" N, P! |9 h
  909. SKYFLY_STRING:8 S% ^1 N. L( z9 k" R6 i" t' E3 Y0 t/ Q
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$800 b: d0 R4 t9 x! G6 a) O
  911. 9 B& m4 ~2 a$ K8 u4 p
  912. SKYFLY_WRITE:
    ) e& @1 }! \3 U
  913. LDX #$00
    ( o0 V/ Z  l2 X5 B( O2 {
  914. SKYFLY:+ S8 ]6 I6 {9 F5 K- E& Z* R. H! R
  915. JSR PPUADDR_PROCESS1 K1 z. _! ~6 m
  916. LDA SKYFLY_STRING,X
    ! W/ d2 d. P& M
  917. STA $2007
    ! o( o3 ~0 J0 z  d+ F$ b: {
  918. LDA #$003 ^4 M2 L5 V& H7 [+ A
  919. STA $20006 o* R( b8 ^" v6 v
  920. INC $BA) e9 Z8 e0 X/ q1 ^: l3 ~
  921. INX9 V2 w! J8 f- O8 H7 o
  922. CPX #$07
    # Y* f* b. J; w$ n4 P/ ?
  923. BCC SKYFLY0 K" P# W1 t$ N  E! u6 ?
  924. RTS
    3 ?& H3 M9 I1 L  {" K
  925. ; ], a; ^/ U% v" R/ P% Z! a4 f! m% n
  926. SKYFLY_PPU:" H/ I/ z2 k: u4 ~$ R: a
  927. LDX #$002 z, @6 k2 e! X$ p* w1 G
  928. LDA #$A26 e$ p% _$ I* g# X3 q4 a% _1 m
  929. STA $BA: I0 L/ z6 Z% w
  930. LDA #$22+ a, u& G: S6 q; U. e
  931. STA $BB  g7 b4 F( d( K& n0 P2 ?5 M

  932. - u" h/ \" o9 w0 ~5 k# K

  933. / W" g1 B( D  M# C3 C
  934. JSR A_PPU
    ) l  r7 q) I3 X& j3 H2 g7 X; B
  935. JSR SKYFLY_WRITE
    : O* R* S6 N' J# Q, r
  936. LDX #$00
    " f8 U0 n5 n9 D) H7 w: |( b
  937. LDA $07A0
    3 \8 [$ H9 k0 W. Q+ a* w0 |
  938. AND #$20
    : a4 U! O/ _. g. i
  939. JSR ON_OFF_PPU
    , g/ ^' J! h+ |4 l6 `+ F3 @; _
  940. LDX #$00
    ; Q& {- m% _! M$ E; T' x  x# l
  941. LDA #$B1
    $ u. ]$ n; B2 @8 f# E1 b! H3 Y
  942. STA $BA1 m! C$ m2 |6 D' a$ s* f9 q
  943. LDA #$22/ G, w$ G4 l3 b9 B% L" j6 k9 ]
  944. STA $BB0 H6 d6 }" A9 f$ u% M

  945. # x! b5 q/ V1 g4 z7 n0 g) p
  946.   ?! \! p, h( X' ^9 R9 h  A
  947. JSR A_PPU9 _6 n" ]4 C  G
  948. JSR SKYFLY_WRITE& G9 q7 p1 T" g7 ?; X4 {# _
  949. LDX #$000 d$ M3 g% M/ e1 y8 E/ y# V4 W
  950. LDA $07A1
    " C/ n( N! f# T; w2 y+ f/ F
  951. AND #$20
    ; O7 [5 q4 @" Z7 p3 F7 C' y
  952. JSR ON_OFF_PPU7 _( [# q0 Z& x: i  B
  953. RTS" h; `0 F( `% X7 E8 o4 G; m- O

  954. ( q4 b4 e1 @5 ~$ Z
  955. BULADD_STRING:
    / L2 S/ l9 h) ?+ j: N
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    ( }, W: J; I  q5 Y) u$ }5 l: r( w
  957. $ L+ C# L& v. ?6 ]# S& X9 A$ {6 q
  958. BULADD_WRITE:
    " b; D) h  r, W, i8 r$ ?
  959. LDX #$00" W) K* ~4 @* I3 F/ Z/ E
  960. BULADD:  J5 h3 ?1 b$ \5 v' [9 T
  961. JSR PPUADDR_PROCESS
    8 g$ V+ k/ P8 {  T) a7 C
  962. LDA BULADD_STRING,X+ o. M- V# D* |
  963. STA $20072 p& X8 e0 s( L# b2 u# }/ U* k
  964. LDA #$00+ I3 N0 |8 S+ B* c
  965. STA $2000
    3 ?; m% E  c$ q
  966. INC $BA
    ( T2 \" a2 }2 u$ R+ Z
  967. INX
    + T+ V! W3 S2 s+ @/ L+ d
  968. CPX #$07
    & p1 h$ N7 |9 N0 e+ }/ Q8 e
  969. BCC BULADD
    & o7 D/ G( A/ w9 U
  970. RTS2 C5 p, P$ U" R* E& `; Z! F
  971. & o2 u$ Y) h0 h, i
  972. BULADD_PPU:4 }! l( U6 ?# T% l
  973. LDX #$00% c3 d0 N6 M- F. \( q; b# {5 G
  974. LDA #$62
    % L, C/ g* q, r6 ?0 e
  975. STA $BA; l" X* u( j! l/ G4 L# H
  976. LDA #$21
    : {1 ~+ W' z2 _9 Q. @
  977. STA $BB
    0 M0 ^( a. P+ D# @
  978. 9 A, @$ [3 L3 i, z' J

  979. 8 Y! O% C7 A+ @" C2 N
  980. JSR UP_PPU6 G& x- t2 A3 F
  981. JSR BULADD_WRITE! ?# G6 N( u+ ^) p% O
  982. LDX #$00
    ; o* k! N0 F+ B: k8 H* l' |
  983. LDA $07A23 [# w' c& O; ~' |
  984. AND #$01
    : c& y6 `+ r2 u6 h& X% j
  985. JSR ON_OFF_PPU
    5 M6 D, J: k1 I4 s
  986. LDX #$00
    , j- @, r; ?7 n! C
  987. LDA #$71
    * D5 q0 k3 Y+ V2 T: w, q/ j1 I
  988. STA $BA" u1 k9 `0 ~; h  F: d
  989. LDA #$21
    * E& _* ?- @9 M! d+ {3 c
  990. STA $BB
    " C$ x( j) A$ y
  991. # g2 p# g& g1 }) v! u) A# b

  992. * ~0 z. m, F! `% F
  993. JSR UP_PPU
    ; E9 B* q; D8 O8 {6 M4 S
  994. JSR BULADD_WRITE9 i# f, o$ G: c+ a6 p7 B5 c1 `$ L, |
  995. LDX #$00
    ; |( a+ y1 A' m* T8 ?3 m
  996. LDA $07A3
      u3 s4 j5 x) }( F
  997. AND #$01
    5 k( B$ w: V# d9 j
  998. JSR ON_OFF_PPU
    : o- S: |8 ?4 o' X- _. z9 r: N
  999. RTS
    + J- _3 z5 R! S! f! j, H
  1000. 4 P8 C; x( r& P3 L8 k
  1001. MENU_PAGE_STRING:
    / ]& w$ x1 f( B+ u; F
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    % j& V" Y2 \. Y4 J: V5 }* I$ E, J
  1003. " x, S! s) _: B* _
  1004. PAGE_PPU:8 d) X* j2 Z. ~6 C
  1005. LDX #$00- y! a# r& [$ O1 U  f& Z
  1006. LDA #$0A
    ( a: k( {7 Z) M' h) ?. v
  1007. STA $BA+ S$ O' k; t2 Q6 ?
  1008. LDA #$23# m6 l) H/ T- H- S" k  V
  1009. STA $BB# d% T% o3 \$ P! B: ^, k! ~- u- w' H
  1010. 2 b" \8 e: d; @- g1 V' X

  1011. 4 n& x2 w4 {, ]$ s: g0 y5 g
  1012. MENU_PAGE:
    0 p6 k! K" W6 h6 [
  1013. JSR PPUADDR_PROCESS* |" Y2 [+ O; `' u
  1014. LDA MENU_PAGE_STRING,X6 L7 O: R/ a6 |6 t2 b
  1015. STA $2007
    7 i+ \, I0 g( [
  1016. LDA #$00( U: X. \6 i: a/ ?; _0 C( \  k
  1017. STA $20002 s! y' O; Z' O  P
  1018. INC $BA9 n" G; Q- w2 R, {
  1019. INX
    5 E. L9 U8 J  y2 F
  1020. CPX #$0B
    1 t" k# _6 V1 {4 ~! {
  1021. BCC MENU_PAGE
    2 s, N0 h3 E5 }/ n$ }
  1022. LDA $07AA
    , E. m6 ~! V4 _' @; h
  1023. CLC
    % S5 R3 L; o5 T7 _% v: l  A' y
  1024. ADC #$82% l2 I) u; a3 r0 u/ i3 w  H
  1025. STA $2007
    ) }* E& }% Q5 ~8 P; g$ _5 _, w
  1026. LDA #$00
    $ D, p0 d7 [9 y1 L0 v) u' M
  1027. STA $20007 ?4 F9 l) r  ~: X2 z; @0 P
  1028. RTS5 ]: }# a4 n1 K4 E% z7 @. h
  1029. ! E/ X& e5 Q7 D9 A1 F

  1030. ! j1 @' y: E! Z" r5 s
  1031. SKINGE_STRING:
    8 k/ ^0 d$ B# S' ~7 W- u0 t
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    0 ^0 z; E* p) s  [4 W; A) V  u
  1033. 5 F6 n; [7 D. J1 G8 J
  1034. SKINGE_WRITE:
    % _/ r9 ~, Y$ d0 l4 S! j3 b6 E8 d
  1035. LDX #$009 V0 H. N7 i' x& Z0 `
  1036. SKINGE:  F! V) l0 M+ }3 I( U1 G
  1037. JSR PPUADDR_PROCESS
    & b0 d: N0 k1 ?/ I. V
  1038. LDA SKINGE_STRING,X
    % i9 N5 h5 G# J& b
  1039. STA $20070 a. e7 Z9 U: m, E* o: |
  1040. LDA #$00
    , X+ ]/ f9 x9 i& ]
  1041. STA $2000
    4 u' i& p% p. r% [% r6 C7 g
  1042. INC $BA
    1 ^  l8 ~4 s) p- t0 z- |3 f
  1043. INX
    , H) a3 V6 s1 Z6 n
  1044. CPX #$074 ~; A; y4 i/ c2 }# g. J$ m5 a% S1 G0 t
  1045. BCC SKINGE0 J6 }# g: |" j, a; u; [: x
  1046. RTS
    " I; Q' X: Q/ T" |
  1047. , |, Z& Q) r  l+ {7 W. ~- k' N. h
  1048. SKINGE_PPU:
    ) o6 M! o, ]/ I% z
  1049. LDX #$00
      Q) k" j8 p9 ?9 ~4 d& h
  1050. LDA #$A2
    & x8 {5 K! y2 X& r' }' L  [% ^
  1051. STA $BA
    & k1 C+ a0 a+ o- Q
  1052. LDA #$21
    $ {3 n! o: W3 \$ p( H' D
  1053. STA $BB' w1 o, P, b% j7 H! C

  1054. 0 z, U1 I. t$ s5 c' Q: R

  1055.   I7 [: X" w6 k, h- g
  1056. JSR DN_PPU( M- w: @3 \) L/ d2 G
  1057. JSR SKINGE_WRITE6 Z( `. z! {: Z: {/ `
  1058. LDX #$00: k) J. Q/ v" o  ?' A2 s0 G
  1059. LDA $07A2- @+ u4 J- |+ y& w' m
  1060. AND #$02
    , S5 \) r! P7 R: J0 E+ a
  1061. JSR ON_OFF_PPU1 Y  M" N" G4 l1 t# U9 [7 w
  1062. LDX #$00; `" v- d4 o- M
  1063. LDA #$B1
    2 \2 u1 n7 H7 i1 K+ R- D3 N& ]( {! b
  1064. STA $BA
    & j) U" j+ o  X$ _& N1 U
  1065. LDA #$21* M, w9 T8 v% Z; W) J7 [8 P
  1066. STA $BB
    6 Z. x- K* d: t9 S3 P
  1067.   ~& t; A- Y" B  s& u
  1068. - K/ N1 w0 s% p( {0 T
  1069. JSR DN_PPU
    2 U7 G; c# b6 `& t
  1070. JSR SKINGE_WRITE3 W9 ?+ b5 G. w2 ?7 S: b8 o+ B
  1071. LDX #$001 s2 t0 \) r6 }
  1072. LDA $07A3
    % K; z: n. e  j: s- J3 ?( Z5 Q
  1073. AND #$022 ^; f. f* Z8 Z: D& Z' m0 s
  1074. JSR ON_OFF_PPU/ d, A# s+ k4 x  I# c3 O2 Q7 A
  1075. RTS; J, |4 S# i8 m0 s/ E' l

  1076. " T4 h& i1 e% |" s# d# E
  1077. BULMIX_STRING:
    4 t( b) ?6 \* U! N) n9 {
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$805 h3 m% s% }  u
  1079. " S1 D2 G' x0 }
  1080. BULMIX_WRITE:8 E/ n# B! V+ e: Z
  1081. LDX #$00
    8 v  @7 K" k: M( C
  1082. BULMIX:
    4 b, o5 M: t2 v* |9 W
  1083. JSR PPUADDR_PROCESS6 a) m3 t$ `' M* `* y9 L$ e  n' B
  1084. LDA BULMIX_STRING,X
    9 `& c3 z; W2 e0 q7 _
  1085. STA $2007
    & |; `( [9 ?2 R% I6 @+ n0 Q
  1086. LDA #$00
    6 Y+ k. D) F6 a1 v8 P/ R6 S+ u
  1087. STA $20009 c0 g( t3 L4 l/ _/ t. @
  1088. INC $BA
    # B: {: z! Y$ j; P( O  C
  1089. INX
    % C9 S2 E1 p: M! ?# i( y
  1090. CPX #$07$ T3 U- K% w% r+ X0 a$ H/ ~2 q' ^+ ?
  1091. BCC BULMIX4 S$ R) R/ f; Y1 \; C" m' K" ^- v
  1092. RTS
    3 W5 |2 ~; U1 Q, }% N/ a
  1093. , Z' h4 w* e% A# Z$ h8 G
  1094. BULMIX_PPU:
    9 M* U# D; {1 J
  1095. LDX #$00& y# V' z3 C! U) _: s( _7 E
  1096. LDA #$E2
    : `0 }1 a( V8 D9 B
  1097. STA $BA
      e' J$ z% b1 X; l: R: `4 ]
  1098. LDA #$21
    - {" J: ~1 Q2 X! ?( M
  1099. STA $BB
    0 d' Q& D, {" F6 U/ z4 X

  1100. + b+ C$ u6 U, O6 M/ Z' R4 v" U
  1101. 5 Z: d8 r8 {6 q( @5 ~  y$ n
  1102. JSR LF_PPU# \' a! p6 d! o; d, k
  1103. JSR BULMIX_WRITE/ M7 ~# l2 J$ E& z
  1104. LDX #$00
    9 m" r0 A& M2 _! G
  1105. LDA $07A2. A1 l# W1 S1 J" Q7 I0 Z5 ?
  1106. AND #$04
    : ]( W% |/ J2 U* {/ l0 M
  1107. JSR ON_OFF_PPU
    9 u: K! g3 f! c% Q" e, \
  1108. LDX #$00
    # r' f* W# n6 e" A$ A
  1109. LDA #$F1
    7 p2 j, {! ]- l7 l
  1110. STA $BA
    : q. f# \2 i+ e# a& W) y# O
  1111. LDA #$21
    $ o# t. _1 B6 ~! ]+ U
  1112. STA $BB
    ) p* x0 L( V1 F  ]

  1113. 1 c/ \, o! o( \, O
  1114. 3 ]2 x0 a* i- x$ L3 N
  1115. JSR LF_PPU- h  H4 K1 J7 M. T% L8 X5 z
  1116. JSR BULMIX_WRITE
    , n) L7 V9 S3 |& ]- u! |) T
  1117. LDX #$009 W, R: h1 z4 f0 v' T
  1118. LDA $07A3& b; G9 H% Y' H% q2 A1 h
  1119. AND #$04" t6 m) U5 H! W4 g
  1120. JSR ON_OFF_PPU
      ~! J# P! U9 ?
  1121. RTS
    ; [' d. H' ~$ w$ a
  1122. " P: @: B# ?3 |' E/ W7 B
  1123. ENELOC_STRING:* ]( _7 q4 S0 K0 E+ `& A3 C
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80* C; Z$ }4 q5 x. n  p& Q

  1125. $ Y0 N) g5 }( o) J- ?
  1126. ENELOC_WRITE:
    5 |6 d: t& Z2 I* ?" S4 [
  1127. LDX #$00
    ; W2 q9 ~9 _( ]5 O7 w8 c
  1128. ENELOC:! d, k$ R5 w' L  f, G: g8 J0 V
  1129. JSR PPUADDR_PROCESS4 W$ ~; _" \8 `  A/ ~) x
  1130. LDA ENELOC_STRING,X" Q6 h- d3 r! B
  1131. STA $2007
    ' S1 t: b5 s! F9 N7 N5 p
  1132. LDA #$003 o4 v# U4 m& y) k& l
  1133. STA $2000
    2 r! J/ d' |/ s* S4 K8 [% r5 v
  1134. INC $BA
    ) ]" M: _/ R! q' U
  1135. INX% Q- _3 u8 x: X9 u  C3 f
  1136. CPX #$07
    : T% y4 V2 g2 f$ j0 k% E
  1137. BCC ENELOC+ ~3 O6 Y$ e; [5 y5 o# g$ C3 N
  1138. RTS5 y8 ]  i# E2 g! k
  1139. % o! I7 h* C! m, @
  1140. ENELOC_PPU:
    6 p/ ~1 F- R8 l7 T+ G
  1141. LDX #$00$ Z. ^1 D, C; l
  1142. LDA #$229 l% y3 Z: J4 a0 h7 J- J/ `
  1143. STA $BA. a1 j3 u7 I& h/ m& l
  1144. LDA #$22
    6 E4 I5 c2 k# B) [1 L' ~) L
  1145. STA $BB, ~8 V% W' y! Z7 W# {/ R- l
  1146. , _' f! ]6 p! v) i. r5 o" b+ N( |' G

  1147. 0 W& ]# b! y' O% i5 w
  1148. JSR RG_PPU# A  P- x) y0 {+ Y
  1149. JSR ENELOC_WRITE
    ( i5 e/ K, ]1 t% {6 f% ~
  1150. LDX #$002 c4 ^6 }- Q9 ~  _# W0 f
  1151. LDA $07A2: t* V0 N! Q' J
  1152. AND #$08
    3 q  N! z: A) e6 E, K0 @5 h
  1153. JSR ON_OFF_PPU
    3 H) F% r+ c; x# Y- {
  1154. LDX #$00
    9 ]7 n2 F1 i) B* B6 d
  1155. LDA #$31
    5 V4 c4 z5 B0 V5 u
  1156. STA $BA' l7 K. ~$ T4 K) {1 P5 Y
  1157. LDA #$22/ f  G/ F4 r: d" A- V! O3 I9 l# H) P
  1158. STA $BB
    ) i7 X8 m9 a( Z5 s0 l6 d  [
  1159. 8 a4 \- @  ]$ H+ q

  1160. , n/ q2 a) w8 x
  1161. JSR RG_PPU
    - J7 p  I" E3 j* k
  1162. JSR ENELOC_WRITE3 i5 f" b; I) D! [, W: k3 D8 }
  1163. LDX #$00/ S- ~0 U2 N( P/ m) I8 s' \
  1164. LDA $07A3
    4 ?2 M0 E- t7 `/ C7 H- d3 Y
  1165. AND #$08! A% g# ]) y+ l' c  U) k) w: m
  1166. JSR ON_OFF_PPU+ ^+ z8 h" t  U' \3 B6 R+ K+ q( r
  1167. RTS# L- i+ t2 o$ i! |/ J
  1168. / E% Z5 I* [& _
  1169. FOCFUL_STRING:
    3 R' i2 D% c8 {6 X* V3 U
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    . X2 _" \1 N1 Q3 J$ r. W$ ]" M$ ]

  1171. 9 i" J" ^8 A4 D3 q2 Y
  1172. 7 ?3 ^7 t1 @1 C8 b
  1173. FOCFUL_WRITE:; @0 r# K# ~' r! {) h' F4 T) f' P" n
  1174. LDX #$00
    2 J; ]/ z8 R' E- f
  1175. FOCFUL:; r' g+ C7 G* f6 B7 R3 H- n
  1176. JSR PPUADDR_PROCESS
    1 n* u& y! j1 x
  1177. LDA FOCFUL_STRING,X
    % @' O; C( R2 @
  1178. STA $20073 c* t6 G, u% @( t5 j: d
  1179. LDA #$00
    0 i* D2 x, h/ v! T& {  d& E# z
  1180. STA $2000
    1 S+ `4 S% u' a
  1181. INC $BA
    : [; B- z1 f: N. T: ]
  1182. INX0 S9 C2 b* r: E. O' Y: `& B4 G
  1183. CPX #$07
    : d) L8 _3 W' Q/ b# S- F3 E! f
  1184. BCC FOCFUL; ?5 [" b7 h- N
  1185. RTS8 Y2 X, ?: ~+ j8 i& l

  1186. ! Y+ ?4 z  C5 k) {( B
  1187. FOCFUL_PPU:1 ]* f) J2 E- ~  E8 i/ L. b
  1188. LDX #$00
    ' }) w. z1 ?5 m" o1 K7 U- G* [
  1189. LDA #$626 Z: [& F( I8 r" D1 I5 T
  1190. STA $BA
    1 Q* N! d% \& p, ?9 _, q# D" o4 g
  1191. LDA #$22$ j9 X4 i; m7 d' D* Z4 z
  1192. STA $BB
    * c+ Q9 I$ A: V/ `; _2 J+ h! k
  1193. % ~: `" N# Q( ]8 I: R
  1194. % L' L1 J2 w; s0 j5 a+ n
  1195. JSR B_PPU8 B" v# R1 v7 m) X4 _0 _
  1196. JSR FOCFUL_WRITE* s% e; z# a* A
  1197. LDX #$00* Y: E* f. V4 O
  1198. LDA $07A2
    2 e7 ]4 n: F! m6 v" U
  1199. AND #$100 \$ f6 f9 Y0 K. Z/ a
  1200. JSR ON_OFF_PPU
      b  d! X% o6 `" N
  1201. LDX #$00
    . ]$ _8 o7 F$ i# J7 V
  1202. LDA #$71
    6 g4 X; D! X. h
  1203. STA $BA* P* Z6 m: S/ m: q
  1204. LDA #$22% I- h. v2 g1 T, ?: X
  1205. STA $BB
    / S5 a7 \' |' D3 S* y3 O% g7 U' b  }
  1206. / P' ^3 r" M- D8 D8 w6 V+ C
  1207. * }' }. ~+ M- ]# }
  1208. JSR B_PPU' i# q3 W% K1 H* }% n' t
  1209. JSR FOCFUL_WRITE/ {! g: `; G! Y3 N' ?  L
  1210. LDX #$00
    . Z) @+ e1 B# Q
  1211. LDA $07A3
    0 F4 W8 }. D4 q' ]" v
  1212. AND #$10! B+ r" D5 ~* S" [% M
  1213. JSR ON_OFF_PPU
    7 b! c$ a) o* F9 i4 b
  1214. RTS0 y3 c  A. w  _0 `2 H

  1215. $ j$ S; X5 E6 [( d
  1216. BULCON_STRING:+ V( K0 n; N/ [4 |" T
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$808 R  K* A9 d  b, Z3 h' j) N

  1218. & t8 ^) B$ @3 T  u2 V

  1219. ! v% y; ?5 P' f$ N  s. g1 V
  1220. BULCON_WRITE:% r2 }6 ^6 n% y# }8 @
  1221. LDX #$00
    0 H7 c1 s3 c0 H$ B. R) H/ A
  1222. BULCON:6 [9 d+ K( c% c1 o! x5 a
  1223. JSR PPUADDR_PROCESS0 `' }, d' v: I; R
  1224. LDA BULCON_STRING,X
    % p! p  P" [; `5 Z
  1225. STA $2007' j' |" |* D9 W; g$ I+ q3 F
  1226. LDA #$000 k; B7 O8 w0 c+ [7 S
  1227. STA $2000
    1 ?" e( q8 n! `# B
  1228. INC $BA
    9 Z8 e$ f9 K/ ?
  1229. INX. q2 k# t5 z$ @5 V! J) ]( p
  1230. CPX #$07
      p/ b- h& N. `2 X7 l. q( Q
  1231. BCC BULCON2 E- U: T1 L6 a5 t$ d' n
  1232. RTS
    % w4 R. S- q7 x2 n3 I. y% J

  1233. 9 S' j% D4 W7 G
  1234. BULCON_PPU:% ?! {* i  }9 P% t# t% H
  1235. LDX #$00; z  \% Q2 D2 \! d4 z
  1236. LDA #$62
    6 M) K6 u  R9 ?0 k0 C3 N0 B
  1237. STA $BA
    ( N: g1 C/ L) J
  1238. LDA #$219 L! f$ Q7 P4 `  T
  1239. STA $BB6 s# F8 H" `5 y0 F" x

  1240. 3 ^, |" [, R- u# r% t1 I
  1241. 1 Q* s2 i7 R  o8 O
  1242. JSR UP_PPU; w: S9 ?% ?5 K7 o: p
  1243. JSR BULCON_WRITE( J7 g  w) _& G- B
  1244. LDX #$001 @0 O5 @5 t' |! W8 H0 O
  1245. LDA $07A4
    ! v; F2 [3 Y- A9 B
  1246. AND #$08
    - M/ ?( C0 ]5 L
  1247. JSR ON_OFF_PPU% u/ w( @3 u; \  c" v0 J& M
  1248. LDX #$00
    + L% j$ Q4 N! L  {9 Z  c
  1249. LDA #$71
    & P* A- a7 v) z- S$ n2 \2 G3 y& d4 m& A+ Z
  1250. STA $BA
    5 O' x$ E  g% ]: g" q$ ]$ I
  1251. LDA #$219 m* U( V$ k! \; E% l" o
  1252. STA $BB
      g( E! Q9 E! Z+ K2 P: ^
  1253. 3 @: |5 B" k% i; I! M' f& d9 A" e. K: r

  1254. - }$ _7 ?% S, E; O
  1255. JSR UP_PPU% }8 Q4 t" q" Z$ W
  1256. JSR BULCON_WRITE
    % [6 g# L3 @8 ~* d, b  c& W8 p) C
  1257. LDX #$00
    % P+ h7 N9 F: O' z' R1 N% y5 w
  1258. LDA $07A5
    2 Q% h, u  I* `8 _% ]+ j
  1259. AND #$08
      Y$ v, A4 c. S. ^
  1260. JSR ON_OFF_PPU5 J% ~+ S! k7 [3 k# O9 n
  1261. RTS0 Q8 X1 P# m+ [" O8 X

  1262. 1 @% t" L/ n8 {# Z, Q9 \
  1263. SPEBUL_STRING:
    & T2 Y9 ^8 h8 o& r6 q8 [' z+ J
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    * l& r3 l2 K( T1 q
  1265. 8 T# Q9 A6 O3 j

  1266. 2 G" I) {3 a0 u7 q6 c( G6 z4 x) G
  1267. SPEBUL_WRITE:
    6 @8 O& y8 x, F; v+ ~- H
  1268. LDX #$00; X( u; ^) W) b: N$ Q/ i5 f8 S3 [
  1269. SPEBUL:6 V; ]6 x$ T# y
  1270. JSR PPUADDR_PROCESS
    5 D! d6 v& [& x4 }+ R- T
  1271. LDA SPEBUL_STRING,X
    3 M' c4 ^0 F8 v3 k. E6 C
  1272. STA $2007
    + m& [) k& y; H* k  E% C, K  {% O
  1273. LDA #$006 O1 `0 S0 _9 @( ?4 Y: {
  1274. STA $2000; i) t8 W" ]* k- K& Q# I6 C
  1275. INC $BA3 N9 O  [9 V* T" N: a6 x
  1276. INX
    1 x0 z8 U* \- x' h5 o& }4 h
  1277. CPX #$07
    % H' c; `7 X9 D" C! ]2 e. R
  1278. BCC SPEBUL
    1 ^# O6 j1 o: E9 S& s
  1279. RTS* N# A) G$ O1 l( W
  1280. 1 K5 v8 Y, A9 G: v6 ~) M
  1281. SPEBUL_PPU:- W: Q. x9 a- P" Z
  1282. LDX #$00
    % S9 a, m- j& f( v. o2 s$ x) h" [
  1283. LDA #$A2
    ' K; l8 X# G0 Z  X8 P$ Z1 @2 ]1 ~
  1284. STA $BA
    0 ?2 l1 e& O7 L5 p4 Q
  1285. LDA #$21
    8 F- J& y1 R4 C
  1286. STA $BB6 P2 Q9 r7 F! p) W1 l4 p

  1287. 3 K' B4 g5 ^8 b: M2 _" w
  1288. - }' H9 Z( ~4 @) @
  1289. JSR DN_PPU
    1 g2 B- K( W. x) R4 P4 W' L
  1290. JSR SPEBUL_WRITE  p# z( E6 h+ y. h
  1291. LDX #$00
    . P/ l/ ~( @% k
  1292. LDA $07A4% [2 `+ F# Q7 b* y$ ?  D, J
  1293. AND #$02
    2 E/ J3 S0 P' I) R
  1294. JSR ON_OFF_PPU
    1 @; N7 C4 I9 J  o
  1295. LDX #$00
    1 X6 J8 C5 k9 @4 w) W7 `0 Q
  1296. LDA #$B1
    1 N( f7 O6 B5 X
  1297. STA $BA
    5 b5 X; I  N9 s2 M! U
  1298. LDA #$21
    ' G' x1 c) A2 _6 D) a3 R: |0 M- b
  1299. STA $BB4 i4 V; a: b9 a( K# N- Z; P

  1300. ; ~( K% Q$ j2 ?6 c: M

  1301. / u/ ?6 H3 e- G% ]$ M+ |
  1302. JSR DN_PPU
    4 I$ y) K+ G# r* L4 B/ ?
  1303. JSR SPEBUL_WRITE
    # J2 u, O! m$ C( m6 P# y
  1304. LDX #$00, N* \) u) N! ]6 ]0 v$ h% C( g: ^
  1305. LDA $07A5  V7 M1 Q, B: k+ G: H
  1306. AND #$02
    0 o% k/ J/ E) w6 `8 U
  1307. JSR ON_OFF_PPU
    - q; ^9 s( ]! |# m( k
  1308. RTS- @% s) _/ f0 s$ s4 {) D" s

  1309. 6 ?7 w" ~, o5 B
  1310. .ORG $A500
    # ~/ ]% F6 R8 U
  1311. CLEALL_STRING:
    ( J  E! d1 _! d: P
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    ; T9 I$ g+ X; `- A! q* j$ d  c
  1313. , ]* i. h6 d$ }+ q; K, M$ i

  1314. 1 m1 ]  e1 t0 Z5 R
  1315. CLEALL_WRITE:0 D7 I- |3 Z" c& k9 u
  1316. LDX #$004 v0 K: v4 p; ^! N2 }# n/ B8 u0 _
  1317. CLEALL:1 j, y/ \3 v. h. i
  1318. JSR PPUADDR_PROCESS* @) S  d- G# @* G
  1319. LDA CLEALL_STRING,X
    ; U" v- D7 d. \' a- ^1 M1 f$ a
  1320. STA $2007
    # T  o% f) \( \+ F2 F. s) m* P7 Z) w
  1321. LDA #$00, k# c3 C1 L7 y$ J, _+ C: _
  1322. STA $2000
    ( W- a& [5 D+ @+ S# c5 K2 m# r3 {
  1323. INC $BA
    6 u* }, Y& ?$ F" e8 t. f
  1324. INX5 J& u4 w1 j8 F  G  z) ?
  1325. CPX #$072 v! y" i- ^4 O. m3 B
  1326. BCC CLEALL
    6 G4 N' q" V9 j0 i" C6 j
  1327. RTS0 ]" y/ s7 R; R( f! g5 D. ?/ ^

  1328. 7 M6 a+ Q# R2 ?4 C
  1329. CLEALL_PPU:
    7 x0 I9 j3 H( Y+ y) |: s( Y- h# d
  1330. LDX #$00
      l8 i" o0 Y3 w1 `7 A2 N
  1331. LDA #$E2* V+ ]/ z$ h5 |) [* I
  1332. STA $BA1 ~- o7 p4 i! R/ v( l
  1333. LDA #$21
    6 t; H6 o, l8 d# L( ]# F+ ^& S
  1334. STA $BB
    8 e* ]6 ?' y* Z7 E5 m, [

  1335. 7 W' N- w2 y. E- s. `, w+ B
  1336. 7 S' }* D+ V& l- F- a! _
  1337. JSR LF_PPU
    ; B, I8 j5 x" X. Y% j" ?
  1338. JSR CLEALL_WRITE% o9 U0 ?* W1 }, d( |& ]
  1339. LDX #$00% M: [/ k" M/ l6 j) d+ x" n: D! M
  1340. LDA $07A49 w8 P0 _- v9 M4 o  p
  1341. AND #$04. p! Y+ M  G4 s. Y. z! D- _) J
  1342. JSR ON_OFF_PPU
    ( N" T! o; _+ j$ v8 v9 ]
  1343. LDX #$00( n% x4 u1 m( ?) O! f
  1344. LDA #$F16 e  }* N: {! i4 J
  1345. STA $BA0 s" I: g% }: p' N/ {
  1346. LDA #$21' Y1 u2 W4 m3 H. L' ?0 q
  1347. STA $BB
    * d/ f% n/ L  z1 ]8 I

  1348. , x( Q0 E; S2 B" q: q
  1349. & j+ `, u5 |( ~" |1 g, s5 r6 B/ Z
  1350. JSR LF_PPU
    0 ]4 P( ~  P  R
  1351. JSR CLEALL_WRITE" C* b, F7 u+ G. b* ?0 ^# L( K5 s
  1352. LDX #$00" O# I% T4 g! i
  1353. LDA $07A5
    8 r4 }3 l% I: ^4 B
  1354. AND #$04- L4 O7 J& D: J( G" I$ J5 X
  1355. JSR ON_OFF_PPU
    + ]% G+ e; z: J: B8 s
  1356. RTS
    7 p; P$ y! ]: S" d
  1357. 1 a6 q2 P# p+ [1 A. c" N
  1358. HARDMODE_STRING:
    $ }, P9 z! O* Q! n9 F' U& n+ ]
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    5 ]9 }. U0 L- r# J

  1360. 9 c8 T5 Y* c7 o$ p6 c3 Q! K
  1361. ' ^6 q% g- n( n4 f
  1362. HARDMODE_WRITE:
    , q$ c% Z7 R9 N& C- K
  1363. LDX #$001 `2 m3 _' ]/ @- @6 @* q  n& U0 z2 B* \
  1364. HARDMODE:
    ( Z, ?8 @& X0 \/ ~1 o) U% k3 o
  1365. JSR PPUADDR_PROCESS8 ?; n. S7 @; ?5 S7 z- _9 X: G* s
  1366. LDA HARDMODE_STRING,X
    " g5 T7 ^: _# e, `% z3 y% D  w# T' i
  1367. STA $20073 M  W7 r/ M; e9 X4 }
  1368. LDA #$00
    " n" }+ \+ I( ^& J0 k& n
  1369. STA $2000" A, P2 s* q& z! V  C3 s
  1370. INC $BA6 G+ T" }" S0 N
  1371. INX
    1 R) V: @3 s' d; F0 m
  1372. CPX #$072 f" l+ S' d& k  \, [  o& m
  1373. BCC HARDMODE
    $ T8 a6 `/ n* s: S$ \1 X  o
  1374. RTS
    . x4 u9 _4 }+ B, L: g) D* d

  1375. , N9 g( Q/ Q4 ^5 ?- M" w7 I
  1376. HARDMODE_PPU:. m  p* ^8 C5 C' ]: @# f. @
  1377. LDX #$00
    $ t/ J5 q8 y; M+ X/ l2 ~/ p# {
  1378. LDA #$22
    " x  h( c+ o! f. e& h: |
  1379. STA $BA
    / Y- U6 V4 m" Q; V1 E8 Q: x
  1380. LDA #$22
    ; F+ t& m7 \4 S2 u) X- m9 _( I& h
  1381. STA $BB
    5 p) A& D! Z2 [  P! \" |1 |
  1382. JSR RG_PPU3 D+ u2 e0 N  n. i2 W
  1383. JSR HARDMODE_WRITE" N4 d( y8 p# o$ s7 |
  1384. LDX #$008 e7 [- k2 r$ N: G+ z% v6 x
  1385. LDA $07A4
    2 k0 ~4 S' x; e* D: T8 e  _  K  m
  1386. AND #$01
    7 X4 X* g$ L, H0 |2 `7 d! P9 @# Y
  1387. JSR ON_OFF_PPU
    ! }3 J( `* Q# _& X2 E1 q5 p
  1388. LDX #$00
    7 G  s$ _9 L* @( J( `* ]
  1389. LDA #$312 Y2 m9 V/ w; I4 {3 C8 l3 T
  1390. STA $BA
    , K+ p7 z7 J6 E1 s; x) z
  1391. LDA #$22% H+ I3 k6 y, r$ |2 L6 s
  1392. STA $BB
    6 ?% E4 a5 c; P& x7 A  B0 C( H

  1393. 8 l" Z4 k' E: F: Y: A* l; v

  1394. , L4 ~  Q5 H+ I4 g1 P
  1395. JSR RG_PPU/ X1 u2 Y  [1 }" F
  1396. JSR HARDMODE_WRITE
    0 L2 N4 l5 i9 J$ s0 }1 g; ^
  1397. LDX #$00* `( a. j' o4 t
  1398. LDA $07A5! E, f6 E7 s! _
  1399. AND #$01: w# Z: v1 r4 V- f
  1400. JSR ON_OFF_PPU( W& N/ e  S4 t5 C3 ^/ M, l
  1401. RTS
    # ]  {4 C* Q( w* o1 \

  1402. 3 ?( z5 z/ V# O( ^
  1403. B_TO_JMPSTG_STRING:* t6 {& N3 n; d
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80" l: u6 h9 q3 a. T9 {8 t1 c
  1405. & H2 q4 U5 l+ v; Z

  1406. % M( ], c2 O4 R! i2 L4 }. X6 x
  1407. B_TO_JMPSTG_WRITE:7 {9 h: V: Q7 g4 \& M5 r
  1408. LDX #$00
    ' m: r" V  U. d! o% A
  1409. B_TO_JMPSTG:
    : Z( k, f) N6 m0 O
  1410. JSR PPUADDR_PROCESS3 H! |) u. f( p* A8 k
  1411. LDA B_TO_JMPSTG_STRING,X  t# D* e: W0 D5 P/ W+ o6 `
  1412. STA $2007
    4 Y7 n  y$ \( h& G5 f6 P+ \
  1413. LDA #$00
    " n! M: t' N- X- {: K
  1414. STA $2000
    . r% H; C6 c6 e* L
  1415. INC $BA0 ~) d6 D6 Q; G
  1416. INX
    3 n( t0 d* b0 E. v, z
  1417. CPX #$0D: m6 w) `4 U8 X3 R
  1418. BCC B_TO_JMPSTG3 A! Q% `2 J/ w! u, t$ G
  1419. LDX #$00
    + ~6 e1 }7 W- i/ U9 i
  1420. LDA $7FE0  l5 Q- s% `+ ^7 |  `2 ^+ N
  1421. JSR ON_OFF_PPU
    3 W2 \) V/ v8 b" O, q$ F( o
  1422. RTS
    ; |6 x0 D1 I0 Z" k9 ]! \. u
  1423. & z6 G& l1 p. U3 ]
  1424. B_TO_JMPSTG_PPU:
    3 s' t" ?! V' ~- y& V" Y+ h& ?9 E
  1425. LDX #$00
    ! R) U1 E) K0 m! V" Z1 R, a
  1426. LDA #$683 {' H1 O4 |9 c  m* ?- W2 i' m
  1427. STA $BA( q, y& F3 h4 M. K: u9 h
  1428. LDA #$22
    " A: {' G& e- \% s9 ^7 |
  1429. STA $BB+ w3 a1 m2 l$ N  k0 N+ S/ w# Y
  1430. JSR B_TO_JMPSTG_WRITE8 {" Z& l( a3 f, u
  1431. RTS0 ~8 @: ]/ n" _( S
  1432. " E2 M' P$ C& }9 x  e5 G; ^3 N

  1433. ! B1 G4 m- C5 x0 @' y* S; l
  1434. A_TO_PLAMOD_STRING:
    ( p( g3 \/ m9 B$ z* k
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$801 o" B9 R; w1 c6 h

  1436. : O$ f5 N  R, D# P

  1437. , ~9 ]4 _5 F) Q- u
  1438. A_TO_PLAMOD_WRITE:  K  b* e, g2 p! V" ]' X
  1439. LDX #$003 I# `) `  X2 I- B7 s
  1440. A_TO_PLAMOD:
    8 J  j9 L1 T& a& O* |9 g3 T; @3 I" g0 B
  1441. JSR PPUADDR_PROCESS$ {  m) H4 i3 O0 x1 J+ R
  1442. LDA A_TO_PLAMOD_STRING,X  _* B( z( a3 C1 M6 r1 _
  1443. STA $2007
    6 g9 y1 D; G3 i7 t9 m
  1444. LDA #$000 n# _( C! H* Z# T; e  Z
  1445. STA $2000  T+ ^- B2 q, J: y- N/ y4 J
  1446. INC $BA' T2 z8 |/ ^; \( a
  1447. INX+ m1 B3 U6 @8 h  L8 V1 T' U4 Y2 e
  1448. CPX #$0D: D* e. Q! g% U6 k7 E
  1449. BCC A_TO_PLAMOD9 B* _- `. j, Z7 _* o
  1450. LDX #$00
    & h) b& z1 J& W& K. H. n3 I5 s
  1451. LDA $39, Y4 q9 M. e1 X0 j
  1452. JSR ONE_TWO_PPU
    + G! z" E7 S/ j* X
  1453. RTS# g* Z7 o1 n: d( A
  1454. / A& l/ _  Z: w) p
  1455. A_TO_PLAMOD_PPU:
    3 y4 n& ]9 T' K+ J
  1456. LDX #$00/ j4 f5 J9 P9 y* |' l
  1457. LDA #$A8+ P+ n+ M+ R8 }
  1458. STA $BA
    # h" I1 k% S: u' I% z2 @
  1459. LDA #$22! j; _. D( P! B, H
  1460. STA $BB! j* Q% T9 @# a5 J
  1461. JSR A_TO_PLAMOD_WRITE) N, Q# g; r5 D$ ]! z
  1462. RTS0 x0 |- b7 o7 `" Y6 H2 \! y
  1463. ! Y; `0 z- {' @5 Y2 i
  1464. MOVSPE_STRING:, S% e  S+ d# m6 a( Y
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80: l& I7 h( R0 [) u0 K: Y

  1466. ! c; p% b5 b3 Y9 I6 I, w) o
  1467. 7 K8 M5 z# \) @7 l0 g
  1468. MOVSPE_WRITE:2 V7 U5 e* c6 V: x- ~( T
  1469. LDX #$00$ s( p9 X. X( v2 [! j9 T6 A
  1470. MOVSPE:
    . x5 S& t* K. m' w
  1471. JSR PPUADDR_PROCESS( `" \) b7 b% Y3 p
  1472. LDA MOVSPE_STRING,X
    + B9 X$ S7 S, F: n! R
  1473. STA $2007
    7 c. G+ |) Q% ~' f. c. W/ Z
  1474. LDA #$00- u) S6 O; e- P: x+ D; g" l
  1475. STA $2000( \  c4 q0 Z! f; {: E; R( W
  1476. INC $BA
    ) }1 l' E  ]' ]
  1477. INX
    " b. i- g6 f, U+ W- H
  1478. CPX #$07, a1 \2 {6 ]8 |# w+ d0 A
  1479. BCC MOVSPE+ s' X$ M8 N3 s3 y5 a2 X1 C) {2 s
  1480. RTS
    $ @" B' s8 N. P2 T
  1481. 5 A3 p2 }9 R0 E- a  @
  1482. MOVSPE_PPU:1 j/ v/ [. b' f) [7 D# `, \3 m
  1483. LDX #$00
    & @& o. l+ L' A) V
  1484. LDA #$69
    5 o# l) e7 T4 Y' m
  1485. STA $BA& D& `6 i; O- v! V
  1486. LDA #$21; [( \! \4 g- X
  1487. STA $BB0 V5 Y/ F; C6 h
  1488. 6 y3 Y% Z0 t: l7 l

  1489. ( \% n" C6 R  {- u9 u
  1490. JSR UP_PPU+ Z( Y, H1 U7 n
  1491. JSR MOVSPE_WRITE
      l& F0 q% h# x, F+ ?! [) R
  1492. LDX #$00
    * W- P4 i- ~7 ?* e7 d; Z% d: I
  1493. LDA $079F2 g$ @& q, @: k! o
  1494. AND #$08
    : v" C! s3 {* @
  1495. JSR ON_OFF_PPU
    * r% ^  O  b1 X6 d
  1496. LDA #$80* e: U* e0 `6 t
  1497. STA $2007
    0 ^* G1 W& l0 T/ {2 H) K2 i' F' l
  1498. RTS/ }0 q* T  C$ C# U; P6 C) b4 m
  1499. + i& U# d6 m8 K
  1500.   * ?# E6 Q# h2 ], i$ E% i
  1501. UNLJMP_STRING:  g# ^( Z# m9 T
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80
    * ?4 j, O& F0 B* p- I- [
  1503. ' Y$ p+ _6 c- t8 k% H  Z( U5 B7 R
  1504. 7 Y5 `) F+ U  D+ Y- t- _
  1505. UNLJMP_WRITE:+ V0 r" O. G- P+ M1 n
  1506. LDX #$00
    5 }6 q, {3 |& O% F4 `
  1507. UNLJMP:
    : S! W% L9 z/ Y3 Y) G
  1508. JSR PPUADDR_PROCESS. L: T; {1 |- r
  1509. LDA UNLJMP_STRING,X% F8 h3 w3 A, M0 b0 z# i* S2 z6 P/ i
  1510. STA $2007
    5 u/ M$ J  I& h5 N/ s, W- ~6 J4 O* {9 H
  1511. LDA #$00
    8 \' h" ]' U9 J) A* c* q
  1512. STA $20002 {. r3 @& w, F5 {
  1513. INC $BA. O5 |! u7 a0 {6 w# D
  1514. INX
    % r% T! I6 C; N* ?0 d) D. |5 W
  1515. CPX #$075 ?) n' l5 V7 w+ f, ^
  1516. BCC UNLJMP% m" b0 h; }' ~
  1517. RTS
    2 n$ H+ B# s9 |5 ?
  1518. & D2 k% w$ f# h7 }0 u
  1519. UNLJMP_PPU:
    : k: y! W5 k* ^4 @
  1520. LDX #$00
    1 X* G# b# j- ?" F0 ^0 p4 p1 I* {9 E
  1521. LDA #$A97 i9 w1 Z8 ?0 @+ |7 r+ B
  1522. STA $BA  i$ A6 {+ k& Y- U
  1523. LDA #$21
    ; S  z$ `# @, U0 w4 ^, W
  1524. STA $BB1 c2 H# c0 c" s7 E
  1525. : w9 n" |& \; C% e, f

  1526. $ ?$ d" t8 S+ }  v" r
  1527. JSR DN_PPU6 C# f1 ]5 K; f, c# j
  1528. JSR UNLJMP_WRITE9 i7 \2 R" ~8 H  H+ q% n
  1529. LDX #$003 M) F8 Q' ?% A
  1530. LDA $079F
    1 k4 ?/ `+ f0 o$ }
  1531. AND #$04
    & G% t+ L0 a8 Z/ ~# t# [
  1532. JSR ON_OFF_PPU& O- `$ d& z4 B  n, A
  1533. RTS! x& q3 g1 i6 z
  1534. : r6 U; ]/ h1 t6 v  s+ @5 B' U
  1535. ) O4 e9 C( E2 h: x3 ^6 m
  1536. DESTRO_STRING:
    9 i6 H* P! z6 j- R
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    ( K4 }/ q+ B  L/ v: o

  1538. 7 b' R9 N6 P( ?1 T+ B9 D1 q0 S
  1539. - S$ M% s5 N0 I' A) m% _- O
  1540. DESTRO_WRITE:7 q: x  k! l9 J! g
  1541. LDX #$00
    6 K/ Q; g  c' u, |
  1542. DESTRO:
    4 i, v- ?% ?# F4 a( l# a
  1543. JSR PPUADDR_PROCESS( v- B6 L+ T# T
  1544. LDA DESTRO_STRING,X
    2 N/ n( _" I2 q8 R! K. L+ C4 L. y
  1545. STA $20071 G& G. E( z" X5 A+ u- G  y1 l
  1546. LDA #$00
    , F2 ]6 C! S9 U( j9 W
  1547. STA $2000% R) g6 \* U0 p/ b
  1548. INC $BA
    * v1 G6 u% O& s2 J5 i/ a2 @7 |
  1549. INX
    * F( \$ D1 B0 I
  1550. CPX #$07
    6 B; ]2 P/ c2 o7 o/ |
  1551. BCC DESTRO
    4 t3 ?6 m; J" j/ i" s* l& z8 l
  1552. RTS
    ! G2 _& }; v5 k* e3 ~3 |
  1553. + T" O+ e& M. Q( k
  1554. DESTRO_PPU:5 \' a$ y, I& t; I# w! n$ f3 q' o' N
  1555. LDX #$00- Y8 b2 j) C7 k& g& }- E! {
  1556. LDA #$E9
    ; B5 {, l7 h9 l! z& k  J+ d/ {
  1557. STA $BA
    5 `+ G9 {% D! y$ U# g) s
  1558. LDA #$217 T/ A* t; E& g% r+ [# E
  1559. STA $BB3 `% Q* b+ V1 `% U# l+ G

  1560. $ v; H* x6 q0 N0 B
  1561. ) C% x% G; N5 p& b( M6 p
  1562. JSR B_PPU
    . Q! t$ C: l. Q5 y6 k. w7 j
  1563. JSR DESTRO_WRITE
    % }8 Z" Y9 |& |; i4 p0 h! o/ f' V
  1564. LDX #$009 I, C$ O9 X6 U& t  i% k
  1565. LDA $079F
    ( g- f8 ^2 {6 @1 E; x" d/ B  ~
  1566. AND #$40
    ) ~# j, D$ [# h0 ^( K
  1567. JSR ON_OFF_PPU  [+ s  X- p' W* r' f
  1568. RTS
    / g1 v$ a9 ?0 k) w, X

  1569. 8 X# R" f( `; F. G: l
  1570. 9 A6 t- @* M2 T8 s1 v
  1571. EQUBUL_STRING:
    2 ~% |- w) m, t+ k
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80; s( e% m4 [5 _4 l2 V4 Z

  1573. / X) N' g! W% ^* V
  1574. 2 n( |% s# j- l* v# \2 z
  1575. EQUBUL_WRITE:
    1 k/ h6 E' ]. {8 M
  1576. LDX #$00
    & V& r+ q' c) S( [3 j2 G( m
  1577. EQUBUL:' h4 ^8 Y: v/ V: s4 T
  1578. JSR PPUADDR_PROCESS  n! {% T/ G4 D6 ~1 `
  1579. LDA EQUBUL_STRING,X
    7 H1 W9 B0 S1 x) O3 l6 Q7 C/ {
  1580. STA $2007
    0 Z, z" M7 J3 u* P
  1581. LDA #$00
    & ]' {% g1 p* O% ]' g
  1582. STA $2000
    + t  b+ I& Z: x4 U" @
  1583. INC $BA
    - j# M% Z5 E  F! K  f, @/ n
  1584. INX+ c7 d4 W. K0 b! S
  1585. CPX #$071 o" u' o4 H: v! o' D/ o' d+ _
  1586. BCC EQUBUL
    1 C$ n6 L3 u  L* L6 s0 [8 F2 Y
  1587. RTS
      f- e/ O& [8 b, H. @

  1588. " @. ^' {: V+ }! Q% A7 M
  1589. EQUBUL_PPU:
    ; K0 s) s. }* k. X! i& Q
  1590. LDX #$00# M. E. r7 ^) E8 q& K" ?! c# k
  1591. LDA #$29' f5 _& ]* {. M. I' b% j0 l
  1592. STA $BA1 T$ G& z, a. z3 Y, t# G
  1593. LDA #$22; g' o* S- S. F
  1594. STA $BB2 G1 _/ Q3 x: Z% ]/ p) [9 e% T4 S) |  [

  1595. 9 D% S4 J, T5 `$ y3 t8 X8 |

  1596. ' `: N" P( Y/ T4 B
  1597. JSR A_PPU
    9 j$ p% s1 X' ?8 K& I* w
  1598. JSR EQUBUL_WRITE
    * U& G. h- L3 P
  1599. LDX #$00' s0 {. `5 E& f3 x+ u
  1600. LDA $079F
    7 H7 ^! v% H. q7 }* I+ f5 ~
  1601. AND #$80
    3 b; q. ^2 X3 E9 e
  1602. JSR ON_OFF_PPU  H, J8 t8 P5 @2 x' _
  1603. RTS) j& N! H9 U0 }6 P# U
  1604.   Y: J$ ?7 q" H. c) T& n

  1605.   o5 k5 K5 Z  E5 H

  1606. % k& e9 \" {2 v2 z
  1607. BULSEL_UP_STRING:
    * g0 s; Y2 Q6 K4 z: @6 N! Q
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    % u4 _- h) I& \0 J3 s' l" `1 x! Z
  1609. / f3 b# _' d; {! S' L
  1610. BULSEL_DN_STRING:( t$ z: r- R+ @7 o7 H, H; L& _
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80
    . k( `- w/ q  s" ], ], q! M

  1612. - [2 [9 R5 ]" @
  1613. BULSEL_LF_STRING:
    - J9 J( x; A& n# x
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$800 R5 a# [2 a& d' O3 {$ e
  1615. + |% L0 `3 X: n4 T) }
  1616. BULSEL_RG_STRING:* E4 [: M1 N! I8 B
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80
    & {$ L/ b/ ?/ @$ g
  1618. 0 T/ ^# s1 D( d
  1619. BULSEL_B_STRING:
    & ^/ L3 x- ]2 C
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80: \  Z" x" p) }8 }' H- W1 d
  1621. + I% v7 l, t" S* X- m. p
  1622. BULSEL_A_STRING:
    6 Z% X* M  k4 m& L# G0 b2 a5 n" M
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E5 P$ T% r8 D" `9 X/ {. q8 }( |
  1624. 5 @: z' K- z8 h1 {! J8 u8 }

  1625. ! C' c  @: a' B0 A$ Y7 x
  1626. BULSEL_UP_WRITE:) }: c0 Y3 x5 }! B, p: F
  1627. LDX #$00  c2 K& a! @" J  H! G; r. j' d
  1628. BULSEL_UP:
    & q( Q1 v5 F' B5 @  n
  1629. JSR PPUADDR_PROCESS
    ( x' K% Z5 ~" ~! n* d8 p: S
  1630. LDA BULSEL_UP_STRING,X( {! |4 A) `& w, h; F' L
  1631. STA $20076 n0 d; Q% c- O% V' y
  1632. LDA #$00
    ) M( z# m: a% x; k
  1633. STA $2000
    7 S3 _2 u) ~1 S9 W9 ?$ C
  1634. INC $BA/ y# c! T6 S; Y& d1 V+ T
  1635. INX; ?2 I9 B! a5 s9 d' a1 h& }
  1636. CPX #$09
    7 O& k) Y' l9 r; j( V$ x" g
  1637. BCC BULSEL_UP
    4 T) K% J5 d0 ~4 K# r1 h
  1638. RTS
    6 U; S; @* V# M
  1639. BULSEL_DN_WRITE:
    7 R/ M8 b3 i9 \6 `2 p' x
  1640. LDX #$009 ~9 e7 N+ ?1 c+ R3 _7 Q+ h7 e
  1641. BULSEL_DN:# Q2 `" {. g- L/ @
  1642. JSR PPUADDR_PROCESS! J" s8 c* M. z$ H+ e4 X
  1643. LDA BULSEL_DN_STRING,X
    9 }4 @. M' P+ q5 U: [
  1644. STA $2007/ ?3 Y$ {) n0 D) C7 e7 Q
  1645. LDA #$007 l3 e. W# m! J$ L8 S6 _- P
  1646. STA $20002 E" }4 D* @) o, D# E- B
  1647. INC $BA. k/ h* S+ c5 }
  1648. INX0 J6 e9 ^0 U1 @/ `  p
  1649. CPX #$09
    4 t, L% c7 D1 A: Z  _! [
  1650. BCC BULSEL_DN% |: ?5 O6 F. |+ x) A1 ?) t1 O# I
  1651. RTS( z3 S8 e8 ~* J  _! _
  1652. BULSEL_LF_WRITE:/ V6 @  x+ t2 A7 k, e. z
  1653. LDX #$00
    % B4 o/ z% B8 h9 V; a
  1654. BULSEL_LF:$ r$ C8 R+ f: S
  1655. JSR PPUADDR_PROCESS" F9 q; U2 H6 O2 A
  1656. LDA BULSEL_LF_STRING,X
    , O/ R5 q# W) w) l. H9 P, _7 Y# b' E
  1657. STA $2007/ v) R- [7 W; X9 m% o$ X
  1658. LDA #$00
    ) L: _. M/ z" j) E+ b( O0 u
  1659. STA $2000
    . q6 S6 T2 h3 f8 _) l+ l
  1660. INC $BA5 ~, ?; |: T# X/ t, w" z* ?8 S
  1661. INX
    3 }. o. x7 j. Y5 r# q8 l
  1662. CPX #$096 j6 t7 j. e# V" |# p4 U4 Z
  1663. BCC BULSEL_LF
    & D& n! W% Q( z# D: ]. ^+ `( I6 e' u
  1664. RTS
    6 N* C, |% f  Q1 ]. j  Z0 r8 Y
  1665. BULSEL_RG_WRITE:
    # I! W, v4 E  s- m9 k$ Y
  1666. LDX #$00
    + O4 x8 A8 y2 @0 U9 U
  1667. BULSEL_RG:- j  T! Y5 X8 r) i' l
  1668. JSR PPUADDR_PROCESS) l/ ?# w! n& o+ t+ K
  1669. LDA BULSEL_RG_STRING,X
    ! z2 ^& d7 U4 p* i7 a
  1670. STA $2007* [/ D6 @% j+ `; y7 u, Z: ^
  1671. LDA #$00
    ) Y* m+ r# G& \7 k$ x
  1672. STA $20006 b* G7 c' E( s
  1673. INC $BA
    . ]9 X5 e$ R4 t. G: w
  1674. INX; B2 m: W3 _+ t# h- n0 [
  1675. CPX #$09
    " `& Z/ j% L0 W& m/ u6 e3 G2 r
  1676. BCC BULSEL_RG5 m8 f  O9 S/ L# A5 t
  1677. RTS" [- S! L- r* e0 G
  1678. BULSEL_B_WRITE:' N. ]' z' u8 s0 h, z
  1679. LDX #$00
    * a$ F+ i8 ]: M6 n% [, N0 F% E
  1680. BULSEL_B:) k& X1 T. j9 i( V1 h3 C
  1681. JSR PPUADDR_PROCESS0 z5 \# j! g! @( F- E* a- Y3 H( F- a& w
  1682. LDA BULSEL_B_STRING,X
    . N/ h: B+ e; o2 M
  1683. STA $20073 q/ o+ i; F# Q& J
  1684. LDA #$00
    . [: T. a% N. }+ V1 t- }; B: U
  1685. STA $2000) R% J: q* G3 n2 [4 X7 G: W  @' u
  1686. INC $BA
      U5 U1 H9 G' N! e! g6 Q8 O
  1687. INX
    9 a/ L$ w' Y/ D
  1688. CPX #$09
    * h* f$ M' P4 d! g! H) Q8 v
  1689. BCC BULSEL_B
    * I" @4 F9 k6 O7 Y- M
  1690. RTS
    ! h8 `8 J6 s; p# A# J
  1691. BULSEL_A_WRITE:$ `  O  m, Z- C' M
  1692. LDX #$00+ o8 ?$ z0 y, B$ S2 {2 }% y% |+ r0 G
  1693. BULSEL_A:, z) u/ F2 ?7 j8 d$ R
  1694. JSR PPUADDR_PROCESS/ Y% L3 D- k* O: i  J9 h
  1695. LDA BULSEL_A_STRING,X4 y! T" b; j1 O# \- `# c
  1696. STA $2007/ }2 M, {9 ^. K/ O; |/ K
  1697. LDA #$00
    ( U; {3 D) _$ W
  1698. STA $20004 M, H; o4 G1 e* R8 I% H$ M4 c- z
  1699. INC $BA
    - I" T/ {" {! e" u: C% [
  1700. INX
    ) K  v. L2 C8 i
  1701. CPX #$12% y3 ~) E$ v7 @
  1702. BCC BULSEL_A
    ' l8 [, m" I3 p4 E' j5 ^2 _/ }
  1703. RTS
    % c- G, _, v& C
  1704. 7 [/ G; R1 P, A- e! k# p% m
  1705. % l, |" B, N; s* `3 y4 |6 X% p
  1706. ) q  X3 g# t8 q6 A9 V: j
  1707. BULSEL_PPU:
    % i" C, h) N3 w# ^+ M6 q0 \
  1708. LDA #$6C
    . |" p: i1 I# \6 X1 F8 k* b
  1709. STA $BA* W& o; ?! s+ n# P! _
  1710. LDA #$21+ E& d. w0 `3 l6 \) H8 p
  1711. STA $BB
    & k! x5 |7 }! @
  1712. JSR BULSEL_UP_WRITE
    1 _5 `& @2 a9 r" Y( }) h5 m4 ^0 E0 k
  1713. * C9 O0 y9 d) o. ]$ C: b8 l
  1714. LDA #$AC
    4 p) r; v! r0 |5 E
  1715. STA $BA+ y6 `  ~3 B1 g1 {1 k2 x
  1716. LDA #$211 a7 x0 n" Z" v" i
  1717. STA $BB
    " _: g) j5 f- h; n
  1718. JSR BULSEL_DN_WRITE
    1 w: T7 M. C1 h5 Y; }6 _

  1719. 3 O! y( ]  f/ J+ R0 [+ h
  1720. LDA #$EC. m$ x( \" V6 G9 U
  1721. STA $BA
    $ O9 K* X  s* }, h' K8 T0 m: U
  1722. LDA #$21
    0 Q. Y* @) h$ S0 t
  1723. STA $BB8 {# u% S, b3 W) d7 x- \. Y
  1724. JSR BULSEL_LF_WRITE* L5 Q5 U7 a! ^4 \/ L; T# f0 s

  1725. 2 M: L. \9 L8 h6 M# r
  1726. LDA #$2C! s, G( X2 K, g1 a+ O% t
  1727. STA $BA. z. O( L. k, S8 }- \5 M% i
  1728. LDA #$22+ G# o* P: s! ]- r) i
  1729. STA $BB6 y# v: T5 [1 I/ W8 [9 I# P' s
  1730. JSR BULSEL_RG_WRITE0 Y1 R# i& }9 `) {* k0 z! ]
  1731. 8 B$ v) |! ^+ i6 F
  1732. LDA #$6C* `, f: ?6 I" b/ a& C
  1733. STA $BA
    6 M9 E( |+ w  Z4 f6 X% n
  1734. LDA #$228 b. Q0 N# F- L" v6 d3 U
  1735. STA $BB% D2 w) J2 l0 F& v$ S
  1736. JSR BULSEL_B_WRITE
    6 |6 D6 X2 P, q# C$ r
  1737. 3 K5 x$ o, N( b& U% U
  1738. LDA #$A7. b0 O1 D* D/ s/ }
  1739. STA $BA# J8 G) o) ~, D! C0 Q
  1740. LDA #$22. }' r! M+ J- `7 ~  O
  1741. STA $BB
    ) G8 h2 v2 L1 D
  1742. JSR BULSEL_A_WRITE6 l0 D2 B' u/ i3 g# {
  1743. RTS3 b) G7 H& Y' u: ~8 X6 v% C
  1744. 5 f. _' v9 X( ~8 p( t. B& B

  1745. 5 E- \0 e+ ]! l! {6 P9 x# n
  1746. 7 G$ t9 Z9 T( x7 \; W+ I6 P, v
  1747. UP_STRING:0 M6 r5 k7 R5 K$ c* W
  1748. .BYTE $9F,$9A,$80* _3 u" u+ U4 t7 W0 u

  1749. $ q2 V& k$ X$ P: Z" F/ n" H8 k
  1750. DN_STRING:5 b0 ?0 s# K1 Q+ b+ T7 d0 j
  1751. .BYTE $8E,$98,$80% i- R; i1 n/ }8 I3 Z' H8 j

  1752. 8 t' B" G4 ?" i
  1753. LF_STRING:% b: W8 C& K6 l
  1754. .BYTE $96,$90,$80
    & ]1 a9 o4 X; b  j' c. D

  1755. 3 O+ {/ O% h3 J* D. q
  1756. RG_STRING:
    % @. L/ j6 |/ z  q
  1757. .BYTE $9C,$91,$80( ^$ |" p; u0 G

  1758. + i) t" N* K+ W& ?/ J. y6 b
  1759. B_STRING:1 [, r# R! G. u/ I3 u1 P  y' O/ N
  1760. .BYTE $80,$8C,$80
    6 I2 d3 ~& ?! W/ |5 w4 Z/ Z
  1761. % w: V7 V2 `- V  Z% L
  1762. A_STRING:6 w5 ?: L6 B! @4 B( A6 i# D
  1763. .BYTE $80,$8B,$80
    $ h2 ?! x/ R5 E

  1764. 4 `( x8 s; |! c- F  c* [

  1765. 7 {% T  _, X" b7 F$ a$ t9 L
  1766. UP_WRITE:
    2 N7 d# o0 w" q8 |
  1767. LDX #$00' Y6 k! v( G9 ~8 M0 D9 Y! s% w
  1768. UP:
    ' @& P( T$ w  m+ g7 Z/ o2 J6 Q. b
  1769. JSR PPUADDR_PROCESS2 V9 d2 }  t$ A+ m( r) a
  1770. LDA UP_STRING,X! x4 e/ w* E) Y! Y# T- z: I- l
  1771. STA $2007
    7 {$ t& t' H- ?& o! b: L7 s& R
  1772. LDA #$00) \0 s" d7 K0 O  G
  1773. STA $20002 M, W5 ^/ Z. m, U" B3 J4 \1 w
  1774. INC $BA9 Y+ ~% L- e" |, V. S5 o7 k
  1775. INX6 S  k, F  B; E! k5 ]: r- H
  1776. CPX #$03) o" K" Y) N# n. u6 C9 @# `
  1777. BCC UP' S8 E2 h+ F' s( y+ Z+ e
  1778. RTS
    + k/ i2 d. T+ W' Z$ f7 T
  1779. 1 n% }4 B: v! o, R. t
  1780. DN_WRITE:1 {6 M0 _1 S4 W" M& o- w# x& ]
  1781. LDX #$00
    8 Z' ^/ E8 r. L; Z. m2 _! }$ M- o* e  d
  1782. DN:) B, I- h: d4 o9 K$ j# |3 q
  1783. JSR PPUADDR_PROCESS
    ' D7 q; w1 [. l' i% `! j0 f
  1784. LDA DN_STRING,X
    7 a# ]" H' z5 c9 j
  1785. STA $2007
    ( Q: o# K7 y0 h# Z
  1786. LDA #$00; h$ e# g4 e6 `2 I/ l/ U6 T+ O
  1787. STA $2000
    $ w1 K- b% G% Y9 k, F9 t
  1788. INC $BA3 S  O$ c% D4 C/ u, b3 L% {; N
  1789. INX
    6 t' r+ a) S/ _0 T
  1790. CPX #$03
    3 x# |/ B* r0 q) Y
  1791. BCC DN! ^0 x% c' r4 c& h* t( {
  1792. RTS
    , v3 y- B( M' m; B, ?8 N, F4 I( f# g& S2 L
  1793. 0 g& H# W0 i4 |, D
  1794. LF_WRITE:
    2 A: j- ?# G# ?, Q. n( o
  1795. LDX #$00$ X* l3 |% ?# e- x
  1796. LF:
    6 l2 _2 \: y5 C, z6 i) B
  1797. JSR PPUADDR_PROCESS
    # X- K6 {. _6 P/ Y6 T
  1798. LDA LF_STRING,X' X" }. Z  d4 V1 M. B" v' H+ \
  1799. STA $2007
    - w% r9 y" d# b' q. E
  1800. LDA #$000 F. y3 W4 ?* ^/ S9 w
  1801. STA $2000# w8 R" b% E7 ]6 T9 v
  1802. INC $BA
    % k8 m( j6 v5 x; l9 w# d- o
  1803. INX
    6 a+ d* M* O6 ^  c
  1804. CPX #$03
    0 i( o1 c4 I  K0 I
  1805. BCC LF
    + P1 d  D5 ^; Y$ ~$ p4 A* w2 I
  1806. RTS
    / ~; N" K: w9 [2 j1 G& E. _
  1807. 4 ]* |/ S; w8 _0 w( l* ~' D
  1808. RG_WRITE:0 l: v# ]' l1 }2 D- S9 |
  1809. LDX #$009 s  [% y8 Z( Y  z  s- n) t, \
  1810. RG:
    * _4 ~, }% @5 M; L  G9 S$ S
  1811. JSR PPUADDR_PROCESS$ y3 V; ]/ ~* ]1 t4 C
  1812. LDA RG_STRING,X
    8 _6 _# _$ u  V; ~# g
  1813. STA $20070 T: O6 W/ `# B5 Q/ u. ^# \5 N
  1814. LDA #$00- @; i; f3 H# y5 J# y3 E8 S. K
  1815. STA $20004 w0 i% f3 t4 J1 m3 p; A6 \8 d' R* j4 \
  1816. INC $BA
    ( w: V* P  x6 U. U
  1817. INX
    . `% O/ T6 @. H: m2 e7 x
  1818. CPX #$03
    " \2 D6 _9 Z. N! q& B9 X
  1819. BCC RG# D: H6 H+ b/ f" }; |
  1820. RTS4 O; J- g$ {" H; }# o
  1821. 1 L: Q- h& i' i3 ~3 X+ o" d, z4 c
  1822. B_WRITE:. Y  `# [9 h7 N- d; g1 z' S
  1823. LDX #$00& _  O+ l" k3 d8 }2 n6 u: [  Z
  1824. B:
    5 Z4 W9 y# w( O2 G
  1825. JSR PPUADDR_PROCESS
    & s* X# t) z6 E1 K2 ~* [* ~
  1826. LDA B_STRING,X! p# y* N& \6 ~+ t# U# o2 \
  1827. STA $2007( f& U3 _- ]/ u& ^  q3 t
  1828. LDA #$000 H( k# v9 I5 C  H/ u) o! M8 ?5 H
  1829. STA $2000
    - K' }( D7 {; ^! l" p
  1830. INC $BA- [4 _6 G& g% J$ k8 }6 d, F8 H" H
  1831. INX
    6 ^1 C9 B  ?4 B% i/ D- k6 M
  1832. CPX #$03
    8 m9 d# Y# X. b' {$ T
  1833. BCC B
    * X: w" u# V, B$ w
  1834. RTS& i' q# ~% v% l* H. R0 t

  1835. ' F% |6 F+ d$ e- M
  1836. A_WRITE:+ J9 J/ v6 C) t- \
  1837. LDX #$00
    7 x* B  n+ q) b/ A3 Q! F
  1838. A:& ^6 y( E/ ^& D  V
  1839. JSR PPUADDR_PROCESS
    + V# U8 p5 U: c: x
  1840. LDA A_STRING,X
    . n2 T* `( `4 f" Y
  1841. STA $2007
      J  H8 x3 J0 W* S2 M* q( O, @
  1842. LDA #$00
    8 C( L2 J/ k9 z4 w, P- x
  1843. STA $20001 ~0 w) f6 R1 ]8 L/ b
  1844. INC $BA# i! v) i8 z0 I
  1845. INX4 g' {1 V. X, [7 |+ A9 j9 x5 A
  1846. CPX #$038 n" i$ P" M$ ?2 R3 L/ U% M
  1847. BCC A
    # ^8 c/ W5 g! Q
  1848. RTS' g5 ?2 `# E' [! V  m5 o
  1849.   S5 L! s0 q/ y

  1850. - G$ [% O1 J6 `9 H& y: b0 \8 M
  1851. UP_PPU:
    % s0 v: U& n, t% e  _+ Z
  1852. JSR UP_WRITE
    3 H2 A6 o- k5 g
  1853. RTS
    9 B: u6 {) L$ _& Z) O
  1854. # H) [% n3 o8 H5 v, |
  1855. DN_PPU:$ b2 d) C" q( M* t9 |* p2 F, O
  1856. JSR DN_WRITE7 E" C  X  t6 R3 R) q3 Q
  1857. RTS
    2 w9 x6 w- s2 d+ d( t; a

  1858. - o+ T9 }7 q7 }6 r
  1859. LF_PPU:9 R! F% x/ s9 O
  1860. JSR LF_WRITE" {, }8 O' `3 U9 d
  1861. RTS
    5 J$ ]( s- G8 N, R0 g
  1862. : l( ]3 v5 m  P' a! m: U$ i
  1863. RG_PPU:
    ' M6 B) T9 e, n
  1864. JSR RG_WRITE
    , K3 E9 a5 ]7 f: {, @
  1865. RTS
    * m7 v* t( F8 p" r

  1866. 6 _* \1 [! e0 ]4 M9 g
  1867. B_PPU:/ a4 p) o1 r& ]+ q- E! {. M
  1868. JSR B_WRITE
    1 ]: f1 |( F7 ^6 V# C
  1869. RTS
    ' q1 {5 N5 t- I

  1870. * R6 @* i3 @; |" B/ b" a& z
  1871. A_PPU:
    + Y4 M6 g; ^& [2 C' `
  1872. JSR A_WRITE
    6 |7 i7 y% {; `0 u% p- L
  1873. RTS
      }9 N5 i, G! E$ _/ a2 s) T- w

  1874. % h! j$ R& V/ R% \" g* o# w! d
  1875. ; E0 |" x# p, Q; `( p) v
  1876. PAGESELECT:* E. p0 y0 M* p: p; u
  1877. PAGE0:; W4 u2 E- j( @( t5 @/ h
  1878. LDA $07AA
      K6 q" W, J0 ^2 j1 [+ f$ Q
  1879. CMP #$005 O1 O0 t4 ^( H* Y' B7 Y* j9 q' R
  1880. BNE PAGE1
    + P2 B7 ~7 n. V
  1881. " W2 _3 U5 [! ?/ g
  1882. PAGE_00:$ Z% \6 h( H! v9 ?$ c
  1883. JSR BULSEL_PPU
    - _- G( m3 U# N% C$ b3 c
  1884. RTS
    4 h# p1 R: c1 x* V5 @$ l
  1885. 2 B; x( L& x6 k2 i7 a
  1886. PAGE1:
    3 N6 d" {$ [9 d
  1887. LDA $07AA! v& R4 ]2 Z4 x
  1888. CMP #$01
    0 N, b2 x' b1 I8 |5 S
  1889. BNE PAGE2. P1 \: q) a7 j

  1890. ' [) A- P0 e/ \* g& r; Q7 \0 U
  1891. PAGE_01:9 ?) d( {7 k. z  h- e: _" @
  1892. JSR INVINC_PPU
    9 G, B( w, [2 g9 W' j
  1893. JSR LIFELC15_PPU
    / V6 |* {9 v3 }* M- H+ x
  1894. JSR DOUCON_PPU
    6 p* ?# p8 c6 A  A0 N! T
  1895. JSR KILLON_PPU
    7 G2 l: w* j7 s5 X0 O# b3 O
  1896. JSR SKYFLY_PPU8 Y; G" z6 o4 y3 g
  1897. JSR LIFELOW_PPU
    4 _3 E( w' ?" @6 R3 s$ J
  1898. RTS! H+ y( y4 ?; E
  1899. - r, A0 q- ?/ G4 r& A
  1900. PAGE2: , F0 ~" f8 `9 W5 t4 x
  1901. LDA $07AA
    ; l9 x: S! ~0 V' K
  1902. CMP #$028 M1 O7 V8 x0 p1 Q0 N
  1903. BNE PAGE3
    ) S4 b+ u9 x) \& b% S4 {
  1904. * Y7 q7 p& X7 S1 j! {% ], y% w
  1905. PAGE_02:
    / N! n9 ?9 f/ F4 I6 D4 k+ ^
  1906. JSR BULADD_PPU
    $ ^& d8 v; Q  C3 Z' ?, L3 M
  1907. JSR SKINGE_PPU$ u: b. Y3 Z$ H; C
  1908. JSR BULMIX_PPU
    + D& n" S, ?5 I$ a
  1909. JSR ENELOC_PPU+ Z9 L# N' p  b3 Z
  1910. JSR FOCFUL_PPU! s% f+ ^$ T* w$ o
  1911. RTS6 N9 [' C! `% ?4 _
  1912. 6 f6 i; T$ {4 d. z- o( `
  1913. PAGE3:
    ( u& v; y- g& Z7 E2 r, K
  1914. LDA $07AA
    1 C0 n9 a8 ]" |) e8 g
  1915. CMP #$030 k" R$ T  d% [( @0 f( \" ?. b" C) H+ @% ?
  1916. BNE PAGE45 ~8 s( g5 R) h2 Y

  1917. 2 f5 ?2 O1 s- s4 r% D; e: I
  1918. PAGE_03:
    4 f4 r  ?- S0 K1 W
  1919. JSR BULCON_PPU2 |+ D& ?' r* r- Y1 ?
  1920. JSR SPEBUL_PPU
    - {6 @, k3 U" y/ U2 i& C
  1921. JSR CLEALL_PPU; O! d# |& C0 Z
  1922. JSR HARDMODE_PPU: Y- o1 x5 u$ M
  1923. JSR B_TO_JMPSTG_PPU% n2 `2 t- w/ S- e+ ]& k/ f) v
  1924. JSR A_TO_PLAMOD_PPU( ?2 b% V" ^( p
  1925. RTS
    2 m& _1 v% D/ \7 I; V/ W1 A! ~
  1926. , p. ^$ G2 W. N3 D  G) a
  1927. PAGE4:
    * h/ g  R2 a$ _/ U6 T+ x
  1928. LDA $07AA
    2 P6 J  g5 j. _0 Z% s
  1929. CMP #$04- N$ W) Z% k8 ^) L; ?: k
  1930. BNE PAGERTS
    % H% |, b& U( s: Y

  1931. + \5 B- Q5 @6 W: V: e
  1932. PAGE_04:
    1 K9 t4 f" U; M' Y% ^
  1933. JSR MOVSPE_PPU
    + }! Y- e5 ?0 D  @7 L
  1934. JSR UNLJMP_PPU/ @" `: K% O3 v1 o0 e
  1935. JSR DESTRO_PPU# l' a) X9 l1 A# v( ?
  1936. JSR EQUBUL_PPU
    ; P2 p/ C2 y" W- a. V- q: c) J
  1937. JSR MOVESPEED_PPU
    , m, _3 f, B, O) B% ~
  1938. PAGERTS:
    4 @9 i8 E- I5 H+ @$ l% j
  1939. RTS
    : {; i+ x' w6 ]& A( M* W

  1940. ( |! f, w8 U9 P: t: g+ U! y+ }
  1941. 8 M4 O/ [. l; w( ?& F
  1942. PLAYER_01_STRING:
    0 |' q. B% V2 S8 D: @
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80* o9 Q5 `% O$ X5 I4 q! ~( a  q2 K

  1944. 7 b  m) _) m" v1 r2 F
  1945. 0 Z/ Y' q6 p# X* }' d
  1946. PLAYER_01_WRITE:: {/ j: F8 ?7 ]/ Z* Q# ~: f% e
  1947. LDX #$003 l1 o! c2 D0 U" Z' ~5 o
  1948. PLAYER_01:4 Z3 D3 i& `! e/ T
  1949. JSR PPUADDR_PROCESS
    % T" x2 N/ L) P( \/ y* b3 w
  1950. LDA PLAYER_01_STRING,X. Y, @3 A+ V' g4 `
  1951. STA $20079 k( b8 d  z/ b7 I4 f
  1952. LDA #$00+ T+ ^1 |2 t1 @, q, T( r( t
  1953. STA $2000
    # O" {0 S6 d. N
  1954. INC $BA, }/ `& J* R7 z: _8 S1 f) P- C
  1955. INX4 W% @2 a3 m; \0 q
  1956. CPX #$0A
    ( j7 @9 I6 q& {( x
  1957. BCC PLAYER_01
    $ e  }# b' d/ \; R" i* J: d
  1958. RTS* Q' X* v8 u0 D3 w) t

  1959. - u- L, w8 p9 z1 d4 ~1 U* n
  1960. PLAYER_01_PPU:
    ' r1 {" b7 a* A7 S  T, K
  1961. LDX #$009 d7 x" }- W: p. G
  1962. LDA #$64
    6 H4 u+ h" G8 F: [$ d% n/ ?/ n+ w
  1963. STA $BA
    $ N% ]: \: C- `# H
  1964. LDA #$20
    ; D9 ^+ j- S( {6 |6 ^
  1965. STA $BB
    3 g1 G( ]/ V2 T
  1966. JSR PLAYER_01_WRITE) n# ^% m7 d0 E  n3 {
  1967. RTS
    " P  C& k# q( O  c1 B5 @
  1968. ; h$ G' X& ~  }2 K% Z; o
  1969. PLAYER_02_STRING:  I1 B) ]) X# m  g& o9 p; V8 L; h
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    6 I7 T: G* n" o- U: {
  1971. ) s, y- C5 c1 D+ g

  1972. 2 L1 N5 B/ s. v! c
  1973. PLAYER_02_WRITE:3 T7 I% |1 M- p& `* B. u3 ]
  1974. LDX #$00" k' w+ h# O. ?" J
  1975. PLAYER_02:
    ) u) ]+ f( J& K0 w. @: v  m8 `
  1976. JSR PPUADDR_PROCESS( C7 f0 M8 h/ T7 `" I* |& \; p
  1977. LDA PLAYER_02_STRING,X
    3 M2 w  |5 B, t4 q
  1978. STA $2007- m& i* Z! r% K3 s# Z
  1979. LDA #$007 m# ~6 E5 c1 g4 T
  1980. STA $2000
    ( ^" t$ S# w0 x3 |5 q
  1981. INC $BA% ?0 y+ s5 `) L  }/ J0 p
  1982. INX& Q5 h' @8 R8 f, ~
  1983. CPX #$0A
    % R/ _# j+ z1 E6 }. }1 s
  1984. BCC PLAYER_02
    6 f" U$ `* L8 t4 J) h. a. t4 x4 I
  1985. RTS
    & c" |. S6 q5 h$ X0 |
  1986. : G8 J0 H. c6 ]* z$ o6 p
  1987. PLAYER_02_PPU:
    . D* y( T& y/ J. Z+ X# |$ h
  1988. LDX #$00+ Y- U3 ~: c& j2 E
  1989. LDA #$73- Y3 G2 r$ }6 {0 E8 U* [
  1990. STA $BA, G8 u# X2 K. z3 A
  1991. LDA #$20
    . r# n( z& h' w, j* c& ^% [' z
  1992. STA $BB6 H5 F0 q2 c$ R; D+ t# T% O( F
  1993. JSR PLAYER_02_WRITE
    - n  n$ E: Y1 Q  b% P! x7 c3 ?- F* i3 H
  1994. RTS
    7 h4 v6 j+ y4 S3 t" Q* K
  1995. ' X% t( m7 I, z. a- C/ Q
  1996. PPUADDR_PROCESS:
    ( c0 M  ]3 w/ e# C7 h3 m6 Q$ w
  1997. LDA $BB
    . [- Z* F- c* F( h' b& P$ U
  1998. STA $20062 y% X" o% j. h- e) `* r
  1999. LDA $BA$ T! x, H- @: ]. Y, G% Q" E- ^
  2000. STA $2006# ~8 u$ K, q: C) h! F, x
  2001. RTS/ C2 ?8 V/ E6 ~) T% ~/ x& u
  2002. 7 p  }- `2 S/ L5 \

  2003. " l# @* ?! `* \

  2004. 3 ?6 ]8 x/ s' D5 o$ I2 H7 u3 c
  2005. ONE_STRING:
    ; C: _, N4 E9 j  [4 D5 p9 S) m& I
  2006. .BYTE $99,$98,$8F
    8 d0 L) l3 I, n# ]
  2007. 0 D, W; Y) L% y% y# ]. x: c9 V* T
  2008. TWO_STRING:6 v  K% _+ K* J' ^
  2009. .BYTE $9E,$A1,$99
    0 Z6 \: q% V* k0 [5 L; \0 b+ i
  2010. ) Y# W- |" J3 F! b* t3 C5 V5 s# ~
  2011. ONE_TWO_PPU:7 b" y) n/ {0 {3 k+ v1 d1 K% o
  2012. BNE ONEWR
    , l& P& s0 [; ]  g
  2013. TWOWR:1 F" ?  x  G! a: j5 h3 M
  2014. JSR PPUADDR_PROCESS
    ; D: s/ x1 E+ }% p- T0 @- ^9 z  `0 Y0 _$ o
  2015. LDA TWO_STRING,X
    * G' G! ~. m( `  u+ p" t/ J8 y3 n
  2016. STA $2007
    ( t% O3 e, }6 X2 s
  2017. INC $BA
    3 P0 H3 P$ ~( {) c/ z; x
  2018. INX
    - `2 @( [+ }* g) O( t
  2019. CPX #$03# ?' Z( r1 u! ?5 ^% i5 l
  2020. BCC TWOWR- w' M  e7 J/ e% }% g" U" j4 ?
  2021. RTS3 i3 r4 u) q! ?1 S% o7 a
  2022. ONEWR:  {$ n9 F* @) X6 f4 K
  2023. JSR PPUADDR_PROCESS
    - e  `/ `5 S7 m6 q+ K- I$ @7 {
  2024. LDA ONE_STRING,X
    9 f, U4 j+ q& b; N" U  M4 m
  2025. STA $2007
    % Z$ l9 v( y" w+ ]
  2026. INC $BA
    ) o/ Y1 {/ Y5 u% H
  2027. INX1 ?! ]  X' M9 l& G% ?& Q' ?# K
  2028. CPX #$032 l6 E- `- _# [, z3 i
  2029. BCC ONEWR
    / S9 S  c6 x. ~2 h% s6 S
  2030. RTS( [' l: J/ k% c8 `
  2031. ) X' R0 H% j- E/ d
  2032. MOVESPEED_STRING:
    % @: z+ k9 |7 R* ]' Z
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$800 h/ L, K2 v: Z  `

  2034. ! ?* I4 F2 Y, Q* I0 S( }
  2035. % d: T/ T0 J% }* l
  2036. MOVESPEED_WRITE:; Z$ u9 T+ S! h) Z$ R
  2037. LDX #$006 h0 S0 A3 |  g/ e$ z
  2038. MOVESPEED:% G6 U' T4 F; ?
  2039. JSR PPUADDR_PROCESS. I7 t( J- Y% P" x
  2040. LDA MOVESPEED_STRING,X0 Y* _8 s  O1 h& k3 G
  2041. STA $2007
    6 L2 t- B% y1 z* f
  2042. LDA #$00+ h" M* h7 m, Z$ e6 R9 s
  2043. STA $2000# @& y5 q9 Z( t/ b
  2044. INC $BA6 i2 j& h6 i: v' P: V
  2045. INX7 _$ N$ o+ i. S8 Q" x' u
  2046. CPX #$0B
    ! ~3 y! K8 E7 F0 \/ w5 H
  2047. BCC MOVESPEED7 _- z0 ?& ^' d4 e* C# d0 j7 a0 `8 @
  2048. RTS$ A/ r3 `  t4 L/ d  B8 z, ~1 d

  2049. # ?9 J# y  D8 ]
  2050. MOVESPEED_PPU:: T0 ~" S/ e# z" b, f3 z$ j& [
  2051. LDX #$002 `, o6 W1 M0 _$ m/ i( l/ g  T, ]
  2052. LDA #$AA( m2 z! H& x4 p) H
  2053. STA $BA
    - j, x  J( K$ }- L
  2054. LDA #$226 F4 W8 o9 j* H; ~# x
  2055. STA $BB% F/ V; F6 D6 U9 e; Z9 E
  2056. JSR MOVESPEED_WRITE
    6 l/ P. E! A- A* b+ M
  2057. LDA $7003
    1 p2 u" }% A) [" u
  2058. CLC
    0 y! U9 ~5 Q& n. i
  2059. ADC #$827 x7 [/ D! d6 ~# ]6 h: X0 K
  2060. STA $2007
    ' M0 D5 A3 A2 J. \
  2061. RTS
    : |/ {8 e5 B% y. v
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

[发帖际遇]: yandagui辛苦发帖,赚了 6 个 柠檬. 幸运榜 / 衰神榜

签到天数: 549 天

[LV.9]以坛为家II

发表于 2016-11-20 00:59:08 | 显示全部楼层
真是太強了,感覺樓主可以直接當D商了.
[发帖际遇]: hanjungex 发帖时在路边捡到 3 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 7 天

[LV.3]偶尔看看II

发表于 2016-11-20 01:30:16 | 显示全部楼层
不错谢谢分享!
[发帖际遇]: huanhuan05花4 个 柠檬买彩票,血本无归T_T. 幸运榜 / 衰神榜

签到天数: 2060 天

[LV.Master]伴坛终老

发表于 2016-11-20 03:01:53 | 显示全部楼层
这个修改好厉害、、、、
[发帖际遇]: liujunbtx为灾区捐款 3 个 柠檬. 幸运榜 / 衰神榜

签到天数: 2718 天

[LV.Master]伴坛终老

发表于 2016-11-20 08:57:10 | 显示全部楼层
非常强大的修改!
[发帖际遇]: afti花16 个 柠檬买彩票,血本无归T_T. 幸运榜 / 衰神榜

签到天数: 852 天

[LV.10]以坛为家III

发表于 2016-11-20 11:17:32 | 显示全部楼层
好东西,收下了
[发帖际遇]: kexiao1223扶老大爷过马路,警察叔叔奖励kexiao1223 1 个 柠檬. 幸运榜 / 衰神榜

签到天数: 1279 天

[LV.10]以坛为家III

发表于 2016-11-20 12:03:09 | 显示全部楼层
太强了!佩服佩服!

签到天数: 1873 天

[LV.Master]伴坛终老

发表于 2016-11-20 21:28:21 | 显示全部楼层
这修改太全面了 ,
[发帖际遇]: 一个袋子砸在了 nmclib1 头上,nmclib1 赚了 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!, a& X* T( `  `2 H) `
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

发表于 2016-11-21 12:40:20 | 显示全部楼层
感谢楼主分享
[发帖际遇]: 一个袋子砸在了 tariq017 头上,tariq017 赚了 4 个 柠檬. 幸运榜 / 衰神榜

签到天数: 1837 天

[LV.Master]伴坛终老

发表于 2016-11-21 19:36:29 | 显示全部楼层
感谢楼主分享
[发帖际遇]: datone辛苦发帖,赚了 1 个 柠檬. 幸运榜 / 衰神榜
头像被屏蔽

该用户从未签到

发表于 2016-12-2 15:48:07 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

签到天数: 347 天

[LV.8]以坛为家I

发表于 2016-12-7 15:53:12 | 显示全部楼层
谢谢分享

该用户从未签到

发表于 2023-7-28 22:49:06 | 显示全部楼层
看上去好复杂
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2024-5-20 02:49 , Processed in 1.125000 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表