EMU618社区

 找回密码
 立即注册
搜索
查看: 893|回复: 18

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 $ }+ W2 c' _' p/ @2 D

' F3 f  k6 ?! H& h( u2 P- H
     [FC][魂斗罗旋风终板END暂停显菜单]
3 \# ]% j  E3 x! h9 V# F- ]" w4 B
作者:FlameCyclone(flamecyclone.ys168.com)
0 `# z2 C+ ]- B; [/ o; a$ |时间:2016/11/19 21:46:00
% ]& A- ^" T- ^更新日志:

8 p  T* w0 A0 A& c2016.11.19:加入暂停显菜单(共5页).
: O9 }9 ^/ W) z1 }0 N$ M6 {+ X2016.11.12:加入无限跳跃.0 X- s; _0 D, S, @
2016.11.12:加入速度调节.

  G; I8 F8 |2 G! c0 f2 ^* H2016.11.11:加入敌我子弹对消功能., F! T& e  p5 S, y+ c( O
2016.11.11:加入全屏闪灭功能.
5 c6 R- }) P: U: p$ k7 ~) T4 {8 y2016.06.08:加入全屏瞄准功能.
2 C+ m2 b- O" _2016.05.31:加入弹速调节功能.7 d6 u5 A$ Y* [8 n! I. a
2016.01.01:加入高难度模式.7 e4 H9 @' F6 y% E; z6 [  v2 T$ d
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
/ l5 ~# F- w/ K6 |! {3 R9 g2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.# \* W+ l! U: u* H
2014.07.05:双人切换功能优化.) _/ O+ c7 |+ o! Q0 E
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.8 q+ Y8 u1 S5 c/ e5 ?* S
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条./ [" c% Z& a" R/ @: q; i5 x
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通./ x( y, _1 n( X- Q: e
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
+ u- G8 X5 {' T  D; }  D2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)6 e; D: O0 H2 J$ {  a4 ]
2014.02.13:加入自动演示通关.  G" S% \6 v" @+ K& W5 a) j) Q
内容:; `* O; r  [" |; a8 a
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.$ q2 k: l+ E, v; H
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
) ?% R: p) Q+ Q9 K  r2 J21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

9 C4 ^. _2 ?6 Q20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.. U' `( e/ r8 C
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
8 ?3 p  `! r: [18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
1 l* d, b  m% z. |' c17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.6 D0 `, K1 V' z
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
8 b/ q. s+ b/ Q, ], r01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
% z$ E0 a, j3 H2 k02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
* e0 h; f3 B. e& I0 l03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
1 \/ \$ e/ b1 ^' ^" [3 C6 a4 C. B04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
* _; _. R. |/ k! x: s  Y# l05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.7 K$ q% _; ^( `5 Z) H: J
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.
* g& A' I/ }/ [4 h% {07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.5 f4 f& h4 B- g  ~- u
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.: a! `( B* a# t! r' B
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
; B; F" ~8 z4 i  Z10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合./ J, `8 g7 t  O4 p
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
( m$ A- g! R# w$ X! K3 I12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
/ W6 q6 l( y% S" N: \. _+ Q2 M13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
1 G7 ]: E9 J5 L, O9 i14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).9 A+ W, u6 X/ l  r+ O3 }" E" }1 g
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。
" [# h6 A. n6 F+ IA.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
  J  R5 d6 V' K8 b- q9 CB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!
