EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 : G; Y+ H/ F) g* u! V& r& r5 x6 ?4 `
9 n  }9 O; F. o2 U; t4 t7 w
     [FC][魂斗罗旋风终板END暂停显菜单]

, w7 E$ R4 X0 N$ \0 q: A( K作者:FlameCyclone(flamecyclone.ys168.com)' v/ E0 _6 |1 ~& J: C
时间:2016/11/19 21:46:00
, g0 ?# M, y6 W5 ]$ _' I& p' M更新日志:
) t( O9 e6 n% @* H: ]& W3 Z2 ^
2016.11.19:加入暂停显菜单(共5页).
, P4 w3 d+ t( O* j2016.11.12:加入无限跳跃.: T0 \( p0 f$ \; F% C1 @1 e
2016.11.12:加入速度调节.

3 B; K+ P  Y# S6 d2016.11.11:加入敌我子弹对消功能.
  G- j# X1 i# H9 |1 L1 h2016.11.11:加入全屏闪灭功能.& [( d+ x9 K7 C, P9 N) ?
2016.06.08:加入全屏瞄准功能.
2 H6 E: u. @. c8 F2016.05.31:加入弹速调节功能.# s0 M5 C0 t) A0 p: O. B& T
2016.01.01:加入高难度模式.! {- g/ l* V$ s2 i; O3 u2 l" c
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.! D2 K( u6 Y% h% l
2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.# y& k6 j7 Q5 x  _9 e
2014.07.05:双人切换功能优化.
, f# H4 q% M3 z7 L+ D# W2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦." H: B! H2 `9 N8 R2 y
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.
; {# ?& y/ k0 P: J2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通., b* B- o0 C) Q* g; L6 Z
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.# m, A* s0 `0 `& u6 L; D
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
0 h0 I1 [" R  H2014.02.13:加入自动演示通关.
  m5 R! J3 q7 k& H$ C* o内容:/ \8 u. _' J! X' {" b8 H
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
5 x0 H9 Z' [+ q3 ?3 T22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.% f( z8 C4 C9 X
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
5 I- t  B4 ~- A
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.7 H4 h7 T! Z% x/ _4 L) d
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.: C1 H5 c  z6 x( d- d+ S/ g
18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
2 O) r# k# t2 C7 w# K17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.
" U* o/ r' G5 h1 ?1 ~) K16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
4 J3 X! w+ W& D  Z01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
& d- @% K% I9 T02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌." b, a. `2 m( Z( k& r- M6 V$ `/ D
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.1 \2 _! Q9 M% \# p
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
" ?1 B8 _( ?2 E6 _1 t05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条./ }/ M1 Z& ?# D1 Q1 n$ Y
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.$ N0 |3 q# {/ v
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.
) P, u: ~4 i2 t" V. r08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.7 s( {6 R) V, }5 A
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
0 o& O  s+ P4 w" R: `10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
7 X8 ^1 ]* r8 _5 T; z. U! p4 y! b( }11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
1 i$ B, X0 U) p/ B12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
5 c+ r4 G& @8 j13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.; T: D1 I. z1 ?- N) }4 J" ~. e5 g
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).6 S9 ?/ J  H6 J# Z: f
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。  X. y+ D9 \$ J. S
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
9 ]: F+ g$ Q' U! N3 y, {6 a+ QB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!3 E4 R+ D( D% f" R
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.& I2 j: K5 I) R" y: G7 d
1 y. _0 Q: Q& n9 E5 Y# ?
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)0 ~2 q: p  m4 F" t6 o8 s
欢迎大家转载,转载时必须注明出处.3 Q2 m7 }- G' Z$ E' `  ?

% Y2 a  E: m; F
游客,如果您要查看本帖隐藏内容请回复

3 G: Y) D/ Y" s0 p- V' H7 \% ?# Y+ N$ m' W0 M) q9 v
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
, q$ S5 Y" F' j) ^9 ]! \: i这几天的劳动成果如下:
  1. .ORG $B400
    $ h; T' I2 D( o8 S1 T
  2. 6 K/ W& ?: B# i

  3. . B# m1 B8 m( W( ^7 N& ?7 }8 T  [
  4. PROREG:$ D! E. P0 C) \) O1 w& e7 N
  5. PHA, e0 S) B- q: r, j( r1 e
  6. TXA" D$ R( f7 X4 s- Q1 S$ O
  7. PHA
    % A/ d# [+ m1 r6 [9 f& V0 w
  8. TYA
    $ S& @" p! i% i
  9. PHA
    : o' q  E6 E9 E4 r8 b- j0 }
  10. LDA $25
    5 O, B0 p9 @+ ^4 Q% |- q2 N$ S
  11. CMP #$01+ V3 [' \2 l% }) r$ H/ a
  12. BNE RE
    $ T6 n! x% q3 T; f1 r1 P
  13. LDA $010A
    0 N0 r4 R* U8 N
  14. CMP #$006 d) U  \) G  z; X9 a
  15. BEQ P1
    ) x( p8 _0 K6 h, ]* Y! ?
  16. 5 X; T& b8 c' [) Z* \* d+ y
  17. RE:, q# W; D/ u0 n0 }
  18. JMP PPUWRITE
    / U5 s; \% S+ x) R2 t1 }
  19. 3 G) T1 R. ~9 h
  20. P1:                ; 条件判断0 C" q# C8 V# s1 v. q
  21. LDA $7FFF6 y2 `; Y6 ?4 p/ z3 E( d
  22. CMP #$FF4 m& I1 e! f# I
  23. BNE P1RP" n3 L3 f% E" i  C* e+ r/ h
  24. LDA $7FA08 a* {; V: g1 p  _6 W
  25. CMP #$001 u7 F  J0 @: [1 S8 \  z$ t
  26. BNE P1CMP2 a) ~! Y  U" W, G$ B8 P
  27. LDA $2001, o' f" v; P- k$ h6 l. ~$ D
  28. PHA
    3 G0 o/ i7 |/ ]* C# e9 q3 U
  29. LDA #$00
      c* ]/ H- t7 L+ t0 `
  30. STA $2001
    7 _/ I! f  W+ i9 m7 ]: w
  31. LDA #$FF( e: d/ p0 {7 L$ u$ {. @
  32. STA $7FA0. y8 a# Z+ r5 ?7 }1 B; {
  33. JSR CLEANA, k1 ]7 z0 j  I' `# K1 V
  34. PLA; W& h1 Y2 E) I9 l% a5 Z
  35. STA $2001! M9 t- c. }( q
  36. JMP PPUWRITE6 p- \) T2 Z- }$ o2 _" @8 o
  37. P1CMP:6 a9 ^" u' ~! ~
  38. LDA $7FFF" U  B6 l3 J6 C9 N) L- i
  39. CMP #$00
    - m3 d. n# ~  @  u, |$ ~& M4 W" {
  40. BNE RE
    * s7 \* b2 R: r. H9 v
  41. P1RP:( T) B9 E1 n/ @0 @7 y
  42. LDA $2002
    * j% p( c% Q5 }
  43. LDA #$00
    3 ]) \2 C$ u: i  ^
  44. STA $2001
    1 k" f1 Q# t/ q, |# a! a* ?+ c
  45. LDA #$FF
    9 N) d& \. b* ?8 u' }
  46. STA $7FFF
    3 H- \- |* Z* B, @: K8 M! y
  47. STA $7FA0
    8 @- Q# u) \! i, o
  48. JSR COPYPPU8 E% e' P4 d4 ]4 W0 M' K3 h6 T/ I
  49. PIRP2:  h+ t$ H/ z  Z0 C' N
  50. JSR CLEANA$ o* ?! _. g1 x. x# p1 u
  51. JMP PPUWRITE1 Z; g, Y: w/ p9 u0 e1 v. _
  52. . T% N& [. D' j# _/ v: n/ n
  53. COPYPPU:9 q. e( v; |  E* g. w2 ^1 ?
  54. L0:6 h+ k  Z* m' e  R
  55. LDA $309 f! W, o1 w$ y) \/ l
  56. CMP #$02: F' M( K0 [7 o, F- u* m, U* C% o
  57. BNE UNPROFC
    / h* u2 @  h5 q. f& ?# q
  58. LDA $FC
    + b4 e) Q3 i- N) J0 v$ p
  59. STA $7EFC
      C% K% @- b7 J3 m* f2 f' W! S9 C" x
  60. LDA #$00. m% G5 B6 h% D" z2 r
  61. STA $FC
    8 h+ f& T) R7 Z& D1 m
  62. UNPROFC:& Z( R# e% L  O  a- u$ c4 ^% l2 E
  63. LDA $FD
    2 s9 Y6 c2 J- q! d1 P; J
  64. STA $7EFD5 X% q4 o" B0 R7 a
  65. LDA $FF
    - J" y7 C/ g8 w9 ~& T) H7 [' O
  66. STA $7EFF9 C+ q& u+ a6 |6 \# N# n5 v  t  X
  67. LDA #$00% m. |- {5 k5 s6 \# \* v
  68. STA $FD% B) [3 C, A' s4 D; x) u% X
  69. LDA #$B0
    # `. V& Z* }! `( M. n% o7 N
  70. STA $FF& v/ X% F2 Q; _) g
  71. LDA $07C1
    ( E/ ~8 z! W* y- J8 W5 d6 n- g
  72. STA $7FC1  }3 M+ r* N! @6 W
  73. LDA #$3F+ S& h% t! o$ q! H, _8 Q4 t
  74. STA $2006
    0 |1 `- J1 k( U8 @: ]
  75. LDA #$01
    & J9 {! x) E' D, U! a( T5 i
  76. STA $20066 u( k$ c4 g2 o* u( E/ C% n
  77. LDA #$24
    9 N" T; H8 }' [+ a$ e7 W
  78. STA $2007
    # w; v; \* I1 X- \
  79. LDA $07F6
    & ~: Q2 D+ C" e( K, E
  80. STA $7FFE5 ^! C/ F7 F" r# z, Z) X
  81. LDA $00FE
    # V/ J$ v9 p" L8 I3 ?
  82. STA $7FFD. }8 w. X5 e5 y1 r% l6 A
  83. LDX #$000 S. C3 ^7 N. S) B% i) @0 B
  84. LDY #$00
    : Y. a- @! S6 S, `1 c9 B5 l% O8 g6 y
  85. LDA $BD& D: S) u, A% k' m+ x. ~
  86. PHA9 p6 q" ~8 ^: N% D
  87. LDA $BC' e2 L, r" D- r. _* ?
  88. PHA
    ' m* \; _* M) s2 F5 P5 y
  89. LDA $BB
    " ^# R/ L& ?: _4 I. N
  90. PHA, I, T: U6 `0 `2 W4 X5 w. ~/ W! D9 k
  91. LDA $BA
    * j, V; x; a/ f% D4 U' P
  92. PHA( ]& N- y, ~+ N+ o
  93. LDA $B9
    1 K: L* \0 f1 P0 m8 H
  94. PHA
    2 d5 J* j: @- `
  95. LDA $B8
    * A! P4 p8 M( O+ ^
  96. PHA" P0 M. O0 D+ E# i6 c
  97. LDA #$007 h! m2 i0 A$ L: b( R  F" F
  98. STA $B82 Z2 N! @0 j! {0 Y% l3 D' c; X+ Q
  99. STA $B9
    & D9 J0 W: X; N# D0 p8 T
  100. STA $BA0 F. @( D8 i; v. s' L5 N, F; M2 n
  101. STA $BB
    * x4 @& ^3 q6 d6 S
  102. STA $BC, l( Z" F% @0 d1 P7 a6 P
  103. STA $BD& j7 E# X9 n5 ^: ?
  104. LDA #$00! k$ g0 }, ?! H& O8 Y4 K. c5 ]
  105. STA $BA1 |/ i9 ^- E/ R5 j" X2 }& T
  106. LDA #$20
    " ?* j  o' u" H0 `6 S
  107. STA $BB
    $ e4 E* J& q* D9 R& |
  108. LDA #$00$ y" z# ]6 K! v3 j5 h5 K2 S
  109. STA $BC
    8 s5 c4 V, x& b1 ], l! J
  110. LDA #$609 N. G+ Z" }/ i# U7 x- d
  111. STA $BD
    1 e! X8 L9 p9 k4 r

  112. ; [) w- T* [( c( M
  113. L1:                ; PPU复制
    ! J  `3 B$ A  ]2 O# b
  114. LDA $BB
    1 J4 l9 K% y% G: s. A& |
  115. CMP #$30
    : l0 n( E8 v: y4 s
  116. BNE L2
    1 @% A$ A* @0 C1 X7 Y; r' s1 b" G
  117. LDA $BA
    4 u/ x' b' e7 y' I) M
  118. CMP #$00& H( y  ?  a1 E5 B1 V) s: h
  119. BEQ PROADPLA
    # ~. g$ S0 |5 `$ w

  120. ( P, s% h) {7 }$ i- S; r7 `
  121. L2:
    ! R) c% M# {# q! p" w
  122. LDA $BB
    6 }; f  W' q- Z' C) s1 v! W
  123. STA $2006
    # f, G$ l& g: P: i  p( g$ Y+ M
  124. LDA $BA
    . @) D; x# c& K" a6 j
  125. STA $2006
    2 Q* `0 s/ ?6 j) B2 c2 D
  126. . [1 a8 a5 S; g9 ~, v3 M
  127. L3:* V: X; ~% x; T9 [$ x  G; N$ H
  128. LDA $2007$ @- |" A1 N* }: ^9 F. y  a: @
  129. LDA $2007
    , \4 F( Q8 u) V8 D
  130. STA ($BC),Y1 u) r2 Z& J) N' S8 _
  131. 3 ~; h& `" n7 r; `  x/ g+ i1 v
  132. L4:2 ^6 q: }/ Z) A! E
  133. LDA #$00
    $ b( s" v. y, `3 i; |
  134. STA $2000
    3 W% Y) o% m- ]. v
  135. INX' W" \7 b$ I- P1 F
  136. INC $BA. I, N/ U1 c1 O' J, }
  137. INC $BC2 r: r% f2 j$ s4 ?+ D5 A, K  P+ B
  138. CPX #$00$ n% U/ t* X0 E$ O! ^+ \1 k- ]1 m9 P
  139. BNE L1
    ( Q3 J4 e- @7 w* V1 A3 t9 w
  140. INC $BB3 o( k& Q& a# Z5 G" @# r3 i: i
  141. INC $BD
    ( ^; ~0 ^, g- e
  142. JMP L1- O/ }, N0 Q  k2 B3 j( a

  143. 6 g2 _# s4 Z$ l8 {/ P
  144. PROADPLA:                ;出栈
    , G+ o/ Y7 f0 f! f
  145. PLA
    + K6 F2 |, I, A8 Z2 ?, A9 U) J
  146. STA $B8
    - }7 p- O2 R4 u9 x0 Q& Y
  147. PLA; o5 L! v/ k, ]# Q3 z
  148. STA $B98 H& l  }3 M0 `0 z
  149. PLA3 U( Q% X1 Y5 S* l6 V. l) ^0 p
  150. STA $BA
    $ m$ T  `' a+ p  w) l0 ?
  151. PLA" V5 E- M2 A9 m
  152. STA $BB3 q% L0 k5 B/ Z8 s9 [+ T* w" j% C
  153. PLA* @1 S  L' Y1 F. i& V
  154. STA $BC; j# a5 G  ~# l$ ], |1 S  p$ M
  155. PLA
    1 N9 h5 s" E: _5 x
  156. STA $BD
    ' g; d) ?5 {% {( R' g! O' E2 L$ a
  157. CPRE:
      H, X. h6 U( V% @' D2 q
  158. RTS
    ) `' d! C" k; i& w. q' R8 v0 Z

  159. 7 q, Z9 m- @; B& P
  160. CLEANA:                ; PPU清空
    % x7 e9 T* d. A: P
  161. LDA $BD
    + B* ?: Z4 m' |  r0 f
  162. PHA9 V# v5 C0 S. e) T
  163. LDA $BC
    5 \2 `( I1 k! ]$ m) Q
  164. PHA
    8 G, Y: B& r4 c/ B# E6 M2 h8 k
  165. LDA $BB
    . D9 Q; ?' y/ C9 X' G+ Q0 P
  166. PHA
    * j: r5 k1 m3 X  v# y  h; B; j; B
  167. LDA $BA
    $ S( f2 N  U, }
  168. PHA3 n' \2 Z8 Q- n; v8 O' M2 x0 M
  169. LDA $B9- X1 r* ]6 I; k
  170. PHA
    4 `; M  R" Q6 _
  171. LDA $B8
    1 S2 D8 y" S: Q
  172. PHA/ q( k3 j  Q5 {  h
  173. LDA #$00
    ) a+ G) b0 @" C9 e8 k
  174. STA $B8
    3 y; P$ g  ~% D' x
  175. STA $B9
    # S0 C6 v: ~% T( S8 N: E
  176. STA $BA
    4 p* O/ f1 g) T+ Y4 h4 F: H
  177. STA $BB
    3 r5 Y' o) y/ H
  178. STA $BC
    ( r, I- O7 T: i/ G, }9 ?* `: g$ G
  179. STA $BD8 P& k; _6 f* J" `+ y% k5 z
  180. LDX #$00' s; Y; W: u* e% w+ \9 Y
  181. LDY #$00
    6 F7 c- K/ f) A: t  T. o
  182. LDA #$004 w. z. s2 Y2 f2 G! B- j2 A
  183. STA $BA" n9 l) b- F2 t' Y9 N0 P' h5 d! ^- a
  184. LDA #$20
    " s! i3 |. r) H( l+ O* e, D# z7 `; G
  185. STA $BB' r0 w* U5 [& ?3 V+ o! `0 }

  186. 6 x6 t6 V8 b2 H3 Q1 Y& v/ L+ @
  187. CL1:
    ; W2 J8 {: G* O8 T& j" e8 C
  188. LDA $BB: n6 i9 X6 y& @1 `3 h" t
  189. CMP #$308 r0 \1 H1 d1 B* V' e/ S/ B
  190. BNE CL2
    ! h+ S$ [9 Q) {8 Y! E* }5 z2 [% |
  191. LDA $BA( e+ j0 W! \" M( n- Z) x6 j
  192. CMP #$00
    & R/ R9 v; f6 ?
  193. BEQ FREEWRIYE
    ! n+ |  v9 D% V3 E! F" P4 i0 o4 C

  194. + e& p. K7 x# w7 I5 l0 T+ C- F; b0 z
  195. CL2:
    8 S, ~' T5 f& r5 B2 I' w9 m2 t
  196. LDA $BB4 b9 Z5 d# l' w% y. @
  197. STA $20064 a4 p3 i& J% T# N, E3 A
  198. LDA $BA, v9 H- H6 ^% r7 g( y) G$ R* ~
  199. STA $2006% x3 x; Z; J3 J, A. `4 I' L6 s

  200. , t+ Q2 h3 [1 z! }
  201. CL3:: N& d. U2 B0 Q: B  \
  202. LDA #$00' \! [  [2 L3 e& M. O2 z7 L
  203. STA $2007" t5 J( y9 Z; M/ p3 `/ d. i

  204. 7 a9 K8 `  u) h- t: B5 _! U
  205. CL4:
    8 v4 m; l  M$ ]$ K3 _2 p3 h2 M
  206. LDA #$00
    , {/ b4 p; ?# I. Z# @
  207. STA $2000
      k, M( I/ S/ T& H/ a. l$ A' C2 l6 B
  208. INX
    5 c. d$ k8 X! w- Y2 [6 d: R- J
  209. INC $BA* \- C+ V/ o5 P+ Q
  210. CPX #$003 Y. y6 H% Y7 a) d
  211. BNE CL11 _' W+ m0 q' P$ Y
  212. INC $BB. y, o9 z+ u- }8 m: j
  213. JMP CL1 9 s: _. C4 t- Q$ l
  214. ( P- j5 f! L8 w0 |2 T7 S+ c
  215. 8 G" I' x! r7 [3 r& r' D. J$ E
  216. FREEWRIYE:
    1 h5 g1 s: r" n% K
  217. JSR FREE- J, |) q! c' _, w# I7 g3 i
  218. . `1 B+ T7 d1 g6 U! M! O

  219. 4 Q: d' t! k7 F* W/ ~
  220. " Q+ C! i3 v0 ?$ R! f" [3 c8 d

  221. + I9 B. C7 [! ?4 p

  222. 8 Z7 z" b2 u' l$ Z  F7 W4 L
  223. CLEANF:                ; 恢复现场7 p5 `* h) z. \. y1 _( T
  224. LDA #$08
    % q  q5 l& j, }0 I. y5 D
  225. STA $FE
    2 E; \/ P2 A0 G% i& _6 ^
  226. LDA #$00) Z% ~) D: T( @+ S
  227. STA $07F6+ F( \- c5 E+ H1 ?
  228. LDA #$24
    % w3 p6 X4 H$ c( E  `3 y
  229. STA $7FC0. c* f$ n, ^7 ^1 u( h/ |, _. J3 q+ E
  230. PLA
    ) k  D; n' F) J$ {7 I  t. Y
  231. STA $B8, ^* ^, p2 g/ J  A$ `* R1 u
  232. PLA3 G$ z; Z1 A1 ]
  233. STA $B9
    ) W! g5 r/ z# B
  234. PLA
    2 o# c; f' S& A! ~) y2 l
  235. STA $BA! d! _* x  A) M9 u
  236. PLA& V: @# m% w+ K& M& @3 C; K: \
  237. STA $BB; C8 B, e/ ^6 S9 ]2 T+ D; j$ z
  238. PLA
    / C# _$ N2 h7 m5 b
  239. STA $BC' g3 I8 C$ _) I* W0 E  F: [
  240. PLA: ]: {8 u$ s. \. }6 r
  241. STA $BD7 ~, z, Z; u2 V( |  ?/ [
  242. CLRF:3 P" O/ Q+ D; r( @
  243. RTS
    + A: e: z* w8 S+ i8 O

  244. 4 N5 Y% m! a% {6 l
  245. W_DATA:2 J7 e1 q; H2 K. n3 Z
  246. .BYTE $00,$01,$02,$03,$04
    ! {2 k. ?. c" s+ `( c
  247.   " t5 W. u9 `1 c4 x, D
  248. W_PPU:4 D+ t2 Q2 B, _/ P1 Z+ X( @
  249. .BYTE $98,$97,$90,$9D,$96! A+ w4 n* u$ \
  250. . x7 X: J! g, K; ~
  251. P1_STRING:. s* W. P+ w5 [4 w
  252. .BYTE $9A,$82,$00                ;"P1"
    # _7 [0 V7 j. I* x+ p7 z! V

  253. 0 K* I. V' U% \
  254. P2_STRING:
    2 W; O& U7 n3 ~. W2 ?& D+ f) Q
  255. .BYTE $9A,$83,$00                ;"P2"
    ( a. S4 M/ X  \, L! D# i: K

  256. & a, k4 {8 }( z  k6 h
  257. WEAPON_STRING:. W; `, M6 i7 y  ]) E5 x
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"' ?  _, A. m1 E" u. w$ m8 f
  259. % P$ F& I7 S% V( X, v6 b
  260. RELIFE_STRING:
    2 F) W" ~1 t* {/ a5 I
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    ' r: i" o) @  u9 Z% L! H# b- ]9 `
  262. # V& {& F0 b* @- J) Z; r* O
  263. P1_PPU:
    2 q  P1 n8 W2 m- }- y: K  [
  264. LDX #$003 C0 D/ d: J. m$ j8 R$ M
  265. ) [" {) A* l% l- o6 q
  266. P1_PPUW:
    0 P0 I1 _+ L' m8 ~9 E
  267. JSR PPUADDR_PROCESS
    0 M& _5 f: f1 r8 t9 n
  268. LDA P1_STRING,X
    % c- ]& E: W1 f" m, v# V
  269. STA $2007
    5 J0 W2 d4 \# Y. B/ G+ Q5 @
  270. INX' W* j- F  w# L/ ~! Z' L! B; G5 V
  271. INC $BA
    9 W, B" \" Y6 o) F. g
  272. CPX #$03: P9 U9 ], H0 P4 X% D' }8 x
  273. BCC P1_PPUW( Y) n( u2 {8 x9 P! Q
  274. LDX #$00, X  E/ a3 @- L$ h3 s  {% s. z
  275. RTS
    8 U& b# {6 [; T, X% k; E; B

  276. . k: S/ |9 g9 T- r3 E8 e5 n0 ?
  277. P2_PPU:
    ; Q7 H; a) G$ \6 M& S* V
  278. LDX #$00; K  `- {* n! [2 l- M9 ?  H
  279. % j5 Y' @/ U5 Z% E9 t. ?( c
  280. P2_PPUW:
    ( Y. O+ k+ s& \; v3 H) p3 o
  281. JSR PPUADDR_PROCESS
    ' j3 A- J' P# C
  282. LDA P2_STRING,X
    2 d! m5 w" B* C6 D) T" [
  283. STA $2007
    . q  s1 I( e7 L8 ?7 \/ F9 }% F
  284. INX' _6 }: f$ }* Z) \
  285. INC $BA
    ) T# l! C0 S: h+ r2 V
  286. CPX #$03
    8 [0 r: i+ v3 k. b
  287. BCC P2_PPUW
    6 {* }; [, O. m' J
  288. LDX #$00
    1 ^+ y. T6 p4 r' w
  289. RTS' s( b, U/ T0 O- a- Q, k
  290. , r- g. e9 }7 z# c& }' m

  291. / c' z& [6 L0 Q. q8 k& U4 H
  292. LDA $BB
    & y$ a" n7 [4 P( w0 I. ~9 j: U
  293. STA $2006* V- H9 c6 A0 l. k3 A6 t$ C( Q5 g
  294. LDA $BA
    . m: q+ t" a/ ^0 N* R2 y
  295. STA $2006; S& z# J5 y* K1 L- `+ q* ~
  296. RTS
      u6 L2 z7 W1 Y# Q! K0 C. g

  297. . @9 _2 O( P4 S+ Y1 y2 O
  298. # @7 ^; h- C  z/ v) r
  299. ' _9 p, k4 f' r$ ]+ m0 Q( a) `
  300. PLAYERLIFE:
    + P5 {7 _% P* Z; }/ N) Q7 y+ z. Y, L7 D
  301. JSR LIFETODEC
    9 L/ L6 C% ~6 a9 Z4 j7 B
  302. LIFEPPU1:
    & B9 E) Q; Z1 \+ U- i1 ~9 s+ H4 M
  303. LDX #$00
    # J3 Q8 J3 V6 l* }
  304. LIFEPPU1RE:
    , p1 t1 m. p. s
  305. JSR PPUADDR_PROCESS! @+ o& D# k# o% O6 R$ ]3 _. |
  306. LDA RELIFE_STRING,X/ Z  P1 u( H( q4 N; F
  307. STA $2007' {, E5 U" x/ ^* G/ V0 p3 f: Y
  308. INX! f9 W, F+ k: U
  309. INC $BA4 e4 g; d" Q! ^8 [
  310. CPX #$07, h7 r4 F, U: p/ O# h) e
  311. BCC LIFEPPU1RE
    6 f3 q/ s6 f, Z; E: l1 T8 m' g0 r
  312. & C  U% q6 |* k  a" d
  313. LIFEDEC:                ;生命显示写入0 A  |$ @8 S& l: U% F3 `
  314. LDX #$00
    % U/ n& X# M5 F6 j1 |
  315. LIFEDECRE:
    & c. E0 q8 n/ o5 s# }6 j
  316. LDA $7A03,X; F/ M$ `8 V5 `' C9 x: i7 \
  317. CLC0 _. j3 K+ t, B7 |& Q/ R
  318. ADC #$81! o! W# y0 J2 g8 d3 H1 w5 C! C" h+ f
  319. STA $2007
    , L1 v  D4 |- B; O
  320. INX
    0 c: B6 T: v# l" n% @3 q3 O
  321. INC $BA5 a5 G0 U# g  i  R9 C
  322. CPX #$03# A: k7 J3 E+ L* y! B
  323. BCC LIFEDECRE5 H: Q- w4 g( E# l
  324. LDX #$002 Z  F# l  K* u- [
  325. RTS
    & B) q8 W! U; a$ o

  326. + `; `( {" g( w2 J& n3 s
  327. LIFETODEC:                ;十进制转换, K  l* `7 j3 k- E( i" Y
  328. LIFEL1:        ;initialise
    ) Z. c1 |9 e# m8 w9 a2 O7 W
  329. STA $7A00        ;$7A00=F3
    # \& f2 G1 k+ Y- w- \
  330. LDA #$00" z0 g4 J' |4 T, U2 m' R. w
  331. STA $7A03        ;$7A03=00
    6 V* ~' Z# c$ ?' K
  332. STA $7A04        ;$7A04=00: O0 t$ {% [1 [! M. k
  333. STA $7A05        ;$7A05=00
    7 T% ~  h% z, |) W; ~
  334. LIFEL2:        ;copy data $7A00 to 6001
    . ^( q, l' S1 l! V# O* p8 J
  335. LDA $7A00
      C6 n0 r6 [5 n& Z! n3 z) i
  336. STA $7A01+ C2 j* t1 h% [. y

  337. 7 ~% [9 i4 a' n& x* E! a- @
  338. LIFEL3:         ;hundred1 D, s5 j6 G! [% e& [
  339. LDA $7A01. v/ ]  d' Z8 b9 C) F+ E
  340. CMP #$64; m" Z' c" O5 G; M3 R
  341. BCC LIFEL6                ;$7A01<100 goto L6( Z% K8 S0 k0 l% L8 l
  342. LIFEL4:) s% F# Y7 T0 a- F3 Q
  343. LDA $7A01; i+ t0 l* i6 `" c+ Y
  344. SEC
    5 H3 p0 K' x- G# A5 w  F
  345. SBC #$64        ;$7A01=$7A01-100* }( Y* T7 I$ @: ?/ P
  346. STA $7A01
    # y: I1 R6 l# d0 N2 W& |
  347. INC $7A03        ;hundred++
    " F) _; j4 A* }6 `% [
  348. LIFEL5:- e5 E  ?! q% P2 G3 w
  349. LDA $7A01" P/ m9 ]% \6 F
  350. CMP #$64
    9 g# B5 S9 x5 u* `
  351. BCS LIFEL4                ;$7A01>100 goto L4& f$ `/ t& u2 u- l4 o3 J4 z; W

  352. ) |) u! t; c- t( N/ y9 D& y7 W
  353. LIFEL6:        ;decade6 T0 K# Y# U) w8 ?9 U4 _, \: ?
  354. LDA $7A01" @1 R' `/ ?  G6 u. Z
  355. CMP #$0A
    , c5 |  w0 i" ?  F# P
  356. BCC LIFEL9                ;$7A01<10 goto L9
    ; E0 C* Z" s1 I9 Y0 q
  357. LIFEL7:       
    1 x$ J) L& [  _
  358. LDA $7A01
    0 V7 ]1 F/ ~/ w/ e' J5 R- N+ X0 Q
  359. SEC+ Y3 W* ~; J- O6 M) y4 [
  360. SBC #$0A
    * C5 N( L! Y& _& O0 R) [% m+ G# Y& i
  361. STA $7A01        ;$7A01=$7A01-10
    1 o# J" I- P+ x7 F' L
  362. INC $7A04        ;decade++
    , |- ~8 o' G: ^7 Q& o
  363. LIFEL8:
    4 p6 Y1 {' A. G$ i
  364. LDA $7A01
    9 Q* I1 Q* \2 T% q( \- k% i5 r
  365. CMP #$0A' F: `! v9 z8 x, ?0 a6 ^% x
  366. BCS LIFEL7                ;$7A01>10 goto L7
    + [' u7 V% o- n- r* ?8 [& h2 O: R! n
  367. ;unit
    . O2 W8 N9 g$ B- X
  368. LIFEL9:9 x8 J% e! s! \; Q' x7 c
  369. LDA $7A01        ;$7A05=$7A01
    * P& X, O( M' P
  370. STA $7A05        ;unit: }# J5 v' G7 U' l' l
  371. RTS        ;return$ R: z; Y) D/ t" _4 O

  372. , G1 t9 \; o/ Z$ [! ]& p. I
  373. : ?6 J6 j( K9 k: \& i

  374. 7 L% d4 R2 `$ {; t5 r
  375. WEA:                ;武器ppu写入* h. S1 T- h2 t  F0 F+ @
  376. LDX #$00
    . w( o" w! j1 L: Z) ?
  377. WEARE:% r9 A5 R6 U1 A
  378. JSR PPUADDR_PROCESS5 Y7 {5 x1 @" N6 O) ?" d8 a/ z; ]
  379. LDA WEAPON_STRING,X
    . D4 g0 R( G# E7 g+ ~& n
  380. STA $2007
    ' W2 l" H2 A1 M6 ]6 B% Q
  381. LDA #$00
    , a6 i+ b* s) \  y  n8 `
  382. STA $2000* |; _" W$ _$ D, x8 J! [
  383. INX8 Z5 P; p' C( k; z8 n6 d' g7 T
  384. INC $BA
      D+ J1 Z1 {6 ?% D
  385. CPX #$07
    . z. I9 B+ N1 Y" h+ N5 E* B
  386. BCC WEARE
    : z- d) O! h7 @
  387. 1 Z. B' [5 }; C* y: Z7 F
  388. READ_WEA:
    : A/ }2 n) x; c. n
  389. LDA $B93 [4 m! V& E( W6 C
  390. AND #$10+ u# U; L4 ^1 x5 ?) S% \
  391. BEQ NWEA
    ' s( y% E* Q: g0 P  Q
  392. SWEA:
    7 b: P$ R* M9 k$ y' J% x
  393. 0 i  ~: c* m/ u2 N8 W3 @' G6 ?
  394. LDA #$9D  Q4 e3 F0 D7 @0 o
  395. STA $20073 @9 Z- ]3 i& E! R5 E/ K  d5 `1 P
  396. LDA #$00) ^; F7 ?5 x  P4 r
  397. STA $2000$ [' y* f! K. {/ w8 H
  398. INC $BA
    8 f4 v  d: _) q' z
  399. LDX #$007 q# _6 z5 c! K3 _
  400. JMP WEAREAD9 o! Y) N4 j2 C. e5 v
  401. NWEA:
    + n4 V9 `" ^- a$ A

  402. - e" v1 }. c& i
  403. LDA #$8D" Q) k- S3 G2 s/ @/ X. x% s4 K2 n9 B
  404. STA $20072 J' \. F8 V5 u9 z
  405. LDA #$00( g. f- d8 v1 z! A, c! H8 h
  406. STA $2000
    " e- d6 C, z6 g
  407. INC $BA
    5 \% K0 |4 U) L# Y% {' y9 U
  408. LDX #$00  G# f6 }( ~* i9 `6 S: o
  409. WEAREAD:" M% h+ g% @- c; Z  Z
  410. LDA $B9% I: }9 @$ h9 G  o
  411. AND #$EF
    ; A! [+ l) Z! I( j) d
  412. CMP W_DATA,X6 X$ ?3 ], M2 o" A
  413. BNE WEACMP2 C1 [2 t# l. }% K8 c. g
  414. 3 h; X: ?3 Z/ X( K$ e  `) }
  415. LDA W_PPU,X7 n4 E% q$ p- ]; }5 A+ }
  416. STA $2007
    1 m! ~; l, y- p. V* a& y* Y3 C
  417. LDA #$003 `5 d3 }# K$ Q7 t/ I; N
  418. STA $2000
    + w4 \! f) y9 H! t: Z  q

  419. 1 i) C* n! Z/ d+ N" v
  420. WEACMP:" g% l: _9 u! f* v
  421. INX
    * C+ E4 H/ q  H1 P! x! E: A- s
  422. CPX #$05
    7 D3 @" ^9 B1 s. f) l) }7 R
  423. BCC WEAREAD
    , W, k: h, W( U/ \. C
  424. RTS
    6 X8 G: y+ r1 F$ x
  425. 1 B0 N% I6 e1 i5 }* e2 }
  426. , ?( S5 ~1 a) l! f& w+ t  W
  427. PPUWRITE:5 w) k3 c1 q3 _6 @  K. u2 @
  428. PLA
    ' q: d5 E3 c  _- g( y9 ?
  429. TAY
    8 ?9 Y6 ^  w/ l* G: L
  430. PLA
    ! q# y2 _" U" g- q' Y
  431. TAX' G/ n3 e9 k, E. g! W- a
  432. PLA
    5 H% f" V/ C3 c5 G! k- I
  433. LDA $25
    ( T% [1 E( \# Y2 ~9 ?9 i) [7 [3 h; W
  434. CMP #$001 P2 r& w/ U, R& y
  435. BEQ WP1
    & u9 j& E; O  f2 K; A
  436. LDA $259 Z: T' H& \/ }
  437. CMP #$01" h% n) d0 Z) N  S9 l- T: G
  438. BNE WRE
    3 |6 a) c6 x$ K# T. _) J: |
  439. LDA $F5,X
    7 l7 ^1 |% d7 y  A; S
  440. AND #$EF3 v; I: m" y, r8 ~0 R$ G, v& l! K" ]
  441. BEQ WRE8 Y. x# J; h( @
  442. LDA #$00
    8 C2 E/ F8 z! F8 k! z
  443. STA $7FA0/ y' ]1 Z) y- F8 Q  B

  444. 7 ^6 x' w' T- @6 W0 D+ e
  445. WRE:
    - W- O: @3 V8 |1 `. m* N3 J2 `
  446. JMP $A000
    5 F2 d; {  B8 ^7 ]9 M$ V9 f

  447. , V2 R0 i! z0 K3 N; W' h) M
  448. WP1:
    ! w: M0 t  l- ^8 m
  449. LDA $7FFF: s1 l! u8 L  P' X. X
  450. CMP #$FF
    5 m) h& }# e. |; g5 r3 F- u
  451. BNE WRE
    ' q$ Z, M( S% F6 P: }1 M( F
  452. LDA #$00! q- N- Z5 A( s. k" W
  453. STA $2001
    4 |- Q9 `3 E* g# \4 _5 Y
  454. LDA $BD
    + Q% d" j# D: @
  455. PHA( _$ x- ?) P" |6 V" X4 a* ^4 o
  456. LDA $BC
    ! `5 t3 w8 L! f1 x2 U
  457. PHA
    ' @7 B7 n( c. y" R9 _7 R
  458. LDA $BB) `, D$ g3 G, N3 b8 Q! Q. g
  459. PHA
    % v2 V6 o/ n0 T: k' B9 r/ [
  460. LDA $BA
    ( o3 `. c6 I$ R2 P" n% J
  461. PHA* d6 d! o3 H$ F/ W
  462. LDA $B9
    , \6 G4 L4 _' D7 s4 N+ m0 I
  463. PHA
    / W# ~: c+ l$ T1 h- [1 y
  464. LDA $B8
    * j" A% u; a; n6 D
  465. PHA7 ~; v2 F: s  j7 C% a3 J
  466. LDA #$00
    & l6 O  t2 c8 t: X! ?
  467. STA $B8+ I4 h; K+ H+ [+ X% k  I8 A% v% S
  468. STA $B98 Z4 S1 D+ E7 U: N; \' D
  469. STA $BA+ ?3 u3 u4 e5 m
  470. STA $BB
    - u# b, v# r$ _; Q
  471. STA $BC
    ) @6 _: @; ?  G) [+ i
  472. STA $BD
    & r0 H5 t5 v; ~2 k* x& h
  473. LDA #$00
    6 E* B) H4 L& @4 c
  474. STA $7FFF
    ' m3 B8 G9 H+ o# R& V3 p. c# O
  475. LDA $30
    - R1 u4 Z7 q% b: g; a- [" B
  476. CMP #$02
    * R$ O7 P; |3 X
  477. BNE UNPROCPL
    ; z" Z7 E5 G4 d0 m- A. g4 b1 V. @
  478. LDA $7EFC4 q. E7 M* [* o8 B7 N
  479. STA $FC5 q: z6 ^. [7 F
  480. LDA #$002 b: N1 W; e0 M; Y+ P
  481. STA $A4
    ( N! g, y3 ^  V: |3 V% {" ]
  482. STA $A5+ a$ s8 t& X( K" t/ {
  483. UNPROCPL:
    7 Y! ]( b4 a; M! M/ W4 a3 D9 x
  484. LDA $7EFD
    * J2 J0 I7 F$ E
  485. STA $FD
    ! }: S1 {* B. n. [
  486. LDA $7EFF# U  t& u- Z) s& n: |
  487. STA $FF
    7 C9 G/ e! {4 l, Z5 |8 [# w

  488. 3 p  }; M' g2 i1 d( O
  489. WL0:
    7 f9 C' P2 i( |) l) B
  490. LDX #$00% w2 K8 l0 N, Z( I( F
  491. LDY #$00
    7 [: N% A, x% D' s3 G
  492. LDA #$003 V  d' c1 X) V" w
  493. STA $BA1 j" C& S4 \( ]8 s: z! V' a  O0 U" P2 I
  494. LDA #$20
    # ]  E+ Q$ v6 T5 v7 b" ~
  495. STA $BB6 b3 |; U0 d  g. q8 T1 |
  496. LDA #$00: X7 [; O$ v" g7 q
  497. STA $BC
    & j0 {2 M* P  q5 [4 c) f* [9 O$ {
  498. LDA #$60
    : `0 _; a. O2 h1 T- O1 e* l% {
  499. STA $BD
    # D3 f/ p$ J0 ~4 a6 `
  500. " k$ }3 Z$ j3 j2 L% I, e* o$ v
  501. WL1:& x( M; n9 }' E; K1 Q* p$ ]
  502. LDA $BD
    " f$ m5 E0 C" M1 s
  503. CMP #$701 A- H& b. S! G$ W
  504. BNE WL29 d. i1 L; n% P& V" z
  505. LDA $BC7 {, x# B# U4 _! R
  506. CMP #$00
    3 A9 M2 e/ ~4 f$ L' B) T
  507. BEQ WLR
    7 W1 d( p% t. ^6 ~/ n: ~

  508. ' X& J+ s% @/ d2 t+ P$ e
  509. WL2:' j! G5 I  Z" W; w, p: N0 `; c
  510. LDA $BD
    2 t0 a3 F' X. _9 P6 k& O5 |: I& W
  511. STA $2006
    ; ?% i  O0 c0 o1 |/ X$ V" \, o  v
  512. LDA $BC
    # w7 a2 E& X6 k' c- u
  513. STA $2006
    $ q" z9 k; H' S2 w5 G
  514. " R( K! K* L" s! v; e6 e
  515. WL3:
    & `7 ?+ G, ?' h% C- \
  516. LDA ($BC),Y2 i1 s4 f, C1 v
  517. STA $2007
    8 `) E$ @) u0 \$ U
  518. ( t  Z) V% r$ T2 a9 ~
  519. WL4:
    - @' R7 x6 @6 p0 W) t$ r% u3 @3 K
  520. LDA #$00; s( l$ [0 Z' n9 Z
  521. STA $2000
    . T+ T- c* [% Y. ?' d: ~( q
  522. INX
      p4 t9 L/ {8 v
  523. INC $BA6 q2 r# Y, S5 T, k
  524. INC $BC
    $ n3 J" Q; c2 t9 v
  525. CPX #$001 f% T! e" r9 |3 r* A
  526. BNE WL13 M. z) B8 g" C
  527. INC $BB
    " \- D6 H% G2 I4 V  J
  528. INC $BD
    % P; p; t& Q. Z* i
  529. JMP WL16 P! n$ B8 J  m; Z2 }
  530. % C/ F( D- e) N4 K4 U6 [
  531. WLR:4 N  i& Q# j3 A7 v
  532. LDA $7FFE
    2 d) G. j+ ~  ^" \
  533. STA $07F6
    # @3 N. S  M1 S
  534. LDA $7FFD- q$ `! b5 ^% n7 E7 M
  535. STA $00FE2 z  D; z6 f$ u7 c( R) r8 F  [$ s
  536. LDA $7FC1* r7 a) K- d& S$ m! r
  537. STA $07C1* S% I" Y3 y  a( v$ W
  538. LDA #$3F
    ( w0 d4 D8 n4 j: `  o8 z
  539. STA $2006
    . A! C. n# [5 e
  540. LDA #$01- w6 f$ c: g/ `' c6 F& m) q
  541. STA $2006. o" M) p: E$ |4 O+ K! B0 v6 f1 D
  542. LDA $07C1
    % Q9 ?2 ^) [, P7 `% p$ i3 B
  543. STA $2007
    $ n3 k5 ?0 `7 a. N3 q9 W" |
  544. LDA #$00
    ( e9 Q7 C3 L5 q8 u! n3 V, [, i
  545. STA $2000
    0 t) u% u% D4 q
  546. PLA
    7 c; C1 `; W+ `6 J; J# ?
  547. STA $B8
    ( u6 L! ?( t6 f: p6 `# Z
  548. PLA" T! `; U- T$ T
  549. STA $B9
    2 {6 }. o1 k$ S. m1 E
  550. PLA' c% }' }# \( w+ K
  551. STA $BA
    $ C1 p5 X& ~# X& q- D$ G
  552. PLA1 U) i1 B) U" |0 u
  553. STA $BB& ~* z1 ^; |2 l6 K; R! H
  554. PLA
    ' t% q' _8 ^+ `0 j% Y- c0 a( ~
  555. STA $BC
    : t0 R* O8 c4 ^" u
  556. PLA
      N& c" ^9 m6 i/ C9 J, B2 y3 T
  557. STA $BD) ]: g) H8 @) _" P5 Y: D9 C
  558. JMP $A000
    4 J+ O" |# e' S) j+ f
  559. ' |8 A1 ?; ~8 W7 S+ h
  560. FREE:                ; 暂存器保护
    / p$ P4 }+ [; j% Q, W; e* [/ ]0 e4 R
  561. LDA $BD! q5 _- z* o# M6 x
  562. PHA0 @7 M4 O8 q% I
  563. LDA $BC  V" a& @  o  V4 ^! K$ |1 `
  564. PHA( P! M3 W2 O( g* m
  565. LDA $BB
    9 ~3 u( ]% ?) `1 j/ @
  566. PHA- v" x9 j- \; `5 E& d4 I
  567. LDA $BA7 B" M+ D  J% D# H  S
  568. PHA+ R  @' R, ?( {) ~( a8 B/ J- r
  569. LDA $B9
    3 W# C. F0 y* ^7 D" ]5 ^' ]
  570. PHA7 {" Y. Z7 g  l
  571. LDA $B8
    / K8 ~+ c7 E* E
  572. PHA
    6 f8 `. X# c# u9 l* i- T6 G
  573. LDA #$004 d% X0 F# e2 y- b5 ]4 l8 F
  574. STA $B8
    % ]' N" |; p0 }3 O. D5 w  f# B
  575. STA $B9
    % z$ r$ A! w  n1 T/ v
  576. STA $BA
    ( j2 I" b2 G$ D
  577. STA $BB
    & y, i0 w6 z3 X3 t0 ], Y
  578. STA $BC# R9 v0 _" c3 V3 l/ A
  579. STA $BD
    ' e; r* q5 h, o3 f6 k, P
  580. 1 w: C! j4 Q) V
  581. WEAWRITE:                ;武器ppu写入* a1 Z7 R2 j# ^5 K
  582. LDX #$004 {  ~4 n1 |- y$ K9 }" Q
  583. LDA $AA
    . V  D/ W& j( A* a/ t7 s2 ?6 [1 Z
  584. STA $B9% W, |# a: @0 R7 V
  585. WEAINI:                ;地值初始化
    , X9 S3 h6 o  j5 o. S" z3 v, C
  586. LDA #$A4- k: J& ]" ]$ p7 w+ Z( `& f
  587. STA $BA! o" O  M  Z4 b9 w9 T/ J* ~: V
  588. LDA #$20! ?/ l) R$ W# p* R
  589. STA $BB
    # Q" b5 R0 V" i! g8 y' E# v

  590. 4 A- |, f5 D" r$ a
  591. ; V: ~( m# S% z9 P4 Z
  592. JSR WEA8 v; R" D" e, {: t" ~
  593. LDX #$00                ;武器ppu写入/ @7 U! M: S# n' v* U+ h* e
  594. LDA $AB
    $ j3 C. U' F- {  Q& c* I: i
  595. STA $B9- y1 w, |5 @3 H2 h( Q- y
  596. LDA #$B3* r# ]4 b/ i) Z* i) D9 H
  597. STA $BA
    / g1 n& E) S' d/ n4 J5 O' Q- e# _* I
  598. LDA #$20$ J+ P2 F8 L2 F: v3 F
  599. STA $BB
    # l' r' @4 W9 b
  600. * N5 u+ j( z# v$ Y
  601. 9 k2 t& K" d  s* }9 H. g7 y; {  J- {
  602. JSR WEA4 C: u5 ^5 L# k1 o  o
  603. 5 ]! W# z' K5 ^+ }& `/ n
  604. LDX #$005 r, Y' l+ I4 t' V
  605. LDA #$E4
    0 P) G, |8 K. p4 G8 q0 P
  606. STA $BA
    ; d, X9 f* U9 n( E: |" P$ y" Y
  607. LDA #$20
    8 V8 l2 |( h( C$ U4 d+ @; D
  608. STA $BB3 Z7 M+ ]# p/ ]8 E
  609. 4 g, n  k8 [. r4 s
  610.   Y0 W8 L7 P& a  M
  611. LDA $32
    " E) k5 I: s; F3 q5 Y$ ?
  612. JSR PLAYERLIFE
    + [0 c$ Y" i- G9 Z! g( i' D/ `

  613. 9 h  K& m1 g: Y" R$ L8 X! G! k4 ?/ j
  614. LDX #$00
    ; m  c! {6 d0 m9 P3 Y( T- d; d
  615. LDA #$F3" t5 j. P: ~6 t* H9 l6 @: K0 K) K
  616. STA $BA
    * m& U, |( w+ s+ R: H
  617. LDA #$208 G% k2 G: D6 c; G
  618. STA $BB8 \% |  f" l- N6 A  [7 a2 v. d! N+ O

  619. 7 K1 Y3 J  u" R: C7 |9 ?; t

  620. 4 l- D5 D2 a" ?; l& w1 O
  621. LDA $33+ S9 C$ E3 t) [- H6 }6 G) b" q
  622. JSR PLAYERLIFE) p7 \5 [: D0 H( ?$ n9 }: ^
  623.   k, ]1 K* o+ L4 i" A

  624. % T: B8 g( E0 X( k2 ^4 y5 \2 t
  625. JSR PLAYER_01_PPU
    $ c0 z( {/ D; f. y7 }' e- E
  626. JSR PLAYER_02_PPU
    1 _( m4 E2 {$ {. z
  627. 2 Z  {' F1 Q# ~5 Z
  628. 5 k9 {- V8 |5 N
  629. JSR PAGE_PPU. W( l9 \0 R6 n7 U9 {, }/ v
  630. JSR PAGESELECT
    * u1 I- |# [8 J. h
  631. 9 O& Y5 C7 o8 ]3 w: M) S4 m$ P
  632. - R; _: A4 c6 K2 x. n" Q
  633. + _2 d" x7 O% m% k

  634. 4 v0 q) d: o2 H3 s! T) h- _

  635. - u6 a, \: C- D& J
  636. & \9 O, \( q+ |+ }0 x

  637. 5 J+ J& Q8 z1 G& B: g5 s; [6 k! b

  638.   p0 S6 M% H8 X/ V# @* x- F- ^

  639. 9 V' S/ n% K. _9 D

  640. % {, A, f- m2 b
  641. $ G8 y" t( X+ d' S9 }2 `
  642. ' Z# H( ]. p1 K5 o
  643. 9 s! M  \7 y; L( H# B
  644. PLAPRO:                ;恢复现场1 A# P( w0 K' \6 S
  645. PLA
    8 F1 Y- Q; Q& C' S9 b
  646. STA $B8+ z/ h5 X/ }5 W3 D! I+ {
  647. PLA
    0 b  z: x7 k& }) Q# F
  648. STA $B9) s8 y# B3 r+ o0 {3 A
  649. PLA5 K& }7 a" R3 v6 I4 t4 j5 `" _
  650. STA $BA! k; d: M+ G4 B/ G
  651. PLA
    1 x: `6 ?) p+ }2 {+ o  N5 u
  652. STA $BB  I' f( X- c3 u+ S; t
  653. PLA4 M1 u1 |' E7 Q5 S
  654. STA $BC" s, r3 O+ F+ r4 w$ C5 O" d
  655. PLA
    $ D# ^$ ?5 H. a7 J
  656. STA $BD0 E; A& [! b& f* f; w' z
  657. FREERTS:
    ; ~! L5 }, h5 T8 P2 V
  658. RTS
    6 i4 ?3 L. R7 S( v
  659. * B& ^  M0 e9 ^! H3 `
  660. INVINC_STRING:                        ;invincible
    " k% t. a$ Q: ?: }# A& I
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80, E2 ~9 |# q( }' s- J% ^

  662. + ~$ c) q. `; W  G
  663. INVINC_PPU:
    : |) {0 b+ L: @, O; _
  664. LDX #$00
    ) M7 o( m* g+ t8 J: p/ i
  665. LDA #$62# C% X, b* y* z, p) I6 C& h/ ^
  666. STA $BA# O+ W5 i' \' L2 W! K! h
  667. LDA #$21  O2 I& n4 M6 h% [* P( s) X, k
  668. STA $BB
    - u9 x$ f& H( x2 D" W

  669. - t" u: n5 G  d" }

  670. , w7 w- C9 L' I
  671. JSR UP_PPU3 j8 H6 W1 L* d- ^$ e4 y
  672. JSR INVINC_WRITE
    % T0 s6 g4 j, B8 L
  673. LDX #$00
    ! R5 k. n* j! M
  674. LDA $07A0! o4 M* F# m; h- i" _9 c$ D
  675. AND #$01  p. `  [) i5 J* a# a5 J
  676. JSR ON_OFF_PPU
    , S1 ^) ?# B. U  e8 y+ T* M
  677. LDX #$00
    $ b$ ^: }, v8 I: j% u- ?/ K
  678. LDA #$719 h  X; R$ m6 [8 g9 ?
  679. STA $BA
    : i- \1 `  a" d  [
  680. LDA #$21  s7 l8 B2 N1 }% b6 a
  681. STA $BB0 J1 U- @) A% w8 _# C

  682. 2 Y0 _- `9 k4 _; g3 A. g; m% V
  683. % s* Z" |! C# Y  [
  684. JSR UP_PPU
    8 Y' J: s$ e3 u4 v/ V2 Y
  685. JSR INVINC_WRITE9 t& U+ \/ o1 X  F" t1 [
  686. LDX #$00
    $ Z& T2 [6 R* W7 t& X8 T4 w8 K; C( W
  687. LDA $07A19 C$ d7 a5 ]9 \- M
  688. AND #$01
    ! ^* t% ?8 C- I9 q, i
  689. JSR ON_OFF_PPU
    6 l1 C; o8 {( R# D
  690. RTS, O. ?5 V7 j3 O" }
  691. / `: D9 i7 |: j) `/ o) }! |0 K
  692. INVINC_WRITE:
    0 O+ G% t' g8 K
  693. LDX #$00
    7 l- f) Y- S. x) }+ S
  694. INWRITE:# M5 @- J! u/ L8 \0 w9 g, i/ F
  695. JSR PPUADDR_PROCESS
    8 t$ h) _( q# M4 s# K8 F8 {
  696. LDA INVINC_STRING,X
    / J" }2 ?& r- Y$ @
  697. STA $2007  k4 \5 A3 ?) L& M+ w/ ^
  698. LDA #$006 K- M' r1 p1 i: p# Z9 G7 }- X
  699. STA $2000
    1 y, V: V5 Y2 u: x
  700. INC $BA) S3 d) N! d# a4 ?/ z0 g
  701. INX3 J2 t, b+ V* x/ F, y1 D* e
  702. CPX #$07
    * l  z4 l- X) `: {; E7 R
  703. BCC INWRITE
    ( L1 ^% t# U* ]3 P# [. s3 c
  704. RTS
    : u$ t( V2 F+ T1 ]1 J

  705. 8 }) q( S- W* t3 W8 L5 p- u1 t# i- C
  706. ON_STRING:  u4 P- y1 T, {( ~
  707. .BYTE $99,$98,$80/ ], g" z% y* w2 b. E/ [7 Q, A* Q
  708. ) K0 m" m! ?, }: U4 w" J$ |+ d# l
  709. OFF_STRING:
    , M4 C1 o4 b+ ?, l/ c
  710. .BYTE $99,$90,$90
    6 W. R9 e& i/ ^4 \
  711. . q4 H0 z1 K) @5 a- K4 t' M* S
  712. ON_OFF_PPU:! a4 S. J, ]: G$ E$ U
  713. BEQ OFFWR$ s# c6 M2 `( L+ b/ K+ j
  714. ONWR:
    2 S5 S- Z- I% H. l8 h7 C$ l
  715. JSR PPUADDR_PROCESS9 z2 s* }3 V. F2 R9 D) e3 s2 ^
  716. LDA ON_STRING,X% t" g" X  @- u: w
  717. STA $2007; o$ l4 V. {  W! X: T
  718. INC $BA
    7 U% g" |. f# S. I  J7 _  }8 N9 E
  719. INX
    $ Z* ?- d! a# x+ @& U8 d5 M/ e
  720. CPX #$03  k1 _  n. q  ~! [1 q6 n# B# }# v
  721. BCC ONWR1 b0 S& y" y) r3 u1 I5 |
  722. RTS7 O+ o: {+ `( X, c. I2 i- ~
  723. OFFWR:2 }2 @7 T+ c: _- L
  724. JSR PPUADDR_PROCESS# P+ F, J) w1 Q9 R; f7 k8 ]6 `
  725. LDA OFF_STRING,X
    ! _9 U" `" ^9 s8 }2 Q9 Q0 I
  726. STA $2007
    8 ?3 H% {$ t6 v4 X5 Y
  727. INC $BA
    6 f' a/ u& M# p6 T2 b
  728. INX
    : f8 `* m1 ?' l- u
  729. CPX #$03
    ) z- N, n, j( j! {7 m) j
  730. BCC OFFWR+ i' R" ?0 T' C
  731. RTS( I6 N" x1 L  ~" [

  732. 9 h* g/ b7 X7 I( h4 i9 ~) w4 u
  733. LIFELC15_STRING:: ^! ?/ j+ @! v* K5 a
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    6 k. {( u* m# {# X
  735. ; Y4 y' B! X9 _$ f* O: u3 L
  736. LIFELC15_WRITE:" L  x2 B' R; m  A7 z" P& c0 k  ~
  737. LDX #$00
    ( x  w( @+ b& M; |
  738. LIFELC15:7 a1 H6 L; j7 E; i) L5 f* O
  739. JSR PPUADDR_PROCESS
    1 s8 \4 j- J% B. \
  740. LDA LIFELC15_STRING,X
    - `! \8 a' @6 O, ^
  741. STA $2007
    . n* K" T  a& z" c
  742. LDA #$00* F" W$ B# d; q# v& A: T4 Q
  743. STA $20000 Q0 m. }5 `4 m
  744. INC $BA
    : W1 N$ n0 }- j2 H
  745. INX" b1 R$ D& K- G5 N) q8 r) Q1 V
  746. CPX #$077 M% Z* I; g7 e! i* ^" }
  747. BCC LIFELC15% }5 ^( {8 x; a
  748. RTS
    % x5 F: J( h; o& T& o3 ?
  749. 2 t. a+ M2 a  ], J; c
  750. LIFELC15_PPU:
    , Y! f8 w( `' Z
  751. LDX #$00, W) `3 I4 w% i! B  C: p7 v
  752. LDA #$A2( w" m/ s6 s1 `% D, n
  753. STA $BA3 c2 [5 ^! a; T% T/ e3 E5 S
  754. LDA #$21/ K, F/ _4 y/ r5 }
  755. STA $BB0 d6 d& F$ O6 n3 X4 Y
  756. JSR DN_PPU* H7 U% Y8 R; t: l! m
  757. JSR LIFELC15_WRITE, v  N+ X3 M0 E7 a
  758. LDX #$00
    % Y0 x3 Z* ]# Z: U- J
  759. LDA $07A00 o$ F* s& \+ }
  760. AND #$02
    % y% [8 E# L  M& e' X- g* N8 B
  761. JSR ON_OFF_PPU3 t+ w- B" h2 x( Y2 J4 e) x' x4 D
  762. LDX #$00
    ) d6 C# h- x3 c4 _/ ~; n0 q2 ^
  763. LDA #$B1) Z; _( `6 z- G- X; j
  764. STA $BA- {' J/ z& a5 Q7 r
  765. LDA #$216 P& H3 ?! Q9 c
  766. STA $BB
    ! M: u+ b3 m* E' `3 z. V
  767. JSR DN_PPU
    8 J) A1 i1 [0 b2 k& p" A  }9 k- }
  768. JSR LIFELC15_WRITE- L" K0 `+ a. E; Z( {; l$ W4 f' \
  769. LDX #$00& ^/ t, H% `  V' k; M
  770. LDA $07A1
    4 R$ A) j- H9 G3 W
  771. AND #$02$ B" ~5 D: Y& @* Q/ w
  772. JSR ON_OFF_PPU
    4 }6 r1 k1 k9 x. m* O3 j
  773. RTS3 c9 f& T  g" V1 i+ C- ?9 q

  774. , R0 Y  d) U, T. n+ [
  775. DOUCON_STRING:
    ) h3 A! e. \: M' L4 j5 p0 j
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    , P7 y- V; }0 f. F, J9 E
  777. + S% t7 O2 Y( Y, R+ V6 J
  778. DOUCON_WRITE:
    5 F  t( r0 A; v1 r
  779. LDX #$00
    0 l$ _- c# `8 P8 U
  780. DOUCON:
    . ^! B! ~4 v9 O) [/ b5 X
  781. JSR PPUADDR_PROCESS
    2 B6 e  C7 d7 j/ C
  782. LDA DOUCON_STRING,X
    # t( o# t3 X1 @
  783. STA $2007( _0 s) {1 b- s* r
  784. LDA #$00# r6 r! h9 G; g2 H) [# H2 y
  785. STA $2000) F: W1 y6 n3 E9 W
  786. INC $BA
    % C; X" ]  o, P2 T
  787. INX
    $ z/ ?( T9 Y+ t6 e* I3 R
  788. CPX #$072 C. z8 g3 V2 u0 C
  789. BCC DOUCON
    0 t/ `2 H+ t  t1 \+ D
  790. RTS  Y( a, Y& z, w+ b- g- L
  791. : D; u9 M( S* r; h  o9 g1 t( g
  792. DOUCON_PPU:6 H  A- R' {* a6 S" U5 x
  793. LDX #$001 M- i% J0 c" Y: U
  794. LDA #$E2
    - {2 i. J7 o7 c
  795. STA $BA1 o5 _- l+ r# L% D
  796. LDA #$219 [8 N& I2 {' n* d/ m
  797. STA $BB: i. W; l% H3 R; S0 ]
  798. JSR LF_PPU2 c' z% u1 m& o' K# O
  799. JSR DOUCON_WRITE6 Y6 f, z2 A) y# I
  800. LDX #$00! M7 d+ _9 m! M
  801. LDA $07A0
    3 r: a) `! o3 N  x4 I
  802. AND #$04
    " y. _6 y* X# x! }
  803. JSR ON_OFF_PPU6 ]+ @2 V; x: |: F
  804. LDX #$00
    ) ]4 c& y  ~, \
  805. LDA #$F1
    6 s2 n: s9 R0 X; }3 [
  806. STA $BA# V9 [: a& F1 w/ h5 ]0 H
  807. LDA #$21% k4 `* O  R: [8 H6 Q' b
  808. STA $BB- s0 S4 O" I) b, a" L9 `
  809. JSR LF_PPU
    9 b0 {9 @4 C1 _) y4 F; d
  810. JSR DOUCON_WRITE, a9 l! ]& k! B2 V
  811. LDX #$00
    ! Y5 V* O' G9 y5 }" J8 @
  812. LDA $07A1) L$ ?0 O  t9 j" A4 r
  813. AND #$04# u7 b  p5 M" m7 a& X2 K2 I
  814. JSR ON_OFF_PPU/ w8 Y/ y( a# T' o" d" [. T
  815. RTS3 e# Z4 c+ A7 P+ R9 J0 ]
  816. 9 V1 e% _3 v! Z! Q
  817. LIFELOW_STRING:* W  J: B/ y1 j1 V* {
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80' w* q$ t1 V1 U* \+ ]' x: g

  819. 7 C2 q" c4 I3 L3 ?$ L  A( t2 G6 @' X4 O
  820. LIFELOW_WRITE:5 ^3 J) k9 h+ i: q( _
  821. LDX #$00
    4 t  h5 [, _1 h, |% `
  822. LIFELOW:
    & b+ R# D" m" A
  823. JSR PPUADDR_PROCESS
    ' `. X1 e' ]6 B2 |( K
  824. LDA LIFELOW_STRING,X6 l) t% i! k: |" x, B: y7 D0 b4 @
  825. STA $20074 k; z1 r8 K$ ~7 p5 E. \: G
  826. LDA #$00# V+ w9 |" r$ s/ e
  827. STA $2000* K6 H! s$ T9 p0 ~
  828. INC $BA
    ; B8 l+ Z7 t( h
  829. INX
    $ B$ E+ c9 x  B8 @# b+ \7 H
  830. CPX #$07* v  q* e' r- R3 S
  831. BCC LIFELOW
    " P9 f: X* X* x& N( J9 @
  832. RTS
    : m6 o  i" E6 v: ]

  833. 0 p( v6 Y: f  u  t) @/ R
  834. LIFELOW_PPU:
    1 ^; x5 _' w0 g) Z1 E1 S
  835. LDX #$008 ]3 t/ G. b& Y8 ^
  836. LDA #$22
    8 n: x5 e5 s/ `* K- N/ ]
  837. STA $BA
    9 r5 Q4 z' E* k$ g
  838. LDA #$22' Q0 h8 n/ r1 A- ?! E
  839. STA $BB
    / y2 @- C( G, J8 q

  840. # S: t- a. ?& _2 o
  841. " t4 X- g3 J/ p0 b, h6 f9 s
  842. JSR RG_PPU# O' L" D% L/ ]2 o* Z% A
  843. JSR LIFELOW_WRITE
    4 ?5 A* b6 h( r0 p! c0 d& N
  844. LDX #$00
    % P$ z  h7 [3 T& {6 T
  845. LDA $07A06 S( V) M# |$ Z
  846. AND #$08  e+ T" o4 D- G0 R; `- P4 [
  847. JSR ON_OFF_PPU
    3 |( \" U6 m% v4 P
  848. LDX #$00
    : k. \2 N6 a# a1 q- h  M
  849. LDA #$31
    5 p4 F" w: c3 Z0 m+ J
  850. STA $BA$ ^: E7 |5 A# [
  851. LDA #$22
    ' `& m/ v; v* ~; z
  852. STA $BB
    5 N+ L. g$ ?5 x. m4 Y5 U# l
  853. , e6 f& ?! l$ E

  854. 0 _: O1 B4 `* r
  855. JSR RG_PPU
    ) b6 ]1 H/ O5 ^) M  g5 P
  856. JSR LIFELOW_WRITE
    5 `+ h& @( }: F' U! \
  857. LDX #$00
    ' a6 l' s4 S2 K( N7 c2 g! ]/ s
  858. LDA $07A1% c/ L6 U  y7 Y3 L8 m
  859. AND #$08
    2 Z. G! y& Z% ]' b
  860. JSR ON_OFF_PPU2 l; j" s' A& J0 i% j, |
  861. RTS, ~  A' I' g' y. `

  862. ( r% O; }$ Y" f7 Y' a
  863. KILLON_STRING:
    + j' _4 H7 ]0 p% r1 d  a' ]
  864. .BYTE $95,$93,$96,$96,$99,$98,$800 C0 t$ P- z3 K# w* A

  865. 2 g/ ]( A7 T5 c0 z# P
  866. KILLON_WRITE:
    ) r  s( ~/ C; R5 [# r
  867. LDX #$00
    8 D! T( R. Y& e
  868. KILLON:% Z% T7 C! O- W* v, L9 _0 g
  869. JSR PPUADDR_PROCESS% C5 l  F  ^, f* d# }
  870. LDA KILLON_STRING,X
    0 \7 s% D- e6 |& c2 x6 s9 w$ [
  871. STA $20077 a6 C3 B. d5 N) j  ?- P
  872. LDA #$00- t9 |5 I+ \* g! p) x+ I
  873. STA $20000 U1 \7 {; W2 N) q: q7 R$ n
  874. INC $BA
    2 g% A- w$ Z, }" I7 p
  875. INX
    1 e5 t1 O  m! Y- W( Q1 b+ F
  876. CPX #$07
    1 ^7 i0 |: b7 R1 a8 d! j1 L
  877. BCC KILLON
    " p" J2 t: |/ ]' A! l
  878. RTS
    3 n# m! o( ?4 B. x$ {9 S

  879. / {. [  l& Z7 _! R: G$ v8 i
  880. KILLON_PPU:$ F" |& A) l. }' h) c! `% P6 F
  881. LDX #$00" z5 S( B0 Q" e) r
  882. LDA #$62
    4 I4 G) B* v" v7 }% U% Y! f
  883. STA $BA
    # ]  {0 w5 P# [; m
  884. LDA #$22. R2 w! n7 V+ p9 W
  885. STA $BB' ]) I3 }! e+ y) @9 H
  886. + _7 o" u' {6 v4 _

  887. 2 E0 N, p3 M, L' Y4 F. ^1 ]" ]
  888. JSR B_PPU
    ) O7 g9 S* g5 ^/ h. d* Z
  889. JSR KILLON_WRITE1 R$ a6 O, e3 k8 C+ X
  890. LDX #$00
    $ @: u4 I0 r* T2 W; y' x
  891. LDA $07A0& u' h8 O7 v* D0 _( |
  892. AND #$10
    ; J& I% f1 G- n0 T- \/ t& I
  893. JSR ON_OFF_PPU2 o) i" c  A' i* x4 v  A: b
  894. LDX #$00
    2 r0 [6 _: n! C. W; J+ o: K' N: F
  895. LDA #$718 R: }9 B; ^4 M" v7 ^: h) [( G
  896. STA $BA4 q5 H7 p0 B7 S
  897. LDA #$221 a* w5 C9 C6 x' X% F0 K+ ?
  898. STA $BB. M4 O( ]4 _0 g

  899. 2 q: g$ ^# ?2 E7 K
  900. + m4 V3 I0 _0 H( `
  901. JSR B_PPU8 |9 H7 D( ~8 E! K7 G" Y9 N  _! |
  902. JSR KILLON_WRITE
    8 R( K' p; U% r0 H6 g
  903. LDX #$00
    # `' A2 c& G. J3 g5 Z+ W& N
  904. LDA $07A1
    1 [5 m5 F! k6 W) _
  905. AND #$106 ?/ i% Q( X5 R9 S* A7 V8 T; f
  906. JSR ON_OFF_PPU
    " m! _( @2 G4 C% G
  907. RTS+ c5 \: k  T' F- A
  908. 9 G5 m  A. o" O6 Z$ B# r! E+ E& [' S
  909. SKYFLY_STRING:: |3 A' w4 w% ~# e/ V7 T& U+ S* v( p
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$806 K. g1 {' w* E' p+ H

  911. 3 c' N4 m) i5 I, k
  912. SKYFLY_WRITE:/ b+ }/ e" Q3 r* t( d7 G* d$ ~/ i
  913. LDX #$00
      f8 {3 \: c7 {
  914. SKYFLY:" v+ G- t2 E9 r6 K( I1 |5 ?
  915. JSR PPUADDR_PROCESS
    5 O3 [( N1 _  V4 j
  916. LDA SKYFLY_STRING,X
    4 Z* ?: w2 ?- s% F
  917. STA $20074 F) c! \  ^3 _
  918. LDA #$00' n6 L: Q! w2 q) G" k
  919. STA $2000# I  M+ n6 k1 l. g. C3 i- J) j
  920. INC $BA
    * C5 K% A$ ^3 h% i4 R$ l% ^
  921. INX
    4 ~" X- E( t+ X5 t* e3 V
  922. CPX #$07
    1 w% x: y5 b3 M* v! {( C  ~" g
  923. BCC SKYFLY
    # \% w! C& h8 f6 j! f
  924. RTS
    ; @+ g  x4 X  \" c. C& P4 u

  925. # E) x- a' u: J) n4 E3 `
  926. SKYFLY_PPU:3 G) P' B+ L" o# y
  927. LDX #$00% q$ @. ?7 k8 Z  A  ?! D* E5 x
  928. LDA #$A2) B# L$ D  @2 E3 T2 K4 V8 T' w
  929. STA $BA% v6 S, m) [3 r/ w5 M0 t" Y4 E
  930. LDA #$22; P4 Y9 L2 i- m
  931. STA $BB
    8 G) f1 l4 n, g1 }& \( `

  932. . o8 [) p3 A0 ^& x" f& d
  933. 8 a, |5 o" [( H: c5 s7 k
  934. JSR A_PPU, B1 u$ O" D, B8 I% ]) y8 ]
  935. JSR SKYFLY_WRITE7 e# ], R: ~4 `8 h9 M5 b
  936. LDX #$00/ G! x/ ^0 `! R$ ~3 u5 n0 v) K! p% j
  937. LDA $07A04 v& N; y2 Y5 K
  938. AND #$20
    8 a3 O/ G5 N8 d
  939. JSR ON_OFF_PPU
    + {. x$ O( h6 C# a5 d5 s
  940. LDX #$000 q; l' V/ ^1 X9 P: R9 p1 D( B
  941. LDA #$B1
    * ^0 R9 o* E( N
  942. STA $BA
    % a) h+ S" k* J) B
  943. LDA #$22
    # j+ D! E9 K4 n+ \! m
  944. STA $BB( n% M* N& O) x  a6 q  @- J, t

  945. 6 R: o+ O. F* k& L  o$ x* O9 g
  946. ( [  t+ j+ a5 @/ s8 F
  947. JSR A_PPU
    $ v% d# s9 j7 s+ d) n+ N
  948. JSR SKYFLY_WRITE
    + z1 {: _2 v! _* J+ e: x
  949. LDX #$005 Y' N) O+ ?0 j' e
  950. LDA $07A1! D$ S/ x1 Q1 ~$ f% E% f' v
  951. AND #$20
    ( g& p' M' Y+ f, D
  952. JSR ON_OFF_PPU2 Q# Z8 q) Y3 g8 f
  953. RTS; ]+ p: e! a9 x6 O$ [. W; t
  954. ( p4 b2 W% W5 O2 l5 H" _4 J
  955. BULADD_STRING:. H" e" v8 p/ ^
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    : J% [; M# R( R" U% r

  957. 5 p$ K/ ~1 I. j8 G4 Q
  958. BULADD_WRITE:) Z" Z$ N# X5 x( y  @+ B
  959. LDX #$00) Q- S/ V8 w6 T7 b+ t
  960. BULADD:
    " U$ \  K) B0 `8 W
  961. JSR PPUADDR_PROCESS, M9 I& g5 R* U
  962. LDA BULADD_STRING,X1 B6 r( L" E4 ~2 W# q" i3 |" z
  963. STA $2007
    ! v& K# k! s8 n. `2 V
  964. LDA #$00
    2 m2 ?4 E4 G  u9 D2 f4 T6 p
  965. STA $2000) v- ?5 _& O+ A4 b( L
  966. INC $BA
    8 W5 T3 E7 m  S- J6 ?
  967. INX( G$ W$ h1 r0 A* I, s9 a) N1 \
  968. CPX #$07
    5 f4 K6 Y3 d  a/ _
  969. BCC BULADD! ^1 x# i9 y# X
  970. RTS: f1 Z. Q: l2 a1 z0 G
  971. 6 _: }) k2 c" M( ^$ u
  972. BULADD_PPU:# ?5 U$ r3 f* c
  973. LDX #$00  S: j% Y2 x2 v9 A0 z! C" P/ u
  974. LDA #$62
    7 }7 t% K3 p& L3 E: t& E3 T' o  W  ?
  975. STA $BA" `8 \1 a1 T/ h
  976. LDA #$21" Z7 y2 U! E8 X8 y+ f9 T
  977. STA $BB
    6 m. o0 ~* Z4 Y: _4 k, T
  978. 3 h% b* e  g  q0 p2 V7 T  S

  979. - w( }. L4 v/ s# M7 |1 M$ e
  980. JSR UP_PPU& d5 n( [$ h4 `4 H
  981. JSR BULADD_WRITE; P3 S4 Y4 T' E# y
  982. LDX #$003 c# Y9 b& B6 q3 ~2 [/ n9 O, t
  983. LDA $07A26 `8 p. x2 M9 J: K: a
  984. AND #$01- h2 p" c$ h$ f( s; J8 y
  985. JSR ON_OFF_PPU. L3 P  s2 t" s3 L) r
  986. LDX #$00
    ; Z/ r" s* X8 t3 z4 P
  987. LDA #$71
    . O3 w! }+ C1 E. [
  988. STA $BA
    0 U( U; K0 a- ^5 c; H
  989. LDA #$21% i) G/ l) I- I4 a
  990. STA $BB8 f: g: M% y5 v

  991. 8 ~  B8 b% L0 t) F2 ]
  992. 9 y& Z$ v/ @3 R, V3 y$ M/ Y
  993. JSR UP_PPU
    9 G- f+ y, n0 I0 i
  994. JSR BULADD_WRITE' i4 }- p2 o  v: i; {# f
  995. LDX #$003 a2 P$ p- r5 D$ C3 ^" v
  996. LDA $07A3
    8 e  X6 V; G* Q& D! R
  997. AND #$016 e0 y) f. {1 n3 f  }
  998. JSR ON_OFF_PPU" D) A+ K! t+ R% b' o* I
  999. RTS9 H6 }9 g% `' y! {/ E
  1000. 3 y# ~8 N, Q7 P
  1001. MENU_PAGE_STRING:# T, ?4 L- `" `2 E2 [
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    * H; q; N* w- C* w' d

  1003. 3 W' W% P! r4 z( V% Y0 L( i) l% q, R
  1004. PAGE_PPU:
    8 p4 s3 N: j! j
  1005. LDX #$006 ^0 W; B' D* G* q! U% f0 c
  1006. LDA #$0A! D4 R- x3 |- b. ^  I. ]) q
  1007. STA $BA
    9 u1 z4 B6 R5 ^* H
  1008. LDA #$23
    " z0 D  M1 V- M9 W( W+ Q3 I) [
  1009. STA $BB
    " I2 N5 b8 s) V9 k0 `! ?$ U

  1010. 1 ]  C; h5 k$ ^5 r& k# o  t2 h4 K
  1011. , h! ^1 K( ~% r
  1012. MENU_PAGE:. O3 o2 ]3 S9 x- _. f
  1013. JSR PPUADDR_PROCESS" ?4 ?, \- S0 j6 {
  1014. LDA MENU_PAGE_STRING,X! k! u9 H8 Q1 D
  1015. STA $20070 w' B. s! X( @
  1016. LDA #$00  i! d# ^% K- H
  1017. STA $2000. u0 v; w* k7 ~5 A$ J; s3 K
  1018. INC $BA
    . b) _; D3 V  ?) @5 ?9 ~, Q* Q% t
  1019. INX
    - |( s8 V# N: t4 t
  1020. CPX #$0B5 j8 f( x* m% i. m, I+ ?. \" Z
  1021. BCC MENU_PAGE9 t8 S! C, Q. _% `- H! o1 ^7 z1 v$ _
  1022. LDA $07AA
    ! P* t% N, ~9 G% K: j8 H
  1023. CLC
    6 K0 d1 V  G% V& G1 h% U+ M0 G
  1024. ADC #$82# z7 i/ v5 W: }
  1025. STA $2007
    . G- g' X7 @; e8 f
  1026. LDA #$00" a- N: G6 ]7 Y- d$ A
  1027. STA $2000/ D) s8 n0 b: x$ N, v
  1028. RTS8 w4 L+ w% G! x2 Q4 y
  1029. # Z/ I2 m# h' q2 V6 k# U% ]
  1030. : E' t( ]5 o6 z( |7 Y' ^
  1031. SKINGE_STRING:5 G: |/ l( R5 |4 P
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    . J+ N7 z% |( V6 F4 r7 K

  1033. / Z1 ]9 N$ R1 p6 B3 e
  1034. SKINGE_WRITE:
    " _4 G/ ~) ]+ u" \, C6 L9 D
  1035. LDX #$00
    & R  V) @3 g5 H0 q1 z7 z; x! l9 J" b
  1036. SKINGE:
    4 B* G: _0 X5 w
  1037. JSR PPUADDR_PROCESS
    ' \, ?7 t  G' T( k/ \
  1038. LDA SKINGE_STRING,X
    ; O! ]8 f& V% v
  1039. STA $20079 y0 y& B# ?  x( ^* ^& M% n
  1040. LDA #$00+ P+ v) y* i. Z% R* \( r% L4 a
  1041. STA $20006 m1 l, m/ V( V* p. z" d3 g
  1042. INC $BA& ^; w& L* Q  h4 A" s
  1043. INX
    1 W4 l% {' j9 T6 V6 n5 V$ Q
  1044. CPX #$07
    0 D* k8 B" U( e
  1045. BCC SKINGE7 z6 |/ \6 U. [" z
  1046. RTS
    1 i: o/ H5 D! Z9 y& r
  1047. 6 |, I- w2 J+ q% w, r9 e
  1048. SKINGE_PPU:
    3 Q; t* H9 r3 C
  1049. LDX #$00% l: U$ H& d) z, X6 P, I' f
  1050. LDA #$A2
    & R9 C# ~# F2 P3 Q/ G$ H& k
  1051. STA $BA0 ]; S; j5 y" ]- C- C! ]
  1052. LDA #$21. H; Y7 K3 U% [
  1053. STA $BB6 Z8 C4 g  k; X4 J* R

  1054. 5 I1 ?' \# E& a4 d& l

  1055. * r0 O' t, L( [6 [- Z
  1056. JSR DN_PPU. I* O. f6 h  p9 B0 ^
  1057. JSR SKINGE_WRITE
    & i3 o3 ^5 l8 [2 _' `
  1058. LDX #$00, e  J/ m  l1 n% _; c: z$ N
  1059. LDA $07A2& Y) ^6 o+ G- p* Q
  1060. AND #$02
    ! @5 o* F6 ]! ?5 s: ]5 C5 R
  1061. JSR ON_OFF_PPU) t* ]+ ?( B' h( R
  1062. LDX #$00; L" _: D. ?/ {* }
  1063. LDA #$B1: C8 p. l5 K- ^( F1 ?
  1064. STA $BA6 A6 C3 p2 O: q# p
  1065. LDA #$21
    # k# Y5 h+ s: g/ l
  1066. STA $BB" ?5 H* R. K2 {

  1067. ( B# |8 f# m+ ^4 q

  1068. & ^8 P7 t' U9 C0 z# r' V6 E% N
  1069. JSR DN_PPU9 w5 y/ [0 D# f
  1070. JSR SKINGE_WRITE8 h+ B/ v) V' p- [
  1071. LDX #$00
    $ X4 t: e2 E+ w1 t3 G) [) Z; ?! |9 ^
  1072. LDA $07A3  N; X5 k. X( p) k# g2 F+ \
  1073. AND #$02
    ; `5 \9 ^+ u/ g# S, Y
  1074. JSR ON_OFF_PPU
    3 e4 u; v( y" F* h* p
  1075. RTS
    : E+ ]: |8 m. S+ T1 k# h

  1076. 9 b7 {3 W6 y7 F; j6 Z/ p' z. p9 G
  1077. BULMIX_STRING:
    6 t3 S+ _1 @- S4 z0 X; W  X
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80! g  y8 B1 n, R7 c
  1079. + c( b% L# A/ A
  1080. BULMIX_WRITE:, J+ A; u  w! z& v8 `1 P
  1081. LDX #$00
    " e% q+ [7 J' A1 C  M& P. z
  1082. BULMIX:2 y2 k& W/ w2 b3 W
  1083. JSR PPUADDR_PROCESS+ Q) Y+ L2 a+ _& z% G
  1084. LDA BULMIX_STRING,X3 ~3 k) e- m2 E! q
  1085. STA $2007
    # n2 _: f  i) Z" T4 G/ h
  1086. LDA #$007 h0 L* ]& S& L; w$ ~
  1087. STA $2000
    " H& H# d8 ^) b% R1 z5 a" c
  1088. INC $BA
    5 Z( `' [+ E* V0 X0 p
  1089. INX) d3 R8 {/ ?6 W' w
  1090. CPX #$07; K$ ~: }$ V+ T0 ~( ?$ {1 L! b! g
  1091. BCC BULMIX/ R9 h6 T: A' e) t2 F
  1092. RTS
    ! B; M5 i% S' ~' c

  1093. 1 B" o: a# P5 G  F" l1 j) G
  1094. BULMIX_PPU:* Y+ ]$ I) \* |( M& R
  1095. LDX #$004 E4 O# _- o- `$ k" F4 A, u
  1096. LDA #$E2% z7 |$ v8 j& ?9 |
  1097. STA $BA
    # l/ a! P( ]% J4 y3 D0 Q
  1098. LDA #$21
    % F! F7 m2 G2 x3 K$ R
  1099. STA $BB& b9 M! m5 e0 d/ R# Q3 o6 v, A" R- Q

  1100. 7 g$ w8 y; x& r6 ?
  1101. ; Q1 I7 h, \: w: I
  1102. JSR LF_PPU
    1 R% ?. k) u+ k; ~# q- a" T8 Y7 w
  1103. JSR BULMIX_WRITE: j! R5 |6 y$ a* m; e4 J. V
  1104. LDX #$00, H$ _) B0 P! ^- k/ ]* O: P% M4 I
  1105. LDA $07A20 F( R$ r" ^  Y0 m6 `5 d! R
  1106. AND #$047 X' _' X& U9 y$ R. j1 n
  1107. JSR ON_OFF_PPU& x) }3 U2 b  l7 p
  1108. LDX #$00
    8 m/ \" T: r/ x' X: v
  1109. LDA #$F1+ U+ ?5 W4 a' I+ y! M; F
  1110. STA $BA
    ' _' H/ }' q7 P- G
  1111. LDA #$216 A; F' v; n: D" J  t
  1112. STA $BB
    ! ?9 F( b0 o8 u& P5 s- M( E, k

  1113. ) ~. m) j- v' B6 o. r. b

  1114. ) @3 T+ c" ~5 y, o. f8 L/ y% C* N
  1115. JSR LF_PPU
    ( R; }) L8 w' O( M  k8 [
  1116. JSR BULMIX_WRITE) ~3 R# ]' O+ F* V0 t! m% f. O
  1117. LDX #$00: e( c: B+ u6 _9 p* f' I6 x( m
  1118. LDA $07A3
    ( `; t/ G: D' R  \9 [, v# N
  1119. AND #$04
    1 g  W9 f, }6 w, ~! q3 l* B
  1120. JSR ON_OFF_PPU* S0 w1 t  l6 _7 s- Q8 f2 p* R8 J: _8 B
  1121. RTS7 ?) M5 }( F+ y! K: O

  1122. 5 W0 v2 u1 C4 b: z5 u/ v# O0 H
  1123. ENELOC_STRING:3 h- f$ U5 _2 c' O6 l# O/ W$ }
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    ! I5 N1 \/ X1 |
  1125. ' T3 j3 ^$ B7 G2 h& s
  1126. ENELOC_WRITE:
    9 w2 S0 \+ c1 f- `8 G" n0 w
  1127. LDX #$00; ^$ w* C1 B# O5 P. n( z0 X- E
  1128. ENELOC:
    $ l# m* c6 P7 Z: a7 v
  1129. JSR PPUADDR_PROCESS
    8 ~6 L# Q. w7 Z; R8 w) E" p
  1130. LDA ENELOC_STRING,X' f8 @/ n) t( }: p- i/ u% {$ m5 R
  1131. STA $2007! \( T# h7 J4 D- y- L5 b5 b7 }
  1132. LDA #$00
    * `1 r) |% Q* }- B+ t
  1133. STA $2000( [1 s6 ], U2 x8 m) u: M9 O- H
  1134. INC $BA
    / N2 L8 R3 B# W7 l) T+ q! u
  1135. INX
    7 w0 k+ J) \1 H% ?  z
  1136. CPX #$07. o& l9 N8 c% w! _. A: e, Y3 M
  1137. BCC ENELOC
    ; `( }0 V! q, C$ X. V
  1138. RTS. A/ h. B+ x$ Q  u& Q, s' p6 x

  1139. # _# m- f4 N# N5 j5 e
  1140. ENELOC_PPU:3 ]% _4 s# S+ m. U# Q% k1 ?
  1141. LDX #$008 z) E9 c- o$ s# ]% n8 b
  1142. LDA #$22
    / q$ c! n+ V8 L
  1143. STA $BA6 h& a( k: B- a
  1144. LDA #$223 \# t2 f! S% I3 k: o0 S
  1145. STA $BB
    3 i4 G8 W$ [) `% \) ^

  1146. : M6 x) T1 Y& U0 S- y
  1147. ( F7 E8 j0 n4 o, t+ [
  1148. JSR RG_PPU2 o0 d1 M9 E) _2 K; ]# `# L' f9 r
  1149. JSR ENELOC_WRITE
    : b# E2 E! E2 R- U' a4 c
  1150. LDX #$004 h: j- Q- g3 M6 {7 c& e$ E
  1151. LDA $07A2
    9 N( i- d+ ]) X9 s% ~. ~" o
  1152. AND #$081 o/ r/ p, L0 F$ ]
  1153. JSR ON_OFF_PPU
    # C5 k2 L! i1 t9 e
  1154. LDX #$002 M0 A2 U/ @# R( x5 F5 J8 ]: A
  1155. LDA #$31" M$ J2 I0 o$ @1 w$ p, x: T4 L' M5 O
  1156. STA $BA- [6 ~  z6 K2 t$ j* v+ r
  1157. LDA #$22. [/ H( C8 x  c
  1158. STA $BB
    . t; j. q. e7 [0 z8 I

  1159. ) T4 R& ^2 O2 g5 L  t1 A

  1160. . z$ G3 Q" U, ^: u/ V. V$ j' }
  1161. JSR RG_PPU: J4 J1 W" v* z; h" }7 Y% N' r' e
  1162. JSR ENELOC_WRITE
    ) V+ M- n# x& k- k9 G
  1163. LDX #$004 ^7 Y" L% c5 z5 A. E3 |
  1164. LDA $07A3; ]8 t( S% h6 q1 }/ q% ], n1 m
  1165. AND #$087 h: G0 p3 b6 g! L' @: p
  1166. JSR ON_OFF_PPU& e! {+ @+ l8 L  K
  1167. RTS
    ) i" b  B$ m4 H7 l3 O' J

  1168. ; O. R( s) Q1 W( P* d# L
  1169. FOCFUL_STRING:' h( o+ A3 c; p5 R
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$802 h5 @5 B7 A/ c; u& @( G- S- Z( b
  1171. / Z% [. E" @) q' f- I
  1172. ( J7 u) h* r5 s; E  X0 E* S
  1173. FOCFUL_WRITE:
    ; ?7 u8 C- w! m7 ^* e
  1174. LDX #$00; n  A$ X: Q6 B. v. K! j) B
  1175. FOCFUL:
    , I/ M" [8 ^4 D, b, J' z
  1176. JSR PPUADDR_PROCESS+ z; Q, _4 j- Z: C# `3 `
  1177. LDA FOCFUL_STRING,X
    - _' |5 o. K0 {1 Z' O& W1 M
  1178. STA $2007
    7 Q! c6 n$ E8 j8 _& D5 }5 f& T
  1179. LDA #$00
    / [; m4 E6 B3 d  ]% V$ B
  1180. STA $2000$ a( p" V; Z. U+ A% }9 e
  1181. INC $BA! t* Q* h/ l7 y4 I1 `
  1182. INX
    / L  ?$ I; }7 t! k& g9 B
  1183. CPX #$07! O/ y8 A" c0 [, ~3 Y* K! M$ j
  1184. BCC FOCFUL
    ) i3 P3 d3 r& J
  1185. RTS
    : n( _% r+ y( c' s* U! p$ e
  1186. 8 B6 m7 M$ o/ R8 v; t1 Y" }  B# s
  1187. FOCFUL_PPU:
    0 ~% `( I# s$ V1 Q+ ~% v
  1188. LDX #$00% M# z' S5 ?; p
  1189. LDA #$62
    ; l. v( m5 w& ?: m1 w
  1190. STA $BA
    7 a; k; J2 D6 |
  1191. LDA #$229 t/ _  L. G; I  O
  1192. STA $BB
    * C! C0 w! K3 u! C

  1193. 7 D* a4 E: n  w& H& O7 d+ O1 R: p

  1194.   W' V2 u. f9 k/ Z; c
  1195. JSR B_PPU
    , v% L" D! V; D6 A7 d
  1196. JSR FOCFUL_WRITE0 s) i2 H2 V7 X  V# s2 O
  1197. LDX #$00
    4 {' t; r9 f! z  l. N
  1198. LDA $07A2
    ; ~, W6 P9 I; w7 A3 v# j+ x! y9 b
  1199. AND #$10
    9 s% k0 h2 Y5 I  A
  1200. JSR ON_OFF_PPU4 r6 }+ V$ J/ c/ X) m. O# V
  1201. LDX #$00
    / `5 `: }7 l. y- U5 d( O
  1202. LDA #$71
    ' H$ \: N; i/ O. d; M* C
  1203. STA $BA4 D6 }- q6 i. V% Y& F/ X" Y
  1204. LDA #$22  Q; P+ ]. _8 M1 \% q1 b1 ^/ C
  1205. STA $BB  }4 V* W3 y3 \3 p
  1206. : ~. _* A0 m; J4 x+ O+ r7 u  A' b

  1207. , d7 W0 z* {9 b
  1208. JSR B_PPU
    * c6 ~& K2 v' {' q8 u" L: \0 \
  1209. JSR FOCFUL_WRITE- ]+ R* E+ s4 D
  1210. LDX #$00, |, i0 I* b! I* K
  1211. LDA $07A3
    ; ?" ^. I% p0 ^
  1212. AND #$10
    / R4 p" T: e' M$ `7 s; H
  1213. JSR ON_OFF_PPU5 y. B7 j7 E) P1 p4 m& l- T- J) i
  1214. RTS
    # V9 w1 g1 \% K2 D

  1215. 9 k" d! N6 C* A- G0 G" ?
  1216. BULCON_STRING:4 v3 ~" Q9 ~: l7 C, n- [1 t
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$805 ~$ X- {! Z! l7 S8 V

  1218. & k: j, U6 K; D) {
  1219. & P. m* H. x  N4 g
  1220. BULCON_WRITE:& A$ E* D8 g, L- n
  1221. LDX #$00
    ( a2 p# H- j' }* B9 S: B2 i
  1222. BULCON:
    9 n' ]; Y) _3 y4 m+ F+ T
  1223. JSR PPUADDR_PROCESS' Z9 N6 S5 E) u9 t& b0 }
  1224. LDA BULCON_STRING,X
    2 w3 Q$ o& o9 l  ]0 h' z' K. a
  1225. STA $20075 Y* t$ {3 u: z: s4 l: q
  1226. LDA #$006 h' ?5 n# s: G  d. y
  1227. STA $2000
    8 d: d- A4 n  \' l& P1 k. S3 s/ W
  1228. INC $BA
    / ]; S3 N, [* t* y
  1229. INX
    3 V" D+ |$ |/ O- m5 t2 ]0 Q6 h
  1230. CPX #$071 V+ J: \8 H  \6 q
  1231. BCC BULCON
    & A% [6 y! u- ~$ x4 r# E* c; m
  1232. RTS8 u" ?+ m! A8 k0 G
  1233. 6 b" p6 V0 R) }
  1234. BULCON_PPU:
    % n( d' r# Z! d2 w' ?( f4 F- q
  1235. LDX #$008 G% q" e- P0 t. g" I
  1236. LDA #$626 f. C/ F8 |  V% r9 H5 m6 ^
  1237. STA $BA  j9 c) `! w4 T
  1238. LDA #$21
    * H+ d. q6 N  b7 y
  1239. STA $BB
    ; ]1 _! u) U3 n# m4 u/ i
  1240. / y6 @3 _* o# J' [6 G% F. r- e
  1241. . s; J3 g* F# \2 c0 x5 w5 j
  1242. JSR UP_PPU! b: @9 }; v0 T  |0 F' }4 l( J
  1243. JSR BULCON_WRITE- i5 o' w( \5 N" d# F- M' F
  1244. LDX #$00
    0 ?" V9 K  C* t
  1245. LDA $07A4$ {2 G) k$ Q9 r; Z- O
  1246. AND #$08
    & H7 `9 h. f) \# w
  1247. JSR ON_OFF_PPU
    3 }0 `! \+ L% X, b( R; [
  1248. LDX #$002 M7 P5 f9 y; D6 l
  1249. LDA #$718 ]" \" Y- n7 ?" [
  1250. STA $BA8 H- k- V/ w1 n0 }7 X3 B2 j
  1251. LDA #$21) j; L% `$ I  W
  1252. STA $BB" I" p3 j2 c, [1 ~

  1253. . h0 Y, A5 r, i( P8 p4 g
  1254. " t8 N' E+ F% l% X: y
  1255. JSR UP_PPU) k8 Z8 b0 J: v' N1 a& C' m
  1256. JSR BULCON_WRITE
    - e6 O! l0 l% [  B4 h3 G4 c! n( j
  1257. LDX #$00
    : G6 B0 s) g# d# ^# {
  1258. LDA $07A5
    1 f; K/ w; v! P% X9 F0 ^
  1259. AND #$08! ^/ p% B+ v: l: J
  1260. JSR ON_OFF_PPU9 r9 y4 O4 x- q4 _% o
  1261. RTS
    - N3 s, J# b( G3 d" r
  1262. % W$ _0 H6 V1 H
  1263. SPEBUL_STRING:
    & w$ X+ p% }- }: f) `: n) _$ Y
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    5 @9 q+ l4 p$ F' x; c$ e

  1265. 8 v: Q; T; K- Y& j. b

  1266. - @; z9 b1 X9 }% y5 t
  1267. SPEBUL_WRITE:* M- e$ b1 H: Y, p; R) _- t
  1268. LDX #$00
    : N# `: ]5 K0 H5 h# h6 Y
  1269. SPEBUL:
    8 k( Q8 P: `  Q! y: C: e9 d
  1270. JSR PPUADDR_PROCESS- ]9 ]) q. k4 _! N" n
  1271. LDA SPEBUL_STRING,X
    8 m) ~9 j' h) t4 ?# Z: G, h" z" W4 {
  1272. STA $2007( J+ p  s: z; j
  1273. LDA #$00: w6 W% `6 @7 }! b" q2 A4 x
  1274. STA $2000
    % D: x% p: h' b& S* j
  1275. INC $BA
    9 w3 ?; r! N4 {1 ^0 K
  1276. INX  t' |8 D' ?4 i! o# K1 D2 ]
  1277. CPX #$071 x* K* g. h  H4 C: R1 F0 R" Y) ?
  1278. BCC SPEBUL% t- x3 A( N$ o2 A8 y& |- N
  1279. RTS  @# A. T+ U  q1 _: N: n# w6 V
  1280. " U' Z. n3 j$ O
  1281. SPEBUL_PPU:
      e2 Z" |  q- k- Q  E" @
  1282. LDX #$00! f, E) ?- q6 S0 r- R& P4 F8 ?
  1283. LDA #$A2
    ) |0 ]  }1 k' ]; f) }' k
  1284. STA $BA7 a* t9 g* r- ^; A4 f; L5 l: k
  1285. LDA #$21$ c6 p1 l2 v2 h; j, Q
  1286. STA $BB; h( L# u1 k5 @& i
  1287. 2 C, F' S: A) k  y& ?# B

  1288. 8 f) P# M$ }+ T. x. y* W, ^
  1289. JSR DN_PPU/ {. T+ Q0 v* C5 H
  1290. JSR SPEBUL_WRITE
    / b" ~3 w5 {8 p; ^: s  ?
  1291. LDX #$00
    2 I3 W( q5 B. I+ @
  1292. LDA $07A4
    & K0 u9 F: B3 O+ d
  1293. AND #$02
    4 f* e, N4 c6 L$ L4 A: [, g
  1294. JSR ON_OFF_PPU' Z1 n$ d( w6 T
  1295. LDX #$00
    ! D: q- k/ j% {' }0 w1 j
  1296. LDA #$B1
    ; y( `8 b& f' s, n
  1297. STA $BA7 W9 M) ]- J& Z8 x; ~$ w
  1298. LDA #$21/ j& Q; B# j/ P, n5 N) D# k% r% m
  1299. STA $BB. |6 a8 [) Y# y
  1300. . @$ E4 ]6 A1 t" z( H- I: }1 a" ?

  1301. 0 l/ D" q4 B/ m0 ~! t
  1302. JSR DN_PPU, Y! [2 ^: n. B( z$ q
  1303. JSR SPEBUL_WRITE! c/ R" T  P& n" d
  1304. LDX #$008 J6 h7 ?, r$ k/ y3 l3 R
  1305. LDA $07A5
    ; i' }5 C: x% W5 _4 R
  1306. AND #$02  \7 p  ?8 ?% Y1 [. c6 u
  1307. JSR ON_OFF_PPU
    % f: J- o" x7 Z5 G
  1308. RTS1 O4 M+ s, b! e8 }7 Y( ~

  1309. 5 `" {- R6 C% x1 [0 q6 p3 g
  1310. .ORG $A5002 D# D* ~/ v9 I+ H* G
  1311. CLEALL_STRING:( p* |7 i' }) [% A) a+ E6 ]9 ]
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
      P" X. H! w' k$ t& `

  1313. ; P- p% ?, E/ V5 s
  1314. 8 Y2 L# e7 F8 p$ x* F. v
  1315. CLEALL_WRITE:7 B5 K! {2 o0 O1 J! u
  1316. LDX #$00
    * i+ O2 D) |1 i- V
  1317. CLEALL:7 P6 I, v3 \+ t; u/ x0 ~
  1318. JSR PPUADDR_PROCESS, c4 d/ R, d! s( V" i+ s
  1319. LDA CLEALL_STRING,X
    ; o7 N1 K- t, p, S
  1320. STA $2007
    % |% C, w/ A; ]
  1321. LDA #$00
    , J6 g: G) K' e9 q" x. \. z
  1322. STA $2000
    ) x* e% x# Z( M! ^
  1323. INC $BA
    ' F& \% |& ^3 q! }3 S7 ~; C, Y
  1324. INX- m1 G8 ]. W& P" p& h1 K
  1325. CPX #$07
    6 M! ^' P% a! m) U: X
  1326. BCC CLEALL
    2 J3 d3 K6 d  r& i
  1327. RTS& J2 y" o% `$ R$ ]# `$ ^7 u
  1328. 3 v2 |, J& |1 T) X5 j& Z! C# C4 ]
  1329. CLEALL_PPU:
    ; `- m& ~! e7 _7 Z' i) p  T
  1330. LDX #$008 @6 P' R9 N" L7 S  Q
  1331. LDA #$E2
    0 X' i6 T% X8 }1 A- c/ Q  M1 L
  1332. STA $BA
    2 a9 O) _# [' g1 O4 V# y' J8 U
  1333. LDA #$211 Q. r# b  _5 Q0 ?/ u2 C2 g
  1334. STA $BB
    / ~5 |7 A  L6 X" g2 o6 I7 s6 i
  1335. & u3 v# B6 L, S0 A+ ~

  1336. 8 F! T! |4 m7 h/ U6 f
  1337. JSR LF_PPU
    / E' Z$ u( [5 z' G7 g: F
  1338. JSR CLEALL_WRITE: X7 ?  s9 j* \( W
  1339. LDX #$00
    & T1 `$ c5 y* {9 r* B' r
  1340. LDA $07A43 b0 O" m$ Y8 ]& y$ K$ Y
  1341. AND #$044 U% p( ~5 X4 U$ C- E
  1342. JSR ON_OFF_PPU1 w0 G! G$ ?) }; W  F
  1343. LDX #$00
    , w. c, P& V! r- B2 P( H, a& u
  1344. LDA #$F13 H( H" H7 Y6 Q3 s2 B' y
  1345. STA $BA
    - s; t5 g4 P& H% A
  1346. LDA #$21
    & T% q; r% e8 H1 N8 v( d0 d
  1347. STA $BB4 N# b5 {9 b4 c$ z

  1348. - A" |2 [' A/ e0 J% w1 o- T4 c
  1349. + B' P) T2 O+ g5 @% O7 X
  1350. JSR LF_PPU7 j- [3 W7 U/ t/ m' d
  1351. JSR CLEALL_WRITE/ e  `; J+ u: B' b' @  C  ^) L
  1352. LDX #$008 j2 N1 l  q, P5 S
  1353. LDA $07A5
      ^9 s6 j8 x! O4 `# Y& c6 e
  1354. AND #$04
    " v4 y( t6 A7 U/ Z4 G
  1355. JSR ON_OFF_PPU
    8 }, I' X# P3 @
  1356. RTS& I  G+ L- p7 q

  1357. 3 X5 `  [1 f5 O* i% N
  1358. HARDMODE_STRING:
    1 T) Q% z9 @+ q3 ?1 a
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    5 u$ g! p# h9 k5 ^

  1360. 7 T, {: e6 o! h3 x! A4 M( Z% @
  1361. " A( X8 w5 z2 f9 k
  1362. HARDMODE_WRITE:% W% C/ p6 H  d9 \! g) }( \
  1363. LDX #$00
    ) Z$ w* x  l8 `  y
  1364. HARDMODE:7 I! {% {5 D! J0 l/ d
  1365. JSR PPUADDR_PROCESS
    0 V/ X$ V' r$ K# F7 I
  1366. LDA HARDMODE_STRING,X7 B( |9 M5 P. G  d% k7 j, J) _6 v4 O
  1367. STA $2007
    * v* C  n  G5 ~( K
  1368. LDA #$006 G2 h3 b5 u6 ^/ G& T0 X; X
  1369. STA $2000! U, L1 [& x& I% \/ ~1 L, D
  1370. INC $BA
    3 \5 a) _+ k( g3 P. R
  1371. INX
    " G( ~! _" v* m4 P. C, ^
  1372. CPX #$07- t5 c- _' {) A; Y7 T  T# Z  q
  1373. BCC HARDMODE# Y2 p8 a. e9 M( z5 p
  1374. RTS
    # ~' y4 o4 R! t: t$ V7 J4 Q2 B
  1375. ' f) ^2 }; g$ l+ j: H
  1376. HARDMODE_PPU:
    : X5 a( e4 O8 R- c
  1377. LDX #$00
    ) W0 J6 W5 e  D# v/ e1 s" V4 F
  1378. LDA #$22
    0 I5 e% j: h4 u! k4 n1 Q1 h
  1379. STA $BA
    ; s% B" e- g/ r3 I: [9 Z
  1380. LDA #$22
    & t/ M! w0 i% U  q
  1381. STA $BB
    : o, a; I3 d# p; V
  1382. JSR RG_PPU5 v) ~& Y' J! |- n, G1 U- e
  1383. JSR HARDMODE_WRITE" N" S0 Y2 A6 F6 q
  1384. LDX #$00
    ; n0 [6 U7 z" e
  1385. LDA $07A4
    # y; [9 C' Y5 t4 B
  1386. AND #$01
    . `% H+ W2 d) n/ t4 W* ]
  1387. JSR ON_OFF_PPU2 X$ a6 r  k' M
  1388. LDX #$00
    ( ?  Z5 ~/ c# W1 i
  1389. LDA #$31
    + P, X( x) r" S3 I4 S2 O- k
  1390. STA $BA
    ( r8 ?/ }# e+ n$ b1 P8 v: s. `
  1391. LDA #$22
    ' {4 I  g/ P/ F6 T
  1392. STA $BB
    4 {- E0 Z0 I  q/ X. I- i
  1393. + M% G& v( P% c

  1394. 4 l% @, D: n& `) ^3 a
  1395. JSR RG_PPU
    : h: _8 {3 }! x
  1396. JSR HARDMODE_WRITE$ C( ]* f) t2 ~1 y  h) `
  1397. LDX #$000 l! B. |, v/ V
  1398. LDA $07A5* Z* B; [, u9 F9 C6 a# n4 w
  1399. AND #$01
    ) |- Q/ u9 K. N* t6 O0 o# V
  1400. JSR ON_OFF_PPU3 ~' h! c2 t0 a" O2 k
  1401. RTS
    2 z1 r2 K) n8 t  R0 U
  1402. : w4 j5 [' x# Y; {9 N
  1403. B_TO_JMPSTG_STRING:3 M( |  _6 }% i0 \9 L( b# t6 o1 x. ~
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    * e  F) o. G  v4 S  p1 u, c
  1405. & K$ H" [+ f6 P! R% E+ ]2 O1 b: N+ g
  1406. # c7 |- w$ I/ h
  1407. B_TO_JMPSTG_WRITE:" u2 |# z- J: f. X! {; P2 O
  1408. LDX #$00
    4 O* M9 b. h: C6 d7 d+ j+ u
  1409. B_TO_JMPSTG:) w2 \, p" ?+ n  Q- j) F+ C7 p
  1410. JSR PPUADDR_PROCESS
    , J$ ]' L" G8 a9 g& s. C$ l
  1411. LDA B_TO_JMPSTG_STRING,X; T' Z; P9 U( x% V
  1412. STA $2007& ]0 {, e) R( O0 j# C4 C
  1413. LDA #$00- q0 V* m+ [1 {, R( q
  1414. STA $2000: Z' n3 z& H6 C
  1415. INC $BA$ N2 o' E0 |( p
  1416. INX; n% m- q) W4 G" b! ^8 I' }
  1417. CPX #$0D, b6 T9 G; ^/ X+ K5 w0 O
  1418. BCC B_TO_JMPSTG. u  i! E$ z* N
  1419. LDX #$009 k: j/ P/ e8 J& Y
  1420. LDA $7FE09 l' n  }$ B* v# I7 y- g
  1421. JSR ON_OFF_PPU+ m- v3 W& }. g0 q' x, ?& F
  1422. RTS
    ( `9 }& W9 \# U( c1 O

  1423. 6 n9 N' z6 _, D( M  J. U
  1424. B_TO_JMPSTG_PPU:4 |" f% s2 Y$ z7 R( S
  1425. LDX #$00& ^: q/ E5 f. L2 D) ~( ?
  1426. LDA #$685 c, R2 c0 Q$ Z6 d2 ]; j  o
  1427. STA $BA. Z' v0 |5 Q- m$ b5 f7 b/ B
  1428. LDA #$22
    $ T% H. L/ x# K2 A  k, y. V
  1429. STA $BB+ _/ Q* P5 Y0 S4 L0 H
  1430. JSR B_TO_JMPSTG_WRITE
    - L5 f$ t( r+ [9 J$ K' A. R
  1431. RTS
    . r$ E( P8 F$ ]6 `+ C

  1432. + Z, d& u8 P$ X) Q9 G

  1433. 9 U/ h8 f$ P% r. K. j
  1434. A_TO_PLAMOD_STRING:" i+ b7 g7 O" v! B  r
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80- ^. O1 {9 S0 F4 p/ U( H$ T) f
  1436. 1 y) |6 F* i3 f" ]+ A
  1437. 1 g6 F$ ~. ^; `/ \; L
  1438. A_TO_PLAMOD_WRITE:
    / D4 J# I, d" Y% |  v8 z0 h' X
  1439. LDX #$00& ^+ q  V8 r" X6 J  g
  1440. A_TO_PLAMOD:
    6 J# D% Q6 w1 G& n( V' R  l. J" }
  1441. JSR PPUADDR_PROCESS
    8 u( _9 w4 }! I6 A7 E- x+ C' H0 z: c
  1442. LDA A_TO_PLAMOD_STRING,X3 _: Y! b) F' G# T( m# ^# a
  1443. STA $2007. ^) v* T+ [2 }! h! c; u4 C- ]
  1444. LDA #$00" {" D5 Q: W- [: k" _% f5 i
  1445. STA $2000. R9 m( T& \5 F$ y3 [! ^8 x6 E
  1446. INC $BA; v  _. N  M  U* R' u3 W* X, w
  1447. INX
    . W) ]# q- T  S# h1 r0 a
  1448. CPX #$0D& P3 B7 n4 D9 g! F0 X4 \
  1449. BCC A_TO_PLAMOD
    $ X' @1 W  S. E; W$ p
  1450. LDX #$00
    $ Z. g9 }  Q$ `% u+ q; B. D* d
  1451. LDA $39
    3 ~+ E" ~% a8 \, V7 q$ {; L# U
  1452. JSR ONE_TWO_PPU
    : }% j2 v* R1 K% J) z
  1453. RTS
    - _  V( t+ P/ p5 ~! P& m
  1454. - a4 Y5 I. n) k& ?, Q: [* i2 ]
  1455. A_TO_PLAMOD_PPU:, G" N% a: q6 o4 d: a
  1456. LDX #$00' d, ?% ]/ ?/ @6 O1 }
  1457. LDA #$A8& K1 S$ Z5 e- b0 J9 }& r0 T  t
  1458. STA $BA
    . ]0 n8 Y& c# I& `9 @! k
  1459. LDA #$22+ o% ~# r4 _$ j# E: o# d
  1460. STA $BB
    4 U! P7 S2 t) E9 O
  1461. JSR A_TO_PLAMOD_WRITE8 U8 _- B. Z2 t9 R5 \, _
  1462. RTS
    + o% f, G* S# Y* {& E$ Z9 V8 B

  1463. ' t2 y  `# n- M
  1464. MOVSPE_STRING:9 M3 s" D6 f5 [. g7 T( p
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$809 ]# G' [4 p! |, |
  1466.   x, D) g! {: L- H; n3 f6 L
  1467. 4 f5 E! H& e5 d2 s
  1468. MOVSPE_WRITE:( P) ?9 G! V" f' l' i$ i
  1469. LDX #$000 v, D; }* S. P, z) G& o
  1470. MOVSPE:
    5 w/ H# F; x5 K% I% V/ ?
  1471. JSR PPUADDR_PROCESS! w# z. j+ Y0 j5 s
  1472. LDA MOVSPE_STRING,X9 W* R* o( ]* a
  1473. STA $2007
    8 s( }- ^7 e- f! U
  1474. LDA #$00
    7 R- G+ s1 z7 l. G0 e. k
  1475. STA $2000
    , q' S) M" ?* h* @8 i
  1476. INC $BA
    $ _+ v/ H5 B3 w9 U1 _
  1477. INX
    + e$ @8 `7 w- U7 h0 c
  1478. CPX #$07
    ( u( }1 h  K1 n, H
  1479. BCC MOVSPE
    ) g: b1 t" G8 N
  1480. RTS
    , t1 j& T5 Q4 Y2 |4 M+ k
  1481. & v, i" I, W6 r
  1482. MOVSPE_PPU:8 [, v& H; ~1 T- _6 X% J! ]
  1483. LDX #$009 K! w( X: u/ G' ~# t
  1484. LDA #$69
    ; l1 |' U. y  G% E
  1485. STA $BA6 A5 i1 }. E" o2 Z4 m$ z- D
  1486. LDA #$21  Q/ e# Y6 U! J# J1 D2 Y
  1487. STA $BB
    ' x  i! F, `$ u; ~- X1 m

  1488. % j2 T* j, @: x5 _

  1489. 0 `' \. f& L+ s# T: }; R0 R4 [5 \# s
  1490. JSR UP_PPU
    " k3 l1 Y/ q* e! B  A6 u+ F
  1491. JSR MOVSPE_WRITE3 ?+ M# B6 y! T- Y
  1492. LDX #$00
    # E4 t0 I5 \# w. v
  1493. LDA $079F* C, v8 @0 `+ t9 j* g  C8 u& m
  1494. AND #$085 h* d/ J( S! s4 M/ ]
  1495. JSR ON_OFF_PPU2 Q; W& N0 i7 d6 f% N. i8 w. T
  1496. LDA #$80
    & w' c. M/ r' B3 t2 e6 v0 q4 N
  1497. STA $2007; k/ v% t8 m" ~' B) w
  1498. RTS: E: p  ~8 r0 u0 Q" X# f- a
  1499. 3 w  G) }( c& d( ?) Q3 y- y
  1500.   4 g8 k. N2 {; E( I  B
  1501. UNLJMP_STRING:0 c& u# ?3 w+ W$ Q! b9 y( H1 S9 z
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80- C, E( y% O8 R5 }3 N- _7 I% E

  1503. 3 R+ N+ W( m! R: _8 B5 t. v: t2 b

  1504.   ?) m' T( j3 Y, U0 |' r7 I7 O
  1505. UNLJMP_WRITE:
    * Q! `# l) i# k1 x% c2 J  q
  1506. LDX #$00
    ! l4 Y1 h/ t1 {  Q6 A
  1507. UNLJMP:
    ( ^. c* d+ a# ^
  1508. JSR PPUADDR_PROCESS4 }$ ?6 Q6 {, x0 O  j
  1509. LDA UNLJMP_STRING,X" s% M; M; n' ~8 \' ]1 Q/ h
  1510. STA $2007
    - M' e) S8 |, [2 `3 U
  1511. LDA #$003 w4 }  V- u  T" A; J
  1512. STA $20006 P' @. Y2 @. v  u% H& S
  1513. INC $BA6 E/ ]9 s( s9 P7 I
  1514. INX
    8 {$ h) Y! m5 o- Q( S, u
  1515. CPX #$07; w0 B1 l! Q6 r" \
  1516. BCC UNLJMP' M: a1 x" u) S- S; H
  1517. RTS
    ! s# A! i4 c# }- X( ]

  1518. : Y  z$ n1 ^+ V0 M: `& Z
  1519. UNLJMP_PPU:2 i1 {0 G3 b3 X" |# |# I" Y
  1520. LDX #$00+ w. l% l  m; q' |5 Z3 c
  1521. LDA #$A99 O/ C% ]0 T+ o! u$ x* K
  1522. STA $BA
    3 N$ H- ^. B& v, }) I3 L/ K
  1523. LDA #$21& Y4 C" J2 t. `0 g: i7 ~0 b  Z+ k
  1524. STA $BB
    7 u6 Q. W4 m9 }7 M# d2 `

  1525. 7 I% c. e3 |1 h7 f0 X
  1526. 9 E+ n) N6 g2 r% M: d
  1527. JSR DN_PPU
    - l- ^+ q% Y: ^3 \
  1528. JSR UNLJMP_WRITE
    5 {6 y$ a/ T7 Q4 F7 \
  1529. LDX #$00% @* N1 ~$ U* _% a
  1530. LDA $079F
    ! Z: `+ ]8 I* N) W* l
  1531. AND #$049 C. m& L6 r1 F: \- I$ x- ~3 S2 j
  1532. JSR ON_OFF_PPU
    : M! ]- a/ \. V  r' |
  1533. RTS
    $ {& U/ @8 {$ G' ~0 Z$ i

  1534. - w2 S/ l. P0 s, h( T1 x

  1535. 6 ]5 R* N+ s, s/ L, I
  1536. DESTRO_STRING:" o# h: C# J5 n' n
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    & X3 Y4 Z: U9 i( A) q! G
  1538. 2 p9 ^  o5 C$ h( i8 ^  D: E- [

  1539. % t9 G2 x: T2 E& q# T6 R3 c$ L
  1540. DESTRO_WRITE:
    . ^, g4 r# i3 P3 @- T. e' g7 I
  1541. LDX #$00+ s8 [. @" [; [  S
  1542. DESTRO:
    " L3 M6 C4 i! V/ O% Y) I# l( n
  1543. JSR PPUADDR_PROCESS
    ! q. V5 J3 R/ {! J1 \2 l8 G! i
  1544. LDA DESTRO_STRING,X
    ( f- ]2 T# b3 y, g$ S
  1545. STA $2007
    ' S# [2 }* ~) Q, ?3 q2 }1 c
  1546. LDA #$00
    + ^: y; T! g" b: a- b8 ]& D/ g
  1547. STA $20004 Q* W6 [. u8 j( z6 E
  1548. INC $BA: y0 Z) Z* h: p6 y/ a: H1 z2 A
  1549. INX
    6 T6 s, B6 U6 D2 i
  1550. CPX #$07
    2 L# |  @- A$ P6 Y0 z5 u
  1551. BCC DESTRO3 V, Y/ p4 g- U8 j& j& X  Q
  1552. RTS! i# A( r$ m+ f' O3 g; [
  1553. ! v: f3 O. f. z8 M+ P
  1554. DESTRO_PPU:
    ! b0 [( L( Q- e' ?. U' o* U* @3 W
  1555. LDX #$00
    1 k7 {, {1 l  T  H8 _4 t1 b: Y+ }3 C: Z
  1556. LDA #$E9, i3 b1 D" p; i3 h6 A5 m5 V
  1557. STA $BA
    1 F7 E  P( }( k6 n, }
  1558. LDA #$21% W  k+ F9 Z8 t( n8 |8 K5 v+ K
  1559. STA $BB
    3 j  I" [9 Q8 w! n

  1560. & l+ g( v4 \9 f+ ~; L2 {# W- Z9 k+ f

  1561. + }8 Q* |. P' \' B  X# j! m
  1562. JSR B_PPU
    0 x0 d6 I. f# Z: t6 o
  1563. JSR DESTRO_WRITE
    . G0 K# o' V+ B
  1564. LDX #$004 P- D2 ~% m2 F6 A6 x1 b
  1565. LDA $079F( K0 k- M6 {( c2 n1 c8 ^3 L
  1566. AND #$40& Q: @- W9 j3 u' S' S1 g' ~
  1567. JSR ON_OFF_PPU# h3 i' d* f& h
  1568. RTS) I1 W9 C7 ?4 |; Y  [2 D7 P

  1569. ( N2 {' {. [' m( R8 i

  1570. 2 H* s/ {' [7 }
  1571. EQUBUL_STRING:
    * f6 e9 ]4 D9 O3 V2 ^3 W" x$ T
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    . Q$ E7 E. |8 U8 {- c

  1573. / M+ l9 {9 ^% p+ U) x
  1574. 7 B+ n9 z3 _+ `
  1575. EQUBUL_WRITE:
    " l; D$ o: Z; f' ~, k
  1576. LDX #$00  X- s# y! s. L9 @2 M4 u0 `& P
  1577. EQUBUL:; u* v1 a8 U9 m) x0 m2 `9 N: J' L) h9 N
  1578. JSR PPUADDR_PROCESS/ }- B4 R" u" m; N6 n" q3 z. P
  1579. LDA EQUBUL_STRING,X: A! P/ P0 J' _0 S( b; |  C4 A
  1580. STA $2007# u" T* }/ d. c. |
  1581. LDA #$000 H% R& i0 ?2 N' P* T7 S. ^4 c! e4 j; k
  1582. STA $2000
    & {' n+ l4 O4 A0 |
  1583. INC $BA, j5 R: n" K% X9 b
  1584. INX
    + }) ~4 b" ]" L% ]: \. f
  1585. CPX #$07+ ^9 H+ C% X0 z
  1586. BCC EQUBUL6 Q& V, J! V5 I1 y2 B. I! S" g9 X
  1587. RTS
      w) l: E: f1 \# q4 l7 v2 [! {

  1588. % J1 C0 E- \( L4 P% F
  1589. EQUBUL_PPU:2 x" B) K1 h0 ?5 D( ^$ k' p$ [
  1590. LDX #$00. a+ N* K: N' f4 o3 H1 R- m# {' o
  1591. LDA #$29
    * L& i+ m1 F/ a' ~- q
  1592. STA $BA) l( P, l, v, e
  1593. LDA #$228 J9 W7 M* x% ]( r6 K0 H$ X
  1594. STA $BB
    ' I+ S6 N) G8 r) J

  1595. # h9 ^3 l& L4 k
  1596. - ?+ K2 Y, W+ [1 m2 Y
  1597. JSR A_PPU. w) K, M  N) k' A& g/ n5 ?
  1598. JSR EQUBUL_WRITE1 S* Q: L# l$ ^$ N) M4 [
  1599. LDX #$007 {9 K# K2 O4 f0 u6 B
  1600. LDA $079F
    " H7 D, t/ H( L. ]( Q
  1601. AND #$80' w+ g7 T* y( I' J* f: G
  1602. JSR ON_OFF_PPU0 e# f" {" P& S, O) O! W& X
  1603. RTS  d( q( E3 G; Q8 T6 h4 @& T

  1604. / g7 i) u) g  Z& Z, I3 r

  1605. : w# p  y1 L' x8 \/ a9 |& J
  1606. ) Q2 Q6 H7 }9 W, I4 B' O4 S
  1607. BULSEL_UP_STRING:$ X+ ?" i0 r  U; o+ G0 w
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80, L& I. w  ]" O1 b* J9 c- k
  1609.   r- |3 S5 I$ ^9 w
  1610. BULSEL_DN_STRING:  z% [" |+ y' t( z& k& `
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80
    ) @( S' V2 h% X
  1612. 8 z: o' B  ?) P# v, e0 o$ r
  1613. BULSEL_LF_STRING:
    / ]5 n( Y5 q/ x$ @( d* d1 I
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80, p2 [. \, Y* Y; z# i
  1615. & p2 z0 ]9 F+ F! l
  1616. BULSEL_RG_STRING:) L% r- A6 R3 a+ l
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$801 P* H0 @  F/ i

  1618. , M- W+ {- [; d: N) O5 T
  1619. BULSEL_B_STRING:9 m9 u( f# o3 e- v
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    4 X/ }/ Z4 j. s7 q$ x

  1621. ! ^6 ?, K% F5 Z
  1622. BULSEL_A_STRING:$ J* _; ^0 L3 _0 F7 Y
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    ( R$ z6 T# N2 @5 E

  1624. ! Z. c5 j5 ~2 D$ y. h7 p
  1625. ! W) g0 w* Y6 C. y' B3 y7 M
  1626. BULSEL_UP_WRITE:
    4 [5 x8 j9 e7 |" _" h! n& d
  1627. LDX #$00& v" V) ]8 |6 v6 `0 k
  1628. BULSEL_UP:
    6 N0 R- N5 B$ ~& O5 w- d% {9 R9 J
  1629. JSR PPUADDR_PROCESS& A8 \% K& N; s; z
  1630. LDA BULSEL_UP_STRING,X! E8 j" \1 s! S* [$ i) \
  1631. STA $2007
      G5 }, `  f# @
  1632. LDA #$00
    3 d- ?3 p8 ?1 T0 z
  1633. STA $2000. _; C5 }0 r8 V8 Y/ S. W
  1634. INC $BA7 M8 Z' f' ]; b- r# o2 z
  1635. INX, s+ `, Z1 q. K. y+ ]- B
  1636. CPX #$09
    , W2 p- ^! I& k* T5 W
  1637. BCC BULSEL_UP7 ~$ _! Q  t0 \2 k; T$ }
  1638. RTS
    7 y$ c/ O' i/ O8 \5 m
  1639. BULSEL_DN_WRITE:
    7 U( C  a8 [6 J" F( o6 ~6 C9 [
  1640. LDX #$00
    / P8 ^0 N0 l8 x7 {
  1641. BULSEL_DN:
    # p, F% r5 D) O
  1642. JSR PPUADDR_PROCESS
    ! z$ I$ v% O: i% c3 X% y4 O
  1643. LDA BULSEL_DN_STRING,X: o  N5 y, A' `6 _  a
  1644. STA $2007% L8 {, G' m2 \
  1645. LDA #$00
    ; P- a5 g  r8 X
  1646. STA $2000
    ) P0 o7 R9 {$ b& x
  1647. INC $BA) o; `; b; s/ Y, l( x! E' T
  1648. INX. ]: b1 X+ \: G% d5 }. M9 P: x
  1649. CPX #$09
    # _* E) s; q- ]  J3 R- b2 v
  1650. BCC BULSEL_DN
    5 m$ c4 p9 E* e
  1651. RTS
    4 R5 J; k+ i# i. h4 [8 L. d& t
  1652. BULSEL_LF_WRITE:
    5 \- C. B5 M; y# @9 K# c$ p3 r
  1653. LDX #$00" E/ j0 J4 s0 M
  1654. BULSEL_LF:- j. `. s# r+ Q
  1655. JSR PPUADDR_PROCESS3 W- X  _. I$ T& J
  1656. LDA BULSEL_LF_STRING,X
    6 m$ t7 f! v+ d+ ^; C0 ]/ e
  1657. STA $2007
    , R; U4 J' |; O/ E
  1658. LDA #$00' H  U& o6 ^3 h
  1659. STA $20001 D: `6 }* c- M/ C3 T
  1660. INC $BA
    % J# o' ^2 z, j
  1661. INX+ q% x" p" I  r; r5 e6 K
  1662. CPX #$09& y* K! n5 G# ], g" f# a. s
  1663. BCC BULSEL_LF
    : l# @$ h3 \, F$ |5 V7 J9 _& J
  1664. RTS/ M, q/ E  b- P) Q9 a7 Q  ?
  1665. BULSEL_RG_WRITE:" U2 S- M- y, N7 m$ a( g
  1666. LDX #$00
    0 [  l$ p7 D  L( k
  1667. BULSEL_RG:
    1 }& Z1 G0 ?# V5 V
  1668. JSR PPUADDR_PROCESS
      R) B) c  D. T! ?
  1669. LDA BULSEL_RG_STRING,X7 Z) }2 e/ T7 ^) _3 F. I
  1670. STA $2007
    ; t( L" F9 x" S3 J
  1671. LDA #$00  S! U9 @; y* Q/ C' e1 M
  1672. STA $2000! O, O' B' M7 s. z, J
  1673. INC $BA( M& G7 d6 [% {9 s9 \3 G! N5 ?1 S' `2 }
  1674. INX
    " K+ Q, }# k- z, f6 N6 i
  1675. CPX #$09
    4 v: e6 k5 T1 r% R
  1676. BCC BULSEL_RG: A  X1 g' }( ^3 j! C; w* X
  1677. RTS  N" A. f% u9 v. L; |- a4 B
  1678. BULSEL_B_WRITE:
    2 F- ^: X( z, g0 ^. b" f3 J! O- W/ u
  1679. LDX #$00
    ' P5 W9 c. A5 M1 K' N  |, a' t, z
  1680. BULSEL_B:
    / r8 `1 C8 {  o% H# M
  1681. JSR PPUADDR_PROCESS
    5 @: Z/ L- V2 _: ?5 e
  1682. LDA BULSEL_B_STRING,X& t4 j0 O/ G7 E
  1683. STA $2007
    4 l; @: f/ h- ?  L5 g; G0 ?
  1684. LDA #$00
    : F) h2 W% k* C& p; z. e
  1685. STA $2000+ U7 L; {$ x0 [! a; m5 f: G
  1686. INC $BA
    7 u" _: `5 K/ u1 a2 ^
  1687. INX
    * k. L* l/ K2 B2 }
  1688. CPX #$09
    8 U. f6 G/ r% B( d
  1689. BCC BULSEL_B4 _  K0 t# [4 V9 D5 u2 A6 h
  1690. RTS! r, i0 e4 R9 K! T% ?' w" F% L( |
  1691. BULSEL_A_WRITE:( U3 y- g( l( _" N8 w' d! l
  1692. LDX #$001 b, z9 t7 G# j; {
  1693. BULSEL_A:( c# _. J7 Q# Y# @; l9 s( d7 y: y
  1694. JSR PPUADDR_PROCESS' o3 H1 T; R/ J5 p  c
  1695. LDA BULSEL_A_STRING,X
    + J8 ?3 X1 S$ {8 Y7 K( z
  1696. STA $2007
    : |  [" W! _! [  S: p
  1697. LDA #$00
    7 U( o; r, o( Y! h9 z0 j
  1698. STA $20001 C; F2 b4 ~0 r
  1699. INC $BA9 p5 w  a$ `5 T1 i" R) t
  1700. INX
    " ?5 l- y0 N" t8 o
  1701. CPX #$12- b) {' n7 r! _
  1702. BCC BULSEL_A
    ' y: H, e; {! @9 k: n
  1703. RTS9 o) q, }* |. O( d# a

  1704.   ^  \# W( A' M3 n" P
  1705. . s+ i- }. `) ^$ `; ]

  1706. 6 t, a1 c1 `; v7 s( u
  1707. BULSEL_PPU:
    8 `% @9 ~: M- r3 }+ g  \3 V  X: F6 A
  1708. LDA #$6C6 E) f0 i, c2 B% {- \; J; `
  1709. STA $BA
    2 [- Y( O/ H7 F5 ^
  1710. LDA #$21
    : \6 _0 z0 R0 B+ s* B4 t
  1711. STA $BB# u# L3 B# C/ L. S$ e2 S1 l1 m
  1712. JSR BULSEL_UP_WRITE
    7 b9 A9 ~) i$ ~. h- |+ l% M. d
  1713. : d7 ]& {, I' D) z) U2 r9 ~
  1714. LDA #$AC
    0 s" B6 [# i8 G
  1715. STA $BA
    1 P% k6 h2 q% i# L, C. C) r
  1716. LDA #$21
    6 j! @$ w; M& {5 h7 d
  1717. STA $BB
    0 p3 q' O3 V5 b: M& O
  1718. JSR BULSEL_DN_WRITE# j: Z) e% l! e: w2 ^4 f
  1719. % R2 b0 m4 V* p; M; d2 y# x
  1720. LDA #$EC8 O. q7 Z$ J' _8 |: t1 t, k
  1721. STA $BA- N; K% t& }5 Q/ x% z
  1722. LDA #$21- i* K& \1 L+ K) g. n
  1723. STA $BB
    & ^  h6 M" G8 h$ i1 N1 h
  1724. JSR BULSEL_LF_WRITE
    , C- X2 O1 ~6 J" ^2 r+ @
  1725. 0 S( }, H+ k% @* f: I( I6 J  B$ o
  1726. LDA #$2C
    ( ]2 G8 b0 f* t$ \
  1727. STA $BA
    * H) H, S. |' x# T7 V; s: w) w3 S$ v
  1728. LDA #$22) M/ N& J# h/ q  Y+ X; e
  1729. STA $BB
    3 @! u, \/ ^" i% Y; G
  1730. JSR BULSEL_RG_WRITE4 c( o5 G4 z- ]
  1731. % P6 Q3 ?4 f2 ~9 S6 {% d5 J) t
  1732. LDA #$6C
    & v5 F' F9 i$ n6 p9 V9 x  b
  1733. STA $BA
    , S4 f0 S0 i* n/ a! q
  1734. LDA #$22( f' t' [6 O9 _7 a
  1735. STA $BB% b* k+ u9 Z. L6 d
  1736. JSR BULSEL_B_WRITE6 B" O6 c/ k! F' e1 b( n
  1737. " b8 e* ^9 I7 A
  1738. LDA #$A7
    # ^% H0 _6 x$ Q: K. d! E) [$ \
  1739. STA $BA5 I2 y( x- R* C4 {: b/ C& W
  1740. LDA #$22
    6 s* r; _: M; A+ F: S+ T
  1741. STA $BB+ u8 k; P0 c6 \8 P" |
  1742. JSR BULSEL_A_WRITE! }9 G$ H( V: R4 k5 m3 I: ]7 W
  1743. RTS1 G) ]0 `" f5 M& e! Y; i
  1744. 9 M) b6 |& [" c  i. k

  1745. 8 W8 m. O( Q& _
  1746. $ }' P2 `" S8 O
  1747. UP_STRING:0 P/ d. b4 _: [/ R; v8 n, y# j% o3 U
  1748. .BYTE $9F,$9A,$80
    1 x. R- k: V) k! R

  1749. / N# z: N+ @" z* s8 z  q
  1750. DN_STRING:( x: p6 s/ u' u+ Z! _' Z& e
  1751. .BYTE $8E,$98,$80" u; X+ Z! [& W3 C

  1752. 4 Q0 F0 N" L2 O) N0 X" h
  1753. LF_STRING:
    ( }5 O6 _7 K; n: D$ ?9 h, k
  1754. .BYTE $96,$90,$803 Q+ f" p) X0 C" p
  1755. - F# R- }6 h# r* q
  1756. RG_STRING:' ]! t1 U! l* ?2 J0 Q
  1757. .BYTE $9C,$91,$803 V+ W: \/ u5 g' |* e

  1758. * I  s% x* h; p% J. _0 k+ g
  1759. B_STRING:! _/ g! [& \1 D% w. f; h9 c# w0 J, k
  1760. .BYTE $80,$8C,$80
    5 C. x$ Z5 {0 X* ~# b8 q2 [5 d
  1761. # l6 _& ]) b! B3 `
  1762. A_STRING:
    * @& ]& i' ~, }- {' g% \- F
  1763. .BYTE $80,$8B,$807 q8 |4 _% `7 g# W: i
  1764. - ?/ |7 }' E7 m
  1765. 7 |2 K: g5 U/ \/ a1 a
  1766. UP_WRITE:
    ! N6 }5 E0 X( w4 W  {
  1767. LDX #$00. u* u6 y& _7 C
  1768. UP:' y& Q; U: L# U+ Y1 l
  1769. JSR PPUADDR_PROCESS, B: q' ?7 D' K2 n( b2 x- V) S
  1770. LDA UP_STRING,X7 s+ n( r  k- i' E
  1771. STA $2007' O- t: D0 _* N. a# Z$ B$ b2 \2 }
  1772. LDA #$00
    - _& H% S0 F/ G
  1773. STA $20007 O) V  ~2 _+ d/ R: K% ]+ c
  1774. INC $BA
    ; C4 Q) M# e- G7 |
  1775. INX
      D# a. E2 C0 B, t
  1776. CPX #$03
    ! Y4 W# F+ B* H
  1777. BCC UP- g3 G1 X1 ]' ^/ @$ }' f. |/ t5 O
  1778. RTS( K' z1 F. e4 |0 h# Q7 p0 K, U3 l
  1779. ) g7 P( y6 |1 C1 E+ C' \# t; O
  1780. DN_WRITE:2 f8 U% z, H+ t5 C; t
  1781. LDX #$00
    , a  {4 q" {" `: k6 Z% h3 p0 h* W
  1782. DN:
    # M3 Z9 X0 e1 ^! K, R
  1783. JSR PPUADDR_PROCESS
    : c4 O0 \+ M6 G+ q$ |
  1784. LDA DN_STRING,X
    2 D2 @8 z7 M0 i% e% w- k& l
  1785. STA $2007- g* k+ ]# f9 I, ^1 G
  1786. LDA #$003 t5 n5 c  _/ f7 g3 E6 W/ M$ V& c
  1787. STA $2000
    / P9 E1 ?1 K  I5 ~
  1788. INC $BA1 K) i4 x8 S2 G" R1 n6 e
  1789. INX9 w8 {6 O" I, g
  1790. CPX #$03% `; H: D4 X( v7 ?9 u. [5 D' O
  1791. BCC DN0 o2 O# C4 H. Z- [
  1792. RTS( G6 l+ j8 Q  \# K6 Z; W! Q
  1793. 4 i9 D; d- o$ u3 i$ h' F, R# K
  1794. LF_WRITE:" _5 f9 K+ r9 x3 ?+ }7 e
  1795. LDX #$000 O- U$ X6 a! h  h% n9 T
  1796. LF:
    0 @! D( p; g1 ^5 q- H9 E
  1797. JSR PPUADDR_PROCESS8 @/ T0 J$ t; \2 }  [- I
  1798. LDA LF_STRING,X
    * w2 e& H  T: E2 G4 _  N
  1799. STA $2007+ f8 j  }+ `3 s9 e
  1800. LDA #$00
    % a+ Y) P; D, M2 Z" C/ s% Z
  1801. STA $2000
    0 B% P' t' H2 U6 {3 h
  1802. INC $BA' j$ C/ N5 Y* L1 S/ `" t$ t, f
  1803. INX. ?: X/ J2 w# |, ~
  1804. CPX #$033 h4 k. o% D! ]
  1805. BCC LF; a& i9 `/ S9 h" z0 E! ~5 U- p
  1806. RTS# t7 w; r9 W6 H  e2 }

  1807. 6 e* ?; e" {; C- Z4 P2 G- @% i
  1808. RG_WRITE:5 f- q, I0 |9 a0 \
  1809. LDX #$00% L, W) u) W( L; {
  1810. RG:# o& F3 ]6 o9 ]# T
  1811. JSR PPUADDR_PROCESS
    $ k' v$ p* e) d! Q- ?
  1812. LDA RG_STRING,X& X9 q' W1 j, w1 ^4 V" ~, k
  1813. STA $2007
    6 @. Q0 B, ^- J2 D% }- n
  1814. LDA #$00( ?5 V9 |$ _; [# O" w
  1815. STA $2000
    & N. ?1 _0 |+ f( l: e3 N
  1816. INC $BA% y* w; T( o, Y3 E) A5 w
  1817. INX3 y' ^7 O# T; R+ l; F
  1818. CPX #$03
    - c: T' u2 B/ l  o$ W
  1819. BCC RG
    ( U/ y; n' E! z1 ~; F: D
  1820. RTS9 O/ ^( E  s) Z6 ~

  1821. $ S0 u4 C8 ^/ m+ z* U2 d
  1822. B_WRITE:
    1 Q1 d6 R9 {$ J5 A6 {& ]
  1823. LDX #$007 {- d+ H* j) p$ X9 J
  1824. B:
    . q+ I. S8 G; x$ j
  1825. JSR PPUADDR_PROCESS1 \3 A: `3 p& I3 X1 [1 b
  1826. LDA B_STRING,X
    8 H: F* m6 ]0 K$ m8 j( X, @
  1827. STA $2007
    / X! G4 {4 @1 T1 L6 C) E6 m
  1828. LDA #$00
      m. h0 r" R  V
  1829. STA $20003 Q  f! N: }5 s5 u2 F8 o6 b
  1830. INC $BA! [: H" |4 p4 ]$ ~
  1831. INX
    + S8 U$ }0 r- P& `/ E( C* }2 r8 i0 v$ v
  1832. CPX #$03
    7 K2 u* L; x5 S6 t& C' ]8 R( L
  1833. BCC B6 n1 Z( Z3 x# F" m( R1 M. |/ s
  1834. RTS
    * ~* @$ u* ~6 O2 J6 }( R* r* ^7 |
  1835. 3 e! ?: o6 R  P7 M% n
  1836. A_WRITE:
    * n9 q' P+ U% o9 ^
  1837. LDX #$00
    6 S7 @; p* t5 d- d& H7 f: K
  1838. A:
    / j0 D$ A- A6 e$ u& x
  1839. JSR PPUADDR_PROCESS
      ]% a) V; K+ z  H; O4 _
  1840. LDA A_STRING,X
    9 }; U( Y) G. x! t3 Y! a
  1841. STA $2007% m& ?, s1 M. r1 U/ B! U, p
  1842. LDA #$002 F( `! j, y: i* T0 {, t& {# B
  1843. STA $20007 V+ \' a8 h3 B8 f2 [) a# f' k! n
  1844. INC $BA( A, n) X6 Q) Z9 T. x6 h0 A8 T
  1845. INX
    & Z' N/ k; Y7 F5 K3 j" T
  1846. CPX #$03
    . O2 U/ r" A4 k4 V/ ^: M/ v
  1847. BCC A
    # Q9 ?: K4 x* b$ o$ z# d8 M; k, ]
  1848. RTS" _: u$ |/ ?3 o3 z' H, H  G

  1849. * Z0 D0 }9 r5 V# O9 W

  1850. 7 |* H4 R7 b" C2 [) m7 X4 T& K
  1851. UP_PPU:
    4 l- d, h, Y+ ~; o; y3 Y
  1852. JSR UP_WRITE! ]% l8 a, G+ p
  1853. RTS
    % ]  H6 V, H5 |! B7 [
  1854. + b* I: l4 `" d5 R
  1855. DN_PPU:
    % q- L! ~1 C7 n, ~, a, W* z
  1856. JSR DN_WRITE) G- c1 G% z/ ~$ h9 t* ~
  1857. RTS
    ; y- ?# p0 _  K
  1858. ; i9 o' Z5 u6 ]2 l/ [$ z+ L* e! G
  1859. LF_PPU:
    $ N# \6 p6 i6 T+ s7 @
  1860. JSR LF_WRITE
    5 b. p, I1 m! b! t3 t
  1861. RTS' e- x  R( h" o: \6 {5 Y

  1862. ) E7 A3 y9 Q( A( ]0 @
  1863. RG_PPU:& S( y, a* K* s) S
  1864. JSR RG_WRITE
    * v; ]' B" i" K
  1865. RTS
    - p( T" h- r6 N+ s
  1866. 8 A; M- V0 [+ P8 [8 Y- S8 Y! G) ?
  1867. B_PPU:! ], k! y% {2 A. F- l$ |9 f
  1868. JSR B_WRITE' W) v' L% v; C1 H3 _/ E( b
  1869. RTS/ G1 y( i7 ~& ^8 Q1 x$ Q( m

  1870. % p" {1 g3 w0 H, e6 N4 n$ C1 @2 v
  1871. A_PPU:
    7 L2 o) I1 i! s9 L4 J* A4 s
  1872. JSR A_WRITE1 M7 u# w* R3 ]
  1873. RTS
    ) i! M, L, n9 S: V

  1874. : o: B$ Y: x. }' S2 R

  1875. & ]4 V7 f6 n7 B% L6 n. f
  1876. PAGESELECT:2 e: a& U9 w: u; i5 h
  1877. PAGE0:
    1 t4 C5 }) B+ R& q
  1878. LDA $07AA
    # }# o1 t: i( B/ l
  1879. CMP #$00# v, n1 z- N: [$ b+ }
  1880. BNE PAGE16 C; h/ {" [( ~9 p9 p& h' L+ Y9 \
  1881. 9 H0 \1 D# ^5 c& |+ `; |/ }( |
  1882. PAGE_00:
    ' I; e6 [9 R4 b( ]/ X" \
  1883. JSR BULSEL_PPU
    2 B) l! P2 N/ U" {# C0 u3 s: w) u
  1884. RTS  A0 @/ y% |2 ]3 s
  1885. : E) x) T8 k, {1 \) t! k9 w
  1886. PAGE1:, O- m, ^" {3 v! r" H" y) S
  1887. LDA $07AA+ U. q1 T0 U1 a& O
  1888. CMP #$01/ R8 O1 u: W% c0 p5 q; z* y
  1889. BNE PAGE25 ?% c, d4 {8 N8 h
  1890. 3 \1 n. E) j* ^2 y' R! ]) W
  1891. PAGE_01:
    4 }$ n0 j. A+ Q& F# t, D8 Z( X/ w
  1892. JSR INVINC_PPU8 N" A4 k' L2 b, S
  1893. JSR LIFELC15_PPU
    * j; y4 I9 z" v* }) _. o6 ^2 ^
  1894. JSR DOUCON_PPU
    8 b- X8 _8 N3 o* t7 |& F
  1895. JSR KILLON_PPU
    7 y/ g. F, @5 d' G  o3 Q
  1896. JSR SKYFLY_PPU( Q' ^' v0 N. [/ f3 z
  1897. JSR LIFELOW_PPU
    % {2 n/ X; D: b5 {' c7 e/ w5 F
  1898. RTS
    & d6 n# g5 L+ z' `# i9 j

  1899. 5 L# n2 Y8 G  T' z/ E
  1900. PAGE2: & I% i5 B# C) ]; E' r
  1901. LDA $07AA# f/ s0 e7 A) H% c; u1 x# L3 i) h
  1902. CMP #$029 B. [* h, g6 ^; u% @
  1903. BNE PAGE32 Z; t( c6 |) U

  1904. * r. W3 E, Y1 j
  1905. PAGE_02:3 C1 ~, z) Z# @7 f) t6 S
  1906. JSR BULADD_PPU- [. }2 D" w: ^6 \: e2 J1 |8 G1 A
  1907. JSR SKINGE_PPU
    6 j+ o1 v/ C" X
  1908. JSR BULMIX_PPU
    9 G# T8 |, V' Z1 o: a5 R" ^$ u
  1909. JSR ENELOC_PPU- G- j) L# J* y# S1 H1 ]* m+ m# G
  1910. JSR FOCFUL_PPU. n( m' O3 q0 d
  1911. RTS7 Q3 A. U/ ?1 S( u6 U

  1912. 9 s/ [" W& v' P; U
  1913. PAGE3: + |6 }& Y3 F' p! b6 \
  1914. LDA $07AA3 L5 n, P* m# M5 R6 s( [
  1915. CMP #$03
    ; e9 i& L0 F' Q4 s9 A
  1916. BNE PAGE4
      ]" R$ K/ C2 X5 ]- H! p; T+ J4 A1 L
  1917. - B: g) n6 W- g8 w% E$ J1 S
  1918. PAGE_03:
      Z, H2 \( A9 Z+ e
  1919. JSR BULCON_PPU1 @& [7 _& J# d* @' V' U6 B- I
  1920. JSR SPEBUL_PPU
    ' }" A# `  e9 G; \" n& m  C# M
  1921. JSR CLEALL_PPU
    $ a0 P/ s% E6 Z* {2 D, Q7 j
  1922. JSR HARDMODE_PPU
    / p8 L/ O0 U3 V* K4 N, @
  1923. JSR B_TO_JMPSTG_PPU- ^9 h& P1 x5 v9 W
  1924. JSR A_TO_PLAMOD_PPU% G1 Q" L, {* T' e
  1925. RTS
    1 @( ^/ L' Y/ Q4 E

  1926. ; F! j- |7 A6 C- p! g) c8 A4 h
  1927. PAGE4:
    ) _: h% K" g" a5 R! \) ~( i4 l
  1928. LDA $07AA3 Q% q& B) H5 g2 v# {0 h
  1929. CMP #$04* ?: ]# n, F- d, M
  1930. BNE PAGERTS/ x! G8 h2 J% E$ D: \5 Q! b
  1931. 4 ]. v8 B- s) n4 X! M- a7 P
  1932. PAGE_04:$ A* l- h. h8 V6 x$ l
  1933. JSR MOVSPE_PPU+ S4 E8 k% b& f3 g
  1934. JSR UNLJMP_PPU
    * r. K  t8 P! @- t3 H; r: r
  1935. JSR DESTRO_PPU
    2 h7 p& x1 u8 V: d' z- B/ s
  1936. JSR EQUBUL_PPU
    0 _1 f* |& Q7 @2 x4 H( h
  1937. JSR MOVESPEED_PPU: i& l. U; q0 F0 ^: z
  1938. PAGERTS:
    5 v6 v; O* |: }9 W# A
  1939. RTS
    8 q7 V; |! P; F5 K6 n2 w

  1940. % Z" ^- u. y- o- P
  1941. . n8 A5 K3 E* J( \, W, J* u, c
  1942. PLAYER_01_STRING:
    % M+ d8 _: H8 [+ R1 p# q
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$808 k! B2 A6 c- Z: ?: o' S

  1944. ; F, Y; z' }: ]

  1945. * L! E8 q* N! c  @, }9 j
  1946. PLAYER_01_WRITE:) Z- ?9 b7 @& ~8 s" R
  1947. LDX #$00
    " X  c6 [+ M9 l2 {4 T
  1948. PLAYER_01:
    9 p; d( H8 U4 Z+ p, ?0 Z( |
  1949. JSR PPUADDR_PROCESS
    " a4 D: e' S6 U) @: R$ g
  1950. LDA PLAYER_01_STRING,X
    ' F% Q1 i) U( v$ X
  1951. STA $2007& ~# G1 A" J3 [  `
  1952. LDA #$00+ ~9 u1 d5 E3 ]
  1953. STA $2000
    4 V1 d: l  h; f! l1 n, x; ~- d; r
  1954. INC $BA+ l8 m* }0 }9 W
  1955. INX6 M1 Y% [+ G5 x$ Y7 u
  1956. CPX #$0A
    9 E+ R. Z( q) r1 G" h' ^
  1957. BCC PLAYER_019 d2 X3 H7 V5 B! D
  1958. RTS" k1 B2 i: d2 F5 s' d/ Y
  1959. ! \) y* F( u: L/ q( I0 ]4 r
  1960. PLAYER_01_PPU:& s2 u! N# g: e5 O0 Z
  1961. LDX #$00
    2 h( o( B+ X7 o/ [
  1962. LDA #$64
    * h; O& O/ Y8 H, f& X0 N5 Y' ~" }
  1963. STA $BA# H! ]1 j% N8 K/ F; N8 X2 U5 Z
  1964. LDA #$20+ P% b7 B0 M6 t
  1965. STA $BB- e- b  |5 U& }" ^4 l
  1966. JSR PLAYER_01_WRITE- t. e' O1 A# `. s
  1967. RTS
    : q% E8 b' L4 K/ A# R6 D3 L
  1968. ' A! u9 ?. l* l2 Y4 l
  1969. PLAYER_02_STRING:
    1 w/ o& @. N# M
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$803 D6 p; |$ y: x9 s. M

  1971. 7 i9 D6 ?# G1 x0 j
  1972. 4 {# s' ^% Y! m0 v$ c9 K
  1973. PLAYER_02_WRITE:
    # K1 u% o- R" Z$ P' {" k; o" i
  1974. LDX #$005 M& r- B2 e* K: T& a+ r# A
  1975. PLAYER_02:+ A2 V* y- v' V
  1976. JSR PPUADDR_PROCESS
    . t& F$ ?1 x  u1 ~
  1977. LDA PLAYER_02_STRING,X, _# T4 A, B7 C8 {0 t  d
  1978. STA $2007
    $ Y" J( n3 G! U6 E
  1979. LDA #$001 p1 t0 q$ {+ @, J
  1980. STA $20003 l7 b* A& ^1 S( L0 F: W
  1981. INC $BA0 @/ V) C: G+ l( X* s% ^
  1982. INX
    " \$ b6 o6 q9 [8 @! p
  1983. CPX #$0A  t! _& v- D% I& F) g
  1984. BCC PLAYER_021 t+ Q- |! [- d3 \( I3 K
  1985. RTS
    7 `2 T5 v! w/ B7 V1 i

  1986. " }, @+ B4 n& _! [1 c
  1987. PLAYER_02_PPU:
    " M7 h2 \* v; g, b& e
  1988. LDX #$00) h9 m" V) t- i* g* K
  1989. LDA #$73
    + J/ x& C3 a" O" j# ]; r. B* |! u
  1990. STA $BA
    6 y0 W* r+ j" ^" }) U6 m
  1991. LDA #$20
    6 `# r! d; _6 F
  1992. STA $BB
      m& ^% B" Q8 T2 o* R
  1993. JSR PLAYER_02_WRITE+ o3 m  Y. G$ n& w# ~( L
  1994. RTS* Q6 c7 W. u; R/ C: G8 s/ c

  1995. : Q( D( J4 i& S, L/ z3 w0 q
  1996. PPUADDR_PROCESS:
    ! Z" f4 T1 [9 `0 W6 V
  1997. LDA $BB
    / B. F8 {1 z; f7 R% R  F$ f  ~8 U' E
  1998. STA $2006- U+ U& w! E$ N; V$ P0 W
  1999. LDA $BA! M6 y- N3 c( r7 q, w8 R
  2000. STA $2006- J. x% i3 _5 I6 b$ `- Y& t/ M
  2001. RTS
    ) P8 Q6 G* O) A: V5 y

  2002. * o. u/ {' ?# g' T4 @

  2003. / |) K5 K" o6 m4 P7 s. W
  2004. ; e! |$ ], Z" x( x2 ]
  2005. ONE_STRING:
    # I: I( A6 G( k- H( T
  2006. .BYTE $99,$98,$8F5 Q- ], `+ m& c
  2007. , T* l; W- [' K' K" t) Y
  2008. TWO_STRING:, n2 q% g' W+ a3 w, G1 \5 b
  2009. .BYTE $9E,$A1,$99: _. z& N% S$ `+ T7 z; Y7 U2 s

  2010. 7 s/ b: r/ O3 B" m4 L5 g1 c) b
  2011. ONE_TWO_PPU:" F$ m3 ?6 S9 ~. @; T+ V
  2012. BNE ONEWR9 b5 K6 W" K3 r) M/ E
  2013. TWOWR:
    8 H. V9 |, x; X9 x4 V& Z
  2014. JSR PPUADDR_PROCESS
    9 W. K$ ?7 g8 j
  2015. LDA TWO_STRING,X
    8 V+ [& V9 y8 h9 t  j: W! D
  2016. STA $20074 s! _7 O3 _8 n
  2017. INC $BA+ F, i9 [9 z+ }, M4 X9 @5 B% b
  2018. INX
    5 c; t8 ^% z+ f0 r/ U) S
  2019. CPX #$03
    8 y3 l: G2 @: n9 u/ q+ }9 E0 J
  2020. BCC TWOWR
    " L8 b: H8 f. [9 |* V1 k4 Y9 X% m, |8 u
  2021. RTS
    . m! H2 s% l5 k
  2022. ONEWR:6 o* [4 q- [# J0 h: l- a8 E
  2023. JSR PPUADDR_PROCESS) e- R; E1 F8 Y5 }
  2024. LDA ONE_STRING,X! u+ [: q0 J) \- L* u" A' }2 M
  2025. STA $2007
    8 B  E; x0 m3 U# j# L6 }
  2026. INC $BA
    6 C/ a% M2 E. q
  2027. INX
    - P0 i( L7 h% e
  2028. CPX #$03
    ' ?, B& y5 Z# ~1 U! E! X( Q
  2029. BCC ONEWR
    & N5 Z+ i) @5 _) ^3 L
  2030. RTS
    / B( L: ~9 E. U# y- K

  2031. - d2 D# o4 r: D2 _- J* S
  2032. MOVESPEED_STRING:
    2 p5 N1 k/ `, k: _: Q6 {. W
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$804 U- {4 r1 d( }  W" B! \6 q; X4 b

  2034. 5 U# g5 o! r. U3 J

  2035. % K( A. m$ }4 E8 b, g
  2036. MOVESPEED_WRITE:$ X" c0 i+ N! @
  2037. LDX #$004 Z( W. ^! {( n  [: }0 P6 e( ~
  2038. MOVESPEED:! e5 }5 N6 {& V% X
  2039. JSR PPUADDR_PROCESS
    - H% ^; ~* ^% U. l5 i
  2040. LDA MOVESPEED_STRING,X" q" d2 V  f+ X8 V* E
  2041. STA $2007* F0 P5 L; C" f. |& X8 U2 D% m8 e6 O
  2042. LDA #$008 K" x  t4 Z9 f5 P
  2043. STA $2000/ l& N2 _  H0 `. ^
  2044. INC $BA
    ' N6 G! ?3 E/ E& g! W/ S
  2045. INX1 l! L& h) N, S! F2 _
  2046. CPX #$0B+ U! h$ b5 n& i8 u) J
  2047. BCC MOVESPEED
    3 k7 d" M/ r- X
  2048. RTS/ B) l4 ]! `2 w: K1 U1 D1 y
  2049. 8 e: c7 T9 y1 P
  2050. MOVESPEED_PPU:# x  w% `; e& o3 c6 j
  2051. LDX #$00
    ( a. s1 S: D0 `! i, D
  2052. LDA #$AA
    / }2 I" B8 a# d1 i( K. Z" \. A9 W
  2053. STA $BA7 e- x" \& V+ G
  2054. LDA #$22
    / q6 V, G  f3 {  |/ M$ ~
  2055. STA $BB% H- _7 S' m. u8 C- k; a
  2056. JSR MOVESPEED_WRITE! o: ^$ R' {0 k2 }- T
  2057. LDA $7003/ e. {5 Y1 i0 b. U
  2058. CLC; a& ^$ ], Q- x# y$ L1 c. y" p
  2059. ADC #$82
    & U- `8 Q1 s; _5 A! g" i* l
  2060. STA $20073 H1 y2 L) `1 i" M* x$ d0 L
  2061. RTS
    7 S5 J. \$ }8 z% k
复制代码

本帖子中包含更多资源

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

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

签到天数: 3166 天

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

签到天数: 2278 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

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

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2283 天

[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 | 显示全部楼层
谢谢制作,辛苦了
回复 支持 反对

使用道具 举报

签到天数: 861 天

[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. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 303 天

[LV.8]以坛为家I

发表于 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-8-28 15:23 , Processed in 1.090820 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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