EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 , Q" O; R  F2 S4 h9 F7 R
$ I% G  M0 @% O
     [FC][魂斗罗旋风终板END暂停显菜单]
& X3 ?8 ~) t! T5 M7 F  L
作者:FlameCyclone(flamecyclone.ys168.com)" `# Q/ l- c$ d# v0 c# Y3 r# Q, e
时间:2016/11/19 21:46:00
6 A/ p/ J% o7 b: Z! E6 E" r更新日志:

# O8 S2 I9 C/ J& m* z: F2016.11.19:加入暂停显菜单(共5页).
3 {. z: k; x" w' K2016.11.12:加入无限跳跃.! v. [2 I0 ?( A
2016.11.12:加入速度调节.
3 {1 N$ ?6 G9 O: `4 D6 F; ^
2016.11.11:加入敌我子弹对消功能., F3 B! O9 t3 ?* G4 z$ S
2016.11.11:加入全屏闪灭功能.
! U9 g( p1 q6 R9 k3 Q3 v: h2016.06.08:加入全屏瞄准功能.  Z3 T0 U' M4 v( N
2016.05.31:加入弹速调节功能.% b3 F0 h# w! s  G& K5 x
2016.01.01:加入高难度模式.) N! X4 Y8 G6 N; n+ }* g
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.# a* v9 g0 j  }. A( ]- i# v
2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.$ h0 H, I+ o7 @$ C; Y" A
2014.07.05:双人切换功能优化., X- t( ]# H8 m8 ?4 Y* k4 u
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
' w# K% L# l' ?: T2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.$ N" t3 s$ n' M/ y; N; n; ~" c& Z" T
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.: B0 R' G9 `4 o5 T' l
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.6 S+ @4 S8 H  b1 }, Z: l
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
9 h4 D8 Z+ ^  G- F- w  b+ T2014.02.13:加入自动演示通关.
' w) E- @6 F# o& q内容:# e7 \; L3 U4 i
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.7 S! s6 B1 x/ e' N9 A* K. M
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
5 z6 a* E0 k0 T6 L; x21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
5 }# O- y" U/ i: E" w+ O
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉./ r: q+ D* v: x: i
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.8 }, y, g9 U7 P! m$ [1 m
18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
/ X5 @2 d. y/ m" A4 j# }17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.
, G$ q6 h+ a2 Q* ]16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关./ b; {* q4 [% S+ E. \
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
7 n/ {. @0 C6 o! z8 I4 o* A02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
' b% X3 l$ E- b- b& r& j  Z' E/ H# x03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.: K# ]1 ~$ t1 \
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
, e7 A) f8 ?* L$ j3 |) L' I05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.
% y- ^  v- d  N' i, m06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.7 g) |# E  _; d& M6 \) ?
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.$ P' D8 Z  M! G* Y$ ~/ G
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.3 X) {( V, o5 `; P6 S( g
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
8 R& U! U4 k) A$ _: [) h, u6 p10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.$ I& k  `$ l4 I2 D0 M/ C
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.  q/ s# k' d% o7 J' Q
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
' b( U/ h! N4 z6 g13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.3 J  `/ U5 J4 b6 _
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
/ P2 L1 ?) B5 i( \, D15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。
  ^& t( P/ ~( S* g4 HA.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
/ X3 L/ R# R5 nB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!4 Z6 B0 {0 D8 E6 ]7 l7 H
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
2 s6 V& m+ u+ M9 f4 A
* L* E$ [6 Y  y3 M  E- C    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里). Z) y- z0 s/ G6 L1 P
欢迎大家转载,转载时必须注明出处.
" l7 }0 b# g* n, @* I' D" Y
% T& d# d* ?; u. }: K. ~
游客,如果您要查看本帖隐藏内容请回复

1 |5 n" q1 ]9 c  R2 H
* B+ a  q1 _! Y. H; t/ @& k忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩., U1 Q" ^- \# v' [& Q& E1 j
这几天的劳动成果如下:
  1. .ORG $B400
    2 z/ K! r2 E3 Z+ Z  V4 _, G% Y

  2. ! X3 ~3 A4 j6 l  t( z, \; X
  3. * W0 ]  y, L2 N7 s6 r
  4. PROREG:
    ; c' `5 S' ^# h! ~2 E. \* l  k
  5. PHA
    & ~# m0 {& W: ^
  6. TXA- {0 i1 j1 e+ ^' r) W9 r4 w& F% {
  7. PHA
    & i6 x* p. H" c$ F0 v, I# P
  8. TYA
    & `* l$ C- i/ @' V: ], q9 H
  9. PHA
    ' t1 g* Q& l  h% E: O
  10. LDA $25
    $ h$ G- D6 Y0 O7 o
  11. CMP #$01
    7 B9 i# }  Q; k  o4 z# m+ f
  12. BNE RE: y$ i7 o: h6 C/ s. r
  13. LDA $010A% m1 z) J: ?/ g
  14. CMP #$00# c; J" ~. u0 K. n. s2 h
  15. BEQ P1
    : I( m: ~: \( d

  16. # v, X" E/ U6 F. j
  17. RE:
    9 T+ m' `& s( e7 }
  18. JMP PPUWRITE. k# N6 f( i- M8 {) V7 B6 c
  19. 3 Z1 Y5 T2 Y! P- Z
  20. P1:                ; 条件判断- }, y/ @) Y$ d; t' U3 u& C% z- s
  21. LDA $7FFF( |+ i8 g+ z9 i' D! {. q
  22. CMP #$FF8 s6 `% H/ `# G0 f5 C1 l% S, f
  23. BNE P1RP
    6 L" z: B$ x& `3 ?9 y+ q9 `
  24. LDA $7FA0/ B  `+ E5 \6 K9 u6 V
  25. CMP #$00
    ) W3 Q9 j* t; X# |# W! F
  26. BNE P1CMP& r, T) E" \1 ?; R* ], U
  27. LDA $2001
    # I4 H$ t8 ]; c9 p; C8 ^5 W
  28. PHA5 j7 O! k: _. t
  29. LDA #$00
    2 b0 j) s: _3 w/ n
  30. STA $2001
    : i, t" C$ R1 r" ^
  31. LDA #$FF
    & Q/ u& R8 V: ?
  32. STA $7FA0
    4 n& ?; p2 i" ^% `' z! M" L
  33. JSR CLEANA
    # U; R1 p' m3 }0 q- {
  34. PLA# m8 N2 x( _! L5 }  B
  35. STA $2001
    / P8 t% ^+ _$ t$ i
  36. JMP PPUWRITE
    7 C6 Z! H# K" X6 }- y
  37. P1CMP:
    5 q: w( c! E+ E' e8 Y
  38. LDA $7FFF
    4 H! e9 v4 L/ U3 r! Y1 ^- u" E
  39. CMP #$00
    ( I3 c* v5 m' R7 B/ o% H# W" z
  40. BNE RE
    0 F' E& g% u" x; I
  41. P1RP:
    * g6 q) i$ p, B9 N) f5 j/ {
  42. LDA $20021 w& Y$ X: M! T
  43. LDA #$00: {6 ?3 H5 m( D, w2 W) M
  44. STA $2001
    " f/ X2 [3 U! k, h" V
  45. LDA #$FF
    % O! v6 ~* l5 V& q* D
  46. STA $7FFF4 V$ [& p0 |3 t0 F( x
  47. STA $7FA0
      d0 M) _2 v) H# q9 t+ Y
  48. JSR COPYPPU
    2 d% W4 T9 i) a% O
  49. PIRP2:9 X5 b! S0 |5 Q' `% C5 m- C* T
  50. JSR CLEANA
    + Z. \! O0 N, m' |( {
  51. JMP PPUWRITE
    6 G3 s5 H4 A% V* [
  52. ( |4 p0 _  K  ]1 l1 J, J! \( A
  53. COPYPPU:
    9 i% h* X2 d3 A& m. O. B! y
  54. L0:
    - _1 H) m% S  r- g: e, f: u$ @
  55. LDA $303 `$ q# O9 |9 b/ x4 W7 J. b* w5 U9 t
  56. CMP #$02
    2 x. l2 R- X8 C
  57. BNE UNPROFC5 |8 a& C, |4 G$ Q, |  p% U/ ?5 }
  58. LDA $FC$ Z# l/ n' v' C+ ~9 Q8 F
  59. STA $7EFC1 }! a) l  L# M3 Q1 L. `
  60. LDA #$00
    6 V6 x% h6 r# w% T- @
  61. STA $FC
    1 A( M6 i7 Z1 D2 L. R6 ]
  62. UNPROFC:, O8 o. v0 z' P
  63. LDA $FD
    : H- y& W5 d/ u, O+ G7 }) P
  64. STA $7EFD3 u+ y2 {& Q1 g0 N. a6 f) D
  65. LDA $FF# `2 r. w; M) y0 o4 c" |  i0 t) D# L
  66. STA $7EFF8 q0 [) Q: a6 P2 n" ^
  67. LDA #$00
    % A# O5 D& y( d  _  P
  68. STA $FD) x) T; E% x% F9 G7 E' k
  69. LDA #$B0! P" }9 y& c4 B# C) i( |
  70. STA $FF, E; \( \0 B$ s6 v3 n% W
  71. LDA $07C1
    ' o1 E. D, u& f0 p
  72. STA $7FC1  P8 \4 B$ I: u7 M2 `: w
  73. LDA #$3F
    0 @- m* c, z- A
  74. STA $2006
    8 i, o- G2 ]4 ^
  75. LDA #$011 l5 `& x) Z' z( t; o' F; W4 c
  76. STA $2006
    . F7 I. B3 g% j- h
  77. LDA #$24
    8 `& L) `9 |1 Y
  78. STA $2007+ F9 ?  N9 D/ X/ @; }* U
  79. LDA $07F6
    3 S, ]( Q3 X. X
  80. STA $7FFE2 h: d8 D- J! g4 u
  81. LDA $00FE3 K4 S+ \0 N. a, u! y
  82. STA $7FFD
    : u2 w' i# G" `5 `* J/ W
  83. LDX #$00
    + n: Y  h! s% v2 }' y: P
  84. LDY #$00
    . q/ y5 u2 v5 g7 ^8 V. c  T) f: i
  85. LDA $BD: n) P! x: e# Z; {$ f/ E3 g
  86. PHA6 t+ W/ k* n4 O* o* _
  87. LDA $BC8 _$ Y( K* t& T, s6 H5 |& I
  88. PHA, p( Z4 y( O& b1 F
  89. LDA $BB" c. w( {' `0 e# A; l2 X" a
  90. PHA
    " W/ I7 ]1 g4 G; c/ @
  91. LDA $BA
    # N4 K0 z. Z" R3 M
  92. PHA
      W# r& E2 B  H
  93. LDA $B9  y; d) G1 V4 Q; z/ I" Q7 k
  94. PHA
    + L- s4 x- \1 B( j) ~  _
  95. LDA $B8
    ( f' N8 y+ U- u5 K; Y
  96. PHA
    6 ?3 D) x9 q5 Z7 e& I
  97. LDA #$00
    0 j6 _9 a$ d: Z( w
  98. STA $B8
    6 v9 ]1 M/ D/ j
  99. STA $B9
    ; ^0 d  c% ~( e( l9 N* ~7 X; ]0 x
  100. STA $BA( o' x' J" P. x3 d# z; @' q- L2 Z
  101. STA $BB
    ) v/ ~& A6 R+ t  x) h" U- u
  102. STA $BC
    8 B" c, E% |1 J: ~, l* t
  103. STA $BD
    3 D/ i) u4 w2 C, N$ J
  104. LDA #$00
      l  e( i- n& }% H$ g) w8 o4 V/ D
  105. STA $BA3 ], {+ S- s9 e# Y4 V$ Z
  106. LDA #$20
    ' f+ G3 s, L2 G" y( F1 K% s9 K/ D
  107. STA $BB* L9 m& h! w; @+ H  e! J+ q
  108. LDA #$00+ |* a: w0 b8 Q3 n
  109. STA $BC7 o0 `, D* E0 x; ]$ Z2 m' t
  110. LDA #$604 o/ E/ ^( j  s$ o
  111. STA $BD% x8 t8 m4 d( F% ~

  112. $ C, N7 B5 ^) G3 b
  113. L1:                ; PPU复制
    0 Q7 e1 Y5 ^. I& w& t. T
  114. LDA $BB$ E0 _) J- R+ q# y
  115. CMP #$30
    4 |$ ~( q' U( z; K, f
  116. BNE L2
    5 S: ]5 f: S2 t0 S$ i
  117. LDA $BA
    & Y2 H, G  z) `* l* C5 w
  118. CMP #$00
    8 n  {( V) [1 E5 L% T
  119. BEQ PROADPLA
    4 A8 z& {  l- e% ^) t: y: U
  120. % q# C0 r. L. R+ S. I3 C  l% y
  121. L2:
    - ]9 N  n) M( d9 i/ U- f
  122. LDA $BB
    * t# B9 T" U6 i: t
  123. STA $2006, ]1 Z2 ], a3 Q! v; @9 ~1 ^: h# y
  124. LDA $BA
    - s' u, d# l5 r" e
  125. STA $20068 H: \. q7 V  }& H% @; A, G2 B
  126. & ^$ Q% g1 c) T  J9 S, U7 Z& N
  127. L3:
    $ @. ~  b- B7 W
  128. LDA $2007& \/ t) ]- y- _; L# U
  129. LDA $2007
    3 T0 `; u- g9 Q& _9 t) Y
  130. STA ($BC),Y
    " q0 [0 I8 x& `/ q5 D- l$ h- M

  131. ( s4 e# c% o6 h! R. S9 _8 e
  132. L4:3 R$ R- m& a3 b" l' f
  133. LDA #$00' o4 M) l8 D+ w( f& U
  134. STA $2000
    ) q' e' {3 J  v1 G2 x
  135. INX
    $ K9 g, ?( |( `  _. ^
  136. INC $BA
    8 P# E# R3 o% s2 f* M* t
  137. INC $BC
    ( {4 D5 ^' |' o; x3 f# B
  138. CPX #$00* v( ]  N, r. P3 J3 y8 u$ ]
  139. BNE L1' L  `) O) m1 f
  140. INC $BB
    4 O; @1 |! Z( w- B/ O! f6 R0 S# ~
  141. INC $BD0 U0 v7 }2 v/ y( `1 y' u4 |! l
  142. JMP L1
    8 Y5 k9 y; c% h2 C4 R
  143. 1 V% ^6 G1 b, R6 @* o3 t
  144. PROADPLA:                ;出栈
    ( H+ d: I. J6 K% ]; }# w; C
  145. PLA' A( x! q# `, Y4 t' Z2 z
  146. STA $B8# `2 M1 X6 B2 O% T/ _
  147. PLA! D% g" h8 Y& y; ~; E8 b4 h' R
  148. STA $B9
    ; ^$ \% y  R( F: E# n! j
  149. PLA/ ^0 R( r2 f: c1 b0 k3 b( c+ @
  150. STA $BA
    ; `6 I! D( }" o# P4 ^7 T. `
  151. PLA
    - G$ p% {! Q8 }5 a2 z; k1 g) T
  152. STA $BB
    : d! u& B* l* s
  153. PLA- Q) g, J9 t! j6 c/ w( R
  154. STA $BC
    ! e% P  B. m" ]3 g5 d
  155. PLA
    % d0 V: B1 F8 F" G% D& P% k
  156. STA $BD
    1 _6 y: t0 u4 m0 {/ w: k3 z$ O7 J
  157. CPRE:5 K! a$ x1 [7 d6 w9 \
  158. RTS7 Q5 ?7 L: A* j2 w  ]2 j! R! z( M

  159. ; i* o- i( R  L0 _/ _
  160. CLEANA:                ; PPU清空9 [) G% }; N; Y2 _  h, o/ t3 u
  161. LDA $BD' J  H9 \! D: j2 g
  162. PHA
    " \7 V6 |+ F( ]9 @9 ~( T$ _
  163. LDA $BC
    3 x0 Y" _8 E, _: Z  m0 Y6 m0 s& u
  164. PHA
    / v/ a1 O: Q* Y* b
  165. LDA $BB, O) ^, {( Y, `- r2 j7 J
  166. PHA
    9 Y/ K% W7 T5 s2 q1 B
  167. LDA $BA9 _) R$ y: T# @
  168. PHA
    & f! U2 _- i, s4 w0 j
  169. LDA $B9
    & t2 ~( W; w: e; x8 b  H) M
  170. PHA1 E  {  m: K  {
  171. LDA $B8
    " ?' j/ k  n1 L/ f. c0 N5 `! t! E
  172. PHA
    5 f1 j/ T0 D( Y) R* {, r8 M3 @- I
  173. LDA #$006 q6 J1 e0 E. P1 P
  174. STA $B8% p) j/ E6 `/ f0 B2 ]
  175. STA $B9* o6 m6 y. ?0 ?; P3 P% Q8 I
  176. STA $BA
    + K, ~; R7 p1 L0 @
  177. STA $BB
    & f) w6 ?" I1 Q2 ?4 @$ O  `: J. A
  178. STA $BC& h% C  X( ]4 {. q" a
  179. STA $BD
    # A5 o; ]! I- s/ b/ J, e" |7 K% E
  180. LDX #$00$ _! d3 ?- Y6 u! @& g/ P" w1 s& o2 q
  181. LDY #$00
    ' s5 I2 ~  k1 ]# [
  182. LDA #$00' `3 }7 _2 F4 h% b
  183. STA $BA
    6 Z0 n: I; U. t# O
  184. LDA #$20' K$ p% w7 Y8 t
  185. STA $BB2 J& w, d3 |0 R- m% [5 }% j" P; ?

  186. ' }& v, r- L" i7 D$ [3 m, |
  187. CL1:3 j$ B5 H" ~' {. D! N; A6 ~4 E
  188. LDA $BB
    % z7 W% H2 G) z  V/ r
  189. CMP #$300 m. `. c" Q! l. v2 I
  190. BNE CL2
    # f3 I+ E! ]& A0 ^* M
  191. LDA $BA
    : P% Z4 p+ @1 t- `
  192. CMP #$00
    5 f) c9 T7 e  p+ |; ?9 a1 A
  193. BEQ FREEWRIYE
    + X0 r/ }: f! t2 u  `
  194. " m3 I  ~3 y4 v1 H. G) V
  195. CL2:$ U3 n4 N6 ]0 Z5 u5 o( G4 E
  196. LDA $BB3 P9 C5 W8 m# e/ {& a
  197. STA $2006- b2 F) I3 d! ^; \4 N
  198. LDA $BA
    % h8 d8 q# M8 M8 C6 p) N6 n6 q
  199. STA $2006
    2 h( T# ~& B6 [, o; t

  200. 9 B& Z/ E; E& B; Y1 a% Y
  201. CL3:& e+ t: e0 N' ?
  202. LDA #$00: T$ S9 L+ V4 @" ~; U% K
  203. STA $2007
    6 Y# n( T. \. A; |& R9 N6 {; o  n

  204. & g, i, B& s; B! \
  205. CL4:
    . o# ?0 y! B* S' b# o5 T
  206. LDA #$00
    ) \+ j  X( Q$ d4 I
  207. STA $2000( k$ T8 `+ V- S1 T* S. @2 V2 u) F3 u; S7 A
  208. INX
    , m8 A8 a4 x- v3 b1 J
  209. INC $BA
    3 U/ a$ K8 Y, @
  210. CPX #$009 s9 A2 ^, o* n$ O8 e4 ^( i# f
  211. BNE CL1
    # J/ }4 G& n7 Q2 i$ o8 @$ U0 o
  212. INC $BB
    ! f, ]. @* \! {' @$ i3 ]1 b8 a  s4 u
  213. JMP CL1
    " r! N. ?+ Q8 w) L
  214. 4 d3 U$ b8 q1 `4 K1 J

  215. 9 J$ |- n! g, K2 h+ y! @
  216. FREEWRIYE:( e5 W5 @/ I7 ?$ t- w
  217. JSR FREE
    6 S6 r6 E: V! x1 G& B
  218. 9 r' `4 _. q2 @  M
  219. # O) N, H  N5 ^9 L
  220. ( t9 C1 h- ]; Q1 `! I# O& ?
  221. 6 @7 y2 J# V) n- O0 I: H9 W. V! c% j$ M0 s

  222. / P1 ~5 C4 m* Y2 [3 \( t
  223. CLEANF:                ; 恢复现场: ?$ f8 U$ r) K
  224. LDA #$08. O9 t- C0 L2 O
  225. STA $FE0 L: ~* e" x* B% g% X/ b
  226. LDA #$00
    - O" o+ P% ]: u6 k
  227. STA $07F6% y, y% p( s7 f) C. _. s
  228. LDA #$245 M3 o3 y" {8 {& W% G7 Z0 d
  229. STA $7FC0
    # `# u8 m! X# E* r
  230. PLA
    & w" s( y% t$ x! M  N  `  x
  231. STA $B8
    , l7 l6 u3 p4 i3 B9 d; _
  232. PLA
    & l8 x6 ]9 O+ i; q! [8 s
  233. STA $B9& j( P7 l- G) |& v1 M
  234. PLA
    0 P6 g* K' W( {5 P" ?, v" z/ n
  235. STA $BA
    6 f# V7 a. w6 A, N+ g. r- }  S
  236. PLA
    - x* @) `" g( I, a. J( w) |
  237. STA $BB% H  R, M9 l3 ^4 J$ ^  I/ }
  238. PLA1 E0 X6 m; @# \+ i' X
  239. STA $BC0 L# h0 `! |1 G* s
  240. PLA9 ~8 m+ n6 d4 X, l- i6 m' Y
  241. STA $BD
    * M5 M& ?  u/ ?! o, k. f* u5 ~
  242. CLRF:: O' p! Q" q! h
  243. RTS/ t8 F- t* s: ]# a

  244. 7 p8 L! k" z' O& O, V
  245. W_DATA:
    3 t* K0 _  e/ c* ]
  246. .BYTE $00,$01,$02,$03,$043 `6 e6 w+ Z. o& J' d: g
  247.   
    & Z& S& h1 \% U+ N8 e# u
  248. W_PPU:3 e  b* W9 r: L: |7 Z4 R4 t) V4 p
  249. .BYTE $98,$97,$90,$9D,$96
    ) B9 L! N% |% v7 d* |
  250. % A) V) p6 R: y" z- Y- c
  251. P1_STRING:
    3 w  ^, T& Q) K) E% a, D- c$ A% q, L
  252. .BYTE $9A,$82,$00                ;"P1", ~, _$ H( C8 t* C, a3 o

  253. 2 x" N8 K* D2 W) q/ P5 c4 `+ e) b
  254. P2_STRING:
    $ k3 N' \5 D1 ^* f5 M4 W+ D4 _. u
  255. .BYTE $9A,$83,$00                ;"P2"1 m/ V. o2 D! }  N0 {
  256. 6 r/ N! y! U0 w0 f/ J6 w
  257. WEAPON_STRING:
    2 V8 K3 n9 G$ v0 l: d8 S5 b" v, O
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    9 }+ e4 F- N- u2 _" @* J
  259. 6 B) [/ ^: s% y; e7 u& J
  260. RELIFE_STRING:
    2 x8 M2 w, M* ^" g
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"1 D' ?! C% T0 J3 D! o# }7 k

  262. 9 d8 k8 s8 X- f' p+ C& g9 H, B
  263. P1_PPU:" `" G/ d0 v2 L6 L! O" u
  264. LDX #$00
    - v) p) ]2 Y, k7 ^
  265. % f7 ^' L9 r3 X: g; G. G5 }
  266. P1_PPUW:
    , _$ Y. g" R6 l- t
  267. JSR PPUADDR_PROCESS$ c, l; p$ e! Y
  268. LDA P1_STRING,X
      @- ~: T! j& k
  269. STA $2007% ]9 A# c2 [' _% e. T
  270. INX; t9 K) @: X" o( {7 w$ T
  271. INC $BA$ V7 e6 o' _! F  n0 H# N, I- C: Q
  272. CPX #$03, @# @8 B) u" u7 ^9 g* y3 ~3 a
  273. BCC P1_PPUW! i# s- Z2 ~7 L6 e0 }% P/ v4 e
  274. LDX #$00
    # G7 h; R, R. {& D4 H% W
  275. RTS
    8 E6 c6 N) b" F( b- J: t
  276. 4 s! V* P6 H. [2 G! @
  277. P2_PPU:
    2 r& t$ Q. X! ]) P8 F. T% T7 S2 [
  278. LDX #$00) X: W; k- @9 M) b3 r
  279. 4 o7 V$ L7 ?2 j4 O
  280. P2_PPUW:
    6 ^! ~9 h+ a# x* O/ f
  281. JSR PPUADDR_PROCESS- E) r- g$ F7 L
  282. LDA P2_STRING,X! t# D. k7 s% A; m0 n/ |& d
  283. STA $2007: r) w$ V8 c8 z5 G
  284. INX% k- ]4 ~! L$ i  b4 O
  285. INC $BA
    + z8 W+ s/ p4 f/ m" t" q
  286. CPX #$03
    6 ~% I8 N# y: n: ?
  287. BCC P2_PPUW! f% K2 ~5 x$ A1 ^
  288. LDX #$00- U- w0 B6 B0 z3 }% ~( S
  289. RTS
    - i9 q+ z8 l/ w# F) H6 P

  290. , [1 N- \7 A% s) D6 {

  291. ' b" a5 @/ k! W0 o7 U
  292. LDA $BB+ f( y0 x; n: y3 ^8 b0 v
  293. STA $2006
    7 o/ E/ H( g' a
  294. LDA $BA& U7 l2 |& K/ U" x+ W3 {! z+ z1 [
  295. STA $2006
    ' ^; N/ v% P$ H8 l
  296. RTS6 i! v3 s3 [7 Q
  297. . j! X: @- N5 \* t( J+ o
  298. $ s% w  ?) _$ }$ d
  299. : Y, F5 [1 I% b9 M
  300. PLAYERLIFE:
      E. h+ z3 H6 D" A! q
  301. JSR LIFETODEC
    $ i+ Q( ]0 A# h: B' f# d% ^8 u9 d
  302. LIFEPPU1:
    $ A) `7 a5 Z4 U7 G* j" e; r
  303. LDX #$00! n3 ]8 {# ]* }
  304. LIFEPPU1RE:
      G3 u6 C$ I8 H8 r
  305. JSR PPUADDR_PROCESS
    - n: I% s) f. o! J# L& R" H  U
  306. LDA RELIFE_STRING,X, b2 U6 ^( ]4 F4 W4 T- c
  307. STA $2007
    : o7 C: R+ ~; k7 w. b7 a
  308. INX
    . L3 |/ l1 |2 Q8 P
  309. INC $BA( q$ _& Y' c- Z
  310. CPX #$07% }3 q6 \& ?/ P2 \1 T. d
  311. BCC LIFEPPU1RE
    ) t, h3 m: O3 A. d3 g2 t- w# l
  312. ( {' T; j4 @0 x; r) T3 m) N
  313. LIFEDEC:                ;生命显示写入0 q) Z& y8 c: M0 K
  314. LDX #$005 F5 u* o& b0 {! l/ A7 Y& z; D( d
  315. LIFEDECRE:$ w# u( w$ [+ w6 m% y8 ]& n
  316. LDA $7A03,X: m* _( _, E. X
  317. CLC/ u2 l5 n- w) t  X. Q% ^3 G; W
  318. ADC #$817 i7 u/ ~, C3 Y
  319. STA $20078 r3 [+ G% P+ N4 l4 b/ F1 _1 O
  320. INX: @' X7 a7 }) K! x" ]+ {) y1 J$ p3 I8 ^
  321. INC $BA8 V: k! y9 D, t+ G' N( u. W5 V  Q
  322. CPX #$03& d& I4 Y( {3 u0 `" m) E+ Q$ e
  323. BCC LIFEDECRE
    # m) j5 K% V  K, x  u- G( @
  324. LDX #$005 g" \0 W: a) T; W0 M  G
  325. RTS
    0 Q# J5 b- k# F  P% r. ^
  326. + B4 u9 [4 W% S6 H
  327. LIFETODEC:                ;十进制转换. m6 C' U) h( `! e3 J& r
  328. LIFEL1:        ;initialise5 t1 x& L0 s8 _7 P
  329. STA $7A00        ;$7A00=F3
    ) I* L: Z' @/ k8 x. |! h& x8 g' x7 m
  330. LDA #$00# F  f( Z; i4 ~/ [
  331. STA $7A03        ;$7A03=00
    5 W5 A4 V: A1 M
  332. STA $7A04        ;$7A04=00# c* g0 [% d; J4 |: c* B: D
  333. STA $7A05        ;$7A05=00: u2 P5 y$ x' L2 I0 \8 k
  334. LIFEL2:        ;copy data $7A00 to 6001
    ' d: U4 I4 Q) X4 Z1 g
  335. LDA $7A00; i- a% M: |+ }, g! k
  336. STA $7A01
    3 O# S1 W( f- o0 d5 G8 y

  337. 1 E% L# ?4 k& ^7 k9 L, {% C
  338. LIFEL3:         ;hundred
    & Q5 i- b# `5 P; u. o
  339. LDA $7A01
    : r, d1 t" Q& S& L
  340. CMP #$647 Z7 P* T+ i% Z: m) n! }; R
  341. BCC LIFEL6                ;$7A01<100 goto L6
    2 X% d# v: Q3 C$ @8 F* Q4 Q
  342. LIFEL4:
    8 `0 s& _% f9 P; E- {! j6 o) y
  343. LDA $7A01+ s/ q( k: m9 r
  344. SEC
    9 O: B9 a) b" m& J1 ?& y; }
  345. SBC #$64        ;$7A01=$7A01-100: q# v$ U3 \% I# d+ x6 b* Z
  346. STA $7A01
    ! V2 C* ~% }' K! c" S$ X5 p
  347. INC $7A03        ;hundred++
    1 t7 S1 L7 B% o. Z  O
  348. LIFEL5:
    $ Z) B% j* z% J0 @
  349. LDA $7A019 t: ^' [5 a+ X" g6 _) D3 B6 p, B+ B
  350. CMP #$64
    4 f' v4 |$ L8 a, ~$ _$ i7 T
  351. BCS LIFEL4                ;$7A01>100 goto L4
    - k% e0 M/ `4 U8 `
  352. 9 S& x4 N5 @4 h3 O4 M2 r
  353. LIFEL6:        ;decade# j: o3 @( d  v" v2 \0 r
  354. LDA $7A01# m# z- Y/ X, r
  355. CMP #$0A
    : ?' g$ k( G* k4 g5 ^% S
  356. BCC LIFEL9                ;$7A01<10 goto L94 c% T1 I, Q0 X: X: M- j9 j' v
  357. LIFEL7:       
    . T# h+ V; N8 |% C7 d1 C
  358. LDA $7A01) e! x& k! P6 {2 ]
  359. SEC
    7 e" b5 [& |! g! s
  360. SBC #$0A
    " k( ?8 `# [. m9 L
  361. STA $7A01        ;$7A01=$7A01-10
    # u" W# g4 c& G8 g
  362. INC $7A04        ;decade++
    ( O4 O0 f0 L0 T0 U' o* U" R
  363. LIFEL8:
    2 }( M' n% Z! U; M. |
  364. LDA $7A01
    ' k' W  Z; g8 `. `& F% X
  365. CMP #$0A
      P9 F& ?- w) V, @
  366. BCS LIFEL7                ;$7A01>10 goto L71 B9 H6 u, q/ ?3 x/ C, e! |- h
  367. ;unit( O$ R7 `$ t# V( t: l
  368. LIFEL9:! k9 {6 W& D) H; W+ }& x. w0 p
  369. LDA $7A01        ;$7A05=$7A01
    2 T! Y9 y, w2 d) ^7 S. x
  370. STA $7A05        ;unit- Q3 O- E" c6 }' _
  371. RTS        ;return
    , h- B; z+ o$ J+ q& y* w1 P/ ]* S
  372. 2 L, `& m' _& u5 m$ i7 _
  373. 7 a& ?8 c& n& N7 B' B% j3 c( {
  374.   {. m/ M& j. I8 a# g
  375. WEA:                ;武器ppu写入' c# n! G( Q. x% h9 a
  376. LDX #$00
    9 }6 o, l4 ]. P
  377. WEARE:) k8 L* Q0 E5 E) ]% o
  378. JSR PPUADDR_PROCESS9 d5 p# @- v5 `  g/ M
  379. LDA WEAPON_STRING,X
    ' M6 \( h4 w2 k4 f& n
  380. STA $2007( i1 d4 t: |8 Y; {! ~3 O
  381. LDA #$00. Y2 K* O- q4 H3 `
  382. STA $20004 T% V3 ]- L: ]) `4 H& z3 `1 `7 p+ v
  383. INX
    - ~6 X- \  }- I
  384. INC $BA) L; n& r6 k6 Z4 X
  385. CPX #$07
    , V: }) U3 N0 k! ~! E
  386. BCC WEARE
    2 _3 C3 k2 D3 r5 I% a/ p
  387. # M2 o& |7 N4 B: M+ n" P
  388. READ_WEA:! L& N3 N3 S& F
  389. LDA $B9
    2 j! |( J# X$ l7 e5 T
  390. AND #$10
    * _  f" I6 m9 H1 g
  391. BEQ NWEA9 s# j1 M9 y2 G4 S# k  i) Y
  392. SWEA:
    6 d! @2 h3 P% ?/ |0 @* Q+ d
  393. , {- N7 W" l1 ~8 D/ G, H
  394. LDA #$9D- Y$ J- f) x' }% A: @
  395. STA $2007
    5 d$ c/ K, y5 Z; F
  396. LDA #$00; _7 a' l5 W; R& {. C( ?7 l, f! O7 d
  397. STA $2000
    ) }! F( i1 J* R- p+ A7 U, ?: @% J
  398. INC $BA- n, w; S9 [& ?# |' d  h5 ~
  399. LDX #$00
    6 k/ l3 `: }$ ?, {( C. H
  400. JMP WEAREAD( v6 _! P5 I1 t/ J
  401. NWEA:
    7 R0 E1 K' @/ }- h. C; e2 c7 T

  402. , y8 i1 A* U% g: n  q
  403. LDA #$8D6 S4 N; r" E* m! v3 T
  404. STA $2007
    1 [* Q4 s4 b/ g0 X$ i( X
  405. LDA #$00
    , ^9 d0 ]+ Z1 L' p9 W$ E! I+ E
  406. STA $2000
    4 o( h! o: r0 \4 N* |% X
  407. INC $BA! n3 |) W' ?: ]: y& G8 a9 T
  408. LDX #$00
    ) c* }% G# G+ I/ h
  409. WEAREAD:
    + C' c  r0 K% A
  410. LDA $B9
    7 _  r" @7 L& X+ Y" B: u4 r
  411. AND #$EF
    ( @, A% M2 Y3 I! }6 \! i( N# r- [
  412. CMP W_DATA,X4 X# z4 H, s4 G, J5 Q$ m5 i: F) K
  413. BNE WEACMP
    ( `# ]4 S: |- @, V+ {# i. E
  414. ( h" n) t8 n' C+ T( K9 q6 S
  415. LDA W_PPU,X9 ^- `( B5 Z: b
  416. STA $2007
    3 T2 C" q6 a8 Y) I' C
  417. LDA #$003 A* a* C" w9 E- J9 y9 Q4 M, _% l
  418. STA $2000
    . |2 _6 J' M5 v. h0 W
  419. + S" v9 Y* s, H5 M' f( |2 G
  420. WEACMP:
    * n) ^1 b, e( v5 M+ `
  421. INX
    ) b. i! D8 A4 H5 e  F+ @
  422. CPX #$05) A* s4 E( s0 O, q/ l! y
  423. BCC WEAREAD
    0 m  ?" x/ @3 w% \  U" h( d
  424. RTS# L! o' k) e& i

  425. / B, L! i# E/ I, b: ?

  426. 4 ], X2 i# Z& F3 g
  427. PPUWRITE:
    / }2 \' V6 j  g7 o) k. L
  428. PLA
    % E! `3 w1 j2 w0 @1 ^  U" W
  429. TAY
    ; V5 y, r/ j+ o% O- M4 `3 @
  430. PLA
      f( n, k" e/ e$ l! \9 ]
  431. TAX
    + F2 C# g) T9 D/ j2 m$ j
  432. PLA5 O# h  N9 T/ @, p4 _) o3 v
  433. LDA $25' B8 n+ V7 o4 q: _% s9 i
  434. CMP #$00
    ) e' t8 P  K; f5 i0 s% a' d
  435. BEQ WP1  h' e6 D' b! L/ p# l- L! M
  436. LDA $25
    ; a5 x: h/ t  n9 k. d. T  Z
  437. CMP #$01, X$ N! p) E- N0 }
  438. BNE WRE: O  k  A8 E: n, s, i( [
  439. LDA $F5,X
    . T! D) z: `# `' ^0 X  v! j
  440. AND #$EF
    9 r0 x& S3 C2 N: t: S: M" s
  441. BEQ WRE
    % M7 `- i5 o* v5 M/ V3 h1 F; H, p) S
  442. LDA #$00
    # \& I1 a1 E/ Y" x/ T8 {
  443. STA $7FA0
    4 G' U2 @; V$ F6 X1 W$ l7 ~5 p$ B/ r

  444. 4 a; Y+ \3 y1 V( \9 d. ~) t
  445. WRE:
    5 A" b: c2 X: H: J$ j9 ?
  446. JMP $A000
    0 S7 v; G- h" T# t4 w

  447. ; n9 _1 E. c3 p% ~
  448. WP1:
    3 a! j" t% ^) h8 U0 g. C
  449. LDA $7FFF
    - d2 ?# L4 z$ E1 G5 p
  450. CMP #$FF) J4 W" E( x/ Y* I
  451. BNE WRE
    * H  L# C% a5 {5 R. {
  452. LDA #$00& U& s& M, \" m$ a, S6 d, ]( g& N4 O
  453. STA $2001
    / w9 b: s4 \( ~; G
  454. LDA $BD. C% U% A2 F! P$ q
  455. PHA/ [0 y# l8 V  Q' G1 Q; E
  456. LDA $BC
    ; f. v+ c7 g0 W$ e
  457. PHA6 k: v3 ^9 l0 _5 b* Q
  458. LDA $BB9 W5 `% [2 u# c8 i) K
  459. PHA
    6 M5 h9 x, W) w& x$ X
  460. LDA $BA! y9 {' i2 \; E4 c  Z
  461. PHA
    6 q- |4 w! i6 j6 J
  462. LDA $B9, f4 d" l& Q- C4 z% ^
  463. PHA; D$ m* C% V/ H) R( [7 H
  464. LDA $B8- ]% X, N$ f! a$ P) v" [
  465. PHA7 N( o& r8 Q1 i: N
  466. LDA #$00, f2 S% N, G" ?# E! U0 v3 H& O- h
  467. STA $B8
    5 Y8 ^/ A% z8 V3 \4 \
  468. STA $B9
    / p$ R) x4 u, H# A2 c
  469. STA $BA$ g6 Q1 @5 n! s; n
  470. STA $BB% y* Q3 _: y; o" Y/ X
  471. STA $BC2 d# E' Y9 p* M0 O8 c, v
  472. STA $BD
    - h& l4 C' N0 M% d7 f9 i, _/ z
  473. LDA #$00
    1 N# Z% r: w& }  U) }+ l4 N7 b
  474. STA $7FFF) [- w. t6 i0 I$ U& r3 k6 }
  475. LDA $30  D4 h7 t2 X3 Z, K' G
  476. CMP #$027 ~5 ~- G6 [3 \7 K* |& W& G3 A
  477. BNE UNPROCPL; p  u4 r. T! X9 d! ]
  478. LDA $7EFC* D& o5 ?* Y$ o
  479. STA $FC
    & R$ {- f, _1 I* Z) I& p3 t' C
  480. LDA #$00
    3 o/ R( v+ G! C- I! W  d3 p
  481. STA $A4
    " q# q9 B0 y4 e- N
  482. STA $A5
    ' H1 ^/ \0 m6 v' L( b/ F0 ?
  483. UNPROCPL:
    % c. G: u7 F% ^4 D1 R& j
  484. LDA $7EFD4 j, `/ s0 ?8 d: N, o# T
  485. STA $FD
    4 `$ X2 G, m# K- C* j/ x8 }
  486. LDA $7EFF
    7 F6 ~' R# F( f! T/ T5 D  K
  487. STA $FF( p5 [% W5 y* W) a6 ^

  488. 0 i+ N2 _. I/ C) p& }, k: ?! ^3 e
  489. WL0:  v/ Y4 S- E" U# d- r9 G8 N$ W+ s& u( d
  490. LDX #$00% e$ n# w9 |, I7 W) v  C
  491. LDY #$00% a7 N; x  H0 p- F; \
  492. LDA #$00
    % i/ J3 J2 _1 `; U0 f) ]! Y
  493. STA $BA
    $ v6 u' p1 t8 f3 Y5 H3 q' Q# I
  494. LDA #$20
    ' ~  p; \8 `" o* S- m
  495. STA $BB7 y9 \9 O, r' q, M
  496. LDA #$00+ w0 ]; @, z, S
  497. STA $BC
    & `$ h0 p& x3 x
  498. LDA #$60
    3 }: p1 E9 \# t; X2 i) M
  499. STA $BD
    2 R! r0 R) a7 T, f! e3 j

  500. 5 f- U; K9 E7 k1 @. X* L
  501. WL1:
    # q+ z" D" j/ {# L) G
  502. LDA $BD
    ; a- @$ u2 [3 q+ Y6 O2 Z
  503. CMP #$70. C% t6 A. l0 u4 P0 B
  504. BNE WL2
    ! N. e" W+ G1 R* n$ d
  505. LDA $BC9 L1 [! B) V  i0 l/ C
  506. CMP #$00
    - ?& b4 J1 y6 J
  507. BEQ WLR: s$ b7 Q" v  u
  508. " c% U; Y- Q5 X! c+ K, r% k- `" J
  509. WL2:2 w% I2 ^# B1 U2 K7 H3 @
  510. LDA $BD
    # X0 j. v1 B8 q7 m/ E; g
  511. STA $20069 |3 V, ^$ U: h
  512. LDA $BC/ U* _* k6 A6 H5 Z6 Z4 K
  513. STA $2006
    # m: {# o9 x& q7 ~

  514. " p/ T# L: i! d$ a: y
  515. WL3:6 J! F- Z4 ^. A+ D& o
  516. LDA ($BC),Y: z5 a  I+ y: c" N- ?; w1 _+ J
  517. STA $2007! |5 j; ]. t* S
  518. * m% H' O4 X8 z/ }" |+ Y6 K
  519. WL4:& W# d5 a5 A4 y' P
  520. LDA #$00
    - ~* l, @' B) a' V* X, c9 l& O# j8 h
  521. STA $2000# D3 u7 T3 u. C) F0 M0 {0 Y
  522. INX; b' y0 b- M( h& p! @
  523. INC $BA0 f; F; ~0 M* x6 w
  524. INC $BC, I1 E* w% U; M0 [! {( B5 \
  525. CPX #$00
    6 ]$ e; h4 o1 r  C1 L5 x9 t
  526. BNE WL1# H1 Y3 \1 v, s4 x. u5 d# ^
  527. INC $BB
    5 ^' Y/ m) x  N! S( d
  528. INC $BD
    % H% v+ `7 i' Z3 A4 Z
  529. JMP WL1
    ) s8 H1 P9 B+ P' A! T/ @

  530. ! U0 x% F* W0 k5 ]. u- W
  531. WLR:
    : \3 P6 O  b3 e4 a8 E
  532. LDA $7FFE
    3 W. e8 N# Y* }" Z
  533. STA $07F6
    7 x# s7 }  b& z
  534. LDA $7FFD& D+ Q8 O! u8 q2 m
  535. STA $00FE
    5 M' |2 ~6 T: k: W6 V
  536. LDA $7FC1
    7 N. T. v" c$ _. b) k* F
  537. STA $07C13 `5 _, h: t* o( t/ N3 N
  538. LDA #$3F
    8 I. z" z  j9 B
  539. STA $2006# B: w6 ]. D# d; k
  540. LDA #$01
      r. i, `: n& f3 Q! i+ S
  541. STA $20069 V+ R3 w" R& {
  542. LDA $07C1
    + J: U1 g2 }- i( t) ?3 ]# p
  543. STA $2007, t3 S/ g& _$ \2 t" C
  544. LDA #$00; l4 p. d5 A2 Q. T; Z- E
  545. STA $20003 q/ A+ G2 y( b8 \7 P, W1 a, y
  546. PLA
    - B; |/ Y2 w4 d5 g2 ]* J) V
  547. STA $B8
    % T5 E4 ]# H. Z5 v8 i
  548. PLA
    + [  s% K6 U. v' g
  549. STA $B92 c3 T+ t  B) _, ?+ M# X# u
  550. PLA% h- x; E! S  X# A; E! t* Z
  551. STA $BA4 ~- i  L; R( B0 W* r+ R
  552. PLA
    2 M2 K9 |# q& n
  553. STA $BB
    3 c9 f& a' f8 {1 y7 Z
  554. PLA. ?5 g, w( i: G2 W3 l8 X
  555. STA $BC0 n( d" \* ]" |6 K4 ?0 u& P
  556. PLA+ [3 s# q- r$ J& \4 g0 C2 t
  557. STA $BD
    ( Q5 ^, f8 s9 X# W+ S. f
  558. JMP $A000
    - z+ I7 [+ y( F1 j9 U9 A. ^: A

  559. : c) l& u; F# |. R8 `
  560. FREE:                ; 暂存器保护- {. Q4 X+ U/ V/ q1 V- f
  561. LDA $BD* C4 U7 b6 I0 B# G( }
  562. PHA
    + E7 k+ u1 a* ?
  563. LDA $BC; S9 l- t* P% `8 W3 t
  564. PHA
    " q" ^' A7 p3 H9 d7 ?
  565. LDA $BB
    . \2 o  D0 D) E# {% E
  566. PHA1 f, B6 U- B" t$ |" c. q
  567. LDA $BA& b+ B2 Z% h, Z9 ]* m! Z& h
  568. PHA
    4 H7 ?" P) f6 J8 N8 E( j
  569. LDA $B96 t( v2 N6 G0 D% q7 Q: J
  570. PHA0 _0 X# E4 t1 P2 E2 f9 j9 j
  571. LDA $B8
    0 \, |$ g1 @. s4 S& e; ~
  572. PHA4 {4 G* ]% Z' e
  573. LDA #$00
    6 T# O7 P/ z" a, W: y8 u
  574. STA $B8( ^4 ~9 W( ~+ a% q; d; V
  575. STA $B9
    7 s# V0 d4 ?6 o) K
  576. STA $BA/ K' |$ h2 A1 T; }, W8 |
  577. STA $BB' G. Q+ u% l+ Z3 E8 ^. R7 b3 d
  578. STA $BC
      |$ y& R# Y. O8 C5 W5 \. t
  579. STA $BD  g1 z+ L3 q3 T) ], a" q- x

  580. $ A) w: l; x& r# q( |+ \
  581. WEAWRITE:                ;武器ppu写入
    7 b) P/ ?8 r! x! a! ?
  582. LDX #$00
    * K; k( t& [3 _
  583. LDA $AA
    ) N! V! w- N4 {) B5 N) ~+ B
  584. STA $B9- k' S  p) \; m
  585. WEAINI:                ;地值初始化
    $ |! x6 {6 b" W7 _  F- [
  586. LDA #$A4
    ( j( X; d+ [; t( `7 c) ?
  587. STA $BA' o$ i$ r+ d- S( v
  588. LDA #$20# g. T1 T( `9 r& G( Z  M
  589. STA $BB
    0 d$ e. I8 p+ x: W; _$ e, D
  590. 4 F# ]2 r! h9 u2 X/ ]5 j

  591. 1 Z. V, j2 z  j
  592. JSR WEA; i, O) X: _4 _1 Y' |9 X, y3 D
  593. LDX #$00                ;武器ppu写入% c3 I  H) f1 C: I8 y( A$ g
  594. LDA $AB
    2 @) W+ H8 V9 W" S9 Q
  595. STA $B9* o6 J7 u1 t! ?! b) m4 S5 S0 {" s
  596. LDA #$B3
    # B1 A9 v+ w: P) h5 Q5 N
  597. STA $BA
    ) D# Z! I7 F& \  R
  598. LDA #$20
    ' q: O0 ]) m6 Q( Q1 Z- D' X
  599. STA $BB
    4 h7 ?* w* [; b

  600. 1 _7 _! u0 K, X
  601. + q5 [2 e0 ]  n! C4 O4 y
  602. JSR WEA
    ' ?, d% M; V: N: H6 [. j9 r

  603. ) S9 c; ?7 E" w7 P( i2 o, k& @
  604. LDX #$00
    7 J9 J/ p* i4 j* L7 t0 s( ~% K( G
  605. LDA #$E4$ x! S* g0 h/ m
  606. STA $BA
    " ?0 h( r) ^, Q& s" }
  607. LDA #$20/ F* E  J: B0 s8 o% ^( p; T4 e
  608. STA $BB# D9 L7 N& s$ g6 X6 |; H

  609. : Y& \+ r' U" a7 X: X. }/ r2 Z

  610. 1 r: ^; e* i" V- m1 p/ f
  611. LDA $32
    # r0 d: s! a5 Y8 @* i. n
  612. JSR PLAYERLIFE' }! z6 J# p) @" h

  613. ( `8 W4 ~4 k0 u4 n4 W; m
  614. LDX #$00% W" Y# j- b4 q6 X* M9 o
  615. LDA #$F3$ N1 F, [, h$ k& V; [
  616. STA $BA  y7 I( D9 b; g  j0 x5 D( x" C! F; U
  617. LDA #$20
    + @, g% T5 f1 F) H  R. d
  618. STA $BB
    2 x4 X; d& I- h7 @7 k

  619. & o& K2 a. p. g: \' f, O

  620. ) b: p. u2 k) U5 ]4 [: @3 L4 w/ f
  621. LDA $332 P$ B7 Y( ^: ~) @' v# l8 g/ h
  622. JSR PLAYERLIFE
    . n% ?( \. k* }- n$ [1 z9 W
  623. + a  ?+ C, V% g7 d
  624. % }# b# V' }8 E. X2 T; O+ `  F3 c
  625. JSR PLAYER_01_PPU
    , ~! U6 n: L9 Q! ?
  626. JSR PLAYER_02_PPU
    ( I! k; P, p9 w
  627. % v& C$ b+ y" ~) Y3 l: {

  628. ! S) p1 B/ k% W% ^  S2 y
  629. JSR PAGE_PPU0 |/ W' F. f0 Z" y7 Y8 k; y: A8 k
  630. JSR PAGESELECT
      l( T) `0 w! S/ v9 n% h

  631. # _. n; l- Q, e" X, o3 C; U
  632.   Z" A3 @$ I2 `
  633. 4 p4 U& Z7 a2 @. W
  634.   u8 @& `! y, l2 s  o, C- G* N
  635. # x6 L5 Y* h0 O) f) U; j' w* [

  636. 9 A+ Z: _4 v4 Y' M. I$ I$ P

  637. , m9 J$ g2 A- Q& V; r1 S7 G6 r

  638. " s- E; z1 i. E& `9 \' }) f

  639. 6 O! h/ K$ k- g( ~7 ~: v$ M, X
  640. 5 C3 |2 ?5 [% i/ _
  641. / ^$ I2 w! ]. O2 T7 t( q/ J9 E

  642. 8 B( E+ b" _8 ]! T1 ?: x
  643. . R+ r3 {; L3 S7 D
  644. PLAPRO:                ;恢复现场
    5 E, u. C0 a1 T2 V6 M  s
  645. PLA! @( v2 g/ X$ \) _  q- d
  646. STA $B8
    6 J! J' y5 W' E; ~, S- x% S6 `
  647. PLA  Z$ w9 Y( {2 p: t# |; Q  X
  648. STA $B9
    1 A: ]7 y. v4 k" g
  649. PLA
    ( m# J) R$ I3 ?" F( d, f) z
  650. STA $BA/ c, W$ ~$ [$ _7 @. @
  651. PLA
    " }! |* ]9 T+ k2 ]! U
  652. STA $BB3 R0 k5 ~2 q( W% S" Z! X
  653. PLA
    ; ?. W. [7 j( @# q& V: t( F
  654. STA $BC0 y: H0 c! S, M7 ^2 p" \! m
  655. PLA/ F' k2 ]9 Z9 P% U# {/ _: E6 B
  656. STA $BD
    5 |' [% f. \" M1 F, U
  657. FREERTS:3 B/ w1 a" m: {4 l$ a. k* `$ J
  658. RTS3 I6 F; r- l3 z$ C# d

  659. ! p4 F  q/ C6 F& N
  660. INVINC_STRING:                        ;invincible
    ' d9 n0 S1 ?* S2 W3 X
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80  F6 V# _" x' Z5 w: o
  662. 4 B& f/ D+ K0 X6 G! a- A5 _6 }
  663. INVINC_PPU:
    3 `  }' t7 ]( L
  664. LDX #$00
    ' G3 _1 Q6 U/ b& ?
  665. LDA #$62
    : {: n) Y2 r( N/ l7 |. x
  666. STA $BA
    6 n$ U) F& u" O/ _) u/ H* R
  667. LDA #$21
    ! z7 y" m7 Z7 N7 X
  668. STA $BB
    8 M) D6 m5 `& G5 }
  669. ( [# u- g1 m1 n) `! Z

  670. + G3 h" M) u' w* P* }
  671. JSR UP_PPU
    7 O. Z6 v6 l  O! ]' u$ Q
  672. JSR INVINC_WRITE
    + g. n5 H' X5 L) k
  673. LDX #$00
    5 r& `8 ]3 u/ y
  674. LDA $07A0/ W/ m6 \# V) w# U" [3 M9 @# i( F
  675. AND #$01* e& v$ A( g+ c
  676. JSR ON_OFF_PPU
    9 z! Z# S! \' B" I# |* {
  677. LDX #$00
    ( R2 R1 Y6 w9 J
  678. LDA #$71
    % M) t7 I' E9 U$ L4 u; V3 n
  679. STA $BA$ V! B' e2 S- u. V' F( m9 q* j
  680. LDA #$21
    , t7 M0 W9 x( B( P
  681. STA $BB- L, q7 t! p( I% t# t. u$ f0 S0 `
  682. * \% y( n- F& s" H8 N: h# o
  683. - b. X! @! o3 Q% b: K, E
  684. JSR UP_PPU. D( E# K! a" ?0 c1 V+ D  M/ F& A
  685. JSR INVINC_WRITE
    , f/ x  j+ @0 C/ r- P
  686. LDX #$00! l- W# C9 h) j* z( b3 Y8 c/ T
  687. LDA $07A1
    7 {; s" F7 f( |- z9 S; k* ~
  688. AND #$01/ r0 E4 Y( k9 i. b2 f" l) R
  689. JSR ON_OFF_PPU
    - l, l  M/ u' c
  690. RTS- I, M1 `7 {  e9 e' Q4 ~& }* w# H' t
  691. ; R$ o" P4 N, D) {- L
  692. INVINC_WRITE:- {& V. I9 p( E% \1 @
  693. LDX #$00
    , A3 K/ d+ I5 P3 q' C6 d+ I
  694. INWRITE:
    4 M3 z5 r" V, ~
  695. JSR PPUADDR_PROCESS. ?+ p  F. t0 x7 H1 h( k2 Y
  696. LDA INVINC_STRING,X
    - ?) c  a, I! w- E
  697. STA $20072 P# M; T0 ^5 v% m; ?9 I. ?
  698. LDA #$00
    - S$ u! Z" A( o/ q* t
  699. STA $2000
    - P- y8 ]# N1 a5 v- z0 b0 t
  700. INC $BA4 q* r8 [8 Z6 E7 c
  701. INX
    0 `( p2 Z1 g% U6 m, j( x3 J+ B
  702. CPX #$07
    7 G5 M- P! b1 \; ?9 N$ [1 J
  703. BCC INWRITE) @& g$ t% H7 j+ p5 a, \
  704. RTS
    . ^0 K$ W* v1 _+ Y

  705. 8 C% M% W( _/ |  ?
  706. ON_STRING:( V( f, m( M, Z/ ~4 J
  707. .BYTE $99,$98,$80
    - e, @4 Y: `$ @1 o* b( [

  708. 2 s( S) S4 Y5 _& O1 s7 m" q
  709. OFF_STRING:* m8 o8 l/ c# {* B5 f
  710. .BYTE $99,$90,$90
    ' W" W( r: I- H- K- }" A  u/ a
  711. . d  f" i2 Z4 r/ m* Z% g0 a( `
  712. ON_OFF_PPU:
      W- ?, l. ?; J0 x  n; N6 i
  713. BEQ OFFWR  h+ |; X, j/ N! H! x6 M
  714. ONWR:9 H+ V1 ]6 r4 m, K$ I7 q
  715. JSR PPUADDR_PROCESS
    5 p1 o; o4 L0 z; X
  716. LDA ON_STRING,X6 E) y+ _- M$ w9 \
  717. STA $2007
    4 D* `0 w+ S8 _' W
  718. INC $BA
    4 ^; r# J* z$ b; H
  719. INX! K! @5 t+ c* B
  720. CPX #$03
    6 ^/ S+ B0 S  |
  721. BCC ONWR
    ( h% q) Y1 E1 y; t$ [
  722. RTS
    6 Z1 H3 S- T. ~- Q" J
  723. OFFWR:5 _5 _( Z4 m- b4 t' V
  724. JSR PPUADDR_PROCESS
    1 h3 N: ^& k% t  O1 M
  725. LDA OFF_STRING,X$ M; S% n" M/ \
  726. STA $2007. t& F+ ]# g3 f3 b
  727. INC $BA
    9 z1 E6 m6 c; O, \- m% X: r
  728. INX1 t# y+ q. s+ b2 \7 m" V
  729. CPX #$03
    ' ~3 w# N. \. }/ T# A) N3 f
  730. BCC OFFWR, W* Y: L& r& }) s
  731. RTS
    8 N' B" ^: R' N7 X% F5 j

  732. 1 i( i. t3 w6 d" ?+ S, m, {0 e% M+ Y% ^
  733. LIFELC15_STRING:
    5 l. y/ `. S3 E) S% `. f
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    ; ?2 {8 @/ `. [3 z
  735. 0 {, d# L+ A) m8 a
  736. LIFELC15_WRITE:
    3 v# m8 M# O/ b, O  l
  737. LDX #$00
    . L0 t8 J5 M8 i+ f
  738. LIFELC15:
    + p" `( T" Z! Y
  739. JSR PPUADDR_PROCESS/ G2 K1 X4 O- L
  740. LDA LIFELC15_STRING,X% a- |# Y! J3 _3 \" ^) |+ B
  741. STA $2007% k# r$ H+ y7 J" S8 u2 P) Y
  742. LDA #$004 Q4 Z# g; w0 x' b4 F6 n* L2 p7 O
  743. STA $2000
    6 U! e$ a& a6 f( _! l4 H/ q) O
  744. INC $BA
    # f7 y/ n: T/ P; S1 ?
  745. INX
    0 Z! O! g& c' h7 a7 [; |
  746. CPX #$07
    4 a5 Z3 j! i' I# x& ~$ k
  747. BCC LIFELC15
    3 R$ f4 ]0 w' O7 f7 p7 n; }
  748. RTS" D' I& p* \! T; g2 t6 h

  749. ! v7 T+ p0 F/ K: C; b" g
  750. LIFELC15_PPU:$ ~3 W9 W, N) H7 o
  751. LDX #$00  ^6 y1 w9 T- u( ]
  752. LDA #$A2
    4 s0 b2 z8 ~7 R1 \, W( a8 ]* i+ H
  753. STA $BA8 @: A: D( s( f! j
  754. LDA #$21
    7 c6 B1 p/ x9 q3 P9 P% m
  755. STA $BB- Q) @. a2 R5 ?/ h
  756. JSR DN_PPU
    : {% n( N: x4 f' j
  757. JSR LIFELC15_WRITE9 e6 G0 ]1 f' a  Z- h; w
  758. LDX #$00& d; a, L9 _: G! e9 X$ d7 d8 }8 }
  759. LDA $07A03 S, Y! r% \" p& D+ q
  760. AND #$02
    # E& W7 C5 {0 s) X$ L+ O# _$ j
  761. JSR ON_OFF_PPU) m) w! ?% y3 u6 m
  762. LDX #$007 z" H% n5 P! Q! }& H5 z
  763. LDA #$B1
    4 N2 G. p1 e7 N5 V% q6 a
  764. STA $BA5 C1 m0 b! b  ?- I
  765. LDA #$21
    ' ?2 o6 }  E8 ^) M7 H
  766. STA $BB
    ; K6 c2 q" G3 W6 ~" u% h6 M
  767. JSR DN_PPU( ~( Y  r  e; e8 f+ i5 q
  768. JSR LIFELC15_WRITE6 V. Y5 b/ g5 J4 M0 x% s3 j
  769. LDX #$00- r- j# c- ~! `; q( t! A4 ?
  770. LDA $07A1
    5 `+ k6 o2 b3 {8 O
  771. AND #$024 J% |( e0 _# _* u  q
  772. JSR ON_OFF_PPU
    9 n( y7 C% ~9 K6 @, _( D
  773. RTS/ l3 t% U7 I  E' u& `& |

  774. " s: H! h; e7 U# \0 \, P5 I
  775. DOUCON_STRING:/ N  p8 j1 V. C0 [/ |& C
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80$ ]8 H, ]) \' m, e  W8 ~
  777. * r8 F% B, }( D7 Q1 w
  778. DOUCON_WRITE:
    % u" |6 J1 T& f" x, |# ~& c
  779. LDX #$00' W$ m5 _2 r% a! a# N# L
  780. DOUCON:( c! m5 O  X" K  F  Z
  781. JSR PPUADDR_PROCESS+ e, }4 A" E7 \0 z$ i
  782. LDA DOUCON_STRING,X
    6 |0 T$ k/ F; q0 s  B
  783. STA $2007
    9 W1 }0 M( o  i  Y4 Q6 ?
  784. LDA #$003 T- {; W: m+ R7 H, T) M4 q# x: q
  785. STA $2000
    " a, t/ x1 S; b, @5 n
  786. INC $BA, p+ }( W: `& T* L# e* H
  787. INX
    # m$ [5 y* y+ X' u7 d( Z. E7 u' k5 K
  788. CPX #$071 G9 q2 b7 d" s* h  H% W
  789. BCC DOUCON
    9 m2 ~2 B0 n6 s! z: ~
  790. RTS
    9 x, G3 w. U1 i7 K2 E/ W, h
  791. : m& V2 I4 p! C9 y. y0 ~% o6 ^
  792. DOUCON_PPU:
    + v! a- |) l4 F6 E
  793. LDX #$00
    ! F. _& G! ?  O4 k7 Y
  794. LDA #$E2  @" ]4 [8 n' l* F
  795. STA $BA2 I- J* ?# K/ i2 z/ Y
  796. LDA #$21
    $ z# v) z& s- [4 x) p. B9 m
  797. STA $BB/ z8 j; z3 u& X" Q$ m
  798. JSR LF_PPU
    , U' H0 `! D' G5 g  B
  799. JSR DOUCON_WRITE5 t* N7 [: j( q* h
  800. LDX #$00
    + z9 c9 e+ L6 \" I& P: A+ Q
  801. LDA $07A0; g" z) s8 {( M/ r" D
  802. AND #$048 p: @- {$ K4 ]4 ?5 K5 w- D
  803. JSR ON_OFF_PPU
    + v, {) ]. H9 G) m) N6 q
  804. LDX #$00
    # |* p, d; [2 P6 ^9 P1 b
  805. LDA #$F1
    # _2 y! }& u1 T
  806. STA $BA
    * i: A' ^: m/ w: [! J* T
  807. LDA #$21
    ! M# n, s& o( M& D7 r) ]5 i' b3 v
  808. STA $BB7 T) h3 G+ f8 A
  809. JSR LF_PPU
    1 q5 m8 `, d3 W1 w% Q3 P8 G
  810. JSR DOUCON_WRITE# J" f! R4 D; x0 H+ g# Z, f
  811. LDX #$00
    ( ]! x7 S! _1 C! x- M
  812. LDA $07A1  _/ M4 Y% r1 v" `; W1 h1 U0 }- G
  813. AND #$04
    % d1 @3 m2 R' \6 I: g* b
  814. JSR ON_OFF_PPU
    " o0 b1 Q  d9 h4 B4 [0 e
  815. RTS
    ' V' }& V" t$ R. A8 B9 ]' D
  816. : @+ [' X0 ~( a! g/ y% p
  817. LIFELOW_STRING:
    4 g7 S3 R/ O+ |- R& L9 f: j
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80% M/ @! j" n, L" L# ~8 e
  819. . d$ K$ q  H4 y
  820. LIFELOW_WRITE:4 `, f* x- _- Y4 I4 h4 x1 x8 J
  821. LDX #$00- J! o( ]2 i# }: b7 \% V: k
  822. LIFELOW:/ q+ j1 v0 x1 l3 h8 E) d
  823. JSR PPUADDR_PROCESS1 J6 ]! P6 z2 f. ?7 Z: y* n5 j
  824. LDA LIFELOW_STRING,X% D1 H8 S. j% c- T% v5 Y9 B7 d! |1 |; P
  825. STA $2007
    3 i7 @% k9 M- e( J- W
  826. LDA #$00
    . f) I% n4 ~* n; r! K
  827. STA $2000
    0 X) n; F" {! c2 l7 v8 ^
  828. INC $BA
    # T% ]+ ?. j# [/ U7 \- X
  829. INX1 ^9 u/ I1 @  v' M* B4 O
  830. CPX #$07; A: `( G8 U5 Q) G0 n+ t, P, E8 G
  831. BCC LIFELOW- \2 Q" W  a, }8 e2 H) M* V9 C. |, w3 r
  832. RTS
    : L# k8 M( O8 p& R3 {
  833. # v( b' u; Y3 [# E
  834. LIFELOW_PPU:% n. n$ k. t8 T+ I* w& A/ N* @! l
  835. LDX #$00
    3 D6 K2 I7 V. \& x1 N+ H+ n/ n% r
  836. LDA #$224 X2 P: F$ O# x( e
  837. STA $BA
    6 |- L) l# t* A% A( m( d! f
  838. LDA #$22, A9 T) X. S# h1 S# |
  839. STA $BB+ P) T' a  Q6 G( c1 A% q% }0 b: l* k0 _

  840. & m- z/ T7 c8 u

  841. 7 \! y  ^; S2 g% L& S  W
  842. JSR RG_PPU& G/ T6 a. B5 D2 h. w7 }  p
  843. JSR LIFELOW_WRITE9 j# b! h6 |% r& r. h+ e' M5 o
  844. LDX #$00
    & O. T# x. D& z) j
  845. LDA $07A0) ?* o- f( |  J6 m# `
  846. AND #$08
    % T/ k% d3 X4 j8 B# z% c
  847. JSR ON_OFF_PPU
    5 C& R+ s0 ^  _3 h: \
  848. LDX #$00
    # D, S( s3 e; Y4 ^
  849. LDA #$31
    & _" B+ Z& d9 c6 l/ L- _
  850. STA $BA
    # B# w5 g, `- O$ c+ G. U" N7 Q
  851. LDA #$229 M* w! ?, ~# S$ j
  852. STA $BB
    9 W+ o2 g& M: G* u+ u" K

  853. : r+ R( Z; \. ~: r7 i3 g% v' O
  854. 7 s- f4 s; v: \4 R) t) k, k
  855. JSR RG_PPU- W: S, p2 v' D. a) t0 ~
  856. JSR LIFELOW_WRITE1 k5 E; q" f8 G7 f
  857. LDX #$001 o( V  H* N2 A( Q. E
  858. LDA $07A1, d  U1 K; q- P. }8 g% c' g
  859. AND #$08
    1 ]! n( k3 Y; f- m: E: U7 R4 U
  860. JSR ON_OFF_PPU
    5 q% V- c1 v9 F2 ~/ t2 C
  861. RTS8 A8 V  y' @" x
  862. 2 u+ f; m! i2 Y! [" ?
  863. KILLON_STRING:3 ?& j- d& Y+ P" ]0 Y" t
  864. .BYTE $95,$93,$96,$96,$99,$98,$808 `" D+ \( m1 w$ a
  865. 5 g$ h3 ?9 i/ U/ S6 Z' W- C5 ?2 H& v
  866. KILLON_WRITE:+ ]) _: h, s# I% f4 n: ]
  867. LDX #$00
    + g# E+ p. E. N6 ?1 x2 O$ `
  868. KILLON:7 [* X) x- `3 B+ q" w* W
  869. JSR PPUADDR_PROCESS5 F. F# b+ K, [  r
  870. LDA KILLON_STRING,X- k+ J9 t, [! |8 R7 r; K" S- y# `
  871. STA $2007
    6 x8 a4 `: {. c# m# i! e% F9 L8 K
  872. LDA #$00
    / K0 d, Y; Z  k; N' w7 o" m4 S0 M/ {' A
  873. STA $2000* ~+ n: E. [" C: }
  874. INC $BA
    * \% F; G& I  w" V
  875. INX
    : K% X! w8 ?7 _' c9 Y8 u, f2 E
  876. CPX #$07
    ) q3 C  r2 C% [# u- K
  877. BCC KILLON+ v  m7 T1 l9 a
  878. RTS$ f: b) C. i9 X! S7 e) L  z

  879. 4 G9 \) \+ Y5 ~- R
  880. KILLON_PPU:  Y  D$ Y6 V  H# y! U5 ~1 P" I
  881. LDX #$00
    ! s# i) h8 h5 l7 p3 _9 L  w9 k
  882. LDA #$62/ g/ C+ g4 ^4 g& U7 W, [, l
  883. STA $BA2 s# R3 X; Y7 w* K, i7 P0 V) d
  884. LDA #$22
    8 h) {8 g  J6 Q
  885. STA $BB' W7 {" }5 t1 L
  886. . Z# ^) N8 A6 y+ D' {7 j& R( w4 f
  887. ' n1 W7 G1 M6 U/ f$ J* u
  888. JSR B_PPU
    6 ~6 X. g9 ~1 [% W
  889. JSR KILLON_WRITE
    1 A7 W6 H- [0 `8 `" m; E5 n
  890. LDX #$000 r- ~+ e2 D: i  \
  891. LDA $07A0
    9 |: K; ^0 R4 J# g4 T
  892. AND #$10
    ) C" ]# G" C* k
  893. JSR ON_OFF_PPU
    . N) v( ]8 Y0 J/ a' W
  894. LDX #$00# \4 g/ w  k- J
  895. LDA #$71! [) l; U# i( b9 X) J/ w+ ^. S
  896. STA $BA8 F" I6 p0 ]+ I$ c) _5 }% A3 j
  897. LDA #$22
    3 @0 O! ^  |- X! P. u
  898. STA $BB- J. ~& u7 ^$ ]+ k
  899. ' u! X! Y0 B" q* x

  900. . [( ~! x/ j- P7 V+ C
  901. JSR B_PPU
    1 w) L: i  f, C; t
  902. JSR KILLON_WRITE
    9 `  L8 |, g1 i
  903. LDX #$00' n7 f3 k8 F% _* i# Z
  904. LDA $07A1* a+ F( I! x# [& b' u& s- T0 p
  905. AND #$10
    6 p; K, V" M$ T
  906. JSR ON_OFF_PPU: j) w5 J: k7 T" _. W& ~6 L
  907. RTS
    ) U; p/ C5 ~9 y4 Z- H& [+ N+ ]

  908. ' k3 U  a# L% I6 q& A# S" w
  909. SKYFLY_STRING:1 y' K6 h- I! o' H/ [
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    0 M  h( y  _; G% x( F

  911. ! z# c. B2 `& l4 f
  912. SKYFLY_WRITE:
    % Y$ c5 Y' i4 e
  913. LDX #$009 a1 p6 v, T4 V' `. e
  914. SKYFLY:# E3 u" x. _% L4 I( Y; b- B7 Q: q) `
  915. JSR PPUADDR_PROCESS0 g/ c/ }3 \; g. o7 f$ p  H
  916. LDA SKYFLY_STRING,X, o" R1 i6 i- o' h% s, F* a
  917. STA $20076 b  a  b' T. G+ Z# ^# T
  918. LDA #$00) L! a* {2 W: O0 t
  919. STA $20005 A( Z& ^1 U% K$ M7 L. s
  920. INC $BA3 L* \8 k( n" [4 U1 B5 \% n* e9 V
  921. INX
    : ^0 s  h' W7 V3 R7 E, N0 ?
  922. CPX #$07: Q, o/ {5 k' [0 t
  923. BCC SKYFLY$ i9 r/ b+ o" H  C: ^# L
  924. RTS
    " H# T: `9 D) B
  925. ) l& A0 z- ]) o8 X4 E4 O/ N
  926. SKYFLY_PPU:
    ; N+ ]' c: L; V, t( N
  927. LDX #$00
    % Q6 R: \" S1 R. B# l* a  }
  928. LDA #$A2
    7 ~4 |  w3 i9 [9 G# E
  929. STA $BA
    # L& K5 j/ R" x3 F
  930. LDA #$22
    8 q# E# `% e0 M% K  J' Q% w7 n
  931. STA $BB7 t" b- c" a9 Y9 Q
  932. ; N# y- O* H7 d2 u0 h( V

  933. ' I( O6 s. A& f1 d9 X( O
  934. JSR A_PPU
    0 K! L" Z' Z4 F( b! ]. ~
  935. JSR SKYFLY_WRITE8 d* F9 M3 m- K  Z* M* m% z' k
  936. LDX #$00/ a! S% i' Q2 q
  937. LDA $07A0
    ) P9 ^! \+ I, I# @0 F' w  H
  938. AND #$20
    . w) i, E- P1 k9 A" M( R7 {
  939. JSR ON_OFF_PPU  F& w" z) ^, z  \4 O5 ~
  940. LDX #$00  r; x( y. L0 N% g
  941. LDA #$B10 u$ Z& I7 o3 J$ D# O
  942. STA $BA( Z+ U% @) c2 z8 ]" j3 l$ h: Y! t
  943. LDA #$22
    + O) |- W3 w3 U8 V
  944. STA $BB
    * I% ^$ E4 ]$ F# F9 w
  945. / |! C) U- C( |- b; b3 |+ }7 o. j$ P
  946. / P# L! G7 z- p9 L/ S- f
  947. JSR A_PPU4 z+ N( D+ y. D  ]- ^3 w: K/ d
  948. JSR SKYFLY_WRITE+ T5 a- J( k- g4 j
  949. LDX #$00
    ' H1 J) G2 V. P% |! B& s
  950. LDA $07A19 a1 ~( s3 N% I) ~2 H6 p
  951. AND #$20% k5 d: K! ~  C) ~0 w* Q
  952. JSR ON_OFF_PPU
    2 q* ]! @0 W/ ~* @3 K
  953. RTS
    3 I% O' N! s0 ]4 ^$ y* }+ v
  954. 5 U( ~* T; i" O; O
  955. BULADD_STRING:0 y8 ^8 X4 P/ I/ I$ u) v
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$807 j3 @" j5 T5 x3 e

  957. . w, \7 U0 |. n& U+ d" K
  958. BULADD_WRITE:
    - c; z5 I( c4 h
  959. LDX #$000 Z) C) W! Q* s2 {. X# J
  960. BULADD:+ h/ w. O) ]: ~/ i) `
  961. JSR PPUADDR_PROCESS0 r7 L# L5 Z( D: r: x" r* T
  962. LDA BULADD_STRING,X
    + J  {0 r: m* V! t
  963. STA $2007. N4 ?- h6 b8 C4 v" S
  964. LDA #$00
    ( N0 C9 y, M  X: u3 s
  965. STA $2000
    " b$ \. j: _! r( W# x3 j/ T
  966. INC $BA7 l# X! b+ ~" R  \
  967. INX3 B& g7 `  G5 G6 Z1 w+ V6 S5 m
  968. CPX #$07
      J/ g) f  }2 R
  969. BCC BULADD4 @5 _4 O- e; T* e7 F, g& c
  970. RTS
    " W8 ~, H& b1 f) W$ A! T7 w, ]

  971. - ?' d3 g% W" K
  972. BULADD_PPU:, _6 V* `, A2 V
  973. LDX #$00
    3 L% f3 ~* R5 s. V( L3 f5 ^
  974. LDA #$62
    * {2 x& [: Z+ ^: R6 A3 P% K  S
  975. STA $BA
    1 ?% {8 A. g8 `& c
  976. LDA #$21/ z- l+ Y0 v; i; y+ ~
  977. STA $BB
    ) `( P( n! y; y7 k4 J

  978. 4 ~. W* B) m. h( Y5 x/ r/ K
  979. : S- n; X2 z" K
  980. JSR UP_PPU
    & \) ^+ d7 O# y: t% A
  981. JSR BULADD_WRITE1 W. r: B" X# s
  982. LDX #$00
    : k: x& ]. A' c( _+ J, K
  983. LDA $07A2% x9 i0 @# g7 W: _7 u6 O
  984. AND #$01
    2 P) L/ P/ `. P% R
  985. JSR ON_OFF_PPU
    / F. T! T3 t9 K0 a2 a
  986. LDX #$00
    1 t; H: _9 ~- C* S. F/ z5 t
  987. LDA #$71
    6 A) Z- @# v% Z- z% ^
  988. STA $BA  Q4 L7 W  ]6 i& h
  989. LDA #$21% ?5 m( g  h! V/ B" v4 M
  990. STA $BB; }  w8 Y1 g1 U* {

  991. 3 _7 @% ]) F+ Z( F
  992. 0 u; b1 D& T9 _6 {2 _9 \
  993. JSR UP_PPU
    4 o5 [  w  S6 R1 n' o9 V
  994. JSR BULADD_WRITE
    3 C8 @: H* A$ \! g  ~
  995. LDX #$00
    ) l, `: D9 l$ i& O5 v* O
  996. LDA $07A3  s% {+ F4 x1 j6 r1 X, \1 S9 a
  997. AND #$01
    . K; j% Z+ u5 g" v
  998. JSR ON_OFF_PPU
    7 H! }+ y3 D8 [! x
  999. RTS
    . A, ~. j% l  g" S7 Q0 {  `

  1000. " G& T; h4 R3 w' d. {# ~
  1001. MENU_PAGE_STRING:; t9 S0 i0 o% G7 r, D
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81; r% S0 X' |$ k2 p5 O5 j$ j

  1003. / T( T# p: }1 y" j* v5 d
  1004. PAGE_PPU:
    + U. I1 x0 @. C. u* j
  1005. LDX #$00* {! U8 Z) w. s+ c& f( D# y* [
  1006. LDA #$0A
    - o  |6 P3 {4 B& C4 L
  1007. STA $BA
    ! ]* p4 y7 Q8 G$ g* S0 g
  1008. LDA #$23- W% Q" g: r, n# k
  1009. STA $BB
    7 x; K+ g8 t  ]
  1010. 7 X, n$ `, t  y* h
  1011. 6 Z  G( k% p' ^
  1012. MENU_PAGE:+ L& ]- K2 U) D0 m/ z9 X- e+ L
  1013. JSR PPUADDR_PROCESS
    2 j3 _& f0 h3 W1 R4 g2 v
  1014. LDA MENU_PAGE_STRING,X) l5 h: {0 A8 a7 z+ h/ w; ]" Q
  1015. STA $2007$ q9 p. u6 ~6 }1 @* m5 @1 Z5 i9 x
  1016. LDA #$00
    5 q! H5 ~8 z: W' Q& `: x
  1017. STA $2000
    ' Q2 X! V- {7 o- [' h. G! |3 B
  1018. INC $BA9 H3 P% h* J- M. p. W
  1019. INX9 S- L$ q( i8 c# Z9 r" B' O
  1020. CPX #$0B
    ' }. W7 X+ M, V7 x! x
  1021. BCC MENU_PAGE1 H' P0 A" }9 w. ~% s0 ]3 P' `/ i
  1022. LDA $07AA
      [" e2 @9 i/ T+ n/ s$ m- M5 y
  1023. CLC
    : z/ n6 d; e9 i& e
  1024. ADC #$82% u! O" {/ P! D3 R0 \* L! ^" c0 Q
  1025. STA $2007
    ; d6 Y9 d- W$ x9 X
  1026. LDA #$00
    - M$ S% j9 u2 x! A
  1027. STA $2000
    / D3 G! M1 a& {# t. ~) v2 W2 G
  1028. RTS
    1 ~. T* u3 Z5 p. o3 l

  1029. $ Z$ F  \7 I: l& \

  1030. 8 H/ d! ~2 X' \/ N, K2 F4 k# l
  1031. SKINGE_STRING:3 a3 |5 w/ H/ }
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80) p4 X( V, ~# Y7 T! \8 V

  1033. " h6 l. V- K  [" K" k
  1034. SKINGE_WRITE:- {& ~4 G7 E% @. T+ O' b
  1035. LDX #$008 {! |6 j5 r. n9 Z
  1036. SKINGE:$ p# T0 X( m. o* f+ T
  1037. JSR PPUADDR_PROCESS
    8 ]& y' M, W- F5 k9 L6 o- x
  1038. LDA SKINGE_STRING,X
      h; k/ _4 Y' G" Z) J
  1039. STA $2007" N3 g6 l1 x$ `8 R: N# \7 x
  1040. LDA #$00
    + A' s! o% J+ e5 m* v  Z6 E
  1041. STA $2000
    7 I1 G7 n/ h+ n9 [2 U  p
  1042. INC $BA
    4 `; l! f* h; l4 U$ S4 J( V
  1043. INX
    1 a! U$ l4 u" M1 e- O6 p
  1044. CPX #$07# v5 a' o0 V& H/ j! E
  1045. BCC SKINGE
    9 _) c; F, U! T& s
  1046. RTS
    & D2 Z9 |3 @) c* O# Y& P! F

  1047. 1 h) ~0 |$ @- V; n1 f2 W
  1048. SKINGE_PPU:
    ! `2 J$ e) ?0 e2 a- V
  1049. LDX #$00
    ) q2 j- t; z) G6 h: P
  1050. LDA #$A2+ j9 b' k. m3 _7 H
  1051. STA $BA9 f5 ?# c( R; W/ P4 _, g
  1052. LDA #$217 i7 ~( F& H7 J) C% q& k) w
  1053. STA $BB
    / i: s' u. w$ E# J) W

  1054. ; m3 t9 L8 t2 ^! ^5 }5 Q: k

  1055. 9 l) z7 _# G7 c0 W# v  ]
  1056. JSR DN_PPU# A/ C" A9 I5 c  D
  1057. JSR SKINGE_WRITE% d% s  n' @4 t+ {6 c! E
  1058. LDX #$00
    0 a5 v/ g2 \* n5 p5 |
  1059. LDA $07A2& ~1 d( v4 Q1 y
  1060. AND #$02$ b. z6 |0 z8 p* @* ?- R+ K2 Z& n
  1061. JSR ON_OFF_PPU
    ' \- J5 I$ ^* B
  1062. LDX #$00
    ( U$ D/ i* V7 ]# C' W
  1063. LDA #$B1
    # R; C  r; ~  `$ e3 ]! T
  1064. STA $BA% ?5 U+ q; y7 g* \4 w
  1065. LDA #$21
    : n" z3 c4 h/ v4 |8 y" O# F+ a
  1066. STA $BB
    5 r% n' P8 K% D7 W: ?" P

  1067. ; S8 {3 G& ]0 G$ G; r
  1068. * [! E* r$ C% d# p1 Y
  1069. JSR DN_PPU
    , }" S( o& M; Q: \/ X9 }
  1070. JSR SKINGE_WRITE2 {* W0 x* W0 F
  1071. LDX #$00  l5 p  z/ W' _1 P; j) u# S
  1072. LDA $07A3& m" a/ l, S2 u9 D' `: n+ x
  1073. AND #$027 p& w  `6 d. z8 f0 F- T
  1074. JSR ON_OFF_PPU. q# N* E5 k# M2 G7 }
  1075. RTS% D- B* [! o! `( `& [; \
  1076. $ C* c4 n4 B: b& h6 V% R
  1077. BULMIX_STRING:- ~; p+ b5 h6 k/ h  K4 Y$ q8 {* `
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$803 a4 H+ x$ e& x1 {4 {
  1079. + x+ r' Z7 ]  S9 ]6 ^1 _4 J3 Z2 k6 \
  1080. BULMIX_WRITE:
      i  A5 K! R5 s! q
  1081. LDX #$00
    ) P% s5 C1 H7 h. o5 c
  1082. BULMIX:7 L' G. l+ j6 S1 p- |+ D  ^
  1083. JSR PPUADDR_PROCESS
    1 L  ~/ r3 }5 a" F
  1084. LDA BULMIX_STRING,X
    1 g* v8 i% d8 D% k" Q7 u
  1085. STA $2007
    * b0 d" ~, Z! x. J6 a
  1086. LDA #$00& A) ?  i+ I7 C$ D! B9 r5 o5 N2 R
  1087. STA $2000: p( J/ E. |% z5 T/ T
  1088. INC $BA' ]& A: C7 i4 R- G- M# H0 I5 P
  1089. INX
    / i( f3 z: V8 k1 V
  1090. CPX #$07: O  @& w! w4 |/ [9 b
  1091. BCC BULMIX7 ?  U& |6 F6 e( z/ W
  1092. RTS
    8 b9 y- }# l' y8 C/ J9 r

  1093. 6 J8 h( C3 U( ~$ a
  1094. BULMIX_PPU:3 R' |. o0 _! Q. v' D
  1095. LDX #$00/ d1 l' i% }5 v5 D6 Y
  1096. LDA #$E23 r& l! e5 |: \- D8 X
  1097. STA $BA+ D+ u( R: z" c( b) P' Z$ B7 [
  1098. LDA #$21) ?. R7 i, Q7 b+ ?9 B4 M7 {0 t3 h
  1099. STA $BB
    1 e; G9 o, f, w

  1100. 1 v: E( v1 k' I# {

  1101. 8 J, c' u% F5 h) H: Y7 }( ^
  1102. JSR LF_PPU7 `1 ~) F% z; ]% i1 J
  1103. JSR BULMIX_WRITE
    1 v- ^( R0 t% I- l4 f
  1104. LDX #$00# L, R% c' g$ W# c& u, S
  1105. LDA $07A2+ I$ w% C; p) @/ X( t5 X
  1106. AND #$04% `3 U8 C+ S1 I; t6 R7 Q
  1107. JSR ON_OFF_PPU
    * x* A+ V2 R5 j
  1108. LDX #$00
    9 k* C3 O0 W5 \, T) n8 Z
  1109. LDA #$F1  F4 {6 o; [+ y# w+ D4 Y* E& `1 D
  1110. STA $BA7 W4 @$ z, I- o  x8 p. x. {
  1111. LDA #$21# c: P# |' T# S5 S# T, c
  1112. STA $BB% N/ w6 ^3 [8 ^' {
  1113. % n4 g3 T/ X% [! _; T

  1114. # ~* o  [0 M4 U5 F
  1115. JSR LF_PPU% N& t) K6 T; H0 C4 n) d6 q/ ]
  1116. JSR BULMIX_WRITE: ]3 C1 b& h' ]! k$ z5 G) _
  1117. LDX #$00
    7 t1 r( `# S, s; U" c* L
  1118. LDA $07A3- u& [7 v* Z0 X: G
  1119. AND #$04
    9 m" k" H* a% Q+ S) ]$ R
  1120. JSR ON_OFF_PPU
    6 ?1 @' \4 M: j# \2 J3 w$ M
  1121. RTS4 X; R. A0 p+ K7 a, ~' L
  1122. $ a* i; S3 s+ A) T+ r
  1123. ENELOC_STRING:
    ) E  h" a! v( Z% t& M, S- X
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    ! P0 A) W7 S& o7 Q* ?( Z+ v0 D" v
  1125. ' K0 T, N: c8 e2 V* u* a9 {" U4 O/ _
  1126. ENELOC_WRITE:
    : c. B3 H5 U1 v( ], z+ u, ]' v
  1127. LDX #$003 |4 T$ E; T9 r2 v% b
  1128. ENELOC:$ ^# [8 `% p: S3 O
  1129. JSR PPUADDR_PROCESS) C, Q! E6 P# U
  1130. LDA ENELOC_STRING,X
    1 _+ A7 k% Z6 F4 D; a. m+ K
  1131. STA $2007
    : c$ e9 D0 `; @" n, ~  R+ y4 T/ |
  1132. LDA #$008 ~) M$ E1 E, z0 W
  1133. STA $2000
    + ~( w* F5 a" p( E, f7 B
  1134. INC $BA: G/ f& z+ _3 e4 M  o- P0 o4 G9 h" h
  1135. INX! H6 j; ?% Q+ z! n' [% Z
  1136. CPX #$07
    4 A: F9 s8 B( |. S# N* }2 C7 m
  1137. BCC ENELOC
    ) F: u+ e) J) Z* U% f) `4 a: o( n
  1138. RTS
    + C3 ?) H0 V; k
  1139. ! \4 ~  v3 B$ k5 G8 @" S$ h! R: T9 w' r
  1140. ENELOC_PPU:) I5 ]) l  t2 S  \- m) B
  1141. LDX #$000 \2 Y& d6 j3 @7 `
  1142. LDA #$22
    : n& ^/ S6 r7 U  G. E: a# f1 j1 q
  1143. STA $BA2 F; x- S! A! `4 {$ G8 Z% D
  1144. LDA #$22
    ; V/ R: p. B' \8 g
  1145. STA $BB  U' m' C5 t1 o9 v5 i- {0 y/ n* x

  1146. 8 i1 f* d% C" A6 E  A  Q

  1147. . t5 c, e/ j$ l9 E
  1148. JSR RG_PPU
    8 J4 Q: t, k; Y7 E
  1149. JSR ENELOC_WRITE
    7 o! G4 G1 J$ C+ L5 a$ k
  1150. LDX #$00
    9 b0 g; n' h6 ~* [3 g& C8 d
  1151. LDA $07A2" Q6 q$ R, E# s6 j/ r- @0 V
  1152. AND #$08
    + A, W( G( ^& B3 h) r
  1153. JSR ON_OFF_PPU
    ! n: k2 i3 {" ^
  1154. LDX #$009 Y2 ]8 R# D2 v/ R. r
  1155. LDA #$31, B2 T/ G$ d) r! ?3 b
  1156. STA $BA3 k. q, P5 X( e0 N- v
  1157. LDA #$22
    4 U, E; K3 ]* ^3 `* s4 O
  1158. STA $BB6 x$ ^5 p- ]- s# W+ g
  1159. 6 Q: K: X# C4 V- y7 x" ]. _8 n
  1160. * q$ E2 j( @4 I1 j; g, p
  1161. JSR RG_PPU
    ' k# s4 m* E2 N* Z; T! d9 M  Q1 }
  1162. JSR ENELOC_WRITE6 F1 ^8 v" P; A2 ~8 ^3 Q- h8 W; p
  1163. LDX #$00
    . |+ ~; F/ L6 ~2 u" N
  1164. LDA $07A3
    + ]- j( M- {; F' Q0 v( U% E7 n# t
  1165. AND #$089 V8 c1 C# N  @2 D: b6 L
  1166. JSR ON_OFF_PPU2 `1 N5 I) G: _
  1167. RTS
    # D* w: k% ]# f5 U$ j$ @3 x) j
  1168. ' J% s5 k6 {2 H$ q# a4 k! k
  1169. FOCFUL_STRING:
    * V2 D# A' S' y
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    + G/ n+ b5 m& w

  1171. & v/ s5 ~! Q5 ~5 m
  1172. 8 |: A* X7 i# \1 g
  1173. FOCFUL_WRITE:
    3 w4 v: c2 D0 K" g
  1174. LDX #$00' Z- G* Y4 u# v- F) \/ h
  1175. FOCFUL:  m) T2 e, }7 n1 w$ O. A5 L: p
  1176. JSR PPUADDR_PROCESS$ D. G3 P  [- |
  1177. LDA FOCFUL_STRING,X
    / e' |% i0 ]& y1 S' }3 x) O
  1178. STA $2007
    5 [0 E+ V2 M* t
  1179. LDA #$00
    & G1 ?2 ]8 W& k& H" O
  1180. STA $2000: J$ c1 z' R7 x
  1181. INC $BA
    + C3 w# w, K) M4 E- s
  1182. INX
    1 C, Q' n" `# p5 q4 G! n% H! r
  1183. CPX #$07
    6 b7 j6 ?# C! s- o8 \# `
  1184. BCC FOCFUL
    0 M7 }, @* T$ |- g, s+ \0 v
  1185. RTS8 k$ H) b6 s9 ^/ @2 K' f
  1186. 4 z7 s$ N) a1 t& {: A
  1187. FOCFUL_PPU:/ \( ]! u  V( V, A
  1188. LDX #$00
    6 Y/ G- F6 [: X0 x! y% i
  1189. LDA #$623 @+ g! Y/ h4 u+ I" \
  1190. STA $BA
    ! h) z. y  k' T* q/ g( \3 }
  1191. LDA #$22
    2 }( T% P6 \, j" M& {0 w# c
  1192. STA $BB3 v1 `4 Z( A: U: i2 ?; L

  1193. - J5 z/ @* C1 c# L3 D
  1194. 5 d, ^; B: G0 Z0 D6 {: O5 @
  1195. JSR B_PPU
    # K5 n+ _2 G+ Q4 e( u8 ~
  1196. JSR FOCFUL_WRITE* r3 q0 u- {, C. x" \
  1197. LDX #$000 F/ q& a8 T! D7 M( }
  1198. LDA $07A2
    1 C4 i8 E7 m5 y9 B: w- B2 s) U8 U
  1199. AND #$10
    ( I  Z# @" S% i4 ?
  1200. JSR ON_OFF_PPU
    ; Q) q$ c; ~! ]: D) f+ t1 q# a
  1201. LDX #$00
    2 J$ Y! i- J: u
  1202. LDA #$71; v. C. |6 P/ x$ V
  1203. STA $BA
    ( }. A3 p7 u0 c1 `$ y
  1204. LDA #$229 k6 j; C8 A+ w  ?  d
  1205. STA $BB& Z/ Z# f7 S6 W- `+ J
  1206. & a! q. h. F! H9 \4 Y! y5 s
  1207. 2 P, I; f; q7 Q$ L4 }/ }; H- A( n
  1208. JSR B_PPU
    5 \% ~& I, O3 ^9 V5 n0 H- E$ `
  1209. JSR FOCFUL_WRITE2 T1 o/ ^0 U  E' w4 r# X
  1210. LDX #$00
    ! H7 G* Y4 D! h
  1211. LDA $07A3$ j- S7 l# c: ~: S
  1212. AND #$10
    0 f& O: T( F/ C' S% a' M
  1213. JSR ON_OFF_PPU
    8 H6 A+ X2 `" Z9 Q7 g
  1214. RTS
    & z+ T* r; g! B0 m# I: b* c
  1215. , l3 ~' k, }( M" N
  1216. BULCON_STRING:
    $ V8 J/ k. [5 m8 P# }
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$809 Y5 l# w8 `' p

  1218. & ?3 T3 l: {/ q, g  B# a. e

  1219. 7 h( H. M& i8 L2 g
  1220. BULCON_WRITE:" f9 L" H. A4 t7 |
  1221. LDX #$00
    # o% g1 U+ l9 y* a
  1222. BULCON:+ Z$ m+ _4 U5 |6 U
  1223. JSR PPUADDR_PROCESS
    : _+ Z% Z& k* x7 a. ~6 W9 d
  1224. LDA BULCON_STRING,X( p$ ~9 ^8 ?( P+ L7 p  e- M
  1225. STA $2007
    $ V$ q! P- f  a; k: V' M9 T
  1226. LDA #$002 V" r4 b& @, O, p
  1227. STA $2000  Y$ M; t6 y  F: K( h0 O
  1228. INC $BA$ u0 A6 K. N- P9 k
  1229. INX
    + o' o/ M0 }& r! n# g8 B
  1230. CPX #$07
    6 Q0 |2 ^& Q4 _! z  a
  1231. BCC BULCON5 U5 |7 Z0 N7 M9 ]" w0 _) m% M- c
  1232. RTS
    ! x  N6 x& F  P, N5 T  ^
  1233. 6 I* \: [: D. [( D3 a
  1234. BULCON_PPU:
    4 _) |' Z& Q1 q4 k( W
  1235. LDX #$005 u% A% L5 m% C0 U
  1236. LDA #$62( z6 @, C% @& F  D
  1237. STA $BA
    , W7 g; d* m5 q* _" ~
  1238. LDA #$211 A, G" D- h- a- E" z8 t+ c
  1239. STA $BB" n- s! j  r$ E/ R9 L* p& D: v0 k

  1240. & E' ?& C: v* t+ ?( o6 ~* W- T( i
  1241. + W. d9 W6 O( P0 R1 f, Z; x1 ?! E
  1242. JSR UP_PPU6 d2 _) J5 t/ `) P
  1243. JSR BULCON_WRITE6 |% {8 @9 E" e" v  S
  1244. LDX #$00# F! G. ^2 T% L# l( g5 c* Q9 @$ m
  1245. LDA $07A4
    1 X- E$ _1 k! J, f
  1246. AND #$08
      t. j2 i5 d* q- b
  1247. JSR ON_OFF_PPU8 K) ]* _+ H0 N# t+ U% l) F
  1248. LDX #$000 i4 T- X- l: B. [* h
  1249. LDA #$71
    ) L7 V! ?+ N% S; O' B# ~
  1250. STA $BA
    8 x# Y- `; Z, _6 P5 m* j
  1251. LDA #$21# K. Q7 i8 w! F, Q" [- @% ^3 z- D
  1252. STA $BB& D; o+ X. }; e

  1253. ' l0 ?& G9 U/ E' C( m7 M

  1254. 6 J+ W( T) v; o. F: W
  1255. JSR UP_PPU2 H) _# W- a7 ]
  1256. JSR BULCON_WRITE+ Q: B+ C, X; D4 d
  1257. LDX #$00& f1 k4 d2 `  z& t
  1258. LDA $07A5' Y; W, x. c) I0 ]
  1259. AND #$08
    7 d+ C; @% b  v" S% L
  1260. JSR ON_OFF_PPU
    : B/ t4 c( C7 v3 v# Q+ q7 F
  1261. RTS( i0 o1 p: f  R* J% v* @( ?/ K

  1262. % C8 }) B2 I. d$ H; r# K1 |+ L
  1263. SPEBUL_STRING:
    # P' W- S5 U9 @1 `. h
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80* e- u4 p9 _% \/ z
  1265. 5 k9 z; u; C9 j4 }# A1 _

  1266. # h* r" m, a' T9 h! V3 Z
  1267. SPEBUL_WRITE:
    6 b! S* Y. Y" o1 s4 [
  1268. LDX #$00+ {6 V0 v( Q& r( }: K# ]
  1269. SPEBUL:
    ! g, X& b* v" Z1 n7 A
  1270. JSR PPUADDR_PROCESS; x4 e  l4 z( v0 n  @) w2 Z
  1271. LDA SPEBUL_STRING,X
    $ a$ H, o9 ~9 u5 ^$ P
  1272. STA $2007
    ' M3 V3 I( p; d( G# G
  1273. LDA #$00
    7 t3 k3 k) K4 b3 u" `' ?
  1274. STA $20001 p8 v' v- T: Q! n, E! b- K
  1275. INC $BA
    , \: ^3 |1 p. e( o- H1 B
  1276. INX
    ) @1 b$ ^( y8 n) N+ l, y) c: B6 W+ N
  1277. CPX #$07
    . K+ {) I7 L  i
  1278. BCC SPEBUL
    ( U5 U. ^/ A' o  ~
  1279. RTS( ?& M. _9 Z# k& d
  1280. 9 W6 n2 p/ H5 ~2 ?
  1281. SPEBUL_PPU:4 [# Y( O5 Y$ Z. j0 J4 \$ g
  1282. LDX #$00# v0 o* Z* q" @8 G
  1283. LDA #$A2) a; d# y+ y  N9 F
  1284. STA $BA$ \; \# Y; Q% P
  1285. LDA #$21/ n; |3 e; i  S/ X
  1286. STA $BB' M1 @4 Z3 f( @2 C5 D
  1287. 0 i) g; M7 w) J# ?

  1288. 4 j4 c4 H( k5 r
  1289. JSR DN_PPU
    % b0 R: g5 m" \: U5 u
  1290. JSR SPEBUL_WRITE
    ! w& K+ ?/ p( {0 @' }; H. M/ t
  1291. LDX #$00
    & ]7 N8 l; k1 \' j1 H. x2 [
  1292. LDA $07A4
    % r( W1 N6 k1 O* Z
  1293. AND #$02
    1 }; b. N" F: j. I9 q5 H7 d* j
  1294. JSR ON_OFF_PPU
    8 _+ R2 a5 r) L4 l! |
  1295. LDX #$00
    + \; k. _8 T" i9 m% z4 M" ?
  1296. LDA #$B1
    3 b( {" \: p/ b8 }
  1297. STA $BA% D" b. S* @: J7 i. B& S$ h! ]
  1298. LDA #$215 k; ^& m  K: V3 x) ]
  1299. STA $BB
      r( p5 o# P" e  g" B, c
  1300. * f* S6 e& m* e; }3 x* w
  1301. . h+ [0 |8 L0 l( D) Q- ]( O
  1302. JSR DN_PPU
    2 h5 h, j, }- `; k
  1303. JSR SPEBUL_WRITE3 h: h/ y( r( B  [
  1304. LDX #$008 m. B% W6 i* T% r( n. r
  1305. LDA $07A5
    " j( v1 l+ x/ e3 q1 p1 b" t# d* j
  1306. AND #$02
    * f6 X' \. Y$ G2 c; @; S5 d
  1307. JSR ON_OFF_PPU: ?: [+ K8 F, @! q
  1308. RTS* Y' X! D$ k2 v/ ]5 D1 u( j

  1309. 1 V. |- M# y4 b9 B
  1310. .ORG $A500; F; i$ [9 h- s" ]6 Z$ D1 c
  1311. CLEALL_STRING:
    " D5 Z' _# k8 @8 `/ }
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    3 C8 g4 V1 ^' q; E9 V
  1313.   T! j  j+ B& O' q
  1314. + }1 O6 j! I2 a0 |* S3 v
  1315. CLEALL_WRITE:
    7 J/ C0 E5 \+ @9 g1 a6 I& D
  1316. LDX #$00
    4 `, G2 m6 q" {  \
  1317. CLEALL:2 V+ O4 {- A. H- X+ G; w
  1318. JSR PPUADDR_PROCESS# |2 q; v% T! K! e0 `9 e, M3 `9 o
  1319. LDA CLEALL_STRING,X
    ) @1 |+ i0 W, Y5 v
  1320. STA $2007
      {" q2 \; M9 ?) a' g: x
  1321. LDA #$00  A' \$ v! z. t4 p$ T4 t. }
  1322. STA $20006 Y" V! p. `$ l9 y' J
  1323. INC $BA
    * i* P) D0 f: l3 L" X
  1324. INX
    & b% `- ~. T+ \
  1325. CPX #$07# H1 m8 O2 Z5 N7 q, _% z
  1326. BCC CLEALL, E& [1 r$ f, @, z) K8 ]
  1327. RTS- f; D& a, _# j) P" Y

  1328. , [: m, A  Z7 b9 D7 Q
  1329. CLEALL_PPU:  H: M; c% }4 [& A& `' s6 L
  1330. LDX #$00$ ^1 s1 W8 H1 m5 W4 O) \
  1331. LDA #$E24 p1 U$ k4 I' k4 H& P7 H5 F
  1332. STA $BA6 G7 L8 ]& b5 e4 |2 k
  1333. LDA #$21# @5 z( ~1 W* j, ]) X% B! G7 `
  1334. STA $BB
    & _! e  ?0 a7 w% G% Q/ w
  1335. 0 Z, V2 c/ I* f4 i
  1336. 0 I4 k2 d1 U& [) w, K3 O2 E# O) H
  1337. JSR LF_PPU
    , r  F; s" y2 w  H3 u2 T
  1338. JSR CLEALL_WRITE
    ) m7 v1 s2 ^$ y5 C. P
  1339. LDX #$00
    3 g  H0 b3 G6 |: H7 f# I
  1340. LDA $07A4
    6 G$ s' A* }% ?" w) C3 `
  1341. AND #$04
    6 N- r/ t( |$ \$ i9 H5 S1 r+ l: `
  1342. JSR ON_OFF_PPU
    ' U( S. }  |2 e6 c4 R5 s& ^" x
  1343. LDX #$00
    + D" o' t9 b3 I9 h- X, k5 S+ V4 K
  1344. LDA #$F1
    & d* e: W% ~$ e* A# h2 j1 s' N
  1345. STA $BA+ E$ t; j3 ^: \' X7 Z! S0 p
  1346. LDA #$21& `4 B* ~6 f+ I; O* g, n5 s5 p2 J/ h
  1347. STA $BB0 Q9 _( a9 P5 }4 _# P, h1 }; o  Y. J
  1348. 0 F1 k) h+ x+ B2 K

  1349. 2 D4 S0 [7 Y9 ]) v' ]3 N' N3 K3 H& q
  1350. JSR LF_PPU. G' P3 ]6 d1 x; g+ g# w, [
  1351. JSR CLEALL_WRITE
    + |. x2 j' E( W& ~# ?
  1352. LDX #$00
    1 k9 k( b+ U8 _% Y) b6 J' Z6 h
  1353. LDA $07A5+ p5 N# Y  \. U% B" l+ O
  1354. AND #$04- q2 c+ ~: L% U' K' ?0 t; \2 q! E
  1355. JSR ON_OFF_PPU! G' U. Y/ h1 ?, @. H0 W5 P
  1356. RTS. U1 j1 Y" O8 v  g2 l5 b
  1357. ' X9 _# q6 A$ E$ u# H( u# ]0 V
  1358. HARDMODE_STRING:
    $ L# d& q) c) i9 l* U/ o
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    ; Z0 ^# C+ ]' j- y- S& _  T7 }
  1360. 2 R  R( K9 g5 X

  1361. 2 _$ T0 s( S9 S- {+ \1 T
  1362. HARDMODE_WRITE:
    ; ^6 {) B' u9 O# y+ X3 s$ W
  1363. LDX #$00
    " d$ t9 I/ T( Z/ J
  1364. HARDMODE:, a' u( g$ r! G5 r4 {' w
  1365. JSR PPUADDR_PROCESS  p' a1 x1 D. c9 _6 @, m; Z* P
  1366. LDA HARDMODE_STRING,X9 ]# }/ Q% w, ^/ l7 V: m
  1367. STA $2007
    0 ]% v" \5 P" o" y- J( E, k
  1368. LDA #$007 F8 H4 V5 q# p2 F
  1369. STA $2000
    8 ^2 N3 \. M% X* |
  1370. INC $BA, p* @" _1 {" ]
  1371. INX
    - p3 x- j7 e) g0 e. i
  1372. CPX #$07
    : z1 P1 G& X& \1 M; I4 Q- U
  1373. BCC HARDMODE- {6 D- |8 c8 r1 N$ c/ n3 ?
  1374. RTS
    1 S- K3 x  c* w

  1375.   x$ U' f: Q& S  c- ]& W* x% y  ?
  1376. HARDMODE_PPU:
    5 `, W# u4 s; G1 `, h
  1377. LDX #$00
    & @. Q# [$ J" N  {9 z
  1378. LDA #$221 ]! L* f/ f! P) Z/ J( V7 i
  1379. STA $BA
      v& A+ f" O8 E' h
  1380. LDA #$22# _: o0 K  F0 P: t4 N
  1381. STA $BB
    ( V" C- T- i! \, |, l% H
  1382. JSR RG_PPU) g/ \9 s# ]6 u6 g! b& _6 a
  1383. JSR HARDMODE_WRITE4 y, E; e  R% n5 {% v2 I; P$ Z
  1384. LDX #$00; p2 V1 b' g; j6 P: Y/ L
  1385. LDA $07A4. h! y! W4 o* a+ }
  1386. AND #$01( ^3 C% O4 C7 r+ I3 J' I; n
  1387. JSR ON_OFF_PPU
    5 d, d  X& H6 q. \( j2 Q
  1388. LDX #$00( S/ u8 V8 a6 s% {
  1389. LDA #$31
    0 s! `- H3 U! T1 q9 X7 r% G& _; F
  1390. STA $BA8 y" ^) O' Z5 w& C9 z
  1391. LDA #$225 _$ N- H4 @+ l& P! D* j2 T
  1392. STA $BB
    2 Y5 r8 X/ K# z! |
  1393. ( T) W4 Z: p0 o# E/ }1 X$ d

  1394. 9 S' C: q+ l* c/ X
  1395. JSR RG_PPU) l* L4 G6 [: o9 V( L# }( o! _; S
  1396. JSR HARDMODE_WRITE9 y9 {" [! S( W  h  x
  1397. LDX #$002 A( D, ^9 d& F  Z7 V/ u% A
  1398. LDA $07A5
    ) H$ }5 E. V- }* O7 L# ?, [
  1399. AND #$01" o% {. r3 ]4 ~4 p8 S
  1400. JSR ON_OFF_PPU8 G% R2 I4 O1 w$ _" f, k3 K, \: U
  1401. RTS
    " k" D, E+ \. u  p& c, M  V

  1402. 9 ?: [! a, L2 A1 ^0 b
  1403. B_TO_JMPSTG_STRING:
    * k% o8 I  r; C& d2 q  t0 Q
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    3 K* ^' W- [: N4 m8 h: M# x

  1405. 4 E! o: W" D5 b

  1406. 8 J2 R/ G! _4 |: G2 F9 ^
  1407. B_TO_JMPSTG_WRITE:" K9 f5 l  \+ ?) B
  1408. LDX #$00
    1 M# `1 ?8 w# ^4 |
  1409. B_TO_JMPSTG:: ?, e* l, u( h0 m6 i
  1410. JSR PPUADDR_PROCESS
    9 o* H$ U4 t7 W' e8 n5 N
  1411. LDA B_TO_JMPSTG_STRING,X" M0 ]4 `. K: r, ~/ x- c
  1412. STA $2007
    * l2 \" T' y2 E5 P5 s2 @
  1413. LDA #$00
    4 G5 i  Y3 s2 F: M" U* @
  1414. STA $2000! F: L4 H) ]( w( N# J
  1415. INC $BA7 a7 {7 p0 p3 ?2 {1 {+ m+ N) q
  1416. INX
    " `* S8 ]; ]. Z! s+ J$ W7 v+ @) }
  1417. CPX #$0D6 f9 w2 o' W8 H" f' N4 D
  1418. BCC B_TO_JMPSTG, \. ~" W. s" }
  1419. LDX #$00
    0 G8 i- r& t! K3 o9 R
  1420. LDA $7FE0
    * l& F6 U4 }- z. |5 z
  1421. JSR ON_OFF_PPU* h# ~0 y4 z8 s" ~
  1422. RTS
    ' `+ B4 D2 s3 A& H: a- D$ H
  1423. " y. |+ L8 n8 q, c: e0 D4 i( l
  1424. B_TO_JMPSTG_PPU:; p5 @8 z8 T0 e  ]* o. Z% z
  1425. LDX #$00+ P, z* K# N% Y( x9 f7 J& E, Z$ @
  1426. LDA #$685 H# R3 r/ t$ N, i9 T9 h! {
  1427. STA $BA; u; r( q) x5 Z, f6 y) C! Y8 F
  1428. LDA #$22
    % C% _- @; O) p
  1429. STA $BB+ k  I, y) q+ d1 \& [
  1430. JSR B_TO_JMPSTG_WRITE
    5 x  P. a5 q& @9 ?  |
  1431. RTS9 \1 f+ h" D, x/ R

  1432. 0 F4 c2 p- e" t7 t) @

  1433. - f: |3 K0 b' \5 i2 q- x
  1434. A_TO_PLAMOD_STRING:
    + O5 |& ~& M/ }$ |3 d
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80; }% d' S3 h# X, O% V& b) k. j5 Z
  1436. , b4 N  h7 W! w
  1437. " r# K+ d. j3 |" @' T
  1438. A_TO_PLAMOD_WRITE:" D) A) ]9 U9 @
  1439. LDX #$00
    4 d8 [8 q% @1 `% F* k( H
  1440. A_TO_PLAMOD:
    & b. x7 h, A' B4 {- S- q! W2 Y: D' _
  1441. JSR PPUADDR_PROCESS; a5 S. Y, [; x% \! M
  1442. LDA A_TO_PLAMOD_STRING,X8 N1 l; G1 u, R% q9 k. s
  1443. STA $20072 E# b7 X, E" T& L' }  B. x( }
  1444. LDA #$00  N  \  ]5 H6 p
  1445. STA $20009 ^+ L" P3 z& k) b9 m
  1446. INC $BA
    6 K0 V/ X% ^% v/ T
  1447. INX) l! J0 K9 g; \! |; V0 a" k  ?
  1448. CPX #$0D
    1 `9 |8 E7 h4 t$ O
  1449. BCC A_TO_PLAMOD; B3 _5 Z% T9 `% K. |  o
  1450. LDX #$00. \" m  {6 Z3 D8 V9 B5 y& d' S
  1451. LDA $39; S; ^& J# f8 Y' T
  1452. JSR ONE_TWO_PPU
    - U  x/ n) y7 E6 M* E
  1453. RTS
    ( @3 T) W1 ^6 {5 r9 U

  1454. 2 S* Q# H" P+ V+ a- l
  1455. A_TO_PLAMOD_PPU:
    + e* C# E' f- A: ]  ~
  1456. LDX #$00
    9 I  x$ f& Y& {) Y' d, Y  w* P2 M. i
  1457. LDA #$A8; x, q$ q1 e- a! J; Y' ?# z! |! t: M* N
  1458. STA $BA( C/ [8 a! p6 ^1 k2 c1 l
  1459. LDA #$22
    # a; a( ^  g8 g  J0 u; y
  1460. STA $BB9 @, k7 {: n: Y, x6 B
  1461. JSR A_TO_PLAMOD_WRITE* a/ {- C! L# G0 Q) A5 e
  1462. RTS
    5 W, t9 `+ e& c; R3 _( A, S" l3 m

  1463. 5 J# p) m- a/ l8 p) Q
  1464. MOVSPE_STRING:
    6 m8 [2 }& A* D
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80! }7 w- Y$ F. W  O+ b1 S
  1466. / }: e6 ~7 U; s5 |2 ]$ @+ e

  1467.   {0 _% f# h( x# q  M
  1468. MOVSPE_WRITE:6 |9 s. r" ~- B
  1469. LDX #$00' S1 o- k; B$ D. K( l1 _
  1470. MOVSPE:
    / i! F" m9 R) t- [6 b
  1471. JSR PPUADDR_PROCESS
    * a9 o. Q, U$ _$ C7 J
  1472. LDA MOVSPE_STRING,X
      ?- x' _1 p+ b: u  n) I& `% y
  1473. STA $20071 b5 C% r2 Y2 a- m* Y
  1474. LDA #$00+ D/ i7 |5 ~* L& ^* B3 w. }/ O
  1475. STA $20002 x/ |" M  d! i; m4 Q1 O8 r
  1476. INC $BA
    $ s# }4 _% y3 C8 a
  1477. INX9 J$ K+ H- y! I1 A
  1478. CPX #$07: [! V# u7 H6 J( N+ u% B
  1479. BCC MOVSPE
    * a) }+ t- U) Q0 @0 `. U$ b
  1480. RTS* b( r6 d* v7 N1 i' u9 h
  1481. / V' P5 h: M. s* M
  1482. MOVSPE_PPU:
    * B$ K1 B& M; w% g+ R4 c8 f' ^
  1483. LDX #$00$ C& w/ d/ }1 u( A+ _  z+ N
  1484. LDA #$69, l% B- z& O- V$ l. u
  1485. STA $BA# u. y) ?  M  E+ D. V
  1486. LDA #$21: L3 u+ F$ Z2 U8 o
  1487. STA $BB+ i* l! o6 a9 n5 K# v6 R

  1488. ! k/ y: Y: B8 \

  1489. : E2 f! w$ X7 e: L% ?/ H9 Q: a/ r
  1490. JSR UP_PPU
    2 j+ K' U. f5 B
  1491. JSR MOVSPE_WRITE
    ) }9 [6 f4 Q9 Z
  1492. LDX #$005 [9 ]( h5 O5 v
  1493. LDA $079F$ Q+ x% C) ?* M8 E2 I2 W
  1494. AND #$089 @9 b0 S, p# s5 v) |% V+ K
  1495. JSR ON_OFF_PPU! }% i! A, [: P! |! B
  1496. LDA #$80
    / R- h. O! z; n
  1497. STA $2007
    9 Q/ ^5 ]. k& ~. m" j: w1 Y
  1498. RTS" M# }* S: P4 I

  1499. * d: ]2 a. o( C8 z( e
  1500.   1 I- w8 i! _5 [
  1501. UNLJMP_STRING:
    2 k/ x1 `+ `1 K- `- A% q
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$804 m- v( P( F6 y2 ^
  1503. 2 N5 O* D: `  w, @  t$ c. V) q

  1504. / i) q; n$ W$ F$ m
  1505. UNLJMP_WRITE:
    5 `0 I7 x# z2 n
  1506. LDX #$00
      c) L  ~9 X) v, |1 i+ x) X5 K8 I
  1507. UNLJMP:# J7 ~# L+ T( v- ]- B+ ^2 p
  1508. JSR PPUADDR_PROCESS
    ) w; @# z. O+ w: M* W
  1509. LDA UNLJMP_STRING,X/ l8 o5 j$ b- W4 B( D
  1510. STA $2007
    * z6 D8 z6 |! }$ N' G- y0 n
  1511. LDA #$00
    0 |6 v% o! f4 R
  1512. STA $20002 c2 c$ A: o1 u5 z; [8 R6 a: q% z
  1513. INC $BA
    4 G1 E1 M# H5 T
  1514. INX4 O' |2 B; h' \+ I
  1515. CPX #$07
    3 J) c" Q/ |& b7 Y! y
  1516. BCC UNLJMP
    3 S# x# y1 d4 e1 U6 x4 @
  1517. RTS
    + [2 J' L6 J/ P( `
  1518. % B9 `. o/ W; `9 I: a* ?7 H
  1519. UNLJMP_PPU:
    " q' F  I9 x0 c3 J8 ?! y/ N
  1520. LDX #$00
    + W. q$ }% z9 w/ _
  1521. LDA #$A9* K5 c1 b( k% l: a, R. n
  1522. STA $BA
    6 d0 B2 X9 S1 B+ k1 A, b  b; x
  1523. LDA #$21( \( r( Q$ L1 `  I! H
  1524. STA $BB
    2 E$ F( k- @* v6 n/ o( {: b9 f' {2 J

  1525. 2 E' K* x- V; J0 }' }  K! I
  1526. ( c8 {. g- B6 m/ d2 X% V" p
  1527. JSR DN_PPU
    & X' {/ V' O1 y- H( }
  1528. JSR UNLJMP_WRITE
    : v& t! r7 H# z9 E
  1529. LDX #$00# r, M) F; O' V; h  V2 D: K' @
  1530. LDA $079F
    / h% |8 Y; }; J8 R: u' b8 G
  1531. AND #$04' d! B8 |# t0 X0 a
  1532. JSR ON_OFF_PPU
    0 s9 ]' V" X* {; W# c& j: W2 l
  1533. RTS
    , {) ^3 h# m$ [6 e

  1534. # X) r+ R* K" Q1 `2 }  b
  1535. & g; s# ~1 l% V  _  q
  1536. DESTRO_STRING:* l' `$ N1 ^: M# i% j
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80$ F8 ~$ ?! E1 |  c" \
  1538. 8 x- O' O& f& ~+ E  [* [/ e4 N

  1539. 7 d' B% m/ `( ~: O2 v
  1540. DESTRO_WRITE:+ o& P8 ^6 t$ M. v2 y% m! M5 X8 Y( n0 _
  1541. LDX #$00
    1 G" A% l, S/ m* v
  1542. DESTRO:
    ! u. ^7 M! t! a
  1543. JSR PPUADDR_PROCESS, v, H2 ~5 ~+ ~( U9 |" w: \) _
  1544. LDA DESTRO_STRING,X1 `2 B5 w" P1 L  o1 a5 `/ ]
  1545. STA $2007; d# ?. W' u+ ]4 B4 ~
  1546. LDA #$004 T+ g8 D+ l; E  C& N( l7 [
  1547. STA $2000
    5 d6 N! k5 X( C: R1 J& B
  1548. INC $BA# M' [( ~- Q8 E9 k6 i
  1549. INX" W$ ~) S; J' c$ j/ C
  1550. CPX #$07* c; `0 N: w- g0 K: W$ W3 H
  1551. BCC DESTRO; i2 I6 Z+ f; B
  1552. RTS
    $ V2 z" F6 A9 h3 @  R

  1553. 7 @1 ]8 B7 o; v7 L/ W( q# {. I$ I8 \
  1554. DESTRO_PPU:; |* n; w1 D8 u: D  C7 z4 V9 h
  1555. LDX #$00
    " [! g4 }  ~5 Y' X
  1556. LDA #$E9. |- q- M  ?8 \  r% i/ P
  1557. STA $BA! _- i! r$ t$ e; u+ m9 r
  1558. LDA #$218 Z1 j) t7 E( t0 L5 f  e  q) O
  1559. STA $BB
    % i/ }  F' f" J4 [% c! Q5 w& a
  1560. , F9 K. ]0 Q$ h0 O5 Y! G, x
  1561. % U* l- V# G5 E" h
  1562. JSR B_PPU
    ! D$ J: c/ ?% m5 c! I' G0 b6 n8 A! D
  1563. JSR DESTRO_WRITE. p. {/ w, x& m* d. N
  1564. LDX #$00
    / Z' r3 y& ^9 n7 O" h2 V; u' Q; W
  1565. LDA $079F5 h9 L* i& J) D2 c
  1566. AND #$40
    ) z& ?" x4 k+ I2 r, L4 y
  1567. JSR ON_OFF_PPU1 R, {. S* ?* @( k0 O
  1568. RTS$ _; m8 n7 w& N) n) J/ G: c

  1569. ) |4 K1 L  x0 K+ r- X. x

  1570. - D. S6 V# Z7 [' k% S. s- k  Z
  1571. EQUBUL_STRING:
    1 ^4 N1 s* H$ d6 w2 d2 ?) L
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    % H0 A0 X7 f9 O2 ^1 H
  1573. : E$ O! ?8 N+ K) a. x, m3 Y7 b
  1574. & ^8 }+ l3 K* P- F  J' q
  1575. EQUBUL_WRITE:
    $ Z& m! }* A8 o+ `9 T
  1576. LDX #$00
    6 o1 ~# r# ]; k" D
  1577. EQUBUL:
    5 d) _/ t" E: [2 r& Y' n
  1578. JSR PPUADDR_PROCESS
    / l/ g  N. }7 ^% b7 f* Y
  1579. LDA EQUBUL_STRING,X
    + K; O) p# Y2 p, X
  1580. STA $2007% t  h' `/ [. b# I% O9 |
  1581. LDA #$00
    3 x* I- C  k& G  Q$ v
  1582. STA $20003 T7 i/ Y  g9 r6 n' {, I1 Z3 h
  1583. INC $BA7 d* |; F7 Q) K' m' f
  1584. INX1 }( C; O6 a% o2 S; P& L% B* z/ L
  1585. CPX #$07  l3 j1 t" V9 I( g3 k
  1586. BCC EQUBUL5 D( z# c* K2 G
  1587. RTS
    % c* j. A" x. W6 ]
  1588. ' p( n. E8 Q( i# S  D* i4 L
  1589. EQUBUL_PPU:
    6 {8 W" l  F; V& S6 o: V. x" H
  1590. LDX #$00, n! |$ o2 z! _5 E3 U! V9 C4 o
  1591. LDA #$293 D, t7 X' D  w! H2 d) |. |
  1592. STA $BA
    8 Z  H3 ~/ l' y- \
  1593. LDA #$22
    0 {$ |+ t& y; Q6 C; g
  1594. STA $BB6 ~  W3 x4 r& |. p
  1595. ( o5 J/ u6 `. Z3 Y) s% Z

  1596. 3 l- d2 L0 m* m; m" Q/ F
  1597. JSR A_PPU/ A* l: O) j0 h& F; T- ^: B
  1598. JSR EQUBUL_WRITE
    0 B8 \( E& a" ^
  1599. LDX #$00/ ]7 _! Z8 _. m. e; i
  1600. LDA $079F3 l+ I  T+ e; p: {1 n
  1601. AND #$804 s' C( }- m% \. n) x0 ~8 j% B+ G5 J
  1602. JSR ON_OFF_PPU
    $ A2 G* {, |1 p( c
  1603. RTS. l2 S+ ]6 {' O+ ^: B2 O% i
  1604.   g) r2 \& o: @3 {' Q3 ]# F# H
  1605. . y) C+ l1 n- f

  1606. 2 _, H6 T( \) I; r& I! V
  1607. BULSEL_UP_STRING:: @0 T: K7 s4 l( D
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80* _6 y: A/ M0 [, F

  1609. * f' y0 j6 g! A" v6 ?! M& B
  1610. BULSEL_DN_STRING:+ U8 \+ e! m9 Q5 g! Y# s2 G
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80
    , g4 ^. x% X2 s
  1612.   C" r( i9 V4 \6 E* X( G+ u
  1613. BULSEL_LF_STRING:
    # _1 Y9 i# I0 Y! f  `
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80
    , N/ U) M: h& s! ?
  1615. 6 z2 T6 p2 e# t
  1616. BULSEL_RG_STRING:
    7 R1 z+ ?! O& A& b5 u' u- g
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80; `+ q' U/ I( D: }) n' U# n
  1618. 8 y( P9 E) F8 n+ V" D& g
  1619. BULSEL_B_STRING:7 r( ]3 s. k7 n
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$801 l% x$ r9 |- W+ I) ]/ I8 s/ u
  1621. * a5 u$ a  @' C0 r  v; |
  1622. BULSEL_A_STRING:
    - \0 t/ `8 s% f" f
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E9 a5 d: d1 T: t0 N$ O

  1624. " H" u. \" _5 [! r# I9 H

  1625. , _" {  E0 D& f2 Z- d; N
  1626. BULSEL_UP_WRITE:
    & H, D* C- p  q7 \
  1627. LDX #$00
    ( f1 j' Y' |( {+ x
  1628. BULSEL_UP:
    : R) V) C% Q' f" c& d; w
  1629. JSR PPUADDR_PROCESS
    9 F% L- `+ D3 \, S( Y  b0 p
  1630. LDA BULSEL_UP_STRING,X6 r8 t5 R/ ?# c+ K
  1631. STA $20073 F3 U& E4 G3 Q4 P# u/ M: ?
  1632. LDA #$009 A/ `9 a6 ^' j( L9 @1 \
  1633. STA $2000
    9 ?% Q6 U0 g6 E3 b6 w
  1634. INC $BA
    . A& K/ c7 |. {  r- F# G
  1635. INX4 p3 Q3 e& r2 w6 ]! H
  1636. CPX #$09
    4 Z+ d3 A) S0 i  x
  1637. BCC BULSEL_UP
    6 r7 A; m  b# D, N  z$ d
  1638. RTS9 w8 d/ |. }$ L( s
  1639. BULSEL_DN_WRITE:
    " g, F) K. p) K8 Z0 r5 B- }3 g. y
  1640. LDX #$00
    : x* G3 V1 k& n+ Q! G& B3 k3 _
  1641. BULSEL_DN:" R  M3 m) k1 W/ g
  1642. JSR PPUADDR_PROCESS
      u' {" X1 j' H* O1 |
  1643. LDA BULSEL_DN_STRING,X9 }3 r$ N0 |$ W9 {& }
  1644. STA $2007
    5 {) Z; A, Z) H0 j' ~; b
  1645. LDA #$00
    ! e. H/ x# p3 _; t
  1646. STA $20007 [3 C6 Y2 Q7 l1 X  R3 ?  Q
  1647. INC $BA5 r1 {9 m- t' h# I" p) w0 M! z; M  w
  1648. INX0 L  p, A( x: b6 K1 i
  1649. CPX #$09" Y4 f! Q% l- [" G2 c/ a6 Y* Z
  1650. BCC BULSEL_DN3 S; o2 l/ v, Y0 O1 w7 j* g! A
  1651. RTS7 k! m: B' y9 c; Z& q) b
  1652. BULSEL_LF_WRITE:
    & f, \3 \0 D1 U$ T1 H; h
  1653. LDX #$00
    & ]$ s" i$ U, w4 |0 ?
  1654. BULSEL_LF:
    1 W1 x/ @/ b8 [# C8 e
  1655. JSR PPUADDR_PROCESS/ R& G7 i  ?0 G
  1656. LDA BULSEL_LF_STRING,X
    " L+ N8 _) j2 a" o$ M
  1657. STA $2007+ `; g# G( E7 q4 F- ?/ {, z1 T
  1658. LDA #$00- o- e+ y: s% |* |0 y
  1659. STA $2000: e0 W) p! g. z2 x* K7 D
  1660. INC $BA8 \7 b# ], B2 B$ E) R! p6 w4 M
  1661. INX9 Y! f2 F( @3 ?8 y# Z9 j8 h3 @
  1662. CPX #$090 v) g, X1 Q) m/ I6 ]
  1663. BCC BULSEL_LF
    & x4 F- Q9 h* t$ x+ [: e
  1664. RTS
    / n1 v) O& y( W' i+ E: I, J) n
  1665. BULSEL_RG_WRITE:3 h. _, @. I- {' H& v/ x
  1666. LDX #$00! q" v2 B% \( E3 ]. v9 l
  1667. BULSEL_RG:5 L7 i* `6 H" C( L, }! _: r
  1668. JSR PPUADDR_PROCESS6 B+ D, w! e2 {+ [
  1669. LDA BULSEL_RG_STRING,X
      s3 f. D  \/ H4 R
  1670. STA $2007
    0 M0 A! m2 m7 B, a9 c
  1671. LDA #$00$ H" w, k+ S7 Q: N- s
  1672. STA $2000
    1 E" r; j8 r5 L; b6 n7 u2 f" v
  1673. INC $BA
    . e. W# j; n; \7 k& F
  1674. INX8 D6 w: R9 Y+ Q2 W
  1675. CPX #$09
    & e" G- U8 A7 l6 b/ I0 F5 H) _3 w
  1676. BCC BULSEL_RG  v, {* w7 ~) _* x& b: R6 s
  1677. RTS
    % e* i2 D2 c4 c" X7 P( B
  1678. BULSEL_B_WRITE:
    4 C' i6 g  o2 x7 d. v: Z
  1679. LDX #$003 |0 o! b, m' j9 |9 E7 e" ^3 s/ o
  1680. BULSEL_B:
    * ?* N- O7 E9 G
  1681. JSR PPUADDR_PROCESS
    ! f$ |: x( |8 @8 ~  F5 d
  1682. LDA BULSEL_B_STRING,X; [: h8 w, z" P
  1683. STA $2007
    : m0 E4 ?" r( V7 J, J1 A+ h
  1684. LDA #$005 c  V+ l! D+ \$ u. x/ a& _" n
  1685. STA $2000
    : E  s# W2 Y5 X, R  D% S+ t
  1686. INC $BA! B' `" T: g6 p6 a9 W
  1687. INX! C+ D' P7 H- S6 K
  1688. CPX #$09
    $ Y( V/ m2 w8 V; H6 |& ?2 m; L. o
  1689. BCC BULSEL_B0 _/ _7 U, P9 |3 y) R
  1690. RTS( f8 u* A! p' G* z1 _& t9 I3 w
  1691. BULSEL_A_WRITE:& I, |" r  y( X. r1 O6 j
  1692. LDX #$00
    0 ~$ A, v* a# w& Y
  1693. BULSEL_A:
      l# ^8 M2 {5 @- N% l
  1694. JSR PPUADDR_PROCESS
    " T& b7 B3 O* c5 R/ x, M( I3 E# q
  1695. LDA BULSEL_A_STRING,X% t; V3 i0 ~6 O1 C9 k% G! I9 v7 G: }
  1696. STA $2007" G7 L9 Z# z6 j" _
  1697. LDA #$00/ F6 [/ ?! n) B& @
  1698. STA $20003 @, a! O3 p: c" S5 z5 u
  1699. INC $BA; e# X' x$ }' p0 m; ^
  1700. INX% b% T7 \' F1 _' @/ t$ S' ]  |
  1701. CPX #$123 o, I, Y! y/ M$ L! }! f- M
  1702. BCC BULSEL_A
    0 P  t0 E. \' [& Q* M
  1703. RTS% N, a2 \+ |7 h

  1704. - B! o) G* m( O  F9 S
  1705. ' b3 z- @. y6 i' [. O

  1706. 8 ]$ S: I; p$ U6 ?2 ?3 ]
  1707. BULSEL_PPU:
    % S- u$ N  I, B' Z
  1708. LDA #$6C
    + |5 m) f8 {: W# G- X
  1709. STA $BA  i! r/ Z6 V; U1 ]* |3 v1 q" m
  1710. LDA #$21/ d( B& c  J. }' K
  1711. STA $BB6 P4 v; i$ F6 G6 `6 B7 E
  1712. JSR BULSEL_UP_WRITE5 C# Y5 ]) ]* K$ A
  1713. 8 N4 _% ]5 \4 ^( E2 J; x2 b( X
  1714. LDA #$AC
    " G3 K2 I' A& o+ s& L, |
  1715. STA $BA. V: |/ E9 F1 D: {$ d8 F: P
  1716. LDA #$217 U1 a! V8 t- B7 }
  1717. STA $BB& f9 O2 o# d6 Y$ w7 t) |
  1718. JSR BULSEL_DN_WRITE
    6 j/ C: C' B& `& z6 x9 k
  1719. # O* B; q/ \3 X& N  c+ o/ ]
  1720. LDA #$EC
    ) q. K# R3 q' C% T; a  W& r
  1721. STA $BA. }& I4 h1 l) e/ {! k
  1722. LDA #$21
    5 N! n9 [# Q+ n% ]4 c5 X
  1723. STA $BB3 A6 T. B/ o9 g% q) Q7 H  u8 z
  1724. JSR BULSEL_LF_WRITE
    * x4 q6 i- l# q* n2 x, O

  1725. 0 a* T3 v( f) |3 u. M
  1726. LDA #$2C& l0 T2 t6 n9 Z5 Q
  1727. STA $BA
    0 ?9 C6 N* G/ G$ h/ M
  1728. LDA #$229 ^; j) I4 n  A9 q8 F
  1729. STA $BB
    0 o. h: H) H/ ^+ w6 z5 W
  1730. JSR BULSEL_RG_WRITE* _2 g4 Q% B! E: u( o: u) `
  1731. * ~" L1 Q& Y; d1 ^; W
  1732. LDA #$6C
    7 S, A+ n& z) x0 P  t% ^
  1733. STA $BA7 D: D2 ?3 N0 L% g; G! c
  1734. LDA #$22% l  _# N( x3 _0 O* j
  1735. STA $BB4 o3 v! ^+ f4 u( I! Z% ?
  1736. JSR BULSEL_B_WRITE
    ! P/ z8 E- D% u( [; Y
  1737. . G. I, \/ V# B! ]( b0 m
  1738. LDA #$A7
    0 L# E* z0 M3 @  s4 N: z; A
  1739. STA $BA5 W0 N1 l8 m+ T+ v9 R
  1740. LDA #$227 e3 ?% J3 W/ V1 w6 J' B
  1741. STA $BB
    % u2 r/ v3 b4 a$ C, A
  1742. JSR BULSEL_A_WRITE
    : e# j2 _  v5 n; s
  1743. RTS
    2 V' a$ x/ H6 X5 w& k. b
  1744. $ G2 ^3 e, U' x. [

  1745. / E; U# A( g! U
  1746. , _0 t, i; Y& K$ w
  1747. UP_STRING:- A/ [' L3 z8 r5 \' ]6 T3 }# L* M
  1748. .BYTE $9F,$9A,$80
    4 C) I! b  U7 a( Z! L
  1749. + T6 `1 o3 I7 P; P+ G$ x. O( J( J
  1750. DN_STRING:! x& T/ y, Q* c- _3 u
  1751. .BYTE $8E,$98,$80
    . A2 p5 I1 Y& s, e
  1752. * z" o' Q1 g+ r8 }
  1753. LF_STRING:
    2 R) g2 k+ V; m* Q
  1754. .BYTE $96,$90,$803 q* d. q+ Y! f$ \

  1755. $ p# v* w% ^2 q# U8 }
  1756. RG_STRING:- h1 K3 ~% I) G
  1757. .BYTE $9C,$91,$80
    7 n1 f2 L0 W4 f0 p) Z, Y

  1758. # U) A" K2 p' V
  1759. B_STRING:
    % }- }; @4 r. f* i% x
  1760. .BYTE $80,$8C,$80
    + ^* ~2 T/ R& M, i) c0 V. ~5 _$ C
  1761. " d0 K" ^4 j  n; ]
  1762. A_STRING:
    3 Z0 I5 U( v' N! ^' u2 Y
  1763. .BYTE $80,$8B,$80
    $ Y) f0 h0 N. q& V* T
  1764. 9 L1 d' @& E! m% z
  1765. ) z$ Y, r/ r* V2 T  d, I3 ]6 T
  1766. UP_WRITE:( B% _; W+ V. T! k4 X' S8 R
  1767. LDX #$00
    * k5 L, }9 D, f" G
  1768. UP:
    ; M) _- ]- K1 z, V$ f3 T+ C& \
  1769. JSR PPUADDR_PROCESS
      e) d+ k, @& o( G  Z% P" C
  1770. LDA UP_STRING,X* g5 d5 V: I' G2 o' L6 }* J! f
  1771. STA $2007
    ( [- J' E& U  |" w3 n( C
  1772. LDA #$00
    & P% Z9 k0 s. t" t+ L
  1773. STA $2000
    ! }; o2 o# x$ Y# s. N
  1774. INC $BA
    , V7 B# w$ ]& ?( C9 l
  1775. INX) }5 F% B7 w* o( _% n- u+ m
  1776. CPX #$03
    : {" L6 Q" M/ o% q; Y
  1777. BCC UP9 p4 E$ C) C9 H! K- B; |
  1778. RTS
    + Y3 ^" b( O8 ?
  1779. ( i2 u, \( t7 J: F% O. e# _. P
  1780. DN_WRITE:
    % U& p$ g; O6 ]( Q2 |8 v
  1781. LDX #$00
    / }* ~; k2 t5 [0 H% e
  1782. DN:1 q& {9 R- M, g1 s7 }
  1783. JSR PPUADDR_PROCESS; C3 t& O& N  f; @% @
  1784. LDA DN_STRING,X
    ' R1 J5 V" B8 F& P; L9 z) l% {
  1785. STA $20079 I+ r/ Y3 V& w' N
  1786. LDA #$00
    . _; q. W7 q) Q& E4 X
  1787. STA $2000
    ! X7 c; i/ w+ ^# P
  1788. INC $BA1 f/ v$ u% \% t4 b0 E: l6 J6 S' z
  1789. INX; ]+ C9 O; q5 J/ |
  1790. CPX #$03: [4 d! o9 V& ?) {' a. V% B( z
  1791. BCC DN; [! O- k! `) D+ M6 R1 D* B
  1792. RTS0 X0 m% b: v# s* ?  K9 J+ W( P
  1793. 5 D3 J$ t: C. ?2 T# G- L6 @' y
  1794. LF_WRITE:
    % U! a/ ^7 P, A3 A
  1795. LDX #$00
    ) r1 P( j: A: s9 i' a
  1796. LF:! U# i  Y1 K) Y- u0 A
  1797. JSR PPUADDR_PROCESS
    9 @7 c2 \8 J) r) ]! o  N9 [
  1798. LDA LF_STRING,X1 ]  k7 p" H* S
  1799. STA $2007
    ( M+ M, P  g. P/ L) p/ l- G
  1800. LDA #$00
    3 E1 c0 ?' H; s% V5 ^5 S  k
  1801. STA $2000
    ; C1 T! U) T+ Y7 K4 \  A
  1802. INC $BA
    8 K/ ~, m' p+ A" _/ q
  1803. INX# G- F3 c* H7 n! O3 X
  1804. CPX #$031 N7 Y" O% }3 n# m6 m( A5 J
  1805. BCC LF! i+ b% |5 ~% C5 m
  1806. RTS% e3 ]$ i; d  }
  1807. , q* X. K& @; [. V4 u' d$ S
  1808. RG_WRITE:$ R5 m7 |7 h0 y% c- G9 A3 }
  1809. LDX #$00+ l9 ^, {$ {7 H7 U% G) _
  1810. RG:, N5 A8 Q1 S5 |. O
  1811. JSR PPUADDR_PROCESS/ i- E& t9 V0 _
  1812. LDA RG_STRING,X' n% Z. E5 `6 E2 k7 Q& x5 z
  1813. STA $2007
    2 R) K- }% s8 R
  1814. LDA #$00
      ?6 y6 E& W) q# K8 e+ G
  1815. STA $2000- V& N$ O5 R: P- n4 @
  1816. INC $BA
    , Q/ k4 \) O2 k* [! f  S  l5 J/ Y8 @
  1817. INX: q3 S6 ~" B& ?4 d1 L
  1818. CPX #$03, W5 U7 s) \+ |& E; ?+ X
  1819. BCC RG
    1 @5 _& y( t" P3 y" E9 h+ q
  1820. RTS
    : ^+ f( T& m; d& L2 G
  1821. 7 v! b* I& ]: Z
  1822. B_WRITE:
    7 W2 `" P% d  U; B* x% |7 d% V- p
  1823. LDX #$001 _/ r- Z; u5 s9 v  Z! d' ~7 S1 v
  1824. B:- o4 c( O5 T9 F1 y  F
  1825. JSR PPUADDR_PROCESS
    ' w5 N6 F' }" u# F& v
  1826. LDA B_STRING,X
    % D1 U# ]" k" \( Y' L6 F  b
  1827. STA $2007, |8 O8 @" H& r. e
  1828. LDA #$00( T* \8 V" m, ?  p8 g
  1829. STA $20006 `5 l/ N! B. g$ w  |. B% r7 F+ f
  1830. INC $BA
    5 K1 V1 X! c5 A1 O
  1831. INX9 J7 Y6 p0 j, u! v& B7 [) ~( }
  1832. CPX #$03
    " }/ d! a( H6 E& |3 t
  1833. BCC B
    % K: T: A$ A) W  i# u0 N5 H, y; `
  1834. RTS: f$ T% S( `. H7 j1 K% Q- s
  1835. % B: V: J/ t) ?
  1836. A_WRITE:
    ) T$ C1 I) z& ~
  1837. LDX #$00  }0 s8 D/ y* Z% p" Y
  1838. A:4 S- H2 f5 b$ @8 Z% c
  1839. JSR PPUADDR_PROCESS
    " Q" S, M+ p" V: L3 _0 B8 ~
  1840. LDA A_STRING,X
    ' k& M( x, A* e+ G% R0 E
  1841. STA $2007
    7 y6 q- K  d  r# Z
  1842. LDA #$00
    2 j, O/ M. ~" [' r; G
  1843. STA $2000& \5 `6 R( v8 j6 R. ?6 j- E
  1844. INC $BA
    - ~6 P- J7 B7 S1 U" r
  1845. INX6 C! P6 S( {9 S: c! ^+ R
  1846. CPX #$03
    5 ~: E* k; u+ Q2 X8 i
  1847. BCC A
    , X# @, x% L8 s0 o: H. f' T
  1848. RTS# X% W6 \, t* ]
  1849. - h4 ^( y: b5 C7 [" D3 r+ u

  1850. 2 ~9 Z) O0 I# Y: \3 G' [" _
  1851. UP_PPU:
    0 C% C8 _1 I# t) u
  1852. JSR UP_WRITE
    ; T8 C, r/ Y9 D! G, v2 J# s
  1853. RTS
    ) d, K: T) m6 L0 v) ?& B; k
  1854. 2 m8 I# {! [  F& C& V6 R
  1855. DN_PPU:. I3 L2 R' ~2 ?4 u5 i0 M
  1856. JSR DN_WRITE8 D  C; Z# e( u4 V; F7 G4 M
  1857. RTS
    $ [3 Q; g/ D4 _" ]

  1858. 4 D4 a- }" N9 W# `2 M' C& w$ K5 }
  1859. LF_PPU:6 U* g/ ]  R$ M) T9 E4 x
  1860. JSR LF_WRITE
    , _& O/ p/ P5 H9 r  e$ F
  1861. RTS4 _, y5 P2 ?  B, X

  1862. - e/ m  ^( Q% D3 ]* Y2 i
  1863. RG_PPU:
    : L8 }( {' A& I1 J
  1864. JSR RG_WRITE7 v0 d$ R1 G& ]" m/ W
  1865. RTS
    + ?1 u! i6 ?, ~& B
  1866. & H( p( r$ f6 }. v
  1867. B_PPU:
    ) a3 X5 d* @9 V* \; [6 H
  1868. JSR B_WRITE6 J0 K8 P$ k/ R- a
  1869. RTS% ^$ j; r! [: f( V

  1870. & |0 H1 r4 t0 w+ r
  1871. A_PPU:7 L7 k, o; Z1 \! Y, ^
  1872. JSR A_WRITE/ M) h+ x; M6 w3 Q+ D
  1873. RTS
    & }3 W' T" w% k& Q) l3 o9 V. i

  1874. + Y) H( T4 L+ ^9 i8 W
  1875. % d& j9 W: o5 S3 u6 K; A
  1876. PAGESELECT:1 D: N; M$ R; O5 Z) `9 k# z1 z9 x
  1877. PAGE0:6 u% V% F% B! E$ y
  1878. LDA $07AA
    , b8 S# A- H( m6 `5 m3 R
  1879. CMP #$00
    ' c$ }/ n- a2 r  q  Y% N/ @
  1880. BNE PAGE1& Z9 T) Z: X4 O% M
  1881. ; E9 M( |3 B& h0 m: C
  1882. PAGE_00:
    8 Y3 k/ a0 g- v8 }$ x+ [9 z
  1883. JSR BULSEL_PPU+ n; L8 W" d; X, g3 R# @/ u" M) W0 d
  1884. RTS
    $ M2 l* s& L$ m3 i+ q: {
  1885. ; n* M# B3 [5 w  P! l" h6 V7 o* D
  1886. PAGE1:! n, r' ], ^; j$ D4 z9 A* A
  1887. LDA $07AA
    $ `, o: R" V2 C! y
  1888. CMP #$01
    % a3 H( [$ ?% D1 j
  1889. BNE PAGE2  i' o6 d4 b% K1 V0 x$ z1 t( J

  1890. 3 a& j0 p6 }' G. Y' z: H# X  g( W2 j
  1891. PAGE_01:* \) U% g! S4 j( J# d. C
  1892. JSR INVINC_PPU: W. W! A- R5 C& e; M" F" _
  1893. JSR LIFELC15_PPU
    # f( q6 L9 R" A0 C8 P8 @
  1894. JSR DOUCON_PPU& C5 d+ H. \" z; D8 z
  1895. JSR KILLON_PPU
    9 N9 x: H7 y& T
  1896. JSR SKYFLY_PPU: M% \2 [' O6 s, d: n2 w- Q" \$ \
  1897. JSR LIFELOW_PPU
    . B5 u9 V" {2 P2 Q5 O3 l, ?
  1898. RTS3 Y$ O3 V, U, P# H

  1899. 8 B% c4 l' Z* }2 z& R+ \
  1900. PAGE2: , \! \* |# n: O- r7 z- u
  1901. LDA $07AA
    - q5 J4 V( F8 z: W/ `
  1902. CMP #$02. G# a3 ^$ G  G" R6 E
  1903. BNE PAGE3
    3 l; I9 e7 H/ R4 X& U* \
  1904. 9 f, |1 P1 k$ X9 @
  1905. PAGE_02:& b8 M2 \" |" V! N6 H
  1906. JSR BULADD_PPU, J) ^( g$ a6 v8 ~5 B5 S
  1907. JSR SKINGE_PPU
    ( M; ]! A+ R# b. _
  1908. JSR BULMIX_PPU- w$ I4 I! K, z8 ?! G
  1909. JSR ENELOC_PPU
    & O7 h. K: _- A+ B2 L
  1910. JSR FOCFUL_PPU
    7 v3 |1 V0 `4 t3 x: Y
  1911. RTS
    . j% ?0 [" W! p

  1912. 7 @* W  P" ]& C" L" [
  1913. PAGE3:
    $ `, l; \) F) q" R, y
  1914. LDA $07AA
    ( J+ J( r' Y* a. Q& p# m  B& \
  1915. CMP #$032 ]5 r: T! y" b) b
  1916. BNE PAGE4, g# s( U* [6 I5 Q" z3 |

  1917. 2 X7 P" b; X. Y% j
  1918. PAGE_03:; ~6 K5 C( @" ~. M5 {
  1919. JSR BULCON_PPU9 i# B( q% y. x9 V
  1920. JSR SPEBUL_PPU
      Z$ x- u! [. D. ~) l+ Q$ I: ?
  1921. JSR CLEALL_PPU: n7 e1 r6 t2 {; l' d! @
  1922. JSR HARDMODE_PPU" \0 O5 ~% s1 s4 C6 g' [( ~) R" a
  1923. JSR B_TO_JMPSTG_PPU
      K' V& ]* [4 f
  1924. JSR A_TO_PLAMOD_PPU
    ) V8 o( w5 e5 K0 c5 V  v) G
  1925. RTS. g" r( t- a" p' G2 F
  1926. " t- B2 S4 N: }
  1927. PAGE4: 2 ^! f* [6 ^3 C" c" p
  1928. LDA $07AA
    . o& C3 N% E- B
  1929. CMP #$04& u; B. m. F! I: Z$ N' z
  1930. BNE PAGERTS* u8 s1 ~; ?6 U4 u! S

  1931. ; z; B! Q2 E9 @. g0 q% E! U
  1932. PAGE_04:
    # R/ P* _6 y. H5 k
  1933. JSR MOVSPE_PPU" I+ X8 A1 o* c' I
  1934. JSR UNLJMP_PPU! u# |. d9 ]- b
  1935. JSR DESTRO_PPU4 x* S/ @2 j" k
  1936. JSR EQUBUL_PPU! \: f+ W/ c$ e  I
  1937. JSR MOVESPEED_PPU
    , Q7 r) c; k- i* ^6 S% z' Z
  1938. PAGERTS:
    & J% h3 M0 V9 q  N9 L
  1939. RTS
    ! N, T1 f4 ^5 T% v# D/ _
  1940. * F6 a- D0 A. {! `
  1941. ) r) j" J. a) C
  1942. PLAYER_01_STRING:
    3 \: P8 T: }7 @5 |9 x" B7 @% o
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    9 e3 q8 \# H7 g6 u6 ^
  1944. ! {' s7 E) b: D1 L- s# C

  1945. * l2 W2 R6 B; G6 o. e( |/ _
  1946. PLAYER_01_WRITE:
    / c, }( s6 r: o( j$ F4 P' M
  1947. LDX #$00
    " H& d& s8 a; |. l4 o2 ]" l4 q7 C  e* d
  1948. PLAYER_01:: W* C$ _6 H+ L% d9 g# W( i9 G) d* @  e
  1949. JSR PPUADDR_PROCESS, Z5 G7 z' |' N9 Q) O, T0 v% N$ H
  1950. LDA PLAYER_01_STRING,X% H( h' }. ]7 r6 M
  1951. STA $2007! B) `& i. E- x) d0 E7 C1 J
  1952. LDA #$005 l5 N+ |' a0 v( ?. q; Y5 j
  1953. STA $2000
    + s4 H. d2 J8 |2 [8 F1 Z/ ?' S0 e; Q
  1954. INC $BA
    . F, |2 z9 g& M$ g) u
  1955. INX6 Q) a: a4 ?$ ~" J! |! c
  1956. CPX #$0A
    % A7 {: T; N! E" t3 N' b# v
  1957. BCC PLAYER_012 F+ W" R7 t% E  S6 n  D
  1958. RTS$ F" O5 _. z, X* b( Y, c% O
  1959. 2 U2 R1 ]7 e# D
  1960. PLAYER_01_PPU:: C5 R, I! M( h
  1961. LDX #$00( L4 K1 \) h/ l" v9 K7 _! \
  1962. LDA #$64. `" z" ]; G9 M' V" p
  1963. STA $BA
    / B7 t8 x% H9 L& P# b8 q: p
  1964. LDA #$202 C  b6 T1 J# X, G; d7 p# h
  1965. STA $BB
    0 K5 E" i, l: R7 y
  1966. JSR PLAYER_01_WRITE
    : S& m3 U/ [6 B! w
  1967. RTS8 ]$ Y: o! q0 g8 E  O1 k5 g) Y
  1968. , g$ c4 ]$ f7 t! p
  1969. PLAYER_02_STRING:
    5 G. s- k9 B$ Y
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$808 j# |+ p8 s- Y% K4 K( s; \' L

  1971. 4 M, ^9 @: `  m$ @& l1 Y

  1972. ' Y* F5 l- T7 Z4 p7 F3 ?- L. R! T
  1973. PLAYER_02_WRITE:
    & r# b2 M0 Z* Q9 V( B0 e8 K8 W% }" I
  1974. LDX #$009 `# y* e5 c. R5 h4 d
  1975. PLAYER_02:2 h% ~6 v6 L: T7 b: k) Q
  1976. JSR PPUADDR_PROCESS
    0 _  T- z7 d$ B9 n# K8 F
  1977. LDA PLAYER_02_STRING,X
      c+ ~& m5 p4 r4 b% V3 L
  1978. STA $2007! ?/ U+ C$ k2 b9 J2 t" r4 H
  1979. LDA #$00
    - w, d! V$ A8 \& ?1 Q6 ~( |
  1980. STA $2000! B- ~8 H( h8 V* v3 I
  1981. INC $BA: b, ~/ m: l9 C, C, w& a
  1982. INX/ ]. g. _+ d  w3 {) ~: I" s
  1983. CPX #$0A) {5 k6 y9 a% a# U. O8 k
  1984. BCC PLAYER_02
    1 w% `8 N5 u* o$ p9 k
  1985. RTS
    ! a  n: b& Z, K

  1986. 8 o+ z. a4 g! Q* H
  1987. PLAYER_02_PPU:
    , `& {% t+ }5 J/ y: v
  1988. LDX #$00
    3 D% ~, u; F+ U4 {- C5 F9 A& K1 O, ~
  1989. LDA #$73
      m8 B& c/ C# S* B' H1 x1 x
  1990. STA $BA5 \' W5 T. w6 O0 B/ }
  1991. LDA #$20+ V8 Q. q$ z9 F
  1992. STA $BB2 d( S5 j$ N3 m, f0 |
  1993. JSR PLAYER_02_WRITE
    # S5 \+ b9 R2 @! j" n% j
  1994. RTS  l3 C$ d, k% Y9 p! L* x

  1995. 7 P1 x) D1 U- w/ U) q: e5 T& R! c
  1996. PPUADDR_PROCESS:2 T& T- D0 O' n1 _6 Q
  1997. LDA $BB
    6 Q# [. _' X. s
  1998. STA $2006
    * y4 v9 B* f6 u. ]  w) _
  1999. LDA $BA2 N6 T  U: J, n* u/ ]9 m+ f
  2000. STA $20068 w0 g' j6 c' k8 [5 Q# W( q
  2001. RTS
    $ `# I! `. f% r
  2002. 2 O& B3 H/ E, s9 w! h- L

  2003. + d5 E( k5 u& R, y% d
  2004. % ~) d# l. }& S# ?, ]  _3 e
  2005. ONE_STRING:
    ' v5 L( u' p7 D
  2006. .BYTE $99,$98,$8F! C% s* r8 }& Q* K" D! V, A6 ?1 @8 @

  2007. # N( M) a& |' ~5 v/ L, E* j
  2008. TWO_STRING:
    ! h5 `% u6 H3 q2 o8 p: q
  2009. .BYTE $9E,$A1,$99
    0 Z5 ~. n, _) g+ `( m
  2010. 3 Z7 B  m* G; e' Q4 M
  2011. ONE_TWO_PPU:) ~* v2 X1 ?' W/ ~6 W" o
  2012. BNE ONEWR
    9 D1 x" y3 P0 k9 Z# |: X) U
  2013. TWOWR:
    6 J. Y9 c$ v! Y# Q8 U. O' p" i
  2014. JSR PPUADDR_PROCESS6 s$ r  `+ R$ }! }; \
  2015. LDA TWO_STRING,X
    , Y4 s2 e6 U( L+ V9 s
  2016. STA $20071 h. U% @) {  T+ f' o  @
  2017. INC $BA
    # T+ e: A/ M; Q3 _
  2018. INX! @) z- Y0 R+ b. ]% K$ c4 J& R
  2019. CPX #$038 w+ u) b3 _% M
  2020. BCC TWOWR
    7 L/ ]* p  B6 o* W) r
  2021. RTS
    ! G7 ~8 U% d( N; l3 ^
  2022. ONEWR:% k  g5 h9 s; F9 J& \5 X. P
  2023. JSR PPUADDR_PROCESS
    0 V  b& z5 X  D# K& d" ?5 A
  2024. LDA ONE_STRING,X
    4 G) V. r" @. D, N% Z6 t# A2 C
  2025. STA $2007- ]/ D! [2 B! q) D3 T
  2026. INC $BA
    & u  L6 j$ E6 b. U
  2027. INX% v7 @5 ?2 J2 Q$ p1 Y, J
  2028. CPX #$03
    . n, U4 ~/ c8 R; |! s& G$ c
  2029. BCC ONEWR
    " O, @! ?; F2 y; i: t- C; W
  2030. RTS
    ( C. m2 z2 {) t3 ~2 M! k

  2031. 8 ~( O; u( u' c/ \& x
  2032. MOVESPEED_STRING:1 `7 R, R6 u' A+ Z8 y  |) O& E
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80, x9 {# `8 K# Q. ~3 n8 C0 ~  t; W* T
  2034. # I9 M! C) ?  r4 t4 g& `

  2035. ! x6 Z. y3 k  |: G/ b* i
  2036. MOVESPEED_WRITE:% O, E0 D1 B. n& y! @
  2037. LDX #$00
    & F0 N  B9 ~4 I# r+ W- t" X
  2038. MOVESPEED:$ N% S1 n5 h! k1 G6 K6 A) p' `" w2 Y$ w
  2039. JSR PPUADDR_PROCESS8 h3 d) ~% P7 B9 g4 b
  2040. LDA MOVESPEED_STRING,X
    ) R/ k9 E3 d. s, b' r
  2041. STA $20076 o/ d  G+ J* a: K- v  Z8 p
  2042. LDA #$00
    7 a8 ]( @  v1 E0 M9 m6 m
  2043. STA $2000* L8 \7 N0 D) a  M% j3 t
  2044. INC $BA
    % a! v1 j: u: l  A
  2045. INX: u8 \) P& E& P% n
  2046. CPX #$0B
    - o7 ~0 T7 {! s9 P1 F3 Z# l; q
  2047. BCC MOVESPEED
    * m# O9 \* ^4 ]8 S
  2048. RTS
    & s9 B: ?" T* l+ X( w
  2049. 1 {5 K, G! e7 a+ `6 ~
  2050. MOVESPEED_PPU:7 _; c- U. q( s1 k/ R
  2051. LDX #$003 Y$ x2 Q/ h' {' Q& m9 C
  2052. LDA #$AA
    , c. A$ Q7 [) y% e
  2053. STA $BA5 a3 g& Q/ r9 J9 Q! |7 t
  2054. LDA #$22$ ^/ p- E7 `2 R! e/ ^
  2055. STA $BB
    ( ]! h5 M2 X' J& J  B8 I6 W
  2056. JSR MOVESPEED_WRITE% }' m2 y( X' r4 k
  2057. LDA $7003$ \, S$ A  z6 P. B# V; W5 ~; S
  2058. CLC
    % \, x& A( k% g7 J
  2059. ADC #$82
    ! m' j5 h  l# `, _  v" ~
  2060. STA $2007
    ) Z' Q" m8 l8 `+ p
  2061. RTS
    & a! a$ S/ O5 K
复制代码

本帖子中包含更多资源

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

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 个 柠檬. 幸运榜 / 衰神榜

签到天数: 2891 天

[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 | 显示全部楼层
太强了!佩服佩服!

签到天数: 2048 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!! ]: J0 r4 ]$ c6 p. c
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2013 天

[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-11-17 00:27 , Processed in 1.098633 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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