设为首页收藏本站

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 3 ^0 i# O/ j; e( Z7 b0 P
- Z4 W  q: O/ c2 z
     [FC][魂斗罗旋风终板END暂停显菜单]
# l/ D0 \5 Y3 m+ V6 Z, \
作者:FlameCyclone(flamecyclone.ys168.com)
. C; P& B! _: T时间:2016/11/19 21:46:00; P. A0 Z$ i  M: n( ?! |
更新日志:

, O% e: e( a; w8 d2016.11.19:加入暂停显菜单(共5页).
: t  j! G& ~1 m8 [2016.11.12:加入无限跳跃.
, A0 A, Z0 p8 X  M3 K7 \2016.11.12:加入速度调节.

) p0 R' v$ d! C0 _2016.11.11:加入敌我子弹对消功能.
; P" j# Z$ }+ N* }2016.11.11:加入全屏闪灭功能.6 C: A# {1 n* {6 Y6 ?
2016.06.08:加入全屏瞄准功能.
/ q6 `8 ^% o" @/ I( @! c' Y2016.05.31:加入弹速调节功能.9 |7 e! z; U. ^: u
2016.01.01:加入高难度模式.
+ Z5 `# Q  B6 \( ~; H2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
, \5 W3 R1 k0 W: i2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.. S- [  v  Y8 d
2014.07.05:双人切换功能优化.% F! R* k( |; S: k  |: d/ F" s$ ]
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦." f/ F! q4 N7 Z# ^6 I! ^5 }
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.$ ^) {" _% u. h/ p: n8 y) F
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.4 U; O! a# o" }6 K) K  L3 J: H3 P, w
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
* P' L( r& ~. n/ r2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!): |5 V/ x0 d; W2 l" s" q
2014.02.13:加入自动演示通关.; f! H( L% f( H6 Y  V( Y0 |
内容:  U0 ^7 R  H" u7 @& Y5 R
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
: v/ i9 |! ^2 u; h: n( v22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.: m. C' p3 Y7 D0 W, b8 w8 s# ^
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

; j4 `4 {9 ^+ U, F20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.5 B/ \  A/ _" t% H& J
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
; H: f+ j" X# d/ w% ~* D18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.6 a6 [$ Z- V& ]4 \, X2 ]# R
17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.6 Y0 O! M* r& a0 F  Z
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.( D; @; ^$ [6 @- e0 t/ h
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.& i$ y0 \# _" g4 x4 ?4 {
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.. H+ ]2 l/ m5 q* F" @& x
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
# L2 F  H6 Z& [$ ~6 N2 k+ z04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
  [! p: G7 ]6 c% ~# j) d  e05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.
3 v8 H8 ~; A8 Y1 U, v' _% n06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命." c/ V6 k/ V" m* k$ c. b
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴." y7 Q' x; Y7 T& e$ w
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
) Y7 X  Z$ h$ X/ p7 r7 y09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.! n9 p5 [8 g( R8 G3 v6 R+ D
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
# Y8 e. B' L; n0 Q1 d& I3 U" X3 I% {11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
$ f) ~- W3 D. p9 A: J$ b12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
" u0 i% Z5 ^( H5 C8 }13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
; U+ ^( b; M2 H4 [; m; n) W3 f% d0 I) T14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
# [5 B! E! M9 H  t5 U* U15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。
; p! y+ b# R, w' K( }A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
0 e% Y: r+ H4 U, |! IB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!
- V5 B/ G6 X3 N7 O4 zC.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
2 z* |, _7 S+ R# y
! f# ?9 p+ B: F  p/ h    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
. V: Y4 e: ~& M/ M0 D欢迎大家转载,转载时必须注明出处.
4 [' I7 B+ ]% T2 Z# G: t) a& j" i( s
游客,如果您要查看本帖隐藏内容请回复

1 ~. j- G) d; }4 K2 t% n9 ~! \# o' `- U% ~  r# I, ~1 R
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
7 C& L3 w! p& [9 Z( }5 y这几天的劳动成果如下:
  1. .ORG $B400
    . I0 ^! J! z  E# F% G

  2. 1 k' E) M# }: j! e

  3. % `$ I+ n* J4 w; d+ ^" f$ n6 B
  4. PROREG:
    3 m, t& ?$ t7 O, V% R9 c
  5. PHA8 N3 M: d$ O5 w: H) L
  6. TXA  N8 \4 L, ~: m' X. G
  7. PHA
    6 C) D6 A7 E% W3 P6 C$ T( O  K
  8. TYA
    5 s3 L9 p7 f5 X7 u- b$ ]3 U, Z" T/ k
  9. PHA6 ^8 ~: N1 ^! ?4 A6 p2 I
  10. LDA $255 V8 c; R* w3 l4 Q( P+ _
  11. CMP #$01. l' c3 r: C/ N5 k( w/ B
  12. BNE RE1 Y' X, G4 J8 `$ M' j
  13. LDA $010A% i$ @* D0 d! o
  14. CMP #$00
    ; L) K$ K$ I" b: a: B( e
  15. BEQ P1
    5 J& S! I; b  ~4 u) c6 {

  16. - w9 i- f1 b4 P7 ~) i+ H  a6 v5 o
  17. RE:
    * b/ S; |- k- j6 @$ Z
  18. JMP PPUWRITE
    2 ^2 Y  b3 Q$ F) F5 m0 d& D
  19. ' x* @  Z/ o+ K" z
  20. P1:                ; 条件判断* ]! C+ a1 m( B( v$ z/ |
  21. LDA $7FFF+ [7 [4 ?2 w( i0 |, z, A; j
  22. CMP #$FF4 u, D! c8 C' s& n; A& u8 n
  23. BNE P1RP
    2 E9 ]* B2 q9 B% N+ |/ q
  24. LDA $7FA0% a5 q: z  w7 [( s- Q6 j  D6 E
  25. CMP #$00
    3 H' Z: V+ @) g
  26. BNE P1CMP
    & }9 F( _# x# p
  27. LDA $2001
    % @2 N6 s% j) V9 r
  28. PHA
    7 _$ R2 s2 `) `8 j0 Q
  29. LDA #$00$ C9 u) k1 R- a7 B7 `$ V
  30. STA $2001% E% g( G) n. I1 x! N) C
  31. LDA #$FF, E0 _2 G& q3 k8 z2 L3 A
  32. STA $7FA0
    1 ~9 h9 ?6 I6 Z, }/ i" k
  33. JSR CLEANA
    8 `8 {  z0 R" C# u
  34. PLA& w6 d  I5 F4 }5 {) f" m2 k7 Y
  35. STA $2001- X# p; }2 q) R# e
  36. JMP PPUWRITE
    / S0 P2 G$ ~# N& v0 K* G8 k
  37. P1CMP:- u3 [( Z9 Q5 N2 Y( c8 m
  38. LDA $7FFF7 [; L3 X& C1 {6 m. k
  39. CMP #$008 J% p' e9 B/ t2 H9 e  W5 O0 C
  40. BNE RE
    $ o: V6 [) n' H/ h
  41. P1RP:, c/ b0 q7 m; V1 {
  42. LDA $2002
    , I* }* a0 x: d3 |( G
  43. LDA #$007 d( n+ R6 r* [
  44. STA $2001
    * V0 v2 c' p9 ~1 d, m- H
  45. LDA #$FF6 m# w2 ?: C" N& W' H
  46. STA $7FFF
    ! f. ^/ ]1 S( R2 R  f9 G; j: v
  47. STA $7FA06 R% A! K7 N$ {( Z5 Q
  48. JSR COPYPPU  e7 Q7 J3 I# v* K! }
  49. PIRP2:1 u/ W) O+ s" j, G1 @5 {" c
  50. JSR CLEANA8 r" j: Z) l4 J) y
  51. JMP PPUWRITE
    4 D" n# ^  g1 Y% L) K( }0 V

  52. 1 O, g* s; h- g1 C
  53. COPYPPU:0 f* }+ q5 Z3 j6 A0 e" c- i- ^$ ~
  54. L0:" H; X5 `9 i- f) C) ~7 b
  55. LDA $30
    % Y3 r3 p. ?8 y
  56. CMP #$02
    ' X! H; z% E. Z3 E% y
  57. BNE UNPROFC
    * ^. M; g5 G$ i9 I& b6 o
  58. LDA $FC+ A4 d4 M/ Q. {! c
  59. STA $7EFC, G, o# H( p" L1 R' ^
  60. LDA #$00
    ; S" v! ~# \% o0 }5 F
  61. STA $FC
    2 w/ h4 A" z# r; Q
  62. UNPROFC:
    / D! P! L, t: l: M$ S) w
  63. LDA $FD
    - p. q6 a. M& ~7 S- u! M) g
  64. STA $7EFD6 R" H8 a: W5 k7 r+ M4 Y: q
  65. LDA $FF
    6 W) a  Q; |! ~8 `" ]3 [; p4 c
  66. STA $7EFF
    " g: N5 o% B1 `0 e: A3 u* a
  67. LDA #$00# i& M, f# Y" }) [1 e
  68. STA $FD
    : R+ s* j, [, N# W
  69. LDA #$B0
    % k; `2 P+ l  d6 `6 j# k
  70. STA $FF
    3 p, h0 }. d# U
  71. LDA $07C1, u% }  w3 n7 m* O4 s
  72. STA $7FC17 v- [5 U" q. H6 {
  73. LDA #$3F
    7 H3 U% y. S1 s1 }5 u
  74. STA $20061 ?9 f# h) R' o% \& x1 D
  75. LDA #$012 p$ k0 J1 t9 p) Y1 y8 H
  76. STA $2006% y. ^9 H/ O- M' D
  77. LDA #$24
    & S  A- o; \' A: E0 P; z
  78. STA $2007
    4 [$ B' `- M4 o5 T4 ~% Q
  79. LDA $07F6% i4 h+ R* ?0 I9 Y; t+ @/ o# S
  80. STA $7FFE+ K. S3 m6 L: M' Y+ d; ~$ D
  81. LDA $00FE' q' ], y) g0 n# d& [( Z5 Z  j
  82. STA $7FFD5 B' J8 E, v2 }: @
  83. LDX #$00
    7 U9 K' I4 ~( |2 x- {4 Q4 D# X
  84. LDY #$00* f4 E; [) e3 E' g/ p" x% R4 t' ~! n
  85. LDA $BD
    * t$ d; |( l' L& p  k1 ?
  86. PHA3 K5 l  P5 t) H. M. ~& c4 W& b
  87. LDA $BC5 C2 _1 {+ V' F; y0 R
  88. PHA& s0 H6 z! U2 W/ x0 p
  89. LDA $BB
    ( f; t9 x& q  |, ~/ p0 t: l
  90. PHA  D  `1 G; W- v
  91. LDA $BA. {8 I7 v% a9 q/ m4 O6 W
  92. PHA
    ) s; z3 ]* A% o' }; a
  93. LDA $B9
    : j  C' r, l* |1 Y7 f( t
  94. PHA( o/ P$ I4 H" o, {- f/ y( O
  95. LDA $B8
    , W* w6 o7 c; X1 G
  96. PHA
    3 b& c* G4 N- s8 x7 @' r: Y
  97. LDA #$00
    + n0 }# A4 w9 N! k: I
  98. STA $B8+ K  Z- N; K! V1 C( i" J* N
  99. STA $B9; z! g0 G& j' t/ C
  100. STA $BA& Y2 z+ [$ [+ y/ p
  101. STA $BB
    4 P, g4 K8 u$ p0 r
  102. STA $BC. C- {- m& A9 N
  103. STA $BD& r3 `( ^! M' X  f0 k% F
  104. LDA #$00
    ' Y& Y! V9 C$ g& d
  105. STA $BA: f2 {; a3 M( Z6 @# q
  106. LDA #$205 J2 r. `. P  I3 ~0 V- d8 K. t
  107. STA $BB
    8 |/ s, J5 x7 A% v
  108. LDA #$00
    % u( ^. ~' i' _/ j' ^0 v) r( k
  109. STA $BC; t- e+ O  i( q. R
  110. LDA #$60. k# _# Z1 u: C) C) S! K
  111. STA $BD* j8 _: L. B+ D

  112. 3 k/ n6 E: x- h! q" y
  113. L1:                ; PPU复制
      S6 W* U* m4 `
  114. LDA $BB
    1 W- C: G+ `: x( v8 t# W6 C) u
  115. CMP #$30, u$ W2 H. {9 n# T- M: F
  116. BNE L2$ P/ Q, H: E5 g9 i) g. W
  117. LDA $BA
    8 {  m4 T, r/ z
  118. CMP #$00
    8 f; L! a9 P% J, T9 f
  119. BEQ PROADPLA, g- }7 K% j5 k8 S) L; w5 Y7 }$ _

  120. 4 c1 t5 u2 z  Q; H' m4 D
  121. L2:: z* t8 t; Y/ d4 N& G/ ~
  122. LDA $BB% T( R8 z$ Q! h5 a; M: `
  123. STA $20067 W$ H3 p; K% @% V; T5 e
  124. LDA $BA  X* }0 x- s' T
  125. STA $2006& r- U! w4 H, m; ~) D
  126. 8 v  S3 M4 j4 Y6 j
  127. L3:+ i* f" T* b- x
  128. LDA $2007
    ' J$ W" y$ }* L/ S5 L2 V
  129. LDA $20078 h4 @# I& J. ^. X8 J
  130. STA ($BC),Y
    8 C4 Y& B6 M' x% o0 F/ f
  131. / u  k( F3 h& r) B
  132. L4:% N0 |( p6 ^' A0 G: B
  133. LDA #$00
    / {/ N1 s: u8 }" T% D' U
  134. STA $2000
    2 c# @# [8 r$ r( \3 U& s2 Z, O( R+ k
  135. INX/ V/ o- a! g7 V
  136. INC $BA+ s) s, U9 a  v5 c
  137. INC $BC0 ^5 @2 i/ K9 V/ o, [7 J
  138. CPX #$00
    # x0 {- V2 U, Z5 Z# j
  139. BNE L1
    8 v7 o" k( F* k4 P3 ?8 E7 D+ C
  140. INC $BB
    , A/ B* _/ t+ b* o
  141. INC $BD
    ! @3 K) Z6 o, W# W
  142. JMP L1
    # L7 W3 X" _' |' e

  143. 9 ^7 z! a* y: r& H- p& B! S
  144. PROADPLA:                ;出栈
    : c' Y2 a" t  t; v1 V9 [* Y
  145. PLA
    4 O$ p! j3 h; q4 `6 \
  146. STA $B8
    6 J) I5 Q9 g, a' r5 }
  147. PLA% M, q1 t- F' ]
  148. STA $B9
    " C: X& }4 i1 T5 H3 T1 t5 g6 b1 ]) s' f2 A
  149. PLA
    ' p3 r) V  E5 F( E, ?
  150. STA $BA
    3 n& R& ~* N7 H
  151. PLA" K! g: W8 b1 E
  152. STA $BB
    2 H' i3 u& Q6 T$ k! g6 o0 G" s$ V
  153. PLA
    8 J: B! ~: X! i! H
  154. STA $BC' }: F0 x8 z  O1 J8 a* @
  155. PLA. D3 V1 p) p: |' \, S# v
  156. STA $BD
    / X+ ]' M5 E4 R0 n6 z3 X- ]( K
  157. CPRE:
    ) o% o  C8 l" K/ v' A
  158. RTS
    $ M5 R1 L" \  S
  159. 5 h' w0 a  k9 P' m. a$ @
  160. CLEANA:                ; PPU清空9 l/ K! {3 f2 k% Y
  161. LDA $BD% j+ h$ v# d) Z2 o+ M( ?4 |
  162. PHA
    5 ]7 p% `1 i: w. r; M' U
  163. LDA $BC( Q: W- C! c/ T+ q* r# V- R3 y
  164. PHA( u9 x  t3 Q% n: d1 |) H. Y8 a1 C
  165. LDA $BB; V" z* Q/ w5 C
  166. PHA
    ( o8 W0 x6 L& H- D5 v
  167. LDA $BA
    * g2 L6 b# d& D* x
  168. PHA1 _8 \) T  ^* D( Z
  169. LDA $B9& x! K2 l4 ?! H+ e5 i
  170. PHA# u. T  R' G+ I9 w  S
  171. LDA $B88 F; D3 e( I% V1 Z; f
  172. PHA8 ?: A0 A' z4 A# K( h. h
  173. LDA #$00
    2 i1 p8 _- I" r/ T
  174. STA $B8
    - D' I+ _7 Y, {' n7 s' @
  175. STA $B9
    7 X- G+ E  J) J7 z4 T( D4 w
  176. STA $BA
    3 r/ f7 [9 X1 n6 F& D
  177. STA $BB
    # b$ }4 w5 K% ~# O* y9 P5 m5 Q
  178. STA $BC9 C: i& d: I# m- K
  179. STA $BD
    + i2 h, Q# u: ^7 S  S& Y
  180. LDX #$00
    ! v% }3 v& h  ?' k8 G) i8 Q  J
  181. LDY #$00
    / ^$ u: v  ]1 E, X1 S7 O
  182. LDA #$004 T0 U! A+ n. C
  183. STA $BA
    ) X7 {8 u3 l6 u; g
  184. LDA #$20
    . m& g3 ^% S' v3 ]  e7 e
  185. STA $BB3 {3 b' \& B; G  r, \! T7 g
  186. 2 l( n* ]* S2 x/ C8 }" b5 u8 P9 c, u+ w
  187. CL1:
    4 l" h+ ~# ^  N  I
  188. LDA $BB/ M. S3 ^5 e: [  |- s
  189. CMP #$30/ r/ Q. r1 c' P+ w2 J" _- g" I
  190. BNE CL2
      l; V% \9 n3 t$ y/ u0 y' u
  191. LDA $BA
    4 \/ Y- {7 F9 t$ j! Z
  192. CMP #$00
    + }4 t5 [: e9 w5 Q. `! P- a
  193. BEQ FREEWRIYE
    8 P7 x" T4 d9 Z8 j/ v& z3 ^" {
  194. + K$ J! B$ _$ \; d+ J
  195. CL2:
    % O: a, P( p3 E- N+ g, h
  196. LDA $BB' _' A* @. ?  K# D% l+ i
  197. STA $2006; `6 c1 ]3 X9 }+ C: q" I( u0 k0 g
  198. LDA $BA' s# R% M4 _1 |8 t' ?( `
  199. STA $2006; u) X# I) N& b) k1 @6 N

  200. 3 d6 J0 E  R, v( l% }% I, ?+ o, U
  201. CL3:
    9 V! R  `; U. O
  202. LDA #$00( u- k" U% G, a; `3 X- e  D
  203. STA $2007
    + k0 l' R; y% I; y; K
  204. ' j  p4 x) Y1 W( W5 R
  205. CL4:
    1 j9 ]9 r  H( P% i
  206. LDA #$00
    0 v2 W, w" }- f0 Q4 c
  207. STA $2000
      u9 D- j# w: ?- j
  208. INX# g9 y+ F2 I3 `: r1 Y
  209. INC $BA5 B/ G/ H% V* h( ^
  210. CPX #$00+ E) U+ F, c& t
  211. BNE CL1
    - e8 p( i  i! S3 Y' p- X( p8 T8 p
  212. INC $BB; P# ~9 B3 T/ ?1 ^7 I* i
  213. JMP CL1 , a& P8 T. n4 T: R
  214. ; e; K. U9 w% k+ E& S

  215. ; r" }( Z+ G6 M
  216. FREEWRIYE:
    $ I. F& `) Y4 C% F
  217. JSR FREE/ `; ^+ w8 D# M3 |
  218. " w5 G! U$ c( ^; X- N
  219. 7 I" N4 A8 w  R3 N  g$ R0 x9 E- G

  220. * F0 S/ z# ~4 x6 I9 }/ d
  221. & L: K: V. p" f  J' B% }

  222. ! p# R) u2 [4 j* Q1 V  P7 o: b" s
  223. CLEANF:                ; 恢复现场
    , G. e) j) A+ R/ d* q) I" S9 ~
  224. LDA #$08) X$ e1 a7 ^/ N) L" J8 e& B4 C
  225. STA $FE
    ! L( n1 X& A  ^" t3 i' _) [8 ?% V
  226. LDA #$007 `) R+ G. c/ I
  227. STA $07F67 M& X1 L- F8 f& V$ V# j& |
  228. LDA #$24
    8 T) a0 D: L& P
  229. STA $7FC03 u/ X; J7 w9 d: ?( P  q/ m( l
  230. PLA
    ) f  t0 p& A; ^8 {  N
  231. STA $B8! @) [$ c- i4 l- u, L
  232. PLA6 v! a8 ~; t( y
  233. STA $B9
    + C+ c6 h) J7 ]' U3 o# @( E: ^
  234. PLA( J( [% C. N+ }8 T
  235. STA $BA8 F  k% j. v. Z, p4 O: Z. Z; }: N4 R
  236. PLA
    7 k# }& ^4 ]! Q! M7 a
  237. STA $BB+ Q: K* S* I( R
  238. PLA
    7 Q3 @9 z/ O! }' n+ j5 Y
  239. STA $BC
    9 A) i4 P% l6 a% u: O' p
  240. PLA/ \- n5 w0 {6 H5 R' \* A
  241. STA $BD) Z) ^# L0 T5 E1 g3 W. Q4 ?8 F6 {
  242. CLRF:. v( {) B, K2 a2 Y6 R, ~- o
  243. RTS
    1 d8 \! ^/ O9 z7 c

  244. 1 L% w; Q* U& I, ]; S+ h
  245. W_DATA:5 r1 @, Z% v/ b& W+ x, B( M  L9 X
  246. .BYTE $00,$01,$02,$03,$04) G. S$ I2 E7 n4 V7 G' `
  247.   
    # k# \  h- O3 B# b
  248. W_PPU:
    # K! i+ w# n' e+ B4 c5 b+ g9 a
  249. .BYTE $98,$97,$90,$9D,$967 n& V7 o* P& ^4 S

  250. 7 z* g2 \, Z9 k$ C. U, o, R7 R
  251. P1_STRING:
    2 ?" p, c( z1 I$ x, i" l9 D
  252. .BYTE $9A,$82,$00                ;"P1"
    8 m) u" s# M6 K' B' N' l" @: m
  253. " i) t' [( ?8 T
  254. P2_STRING:5 Q. w8 j: g: m% F  T
  255. .BYTE $9A,$83,$00                ;"P2"
    , J0 D7 v% t8 t( T+ O
  256. $ E3 {- A/ [3 R! U# Z# q$ \
  257. WEAPON_STRING:
    # |* v, ]' X5 ]) ?! U  \
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON". m7 a6 F2 v! U7 |1 @" x
  259. ' E- |( Y8 T+ q  `" b6 U, b" F1 m
  260. RELIFE_STRING:+ q7 o* i/ r" O" D7 D
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    6 A: a1 u$ J. l0 h: ~
  262. : y6 G* U% Y. u6 Q3 z: \7 _6 f/ c
  263. P1_PPU:+ v" _' f6 ~+ o9 a8 e( Z
  264. LDX #$00
    ; L# E' X" X* \5 {) @

  265. 0 c$ b. Y- r3 _* ]) f
  266. P1_PPUW:0 P# v; c  m& P" K8 Y/ W
  267. JSR PPUADDR_PROCESS
    $ T3 z9 |) |; f5 J7 W
  268. LDA P1_STRING,X
    1 {: e' |1 R# D  f, [# P) c( H( v+ F
  269. STA $2007
    % [& \0 w# {) M* }6 n
  270. INX) f6 `7 Y: C" d. e; O  l6 m& F, @
  271. INC $BA
    8 i2 C, E5 C2 v/ Q
  272. CPX #$033 c/ `. l1 D2 d6 V' {0 B
  273. BCC P1_PPUW! R" @( B9 m7 |, I" }. t
  274. LDX #$00+ J" x: c) t1 l3 r3 Z6 N% L2 r+ S
  275. RTS# Z- X! L8 Q3 }0 i' k

  276. ! s9 \' k8 K/ [  H
  277. P2_PPU:/ x* o0 D8 F4 N3 o, p+ X: ~
  278. LDX #$00( u3 Q9 h6 ~% o5 t
  279. , w/ Z0 S; W1 a: X+ N/ q
  280. P2_PPUW:* y7 b  m! f: d
  281. JSR PPUADDR_PROCESS
    . c- c( M' l  U; x' x; z! O# @
  282. LDA P2_STRING,X
    - x; H; v' c1 |) e& e
  283. STA $2007
    & y6 _  K, ?! k0 t: }  b+ d( o' ^
  284. INX& t9 h0 f% l- s6 t' l
  285. INC $BA. I; J& S$ ?1 Y
  286. CPX #$03
    ; `8 F! v: K# M! S
  287. BCC P2_PPUW  x- l8 Y9 w7 U, Q# V9 K- P
  288. LDX #$00
    + e) v' w5 Y1 I. w
  289. RTS
    7 G$ b% g8 A0 I& H
  290. ; V( @: s: o- v2 J
  291. - c8 A. j6 ~, E" T* \
  292. LDA $BB
    . R' B0 P3 y4 Z7 `7 i
  293. STA $2006
    , t1 k3 G7 h2 A4 ]4 l
  294. LDA $BA
    : N7 C# C6 l7 A0 V
  295. STA $20068 f# {) e( m) S" n. t% }; j, \
  296. RTS
    9 k8 a1 f( ~7 A1 W& o% n! F1 _
  297. ! Z( O4 u) o4 C8 w/ Z

  298. : ^+ r3 _6 m* ]6 h4 I# E; h
  299. . z3 F' @4 V: W! u9 P3 X
  300. PLAYERLIFE:; h/ \, o4 J# }: s5 n. N" J5 O
  301. JSR LIFETODEC- `& }0 ~" |4 H
  302. LIFEPPU1:, ?6 n* x; b6 x0 \  ]6 U
  303. LDX #$00
    / b1 v( _% `- R# @+ Y, {
  304. LIFEPPU1RE:
    ; b( {2 F, a, s2 T
  305. JSR PPUADDR_PROCESS7 c& I  K2 f7 h3 P6 R) l
  306. LDA RELIFE_STRING,X) S8 b+ P3 U6 ^, P1 `" Q) Z1 j
  307. STA $2007* c9 Z4 ?& F2 Q2 q. x
  308. INX' e/ ^4 x7 A( W# G# _4 d$ n
  309. INC $BA
      S4 `0 {2 {7 [' K. g7 C
  310. CPX #$07& S, U  W" y: q9 z$ ]- }) D  @% ~
  311. BCC LIFEPPU1RE+ D. h0 ~' i' o

  312. 9 d( u2 ^; `6 @
  313. LIFEDEC:                ;生命显示写入- ]3 ^+ X% t9 m  n' W: Q
  314. LDX #$00
    $ Z8 g2 ~$ Z$ ^; G, K3 k
  315. LIFEDECRE:
    % F+ K% S' j8 t
  316. LDA $7A03,X
    8 \' [5 n; R* ?  q& V& Y% a
  317. CLC
    . F8 u( C# D$ k$ n5 u3 r6 N
  318. ADC #$81
    / H" j- e$ ?: h5 _0 V% ]
  319. STA $2007' w& v# X' g, f- M9 D
  320. INX6 `# f  J9 v9 B+ q
  321. INC $BA
    1 p! ~( ~, t3 q6 W+ Y" g
  322. CPX #$03
    6 I9 T: r" B" R# k) {
  323. BCC LIFEDECRE3 G) J$ A) o# K/ p7 y
  324. LDX #$00
    - E9 d3 |9 I1 A: L
  325. RTS) j1 ?. B8 s& g% B" V4 u' r: G8 u# D
  326. 1 K  w% s* q4 F+ }) N
  327. LIFETODEC:                ;十进制转换
    , k3 T$ ^6 l( S7 ]7 P
  328. LIFEL1:        ;initialise. d2 n' [) s4 x
  329. STA $7A00        ;$7A00=F35 `: C! q2 Y, F6 o
  330. LDA #$005 I5 W* _# e4 T' J7 K
  331. STA $7A03        ;$7A03=00
    + |5 e9 @. K* ~: a/ w; E
  332. STA $7A04        ;$7A04=00! k! Y2 a9 p" W. y
  333. STA $7A05        ;$7A05=00
    . Z( v2 u2 q. h% G$ A8 {  n
  334. LIFEL2:        ;copy data $7A00 to 6001
    3 Y: z' C4 j' h  i7 W& Z4 E
  335. LDA $7A00; U+ y, ?2 q+ f- j# u$ N7 ~0 r# c
  336. STA $7A01
    + V0 d4 i- u: l
  337. * b  w3 r2 j% i( U0 Y3 G2 k: B
  338. LIFEL3:         ;hundred* g- k/ G2 V8 c/ \4 d: u
  339. LDA $7A01
    6 v8 ~4 \. B" V
  340. CMP #$64
    2 ]. g0 [* A2 B3 C! O
  341. BCC LIFEL6                ;$7A01<100 goto L6
    ! y6 Q4 F! K0 q- C- f6 ~9 {
  342. LIFEL4:
    % R3 w9 [7 n& }6 }! Y; k7 n( g% N
  343. LDA $7A01: m6 [2 V: V" h: ~  n
  344. SEC/ x8 `3 B  p3 n$ O
  345. SBC #$64        ;$7A01=$7A01-100
    $ X  m3 d! v- }9 s0 n
  346. STA $7A01
    ' ^1 p( ^+ d# F
  347. INC $7A03        ;hundred++4 t9 J& E! M+ f" U* t) t2 s' [; O
  348. LIFEL5:
    . N$ p" k7 n( {7 o' w6 z. I8 t3 i
  349. LDA $7A015 q' X3 [% m6 @2 D9 z2 T
  350. CMP #$64
    # N& {: r1 ^$ S5 _* a0 I- q
  351. BCS LIFEL4                ;$7A01>100 goto L4( r2 U; w2 b* G! G# `4 q

  352. " w3 R& K( @# l
  353. LIFEL6:        ;decade
    # I% o; s  l( w+ o; }6 \
  354. LDA $7A01
    / ]1 K' F% U+ L5 I% [
  355. CMP #$0A1 A. e% i" c* S' W" V' H/ m
  356. BCC LIFEL9                ;$7A01<10 goto L9" n' j  A9 }) E( C
  357. LIFEL7:        + i6 H7 b" V( Q* i
  358. LDA $7A01
    2 I4 D; S: }7 q/ W2 B3 S8 Y! c
  359. SEC; q) N! e" w7 B! l% Z0 }8 C
  360. SBC #$0A
    9 C# Q! l/ S5 [5 T! B
  361. STA $7A01        ;$7A01=$7A01-10
    . L) ]- L2 l! V$ o5 D6 c% L' Z2 [
  362. INC $7A04        ;decade++. E2 W2 h6 F  g2 M) q+ y
  363. LIFEL8:
    2 V# ?, G8 q5 t
  364. LDA $7A01) i7 L" b- M$ J1 ~' x
  365. CMP #$0A) ?) P) Q* m3 y6 S: Z+ _% d& n5 p
  366. BCS LIFEL7                ;$7A01>10 goto L7
    & G1 g! S! e/ M9 k. Y# d+ B. N
  367. ;unit2 C7 G: j' j) m/ t% K' S3 q! I
  368. LIFEL9:
    - z3 f* s( H( ~$ Q9 p* e
  369. LDA $7A01        ;$7A05=$7A01! g8 t. _1 e, P& Q6 L
  370. STA $7A05        ;unit. L8 U* u3 L; l2 u5 O% s, {
  371. RTS        ;return
    2 `+ D2 B4 d. [& t. Y
  372. : Y. n$ E4 t/ K) c* ~8 x

  373. + k' I" O( b+ e2 K' \/ X
  374. ' _( {; Y- ?! P! R
  375. WEA:                ;武器ppu写入2 l3 Q$ n! p8 g4 I5 r
  376. LDX #$00
    . E+ V$ r- W" u7 z" C$ w+ Y3 B4 @
  377. WEARE:
    3 T- U' \8 B$ r, u) a* x) G
  378. JSR PPUADDR_PROCESS
    , l5 S# k2 |" a
  379. LDA WEAPON_STRING,X' K0 T7 ?: K. W+ D; [4 n5 Q
  380. STA $2007/ r9 v8 c! S- m) ^) M6 X
  381. LDA #$009 p5 g7 H( U6 \& m+ M
  382. STA $2000
    / ~$ }7 i. y* p, C0 K
  383. INX
    7 X* |$ u4 O/ |  c" d! N
  384. INC $BA
    ( b" A; A+ S  e9 H* ^
  385. CPX #$07% `: r8 y+ Y7 G; q2 c9 e
  386. BCC WEARE8 V6 }7 n! J7 i* e8 ?  v0 F

  387. # D; M) P; b& }* R5 [9 {5 b9 }! C3 a
  388. READ_WEA:& T4 C, ?* @: M8 }1 d0 W
  389. LDA $B9
    $ z+ Q: `; @5 m' E5 x6 {: {0 x
  390. AND #$102 W6 C( m% y! Q# @4 p8 |7 I
  391. BEQ NWEA
    ! ~1 q/ u6 V. t, e; f: z' j
  392. SWEA:
    % i! }  q/ L* X* O" s
  393. ! K1 D/ ]6 Q: Z& L) I
  394. LDA #$9D
    3 ^4 T1 c( ]& J; W& o7 m3 L  y
  395. STA $2007
      T( f" E1 J7 f1 ^# v" u) d
  396. LDA #$001 ~4 k8 N" x7 g" }! N% @0 _# c
  397. STA $2000# H3 i' _" [3 m2 L
  398. INC $BA6 H& ?6 |3 \1 F
  399. LDX #$00" ]4 \& i4 B# Y4 s0 M+ o% g  R
  400. JMP WEAREAD* e( j$ l4 u% P2 \& Q
  401. NWEA:
    + ^2 w' @9 B; A1 P9 P$ m8 u4 h2 I
  402. $ n. g3 R) p" o2 N
  403. LDA #$8D* Y. X6 I/ r9 \" P+ y
  404. STA $2007
    * S, H8 L9 V0 C6 w! A3 W* p7 F
  405. LDA #$00, w0 M6 a! @! E; B0 N
  406. STA $20004 H9 R2 {$ Y% k2 l3 `/ o
  407. INC $BA
    : m; F- s( q  C7 p) a2 ?
  408. LDX #$00
    0 m$ k' k3 V5 X! {5 |
  409. WEAREAD:( v0 K. C& v2 q( F. U
  410. LDA $B9* Q0 @2 c: _! C+ B, r
  411. AND #$EF
    % a( a& {6 P3 |  Z9 S2 x
  412. CMP W_DATA,X$ p0 v7 ~3 D& E7 t  G
  413. BNE WEACMP
    0 ^3 B- p' _" M8 U- ]. G; P

  414. 8 E) r: s2 M& P0 g4 V9 i3 H
  415. LDA W_PPU,X7 ^$ q6 J7 u5 g& L/ L
  416. STA $2007: T) a, u8 Z7 @& R
  417. LDA #$00
    $ c+ y8 _- f% x1 H' L6 Y1 o4 ?' j) W
  418. STA $2000
    9 F- v* P6 t5 h! p) o' }) r, F! S, M
  419.   B+ c: b& q0 y. ^0 N  ]
  420. WEACMP:. l# ~- S! A: ~
  421. INX! T; n% v  p* Q
  422. CPX #$05$ f( ?* X# i1 M/ J$ B+ ]
  423. BCC WEAREAD
    ) J1 m# F) V, R2 d; O
  424. RTS4 A$ k1 n& y2 m# |# e
  425. ( [2 V3 c2 V( L. f8 N4 E
  426. & K6 @9 X* J1 x- `
  427. PPUWRITE:
    & n7 h" W& D' F/ x. W" i0 T. r
  428. PLA5 C; T8 W4 d3 @
  429. TAY
    # I' E. ~% ^$ P6 y& c- L
  430. PLA
    , E4 |. n' W# N  ]
  431. TAX% _' F  h8 r* a* j$ @4 w
  432. PLA
    ; }- n, V6 L3 m
  433. LDA $25
    ( ?  ^6 A" T( |
  434. CMP #$00
    + A' B! }$ y5 z5 T& L, D
  435. BEQ WP19 b5 o( r5 D4 W" r5 ?' B, `0 Z
  436. LDA $254 D9 B- s3 D: R% B5 d$ R
  437. CMP #$017 g' V3 b7 f, _  L8 y2 E
  438. BNE WRE" D1 J- }! T$ D3 x$ |6 M; e  b
  439. LDA $F5,X
    , W. f& C5 H& O: I! Y6 K3 r1 _6 ^+ [9 j$ {
  440. AND #$EF+ R. D" |" S4 c& d. ^1 T6 x
  441. BEQ WRE
    1 a3 k1 D% F2 C9 h
  442. LDA #$00
    & W# a7 h" w/ x, y" s: i4 G: K
  443. STA $7FA03 g( q4 j) p+ s1 ]  S. P% f

  444. + h0 _, c8 L0 q% L9 t8 ~
  445. WRE:9 ^9 t* t" |7 j- F0 |% u
  446. JMP $A0000 \; V- S# A: o4 ]9 }# ]* s7 _

  447. : [5 B. v, S6 F8 p* L
  448. WP1:
    6 x5 L+ D& [. B' _
  449. LDA $7FFF' w0 H2 ~+ F2 b
  450. CMP #$FF. S% ]: D. \% S4 p! \
  451. BNE WRE
    6 F7 D+ t, M9 M6 D
  452. LDA #$00
    $ X& F, Y9 d  W4 m+ k: ^! z
  453. STA $2001
      D3 W" |- l2 u4 i$ Q$ _. C* y3 W
  454. LDA $BD
    ) ~$ s8 K5 f" `7 ]2 D5 e: E
  455. PHA
    3 ~6 y1 e  t( o, r* p9 e
  456. LDA $BC
    . ?. c0 {/ |. I5 p- x1 |
  457. PHA7 P% m1 p  m9 x1 v
  458. LDA $BB& _5 D( D0 Z3 Y0 U5 \
  459. PHA$ R1 S4 o( |5 @2 p
  460. LDA $BA3 c: R4 A! y, j4 F- V% J. v
  461. PHA7 M2 g8 ~/ ?2 h% Z- C# z
  462. LDA $B9
    0 p- P1 m; O: k" P; x* _8 U
  463. PHA
    " C7 w% O; |1 b5 M, R4 y% [5 x
  464. LDA $B8
    8 ~3 u; a+ B# F: r3 G/ j7 z4 q* N& Z
  465. PHA# n9 A2 F2 k! [0 _2 W; g
  466. LDA #$002 h7 |/ e7 ~" j/ {9 M4 k
  467. STA $B89 }0 |: q# ?9 H2 `0 ^
  468. STA $B9. H6 ^3 B- _. t" h
  469. STA $BA; j5 g8 c! J: ?
  470. STA $BB
    : _+ D. N$ @1 J1 R/ D
  471. STA $BC
    2 g* ^4 w8 O7 \
  472. STA $BD
    $ Z, ]: Z, w- b0 G  ~1 {
  473. LDA #$00( k; ]- g% \# \$ t, G
  474. STA $7FFF7 m& K; G; z: g) T4 D/ ^( Y
  475. LDA $30
    ( \! M7 Y! Z, M) W2 B, B4 t
  476. CMP #$02: ^, F5 G; s2 [$ `; ]2 x  j7 E3 u- M0 t
  477. BNE UNPROCPL
    ! R5 D' u) ?7 F
  478. LDA $7EFC
    - T3 p  k% n  r
  479. STA $FC
    6 V, Z) V$ Q) l" n8 d3 {/ Z% u
  480. LDA #$00
    " \2 @, P- n: \6 @
  481. STA $A48 K6 h! u5 `% ]6 L% N& J0 j7 L* w
  482. STA $A5% S1 S8 D! G9 U' k+ ]* E
  483. UNPROCPL:( m& f% k2 e) I
  484. LDA $7EFD
    ' E4 S1 i5 r$ J' r$ N
  485. STA $FD
    1 ^/ C; ~7 Z$ p$ _
  486. LDA $7EFF
    & l! m# s9 r9 q+ L. m- H* P4 z7 H
  487. STA $FF
    5 S$ t8 I. w. o! q1 q7 c( `7 b0 ^

  488. . S4 Z  n0 B# r' N! F3 x$ M$ d
  489. WL0:
    0 G7 h" D& C$ x$ s2 m  @
  490. LDX #$00
    * y' l% [; l  Q3 \  r1 P+ r. h
  491. LDY #$00; J! L3 d  x  |$ E+ P( b; S
  492. LDA #$00+ W* a* B5 X# E
  493. STA $BA7 j7 ^- d/ w$ t4 D. H: F' e
  494. LDA #$20
    0 y% I' o8 n! r: d5 Z3 D
  495. STA $BB
    . \# m2 w* m6 o" f" U
  496. LDA #$00
    % R0 Z7 {3 ]7 q9 Q2 i3 U9 N
  497. STA $BC
    8 n7 S2 o: w( z6 e, C
  498. LDA #$60
    ' h5 {# L. I, C' Q( S
  499. STA $BD! P1 u$ l# i9 E% S

  500. ; Y  d% G9 N; C3 ?+ ]- l2 Y! o
  501. WL1:- ]) @7 P; T6 d2 d3 {* l$ @
  502. LDA $BD
    : Z6 x, N; l1 \+ W0 T) L5 x- \
  503. CMP #$70
    2 c& }/ [9 s9 b9 U, c. d+ q- J
  504. BNE WL20 a2 R3 k% j2 p) ~* q" V4 B
  505. LDA $BC
    , T' W2 u2 y3 |8 [3 j/ r7 B: O  K
  506. CMP #$00
    & F- B" R. P7 x  x9 v) [
  507. BEQ WLR
    1 W9 b" S3 H( _* ]" y
  508. 8 S3 O- d) U( Y- F
  509. WL2:% ~; G6 W1 F- c2 v" X
  510. LDA $BD9 V" A1 D# }9 g$ c7 O8 E
  511. STA $2006$ m$ M) s8 F: c9 |5 e
  512. LDA $BC
    : G5 K6 y3 `- w" b2 E2 ^) P
  513. STA $2006( }9 L5 C" T  z# Z3 T6 Z

  514. 4 ]9 T% v2 J% \& d; `0 ^* q
  515. WL3:
    ; T. B+ `. m& I$ I  d
  516. LDA ($BC),Y
    " F% B8 ~6 w* l8 M* G5 H$ }: g
  517. STA $20071 Z1 `# y! ~% \6 ^6 j
  518. . o4 H/ Y) ~! n* O
  519. WL4:
    6 }! Y1 ~/ m* j: Z! y
  520. LDA #$00
    3 i2 d3 p) E1 ^$ e% J) p% X5 e
  521. STA $2000
    # l; @" ^2 V8 X  X
  522. INX- Y6 _1 y8 f& {, B9 t# a: ?
  523. INC $BA) P- `1 I; M1 [& i$ \
  524. INC $BC9 q" b; t3 D# ~. x- J( Q3 ^
  525. CPX #$00
    & X" u/ F! |3 s, m$ o6 b2 i4 h
  526. BNE WL1
    $ `" J0 E+ K+ m8 `  E
  527. INC $BB* p" t3 C/ F; F7 ^) n5 r) s
  528. INC $BD
    3 n$ l0 a6 G" J5 ?  b
  529. JMP WL1- n9 v8 ~( I. ]! H" _" W. |
  530. 6 r& Q1 c5 N- g7 j1 J1 i
  531. WLR:" i1 o" W! }7 F' @* a/ T) v
  532. LDA $7FFE! H' i% U- h' }, l7 L! y
  533. STA $07F6' t' A, [) z! x& c" Y* ~
  534. LDA $7FFD+ e) R$ t+ m3 e) ]+ L0 P
  535. STA $00FE
    ( j4 A% h) Z' e  x
  536. LDA $7FC11 p# M- v/ M2 f
  537. STA $07C1
    ' v  j- @) X) [( C
  538. LDA #$3F4 [# a/ W' i) s7 V
  539. STA $2006
    / v6 {6 ]) O; l0 Z
  540. LDA #$017 }* l7 U, x  T9 Z+ D
  541. STA $2006
    8 \* c/ ~. r! X; H
  542. LDA $07C1
    6 y& F5 v% n  Y
  543. STA $2007- M& }- Y9 v/ u4 @- T
  544. LDA #$00' ?& r$ W: B( z9 S0 p
  545. STA $2000* K" ?: K) X, v' o" c
  546. PLA1 d+ F) M0 Q3 N5 |) J# }* a
  547. STA $B8
    + G; i% q2 o  {. x4 b
  548. PLA
    5 k9 @9 W+ @* \* s. M/ f# H& _, [; [
  549. STA $B9# Y. C+ l7 F0 H$ |9 ^
  550. PLA( r( ~* l$ H& b! h7 F
  551. STA $BA
    3 l0 z- L' e; y0 p5 i
  552. PLA
    4 i# D$ O" m0 z) T. ?. n
  553. STA $BB; V" g5 U  {# R
  554. PLA9 N7 S5 n/ d# l! H3 M! l5 e1 Q2 l
  555. STA $BC
    $ U% F# A$ s0 H! o1 u6 r
  556. PLA
    # {2 L8 _4 F) Y1 I2 {% Q5 s8 H
  557. STA $BD/ M0 l/ c' Q/ [( K
  558. JMP $A000
    * D6 B! m0 S, i! p0 g+ ?. I$ T# w

  559. 7 P# D$ b" l; V' F/ v9 Q
  560. FREE:                ; 暂存器保护6 d, }; p; j' K: E$ `, z
  561. LDA $BD
    2 L4 |( I( @/ D1 n
  562. PHA
    4 d, {8 B# J( a8 l- d3 ^) u
  563. LDA $BC
    ' y: Y* ~# l% M: g" F' W
  564. PHA! R- D$ @8 k6 J/ `0 b
  565. LDA $BB7 F! Q. _  K: I2 A7 ]
  566. PHA
    & F8 C# Z/ I. o, ], S
  567. LDA $BA
    - `0 D  z3 J3 o. z2 \* }( L8 ?
  568. PHA# t$ i4 \2 w0 y6 n" \2 @5 P
  569. LDA $B9
    3 A' u! f: J$ [" U5 {
  570. PHA
    $ F+ c3 d  J. R8 W
  571. LDA $B8
      y& \; z3 Z+ z! V
  572. PHA
    & T/ L6 L# R4 f- W
  573. LDA #$00
    ; C& f' E1 V5 M  G8 P7 A# r
  574. STA $B8/ Z* g$ C9 ^4 P5 H! r1 s, |
  575. STA $B9; d" Y- K. O7 A9 ?; d! ~
  576. STA $BA
    ; q% s  o; E' _$ h8 I8 V/ \
  577. STA $BB4 P4 w, J6 E0 I' w
  578. STA $BC; v& t8 x0 d. A: O
  579. STA $BD* F/ b2 e$ v3 `, E  w' b
  580. ) G- o5 M  c; \8 v) C
  581. WEAWRITE:                ;武器ppu写入; m) J7 N3 |, e) ?& O( _' v
  582. LDX #$00
      ?* ~+ l1 e/ e& }0 J) B2 k2 [) i
  583. LDA $AA
    ) X% P0 [5 I$ f/ G) G8 J' w
  584. STA $B9
    % l1 z6 {! H5 m, D) p  L' N
  585. WEAINI:                ;地值初始化
    3 ^- ^0 w$ W2 S7 X
  586. LDA #$A44 I. j/ {  z* J; s/ o' B1 r
  587. STA $BA6 {2 e% I0 p1 ^+ z
  588. LDA #$203 K6 R) x4 A: Z6 [9 _- N8 ~
  589. STA $BB
    1 i4 v0 @+ z' d4 [6 b# [5 ]: V
  590. : p% F8 w7 ]8 L" M  I3 q1 Q! o
  591. 1 U( \  U; p4 X( V. X0 u. `4 e
  592. JSR WEA. B! t1 O' Q" U6 v
  593. LDX #$00                ;武器ppu写入
    - m  R3 W# N9 y- h' f
  594. LDA $AB: c$ g+ c/ g* F' E; s
  595. STA $B9
    : A' _1 U7 ?0 [! i8 ?) C
  596. LDA #$B3
    / `2 V: {, h. X4 [
  597. STA $BA
    & p9 g% q! a. ?! {& k3 [
  598. LDA #$20# A) N6 h- v4 g) l7 J
  599. STA $BB
    , K- g6 C/ A0 E' h

  600. . |  x' W! r# R6 G' i* s0 K  R

  601. ) q, d& N5 }' h% W
  602. JSR WEA
    ; k; [/ I' ~2 u* p

  603. - b' H- I8 i3 n( z8 w5 `$ g+ R
  604. LDX #$00
    2 u5 I4 ~: a/ R' m: g% n/ v8 J3 t
  605. LDA #$E4, H/ Q  `5 B/ D# _( o$ B- \
  606. STA $BA
    ! g! L7 ]9 o* Q/ L4 }
  607. LDA #$204 N1 X* S1 q% U/ W  o8 g& o' Z
  608. STA $BB; f& n% K9 K6 t3 Y+ i; d1 M% I. Y) y
  609. 4 N7 ~& z4 A7 M" z
  610. 2 D3 S7 V9 ?5 x9 I$ J
  611. LDA $32
    . u8 r) H5 t& J( f) B& e  f2 F
  612. JSR PLAYERLIFE& G8 }2 d- F( B& l* h
  613. - }3 T: \$ b8 z, i
  614. LDX #$00- ~; ?) O4 _  B) ~; Q$ H& |
  615. LDA #$F3
    0 ]4 d" o# u2 N" o: C* @. o8 S
  616. STA $BA7 ^5 `, Y1 r: N) A+ F
  617. LDA #$20
    & O0 A+ {) O% f3 B$ ?4 x- ?
  618. STA $BB5 W; R$ H5 g. [* E$ k; K  t: V
  619. 4 X$ V7 I9 g5 e& K7 I
  620. / O! n9 g0 A$ L. [) l4 _3 `
  621. LDA $33
    ! Y+ R& P; @4 O& J, @$ T
  622. JSR PLAYERLIFE+ W9 \. D! Q: n: z- w4 O/ o
  623. 3 s& x: |. P7 g1 ]( n
  624. : b. h+ t! N" U7 P1 k3 T
  625. JSR PLAYER_01_PPU
    2 P8 H8 L. y- r5 _
  626. JSR PLAYER_02_PPU
    0 X! E5 b+ X% x
  627.   Q& a5 G& U( S4 ~4 l, x
  628. 1 I* _) `) d* B6 t/ {1 {
  629. JSR PAGE_PPU
    0 A" I& {* _9 V4 n% g
  630. JSR PAGESELECT  ~, g* c9 S0 M0 H. _/ `" k, Y. x

  631. & ~% C) @; T2 A* p7 n' g
  632. ' p$ _& t0 c. M
  633. % `& T/ D( o' F3 _+ q2 S3 F. l" J

  634. / [: L9 j, N/ Z. s, D% x4 U
  635. 4 w' s" O1 ?' ~9 X

  636. 3 r; b& Z5 X4 ~! ^+ y" j4 x2 Y2 i! Z
  637. ' A/ |% @; o5 Z" o0 p. v- d
  638. 0 l& Z1 x( N1 v1 Q1 S) ]
  639. 0 `6 w5 d! P' V+ Q. @- U
  640. 6 p% L$ B9 s& W8 u- Z4 A! n! m

  641. 3 I/ D* f5 I& N% S0 Y! k
  642. , c0 w1 ^9 L, e
  643. . ]7 B9 L3 ~0 T% V3 Y$ _- u
  644. PLAPRO:                ;恢复现场8 ?/ X# `/ y; e7 Q! h
  645. PLA
    7 ^2 H) i" D/ R0 d# {
  646. STA $B8
    ( X4 ~" }6 B9 n. z2 q( C
  647. PLA' X, Z0 S8 V: l7 z; N: U" u1 p
  648. STA $B9
    5 `% o9 i5 R/ \! K
  649. PLA: F% _, q% _1 H
  650. STA $BA
    3 H8 s( ~2 Y& s& t
  651. PLA
    2 a& Q. ~& d* @4 |5 G1 Y+ }7 t( s
  652. STA $BB
    2 }  R8 h" Q/ Q
  653. PLA
    8 l. c+ y- ^- P
  654. STA $BC1 Y1 X4 X9 L7 y
  655. PLA# ?: i# ]& q+ o, B3 e# \! G
  656. STA $BD5 Y" D+ T# a: e" T
  657. FREERTS:& D) D+ X& E. @. F. P9 o9 c
  658. RTS
    * H# N5 V1 C# h" z

  659. - v8 `* f& c, y" n4 f: o2 A
  660. INVINC_STRING:                        ;invincible6 f& L2 c" l( O) ^; L
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$802 h. S# F. S' o0 Y: y

  662. 1 n! j+ v- C( q$ D
  663. INVINC_PPU:
    1 E. y. r  F, A/ j
  664. LDX #$004 D4 c) Z6 w# B8 o/ y& Z+ {
  665. LDA #$62$ k; J$ B. b1 ]5 K$ B" R
  666. STA $BA! p( o3 I& E. _8 X3 u& b5 o: A
  667. LDA #$21$ n" Q  [9 ~5 }' m
  668. STA $BB& ^. _: K" Z8 ~7 M1 Q% h

  669. , I' Y1 j' H2 t1 p/ f

  670. + ~$ r: m, g" g/ a  x& G
  671. JSR UP_PPU/ T1 S( K5 G6 ~' M6 z* i$ i
  672. JSR INVINC_WRITE+ K6 Z8 u2 k1 V8 v3 p% ^
  673. LDX #$00" D# w5 P7 @1 x8 p# S$ e  W8 A
  674. LDA $07A05 [# z. b  P$ G: _0 b
  675. AND #$01
      `7 C; X( t: u2 o% W# ^
  676. JSR ON_OFF_PPU& [3 W% v9 t+ M& X2 e: ^) p' O, c
  677. LDX #$00  A% p, p0 h! m  A# n6 [* h
  678. LDA #$71
    1 s; ]* A: ?/ W% M/ d
  679. STA $BA
    8 o; Q8 v1 a* ]2 T* d
  680. LDA #$21
    ( Z$ W- J6 Y) ?, t
  681. STA $BB
      v0 B2 E; {1 S2 a' K; `' W
  682. 4 a" u% {# H( Y. g% {
  683. 0 Q% ]: Q# l: o5 l4 p
  684. JSR UP_PPU
    & l* n$ ?- `3 d. V
  685. JSR INVINC_WRITE
    9 E6 [/ r# j) I2 S* T
  686. LDX #$00( p! h8 _% E- }7 j2 i8 N
  687. LDA $07A1, \" U' x5 n) q! a0 @" A9 V
  688. AND #$01
    9 m; i* f0 U6 ?/ B0 _$ @
  689. JSR ON_OFF_PPU/ G" A+ C, s, d4 u/ q. G5 c4 [$ H! u
  690. RTS
    6 x) S+ p4 d2 w0 u3 O
  691. 7 [; f: Z. p" Y; ?  C* h
  692. INVINC_WRITE:" Z3 E2 m* D& V/ \& z* D* R
  693. LDX #$00
    . {! A# M) q0 {( p
  694. INWRITE:
    7 r0 d( n& D1 e0 Y- [: r7 V
  695. JSR PPUADDR_PROCESS+ P- C4 F) T# x# X
  696. LDA INVINC_STRING,X; V: d. o: I! I2 y0 n4 B
  697. STA $2007; a: E" [; m, T7 c7 i2 v
  698. LDA #$00
    8 W6 \! l* i8 z* Y# O2 S
  699. STA $2000$ v; p4 V& o9 g) L0 Z
  700. INC $BA
    / A/ Q1 w7 ]" Y& c: U; Q
  701. INX. H1 B' e4 g1 q1 p, Q# s; m
  702. CPX #$07( L$ \) L& Z, s' _: O1 [. j
  703. BCC INWRITE
    # g* a5 u  ?. J4 g" B3 ]/ Z1 c
  704. RTS
    / U( f5 j3 \* a. U& G
  705. / ~$ }$ ^6 U( q" h5 x/ n$ ~8 ?- C2 i
  706. ON_STRING:
    7 S! m) }3 S/ p+ r* B  n0 d
  707. .BYTE $99,$98,$80
    ) s3 x- z$ J3 \7 p, M! L& q" R: G
  708. 6 b) a" J2 v4 d% k! J2 ?: q9 d
  709. OFF_STRING:
    ( K6 t! a. ]- O- t# f0 r4 e
  710. .BYTE $99,$90,$909 w# a2 P3 ~- X# C# W) Z

  711. * [$ F, G% i* o
  712. ON_OFF_PPU:5 p. ~! e3 X  Q2 g$ e4 Y" L
  713. BEQ OFFWR# }( r, l% X% U4 L3 i4 t, k
  714. ONWR:( A$ {2 o  l$ [! n0 r" C
  715. JSR PPUADDR_PROCESS+ L  ?1 c  f4 z, E. n: A
  716. LDA ON_STRING,X
    : R. ^2 p! H9 M0 z; S
  717. STA $2007( ~$ b& g/ B/ C; _* c3 J
  718. INC $BA
      `6 S0 B# W# A/ D7 R4 K
  719. INX+ B& F8 Q3 h# H  Y0 ]
  720. CPX #$03
    9 i) \' b& r' Z- d! n
  721. BCC ONWR- V  D% V1 A8 H8 c" k6 V5 ~: [
  722. RTS
    " g* |6 T& G* N5 f+ F  f
  723. OFFWR:
    $ s7 m- J% A/ ^% ~
  724. JSR PPUADDR_PROCESS
    " e* x1 _; `9 Q2 [! @; [4 R
  725. LDA OFF_STRING,X6 c8 i' h) S$ G9 w- U% F, U% Q5 t
  726. STA $2007
    ) @1 s% Z% v0 k) Z
  727. INC $BA
    9 o  J+ v4 {9 @2 K; r- a' I
  728. INX+ ~& s! @8 O& W2 c# S8 q
  729. CPX #$03
      a  A. \3 e% k0 F7 |' Q
  730. BCC OFFWR+ Z; S" G' k& U6 f1 u
  731. RTS- M" B+ X, o1 I6 v0 _

  732. % \$ F# w  z& a+ k3 ?- W7 ]$ \5 c
  733. LIFELC15_STRING:
    7 R5 h! e# ^3 B( c- o: r' a
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80$ U9 d& L! B8 W  ?, x2 M

  735. " ?3 t, x; J' T/ v; @/ p9 n( K; j
  736. LIFELC15_WRITE:" c( _: J0 g4 W9 g1 U( _$ o, E0 u
  737. LDX #$00
    $ F/ u9 N9 m9 q. q: ^
  738. LIFELC15:
    ; L. J" P7 f7 B9 S$ y* z( n
  739. JSR PPUADDR_PROCESS
    ( v( n5 Z2 B# z+ M
  740. LDA LIFELC15_STRING,X
    % S  r* k3 a  _4 z; m+ |
  741. STA $2007
    % A. d. }# W# ?0 Z: k, T* K
  742. LDA #$00
    8 e) K: Q  W& \& J( ]9 t5 J1 }
  743. STA $2000
      r: c4 r$ L4 A* k. j2 Z
  744. INC $BA
    7 y# W; m6 |/ G7 C* v2 M
  745. INX: ]$ A4 R# T; N1 c0 \
  746. CPX #$07
    ' e% x4 S3 ?8 X* E' ^% l0 M; x
  747. BCC LIFELC15
    - y+ t, R) P. {) R, m6 H
  748. RTS8 |( g# T0 |# A+ M; `; Y0 T/ F1 l

  749. & A7 |4 o/ r" T0 @4 {7 d" i
  750. LIFELC15_PPU:
    / m- \* A6 j# E7 i6 ~5 Y
  751. LDX #$00
    + g8 v' m1 D) {; z5 O* T+ l
  752. LDA #$A2
    ) r; d# Z7 Y4 n) p% |) p" S
  753. STA $BA
    & |  p# _6 D' r4 K
  754. LDA #$21
    7 Y5 J- |) H) m& T9 K. [
  755. STA $BB
    7 R8 ^- K" j0 f' P4 i0 @
  756. JSR DN_PPU9 R6 g/ f1 n% b" w
  757. JSR LIFELC15_WRITE
    & J7 n( g+ U2 {  f; A5 e
  758. LDX #$00
    5 V( V- w$ E6 v; f
  759. LDA $07A0
    4 Q% f1 P2 a+ B7 p& G
  760. AND #$02
    + Z9 r5 |6 }8 F* i3 l  R9 L
  761. JSR ON_OFF_PPU
      |/ T) w  a. I' P$ _$ Z, X$ [0 N
  762. LDX #$00. z. v; o: w: J) U! o
  763. LDA #$B1
    ' d5 `6 S! Y; j. c  ^) E5 H8 y
  764. STA $BA, ~! ^+ `- |# v( {9 m- h
  765. LDA #$21' D1 U3 E+ q; y% Q$ o4 O2 r6 V
  766. STA $BB% V) A# O7 s' P2 v. w$ P
  767. JSR DN_PPU9 ^3 E. m$ T8 a+ n
  768. JSR LIFELC15_WRITE# N1 _5 [7 k  x( [
  769. LDX #$00
    " d5 G" J& d6 G. F  S$ |" M5 N
  770. LDA $07A1
    4 @( s: H5 d2 y& T
  771. AND #$02
    1 q8 y. H% B: i. o% l7 e1 a
  772. JSR ON_OFF_PPU
    $ z# `5 G, U5 H$ j# {' B
  773. RTS
    ; p; o2 {5 N, L

  774. % W' s: J8 Z6 m3 _6 C
  775. DOUCON_STRING:
    & l5 w/ A+ O7 M  f  b+ z
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80! i' I! k! I( j7 w6 g( l6 i4 [( K" k

  777. . c6 w+ u% @3 H) i- c
  778. DOUCON_WRITE:
    ! E$ _/ `4 ^5 n/ w3 P- N8 j
  779. LDX #$00
    / @$ M% _% X0 r1 f
  780. DOUCON:
    ( N: q; r& m# r7 H- a2 f
  781. JSR PPUADDR_PROCESS
    9 B* Y* H/ O  G0 u# Y/ ?( [
  782. LDA DOUCON_STRING,X  |5 I) f7 [& {( n
  783. STA $2007
    5 q+ i  E' E( a. ^
  784. LDA #$000 f& c9 m: @" j' d
  785. STA $2000! g8 u# H1 `0 e& R% s1 l" K8 Z
  786. INC $BA: s. ~/ H# X) o* F' l1 O
  787. INX
    & }! h1 j' G' e5 I: @  j6 S; Q
  788. CPX #$075 [. j8 A$ w- N
  789. BCC DOUCON
    ! T- |6 @2 w5 Z5 Z' j
  790. RTS
    $ A- \& A" F$ y' v4 _: z$ ?* f4 w8 z: W
  791. + j; U1 J0 E: q
  792. DOUCON_PPU:: k9 R. y) O1 u# r/ K. ~
  793. LDX #$00
    ( ]7 U* K0 k& i
  794. LDA #$E2
    9 p) V" N$ s9 l- G- m3 Y9 w
  795. STA $BA. ^; h( X. h! B# x2 }
  796. LDA #$21
    : @* R3 f+ ]2 o: R
  797. STA $BB
    . i4 W1 \9 `, c) x1 J7 t
  798. JSR LF_PPU
    , K. p6 @; S! C
  799. JSR DOUCON_WRITE
    # S2 [7 h% z1 Z& e
  800. LDX #$00
    0 C. L" h  O) f9 ~: }4 _3 f+ \
  801. LDA $07A0
    $ w7 D$ k4 d- v) ]
  802. AND #$04) q/ D$ B9 G, u
  803. JSR ON_OFF_PPU$ n- \& [' _0 i# J7 R
  804. LDX #$00
    & {# k/ N1 P) h
  805. LDA #$F1
    0 {) d5 t1 O- m6 K1 M5 O
  806. STA $BA
    6 d$ _7 A/ V7 s7 w3 H" a; Z0 D
  807. LDA #$21
    ' T8 g5 h, M, ^7 C2 z) C6 G
  808. STA $BB
    4 E" }% u: ?& K+ m
  809. JSR LF_PPU
    % b- o3 o5 i% g" T1 `/ R
  810. JSR DOUCON_WRITE
    3 z! \: Q4 z( U
  811. LDX #$00
    # K2 X$ o" J# L6 [' U5 O
  812. LDA $07A1
    $ E+ a2 c# V+ M, z) o9 ~
  813. AND #$042 N, g* Y& N! A7 n& y
  814. JSR ON_OFF_PPU( `$ ^7 {# l, H* j/ O
  815. RTS3 N4 J# J5 a$ b' b  o& e

  816.   ?: \' y; ^& U# W7 ^
  817. LIFELOW_STRING:
    ) H9 \7 o9 _6 e0 z4 c( J6 z, {
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80
    7 r/ i; g  ]% L  X
  819. 8 s' Z6 [  D) h( \; T
  820. LIFELOW_WRITE:
    4 H+ h8 p  m& u0 y3 ^, L
  821. LDX #$00
    " j2 G( i. E2 A& D, `: C  b9 v' L
  822. LIFELOW:
    : b# I" z4 ^! t( w; g0 K% e+ [4 E
  823. JSR PPUADDR_PROCESS1 J( |2 v/ l3 D: d  U" ]
  824. LDA LIFELOW_STRING,X
    . v& f( \* i; j! f3 F; q
  825. STA $2007
    / {' \7 M4 W; |; T: D5 W
  826. LDA #$002 s* y8 W- G8 Q
  827. STA $2000; D( R& K. S* H0 \" r" |( x- Q
  828. INC $BA4 r, F  t) V" `4 u' H2 s0 D. @
  829. INX
    ( C$ s9 ~" k/ @" A5 x% d( A6 o
  830. CPX #$07
    9 ]7 \7 C4 a2 l: p4 w
  831. BCC LIFELOW
    , X' v* B' \" Z" ?' ~
  832. RTS3 O$ u6 ?$ x' x% @3 U
  833. . J& D4 t  o8 L7 o7 [) y) l0 G
  834. LIFELOW_PPU:
    $ J$ J$ }2 E; `& b
  835. LDX #$00
    2 ?+ R& B( i; A
  836. LDA #$227 V7 ]6 ~# f; t
  837. STA $BA! b0 m4 ^' z2 M+ Q. {
  838. LDA #$22
    * m9 p# C: o" Q5 O' q2 V; k
  839. STA $BB
    - I9 g# e# F' R( a- G" @
  840. / Q) C# G/ L* @
  841. 1 K' `9 t9 S5 v+ o: W# J
  842. JSR RG_PPU5 o9 }$ r5 B7 L2 [0 N) p; {
  843. JSR LIFELOW_WRITE/ Y  @1 G0 j) ]/ j8 {$ f
  844. LDX #$006 g: p; ]+ m4 L3 o9 w
  845. LDA $07A0
    1 R, [- G& A/ T8 U5 M! f
  846. AND #$08
    - q8 N5 c8 k  I' ]' n) r
  847. JSR ON_OFF_PPU
    ) T' j+ P: g! b' I! O
  848. LDX #$00
    0 _5 e& X9 {  O7 _3 M2 L7 H8 F
  849. LDA #$317 B1 `# H& C2 p
  850. STA $BA" _, `0 r7 ^% Q8 w
  851. LDA #$22
    6 O7 `/ }: l. Q
  852. STA $BB7 o5 c* C2 m& C: }1 K

  853. ! s) s. T6 X$ m6 x

  854. : @5 b' Q: }' D' l  Y! C
  855. JSR RG_PPU# h  L* G! J5 f7 H+ x
  856. JSR LIFELOW_WRITE
    & S$ n8 T& I: Q
  857. LDX #$00. k4 J' I  y& T4 C5 M7 W3 [. z
  858. LDA $07A15 n* J' E5 G" {
  859. AND #$08
    . Y, S6 h: R3 x# K" y
  860. JSR ON_OFF_PPU8 G3 q/ }0 n' N! v; Z3 B* t  g
  861. RTS
    ( P+ \! b: \. R" ?- N

  862. ; n3 H* K' s6 h5 F. x
  863. KILLON_STRING:* g3 X+ D' S5 _& P: U7 w
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    5 B, @  b" U3 d& m
  865. 5 Z: w4 l8 [" y* ^7 N
  866. KILLON_WRITE:
    8 X/ G: a2 z; h/ F
  867. LDX #$00
    2 |  n+ c2 u# s* c1 ?! }
  868. KILLON:
    + C* o. Q) a! }" e+ D$ o$ \
  869. JSR PPUADDR_PROCESS) u1 Z+ D: s# g* e
  870. LDA KILLON_STRING,X
    6 m/ v! y" Q6 [% }3 b
  871. STA $2007
    + b; d+ R: o7 `. m+ L/ P( F+ G
  872. LDA #$002 \1 a7 \9 N) v) {+ H+ f0 x/ m
  873. STA $2000! {2 @4 K7 l+ t3 P' I/ m7 n
  874. INC $BA
    4 W# u: k  e4 {$ @
  875. INX8 b9 _' ?7 u4 B% z- k3 W/ x0 I: h
  876. CPX #$07! C3 v3 M2 l  t' |& e3 Y7 u: t2 n
  877. BCC KILLON. H6 Q4 t3 z: l  }$ y
  878. RTS/ C$ n* `, x6 c1 I+ {, K/ e

  879. 7 ?  |3 {* R9 s9 ^" k( A6 g5 D2 W
  880. KILLON_PPU:
    " ^: I, M1 N3 d( i+ H2 U$ P  b
  881. LDX #$00
    " e7 I* i! w% b2 D: e) f
  882. LDA #$62
    8 n4 W( n) Q  g
  883. STA $BA! b% [: g" O7 i) N' N
  884. LDA #$22# z6 c+ U, W# v( L
  885. STA $BB
    1 B! S% d3 C3 e' P, N

  886. ( J+ V: e, I$ A$ t/ E5 X1 V

  887. : H# u: q; N* L/ |7 G# D
  888. JSR B_PPU0 G& ?/ P' ~( h1 {  M8 ^$ Z
  889. JSR KILLON_WRITE
    8 h2 \, J1 t+ k8 M
  890. LDX #$004 X( [: o" ~. l% r0 N5 A4 n
  891. LDA $07A0
    2 }& D- G, m: I% u
  892. AND #$10
    3 l& H$ ?' C' p8 l! t
  893. JSR ON_OFF_PPU4 N& H! K' \. v8 E
  894. LDX #$001 s" h1 z: }& D! x/ A% C
  895. LDA #$71& i. U4 M7 B0 a. T" H5 M% P
  896. STA $BA
    * _7 s) N5 F! B7 r: D
  897. LDA #$22
    ' K. `+ K9 ?2 r2 J7 _
  898. STA $BB
    + m; A! Q6 a( N  U) e

  899. . E9 _& i7 o  I4 k2 X' T
  900. ; E7 m+ H+ i- V# T
  901. JSR B_PPU% _& W8 |0 r  a5 o# o0 g. L
  902. JSR KILLON_WRITE0 B2 q; k: ^: D1 N9 o; w& \' X" R
  903. LDX #$000 P* j' b: I" I  S7 s
  904. LDA $07A1# ]$ g# {, w: _; r# g& n! a
  905. AND #$101 F/ j1 s  A; Q* R8 A
  906. JSR ON_OFF_PPU
    " E6 R$ c5 [& S  @0 {( C- F
  907. RTS
    ( V* ]& L! W0 W. i# r$ j  h/ Z

  908. 1 u1 r/ S8 k0 M! K% C
  909. SKYFLY_STRING:
    : ?* U) R: |; p4 J3 g4 Y
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    & i( \2 @4 X7 P& w/ |! w2 L

  911. ; x& V& e' t  Z8 E% {1 B! I7 Q9 N
  912. SKYFLY_WRITE:
      G, e1 f/ \, I) w" V5 ?
  913. LDX #$00
    / V& K( E, ~0 v. U9 Q' B9 K  j+ d: |/ ~
  914. SKYFLY:" b) C; o$ m& @1 P5 \# |' F
  915. JSR PPUADDR_PROCESS9 L3 ]! ?7 d" D3 V1 U- o  _
  916. LDA SKYFLY_STRING,X
    7 V7 f" Y6 G) u
  917. STA $2007
    ' J4 _) f  ~! Y2 B$ b6 o
  918. LDA #$007 t: x: A- h# i4 i
  919. STA $2000; V, @" C4 f6 C  J" R
  920. INC $BA" |1 p# b  ^1 L# g
  921. INX9 J1 j  o0 t, J! U+ J3 C
  922. CPX #$07
    * }, q  B  Z5 v* v
  923. BCC SKYFLY
    ' W! }& Y& K( Q9 V, ^/ |5 H; ?
  924. RTS1 h% i- R- t/ G

  925. " h; }, c, s! v" x1 K: e! y/ E* n8 n3 V
  926. SKYFLY_PPU:  I8 ^! n" T5 C. C! R* Q' l0 P: i
  927. LDX #$00
    4 r% c- u$ R& D' `
  928. LDA #$A2
    - `" T, Z5 A& q7 ^4 b
  929. STA $BA4 W& N' h0 z3 C* W' f) O
  930. LDA #$22
    - K2 [* U. H; V' x) D- I- `
  931. STA $BB
    " R' r( `- v1 U' N5 Q
  932. - B. D: H+ q. i

  933. . ?. Z( ]5 G4 {2 f, Z5 w0 ~
  934. JSR A_PPU
    : V* y7 m1 X, q: q
  935. JSR SKYFLY_WRITE
    ) Q! U% `, J% f  N5 J3 U5 Z
  936. LDX #$00
    & o. a( @& _) {% U4 ~1 \
  937. LDA $07A0
    : q: c4 K" ], R- B8 u: w. a
  938. AND #$20' v" d& U- F' R. e) p
  939. JSR ON_OFF_PPU7 |* J  n" U6 C
  940. LDX #$00
    6 n( M& ^. r# s' _- L* E
  941. LDA #$B1& {7 S: Q! e2 d, N( O' t
  942. STA $BA$ P5 c, A  u, b
  943. LDA #$22
    . h+ P/ X2 E2 l* S/ ^- x
  944. STA $BB: b5 Z$ a' b: L( ?4 }9 E# Q

  945. 1 @) ~4 N# I1 V( A0 G9 M. O6 U
  946. , G% \9 s$ y" l. V' R
  947. JSR A_PPU+ i( x7 w4 J' |) R
  948. JSR SKYFLY_WRITE7 E+ b2 l$ N4 }7 T
  949. LDX #$00
    % K3 ]+ S/ C( X5 B% F- z2 w7 K& F
  950. LDA $07A1
    0 y" m3 W0 a  q' z  ~+ u+ D' B
  951. AND #$20
    / t3 r# M+ k/ F8 J' S  k/ `
  952. JSR ON_OFF_PPU9 c+ |9 P+ j. }9 g: U* i% B
  953. RTS
    3 C$ }" g( n5 N
  954. 0 R5 @2 E* j) Z( h! ]+ G8 I; ]% @
  955. BULADD_STRING:
    * `  q+ x. p( s  o- j
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    3 W0 @) `0 @7 `& M6 [) U$ e: _; e

  957. & M6 j- L4 H0 {; y; c7 ~
  958. BULADD_WRITE:" j, ~6 W' s. U8 ]: ]3 h- }
  959. LDX #$00: |- Z( w; l5 Y: N
  960. BULADD:
    : O) t; a1 o0 m. I
  961. JSR PPUADDR_PROCESS" k- E# r! a" o5 q: U
  962. LDA BULADD_STRING,X9 F6 q$ P( J  w. U* P- u
  963. STA $2007
    5 H, e2 t7 z1 c) u, F
  964. LDA #$00
    # J# B, ^! J. P1 N
  965. STA $2000
    ) \  }/ F6 w' G  D) C) G( _4 u
  966. INC $BA
    6 h, D- r" U7 u$ Q" J
  967. INX; O) r/ G, s6 W# H$ M4 j; T
  968. CPX #$07- _6 @1 L/ m2 e. ]! D! `+ m5 n
  969. BCC BULADD
    3 v, c8 S- P; p2 ^
  970. RTS
    : V" K* v0 _" G. r0 ~! ]+ f' \

  971. % m9 V6 ]/ G7 V' k: i
  972. BULADD_PPU:
    ' M& ]+ g% V7 x3 X' W
  973. LDX #$00
    8 V# u* ]9 K" k& V% B& s( s  y2 ]
  974. LDA #$62
    6 p, G# F+ k+ W
  975. STA $BA" t6 U5 T  r) G* F. {/ l
  976. LDA #$21
    / A' }# J7 ?& W1 y7 z, A
  977. STA $BB
    $ P3 f% J  j- y" Y
  978. 8 |/ J# C8 u8 l% H

  979. - O2 T6 A  C) s7 s- j
  980. JSR UP_PPU
    . c, J, z5 v' f! ^$ h+ J& g4 p
  981. JSR BULADD_WRITE
    6 G# s' L6 ]0 L% P* n
  982. LDX #$00. a3 Z( j% W7 l+ |6 P  }6 d
  983. LDA $07A21 y: N9 w, c; K4 ^
  984. AND #$01* v6 d9 a/ `/ K6 D9 X/ D+ n0 v
  985. JSR ON_OFF_PPU5 a4 [0 f5 N/ E, M& {" R6 G
  986. LDX #$00
    * ~) M* M0 \" ^( n8 j) J) L
  987. LDA #$71
    + D) I: Z" u4 R% b0 M6 k- Y  F' i
  988. STA $BA
    ' T$ ]2 \" L! x5 u5 K
  989. LDA #$217 |3 |2 Q/ ]6 ^1 D4 O  R4 o
  990. STA $BB
    + M0 a  T" y! b2 K
  991. 0 s/ f  t+ m; g$ @& ?7 E& i
  992. 3 `- R$ F4 V* J" @3 |) @" v
  993. JSR UP_PPU. F# p5 ?0 S4 \2 a1 i- t
  994. JSR BULADD_WRITE; H& x+ W6 Z3 i, q0 z" X
  995. LDX #$00
    . e: {8 j4 b; e5 m* W' T+ P1 c: R
  996. LDA $07A3* j: P% i/ |  U, \2 Q
  997. AND #$01
      ^- _% O5 o0 p5 |. ]; ^: X, K
  998. JSR ON_OFF_PPU
    2 }6 }: `$ |2 S8 e1 V4 q" N
  999. RTS
    $ h7 `" F* ?7 ~- Z
  1000. 4 R1 C8 [% Y, O' |" l5 s
  1001. MENU_PAGE_STRING:
    / m/ H- v; |* w6 D
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    4 d" W/ U3 ]. L
  1003. ) l( q) U3 |- {9 {: C7 u( p4 Y
  1004. PAGE_PPU:
    , W: h( c( h5 E# j
  1005. LDX #$00
      p4 W: E9 f4 n% @" j0 `* R
  1006. LDA #$0A& s' ]& j/ n) [2 [" [
  1007. STA $BA
    . L0 n  s; X8 H! H6 m
  1008. LDA #$23
    " c$ p3 Y# k, e
  1009. STA $BB3 T$ [, E9 b9 Q: B% k

  1010. 2 v/ Q/ u. Q6 |/ U
  1011. : T! m" V! P$ c0 S4 h" `' f
  1012. MENU_PAGE:
    / |  X4 I& k! C
  1013. JSR PPUADDR_PROCESS4 [" S) n1 V' X. E; B
  1014. LDA MENU_PAGE_STRING,X
    ) U+ t- {  M" w
  1015. STA $2007# |0 h: x3 c: W8 W0 l+ h
  1016. LDA #$00; i' f1 q2 R; ]9 j- w" P
  1017. STA $2000
    + S) c# }6 t/ Y
  1018. INC $BA8 t: x  X# T5 R3 B8 p/ D
  1019. INX
    + c7 l. V; C# n7 d
  1020. CPX #$0B" j, i' i" F- \; w! [
  1021. BCC MENU_PAGE
    * U0 e( x4 y/ o, D3 N
  1022. LDA $07AA6 Y1 x0 W* m$ J! y3 |
  1023. CLC8 s* S% s/ \' u# \& v
  1024. ADC #$821 [0 g% z$ `5 h1 ~4 _8 M0 ~
  1025. STA $2007$ X! ]8 g) X/ a- i: [
  1026. LDA #$00! A5 }2 x4 i7 m' b* I$ T
  1027. STA $2000$ f  o/ e. }- o* a' \9 X
  1028. RTS& a; m/ Y* g' z6 k$ _, A9 d. H( k

  1029. * @1 _! u0 l6 W2 x
  1030. # c. A5 O! X2 q8 W& Y
  1031. SKINGE_STRING:
    % ?+ _9 q5 c" l, n9 Q) J6 k
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80# s6 s( a3 ~9 V: X6 e. y5 m# j
  1033. & z1 p- t  ]8 t5 e* }
  1034. SKINGE_WRITE:, \$ m$ t6 Z' Q( G5 N1 u
  1035. LDX #$00
    6 j- j" i% E( X3 `5 c. h* H! Q+ _
  1036. SKINGE:; X  V! b% f! v: \" _9 u6 v  ?
  1037. JSR PPUADDR_PROCESS
    6 g% c& o! C  o, H" S
  1038. LDA SKINGE_STRING,X1 C. o  G" ~$ ?3 Y$ }* l
  1039. STA $2007! |6 E' x( k7 [0 g% x# k
  1040. LDA #$00
    0 C# n  p1 w# n4 z9 P
  1041. STA $2000, R) s* V7 |+ e. I+ j
  1042. INC $BA
    ; ?: v7 _% \* ^; L$ Z% R% W
  1043. INX
    / C2 ~$ \8 N' ]; `; F7 q! ?
  1044. CPX #$07* ]' Z* H9 {$ E: W: x8 F, O8 j
  1045. BCC SKINGE9 v2 Y+ A* H: A: u6 M% u8 F
  1046. RTS
    5 c0 \- Q( h8 [9 O: x) p  R
  1047. . ]- d  x) t# A1 `  b5 N; w5 N
  1048. SKINGE_PPU:  W& w% V: Y) k; r& U* F
  1049. LDX #$002 g" Z7 l9 S# b4 [2 I% @5 p5 n
  1050. LDA #$A2
    " v2 P' @" q" k& u0 c; r
  1051. STA $BA
    2 i; x/ V$ h# ]9 g$ C) P: A
  1052. LDA #$21: L- ?& c( V/ H
  1053. STA $BB3 Y+ u1 s3 S* x1 j* @

  1054. 4 l1 f4 W( d  \3 i
  1055. " k- F7 ^! W: x) T/ d
  1056. JSR DN_PPU& S2 V$ H" }# J3 F; v" W: S) D
  1057. JSR SKINGE_WRITE
    0 Z1 g, C$ V- m6 c; ~7 Q
  1058. LDX #$003 ~6 V! O  M: `& @- T" W$ m
  1059. LDA $07A21 ^  R: X( w# r+ V6 l8 r* D
  1060. AND #$02
    + D  k4 ?" n" V+ S$ X! ^/ H7 T! L; q" U
  1061. JSR ON_OFF_PPU' c# d- ?3 N& M% @: F( ~& R4 H- G
  1062. LDX #$004 Q' a2 r1 R' w+ G4 n. v
  1063. LDA #$B1& D$ S' ?  z# `2 H: z' f+ _0 v4 ]# d3 q/ ~
  1064. STA $BA
    ' R  j' E: ~( t% G
  1065. LDA #$21
    7 V, V" w, P# ?5 U, f+ F1 O' F
  1066. STA $BB; s: S  s" T/ Y5 O$ e: |

  1067. 7 I4 W0 n# H8 D! ~' X; N" k

  1068. 4 \$ [! F5 M4 ~
  1069. JSR DN_PPU
    5 S" F5 C: n  O3 d5 h' V2 r
  1070. JSR SKINGE_WRITE
    9 t6 p( l% A5 b! F9 u& A9 \2 _
  1071. LDX #$00
    : I7 x, m1 b0 b0 d# l' F
  1072. LDA $07A3
    6 |! x; w5 A) D8 |3 p
  1073. AND #$026 Y, @7 E( ?1 A! ^/ @3 M! y
  1074. JSR ON_OFF_PPU
    # i( N6 R! x$ r7 N3 h
  1075. RTS
    7 W4 E% I* ~3 }  ]2 v$ j/ b
  1076. 5 ]8 j2 Y' u7 C7 a0 H( Z4 f
  1077. BULMIX_STRING:8 C& X, X& Y- u& i8 p
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80& P$ w+ Y( h  w

  1079. . \7 T3 p. K5 M  f7 G% w: N9 @: r
  1080. BULMIX_WRITE:
    8 p( y/ y. l$ X" E; d5 C
  1081. LDX #$00
    ! l( j$ y1 a* g; F
  1082. BULMIX:
    % q$ N5 J- l* p& ]; d: b' R, \
  1083. JSR PPUADDR_PROCESS! j) E3 @. z5 v8 e( ~
  1084. LDA BULMIX_STRING,X
    & d) s$ a4 B" q* q( d
  1085. STA $2007% r2 \3 y" S! U$ V) O' l8 i6 B
  1086. LDA #$00- T/ u* z# j6 g4 T$ X
  1087. STA $2000) w; r) P% w& v$ r1 i
  1088. INC $BA- W) @, Y3 u: o6 t, l: }
  1089. INX/ Z" B8 ], p* Y% L) J
  1090. CPX #$07
    / G' P# u& G. P) d: [: p$ m
  1091. BCC BULMIX4 S* f* e) B  ]" R$ a1 N6 l- F
  1092. RTS' D4 |3 ]* R9 A, i

  1093. + k9 |$ S# R/ ]- M# j4 q
  1094. BULMIX_PPU:
    ( W* k' Y0 t! v3 j4 S2 d
  1095. LDX #$00
      W# q7 ~3 V3 u0 C& y
  1096. LDA #$E23 p! i! }2 X! G0 E: ^
  1097. STA $BA
    ) g0 e6 I( @4 D4 `4 v% L7 `
  1098. LDA #$21+ T0 g4 \" |3 s
  1099. STA $BB1 ?( l9 I8 c0 e, _: y% }: b

  1100. 4 H# ^. a3 w/ y) ?" x
  1101. 5 ~- x& A! Q* D& k
  1102. JSR LF_PPU
    6 q) n/ _+ k) b  H, b
  1103. JSR BULMIX_WRITE% C) i! z3 D! s4 _: u
  1104. LDX #$00; m; i5 g0 s9 F  c0 H- y
  1105. LDA $07A2' u& k* T  a% O2 P# J
  1106. AND #$042 f  M) s- l/ q8 W  r
  1107. JSR ON_OFF_PPU$ G( r+ G" Q( P! W' ?6 {
  1108. LDX #$00
    % x7 b& X( r; H' n3 b( d1 ~
  1109. LDA #$F1
    7 Z6 X: c6 t( c5 ^
  1110. STA $BA
    1 U' U4 G: a4 F' Q
  1111. LDA #$217 x" [, e! G; y
  1112. STA $BB
    2 I. i4 m0 f7 c, x5 m
  1113. % R: |% b" A4 d. a; O; F- Y

  1114. 4 F$ \# m0 R2 n& V
  1115. JSR LF_PPU/ \9 A5 b  p0 ~" b
  1116. JSR BULMIX_WRITE
    & a- M( [* X$ `% F
  1117. LDX #$002 q/ D. G7 P$ j. H; A: @
  1118. LDA $07A3
    ! c- U& y: a6 @( |
  1119. AND #$04+ \. N6 `: s! M8 ^
  1120. JSR ON_OFF_PPU
    9 O7 @) M; N/ D. H6 n
  1121. RTS. P  s. [9 ~5 v1 l" y3 L7 D7 Q7 z

  1122. ; O2 m3 \, p% `7 Y& u( [
  1123. ENELOC_STRING:
    * n% {, J6 K1 I7 j9 ]- C+ Y: G/ ^8 k
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    3 y& e4 V2 Y, ^4 M  D/ E* f( H

  1125. ) L2 L0 P' [' ?) Z) \, D
  1126. ENELOC_WRITE:
    0 |# _" D4 N/ h) }/ z
  1127. LDX #$001 v- p# x0 O) k
  1128. ENELOC:, F' |. g, `5 w2 I4 R1 i
  1129. JSR PPUADDR_PROCESS, l1 ?2 l- S: W' `3 L  Y
  1130. LDA ENELOC_STRING,X" m7 t' }% S8 b' x8 q( S) }6 x9 X! a* n
  1131. STA $2007" v3 M9 z. H$ D) B
  1132. LDA #$00" k0 A" f0 J  @& T* t' z% A4 j4 o
  1133. STA $2000) I! ]  M0 y4 X  B: n4 \
  1134. INC $BA
    6 v. F0 M( K! k
  1135. INX
    % j* s/ {7 {" B- t1 d
  1136. CPX #$07( i$ b/ r5 \! _8 M! }% G
  1137. BCC ENELOC
    ! v% q, A+ d# I( a
  1138. RTS
    3 ~# x1 {) Y4 z! H9 Z, _6 Y
  1139. ' v1 f, W8 S6 J: q: Y$ M9 o
  1140. ENELOC_PPU:
    $ }. t  q* J% Y9 Y1 Z$ I; }# X7 r3 A
  1141. LDX #$00- Y& T( x( w* u8 `5 c9 Q, [
  1142. LDA #$22: Y$ c9 i) M) Z0 W
  1143. STA $BA
    * ?% H7 p2 Y' M7 S3 _; P9 {& q
  1144. LDA #$228 u9 b3 P# U" U# \, d( u9 s( Y
  1145. STA $BB( _3 M& j# g( t& S. H7 u
  1146. ) p+ B4 {3 X& @6 V- W% R
  1147. # j- d3 }: Q# K- \" n
  1148. JSR RG_PPU
    , `. }3 F: w% ^8 z5 }: P' a
  1149. JSR ENELOC_WRITE
    ) q# w* O* h" ]* p5 O
  1150. LDX #$005 p: d8 C  ]. ^9 t. a0 ^; G) F
  1151. LDA $07A2
    / U; B1 g- y$ L0 R& L3 M
  1152. AND #$08- B) H  y+ H  m/ z7 l4 v# l
  1153. JSR ON_OFF_PPU3 }) F6 O  d/ m* b/ V- E
  1154. LDX #$00- n9 l* L) A+ P9 y$ o
  1155. LDA #$31
    - V( c3 i' F! s; z" t& H  w# ^% E
  1156. STA $BA
    ' E& j4 X( f+ E+ N' f' [
  1157. LDA #$22$ G/ N* b$ f& z: e( g6 ^, W! ]
  1158. STA $BB
    / w$ _1 o+ w, t$ l8 `0 H/ x
  1159. 3 ]/ Y4 p$ o) P( x8 l2 S8 j

  1160. 3 ^9 N* ~5 f' P
  1161. JSR RG_PPU! V0 r- o! m' T
  1162. JSR ENELOC_WRITE
    1 m+ ]% X( V  z0 X' T$ D
  1163. LDX #$00  x- X" ^0 {( ]  R; m
  1164. LDA $07A3
    7 n, l; _: \: p
  1165. AND #$08  [+ w" \$ _( `1 C4 N6 i
  1166. JSR ON_OFF_PPU
    / z7 Y& _/ w" [9 _$ J' X% g
  1167. RTS
    & ?- I0 t2 B" ?$ ^4 Y$ G3 `

  1168. ' W* R( G) e: ^) D
  1169. FOCFUL_STRING:( A8 f) c( }" ]8 b
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80' L7 |; L9 z" V" a

  1171. ; W3 H0 V1 \# b5 `
  1172. ( V! z- c/ e! Y- ]; {# h' X: V, q; A
  1173. FOCFUL_WRITE:
    8 F) |; [4 n6 b$ O+ T8 a$ f& O
  1174. LDX #$00* ~9 w$ W' O+ u9 N' C
  1175. FOCFUL:
    2 Q+ ]" S- O1 q+ p" y7 n/ ~
  1176. JSR PPUADDR_PROCESS1 C1 w! t) q  Q
  1177. LDA FOCFUL_STRING,X  X5 N8 x" ]4 d: \1 z
  1178. STA $2007# l& c( A7 P& _4 a: K' W+ J
  1179. LDA #$00/ a3 N) a8 v  K/ Y
  1180. STA $2000
    9 d5 R1 {) z" L5 Z% ?, x( ^0 g
  1181. INC $BA, `: U( t3 s+ g  C. c' v
  1182. INX
    3 t: W0 |# `- K& ^  t  w
  1183. CPX #$07$ G* [- V6 F* Z( u4 G/ C- r
  1184. BCC FOCFUL, D: j* a/ |+ u! d& p' ?- s4 |
  1185. RTS$ m& T+ U' X& c% \

  1186. 0 S! ?1 O9 w2 i1 D3 U2 R
  1187. FOCFUL_PPU:
    - m! @* [, i4 W/ G% X0 D# \
  1188. LDX #$007 x. M8 V  V$ F* e/ i) V( f$ I% E! i3 B
  1189. LDA #$62
    1 Y$ o. ~, Z/ l4 f8 i
  1190. STA $BA
    8 R' e! D. O# P9 [8 {8 k, C
  1191. LDA #$228 v/ r2 J" C% Q& O
  1192. STA $BB2 a  p# v7 x1 A- W( q% |
  1193. ; ~! w$ ]- `! W* U6 j

  1194. ) C- C  e. e: I
  1195. JSR B_PPU- j0 B3 a9 i) ?0 [7 I, F" m8 \
  1196. JSR FOCFUL_WRITE" ~! K1 G. x% Z& A4 }
  1197. LDX #$00
    8 p6 s( G  v9 p1 }& x) c
  1198. LDA $07A2
    - v- M& E' s1 o: i0 e
  1199. AND #$10
    0 E2 S6 f8 l- Q& P
  1200. JSR ON_OFF_PPU
    ( F+ E: e6 l5 |, g( m2 o
  1201. LDX #$00$ p( W$ y/ t: w5 H, g
  1202. LDA #$71
    5 X+ `( K2 n9 e1 Q
  1203. STA $BA( C: G9 e9 Z/ n- D- P7 `( g
  1204. LDA #$228 \5 _# I% V, j9 ^
  1205. STA $BB+ K3 ?, I$ d5 h
  1206. 1 t: n5 R( a7 s( Q

  1207. - b: c, U) Y' e) s6 a; L' t) j
  1208. JSR B_PPU, j) ^5 U5 v0 g/ y3 A' Q: s2 }
  1209. JSR FOCFUL_WRITE
    ' e- [: r8 e% O/ |: O! V
  1210. LDX #$00; h, i8 O0 I0 K( e$ m
  1211. LDA $07A3
    % M2 M  t) T. F! z
  1212. AND #$10
    , b- h6 d) R* G! Q1 ^4 D1 u
  1213. JSR ON_OFF_PPU, i% V$ R  `7 M, f2 B% D- a
  1214. RTS
    4 [2 A4 i: |4 n" M' p* H

  1215. " r( ?. I. P; p# v" W
  1216. BULCON_STRING:4 C8 j8 }) G  @$ _  ^
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80" a' d& ~( p6 r
  1218. # ]( x" @0 w- I! ]

  1219. 1 ^6 [& u+ Y. ]- u: F4 R- D* S
  1220. BULCON_WRITE:
    9 a6 t" y3 D) Z3 G2 Z* C2 g
  1221. LDX #$00
    0 U# }& q: a8 |+ {6 V
  1222. BULCON:
    ) g' |/ a- C* s2 ~) |
  1223. JSR PPUADDR_PROCESS6 ~( T% m/ `* L$ `5 n/ K
  1224. LDA BULCON_STRING,X( n3 {0 e% H6 c% r* d% l; b
  1225. STA $2007
    . _3 ^* f* r# g
  1226. LDA #$00+ B4 o7 x: a$ y4 j
  1227. STA $2000. D6 m* i  B  q' ?& e9 I
  1228. INC $BA/ k# B% R6 d0 P: @. ?& r1 Y: i5 {
  1229. INX3 a" `& s1 ]! }6 X3 |# o
  1230. CPX #$07
    * O; i+ r9 _. g, d) S' [" p& `
  1231. BCC BULCON4 u( y* O  u( I5 D0 ?6 E* {
  1232. RTS
    " P9 ~8 F% ?0 U* z2 h

  1233. 2 l6 @% n4 Y5 q  X4 G& q
  1234. BULCON_PPU:; x# Z- k; P) I, x# O* v* g$ q
  1235. LDX #$00/ ^8 i2 }! r" h
  1236. LDA #$62
    9 N0 _7 T* d. e+ R
  1237. STA $BA* z& X; d. y' Z( Y
  1238. LDA #$21
    $ B/ F; L- |0 c: F8 ^0 \$ a+ Z' J+ J
  1239. STA $BB
    + [5 o( s$ U, w$ j5 M! W

  1240. & m, D4 @3 v8 b
  1241. ! b0 f5 y& i% B: M
  1242. JSR UP_PPU
    " s2 b" U$ J$ @$ s# i1 ~6 H1 j* ~
  1243. JSR BULCON_WRITE
    $ \2 ~; z. h. J) U* A( y
  1244. LDX #$00
    : h8 O9 Q$ }# L! J3 q5 X
  1245. LDA $07A4% r, x' e, O% f; `; z
  1246. AND #$08
    ) P: @# R5 m1 L; C8 _3 q1 ]4 `% [
  1247. JSR ON_OFF_PPU& [) P  |1 w( `3 w
  1248. LDX #$00
    # {: N9 F  k4 [% t
  1249. LDA #$718 U% M! ?$ R' b1 u* m
  1250. STA $BA
    ) S7 K% h4 C0 _6 S  [& Y
  1251. LDA #$21* D5 c  N& `% D. Q* p6 U& A' N
  1252. STA $BB
    " W- O( C9 N  |% C8 c9 U
  1253. ( R7 _! p( Y5 [+ ?
  1254. 2 q5 A1 k: ~5 f, l7 R% S4 G
  1255. JSR UP_PPU, _* t! \  S7 R
  1256. JSR BULCON_WRITE
    $ r  @3 D" j2 `
  1257. LDX #$009 p+ w  Q+ Y6 @4 w
  1258. LDA $07A5
    + C- l0 L& w# l. A9 [5 a  P
  1259. AND #$08
    0 V: y7 \/ N9 l" F3 s
  1260. JSR ON_OFF_PPU  s* P% g/ X/ J8 G+ d4 c( o
  1261. RTS( [) z* [- d6 T  G
  1262. , a7 b& U/ h) P6 z5 S; u# B" I8 B$ |: |
  1263. SPEBUL_STRING:
    # Q7 p! D. X# T8 A7 \" z' C
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$809 ?' p! B8 J0 Q

  1265. 0 k5 q6 E3 K) X0 F) z8 N7 J
  1266. ; O+ v+ t2 L* }; O/ J
  1267. SPEBUL_WRITE:$ U- X" h6 S# t+ V# l5 X( e; n
  1268. LDX #$00
    * ~0 r* F9 W0 \% e- ]
  1269. SPEBUL:
    2 @; }) l: c) s$ E  M# p. {
  1270. JSR PPUADDR_PROCESS
    9 K: I( l4 c9 M/ c$ ?! x
  1271. LDA SPEBUL_STRING,X
    ! ~. H2 f- G9 \1 k0 n1 Y. |
  1272. STA $2007
    $ t+ D" l* `$ _% B
  1273. LDA #$007 U' l( y+ X) m/ v: d
  1274. STA $2000
    * ?  ?/ N1 x" m' F! Z; D2 e
  1275. INC $BA, G7 P: ]" }: I3 [/ D  S' N
  1276. INX
    0 ?( ~! [7 S3 L( B" |; I. t" f6 W' C
  1277. CPX #$07
    ' B3 D& M4 d1 _1 U% Q
  1278. BCC SPEBUL
    , m. p# l9 a! f& w' L" {
  1279. RTS0 v* e0 p3 b. h- h2 X( ^
  1280. 5 F  U4 P; x  b
  1281. SPEBUL_PPU:
    9 V/ h+ h% [, _! Z  [& y* A1 S3 [
  1282. LDX #$00% `  l  [$ w( Y5 M% b
  1283. LDA #$A2
    4 f/ n# _4 t9 {* }3 Z) V2 F
  1284. STA $BA8 X, t, n; X! F" H' `
  1285. LDA #$21) `9 v7 ?' ]! Y( G$ p; p$ q
  1286. STA $BB
    % v; Y5 @: S* `9 m  @
  1287. + [' O" [7 d0 B
  1288. ' A: j$ A( `- G) p7 V
  1289. JSR DN_PPU- `# B% X9 s# |1 i* G2 A( n; T$ r
  1290. JSR SPEBUL_WRITE
    8 Z3 }1 R7 e3 O
  1291. LDX #$007 x0 _9 i$ n/ x! g- h
  1292. LDA $07A4
    : U1 ]( r; L" }6 \0 X) v: X
  1293. AND #$02! O7 I8 F, x5 y$ o& d5 \
  1294. JSR ON_OFF_PPU
    0 ^2 ^8 M$ c1 l( ^+ ~
  1295. LDX #$00; Z/ O1 |* p. ^+ i
  1296. LDA #$B11 n! I! j! q1 I8 t8 b: l/ Z/ u
  1297. STA $BA% t& W# q0 O. x
  1298. LDA #$21/ u' g, R$ k  }% D
  1299. STA $BB6 W& e! v- e, K1 Y! i. d- Y
  1300. 3 ^' V: l+ s( _% S8 {

  1301. + s2 k! j* G( S  ]
  1302. JSR DN_PPU. H( Q6 K% g3 }' j
  1303. JSR SPEBUL_WRITE& l2 J& D/ n* l) ^
  1304. LDX #$00
    . W. P7 d) M+ ^" [
  1305. LDA $07A5
    2 D& X1 y3 N' ?1 a0 [6 s- I
  1306. AND #$022 f, b. K, x* b! Q* \5 |3 W4 e! K: [
  1307. JSR ON_OFF_PPU% h7 A& {# D! M
  1308. RTS
    " M$ j" K9 D& }1 K8 ]( m* _

  1309. * C: g+ q- L7 H' w9 W7 ?9 {
  1310. .ORG $A500
    ' C0 _* l5 c+ i+ t8 H
  1311. CLEALL_STRING:
    6 d' b( i/ k8 D. Y
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    . p5 {- {9 E' V& f/ f( h
  1313. % G2 B" u6 [0 Q9 v+ C
  1314. 9 N6 Z5 y1 c4 B: r6 G* \7 ?6 X
  1315. CLEALL_WRITE:
    $ {, e* y  M% b0 h- z
  1316. LDX #$00, [0 `; A2 r- n. ~
  1317. CLEALL:0 n4 g) @, P' K' [7 n% a- C  X
  1318. JSR PPUADDR_PROCESS
    / ^. s. Q( W0 ]
  1319. LDA CLEALL_STRING,X0 n6 P6 y( K8 ~* @" e  p& B
  1320. STA $2007
    3 F: D# _% }: V# Z7 U) Z6 @
  1321. LDA #$005 l; i2 ], P3 ?) F7 G
  1322. STA $2000; B$ Y2 j" h3 Y5 `
  1323. INC $BA1 E4 v6 j0 u2 z0 ]4 m; _
  1324. INX
    : A9 n" T* V& @" @; p% g9 W) Q! d
  1325. CPX #$07
    4 R/ M4 [+ e0 z2 m9 K0 a# U
  1326. BCC CLEALL
    % K+ [" s: G9 o+ w
  1327. RTS
    ) M! R, d6 U* U/ o: A1 C6 W; q

  1328. . q; y* m' @. l. F  d1 d
  1329. CLEALL_PPU:5 q4 J0 [& N8 C6 D2 |
  1330. LDX #$00
      o' q7 E$ B6 |# g% {6 Y
  1331. LDA #$E2
    $ _: \- ~9 K5 @% ]! P3 `2 U
  1332. STA $BA& j( l  [8 }6 _# G& P! }' E
  1333. LDA #$21
    8 J6 `# {% p7 d$ l
  1334. STA $BB
    + \1 N+ V  H" n
  1335. 9 e$ ~# Z3 M( k) h. e
  1336. - y) f" N% N4 ?3 Q
  1337. JSR LF_PPU, e" C) Z( `" B9 x: H8 Q
  1338. JSR CLEALL_WRITE
    1 B" T1 w" D' m
  1339. LDX #$00
      _, t2 p- S) S' R
  1340. LDA $07A43 m. a5 x4 R. r: G( b
  1341. AND #$04* e1 }) Q: C6 b
  1342. JSR ON_OFF_PPU
    9 j% h9 e( Z1 g8 O
  1343. LDX #$007 k4 p% q; B* P# S
  1344. LDA #$F1
    " |, R( V( f: @
  1345. STA $BA
    . S: v. E. b. s+ O9 z
  1346. LDA #$212 G2 \3 X) z1 ~: j5 _& a
  1347. STA $BB
    # S3 z1 Y, s7 e; ?0 v6 F
  1348. ) q" k7 g  c4 Z+ |, T& {) B

  1349. + m' I/ w0 e4 N
  1350. JSR LF_PPU1 l6 c+ ~& K$ Y9 y* P: z
  1351. JSR CLEALL_WRITE
    ' ]" i+ h2 M$ u4 J
  1352. LDX #$00
    4 C$ ^9 z; j9 f9 a+ l1 |
  1353. LDA $07A5% [2 O9 J4 x& `, |1 I4 x* m
  1354. AND #$04
    - }7 s( q. ]$ J6 r
  1355. JSR ON_OFF_PPU$ s8 E& c5 A, \
  1356. RTS
    / u* v, ^: L9 B( d& S, y- A. ~9 U
  1357. # l* Z' ]% Z: `/ T8 N4 h" J
  1358. HARDMODE_STRING:& V6 f9 F1 H% j6 n; y  ]
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80: A( O3 O  v# T% {, I

  1360. / q) s6 e# W7 |2 J0 x

  1361. 9 A! W  f0 V  \; ?
  1362. HARDMODE_WRITE:
    / x1 B0 B% `" P6 u' Y
  1363. LDX #$00! @5 g" c0 b" l- d
  1364. HARDMODE:% }: f' u5 e$ G+ Z) L) j( b0 ^
  1365. JSR PPUADDR_PROCESS
    , _! k& b8 D, s2 _- \' ~4 }
  1366. LDA HARDMODE_STRING,X
    ' X$ u. j, a, p4 J" l* U
  1367. STA $20070 S6 C0 [2 S2 w
  1368. LDA #$00% D3 e( s; q, _. l! y+ e- `% [
  1369. STA $2000
    : F# \; P1 b, Y  U2 \
  1370. INC $BA  E, u) j7 y' D5 Q8 R. j
  1371. INX6 [" H+ h: w7 U5 }
  1372. CPX #$07
    1 m4 o. u  P; {+ h' N" z! {
  1373. BCC HARDMODE, {  o) k. S/ }! u
  1374. RTS+ n% M% C  ^% J
  1375. ) R; L6 m! V' R7 ~3 W0 n
  1376. HARDMODE_PPU:" F2 S& ]4 `& {3 B" a! n; P% M
  1377. LDX #$00: v6 k# V; I; T7 m/ C
  1378. LDA #$22
    " K# y8 E5 I0 c$ k6 f6 B
  1379. STA $BA
    . x% G9 h9 @+ O* @3 v2 }: J# [
  1380. LDA #$22, A) X; Q( j9 w
  1381. STA $BB
    ; }1 O* U& J8 i4 G% m& u
  1382. JSR RG_PPU( N! u# F- H7 U) i. E, o$ U
  1383. JSR HARDMODE_WRITE
    * F1 P( w) G# d, Y" V% V" A
  1384. LDX #$00( i+ D0 Z5 H' |
  1385. LDA $07A4
    2 ?+ j# m& c; p
  1386. AND #$01
    8 `( d1 v! t0 D1 v+ N3 H$ r
  1387. JSR ON_OFF_PPU6 B1 m8 p" O1 Q: F+ |
  1388. LDX #$00. T$ P, O# O9 m; Q0 P: `) q% l$ Q
  1389. LDA #$31
    ' Q. k' R" w* u: e7 N; C4 D/ g
  1390. STA $BA
    * {1 U* x/ j* o% d1 i1 D
  1391. LDA #$22
    ; u1 j' }! g9 i, ^
  1392. STA $BB
    % Y- a% _6 m; r$ \, d' S3 O
  1393. 0 u; m9 V0 J" F# w3 w3 n* B/ R' [8 b

  1394. 7 |! v# Y3 f$ `/ X7 m; y  ^
  1395. JSR RG_PPU
    6 N: ]: ~* y6 J1 R, e1 L9 I" a
  1396. JSR HARDMODE_WRITE" x( y. ?' X, w: ^; `* i
  1397. LDX #$00
    2 b: i1 c- d7 h' R
  1398. LDA $07A5
    7 B  {8 y8 \' F! R) t# ]: w
  1399. AND #$01% f3 v* D- X! X" p& X) }
  1400. JSR ON_OFF_PPU7 ?/ K/ b$ h+ r" A# G; e( Z
  1401. RTS2 m. G0 x  P- a: D( ?

  1402. ; V8 j) w4 ~6 B5 D* a* J6 [
  1403. B_TO_JMPSTG_STRING:6 w* I3 b, ?+ n, ^  o! ]8 N- n0 S: ?
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    * _9 C# n- j7 U7 M, j
  1405. . f' `/ x5 B  P3 S' a. L
  1406. % L7 S" b3 [/ E  ~$ U
  1407. B_TO_JMPSTG_WRITE:9 b4 m/ }# B, G% Q) j. T+ H
  1408. LDX #$00' L# {- a4 G$ W" h' |
  1409. B_TO_JMPSTG:
    " _. U, @' R  P7 G/ D3 l7 }
  1410. JSR PPUADDR_PROCESS
    2 X+ S4 s0 J3 O+ p2 P& b
  1411. LDA B_TO_JMPSTG_STRING,X
    ' y6 \" |( r+ u5 d2 k
  1412. STA $2007! O7 D  Q6 {0 B$ [. B
  1413. LDA #$000 g1 T1 ]0 j& g$ n9 ?
  1414. STA $2000
    $ S! ~- S9 F+ Y4 g
  1415. INC $BA1 }$ [! `: e2 C! j
  1416. INX+ |2 {* B) I$ t, r
  1417. CPX #$0D& U( o3 M( I, m: A* }
  1418. BCC B_TO_JMPSTG, C  _# k( c, |2 ^0 C, D4 O3 X
  1419. LDX #$00  c$ a( z6 J3 u" x
  1420. LDA $7FE07 ^# W( k2 _1 T3 N
  1421. JSR ON_OFF_PPU7 N! ^7 O& I3 X1 T
  1422. RTS% l" T& {% X' r4 J: S2 \
  1423. ( B7 V6 ^# U. B( {2 r7 [
  1424. B_TO_JMPSTG_PPU:! [) g2 ~& s" _- e0 R* v8 w
  1425. LDX #$00
    ' M, Q# m3 w2 `5 Z5 p* E( E
  1426. LDA #$68
    5 w% b6 q& O" E# i( v- k% J! r, M
  1427. STA $BA4 S1 P' |% t8 h; b( z  h# J
  1428. LDA #$22+ @1 A1 T* X2 F$ F: a6 M) @
  1429. STA $BB$ Q7 t4 S" v* y
  1430. JSR B_TO_JMPSTG_WRITE
    & N/ n* ?  V) b1 S* a
  1431. RTS
    # O' V! Z8 P) q
  1432. 9 h) @" Z' |; d- ]
  1433. ) l5 Y" w  d( @3 F' a( Y
  1434. A_TO_PLAMOD_STRING:
    - a; f# E, V; F: ]( N1 x4 E7 B
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$809 z! ~7 k6 `. X3 t3 K

  1436. 8 Q& J/ K+ m0 L; V# A

  1437. 3 p* R8 P' Q  Y! K' y7 g
  1438. A_TO_PLAMOD_WRITE:
    # B7 q& E. n6 d$ F9 B5 a
  1439. LDX #$00$ N2 ^  I& U% h& s( J
  1440. A_TO_PLAMOD:
    6 H! F+ V" k5 r5 o% G2 E8 q
  1441. JSR PPUADDR_PROCESS) {- H0 U- ^% c7 f6 L% }
  1442. LDA A_TO_PLAMOD_STRING,X
    # V4 z& g9 @, V: x; c' F6 p
  1443. STA $2007# K1 G, I3 ~# x4 T
  1444. LDA #$00" ?' s8 v: H0 d9 `- G; t* h; ]
  1445. STA $2000
    8 L  |; k5 Y! e
  1446. INC $BA9 R& X8 c2 O5 u, h: `" h  _5 d# w" k
  1447. INX6 X9 Y; f- S# A1 y$ g- v9 u8 m
  1448. CPX #$0D0 U, `2 u6 n- N3 x
  1449. BCC A_TO_PLAMOD9 |, [& l4 C3 t9 {7 |
  1450. LDX #$00
    & D% W9 P) T, e6 `
  1451. LDA $39" ]. ^9 Y4 L2 O+ z; a4 J' m
  1452. JSR ONE_TWO_PPU; `: \* ^6 d- \% I# I
  1453. RTS
    1 R1 v, k3 v9 M0 D; d
  1454. / D( L7 T/ ]/ v% g
  1455. A_TO_PLAMOD_PPU:+ k1 i$ m: X2 _! ]
  1456. LDX #$00
    * \3 A1 U. |4 F9 }& c+ r' Z6 L
  1457. LDA #$A8
    ' b, _4 ]( E" X9 E  q
  1458. STA $BA
    - o1 {: r5 ^7 J- B
  1459. LDA #$22
    " o$ \$ S2 h+ P% {
  1460. STA $BB
    3 J7 C1 ?* [  e
  1461. JSR A_TO_PLAMOD_WRITE! S" o  ]8 \, g( x, Q& R' K
  1462. RTS5 Q+ v0 C3 k. x% _: W
  1463. 0 t' Q* @4 \8 X, l5 X+ R
  1464. MOVSPE_STRING:0 D( C7 [7 D# R6 g
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80/ u4 d/ _  H2 K6 j
  1466. 2 u) J) E: {& D& {, W* l
  1467. - P& J1 c* ?. F; a" \% a* b9 ]: n
  1468. MOVSPE_WRITE:+ N4 n$ B/ k5 u0 ~' w, f) R  x+ ^
  1469. LDX #$00
      u& l, h0 Q' U7 M3 m! a3 G' x
  1470. MOVSPE:
    6 m  e. }# x& }- I
  1471. JSR PPUADDR_PROCESS
    8 c0 @! C# ]6 n5 s4 D* H
  1472. LDA MOVSPE_STRING,X
    9 S3 E& |9 W: S" }, X- i: R
  1473. STA $2007
    7 V0 L6 \9 J* P9 N
  1474. LDA #$00
    * ]) z! i0 N2 v2 Y# V
  1475. STA $2000  k: \3 p: e% P3 y3 H! F
  1476. INC $BA
    0 q) `% ^1 @# B1 O$ R
  1477. INX* C) O4 L: o+ Y5 Q/ f9 F* N
  1478. CPX #$07: ^# o4 D& ?& ?3 G+ U
  1479. BCC MOVSPE) o- p- O( C/ d+ n+ V1 F# E5 l
  1480. RTS4 k% T: @2 D# l, S! \! b4 @, X

  1481. 7 N. @# D4 Q5 D$ ?& p! G
  1482. MOVSPE_PPU:4 N  L6 @1 N* A# l8 h
  1483. LDX #$00) k: h7 w/ ^% z5 J9 _; T$ G
  1484. LDA #$69
    % D8 B5 h9 v# X" R+ d
  1485. STA $BA
    + B/ V; _/ R* L3 s; k5 c9 Q  h2 s5 `
  1486. LDA #$214 f# V; [0 c7 t6 Y/ H- r; @, |8 ?
  1487. STA $BB
    + `0 e, @  \* e  D
  1488. " D$ W$ `" s; l  l6 h2 b
  1489. ; K) c2 o4 m# s+ @6 u
  1490. JSR UP_PPU) Z) e5 r# y( ~. Y4 q' H* j8 U1 @
  1491. JSR MOVSPE_WRITE
    - k! g, n2 w6 U
  1492. LDX #$00
    3 e: ~* T- ~  a* F/ R
  1493. LDA $079F9 x) C; d. c, B! ^" k( q2 x+ X  Y7 F
  1494. AND #$08
    # d  Z% ]2 ?; @" D
  1495. JSR ON_OFF_PPU0 |( V+ _" K. x
  1496. LDA #$80+ P( D' z! a6 s! a  ]2 |2 \
  1497. STA $2007: i4 Y% L$ @7 S% _
  1498. RTS
    0 Y. ~: h$ i3 }8 R- W7 o9 }

  1499. ) v- W7 z2 {, _' {1 f
  1500.   ; @6 B5 D7 C9 k2 x, G0 O* n
  1501. UNLJMP_STRING:
    6 A! l2 m6 g0 w, H1 U" _
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80
    ; R* H0 u$ E! J! j

  1503. 0 A" x/ X3 A. k7 s

  1504. 3 ~: i, v$ G9 K0 X
  1505. UNLJMP_WRITE:; p8 }! n; Y6 _$ U
  1506. LDX #$00
    1 v1 `9 E5 F* q" `
  1507. UNLJMP:
    ; _( D! ~+ @  W0 Z; N5 B, l% g
  1508. JSR PPUADDR_PROCESS9 `2 ]6 j  e8 ~7 i) E
  1509. LDA UNLJMP_STRING,X5 L! d/ b- W$ o9 n! {' c) s! }
  1510. STA $2007
    6 T! B8 Q& p# v% l$ K
  1511. LDA #$00( j. F6 {* D. e( d
  1512. STA $2000
    / R9 |& w& x- c% o, G7 T2 A
  1513. INC $BA
    2 k  P) z6 L1 p" H" F7 \
  1514. INX
    ! p% Y: Z2 w) t% B# O) h5 F2 u
  1515. CPX #$07" W, ?9 U2 R! Y' K4 x8 }. c$ e2 Q
  1516. BCC UNLJMP0 n2 S& v% U" D7 Z( T3 o
  1517. RTS( L3 ?, ]) o; m! j4 r3 |

  1518. " z) J% {8 C  s# P6 _
  1519. UNLJMP_PPU:  Q5 N) j, @& i; q
  1520. LDX #$00. a1 G  U4 f! T9 v) n1 n7 a3 z! k: E
  1521. LDA #$A9. t7 o3 q) a7 _8 j" ]' w2 t2 n4 R
  1522. STA $BA
    ( Z) N- V4 |/ V& ]
  1523. LDA #$21  i( e% S+ @+ X, C1 l
  1524. STA $BB
    ) O0 h% A, P: j& t8 \6 k' S* P

  1525.   [( @* u$ |8 }* U" s* k% v
  1526. 0 D3 O3 P7 ?5 X8 m- L7 X
  1527. JSR DN_PPU; \0 ~. k2 `9 O, n
  1528. JSR UNLJMP_WRITE
    / J9 ]* g* y! F
  1529. LDX #$00
    " w8 h; E2 l6 I4 A. J  t* F
  1530. LDA $079F+ q. g; V# X' f( \6 J5 a. J( ]% V! u
  1531. AND #$04
    " Z2 o% L+ V3 @2 w- w
  1532. JSR ON_OFF_PPU0 w# n7 ?* v$ ~/ P
  1533. RTS+ S  M3 ?; x$ J' f, z) ~; J: O

  1534. " w2 h$ ?; G8 R2 Y( v8 S2 B3 n5 j

  1535. ' v, V  F, V& w
  1536. DESTRO_STRING:7 G# N. `6 d3 w
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    0 W) p9 I# G% ~; q( P( g
  1538. # Q& L' ?; J, l0 d7 \
  1539. - h: C; |, i- t9 k& x; u
  1540. DESTRO_WRITE:
    # P) Y/ |1 p6 ?4 q' x% p
  1541. LDX #$000 P. ]% G% @+ R& g! A# m+ H7 P! U' H
  1542. DESTRO:
    5 Y/ F# ?+ x! K# f  n
  1543. JSR PPUADDR_PROCESS, J) V; O- @9 L4 q
  1544. LDA DESTRO_STRING,X6 g$ R: @' B9 i7 r2 P. T
  1545. STA $2007/ L: v- C# a) c
  1546. LDA #$00
    & u+ L2 U9 Y1 A" n2 x
  1547. STA $2000
    : a  l* z# g8 u. ]2 {$ }
  1548. INC $BA: U5 S& ^% ]2 V* l. A6 s
  1549. INX
    1 t5 N% z: U7 p/ ?- \0 g
  1550. CPX #$07
    ; b: U6 b. N$ `& o2 L1 ~2 c/ y
  1551. BCC DESTRO
    * S2 \% K1 z  f9 O# _  ]1 k" e
  1552. RTS& q! P% ]$ n2 S% F9 L* j" x, @

  1553. 1 X" U: Z! W; [
  1554. DESTRO_PPU:
    7 o7 r% U$ L1 X0 X+ t/ }
  1555. LDX #$00
    5 ]& |& b$ F4 ~. @: n
  1556. LDA #$E9
    6 S* l$ e, F  X" p! R$ J6 e( _- |- z' t
  1557. STA $BA0 b  n% j  J4 L' q' J+ D2 g
  1558. LDA #$21
    + k. ]0 O& p! I
  1559. STA $BB0 P, }5 Z0 b+ f5 |# J' u* t

  1560. / }9 }6 A( w8 z% u4 u1 q

  1561. ) q; J9 w2 I: W8 L  w
  1562. JSR B_PPU
    ! `1 W6 J- `. R/ \
  1563. JSR DESTRO_WRITE
    $ J, P1 D& f: M9 ?
  1564. LDX #$00
    % d9 ]/ {( |2 x1 L
  1565. LDA $079F
    % f3 S' A4 K1 r( a% t* d
  1566. AND #$40; B% b' `# \  c6 C, e8 R1 H4 U
  1567. JSR ON_OFF_PPU
    ; r) n( z( H. \7 F' E' z
  1568. RTS' A- l/ E8 b3 b0 q9 f

  1569. . w& G5 J! L/ r$ M+ \9 o4 x' l

  1570. 1 g! K  Q- N% t  Y: I# y( D
  1571. EQUBUL_STRING:2 q) D6 n: D; ^1 W5 X
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    8 r$ G# S4 H9 O, e- k4 Y) q

  1573. / n$ i; y& A$ \& q
  1574. + p% c" f! Q8 Y, R% L0 H8 t6 ]
  1575. EQUBUL_WRITE:
    * h& |5 B  o8 D5 D7 W1 f; D# Q
  1576. LDX #$00' j! v2 ]1 O" F& k. G) V3 A$ v
  1577. EQUBUL:( J9 j7 P% Z* v% D
  1578. JSR PPUADDR_PROCESS$ \0 i5 n2 o' u! T6 U8 S& u8 ]# K
  1579. LDA EQUBUL_STRING,X
    + F) v# x+ i; |9 P+ T
  1580. STA $2007& U8 u6 v4 G9 {% q6 ]* g: ~
  1581. LDA #$00! [- u( d' \4 K+ R$ u( _$ ]$ s* G
  1582. STA $2000
    % F! k' O# {/ a2 a0 o+ r
  1583. INC $BA+ v1 ]  w. V2 R" p/ A, \4 T
  1584. INX
    / `, C# c) Y- A9 ]( U
  1585. CPX #$07
    " _: [5 t# f# G
  1586. BCC EQUBUL
    2 F! U" ?8 v" O' ~0 X% V
  1587. RTS
    & ^+ S6 i# @+ j! P0 _
  1588. 0 ~+ n8 ]& N3 F+ f5 p
  1589. EQUBUL_PPU:9 v3 |4 a7 g* E/ z% x
  1590. LDX #$00  m! V2 l" m  m. [# o" r
  1591. LDA #$29
    5 a; d& k* O$ H
  1592. STA $BA
    0 q8 {* D8 N& \4 O- G
  1593. LDA #$22
    / O& a0 q: F5 \4 Y4 v
  1594. STA $BB
    6 v7 j' u$ a% ]0 U# C* D( I

  1595. 9 @5 v& q9 d4 g5 _$ [5 H

  1596. ' C6 q6 ~8 @& \
  1597. JSR A_PPU) J) D$ ^3 Q5 r5 L, N7 ~; a9 }$ O
  1598. JSR EQUBUL_WRITE
    ) R* n5 A4 Q& f- s* T, D
  1599. LDX #$00
    & R( e* _; H; J  n7 `# ~: L
  1600. LDA $079F# a5 a4 e% o# f
  1601. AND #$80* q% l  N) l  C* {" }4 t
  1602. JSR ON_OFF_PPU
    ' Z& E# [& j- G
  1603. RTS  O6 s/ G/ ]! |4 R# @

  1604. / P& C1 I* E0 q4 I* H+ l  i1 G

  1605. ) I# p$ r# q$ ~0 U/ y
  1606. 4 f! ^9 ]" V: k* M0 B
  1607. BULSEL_UP_STRING:
    6 n) P$ y" V) a
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80- J0 A/ a0 b$ D( }1 C3 d0 K# [9 S
  1609. , a" e7 O2 P6 o6 s1 H  h
  1610. BULSEL_DN_STRING:
    $ u6 b% d1 V2 E8 x
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80, c* Z. N0 L  t+ Q  B; R

  1612.   R! R% C2 m* S
  1613. BULSEL_LF_STRING:  w* ?) U0 q( ]  N; Z
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80
    - P( A2 J% [% n: s! ^/ w1 F
  1615. 8 h: X" p4 L1 g/ u! {
  1616. BULSEL_RG_STRING:4 _4 Q" v9 C6 ^& v
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$801 _, ~/ ?! q' m: M$ k" z
  1618. ; U' T0 M6 T9 q  J! W5 L# l( q* Y
  1619. BULSEL_B_STRING:
    % b6 f8 g9 K% V" f) J& M- A
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80* r) a# }. \& H! c9 ?$ T
  1621. 9 I/ R- G4 R% W2 y6 Z" J
  1622. BULSEL_A_STRING:4 d( k5 o2 C6 a% j: }# L! ]5 D
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E6 o: z6 H" \3 ?, r9 f9 J9 n

  1624. & T, _, x% x+ `$ ^
  1625. ) e1 K' S) q& @! Q; N" G0 A3 g
  1626. BULSEL_UP_WRITE:+ ?2 {# A3 W( P6 Z0 N9 e
  1627. LDX #$00' O: |" Y) |  d. X" z/ Q
  1628. BULSEL_UP:
    2 E" R$ B" I  q: k; \2 {" p' G
  1629. JSR PPUADDR_PROCESS. T4 e+ S0 {9 m+ y% O
  1630. LDA BULSEL_UP_STRING,X, Q' T5 w. T# ?  V0 I3 L5 z( x
  1631. STA $2007
    ( P1 q) f% Q( _
  1632. LDA #$00, A. v8 m+ e0 ]8 g+ L8 k( i! q
  1633. STA $2000( T7 o' D0 X% v) h0 M4 E
  1634. INC $BA( K( _1 {6 x: |6 L2 D7 ^+ \
  1635. INX
    , }* U* G/ `2 z, z
  1636. CPX #$09
    & G* Z4 b  u4 U2 }; r
  1637. BCC BULSEL_UP4 ~  m' x6 [* t
  1638. RTS
    3 S" L8 T# A* M4 Z. S& ~7 c7 A3 C
  1639. BULSEL_DN_WRITE:, a: g' a1 H: w+ a
  1640. LDX #$00
    ( G3 K( J* m/ a' [8 ~
  1641. BULSEL_DN:
    9 i+ A; N! |. H& N% @: K1 ?
  1642. JSR PPUADDR_PROCESS2 X) @# U* d* O! m# P
  1643. LDA BULSEL_DN_STRING,X
    + `% Z; Y! Y$ n* y& N
  1644. STA $2007
      Y, Q% n5 N! q: E
  1645. LDA #$00. ?1 X; a9 x. h- v- y
  1646. STA $2000& K" q! k# K% f- e- U: d
  1647. INC $BA( l% N" A$ p  q7 u
  1648. INX4 d, W% Y; a' M7 Z/ ]1 s! E# M; K6 p
  1649. CPX #$09" u: E% B) ?* d7 v6 O
  1650. BCC BULSEL_DN/ P5 {% h+ E( y
  1651. RTS% ~& ^& U# {1 V
  1652. BULSEL_LF_WRITE:
    0 u5 @7 J) }4 Y5 g
  1653. LDX #$00
    0 o3 W. `2 j4 \, ]
  1654. BULSEL_LF:1 f1 A- v2 J) x) f4 E' Z: D
  1655. JSR PPUADDR_PROCESS
    ( R2 ^$ s+ S) M) f* H
  1656. LDA BULSEL_LF_STRING,X' H+ ?: K$ j# B5 f* N9 q
  1657. STA $2007
    / S+ V% d8 N+ S0 J; P$ r. G
  1658. LDA #$00' T3 L' S* E: W
  1659. STA $2000. M, H! _! c* [+ z- @7 _" |
  1660. INC $BA4 x+ Q+ W8 n/ _5 z8 h
  1661. INX; r8 h) J, ^3 I9 u  S
  1662. CPX #$09
    7 e0 m: I9 g2 O4 q2 b) I' S
  1663. BCC BULSEL_LF- G2 h$ v  o( k$ n" [
  1664. RTS
    % g2 w/ Q  ^: d0 p5 W
  1665. BULSEL_RG_WRITE:
    ) |2 L/ B. x6 l( _% u& O
  1666. LDX #$00" N, T* O6 ~/ c
  1667. BULSEL_RG:
    / l+ R" L* _8 R$ _3 R8 m
  1668. JSR PPUADDR_PROCESS1 l1 A( x2 [4 s( _
  1669. LDA BULSEL_RG_STRING,X
    # n/ @; W$ y4 N" V
  1670. STA $2007' U0 U8 r& f! V- v7 J  o
  1671. LDA #$00
    " x! [- N4 a' \4 G
  1672. STA $2000, H% q; `1 U5 `# R5 F9 u
  1673. INC $BA$ \% ~) w) c. S" C. c. J$ m2 A
  1674. INX* ]# m( u8 F- ]1 p
  1675. CPX #$09; M) H4 g: d; v
  1676. BCC BULSEL_RG
    , T' S7 E5 ~) V) r; ~( s
  1677. RTS9 F1 o1 B! E8 L( r
  1678. BULSEL_B_WRITE:! a. q3 f3 K; P, r: C4 ]: N- R' |4 m& C
  1679. LDX #$006 C. O: @9 {; E/ `9 l5 C9 R& k7 C; Y
  1680. BULSEL_B:4 }9 I; }6 B. m, l' V
  1681. JSR PPUADDR_PROCESS
    $ ?  S) W' j# Q! K. M
  1682. LDA BULSEL_B_STRING,X
    . P7 C$ S: w( P& d) t
  1683. STA $20078 x8 }2 h/ H- K: \
  1684. LDA #$00
    . F: h# F! {+ e( L  e; A
  1685. STA $2000
    + h5 l2 J5 C2 ^) J8 }! ?/ y! c5 s
  1686. INC $BA
    % R3 `! ]. |' a7 i1 w' F
  1687. INX
    . l8 I/ G/ W! b2 |" @, C6 J
  1688. CPX #$09: w  f$ F4 j, e6 d
  1689. BCC BULSEL_B4 N  K, ]! g2 V9 K! H& N
  1690. RTS
    9 w/ ]7 h, _1 D1 a- u. T) I: R
  1691. BULSEL_A_WRITE:5 O, b: t  E& \3 l
  1692. LDX #$00
    + d, x1 f' k$ Y6 f  z9 k  l
  1693. BULSEL_A:5 p0 o- P) b% A8 D
  1694. JSR PPUADDR_PROCESS4 i: Q4 ?, W/ c3 _8 K3 E
  1695. LDA BULSEL_A_STRING,X, ]% |  c' ]5 T( o
  1696. STA $2007* E& t( j! d. E2 X5 k/ d% t! d6 l
  1697. LDA #$00
    8 b6 O. @  Y2 q7 K2 S) o
  1698. STA $2000: \# ^9 n$ x/ a- G$ F
  1699. INC $BA& U: }* y' j- N
  1700. INX
    * u. w. ~+ b3 z2 l
  1701. CPX #$12
    6 p' {$ v) _& e3 X- U0 G
  1702. BCC BULSEL_A- p1 n- {4 v7 \3 x6 t) B7 d8 j
  1703. RTS
    5 \: o1 r1 V( ?, G* }7 D  j
  1704. & L, d& X/ H# e( k! `: w$ E9 j3 G" Y

  1705. & L2 U; U, B+ P8 ^4 i
  1706. ( u0 s) M- P3 c2 Z9 u: R
  1707. BULSEL_PPU:& @% F" U# ?. z6 b* W  P
  1708. LDA #$6C, _0 {+ N- h" h1 A
  1709. STA $BA& i8 v% D- z' T) f# f/ q; j( C5 n
  1710. LDA #$218 V/ E* h- ?8 e2 y4 t+ v
  1711. STA $BB
    & }. |: n, a5 D0 v
  1712. JSR BULSEL_UP_WRITE
    7 i/ g/ [; Z0 L/ W% ?! |3 l; d

  1713. 7 @2 }' u4 P6 M2 r
  1714. LDA #$AC
    7 ?# n# S1 y4 T: g5 O$ k: h
  1715. STA $BA4 y% |) u% F3 T4 t' X1 ^
  1716. LDA #$21; g. ^+ P% e  G) Y& N
  1717. STA $BB
    % @2 d/ B& P$ N& C5 J" i! [
  1718. JSR BULSEL_DN_WRITE) l1 J) ]$ G; p% x! ?
  1719. 5 n/ i' N. I. T7 Q- S! N# @
  1720. LDA #$EC! u0 o/ s" l6 h: M" o' j6 n: r
  1721. STA $BA- L- L5 x) i' t7 d, H2 H
  1722. LDA #$21
    " V+ ?( b, s  A9 n
  1723. STA $BB
    % X& }0 w5 r5 [; Z: |) Q/ I/ _
  1724. JSR BULSEL_LF_WRITE( A7 O: |$ }. H: y
  1725. ; I* C) j; ~6 o( w
  1726. LDA #$2C
    ! l1 p* e. a* v9 h9 u
  1727. STA $BA
    + a# j' E4 y  w
  1728. LDA #$22
    . Q% w' \2 M7 F
  1729. STA $BB
    5 W! k! Y: @7 l9 [1 X5 S
  1730. JSR BULSEL_RG_WRITE/ b1 R" V! c3 D8 M* i" X% s

  1731. " ]% X, D# m; S" c0 S
  1732. LDA #$6C
    9 L* A$ }) w/ }8 ?, M+ K. t
  1733. STA $BA
    2 k. l9 e& |. m( M( q
  1734. LDA #$229 B; ~7 c3 }; [: L1 r* y7 Y2 f8 b$ D% p
  1735. STA $BB4 m- `3 r2 d; m" q0 E) _% x3 n
  1736. JSR BULSEL_B_WRITE
    ; p) q* q+ @4 i9 [6 i
  1737. % M  I4 g8 F* u* |1 \0 Q  e& g
  1738. LDA #$A7& Q5 ?! P* t- B4 f
  1739. STA $BA! v4 a& z+ G# d) U
  1740. LDA #$229 D( t3 M3 y" R: V$ O: R
  1741. STA $BB
    ) _0 o; K. D* Y7 h6 @
  1742. JSR BULSEL_A_WRITE
    4 T) z0 q6 A0 m  S3 Z
  1743. RTS( z, u, Z4 {8 F; @9 B3 ~

  1744. / L) }% G# \, m

  1745. 1 Q8 Y8 U) {. j$ F8 l9 G, h4 v

  1746. $ Y# _2 F( _& i) g! e+ H2 N
  1747. UP_STRING:
    + N5 b- T) g4 q. G1 P
  1748. .BYTE $9F,$9A,$80
    + K% ]  L  c1 k3 s% w7 T5 _  I
  1749. ! }5 ?' m( z# y6 \* o4 R, [; ~
  1750. DN_STRING:7 _8 [0 G) Y5 a- N5 o' H" ~
  1751. .BYTE $8E,$98,$800 @: M, U# o5 M+ a7 y: M' o
  1752. ' o* g6 ]* H" e. l# p
  1753. LF_STRING:
    0 u! Z+ ?. F0 ]) H5 a
  1754. .BYTE $96,$90,$80
    . t& W  a9 n5 i0 _7 ~
  1755. 8 y& o. G& f  v/ w# N' |* u
  1756. RG_STRING:! U4 R6 C! O9 {# Q, |6 n& l
  1757. .BYTE $9C,$91,$80
    . v$ Q, p, w$ ]4 b
  1758. - S8 [4 C& e" R0 z2 ~
  1759. B_STRING:
    , W9 R2 S3 M0 V5 m
  1760. .BYTE $80,$8C,$80$ ?: E2 ~1 a) y# \

  1761. & A2 H5 @. i( k* V; E& C1 C" H
  1762. A_STRING:8 u- W( K( e1 o1 A6 t
  1763. .BYTE $80,$8B,$80+ y- E0 y5 M/ I+ G& m& `0 y

  1764. 5 p* Q' r- S# r; M9 V8 u* j6 u# Y
  1765. 8 Z& i) H( Q7 a* g
  1766. UP_WRITE:
      o0 L+ c0 n8 l( V
  1767. LDX #$00
    8 ]' U# g+ a1 v  b# [; t5 y- `
  1768. UP:$ L% E3 b. {8 e, k! ~4 q: D% l
  1769. JSR PPUADDR_PROCESS
    - {2 Q" M  ^, X5 p7 D5 ]
  1770. LDA UP_STRING,X" T& R: H$ K. A: w* t( U  x
  1771. STA $2007: c, Z5 v& ]; v
  1772. LDA #$00
    ! F/ ~: H. r# w4 e: L8 M7 l
  1773. STA $20002 l2 b1 f' z' h6 q; M
  1774. INC $BA
    4 \8 O& q  [/ o: G: a9 L7 J* r# d
  1775. INX! x0 S1 ?6 i, k) r8 _( s
  1776. CPX #$033 a: s. Z  t1 S# I/ X! S$ j
  1777. BCC UP
    5 y' Y) b4 [+ [5 C* t5 v4 u' V. b
  1778. RTS9 ]* v( @. Z( `1 I/ C

  1779. 2 x1 g$ F8 \! R3 t6 E1 p! H
  1780. DN_WRITE:! V3 z; Z( j9 L% ?! C
  1781. LDX #$00
    : M% q5 e. ?" C$ f) S6 g2 R  n" e
  1782. DN:& h9 g) J5 C; j, i! t
  1783. JSR PPUADDR_PROCESS
    7 o5 ^8 m: K/ V0 `- @! j# Q' N
  1784. LDA DN_STRING,X
    7 y$ X$ I' v+ S9 X  J
  1785. STA $2007
    % i( ~% E: b! P4 [6 }2 V. S+ T
  1786. LDA #$008 P7 n  L0 U2 S1 i" z
  1787. STA $2000
    ( Z9 ~  t' N0 l, v3 z/ m
  1788. INC $BA2 E, u; F( S' r. M6 O+ s: `
  1789. INX
    2 ]/ [: r' _# J" w4 i% J
  1790. CPX #$03
      a. y' Z$ @0 z4 H! M* m" [
  1791. BCC DN
    ) }' P1 @' P% H* W" r7 R2 E! [
  1792. RTS# E/ D( T& }( ]$ w

  1793. 2 u5 b" r1 k; J$ X' b+ I9 N6 }% R3 o3 v
  1794. LF_WRITE:7 E0 `/ E1 y. [! Y! c
  1795. LDX #$009 I, i% C4 E- D! i9 P
  1796. LF:
    & n. E3 R4 J7 z2 R; W3 K
  1797. JSR PPUADDR_PROCESS1 ~! k$ G8 E: a% G$ [6 @5 c
  1798. LDA LF_STRING,X
    8 A5 Y% f! `0 t' \
  1799. STA $2007
    + v3 Y6 x2 C1 C& O
  1800. LDA #$00# Y) Z# Y: u4 w, q$ x9 f1 `8 h
  1801. STA $20004 b$ O3 o* r1 C( M: P* M8 p4 Y
  1802. INC $BA
      P3 h8 c4 b. M( C
  1803. INX
    ! t$ S7 v5 p* {- u- Q8 u' o. x& E% n
  1804. CPX #$037 X3 T. V9 R% c
  1805. BCC LF
    ' ~- r) `3 c9 u" J, S
  1806. RTS
    ) i' n8 t4 X+ l1 V
  1807. 2 D1 P0 I1 @7 X, C7 T$ M
  1808. RG_WRITE:
    + J) T7 S- I6 C/ N; t
  1809. LDX #$00. P! N( m& w8 |1 `* C# t
  1810. RG:$ p4 P: H3 j/ [: L- v: Z9 ^9 A
  1811. JSR PPUADDR_PROCESS) @* F1 x6 J) O( \
  1812. LDA RG_STRING,X- D4 ~' n8 ?/ m& h7 @
  1813. STA $2007
    0 c! m$ X' ^* R0 P; h5 \  M* j- G
  1814. LDA #$00
    2 c' a# z8 i, m
  1815. STA $2000
    1 K# {* @: c" h8 x+ {* @/ K4 o
  1816. INC $BA
    3 s1 J: V: o' M5 m7 ~
  1817. INX
    & _5 Y$ g6 {' t. ^- T- q
  1818. CPX #$03& I) r4 u+ G7 \- G, t( [: {+ j" m
  1819. BCC RG1 ^/ r, D5 d2 u4 {' k  D$ a
  1820. RTS5 k" b" \$ b% I8 [* o: R, G6 y( p
  1821. 7 W% [1 b5 M$ B0 \, w9 T  V( P
  1822. B_WRITE:4 F( f, u' I! j" v2 \, [: i0 g$ k
  1823. LDX #$00/ I# V' t0 j0 E& b* }- `
  1824. B:% s) ?+ h; G, ~, {% K
  1825. JSR PPUADDR_PROCESS% s" ]" T: a7 U8 L
  1826. LDA B_STRING,X
    : L6 B) Z( o' [6 `. U
  1827. STA $20078 a+ Q9 V4 k1 P& N1 H  i5 c5 I
  1828. LDA #$00
    3 L) y# v- Q0 Y  }) T- A7 c
  1829. STA $2000
    $ H* m4 |, Z) W7 Z- q) T' C% }
  1830. INC $BA) D# ~" I  }, @  Y
  1831. INX
    " f) f, _+ P. {$ n1 }' {
  1832. CPX #$03' y. g, `. {1 H- ?) p
  1833. BCC B' f8 S/ B; J; i/ s2 y2 o" ^9 I
  1834. RTS6 z; ]+ M7 p) B- u6 B+ _

  1835. % d# m. O" K1 z
  1836. A_WRITE:; |. o) D7 {+ X' I4 T7 ?4 E% g
  1837. LDX #$00
    ' K# C) v# M, w' g  C- L! T) J; X
  1838. A:
    1 E, C! A1 y( K
  1839. JSR PPUADDR_PROCESS
    $ M0 V1 y" q& _+ b7 i& R. G( a0 j4 X
  1840. LDA A_STRING,X/ |4 q# l7 d" |3 B5 z
  1841. STA $2007, _% d6 H1 y1 G: y- N+ q7 @
  1842. LDA #$006 J- f3 @; f: [) E: e  G& l
  1843. STA $2000  H" H6 E6 v+ i; V; l' M
  1844. INC $BA
    - f' q' y  p3 ]0 N& g9 o+ Z3 }9 d
  1845. INX
    1 [* }, ]; q( z+ B# P1 c7 n- `
  1846. CPX #$03
    : q* O8 U$ q, ?" L, H' X# i( o
  1847. BCC A+ x, C$ A- |: i7 }; ?
  1848. RTS3 X. A; A; K, s

  1849. / b# x' i4 y$ z" M7 |3 L9 p

  1850.   I( S0 r" Q; H# u7 l$ B
  1851. UP_PPU:* D: Y3 n* w4 i7 f7 O. s
  1852. JSR UP_WRITE
    - I7 d& a6 @6 Q2 Z+ Z
  1853. RTS8 y+ k, W; ~: E/ J* c3 f  O

  1854. - l- ?" P  ^9 G  i5 V8 `
  1855. DN_PPU:
    9 [, ^6 f0 R. B/ E3 l6 H9 T/ k8 w
  1856. JSR DN_WRITE0 g0 _( n$ }' S$ H
  1857. RTS4 I% l+ `2 l7 G/ G

  1858. & E. M! ]- q' `' l: e/ Q
  1859. LF_PPU:
    6 z2 L) ^/ f* d  K* @
  1860. JSR LF_WRITE- T# T4 v+ W) L4 ^- S
  1861. RTS
    8 j. F1 z3 f7 j0 A& t% u

  1862. ( ~% e- Q4 _# J+ P  B3 N6 y
  1863. RG_PPU:1 p9 C* q* ?# K
  1864. JSR RG_WRITE
    ( c; S: C! r$ y9 R. @) c+ w. L
  1865. RTS  d: r0 u5 ]! u' K( i1 d3 h3 e

  1866. 2 [4 r- J' Y) y1 W6 N! K, h
  1867. B_PPU:
    $ \1 ~$ G  C. w/ C2 L" E" J, G0 [4 Q
  1868. JSR B_WRITE! H; d4 ~4 n  S, s# Y
  1869. RTS2 {9 }2 c1 h) |
  1870. $ g8 A3 L6 c1 g1 N! L1 |
  1871. A_PPU:, X5 Z9 X+ r$ ]* ]  s/ a" t6 W
  1872. JSR A_WRITE  H8 x9 i8 ?: }9 O( k
  1873. RTS
    ; Y: Q' _! }% o, J; Z

  1874. 6 A6 @' c+ R& ~- J; N
  1875. 6 j6 q, b) U' [( l: B( a
  1876. PAGESELECT:
    ) [! t- ]" _* P* p2 `1 }4 O/ O
  1877. PAGE0:  q, ], x) A: ?( O
  1878. LDA $07AA
    ! {, \. r  B- F  O' S
  1879. CMP #$00
    9 _# H% v0 r( R* A5 R) a/ ~0 x
  1880. BNE PAGE1( q5 c: r4 f' l8 }$ @# h- F

  1881. 0 J$ @5 a* Z5 \# @5 Z1 {+ M
  1882. PAGE_00:4 O0 V5 t9 c1 P, y! B' n7 V; E/ n
  1883. JSR BULSEL_PPU
    7 o  ^0 j$ @, q2 ~. \# n( C
  1884. RTS
    % ?$ l& H- D9 o* U

  1885. ' v1 W' H8 n: W3 R+ H* R" {: c
  1886. PAGE1:2 }. R/ C4 t1 g* g+ E
  1887. LDA $07AA
    & N" P4 n. z, U
  1888. CMP #$01+ z% F) P) e/ G( @
  1889. BNE PAGE2
    0 y7 T1 X1 w  [. I  G

  1890. ) c+ w. B6 _  H" o
  1891. PAGE_01:
    % `& U" H- x/ o, u, L
  1892. JSR INVINC_PPU1 Q5 H0 e& `& |$ p
  1893. JSR LIFELC15_PPU
    / A7 Z! |& \& h7 S# E/ [
  1894. JSR DOUCON_PPU
    & g+ J7 G; j; K+ Q
  1895. JSR KILLON_PPU- ~& p$ K3 E* L" e4 ]6 n
  1896. JSR SKYFLY_PPU
    : f$ N& T; z+ c
  1897. JSR LIFELOW_PPU1 L# S+ k# P" A
  1898. RTS
    0 p1 K8 r% t4 d6 a" Y* b6 K& }
  1899. 9 N# h5 q7 T2 f3 U+ Q
  1900. PAGE2:
    * U! |+ }- n- _4 @0 j  d! u4 v4 B* N
  1901. LDA $07AA
    / Z$ W& o- ]5 J, r1 ?$ v5 F, q
  1902. CMP #$02
    * f( u$ D5 o9 {
  1903. BNE PAGE32 v6 h$ ^* I3 t7 a1 }

  1904. : S4 f- ]* S( ^' m% L
  1905. PAGE_02:
    ) [: [6 t$ u/ b' u% v! G) y
  1906. JSR BULADD_PPU' ?; t/ w  a6 [+ O
  1907. JSR SKINGE_PPU
    0 t& z+ |: k+ U7 d
  1908. JSR BULMIX_PPU/ \- J- I* Y! O: D9 r  A
  1909. JSR ENELOC_PPU
    # d. {. a* u5 p. q
  1910. JSR FOCFUL_PPU
    - A& g! p0 Q/ s1 f5 Q
  1911. RTS
    ' e. P5 L8 o" I/ Y
  1912. ' l- k0 @" A4 I6 i; ]1 g
  1913. PAGE3: % `' h8 C* _9 _
  1914. LDA $07AA2 {$ s" X- a% [$ T
  1915. CMP #$03, b3 o# ^+ t6 D! V
  1916. BNE PAGE4
    0 k4 b& ]6 |) f+ d- ?, e+ i

  1917. 3 W# ^7 I: Q  R8 U9 o$ u
  1918. PAGE_03:* ~! j- ]- B2 B& _
  1919. JSR BULCON_PPU' r- R; Q7 }) b
  1920. JSR SPEBUL_PPU
    - Q6 G* W. f2 W% t4 E  |
  1921. JSR CLEALL_PPU
    " b9 i  i2 [7 I* s- i) c6 N2 V
  1922. JSR HARDMODE_PPU
    " x9 \5 m% k. y
  1923. JSR B_TO_JMPSTG_PPU
    ' x- Z9 f/ V0 P& f9 T7 \
  1924. JSR A_TO_PLAMOD_PPU
    + C: u  P! t; e! I% a" H3 Q
  1925. RTS/ j( F7 `3 l( ]- T- c) n% |
  1926. 0 f5 f2 e, J* E8 Y$ C7 L* a- h0 j% f
  1927. PAGE4:
    & Z4 A2 P! D# L! `
  1928. LDA $07AA' G! Z6 n6 S8 ]
  1929. CMP #$04
    - A) T/ P. R/ q& g3 [7 d0 l8 }
  1930. BNE PAGERTS0 u4 {" \( V# K1 m  E& z

  1931. - W* X, W# _6 U4 h/ z/ v  P
  1932. PAGE_04:' V5 [9 h. z6 E- q$ Y
  1933. JSR MOVSPE_PPU, d+ e1 ?0 o4 y4 t  Y3 {4 I
  1934. JSR UNLJMP_PPU
    1 i$ n1 h  J9 S2 w/ I  f
  1935. JSR DESTRO_PPU
    4 J5 t4 B" o7 U9 ]. ~
  1936. JSR EQUBUL_PPU
    ! r# K4 k# }  X; [1 w
  1937. JSR MOVESPEED_PPU
    & `5 I8 |6 T& S( g
  1938. PAGERTS:
    8 ?6 o3 y% d6 G8 t5 o" n. p6 N
  1939. RTS" N# i1 ~' m1 G7 m0 @

  1940. / ~6 S% O2 e% {) ]( h5 [# J* {

  1941. 6 R, P0 W8 z, h# I
  1942. PLAYER_01_STRING:
    + n$ y5 O: d, i+ z; C
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    ! n1 d2 ?3 a! Q2 V( P
  1944. 1 I1 O; \  _5 ]8 r2 @
  1945. ' W) `% X% V% h
  1946. PLAYER_01_WRITE:6 O. k; _& y7 |, S
  1947. LDX #$00
    ; g( t8 S% \  m6 m; ?
  1948. PLAYER_01:
    : I- R3 V7 J3 v6 [; U4 U
  1949. JSR PPUADDR_PROCESS9 Q6 X% f  \$ X
  1950. LDA PLAYER_01_STRING,X/ T' l; X0 R+ ?0 N* d5 z; E3 Q
  1951. STA $2007
    . u; p* T+ C$ B$ p/ C! N
  1952. LDA #$00
    6 R- w2 y2 U$ ?6 _5 q, E5 a
  1953. STA $2000
    1 y; {$ A7 R. [1 X8 w
  1954. INC $BA8 L7 v0 W5 }$ `& L3 C3 K9 k# `9 c
  1955. INX+ ?1 w  A2 g( c2 w' n; U, y
  1956. CPX #$0A  o3 r6 |7 {! }3 `: M0 |5 A+ Q
  1957. BCC PLAYER_01
    ( H4 A. L' o5 U) d
  1958. RTS
    ! P% i9 E6 l  i3 D+ W3 q9 z

  1959. 0 a, v1 y1 J, A; X" F2 ]
  1960. PLAYER_01_PPU:' y! X9 y# t1 ^9 z& Q: _, [
  1961. LDX #$007 T- O- s1 m8 N5 J- ~
  1962. LDA #$64
    . M' n/ p/ R0 R5 ?
  1963. STA $BA4 j* }; u% v& _' l; E) F! L; P
  1964. LDA #$20
    " D4 U; G: b5 U5 `1 z3 z& T. O
  1965. STA $BB2 n- Q) y2 l( i- E4 t
  1966. JSR PLAYER_01_WRITE
    1 i  \4 H, b% i# [4 g7 E
  1967. RTS! S/ c% i. ?8 s
  1968. , Q6 _9 g* x7 L
  1969. PLAYER_02_STRING:! F1 w  A' |0 z) a% Y; ~
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    ; E4 k/ q$ {* t4 [& |
  1971. 6 J% u9 D8 m% l) x

  1972. 6 E1 z! a4 m) t
  1973. PLAYER_02_WRITE:
    + [6 t" Y. y! M; N
  1974. LDX #$00' G, k3 u! S/ ?4 C
  1975. PLAYER_02:+ b2 |; ~' \; |% ]& n; h
  1976. JSR PPUADDR_PROCESS9 M; B" b% r8 m$ |% D; O
  1977. LDA PLAYER_02_STRING,X
    5 b$ |1 H, ~4 A
  1978. STA $2007
    " d  \, J2 F  H* R& ]6 @: c2 L
  1979. LDA #$00
    $ N9 ]  r# @1 P" e& ?& Q
  1980. STA $2000
    " o" Z0 e6 u& S1 k3 u2 O
  1981. INC $BA" T$ B6 z3 u/ M( [
  1982. INX
    * {, {- W: U6 L2 u
  1983. CPX #$0A6 e- W3 r4 [* q0 N
  1984. BCC PLAYER_02
    : p3 m  P! m' F% a0 p; a% Z
  1985. RTS+ h  y& @" Y" V  l3 |
  1986. # R* Q, O! v8 S2 L, q
  1987. PLAYER_02_PPU:8 x3 R% _$ g  u" c% B! V" D! Z' \
  1988. LDX #$00$ a; K, p0 T  p& H+ i
  1989. LDA #$73
    ' P3 M4 |. t& I7 ?. L! T2 O& K
  1990. STA $BA
    ! g' [0 u6 f2 p8 F. X
  1991. LDA #$20
    . Z: f+ a8 g4 H3 @
  1992. STA $BB
    $ Q. i, ?( z9 m, H+ a& j
  1993. JSR PLAYER_02_WRITE1 M: D8 U% t+ ]& I* T1 \' _$ {
  1994. RTS( J+ ?, @) M3 k8 ?. K
  1995. " f; w* F4 n/ G. T, @0 N
  1996. PPUADDR_PROCESS:- i% M! i  X% q# k1 M/ [
  1997. LDA $BB# h% f- ^) W1 l
  1998. STA $2006
    + V% K0 y& Y  H* y
  1999. LDA $BA* `5 ^+ a$ K& ]# x% |
  2000. STA $20066 n3 p; z6 j  \4 z/ M
  2001. RTS
    : w: W( p% @% n$ ~$ d" E
  2002. 1 t% U6 n# |8 Z$ J* R! {8 b" K
  2003. / X9 [$ u" S8 d
  2004. 3 Y; P% x3 O6 M8 f
  2005. ONE_STRING:
      K+ u, R1 F' g5 y
  2006. .BYTE $99,$98,$8F& S' l! B( U* G4 Q6 Z1 u: E& }! a. A
  2007. 2 V: }- ]( K& Z- ~
  2008. TWO_STRING:
    8 A5 C8 t$ k' b9 Z" N" b. g
  2009. .BYTE $9E,$A1,$99, i- i' g: u. f! i4 f, W
  2010. , x+ A5 }1 q- y3 G) P5 e+ S1 m
  2011. ONE_TWO_PPU:
    ' J; f. G0 Y0 x+ A1 ?7 e
  2012. BNE ONEWR
      ^) W- g! h. b: {, I
  2013. TWOWR:2 K+ y7 g: Y$ K  _& f
  2014. JSR PPUADDR_PROCESS; t* Q- w; Z4 s5 O5 b# Z
  2015. LDA TWO_STRING,X; B$ e  v  G/ q% p& \- |6 e1 F
  2016. STA $2007' }4 A& M# H7 D! \
  2017. INC $BA9 |" u3 p6 ]5 n
  2018. INX* [8 D& F. j: ?- L; V3 P- [% v
  2019. CPX #$03, }7 P9 y) t5 v( R
  2020. BCC TWOWR
    ! r0 U# u( v) o# i4 o
  2021. RTS! @! C+ }! P. j* k/ y. F, {
  2022. ONEWR:
    * s/ c$ D( ^; t6 p1 _
  2023. JSR PPUADDR_PROCESS
    ) h: N4 E  ]5 C' j
  2024. LDA ONE_STRING,X7 ]9 O# G9 p2 D4 m
  2025. STA $2007- x5 b0 H- S0 E9 v4 `) A
  2026. INC $BA' l. {& D' B6 N) d) \
  2027. INX
    0 y. P0 f( t. }" O% Y; U
  2028. CPX #$03+ I  d1 g7 ?. M1 C- X
  2029. BCC ONEWR
    + @- E% s/ J# r3 h
  2030. RTS
    5 b; j% u4 N; V5 [' F$ `' i2 ^

  2031. $ k# b7 q5 f  _, U
  2032. MOVESPEED_STRING:, `' \; x+ a6 E1 ~2 m: z, w
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    * W) e$ K2 n. s# k! I3 X" f+ r; U

  2034. : {& D! P' v" @! ?- l1 z

  2035. ; |$ G/ q0 H: q1 T3 O( m. r: C
  2036. MOVESPEED_WRITE:
    " U' W, X" ?( z
  2037. LDX #$00) N6 i$ r& _% m, o2 t
  2038. MOVESPEED:
    1 K, q6 i- V9 W+ ~1 G
  2039. JSR PPUADDR_PROCESS
    ) L9 b4 o* V) g  @
  2040. LDA MOVESPEED_STRING,X
    + U1 R1 T0 T  i9 z% Y1 u
  2041. STA $2007
      d1 J( {4 _% x# m2 h! s
  2042. LDA #$00
    7 w- [; o# Y' [+ I9 J, G
  2043. STA $2000- G$ h4 ?/ |. K4 K& X0 l
  2044. INC $BA
    - m1 _8 i* t7 E: Z
  2045. INX
    5 T" r9 r$ M( v) M, i. e
  2046. CPX #$0B
    $ U" W) Y& R! l/ R3 J; W8 F
  2047. BCC MOVESPEED
    : J( R& O" T2 W3 P
  2048. RTS
    , K% }/ ^% T7 D4 Q) |/ ~7 H
  2049. $ r8 I% Y9 L9 O  z8 m6 F- O
  2050. MOVESPEED_PPU:- \$ z; ?$ x5 G7 i
  2051. LDX #$00
    # k* ^7 s: H/ t7 u  n
  2052. LDA #$AA
    ' |, {* e6 A* M# h# f! u& ]/ p; m4 @
  2053. STA $BA
    - S' k0 W) q2 S$ V; ?
  2054. LDA #$22
    2 n0 U% B6 a: T, H; R3 v0 l
  2055. STA $BB
    / T2 B* u. W7 \9 ]
  2056. JSR MOVESPEED_WRITE0 c0 T6 D/ M" Y: n8 A
  2057. LDA $7003  Y$ V( l: k, l6 m/ Z8 B
  2058. CLC
    1 b8 Q& v3 @8 ~* W
  2059. ADC #$82  O2 E$ G5 m4 Z& k5 Y9 k: R
  2060. STA $2007) _) @/ h8 y. H) h/ t2 X+ r1 g8 K
  2061. RTS
    # k7 m: V4 }" H2 C3 o
复制代码

本帖子中包含更多资源

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

×

评分

1

查看全部评分

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

签到天数: 549 天

[LV.9]以坛为家II

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

使用道具 举报

签到天数: 7 天

[LV.3]偶尔看看II

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

使用道具 举报

签到天数: 2060 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 3049 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 852 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 1279 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 2139 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
6 r+ _( R; W& t9 X; ^
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 2366 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 2178 天

[LV.Master]伴坛终老

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

使用道具 举报

头像被屏蔽

该用户从未签到

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

使用道具 举报

签到天数: 347 天

[LV.8]以坛为家I

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

使用道具 举报

该用户从未签到

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-26 19:22

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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