设为首页收藏本站

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 * i9 Q1 `; x* ?/ {

! ?8 K) W+ j/ c1 T% B+ H  c+ l# f/ |
     [FC][魂斗罗旋风终板END暂停显菜单]
$ m! G# `6 l' I4 f" W, v; a
作者:FlameCyclone(flamecyclone.ys168.com)
  |6 X3 K9 F0 f& G; @* k6 h: y6 i$ s时间:2016/11/19 21:46:007 Z: c' u' }# t: p+ V1 C2 l# ^
更新日志:
: _& x! D2 ?) {) n6 g8 Q
2016.11.19:加入暂停显菜单(共5页).2 T1 C/ l4 }+ f$ l
2016.11.12:加入无限跳跃.( X: ]3 v8 \1 x$ i8 o
2016.11.12:加入速度调节.

+ s) D& q( J5 ~' N; V' V2016.11.11:加入敌我子弹对消功能.) `% {  U3 X+ R* U
2016.11.11:加入全屏闪灭功能.
" s7 R& W& g6 c6 k9 p. o2016.06.08:加入全屏瞄准功能.
' W$ r1 v% L4 _2016.05.31:加入弹速调节功能.
: r. E4 D7 C) e2016.01.01:加入高难度模式., m5 Y6 y9 P; |$ H9 K; A5 ?* I
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
* `, W  X$ @8 s% b4 h* }4 D2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.2 J% B" t+ Y6 v2 Z, W8 w1 g; p* f
2014.07.05:双人切换功能优化.
# i5 D  m2 F( S, c( B2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.  w% I7 J4 ?) @9 u3 \3 m
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.# K/ P/ ]% p6 @. W3 n; A) @. {
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.' J! z& C/ e% H* Y. T
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
& G% Q( e" L- `+ G) t" ~2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
* N( J+ |1 W( j" w3 {$ I2014.02.13:加入自动演示通关.! h& f& G* o7 f% p9 x. M
内容:5 X$ Y' v+ @* t: O
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.; m; B: n" M/ U
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
: }. f7 L+ {3 {- Q21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
$ }* I0 Q( `% G3 |
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.
5 }$ E1 \2 z0 \! `( a8 u19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
. W. H; G  n0 r18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.* G% P7 a% }/ z- I+ Q
17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.- \4 S2 _& \8 ^9 O
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
  c5 ?  s6 {% B1 P* n9 d! u01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.: `" o% V- P! }
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.1 w; V( ]$ Z) a1 l* n# p
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条., A5 K+ e* P  H! t  n
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.  Q" f1 F$ F  D% o/ ?5 c. D7 M6 A/ T
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.- z- s2 S) A" f* M1 X  J
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.
  Y9 i4 L9 U' l1 x9 q. b# {07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.. w1 p" t' a4 L# c- f9 X, V7 ]4 l
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.7 q: s( W& I2 }; z5 T  Q
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.7 V  i; D9 D& E. I  d1 \, ?: _3 ?- x! K
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
6 f) F  n4 X; [11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
7 G+ L, n& K3 ]' [1 b12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
1 C8 N2 c3 J( T6 V- b) a6 l13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.+ f& n9 X2 C, L2 C
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).  n- u. V& [8 d3 W+ Q& T
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。
' `; C, t8 K) E: b; F  [A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
# s6 ~# I/ {- \3 E* @B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!; o% u" r$ g7 {/ J* s
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
" A5 e' K7 K: \, V( O
& N* w$ n5 N' P! H9 t! H8 I, s  L% S    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)+ w& R- F; N1 {. V# Z
欢迎大家转载,转载时必须注明出处.
; w( `+ c$ e/ ]4 ?5 L
) w8 _* Q- V% L+ W/ p( P5 Y
游客,如果您要查看本帖隐藏内容请回复
9 R# w+ n: T# E/ X" [- L

$ h0 X4 [# {/ G& h. m# k, a忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.3 g) \/ i$ V  z0 N
这几天的劳动成果如下:
  1. .ORG $B400
    ' W% Z3 y2 U, B- w7 n6 c% K
  2. , |4 B# v8 r+ z' a" ^5 P

  3. : W& |' b1 g, }
  4. PROREG:
      l2 C9 S' k) i# E7 x+ a6 x
  5. PHA
    0 m6 ^$ p! S8 ]; T
  6. TXA. D% I; A- X. k1 F
  7. PHA
    ) J, m$ n) K' M$ c1 u: K+ d% z
  8. TYA
    % k2 K* {) m* p2 Q) \
  9. PHA
    * Z0 W6 I$ A% K, D& ]* f
  10. LDA $25, `/ N0 K3 E8 n' b0 F
  11. CMP #$01
    ! M; ]% f, B6 K9 ?5 g/ k% Y8 P  H' V
  12. BNE RE, ~9 `7 V8 [* ~% J$ {
  13. LDA $010A$ ~/ {' f3 q, M4 I! S
  14. CMP #$00* ?3 v. h* C3 f; p0 j' Y" k0 ~
  15. BEQ P15 |. _3 v+ v; L- N! O  ?
  16. # {. G2 Q6 p; b( }0 |
  17. RE:7 F. k5 B9 |& k& Z; D+ D) _% O
  18. JMP PPUWRITE
    3 r- k2 O7 m* U& \; ]) a

  19. 4 R; F$ R8 M1 p0 s! N
  20. P1:                ; 条件判断
    - ^. B4 g( B/ ~; _  R
  21. LDA $7FFF+ S/ R# |1 Q: |0 p) n
  22. CMP #$FF
    ! V0 F% e3 _) k4 w
  23. BNE P1RP7 Y6 @8 D. T/ C/ d
  24. LDA $7FA09 X! J  t7 B, K
  25. CMP #$00
    . }. {4 y% J1 Y, f1 Z) o$ r# T
  26. BNE P1CMP
    9 H; y, {% r) I* u
  27. LDA $2001
    # E# }% u2 M* `- d4 M; `: ~
  28. PHA" h; _7 I' D! C
  29. LDA #$007 W* A( N. ]: d& ~
  30. STA $2001
    5 J( l# K4 R! m% C1 `* H
  31. LDA #$FF
    " S  }8 I( z9 s: ?' D  W
  32. STA $7FA0
    , `& M% V2 M! u- i0 P+ W
  33. JSR CLEANA- R" ?; E- R& G( ~$ b
  34. PLA
    " J. e3 O* v0 V# v* ^# u
  35. STA $2001
    ' ^6 T: {& c% }- @# N
  36. JMP PPUWRITE
    # R! j8 T" C8 U: P+ d# N
  37. P1CMP:
    & c5 a" i6 M& `0 m- b+ ~! V
  38. LDA $7FFF
    5 l/ K  _" [7 R; k6 K
  39. CMP #$00
    / z- |$ }5 Q1 P0 N7 L" }- B6 `* Z. _
  40. BNE RE
    & U; t( }3 k! n' i2 Z* Y, d
  41. P1RP:
    - t( ?# u: I8 s6 p
  42. LDA $2002
    , Q' `- L$ e, z& L. R$ b% w  x
  43. LDA #$00& H: m, V4 a; Z, E/ m+ K
  44. STA $2001
    ! z5 p! z& G+ C$ w/ I  g
  45. LDA #$FF
    9 f% C, g& x. q' M
  46. STA $7FFF! ]6 E! C( {! C$ c% _, s
  47. STA $7FA0- \+ _" h9 R0 j
  48. JSR COPYPPU; M4 M# S3 N* l) O' V
  49. PIRP2:8 S- Z. W$ G$ s. y/ n0 i4 V
  50. JSR CLEANA, r& y* C' U& g( |; x
  51. JMP PPUWRITE
    ! q3 h9 s- b! J4 Y1 B6 `) Y& x

  52. 3 p0 ~3 R& F/ N7 p: b
  53. COPYPPU:+ I6 j9 W4 c; [% g
  54. L0:
    & L  ~# b0 E  [- ]2 \2 j& x4 g: ^
  55. LDA $306 a* v) h% I. z. ], \! j1 I
  56. CMP #$02
    - X) ~/ U0 S( j+ n6 z! i3 C
  57. BNE UNPROFC
    5 u5 o. o. v% a. v1 x4 @, q# w) m4 [
  58. LDA $FC
    * m+ @/ j9 m6 L/ E; \8 e, m
  59. STA $7EFC
    $ v6 L9 f  \. \$ P( X
  60. LDA #$00  m7 R; w* j4 ^# ]/ x5 u
  61. STA $FC) w7 o" F8 ?; Q
  62. UNPROFC:
    4 e5 ^, }( a; G2 U
  63. LDA $FD
    3 p" C$ M3 A( q# V
  64. STA $7EFD
    # S: q& q- x2 f* _1 C9 G
  65. LDA $FF2 d+ {& y, P$ L+ \, p) {6 j
  66. STA $7EFF8 G& h; C' ~' o0 P
  67. LDA #$00
    / M  z, ~% ^5 l6 u, d$ D
  68. STA $FD
    8 l9 M: `; @5 T3 M2 h
  69. LDA #$B0- Q2 ?9 q) O/ O, I8 Z
  70. STA $FF+ N: h! p/ S. N
  71. LDA $07C1: Z& ?: E* b+ O. O" q: y1 ?  [' L
  72. STA $7FC1- H1 |; ^5 x/ {; j" M' K
  73. LDA #$3F& ?0 m1 t; D1 a3 o
  74. STA $2006
    ! o8 ]$ s) m; C% d! Y
  75. LDA #$010 g8 I/ U( c, r5 o: o: T8 J
  76. STA $2006
    $ w. W- a$ T$ y+ a
  77. LDA #$24' A, T% W6 I9 Q6 e- B, i5 u8 ~2 Q
  78. STA $2007
    * g. p/ `) c3 \9 v& \0 {
  79. LDA $07F6
    ) w( A) M, Z* h+ X
  80. STA $7FFE
    8 G  m6 L1 Y0 F. ^
  81. LDA $00FE
    0 a1 F" B: h7 E/ P; \
  82. STA $7FFD
    8 e% l/ s1 I: Q; A+ R8 F, H% U
  83. LDX #$00
    " [# L5 S* m. _- D& H- l
  84. LDY #$00
    / l- P( K! ^) m7 T5 F9 v
  85. LDA $BD! L& \9 `! u0 [) d7 T" }
  86. PHA* w/ P$ r3 ]7 ]% x
  87. LDA $BC
    , \9 }4 o- R4 v, V( ?
  88. PHA
    4 E; d. `$ d& ]
  89. LDA $BB  u- }# ~, J- a. O
  90. PHA) S4 n. \# x9 W$ A, M
  91. LDA $BA# g3 I6 A9 [3 Q/ B
  92. PHA& A7 S" ?3 j8 f$ [; z# B: G2 w
  93. LDA $B9( {* y) v% a! s9 l: E4 r* S
  94. PHA, H0 C+ P6 y" R# d
  95. LDA $B8$ x4 W6 Q. Q7 \' U* \( P0 Y6 o
  96. PHA
    . C4 X  I8 Q; ~3 J/ ]& C/ w
  97. LDA #$00
    % Y) |, P1 A9 u  t1 k
  98. STA $B8" q0 E' ~% A3 H5 `% z9 C
  99. STA $B9
    ; I9 Z6 U) W- s; s8 }2 G
  100. STA $BA+ z. J: r- D5 I) D( s
  101. STA $BB% k& r+ O! i) V9 Q$ Y6 N
  102. STA $BC$ Z9 k! [$ A% s) M
  103. STA $BD
    ( h9 R# y7 @8 O% u8 C& Y
  104. LDA #$003 I- ~& v* p0 q% d
  105. STA $BA* ~: w' y0 F# |2 E7 i. i/ t
  106. LDA #$20, |: H* z5 ?* {; B. @( x! o& [9 q4 i
  107. STA $BB2 K0 [9 c$ Y* k# a: k; @
  108. LDA #$00
    7 n+ |4 h; L3 Z% M: y/ O( T
  109. STA $BC
    . Y  f& T, n' }5 f
  110. LDA #$60
    5 X3 _, a  ^$ ?! O. A% H6 m
  111. STA $BD  j3 d4 \9 q$ F% _. ^8 q; h

  112. & o3 O- d5 a; ?' ]. P
  113. L1:                ; PPU复制9 e# \5 h3 o. N
  114. LDA $BB
    3 s* L3 G& v3 Q& m0 ^" ]
  115. CMP #$30
      H# L) s' V8 [, e$ u4 V
  116. BNE L2
    9 _9 H; r  ^0 D
  117. LDA $BA
    3 p8 ?+ U, `( {0 x1 h; W
  118. CMP #$003 Z- g1 V# V* q! N! {$ d. v# [
  119. BEQ PROADPLA
    5 n: Z) o% b# s7 ?- \0 y

  120. # V5 X. T6 A" b* m
  121. L2:0 [& i; p" j% |! V( f: B
  122. LDA $BB
    7 S& ]8 j+ G% q* B, H% B
  123. STA $2006
    / H& E/ i5 B- g7 q' E- B5 @: v
  124. LDA $BA, m3 a3 C: Y% @. T$ W" X# W/ N
  125. STA $2006
    5 H7 Z/ {( R- {& c1 d

  126. 2 W  ^/ }" N2 [0 r
  127. L3:
    , z0 a9 v& T3 u; O( j+ @" q$ ]
  128. LDA $2007/ \7 W4 g! B; ]( Q
  129. LDA $2007
    2 A! W. @. Z5 o
  130. STA ($BC),Y9 \  D& q8 s) M' s6 n2 O6 X, c! k
  131. * v' {, l! V$ e6 R3 m% ~
  132. L4:0 k5 [; M- ^4 o& e& Y: R+ d9 t' T% y
  133. LDA #$00
    6 T5 G6 ~6 z! D* z4 R9 Y. ^' F' S8 c
  134. STA $20004 B- p/ h! N# w" j% z
  135. INX4 j( G% Y( C3 V( |  _
  136. INC $BA8 I7 Q' |& Q2 ~7 w2 W
  137. INC $BC) Y5 Z2 J3 O$ r9 M9 Z8 e
  138. CPX #$00
      b4 ~) X2 B" [
  139. BNE L1" o( G: l+ {. D" ?' p( A  u' C" v
  140. INC $BB
    9 P  F, N; k. ~/ o
  141. INC $BD3 ~! U) x+ E: X9 W' g- I, D! A) B+ p
  142. JMP L1
    3 M& E% D9 k- @* L3 X; _# c

  143. 4 a- h9 V7 G% E: U( N" \
  144. PROADPLA:                ;出栈7 N4 V  U( l5 {$ `
  145. PLA
    $ a8 c& T( N& F
  146. STA $B8
    * Q; g6 Y) F8 P5 `0 A
  147. PLA1 s( e6 b  G/ y' e/ ]" b; ?( h
  148. STA $B9
    & k) {, h2 m1 O! q3 }  Z3 i+ ]6 q" X
  149. PLA4 Y+ B' z& n3 m; p
  150. STA $BA
    # [+ t( o  [# Q) g, @
  151. PLA
      ^/ }% X- U2 h9 z4 d$ d- H
  152. STA $BB
    # _4 J; c! Z% g$ c  m1 f# w
  153. PLA
    6 d6 f' p& L3 d4 h; ?! g, ^
  154. STA $BC' q# E" l  ?1 o$ D0 a
  155. PLA
      x3 _7 N5 V! p
  156. STA $BD
    5 h* r. S3 {3 b, X2 M8 P
  157. CPRE:+ `7 c% N) D- W0 G7 u) k
  158. RTS
    - F' i  [! }- y8 F( R) `+ m9 i

  159. ; S  s+ A+ H1 Q- v" X/ @3 @- u
  160. CLEANA:                ; PPU清空
    % H. ]' s+ U- `$ {; P4 f) V7 H
  161. LDA $BD4 M( h4 a6 A, ~2 X
  162. PHA
    5 `& _+ n( R, p+ |% g' A
  163. LDA $BC
    ; f$ B& o2 R& ~8 x7 v% ^# ^" `
  164. PHA3 q0 h  w$ e/ k! ^$ S+ `4 ^! `
  165. LDA $BB( G) ]) j; `. g- O# h4 l
  166. PHA* i. e8 Z) z( F
  167. LDA $BA
    ( B' \# E. ~  d' L3 t
  168. PHA7 c& X7 S! ]5 ]1 M+ L8 t6 u: m4 y
  169. LDA $B9
    / ~. Z5 P8 o4 W  L% E
  170. PHA
    ' D: [: T0 K* J) {0 {. C
  171. LDA $B82 O/ o- r, v# o$ q% @. Z+ s$ u) y( `
  172. PHA
    5 n% ?; c+ t/ D& k$ m! b- P$ r
  173. LDA #$008 f8 s7 S( m$ |* Q; t: [7 F% ^
  174. STA $B81 ^7 t1 e' ^0 f. a! y$ i- x  d
  175. STA $B9/ d. ]) R" E( }
  176. STA $BA
    5 N- ~3 Z9 b# \4 l7 ^8 ^4 |
  177. STA $BB7 K3 g, E7 {4 A* p, g
  178. STA $BC0 u1 W3 ~) x1 c( ^
  179. STA $BD: c3 Z0 W" y6 d- s9 J$ k
  180. LDX #$003 H/ g0 M( z; K2 m' S9 X
  181. LDY #$00
    % h" k  R; t$ C# w* r% |; e5 V
  182. LDA #$00" D3 G3 x& l3 ?# W6 P
  183. STA $BA2 y6 b5 B$ u+ J! c1 o
  184. LDA #$20
    ' w$ W; T  o. `( @
  185. STA $BB1 A% E" ?+ A% g  b
  186. ' q" @8 k# q5 n
  187. CL1:( o  t' f9 ^' V( l
  188. LDA $BB
    1 z/ a0 R/ x' r5 `/ X
  189. CMP #$30
    3 \5 g% l+ X& _5 N" a  |' `; P
  190. BNE CL2; L0 E2 X/ O: O3 W6 ^
  191. LDA $BA
    8 V4 f( b4 N7 L7 W: {% k
  192. CMP #$00  b8 p- O9 r6 p# b& C$ [
  193. BEQ FREEWRIYE) d  n6 w( R8 `6 G" d

  194. ' J! X8 A" Q# H% K) |/ Y- w+ M2 k
  195. CL2:
    ; B9 l+ p: J. I4 R6 S* [$ ~! q
  196. LDA $BB
    1 N4 a( a  X- _( y& a5 N% x
  197. STA $20063 B3 Z: P2 i" d- P
  198. LDA $BA+ j7 ?( ?8 y7 E# a+ Q# }7 y
  199. STA $20068 S% _+ ?0 T% l3 F
  200. 8 D% |# ]5 [# h7 j7 ]0 A9 c
  201. CL3:7 L4 N8 ]3 v7 C/ A! Y% s8 g
  202. LDA #$00. S8 n" Z" `1 Y9 b. K; U8 [
  203. STA $20075 G4 S  P, l$ \) ?

  204. 8 T7 Z" h' q* q6 K
  205. CL4:& u% X' d7 q1 A3 A9 k5 U' Q
  206. LDA #$00
    8 l5 ?! |: o) ^6 i0 g6 u
  207. STA $2000. H$ C  {' Q9 T9 e: O! N" P/ H
  208. INX
    9 c( Z) K4 u  G* Q
  209. INC $BA
    / E' b* _% Y; F- e; N- u8 }
  210. CPX #$00; u$ A: e3 o- I" C1 e
  211. BNE CL1
    & ]" i0 i) z- q' ?, x9 K
  212. INC $BB9 f. u  Y$ b8 N5 \
  213. JMP CL1
    4 ^# H. ^3 `+ q6 [. u" @# r+ S
  214. " ?3 D. L0 M  p

  215. # F( j; m, E" W7 V2 J0 Z) f# q
  216. FREEWRIYE:/ X9 q8 F; g! z) {. G. w1 q8 U' q
  217. JSR FREE0 o5 J- [% `* |8 W6 \" {

  218. 3 ]  j7 `0 O' h! G! q, h

  219. ) ~, Q' d9 V  g. Y; d' L; N

  220. 3 ]) A5 {# [+ a5 h: {# `# y% h
  221. ' @, ?& N6 f  S2 e- V( s. m
  222. 5 D9 i, \* Z- [5 ]9 \; @+ J
  223. CLEANF:                ; 恢复现场
    & @; V7 b( u1 W' W* j2 d
  224. LDA #$08
    , ~+ Y5 f" O# V3 R
  225. STA $FE
    0 b* g. o8 i+ ^
  226. LDA #$00
    : n9 u  n& C7 H8 G1 r
  227. STA $07F6
    + ~- d" ^( @  x1 j; d
  228. LDA #$24; K& J+ l& A! v  `" d, G0 o/ n
  229. STA $7FC0: v/ I5 g6 }5 @+ f2 Y& B- S5 L
  230. PLA
    / w. k+ \' s( G: k& `
  231. STA $B81 H% w5 R7 [  A
  232. PLA# Q' ^! l6 y9 ^6 H: Y; N2 L- }% n
  233. STA $B9) [) C$ ~- g' z9 t2 X' t
  234. PLA7 ~! S) g/ Y0 T- i
  235. STA $BA
    $ c$ z6 L+ c  e* z
  236. PLA* T6 m& B  X6 X0 g9 P' O
  237. STA $BB8 d6 J- y" [; p. k: @- H; Y
  238. PLA/ s( u1 q- d" C9 V; X1 H6 K, v
  239. STA $BC/ M0 o6 o6 j4 u$ `  O6 U: w% d
  240. PLA
    7 G/ ?$ q5 A5 S" A$ J/ z
  241. STA $BD0 H9 Y7 S) ]/ @6 C- [! r3 r
  242. CLRF:' z) ]: U" F4 G* K+ K, O1 z
  243. RTS
    . ~" U6 {  K. U
  244. ' _# P- e& s& N/ N4 q' m4 C4 \7 C
  245. W_DATA:
    8 _  V* D# h6 E, u4 ~3 q- a- Q
  246. .BYTE $00,$01,$02,$03,$04
    ( ]+ X" y+ x$ Y2 b" z
  247.   2 [$ r* D$ e# q  L
  248. W_PPU:
    ) G) ~3 b. K; B3 b6 f" m7 s! N! l
  249. .BYTE $98,$97,$90,$9D,$96
      F: }" B9 q& m( h: w: i: P6 g
  250. 7 m1 `1 ^3 [6 G
  251. P1_STRING:! z, T$ h1 x2 J) R) h* M6 V
  252. .BYTE $9A,$82,$00                ;"P1"" z2 r8 [0 C3 W

  253. 5 u4 U( y( o  M3 G
  254. P2_STRING:4 B' v! D/ v" j' P
  255. .BYTE $9A,$83,$00                ;"P2"
    2 Y  \" C0 ^1 W2 G% c
  256. + S  l% J+ t: _9 f! u
  257. WEAPON_STRING:& d3 W# F  h, f: o1 ~( y6 ?
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"; |* U$ z; `: K) p
  259. 0 V) \, Q7 F- A
  260. RELIFE_STRING:
    8 A$ r/ T* I8 b  P' A
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"- d! H+ p$ Q2 C" m0 F# U
  262. 5 y  S5 k& P9 P; U/ n" |- ]1 K
  263. P1_PPU:
    + ?! @. m3 g3 O8 e& y  S
  264. LDX #$00
    / k; N1 c1 R0 f! }; R1 T( _# n

  265. 1 Q2 p& q! l7 t2 k
  266. P1_PPUW:
    ( C1 H+ w# L9 k* I
  267. JSR PPUADDR_PROCESS  w9 C) F5 Y1 m% M0 Z
  268. LDA P1_STRING,X
    8 ~9 o0 v" V! S4 h
  269. STA $2007
    0 }* Z% l( N4 h  X: ~/ R4 C
  270. INX; P- V4 q; |' K) q; _4 V( U: `
  271. INC $BA, s$ \6 w4 h1 P! y! c
  272. CPX #$03
      ~) r; S2 W+ n
  273. BCC P1_PPUW3 R# W1 {+ ~0 e8 {/ ~
  274. LDX #$00
    3 r+ j" Q$ @% C. t) ~, h, ~
  275. RTS* ?! r; A0 A3 }. i

  276. / i- ^# C; ?  E1 B! p% b% E
  277. P2_PPU:
    : G" l3 }; ?- j# t; ~3 o& Z
  278. LDX #$00/ D. n6 @1 Q- x. A  Z

  279. - ^5 J" {2 C8 t) r2 |" P
  280. P2_PPUW:
    & f( E8 q% ^7 D6 T6 n8 b! {
  281. JSR PPUADDR_PROCESS
    : |8 I2 z/ |( o( |8 L0 ~* f1 p* T0 b
  282. LDA P2_STRING,X
    ' X  J0 z: l* J6 s3 J  e5 A
  283. STA $2007% t2 {7 e, }# U" p8 S
  284. INX$ f3 h: v: G' u
  285. INC $BA
    . j; i- E6 L$ {2 H
  286. CPX #$03
    4 A4 U( }: n& }/ X, K
  287. BCC P2_PPUW$ e; e9 n$ `1 ^& P
  288. LDX #$00
    . Z- Q2 C! o2 b3 j7 P4 W
  289. RTS* Z/ p5 H1 `+ z% E0 e: @: }5 H

  290. * V6 r7 q% d: B, `% e

  291. & ?" u+ g- U4 C/ [# I  D8 r
  292. LDA $BB
    + J* @: C" C2 E* c! ~+ x
  293. STA $2006- m  R+ }: n+ p- F& t' K
  294. LDA $BA
    & ~5 r) o# i; h" O( G- |  F, k5 k
  295. STA $20061 D5 ~! {& ^0 k4 u/ N+ f" E
  296. RTS" a* U6 ^* P3 R4 R: n6 C

  297. % U4 a  l) w9 w2 L

  298. ) C0 j9 w% ?  M" E

  299. $ h5 f; P. |0 s  B% g/ e
  300. PLAYERLIFE:% d$ q4 O" U8 s
  301. JSR LIFETODEC
    ( O5 o" {9 e% D9 ~2 G: Z! G$ H
  302. LIFEPPU1:. H7 G& C. R5 Y( B& f) ?6 D
  303. LDX #$00
    4 e# p+ Z5 k' V3 R; T  P' u- I' b
  304. LIFEPPU1RE:
    + c: C( f5 V2 g( y- K5 U( N5 c
  305. JSR PPUADDR_PROCESS
    + k0 [  |( N5 E9 _
  306. LDA RELIFE_STRING,X8 C8 \1 y/ x1 p/ k$ E* j
  307. STA $2007
    ( J: k3 A3 G' R* h3 h0 S0 O, I! T
  308. INX7 n" ^6 W' H, W  |  \
  309. INC $BA
    1 K! `0 `2 e+ z0 P) [& D
  310. CPX #$07! F" u9 e/ o6 ?( ]; w* Z: I
  311. BCC LIFEPPU1RE
    2 a3 q1 k; \1 u. ]
  312. & w" V% O8 V: R6 A/ U
  313. LIFEDEC:                ;生命显示写入
    & T+ n* r$ n9 `5 W) n
  314. LDX #$00
    5 t: L. V' k2 u+ t* i7 _
  315. LIFEDECRE:
    * w8 q& V  D' ^+ e# L( \3 j
  316. LDA $7A03,X
    / ~1 [4 I- `: V. _9 @# g9 y
  317. CLC
    9 D( w' r% ~! O: K1 p1 M* A; ]
  318. ADC #$81
    : d1 O# g, X$ L9 w5 d7 E
  319. STA $2007
    * k7 a8 X& y$ d) \) I( |! C  g( F7 N
  320. INX5 \2 `8 g5 E. E; ~% H1 |
  321. INC $BA5 t* l2 j# k$ h# ~5 E! x
  322. CPX #$03
    / I1 ?* i% I+ v$ t$ v( K( q0 l
  323. BCC LIFEDECRE2 f" D4 [2 `1 y/ B
  324. LDX #$00
    - ]! X6 J" u7 Q' o" g8 d
  325. RTS) f' H. k: l1 X# i% d6 u7 A
  326. 1 j  Z1 F) C- K
  327. LIFETODEC:                ;十进制转换
    2 M; }; {1 ?" k% U) p& ]
  328. LIFEL1:        ;initialise
    / a6 g; t! V) p
  329. STA $7A00        ;$7A00=F3
    4 c  \" O' R0 G: Q: P2 U
  330. LDA #$00
    + ?' R  r) x4 F6 n/ D: h& p
  331. STA $7A03        ;$7A03=00  ^& I5 s, {7 N" `+ Q9 z
  332. STA $7A04        ;$7A04=00
    : e7 p& j* @) i/ i3 N0 E' |
  333. STA $7A05        ;$7A05=008 W: C9 e1 E: l4 |# B7 h
  334. LIFEL2:        ;copy data $7A00 to 6001+ i6 N) o' m7 q
  335. LDA $7A00& b% g2 t& s% b8 \& i- M" B
  336. STA $7A01
    4 f" L  K: C5 v& j

  337. , Z" \  x" U4 ~' t: V& j$ d
  338. LIFEL3:         ;hundred
    + X% m) a. v3 a: O% e  j
  339. LDA $7A01
    ' J  i  b' x. j" l6 z; S" i) u
  340. CMP #$64
    0 f$ c. h$ H/ y
  341. BCC LIFEL6                ;$7A01<100 goto L6
    8 `0 j* L8 D4 x/ ~
  342. LIFEL4:+ |: ]/ P& h. `- S+ Y: S8 D1 u
  343. LDA $7A010 J' }) G4 Y1 Z3 Y" X) z& d; i, w
  344. SEC/ O/ @+ S6 n6 t* T0 M7 L
  345. SBC #$64        ;$7A01=$7A01-100
    $ o1 |5 s: x* C
  346. STA $7A01% J5 ^& W! o8 I. y# {" f, t% J% l
  347. INC $7A03        ;hundred++
    ( ?2 r5 U. R7 C3 S% }. I
  348. LIFEL5:; r2 |+ a9 K* G: N
  349. LDA $7A01
    & G, R2 P  U& L% {" ^8 i1 a; W" v! I# T
  350. CMP #$64& n+ C* v$ h7 e! W% h" ^4 f
  351. BCS LIFEL4                ;$7A01>100 goto L4
    * v0 ~7 E9 `& O' q4 ]! b4 f1 m+ {4 H5 y
  352. 1 X+ n7 t0 m) R  `; F  ]9 N) Q
  353. LIFEL6:        ;decade
    5 J# [& h9 f2 y6 G
  354. LDA $7A01
    - [4 x- N$ M( [# G# n( v
  355. CMP #$0A' O, ?- w/ r2 ^# ?1 b5 J0 r0 N/ ^
  356. BCC LIFEL9                ;$7A01<10 goto L9! l$ \8 |* A$ K4 {/ Y; y! O, ]
  357. LIFEL7:        , @0 _  ^' H- N" p$ m7 ]1 _2 w
  358. LDA $7A01
    : Z+ m9 m' b6 y$ `
  359. SEC7 R/ f. }9 }' k  C+ l' V
  360. SBC #$0A0 [& V+ L8 _1 T5 |  i' b, |4 X( @7 j
  361. STA $7A01        ;$7A01=$7A01-10
    6 V. g) g1 Y4 Z, B5 i9 J( P
  362. INC $7A04        ;decade++- L$ k, T4 e  \
  363. LIFEL8:: F2 F: C( @- F" J( W0 T
  364. LDA $7A01
    + V" ]/ j, v0 i9 Z
  365. CMP #$0A
    % x1 t2 A( t6 F! K. n! C- S% n
  366. BCS LIFEL7                ;$7A01>10 goto L7  z- p/ t# t( T1 p  p
  367. ;unit
    9 r0 c1 I- M) F' q" s
  368. LIFEL9:9 [! U- {" ], w4 l$ I3 j& k
  369. LDA $7A01        ;$7A05=$7A01& f3 b, |0 M' T/ f7 D
  370. STA $7A05        ;unit
    6 e. \3 K* N& n; L( R
  371. RTS        ;return% w# o9 m9 \0 F9 X5 e# q

  372. - Q0 P$ R3 K4 Z; r7 t

  373. 1 l8 s3 i- K8 Y

  374. ! C+ }) G7 H4 y% ~  _
  375. WEA:                ;武器ppu写入; Z9 H: V8 t0 S. p
  376. LDX #$005 h& t- x4 l9 d
  377. WEARE:4 T8 E6 K9 Z2 x/ O# `+ [3 E
  378. JSR PPUADDR_PROCESS
    & S, L  k7 p, j/ e
  379. LDA WEAPON_STRING,X+ M, I0 T: O! A: R
  380. STA $20077 Z" F7 r6 s% }0 F
  381. LDA #$00* Y# {! p$ h% r) w+ F/ x
  382. STA $20005 j; C* M9 c1 Q
  383. INX
    : ~) w1 G! K% a
  384. INC $BA7 u) B9 e: H7 \* i1 k0 n" f8 B5 z
  385. CPX #$07) @3 ^% U, h- ^! F+ A+ u
  386. BCC WEARE
    , p5 s0 Z0 U0 c* Q1 F! H
  387. ! k( A& S( R" Q2 Z
  388. READ_WEA:
    7 l  F! \8 q9 K( {' m
  389. LDA $B9# v" C) U$ Z* N6 R, N
  390. AND #$10
      A$ F! m$ D' r; ?9 p; D: s. m
  391. BEQ NWEA4 l; O# j5 x6 u# [: u& q$ O
  392. SWEA:
    * _/ n& k' |- k

  393. 7 v9 d7 R3 C2 b; a2 b, a
  394. LDA #$9D
      A7 ?  r$ t6 ~$ @, b
  395. STA $2007# N6 O" e1 q: z" c) E7 G
  396. LDA #$001 y1 y+ j! ]$ `" n- n8 f0 G& i
  397. STA $2000
    : l5 L2 t- O7 i7 W* V
  398. INC $BA; E* X4 \' R& v; c& f7 `' u8 c! f
  399. LDX #$00# ?% r3 X. O% w/ p& `8 a4 l
  400. JMP WEAREAD+ v9 A3 y8 E9 q- c! E$ e/ s( v
  401. NWEA:
    ! R, Z0 N# w, p4 @, G5 \
  402. - z$ j8 K1 k7 w6 ]) M  ]
  403. LDA #$8D2 }+ m& j: ^& X2 _! y9 i
  404. STA $2007
    5 j  Y7 `% a% ]. n$ R0 [- r1 f* [; {
  405. LDA #$00' i3 h3 a; Y. [* J; P9 s
  406. STA $2000
    4 X& L4 R0 ?+ n3 S' y
  407. INC $BA
    ) ^' v0 p% i; [
  408. LDX #$00
      j5 ^4 S( q6 I& o
  409. WEAREAD:
    1 W1 o9 \& _8 X! x
  410. LDA $B96 J# e8 a- j. U* d0 K
  411. AND #$EF& D: m) H9 m4 G  Y$ V) i6 o( i
  412. CMP W_DATA,X
    & H0 c4 y2 K1 g, b" [; I
  413. BNE WEACMP) B6 d( z& F9 c. o3 C2 p
  414. $ C5 s+ h0 z$ p. k, p3 s0 o
  415. LDA W_PPU,X
    & ~; ?" L  _, s" [! D6 g) z
  416. STA $2007
    3 x, U- j0 T7 _+ E
  417. LDA #$008 {1 V6 E% c/ n1 s
  418. STA $2000
    / T: t* _, A0 x6 W; C  a0 X

  419. 0 {2 @% n; E: x' t/ C9 w
  420. WEACMP:
    : J- W2 i+ H7 b6 r% V- N
  421. INX
    ( `! d; v) Y6 T3 u/ I6 _. J3 F
  422. CPX #$05
    ( w. A5 n( Y4 l( |
  423. BCC WEAREAD/ }& U5 f. _4 y
  424. RTS* M( U+ a% p4 j

  425. 4 B" w2 [9 n9 l1 ]3 h. p
  426. 0 y6 q/ P+ M! K' x
  427. PPUWRITE:- {2 {; l5 u, S$ K
  428. PLA
    / |* m  C# p2 V; v
  429. TAY
    3 @' `5 E# s0 }
  430. PLA
    ! ~: q6 [9 |, V" L! N
  431. TAX4 \# }- [2 p6 z3 c( j- U' X
  432. PLA
    + m1 Z- J* J- @9 e; }7 I: z3 |3 w
  433. LDA $25
    ! {+ q$ c7 {2 Y( s2 X8 r; M
  434. CMP #$00
    . M& @8 g) k. o, |1 _
  435. BEQ WP1* y* w0 k7 F, x7 _" f# L
  436. LDA $25  P  i' Y: k! t; w) n& Q4 D4 c6 ?
  437. CMP #$01! @* y  \! w* {2 D4 H' L* D
  438. BNE WRE
    8 E- l9 i/ g3 e0 B6 U
  439. LDA $F5,X% C9 N" X8 k1 d- h
  440. AND #$EF& n/ `! f. h! d2 w: l8 S
  441. BEQ WRE  F4 r2 ~5 k* _4 P# L6 |
  442. LDA #$00! D0 C9 m. {' M
  443. STA $7FA0! A' [0 H( h6 Z4 |8 `

  444. " N! S" f- T4 l' X5 V
  445. WRE:
    % x' F; \3 N9 W0 k* m9 y' @
  446. JMP $A000
    " f" ~$ b5 V9 C& V9 R

  447. / b5 j  L1 v! \( L: d
  448. WP1:5 `: I5 a; r: V0 p: c
  449. LDA $7FFF( O0 t4 x# \, F& M9 s, o! y/ E$ K% _- \: b4 Q
  450. CMP #$FF1 g0 |; U% S2 N- U$ I! E; V
  451. BNE WRE
    - P* A9 G8 L' b: y  ?/ M: |
  452. LDA #$00
    * a8 M6 u1 ^, L* S/ I
  453. STA $2001
    4 U0 e7 p0 F7 ^
  454. LDA $BD, J; \1 a/ q$ N
  455. PHA
    8 |6 x! E  x! L5 I) N5 j' p
  456. LDA $BC
    . C& L: a" B. ]+ o( v" q
  457. PHA
    " G1 o3 t1 G7 k
  458. LDA $BB
    ; i0 A: D/ g5 g. w' K% C: f
  459. PHA
    8 E6 |4 O/ t% R
  460. LDA $BA- f" H+ @" r8 [  h; [0 d
  461. PHA: e7 r# {3 R, t' X5 A- T! ^
  462. LDA $B9
    ! U4 i# J" r  |! O9 ]9 E
  463. PHA
    " q( V+ W4 M% w& v
  464. LDA $B8& u' n; d* j0 v2 n
  465. PHA0 P  d$ g( A+ a- j9 E' I& d1 @
  466. LDA #$00
    ' J: P$ ]4 J, ~3 ?
  467. STA $B8
    4 D. l, L# l* A3 j! C
  468. STA $B9. @  `" r  P  _9 k% r+ {
  469. STA $BA
    9 ?5 t: N+ q+ e
  470. STA $BB6 j3 d. N  E; Y3 _
  471. STA $BC
    4 G: z( {) f* k! D* ~
  472. STA $BD
    : R- v* ?& k4 n2 U8 K; H3 R. P
  473. LDA #$00
    # H! x+ V  S' v+ r; f" j$ \- x' y
  474. STA $7FFF) K5 G; ]" ~) b. A! E3 M! B
  475. LDA $308 q) g$ i% x7 C4 u* |5 b  y: S3 n
  476. CMP #$02& J2 z- g1 p/ ^6 E, r6 u
  477. BNE UNPROCPL3 \/ P& e5 K* j( b4 {* @
  478. LDA $7EFC
    ) z% {& z& `4 t/ {
  479. STA $FC
    2 T; N, i, r* |# A4 A) v7 g; g
  480. LDA #$00& E2 m7 A# n, B, n: F* n- p
  481. STA $A4
    1 z) L1 F1 c7 J% [& ~$ y0 d
  482. STA $A5# R6 W, [6 |$ U9 z- \: m
  483. UNPROCPL:
    , ]; S$ h, P" [! G0 ^& Y
  484. LDA $7EFD) _" y+ ?$ J, o3 u# M
  485. STA $FD$ E4 {$ N4 S. Q) p+ }) c9 C
  486. LDA $7EFF
    : @+ r. V  i3 f4 \0 x8 j
  487. STA $FF
    $ @: L/ }2 K/ }: a# B; ~( y

  488. " d& A2 ~' @9 \  M! r7 S
  489. WL0:* y1 Y2 X8 x  i  d
  490. LDX #$00( p/ }& r7 i0 p2 C5 V: ~+ p0 r; @
  491. LDY #$00
    + h1 o6 L$ J' z
  492. LDA #$00
    . D2 G) E" ^! L9 G+ [, U& e$ S
  493. STA $BA% d7 v8 T$ `5 U4 O9 W
  494. LDA #$20
    ( O+ S( H8 a) |3 y, F5 D
  495. STA $BB
    ( g9 R0 q+ D" h* t
  496. LDA #$007 J3 V4 L6 {/ K
  497. STA $BC1 p5 M9 ?! l' @4 \+ D
  498. LDA #$60
    2 S" `* V5 R* L& I  P8 @9 [2 X
  499. STA $BD
    7 [) d4 w  G4 N/ ~- ?

  500. 8 C! k/ z3 K% }+ D$ n1 @% M1 c, X
  501. WL1:' c8 R: ~2 I. L4 u. f3 `$ b
  502. LDA $BD
    $ H# r# h3 @: T6 h
  503. CMP #$70
    * Z. J& f0 i7 u6 c$ B2 o' y
  504. BNE WL2
    $ r- r7 F' L9 p" d1 J
  505. LDA $BC
    / E; X! S# U' c* L1 e2 O$ C
  506. CMP #$00- r) x7 N  x* g* y6 E
  507. BEQ WLR
    % V. ~/ U' I) s, c; `8 y% C9 a: U8 ?
  508. , ]( Z/ L2 [# |- f3 |% o1 {
  509. WL2:5 V7 c! E( j4 f7 r. g7 b
  510. LDA $BD. D( V$ C9 P2 [/ \' j
  511. STA $20063 n! b5 y/ F: O% ]# g; c) J- M
  512. LDA $BC3 @, x+ {; Y. }; g3 A0 c6 Z0 p" @
  513. STA $2006
    : R* e0 p3 g7 S" `

  514. / n$ h& n8 Z9 b
  515. WL3:
    2 p% o/ S( O: I1 S. I
  516. LDA ($BC),Y# p9 X' }' d5 w9 _5 k
  517. STA $2007
    0 ]. w8 n4 G4 s1 z8 |0 X: d! h0 p

  518. ( P! a& y- z  E! c- E0 m
  519. WL4:7 w( B+ H/ j; E" X
  520. LDA #$00- e- @+ {6 Y1 w9 k" \* E! A8 N9 _
  521. STA $2000
    & ?2 e6 f/ C9 a, Z2 \& m- ~% a
  522. INX
    1 p1 `& z, m$ H8 s7 |- O9 E
  523. INC $BA
    : p8 L/ d6 i1 S
  524. INC $BC+ c0 q6 J+ o1 x4 p
  525. CPX #$00
    ' F% b4 _% z$ `; t
  526. BNE WL1; u) F( ?1 @& Z! ?$ j
  527. INC $BB
    $ f- u/ k  _  {) S, A" @2 e
  528. INC $BD, E6 x/ a  x2 i$ {6 O
  529. JMP WL1
    $ l, D# E) i8 P

  530. 3 P% g! S" a; t8 k. o& S
  531. WLR:
    9 b6 Y; n# S4 u
  532. LDA $7FFE& ^3 S& j3 H& z4 r; T2 B; [, q
  533. STA $07F6
    - p- N8 A, D" z, }
  534. LDA $7FFD% d7 I6 Q$ m4 b/ q  a, K
  535. STA $00FE& T% F5 V; b; \* }
  536. LDA $7FC1/ ^: M# B  r  I. c9 [
  537. STA $07C1' |' k5 h6 U' @  ~. J" [
  538. LDA #$3F
    % |. M) P+ U, L( {) U
  539. STA $2006
    ( X+ \) l  g/ H7 w% `
  540. LDA #$010 {9 G. f9 a+ [7 H3 @+ d6 x6 h
  541. STA $2006; D: t  r5 [$ ^  _5 u8 h, `5 D, H. h+ u
  542. LDA $07C19 L6 [/ Q$ ^1 w( O: Q4 y
  543. STA $2007  X+ N& y# `3 ~* z
  544. LDA #$00
    7 b4 l5 U- ?$ i, I
  545. STA $2000. Y# Q5 }0 p- T% J5 s
  546. PLA6 x* z' e3 G+ {' ?# A
  547. STA $B8! j) c5 \* g9 P+ c0 {- a
  548. PLA8 W# P0 Y% q' `( s$ g0 ~% p
  549. STA $B9! y6 }2 C  J2 t# Y, q9 e: H  _- ]
  550. PLA2 Z  f7 l. T" _
  551. STA $BA% F# c, M; D" B
  552. PLA( \+ N2 |" Q. C" `
  553. STA $BB
    + B6 T3 x7 P5 A  \9 ~* g
  554. PLA
    ! l5 Q# ^% p  y3 I5 w
  555. STA $BC
    7 b; u0 l' @0 {2 u6 h, O1 ^
  556. PLA
    . X* q% s: Z3 m9 n7 e) p+ e$ U
  557. STA $BD- b0 l+ S% K2 l; |/ I
  558. JMP $A0005 n4 |) I6 X6 ~, C
  559. 3 V& Z/ t. Z; S# Q% d
  560. FREE:                ; 暂存器保护7 L& i3 ~2 M  R: j# C3 x; S
  561. LDA $BD
    1 _% N* a0 V  J& A3 B: K: E
  562. PHA9 J; [& a3 K* s# g4 w
  563. LDA $BC  B$ I$ Y1 h# o' Q0 @5 F
  564. PHA2 F. u# L. s, q' t0 h0 H0 d
  565. LDA $BB
    $ l. G/ M* }6 l: z
  566. PHA% b" y2 |  b$ J% _, x5 U6 @, [
  567. LDA $BA
    ) h4 I8 \6 `' v4 N; e/ R0 _1 M
  568. PHA
    ) x- }2 l* R+ B; g
  569. LDA $B9
    3 @/ q- D& `. W/ U" [& O) x& ^7 I
  570. PHA# h5 c6 G) b# w' Q$ m$ i0 K& @
  571. LDA $B8
    3 L: h+ J; z' |! T; U
  572. PHA% T% @- y+ Y" u) ^
  573. LDA #$00, m& k, J7 E2 p0 n$ ]
  574. STA $B8" j$ i- M  f+ M
  575. STA $B9- a! [' Z: E' C: }$ V: a. F
  576. STA $BA) P4 z& m# G) k/ A/ G) K
  577. STA $BB9 U! b$ t3 m9 @- n1 A& ]7 Y4 k
  578. STA $BC
    & J" O6 c, Z) ]3 Q2 U
  579. STA $BD
    ! F; r' ^6 m# B9 r) d0 O

  580. + a3 O# k1 R) h" Z4 }
  581. WEAWRITE:                ;武器ppu写入
    1 F% ]: |" S! J+ N  g1 e( Z  j
  582. LDX #$005 B" m' M; p  L3 j, V0 i, N& J
  583. LDA $AA
    ( I- }) Y% W4 f0 T+ t& v
  584. STA $B9
    7 s6 I  ]9 W6 J* f* [
  585. WEAINI:                ;地值初始化
    ) I+ S; t/ \* {4 v
  586. LDA #$A42 }' D, p7 \1 G4 x- h% M, Q
  587. STA $BA
    # _. n% P: r  U9 H0 O5 A; ~0 ?
  588. LDA #$20
    6 y( }. Q. P7 b: b  \: l
  589. STA $BB
    3 r2 }2 M' P4 J% l" K. |  t
  590. $ L5 e7 N- m7 y% q0 O8 [- C
  591. # y' f, g, P  f# I
  592. JSR WEA
      [% n. i" V1 n; H
  593. LDX #$00                ;武器ppu写入
    , C" e% |' L1 e3 V  L% t4 J' n
  594. LDA $AB* [0 }8 \3 x' y, n
  595. STA $B9
    * d& o& a1 H* E
  596. LDA #$B32 i6 H) r% e/ ~
  597. STA $BA
    # D- |4 ~- C& K1 x' p
  598. LDA #$20% A" y! X& F# @
  599. STA $BB: O5 u* l4 Y- r7 g) i

  600. 7 y0 Z* k4 I& ~- O, R
  601. 1 s7 a4 d# U- v, L$ g+ S0 c% Z& Q) G; {
  602. JSR WEA: t& X5 U% \6 ]1 X3 ?
  603. 9 f7 Y$ B2 Z+ V! P6 d
  604. LDX #$002 E, Y5 V6 u0 C$ S" H  ?
  605. LDA #$E4
    9 q: A% M' k7 T" {& Z4 n! t2 C
  606. STA $BA
    8 P7 |1 j  z: n
  607. LDA #$20" \( D3 U4 a" e, s! C
  608. STA $BB
    2 h# R9 s3 k5 s. b
  609. 8 ?+ Y0 |, M# s( U2 }
  610. 9 q  @) H+ Z  H) l
  611. LDA $326 S4 i9 Q( m! f7 H: f: L, e/ d
  612. JSR PLAYERLIFE% l. T  k* C* ~- m

  613. + B3 p% s  M2 D
  614. LDX #$00% V! J6 a9 p0 T/ x  p( J: X
  615. LDA #$F3
    , W8 Q: k- \, M; i
  616. STA $BA
    ! f# p: G2 X( E! c5 l$ ~
  617. LDA #$207 G& q8 P* q7 B, M7 N; D
  618. STA $BB- q1 P! t5 `+ c! H4 `
  619. 0 [' N; u8 d' T* D5 z

  620. + P3 A; e' R$ \  P
  621. LDA $33
    # w/ |) k& i& r5 |9 T7 v
  622. JSR PLAYERLIFE
    . V) e: X# f/ n9 [* q
  623. & P& H/ Q3 J3 u9 N  b5 G

  624. , q3 ^. {  d5 |! k
  625. JSR PLAYER_01_PPU% {* ^: `. a  ^- ~; H
  626. JSR PLAYER_02_PPU
    1 z' ~3 Y/ l, [. z' v* \* c
  627. $ x; {7 p# o/ |$ u/ w

  628. * \  A( Q7 P) N% c" j) e7 V
  629. JSR PAGE_PPU
    5 }6 U% S% a7 ]" @+ T9 [
  630. JSR PAGESELECT
      f6 O4 C: p+ C4 X& X; C

  631. ) ~, I' u+ Z( g# {7 Q7 t
  632. 0 c& T' [* M5 N

  633. " p# |, x2 v/ b3 r" d

  634. ' U3 ]$ M5 k8 d# }* |' G
  635. ! w, U+ B8 j& z

  636. - G4 e& q) j' W0 E2 O3 h

  637. 6 ~7 E& B6 G4 n* l# y( [1 M
  638. 4 d) ~) [$ [! h6 S. W# z$ `

  639. 6 B) r( [6 I& m* K1 t
  640. 7 S$ [' j, g& \) s$ _  s; W
  641. 3 \1 c& O' f# B
  642. 5 B: P- a8 I* x. X: m9 ^' H% \
  643. 1 Y. y! F4 U, F/ x: Q
  644. PLAPRO:                ;恢复现场" G% {8 F0 c5 g- g+ P. e
  645. PLA
    ; [' d0 i$ F+ v0 u. T+ N  w
  646. STA $B8/ K% b% M& K! [# F
  647. PLA
    % D$ G7 A. @* p  C& Y
  648. STA $B9
    & i3 f1 @* W* E% C# F4 \: X
  649. PLA
    # H0 [' s2 a- {; o3 N3 v
  650. STA $BA0 M3 c0 f6 J+ `3 e) b4 `+ W6 W
  651. PLA! o) N5 n. d0 Z9 {; H" q5 |$ \
  652. STA $BB& i( l8 B1 q( d+ p* r: L
  653. PLA
    7 U6 p# M& p, m4 L
  654. STA $BC
    & a- |7 k  L, Z: t2 }% D! K  h
  655. PLA
    ) `8 n  G/ [3 n9 R+ }& R: Q
  656. STA $BD
    1 l+ Z( ~# u3 q/ U( o
  657. FREERTS:* e0 u' J# E7 M
  658. RTS
    + O: F& _5 b4 S, u
  659. : ?9 }2 C# I$ K) G4 h% v
  660. INVINC_STRING:                        ;invincible( |. M1 P1 i* b! Q4 p
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80( E5 P( }7 K/ i  V" \

  662. . g3 n! b7 D6 j; x$ ]1 k
  663. INVINC_PPU:# w; P$ R# {/ i/ G" _5 q
  664. LDX #$00
    # S$ g+ I8 t, @; a
  665. LDA #$62
    6 D$ h4 z1 A9 c$ }% B) ]
  666. STA $BA# D6 X, N' U$ v# \' d
  667. LDA #$21
    / w* G6 J0 E  [
  668. STA $BB, L* x; b1 S, I' Z  x

  669. 1 C# |  |7 V: z6 d
  670. * P0 e3 a; y( h5 n3 r+ e
  671. JSR UP_PPU* b5 Z/ r! A) s1 F0 ], X. O5 v
  672. JSR INVINC_WRITE+ R0 g7 F+ J2 v
  673. LDX #$00" ?& n& Y$ j; _, i! o
  674. LDA $07A02 {8 n( b! S  v* H! |, V
  675. AND #$01
    0 f: W7 \. b8 {4 ^0 n8 ]
  676. JSR ON_OFF_PPU$ N$ l  x/ K+ ~" f7 D
  677. LDX #$00; `/ }3 f8 x. L: _/ d% _: c
  678. LDA #$71
    " O5 l$ T$ J+ [$ F
  679. STA $BA' L8 L. a  B/ A( r8 P
  680. LDA #$219 E" k3 y4 E  Y, _# H' W, R
  681. STA $BB  K  b6 M) V: P% D" K, b

  682. ' u; k. J& Q- u7 P
  683. ! [3 M. p( c& k
  684. JSR UP_PPU6 b5 ^) k2 |- f
  685. JSR INVINC_WRITE4 U5 w7 S6 N% C$ r
  686. LDX #$005 o& T- T2 c/ h1 N1 A4 {( q* z
  687. LDA $07A11 F/ P9 s9 K# u# D  A9 L
  688. AND #$01
    ' `$ ~7 W4 s5 F' L4 Y
  689. JSR ON_OFF_PPU8 l* G" N% w9 ^
  690. RTS2 A1 a0 u+ r7 ]3 I
  691. 1 C, b7 M% M& l" Q6 j  ~7 d
  692. INVINC_WRITE:$ a  i8 C* c& n$ g; O. T+ i8 ~! ?
  693. LDX #$00
    1 z$ S( m: i7 Y, v( c# H/ x
  694. INWRITE:
    8 x' f: p" y5 @5 r8 s
  695. JSR PPUADDR_PROCESS
    - d- i/ Q  \6 }/ P
  696. LDA INVINC_STRING,X- s7 B1 B& f& T( j# f1 R. ]8 R- p
  697. STA $2007
    : \0 W. o0 X# S- d/ s$ L" [
  698. LDA #$00
    0 z, b$ ?2 P$ u( w% f! X- F/ P; ^. Q7 r
  699. STA $20009 C5 }' i/ x6 f! |
  700. INC $BA; e9 }8 m& ?6 E/ Q& o! O* h* V
  701. INX5 S! o7 G. c5 U" n5 T  K. [
  702. CPX #$07
    4 m1 _: A* C% a; g: P
  703. BCC INWRITE
    ( h: W7 C# n- e- O& s
  704. RTS
    1 T' t1 H" o; m' A4 n: a7 p, k
  705. $ J1 k# _9 Z0 h8 B
  706. ON_STRING:
    , [2 a6 {/ K7 V! G
  707. .BYTE $99,$98,$80
    6 P$ G) s2 c/ U1 [6 Q

  708.   w( D/ L" G, s2 F. s. Y7 ^
  709. OFF_STRING:+ H% |3 V3 @4 s1 L) B# P1 \! T( R
  710. .BYTE $99,$90,$90
    8 v9 M6 Y' r# d3 p' K+ Z
  711. 9 @0 S" R- J1 I: M) L
  712. ON_OFF_PPU:. G0 s8 M, r5 P" }2 ^* c/ x
  713. BEQ OFFWR: q4 T( \2 i2 d# q7 u
  714. ONWR:
    9 Q: S; T7 @( q3 |) D* T& ^5 x
  715. JSR PPUADDR_PROCESS
    # P' V( W9 {: x4 D( q6 I$ K
  716. LDA ON_STRING,X7 {) _  ^: v, U" Y. M9 l: u
  717. STA $2007
    + e* A6 x* _( [# h( s8 I
  718. INC $BA$ \2 R% r' j7 B9 X2 e( k& ]
  719. INX9 t3 ?+ @* h6 u
  720. CPX #$03
    $ n6 o" h3 @, T: p
  721. BCC ONWR, b! L' U6 {: I
  722. RTS
    5 U  N' }0 @8 ?3 O' k+ X8 u% y8 }: k+ U
  723. OFFWR:
    / d5 Y) |$ }( D
  724. JSR PPUADDR_PROCESS/ s1 e9 K- R7 n- i+ ?
  725. LDA OFF_STRING,X" B9 ^2 d0 t/ w+ z$ E, \  Z6 }
  726. STA $2007
    , b. v1 _3 M8 h
  727. INC $BA
    % r% ~1 I! D' v( \7 Y# Y  A
  728. INX. S) F& r" S' ]
  729. CPX #$03
    : C% w; s& q  d# g& c+ r4 A
  730. BCC OFFWR+ V1 u; l# E$ \" L- f
  731. RTS& x& h2 x, x! h8 G/ |
  732. - Y1 y- @0 o- s1 `: Q/ ~7 {2 d$ D: c
  733. LIFELC15_STRING:
    + k6 c9 `! }% G# t( ~+ F
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80/ ?7 d: z4 a/ _  s, \

  735. : U! Z6 o: E# a: U) N
  736. LIFELC15_WRITE:
    1 v2 H: T0 e& r8 E  R7 n
  737. LDX #$00
      m5 U6 Q: R' F$ `/ U- ?* g
  738. LIFELC15:0 Z! Y2 g7 N) d) [
  739. JSR PPUADDR_PROCESS2 y/ N: k( y9 v+ N6 j4 \
  740. LDA LIFELC15_STRING,X
    % A) }' z' g2 V! y
  741. STA $2007
    " w0 ~$ g* ~% i$ p, y
  742. LDA #$00# v8 q) `" O2 z1 ^1 B% n3 d7 {$ y
  743. STA $2000
    ! T+ `( ^0 w1 \4 W% ]" b: m
  744. INC $BA: t8 ^* P2 B9 b- X' W- w& n
  745. INX
    / H1 B" s% k. d5 M3 Y
  746. CPX #$078 J' v% z, [& t! c0 e$ s+ t& z
  747. BCC LIFELC15
    + ^+ d$ \2 L: I, x3 Y5 h) M# G
  748. RTS6 B4 H: t7 z3 J$ y! ~; x
  749. & L* h9 Y: g( J+ K/ q
  750. LIFELC15_PPU:
    & C+ ?* a, U% [! q" p( m! l
  751. LDX #$00
    * Y4 f% J1 \" U' H3 L
  752. LDA #$A2( f8 u$ i% s2 |8 D2 y
  753. STA $BA" x' U0 o) L- }- q* G
  754. LDA #$217 ^( t7 J  G$ ?7 F
  755. STA $BB8 S+ X+ ^4 n" u# b% d# X( p' Y) C
  756. JSR DN_PPU2 r% b, R# ?6 M0 e/ I9 @
  757. JSR LIFELC15_WRITE. `$ p+ y: B) z) ?/ w8 @
  758. LDX #$001 e9 f: j& W2 l6 K
  759. LDA $07A0
    , K$ Y% h8 n" q) q
  760. AND #$02
    4 [0 R% @( `5 {2 V& R' H" B/ V/ H/ T1 q
  761. JSR ON_OFF_PPU  R  h; o3 O& R# r. n* N$ N. c
  762. LDX #$00) z9 H3 Q9 n, p6 C- W2 e
  763. LDA #$B1/ R2 l2 \' Q9 l" g* i8 @  P! r
  764. STA $BA+ t4 q- v+ @; \  k5 n3 }" @, q- {
  765. LDA #$215 l8 L' \5 Z0 y3 E/ F! {2 b% W$ n
  766. STA $BB2 N2 X- c: x( z& K* d
  767. JSR DN_PPU
    ( U' b+ S# O; f" u. W8 l4 o; ^8 I
  768. JSR LIFELC15_WRITE7 ^; x! S  f+ B, G: S% {7 _
  769. LDX #$00
    - Q+ I/ ]' [$ {3 Q1 L6 e
  770. LDA $07A1
    - F# \( h  b9 T
  771. AND #$02
    # ?( ^2 N1 h/ L! J' J
  772. JSR ON_OFF_PPU! r4 H) s4 U# x# _( \
  773. RTS
    0 A0 ?8 W: X& h7 h
  774. + x  G9 P4 s/ F
  775. DOUCON_STRING:
    ( ~" S5 Z" E9 t
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80/ Q- C& ?/ c# _

  777. 1 z- k! T% r% m& N
  778. DOUCON_WRITE:
    * S# I% ^9 ]4 n* E8 g( d
  779. LDX #$005 U3 V: T$ S& i/ S$ G1 n3 c; h
  780. DOUCON:0 j5 p; F- e) k* H: G8 m* N; m9 g
  781. JSR PPUADDR_PROCESS2 s1 c/ _" S: m! j& Q/ a
  782. LDA DOUCON_STRING,X+ V: ~' u) I  E
  783. STA $2007
    7 p( H8 e- K/ D
  784. LDA #$00
    ! ^" u7 W9 s( }- E8 p
  785. STA $2000) Y& s  f3 R( y' O. S
  786. INC $BA! h3 N- c! ]1 `
  787. INX
    2 \' x2 W0 n# ~
  788. CPX #$07
    ' V) V4 q% ?4 j
  789. BCC DOUCON
    + @* s# H5 ~( ]* B" k
  790. RTS
    6 a2 G/ a( z, r& ]8 C

  791. - {. G7 ?1 ?. x7 z$ o1 J; O
  792. DOUCON_PPU:
    9 ?0 L' U) ?. o6 G: m
  793. LDX #$00( E* W+ [2 o9 a1 n3 m
  794. LDA #$E2
    - J# j0 a6 B) a; q( E/ j* \0 w5 S& b
  795. STA $BA
    ! ]8 r* ~3 _+ p: k' s  J
  796. LDA #$217 d; {5 b: J) R% G( `9 ]
  797. STA $BB4 K+ W1 n# T. }( M8 W( v
  798. JSR LF_PPU  ~# Y$ }5 ^# P+ ]* {9 R
  799. JSR DOUCON_WRITE
    & D: b9 \0 b- p  x9 U
  800. LDX #$00
    0 L: i( Z# T& S5 C. n( y
  801. LDA $07A0
    7 x( m, Z2 `  E
  802. AND #$042 Q& _, j, m) W/ @# d$ ]
  803. JSR ON_OFF_PPU
    ! K: s" i; r- H' u4 x1 G
  804. LDX #$00
    ) D9 a# Y. f! L/ A3 i
  805. LDA #$F1
    " T% n) ~0 S, A, c* f
  806. STA $BA' h  z# e$ |: O+ z6 R
  807. LDA #$210 h; x7 W4 X4 e) U  K5 s: C/ S
  808. STA $BB
    . V2 m; U3 C+ b/ V% ^9 N/ u
  809. JSR LF_PPU
    7 c" v8 T- w) `8 `
  810. JSR DOUCON_WRITE
    0 G$ \8 ]! W# u1 |6 w9 v& c
  811. LDX #$00& P9 k/ y" n2 X) g# i
  812. LDA $07A1
    7 G% Q1 v; n9 E# f( U
  813. AND #$04% l7 E( j5 i; f1 u6 B
  814. JSR ON_OFF_PPU3 x) N; }0 C: B% x7 Y0 I- H# _/ g
  815. RTS
    % M. N4 T- e. w

  816. ) y: j1 ?0 C$ c5 F
  817. LIFELOW_STRING:! D4 x7 E3 ]1 O, w2 h  G7 V$ l
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80. J+ G* g5 }- ?: V: a( T# k

  819. $ r" O! E! a2 M% _5 B% w: [% A. c
  820. LIFELOW_WRITE:
    ! k; w6 G* V" ?  x% h* g+ N  P0 I3 \$ R
  821. LDX #$00$ a; F/ v5 ]9 I
  822. LIFELOW:
    ! @7 S% |2 o3 l, m' m1 B3 G
  823. JSR PPUADDR_PROCESS
    ; \4 d6 E* _* F" D, U
  824. LDA LIFELOW_STRING,X
    & X' Y) l# c6 Y* s7 A
  825. STA $20078 g& J2 i' o8 Y7 ]8 T% T1 ~8 B- _
  826. LDA #$00
    " n& @- k- a' u" i( F, K
  827. STA $2000
    9 W2 K  M/ O/ h6 ]3 Q
  828. INC $BA
    ( P4 ?  u# r" k8 T
  829. INX
    ! j, o7 e3 J& k# V0 k9 D
  830. CPX #$07
    ( E  G' Y, Y0 s- J
  831. BCC LIFELOW" K' T4 {( |5 i$ V4 d5 x
  832. RTS
    1 d* N7 E0 K7 A5 n

  833. 1 y5 ]% ^6 M; ~4 Z" |+ \+ K! I) f# D' \
  834. LIFELOW_PPU:
    8 N, j; C* `0 M5 T5 v: `9 G  Y5 w1 X
  835. LDX #$00  U3 }* H8 U1 v; [) U/ ^1 D* \0 y
  836. LDA #$22
    4 E7 A2 ?# C& s2 ^
  837. STA $BA: `+ c$ M* ?8 {8 j- A% v' N
  838. LDA #$22! V+ _/ l& l4 S0 K, O& S8 B
  839. STA $BB
    ! F' ^8 a6 j, V/ D: f

  840. ( D, p' \1 }4 l+ x5 L/ k
  841. : i* i* h0 F9 m! {8 Y2 s
  842. JSR RG_PPU3 t7 A0 i! X% `1 c, I% f
  843. JSR LIFELOW_WRITE
    ' d5 p0 j7 k, b
  844. LDX #$00
    0 Q) [. }! v5 X( D. \- j7 f
  845. LDA $07A0
    * d0 I+ e6 O% T3 H
  846. AND #$08
    9 T7 h$ G8 {4 k1 G; T% L# M
  847. JSR ON_OFF_PPU" _$ N: N' ^& p7 F2 Y
  848. LDX #$00; O7 W( }4 `$ _+ [; H* P  H
  849. LDA #$31
    ' j& _. W" Y  M" b  e. B
  850. STA $BA
    0 E' |; x7 m! H( @
  851. LDA #$220 t. F0 T9 b7 m* i5 e
  852. STA $BB& d* `1 A& a+ r+ l. Q* b
  853. & b$ s& x. j; a7 q0 M

  854. 0 O( v& @* P4 i7 k
  855. JSR RG_PPU6 \1 I) v) ?' H( u; ]
  856. JSR LIFELOW_WRITE. U2 x- E+ X. Y+ t
  857. LDX #$00
    6 u$ [4 }1 H, l5 z( D1 ]* d
  858. LDA $07A1
    , H5 I; V. N9 ]2 h! m# r
  859. AND #$08
    ) p5 Z5 e  w9 g! Y, d! I5 x( e
  860. JSR ON_OFF_PPU1 r4 Z) ~; |/ P2 M
  861. RTS. f! r( }* J8 s" b; m/ Q+ h

  862. : r, Z# o- Q1 g% z+ N* u( y, ~: T
  863. KILLON_STRING:9 k: t- A, T! X5 G$ m7 Q$ d; I4 T
  864. .BYTE $95,$93,$96,$96,$99,$98,$80! @' P& F2 }* V. U  `, S; X
  865. ) ^% k+ c+ j. c6 d6 X3 k% X, R5 v
  866. KILLON_WRITE:
    9 W; ?# ~0 ?# B4 q4 C! [1 Y
  867. LDX #$00$ `/ ?+ Q$ Q' e: b  O2 {: L# S
  868. KILLON:" Z9 w9 U" Q( c1 t
  869. JSR PPUADDR_PROCESS  x( T' e9 U6 {6 V. ~3 ~" S& g
  870. LDA KILLON_STRING,X
      g/ c) y5 b# ]" Q) e  d. N
  871. STA $2007
    2 @  y! ^2 Y6 i' J7 [# `( }
  872. LDA #$00* u/ p  m4 W( z0 Z$ i
  873. STA $2000* S* k, G1 B- j8 c  d! \
  874. INC $BA" }3 U3 B2 S; t" P7 O0 V. w
  875. INX
    ' m+ K: x6 g" z2 k! x$ ^. v
  876. CPX #$07
    3 {! ?  z2 {5 e$ }
  877. BCC KILLON
    . A( g9 r6 Y. _% E. U6 E7 b0 _
  878. RTS" w% \/ J  }4 f7 i4 j
  879. # \4 `, |$ g2 t" k+ |' _) [
  880. KILLON_PPU:6 |+ k5 g- U0 n0 h% r# M
  881. LDX #$00
    % _) o, }- d; l+ |
  882. LDA #$62' k! D6 d' f: R2 e. p) P' r+ c
  883. STA $BA" p$ e7 {- a6 }2 ]
  884. LDA #$22
    ! f$ O( I& Y, |& t; E5 J
  885. STA $BB9 B6 e0 w  v" p" p" O9 v

  886. 7 `0 _+ O2 K& D9 q1 _, x- c

  887. 6 a7 T: L. N0 J, x
  888. JSR B_PPU3 z3 u6 N: w; J; m# n( T% `
  889. JSR KILLON_WRITE
    ; b) \5 ~0 e9 k3 W% A% w  O/ j- `- h
  890. LDX #$00
    5 _3 {. o8 P: j* ~$ [3 e
  891. LDA $07A0
    " w/ W; Q4 t' t, L4 C
  892. AND #$10" y6 P# a; P7 y/ s2 p0 p! D
  893. JSR ON_OFF_PPU
    9 [* ~3 t  A( I3 s- ~+ H/ _
  894. LDX #$00# C) v8 t1 M, W( g5 [  w  N
  895. LDA #$71
    . ^4 Q( ?  O3 r' I
  896. STA $BA: Y  ?2 C- \, W( ~
  897. LDA #$222 G* \3 @; Q& [8 B
  898. STA $BB. t* S; x! c& h7 |0 f0 C! Y1 u
  899. ) A$ m; X8 v6 x5 U4 T

  900. 5 J3 j1 B" B& G" w& a
  901. JSR B_PPU: E' w  r5 s$ V. X9 J% M; u
  902. JSR KILLON_WRITE6 [  A$ D" i& |9 l" X
  903. LDX #$00
    . x0 E1 S% n5 H+ C
  904. LDA $07A1
    ! _$ q- J8 j5 d& M! z' t( g1 \5 g/ Y
  905. AND #$10/ G( |( v2 w9 k
  906. JSR ON_OFF_PPU) X/ u1 ?! t% }8 R7 t
  907. RTS
    " E8 p( p4 ]! b+ E
  908. 7 N/ u' X- a% I; a) r7 L
  909. SKYFLY_STRING:! P- w- g9 q: m
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    , h6 c9 J# V% h7 _

  911. 8 ?  T& c& r7 B% Y% B
  912. SKYFLY_WRITE:. M0 d5 ?( L* S
  913. LDX #$005 A1 t7 o8 s7 Y; Z! s7 s$ R
  914. SKYFLY:) V. i" I2 e* ?1 N$ [
  915. JSR PPUADDR_PROCESS& C+ w2 t9 }- s/ Y
  916. LDA SKYFLY_STRING,X
    $ O2 W+ p; T; C6 Z0 \+ G' C5 d& k
  917. STA $2007
    3 E% x) i9 D# v
  918. LDA #$00: e) ~/ l- y' r( n# \0 i5 i
  919. STA $20002 B1 |) d0 V/ l3 b/ f  f( \
  920. INC $BA
    . i5 h* Z. Q2 {+ m% x0 C) J8 C
  921. INX
    2 d. S  o5 c! w8 t2 X
  922. CPX #$07; p, t3 \/ g& a+ i- N# I1 u- |
  923. BCC SKYFLY
    * J5 ^. J0 V3 `# O9 [/ Q0 g" o
  924. RTS
    9 q* R6 R, z6 z8 d% `3 Y
  925. ' x! q* ^& X5 c: X* T0 l
  926. SKYFLY_PPU:
    , [2 p- K! s# q2 r
  927. LDX #$00
    4 T: e, I" y, p2 O2 s' H
  928. LDA #$A2
    " g6 |" G! @* L, S! s8 H0 Q8 N" _
  929. STA $BA+ x" G$ {, {) X+ N; e
  930. LDA #$227 W5 P6 D9 Q8 C1 N
  931. STA $BB
    7 p  i5 B# j4 @/ y. k
  932. + y- w2 y' a% G' x: N0 c

  933. ( b, F4 t+ r6 u  [0 `; \( X6 c
  934. JSR A_PPU7 k9 o# g% @9 k1 ~6 C
  935. JSR SKYFLY_WRITE
    0 a$ I( U+ I4 w0 M2 m# V
  936. LDX #$00
    % W' ^0 H# S! R6 E3 f* f
  937. LDA $07A03 [& l" y$ c% e: ^
  938. AND #$20
    5 G1 J! }. n8 [9 s+ j
  939. JSR ON_OFF_PPU* F& u- w  W) ]
  940. LDX #$00
    ) G4 [' E$ w9 p# Q
  941. LDA #$B16 n5 n3 }6 j  Z) d" z# p
  942. STA $BA$ D* k0 K2 T- K
  943. LDA #$22* B4 Q' w& o( A) \( {% [3 ^% c
  944. STA $BB
    6 j5 ~7 k5 u; R  {& J9 c

  945. $ M, y% N* \  Q/ A- T, r* G
  946. 5 X4 x6 y, s. h" P
  947. JSR A_PPU: h7 W, d$ L5 _& t
  948. JSR SKYFLY_WRITE' G! @4 l- v+ V6 L' e3 m% c
  949. LDX #$00
    9 V7 u- Z3 T4 a# U- m) W
  950. LDA $07A1
    , z, M8 m1 z7 j9 t9 m5 d7 f0 @' L% _
  951. AND #$20% B5 k4 Y: L" n3 @" O+ l: V2 d
  952. JSR ON_OFF_PPU
    + m* z" w4 h6 H3 `- I
  953. RTS
    : n* I6 R4 W) i' I
  954. / i) O# R) \! L0 O' Y& Y
  955. BULADD_STRING:4 y+ O. w9 }) v, V1 M
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    ) F' I' ~) D! q  I) O# n

  957. ; d4 c5 o8 J' X7 F6 W
  958. BULADD_WRITE:# s7 B9 |! \, {" a' r5 ^
  959. LDX #$005 o3 J4 {& s  T/ ~6 o: z: J
  960. BULADD:
    0 g$ [) f  F0 P5 O* m
  961. JSR PPUADDR_PROCESS! _  n1 G' L$ h' T7 f
  962. LDA BULADD_STRING,X0 ~8 Z" K7 h: c
  963. STA $2007. ~* Y: W( N/ s0 s* Z/ b
  964. LDA #$00
    4 T8 V7 l6 ?1 |5 f  @0 p3 v9 h5 r$ b
  965. STA $2000
    2 O$ Q0 D# T: O8 S. l
  966. INC $BA0 I( C$ h/ O1 d5 `0 n6 @4 u0 n  f) o8 p
  967. INX3 E6 T& q# a  `/ q1 Q- l$ a* j
  968. CPX #$07. d; a# G  _7 G  \
  969. BCC BULADD% p( a1 m+ X, P" C8 y' S
  970. RTS. |+ Q! Z& X! s

  971. + E3 E& x" A/ Z/ x4 s
  972. BULADD_PPU:
    1 P& p0 S: u4 G: |
  973. LDX #$007 B% b9 ?/ c4 O, n& r( P/ I
  974. LDA #$62
    " x5 I& F1 a8 `0 b5 f+ A' Y
  975. STA $BA9 b: g2 L. @5 U1 h4 d
  976. LDA #$216 ?8 H$ Q. E4 _3 C% s7 w3 v
  977. STA $BB$ a2 S! T( U# R5 [0 \0 k6 w2 m/ m
  978. ! `7 S) K9 \; ^# Q" Z# \
  979. ! `5 ]0 r+ Z3 i6 L! H
  980. JSR UP_PPU
    , ]' G9 E* a9 q9 Z; _# f0 I
  981. JSR BULADD_WRITE- W! Y7 a$ k5 _. s" n2 v7 w
  982. LDX #$00
    , S+ c) ?" v! u, A/ y
  983. LDA $07A2! C3 G( R2 s/ i. |( e( o) `
  984. AND #$01
    1 L9 Y  X! |; G$ I
  985. JSR ON_OFF_PPU3 l' n# J& n9 O3 H4 F$ }- x
  986. LDX #$006 _& j7 S) ]/ r% N5 h" c3 i
  987. LDA #$71
    8 J: O: q9 a. W! H1 B. q! q: p
  988. STA $BA
    2 I: H: W& a8 y1 ?
  989. LDA #$21) H/ L) [  t+ y: L" T
  990. STA $BB
    . D$ R, p: k: K! K
  991. 2 i. d% T5 w- m3 V2 G
  992. % v- ?* Q/ l& r
  993. JSR UP_PPU; v  d, z6 B1 s# L' h
  994. JSR BULADD_WRITE
    ; [! M# A3 r) w2 {- w
  995. LDX #$00! L/ U0 T' d; x0 i, Z
  996. LDA $07A3
    / s9 `% ?2 j- m4 Z9 A
  997. AND #$01
    7 f5 W7 O- t/ y- @5 e5 m
  998. JSR ON_OFF_PPU
    % `" d. N2 j7 F7 C! ]$ e% f5 Y3 M
  999. RTS
    : R6 v+ o$ A  y1 b4 q  S0 `/ e8 x
  1000. , b% w. p5 A, b& a
  1001. MENU_PAGE_STRING:4 B5 o3 q$ _/ w
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$815 ?. F1 N+ {( s( m7 A, H# j

  1003. 8 Z' Z% Q4 b- n$ u6 W/ q" s
  1004. PAGE_PPU:
    1 D8 P) }- w: M8 Y6 u# N% i! h- |+ \
  1005. LDX #$002 {( l' h" t( k2 n1 L
  1006. LDA #$0A, }- _4 V" W% E3 q
  1007. STA $BA
    5 I8 }7 _  E2 w, k! o
  1008. LDA #$23
    ' g  U( b/ d' c: r
  1009. STA $BB+ S, G! U& k3 w1 T* T
  1010. 7 Y6 q) Z7 y0 o( |1 K9 P9 z
  1011. & _7 P# T* m4 `
  1012. MENU_PAGE:
    $ t5 V# s; ~; {/ c
  1013. JSR PPUADDR_PROCESS
    . D% E4 V" x0 F2 J- q6 ]
  1014. LDA MENU_PAGE_STRING,X
    : F8 _- Q3 l5 ?7 H5 A- A( E# x
  1015. STA $2007$ J0 G  Q! Q  ?5 I* ?1 H. G5 y1 W
  1016. LDA #$00
    ) i# Y# d: R  j9 c% y
  1017. STA $2000+ C6 i5 \& V6 k0 V- ?
  1018. INC $BA! C, V$ x$ ?/ @/ n8 P
  1019. INX( u$ x0 X+ Y" t7 U$ _# P8 f3 B
  1020. CPX #$0B
    7 z- g1 t8 t) }' ?# l7 ?3 O% [
  1021. BCC MENU_PAGE# F( B7 z/ ^; T6 @( x/ T1 |
  1022. LDA $07AA) I) s: n5 w! _+ Y6 s/ P
  1023. CLC3 T8 C1 x1 \; I" V9 b1 L: r
  1024. ADC #$82
    8 |/ Q$ z4 X# D  U; S3 N
  1025. STA $2007
      t# y1 [( W) l
  1026. LDA #$00
    ' U* X, |4 S; M0 o8 ?2 f! c3 N
  1027. STA $2000
    * w9 z2 m  H2 U& E$ I& D! H5 `
  1028. RTS  U& u- K3 T# _& f" ?" `

  1029. / @9 K1 Z9 _3 d  L: H0 X% f

  1030. : ^3 ^2 }9 B: E
  1031. SKINGE_STRING:, K' J7 N: j$ R. o5 S; l3 B
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    % `4 _1 }2 [" I  W! B6 v& V
  1033. " ]' @$ C# }2 J% m. e, K
  1034. SKINGE_WRITE:& b' _9 O$ o) l
  1035. LDX #$00
    # N& T7 H) c2 O" }# ~
  1036. SKINGE:+ |/ L6 h% p$ @4 P  L0 k% g$ t% N/ M
  1037. JSR PPUADDR_PROCESS) [2 {/ s1 Y! w1 u3 K8 _( }( T
  1038. LDA SKINGE_STRING,X
    + |  l$ M0 o8 v
  1039. STA $2007( D$ r+ I' r  Z' U  I4 n/ d
  1040. LDA #$00
    7 H- k" |# M8 v% f/ k2 Z5 Q4 r$ |& S
  1041. STA $2000
    2 C" F9 r, o% C8 W/ o9 ~
  1042. INC $BA: @5 f3 m/ _! B$ ~
  1043. INX
    2 Y4 ~- H' H+ t; V2 G1 T
  1044. CPX #$077 h$ [/ p: W0 @0 E; C. p
  1045. BCC SKINGE
    ) I+ Z* C. G; Y) \- y
  1046. RTS
      U7 I8 ~9 i9 r( m) p8 ?

  1047. 3 b2 Z- t* e- S- ]* F
  1048. SKINGE_PPU:
    6 n- y( U- `; r4 P  m0 S' h7 k
  1049. LDX #$00" H. Z$ V/ I2 L, w: u* N
  1050. LDA #$A2
    9 J; B+ z; [0 B/ I* f6 L
  1051. STA $BA4 {3 a+ f' P) [# B7 H
  1052. LDA #$213 @; u. T9 t+ I' Z1 j4 P4 G" p
  1053. STA $BB
    % i9 p  D  J/ [# ~
  1054. ; V! R4 s( H+ C8 B) [. a5 v
  1055. + [( e4 v7 ?- d- c3 E/ \- n
  1056. JSR DN_PPU" J& v8 w) T/ v% ^
  1057. JSR SKINGE_WRITE
    ' G0 ?* a% w  q  E1 [' p
  1058. LDX #$001 R, ^: N+ ^+ _2 a
  1059. LDA $07A2% ]1 F. u; z. M: J  n+ y& s, j4 j6 [
  1060. AND #$02* w2 ]: b9 Z! j; _8 o, Q% R
  1061. JSR ON_OFF_PPU
    + A8 a& F$ c7 B" P: j, M" J- e
  1062. LDX #$00
    0 Y: i+ v8 h# m8 e, w* U) m
  1063. LDA #$B1+ F6 O: N+ \0 {- d' f
  1064. STA $BA
    & B0 W% O" G( ~7 ^* E! f0 R
  1065. LDA #$21; n% p3 O% t- a0 I
  1066. STA $BB" g4 \+ Q3 {8 I- |5 J: R

  1067. # ~' p/ G4 ~; {$ Q" i! k
  1068. + s4 C* f4 C3 e+ g3 U7 W2 t
  1069. JSR DN_PPU
    3 _! h/ {* b3 E  |, J- K/ v- g. E
  1070. JSR SKINGE_WRITE
    3 C* q$ b) W; s2 M0 u( Q
  1071. LDX #$006 c. _6 ^/ R  W" `' k2 T
  1072. LDA $07A3
      Y" O7 A( [: o5 j% c8 \. z
  1073. AND #$02. s- o2 T- k. U* u# D5 e* S8 S
  1074. JSR ON_OFF_PPU; X2 X$ j+ ^1 ?/ C3 X/ T
  1075. RTS
    & A5 _  a* l% W4 @
  1076. ! y9 _; P1 h6 P" \* C$ _3 T
  1077. BULMIX_STRING:
    7 d: B$ @- V$ t& B4 W5 n; n3 a
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80( d+ i7 T: @8 ^$ H/ i# [5 I

  1079. . W) _! i  m7 o" R$ }. }
  1080. BULMIX_WRITE:" R% ^5 p# i: b3 M! l4 i3 Z
  1081. LDX #$003 g: O" [  e. D: ~6 Y7 ^
  1082. BULMIX:7 r. C" l5 r: d6 b0 b! ?
  1083. JSR PPUADDR_PROCESS* W" W0 y$ O2 F" D1 G" A5 q
  1084. LDA BULMIX_STRING,X
    / G& m3 Z4 b7 i
  1085. STA $2007: s" O" Z! h! W/ ~( h% Y. r
  1086. LDA #$00/ u; P+ t: c" w* R' V& J
  1087. STA $2000
    5 ~8 D; j4 p: Y4 L5 ]# m# Z1 {+ y
  1088. INC $BA
    5 v0 ~( j) c3 j) u& @' M7 u
  1089. INX
    " D0 k& Y/ ~; K* y1 X/ J
  1090. CPX #$073 }, l8 A; N* `$ Z, e" S. z1 j
  1091. BCC BULMIX
      V7 A" j, S- G* l& D& G: f/ Q; |
  1092. RTS
    ! V. y  m1 {- a3 I  e

  1093. 0 D9 S. b" d2 M% H$ \/ m1 P
  1094. BULMIX_PPU:' q) e, e$ `8 G$ Y7 ]% W. [' L5 t
  1095. LDX #$005 U  |' y! f3 t/ P* [0 T( ~8 \
  1096. LDA #$E2
    . m5 n: t& w( Y& {' _, Q! X
  1097. STA $BA
    8 c: n( k4 r# \! x& V5 d
  1098. LDA #$21
    3 ^+ i" F2 q2 b# ~" d
  1099. STA $BB
    , e+ |- |0 L6 |5 q
  1100. " p3 d/ Z' O: Y& z1 w7 k- X
  1101. 1 r9 S) P6 M9 O( x; P0 k6 {
  1102. JSR LF_PPU
    , L" ^5 ]8 \( B* t
  1103. JSR BULMIX_WRITE" ?/ R' P" A6 E4 Q
  1104. LDX #$00
    * c( w3 F% \# y
  1105. LDA $07A2
    7 R, h3 p5 S2 }9 ]
  1106. AND #$048 L; E8 E/ I; ^$ h  r2 K
  1107. JSR ON_OFF_PPU
    : `- a$ r- a( x2 K, N7 D/ _
  1108. LDX #$006 k, y1 m) C9 r+ ^6 l. o% n0 S
  1109. LDA #$F1& i  [* y6 k. ^* O* a: b! `) C
  1110. STA $BA* F* |, J6 N6 {% D
  1111. LDA #$21
    " N5 G2 D3 V" C1 m( Y5 p
  1112. STA $BB
    + Y! G  K* Z$ [4 z+ E
  1113. 8 D, r0 C6 v) p' [8 Q8 J" K4 v

  1114. ) e; j' d% I+ z' X( I
  1115. JSR LF_PPU
    ! f! M  a5 P* G" x( I
  1116. JSR BULMIX_WRITE
    & Q6 _' S* B' O- B
  1117. LDX #$00% n4 H( S" e! A5 k
  1118. LDA $07A3& m0 K$ I5 C& j9 T- W; N2 D
  1119. AND #$04, h* [' b% o0 k& V5 r
  1120. JSR ON_OFF_PPU6 X* w+ O# m; T- [
  1121. RTS% C+ M# W5 S& x5 s2 D

  1122. ) o9 I) u( V/ |' g, ]# x; O
  1123. ENELOC_STRING:  Z3 f6 l( {. S. W# S
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80" p4 Y) K% v5 w; ]3 r

  1125. 7 T7 q8 v. {( F
  1126. ENELOC_WRITE:
    # r# I1 A5 p" H* }- v
  1127. LDX #$00
    8 W2 N& N3 y6 g: B" z& n; K+ f
  1128. ENELOC:' t. |! n6 f" _/ Y6 i$ Q3 O
  1129. JSR PPUADDR_PROCESS
    5 `" c2 z& E0 _2 h6 r
  1130. LDA ENELOC_STRING,X4 `% x5 [# q# b
  1131. STA $2007) }9 V- b4 q9 Q- h( o
  1132. LDA #$00
    2 a/ H  e+ [- u' ~8 ~1 s
  1133. STA $2000
    3 A/ j: s9 ^2 R$ u5 g! M+ B3 y
  1134. INC $BA! L$ N' u3 l/ o8 E6 r$ K$ E
  1135. INX  d% m  z; ^1 H/ `8 r4 g) J* E
  1136. CPX #$07
    , `2 H. E& q$ Z0 i/ c# w
  1137. BCC ENELOC0 v& n; B8 R! _4 F  u
  1138. RTS
    5 A# c6 ^/ ~9 ^) ?# q* Y

  1139. # H- Z, F5 B; t8 p- h0 H- ~2 O
  1140. ENELOC_PPU:9 O6 K3 L; V/ E6 e. v
  1141. LDX #$00
    ; m+ J2 G- L: V. t7 C9 {
  1142. LDA #$22
    . k  x) C& y7 A
  1143. STA $BA! F9 a9 |  ]0 n  ]( N+ x
  1144. LDA #$22
    ! c1 z* f/ N7 ^4 v6 R3 o
  1145. STA $BB
    * T/ M, S0 g# D" X4 s# `. A$ I8 }  S

  1146. $ ]" X9 z: T3 }0 }# @8 H* `8 W

  1147. 6 N  i. U/ c, A) _4 T8 R5 w3 C
  1148. JSR RG_PPU
    1 ?- ]8 |/ Y' h
  1149. JSR ENELOC_WRITE- d' Y, L2 Y5 b: t$ [; U2 e  P$ Y* @
  1150. LDX #$00
    ' C% Q& O% k& d& ~2 F; B( ?
  1151. LDA $07A2
    / b* o7 ~' m0 L7 E
  1152. AND #$08
    0 w, r  v- p3 T* w- \9 P
  1153. JSR ON_OFF_PPU! G5 A9 X4 X; |$ H
  1154. LDX #$00
    , T( D7 N1 d: Q* K
  1155. LDA #$31
    ( Q) h$ M: X( D4 z7 A3 M2 E" X
  1156. STA $BA
    ; M. n1 p2 b$ R. i
  1157. LDA #$22; E" N" g+ R& y7 k1 e+ l6 i
  1158. STA $BB
    3 `" P6 A2 y0 [4 Q1 J
  1159. 0 b! {7 l7 v% ~# b/ `( b/ Y
  1160. 2 f7 c2 ?7 T4 u6 _1 H  Q
  1161. JSR RG_PPU
    4 V' s6 |$ F2 F& F
  1162. JSR ENELOC_WRITE
    : u4 b% \, `* ]$ A4 w4 `) h
  1163. LDX #$00
    * T% d* d/ _) Z: B' I8 y
  1164. LDA $07A3) s0 D$ G$ T% c; h/ v
  1165. AND #$08
    # @& [6 n* y; A' F
  1166. JSR ON_OFF_PPU
    % ~9 V0 U! z# |
  1167. RTS
    4 e) Q3 e; |# K8 i; v. o& p2 I

  1168. 5 o8 C* Q3 ]1 r: a
  1169. FOCFUL_STRING:
    ) r3 F7 q& s  b3 _8 z8 T2 |
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    , {  ^- E6 l% G& y( [* i; r
  1171. 1 U' o& Y/ Z8 w8 K+ O$ h" j
  1172. 4 z2 v, J2 N/ A" L. v; @9 d, Y
  1173. FOCFUL_WRITE:* ~4 c0 K+ V# s& J6 h7 a& m
  1174. LDX #$00
    " U# A) v6 O) B/ c5 L4 j
  1175. FOCFUL:
    & E' h- A5 R" w4 i; R
  1176. JSR PPUADDR_PROCESS$ ], G1 N, c$ P" S  J4 J: ]) e
  1177. LDA FOCFUL_STRING,X
    ) y9 F4 H# `: X$ b
  1178. STA $2007
    ( B4 F/ o+ ~' [. k
  1179. LDA #$004 b+ i- a" n# Y$ ^' ~8 c
  1180. STA $20002 J1 M3 v6 `3 g5 Q; G
  1181. INC $BA
    % W* x( y; o" ?3 ?9 S' Y
  1182. INX" ?8 K) P& B/ M
  1183. CPX #$072 }# y' n; _$ E* C( w
  1184. BCC FOCFUL5 t+ L( C, ?6 L& ?. i
  1185. RTS* n+ u/ w! O5 g: ]8 U
  1186. , H5 `) r/ z! ?! ?( e
  1187. FOCFUL_PPU:3 o+ z( d' V3 g' ?; B- Q2 k9 T: E+ E3 `8 h
  1188. LDX #$00
    & M# f+ ^" v$ S9 u8 g! ~+ o
  1189. LDA #$626 Z' M. c  h: n4 {/ }
  1190. STA $BA
    9 t% @# d. M9 i: ^! V5 c& `2 g
  1191. LDA #$22
    1 n( S. \' D" E7 e3 d6 p
  1192. STA $BB
    9 _) F/ S' h% c1 \" L- H/ ^

  1193. 8 U8 c3 \/ u; j1 O, q% B- e& W
  1194. 4 M$ X$ m* T2 Q; {4 Z
  1195. JSR B_PPU
    - i" [( Y7 c! k1 [8 A% s
  1196. JSR FOCFUL_WRITE3 V' M4 W! B9 \
  1197. LDX #$00) O" Z, _8 s. H5 g- d1 `( _: Q
  1198. LDA $07A2
    ) C) u3 }2 G( @0 ~+ `# H( }4 {
  1199. AND #$10
    + P! C6 F8 S1 a5 q4 [6 X
  1200. JSR ON_OFF_PPU
    ; }; x5 N; I  c5 c1 i+ q! t" a2 G4 J
  1201. LDX #$00
    3 d7 T5 [# \) [3 T6 M2 D
  1202. LDA #$71
    7 W# k6 z, L4 t; w3 F* {' N' S
  1203. STA $BA
    " `' P( f, E' t6 E' ^4 C4 x
  1204. LDA #$22% z  j: {% q6 U1 R
  1205. STA $BB/ ]2 c' Y: N- l2 G( J0 v
  1206. : H6 h7 N+ w1 n/ R$ e8 G0 t
  1207. # `. d2 h7 V" K4 A
  1208. JSR B_PPU0 x& w. o# {& ^& s
  1209. JSR FOCFUL_WRITE; B% s: j7 V( u( w
  1210. LDX #$00. g4 `! A5 A; y2 F0 g! m
  1211. LDA $07A3
    ) z- I% {# n) A4 {% M- F  |
  1212. AND #$10, l( V; X7 {$ e+ p+ P* f
  1213. JSR ON_OFF_PPU
    0 d, n  E, a! z  x4 |) g1 L
  1214. RTS9 p2 s3 v3 o- K4 A0 T
  1215. * H( H4 `2 E& `/ `* i: G6 j
  1216. BULCON_STRING:
    0 ^: {8 h* b( }, @2 S  i
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80
    ) V  d5 D8 T/ I0 v, m
  1218. . c3 {6 h- h3 m, d, `# E9 ]$ W$ ]" R2 W

  1219. , o$ k% p2 n6 x8 c
  1220. BULCON_WRITE:
    . u) Q/ w0 {* {( O; f
  1221. LDX #$00
    $ T( M$ ^* L1 p) s& J" W7 e7 M$ A: k
  1222. BULCON:
    ' F1 I  e, d$ g# X( @, D
  1223. JSR PPUADDR_PROCESS' |- B) Y- G. G2 c6 O* s* C
  1224. LDA BULCON_STRING,X  @2 f, O" |$ `( @- U
  1225. STA $20073 S* ^0 Q8 L) @* f
  1226. LDA #$00, J1 m1 [+ d' u8 u- l
  1227. STA $2000
    0 Y3 T. u8 V7 Q9 Y1 i( J) c# ~
  1228. INC $BA
    ! u, ?+ I. L. Q7 \; u: h0 K
  1229. INX0 F1 G9 U1 X' o
  1230. CPX #$073 C1 j, L7 G7 i/ [; S+ z7 O$ v
  1231. BCC BULCON- A) y1 j( g6 J/ a  I" [$ P
  1232. RTS
    ! ]: h4 x# J3 Z; _5 A1 l
  1233. ) z( d1 N  ?3 _
  1234. BULCON_PPU:/ {7 u2 o* j9 M
  1235. LDX #$00( r4 a4 `2 n% o) E6 V4 I
  1236. LDA #$62! ]6 f' I) r+ x6 H' i- M  T
  1237. STA $BA
    3 }. _) g8 ^  C: S- y% ~
  1238. LDA #$21
    . _1 }( W( K+ T) l9 Z! r. Y
  1239. STA $BB
    3 b+ D6 U7 K# p# H0 u2 U5 Q6 X
  1240. # l) s3 Y/ H6 N% U  [- b% N/ J
  1241. 5 Y% j$ Y8 [9 k0 r9 N4 B& e* O( l
  1242. JSR UP_PPU3 s5 |4 _% F8 O6 b
  1243. JSR BULCON_WRITE6 ^' R- P: k( ^8 s3 ~
  1244. LDX #$00' H% G" V% }" [3 J& E; D
  1245. LDA $07A4, t* x9 m% {6 z6 h7 j  b
  1246. AND #$08
    9 X; A2 c- O. |9 H& n: X
  1247. JSR ON_OFF_PPU" u! n- f2 E0 R2 H
  1248. LDX #$00
    - H2 w/ ?1 A. ^( A, ]8 u
  1249. LDA #$71
    ! L; p3 J# V) R( M; d
  1250. STA $BA
    4 z6 L; i7 s$ M+ z9 P: O) W. N
  1251. LDA #$21" _- Q. q* }$ b" d8 S
  1252. STA $BB/ `* |0 I+ r6 z+ @# j. o. z( e

  1253. $ {- S) x" W& G5 p2 K7 S
  1254. ! t. W/ b. ~# h0 j3 j
  1255. JSR UP_PPU
    , f4 s0 z% `, W, I# j8 A% a
  1256. JSR BULCON_WRITE
    / k4 q3 t% b  J% p% I
  1257. LDX #$00
    5 E2 Y  W& R% }+ E) m1 P5 C3 k
  1258. LDA $07A56 S6 g6 |) l+ R  F
  1259. AND #$08
    ; S9 K( R5 j7 [6 s
  1260. JSR ON_OFF_PPU( g2 H0 d. q6 W. }2 K( [
  1261. RTS" g/ v, O  J2 T, j( X, X7 c

  1262. ' f$ e" u' _6 I5 X0 {6 s
  1263. SPEBUL_STRING:
    4 o; j7 l7 [1 W/ W
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80/ G& t2 A0 T. L- |3 w2 G7 o  ?8 ^
  1265. : k: l. J. K' X
  1266. $ K6 T5 o8 G8 S' l  d
  1267. SPEBUL_WRITE:1 e+ W( h9 S' y/ J3 M
  1268. LDX #$00
    * r8 l2 }0 S! o3 x! U& `
  1269. SPEBUL:
    " I$ `2 Q4 d: j5 O7 V/ M
  1270. JSR PPUADDR_PROCESS7 s3 g1 M2 }9 B; ~
  1271. LDA SPEBUL_STRING,X
    7 P* m5 V( Z/ l) m* |$ A9 r
  1272. STA $20074 Y" P# h# D' ^
  1273. LDA #$00
    & W0 c1 n( u) U
  1274. STA $2000! S6 Y/ r& ?. I' ^( ~& @, Z
  1275. INC $BA
    ( M8 n. R' {0 [6 F9 t
  1276. INX
    ' o& x# N4 e* G1 q0 L
  1277. CPX #$07
    . w' n& T8 K: F' d4 A, R2 J
  1278. BCC SPEBUL; e5 e$ P& Q, q, ]
  1279. RTS
    $ Y& T# D+ Q& n) v6 R

  1280. / I) i) ]& x7 x" M' L1 l  j% `
  1281. SPEBUL_PPU:3 a- P" o- {/ x- K) _4 h! Y
  1282. LDX #$001 P9 A* B0 {+ S, X& t3 D
  1283. LDA #$A2
    ; o3 t7 @3 q! ~) z7 F
  1284. STA $BA
    . T6 r7 k. p, E7 p+ Y
  1285. LDA #$21
    $ q6 k0 D7 i$ V3 v' V) q
  1286. STA $BB* Y6 J$ U, {% i

  1287. & h$ X7 O5 i6 Q, {- Z
  1288. . H& d9 Z+ B% e* {; i* j1 k
  1289. JSR DN_PPU
    / K7 Q/ Y# u" p! t% q+ r: p$ g
  1290. JSR SPEBUL_WRITE
    - B( s. n+ ^4 D/ h; b6 V! p1 u
  1291. LDX #$00' T  S; M& _4 U; j) f4 N2 M
  1292. LDA $07A4
    2 c" V7 S: w2 x1 x. s
  1293. AND #$024 U3 f0 n- G/ v5 Z) c
  1294. JSR ON_OFF_PPU
    - y) p2 i8 a; U
  1295. LDX #$00
    ( p! m( C' ]: M+ v* l
  1296. LDA #$B1
    ( o2 f1 a9 N6 O8 l& U
  1297. STA $BA, O1 G2 Q* v. j
  1298. LDA #$211 ?# |: L# f6 y, F+ t. E& ]
  1299. STA $BB; o  t6 V- |; W) i2 D% i

  1300. : b- k% @0 E5 L9 z2 q
  1301. ' w6 q( [9 ]3 k
  1302. JSR DN_PPU% C# \) z# p5 I7 ^! G
  1303. JSR SPEBUL_WRITE
    1 [; ~. k- D( g% E
  1304. LDX #$00
    ' C6 Y5 j8 H1 U) f5 A, b. P
  1305. LDA $07A50 p1 u+ F# b! }
  1306. AND #$022 M5 a# f9 ^: k" f+ @
  1307. JSR ON_OFF_PPU. x/ c6 C8 U8 Z' {* R
  1308. RTS1 G7 z) r2 C+ T4 S8 K  E
  1309. 8 z, m6 b. c; R/ c4 X
  1310. .ORG $A500
    1 m. [3 [/ X8 ?5 j6 d- a+ e
  1311. CLEALL_STRING:6 a" O6 W/ F$ B/ v5 l0 M, U0 x
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    0 o; b, n3 D+ s3 I' W" L: w
  1313. " W/ K9 B  ]- n0 ?$ R! C! F( o% c+ q
  1314. # P& n8 M7 c# p4 L; R/ b
  1315. CLEALL_WRITE:
    0 N+ a1 O" M6 w" H9 D: O
  1316. LDX #$00
    - {4 z# a' z9 ]* t" ?
  1317. CLEALL:8 y; r0 g2 H' P. J; n
  1318. JSR PPUADDR_PROCESS
    4 z$ E( E/ N: Z" |1 S0 ], k! ~
  1319. LDA CLEALL_STRING,X8 M9 j. T) }; X5 T
  1320. STA $2007
    ) b  c1 j0 b) ]$ O8 W2 ^6 M
  1321. LDA #$00- _8 k1 j' c/ B( ~5 z7 H% Y
  1322. STA $2000
    ( {8 Q" q* o+ u1 Z% l6 m
  1323. INC $BA( d; [* P9 ~0 w' l2 c9 F4 }! x2 d
  1324. INX0 j6 R% d; U+ R  E
  1325. CPX #$07& e: c3 q6 o8 d% }- P6 n. u( A
  1326. BCC CLEALL/ Z* w% z/ ~: Z
  1327. RTS4 b# x* v4 q% i2 c  O# Z$ J
  1328. 9 J( h! V; N. v
  1329. CLEALL_PPU:
    / q4 A8 }' d" e6 C* u( A
  1330. LDX #$00
    ' R, w( y" N" s( n7 C- g
  1331. LDA #$E2
    . I1 g* v3 l9 S5 x* i
  1332. STA $BA
    2 B  m8 D1 l0 \) b+ }8 R
  1333. LDA #$21& s' {1 A9 _% B% g9 S  y$ D% n
  1334. STA $BB
    $ u* o, S5 |. A" S4 d  R  S& g
  1335. # |: o  y& q5 P2 a6 b% t% {& F
  1336. + C6 J+ I( ?- W0 t6 T3 y
  1337. JSR LF_PPU9 [6 U1 v0 U9 e$ i: x# Y/ K
  1338. JSR CLEALL_WRITE; s, j0 T3 e* t/ e: p
  1339. LDX #$00% h2 L; [& ]3 e9 ]4 M3 p+ q
  1340. LDA $07A4
    : l+ e# h" `7 T* q
  1341. AND #$04
    ) ^9 S5 g6 S; j% N2 d; s
  1342. JSR ON_OFF_PPU6 k. G3 `* l8 V
  1343. LDX #$00) k6 J& L$ T; b2 j% d
  1344. LDA #$F1
    3 k$ M  P4 j* s4 Z: U/ C
  1345. STA $BA
    ; m4 P3 c( T6 e5 ]0 H8 c
  1346. LDA #$215 U" V& E$ ]% J5 d0 \; m8 a& p3 L
  1347. STA $BB
    5 v) D+ e5 g5 }8 N$ B& W: o
  1348. & ]0 ], P4 C; H0 p# R" K
  1349. 0 W) p8 x, G) o6 w
  1350. JSR LF_PPU; c* e$ [" n5 Q% @: s% y# u
  1351. JSR CLEALL_WRITE3 v  ~* ~, S6 R# C2 b8 t
  1352. LDX #$00% N- h5 j5 X" H
  1353. LDA $07A5
    , ~' w  ~4 f; J4 |+ ^5 d' E
  1354. AND #$04
    ! T+ l! D9 ?! L6 U1 s; {
  1355. JSR ON_OFF_PPU
    7 o6 f& a, }' n& q0 j  U: h) X" w
  1356. RTS  o# h. f# E$ }) \' P

  1357. ( |* E; f! K4 W3 @( E' L# u
  1358. HARDMODE_STRING:) ]6 {* P; L6 W& s7 Q7 `
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    " o+ K; o; P; ^0 S

  1360.   W. ~% {3 C: x' V* |! P* [

  1361. $ F) b: K7 @2 O5 e& K/ d* G
  1362. HARDMODE_WRITE:
    ' W) @- @( `- x2 |1 _8 g) i
  1363. LDX #$00
    " v/ u- z/ ], N, U
  1364. HARDMODE:) f' Y/ x: ?+ q( `  I: _
  1365. JSR PPUADDR_PROCESS7 j! m5 q# O5 I2 e! _
  1366. LDA HARDMODE_STRING,X
    2 A( Q3 T3 g7 u, g
  1367. STA $2007
    8 G9 U6 B$ I8 Z; h: I2 l* F  B
  1368. LDA #$00
    0 |/ m# F$ N1 ]  i
  1369. STA $20008 F/ Q$ U$ w( u+ Y6 g9 ^! D; k/ m# d: V
  1370. INC $BA3 s; v$ U) r# C7 S
  1371. INX( I& k, v; ^. ?7 [
  1372. CPX #$07
    2 d4 e1 X+ ]; G" r1 L
  1373. BCC HARDMODE
    & H! ]. e& f7 o) \
  1374. RTS# `! J9 ]; q  A$ p

  1375. : k  Y7 p; W4 a. i, m# V+ S
  1376. HARDMODE_PPU:
    7 A' K$ {2 L4 {1 m
  1377. LDX #$00. q8 n# _. ~$ `) {
  1378. LDA #$22
    ' x" l* q' w1 e. e
  1379. STA $BA
    : Z* V7 g2 I  L9 }2 o  h
  1380. LDA #$228 I7 U" r5 I! H, A
  1381. STA $BB2 x9 [* z; `/ n) G+ x- r
  1382. JSR RG_PPU
    2 r. [* f) Y4 D( _
  1383. JSR HARDMODE_WRITE
    / P! w/ v" }& |# Q# }
  1384. LDX #$001 H& q8 k- q$ u( P1 [! I
  1385. LDA $07A4  H8 b! t" `4 B2 T- O
  1386. AND #$01* ^5 V, j# v. D2 V5 j
  1387. JSR ON_OFF_PPU: d* w. d) u* n7 z
  1388. LDX #$00
    * \4 g* S* B# Y
  1389. LDA #$31
    6 c( P5 k% N' ~
  1390. STA $BA  J5 w, `; K9 |0 E: o
  1391. LDA #$226 n7 o/ s  X2 T; z4 v& h, M
  1392. STA $BB
      L8 A" w7 R$ Z& C) i

  1393. # a9 b6 F" [1 b7 z

  1394. * o8 D+ z( C1 i$ K6 d
  1395. JSR RG_PPU
    9 c' \: ?4 @  `) F1 X! q( l3 u
  1396. JSR HARDMODE_WRITE( Z9 S8 \4 A; \+ F, c- [
  1397. LDX #$00
    $ ?0 F' d& U1 p# {9 D  m
  1398. LDA $07A5  V3 s, g+ S8 `  Q- I, S# U' C
  1399. AND #$01/ `5 ~: D3 f2 H* X
  1400. JSR ON_OFF_PPU4 W4 F& o- b1 S5 P/ F- B/ @
  1401. RTS  a- u9 U1 v/ P1 ^5 T
  1402. 8 a( V0 A& G7 F$ w5 ~& N
  1403. B_TO_JMPSTG_STRING:' ]( W1 R2 c) g% W: C0 V
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80, c6 w0 Z: [) ^3 Z) ^0 B3 v7 a5 j
  1405. % i: L& d* _1 z
  1406. " t" n+ V9 o7 S3 ?
  1407. B_TO_JMPSTG_WRITE:
    + H( C$ v  a8 C, s$ X
  1408. LDX #$00
    2 Z0 z  f6 E! M9 i/ E
  1409. B_TO_JMPSTG:$ D. d, a3 _  T0 s: L  r
  1410. JSR PPUADDR_PROCESS" B" }2 ]) B7 j* G8 N* I$ B$ k
  1411. LDA B_TO_JMPSTG_STRING,X
    1 P6 Y7 ]" v0 k7 }8 N: B8 M
  1412. STA $2007
    : M2 c! O* O/ ^3 [5 V
  1413. LDA #$007 t8 u8 t' z7 x; T
  1414. STA $2000/ y% z$ e: P$ w5 S; R  r/ m9 g" q
  1415. INC $BA5 u- U9 P% r4 r" P2 x+ j$ `
  1416. INX( V( ?* G; A' g% f4 i
  1417. CPX #$0D
    7 t- }8 D+ f* p5 H
  1418. BCC B_TO_JMPSTG
    & l  W# Z7 K: c* m7 S& f" d
  1419. LDX #$00
    3 f$ U$ N# ~: z3 L
  1420. LDA $7FE0( ]5 H1 D4 E6 t$ l! Z  j
  1421. JSR ON_OFF_PPU
    6 M  c7 _' c: i8 ~  b3 u- i
  1422. RTS: K0 t) {  E7 l+ R- \! M
  1423. 6 v6 Z8 P" \7 l# {( d, z
  1424. B_TO_JMPSTG_PPU:
    1 H$ b- I* e  y, Q5 ?: B
  1425. LDX #$00
    9 Z  m6 A* W1 l  I
  1426. LDA #$68# U1 F' Y- }  @: f
  1427. STA $BA5 d4 {) I( c, S: ^2 p
  1428. LDA #$22
    % @: n2 g" Q: H+ D$ n+ j
  1429. STA $BB
    6 o% [, {6 N* ?
  1430. JSR B_TO_JMPSTG_WRITE& h1 A+ w: Z$ V
  1431. RTS
    # l' ?4 d$ \6 N- O' b/ r

  1432. 0 F0 `0 k: X0 t2 {6 S
  1433. $ \) h. l7 r! S6 H1 _
  1434. A_TO_PLAMOD_STRING:
    8 D% N2 p2 V9 K% \& z( u
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80
    : v% K0 g, w0 g) o; A( [
  1436. : E- Y9 @0 n" |2 r3 O" o) L8 j

  1437. : S: m4 W+ o- N1 v. Q9 R
  1438. A_TO_PLAMOD_WRITE:
    & g, t8 J  d1 r$ S; J
  1439. LDX #$00& v* W( [- S# x
  1440. A_TO_PLAMOD:1 k; z1 f, p7 |% \7 a7 g: E3 P$ k) u
  1441. JSR PPUADDR_PROCESS
    6 [; o7 n9 j' |  {
  1442. LDA A_TO_PLAMOD_STRING,X' p5 h! v) ^! |" i4 Q+ K$ S
  1443. STA $2007! S% v- |8 F$ U! l& |
  1444. LDA #$00
    ; \+ h( \- e: H& Y, Q% V6 }
  1445. STA $2000
    * O+ H1 N2 D6 O( o) K
  1446. INC $BA& K) r$ Y) l8 P: r( Z# u  [
  1447. INX
    + F' f# s' @( B8 }+ N+ u: |; v6 W
  1448. CPX #$0D8 {% y( F' ?. Q/ r  R' C! N
  1449. BCC A_TO_PLAMOD: [# [" Z: ]9 b. R( b
  1450. LDX #$00- U  `+ [$ O# z, l/ N2 s/ }6 v
  1451. LDA $39! H1 W1 o0 c  {$ a+ C2 m) i
  1452. JSR ONE_TWO_PPU3 B# {* e$ D+ @) R* n0 d) l9 k% X' t
  1453. RTS2 q+ r) o4 E2 R' C' {0 H

  1454. 6 c$ J3 D! |4 ~8 h8 E, U/ e
  1455. A_TO_PLAMOD_PPU:
    # s3 ?' d0 i; C
  1456. LDX #$00
    ; q* k5 q) e1 R0 Z, b9 T) }9 U
  1457. LDA #$A8* }: |2 n  P# a5 l! o8 \
  1458. STA $BA
    , x/ l! M# v4 b# E7 r2 a' _
  1459. LDA #$228 Q# v5 B0 Q( K! K
  1460. STA $BB
    - w! M! [+ S5 @: ?
  1461. JSR A_TO_PLAMOD_WRITE' Y4 P6 ^; n+ [5 L8 ?" h
  1462. RTS7 v4 \0 |$ n. r3 n
  1463. 5 n& ~8 }: L( H
  1464. MOVSPE_STRING:) w6 {) k) L* V- c
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    & e' f, f3 b) _* i3 Y5 L% S  O

  1466. ) D, F+ Z0 t+ j
  1467. 0 z# u' J, ^7 p1 @1 U: h
  1468. MOVSPE_WRITE:
    , N# c) Q; n+ T! B" \- B4 X
  1469. LDX #$00
    7 u8 |7 }* |3 m) `1 U, w4 W2 c
  1470. MOVSPE:; I( @  o8 T9 v4 i3 ?0 }
  1471. JSR PPUADDR_PROCESS
    2 _& d, a" @/ n' i
  1472. LDA MOVSPE_STRING,X
      w0 Q+ D2 b4 L6 L1 q
  1473. STA $2007
    ! N. F7 T# w( j+ f' A; `) \
  1474. LDA #$004 j4 `4 j3 J: g! {. _
  1475. STA $2000* o0 n! m2 X2 O- U; h# v
  1476. INC $BA
    & j! T' n7 U2 p, F3 C% g
  1477. INX: z# G0 h7 W, S/ k9 i: c
  1478. CPX #$073 y, v; a! s2 V4 o* _( h, E' u: R
  1479. BCC MOVSPE( c4 Q3 \4 @% T* s  `$ |
  1480. RTS
    6 Y) d# @5 s+ p4 [' l; f7 w
  1481. # C4 E, j5 _6 e
  1482. MOVSPE_PPU:$ [; F( u. t$ H) Q; c! j7 x
  1483. LDX #$00* ]7 D7 A8 h; R8 K  Z3 O
  1484. LDA #$69
    % R& H" a- z/ @5 x
  1485. STA $BA
    3 ^( F" `) Z! r$ q. v" P7 U
  1486. LDA #$21: ]) d% y9 y1 U9 r, u6 b
  1487. STA $BB
    : n& Z& r! z) j7 i: f3 s" U6 {
  1488. 7 p/ l5 i, m( U. L3 _5 v+ j  Q! \
  1489. ) t7 \5 M$ F# R: [9 H
  1490. JSR UP_PPU
    * P/ T, N% N' ?
  1491. JSR MOVSPE_WRITE
    * m) t6 h7 k& o# c0 ^* }' \6 W% M6 j
  1492. LDX #$00
    3 m- K+ s' b' _; J
  1493. LDA $079F5 [8 m$ E1 Z( v7 @/ f
  1494. AND #$08
    ) l  L7 ^8 I+ C, u1 _
  1495. JSR ON_OFF_PPU4 _% f' }  u6 X
  1496. LDA #$801 l+ v4 f1 m' S& T* a" M
  1497. STA $20070 e$ P$ V5 G9 N2 S' n' X" y! v8 S' {
  1498. RTS+ r0 B! g. ]: ^9 Z

  1499. 1 U6 Z# v$ O% K. O
  1500.   
    ' E! b8 f  B' Y: y$ n
  1501. UNLJMP_STRING:& }/ t$ l9 G0 ^3 q
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$804 ?1 M/ H% Y. }" m
  1503.   X- f- Q: u1 P7 Y* Q2 o4 k' d
  1504. 7 k; M+ a0 L# ?( [
  1505. UNLJMP_WRITE:
    6 d# j5 F" N- z
  1506. LDX #$00
    # G+ C1 C9 F8 h; W) q0 c- E  M
  1507. UNLJMP:: t" _4 D2 N$ o
  1508. JSR PPUADDR_PROCESS+ |4 r- `* G% h6 w# B- J# {
  1509. LDA UNLJMP_STRING,X
    ; T, J% [) T2 h  |2 T. \
  1510. STA $2007
    6 R3 f( O! a5 I" {( `: m5 t. m
  1511. LDA #$00  L! f7 M7 Q1 ~% B, p0 B. c6 }
  1512. STA $2000% i& r+ j3 N) N  @, M8 Z: X
  1513. INC $BA
    # w5 \% d4 C$ d1 Y: h2 q
  1514. INX0 m3 B/ u- c* m7 e0 z+ F
  1515. CPX #$07
    + ]( j& b# N: c8 C) Q, O0 @1 A; d+ v
  1516. BCC UNLJMP+ d. ~, s( G, |
  1517. RTS& w" S3 L+ W; \/ A& o

  1518. , g: a" A  G% T. I3 }' `2 M+ O0 J8 y0 b
  1519. UNLJMP_PPU:
    : M, \. p4 y# o7 J  N- C5 e
  1520. LDX #$001 g9 D, f, e' Q5 I1 W
  1521. LDA #$A9
    & v( \  ]5 C) b$ k
  1522. STA $BA) _4 K- R! C3 |
  1523. LDA #$21
    0 D# p' M/ c6 o- \3 V
  1524. STA $BB
    4 b2 i3 A; C% ]6 ]

  1525. 4 _% T# ^; Q; c  u7 ~. Y

  1526. : k) w! N' O4 E
  1527. JSR DN_PPU
    - F, h/ `1 V- Y, A# V0 t8 }
  1528. JSR UNLJMP_WRITE
    + @; H& ]1 d. v
  1529. LDX #$00  B2 h" E. f+ ]( T
  1530. LDA $079F
    5 H# [7 q, r2 L+ D
  1531. AND #$04
    + ]0 Q% V, |0 n' F8 m
  1532. JSR ON_OFF_PPU! a0 H$ ~/ M7 M9 Q
  1533. RTS
    : g8 @$ J4 v% [- Q, `: e

  1534. # R  w3 B/ N8 C9 W

  1535. % A( E% T1 b! r( C9 j
  1536. DESTRO_STRING:
      s0 X0 `( P  {2 ~
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    # u- V0 g7 {& @+ g3 V

  1538. ) J6 {9 e( D  L$ c
  1539. 2 |, d# |$ N  _, V$ A' X4 b
  1540. DESTRO_WRITE:
    0 Y$ I3 H; ]5 ?; E" J4 i
  1541. LDX #$00, U% y9 V, d# R( x4 f
  1542. DESTRO:, ?( v- c' x% _3 O' x: N/ x1 H
  1543. JSR PPUADDR_PROCESS- J9 l6 J$ N1 x3 X% m
  1544. LDA DESTRO_STRING,X5 w9 X# n: X* F1 T' q3 r" g
  1545. STA $2007" R4 c+ ]! I* n1 F6 n
  1546. LDA #$00
    1 x, N) e1 U' i+ D, G* J
  1547. STA $2000
    2 L! t4 L' E3 g0 R
  1548. INC $BA
    6 t( A. b/ z, D7 w
  1549. INX
    " S) d; D# x. s" v% t( a/ }3 O
  1550. CPX #$07
    & H& w2 z: @* |) m3 s/ T& [
  1551. BCC DESTRO
    $ o' O5 g) ]7 o  s0 w& k" o/ f4 f
  1552. RTS
    , x3 J/ ^5 F$ c! h: |

  1553. , X" ]; I! K# j7 \( m
  1554. DESTRO_PPU:/ |2 Y, h& C% j* T
  1555. LDX #$002 r. y7 m+ ?# K. w
  1556. LDA #$E9# P* {. y) t! Y3 i) s# p8 X
  1557. STA $BA- ?3 M9 v7 l6 L
  1558. LDA #$21
    : o9 q0 n) d" j: E5 r2 G
  1559. STA $BB
    5 T; X7 ~* j' X/ W5 N% Q
  1560. # U. [/ o, x+ S3 T3 P

  1561. . f8 v8 t% R1 }5 s" O
  1562. JSR B_PPU- A# z! Y  F3 M8 y+ v
  1563. JSR DESTRO_WRITE
    . O! d+ A& I: c0 Y- f" H
  1564. LDX #$00  ?# E! F7 G; x% n
  1565. LDA $079F) h6 A5 W& m- \* _+ H7 i3 q4 O
  1566. AND #$40
    6 [( U: D2 ]9 U4 ~5 c% J
  1567. JSR ON_OFF_PPU& d6 o' f  ^5 a0 F
  1568. RTS$ g: k& v3 L3 A) h
  1569. 7 K) O3 Y5 u2 z# d* M
  1570. % A6 F. ~2 M. f6 L5 L  U
  1571. EQUBUL_STRING:
    + F$ Z# r! {! y5 z; E8 q
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$803 `- |- H$ X% i( }  \* v# A

  1573. 5 U5 d) Q- ~. q: G4 U
  1574. ( ?' u: H& ?7 U- Y' |
  1575. EQUBUL_WRITE:/ `- t& R; w! x, N' P: i
  1576. LDX #$00
    / T. M) `* g* i: O/ y
  1577. EQUBUL:
    # S( z5 G$ ]2 d4 A9 r
  1578. JSR PPUADDR_PROCESS5 A8 N8 d4 Y' e9 z  q3 o* ?
  1579. LDA EQUBUL_STRING,X. c- b5 e. _4 m9 c
  1580. STA $2007
    & }/ q  V% X7 b$ h
  1581. LDA #$00
    5 E: {( ]. [3 n" ]5 ?
  1582. STA $2000
    + s  C* X) V4 J- S! G* I5 U- d
  1583. INC $BA+ k' R7 y( g; }$ c" L& S
  1584. INX) u2 `0 L: g2 z& T
  1585. CPX #$07
      g7 K) T7 M1 c( {& n
  1586. BCC EQUBUL
    / y0 ~2 b) d% k3 h$ u
  1587. RTS! P8 s+ g! f( t2 n: {4 w
  1588. - F. C9 Z! r! v
  1589. EQUBUL_PPU:
    ' {+ B- ~8 t' r* _) O5 N. |
  1590. LDX #$00
    # t! W. G' e2 D  Y- H# V; |$ }+ H/ n
  1591. LDA #$29; r5 a. n# G; F" G9 t
  1592. STA $BA8 M  F/ P- O# d6 M% ?, D* s8 u4 y
  1593. LDA #$22
    % o- @/ y& c2 H
  1594. STA $BB
    6 a. F1 V0 W/ p6 o

  1595. 3 Q) i; g% c  Q4 ~  b- @: A7 v

  1596. ) x4 o* z9 x4 W7 Y5 u
  1597. JSR A_PPU
    9 N  Y; P1 P- T! p) z, [/ p
  1598. JSR EQUBUL_WRITE5 O- e. P& F. M% O
  1599. LDX #$00
    , u; n  V( V; r
  1600. LDA $079F; Q3 s) C3 H: K9 M' q' R$ L
  1601. AND #$80$ h6 ], O$ A! @( s
  1602. JSR ON_OFF_PPU( q/ j' {  u" z: H! ^6 l' o
  1603. RTS4 ^: ~/ d: g$ j( g6 y

  1604. 2 _3 w* F. ]! z% _0 S
  1605. * P8 m$ X: w# O: e

  1606. ( w0 a9 h, l7 T" w# m( }
  1607. BULSEL_UP_STRING:
    & @9 `: Y1 |, R* U4 v2 e) u6 S7 k8 ~
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    & L( N  H  j- N4 |" f6 e

  1609. 6 O9 S& U( ]) u. D* F8 J0 _
  1610. BULSEL_DN_STRING:" @# Y* `" y  `2 H; _5 l0 C
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$808 m; w( N  [/ J( q
  1612. ! d  q' S2 i; T7 z6 F
  1613. BULSEL_LF_STRING:0 W/ u7 d5 _2 B1 [! e
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80% J' I! L' V  A; y/ f+ f

  1615. 1 {1 z, q. W" V: q5 ?% i# m
  1616. BULSEL_RG_STRING:& ]* u% U  V% X$ w& B! R
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$802 m  W& ?+ x3 o$ |" |

  1618. % V$ G( B$ x, L( B  M9 M
  1619. BULSEL_B_STRING:4 k( `* J+ X1 [* z! E- N/ l
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    : ?  g5 e0 p5 N$ O& [7 ~8 \
  1621. + {4 a: I2 m& Q* Y
  1622. BULSEL_A_STRING:
    ( A: y! C" E' Q- s+ J, ]" J
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    5 D4 v. S# q" p. b: j; {

  1624. ' M5 _3 z9 p! ^/ e) G  ]0 M
  1625. + V$ ?$ f/ G; }: u; h' o  w
  1626. BULSEL_UP_WRITE:
    8 H: D- H% J- |! F; C4 b* j; p
  1627. LDX #$00
    0 h8 I( X3 c# M! _. H
  1628. BULSEL_UP:
    / `7 T9 @# r6 h9 X3 y
  1629. JSR PPUADDR_PROCESS; k( k8 V! g. K6 q+ m
  1630. LDA BULSEL_UP_STRING,X
    ; s+ ~( {- h. p& q6 ?) E; `2 g  k2 j
  1631. STA $2007
    % h. r4 [! D4 |3 }. z
  1632. LDA #$005 q6 q9 [" T5 K) G+ [
  1633. STA $2000
    ; W8 Z" K  |! H2 ^6 ?  b8 ]
  1634. INC $BA% J- z/ p. m3 X( M( u, U
  1635. INX" M7 S% o+ ^/ L: H% L
  1636. CPX #$097 M" w9 f# l+ ^1 S' ~
  1637. BCC BULSEL_UP; N# z4 @9 Q. \: I
  1638. RTS
    4 E; V: A: q, t7 }
  1639. BULSEL_DN_WRITE:
    ' G  p4 u& P. p
  1640. LDX #$00
    3 o) o' J1 l6 F1 o( g; I' h4 Y
  1641. BULSEL_DN:
    ! F& y! R, X' I. c. D8 t: C8 b
  1642. JSR PPUADDR_PROCESS$ ?' N% p/ {$ f4 f. p) U5 c
  1643. LDA BULSEL_DN_STRING,X; G1 j# R* r+ Z6 }) ~1 F
  1644. STA $2007
    * j" q. G0 }( h3 {+ R
  1645. LDA #$00
    2 _/ c& i5 O& {1 J/ M, v
  1646. STA $2000! A( U( C' d: K" j; ~* F7 V, j
  1647. INC $BA
    % f$ a( b! U! m$ I, n/ G
  1648. INX" t( R# D1 M1 P0 K0 y
  1649. CPX #$09
    * T; c( Z6 J- S+ x" x
  1650. BCC BULSEL_DN: v$ N& V( }$ m- \* T
  1651. RTS% \+ y6 B: r# N# y
  1652. BULSEL_LF_WRITE:( B, [% ]! g) h; @
  1653. LDX #$00
    % R4 j7 ?( N( _2 t# I6 T
  1654. BULSEL_LF:2 [1 H% I) D- r# z2 ^- S; x0 o. `
  1655. JSR PPUADDR_PROCESS9 m) Q' M9 C/ u& c& C! G1 M
  1656. LDA BULSEL_LF_STRING,X
    , X$ T4 O: e2 Y, G4 ]6 z
  1657. STA $20078 s& j! j5 \1 t4 D0 j
  1658. LDA #$00
    ( ~/ a" i, k3 o; C' ?2 |
  1659. STA $2000' p) r% D0 Y9 _% D4 W9 a
  1660. INC $BA! P* E. N: {9 S
  1661. INX
    0 p1 k: m1 ~6 R  y/ N
  1662. CPX #$09
    ; V+ J% t1 w/ ~; z4 \. R  y5 K# x8 z
  1663. BCC BULSEL_LF( I" O. M- \  N
  1664. RTS6 b: V3 ?. \5 }* U/ I
  1665. BULSEL_RG_WRITE:2 ?& g9 h" {, @2 W- A- {
  1666. LDX #$00  z* `- f2 \5 o
  1667. BULSEL_RG:) G7 y5 G- q* H' A
  1668. JSR PPUADDR_PROCESS
    * z. |9 n! P: l9 G
  1669. LDA BULSEL_RG_STRING,X
    ! ^5 Z, Y- h" w8 g
  1670. STA $2007
    ' d+ ]7 q9 K7 k0 M7 p
  1671. LDA #$00
    9 k7 f2 a4 ?" ]* s
  1672. STA $2000" h. c/ e" r1 @+ P8 i
  1673. INC $BA
    9 y$ S$ Z9 ?8 R/ E. i+ e
  1674. INX" }! f' q6 w" e1 c8 E( ]4 T/ ~
  1675. CPX #$09
    + x! r; K, d8 v6 g/ N
  1676. BCC BULSEL_RG2 h5 f  @# d: V: l# k
  1677. RTS& j1 R+ F0 L6 V$ a, R
  1678. BULSEL_B_WRITE:0 V+ b- B, l/ ?: _5 X5 {$ j2 t. e
  1679. LDX #$00+ c8 m5 f# p, i/ z
  1680. BULSEL_B:
    * \, O6 ^- e  O) c# B4 z( F
  1681. JSR PPUADDR_PROCESS# M$ }$ L0 x4 P) d6 A2 q* Y
  1682. LDA BULSEL_B_STRING,X
    ! S. X) X: X; J! T
  1683. STA $2007( V  M5 ?' i/ R% b' I
  1684. LDA #$00
    ( s$ D& P! M+ A0 B) {
  1685. STA $2000
    4 z; R, T/ C- |/ V: z
  1686. INC $BA5 X) `1 ^+ H2 V' D5 c8 s; L3 ~, I
  1687. INX- b+ z$ R% }: d$ X# V5 o
  1688. CPX #$09
    2 l9 {7 o: H* l7 l! @: D
  1689. BCC BULSEL_B& L7 @( x, w6 h$ p
  1690. RTS) ]$ e+ V  V6 i; H2 K) _' l8 [# y
  1691. BULSEL_A_WRITE:
    : _* T9 O3 K6 F8 o9 k6 q
  1692. LDX #$00
    / \( m1 ]7 ~. A  |
  1693. BULSEL_A:
    # ?& z, ~4 o! Q' F2 P# D9 |% S) R
  1694. JSR PPUADDR_PROCESS
    % z2 o4 q+ B$ V; H' S0 `* @
  1695. LDA BULSEL_A_STRING,X+ g% M# B) p& _1 l/ q2 j
  1696. STA $2007. Y! [! D. ]" m) @# u5 G
  1697. LDA #$00
    # w5 l2 o$ A. _, y& Y2 x0 ?
  1698. STA $2000: c; A( ?, `+ K& s' _/ B6 [7 v# T
  1699. INC $BA
    ' a5 y6 a  B, x- F7 n7 k, E; d
  1700. INX6 ]( {3 g& L* L+ p. R
  1701. CPX #$12
    ) m8 t% A- m( \5 y% Y$ E
  1702. BCC BULSEL_A
    , c, O2 n: I+ l( t2 F
  1703. RTS
    - s) H7 d, N6 k5 w; w
  1704. 7 P" e6 _6 f& ?0 r
  1705. 7 k5 B7 a% ?% F" c/ H) L5 h
  1706. 4 S+ s2 ^; l$ o" v% p
  1707. BULSEL_PPU:1 v4 {0 I$ n9 D* [. @
  1708. LDA #$6C1 N0 \% F- n8 L  d
  1709. STA $BA1 L, k' e1 r! X5 t, P: r7 Y
  1710. LDA #$211 b$ y  y3 @! ~! ?( E, a: c' [
  1711. STA $BB7 s: o! T1 s2 o, a
  1712. JSR BULSEL_UP_WRITE- q, j! o, g" ?

  1713. * _3 [+ m# X* Z2 [. l
  1714. LDA #$AC( \; X! D9 {6 R1 e7 g' l) ?
  1715. STA $BA% \* l; _0 ?: x- g; i
  1716. LDA #$21
    $ h; G; R5 {8 {: [5 N# O  w
  1717. STA $BB
    $ S! J) h- M- U5 d1 G  Y
  1718. JSR BULSEL_DN_WRITE: I$ T8 F$ B" Q" y3 \) i* \& D

  1719. : ?  l% @0 @% M+ X$ w. ~
  1720. LDA #$EC
    5 i9 U/ J1 T1 p. Q9 b5 H6 ^
  1721. STA $BA, j: C# P+ Q4 V3 Y9 Z0 u
  1722. LDA #$21
    $ E1 `; _9 S1 Y3 m2 [4 l
  1723. STA $BB- ?( @0 L& H" `$ O' A" [6 h. x
  1724. JSR BULSEL_LF_WRITE/ t3 _- L- Q" U& n* k
  1725. : L+ m; k$ X* I
  1726. LDA #$2C
    % {4 R  \2 j- i9 i
  1727. STA $BA
    / L1 r' a  B' u
  1728. LDA #$22
    ! I% h. }7 O2 }$ i
  1729. STA $BB
      g% a7 @8 J1 j. C( f2 N/ }
  1730. JSR BULSEL_RG_WRITE
    / h% I9 a3 v9 A6 ^; }

  1731. 1 c7 b7 R, I! D9 i
  1732. LDA #$6C
    # g4 I1 o/ t) \% P
  1733. STA $BA
    - m4 M! s; D% v  S5 }' ~- t# Z
  1734. LDA #$225 `9 z5 ?  P1 ^/ t/ e# `
  1735. STA $BB
    % X3 A3 O8 E. w( ~) B
  1736. JSR BULSEL_B_WRITE8 I- U* [3 ?" o9 h" f1 T

  1737. : E) w2 Y- ~  A) B+ |7 i
  1738. LDA #$A75 o5 {) K! j) U
  1739. STA $BA. W  Q5 H2 }2 }
  1740. LDA #$22
    ' M5 G& [  l- J* I  L3 A- i, c
  1741. STA $BB  I, K* s6 h2 Q4 \
  1742. JSR BULSEL_A_WRITE- J4 A1 t$ K: {( A& j& o
  1743. RTS& z3 i2 |$ b' c7 E+ B
  1744. ' S" i7 K, A! j4 t% v
  1745.   W$ x, K" v, x  R. }

  1746. * U; \+ ?3 T; r( B$ b" q
  1747. UP_STRING:" s/ Y$ [% t( }( ]
  1748. .BYTE $9F,$9A,$80
    9 `6 U$ }. E! |
  1749. ' w+ s8 R" R! K/ U8 I1 ~* I8 w* d
  1750. DN_STRING:  ^2 l- L5 m6 o3 m2 d# v2 U
  1751. .BYTE $8E,$98,$80
    % a$ Y0 _. f- h, u1 c2 S% D
  1752. " i, [2 A* `* H1 V) ?" k& U
  1753. LF_STRING:
    , C: c" ^+ k2 e1 d, q
  1754. .BYTE $96,$90,$80) |  h" V/ n. f6 x

  1755. 1 P9 N- A+ N! f+ |7 o# [8 P
  1756. RG_STRING:
    3 F: F1 B! Q8 X
  1757. .BYTE $9C,$91,$80
    ' G3 x+ B6 ?8 W2 u: M3 L9 S! {. P

  1758. " I# M, a) W, i/ }! h1 W; d2 ]
  1759. B_STRING:
    & h5 s& {7 u+ Z7 n8 H$ s
  1760. .BYTE $80,$8C,$80
    2 D9 v3 a0 J& |* K9 \5 s
  1761. 3 K6 e- l" _$ j" R( h- n( Y
  1762. A_STRING:9 G/ U- L+ N9 D( `4 d( M
  1763. .BYTE $80,$8B,$809 w7 B  D3 w$ p6 W* x& @  G0 H

  1764. 6 p! T5 x/ X: V. J1 K7 l0 N+ j
  1765. * s, ~7 l  [/ z8 A% Z( W# B% j
  1766. UP_WRITE:; L7 t2 y* P& _! X7 G" G
  1767. LDX #$00
    , v: g3 |& A1 r/ y- b# O! H2 T
  1768. UP:2 H" k, E- i" S; h
  1769. JSR PPUADDR_PROCESS
    / J# z+ }+ `3 w5 C# v4 l$ l
  1770. LDA UP_STRING,X. `0 l8 T6 D, k8 H
  1771. STA $2007
    * [! ]9 j0 B. E5 H) w7 W: E
  1772. LDA #$005 U* J2 W' ?, [. e0 U
  1773. STA $20007 w, f" {2 ], P: z3 O
  1774. INC $BA( s3 e( |( M! [: U6 [" ~0 E
  1775. INX+ S! K2 [( z! [+ @- b' C6 B5 _/ L
  1776. CPX #$03
    . f2 |+ P- e7 ~5 b) q
  1777. BCC UP
    $ L4 V! _$ \" Q1 p7 O. a; Q
  1778. RTS, T- x0 T6 i  R0 a  q3 @8 ?; E6 u

  1779. * v0 V& s% s/ K: |( T
  1780. DN_WRITE:; Y1 S9 o* q) h8 m( c
  1781. LDX #$009 f( z9 X. L( C% b( y9 {& K
  1782. DN:
    ) Q2 j7 _+ w+ @- R  D
  1783. JSR PPUADDR_PROCESS
    # _. {/ f1 B2 F' }) `
  1784. LDA DN_STRING,X, B8 A8 M2 ^4 K* Q3 F
  1785. STA $2007
    ( t# @1 ]  d" X9 Y4 m4 k5 l- l
  1786. LDA #$00
    $ C8 [5 P9 g- X( ~# C
  1787. STA $2000  `- a9 R: F' i3 Z# D8 k* g
  1788. INC $BA- n/ I, [* P' s9 P
  1789. INX
    + u0 Y3 V2 A3 u& w8 M$ T; c
  1790. CPX #$039 \( T" M( O7 V1 K# ^( c
  1791. BCC DN6 @* _5 O4 N  R3 z
  1792. RTS
    8 C& H- g: U" S' e$ n# e
  1793.   O8 _- z0 k5 x7 G0 ^
  1794. LF_WRITE:
    1 S* c1 g. }; }* q
  1795. LDX #$00
    " a0 e4 w4 B- s  X0 n* ?& U
  1796. LF:
    % u- g# n% j- _" w
  1797. JSR PPUADDR_PROCESS# A  m& S* @9 p1 \4 ~" Q+ Y
  1798. LDA LF_STRING,X
    ! H6 X" S! k; |8 P7 ^& S+ f8 j5 x
  1799. STA $2007, _4 g# M" Z* T1 s, ~& \
  1800. LDA #$007 I$ g/ Z: c) z+ W/ P
  1801. STA $2000% h0 s4 z. R2 f! j5 Z' O/ H) h
  1802. INC $BA
    2 |$ D/ Q- t  L+ h
  1803. INX$ s9 [' }# A; Z- d
  1804. CPX #$03
    2 N+ j; f. e" ]$ _
  1805. BCC LF
    # M) E' }- {0 W
  1806. RTS
    & c1 Y4 A+ T5 f- \9 M

  1807. 7 U; P6 Q( Q4 t& v7 @; N
  1808. RG_WRITE:
    0 k% A& z! }1 E9 j9 S! D
  1809. LDX #$00: a4 D, T' H/ R0 O7 z
  1810. RG:) n" q& d7 K8 P7 \5 k, W6 N
  1811. JSR PPUADDR_PROCESS
    $ M6 `2 c6 p. _$ Y8 i! n+ U
  1812. LDA RG_STRING,X
    / j  K6 @+ O/ F% H
  1813. STA $2007
    ) s% L/ v# R( ^8 e9 G( j
  1814. LDA #$00& v' b6 g) Q2 F- X/ h/ H
  1815. STA $20001 u+ N" d# Y" `8 v# a5 y+ d
  1816. INC $BA
    , F4 u, F) Y- ]+ y% T
  1817. INX- s( o- L9 a7 |) _; N
  1818. CPX #$03
    ) p9 o$ _( }) W( |3 H# q
  1819. BCC RG
    7 Q" y) X% x9 h7 t" y) C1 z9 m
  1820. RTS
    ; C9 j6 H0 U: t7 Z6 `
  1821. ! `" K( T  j1 ~3 S$ a
  1822. B_WRITE:
    / `, F" c" p' c9 U6 X9 ?1 {
  1823. LDX #$00
    # i1 q- c: Z  [
  1824. B:
    ; {* L% Q" n2 e8 E' I8 i, W
  1825. JSR PPUADDR_PROCESS8 E  t; x0 _$ t5 M3 W+ Q7 E: x  {
  1826. LDA B_STRING,X
    ( ?8 {2 O, Z  |6 Q  o, ]' N
  1827. STA $2007
    ( k# q/ C9 w5 H. |
  1828. LDA #$007 [$ |& t( e5 U( D( }2 F
  1829. STA $2000
    ! ]! {$ ~: I  S$ J3 R/ t
  1830. INC $BA
    4 H# f7 S* [( C2 k+ R
  1831. INX0 V" O0 i( q1 D( o3 o5 a7 E
  1832. CPX #$031 Q% @* i; K5 d6 m3 _; o
  1833. BCC B
    ( H4 Y! E3 x6 D
  1834. RTS+ c5 o- W! e. o

  1835. 0 t* t0 i! k  y1 A- H* k* d
  1836. A_WRITE:
    , N; \9 i$ C+ x$ C4 a
  1837. LDX #$00
    . c- Y4 v" h( O) E' {6 O1 O5 s) ?
  1838. A:4 O" C  I9 j1 Z9 I4 X# G7 b
  1839. JSR PPUADDR_PROCESS
    : v& {) n2 G  T+ I- x8 o
  1840. LDA A_STRING,X8 t* m- {& f7 u1 k+ {
  1841. STA $2007
    5 i! d* h- p# q
  1842. LDA #$00  O+ R+ ]) S; n6 S5 n6 o; @
  1843. STA $20000 g& V' x8 a, K3 j8 _- D
  1844. INC $BA
    9 G/ A6 P( v9 u, ?5 X
  1845. INX" H7 q8 Q' a5 R/ k+ t
  1846. CPX #$03, |/ u0 y9 ^& I2 T. {4 W
  1847. BCC A
    - H) G2 x5 l/ m; v+ W
  1848. RTS+ T1 O$ K" E6 x* c: C

  1849. ' W6 r: v  l6 ]
  1850. 9 x# _4 @  s6 S# r. e- Y% K* l
  1851. UP_PPU:$ h8 O2 I* D: F, T" g/ j: g. j
  1852. JSR UP_WRITE
    9 e* [& ~2 }; b# Y8 n' w
  1853. RTS+ g. e* X3 m; b5 B/ c
  1854. 5 \0 x3 P7 {+ p) m4 j9 Z
  1855. DN_PPU:! R% R0 a( t9 e1 J1 ^' \* X
  1856. JSR DN_WRITE) a) i8 S$ x1 ^
  1857. RTS
    , c" B1 J9 b  _+ I- B; l% C

  1858. & Q1 N( \' N0 \' E
  1859. LF_PPU:
    + P2 [& C. X: r
  1860. JSR LF_WRITE
    1 z. x0 E) q1 G) h: a, o
  1861. RTS
    7 U- d$ b, O0 `! w4 [" q
  1862.   |8 J0 Q: V5 @
  1863. RG_PPU:
    + d/ A' M3 R9 w- v9 n% r
  1864. JSR RG_WRITE
    ! B" M# B$ ^- ~7 a: n
  1865. RTS
    & Z* M% ~. T& B* h# y* i: Q% a7 i6 L% U
  1866. 1 L4 t6 y, t, A3 H1 h. p) G1 f5 J9 W
  1867. B_PPU:; J8 h1 X. E' U1 p3 E4 v- a3 h' O
  1868. JSR B_WRITE
    6 P6 z; o! g* D/ k% d
  1869. RTS  v1 |8 }- K. N2 d
  1870. 9 @% @: q( U% E1 I9 Q: D& J; q
  1871. A_PPU:
    ) Z( _' v0 T8 U! u, q$ C
  1872. JSR A_WRITE
    ( B3 g' B4 n3 Z0 b6 |. X# Q
  1873. RTS- {3 a6 L1 g, g2 W  k0 Z1 Y3 a
  1874. 1 X$ n) ?" B( k5 H  O9 b4 S* y1 M
  1875. 7 d) E# S5 p" A8 ^
  1876. PAGESELECT:
    : Z% j( M- K2 @- P- `2 i
  1877. PAGE0:
    ! n8 m6 o* f9 M# N; h
  1878. LDA $07AA
    0 O6 s, N$ Q, H; B- |7 J, B
  1879. CMP #$00# Y$ ]) \# S& u; S8 \, m, {
  1880. BNE PAGE1
    3 H8 E  R: K; g+ s0 J4 U5 I$ |
  1881. 8 c. v0 a' Q' a! [8 ]
  1882. PAGE_00:
    ) X. c& c! Y9 I- l& r* F7 m8 Q: V
  1883. JSR BULSEL_PPU; o4 K6 T  |2 L
  1884. RTS
    ) Y) A3 ?2 g3 f; X- F
  1885. $ o" I- d. p/ t- M* x% s% F
  1886. PAGE1:" O# C) J- H# M  B5 C- {
  1887. LDA $07AA
    / Q) [8 I  a" X+ d) l$ {
  1888. CMP #$01" c% [( K7 O# E* I3 \
  1889. BNE PAGE2- f% [1 v2 i: x$ J  A

  1890.   A' i* u5 J1 ?, q
  1891. PAGE_01:  ?4 R/ a* I: v+ K
  1892. JSR INVINC_PPU0 ~' \; x# T" S# V& I9 K" R3 s5 t
  1893. JSR LIFELC15_PPU
    $ Z3 L% l9 ]' V
  1894. JSR DOUCON_PPU
    2 e# f% W6 }7 t  m4 a" v/ o
  1895. JSR KILLON_PPU
    4 Q5 u  H3 D1 m" D
  1896. JSR SKYFLY_PPU
    + X" f* }* \. R- f: ?5 Q/ C& S
  1897. JSR LIFELOW_PPU
    8 e' _" b( V3 J5 `$ y
  1898. RTS
    - ^: ~" M1 c" J$ b
  1899. 1 l# m9 O, `0 A( w2 ^
  1900. PAGE2: 9 t6 j! m' Q3 @4 p( w% C0 X
  1901. LDA $07AA5 r) G6 F! V) ~& l( P
  1902. CMP #$02
    0 P& w) C! M2 n+ _) K
  1903. BNE PAGE3
    : C* X: E9 J- v

  1904.   }) S# U! L, p+ Q  j: M
  1905. PAGE_02:
    ; n) B$ d$ Z$ \: y. @5 y9 _+ H
  1906. JSR BULADD_PPU$ V" H9 r6 o! I) q8 R5 V- I/ U* C
  1907. JSR SKINGE_PPU
    , l4 ]( a9 R3 K" k8 k* A
  1908. JSR BULMIX_PPU3 |- _) G; L4 e4 p" ]3 W
  1909. JSR ENELOC_PPU- r% o( {- X- U: H9 H8 W
  1910. JSR FOCFUL_PPU
    1 l9 X2 b- a9 I# Y" E
  1911. RTS2 f( V1 s$ i6 t4 m4 T1 ~
  1912. * M6 i/ e! B/ z) ~, y2 ]6 v5 n
  1913. PAGE3: 6 P# B) m+ l' E3 ?1 a
  1914. LDA $07AA
    , n! c* \3 p( l4 X6 T3 B
  1915. CMP #$03
    ( d. ]3 U& a8 A5 F- l
  1916. BNE PAGE4) H9 |; u2 {* o7 S( h, U9 w
  1917. 0 P1 t% M( I. N. E
  1918. PAGE_03:) U- I# d, G2 R1 W* y
  1919. JSR BULCON_PPU) ?/ f3 ]8 [9 V  }/ H, y
  1920. JSR SPEBUL_PPU
    $ z. Q" s/ r% p$ j$ H8 e1 A
  1921. JSR CLEALL_PPU  e& X1 s% g( R9 [2 j2 E. `% _' W
  1922. JSR HARDMODE_PPU# n7 D  K# X% a0 g6 N
  1923. JSR B_TO_JMPSTG_PPU2 j. U- a; N$ H8 \, h
  1924. JSR A_TO_PLAMOD_PPU
    ! j, t7 w, t# i) p) E" {; n
  1925. RTS
      _1 J# H6 M4 h, C4 ^
  1926. # ?$ _! J6 o5 i# q: D" @
  1927. PAGE4:
    , h2 A9 X2 e" T* _
  1928. LDA $07AA6 u7 ?4 m# e& k  x' X  i! H
  1929. CMP #$043 t' ]" f( Z. E/ e% X& g
  1930. BNE PAGERTS
    - ]$ Q% k: k3 i- t

  1931. / E$ g) t9 M. f) M# U) y0 E
  1932. PAGE_04:
    2 Q" D1 S: ^; r  M
  1933. JSR MOVSPE_PPU7 g* [1 n% W3 F0 u; ]
  1934. JSR UNLJMP_PPU
    ) _$ u$ ?1 G# L4 |( J- Y
  1935. JSR DESTRO_PPU
    ; c4 ~- c3 j5 f1 F1 p1 n" Z/ B6 P$ i
  1936. JSR EQUBUL_PPU+ r% z" w4 S' q% b( X5 _5 Z5 g
  1937. JSR MOVESPEED_PPU+ ^7 [. K; R, i1 I
  1938. PAGERTS:% P: b9 [! ?" e% S+ g
  1939. RTS
    . o1 ~) x2 F7 b+ m, x& p
  1940. 3 j& n) }+ N3 ]7 f! G( N

  1941. 2 M( ?$ O  ~1 m
  1942. PLAYER_01_STRING:
    , n" F& U' ^& n
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80! }8 Z, }5 J! }7 }( n0 X
  1944. 9 N. S" N* y7 K) S) W( m" h

  1945. ! A3 b' }5 t) j$ ~& n. v
  1946. PLAYER_01_WRITE:4 x& p, ~8 r# H, F
  1947. LDX #$00
    + K2 H2 h/ I  @: ~; ?$ M% h; |
  1948. PLAYER_01:
    , V) e: B# B1 r; b
  1949. JSR PPUADDR_PROCESS
    ( M5 T; A- |: a- i; Y, K+ o
  1950. LDA PLAYER_01_STRING,X
    * g+ I- j0 Y! Z
  1951. STA $2007
    0 f; T  q/ F- w& Y; H+ A- n
  1952. LDA #$00' T. ?- |/ i- A
  1953. STA $2000
    2 x' l- [# p" _! Z* V/ B( y
  1954. INC $BA
    5 c; j# ]" n5 l. ?' ^
  1955. INX
    : J& Y" o0 ?6 U+ C, Y& N; L+ `
  1956. CPX #$0A; ]3 }) D) K* R! ?
  1957. BCC PLAYER_01- m8 p3 `9 z! Q
  1958. RTS7 w0 k" B4 b& g" m3 c( N. H
  1959. + i/ ]  J3 w' d5 q2 ?  {8 I
  1960. PLAYER_01_PPU:
    $ J9 E7 h2 v& [" a  S6 L
  1961. LDX #$00
    5 {; a# L( L& l
  1962. LDA #$64
    0 J/ W1 H5 V: Q* t; ]* X( \/ q" P
  1963. STA $BA
    : w* U. ]: M5 R5 s3 L3 x
  1964. LDA #$20$ W9 N9 c% J* A( r) a' f
  1965. STA $BB
    ! S" t+ Q4 ?" P0 M; M0 a4 x
  1966. JSR PLAYER_01_WRITE& h$ F; y* x% v/ J! r3 {* \, {' W( b: A
  1967. RTS
    6 V1 u" O+ G3 z" Z: S) x
  1968. % _; p+ @8 }# d3 H
  1969. PLAYER_02_STRING:
    2 I1 e! r6 _. q) d7 A1 o
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    0 |0 D1 W& |( @& {: a# z( e) b
  1971. 4 x% S" [; u" c0 k6 {) v. d" H  I
  1972. * _+ q  m' k# e  t+ E
  1973. PLAYER_02_WRITE:
    ) f7 S+ q3 ]5 U" e  M. e* C
  1974. LDX #$00
    - O; n3 ~' t! k
  1975. PLAYER_02:& D. p+ P& I  n) U$ }; o
  1976. JSR PPUADDR_PROCESS
    ' `8 i$ E( }2 _7 g0 |; I
  1977. LDA PLAYER_02_STRING,X
    ' M' _9 o: ]) v9 S+ e! a
  1978. STA $2007
    7 j0 Z& I3 _3 _* K2 J
  1979. LDA #$00
    ; u& F. F7 c6 h- ?/ T: h
  1980. STA $2000" p* z7 T; D0 A/ w
  1981. INC $BA: o; H& j% A# H
  1982. INX& w5 X  @) o3 |( ]7 w
  1983. CPX #$0A
    / y; c: F3 `  Z( C
  1984. BCC PLAYER_02
    2 w7 Y  w; D0 d* E; Y, \1 o
  1985. RTS. ^& h/ s, Z' O/ i0 V
  1986. & h; v# T1 g% p7 I: d& D- Q% [
  1987. PLAYER_02_PPU:
    3 K2 _0 Z  J& ^  M! U. g
  1988. LDX #$00
    ' m; N/ o% D* @( \. i6 w. L
  1989. LDA #$73
    " W0 G) ]  j# r9 }+ u/ @9 |
  1990. STA $BA
    ' F5 Z/ y1 N' T' f# e
  1991. LDA #$20
      H( [& y7 P) M  V
  1992. STA $BB9 Q+ [6 \! _, B, x3 [/ W* x
  1993. JSR PLAYER_02_WRITE
    $ E4 p* @4 b. l
  1994. RTS9 `6 ~6 o- `8 {5 h  {- }) j
  1995. 8 L6 E1 b( z( J" s1 u7 C
  1996. PPUADDR_PROCESS:
    8 C' N3 W. L' `& u5 a  [! r. h
  1997. LDA $BB. _& j( Q8 ~+ X* U. P
  1998. STA $20066 f! ]3 d- |; d: j& D% I2 h" |3 {
  1999. LDA $BA1 c0 L& f9 D) c! V3 s  U. a" V/ O
  2000. STA $2006
    1 a, T4 I- c+ S7 r. X
  2001. RTS
    5 n8 o$ W8 Y7 o/ X& l2 w

  2002. 2 O* L# n6 E# l! e
  2003. 3 y7 G4 s" }% F4 x4 k) {

  2004. 4 E& L* d, x6 N3 K9 H# y
  2005. ONE_STRING:
    3 w+ @! w& @. k- @6 \
  2006. .BYTE $99,$98,$8F
    " d/ n% T# _7 r  g' S, t
  2007. 2 F( ?( m! z+ y; k- n" z4 Q% y
  2008. TWO_STRING:5 c$ P  F" y, C: U  W: z9 x5 Q7 ^2 i. S
  2009. .BYTE $9E,$A1,$99) f/ m( ^! w" X; N
  2010. 0 p5 j# o- V, Z
  2011. ONE_TWO_PPU:; X9 J% G0 ?/ C$ J
  2012. BNE ONEWR$ ?+ p7 G% U7 e( F  d: p
  2013. TWOWR:! W) d4 j* b( D# z
  2014. JSR PPUADDR_PROCESS
    - B& e# V" @8 U6 a5 n
  2015. LDA TWO_STRING,X7 k" B! B+ U) W+ _8 N( R* T
  2016. STA $2007
    3 m4 K+ m# w2 w' r. @
  2017. INC $BA8 @5 l8 m4 r8 Q& b5 c
  2018. INX
    9 [$ k) N" ?' |# p" V6 V4 r
  2019. CPX #$03
    7 n+ ]" E5 ]8 _. \- b" G6 |
  2020. BCC TWOWR
    , y, [" O# |) m; A; H2 E
  2021. RTS. V( b0 C5 y" r: {" A
  2022. ONEWR:
    ( x8 Y4 v. Z/ X: {" E! {& @+ N
  2023. JSR PPUADDR_PROCESS* J" }! c( [* S1 z- G) z& o
  2024. LDA ONE_STRING,X! h& K. @: d* t8 G6 w3 |3 o
  2025. STA $2007
    ! L* _+ j5 W) y5 P7 R1 @
  2026. INC $BA
    - {( s# `' s5 {- A$ m, t
  2027. INX
    1 ]8 Q6 l! S& e  p. L
  2028. CPX #$038 B" I+ w: J# a: p/ z
  2029. BCC ONEWR
    , e  M4 z$ @6 M- B" c
  2030. RTS
    : ^' E) R" a; Z+ x! j
  2031. 2 e3 g6 T; Q4 ?4 V
  2032. MOVESPEED_STRING:3 ^9 M  d5 x, Z, s3 \& H$ t
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    ! \( \0 Y4 m; s2 m

  2034. ' Y2 ^0 [2 ^4 H! q1 n" I4 |

  2035. 9 i3 e- g& Q" f4 k
  2036. MOVESPEED_WRITE:
    * L3 A. I8 i/ \* w! H
  2037. LDX #$00
    ; c6 K3 o: k$ K& ~$ [
  2038. MOVESPEED:  B4 Z9 ^4 N: v2 P/ i
  2039. JSR PPUADDR_PROCESS
    / \" c# [8 F- Q# @
  2040. LDA MOVESPEED_STRING,X7 U# N9 h7 ?2 N3 ^9 ?0 {2 d
  2041. STA $2007
    . b7 o! e) M( F
  2042. LDA #$00' I3 G( j* `3 I. W
  2043. STA $20003 D" {" L0 I7 i. x  _' G. T  B% {
  2044. INC $BA
    % X/ c: s: {# y" M$ U# ^& I1 v
  2045. INX
    / c" ^+ F6 |( Z4 f
  2046. CPX #$0B9 o4 m* I* C: \# k2 ?2 d+ P7 Y- @! ?
  2047. BCC MOVESPEED& C' h: v+ G* y
  2048. RTS
    7 m' b  Y! Y4 _+ k) Q
  2049. ! D% V* H7 a" U/ p4 i
  2050. MOVESPEED_PPU:# i7 O$ I; v& ]5 M6 e7 B
  2051. LDX #$00
    2 R! J, t+ N5 j& ]
  2052. LDA #$AA
    " _; \* e, ~$ @1 P, ?& m, t
  2053. STA $BA0 ^. W( N* m! O" J# b4 E
  2054. LDA #$22; q! A( o: b6 m
  2055. STA $BB8 V* e& D0 W  E( E5 p
  2056. JSR MOVESPEED_WRITE
    9 e1 }6 {5 x" P; x  k$ M
  2057. LDA $7003
    " c0 G/ j1 T# n0 ?
  2058. CLC
    8 K# Y/ ~, E0 F) ]' i
  2059. ADC #$82( d4 m$ t4 f/ C
  2060. STA $20075 _( S+ `9 O. z0 |! H7 z# F4 l
  2061. RTS
    " M& o* v7 K, D" \2 ~8 n% J
复制代码

本帖子中包含更多资源

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

×

评分

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

使用道具 举报

签到天数: 3028 天

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

使用道具 举报

签到天数: 2139 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!' E9 N/ k$ E+ X  B& t* N
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 2366 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 2157 天

[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, 2026-4-6 08:27

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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