- s) [! ?2 B. f) Y; ^4 UC.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作./ h  I5 `0 ]9 J( W' D. n) `# b1 C
4 V* M3 B- _: Y: s, k: H
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)+ c8 n2 Q3 j5 i) E
欢迎大家转载,转载时必须注明出处.
1 }. h. X$ e5 o, E% g: I  {# F" q# v
游客,如果您要查看本帖隐藏内容请回复
1 h+ \) U% r5 g
+ [4 i. d0 \" @8 ]+ k) M
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.  Q- c% ^. s# G$ N* S0 m3 L
这几天的劳动成果如下:
  1. .ORG $B400
    : h- c% c7 N1 I- ]& _

  2. . i  C! H* P# S

  3. ; ~0 ~# J. W8 b0 m3 ?
  4. PROREG:9 `; P' N8 e' I; U
  5. PHA3 x+ B. f' X- I8 k2 d# G* `7 s
  6. TXA2 F  k) T* e* k1 @# r; {  C6 @
  7. PHA
    & b, A/ r- r! [8 D
  8. TYA) Z3 B. f% m0 e1 R* s9 l3 n
  9. PHA9 y3 z% X& ^8 y- ?0 y
  10. LDA $25
    ) n" y& S3 M. A. N
  11. CMP #$01' h( y' e4 q2 C" }/ Y
  12. BNE RE
    * \" [& L/ |% \4 ^2 J2 |
  13. LDA $010A+ d3 i0 o3 k3 \# e, ~& F6 l
  14. CMP #$00$ h; ~1 Z& ~6 l
  15. BEQ P1- ~2 R- ]1 h. O1 f

  16. # Y  W0 F& E( I. R$ `! ^
  17. RE:
    9 M* A* v' ~3 E: O, }! R9 F
  18. JMP PPUWRITE- z  |: M+ Y8 F* |
  19. / r+ c4 f. V3 Y3 k! W
  20. P1:                ; 条件判断
    4 c0 |# r6 z# |  U6 x
  21. LDA $7FFF0 l: r6 {* T5 |+ d3 ^
  22. CMP #$FF
    2 V6 Q& c* `2 @# p) t+ E$ O" x
  23. BNE P1RP3 A7 j" w4 u: E2 g9 ^
  24. LDA $7FA0
    * ]( Z# N& E4 x# j$ s" G$ @: v- U
  25. CMP #$00
    + ]! e( D7 l/ L$ ^7 W% f; Z
  26. BNE P1CMP1 R' B2 A, o" {& o6 S8 V" M- K
  27. LDA $2001' F% @6 m; y7 [3 }8 i4 x
  28. PHA
    $ X$ ?+ A/ ?9 k/ S  U7 H
  29. LDA #$00
    4 n0 N1 l. t& k; n* W
  30. STA $20012 `9 q  Z  f. k1 @- A1 @
  31. LDA #$FF
    4 B) e' W8 H5 U- e2 H
  32. STA $7FA0
    " X. p4 P& R# v# G7 i4 o
  33. JSR CLEANA2 g7 B0 J* O' Y* _4 W$ v$ n& W+ [+ `' F
  34. PLA* O0 _/ x( }. Y
  35. STA $2001. L: C- N" Q% r( K7 N
  36. JMP PPUWRITE% W0 _7 M1 X5 E9 i: A3 i) a  H
  37. P1CMP:
    - ^/ D* z; |: `  }9 |8 j2 W9 F/ ^
  38. LDA $7FFF
    $ ^2 L5 P" Q3 D; u, ^, R3 f
  39. CMP #$00
    % n( q" B4 a' C. \& ?1 I# p! x/ H
  40. BNE RE
    ! u/ y: C8 ~2 R/ V1 _$ V7 m
  41. P1RP:
    $ s+ ^- W% \7 v: C! M3 J
  42. LDA $2002) m& u3 j6 t) ]
  43. LDA #$00
      @# j9 r) ^: X* O# ^% o
  44. STA $2001
    * {/ x: s; Q3 e. o- X
  45. LDA #$FF/ R+ c+ R$ n/ v5 d  B
  46. STA $7FFF/ `2 B8 w. F# c( \
  47. STA $7FA0
    * s. A% E0 L( A# r
  48. JSR COPYPPU$ K7 X# K7 [* @0 Y* w
  49. PIRP2:( ]% p& k6 M$ ^
  50. JSR CLEANA# j. l: _- m$ k" \* ~; f0 P6 k" X
  51. JMP PPUWRITE1 [. c& V1 |8 O5 \
  52. * T. C5 H1 b; K; ]% a
  53. COPYPPU:
      n, D- R/ T# q# n  J
  54. L0:
    8 E% z6 _+ s- J5 d
  55. LDA $30
    4 w3 ^+ U# Y% i. C' \& t/ Y5 r7 b
  56. CMP #$02+ R# \* y0 ?! K0 G6 x
  57. BNE UNPROFC
    " u8 n" d% W/ Z+ p) |8 R* s* z! y
  58. LDA $FC( I8 m. x! q9 d' }( O6 m9 ~" H
  59. STA $7EFC
      _, Y& X) q2 Q2 T. l& g2 C
  60. LDA #$00
    * r: S9 `+ V; E8 h+ s, B: A
  61. STA $FC
    2 ^1 y: q8 l! c7 q
  62. UNPROFC:
    ) V" \! S- \  f* e( H
  63. LDA $FD9 e% g, q  i5 X% I" r2 j
  64. STA $7EFD) ^" T2 N2 P6 q$ G1 C7 Q0 t
  65. LDA $FF, g- L- `5 J* {) @4 }# U8 h( ~' Q
  66. STA $7EFF0 p" d( C3 g" [, y7 S1 J
  67. LDA #$00
    ; T' D/ t  @+ a6 w' P
  68. STA $FD
    6 G  W: j4 G* B4 Q
  69. LDA #$B0
    . G1 M$ P% \. R, b% R# X6 ]
  70. STA $FF8 _3 c) f0 P, Y% e. `5 a! C: y2 c
  71. LDA $07C1
    8 F# ?6 Z7 [: r
  72. STA $7FC1/ @8 H- u: F  e9 r& k
  73. LDA #$3F' A/ L  [: ~: h, a" P
  74. STA $2006, `3 v( _1 `  j& W( M* a
  75. LDA #$01" R  z" H1 P, `5 `$ y( f5 a
  76. STA $2006
    5 H" O9 F$ K. z
  77. LDA #$249 T/ s, D' m6 X$ T$ V- C9 y
  78. STA $20073 E4 S! }4 e4 y7 f
  79. LDA $07F6
    4 x/ ~7 ^8 r- b) a1 @# d( r
  80. STA $7FFE
    * G$ y1 l) }6 ~( s- ]
  81. LDA $00FE/ q; U& v- {. _. C9 C
  82. STA $7FFD
    8 {! B) n, W9 j4 [' N7 u
  83. LDX #$00
      i3 Z  r9 D$ o
  84. LDY #$00+ F) \/ C2 @5 |) G* k. g9 u1 @: o8 ^
  85. LDA $BD2 r; g2 y0 \8 F$ G' h2 V& A
  86. PHA4 O) t7 ~: b, f' H) g" b
  87. LDA $BC
    . m* l0 b/ ^7 m/ @/ L6 G( g' g
  88. PHA
    . D  c9 m; {# d5 J% R
  89. LDA $BB
    ( m: t0 ?$ J8 Z* g
  90. PHA$ l% ^: J1 r! O9 H4 @) {: A: T
  91. LDA $BA: \3 B9 t1 Q  n  M0 t, G4 ~: w6 f
  92. PHA3 m1 m( D& M2 G, Z. |0 e- X; N) x
  93. LDA $B96 z% c0 ?$ O+ c1 `2 B
  94. PHA2 \+ k% \* H3 S3 V+ }  t
  95. LDA $B88 l6 }2 c# u% B  l  ?/ C/ x% B& S) s
  96. PHA
    1 n# `7 I' ~/ B; N
  97. LDA #$003 s2 C) Z' \9 N& d( J
  98. STA $B80 ?+ s4 W7 k# c
  99. STA $B9/ q& Q' o# x% t$ U0 I
  100. STA $BA
    & @  A0 C" F, z; P1 t+ @
  101. STA $BB
    5 N' t) P: I3 X6 C6 g/ b) D$ i1 t
  102. STA $BC6 h* c" z. I2 Z) N, c
  103. STA $BD
    " A/ {5 S0 v7 [- {6 W4 n
  104. LDA #$00( |2 C4 P  s. i3 b0 a; E1 c
  105. STA $BA& D3 d5 Y1 V& I4 ]
  106. LDA #$20
      V  n4 Q# ^: `3 o2 U8 g
  107. STA $BB
    ! Q; u7 c5 ~% w! o: C
  108. LDA #$00
    ' e+ e' I9 f% U* x: _
  109. STA $BC3 j5 U- q6 w/ w$ a: g# x1 b  ~  i* }
  110. LDA #$60
    2 _! k5 S& X% q
  111. STA $BD
    # Z: Y- }% R# u  u
  112. & w0 g* b5 ^2 ~  c0 n. q" }
  113. L1:                ; PPU复制
    ' e6 ?; R# o/ A5 F& t3 G' ^
  114. LDA $BB
    0 j9 y" t6 N0 z( d7 H; `
  115. CMP #$30
    * S* K& J# Q% @1 }! r; U* r
  116. BNE L2% w" h5 E% r' V7 ]
  117. LDA $BA9 C& K6 l# v6 H/ e( c7 H7 F
  118. CMP #$004 r, j5 n/ _$ j4 M* x
  119. BEQ PROADPLA8 k" |# D7 u+ j( h5 r

  120. / I8 @4 A0 H) e- ~  i
  121. L2:; ], E" {" I+ M1 f/ x. J
  122. LDA $BB
    2 O' e1 P- r0 M4 _) ~+ b" |/ h  S+ B
  123. STA $2006
    / L' R# @# }5 s" A
  124. LDA $BA; Y1 h. G% V* ~9 I1 S
  125. STA $2006
    + l# ~7 q$ ?4 C: V; ?- S1 S

  126. ' X% j/ p& v% W2 G6 \
  127. L3:
    * D- @& t4 t" n4 b
  128. LDA $2007
    0 K0 O3 j% ^) D; ~* r
  129. LDA $20072 h* }' a8 A1 K1 ]1 z1 D4 G
  130. STA ($BC),Y
    1 L) L# A' }: u5 ?5 \( b

  131. 4 l9 M, o. ?& _0 X/ f& x
  132. L4:
    6 X( o; ~1 e* v, }
  133. LDA #$00
    ! C7 U' R$ P8 y+ u- X
  134. STA $2000' B! a4 ^5 `: I. N" p
  135. INX( m; B$ W! g/ y
  136. INC $BA
    ) P$ U7 y" F% j3 x4 g
  137. INC $BC
    : E9 o5 N7 }8 e5 i2 ?
  138. CPX #$006 w* I0 y) i4 R6 M% a
  139. BNE L12 E$ l- J- @) E& f& p
  140. INC $BB
    . W. ?6 f. u, b* D, o- i; |# L7 n
  141. INC $BD
    ( W. r& L! W3 z0 c+ x
  142. JMP L1
    + w3 ^; \7 [5 }" v$ h- }. t

  143.   {* @+ N4 W- c. P+ R6 R
  144. PROADPLA:                ;出栈
    % ~( c$ t* l1 v
  145. PLA5 G0 e! K! Q& L3 K, _' W" @+ z
  146. STA $B80 C/ y; @3 D+ W3 h. h
  147. PLA
    ! j1 G" x" ^* ]* u1 W- t
  148. STA $B9
    5 V, z$ a# B4 o9 T/ X' c
  149. PLA
    $ k* ]( u- p2 k" _( c/ O' S2 n
  150. STA $BA3 p) {) N/ t% g& C5 o
  151. PLA
    1 B' [3 L7 f! U; T) F# P" ^
  152. STA $BB. X$ [9 O. Y/ W! l' M9 b
  153. PLA# r( Y  B2 y- i' ^: d
  154. STA $BC
    0 ~+ }0 H  K) c( E9 V/ B
  155. PLA9 h6 S& C8 ~5 l
  156. STA $BD) g7 c! [- ?' E+ ]
  157. CPRE:5 X' Z0 v. _8 p! H2 w
  158. RTS2 V: H2 C) s% a  h9 V" U

  159. 9 ^- N+ s- M% Q
  160. CLEANA:                ; PPU清空# z1 d* K! ^/ b4 ~' i  P
  161. LDA $BD
    0 \% R9 w  \% ]5 _
  162. PHA$ Q2 h8 s7 T5 k- f- @
  163. LDA $BC6 v$ M) [6 [- y  j
  164. PHA
    8 y' O$ X' `; [" ^* a
  165. LDA $BB
    # t2 r0 G- b/ |, T( _/ J
  166. PHA
    . \% w& U0 F+ n  |. R
  167. LDA $BA7 h( b' j. K5 f) u0 N4 T7 j/ D
  168. PHA2 M. n' X0 V! E
  169. LDA $B9
    1 x% k: @3 {4 e* x) H9 y% j- u
  170. PHA1 C; T) d2 j# ]! G- N: u' F$ `' Z3 t
  171. LDA $B8
    . X' Q5 f! P6 k# i
  172. PHA
    * W1 s2 \! G' A' C! O0 w6 L- f# g1 y
  173. LDA #$002 S7 C6 P& J8 s2 o) r# P
  174. STA $B8. B/ R! `$ x7 Y) X: l3 O, n# x
  175. STA $B9
    4 T# R4 F& y3 z4 ?/ b3 R9 g9 P
  176. STA $BA  k) X! Z! R0 V2 [
  177. STA $BB3 I9 ^' ^% x/ w* T$ ]  O) v5 i9 s
  178. STA $BC1 H  ]+ o; C( w# b6 ]
  179. STA $BD
    8 j) }9 |. ~. D+ }) W! e" X
  180. LDX #$00
    5 M2 K8 Y: h/ T" G- R
  181. LDY #$000 x( t7 l. P8 V4 }# K7 I1 F
  182. LDA #$00' o6 C% l. G' _/ x* E% [; l
  183. STA $BA
    + I1 ~' _) J! s" p, r
  184. LDA #$20
    . O: Q/ K6 |: h9 X% p. s8 _4 a/ V
  185. STA $BB
    0 ?5 l- W5 A# d0 M. z# B
  186. . }5 f8 s" J7 Q2 \* {; x8 N8 m
  187. CL1:
    6 l5 b1 ?$ ~8 Q
  188. LDA $BB
    ' r- b, ?. N2 q" o( M& c
  189. CMP #$304 c/ H2 i2 [% H0 G0 [2 g
  190. BNE CL2- F; ?. H8 h0 L+ x) D
  191. LDA $BA* a' }( p0 Z( W( Z' m+ n0 C) Q
  192. CMP #$00: l9 k4 t8 l% n+ P
  193. BEQ FREEWRIYE; O4 |* m! s$ k
  194. : {; o6 Q4 B3 y, r
  195. CL2:
    % m/ e7 m. t: r4 B2 r3 j" z
  196. LDA $BB( o. |* R3 |0 L& d6 o4 `, g  U
  197. STA $2006+ O, r" ?0 H- M9 ]
  198. LDA $BA
    + b0 f9 ?$ z: [+ B( ]2 f
  199. STA $2006. G: p' X' k) R. ~6 E& ?

  200. . ^( O% q# R  D) |, D0 [  c* A
  201. CL3:
    : _9 j" m; S* M, H% Y4 P. e
  202. LDA #$00
    , m% |7 T/ E0 ?4 E: B: @( v
  203. STA $20071 N( D/ y, _* M: e
  204. . \3 B& Z& g! Y" e4 Y$ i1 a
  205. CL4:
    0 l6 v+ \" D0 }. T" R0 T
  206. LDA #$00
    2 R4 l/ E3 ~4 m3 W  h  C" Y
  207. STA $2000
    1 k; b4 x9 m4 i6 _
  208. INX
    " A4 i7 m6 H7 O0 D
  209. INC $BA; u- J3 E" Z9 n* |% g8 o
  210. CPX #$00
    8 f* B, Y! I8 C0 U8 ?+ h
  211. BNE CL1
    : r% z& w: B+ ]1 f- N+ J+ k
  212. INC $BB
    . B4 ?% G" B5 F4 m  c
  213. JMP CL1 $ o% v% j6 u/ x1 V' O- S" g

  214. ( P; V' A" j6 U! m) e

  215. 7 {0 u0 t2 d0 ?5 T; V
  216. FREEWRIYE:
    ( g2 R7 ^# s% s) T
  217. JSR FREE
    & a( R* a9 [% |) x
  218. ) Z& e9 g4 c& O6 P
  219. $ @/ |7 P! O8 T; Q- a" V

  220. 1 v2 T% N" v# o& i8 v! C
  221. 9 E3 \3 W# E9 n- o1 m8 \. b- G7 Q

  222. 6 S* @9 j5 j* y. r5 @
  223. CLEANF:                ; 恢复现场
    1 S) `8 }7 B, m1 p+ i
  224. LDA #$08
    1 Y* ?) A$ k* Q, k' M+ I4 E
  225. STA $FE" q/ m5 d7 t* m( F6 D* d( |1 `4 t8 ]' y
  226. LDA #$00
    $ i3 ?2 Y: O$ Y# h- p& j
  227. STA $07F6
    8 q& Q: `; ]: q! E: s( |% Z$ \
  228. LDA #$24
    - l0 S' M; w; }4 I4 g+ \$ O/ K+ L
  229. STA $7FC0" \9 [" @: U$ @9 P8 f7 \* |
  230. PLA- P* t; v  {& G9 W
  231. STA $B88 F, F3 A& h' C* }% b. l
  232. PLA7 G; W) Q0 E& S% q
  233. STA $B9- _. C' _: R- I6 U3 @  x, W! M
  234. PLA
    ) l2 h3 H. Y& N8 g/ q  G, ~+ _
  235. STA $BA
    4 W' p* e3 i( D  z; A
  236. PLA! \, w. J% p0 C& Z. g* @- S: Y
  237. STA $BB& W4 V5 i* ?5 |" u
  238. PLA
    ' _3 M. F1 g6 i& O+ L0 s
  239. STA $BC! l" q% q) x4 R& n1 z. i" b8 V
  240. PLA7 f! k' r' l* ?- v! f8 _
  241. STA $BD
    * j& d8 w+ j4 \6 h8 U3 ?
  242. CLRF:1 v8 c8 ?1 k# K& U  ?8 e
  243. RTS5 A. H+ a5 P7 G6 A- p% N

  244. ; g# ]( A0 ~5 F" A
  245. W_DATA:7 S" e8 g) ~) f8 u2 A1 b# Y7 h
  246. .BYTE $00,$01,$02,$03,$046 L1 A1 O/ [2 ~2 E- {  F3 s  K
  247.   
    . }4 d  _& {' I  U& V7 t7 g( Y  G
  248. W_PPU:. B5 m# @  `/ q4 ~% v+ @
  249. .BYTE $98,$97,$90,$9D,$96
    + c, P8 U4 x4 o: o

  250. , Y" C2 V6 I7 v' H+ I
  251. P1_STRING:1 N* F$ k; S* ?0 v4 e3 _
  252. .BYTE $9A,$82,$00                ;"P1"
    ' r/ H, ?: N; T* f; L8 d; O, r

  253. - i4 s! ^! W. Y
  254. P2_STRING:
    - g4 E3 L4 ?) T
  255. .BYTE $9A,$83,$00                ;"P2"
    2 K' o3 m9 G/ j: p2 q. F# s2 ]
  256. ! P6 _' ], O. h# H
  257. WEAPON_STRING:) `9 ?0 o( c! L) C5 P
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    1 D; V6 K1 W. z- X3 ~/ Z* j+ ~: m

  259. 1 a" p: v6 U: Q! h
  260. RELIFE_STRING:
    % y$ S. i: D5 h1 [) `1 a& z) O1 K* y
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    % m4 k+ r! n; N3 `. f5 Q
  262. ( L) p( ~0 q5 U. `) k
  263. P1_PPU:
    - y( V* w# H6 m! U
  264. LDX #$00
    , C: H& i' g9 S7 E0 ^5 _& T+ b/ u
  265. 1 V$ g1 j. |: A. s1 U' _7 w: \3 [
  266. P1_PPUW:9 f0 Y* M* v0 X
  267. JSR PPUADDR_PROCESS
    % f- f2 Z4 G5 \2 |, C  W+ `& F* b
  268. LDA P1_STRING,X: Z; T; u1 }& A, f/ E; a$ d' d
  269. STA $2007& n( n" s* D# B- _
  270. INX
    % ~8 D+ G; a- g
  271. INC $BA
    + X' _: E/ u3 f: }  f
  272. CPX #$03
    ; O* e8 E4 d; s* f7 |( E( N+ t/ z: J* ~
  273. BCC P1_PPUW( k0 F3 q9 }/ h
  274. LDX #$00* _/ u3 G& r$ i7 p: _% @( L% }6 C
  275. RTS" c& I3 N. c- @9 S$ g5 A
  276. # K4 _- f7 w" u$ |! R
  277. P2_PPU:
    ' \2 ^* r4 x, P  Z9 w6 M4 S$ t6 P
  278. LDX #$002 X6 b( E/ N# m7 C6 X6 ~0 J
  279. 1 o; g9 u# t1 T% B( `) P
  280. P2_PPUW:
    * ~( D+ L& I. F+ M! D2 t/ ~7 |
  281. JSR PPUADDR_PROCESS
    3 a& A, O/ M3 U( {' B" J
  282. LDA P2_STRING,X
    2 A; o6 F8 k2 p, F7 b( Z
  283. STA $2007! L  i: ^+ ]% Z$ d; _
  284. INX4 ?; }7 I3 q; B! I' U
  285. INC $BA
    1 R) Y( x, u8 Z5 ~
  286. CPX #$03; z& T. |6 C4 U# l7 C1 c
  287. BCC P2_PPUW% L7 m1 R/ {- R: Y( K1 I
  288. LDX #$00
    6 }( a/ j4 ?' q! s' G) r  R; l. [
  289. RTS$ ~9 A- c  ^0 R( Z' l, U0 x

  290. 2 e( Q8 G' a, [

  291.   W* P# j5 M  w  I! i
  292. LDA $BB8 s: C' g( _6 W
  293. STA $20062 }) |2 u' S* t0 s$ K
  294. LDA $BA
    3 \  l! z. l% d& T+ I- g1 z
  295. STA $2006
    + d4 [. o$ u3 T
  296. RTS* x/ R8 W+ S, z2 Y
  297. % S% R. y: o. U" G

  298. $ A4 Z5 G% H% y2 U% P6 w, Y2 f9 U
  299. 0 ~1 y+ K: |0 b5 z) @
  300. PLAYERLIFE:6 N: s# p- [2 `" p9 \
  301. JSR LIFETODEC
    ' R$ {2 |" [1 z+ K
  302. LIFEPPU1:
    / E& z: i( ^4 |: p( e- B
  303. LDX #$00' s- f" t( Y8 p: z- T
  304. LIFEPPU1RE:
    1 A0 J8 I" @- Q$ h
  305. JSR PPUADDR_PROCESS
    5 M) u/ D  V) Z7 k: w
  306. LDA RELIFE_STRING,X6 h1 r. k: D3 S& G: G
  307. STA $2007
    & N; Y( I) f3 K
  308. INX  y, ^; n% J2 n& B+ q" l; Y
  309. INC $BA$ e. ~+ w1 n) b: B8 Y/ I8 s9 B9 ^, h1 B
  310. CPX #$07" V! y+ Q6 X( p
  311. BCC LIFEPPU1RE# R) N( p* z7 I8 j% {* O/ l% r  D

  312. 1 L' C1 Y) z' V8 T5 o% P  c7 h
  313. LIFEDEC:                ;生命显示写入
    % F: B+ ?- j% Z2 g7 V; u& ]
  314. LDX #$00$ Z$ m! ~9 i8 ]$ V$ ^0 C
  315. LIFEDECRE:3 d6 F6 l; \* v6 X# z* s: ~
  316. LDA $7A03,X
    6 ~& e- r3 `0 L  l+ r. Q
  317. CLC
    5 m; |# {& C6 u
  318. ADC #$81
    + D6 [9 E: C' r
  319. STA $2007
    5 w2 w! j5 O: \1 W( P- E
  320. INX4 |7 a& R( `( `( t
  321. INC $BA
    ( H& l" ]6 t+ O- [
  322. CPX #$03
    7 D6 D# ]+ F( ~& h& M
  323. BCC LIFEDECRE
    3 P4 t6 G8 X, e3 ~2 ^+ U
  324. LDX #$00
    % V# w% T( N' u( b% R7 b
  325. RTS* ^: {- V. P) s. ]! I
  326. ; ~& [) C9 B6 D* N, C  W
  327. LIFETODEC:                ;十进制转换
    + Y! i0 @7 K% t/ t
  328. LIFEL1:        ;initialise
    " ^: _, {' U6 T- u
  329. STA $7A00        ;$7A00=F3
    : A" h6 Q" ~4 i, ]. f* U
  330. LDA #$00
    1 W2 c: y$ R( r" C1 F
  331. STA $7A03        ;$7A03=00& e  ]2 u* Q5 u. O% R% ~
  332. STA $7A04        ;$7A04=00
    5 [- s9 a, S$ Y) o1 f3 l7 v
  333. STA $7A05        ;$7A05=00; J) J, \7 z, n! }, K+ v
  334. LIFEL2:        ;copy data $7A00 to 60012 ~: V# m4 E/ J; r  c2 c
  335. LDA $7A00
    % R( S1 o, |. p7 A+ {
  336. STA $7A012 h% J8 X$ B% t) ^' P

  337. % K/ _% {+ M3 G
  338. LIFEL3:         ;hundred& U) J, Q9 d, L0 Y$ a$ ~- C
  339. LDA $7A01- e2 I! M! l( f
  340. CMP #$64# a  o6 p5 h* G" @- a
  341. BCC LIFEL6                ;$7A01<100 goto L6
    2 \2 \& k: b& G; T
  342. LIFEL4:  e1 W' x0 k! Y7 h5 t' I% J
  343. LDA $7A01! A' m/ Y1 B/ `8 ^/ Q- ~
  344. SEC5 Q% _! ~+ W; D0 y' k
  345. SBC #$64        ;$7A01=$7A01-100
    8 p" W/ `) |0 S2 w
  346. STA $7A014 Z, `" C) H: ~% k* y) S1 ]
  347. INC $7A03        ;hundred++' f2 P( v8 O2 h) J  p
  348. LIFEL5:
    $ N7 x' i( D8 y# M% H
  349. LDA $7A01
    8 h* z+ s( K4 }  E, {- L4 y
  350. CMP #$642 M" D' Z9 g7 t$ L' e. U, D  b) |
  351. BCS LIFEL4                ;$7A01>100 goto L4# X3 H" r' w7 }9 A6 w( x
  352. 7 G7 C* Y: `% o' T3 o% A! u
  353. LIFEL6:        ;decade
    4 ~& H' s6 U( r5 |" ]& T
  354. LDA $7A01
    , `( Z  g3 W, G) V8 h0 j
  355. CMP #$0A3 g: X4 w* h- N+ g+ }
  356. BCC LIFEL9                ;$7A01<10 goto L9
    ) G1 Z/ b6 a7 R1 L
  357. LIFEL7:       
    $ Y; f: f# ~- a% q! @
  358. LDA $7A01
    + k: X% |( f; O% O- Y
  359. SEC* e( H$ b( u) z4 `3 }2 d& T( i
  360. SBC #$0A+ }, w6 o7 p# |+ ]* R) g2 g
  361. STA $7A01        ;$7A01=$7A01-10
    0 Y# @: t& M& |% Z
  362. INC $7A04        ;decade++
    4 o; t7 \! S+ a# v, [) x, q
  363. LIFEL8:
    * i1 `2 Y" |8 z4 x/ h1 X
  364. LDA $7A01
    4 }7 M8 P1 i' h7 }7 Q2 i
  365. CMP #$0A6 P$ z* v- P0 U' t* W+ `8 G
  366. BCS LIFEL7                ;$7A01>10 goto L7
    5 V  X5 \& k7 ^; ?7 ]! n0 p# i4 m3 D
  367. ;unit
    ( p0 R2 s, p( k  a/ U1 D3 c+ P) {
  368. LIFEL9:
    0 O9 ~2 U$ x1 B7 `3 x/ A" e
  369. LDA $7A01        ;$7A05=$7A01
    3 m( T& Q/ Y1 J9 u
  370. STA $7A05        ;unit* T0 V4 b. N$ a- r) k/ e
  371. RTS        ;return
    + e5 p: P1 p+ r) G8 g
  372. , V  ^2 ?) ~6 W. a6 q; b

  373. ! k' w, H$ r# C8 \9 y* y) y! b

  374. $ p  H. n; B' h% N2 d
  375. WEA:                ;武器ppu写入' Q* B, P8 R* _9 F5 i) T6 p
  376. LDX #$00
    % w2 H  f4 S- t# u0 X# }+ `+ Y& ^
  377. WEARE:
    # A/ @7 y7 }. ]$ h: J
  378. JSR PPUADDR_PROCESS
    . k. p1 U/ g2 S  z5 e. Z
  379. LDA WEAPON_STRING,X
    # x* ^- z% }* b) O! P6 v" M
  380. STA $20070 D5 w+ E; y# N5 h9 }6 b$ m. A
  381. LDA #$000 f" V9 q! e! H$ G( r
  382. STA $2000
    * S! |0 @' \; O8 `) n( B
  383. INX/ V. r5 {. u& n8 U( n+ s
  384. INC $BA4 L+ t$ _5 r# n
  385. CPX #$07
    ( G- P% t" r! p$ V, L
  386. BCC WEARE9 H& U0 \) Q) d. g' b' p& I( K
  387. 7 Y) u. V) P* b9 g% T" _6 u
  388. READ_WEA:  @) \; A9 h7 r6 T* s
  389. LDA $B9
    8 X4 {  L# P4 g) Z  y3 u% a6 O
  390. AND #$10: Q' F& W/ {7 v  r! h+ Q( y( d% D: Y! l
  391. BEQ NWEA. Q  G- m; f# u$ U: Q
  392. SWEA:
    ; S1 w# O! a5 ~% g
  393. * K( G; e8 U# i* |- H
  394. LDA #$9D% h: X) S9 j5 ^1 N% M
  395. STA $2007
    ! m( o5 O2 |3 x+ F" N0 Z2 j* e. n
  396. LDA #$007 e; ]# K, ?1 z6 B# B
  397. STA $2000
    + H4 M- Z! l3 {% F$ j9 `. R
  398. INC $BA7 F) a/ Z/ U' |
  399. LDX #$004 q  V( T* Y( T6 }* ^# u
  400. JMP WEAREAD$ X' H" m% m. Z$ z( d! I
  401. NWEA:
    : A8 A1 K) C9 S8 b; k; S
  402. . X* g1 v) M$ U
  403. LDA #$8D
    / q: A6 `& y$ A, J9 v# ]
  404. STA $2007
    ) M+ S$ }, h4 {$ s8 p$ I% H( C
  405. LDA #$00
      k0 I& j5 @9 ?; @- P
  406. STA $2000
    % w* b5 C# }6 {" a: W( E3 R0 ]3 d: c
  407. INC $BA; h7 y5 \$ n% n* L: F* V4 J
  408. LDX #$00# h( I$ o1 Z  l2 N1 w
  409. WEAREAD:5 {9 Q% e) R0 Y8 w7 T, \7 U: Z: y, p
  410. LDA $B9
    7 [- h9 [) k9 ^  S
  411. AND #$EF
    ) Z1 x, X. F6 c' M9 J4 p' d( a6 B
  412. CMP W_DATA,X
    1 L4 Y# T) o# t5 h
  413. BNE WEACMP
    " ]0 f# l; l4 A5 W2 [
  414. 7 Q8 _7 u  o; B9 Z( ?" ^# H
  415. LDA W_PPU,X
    ! _. e1 g: d& S! y' Q5 `
  416. STA $20076 h4 [6 B! R# B7 u9 y3 \
  417. LDA #$00, s3 G& b' `. K" C. n. G9 n; Y8 O
  418. STA $2000
      }' p2 [: u4 Q+ z3 X8 U9 ?
  419. & e, N" W/ }2 q, N8 a
  420. WEACMP:  b+ {+ y, X0 N6 M+ [" V; j9 \  a
  421. INX
    ; i; ^8 C' Z, ?- t- d4 v5 y
  422. CPX #$05) ]+ {% q( q. i) J3 Z
  423. BCC WEAREAD1 A; z0 g8 v7 t& F, ?3 q$ M, }
  424. RTS
    ) ^* E. U; j4 Y3 X2 H0 N& h' j

  425. , I, s, ^" o6 q9 {/ y9 D. |

  426.   ~, J. G5 N2 \" g( y3 A
  427. PPUWRITE:* m1 T' q( l9 a8 M2 y
  428. PLA
    9 r) i9 A& T+ U6 U" d/ a! U
  429. TAY
    - Z& l! l* l$ L% H  K
  430. PLA
    $ t0 Y; A- t9 b
  431. TAX; W: q) x' U$ r/ u, D
  432. PLA
    ' g# t6 q; }3 w  n/ m
  433. LDA $25& d" g$ I6 i6 k$ d2 J
  434. CMP #$00
    + T- K' x8 t# A
  435. BEQ WP1
    . L' H* P, r0 N& \( R' l
  436. LDA $25* A. }, {! V* r3 u7 r  K- f% }, G7 Z
  437. CMP #$01
    7 A: L7 p, G6 a3 ]0 t1 H3 B) [- D
  438. BNE WRE* }, l8 ?5 k( r! R+ u7 d
  439. LDA $F5,X9 m* {$ b7 G; G
  440. AND #$EF% ?; e5 K, R+ r8 l
  441. BEQ WRE
    1 z5 V9 ?7 Z& w8 B8 n
  442. LDA #$00
    0 X" ], d) }5 r! D+ L
  443. STA $7FA0) O/ Y" m1 F  n4 J6 K

  444. : @4 o7 V: c9 i* l2 D
  445. WRE:, m1 O) O( \9 v  E4 l4 f- t
  446. JMP $A0006 S3 G2 O. C0 r

  447. ' o& ~& `7 d/ D2 k& C
  448. WP1:' p, i  ]0 z  s6 {) r
  449. LDA $7FFF8 I) ?4 J- ^# ]6 F
  450. CMP #$FF9 h# \0 m# m3 p* B0 v
  451. BNE WRE
    # c9 l/ b) i' u4 [+ V& V1 N/ K
  452. LDA #$00
    6 P" J) Q% T% [1 |8 n5 S
  453. STA $2001
    ; h& a8 T2 P6 ~% V- n
  454. LDA $BD) F3 a2 M' q) p1 A
  455. PHA) p; a( C: ?0 t
  456. LDA $BC3 w' ^, H' t( R+ G5 B# q% u/ D$ ?
  457. PHA
    * M+ S1 v# M0 N- I/ F$ j  N
  458. LDA $BB
    ! q$ M6 L  W0 a. k
  459. PHA
    % n* A* o8 ]2 `; X
  460. LDA $BA3 [2 g9 v4 S, |% v% d+ V
  461. PHA
    " H. y+ A. {8 |  I
  462. LDA $B9
    : x5 \5 U0 X" r0 [& r7 \- d2 d
  463. PHA
    9 [- c6 ^9 [8 U) q2 Z& t9 m/ ?) g
  464. LDA $B8- g0 [, w5 R  v" ^
  465. PHA. d6 d, [% F) ]1 `; r: L$ {
  466. LDA #$00- c( _( {; Z: s9 f
  467. STA $B8  m2 Z: `" p7 S& k8 I6 }% u) D) G
  468. STA $B9
    8 v, n. ]* s( Q
  469. STA $BA- u8 s# A7 K$ r2 Y5 w
  470. STA $BB
    ( i; d) [' r- @& o% T
  471. STA $BC
    ; J9 `2 v: H" E8 B# o4 S
  472. STA $BD( c# F) e- e& Y. @( ?! O
  473. LDA #$00; `2 ]4 B- S8 Y: A' j# K- E
  474. STA $7FFF& t% Z# o% \* h
  475. LDA $30+ X% j: J: ^3 q: \6 \* q
  476. CMP #$02
    1 j- h+ m1 o% N  m# Q
  477. BNE UNPROCPL6 Q/ V/ s" @' ^9 q0 y- v
  478. LDA $7EFC
    2 v5 v' n4 q0 h, K6 P* y8 K
  479. STA $FC
    * |2 h" F" b8 p0 A
  480. LDA #$00
    " P4 Q( j9 _/ C
  481. STA $A4
    8 O9 |) m0 g: H  X
  482. STA $A5
    ) }7 S* C+ g  C. O' L
  483. UNPROCPL:
    7 {& I+ f% f; L. \
  484. LDA $7EFD8 C) C& v  H4 B' V$ ~) e% P0 Y2 N* V
  485. STA $FD7 b9 a/ e6 Z& Y7 |
  486. LDA $7EFF- H0 z- _% ]2 ]7 V  s
  487. STA $FF
    ) {# q  x8 A4 R9 n3 f: \4 N- H; D' B. x

  488. # L9 F- l& ]1 ~6 j
  489. WL0:
    ' U$ Q# Q& G  ~' t. C, f3 v
  490. LDX #$00
    % ~. ?% b7 T0 G4 b
  491. LDY #$00
    " c6 _/ H2 C0 e
  492. LDA #$00* `' c- B/ S  x  p+ G3 S
  493. STA $BA
    0 s' \! k( e3 s
  494. LDA #$20
    * L( [; R5 m5 e+ I
  495. STA $BB. X2 K% `4 k" Y% g$ X/ o* j) i
  496. LDA #$00
    ' v  [. v5 f+ X. O: h6 h
  497. STA $BC
    , a8 {' [% l2 T% Z
  498. LDA #$60% O4 u+ K9 ]& F1 D7 F4 K, {
  499. STA $BD
    # x1 c/ _! Z  p* I, b2 m
  500. & {7 _3 g) \; r! j' Y' z! `6 \7 M" E
  501. WL1:
    8 Y4 D* v; m/ W- j; A2 }% {
  502. LDA $BD
      x  @: R3 B1 p  r
  503. CMP #$70
    4 k4 Y$ v) ^* r4 ^& H8 Z) r
  504. BNE WL2
    4 W9 Q4 p( U& @2 y3 o
  505. LDA $BC! C. p# u  j' B, {6 @
  506. CMP #$00$ k5 t7 o7 G, M$ k. N6 [0 l
  507. BEQ WLR/ i: e; x7 `& d2 u

  508. ! i" I% x: m! v/ S! @( w5 j
  509. WL2:: s$ E  N  m8 B
  510. LDA $BD* B9 U: z0 ]' ^0 Z. J
  511. STA $2006
    * n. o+ f5 v; Q+ @' f8 g8 R3 ^- |6 |
  512. LDA $BC
    , {2 F7 D' n, c. Q( l
  513. STA $2006
    ; p2 k& a) N3 ^5 E

  514. # M2 f; N# ^3 x2 {5 C5 r
  515. WL3:% l9 L- l8 C8 V/ ]1 M4 N- C
  516. LDA ($BC),Y4 X. m0 y: a0 h: W) z6 c- \" G
  517. STA $2007" x3 X4 c4 v: T) N$ B; q# m
  518. + _$ }, U) P, J2 N5 u4 V! [! f
  519. WL4:
    # X: S7 n+ g: @# i
  520. LDA #$00
    0 [# P. A* I) h: s0 j
  521. STA $2000
    4 Q/ ~2 R! T* E
  522. INX6 e/ T. Y6 C& W! C1 j
  523. INC $BA4 j# h5 v4 b, ~; D5 x
  524. INC $BC
      V6 i0 m0 L% ?: o* z. u, ]% N
  525. CPX #$00& v+ s. Y+ @1 a0 V
  526. BNE WL1
    # {: ~& Z: z6 y  ?( a+ S
  527. INC $BB9 v# C" A* g* `, s
  528. INC $BD  r$ O  p1 p# ~5 t. u
  529. JMP WL1
    6 `2 @& i0 i6 |! K; H& w

  530. " V6 W0 S# p  N; t; c$ P/ x
  531. WLR:6 p. l& o8 ^% A$ _- x  u) D
  532. LDA $7FFE" K( `! h6 O9 q9 V
  533. STA $07F6
    5 k& w) ]" f8 t, U2 v
  534. LDA $7FFD
    . ~/ d+ I' c6 N7 \9 q1 O/ v
  535. STA $00FE
      k7 k" z% h. z
  536. LDA $7FC1: L8 P( F* D2 g0 K% {
  537. STA $07C1
    - s0 Y: R" F4 K9 Q" m
  538. LDA #$3F4 }+ C( _3 `( y  W6 u3 L
  539. STA $20064 l# m) v% m4 X+ w( |! k
  540. LDA #$01
    6 H, h, M, U/ T/ C! U* f+ M
  541. STA $2006
    ' R# ^  i( E  v
  542. LDA $07C12 b' q* Y) r( [  C  L
  543. STA $2007
    7 c  k. P3 ]' k/ H9 o$ }+ f% j4 A: o
  544. LDA #$009 _0 v1 w4 I; O& R
  545. STA $2000; O. x+ _+ R# A4 x+ G
  546. PLA% L& n! ?, G; w3 t: z1 x
  547. STA $B81 j! J1 c% c; d9 ~( p2 L
  548. PLA0 b+ \) {/ J0 P+ k9 q2 K7 {$ S/ c
  549. STA $B9' e+ R( y; K( p
  550. PLA
    1 [, O9 e7 O; p- z5 Q  n$ O
  551. STA $BA/ a' e9 v+ g* Q
  552. PLA9 d! G" ~  t' W: H' `- N
  553. STA $BB) m9 S; y! d" h8 F
  554. PLA
    6 s5 \: }" ?  X0 y* D9 Z
  555. STA $BC
    " U6 a6 O- e" j) `/ q4 p
  556. PLA( m, o0 l" a9 B7 f, N
  557. STA $BD
    1 }5 A1 H% D* t% s- ?2 {- C
  558. JMP $A000/ h4 j, y6 s* |/ c1 t" V
  559. 0 A6 }2 d. {2 k6 _- r, N
  560. FREE:                ; 暂存器保护+ K' I4 A! d5 w5 I0 {
  561. LDA $BD6 d* v0 l" R5 [: t
  562. PHA
    4 M5 O( k  y- G8 [. O; {: l
  563. LDA $BC
    ( i, _' ?2 R% B0 @
  564. PHA+ x  K+ |3 B' }* A/ O" u# M3 k
  565. LDA $BB
    4 ?) _/ G+ u; S" Z, t. t: t7 R3 _
  566. PHA% p2 _" f! p/ O0 q) g1 |7 i' K
  567. LDA $BA% c& _3 {1 {! O# C; b* x
  568. PHA
    4 ^: ^* F4 G# f: u! ?8 p+ _: U
  569. LDA $B9- M3 B& ~+ P/ C" i7 k1 H
  570. PHA8 V' ]% A: s/ {. T8 I  ^7 B- c- M2 b
  571. LDA $B85 ]0 n/ l" ^. O" `( b
  572. PHA* \4 G0 q; S) @1 j& z" E2 I
  573. LDA #$008 V$ o$ H' q3 ?( [4 w1 ]
  574. STA $B8) y0 B1 o8 d; s# E) Y' n
  575. STA $B9! j: L9 \& M2 `( G0 z
  576. STA $BA6 g5 K6 H0 c% q; C2 K- S9 e* L
  577. STA $BB. F7 D# {3 B( @
  578. STA $BC8 {! l8 V5 f; n/ B) `. w4 p
  579. STA $BD
    ) |' }2 o4 Y/ F. c; k: M6 e

  580. ' n( j" I8 V' \. u7 S/ r5 ?: Q( Y6 m
  581. WEAWRITE:                ;武器ppu写入/ _8 [7 ?! E/ m; o( H. b" D
  582. LDX #$00& J; h( w+ E2 {7 a8 x( q; P% M7 p8 d
  583. LDA $AA5 _7 O& b8 d$ C% {+ l. A
  584. STA $B9# V, r3 l' l$ O0 e$ {
  585. WEAINI:                ;地值初始化
    3 B8 M3 D, m% D$ |" k
  586. LDA #$A48 X7 k3 n, V' e8 a+ c  t, x( t
  587. STA $BA' x; g4 P' v* ~( }9 J. S
  588. LDA #$20
    # f' w, p/ c5 \& _6 \, M" ?" p" h
  589. STA $BB
    - r* @# v- h2 ~
  590. ; s' r) H( N7 E: x

  591. ! I+ a: c4 H. ]9 h8 X. }  K7 M
  592. JSR WEA% l% C3 M1 X& C/ S$ O, D
  593. LDX #$00                ;武器ppu写入4 O: L7 M' d* ~* O' H
  594. LDA $AB& u# V) U* d$ I" b* d
  595. STA $B9
    . h6 F. E, X7 O1 X2 u: ~( F: X/ k2 J
  596. LDA #$B3* D8 c- `* Y3 i0 Z+ M3 `0 h
  597. STA $BA! [' {1 T9 [# Q' `2 L
  598. LDA #$20* u: T4 S# b2 R+ ]+ S! @5 ~
  599. STA $BB
    % x( v+ a8 t5 x4 Q6 r6 c5 Y# m
  600. 4 p/ j$ i* E5 \( |% a

  601. , B# t6 \! i9 j; `9 c
  602. JSR WEA0 w  H, I% U% s; T

  603. 7 ?& N7 N' m0 @0 q& |
  604. LDX #$00' s* y8 A6 `! R1 k( ^" o4 }
  605. LDA #$E46 Z0 |) a& ?" o+ r8 S! X# J
  606. STA $BA. L; `2 p' s% D5 d
  607. LDA #$20/ N  C( A- z- j  C
  608. STA $BB
    9 N8 Q7 K! _4 i) T7 U5 b3 @

  609. ' K  r; Y$ ]3 y6 f4 W+ f

  610. 2 m: |1 r$ r, h. @" b! |; x
  611. LDA $323 W8 d) p- i5 ?. t- c
  612. JSR PLAYERLIFE
    9 y3 ^& W$ _0 f+ D. W/ \6 @& A! K
  613. , p0 B; C7 Q+ O( B& K# T
  614. LDX #$00, }' l' z' z6 i& B
  615. LDA #$F3
    & \* J4 c& T" m. [9 Q" E- a& P  s8 I
  616. STA $BA
    $ G+ u; C! E& t- ]
  617. LDA #$20
    " |  L1 s* v6 z" x! |
  618. STA $BB( G* j8 `9 g+ s" k$ X

  619. 1 V$ z, j0 Z  a' n% c# W

  620. ; x6 T% J0 w" v- L1 x) S
  621. LDA $33: A8 m, ^/ @+ b( ]! M/ M
  622. JSR PLAYERLIFE# }% C: P0 S; h  {

  623. 9 J- `% W4 {1 S6 d5 ~+ X: s
  624. ' t$ @9 k. y1 F+ u% u6 A
  625. JSR PLAYER_01_PPU7 f6 `) j1 o  O9 O# |% Z4 |
  626. JSR PLAYER_02_PPU
    - t* B. g; S" z4 @

  627.   I" [$ F# B2 g" r0 s5 v  n: H; O! g

  628. * A7 Y( W9 J: F. [- G
  629. JSR PAGE_PPU: c& v3 X# Y5 x, Y$ t' T/ |
  630. JSR PAGESELECT" W$ S! k- D5 P2 z' v+ x

  631. ; F0 G- N) h5 c" j4 ^

  632. 8 Y: Y( J4 @( k3 Q2 L! z

  633. 1 R* N/ E  ~$ L$ H& K9 F& |

  634. 5 z% x( V* p9 y- c0 c; |
  635. ( D6 z$ @$ b( m
  636. 0 `- H& p, p5 M" U. ]6 N
  637. " F. W( y; I' a& L
  638. ; p6 w- I8 q7 c

  639. 0 K2 F* |) q. ~! [5 h6 y

  640. 4 A0 v* t# h5 f+ j0 B8 ~- g8 X

  641. $ m4 C, Y% t: Y; o6 H% i- y

  642. ( D9 _3 o2 P* s8 w* ]8 k
  643. 7 g4 ~8 r8 j, D' n5 M) h( H
  644. PLAPRO:                ;恢复现场/ G0 @( x; T+ |" r8 b0 T5 A5 k. |8 ^
  645. PLA) P/ U) ^9 Y5 t$ g" m: ]
  646. STA $B8
    ; @* V4 u) G1 I* S( @2 [
  647. PLA
    " L, {* s3 N- o+ |2 j
  648. STA $B9. w: f+ Y5 k3 B
  649. PLA" S- D: E% @0 h! B6 a# G
  650. STA $BA
    ! y& o. f' P& d. Q# Q; S
  651. PLA
    ( i1 S& g8 K1 E8 P& H
  652. STA $BB
    3 T; l( r3 l# D
  653. PLA& b; R; ^3 c, {) I  e( H  y
  654. STA $BC
    0 g; B% n9 J5 j; O' Y; C( m' C
  655. PLA) [( Y5 @: M9 C. H$ j# ^
  656. STA $BD
    5 u1 @& N/ j3 G# x
  657. FREERTS:
      Y) P4 _+ R5 y. V1 L! H
  658. RTS3 N  [$ S5 {+ A' M  ^; x
  659.   [5 W9 G9 ]8 M: G3 w+ T! ^
  660. INVINC_STRING:                        ;invincible% Z2 l! \% q/ i5 o
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    9 }8 L1 _0 G; A& ~! f+ k, ?

  662. . h; V" o- X( n0 o
  663. INVINC_PPU:% C& Z: \) g: U# U0 |
  664. LDX #$00
    3 v2 E2 Q$ T: a. _; e: M1 O  c( P
  665. LDA #$62
    3 h' M5 u6 g& j
  666. STA $BA0 s' O& |$ Y* f3 I9 _1 G' D" g5 h
  667. LDA #$21- }# W" |, w; d  `& b# H8 ]
  668. STA $BB
    ' g( E' D5 d8 ~6 Y

  669. 4 N2 a2 Z  Q  c
  670. " H1 q( h: z& N7 y" E
  671. JSR UP_PPU& ^/ @5 K8 U7 ~) c; D6 L2 |
  672. JSR INVINC_WRITE
    # B% x' g1 s$ f+ `6 K
  673. LDX #$00
    0 b) X7 ], i/ P+ M9 E8 S
  674. LDA $07A0
    # h4 L: W+ {9 x8 ]! i
  675. AND #$01& u) X! E+ x' q4 s, F
  676. JSR ON_OFF_PPU
    ) \/ z0 N. ^5 k$ h+ X
  677. LDX #$00. v+ |" t; k' z! U# K
  678. LDA #$71" v' E2 X' ?3 v: f
  679. STA $BA" [: I1 Y9 T9 Y% Y3 \5 E' o4 @
  680. LDA #$21, B" `+ c& X) i2 T' H+ I
  681. STA $BB
    " y5 P! L* A* q! Y3 o

  682. 6 u4 H$ f: t' i4 W% y0 c8 `

  683. ' e4 h4 Z) K3 H5 B/ ~+ R
  684. JSR UP_PPU
    + A/ _' T+ z* n0 w) c1 L$ _8 z0 E; e- J
  685. JSR INVINC_WRITE
    ' r" {" Z! H# f3 ~7 g7 G% D) l4 p
  686. LDX #$007 z* A3 R3 w- g% O3 n9 i
  687. LDA $07A1- s  b" H, s( q2 `+ ~
  688. AND #$015 o6 [9 L! ~1 f7 B( l
  689. JSR ON_OFF_PPU2 N: Q! N- q' Z
  690. RTS
      B+ [1 f0 ^+ x0 Z& o" z- j3 S; o+ c
  691. : A! t& E3 J) ^- t$ V
  692. INVINC_WRITE:
    ) w5 P- N* V9 e8 W- J1 d$ P+ }- b2 n$ g
  693. LDX #$000 O# Z2 }: o7 T
  694. INWRITE:
    % U* @- b- T$ F" L/ X3 ?; _- L1 `
  695. JSR PPUADDR_PROCESS
    3 X& @' `1 t+ z
  696. LDA INVINC_STRING,X
    % v( i) D8 q) {
  697. STA $2007
    ( x( \) x; r. [9 N8 F9 b. S2 \
  698. LDA #$004 V4 D9 ^; t( ?# T
  699. STA $2000
    7 q5 ~! d6 e6 p
  700. INC $BA
    9 y2 [0 U. C( O6 [- r2 W/ M
  701. INX* G" |$ v# j1 m- a
  702. CPX #$07) k. K" J6 f0 G& b2 w
  703. BCC INWRITE* {+ V! q6 s, }3 C6 O
  704. RTS
    : x" Q# u. c+ t

  705. / k6 D" _- C0 _
  706. ON_STRING:
    # g" Q! l( c' t. U  \  f
  707. .BYTE $99,$98,$807 _7 V6 @  t2 Y2 G
  708. 3 ?1 g; C8 v4 H, U4 h$ f
  709. OFF_STRING:
    " J; `! c/ o- n$ ^2 [6 I
  710. .BYTE $99,$90,$90( `9 X( A9 b" L/ f# \5 E

  711. 6 n7 j% g; {6 ^; p5 t6 f( F
  712. ON_OFF_PPU:
    4 ^& A# p# C) g0 E7 _- e" o; l1 H
  713. BEQ OFFWR
    8 l0 a! }- i# O" z4 c
  714. ONWR:
    " |, o7 ~0 v/ w- i( n) v+ M+ v3 w
  715. JSR PPUADDR_PROCESS
    3 G* c, }$ J/ m; V3 h
  716. LDA ON_STRING,X
    ! h0 o+ ^# @0 }# K$ ^! C# g
  717. STA $2007, r$ b6 _, Z4 Z8 ]
  718. INC $BA8 W- M+ F7 a1 y( G+ F1 z4 R4 \, L
  719. INX
    1 ?8 m5 \& K) O) z. D0 Q) y
  720. CPX #$03
    # [1 ]' A0 z3 J) k8 U+ H" z
  721. BCC ONWR0 O+ i! G1 T" f) y4 c: T1 y$ w
  722. RTS( Z2 Z9 n; `0 j: ^6 E. U2 m, \
  723. OFFWR:- M$ g, |7 P# O+ K+ t7 j) }1 q* C/ \
  724. JSR PPUADDR_PROCESS
    4 C8 B3 T2 v5 W
  725. LDA OFF_STRING,X
    ) N- F! K1 j% W/ O
  726. STA $2007
    1 m- a# u5 C- c  q
  727. INC $BA" M% d+ t" k9 \' f: G
  728. INX# J+ v4 D' o0 T, `( y3 V! U# j
  729. CPX #$03
    1 A1 Z3 p/ {/ y% m  ?; w8 _2 d
  730. BCC OFFWR
      ~: Q& l! W9 J9 d$ n4 N
  731. RTS
    7 h& O, Y* B  S, H& ~9 B
  732. 4 R/ G4 |. S9 q+ a
  733. LIFELC15_STRING:
    6 b- t$ U% c4 O9 x
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    - D, s$ e/ X8 W7 `1 I

  735. , L* \6 y7 ?& W' K6 x
  736. LIFELC15_WRITE:1 B6 j- y6 X9 w  K/ L4 R
  737. LDX #$00
    + a. B8 V$ _2 i- E( L6 x
  738. LIFELC15:! h+ j+ a  v% @: E
  739. JSR PPUADDR_PROCESS
    6 H, f5 Q. E2 J6 O/ U4 E2 |$ a
  740. LDA LIFELC15_STRING,X
    - G( T: ]2 _0 [5 m
  741. STA $2007" V0 z  c" G, x8 Q
  742. LDA #$00  K; T4 Z! |" |/ n; g4 i8 n
  743. STA $2000
    6 c. u6 k: q. i2 ~
  744. INC $BA5 V' M/ P: C' C0 V2 N
  745. INX5 i0 o, A" B) o% Z
  746. CPX #$07
    3 J8 B8 ~* S8 S9 L5 w: Y
  747. BCC LIFELC15
    ; J4 S0 ?6 \* V
  748. RTS* i/ R: ]8 w7 F
  749. 1 D/ X' H  A6 x' l4 u0 ]
  750. LIFELC15_PPU:% |5 r8 K$ d! L, F* U, H
  751. LDX #$00; e' k& @1 w* G1 ?& f8 h
  752. LDA #$A2
    - x& c( [9 D+ {! @) A5 H
  753. STA $BA
    ! v" Y7 T! F% y7 L3 o  x1 V) I
  754. LDA #$21/ J4 Y3 U6 W2 e2 G$ N1 i" a0 k; D& m& _
  755. STA $BB
    1 a4 _7 V% Z$ t9 r/ o' X
  756. JSR DN_PPU% u# T3 \9 ?9 u5 Y5 `
  757. JSR LIFELC15_WRITE
    3 I& F$ a% O1 n8 ?+ x- b
  758. LDX #$00) L7 k8 u% G( \: O5 K6 M
  759. LDA $07A0
    7 r2 y+ m- n  O
  760. AND #$02
    ! F; q3 u9 i- A7 l6 f
  761. JSR ON_OFF_PPU+ h. e0 f0 Q$ l* `; D% m! K
  762. LDX #$00/ s/ z6 r2 Q. k6 _
  763. LDA #$B1/ C3 n% G* o! g3 v% @; t9 b5 A
  764. STA $BA2 }+ D$ ~! [# X' r) h  V
  765. LDA #$21
    * K7 o! Q% D0 }4 h/ V9 ^, W/ P8 Q
  766. STA $BB# G3 ]2 P: L3 X+ W4 Y1 ]' x
  767. JSR DN_PPU2 y  I# c0 ]  o# H' e
  768. JSR LIFELC15_WRITE& i1 p+ Z: k/ k4 r& f" _5 |) q
  769. LDX #$00" W0 Z2 H$ @* W  u
  770. LDA $07A14 n7 u" L. v% O% K( n
  771. AND #$024 [4 M& X% I. v2 k0 t
  772. JSR ON_OFF_PPU! X$ E- {& b. h6 C
  773. RTS7 z7 q: u7 R, r0 t/ k
  774. / t) l0 p2 {( [2 Y* o
  775. DOUCON_STRING:
    + H% j# q. r7 ]* z, s+ ?7 u( B+ H
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    ! I! `. V8 I4 U% d

  777. 9 x. i# r5 s) t1 u% A* |( L
  778. DOUCON_WRITE:) Z$ K$ ?; c* s& R7 M5 M
  779. LDX #$00
    6 U( }+ ^" w. ?9 h" ~
  780. DOUCON:
    / S# T" e" b5 W, V$ d) \$ g$ F
  781. JSR PPUADDR_PROCESS* E* t! Q3 X, _" _
  782. LDA DOUCON_STRING,X! \* _9 ]& {7 r4 w' o+ a" N
  783. STA $2007) Y& z& _+ P; c: {% a
  784. LDA #$00
    8 \7 Z# p8 N$ n; q9 `1 `9 O# K
  785. STA $2000
    / D. n  m/ V; ]# o  ^3 l
  786. INC $BA
    ' a- I, r! R' O  v. P0 h! P7 |
  787. INX+ ?8 K5 ]* ^4 s5 }$ N  r% B2 t9 n
  788. CPX #$07
    / t6 W' W. H2 E& g! j; n! A9 B5 b
  789. BCC DOUCON5 x% e! o5 V, M, E& |
  790. RTS2 n2 F/ g+ j3 v$ u" {. @
  791. " m4 z4 t: F8 u5 ]; t$ G
  792. DOUCON_PPU:8 A# @- r! Q* J& R+ X, |
  793. LDX #$00; L! s1 i  G* _. ]
  794. LDA #$E2
    : p- R* _0 x# z8 j) N
  795. STA $BA  a# m7 R' {) A8 J% I
  796. LDA #$21
    7 E! I" T& f* c1 p' ~
  797. STA $BB
    # A* [- h- l% r- r" U! v% d7 s
  798. JSR LF_PPU
    4 _' y. X& F4 x4 ]
  799. JSR DOUCON_WRITE# \1 i' x6 ^1 o9 f: V) Y" S: p
  800. LDX #$00; \' Z4 |2 g* a, A8 O+ Q9 E6 ]2 H
  801. LDA $07A0
    # j- ^9 w, Q( m1 o( Y
  802. AND #$04
    4 V! G, W/ ^3 a0 K& b" |  t
  803. JSR ON_OFF_PPU
    8 P/ j8 J1 }+ A: l
  804. LDX #$00
    * _6 }3 h3 v! n8 E, h/ y
  805. LDA #$F1
    * w: Y! w6 v1 D* O
  806. STA $BA
    ) G! |* V$ k. \/ w$ M
  807. LDA #$212 M$ `$ h8 y* |! D
  808. STA $BB
    " q$ E+ C- d' P
  809. JSR LF_PPU1 |  f* @  O5 [4 {$ r
  810. JSR DOUCON_WRITE! B! w3 W/ y. a# u, {4 @: g& _4 T
  811. LDX #$00
      Z9 g, B+ U. }' ^* X3 D& F
  812. LDA $07A1
    ; r7 R! v3 w, c7 }8 d- w- R
  813. AND #$046 [* D% Q7 d5 T8 Z" [
  814. JSR ON_OFF_PPU
    1 ?5 t# _* X5 n2 ^
  815. RTS" @+ f( K) ?( {

  816. 0 X# N; q/ y2 k* H( J/ A6 H
  817. LIFELOW_STRING:/ m! D$ N2 j# j7 E
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80$ Q9 N6 b( W; k7 e9 U5 p3 K
  819. . x; R0 F0 F$ s1 G
  820. LIFELOW_WRITE:, u6 Z$ m2 u" p  F- q; h+ G
  821. LDX #$00" W; Q: Q2 y! V. h( t5 `
  822. LIFELOW:1 ]* `' {7 j; E+ I( A& R( g2 g% Z
  823. JSR PPUADDR_PROCESS
    5 g. u6 ^& Z9 w3 ^7 f# ~' k
  824. LDA LIFELOW_STRING,X, v) h  q0 A9 S% P9 R9 Z
  825. STA $2007; Z+ H6 `" {$ k/ N0 R$ Q$ [, T% B' f
  826. LDA #$00
    + W% c! A, l  h. V# w" Q
  827. STA $2000
    % D) a9 v4 m- a
  828. INC $BA
    & H/ D- w9 |2 s9 |. K9 H% J9 p0 F2 i
  829. INX
    9 Z1 c% M+ ?1 N1 z/ `8 w( P
  830. CPX #$07
    $ Q) B/ F2 D3 x  P2 w3 X. G3 C
  831. BCC LIFELOW
    2 }+ q" t. S- l
  832. RTS
    + z- {" {6 t4 B! m
  833. 2 m2 d. C5 p* |
  834. LIFELOW_PPU:& M+ x  ~+ ^% `, V, E  {
  835. LDX #$00* h3 l/ x+ n6 i( l. ~' n% J
  836. LDA #$22& F$ D( }4 ^3 R- H
  837. STA $BA$ b* @- w2 q! R8 q" r* z4 j
  838. LDA #$22
    - ~# B$ G, D* R9 U# h. o; D1 p# w
  839. STA $BB* }1 M. v/ P( P5 S$ V6 J

  840. 1 R5 ^( L. \1 Z4 F
  841. $ k6 w8 T& u$ G6 m
  842. JSR RG_PPU
    " F: c+ j) A( G0 U
  843. JSR LIFELOW_WRITE* T6 ~2 x  C9 D! |$ T/ x
  844. LDX #$00
    1 s9 r4 l4 n- \
  845. LDA $07A09 K: i8 f( e: W2 c4 Y
  846. AND #$08; U! y& e) x, J6 r8 G! S$ q/ X- k
  847. JSR ON_OFF_PPU7 I* R  X3 ~( Z7 O. m/ G) K
  848. LDX #$00. q/ V- H  F3 G0 P  E
  849. LDA #$31$ m& D6 f) I4 j" G1 s6 U
  850. STA $BA
    9 ]7 h8 t2 @7 d
  851. LDA #$22
    0 _9 g" C8 S2 U! b$ d* q
  852. STA $BB7 Z+ k. i2 R6 ?, L3 `

  853.   Q! \( M1 c( T; Q
  854. 7 e, a! Z6 T* g! N+ t' F0 ^  ?. T
  855. JSR RG_PPU8 h. ~2 b3 q4 X9 g; t7 n6 [# g
  856. JSR LIFELOW_WRITE( Q/ }3 a: t- h( R5 e& E
  857. LDX #$00
    ) P! P" {- {0 c0 d& r7 b* F
  858. LDA $07A18 K- N! ^8 z9 Y$ g! H8 Q2 m" C* h
  859. AND #$082 }- @& b5 s" \8 u, T: m& x
  860. JSR ON_OFF_PPU
    $ c9 u: K5 ]3 r5 Z
  861. RTS9 i* e# e* i. \2 B; z

  862. . }$ G) E5 t/ ?6 v1 n
  863. KILLON_STRING:
    % D- E& U) m5 m$ g$ D# J4 L
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    5 a! E& X/ {7 O

  865. ! ]5 P1 N, p- k! l
  866. KILLON_WRITE:
    $ P0 q" _  k3 p: H* ]) S. L
  867. LDX #$00
    # V' i2 d' `, b2 V5 t# s
  868. KILLON:" C( f0 I! X" ?$ {. L8 m- u% |
  869. JSR PPUADDR_PROCESS; o' B3 M7 o8 R
  870. LDA KILLON_STRING,X4 r2 p4 w5 j. n% ]8 e
  871. STA $2007
    ) s/ O9 W! D: L4 V! h" n
  872. LDA #$00
    , y$ G9 K% N% u% r! e$ K1 C1 I
  873. STA $2000) ^7 D- Z7 a0 v1 Q7 W" b
  874. INC $BA% O3 U: h0 b+ X
  875. INX% K' }  \  F0 X# T
  876. CPX #$07
    + K: `& }( E5 F5 e$ D
  877. BCC KILLON
    6 ?2 @* c! h7 s. ?
  878. RTS
    : w' x5 W5 z; u
  879. " m1 U: K9 H5 u0 a- \/ w
  880. KILLON_PPU:
    2 l3 `; J$ P5 O7 A
  881. LDX #$00
    % u; C( d+ }# M$ ^9 G& v7 Y+ o  U
  882. LDA #$62
    : c  b6 Y9 J! Z9 O/ A5 d
  883. STA $BA! c* K: s+ m! T7 Z, i
  884. LDA #$22
    # V) d/ B$ `: J* B+ Y8 x" C$ l
  885. STA $BB
    1 Y* @5 P3 `/ f( B5 k% v
  886. & ~/ n( n3 }+ D
  887. - ^* A- Y( g9 t8 v
  888. JSR B_PPU2 j3 i4 q. d* L, f
  889. JSR KILLON_WRITE1 l$ S, e8 o: T, w3 O, ^$ V2 B  u
  890. LDX #$00
    5 c5 y4 S9 q+ M: b9 X: ^) T# z
  891. LDA $07A0
    3 W* m$ w2 Y9 |" v4 y5 k: M6 J
  892. AND #$10
    + i$ @& z& b, t2 {
  893. JSR ON_OFF_PPU6 a! {) D/ B4 ?' U* u4 L% c
  894. LDX #$00
    : k3 ?8 w$ M/ H+ S2 V6 F' T7 z
  895. LDA #$716 u# ?* |7 _2 D6 f
  896. STA $BA0 J& D; B* A: [8 a$ D" w$ g
  897. LDA #$22
    + _: T2 E. q6 V7 r1 F
  898. STA $BB
    ( V! R* x; M, ^7 Q' n; s' g
  899. & L4 O: J5 S. P/ q5 p% n
  900. 3 v2 m6 {9 g/ J
  901. JSR B_PPU& a  ]6 @2 C& C$ L. R3 ]9 H; O; ^
  902. JSR KILLON_WRITE
    6 L8 h4 U. O0 ^6 R1 {7 }
  903. LDX #$00: b2 Z9 S1 L2 n3 ]' z. o) W9 n
  904. LDA $07A1
    , G3 o; m% g3 `9 R" F! u! W
  905. AND #$10
    6 s( M! C9 I0 E: p  ]& o, _  ~7 C% b
  906. JSR ON_OFF_PPU
    . e/ z2 u7 @. L& C/ I! G
  907. RTS
    ) n3 i8 F& J& O( F
  908. : ?0 S" H% W. t; C% \
  909. SKYFLY_STRING:
    / X) A/ _, O1 ]+ p0 g5 m
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80$ ]: U; e2 h2 a7 D1 m. E

  911. # J+ M: H4 N* l6 c& D
  912. SKYFLY_WRITE:
    % K$ `) `- G4 \2 ^
  913. LDX #$00
    2 U  L# |  l# }- ]
  914. SKYFLY:7 Z' ~& G( A8 v% G
  915. JSR PPUADDR_PROCESS
    % m: D8 E7 `/ @
  916. LDA SKYFLY_STRING,X
    4 |! \' \2 Q9 J6 M# a, Q* m
  917. STA $2007+ M& o5 q: p, U1 q! u! s* Z# [" x
  918. LDA #$00' ]& A5 m) O5 P3 N/ i, ~
  919. STA $2000* K$ A3 e* M( r3 z& h1 C
  920. INC $BA
    2 f+ A7 h: l8 P. O9 _, e
  921. INX
    # h$ e' G+ c/ W# S5 f8 a. e) @
  922. CPX #$07& @$ r$ T8 _0 q) L0 U4 T. w9 A
  923. BCC SKYFLY0 X$ s- ]" W7 j* g* k4 q
  924. RTS  {; N; [9 [( r  a# }$ v
  925. 8 ?8 f- {7 p5 ]" B0 _' h# ~
  926. SKYFLY_PPU:6 v8 n0 ~7 O4 v8 g, h) [
  927. LDX #$00; c4 M$ d( q5 l
  928. LDA #$A2
    . L; ^0 E1 r0 N
  929. STA $BA: f7 ^6 B, }  h6 t
  930. LDA #$22
    6 p: p6 k3 W, q& A6 T
  931. STA $BB
    * X0 Y) H* N7 y- g9 j

  932. , e3 n3 w9 c$ I% N% T/ O- ]
  933. % Q# C7 h' x2 i% b  P' p) G+ m
  934. JSR A_PPU
    5 B5 }$ Z: ]; q# U; b
  935. JSR SKYFLY_WRITE
    . j. `! Z; Q4 E7 }4 J& {
  936. LDX #$00$ @4 h  c! ^& i! T- Q' Q
  937. LDA $07A0- i1 W( n3 y) W$ t' M0 S
  938. AND #$20
    : B( T  l9 C& [* Y/ }7 f# w
  939. JSR ON_OFF_PPU
    0 I) \+ F9 c# r* ~
  940. LDX #$00/ w+ P* k# i& a6 o5 ^! e! w
  941. LDA #$B1
    ; a9 I, {$ z: H* Z: N, |% S1 K
  942. STA $BA
    * R& f. G) ^, B3 Y
  943. LDA #$22
      b5 ?/ e7 Y4 o% k  m$ G2 u; u
  944. STA $BB+ X8 Q# Q9 t: T3 R$ e+ y& `1 [
  945. 6 D3 v0 J) G  P

  946. ) ^6 Q# A: `' C- a; ]: A
  947. JSR A_PPU
    3 X1 u0 }6 C$ m
  948. JSR SKYFLY_WRITE4 v' [! X) z# y$ P+ ]- N
  949. LDX #$00( W- E2 [0 ?1 w# F* L* B2 _
  950. LDA $07A1
    , k- p, G3 Z3 z8 @: u& Y: }
  951. AND #$20$ }6 A4 z& Q0 S( T3 z$ s& L+ \
  952. JSR ON_OFF_PPU1 @' l/ k% D+ q
  953. RTS4 ]5 z1 S/ r- V: F
  954.   Y* b2 A& R5 f- W- E6 J
  955. BULADD_STRING:" s9 A. H( _0 y
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    6 t" C) y$ U" `
  957. * {& o! t0 T4 \. ?9 h0 t
  958. BULADD_WRITE:" l, x  w* s9 W; }- f
  959. LDX #$008 |" `! J' _( W7 w1 f, K9 N5 O6 z* S
  960. BULADD:+ ]8 r& f7 p! t4 G5 R1 [
  961. JSR PPUADDR_PROCESS
    6 D1 ]6 [# [5 s: I% ~- j* b. ^
  962. LDA BULADD_STRING,X0 r1 L! R4 S9 u9 {: C6 y  q; f
  963. STA $2007
    - X' r! j: V& B4 N' T6 y
  964. LDA #$00
    ) z) V* ]' W: v8 i" q3 x2 i2 w
  965. STA $20005 `4 j" Y4 H5 d6 H' [) j9 C
  966. INC $BA2 ~, @$ A- v1 _7 N
  967. INX
    & _; `4 @5 P4 \7 Y( ~2 z* [
  968. CPX #$07* G- V, X+ m/ J0 p# X
  969. BCC BULADD
    5 s4 o/ k2 u5 ~% I" O! K
  970. RTS
    ' C- q% d* B, K, V4 u
  971. - C! c+ U1 T# W  ?. U* u! c& \7 j
  972. BULADD_PPU:
    ' {6 }* c& e1 N# E/ |
  973. LDX #$00
    / i( _0 q( M/ P; _
  974. LDA #$62* e* ~$ d3 R" ]1 L: G3 g
  975. STA $BA
    " _0 O0 |$ b8 a- \6 t0 d
  976. LDA #$21
    9 t6 @7 T4 |+ {# e! s
  977. STA $BB
    , I0 Z2 E+ F4 q6 j
  978. - z' M( P+ o6 i* `& Z
  979. # G: A3 U" `6 c2 ?
  980. JSR UP_PPU/ A! f2 A; D  @; `, B
  981. JSR BULADD_WRITE
    8 a: ?. ]8 E; C/ f6 e* k9 R- F
  982. LDX #$009 S! E; `. J9 l! S) \; G
  983. LDA $07A2
    - F9 \4 C7 \7 s- t9 |! P
  984. AND #$01
    + j3 W# `7 N+ f  b  G7 h; f, d
  985. JSR ON_OFF_PPU0 n' N' \5 E6 d' m& l1 I4 N3 l
  986. LDX #$00
    4 J* D, f  g5 f
  987. LDA #$71+ u" p4 G; V! ?  K
  988. STA $BA
    . _) ~6 p. W/ O. E5 [
  989. LDA #$21
    ; r, h8 i, S" ^1 {  O" y5 M/ ?
  990. STA $BB- I4 t  z5 C5 k4 `( q. d$ q  }

  991. 0 L2 y& z( ^; x' z; v9 D

  992. ' `- I/ c0 {+ u/ U
  993. JSR UP_PPU
    ) B& ]: M2 U) U- y" R* X: k) V
  994. JSR BULADD_WRITE
    * Y+ i$ R( b; _$ b' ~0 I3 W
  995. LDX #$00
    2 B* U  b1 \# H3 G, B) C
  996. LDA $07A3  J6 h5 L/ N$ e
  997. AND #$01
    + h0 b6 [0 C7 G) L. s. H
  998. JSR ON_OFF_PPU
    ! T. n9 G& d- s
  999. RTS+ I5 b  _- ~. h+ @7 y2 E1 S

  1000. & U7 T6 Z- u7 r% m
  1001. MENU_PAGE_STRING:
    ' s4 y7 S, Q2 h+ q$ k1 G# }
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    0 P+ N2 R# v2 _" V

  1003. 4 ?  M1 v/ a0 R4 K+ T
  1004. PAGE_PPU:' |5 j& \5 S5 v+ I5 [
  1005. LDX #$00
    3 G9 N7 ?) O* _1 ?9 d
  1006. LDA #$0A- Z3 B. c+ v  W1 C# ^2 c4 O- F
  1007. STA $BA. q% ^1 H1 i' E7 Z
  1008. LDA #$23& U7 ~0 @1 K. v) w: p9 H- {+ s
  1009. STA $BB- j- F3 S7 [  G  f5 W4 e

  1010. 4 k5 \) U. `; A4 h( ?" }- Y
  1011. % L, |  O( G- U7 g' I
  1012. MENU_PAGE:
    * f& W2 N& Z5 V- p' I  \0 j' g  {7 G0 u
  1013. JSR PPUADDR_PROCESS& n6 V3 b; N# W& R  _: D
  1014. LDA MENU_PAGE_STRING,X
      R! s2 l; n7 _. Y  W4 Z; G
  1015. STA $2007% l4 W* S$ D% c( _
  1016. LDA #$003 K" z# _" D8 N+ I
  1017. STA $2000
    0 r2 n; {3 @1 I) {5 k" R6 |% i; r
  1018. INC $BA# ~* Q* l. W. V- j! d, P
  1019. INX
    4 G' _4 o! p7 ?9 A$ f, J+ [
  1020. CPX #$0B# w4 i+ J1 O6 Q' E
  1021. BCC MENU_PAGE
    ! y) |0 [4 D- i
  1022. LDA $07AA
    ) }+ c' {4 p3 L5 v+ P
  1023. CLC, ?/ Q9 ]) y* Y$ P! S' M
  1024. ADC #$82
    + H2 k1 u5 U) y  i: q4 E
  1025. STA $20072 G5 I) l- c; q$ a* p) U% M
  1026. LDA #$00
    * f, I1 s8 ~* S# E! O
  1027. STA $2000
      h$ V, b6 h1 Y& b/ b1 e/ G
  1028. RTS
    ; u: A, {& |. X, G; g. }4 o% s% b

  1029. / F* Y( D+ K2 Q) v* u  k

  1030. ! r. O) n3 `7 g  R+ o9 C/ X
  1031. SKINGE_STRING:
    / A7 U* v  N2 m; P
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$802 N  C, G: O$ h2 z3 `

  1033. , |1 z- s! g& [6 H  e5 K& z9 Y
  1034. SKINGE_WRITE:8 @( w# @0 d. _* l& G/ X/ p1 T( Z
  1035. LDX #$00
    , O7 o1 @8 v1 S/ t/ U9 |- _  X
  1036. SKINGE:
    ( k* {0 Y5 j: m4 F: |
  1037. JSR PPUADDR_PROCESS
    : ]/ C3 t4 b% h: }6 F7 b
  1038. LDA SKINGE_STRING,X) |4 L4 h6 q+ x. n9 |% ?' |7 Y
  1039. STA $20074 R/ k3 [# P5 w0 x+ Y6 X
  1040. LDA #$00
    ) [/ d- u4 o' {5 @- g( H
  1041. STA $2000* j, n# Z. U" P+ q! }8 O3 k5 |
  1042. INC $BA
    % u1 F$ `, v5 `( E5 j4 p
  1043. INX
    8 o1 h: O; B, M* k8 _
  1044. CPX #$07
    / S+ [& }$ E7 T! e3 K+ [
  1045. BCC SKINGE8 v8 S+ B6 h6 r( F- w* I
  1046. RTS, V1 X: _' E: n$ W& o
  1047. & p4 [# G( [+ r
  1048. SKINGE_PPU:% v1 Y3 H1 V  o5 V/ `$ J) s2 v. w0 h
  1049. LDX #$00
    ! {. T4 Y6 p( \& i3 H
  1050. LDA #$A2
    , B% Z$ |) ~7 Y7 }! f, O* o
  1051. STA $BA! d7 X- D: u' W* `2 ~
  1052. LDA #$21+ y! M8 K: x3 l) N7 [9 y1 U# b
  1053. STA $BB) F2 s2 q! P5 B7 Y: z$ C
  1054. # {0 H) d4 _7 c. k& R& u( f* Z2 v& y

  1055. ! C, B* H# e6 o9 E  C! R
  1056. JSR DN_PPU
    ! e) r) A/ a0 }3 A6 E
  1057. JSR SKINGE_WRITE
    ! O2 Y, S/ O* K/ l
  1058. LDX #$00( e9 `% H2 u+ h6 P8 A" e- \
  1059. LDA $07A23 u  H1 @/ S) k& B) V  K
  1060. AND #$02
    : J* S$ f& e7 ^
  1061. JSR ON_OFF_PPU
    % B( m& m, L: W: \
  1062. LDX #$00" R9 [9 @# B# r& G
  1063. LDA #$B1( R' O: k$ E/ O6 z: s
  1064. STA $BA
    " t' E( v8 V# B8 T6 y2 x+ F
  1065. LDA #$21  T9 @6 V* [$ v9 D: Z
  1066. STA $BB
    . b1 Z7 E; h- S. K/ B1 d

  1067. ! m6 h! F" L! Z
  1068. . [7 e" [( v3 x+ Z) ]  h; l- `7 ?& B4 \
  1069. JSR DN_PPU2 r3 `+ D7 y$ X+ W
  1070. JSR SKINGE_WRITE
    " B6 L# ^1 C' u- {
  1071. LDX #$00' l4 p. d/ Y+ \! D
  1072. LDA $07A30 r. Y# Y6 i: `, u4 q8 y
  1073. AND #$028 d. T2 O* r: f: Z. ~' a; {' J
  1074. JSR ON_OFF_PPU2 c$ w* Q& B( p! t- m) j
  1075. RTS
    9 G+ M0 \/ l6 i* i& X5 Z
  1076. * U2 ]3 O3 P1 V  D
  1077. BULMIX_STRING:9 b. k* \& E  H" O; Y3 s  ]& [
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80- J$ K1 t+ p* a8 U
  1079. ! S/ G, f6 }; U
  1080. BULMIX_WRITE:
    7 f3 x5 w, n* [9 [6 }8 D; i
  1081. LDX #$00
    + I" _+ ^  {5 D
  1082. BULMIX:1 I, T6 j/ K2 F4 U5 h
  1083. JSR PPUADDR_PROCESS" y5 n7 Q2 w$ n
  1084. LDA BULMIX_STRING,X" u: r; Q, _( t: K8 f) T
  1085. STA $2007  P; A6 k" N& o$ v. y/ k
  1086. LDA #$00
    ; v  y7 E: v6 L, Q
  1087. STA $2000
    2 f  H$ t2 t$ z; ~3 Q2 f. u" o: k
  1088. INC $BA
    + m: G6 h. Q7 r- }3 S  U; j. t
  1089. INX
    : F$ B/ S: S9 W+ S( `" F
  1090. CPX #$07
    / f+ ~) W% X, C! U. b0 P9 ?. T
  1091. BCC BULMIX- b, W; O( \1 t8 N$ B4 o; M
  1092. RTS
    0 O. q+ D" V' O" Y, ?; ?' L) z) X

  1093. % x! `8 d7 [/ [
  1094. BULMIX_PPU:" L" D7 d& U/ Q+ I% I
  1095. LDX #$004 x0 l8 Y# u- C" ~5 M) `, W
  1096. LDA #$E2
    0 A% j# a; O* C: m$ n7 J
  1097. STA $BA
    # F) K5 D1 V; ^; _8 ?, }
  1098. LDA #$21
    * S* H. h$ p$ B8 X2 G; I
  1099. STA $BB2 a/ B% [6 K- J6 Q+ v8 v* ?1 ?

  1100. ) ^% }5 ?2 U* C6 s* q7 P

  1101. 7 n5 U$ Q( p: L: \! ]
  1102. JSR LF_PPU
    " t- f- t( i9 T1 V9 Q1 V9 K& J% Y
  1103. JSR BULMIX_WRITE  M( @: D+ L- `  r0 N* l
  1104. LDX #$00
    % |" u2 K; e# f, T
  1105. LDA $07A20 L3 W- Y! C, ?0 E- ~& G& u
  1106. AND #$04
    * V% v7 L) ^: p, x: o! _. m
  1107. JSR ON_OFF_PPU) k- p* ]# O0 c" E2 W  ]
  1108. LDX #$00% D! W$ P  Q/ P& Y1 ?2 d, Q
  1109. LDA #$F1
    0 G* a* L' y6 e- m# r5 }% q8 f
  1110. STA $BA9 R& r! v- ?7 ]. U- {7 s
  1111. LDA #$215 ^# M/ t8 t. s+ q
  1112. STA $BB
    : u  W" ?' r7 @7 A2 g5 }

  1113. ! O" [" H3 h9 B) N, E* n7 L& Z
  1114. ( Z+ H' z6 p) s. V
  1115. JSR LF_PPU
    4 d* g2 \( p& y5 l: [1 }
  1116. JSR BULMIX_WRITE3 M0 C: z0 T+ Y& M
  1117. LDX #$000 _% `7 t2 t( ~* o3 d
  1118. LDA $07A3$ j0 p; ?. q8 s$ J) P
  1119. AND #$04: y' l3 L8 g1 G5 o) g# e) z
  1120. JSR ON_OFF_PPU
    3 G; a. U9 `8 X
  1121. RTS
    ; \% w2 [4 b! y: g6 M7 d
  1122. ! L8 [( @, T" `$ ]
  1123. ENELOC_STRING:
    ! s8 N3 G8 u0 l4 P
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    5 C8 l  o1 `- c1 x( d
  1125. ( o" b, J2 {% F: W4 Y: U" i$ g
  1126. ENELOC_WRITE:# [% Q: c5 E, O# g, {1 Y1 k
  1127. LDX #$00
    $ A1 A) ^9 A( I( |/ e1 u# }
  1128. ENELOC:1 w3 m$ @' b, l& n2 t. c
  1129. JSR PPUADDR_PROCESS+ B7 a9 I9 x2 q& d
  1130. LDA ENELOC_STRING,X
    $ C. Y' z! {" \; l2 n8 m: M
  1131. STA $2007) r" ]  a6 c7 b- O4 q
  1132. LDA #$002 F7 Z! u3 T0 ]
  1133. STA $2000
    / _$ k" F& `9 c, ~9 D( k2 A* B
  1134. INC $BA1 f* A$ M- w* E& X8 n
  1135. INX
    * r9 ]6 m. ~4 |/ L& G
  1136. CPX #$07
    # E6 l9 O: k5 r7 A/ x
  1137. BCC ENELOC
    2 ?8 I( {" S  {1 L$ q
  1138. RTS8 Q4 ~, I9 P, v% w+ G

  1139. : p, |% W& a, a- Y  A9 n
  1140. ENELOC_PPU:
      ~* k6 {: Y) z' p
  1141. LDX #$00) n" @4 @; L' z, T) n7 V
  1142. LDA #$226 p; X- p  r, R, K- {: O6 A
  1143. STA $BA: V# B7 K( b! p" w: B! b* {
  1144. LDA #$22: A  q3 s: P- V( ?* ]$ J
  1145. STA $BB
    # H5 U/ t# d& N! x& Y  D2 g

  1146. 4 m, [' _0 l( f4 W, m0 O; X  `5 Q
  1147. 0 x0 Y/ \; q4 I- @1 N4 x
  1148. JSR RG_PPU6 U4 f$ c& S  d4 \" e
  1149. JSR ENELOC_WRITE
    6 X) `! r9 E& x% ~( d
  1150. LDX #$00
    9 `9 ?: K1 {/ j
  1151. LDA $07A2& o/ F( _; Q- _: _4 H( Z1 N) T
  1152. AND #$08
    # o, e6 q7 J* X$ z
  1153. JSR ON_OFF_PPU
    % R9 D5 e( T" y& N: ^2 ]
  1154. LDX #$00
    9 ]6 b) T* H- r3 o+ J/ Y: g
  1155. LDA #$31  r8 B6 l# N% A$ q6 Y/ |
  1156. STA $BA
    % W1 |. ?* c, v) G, B
  1157. LDA #$22
    6 ?/ U# |  h1 O8 o* q
  1158. STA $BB
    5 g1 y; `8 i. h3 U, [9 U

  1159. ! F0 ?" {5 j; Z4 V7 O
  1160. 4 k1 g- g: T; [3 ~6 `+ s% }
  1161. JSR RG_PPU7 Y# Z  Z, M( Z# v
  1162. JSR ENELOC_WRITE' I9 t. u. {7 Q3 M$ @8 |! \
  1163. LDX #$00( E, i$ p4 {, @) a6 k1 W
  1164. LDA $07A30 {! o9 S5 H, O
  1165. AND #$08; V( Q9 L$ q: |6 f& ^& ]* N6 V
  1166. JSR ON_OFF_PPU( _- R2 Y! L0 ^$ D3 l- c
  1167. RTS& L3 i- T5 V+ n1 x

  1168. / |( u0 a/ [+ I
  1169. FOCFUL_STRING:( }; j" {( \4 |
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80: A6 [( s5 j& x3 G* _
  1171. 6 i6 s0 N7 p: B4 d8 |) t3 b

  1172. 5 f; @6 u  J9 _1 X# ~
  1173. FOCFUL_WRITE:( ^! S: y4 \* ]# H' e0 F0 m
  1174. LDX #$00( _3 C2 F  [2 g+ ?8 Q6 I5 |
  1175. FOCFUL:
    , ]) V1 \5 f+ d. {, P) j8 J" K4 Y
  1176. JSR PPUADDR_PROCESS
    : |! W5 P( k7 ^# ^4 o8 g. }2 ^
  1177. LDA FOCFUL_STRING,X
    4 M, J8 I8 d. k3 d6 ^" R, g
  1178. STA $2007
    4 L0 j3 c# S) V, ?3 t
  1179. LDA #$00
    8 q1 ~8 q+ W1 i" _
  1180. STA $2000
    ' ^# G# V  c! g
  1181. INC $BA
    9 N" @% a' d0 ^/ W
  1182. INX
    2 v/ B9 @7 F& j2 K/ k3 k
  1183. CPX #$07- @' ?* l9 b) @+ ?5 s" [  l0 v$ X( R
  1184. BCC FOCFUL
    8 E' I- R3 ^  n3 A; ]  F, g
  1185. RTS  g0 q) t+ X0 |5 I5 Y" U  ]" r
  1186. . e3 y  H  c+ v7 ?, S7 y; N
  1187. FOCFUL_PPU:
    + w7 e1 K7 @; F" e
  1188. LDX #$00  R; \* f/ @, s$ }* v4 A2 m, K
  1189. LDA #$62" p1 W' `! ^' H2 b- U& ?( h
  1190. STA $BA+ t0 i3 x- W2 _7 E! P
  1191. LDA #$22
      N7 J' s: h1 |/ }9 f; h* q
  1192. STA $BB% Q+ X6 @6 j' L6 S, W. k: ~3 L$ Z

  1193. 7 L4 ^  U# O% D. j! ~" E
  1194. * h+ ^% ]  D+ [5 A7 q
  1195. JSR B_PPU% T9 x+ a" w; Z* U. k# S4 M0 @" O
  1196. JSR FOCFUL_WRITE2 v  Y! |6 r' N2 c. L: D. V6 U
  1197. LDX #$00
    * a, k" J$ D" i( N, Q) d
  1198. LDA $07A2
    6 E! a3 b  |6 t$ r/ p
  1199. AND #$10$ v& t( [5 M: A% O, k
  1200. JSR ON_OFF_PPU; c8 w% N( o' J2 I& }% U4 \
  1201. LDX #$00% Y4 r2 v! G3 R0 ~6 _
  1202. LDA #$710 Y' Z+ u3 ~0 _' ]% M9 O
  1203. STA $BA
    $ o; l$ |. R- N1 g
  1204. LDA #$22
    * [: ~6 Z$ s5 e6 C- c
  1205. STA $BB
    * K6 ~& F2 `* X8 S0 Y: q/ z

  1206. : Z" J# \8 v% @8 Y: G

  1207. 0 v, z* H- C. f# W; x% R7 a; H
  1208. JSR B_PPU
    9 C5 y' e) t: i
  1209. JSR FOCFUL_WRITE5 a. J, H' f" k/ B$ F+ f0 X
  1210. LDX #$001 B; W! I: i$ I5 g, G
  1211. LDA $07A3
    ) S" v1 J. q/ f; O
  1212. AND #$10
    1 S7 N' o, q+ ]- i- P. S- u0 g
  1213. JSR ON_OFF_PPU+ I0 Z2 i6 `' Y: P
  1214. RTS
    9 ^  ^. ~1 [9 U# o2 V
  1215. % N3 Z' ?% v& ~" u! Z: z
  1216. BULCON_STRING:; ]7 J% p2 i# L: q8 C9 ]; W: _  j
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80
    ! m+ I* @5 J% P% L. ?

  1218. ( r/ {  h# j8 n/ J0 }6 {
  1219. / f" `, w. d& u% U/ G  n) c
  1220. BULCON_WRITE:
    5 ~% H) F" j* L
  1221. LDX #$00
    ' V9 s" s. o* [- `
  1222. BULCON:
    " }( P+ }% p& p" x
  1223. JSR PPUADDR_PROCESS
    . F% e  D% g! W6 \
  1224. LDA BULCON_STRING,X5 z$ R4 i! P. @9 w0 O! _. Y
  1225. STA $2007
    4 v% r- u6 i- p6 l" U
  1226. LDA #$00
    : {  O' ~& |2 @2 B% v* C& j' Q" r
  1227. STA $2000: U# Y/ n' r- @2 N  N
  1228. INC $BA/ D& T. l* B; d% H) z2 v
  1229. INX
    ( l- j7 }9 z2 m+ _7 Y* g( x
  1230. CPX #$07  ^; ]: j/ d% d4 R4 O- P& @$ q
  1231. BCC BULCON
    . t. w( H7 U  y. i* s6 U
  1232. RTS
    0 L' e. R8 F, ?2 z0 N
  1233. 1 P& x) B# K! |; u. ?
  1234. BULCON_PPU:% N3 H, G4 y3 V! ^
  1235. LDX #$00! Q, _9 h/ t; g
  1236. LDA #$62, b6 o- ]; `3 b7 W) y- _5 l
  1237. STA $BA
    3 o; Q! l# \$ |$ q# A) E
  1238. LDA #$21
    $ |, e1 x! G$ D, T/ }* W+ {' K
  1239. STA $BB2 m" y. [) \, T( n- n5 e

  1240. : A* Z5 _; V+ B( F6 H% ]4 X! N

  1241. 5 q. U5 N, s% X3 w+ I6 z
  1242. JSR UP_PPU3 O) \9 T% A0 v% d
  1243. JSR BULCON_WRITE' M2 Q- V: D( C- @& Y. k+ }: t$ x
  1244. LDX #$00) }  m* o: v# k/ ?
  1245. LDA $07A4# T1 j# h: C! M9 V% I
  1246. AND #$082 s4 B7 G/ q7 {5 D# A, _, q& x# B/ h
  1247. JSR ON_OFF_PPU
    6 _* b, X( c) R' j  [
  1248. LDX #$002 E- j& S, T- y& S9 p3 A" E! f
  1249. LDA #$71
    & S& \# P/ |0 }: R
  1250. STA $BA
    * U  Y  A. x7 S, J9 X: J2 ?
  1251. LDA #$215 P5 l+ m# T5 w, g" o  d
  1252. STA $BB* R- m- \0 Z9 T) }1 l5 E3 {

  1253. * x5 r  s, @2 H2 [

  1254. $ S1 @4 v: Z0 p+ G
  1255. JSR UP_PPU7 t. E& R0 n( s. |: |5 Q3 y
  1256. JSR BULCON_WRITE6 t% K5 c6 F0 x7 a5 M  o
  1257. LDX #$00- e& r! C" j. P- w+ B5 b; o, c: z* H
  1258. LDA $07A5
    4 A7 e1 [. [: _, a5 B. ~2 t0 i) l
  1259. AND #$084 \6 Q) F0 |9 ^& y7 X
  1260. JSR ON_OFF_PPU
    % P  J) x5 M- d0 G* [2 c
  1261. RTS
    $ X) g3 ~$ d( A9 D; n2 ]/ W, C
  1262. * g8 k% o) q& Q( f' W
  1263. SPEBUL_STRING:6 y; }! p& m& _# L
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$809 ~# p) \  S* q) f

  1265. ! a3 r/ M* s- X7 y* f

  1266. ' b9 @! |. O/ K* ]1 d/ L
  1267. SPEBUL_WRITE:, P, ^. n! J0 J+ a$ O, }5 g
  1268. LDX #$00/ Q) s/ N: u$ S/ `4 H$ u
  1269. SPEBUL:4 x$ e; p; v3 B+ x0 e# d: }
  1270. JSR PPUADDR_PROCESS
    5 I% K8 i6 G  ~" Q( `
  1271. LDA SPEBUL_STRING,X
      e: i8 u# K9 M, y
  1272. STA $2007  f' p6 t% [, h
  1273. LDA #$00
    9 o9 |; u' Y( U$ b1 `4 q1 a7 ]
  1274. STA $20003 ?, Z; G* W% o  i5 R7 t" k$ a6 V: Y
  1275. INC $BA2 P& ^2 e3 ]; l" ^/ U! d
  1276. INX. W. q2 e% a( o
  1277. CPX #$07: C0 N) u3 l. A8 T1 X& r7 A8 J& \
  1278. BCC SPEBUL8 f, ^/ J: h, ~6 b8 V7 A% X, X
  1279. RTS4 a4 e" s0 w7 @: s# R/ U& C

  1280. 1 \/ t: `# k& o6 Y- V# h9 c: H
  1281. SPEBUL_PPU:& U( q9 [8 U1 A1 c. n' V& f" }
  1282. LDX #$006 U( ], p( F) I* h4 y
  1283. LDA #$A24 S6 O7 k! ^( P* N- Q
  1284. STA $BA
    ' `3 T0 m5 e# ~1 @7 [
  1285. LDA #$21
    $ R0 c/ A' a" s9 m+ T6 b
  1286. STA $BB
    . [! I1 W8 k: [4 X" M
  1287. + e8 O( I2 L  S; g- n

  1288. ' A5 {4 I1 Y: ^% v9 R4 a$ O! h
  1289. JSR DN_PPU# Y7 C5 _& y7 s" C
  1290. JSR SPEBUL_WRITE1 n& Z. l" ^; E  ^, ]2 Z( O% ^+ Q
  1291. LDX #$00
    1 g9 e5 ~: g6 g/ ]9 P6 k
  1292. LDA $07A4
    % K$ N. y+ b) V2 g
  1293. AND #$02& T  l" B4 ]3 }! ?! J
  1294. JSR ON_OFF_PPU  x( R% [. K8 c8 _  V
  1295. LDX #$00
    $ i2 |. Z( b& ]! w. V" b
  1296. LDA #$B1  v7 }, m) F1 \
  1297. STA $BA
    7 O9 M3 w$ J9 L9 {
  1298. LDA #$21
    ' \+ c  c: i, X* E9 s& X) D: C
  1299. STA $BB* X3 m! a4 e$ U0 R! [
  1300. 5 O3 H0 r( ^! \% |2 ]# l0 m: \

  1301. / M- s. m) V) v2 M# P5 h
  1302. JSR DN_PPU2 v8 L: D! i/ X& I0 C; [, `4 s# N
  1303. JSR SPEBUL_WRITE
    5 w. D% i1 \% H% m
  1304. LDX #$00
    * U5 r& x) t& r* }5 l3 w. o
  1305. LDA $07A5* l$ R5 y, |* l( b" Y$ W( [" E
  1306. AND #$02! `9 ~# o7 F& J* s8 k: L
  1307. JSR ON_OFF_PPU9 u2 ?+ L9 `8 M
  1308. RTS+ N& `) t; F3 f" Q) ~
  1309. 7 U4 W. U& c. R, O+ \; g
  1310. .ORG $A500" m+ q8 Y1 K! P0 Q9 D
  1311. CLEALL_STRING:. r1 Y$ l& N9 f
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    ( _/ w; ~( V; M. |

  1313. # m& d8 ^$ {# j: w

  1314. / G: C$ O$ V' T: f- |" n* y
  1315. CLEALL_WRITE:
    : ]+ `. j" t4 E; r) O1 }- z# q- h6 _
  1316. LDX #$00
    + I0 @' C- r3 y
  1317. CLEALL:
    # A8 _. v! E% n  r- A% \
  1318. JSR PPUADDR_PROCESS
    7 E; @$ \5 D+ w3 E
  1319. LDA CLEALL_STRING,X" W$ B7 O7 |" Q, d. S
  1320. STA $2007
    : p3 D% P9 h3 D9 {. O$ f; P
  1321. LDA #$00: E1 b' i* y! G
  1322. STA $2000
    " z! v( Q, H5 D* }3 Q, F' v) z, B
  1323. INC $BA2 _; b0 K  F) s' N+ w% F
  1324. INX
    5 J4 X, C' ^" c! r* e) k( }5 e4 |
  1325. CPX #$07
    & ^8 m2 O# V0 `! n, D( G6 Y4 C2 D0 F8 T
  1326. BCC CLEALL
    ( I4 u* l& I! R. s5 S8 b
  1327. RTS5 {9 e: h: J% h- ~

  1328. # ]+ @0 l+ j" L% o6 ~) N
  1329. CLEALL_PPU:
    * \  P* a# c2 s
  1330. LDX #$00
    9 t+ i' X/ H8 C3 {2 \
  1331. LDA #$E25 R3 P# n; F. U1 F7 N
  1332. STA $BA
    : X& x, P: B& C0 k5 F  r
  1333. LDA #$21
    # i: Q0 Q4 e0 |
  1334. STA $BB8 u9 _0 j1 A  z$ D  X0 E

  1335. ) m. y: _, E* ^3 Z

  1336. ! y6 e. v0 |0 D
  1337. JSR LF_PPU
    1 f5 P+ y3 ~& M0 T9 B% D" r' J+ E$ A- M
  1338. JSR CLEALL_WRITE4 T0 P, p+ W' t, S8 Z, p- h, i7 w
  1339. LDX #$00
    2 i0 b2 o( L' S$ `2 U, g- }/ N
  1340. LDA $07A4
    0 o, L% f. e1 [+ ?" S  z
  1341. AND #$04
    3 c. B  q  H' t/ Z
  1342. JSR ON_OFF_PPU5 _1 \; ]/ Y* [! I( j1 p
  1343. LDX #$00! Y6 B! r9 P. b% d" I6 \8 ~  o
  1344. LDA #$F1
    5 F' P* h3 `" I2 ]% r, G. E: G' S
  1345. STA $BA
    & g, D& |1 x6 H' H5 x; d
  1346. LDA #$21
    - w8 Y- u- L( e# u* J
  1347. STA $BB( ^+ }# \! I' @" T% h/ g

  1348. 6 g' W4 I0 q- X% E, d$ e7 L
  1349. 2 i# S; t' Y" J+ u; Q- a5 O
  1350. JSR LF_PPU. w! Z, z/ W# e% e7 ]
  1351. JSR CLEALL_WRITE
    7 q: Q' o, u! E$ a5 |4 ^7 @
  1352. LDX #$00
    $ z, B3 V2 m. J& n# ^- g7 y8 o* J
  1353. LDA $07A5
    ! V' R0 k: J* h% H! ~$ I* r/ M
  1354. AND #$04
    % R! |+ G# A1 p# [
  1355. JSR ON_OFF_PPU5 f5 i$ j: B' s/ D1 b
  1356. RTS
    ! s. ]" [2 n5 r; B( `: z
  1357. ; g5 g4 B: ^0 i3 z$ y6 _
  1358. HARDMODE_STRING:) N& k6 }, B' R1 B3 J- i1 n
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    : U' W# u$ N1 J" Z3 M

  1360. 5 Z  m7 v. B' I. f

  1361. 5 h& A; V/ l# h5 {" B2 n
  1362. HARDMODE_WRITE:
    * u/ F: b7 N+ l( P* @- |; N, P
  1363. LDX #$00: X( J* w3 U3 u4 e; h' @, ^
  1364. HARDMODE:
    & D" \+ w( ^% u0 Z* V% w
  1365. JSR PPUADDR_PROCESS& V' b5 p7 N, O; Z& Q, D7 \3 h4 Y
  1366. LDA HARDMODE_STRING,X7 i! a# l' L$ x+ p& E+ O/ [& [- u
  1367. STA $2007+ G  l0 C6 x: \, r. ~" y! N( u, P$ E
  1368. LDA #$00/ _% R( t* V) \+ I8 w& ^
  1369. STA $2000
    / S. e1 |& ^# c
  1370. INC $BA- ]. w9 v3 t$ x# a& O0 Y
  1371. INX8 K# F; r2 @7 W& f+ n
  1372. CPX #$07, x7 A9 h8 ?! b
  1373. BCC HARDMODE% \' J' C+ a2 w4 I
  1374. RTS
    5 B) h- B  R3 E' q5 b
  1375. $ u* g! X5 a+ z/ J, L
  1376. HARDMODE_PPU:$ M6 u) T: Z4 f, l6 @
  1377. LDX #$00& m5 r$ B/ R0 x. j+ r
  1378. LDA #$22
    * c8 P* L8 T& h. N$ r1 ?! B
  1379. STA $BA2 U* v% O  f0 k) F# m
  1380. LDA #$22. w3 x$ ?% \8 Q: p( z. _! i+ l
  1381. STA $BB
    # J. V( e* G( ^8 u7 U7 f8 q
  1382. JSR RG_PPU
    4 L; v8 W1 t, S9 C* v, _
  1383. JSR HARDMODE_WRITE, z7 e. L2 ~8 N$ \3 o
  1384. LDX #$00
    4 r8 M8 N) u9 d* E' T' ^6 B8 a* j
  1385. LDA $07A47 V2 r2 M* z2 ?+ D8 W
  1386. AND #$01% R1 `8 Z8 _6 q" r0 |8 I
  1387. JSR ON_OFF_PPU. p- ]0 x! Y% O; P6 k/ R
  1388. LDX #$00% D9 N+ z$ @6 f
  1389. LDA #$318 ?5 a* N1 z4 A/ |
  1390. STA $BA9 j: [7 Z: d* G: l% j
  1391. LDA #$22
    5 ^% D' i" L' k
  1392. STA $BB
    ) X( \1 z: K+ \" M9 C% ]

  1393. ; S6 t# [+ O0 Z/ d% I" O8 z
  1394. ! k8 W. b$ G' c7 @4 O- w+ j! r( M
  1395. JSR RG_PPU
    ( k+ o, ^) T( i8 t2 D" n
  1396. JSR HARDMODE_WRITE- \! }% P. ~3 c
  1397. LDX #$00! U- {$ y6 h* J) y" {- V0 y
  1398. LDA $07A5. d) X! h7 s  m$ x- ^; B1 h3 i
  1399. AND #$01$ n7 l4 l0 `- \, \% X
  1400. JSR ON_OFF_PPU
    / V: G( ^) w1 \
  1401. RTS2 J4 n. t7 p8 j, E. Y4 T; [+ o9 ^
  1402. 0 {/ s5 u) _6 ?( N
  1403. B_TO_JMPSTG_STRING:" c1 F3 ^  k% N, ^" p
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    - B9 |% m; `9 q' @2 b
  1405. 6 N* Y+ Y" Q1 e4 \
  1406. ! E+ r7 C* t4 o. T8 [
  1407. B_TO_JMPSTG_WRITE:
    & A" n) E2 r" o
  1408. LDX #$00
    2 V& c5 o% j/ M; T- s! {4 `
  1409. B_TO_JMPSTG:! X$ g$ ^8 C4 n# U8 s1 }
  1410. JSR PPUADDR_PROCESS
    % }& l- _6 u) ^9 Q
  1411. LDA B_TO_JMPSTG_STRING,X- D% y$ p0 m5 ~  \3 K) g
  1412. STA $2007
    3 X+ y8 ]9 u  g2 u/ h4 m
  1413. LDA #$004 e' M) @. G- K# S. E5 I
  1414. STA $2000; W0 P4 s7 a" l7 p$ N. z
  1415. INC $BA5 b0 M3 j( L; X5 u; W# L; M
  1416. INX
    9 C& D% T5 J9 Y: J7 l
  1417. CPX #$0D2 _- P, f5 y9 J. N
  1418. BCC B_TO_JMPSTG
    6 B* g3 \* s2 m5 y* W' @7 n- h
  1419. LDX #$00
    : Q* r( _, j/ _  |( K$ A: c
  1420. LDA $7FE06 @4 A; K# j3 G1 F7 K5 y- L
  1421. JSR ON_OFF_PPU. \6 D; S) H8 {" n
  1422. RTS
    * [; A: T3 D, x  x
  1423. 3 F% s4 h: C. J1 I3 c
  1424. B_TO_JMPSTG_PPU:
    : j( E% t$ B8 X
  1425. LDX #$006 L! E/ s' n0 w6 N0 W/ ~9 z
  1426. LDA #$68. B  `: v5 ^3 F7 Z+ p" k  j
  1427. STA $BA* T$ ^1 p* [5 h6 {5 q4 g" r7 [
  1428. LDA #$22- J1 a1 J9 N: F  r
  1429. STA $BB
    / k3 z/ i* M0 s* o# L4 a
  1430. JSR B_TO_JMPSTG_WRITE
    3 j/ d* S/ w1 _, q* {
  1431. RTS/ B6 k; U# b7 n1 `
  1432. - m/ t; Q  a5 O7 W; t4 v& m

  1433. $ n6 D$ l8 V1 j
  1434. A_TO_PLAMOD_STRING:
    - O' s* k9 y$ C$ Q3 \
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80% z6 v# L$ H, x. i# N. \/ U
  1436. 5 K7 V4 ~) p5 `3 v9 Q
  1437. ( g+ h2 T6 z0 L; J( r
  1438. A_TO_PLAMOD_WRITE:! l' @% b5 J. S5 s. r
  1439. LDX #$00; G1 q& C; a, v% T; n. y( F
  1440. A_TO_PLAMOD:( ?3 {" c& j% w% w( C
  1441. JSR PPUADDR_PROCESS
    6 \+ p5 e9 s: I* K$ N
  1442. LDA A_TO_PLAMOD_STRING,X
    8 D, [' F0 M  U: `3 S9 ?! g) ^
  1443. STA $2007
    0 ]: `" i) f, ]+ w% ~" A3 `
  1444. LDA #$007 D8 N' F$ d' m5 o& k
  1445. STA $2000$ I" N- s1 Y( X, Y4 O& X8 M
  1446. INC $BA
    # X5 B' N- X" p2 v3 i
  1447. INX
    1 [; }9 ?9 y/ `% b  C; d+ ]" v
  1448. CPX #$0D0 @9 @) K; z6 O8 G7 T- O
  1449. BCC A_TO_PLAMOD: y: p1 c+ a1 v0 t
  1450. LDX #$00
    ! n9 ]0 u$ m/ a. Q% P; ^" r
  1451. LDA $39; o3 E5 _) a1 v0 `, J
  1452. JSR ONE_TWO_PPU
    6 o; H6 O* C5 h& l5 `/ h
  1453. RTS
    * R! L5 d1 u* r9 C

  1454. 4 D% d) U8 W7 v& ]( D: R
  1455. A_TO_PLAMOD_PPU:8 v' }$ O1 v* P) @8 n2 ]
  1456. LDX #$00
      Y4 }' J! u, C# C7 s
  1457. LDA #$A8
      [# G7 @& |8 Z4 h& u# _5 W
  1458. STA $BA
    & V8 d& ?2 |3 t! g! S2 b
  1459. LDA #$22- n: ~- t4 W- A
  1460. STA $BB
    & s. M5 {; _! j1 o" m
  1461. JSR A_TO_PLAMOD_WRITE- a6 i0 T' L+ W) Z  w8 z
  1462. RTS/ }6 N: r9 U% ]& [1 x" B' n4 k
  1463. : t' z4 c! r/ A& b
  1464. MOVSPE_STRING:
    , t3 W$ ^2 P' x! i/ v% B
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    ' |1 r7 _: s5 K2 Q# p

  1466. 7 w. j/ Q6 k/ {* ^  r
  1467. 3 f. S2 t2 N- I* t; _0 k
  1468. MOVSPE_WRITE:
    - Q) g7 s1 @9 P& |
  1469. LDX #$00
    + D5 q+ e+ t  g1 h; z1 t
  1470. MOVSPE:
    % [3 y4 j: @( R  e8 Z
  1471. JSR PPUADDR_PROCESS
    ; G; Y/ I/ H) g
  1472. LDA MOVSPE_STRING,X
    7 i. j" p7 m' P1 M  N7 U
  1473. STA $2007
    5 J9 f7 `( K( ^
  1474. LDA #$00
    ; f! ~, ^$ r, I: z
  1475. STA $2000
    5 i2 L1 Q" D7 Q
  1476. INC $BA& T) V) V8 b) o* ~1 |, J- L# I8 A
  1477. INX
      P. s! V6 h) B
  1478. CPX #$07* A" l7 `$ _5 r/ J: N0 N+ V
  1479. BCC MOVSPE* q% M2 z/ q( \& t
  1480. RTS: v4 P. Q1 ^+ I" d& B

  1481. 3 g2 ?9 _7 B2 `/ R& A! n
  1482. MOVSPE_PPU:
    , P' Z! N3 [, A1 m; {/ j" w) n
  1483. LDX #$00
    ; q$ j2 \# y! v& @9 Z
  1484. LDA #$69
    : z, u( O0 c, n
  1485. STA $BA
    * t( x9 |1 A; ^
  1486. LDA #$212 V5 a9 j) ^; d7 S
  1487. STA $BB
    - a6 d# N* Y3 e2 t" ]

  1488. 8 E0 B8 t9 I9 s8 N' u
  1489. 2 C7 G8 J2 v1 N  o  G5 E2 T  |& K' J
  1490. JSR UP_PPU
    2 ?! h' u4 j* Y: a- y
  1491. JSR MOVSPE_WRITE% o; v# O$ f: ^! j8 A% q
  1492. LDX #$00; ^& O4 S* O) B& _
  1493. LDA $079F
    2 v* a- Y7 t  y; n5 d6 t& }8 C
  1494. AND #$08  A& X+ J4 b0 C, B$ F
  1495. JSR ON_OFF_PPU
    2 [9 K6 x+ x+ ^+ H
  1496. LDA #$80. s, l: O) H2 Q7 t8 I/ v* |
  1497. STA $2007. B% o" A. F# [1 r
  1498. RTS2 q' H' `0 w* B: z; _% s( S) O
  1499. + ?4 }, Z0 n! _6 M
  1500.   
    3 s9 W7 s( [0 j3 I$ J, c/ {
  1501. UNLJMP_STRING:
    0 O  E4 B! v- c8 O
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80; |* _, l" K/ k
  1503. 3 G  @; X' u2 w$ R, h0 m4 R8 \
  1504. 5 i" B; w& ?7 a
  1505. UNLJMP_WRITE:
    5 D. ?! @8 g0 ^5 N* i+ J* z4 V
  1506. LDX #$00* T% N8 ~4 H* H5 ~+ Z, [
  1507. UNLJMP:, {( F8 m$ Y$ z9 k
  1508. JSR PPUADDR_PROCESS
    6 o, w5 {( E+ s
  1509. LDA UNLJMP_STRING,X9 q7 t! O5 C( r* N; L
  1510. STA $2007% j) c- ^' n, w, |" z4 r7 ?7 q& y
  1511. LDA #$00
    0 \8 o$ O9 a% e3 v9 `5 m1 X4 m
  1512. STA $20007 G' H1 a+ l3 {; G  ^
  1513. INC $BA: M" H3 w7 k2 l' ~# L, s9 p3 V
  1514. INX9 H, U$ n- m' M; ]
  1515. CPX #$07
    . g: a" W: q/ c2 g  J9 `& [: U) O# }
  1516. BCC UNLJMP
    & D  m: f& h) N& v
  1517. RTS
    : }: G) E  n) o9 M* R8 }0 P

  1518. 1 P9 ]0 w) V) @3 h& H. r' m1 U
  1519. UNLJMP_PPU:0 k. O/ C) g& i" r. X3 ^* f0 B
  1520. LDX #$00
    % o. ?- F, P; v1 ^
  1521. LDA #$A9
    / j, q9 j" g. n8 X' `4 V1 j# H; S) \
  1522. STA $BA
    . l" I" T4 P9 ]# T
  1523. LDA #$21( L0 l7 l6 z" f! S6 Q4 N% K
  1524. STA $BB9 m8 h% c8 N& Q) h6 L
  1525. / D5 c$ e( m" {# g: F

  1526. + i5 w" M( @4 _6 p% B' Y* R* U
  1527. JSR DN_PPU
    9 }1 L' Y$ I3 G- t! U- y, B* l6 X
  1528. JSR UNLJMP_WRITE& M, N8 C1 H$ d1 s5 ]
  1529. LDX #$005 a$ q6 S# e7 u
  1530. LDA $079F
    5 i# y! J4 p" I2 J4 c3 @% D  K" p1 S
  1531. AND #$04: J- A  H7 T1 J
  1532. JSR ON_OFF_PPU
    5 ^8 K& P: D" Q: J! V
  1533. RTS1 \( M# q7 B- J+ v: ?7 j( @
  1534. . A7 d/ M2 _' D$ u5 Z/ Q7 B5 c

  1535. 8 e/ k0 y! m" X* ^. i' s% W
  1536. DESTRO_STRING:
    + `8 k( o2 ^$ j7 C* {
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80' D- r& `4 q5 b, w

  1538. . Z) b- Z/ d# @8 t4 i2 |2 Q3 g* c
  1539. 5 [1 m1 w. H6 @6 t% T. N, |/ u
  1540. DESTRO_WRITE:
    - x, j0 m5 `3 m, y5 J' y, d7 x; r5 r
  1541. LDX #$000 n( z; K5 _" d, `
  1542. DESTRO:
    0 U" o- E& ?2 W$ S
  1543. JSR PPUADDR_PROCESS5 t$ j) ?$ K( V) D5 L
  1544. LDA DESTRO_STRING,X, {- z5 O& v! F
  1545. STA $20070 m, R7 o( k# K
  1546. LDA #$00, [( j: U6 M5 a3 A8 Q$ a
  1547. STA $20006 O( e+ t+ F, t7 l# m
  1548. INC $BA2 j: O  u2 y  |; _, p  ^. T) J
  1549. INX0 P# s# K# K, H1 ~) |
  1550. CPX #$07$ K1 y+ a7 m$ Z
  1551. BCC DESTRO
    / X. T+ l, A2 s& J- C
  1552. RTS2 b! u7 }& Q4 M; h6 i
  1553. & C& X. D$ O$ x( s
  1554. DESTRO_PPU:
    # U/ F+ p& G9 T( \* `
  1555. LDX #$00
    4 {5 _% u' W2 _" b3 @' u. ]3 \
  1556. LDA #$E9
    , b% u/ g7 F: |$ s& d4 ^6 \
  1557. STA $BA
    4 w5 v7 `  }0 d0 E2 }/ e' s1 Q+ g
  1558. LDA #$21' A6 u" @3 ~6 t2 p- X
  1559. STA $BB: f# m9 k+ W# g' `

  1560. 4 a; ?7 Q  ^0 ~/ ?
  1561. 4 _7 Y9 W( ]+ _) ]
  1562. JSR B_PPU2 y8 ^* Y- D1 H( G
  1563. JSR DESTRO_WRITE4 k! C8 ^& Y+ _) C1 c" \
  1564. LDX #$00
    3 ^1 c0 l8 L' P! Z- @+ S' p
  1565. LDA $079F
    ' @! r; _( }, W
  1566. AND #$403 U5 d9 N9 F6 I; E$ T6 \4 o
  1567. JSR ON_OFF_PPU' o; {# m& N3 k7 N+ t" s
  1568. RTS: ?5 t# L7 \) E) ?; z, A5 q. [3 {
  1569. - {( V+ ^6 ^. U) K% G2 F

  1570. ' O$ @' K* j% v4 x4 V/ |3 o
  1571. EQUBUL_STRING:
    ( a! K# A+ X  C4 I
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80& F1 r$ O( Z( @  S! M

  1573. 9 W4 q% y0 m1 \- W

  1574. 9 t8 B8 k* c6 F3 D$ ]  n  Q
  1575. EQUBUL_WRITE:- n$ D* T4 c* J4 g7 s$ p0 n9 B2 X
  1576. LDX #$00
    4 d! z7 F+ X6 X+ B
  1577. EQUBUL:- @( O# \+ H, S: W3 p
  1578. JSR PPUADDR_PROCESS
    : d; q( c+ X7 b7 X
  1579. LDA EQUBUL_STRING,X4 ]4 I! T7 v, a* H: ]6 I
  1580. STA $2007
    7 _7 X' S( m7 p  {
  1581. LDA #$00. M4 S2 }5 s" F( o$ I
  1582. STA $2000
    ! E" q& W2 h: t# w- L/ Y
  1583. INC $BA
    + s9 J3 x3 X- O/ {  v1 G
  1584. INX
    4 r' M% G& _$ B5 P" i
  1585. CPX #$07
    " g8 a) k+ V* I& v2 N2 D
  1586. BCC EQUBUL0 H/ u4 s! `5 \' A
  1587. RTS, K4 L7 u) j' u8 `1 b- p/ |

  1588. & k7 i4 @- O, r8 K
  1589. EQUBUL_PPU:
    . g' Y5 t# v/ ?& j( F) N; d/ P
  1590. LDX #$00' z1 Z. g) S" T/ I  `7 ~/ h. g" q
  1591. LDA #$29% y% W6 @# W" v0 x
  1592. STA $BA
    ( z6 l3 A9 I5 S) l
  1593. LDA #$22
    0 q6 x. V& K5 K; T/ B
  1594. STA $BB' q  |5 N' @6 b

  1595. * S2 H3 w  S  _/ F. s

  1596. ) _0 A. ~4 f& |( o* ?
  1597. JSR A_PPU
    , E+ c# q  t2 e
  1598. JSR EQUBUL_WRITE
    ( s. a- c; I8 v: v0 B* g; B
  1599. LDX #$001 o. C1 u4 B2 D" E: o- c% V/ f; {7 `; ?
  1600. LDA $079F* N  J( P; H! D: T3 b) T
  1601. AND #$800 L4 Z' a- {0 k+ a7 N( V) E' j6 a
  1602. JSR ON_OFF_PPU
    # Z% P. v7 J0 a5 P2 y
  1603. RTS# s9 p) @  U2 Y, z- b' A

  1604. 4 B- y4 @) B2 X! F* O, q' ~
  1605. " B/ J" r/ l# b( Q$ D
  1606. 1 t2 W, T  T( L6 f
  1607. BULSEL_UP_STRING:" E$ y; x6 O8 G( t
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80' y) P) ]: D/ P' N5 d8 D
  1609. ; M. s8 Z; z9 x" \  ]
  1610. BULSEL_DN_STRING:
    ( I" b* ]& N# v$ B) ?+ c4 U4 X: n
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80& q$ x7 M1 b4 S! H" S4 j; K, n, c' k
  1612. % v1 d7 T$ d6 H
  1613. BULSEL_LF_STRING:
    * h' F) A! k6 Q7 Y0 {% `( U
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80
    - @8 o0 f4 H" h3 N
  1615. / Q' A, e1 D. l$ N" c# y
  1616. BULSEL_RG_STRING:
    ' B& B4 t; l/ m+ [
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80
    * O/ [% X: d) Y- t. S
  1618. ) L  M' D' ~' z) a" {9 z
  1619. BULSEL_B_STRING:! `! D( f" {9 T' \( ?% U, U
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80# d. Y- o% @, n; D

  1621. , q2 s) w0 N- g
  1622. BULSEL_A_STRING:% V: |, r- s3 X3 U% f
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    ( H/ L/ |* s+ B3 X
  1624. & u& P; |1 `# o8 Y& P5 [9 i

  1625. ' ~4 d- c; }! j
  1626. BULSEL_UP_WRITE:
    ' Z6 z$ F* v) F! ?6 S6 p  Y
  1627. LDX #$006 z. g" f( m5 r1 }
  1628. BULSEL_UP:
    ' ?4 J+ S0 D) ^. P
  1629. JSR PPUADDR_PROCESS
    6 R9 [  J9 g7 @, ^+ i
  1630. LDA BULSEL_UP_STRING,X# }4 Y. I: v5 l
  1631. STA $2007
    2 w$ G; l; ^3 p
  1632. LDA #$00) C) |' y: E% H2 q. P# p
  1633. STA $20003 ~) A% n2 G/ C- w0 f! j
  1634. INC $BA
    ) r( S8 t% P! S
  1635. INX
    8 V8 e; N5 C; U* Y; r
  1636. CPX #$09& Q' L+ T9 w0 _# R: i& B& [- I8 Q, m
  1637. BCC BULSEL_UP
    / x6 k1 j- L# x6 a+ g
  1638. RTS5 h8 b. j3 i! _
  1639. BULSEL_DN_WRITE:* d% d. u, U  Z3 k; }5 E. P3 b: q
  1640. LDX #$00, |# `* z& t3 K2 X) u/ y
  1641. BULSEL_DN:
    ! r7 _, n; l$ F& O; g& j$ q8 o6 h
  1642. JSR PPUADDR_PROCESS
    * [: _/ w/ e" m
  1643. LDA BULSEL_DN_STRING,X! |+ W$ g  u# b
  1644. STA $2007
    ( j. B! D5 ]9 r- y# F
  1645. LDA #$00
    ' p+ `& O  S. h7 E2 Z
  1646. STA $2000
    . I+ o/ g) y  T& [# k
  1647. INC $BA
    5 |7 g2 t5 t- @7 q# Y& A
  1648. INX) M  Q6 E3 i' k1 A7 k2 |' x
  1649. CPX #$09
    3 f! A9 |5 ^' O- W
  1650. BCC BULSEL_DN% [, c4 ]# m# Z4 F# ?
  1651. RTS
    * K) G* o1 F- D4 p1 v
  1652. BULSEL_LF_WRITE:2 I7 N$ Q4 j4 q
  1653. LDX #$00% T4 y8 o4 M% T/ c8 l% H
  1654. BULSEL_LF:# C: Y' V( S2 V, }
  1655. JSR PPUADDR_PROCESS( E7 Y2 ~" m) I/ s4 v6 G
  1656. LDA BULSEL_LF_STRING,X
    $ [" C8 B0 p8 \! ^' Z+ I0 u* u
  1657. STA $20075 b# u" X6 l7 u; l
  1658. LDA #$00* L0 C. F7 R$ _. z
  1659. STA $2000% m7 v! k8 h2 g
  1660. INC $BA- s! k. |, D' m5 `, z/ A1 u
  1661. INX
    ' M, V- s0 ^5 B# o- P0 `" D2 U% P( r
  1662. CPX #$09( A$ y- a  H; Q4 l4 U/ d
  1663. BCC BULSEL_LF) }6 o7 t- G% q3 C0 {8 t7 P
  1664. RTS, u" D' M& I( W4 Q; b7 R
  1665. BULSEL_RG_WRITE:' i+ c2 `% x3 B1 s! c
  1666. LDX #$00& Z- d, i) A& j$ }7 t# O
  1667. BULSEL_RG:. W! {7 s. V  V2 w  |4 L& Z
  1668. JSR PPUADDR_PROCESS) B. m( j  }- p: d- p
  1669. LDA BULSEL_RG_STRING,X
    8 b1 L: _7 o; f$ `" c- M4 P
  1670. STA $2007) p* U' u7 R4 `
  1671. LDA #$00
    ; ~, V- v% |/ X3 h1 f
  1672. STA $20004 A: M4 g2 b+ t( C
  1673. INC $BA
      ?1 Y( J/ b' ~- \1 [+ I, v
  1674. INX
    3 B8 O* @: I- `" W2 g
  1675. CPX #$099 A- d% Y6 R$ `
  1676. BCC BULSEL_RG1 K: r: C% l  T+ J4 d
  1677. RTS3 [6 O% _3 R0 O  ~2 q9 D& s
  1678. BULSEL_B_WRITE:$ O6 C! u4 v4 t$ G: B  G
  1679. LDX #$00
    $ k! ?, Y/ o! G6 ?# o7 J8 N5 v
  1680. BULSEL_B:
    * @/ V" d9 {+ p' E1 s2 W
  1681. JSR PPUADDR_PROCESS# G+ t  S/ r' O' I# r6 D
  1682. LDA BULSEL_B_STRING,X
    . D9 ~6 n: t, D+ D' S" Y: Y. V
  1683. STA $2007
    * |: Y% j1 ]; O& f6 u2 g2 y# q
  1684. LDA #$00
    3 k  u3 o4 X$ T( `
  1685. STA $2000! u8 X! J! O! i3 y- p5 s
  1686. INC $BA! F/ A+ r" O& O  z# X9 R
  1687. INX' k2 z% W' ?  c- d- o+ [8 U
  1688. CPX #$09
    ; H+ D' B: u+ h, C1 Q, ~
  1689. BCC BULSEL_B
    & s. h9 G( ^& ^
  1690. RTS4 g  |+ p, o1 h8 N4 `8 Z
  1691. BULSEL_A_WRITE:
    8 ?. ~/ P' b; a
  1692. LDX #$00) J- ]3 U) c, w" e, o4 h
  1693. BULSEL_A:
    : \0 }, C# H/ t" j: ]2 k) T3 y
  1694. JSR PPUADDR_PROCESS
    ' @% Q# H5 y! `8 b2 s% |' v
  1695. LDA BULSEL_A_STRING,X2 A0 o8 R$ |4 i' K
  1696. STA $2007
    # Z$ H! }: |/ N6 l: D
  1697. LDA #$00% u8 x2 w  P' W8 r. O* O0 m
  1698. STA $2000
    0 _- H! h, s6 L0 R0 h: i& o# |9 y
  1699. INC $BA5 v! o0 R# {5 P* m
  1700. INX- o" u& h. e, @4 U
  1701. CPX #$12; ?& I* V; P5 @) g8 R
  1702. BCC BULSEL_A/ n& P# K( u2 z  R
  1703. RTS
    5 X# l1 c' a$ X

  1704. ( X, M# {( Y& d9 l' g5 T
  1705. + O% ~! f1 Y& J, a6 }

  1706. / Y7 }$ O* A2 B( w3 |. J; i5 |
  1707. BULSEL_PPU:. U; Q" t5 H0 j8 u
  1708. LDA #$6C$ ?  m3 l! Z. E) r
  1709. STA $BA- R5 `+ J, s* c- E
  1710. LDA #$21( F5 Y& u' v2 Z$ @3 _* k  B0 ]' A
  1711. STA $BB! M) E, f7 k0 A4 z/ k* l
  1712. JSR BULSEL_UP_WRITE3 N3 ^1 F% G) m. \* W* X. |5 H: n- d" [

  1713. ; |. b$ R1 @' F
  1714. LDA #$AC' K& g: k  `, D* Y7 N
  1715. STA $BA% W. W0 n4 C5 P
  1716. LDA #$21
    7 I. m0 q- v3 P/ n! b) ?" A
  1717. STA $BB! U5 i9 w$ L2 r; }/ q
  1718. JSR BULSEL_DN_WRITE
      s2 T  j% K- \* N3 m: K9 U% j
  1719. , b' I. G7 ~5 ~( x$ x2 w
  1720. LDA #$EC' n& {8 Q) s: w0 Q* g# }
  1721. STA $BA
      R1 }* W1 R7 A5 O$ Q5 I
  1722. LDA #$21
    8 y* S$ W" M0 x; d' k3 ^8 k' L' N
  1723. STA $BB
    3 P$ `4 w. e6 v  \( X# i
  1724. JSR BULSEL_LF_WRITE: p2 l4 W7 y* B5 S2 v

  1725. ' e+ Q; T1 g1 u0 P2 X. K
  1726. LDA #$2C5 h1 E9 j5 T9 M1 H
  1727. STA $BA  N4 [2 Y4 B/ f
  1728. LDA #$220 L* t" g2 c5 u. f0 y) T% r0 e" P
  1729. STA $BB
    $ R+ S6 ]$ U) g
  1730. JSR BULSEL_RG_WRITE0 c5 a! S% x2 U; T3 U

  1731. 0 V; X; S3 S9 [7 `
  1732. LDA #$6C
    " R' N. F: \" Z* J1 D- f3 z
  1733. STA $BA
    9 u4 k' }/ f% H" v+ A
  1734. LDA #$22- u! n% ?1 M+ M; }! m  x' r
  1735. STA $BB1 \; {/ R& c9 s1 \! q0 V
  1736. JSR BULSEL_B_WRITE1 I# [9 z4 |& j6 [# |/ `  M! u
  1737. 7 p! F0 j  c0 i3 I- v3 C* y
  1738. LDA #$A7
    3 p! R8 T) t( `
  1739. STA $BA* l( P2 o& p' M' M7 }% b
  1740. LDA #$22$ b7 J# A& }8 K4 R
  1741. STA $BB4 N$ a* N: K6 B5 d  g- A1 [: }
  1742. JSR BULSEL_A_WRITE
    8 i- N1 ~6 [8 B
  1743. RTS$ u% D' Q" A* }4 P/ E
  1744. 8 N/ t* F* F8 Y/ Q. t
  1745. 5 L- b, a' T+ c' @, g; V

  1746. 0 x8 t5 x1 j$ O, o
  1747. UP_STRING:& U$ v2 ]# {" T& K5 Q. K  {
  1748. .BYTE $9F,$9A,$80
    " f$ O9 `5 E" e! W8 D7 y

  1749. 9 z. c' z% u' K5 J" ?: e& Y
  1750. DN_STRING:
    $ }. h' X; L) q! N$ x: E9 w/ x
  1751. .BYTE $8E,$98,$808 }( u+ r7 F+ h/ H1 ^3 Q

  1752. 4 H4 F0 M& u  z+ I1 f
  1753. LF_STRING:
    4 U  y; o) `8 Q
  1754. .BYTE $96,$90,$80+ V5 [6 I( P/ H2 p6 I: z9 }
  1755. # y. n' ~2 c; x1 N# S- I# J" s
  1756. RG_STRING:
    , I; b7 |: G5 `: G" z& z
  1757. .BYTE $9C,$91,$80! ^3 F9 `, X) j/ X
  1758. % w" T0 w: z* O) z0 q
  1759. B_STRING:
    $ {6 p, r8 N5 ^# m
  1760. .BYTE $80,$8C,$80" f9 F) b9 r8 o+ w7 j3 I

  1761. 3 Z! D; \7 H8 U9 O
  1762. A_STRING:: E3 b' d3 |% b' K: g% P
  1763. .BYTE $80,$8B,$80& X' X7 \" Y( s

  1764. ' W( K. Z. P- N- `! y7 O' V

  1765. - K, @+ [- i  f  g% |) A  O
  1766. UP_WRITE:
    $ H: B. ]) Y, ^4 |7 L
  1767. LDX #$003 G5 H# _7 z$ v2 o7 m4 m
  1768. UP:7 s6 f( K8 d) @6 @
  1769. JSR PPUADDR_PROCESS% i, [% ]# h9 _9 z3 c" y; J! `
  1770. LDA UP_STRING,X
    9 o, O7 w: i+ k8 V' W& T
  1771. STA $2007  ]( p: `2 v+ L& y5 G
  1772. LDA #$00
    ( E1 e" D* a( W0 {
  1773. STA $2000# \) w4 X0 o' y0 F# f! T8 B
  1774. INC $BA
    7 V# D0 J2 G9 S# T5 c+ {; B
  1775. INX
    + l. D0 b. N# \  e( R
  1776. CPX #$03
    3 T% u: g- Z4 i$ q* j" P$ ^9 x
  1777. BCC UP4 Y, r/ J- @- D0 V1 u
  1778. RTS7 C1 ]3 p4 r; D2 {

  1779. ! V! A9 M& N7 z9 c: G' P
  1780. DN_WRITE:
    ) l8 C# N* ?9 i
  1781. LDX #$00
    * L0 r! z4 ^8 D3 {& I8 e
  1782. DN:+ {' s0 u: v; z# k
  1783. JSR PPUADDR_PROCESS
    % V. e2 K+ t, f$ j/ I! N. h" ~
  1784. LDA DN_STRING,X4 j+ B4 ^6 x- ]; H% F7 |7 ]# x
  1785. STA $2007& W9 A* Y0 D% X( _
  1786. LDA #$00$ t7 M6 M& G! Z* k5 q4 i, q
  1787. STA $2000
    5 s/ Q* u' x) Z  a
  1788. INC $BA
    2 B$ u" K' w$ h/ R
  1789. INX8 d7 T$ W" P2 ^# W6 H; a
  1790. CPX #$031 }) l7 K5 N( w! E- j# A# c
  1791. BCC DN. S/ T, _" ]" G
  1792. RTS
    7 j5 q' b" y) A' H" O7 f* w

  1793. 1 R8 V3 g) Z/ r* |/ A  R
  1794. LF_WRITE:- w+ K5 u# D0 n: V  A5 h- g4 }% P1 _
  1795. LDX #$00
    ) }$ ?& Q0 l* N7 Y3 x; F
  1796. LF:
    . [$ k1 }$ b& p3 C( M* p$ `! X
  1797. JSR PPUADDR_PROCESS1 v' L+ w' u( {
  1798. LDA LF_STRING,X& y$ f/ z2 X' A0 p! g  T1 X
  1799. STA $2007( y. ?2 b8 v( d7 F
  1800. LDA #$00, T, v9 f9 e$ X+ N. Y. P* O
  1801. STA $2000
    , |$ S$ V2 Q6 t( j; ^1 a0 c+ i
  1802. INC $BA3 M) i+ O" ?4 I# l6 G9 [) k
  1803. INX! L3 k6 ]" ], E5 ]: i# u. E, k; v
  1804. CPX #$035 j; f1 W! L  p2 ^% R
  1805. BCC LF4 J8 D" b* P5 F2 t1 f3 k& F
  1806. RTS& d8 ~) v* P3 W7 c$ h

  1807. 9 ?  e! W. d' h7 S% Y% k
  1808. RG_WRITE:% T# P% N4 P4 W! T3 h8 |7 ^: b) z5 o
  1809. LDX #$00
    ( t" x/ q- k" |  F; K9 P
  1810. RG:
    . x  r/ {" r5 |( E
  1811. JSR PPUADDR_PROCESS
    3 S$ p: i1 Y0 v6 n' Z/ U: S3 B' v
  1812. LDA RG_STRING,X
    ( ?. _, G! f2 W6 M3 f! ^/ A( X
  1813. STA $2007
    : X" I! D- a4 {. @+ x
  1814. LDA #$005 I$ V& o1 W7 f$ C8 k& z
  1815. STA $2000
    7 Z1 p4 [& R) F. T- O8 X; w
  1816. INC $BA
    ! B9 m" y7 i4 w8 u
  1817. INX
    ! }. c+ A/ G. ^+ Q$ ]
  1818. CPX #$03' h' c( q  F: @
  1819. BCC RG& o( y  l; ?' `, D
  1820. RTS
    * i# c+ c- j& \% h# ?. {8 {5 o
  1821. 7 w. p2 C2 t' w8 ?
  1822. B_WRITE:  a9 y+ y2 w9 f8 ~. m9 M
  1823. LDX #$00
    : p6 H5 C& S- h. G6 x9 y) O$ u
  1824. B:
    0 O8 T: ?& m& o$ ]" x  X
  1825. JSR PPUADDR_PROCESS
    ; L* Y& a0 E0 A) Z, Y0 c
  1826. LDA B_STRING,X! K# O' D" `' L1 M9 ^0 \
  1827. STA $2007" F1 i; t  @& d9 `, p0 S- I$ L
  1828. LDA #$005 y. A1 A* V( v: _
  1829. STA $2000: l6 U' ~  G$ h5 d/ q
  1830. INC $BA. W/ g0 z/ v3 V& z$ s) B
  1831. INX
    0 L/ ]" b- U8 x. ]* K; G/ M% h
  1832. CPX #$03" u4 R& Y2 H- b9 M9 B. v
  1833. BCC B# T3 q- L" p; \1 T/ t: l! [
  1834. RTS
    # ~6 E' i, d8 o( b5 A4 e

  1835. 0 R, s) j6 A6 }& {$ A4 G
  1836. A_WRITE:' p7 @1 ~# s% g5 a1 x7 l
  1837. LDX #$00
    1 x; q. M' m5 B" d$ r4 x
  1838. A:
    + I/ R* r2 n! `' j, Q) y! t
  1839. JSR PPUADDR_PROCESS
    6 P; ]& d: w6 O* w8 V6 B* Z; M8 ~
  1840. LDA A_STRING,X  H, o/ d8 W+ z1 q5 n4 o5 R4 n
  1841. STA $2007
    & w  |+ O+ K( J
  1842. LDA #$00" G# j) V) E8 \
  1843. STA $2000
    9 h6 `* P7 Z" Y4 O  M
  1844. INC $BA
    ) S: P# K/ G" L: h' D9 G# P% e
  1845. INX  |% E% h6 T3 m8 R" ^( v- N
  1846. CPX #$03
    . {/ z, s- |( x! k) Y. W! ]
  1847. BCC A/ m. v& ~6 U/ |  E
  1848. RTS4 `& a' t, `: B- J) w# {( f

  1849. ' o3 I9 s% s) M) t+ l

  1850. $ u! Z# L1 \/ ]: x7 P2 h
  1851. UP_PPU:2 q: I1 W* K* M" D$ `1 ?' w0 V
  1852. JSR UP_WRITE& `8 f' ^1 ], C+ Y/ L
  1853. RTS+ F/ M; j' c: H% f/ ~
  1854. & q! e- {+ |0 N1 d% `/ k
  1855. DN_PPU:
    2 h& n2 ?, y4 [- [/ A
  1856. JSR DN_WRITE; X4 N' e0 B: B/ k8 x
  1857. RTS
    " s9 Y3 Y- ^$ v& K; [% ^

  1858. " n2 O6 s- f1 J# |4 A4 P% ~% J
  1859. LF_PPU:, ]" D( V, Z( Z0 F3 {
  1860. JSR LF_WRITE( n6 z& M! F0 I2 T
  1861. RTS' M3 M! i: j9 n- L5 J8 O7 h! W
  1862. . _) i8 K# r7 B
  1863. RG_PPU:; B3 [  J0 ]& U) y
  1864. JSR RG_WRITE
    2 H' ~0 Y0 j! u- _( b" E
  1865. RTS
    5 P' b. n( O# i, M! D5 J" I
  1866. " L3 v/ D* P9 E" Q7 x
  1867. B_PPU:+ C. `+ W  c  d: x5 w( f, N: q
  1868. JSR B_WRITE
    9 u9 J& T/ t, E, L
  1869. RTS6 U  S1 D5 k# j& t3 i" f

  1870. " _/ o  j% ^; d0 I
  1871. A_PPU:0 u: E( U' e0 i5 ~& C, B) {
  1872. JSR A_WRITE
    : r8 z+ P/ `. X' R
  1873. RTS
    " A7 R+ p6 o3 Q; S* {2 \
  1874. 3 O6 B3 X: h: X& D! @6 C

  1875. 1 W3 c$ ]0 C6 e2 y+ G
  1876. PAGESELECT:
    0 t- K' z1 |+ ^' d4 w0 p9 p
  1877. PAGE0:1 Z! Z, v( C" [! P9 s
  1878. LDA $07AA1 w% c) L+ I$ {: j& V$ C
  1879. CMP #$007 O& b7 {: B7 \  t& {
  1880. BNE PAGE1* z& A4 y6 j- x  F. y4 r+ A

  1881. 4 Y$ n2 B# \8 M5 Z
  1882. PAGE_00:2 z+ f5 {0 C/ F' V. s4 B* @- v! [) d
  1883. JSR BULSEL_PPU
    $ Q/ @+ J! J! t  d
  1884. RTS
    " G+ k! }9 S' `  t( j

  1885. 2 u& D1 I4 u- m: T
  1886. PAGE1:
      g, f1 L; a6 h7 \& L, ]
  1887. LDA $07AA$ L7 A& r* W6 {, P9 X9 F) C2 U6 D
  1888. CMP #$01& _: {( \9 _1 O
  1889. BNE PAGE21 c; }% S# q/ p# X& |5 Q6 }( u

  1890. $ Z2 m5 ^: e1 P8 L
  1891. PAGE_01:
    4 A" t2 l) e3 ]1 r
  1892. JSR INVINC_PPU
    ) S$ J6 |, t3 ]" K
  1893. JSR LIFELC15_PPU
    ) G, e% {+ o% Z. a+ L/ h  i& K$ e. H
  1894. JSR DOUCON_PPU: j2 x8 S* P0 x& h9 s4 `5 K( L
  1895. JSR KILLON_PPU$ f# f( k. ~" P) y6 }
  1896. JSR SKYFLY_PPU
    ( B" B+ J- z0 k
  1897. JSR LIFELOW_PPU/ H5 w: o( |1 d9 D9 O/ F% R  ]% `. f
  1898. RTS
    % M0 n% y* w+ W6 X! h
  1899. ! w2 D' {/ L4 o7 c7 Y4 t* S; s
  1900. PAGE2:   p+ S" [5 j- f; w) M
  1901. LDA $07AA8 I; O4 Y) k! M5 q8 i$ g
  1902. CMP #$02
    - f% f( \1 S# u/ f& Z* Z
  1903. BNE PAGE36 [, }( s4 p: |* p' l, d) S: |

  1904. , w- J/ J  E4 w$ k. d
  1905. PAGE_02:
    7 v4 I+ ~" j+ p5 V
  1906. JSR BULADD_PPU. m  J# {' Y3 m
  1907. JSR SKINGE_PPU- N6 N0 c9 U1 q% Y& `
  1908. JSR BULMIX_PPU; N/ i& e* `6 K3 a# a$ E0 m# J2 S
  1909. JSR ENELOC_PPU9 V5 K/ X+ [% c- a
  1910. JSR FOCFUL_PPU
    + v$ x5 y; g, j- j
  1911. RTS- V) K7 [8 S6 k2 D7 a+ v! A4 j- A
  1912. 2 U' @7 d# W7 l8 Y: p6 E0 i0 x0 x
  1913. PAGE3: ( B+ `  ^8 d& x0 h! R
  1914. LDA $07AA3 C, C( O; Y2 R3 M
  1915. CMP #$03
    ; \# Z3 }, S6 l
  1916. BNE PAGE4. A1 y+ J! I3 ]8 z
  1917. . p/ n" h/ E3 V- u& N& P& l+ c" m
  1918. PAGE_03:2 v+ c+ X0 D! D7 I! N) S  C2 o
  1919. JSR BULCON_PPU% i5 @$ o+ R1 J
  1920. JSR SPEBUL_PPU
    & i# E. X; \# K+ P* s
  1921. JSR CLEALL_PPU% R; W' [- S( ~; f7 p5 k1 ~
  1922. JSR HARDMODE_PPU  a- V  }. n* e$ N$ k
  1923. JSR B_TO_JMPSTG_PPU: L/ T; v/ a$ P" O& E: S1 H
  1924. JSR A_TO_PLAMOD_PPU8 w) O$ n; f: P4 ~9 @
  1925. RTS
    ! [0 ]) [4 X4 g9 ]  J
  1926. 3 h( L& F: U2 O+ M5 V4 j+ b# X5 t
  1927. PAGE4: * n1 w: x0 o5 w6 d, u6 d# E* c, @
  1928. LDA $07AA
    2 V6 j1 Z% J5 y
  1929. CMP #$04
    / V0 z  D) C# x( s' a, _/ q/ X5 u0 C
  1930. BNE PAGERTS8 y8 ]- J1 L; Q; Q/ G
  1931. 5 c8 F+ K4 p, F% {" k" ^
  1932. PAGE_04:, x$ z* e6 z9 u  c6 ~) @$ H- N
  1933. JSR MOVSPE_PPU
    4 z" _4 A9 _( P# G
  1934. JSR UNLJMP_PPU0 l' \4 @% J" D3 A, O0 _
  1935. JSR DESTRO_PPU, U& Q% X4 G* [6 y+ ~7 e
  1936. JSR EQUBUL_PPU
    ! v- _; [% d& v9 T6 c
  1937. JSR MOVESPEED_PPU
    & F. v. E2 `4 h
  1938. PAGERTS:) O; s1 F: Y( l" G4 u2 r0 m
  1939. RTS7 b# B/ R* r) e7 b; |0 F- ~8 v
  1940. , n2 H8 Z4 E4 o
  1941. 2 P9 F1 o! o% V; p2 ~
  1942. PLAYER_01_STRING:" l/ H' a; Q! L9 |+ d) g
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    1 G, @/ T3 M& Q+ g$ h

  1944. - `$ m) C2 c+ j5 t; v/ i
  1945. , |$ R4 W3 [0 M
  1946. PLAYER_01_WRITE:6 j7 O, Q. P" Z- ^1 w
  1947. LDX #$00
    6 i' m7 ^4 e7 a& y' B. X
  1948. PLAYER_01:
    2 m7 {% `7 i& s4 g( d
  1949. JSR PPUADDR_PROCESS6 B( G$ s% g( J& }9 R/ ?; W5 K
  1950. LDA PLAYER_01_STRING,X
    , F2 m/ V! C6 \6 o4 _( z) t8 ]
  1951. STA $2007
    / ~* O" s' S0 [  `
  1952. LDA #$00
    " r7 W) Y, u8 b' r  Q: g
  1953. STA $2000
    ) P$ F! h2 J/ \5 `- s
  1954. INC $BA
    # S7 F$ q/ |" f3 x# o; u
  1955. INX
    7 p2 W, T7 w5 a. |5 c
  1956. CPX #$0A
    3 Y9 l( K  ~+ E0 Q& l$ ^2 O" X
  1957. BCC PLAYER_01' O$ I! E7 l' ?, K4 z
  1958. RTS
    - O# a" |- \2 j7 U

  1959. " }5 C) o" d  y- }
  1960. PLAYER_01_PPU:
    / r2 L5 K, q' R% v, x
  1961. LDX #$00
    6 h7 q% J7 J: y% c7 H/ V
  1962. LDA #$649 v% O( B7 f( i6 B: j# F
  1963. STA $BA1 N. r  }  d1 b0 Q" ^" \
  1964. LDA #$20
    , Y$ t+ \6 [( k6 Y* u6 s
  1965. STA $BB) \/ G. m- R# _, T$ \
  1966. JSR PLAYER_01_WRITE1 ^$ r4 w' N+ a# m$ c% B
  1967. RTS
    8 C) j$ b5 t+ e! P
  1968. 8 Z( `& G5 F4 X
  1969. PLAYER_02_STRING:9 C4 x8 k$ A- [  N, T* U  K
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80. X) G; c* ?" `6 ~; X1 _  t
  1971. & {, P7 P2 _* R7 P) d" ~

  1972. " S) a( m* B, T1 x' y& `* o
  1973. PLAYER_02_WRITE:
    " a- ?! V# ?  C
  1974. LDX #$00
    1 A) g' X# N3 k* V% N. e
  1975. PLAYER_02:
    " N) X+ ^7 S5 y$ }0 O8 h, V
  1976. JSR PPUADDR_PROCESS5 `( \+ w8 r  m" `/ W+ E1 t6 _
  1977. LDA PLAYER_02_STRING,X1 a3 ~* c! j7 w8 Q; ]
  1978. STA $20072 y; {% Y7 }+ d; s. d3 ], F& W
  1979. LDA #$00
    . v0 g* V0 x+ u& c; S+ l
  1980. STA $2000
    ( {' }2 V# W! C5 ?1 I1 G2 N
  1981. INC $BA
    , P' ^) j7 v5 V" j- b3 D
  1982. INX0 m5 x; z9 _( \& `8 t
  1983. CPX #$0A, A- \. t" p+ H& r
  1984. BCC PLAYER_02  j- k0 l0 j% [5 A
  1985. RTS
    8 y) e; h% l: W7 p- A7 i/ `

  1986. 1 C- a* S. e# z+ h
  1987. PLAYER_02_PPU:0 r0 J' g3 b) b% s: U2 b% o1 O
  1988. LDX #$00: `& J+ z" ^( q0 `6 A+ _. I
  1989. LDA #$73/ H- u1 _2 E9 l4 y- Q. ?  V% m
  1990. STA $BA2 _0 @1 s% v, @$ c8 E
  1991. LDA #$20" h% e2 K9 y& I/ Q2 M
  1992. STA $BB% m( Q. Y0 A+ d7 X+ v$ M! {/ y+ t4 o
  1993. JSR PLAYER_02_WRITE
    7 A% O/ j% u  \+ j% N; w7 J
  1994. RTS% ]3 Z/ Y8 j% b% G/ h) W# B

  1995. * k) Y, H2 y9 j7 e: F
  1996. PPUADDR_PROCESS:
    3 w# e5 n. L, r+ q8 ~/ I
  1997. LDA $BB- H- T2 J& y/ Y  P
  1998. STA $2006
    7 C- |) V9 J+ h- Y: q
  1999. LDA $BA
    8 f. A& @% T9 y  c8 y: `1 ]
  2000. STA $2006
    9 e8 a$ \8 `% S$ k6 @
  2001. RTS# l% n; |; i1 r. M# x
  2002. & g' q& w* |" J. P- ~/ W/ O8 _* A/ @

  2003. $ N( d( g& J/ Z  }/ e

  2004. 7 l: }, I- ^2 o% m: M: R0 i6 O
  2005. ONE_STRING:
    % R$ {' I# A) c% n6 u6 e  t
  2006. .BYTE $99,$98,$8F
    : r+ K& l9 k! `$ G
  2007. $ f0 F) u: d8 A) F" n2 D1 {: E
  2008. TWO_STRING:+ G6 O0 w7 s% b' B( R3 V& z' t; d
  2009. .BYTE $9E,$A1,$99
    ; e- R5 [( |6 m3 u& m4 R
  2010. 4 P) o- ~" u( F1 v; I' N* Q: o, n
  2011. ONE_TWO_PPU:! X' }( d0 v1 {- Q- M* `# A
  2012. BNE ONEWR( V. L6 J9 l/ U$ l3 x
  2013. TWOWR:
    & [" C8 D8 ?7 V5 P$ q; t
  2014. JSR PPUADDR_PROCESS
      W9 K+ K+ u1 k" z8 f6 ^
  2015. LDA TWO_STRING,X/ _3 u# H4 R  T  j% b) t  m) x
  2016. STA $20075 [+ g* c! s- U+ A& ~" e9 n: S
  2017. INC $BA
    : N; F, ?4 ~4 ~' N& S
  2018. INX: Q, R3 S% M: q
  2019. CPX #$03  A4 y* r- L8 n) G! V
  2020. BCC TWOWR
    + R8 E# o$ P: H$ [
  2021. RTS
    9 N3 {& ]+ W) K+ P, {
  2022. ONEWR:
    / I" y0 P; e) B1 G# J9 ~' q6 P4 H+ I
  2023. JSR PPUADDR_PROCESS" W% k& `" a& A7 {
  2024. LDA ONE_STRING,X( U# d! ~8 x0 m5 I
  2025. STA $2007
    ) B4 Y7 P  G. b5 \- W" d
  2026. INC $BA/ m0 B, C0 T5 z. W+ T9 m4 Q/ B8 O6 j
  2027. INX
    1 ]' v: J4 t) E
  2028. CPX #$039 A( y' ~6 m: a* T: V7 k
  2029. BCC ONEWR
    + d; E! ~$ j! h
  2030. RTS; {+ V# E' I4 U0 D" D

  2031. : g3 P9 |+ X7 p0 y+ O
  2032. MOVESPEED_STRING:" P; K/ D$ {( A/ y* Y) }
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80* b( Y' R( [; |& ^
  2034. . w6 H+ M2 o2 F5 H6 W

  2035. 7 Q) e$ r5 C: s
  2036. MOVESPEED_WRITE:% r: G9 f& A" i9 [
  2037. LDX #$00! w6 m# {. _! U3 x- L; E2 q- w1 J
  2038. MOVESPEED:! x0 }5 ?. [- \" X' b$ N: \- A/ K
  2039. JSR PPUADDR_PROCESS
    * f# o. `- s9 x% ^- H- U  e6 [6 v
  2040. LDA MOVESPEED_STRING,X
    $ Y* ~; J3 o* P3 S+ |+ E
  2041. STA $2007% D# T7 T) M7 @% ^7 P
  2042. LDA #$00
    0 V+ u2 o7 h8 [$ z7 n- k
  2043. STA $2000, Q/ r. u% R% x: X
  2044. INC $BA6 b$ j$ b' c0 d, [' x6 t
  2045. INX
    ; P8 s: t; J" a6 s
  2046. CPX #$0B
    7 @" e6 a& A. N5 b) C
  2047. BCC MOVESPEED
    . l, Q4 _( `6 Y9 M& S
  2048. RTS
    * c7 L% B# u$ x+ o
  2049. 9 x7 L6 \2 a+ S# y, O; z* B
  2050. MOVESPEED_PPU:2 X, O* ~; |' `, P' ?. y0 U
  2051. LDX #$00# u. }8 r& p& H$ d0 {0 u2 t' ^
  2052. LDA #$AA" o. L. X: [0 O4 T. e& [
  2053. STA $BA
    5 ^8 t- v6 U$ w/ b) ^) t5 i7 H( B
  2054. LDA #$22+ X6 K! t* I6 c0 c
  2055. STA $BB
    / q3 ~, d" z/ i& a3 |" _+ d
  2056. JSR MOVESPEED_WRITE
    . Q9 V9 A. q5 f! y' Y, m# W7 b
  2057. LDA $7003
    & [$ E+ `9 @7 v
  2058. CLC5 K+ H( Q0 [9 n  C1 S$ m7 ?
  2059. ADC #$82
    $ B, i) {% A4 ~
  2060. STA $20076 A, |, r( |" q+ \! i" g
  2061. RTS
    6 `& X5 A" V. x' Q2 l
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 550 天

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

签到天数: 3263 天

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

签到天数: 2364 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

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

签到天数: 2367 天

[LV.Master]伴坛终老

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

签到天数: 2381 天

[LV.Master]伴坛终老

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

该用户从未签到

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

签到天数: 348 天

[LV.8]以坛为家I

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

该用户从未签到

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

使用道具 举报

签到天数: 15 天

[LV.4]偶尔看看III

发表于 2025-3-16 20:07:05 | 显示全部楼层
谢谢制作,辛苦了
回复 支持 反对

使用道具 举报

签到天数: 924 天

[LV.10]以坛为家III

发表于 2025-3-16 21:54:53 | 显示全部楼层
謝謝大大修改及分享!!
[发帖际遇]: ray_juan 打扫环境卫生,被奖励 5 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 37 天

[LV.5]常住居民I

发表于 2025-3-16 22:21:43 | 显示全部楼层
看看还能下吗
[发帖际遇]: zxnm1957花5 个 柠檬买彩票,血本无归T_T. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 387 天

[LV.9]以坛为家II

发表于 2025-3-17 09:51:47 | 显示全部楼层
这样按到后面 似乎要头晕了~~哈哈
[发帖际遇]: 一个袋子砸在了 woshibabala 头上,woshibabala 赚了 3 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 16 天

[LV.4]偶尔看看III

发表于 2025-3-17 15:36:20 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-6 00:35 , Processed in 1.103516 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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