EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
- ]9 E0 i' k* _4 b- }3 }
) h: x. p  P" C- ]7 b
     [FC][魂斗罗旋风终板END暂停显菜单]
% H5 i; D8 E1 w
作者:FlameCyclone(flamecyclone.ys168.com)
; w0 A7 v# i: F时间:2016/11/19 21:46:00
3 N- n; K' v5 @% s2 J4 v5 T更新日志:
9 }  Y7 B) P: ^9 W' u/ [7 j. m
2016.11.19:加入暂停显菜单(共5页).
' y; ?9 C, o. M9 L2016.11.12:加入无限跳跃.: S1 ^  N3 Y4 m6 K9 p8 f
2016.11.12:加入速度调节.

/ ~/ a, G6 P6 M# r2016.11.11:加入敌我子弹对消功能.
* l5 D; B* O# \6 B7 q2016.11.11:加入全屏闪灭功能.
% w- y) b+ v* g" ?' n9 N2016.06.08:加入全屏瞄准功能.1 O5 z+ l; e8 I) m& T. R' l( S0 ^
2016.05.31:加入弹速调节功能.
; O4 z0 L6 v: g2016.01.01:加入高难度模式.
. ]. B+ a- |' F" B2 }0 ]; I& S2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过./ B5 S' R* M+ J3 ~
2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
6 [/ s" M) Z; U/ z" f8 j/ p2014.07.05:双人切换功能优化.
' Z  ]9 [! Q7 H# V4 P2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
# d9 N1 P5 B$ T2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.& s) n/ A: w7 t8 D( Z9 n) [! r
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.. P" V5 m9 T. l
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.' k' F& ]' S$ g* @0 O1 o
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
  v+ E; \( L# _% w: ]7 h7 C2014.02.13:加入自动演示通关.
( y' E! |3 a0 ^0 g* {内容:( \+ B, `9 y) f- _: M
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
% b% o) Y( O( b. ^22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.4 H6 r/ t2 x" d, S+ L/ v1 A
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

1 n& C7 n' @/ b# o" s  W20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.7 y! f* \8 a7 m  O
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
% t$ L9 l" _1 k* x' [: g$ s: o4 _18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.; k' a+ Y: w! i  _4 i) a# M
17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.  y' `' Y) F9 T/ c/ |" o1 G' A  l4 e
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.# N: u% t' q" b$ l
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态." m. A4 G7 Q, P9 |2 w
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.- D9 e& ^: i. a. k/ k
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
/ Y3 g+ C! X! l  V' F04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.# P, n/ a! u  R; ]8 _9 F0 N
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.* P0 g2 E. f: m, @
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.
( d3 H6 i+ n8 \  h' B07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.; u9 T6 O6 u% ?7 {, p
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
6 |5 t6 M) P6 N09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
6 H- _6 q& \0 W& c10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
* e4 T* a: A* h& p8 g11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.% u# M) `* J/ m* |6 X
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
. h5 z! D3 M9 W  r4 d/ f13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
3 Z% j/ a* u7 S& y6 G+ `% M6 x% J2 w8 ?14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).) d" t8 X  z, s4 d( i
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。4 |+ J- k& q8 u) _6 l0 K' A
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
4 u0 b" i/ c2 ~  zB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!5 o. q: h* v2 A7 C: u* A. `, L9 N1 E( M: [  m
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.  `6 ]/ K( f. r

7 W: ?/ k( \8 Z6 t    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
3 O  y* P0 i# ^8 Z# l  t- ]2 Q欢迎大家转载,转载时必须注明出处.9 X8 Q1 F  H* w" w) i
: A0 U( ^6 e' U. U4 g
游客,如果您要查看本帖隐藏内容请回复

* V# e( D  n% f
! {0 W3 `! N. [忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.3 R( f# \8 d3 n! u
这几天的劳动成果如下:
  1. .ORG $B4007 s1 L' u# G* F
  2. : W! S0 n# ]1 f; J: v9 H

  3. 8 Q" n! f2 j8 [
  4. PROREG:
    2 X; u1 F3 l7 Q. P
  5. PHA
    : D3 l' p/ e! ~% {9 S
  6. TXA) I! I9 f" T/ E
  7. PHA9 J/ t5 T) ]. X) d- G4 b' ^8 I- }
  8. TYA+ Z' f  p& F# ]3 V, [, i4 z) K
  9. PHA! ]- D( n3 ~' t3 d8 V
  10. LDA $256 R1 L; J) n) t% `8 v
  11. CMP #$013 @* Z2 s0 f/ ^0 ?
  12. BNE RE6 g. A& `2 B2 K5 M/ f
  13. LDA $010A, a9 H3 U0 |, C0 H' j! P7 T
  14. CMP #$00$ Y( R) A" u6 U8 Y4 B
  15. BEQ P1; Z) T8 s' ]/ k6 }6 C: v5 L  m
  16. - Y4 l% G! u+ w( \0 I* O
  17. RE:
    7 X8 F9 J8 u+ S$ R4 o2 `1 N' p
  18. JMP PPUWRITE# W1 E( N6 J; o3 _. a; [
  19. " e) `5 v6 _+ s  v" F! a) {3 ^
  20. P1:                ; 条件判断* \% x4 u/ U% {. ?8 s
  21. LDA $7FFF8 K$ }5 K7 B' t0 ?. E2 |6 m, r0 a
  22. CMP #$FF  P" B; y0 n: Q1 ^( r2 B
  23. BNE P1RP' d( T) L- A: d8 f) D7 m9 n8 T; g
  24. LDA $7FA0" ^6 o/ W  q, x. s
  25. CMP #$008 n( x8 h! _. a$ n! p# R' h
  26. BNE P1CMP
    1 W" z1 \2 ]; E; k
  27. LDA $20016 z6 N' S3 R1 w9 |, @9 E: I
  28. PHA( q) g7 [6 j0 n% n  H5 N2 T1 H# v7 f
  29. LDA #$00
    3 z; a7 i7 j0 ]6 A9 S8 |( E) [
  30. STA $2001
    8 \' `& L, U' ^3 y( G1 @# R( U
  31. LDA #$FF6 ~# k5 D) W+ g% e0 U7 ?8 E
  32. STA $7FA0! o; b* `9 m4 q3 d0 z" B# K
  33. JSR CLEANA
    ! r7 i+ r+ G9 {1 j9 s+ O+ |* k
  34. PLA1 [% K* o- Q& r; s7 N* s, P' ^  |2 x
  35. STA $2001
    % a$ O8 R! @3 K9 B+ Y# `# W0 {
  36. JMP PPUWRITE
    9 V' \4 X! O6 V' O
  37. P1CMP:7 |& G& B1 v3 S7 @& u4 P* o8 b. D
  38. LDA $7FFF. U; f1 o0 |. L8 ~. ]
  39. CMP #$001 ]# L  t! C* r" P% U
  40. BNE RE# P4 o! g& A2 [* j
  41. P1RP:
    6 [* A( W7 `# X: u7 U# e- X' H9 E
  42. LDA $2002+ L1 ]2 ^2 l: f/ ?1 R% X6 j! ^
  43. LDA #$00& z" [) Y4 J  Y# E& v' b6 g, N( \
  44. STA $20018 I6 T8 X, v6 r1 L
  45. LDA #$FF
    2 s# {7 h* o: K8 N: p; A
  46. STA $7FFF
    % E3 O8 K8 s6 x+ H2 o5 R- P5 K, F
  47. STA $7FA0
    1 p# ^% N! H3 Y' {7 G: w3 [+ [3 {7 A
  48. JSR COPYPPU
    + M( @" R; G- s4 C; y+ L) _* _
  49. PIRP2:5 ~! S% ^" P& ~# C9 P% i
  50. JSR CLEANA8 s$ a' E2 _) @0 ]
  51. JMP PPUWRITE' M% _# |, g- }& |, H) f

  52. ( u0 E$ C6 Z* G, x* D  G$ _
  53. COPYPPU:: L8 F/ z3 L" ^9 t( y
  54. L0:
    / h( k2 c7 w% N4 C7 {" c
  55. LDA $30
    $ u2 b. J# v6 R3 J7 _. i
  56. CMP #$027 d1 a- b0 w' d# C* G) P$ B+ N
  57. BNE UNPROFC5 \4 N) B. |8 z1 P- I
  58. LDA $FC
    ( H7 F; X. A9 P0 M  g6 `
  59. STA $7EFC& w% y" z% {2 T% |4 e  E
  60. LDA #$00
    6 f/ U2 E. T1 b& R; M
  61. STA $FC$ g5 [9 p! f6 i8 y5 V  V% ?
  62. UNPROFC:0 }6 t+ P4 T9 L* M
  63. LDA $FD
    7 M: K% B9 ]: U2 B3 F
  64. STA $7EFD9 G% Y! Q% y8 R4 n% Q
  65. LDA $FF
    " |8 E3 }* J$ k
  66. STA $7EFF9 a5 U' ?- @+ h, y. F9 G# C
  67. LDA #$00
    ; E6 g# c( j+ P7 m) o+ t5 O' {
  68. STA $FD  a! X, ]$ H9 n1 k5 {
  69. LDA #$B0
    0 p, C$ m& `; H
  70. STA $FF' V( G! S- @0 e
  71. LDA $07C1( {! Z2 Q0 R* J; v2 ]  A. g/ A; p# O+ j1 D
  72. STA $7FC1
    1 |9 ^0 t0 H0 n7 o' j
  73. LDA #$3F3 g) v4 h( K  |
  74. STA $2006
    % C0 ~) }! ^& Q; F# s) ], Y2 r
  75. LDA #$013 B7 e+ {0 I4 ^0 P' y+ C" L) W
  76. STA $2006' O) {5 r( t' F  q
  77. LDA #$24
    & y* t0 ?: c: w  K
  78. STA $2007( h8 m" j7 g" u% w5 Z- O+ K5 r
  79. LDA $07F62 S9 F( O! g0 e. w' d: A5 A
  80. STA $7FFE
    ) Q& _8 ~/ @8 p1 s- Y( ]/ P
  81. LDA $00FE# h% N  r$ d* b
  82. STA $7FFD
    / _& P9 F% z1 U  z  k4 h% @
  83. LDX #$00
    $ b3 U1 Y% t6 `
  84. LDY #$00
    ; x0 ^  u* p& h+ v
  85. LDA $BD, e/ |3 ]! X0 N( a
  86. PHA% G( p! D2 Z4 `, k9 y5 D4 u
  87. LDA $BC, d. Q* |) w( u" i2 N* Y; J. X
  88. PHA5 r; E$ ~6 V6 ]# B
  89. LDA $BB+ x+ s: g- W$ Q3 v5 j0 b* y5 e' ^
  90. PHA
    ) K1 r" N( ]' Z4 o* c
  91. LDA $BA
    7 d' N  T, @9 m1 O8 D# G3 E4 `
  92. PHA
    ( F& b, ]( K% _* X2 F1 p
  93. LDA $B97 a0 m& X. L5 U6 G! C
  94. PHA
    1 G9 \8 P" S# _* D; f
  95. LDA $B8
    . \- Q. a7 O/ S: `
  96. PHA
    + |% I9 \  t, |! M2 P0 \2 X* F" N
  97. LDA #$00+ G5 l! u5 x* C0 d; W
  98. STA $B8
    9 E9 U- d% g+ d/ B8 \
  99. STA $B9
    ' S8 b& z5 F6 P. G, r( k
  100. STA $BA/ O$ }& V% j" p" J& Z; }( C9 l
  101. STA $BB  h5 l8 ^8 n; f! c
  102. STA $BC1 f7 I3 z/ d) K5 ?
  103. STA $BD
    ) J2 q6 L, R" I8 M) M" G. A( {
  104. LDA #$00- \) P# \* B% S/ {, O, p8 W
  105. STA $BA
    7 y% C% [4 P( q
  106. LDA #$20
    . t- g" F, I+ P. r3 ]" Q9 P' Y. h
  107. STA $BB& e; c% J9 b& v. g2 o; R
  108. LDA #$00
    ' R9 x, V" V: J
  109. STA $BC- Y3 F! m/ |. k* m+ o
  110. LDA #$60% F0 S& w& ?% T% w) X) i
  111. STA $BD( \/ `( s$ a7 l

  112. : p- k) f# V& c0 U' Z
  113. L1:                ; PPU复制+ @$ W7 j0 C0 c
  114. LDA $BB
    * J" [+ J7 ]& V9 x$ b
  115. CMP #$30
    6 I1 b# _  Y% C" ~- `! s
  116. BNE L2
    ! E. l- _2 P# i
  117. LDA $BA( j6 X" u8 s/ H) H! {4 o
  118. CMP #$00
    7 D8 j$ `: B9 i1 T
  119. BEQ PROADPLA3 _: D3 `- S* z4 T% D
  120. 9 a8 K5 \& W1 [) i8 E
  121. L2:
    ! Y5 R1 m5 |( T: @, B7 _% S  D) o% A9 N
  122. LDA $BB
    8 Q4 p$ l$ g( K2 W6 ?  `: ]. B3 n
  123. STA $2006
    ! t, G! H1 b3 e4 ^
  124. LDA $BA0 D2 W! r% _! K, K" ]% W
  125. STA $20069 v6 z# F/ f3 Z2 P3 `* a
  126. / {  v+ T. O0 D$ i
  127. L3:
    & {, i& M9 x; v
  128. LDA $20077 ~, _" \! G1 C. ^' R
  129. LDA $2007, C  Q9 v$ g4 f& P) U. M% R' u0 J
  130. STA ($BC),Y  D1 \* V; V7 ?4 b/ T

  131. - b9 ]3 j, W  t
  132. L4:3 y' y) V- O0 ]0 v' H( m( d
  133. LDA #$00! e: o5 l% H1 l7 Q5 M0 e1 L3 R
  134. STA $2000
    2 i% H+ r& d  a1 \( }6 S3 [
  135. INX
    1 f* N1 w; h- H: ?) L( F
  136. INC $BA! h  U7 k8 Y( v- S+ ~+ ~7 q/ U" [
  137. INC $BC
      d' a9 a/ P9 a# n' b6 M
  138. CPX #$005 z; p8 u6 _' i$ N
  139. BNE L17 z/ q0 h: x) o5 D9 D6 d- X
  140. INC $BB8 F! r* [1 b8 W* y$ x
  141. INC $BD
    7 ?* b+ O  L0 Q& l
  142. JMP L1  Q2 ~) B9 I* q' R2 _
  143. # m, o" D0 c2 h5 N% A1 c
  144. PROADPLA:                ;出栈; x# c, X1 a. L* |
  145. PLA0 `5 s, R9 l6 @7 o' C% [
  146. STA $B8
    2 }/ Q+ d6 {+ m" I) {/ o0 [
  147. PLA9 f  {: T4 Y5 e# _. e+ E
  148. STA $B9
    8 U) ]0 @: @! [' S* r
  149. PLA9 K- k" Q" r) A0 ?
  150. STA $BA
    9 f# b( ]- J$ H
  151. PLA0 Q; e* m) O+ B# m: I
  152. STA $BB
    6 z5 {* m8 Z. q& ~# b. O6 _
  153. PLA/ L* F- q) ?) Z8 N* f2 v" d
  154. STA $BC' Y* ]. Y! D1 f7 T- f) j
  155. PLA; Z  W5 d& Y- Q" Y3 @( O0 L+ m
  156. STA $BD; d/ d) N* t1 F: L" @
  157. CPRE:
    - w. a) s- F3 s' z7 K. t
  158. RTS
    ; f; R" Z0 [5 j: r8 b/ c) Q2 w
  159. + c! N$ }' P; q4 D! R
  160. CLEANA:                ; PPU清空
    , `6 p: ]) Y" R  }& W
  161. LDA $BD
    ' R& S) b' W- w  w- Z
  162. PHA
    , @- Q* z: O* \
  163. LDA $BC- F6 a' u  o' c
  164. PHA
    / Y+ d+ l; ~; O0 U
  165. LDA $BB
    ) f3 y8 g/ ?* u7 x' D  R' O" l' n
  166. PHA
    ) Q+ y* h5 x1 j! A6 H
  167. LDA $BA
    + S: Q' X6 H+ ^5 M. d
  168. PHA
    " P% x1 k3 a. h3 A
  169. LDA $B92 {: N& N; W: ?% H/ {! X" J
  170. PHA- k: r6 t- J( h
  171. LDA $B8
    2 i. d' [' ]7 W
  172. PHA2 E/ S& ^: W' S2 g# _8 Z) ~/ _
  173. LDA #$009 T9 ]. f1 U# M6 i
  174. STA $B8
    * B3 o+ p- h, a: y  U( J' p
  175. STA $B9
    / ?$ b3 a* O4 ~9 a4 {/ `: K; v
  176. STA $BA6 q7 _4 F0 P7 x& I0 A6 H
  177. STA $BB' |2 @; X0 a( c0 D
  178. STA $BC$ Q) O: W/ l) n; }( ~! C# Y
  179. STA $BD0 M5 _! T8 H/ _7 _
  180. LDX #$00
    ) x/ M0 G! Q$ V; t/ e
  181. LDY #$00% P! Q+ l& a7 A6 G7 z
  182. LDA #$006 t6 O/ g  W6 W1 n
  183. STA $BA
    % e' d4 S3 K6 ?! L# i) s% E
  184. LDA #$20
    9 T0 s" @0 c% ?
  185. STA $BB& N0 T$ Z- f2 P5 q
  186. % P8 Q) m1 A) \0 S
  187. CL1:
    3 W2 z% j( ?6 q
  188. LDA $BB
    . }9 ]' V* e' i3 ?: b. b' Q. ^1 A
  189. CMP #$30& I/ c5 S" N, R# \" B4 s3 G4 o) c
  190. BNE CL2
    2 O7 k# V% [: T  v' B
  191. LDA $BA; L9 g% L+ p9 P; J
  192. CMP #$00
    4 ?* N$ V/ C0 o
  193. BEQ FREEWRIYE
    1 \9 X" D% P  s  r9 |
  194. % m' Q1 D5 @% O# p/ v- C7 |3 H
  195. CL2:3 @9 R. p- s& C5 P
  196. LDA $BB
    3 }( ~+ l! x! j) S6 e0 t3 j1 I
  197. STA $20064 W# g- B* j' x, O/ @# ~5 S
  198. LDA $BA
    $ T) q1 `& F8 ]6 R  Z) f% J* Z  t" ~
  199. STA $2006. ~& w" I* K, R. R' j" Z8 |+ K6 q
  200. ( V+ d6 t9 U/ v
  201. CL3:
    2 n$ [, R/ j  E  \
  202. LDA #$002 V, ^4 v  [1 n7 K; D1 s
  203. STA $2007
    2 h4 }8 w$ @% D6 k
  204. 0 O( H' q/ y# k; {# ~7 [3 a
  205. CL4:
    2 m0 o& t' z  Z# |# P; S
  206. LDA #$00
    # ?2 ~- M3 c8 H( q: R( l% p  T
  207. STA $2000
    4 B9 w: z, }' {4 P6 L
  208. INX1 L. N. d& t! N
  209. INC $BA) U; ]- e( X. {2 M. A7 K$ y* J0 ]
  210. CPX #$003 V% i( e( n& h" W1 L
  211. BNE CL1
    5 K) B' ^  T+ @4 w" R: m/ ?; B3 E
  212. INC $BB& v+ ?) `+ M' c0 p
  213. JMP CL1 4 W8 d% G8 `3 t
  214. 3 \5 b& V6 n8 g; @+ c% g5 p

  215. 1 w0 r6 I8 ~9 L) }" m& N9 O
  216. FREEWRIYE:
    ; c8 Q, V- U# ~6 f( F, e! `% n
  217. JSR FREE/ r# E' Y9 x- j" k# X/ g

  218. 5 K3 n0 t# Q" O9 E0 |/ A) L
  219.   p+ M% _1 o% g$ Z6 T5 g! Q: _

  220.   R" F( m% j+ e  i& ]% ]+ c" u
  221. - P* X7 B: X0 p

  222. 4 R0 h6 x6 [! Y
  223. CLEANF:                ; 恢复现场! c9 R+ ~4 h4 f( j# V& ]
  224. LDA #$08/ e: n: A9 d1 r! `: {0 m
  225. STA $FE
      t3 ^9 ]* V1 b4 i
  226. LDA #$00' ?7 x& w. s/ Y- t4 q# p5 D) @, A6 C' n
  227. STA $07F6
    1 |: p3 I7 Z% m! q6 P
  228. LDA #$24
    - q/ i2 k( H  k3 t
  229. STA $7FC01 U5 P% ~1 r, Q
  230. PLA
      i6 I6 Z/ o& o% X2 ~& }$ O
  231. STA $B8
    ' h" w+ t) C# B7 q% G
  232. PLA, {- Y9 }+ d* B: V! t# @! Q( `
  233. STA $B9
    ' c% g; F; j& F% K6 z7 w# `. R
  234. PLA
    7 |9 Q1 n2 Z# d/ k+ }
  235. STA $BA0 n. W1 j- w4 q, O' D" n+ |! Q
  236. PLA
    * O# r# |7 M% @8 E7 T# m% ^
  237. STA $BB
    ' Q% c5 E+ e2 r; T& M/ ?
  238. PLA
    , M" C  {8 E& A6 U! Z7 s6 V
  239. STA $BC5 w, }1 N* q& [  `1 y
  240. PLA
    - a/ s# H' |& y; |6 j
  241. STA $BD! I0 \% ]4 C/ `# o
  242. CLRF:
    6 H, B- J/ M6 ?% L
  243. RTS
    3 F  R' C# t2 t7 o/ `
  244. 6 O" ?/ }  T' V( ^
  245. W_DATA:
    ) y/ k9 h7 J7 k/ ^, @' [3 Z
  246. .BYTE $00,$01,$02,$03,$04
    + H4 l2 N) r7 X, W# C8 y* f# @/ }
  247.   7 H) O# H  S+ b/ t/ g
  248. W_PPU:
    . L/ K! F6 T1 n$ m/ V
  249. .BYTE $98,$97,$90,$9D,$96* l6 U5 v1 W5 e* K, r

  250. 1 _$ B/ T+ x6 M1 w
  251. P1_STRING:
    & d2 K9 E. N, k5 i7 h  ?' W
  252. .BYTE $9A,$82,$00                ;"P1"5 A9 R3 t# D' n8 x* d; ]; ]; N% _

  253. 7 W& e/ {- \9 `. O% Q8 [7 K$ j
  254. P2_STRING:
    $ p: n3 l, C& X- e0 J8 ?$ i/ n
  255. .BYTE $9A,$83,$00                ;"P2"
    + X4 V& G: z& @
  256. $ G! C2 \, f9 D% T0 I! }
  257. WEAPON_STRING:
    - E' r% B4 F$ V2 q
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    $ N8 e4 V3 r4 B9 @( w# n0 b
  259. : W" K5 P9 o: F$ ^6 T) o( K
  260. RELIFE_STRING:; s, d/ |8 ?/ b$ Z& h
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    7 e2 z1 P4 b. l$ G+ i

  262. " j' j7 {2 A3 R# A
  263. P1_PPU:/ I& q5 k5 W% X3 v  \' _
  264. LDX #$00
    & [6 y( D" e* c& t# C9 c: f4 _

  265. 4 ~7 L* @% s; P  J. o# z9 K5 L
  266. P1_PPUW:" M3 w6 N- h8 h% ?; O# }# ?
  267. JSR PPUADDR_PROCESS
      k( L$ \8 S- I
  268. LDA P1_STRING,X8 q- u% f! t3 \- h- F, B* V
  269. STA $20075 _& D( x8 C8 X$ @- \) B& p% W5 s9 i
  270. INX1 A9 P# g5 U6 E7 E
  271. INC $BA) u: v2 w# {' N/ C- w2 @9 Q
  272. CPX #$03
    ' p) w: t& w6 M
  273. BCC P1_PPUW7 f7 b( l8 U( ^% o! ~5 |7 c
  274. LDX #$00' O4 ~8 l# `: T3 S. K( V
  275. RTS$ @2 Z9 p4 z" t3 y3 q9 d% T
  276. 9 c, t# I$ H0 u4 i6 D
  277. P2_PPU:
    0 @8 p8 Q6 f; T7 Q$ b- J
  278. LDX #$00
    $ f! V1 R% o; i  R

  279. + @1 Z% @$ v: d. N- o5 k% p
  280. P2_PPUW:/ G4 t# ?3 R& g
  281. JSR PPUADDR_PROCESS+ A. Y0 Z, t5 J% k6 h0 ]; |, z
  282. LDA P2_STRING,X
    9 [! E+ m" n3 f. Y( D
  283. STA $2007, D3 F! x3 @; D6 G, N. E4 W
  284. INX
    8 `% c/ N5 v7 I* u
  285. INC $BA; I' Q/ s2 Z, i4 {4 P
  286. CPX #$035 R1 [& u5 @& f# v
  287. BCC P2_PPUW8 W- ]2 r! B4 m! h3 P4 n
  288. LDX #$00% y/ f* J) F4 m, q6 z
  289. RTS
    # W* d* \# L" S# a

  290. 8 Q) N8 d3 ~2 \, v( S- M( t8 F

  291. & s% W) _8 B5 B3 D4 I
  292. LDA $BB9 j0 f% J/ a. `; K& X
  293. STA $20068 Y& R$ `# x* V# p; A
  294. LDA $BA2 [/ W: h; ~5 S7 y1 \* W' j: {, V5 J/ B
  295. STA $2006
    6 E" R" S" ?4 p# v$ D7 Z4 q' \
  296. RTS
    2 ~8 _) {- K8 \4 S+ L1 P
  297. , A4 u- L, h4 a: w( o1 X- E8 a

  298. + B1 M- k, H* `  f) [

  299. 3 D  ?- r2 L) n( Q4 T& O
  300. PLAYERLIFE:2 ^& c% Z- C& x3 z8 q$ H
  301. JSR LIFETODEC
    7 R7 Y$ ~, {! K! g& p6 s
  302. LIFEPPU1:7 \) e, t. ?4 ^# Y) v" |
  303. LDX #$00
    6 |; A7 f% G. N: Q
  304. LIFEPPU1RE:
    * h- p9 y, V' f' m: H9 D
  305. JSR PPUADDR_PROCESS# g3 j' m. ^' V. z) |
  306. LDA RELIFE_STRING,X
    " n) o! R& z+ g  h& B" j- P# X
  307. STA $2007( j, ]* ^, ]( [$ H+ s# M0 L
  308. INX0 W' z1 P4 \  L8 ~
  309. INC $BA+ |* V! N! ]8 p8 J
  310. CPX #$078 k- u7 R& c' |- d+ \2 ?6 k% ^
  311. BCC LIFEPPU1RE
    5 [& R5 j) C# X; m/ m( _4 n

  312. 2 w! f" ?  W% ~. i2 X9 J
  313. LIFEDEC:                ;生命显示写入1 V# M2 p2 ~+ h5 w
  314. LDX #$00
    # m" _* p* w* ^1 \
  315. LIFEDECRE:1 j  ?* [; J" q' p# x' d
  316. LDA $7A03,X
    * Q1 N- `3 u& L% j8 D
  317. CLC; b# C% K& W1 x- r! E( q9 Z6 H
  318. ADC #$81
    4 A4 R2 e" ]+ I1 G6 A  e. E. i
  319. STA $2007# V% l* B9 w: d, ~" r7 Z* }* }
  320. INX
    3 G; [: y  |# c: Y
  321. INC $BA
    " `8 B0 b+ O$ x; \6 @* m) G+ O6 J8 }
  322. CPX #$03
    : E5 f2 P. v9 w" i9 w0 @
  323. BCC LIFEDECRE
    ) _7 X9 Y% {0 l5 e" H+ |* T
  324. LDX #$00* C, n! R$ b0 i- E( w
  325. RTS
    - D, ?" c& A; b5 f
  326. 1 g  n( c2 `3 S( Q' x; E; _( a
  327. LIFETODEC:                ;十进制转换
    ' w" v* }( Z4 y
  328. LIFEL1:        ;initialise
    ' F: C$ e8 a" }8 ], f
  329. STA $7A00        ;$7A00=F3; N6 X  h# N, `5 J' s" i
  330. LDA #$00
    , m: _) A7 F: N* d. a
  331. STA $7A03        ;$7A03=00% x' J: x  K6 c
  332. STA $7A04        ;$7A04=008 g: k- f. s5 A; T
  333. STA $7A05        ;$7A05=008 A# a! {% p( [, [8 x
  334. LIFEL2:        ;copy data $7A00 to 60014 w, l' a5 S/ B
  335. LDA $7A00
    2 \! V  S; G/ w# W' F  _# S
  336. STA $7A011 B% k: C2 q8 H, r% c0 c) v

  337. 0 c' P# R- L: V8 @/ e" p4 ^% F
  338. LIFEL3:         ;hundred
    : Z+ f+ d. A4 `, {% H$ r
  339. LDA $7A01
    % P; o/ V! m( |$ \# c. H( Y
  340. CMP #$64
    * F8 n5 M3 {/ I
  341. BCC LIFEL6                ;$7A01<100 goto L6
    6 Z( f+ T' I5 j7 p/ L4 i. K
  342. LIFEL4:
    % H1 B3 }  R# r
  343. LDA $7A011 h" M6 M% x6 ?, l8 o9 R1 E
  344. SEC
    1 s5 a! ]; ~& e
  345. SBC #$64        ;$7A01=$7A01-100
    8 G3 y$ U% N$ Z& z5 i9 z# ~. H8 A
  346. STA $7A01
    % P$ b( t9 k" ]
  347. INC $7A03        ;hundred++
    . j& i' r- G8 d0 P$ C  `# h
  348. LIFEL5:* S. q3 O! ~* ?+ i0 Z4 t" U
  349. LDA $7A01
    : k4 T8 s8 F: y  Y7 o0 K4 B
  350. CMP #$64
    8 d& e6 C) K* D1 D( U3 ~8 g
  351. BCS LIFEL4                ;$7A01>100 goto L4
    6 l. Q/ {( P% m4 O. W+ M

  352. + B. `% _9 ~- u! p, [. ^
  353. LIFEL6:        ;decade
    & `2 r9 h" K! z: Z
  354. LDA $7A010 O2 G/ h) c+ t$ o4 j  P) Q
  355. CMP #$0A" Y. H6 U% ]& u( X- }8 V# x
  356. BCC LIFEL9                ;$7A01<10 goto L9
    ) W- d9 P  W1 E
  357. LIFEL7:        : l: r4 ~: P& a) _( c0 Z% k3 a
  358. LDA $7A01
    1 u! E& [  i2 m
  359. SEC% P3 f! ]$ i/ q0 p+ ^) t
  360. SBC #$0A# R4 F2 m4 m, u8 d# Q
  361. STA $7A01        ;$7A01=$7A01-10# n6 X8 ~5 p' I3 G$ t8 s# x, Y
  362. INC $7A04        ;decade++
    # ~5 v" u9 j) V+ g
  363. LIFEL8:) Q, j+ R  N0 j+ c+ L
  364. LDA $7A019 n5 H& u1 }0 d& m2 G5 i5 u
  365. CMP #$0A; @% D( ]6 T1 o% k
  366. BCS LIFEL7                ;$7A01>10 goto L70 u- `3 j1 J% c& O
  367. ;unit
    8 N" m  J! E2 ]
  368. LIFEL9:
    + F2 U# P- \2 u) ~* e& B
  369. LDA $7A01        ;$7A05=$7A018 |% H- N* A6 z$ h5 @
  370. STA $7A05        ;unit2 F" T- _; C5 J, s3 @$ @
  371. RTS        ;return/ q1 u/ M; s% C! L+ V- R2 v

  372. 1 N6 W% i4 t4 n! L' `; ^
  373. & x: X+ b8 T* Y  W  a: f
  374. ( b' `7 o* A& ]+ D1 z* D( F0 R
  375. WEA:                ;武器ppu写入
    ( m$ s0 F5 E, f9 ?
  376. LDX #$00
    ! H8 |. w) V' J8 U
  377. WEARE:
    5 b2 ^9 v& s& r- k, Q- g$ n$ J7 Y
  378. JSR PPUADDR_PROCESS" e; B: P7 i! A+ i' p6 T
  379. LDA WEAPON_STRING,X' i; b; i+ \; y
  380. STA $2007
    , V* S" _4 S" U. D' W
  381. LDA #$002 K4 U6 Z. B, @  o4 a
  382. STA $2000
    4 M  t& @9 F5 r  ~$ {- u, `
  383. INX
    $ e2 m+ [- A. v7 T9 b% H
  384. INC $BA
    4 }# P1 i3 T$ g% n/ s! l
  385. CPX #$07
    ! z7 {0 y4 {8 E1 r
  386. BCC WEARE
    5 d; Z% V4 j" p4 k& {5 X

  387. # ~0 T7 }- `' ~8 U! n
  388. READ_WEA:4 s3 A3 C) m8 S$ b. _
  389. LDA $B9! S2 t0 [% r7 N; ~! o. w
  390. AND #$10" D9 I% r0 @- W
  391. BEQ NWEA
    8 @( p& [; I' d
  392. SWEA:1 A( A9 _9 ]" o/ h% D5 g

  393. + [9 t/ B( l$ y/ A6 [
  394. LDA #$9D
    3 \/ ~2 g7 i. p
  395. STA $2007
    * h. r3 C. i9 v
  396. LDA #$00
    4 v4 H% E' v: `4 H
  397. STA $20003 F7 }3 F4 Q. _+ N
  398. INC $BA: W0 I$ n2 r6 [% d
  399. LDX #$00
    ' C% J' [7 a; u* E3 ~6 B
  400. JMP WEAREAD
    1 ?# |: a9 S. @5 j) Y1 {% M
  401. NWEA:3 _; ?* S/ g6 m

  402. 5 e5 @! k: V1 [2 [- B
  403. LDA #$8D' m' t5 `9 C( |( M- w
  404. STA $2007
    6 _$ ?9 E' U+ y  E( l/ Q* O- |
  405. LDA #$00
    7 X5 e8 b: z# x) Q- P2 {
  406. STA $2000( e+ s- `7 @, [, K
  407. INC $BA
    7 V1 o# m* Y/ Y; ~. c
  408. LDX #$00
    2 n7 ]8 {6 |- g
  409. WEAREAD:
      l% |8 t! ?! A) o6 b9 }
  410. LDA $B95 u$ A/ u) u3 K4 K+ x6 x
  411. AND #$EF9 G& ]% b( C* a
  412. CMP W_DATA,X
    " q* B- {3 O6 j& @5 A. e4 V: u- m
  413. BNE WEACMP
    . t6 O, j) t, W% {

  414. 6 N7 D9 r! `) x" r
  415. LDA W_PPU,X
    9 V8 W$ w, e5 w9 h2 x" \2 H, t. g
  416. STA $20079 ?% h( x, k  ]% M' y; z
  417. LDA #$00. P9 Z2 q. i* c! }* V) ?' f9 U
  418. STA $2000" c5 F& x, B* t! W$ H. h2 j" ~- o

  419. 6 W: C8 Z* `1 q5 {2 y# I1 r
  420. WEACMP:
    % O8 G# |: s' k0 S  n: \6 g
  421. INX
    3 G- l3 y' g( Q
  422. CPX #$05
    / u) f' r6 u- n9 r
  423. BCC WEAREAD9 M( m, N/ i8 h( M
  424. RTS+ f5 v/ {( {9 I7 R$ h

  425. 1 e* J; I' s; N( l. k; d7 t
  426. 2 l1 T7 X) r1 |1 q* y  m
  427. PPUWRITE:
    ! c5 a) W( e- J% M! t# v- @
  428. PLA0 t& P3 D# S0 I& o5 p9 a$ a
  429. TAY
    , A& s8 g! l; B; f* Y4 g
  430. PLA
    " ^3 Z* v) F, }+ D8 `3 T- N6 ~3 A
  431. TAX$ x+ z% ?  E& @" h6 A
  432. PLA5 z* K3 _" q5 @5 Z& ~1 A
  433. LDA $258 _8 o: F9 ^) {; t, u, k
  434. CMP #$00) p5 C: K& b5 W7 _& l$ M* E
  435. BEQ WP1+ u* U+ Z9 P3 \) a4 d# R
  436. LDA $256 r3 Z8 A2 q  ]1 U' p
  437. CMP #$01
    : V% w% K+ q5 c9 n2 z7 j2 c
  438. BNE WRE) t% w# c, [: p7 p8 ~) J! I
  439. LDA $F5,X- P9 z: u; t3 V# N, j4 V
  440. AND #$EF- W0 S8 p5 A! ]& O+ Y* `3 J
  441. BEQ WRE+ C2 d3 ]& ^) h& u  D4 L  c
  442. LDA #$00
    / w" F% A& K( G5 e. s, g2 Q
  443. STA $7FA0
    ! a# ?+ ?" [! u3 g2 c8 S+ D

  444. % ~7 _, p$ f! w0 T6 [8 Z4 V) n
  445. WRE:
    4 b" W: h2 q8 W* @' O5 q8 W
  446. JMP $A000
    & q; S0 i1 J  O% z

  447. , L+ A4 @6 G% h1 D- J3 S
  448. WP1:5 ~2 p, r8 N" Z3 j7 e9 O
  449. LDA $7FFF) w0 Y, y( w/ e. r
  450. CMP #$FF# A' i5 }0 @2 i6 n
  451. BNE WRE) j2 S, k2 a; n$ t" C" R
  452. LDA #$00
    " X& @2 n9 W/ N1 w' u: V3 {. @
  453. STA $2001) A2 M5 @6 T( |$ r% T- J
  454. LDA $BD
    $ j: f3 q& F2 U* n- \* d2 D# L
  455. PHA
    ; h3 V, _4 g7 l2 w
  456. LDA $BC$ a( f) G/ Z. t1 a1 t! ^3 ?
  457. PHA/ S3 {) z. Y  \
  458. LDA $BB
      s* k0 r* V3 [. o
  459. PHA
    + K8 S6 ]) L% p5 i, }7 Q, L
  460. LDA $BA
    & O' b7 t3 W* F- z+ J
  461. PHA* ^; g/ I4 @' a* b7 n* R5 D; k
  462. LDA $B9
    & w- Y" N% ~( c' B
  463. PHA
    ' M. ]3 u. x! |. o
  464. LDA $B8
    & G3 O+ P1 u9 |- Y, m. Y! D; F) ?
  465. PHA( A# ]1 ]% o; g" o( r; }
  466. LDA #$00
    ' P! x4 B( z* U2 p& _  ?
  467. STA $B8
    : K) j+ \* B" ?; W. ~, M
  468. STA $B9
    / J! T! U* v' s
  469. STA $BA
    ! G6 }  I; m2 E, q+ g  Q
  470. STA $BB
    . a+ p, n5 s9 x% D- W& u$ g
  471. STA $BC
    ; P. b8 i9 \: V/ G. t5 ~8 ]: x0 S. g
  472. STA $BD
    ( k# ?7 h, N2 b# L
  473. LDA #$00
    $ r/ j4 \$ g# J% `, y4 ~
  474. STA $7FFF0 N! o% J" H% X$ [; ]
  475. LDA $30
    # R1 S. _9 X( R8 v2 t2 p
  476. CMP #$021 [& o7 ~/ `7 t1 p' q8 ~
  477. BNE UNPROCPL
    6 D: l1 ]/ b; z4 s: W( x' q$ y
  478. LDA $7EFC' O9 u; a0 ^- ^! x7 e4 O3 H
  479. STA $FC! }. E+ N1 M% }, B6 i5 T
  480. LDA #$00" }: U" k. Z) E. c" @# L/ a; l. ?5 E
  481. STA $A46 r" _1 }# A" Z' a2 m
  482. STA $A5
    % ^5 s: h* G  f# _% Y' @
  483. UNPROCPL:
    * ?6 T7 F  h+ w& L' b
  484. LDA $7EFD
    2 [( B# h0 M1 `) X" U6 [- K
  485. STA $FD
    2 ^0 A% v6 x& k# e: n
  486. LDA $7EFF5 X) R  {3 L8 w, {% A# A
  487. STA $FF
    ( s! t/ O2 D! S0 _$ J1 V

  488. " f" q5 p, X7 l$ b! J( H) i
  489. WL0:8 Q$ R! h: Q2 b1 b; y
  490. LDX #$00
    ! G- X3 W9 T+ ~: \, d
  491. LDY #$00- u, u: Q# e, z) |+ b% m
  492. LDA #$00* ~; v$ Q/ i. ?% i$ h7 s
  493. STA $BA
    . v& ]. v1 W! C& m5 v  h" v6 J
  494. LDA #$20! H% F2 ]7 f9 ^5 P+ l" d
  495. STA $BB
    & ~3 J! N: _- m; }: D
  496. LDA #$003 m( Q- b: }3 o, z' f( L
  497. STA $BC+ p/ ]" f' }7 T+ V$ @  C2 p
  498. LDA #$60
    ; Q, h1 H$ |6 W: [- _9 o) ~0 C
  499. STA $BD
    4 y' b; W; j5 U6 a4 {! f" C

  500. 0 r! P  K0 l" y7 m! S" E/ u/ d
  501. WL1:
    4 S) W1 y& B# u& J6 a- O0 R0 w4 L
  502. LDA $BD2 ^& W: m9 x8 @- c0 }! q6 F
  503. CMP #$700 u3 L) k9 a$ G0 t$ M
  504. BNE WL2, m- q* n* F9 |# @
  505. LDA $BC
    , J* `! C: Q( D* ^' ]+ v1 W
  506. CMP #$00# O, Z7 ?% i. q! j6 W
  507. BEQ WLR
    4 o! W5 a( H5 o5 P7 t7 Q3 \
  508. 4 U+ A& C- l  a- E; R( _
  509. WL2:
    ) }0 A; s$ R- k! c
  510. LDA $BD  z. T/ m: U7 n
  511. STA $2006. F5 W9 {9 d& P5 c
  512. LDA $BC
    , q- ^+ E# A, L
  513. STA $2006  V  F' u2 c4 a& X
  514. 2 E. R1 U; ^3 E/ V; e$ _$ I" L
  515. WL3:
    3 }# B$ H% O4 U
  516. LDA ($BC),Y
    . Z+ F, f+ ^+ v; q: @$ p6 ]
  517. STA $2007; s' @, F0 Z( X9 j7 @3 Q
  518. : r3 c  a: F  z' n) S
  519. WL4:
    / O1 F, {6 z* c, h$ ?
  520. LDA #$00
    3 a; Z$ Q2 I, c
  521. STA $2000
    $ v2 C/ o8 u, ]1 R) R; K( G
  522. INX8 `  {+ `8 w7 ]1 f8 D. v
  523. INC $BA! ^5 k' Q! M& U
  524. INC $BC
    / ]$ C8 m+ Q6 w- X' d7 r
  525. CPX #$00( N* [( H8 h7 j# {
  526. BNE WL1
    9 ]; x; O, u' u  K. ^: O
  527. INC $BB0 U- p9 m+ x; L% c2 F) J; N/ D
  528. INC $BD
    + `6 n5 g0 {  F; s! I
  529. JMP WL1/ h$ t5 J5 k4 U9 d' M, c- i: x- C
  530. ! ~! P' I( R. k7 ^" Z$ ?9 F+ M/ a
  531. WLR:3 |, a# U: P3 m8 s6 [- r
  532. LDA $7FFE8 B& A" ?" U8 H/ U& n
  533. STA $07F6
    . O* v! j2 D; I, }
  534. LDA $7FFD1 Y3 p* b0 W8 }( |+ M# |9 s1 c" l
  535. STA $00FE
    0 u7 Y) I" P1 `" P0 h8 C# i  C/ w
  536. LDA $7FC1
    5 ?  T) t- U+ W
  537. STA $07C1
    + j8 v0 o% A! \
  538. LDA #$3F* V* I0 ?3 j, H2 z
  539. STA $20065 ?+ n( v# v7 }0 z+ Y, x
  540. LDA #$01  q& t. ^1 k$ e; w$ p
  541. STA $2006/ L5 c8 l/ `  @
  542. LDA $07C1
    ! |) }$ a; o/ v; p2 q; v' L, N
  543. STA $2007
    6 H( L# ]0 W$ ~7 ?
  544. LDA #$00
    ; m2 ?( K* @9 T! T/ i  U. [1 N
  545. STA $2000: [4 d+ M( W. |6 j2 M' L4 R8 h. i
  546. PLA- A( u5 Q6 v* u0 N! E" ^
  547. STA $B86 T. B3 W: h2 v% k# c
  548. PLA; c; g* u0 k/ [7 \0 A( u7 O) Q- I  {
  549. STA $B9; y5 D1 X4 P& R2 L% q
  550. PLA
    $ U% m3 U. P! D# \
  551. STA $BA1 ]+ n0 Y0 h6 ~4 w; q
  552. PLA4 {& J: }1 p6 f" u
  553. STA $BB9 n# S1 |6 K0 x- H( i: R1 R1 _2 m
  554. PLA, d3 @8 F0 j3 D9 {  y: G
  555. STA $BC
    7 K$ X/ p6 m* w8 W$ B
  556. PLA5 V' t6 t: D. f$ H
  557. STA $BD
    ' l  q' J3 m7 G. ]. J! ~& u! l' K
  558. JMP $A000
    * |8 s4 U" a) D- x: e9 _1 V
  559.   G8 ^  k% q0 T& f
  560. FREE:                ; 暂存器保护* k; E1 o+ A+ l& N
  561. LDA $BD! `# C( n! }: K
  562. PHA' J) h* F# F5 w+ H5 c1 H' l; ]
  563. LDA $BC
    4 w* H3 r+ H- R2 l( N1 d; J! c* Q, l. ^
  564. PHA* y/ q. [. O, v& r/ F! W! D6 H
  565. LDA $BB: O6 N+ q( ?4 c* ~  f$ B( O& k
  566. PHA
    . ~" M+ r2 L8 \. n* u
  567. LDA $BA
    / J7 g; h- o# ]- @! P) o1 U5 A
  568. PHA0 ~/ Y( w( q/ q
  569. LDA $B9
    ( p6 L' w: [+ e8 i
  570. PHA8 t4 H: x) N; t7 T8 I5 Y( w
  571. LDA $B8
    . X  H6 g: J2 I: h/ J2 i) }
  572. PHA$ b% R6 ^) k2 ]8 H  u+ q, d
  573. LDA #$00
    : n/ y+ i+ Y1 ]( S( Z: W; f6 E9 j
  574. STA $B8
    7 U7 E8 m) d; z7 d- T) B
  575. STA $B9+ e5 W& W' C4 J; z
  576. STA $BA8 @7 }7 R4 \9 U4 }
  577. STA $BB
    ) f2 ^5 A2 \  p; `( r" `+ U
  578. STA $BC
    6 S+ x/ S  y8 Q9 q/ f- n
  579. STA $BD  r9 c, u" @' Z. r# [* U

  580.   J" B: F5 I4 o/ ^' f; y  x: Z
  581. WEAWRITE:                ;武器ppu写入
    ; Z) w0 v, F/ S4 y
  582. LDX #$00
    - K; v5 o: v7 x5 `0 i! V3 k3 I: d
  583. LDA $AA3 `& S8 d# `1 j: G  k
  584. STA $B9
    & ^( e. d0 b1 K2 O: ?: ~* u
  585. WEAINI:                ;地值初始化
    8 X7 A0 p! R: r. M4 x# P
  586. LDA #$A4
    $ p  d7 y5 M! U$ @% {8 J/ z  ]; o
  587. STA $BA
    4 g1 p  ]7 w5 @: H& ~. C
  588. LDA #$20
    $ W# H6 j" T/ x! s% z# t  [  ?- B
  589. STA $BB1 u+ U1 w& |* b9 X0 T2 O
  590. / \) S, l# e; @# ]% x- d

  591. 5 h8 j3 `+ a. P2 ]# D
  592. JSR WEA
    # ?7 w: L* v  M4 x2 T% L, m
  593. LDX #$00                ;武器ppu写入
    ' ]9 C4 L  H- I; w4 e; b
  594. LDA $AB- I5 _5 Q8 [; X# u
  595. STA $B9
    * {# c0 E' f! `1 W
  596. LDA #$B3. N% n2 b! b: k) f& i7 G' Y
  597. STA $BA4 n# R  B; K" P; [' n) y/ E
  598. LDA #$20
    3 X, f6 c. S% @1 B/ s
  599. STA $BB* w. H6 k' M: Q% J: q2 V

  600. . T# n% o+ {$ Q6 c3 ?
  601. : m8 X: Q8 I, t2 ~+ {
  602. JSR WEA
    2 M7 N6 p+ A' u
  603. ! _+ E! N" _) D9 D
  604. LDX #$00
    . L2 l( r9 ]* M3 A
  605. LDA #$E4
    3 Q9 `/ M' M$ j- R, |3 \3 J: t
  606. STA $BA
    7 T; S0 C  U$ }9 {
  607. LDA #$20
    # Z; N2 }5 `: d, _: W
  608. STA $BB5 |- T) b1 W+ ?

  609. + S( F/ J0 E9 J0 v, M" e* o
  610. 6 y; u3 T. C! i, `( j5 a
  611. LDA $32
      n) O6 N# S# S6 O3 i4 Z4 ^- @
  612. JSR PLAYERLIFE
      [" _& f: Y8 [% P( k" }3 |
  613. ; a/ M* s. f2 z" }5 j+ t
  614. LDX #$00
    4 b2 P% b$ k, G- ~5 y* P+ Y, a; V
  615. LDA #$F3
    6 ~1 z# o3 R+ q/ \* c4 u
  616. STA $BA, H3 d! U. Q  F$ s+ x
  617. LDA #$203 V1 f0 B. Y2 z# I2 F% e5 _% {
  618. STA $BB
    - ?+ A# ^7 s# P1 I
  619.   C7 G) F6 K) P( ]5 P
  620. ) ]3 r' ]; `8 W8 j4 \' b8 U, W& h& Q/ N# o
  621. LDA $33' p/ ]! {0 U$ g5 y: ]
  622. JSR PLAYERLIFE
    . B0 |# Q2 O* B: W* u) Y* g
  623. / S! q) [; `! z+ f0 O0 D7 f
  624. 1 w8 N* b/ U  C/ ^2 n: a
  625. JSR PLAYER_01_PPU" G' e# i; O; G: J9 V% I! M! O7 l
  626. JSR PLAYER_02_PPU
    " X# R* A! ^" \  b/ i

  627.   r# k! n9 T2 Z" g

  628. 8 e0 y( m& ?! z% J3 p( [( q8 z
  629. JSR PAGE_PPU
    6 Y9 k. L# z) f+ q4 A
  630. JSR PAGESELECT# I9 \, ^2 N: ^" u

  631. 3 L8 G$ Z7 i( y; }( l, m6 z; a8 S! Z' D

  632. / d% ]1 K! n6 {3 o% t  |

  633. & C( a0 B- y$ H+ X& V# G" r5 ?- Y. W
  634. # S, a0 ~$ w5 [6 D! @2 U4 w' J

  635. 7 j- t& K0 \8 k7 J* ^. }8 ^. ]

  636. 0 ?: M) r% N$ Q# C) ]( M6 k
  637. , |( [8 ^0 m7 x
  638. 5 }) J7 M$ Z/ V* O1 Y; U* l3 Z# S

  639. 4 H8 V! t6 ]* ~) H1 p; v, }
  640. 8 {: k/ q) y; Z
  641. ; \: D( L2 Y4 u! A

  642. - C1 D0 N' h! k

  643. # E4 d1 F; ^6 J; l$ i
  644. PLAPRO:                ;恢复现场
    8 g! Z" X6 A/ ?7 b8 D& d3 z8 B
  645. PLA
    $ c! ]3 ?" a$ G/ d& v7 {" I
  646. STA $B80 N9 H4 [6 f$ M  n
  647. PLA
    1 T/ y& M+ [$ ?) I; s% j
  648. STA $B9* r$ _$ [4 M9 _& B
  649. PLA) G5 u' f2 n7 D  v9 e1 d* x
  650. STA $BA- D1 p/ M/ G6 m$ P, z/ P
  651. PLA2 H- I8 ?& |7 P! b6 O, J7 D) c! w
  652. STA $BB. y" Z( ?! G8 O. A
  653. PLA
    2 Y# K$ n3 X, t+ P- A
  654. STA $BC/ Z& |2 M4 g9 {; L6 n6 Y) D9 F
  655. PLA% f" F1 g) x* L) E' C; |6 a! ^; V
  656. STA $BD. o5 w/ R$ i+ U9 s& E1 K4 }8 f
  657. FREERTS:
    + Z* h, r2 D( p: i: Z8 n; O& u5 U! }
  658. RTS
    4 @& A9 B  ]# p) K6 y0 ?
  659. 5 w& J* S* X/ P0 m; N0 ~+ q  w2 v
  660. INVINC_STRING:                        ;invincible/ T6 M& c2 _/ e6 m3 \, g
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    : ~; B6 o; p2 w, ~

  662. ) I/ w  j/ Y9 p/ T/ X- G& @' R. M
  663. INVINC_PPU:
    5 v( _, r1 I2 y' _# K+ p
  664. LDX #$00
    $ Y9 u# U7 x( x$ b/ V9 Y, s
  665. LDA #$62, H) q+ m1 @( Y0 z0 M8 Q
  666. STA $BA( o! X8 c+ C' f6 c/ o
  667. LDA #$21
    , E+ C& H, }! K# m4 w6 |
  668. STA $BB/ V. ]1 K$ i( g& t  I
  669. + @3 ^, ~9 C3 h+ S9 w7 S' _' m9 v
  670. & A' G3 Z) l- l4 w9 B7 Y
  671. JSR UP_PPU
    : k- k1 T4 Y. e. C$ t
  672. JSR INVINC_WRITE5 ~: c9 b- ~4 J
  673. LDX #$00# g# k  ^! c" {: P  S
  674. LDA $07A0
    $ U8 B: w& y& ^/ [; u
  675. AND #$015 s3 g; Q) @) F
  676. JSR ON_OFF_PPU
      ^: l( P' d7 N6 ~+ O
  677. LDX #$00$ w* K% ^) h& n  ~! p7 U
  678. LDA #$71( G/ ~1 t1 ^; g2 A; v1 b! W
  679. STA $BA0 C1 m1 F  h4 {3 W. V, u1 O" V, L5 K
  680. LDA #$21
    & M; }+ |8 E' a) p
  681. STA $BB
    8 T& d: }1 v% N$ P: P
  682. 6 }. C) j) k) N9 J" B/ G
  683.   ^1 G* b: P8 D8 W/ H
  684. JSR UP_PPU) l: S7 L4 R! D9 T
  685. JSR INVINC_WRITE
    6 r: `1 t8 d% _2 ]( q/ e
  686. LDX #$00
    % @+ D/ j, R7 C5 ?8 n% v! g7 B! o
  687. LDA $07A1
    ! P2 i% Q) I/ B, E6 v) B
  688. AND #$01
    : m* }: D1 R. u) K% k# ^+ r
  689. JSR ON_OFF_PPU/ _- g$ b# S; Z9 }0 S
  690. RTS
    # W2 n' W1 q$ q0 |) {( |9 |

  691. 9 ?) V  R) B1 I7 K. z  ]+ o
  692. INVINC_WRITE:
    ' T/ {" o4 Q8 h2 p% p" E
  693. LDX #$00# z+ s$ |2 W0 Q& h; k5 j. F5 X
  694. INWRITE:' {; a0 W- N* o# l
  695. JSR PPUADDR_PROCESS
      q( a" [" |2 y  ]
  696. LDA INVINC_STRING,X3 @8 k6 q" n' R0 s/ z0 N
  697. STA $2007: o! K: L. c4 `. x7 [' w5 B/ n5 R5 x. C
  698. LDA #$008 K9 A2 Y, N# }# n: X
  699. STA $2000
    9 I% l& m6 c% w: Z  V2 Y2 y: `, V
  700. INC $BA
    / _! B% ^# K4 E. k; c; S; P  e
  701. INX
    # Q* J0 ]4 D- M6 T
  702. CPX #$07
    * d, R/ w4 U' w* n
  703. BCC INWRITE
    8 e8 c: Y- w+ [- i- @: X7 |
  704. RTS
    6 @& T; x& K8 ?- F" l# q# e

  705. $ p2 k7 x' ?- s1 Z4 h( ~9 I( }
  706. ON_STRING:
    ) b3 O2 O2 R6 U" u" w2 N
  707. .BYTE $99,$98,$80
    3 ]/ @! _1 w% @5 r+ ~4 t

  708. 0 @$ [' M$ l0 V  b% \- r5 F; l
  709. OFF_STRING:
      A5 E1 _' t/ b% Z+ B- }
  710. .BYTE $99,$90,$90
    ; u9 C+ |2 c  E% ?3 ]4 r
  711. ; ?- u4 R9 d3 O; J. \
  712. ON_OFF_PPU:9 [8 M) P& v7 H) ]
  713. BEQ OFFWR
    / v5 p3 T- G! l" Q5 m( s
  714. ONWR:
    0 e! J- n& L4 v+ [/ m( c
  715. JSR PPUADDR_PROCESS2 y1 ]' J2 D- J5 e* [0 n  c
  716. LDA ON_STRING,X2 P" v8 h5 [1 A2 _% G: _9 ?
  717. STA $2007) j2 v8 e1 ^; d, `8 q- k1 I+ k
  718. INC $BA
    ! y+ z* n4 d1 d) e& e, V0 U
  719. INX& ]8 L- `  b3 z4 ~
  720. CPX #$03
    % J: {6 U$ _/ C6 A
  721. BCC ONWR
    $ n0 c& e& C: C+ O
  722. RTS
    ( j3 U" I) B6 b, _4 I0 o
  723. OFFWR:
    ( v7 d" E6 f1 n2 D
  724. JSR PPUADDR_PROCESS
    0 D3 w( O8 J2 w7 E
  725. LDA OFF_STRING,X
    ( ^6 N$ Y7 Z% R
  726. STA $2007! Z% f2 J) ^0 x0 J: P
  727. INC $BA) C- m6 Q! G) B, M$ h
  728. INX
      i4 q# j9 J! A
  729. CPX #$03& z; f; G4 }* l" x/ I/ A0 f
  730. BCC OFFWR, O9 ~( f) |# R# j0 r5 ]
  731. RTS
    7 T1 O2 F9 x2 W7 V$ O& i

  732. 8 q$ W& c# u. ^' F1 Q, p, c
  733. LIFELC15_STRING:6 g9 Q% d+ q7 v/ _
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80: |& C5 O0 r7 V! w- ]& s9 J
  735. 1 U; W; V+ [( n% V
  736. LIFELC15_WRITE:
    # w% y  X4 |' p! T0 W/ J9 l
  737. LDX #$001 M. R4 s3 B1 C5 E8 `7 B9 n
  738. LIFELC15:
    ' j0 N0 y6 ]9 W0 r. _* V9 R
  739. JSR PPUADDR_PROCESS
    : V/ H& _5 K1 k' g4 I
  740. LDA LIFELC15_STRING,X
    0 w+ O4 n7 Y8 T. f
  741. STA $2007
    : @% I2 m+ i# K* ~$ e$ D, C/ z
  742. LDA #$00
    ) b0 l2 k2 M+ k- Y% y; }7 T# p! |. o
  743. STA $2000
    / |0 W; I) Z. g; X( J' J# `8 x
  744. INC $BA
    ( L% Y; ]6 }+ c
  745. INX
    / t; p8 X- q3 J8 @4 h
  746. CPX #$07/ N: u4 w; L& l, a7 E" S; ~+ \
  747. BCC LIFELC15
    " I% v5 R: @, W* J+ |- j
  748. RTS
    2 T& ?5 h# Z, I4 B' e9 ^

  749. * U/ R8 d% v4 V9 E9 j  t. e: Q2 H6 G2 f
  750. LIFELC15_PPU:
    1 f  B, P1 [2 T5 p+ j
  751. LDX #$00
    9 G7 f" J8 j# A- o3 i1 h& [
  752. LDA #$A2
    ' a* [9 y/ E  @# l* _- _
  753. STA $BA* h8 r  r% h( v6 b8 `  s
  754. LDA #$21
    4 }# l4 r3 U5 s8 V! Z
  755. STA $BB* X) w) e& l$ W7 w
  756. JSR DN_PPU/ p$ Q' n7 b9 p1 C
  757. JSR LIFELC15_WRITE
    ) f/ Y4 R) g1 v: Q$ _# v9 ^
  758. LDX #$00" K- d: w) c: P4 b
  759. LDA $07A07 w5 A) k" i; ?; K
  760. AND #$024 o$ _. ?$ s, F8 t% S2 |( i
  761. JSR ON_OFF_PPU
    5 h7 p5 U( R* [' f
  762. LDX #$00; J  Q& R" Q7 l9 G6 W
  763. LDA #$B1) h8 Z5 O1 A7 z2 B
  764. STA $BA
    - V1 @) I, K' C: A% N1 e
  765. LDA #$21% v: l' T# [( a
  766. STA $BB; P5 j" F  M  k% d
  767. JSR DN_PPU2 C( I2 Z" t$ F  z
  768. JSR LIFELC15_WRITE
    , j1 H# ^8 {5 P1 W9 R
  769. LDX #$00
    6 B! j2 l: A5 h* @% }
  770. LDA $07A1/ o3 N6 K" n8 x6 g' X3 S
  771. AND #$02* [+ m7 e: ^# [8 ^1 ~( s. F
  772. JSR ON_OFF_PPU
    / }% A: Z/ c% K5 H6 F8 \
  773. RTS/ V+ ^  o' `' c: I7 }! H
  774. ; j$ w% F9 c* S  {% w
  775. DOUCON_STRING:
    ( S- I& l; k2 j1 ^( I4 `
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    2 E" |" \" b  C1 |2 o6 k
  777. ' @" `. d% s0 o: Q6 y; O
  778. DOUCON_WRITE:
    5 H' [! |5 i5 m, d' M1 A' Y
  779. LDX #$00: A! {% x! C( r( W% i
  780. DOUCON:3 @- p% C: V8 P- y
  781. JSR PPUADDR_PROCESS
    & o) u+ ]# {( P2 c
  782. LDA DOUCON_STRING,X
    / ]6 I' }1 Q- {
  783. STA $2007
    0 G$ E, k, s- N+ `: H0 M
  784. LDA #$001 R5 s: [) r- }% Q
  785. STA $2000% b+ v; v, d0 v" n: ]
  786. INC $BA
    0 C% g' V2 |0 j$ D' D) ]4 c
  787. INX8 q' f3 r( d5 l, i6 }
  788. CPX #$07
    + b( u5 l; X) U
  789. BCC DOUCON, p+ M+ p0 k2 S6 c% P
  790. RTS7 I$ `  a2 j, C$ Q( a& f6 n

  791. 8 k! m- u$ {1 a' i/ X7 F% y: H( L( j
  792. DOUCON_PPU:
    , W3 j+ @( h2 ]7 x! n
  793. LDX #$00: _1 |6 W8 K& P/ [) ~
  794. LDA #$E2
    " Q, H3 E/ v- G0 W% J  }
  795. STA $BA
    7 L9 p, r- t) W" ]
  796. LDA #$212 R  n$ b0 g/ ^8 }, `
  797. STA $BB
    * X+ ~% J9 Y1 Q* N. l. Q2 r
  798. JSR LF_PPU
    % X9 j( A! b& b1 m
  799. JSR DOUCON_WRITE
    # u" v5 `1 I1 D$ ~" X
  800. LDX #$00
    # H9 u  i' U2 Y* I: l3 V1 d
  801. LDA $07A0; _9 X* A3 i; e
  802. AND #$04
    * n# v( C2 r  w& z
  803. JSR ON_OFF_PPU- N% P6 m6 }0 Q  ?; ~
  804. LDX #$007 y: }# e  u# T4 G" p- A7 Q
  805. LDA #$F1
    ( z6 {3 l' V6 ]( i6 @
  806. STA $BA
    , U6 o- e/ \" u. M2 I1 m
  807. LDA #$213 X, q1 Z1 G$ t7 `8 z0 T: \1 Q5 }
  808. STA $BB
    % a0 y9 K! Q8 g! j$ C: _
  809. JSR LF_PPU
    7 u. M$ c: e1 ?7 G: ?
  810. JSR DOUCON_WRITE
    5 \1 [# |) `6 R0 Y/ O0 @
  811. LDX #$00
    9 z; j2 d( q( {0 `+ J
  812. LDA $07A16 j3 `2 L7 S' M% ?8 L
  813. AND #$04
    . U; B8 C' @2 _! B
  814. JSR ON_OFF_PPU
    - v; D- _' }* n! o. p' C9 t8 Q& S
  815. RTS( d$ l! ]0 ~. y+ }- p# a+ Q
  816. 5 u. e, c& D* X$ K" i
  817. LIFELOW_STRING:0 n* \% K3 E# }; x; o
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80$ H" p, Q+ }7 z% L" t( u
  819. ! h; J" B6 _5 Y, b# u
  820. LIFELOW_WRITE:/ l) t: z* U7 P% V4 M
  821. LDX #$00
    9 O& q3 M0 Y1 N! Y5 L
  822. LIFELOW:  Z7 T' C1 Y' x- m: }% v% \2 U9 C4 B
  823. JSR PPUADDR_PROCESS
    ! W6 Y$ }3 }& a7 r
  824. LDA LIFELOW_STRING,X
    / y3 _4 |* j% M; L, C3 W( D
  825. STA $2007! X3 d- _2 N' e3 k: d$ l9 b- n. V6 @7 _
  826. LDA #$00
    1 _( |7 |9 `8 y5 v' M) S
  827. STA $20000 @6 X6 `+ l& @
  828. INC $BA
    " R/ q% m* _* x* a
  829. INX
    6 e; \  m" N& u1 {5 H
  830. CPX #$07
    7 t6 e# g0 o# Q! Q' B
  831. BCC LIFELOW' e% O; \% y, v+ r) y
  832. RTS
    . E& B& c/ L% z4 ?! G

  833. , Q9 W& F. H* n6 i) P) [. i
  834. LIFELOW_PPU:
    1 _- Q$ [7 |; n% K
  835. LDX #$00* b. G# S0 X+ l$ C; q- m
  836. LDA #$226 C6 g/ j: B8 {  y0 m- d+ Q3 b
  837. STA $BA) E/ I" G' \4 t/ H
  838. LDA #$22# C+ a- v  N$ u5 C5 N5 Y3 U
  839. STA $BB* {2 S# G* r2 B' u: T

  840. ; C$ X# ?7 U- t- @0 w

  841. 2 @3 b7 V) [2 x& g2 l, q
  842. JSR RG_PPU: p! m8 Q1 z3 K
  843. JSR LIFELOW_WRITE
    $ [0 A* t; W5 w9 g
  844. LDX #$00$ f) V/ x* P" m* J, x6 A1 P: z. ~: M
  845. LDA $07A0
    + a! F+ t' t# u7 S6 N, T0 L' d
  846. AND #$08
    ! \0 u, S) x! I' L. i. n) s4 @
  847. JSR ON_OFF_PPU
    7 m. N8 }1 E- d+ _. Z9 G
  848. LDX #$00/ j) [9 H+ A' Z- \
  849. LDA #$31
    : U. }0 y) t: p- j$ C
  850. STA $BA* W5 G9 r  R# x# P& b
  851. LDA #$22! o* t# l. Y" B* Q
  852. STA $BB
    ( ?0 r1 V2 C( G, T8 f' N7 G$ a) a

  853. 3 t% a( y) n. k9 L1 n0 y5 ]! i
  854. 7 z. x: R4 ~) ~- g( F6 l
  855. JSR RG_PPU
    ! I2 p$ ?& c/ }% Q( y9 Y: v
  856. JSR LIFELOW_WRITE0 O  S' s5 Z* ^+ U8 P4 b
  857. LDX #$00
    ; C  f  W2 \" p+ X8 Q* O9 T' F
  858. LDA $07A12 D) T1 [# W) s5 s6 z
  859. AND #$08. i$ P9 c" B' f3 T: ?
  860. JSR ON_OFF_PPU1 _5 i0 j6 \6 Z
  861. RTS
    + I- o/ k4 H$ N
  862.   b9 S( S. Z) }6 I1 j7 C+ w
  863. KILLON_STRING:9 M% K% m. U6 ~! s# N8 g- j
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    ! E( X9 j5 A9 T0 O$ c
  865. 5 ^* O+ S5 ]( p, w: q
  866. KILLON_WRITE:
    , S& }- w) S) a
  867. LDX #$00& N1 d! E- [0 ]/ Z5 V
  868. KILLON:
    / `. u2 e1 }. @% a" b. Q
  869. JSR PPUADDR_PROCESS
    8 g3 y) c( R  F  f
  870. LDA KILLON_STRING,X
    9 J4 j5 z1 B7 w3 }" ^; x1 z
  871. STA $2007, O$ V6 T- E  I
  872. LDA #$00! ~- Q5 M* O1 f& D( _3 Q) U$ G$ |5 V
  873. STA $2000
    8 x2 m  Q' \7 m- k5 o5 j
  874. INC $BA3 j) V5 U% J' P$ X. r9 ~" A
  875. INX' ]0 [4 t0 z3 y2 j; Q
  876. CPX #$07
    : ~2 g. z8 Z' T2 A
  877. BCC KILLON1 e* u% r% @- w9 q
  878. RTS
    0 u% @; _. x, U6 U# N! V3 r
  879. 9 _1 g6 J4 f7 q9 J) @$ G( Y+ ^* h
  880. KILLON_PPU:
    , X4 C$ ?: h2 s, {3 y" g9 t
  881. LDX #$00
    ( j" l9 Z0 p, {9 Q& d
  882. LDA #$62
    # \8 C4 G& q. [. j# m  H" r" W
  883. STA $BA
    ) A7 L5 K# P- q7 I- d3 b; L8 V2 _
  884. LDA #$22% d9 x3 A1 O" {' X3 I
  885. STA $BB
    & \2 t( m) y- Q/ J# a

  886. , n8 R# N# A* X, |) a* B

  887. 2 Y+ b" W& ~& U. K- z" j* L1 x
  888. JSR B_PPU
    6 @7 x) z4 g' r  _& h
  889. JSR KILLON_WRITE
    2 N: T* L9 c5 N/ L6 o5 R
  890. LDX #$00
    & j: ^1 Y4 I( v
  891. LDA $07A0( _% |8 _/ O+ @5 L6 v$ t
  892. AND #$108 d& y, ]% n9 W* e% s
  893. JSR ON_OFF_PPU
    0 h% C3 j5 y. X. Z: X
  894. LDX #$00/ e! M  r2 V% K8 |4 s
  895. LDA #$71' Z8 K7 m# N* w
  896. STA $BA8 i4 b- ^( O) x  p" b2 {; c
  897. LDA #$22
    # r0 z& Z$ I2 S
  898. STA $BB; A+ ~/ _$ j4 [) B  P8 e& y

  899. & {+ i, F# ^0 Y: M! i) W
  900. + m3 Q* y" z0 P+ X$ L/ k$ Y
  901. JSR B_PPU& ?# h; T. W( ]# v# b8 Q0 U1 V
  902. JSR KILLON_WRITE7 h2 k) f$ I) Q; o
  903. LDX #$00
    , Q) X0 R) a2 F6 D, d
  904. LDA $07A15 c$ {8 B3 i* u# H0 F% y: ?; f
  905. AND #$10
    8 {, ~$ l$ x$ m% }# S: ?
  906. JSR ON_OFF_PPU4 ?  J+ x& O0 D/ Y
  907. RTS& l5 ~8 i$ C' S& v' |1 A, @
  908. 2 D1 v7 Q: |) d' m. B
  909. SKYFLY_STRING:$ c  B; X# d7 z! R1 |" B
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    4 N8 E. ]  b% ]* O7 a- [: |

  911. + i( c& c6 Q- H' F) e  M+ ^9 w
  912. SKYFLY_WRITE:  ]# g' e, _- H9 y7 Q% v
  913. LDX #$00
    6 e" B2 {! J7 @! N
  914. SKYFLY:
    $ L, d  s. M+ s9 j
  915. JSR PPUADDR_PROCESS
    : T! }2 M! ?% _/ a. u- l% t6 u4 K
  916. LDA SKYFLY_STRING,X6 V$ q8 x) J' l. R' h5 s8 c
  917. STA $2007# c& \' v2 F2 }" n2 c; Y* z
  918. LDA #$00
    # L6 Z  e2 V* D
  919. STA $20002 t( `8 x) v8 v3 B
  920. INC $BA
    6 i% N+ ?: h7 Z0 X; _0 x( k! `# d
  921. INX& y. {- ], X. @5 _3 f  `; z0 s
  922. CPX #$07
    # g- ]9 }8 E7 X% n& m
  923. BCC SKYFLY
    " z# j# a# W0 L/ c
  924. RTS% L0 q% b2 z5 N# s8 s

  925. 4 {/ G  b. [* R' g
  926. SKYFLY_PPU:
    : P: E6 q8 H4 E
  927. LDX #$00* t; B7 n! U: s  f
  928. LDA #$A2
      V& m& X9 P" E5 j! i% b0 B
  929. STA $BA
    8 G  [4 U% l" ~! `/ h9 ]; ~
  930. LDA #$22
    0 I  k6 B9 T. ~7 e7 D" v
  931. STA $BB
    " {3 \  j# F1 E4 l  h( \8 R" Y6 B
  932. ; Z3 n0 H8 U5 y: M  W9 y
  933. ! z& L6 n- _6 ~/ a3 x
  934. JSR A_PPU4 ^! y% A' j" k4 D
  935. JSR SKYFLY_WRITE: p& p' c/ h7 I8 A( Y
  936. LDX #$00
    & h# X' ]4 y7 J2 u
  937. LDA $07A0+ @7 S: |$ m6 E5 n
  938. AND #$20  P" P8 l  U, }1 ^! g6 |! B$ A
  939. JSR ON_OFF_PPU4 \/ F( D; t9 {! I
  940. LDX #$008 \+ `0 a/ z9 A9 t: F
  941. LDA #$B1  L, T! m. J2 I: X
  942. STA $BA! [  \' a$ w) n; S
  943. LDA #$220 K; w1 \" `, s$ W$ M* `) X
  944. STA $BB$ \, Q8 m9 h: J3 d9 J

  945. - F8 U( ]" M4 L

  946. 3 j- a( r+ X6 }! @+ R5 ?2 ?* L
  947. JSR A_PPU  D1 C' `+ @  k3 Y
  948. JSR SKYFLY_WRITE
    ! d% Y' W9 U3 I& ~9 o* h4 g
  949. LDX #$00# ]7 a6 [& ~' N+ V4 a- k/ R3 h
  950. LDA $07A1
    - I* d# C$ @8 {% I
  951. AND #$205 P+ M  i2 @1 P! A
  952. JSR ON_OFF_PPU5 x$ _' x0 `! F% v4 r$ N
  953. RTS4 A" L4 ]0 U4 D( W1 G' \- m
  954. " b/ D& \" R# f! m- L# @( a, x: g
  955. BULADD_STRING:2 P: g: n' a6 J+ u3 J
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80/ Y8 c9 b9 @2 B" g9 G
  957. + J1 a9 V. h' Y/ C+ y/ t# j) b
  958. BULADD_WRITE:
    * K2 F( c# x: o0 P# R$ M0 j' ~% W  @
  959. LDX #$00
    2 o0 V; H0 `9 p) q5 C: \1 d
  960. BULADD:; S* Y) e* H% l4 [9 y' B
  961. JSR PPUADDR_PROCESS
    9 }% z9 e1 M( P7 }6 d0 ^" w
  962. LDA BULADD_STRING,X3 b5 `+ L& H" F
  963. STA $2007% v5 i# M9 A( U6 e
  964. LDA #$000 ?& l, M4 B8 O9 S7 f8 S6 {- f
  965. STA $2000- T8 R$ {; b9 k( a* J
  966. INC $BA/ ~4 K6 P: b) _; I1 {
  967. INX
    # c0 V2 w& Z, @' V" K7 T
  968. CPX #$07
    3 T6 }# o2 p- w1 a2 G2 I
  969. BCC BULADD
    0 I( i* e+ {; E$ _; ~4 F( V
  970. RTS: @7 V. X) w% J- a

  971. , O' p/ l: g& ~: s6 p4 Z
  972. BULADD_PPU:
    7 G9 o( I# C  a0 M8 e7 o9 n
  973. LDX #$00  C0 [4 j# W. u) e' Q2 O, I3 ?
  974. LDA #$62. p- q& L( T6 T! y+ |( s5 A0 X
  975. STA $BA& H+ ^! F+ T! H: D8 D2 p
  976. LDA #$21
    # |1 v. [& y2 F; ^9 E
  977. STA $BB
    4 I$ \9 W* n3 `8 S
  978. 9 r3 R) M9 ]9 L$ p7 o3 P+ A" W  P

  979. , J- R# d% }) j
  980. JSR UP_PPU) G1 ?8 i" K) u. x% k% l5 h
  981. JSR BULADD_WRITE
    0 j8 I; k4 b0 |* S. G' y/ y7 S
  982. LDX #$00
    3 D  F0 z+ Q) |7 V$ `7 c( _' t
  983. LDA $07A2+ s" t* ]+ w0 E$ N! ~8 r
  984. AND #$01# W3 w% z% v0 f5 S8 f% Y
  985. JSR ON_OFF_PPU
    & G4 C6 G) H/ D% w& C- v
  986. LDX #$000 |! O) I2 b. M1 }
  987. LDA #$71
    " N- y9 @" _$ n8 Z6 B9 @
  988. STA $BA
    ! P1 b5 W9 Q0 L3 Y* j$ b0 e
  989. LDA #$21  L" q( k+ L' i1 R, R8 M; J
  990. STA $BB
    * p& w; v8 d* L$ i8 N

  991. 6 _  p# v) }& C5 Z6 `. t4 A
  992. 2 K6 \0 P4 B  s7 F) e' Y; \
  993. JSR UP_PPU
    - N7 a, w. P7 k5 S# `* J0 D* D4 W1 `
  994. JSR BULADD_WRITE
    7 i+ r7 h. R$ r# z
  995. LDX #$002 P( w% Q; x9 z
  996. LDA $07A30 v% F! |2 O+ c) C3 ]* L, T( L2 c' \
  997. AND #$01
      z+ t( C: \+ u* Z1 Q; U
  998. JSR ON_OFF_PPU
    . |& X3 B5 O- h' x7 B& [
  999. RTS
    ) h" O1 o% \$ `
  1000. ; I: D2 A3 Z1 W9 f4 n
  1001. MENU_PAGE_STRING:
    2 h3 v- ]& b2 ^. U2 T8 c. ?! `
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    / y; W  w' u: v/ i- y

  1003. # |! s& V% `' e) f! L& S0 Q
  1004. PAGE_PPU:
    % G( F& ]! O) N; l& F9 ?# H& U3 }; ?
  1005. LDX #$008 |% I5 a' f( r0 ?! z# o2 ~: a$ z
  1006. LDA #$0A
    / S" W2 D; G6 x
  1007. STA $BA
    ' {/ d6 a( W6 V; }* w: |
  1008. LDA #$23
    2 ?$ Y7 q* f8 y& e! N
  1009. STA $BB7 E. a5 _4 ~5 h2 [5 m

  1010. 4 F6 C9 P, R% t3 Y) z# d

  1011. / C8 y6 ^, n5 p
  1012. MENU_PAGE:
    - ~7 t/ q1 _6 E3 h
  1013. JSR PPUADDR_PROCESS
    ! a" C. R  v7 \$ [) k
  1014. LDA MENU_PAGE_STRING,X/ j2 q* a( `7 R; C9 ~7 a
  1015. STA $2007
    1 p0 C  d( ]) V% }+ d! t) K) M6 T% o% ?
  1016. LDA #$00
    , z0 J2 u' C. I
  1017. STA $2000! m$ ~3 D1 t0 }4 G4 H8 E
  1018. INC $BA
    0 }. i! g7 e: E4 v+ v* Z( _
  1019. INX% M  |4 `% g/ J' [! f& P
  1020. CPX #$0B
    3 M; d5 Q& @: {
  1021. BCC MENU_PAGE  P) a3 F% k0 K4 k
  1022. LDA $07AA. R0 I7 n" b$ T" b/ P9 Y: k
  1023. CLC
    9 u, b0 ]. t: t+ r4 ^7 J1 I# Q
  1024. ADC #$824 U3 }4 g4 \# e" a/ G2 R5 V
  1025. STA $2007& N  l! |" c8 T/ J
  1026. LDA #$00
    & q0 g# T* y0 }' r5 t
  1027. STA $20004 m) i7 o8 G! o$ W
  1028. RTS
    1 ]1 y1 l1 v+ y

  1029. 6 I3 P8 }% e& j) L
  1030. & y) e  d: X& T6 C
  1031. SKINGE_STRING:
    - ]8 m1 A# u9 B2 A4 `2 v% e" H3 @
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    2 P6 U' J  v3 M6 s/ T3 z
  1033. ( q# H0 @, S# H1 W) `
  1034. SKINGE_WRITE:! d; S/ k% Y+ g" ]5 O  u
  1035. LDX #$001 m7 \$ ^' O8 t( ^
  1036. SKINGE:
    2 @5 E3 {  M) k% H$ P5 k4 L8 w* T
  1037. JSR PPUADDR_PROCESS$ A0 n& N) u" K" i. d/ O
  1038. LDA SKINGE_STRING,X
    ; e& M! e1 m. K* r9 L" o3 q
  1039. STA $2007
    / |6 A( X  T( e+ l
  1040. LDA #$00
    & }; y2 P' ]& m4 X1 A5 j
  1041. STA $2000* ^1 C2 D' B' a. p$ {
  1042. INC $BA
    4 k- P' G: D" j$ }
  1043. INX
    - P$ f  N! w5 c) M) \
  1044. CPX #$079 e+ x$ n3 p) c& J1 f3 I7 I' p
  1045. BCC SKINGE  ?- C+ @9 n4 h7 X4 Q* C* x* G, l
  1046. RTS! H. e, `) U7 T! \
  1047.   w1 F/ m, x% h
  1048. SKINGE_PPU:
    0 `0 ?4 \, S" s  d) j* I0 P" l
  1049. LDX #$004 f( h% V7 H$ f5 g
  1050. LDA #$A2
    . L4 {; n: m0 b4 W
  1051. STA $BA
    ' \% L! f8 [& p6 y! g
  1052. LDA #$21
    # H* w  l  j) Y( [+ F8 v, y+ A" W
  1053. STA $BB+ e! o. Q' {8 K3 x: R
  1054. + C. b% f" \7 i6 q0 t0 N+ _; W( ?
  1055. ( |, w. n% ]$ _) j% v4 C. T3 e
  1056. JSR DN_PPU2 o1 H* K9 `& q/ m+ Y- k( [' g
  1057. JSR SKINGE_WRITE
    ! I( r+ F" F. [+ C
  1058. LDX #$00
    # k3 e4 B% Y+ {2 W7 E
  1059. LDA $07A2  ?+ j4 Z  I+ z
  1060. AND #$02
    7 z# A, _$ O; c/ e: W
  1061. JSR ON_OFF_PPU
    6 O. N+ K+ u: P! L, A
  1062. LDX #$00
    . k( s4 C: V' J
  1063. LDA #$B19 z: U2 ?5 u2 b8 _' \" S' l& i  j
  1064. STA $BA
    " Q  N0 x9 k$ w: K/ j5 _# s
  1065. LDA #$21+ n8 k. Q4 R/ O
  1066. STA $BB
    ' i0 p9 A+ p( A1 I9 h6 e, l% M2 D! j
  1067. / R* ^  G: K4 J% G  V2 W

  1068. 3 Z* I% Z/ x$ l  k; s
  1069. JSR DN_PPU
    % U- }" s3 T3 h& n/ B
  1070. JSR SKINGE_WRITE/ v  M# k6 h9 g( ?/ q
  1071. LDX #$00
    3 i% m; w; k: _6 r% G# z6 H
  1072. LDA $07A3( f# u8 W: f) o
  1073. AND #$02# ?2 q7 Q0 d" c1 p" t6 c' d
  1074. JSR ON_OFF_PPU
    : R- h, e, d  F& N% f
  1075. RTS
    + }8 ]( I- m1 j6 F7 d+ n
  1076. ( M$ J5 y. ?: f8 \* A& X7 S2 U
  1077. BULMIX_STRING:6 g& m# u7 T3 b  ^  u! {, U
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80
    + `9 L' r/ T/ j$ z3 Q- |

  1079. 5 P! B: `: v7 [& w
  1080. BULMIX_WRITE:1 L" J, @& W# Y  N
  1081. LDX #$003 z- x' h7 x% u4 O' _, m
  1082. BULMIX:
    5 ?$ B$ n6 M( g
  1083. JSR PPUADDR_PROCESS8 r3 D+ v  ?+ {" l2 K
  1084. LDA BULMIX_STRING,X
    & T, ?7 P& B+ o, S
  1085. STA $2007
    7 i) u  f& q' K
  1086. LDA #$00
    4 ]7 W; |6 i+ G3 e4 T
  1087. STA $2000
    0 A9 l+ ?) D! d1 f
  1088. INC $BA1 w6 P3 P, A! v0 @, c) y. N
  1089. INX4 i8 g5 m' x% R3 F8 N6 s3 F9 s
  1090. CPX #$07$ Y; V" A8 N/ u" Y% t
  1091. BCC BULMIX3 K' ^1 f2 E' b* q- K4 e  A- C# g
  1092. RTS
    1 i! Y9 l# v. K3 h0 b1 W
  1093. : o* c6 H' a$ g9 O
  1094. BULMIX_PPU:; H0 r) }) D; B
  1095. LDX #$005 \6 a& M9 |) g
  1096. LDA #$E2
    5 V& P4 T! ?6 m9 E2 g
  1097. STA $BA3 }& @8 g( a, m( m1 C7 H
  1098. LDA #$21
    % f+ W' o) t$ }" @! m) X
  1099. STA $BB: f+ r6 s2 Z* Q3 o
  1100. ( ~+ f% d+ L+ z. r
  1101. ' K$ o4 m4 t0 v
  1102. JSR LF_PPU: e3 n7 P! H3 N) |& `% J8 H8 L
  1103. JSR BULMIX_WRITE
    , s+ |# F# O4 O
  1104. LDX #$00
    1 O- F: L* h8 B1 I% R1 A& O
  1105. LDA $07A2, o, D2 F) G/ W
  1106. AND #$04- g" [  r7 j& v
  1107. JSR ON_OFF_PPU! I+ [. X5 Y5 X" K
  1108. LDX #$004 z( H7 K5 p6 ]6 _5 r8 H
  1109. LDA #$F1
    ! w3 Y! ~% z% n2 n) J* S; o. L
  1110. STA $BA
    4 z  q5 v( m' r9 Q3 U9 s: i
  1111. LDA #$21
    # ~4 [9 T3 V: Q* X( i, i
  1112. STA $BB( u; n) C) n; a/ T5 `/ b

  1113. " i  _! @* Q5 n( H: i
  1114. % @  r- p+ F2 N; K. u+ O) N
  1115. JSR LF_PPU/ J, J% Z/ e6 \
  1116. JSR BULMIX_WRITE7 s! n0 p6 v  P6 q
  1117. LDX #$00) _; G! N3 J$ G. G+ o
  1118. LDA $07A3" O' S* i: e: W6 {
  1119. AND #$04
    8 b7 M5 w6 V) P% _- @
  1120. JSR ON_OFF_PPU
    # n2 h) V) B. [8 \7 p  U
  1121. RTS3 s: Q! O* P8 \/ ~# U4 R
  1122. & I$ d' ^! r3 A0 H5 u
  1123. ENELOC_STRING:6 T! I: g) _* ^7 n: C
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    3 _& Q$ n  C; e5 ?

  1125. " `& W& v5 i8 p7 X$ i" r* ?: [
  1126. ENELOC_WRITE:
    ' r& ~; r$ a, {5 D
  1127. LDX #$009 p0 w( I3 T8 c3 l( F
  1128. ENELOC:* ]3 z. `% H" S5 ?- p, L' l
  1129. JSR PPUADDR_PROCESS- u, k# d2 t7 B3 A
  1130. LDA ENELOC_STRING,X1 h& _! ~7 \" Q" D2 N" G* P
  1131. STA $20076 p0 T. a; r1 K6 R1 D- `2 A
  1132. LDA #$00
    % g5 B- m- O( H; _$ b
  1133. STA $2000
    2 f: c8 _6 ]. _
  1134. INC $BA* T4 [+ r6 K! Z
  1135. INX, d4 i; H; \0 {! ~; S4 N5 R
  1136. CPX #$07" r, s; {0 d0 D: C  O; p
  1137. BCC ENELOC# g6 ^0 S1 Y- }& g' u$ t: L- G
  1138. RTS  }5 W1 r+ ^9 \1 ~  l
  1139. : N6 ?- J, H) f' w
  1140. ENELOC_PPU:
    * c% f+ i  M/ ?
  1141. LDX #$00
    ( U+ j( ]% I$ Z9 x/ v+ r
  1142. LDA #$22
    ) E# h; r$ `- k6 g" z2 c! l
  1143. STA $BA7 |$ x  @6 S5 T5 ?  z
  1144. LDA #$22
    9 w( k8 m  ~9 `9 L5 g
  1145. STA $BB
    " o( J" z" s* h, K8 ^% [

  1146. 0 X8 u3 Z8 N$ @) e) H1 [9 q
  1147. 3 }* \7 `0 W/ |4 Z/ ^. c
  1148. JSR RG_PPU
    : f$ U* f; e& q
  1149. JSR ENELOC_WRITE
    $ [1 q; g# x9 v# s. \
  1150. LDX #$00
    . z4 u9 _2 v, L4 D' K4 X- ^/ B
  1151. LDA $07A2! t: }, ?- p* e/ z, K
  1152. AND #$08
    9 Q. e; E/ v3 W( K& R: ]
  1153. JSR ON_OFF_PPU
    4 w- a$ @( Z' s% o1 C
  1154. LDX #$00+ I) ]5 m* _9 c+ O: {8 A) `8 s" c
  1155. LDA #$31
    ' R7 A, w5 c8 L1 z! E! R3 _  l) }6 b$ b
  1156. STA $BA- M- X# j" X/ T3 Q  g/ U
  1157. LDA #$22/ ]. ?7 R# }# _, M; P4 j$ ]
  1158. STA $BB
    / P% Y; _' F* c" W- S9 y3 T! D
  1159. - U& ^) W) C" c5 I3 z. f8 Q4 r
  1160. , w7 I4 d$ X% }( W
  1161. JSR RG_PPU
    9 N5 J/ k$ C7 e( u; r0 i* I; ~
  1162. JSR ENELOC_WRITE
    + B0 v. |* y: y. m! F, w
  1163. LDX #$00
    $ l0 m" H( ^" P5 `8 ]
  1164. LDA $07A33 I! O* @' m. ~, M" J5 a) s( u
  1165. AND #$08
    * G$ T( p6 L8 v' _: h
  1166. JSR ON_OFF_PPU+ z; d% ?" ~! c5 T! t5 D; N/ _
  1167. RTS) p! b% {6 B& l+ L1 z  U2 Q

  1168. 6 q# Q- _6 G  f* P9 j: e5 x
  1169. FOCFUL_STRING:. u+ p5 q/ y4 l3 k+ U
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80- F& |, l( x! o3 N) v

  1171. 8 d8 d0 e' T- k. ?+ s
  1172. ' q/ C, L$ Z, x9 F# k; d
  1173. FOCFUL_WRITE:
    2 H& N) z" p# k# h$ J- c2 w
  1174. LDX #$003 w! }* q6 p; O
  1175. FOCFUL:. J1 y% s  z# ~. }4 u5 {
  1176. JSR PPUADDR_PROCESS- G7 d- L% p1 p5 U! J1 \& ]& R
  1177. LDA FOCFUL_STRING,X
    7 s4 v- L! J, \% N  D3 Z
  1178. STA $2007
    1 x1 |7 `0 {8 ]% Z1 r4 @
  1179. LDA #$00
    ! l4 K; X. y2 B+ _% ~' ~3 `
  1180. STA $20004 k, h% ~* P2 k: E' x. J
  1181. INC $BA
    , {8 v0 Z( H! G7 _) R; z* |
  1182. INX
    " B: m3 t5 T0 @: }
  1183. CPX #$07" q' M' E' F1 N* j1 W+ Z
  1184. BCC FOCFUL* B2 D8 l9 H$ y2 w8 ?- p
  1185. RTS
    1 _+ @9 X0 o% |( E0 r

  1186. 8 M( @1 h0 c' N. r/ L" ]5 @
  1187. FOCFUL_PPU:
    " b3 U3 f" t! Q% O& q# p2 L. C5 ^
  1188. LDX #$00; i6 }$ T6 x* X1 u/ T: Q5 V
  1189. LDA #$62
    & ^7 Y1 v6 h3 U: i2 i' _
  1190. STA $BA
    ; D+ a4 f9 I0 e  Q. Y! }
  1191. LDA #$22
    & V! x( r1 n* N- b* `
  1192. STA $BB4 i! R# q% O9 K  _$ c# P

  1193. 8 h9 Q* w3 |/ z; m5 Q
  1194. + x% A+ q& X% u0 c7 k0 A  `+ X' B
  1195. JSR B_PPU
    ; D8 S# m4 O  o- r
  1196. JSR FOCFUL_WRITE; M/ ?7 K2 S9 E. [
  1197. LDX #$00# C- w5 n2 e2 n0 k9 A+ F
  1198. LDA $07A2
    3 B# x/ z( n6 @
  1199. AND #$10* k* q  E1 j$ Z& J* F
  1200. JSR ON_OFF_PPU
    # l+ D$ G: K. R# p) X( d
  1201. LDX #$007 F& x: p; G8 @- j5 ]: a% n
  1202. LDA #$71. p8 K' D$ [6 o  D6 O
  1203. STA $BA
    7 z4 x9 h2 H7 k
  1204. LDA #$222 t% q! v3 Q/ c) y) X8 V+ |
  1205. STA $BB
    + d0 g  n% H) Q" t

  1206. & c& u) t& q5 o8 t
  1207. . G* E  L7 S6 W, [  D4 ~, s
  1208. JSR B_PPU3 M( G# ^4 F- H5 Q5 N. k
  1209. JSR FOCFUL_WRITE( |6 e. f# _9 v2 F; S$ m
  1210. LDX #$00
    7 T, b4 G  Z4 _/ d5 k. O7 H: e4 E
  1211. LDA $07A3
    4 ~, B3 W  ^: B/ l9 G$ Y
  1212. AND #$10% P) g4 ]2 q) R& _% B
  1213. JSR ON_OFF_PPU
    3 V& @# l- I5 T& H0 s
  1214. RTS
    ; a  U& [% [+ H# f
  1215. - l$ j0 P) }: f1 W8 W0 ]# v
  1216. BULCON_STRING:2 h1 d, K3 I7 s, b" F
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80
    1 z" x) B; [0 n3 U  }! M! ]

  1218. ; K. f' f  S3 J' Q: s
  1219. % b4 z3 M9 f3 C! I! ~0 Y
  1220. BULCON_WRITE:- ]0 c5 @0 U( \0 y
  1221. LDX #$00/ [) F) K& o. s9 a: {8 }
  1222. BULCON:; D4 [3 w7 c# S1 _: |  l
  1223. JSR PPUADDR_PROCESS" n3 E8 R/ K! c+ E# g, Z2 ^. ^
  1224. LDA BULCON_STRING,X& b( _  l& Z% ^$ ^4 S7 y
  1225. STA $2007+ U5 i1 l( N* T! t/ B# Y
  1226. LDA #$004 ]8 h3 r4 i8 O
  1227. STA $2000$ ~7 A5 O1 U! E% n
  1228. INC $BA  n8 b2 Z1 U  z3 {( s5 p, o3 g0 F
  1229. INX+ ~2 h1 o3 g$ q1 @3 W+ |& v
  1230. CPX #$07$ P& b- p* L0 j
  1231. BCC BULCON0 q5 L, N) U& d. ^# L" a" E5 v
  1232. RTS3 q- K0 p: y! x8 z  J. @

  1233. & j! X! [! E* V6 I7 x4 g
  1234. BULCON_PPU:
    3 ^" q4 c0 a4 i
  1235. LDX #$00
    # q+ k) r9 m& V; o5 v
  1236. LDA #$62/ e' R  H, y3 s( l
  1237. STA $BA
    5 o1 j0 ~: c4 G( ~0 y" x! v5 J  _9 Z
  1238. LDA #$21
    & l4 o3 W# N+ U7 o+ l
  1239. STA $BB
    * s. K4 v& Q- c, k: n
  1240. ) \# s# a# l& c3 C; b& }2 m

  1241. . @8 x9 l, B" x( C" Q/ K, G
  1242. JSR UP_PPU2 \; l* Z- \) S- i& t8 U# l
  1243. JSR BULCON_WRITE% r6 A  U# a/ @3 U! ~
  1244. LDX #$00
    * Q( b8 S' x# e" p: v' P; I5 z
  1245. LDA $07A4
    ) K4 N7 t4 b* A* ^
  1246. AND #$08
    . g; K" ~, }  o
  1247. JSR ON_OFF_PPU
    8 D  p  v' U$ q% w
  1248. LDX #$00  E. [0 X* M0 v6 m
  1249. LDA #$71% C* t9 B# p6 G3 x
  1250. STA $BA5 m# T0 |6 S2 Y+ _
  1251. LDA #$21( q, H. M0 a- Q. G4 }* l; o( U
  1252. STA $BB
    " J9 \& T& a: p+ k/ M9 a
  1253. . j$ U4 |* S5 c* n1 d6 K) W
  1254. . i* ?4 O$ Q+ P
  1255. JSR UP_PPU
    8 V: J+ L3 U6 |7 r) o
  1256. JSR BULCON_WRITE' C3 g$ h% k8 A% R
  1257. LDX #$00
    9 Y6 ^! Q$ @' e9 G
  1258. LDA $07A5
      k* S  p) k4 H2 [
  1259. AND #$08% H9 D# v6 a3 G% P& i' U1 G
  1260. JSR ON_OFF_PPU# k- G- R2 e; V; o$ _
  1261. RTS
    5 i2 D+ P" s0 c! \" i

  1262. 4 }+ m" v7 ?* ?6 V0 f
  1263. SPEBUL_STRING:0 h- m, b. ^* o( C
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80" x# a2 L& u; ~; `  I

  1265. ; n! `0 h+ M6 R9 h6 |/ r- M
  1266. # m2 p: z$ {7 e0 T. ?* [2 G$ ?. G
  1267. SPEBUL_WRITE:
    0 q5 l5 _7 J- I
  1268. LDX #$00
    : U+ k1 l- F# C; l$ l- k
  1269. SPEBUL:5 E- ^1 I  k) v9 V
  1270. JSR PPUADDR_PROCESS* D% b6 e- {) `) ^5 N1 v0 }* U
  1271. LDA SPEBUL_STRING,X) w( ]: Z% H0 n
  1272. STA $2007  P7 w4 G$ s  I- ]9 l5 z
  1273. LDA #$00
    * t* p: P5 q7 {
  1274. STA $2000
    # C! C+ u3 [7 \
  1275. INC $BA, I. a8 p& g! K& `- |" h( `
  1276. INX
    - f' D0 w5 \% H% |. |
  1277. CPX #$076 H! v& B& _. q  @- ~
  1278. BCC SPEBUL
    5 @# N( ~- [/ E9 S: p8 j* l" p
  1279. RTS* d  _7 v* ~. v- z

  1280. 2 K4 U$ _8 M5 k
  1281. SPEBUL_PPU:0 V# W8 Z8 h) V% J( S0 m* f
  1282. LDX #$00- E' ?& \6 Q6 M8 ~4 d0 A
  1283. LDA #$A20 e$ T, A0 d' o1 Q
  1284. STA $BA6 W) E0 Y' r0 Z4 z
  1285. LDA #$21
    # `( G9 x  U2 d8 b4 I* t6 ^
  1286. STA $BB6 R2 Z2 T6 k# r9 l
  1287. " [+ ?2 v- T/ H, {/ l

  1288. ( @& P/ }& \* w- a
  1289. JSR DN_PPU
    : }# V& o1 m/ ^
  1290. JSR SPEBUL_WRITE. Y) a1 t- \. G8 C1 M. R
  1291. LDX #$009 _3 v( A, P7 T% n
  1292. LDA $07A4
    . u$ Z6 F  m; d5 i) I) S. Z
  1293. AND #$02
    ; c/ D5 A( S1 b* @( K% V
  1294. JSR ON_OFF_PPU
    # }. _, W+ h7 d$ u. k
  1295. LDX #$001 g% j, q0 I0 H; G" T. m/ K) v0 ^
  1296. LDA #$B1' Y$ R+ a1 j9 m- [$ h
  1297. STA $BA8 m; A3 N% Y6 d# h& I2 g
  1298. LDA #$21( x& I8 P& X7 @) I: `* b' [* Z( X
  1299. STA $BB! D' ?- ^. G- ~2 J9 Z/ E$ L

  1300. ' }+ y8 e5 j. o& L6 L' S0 N, d

  1301. ) n; w: ~: C* r) ~; j& \
  1302. JSR DN_PPU
    : j) v/ p  s8 h$ W8 [
  1303. JSR SPEBUL_WRITE
    % L7 P) G  X0 X3 B1 a4 C
  1304. LDX #$00* x! I' A. g: O; F& m4 n! H
  1305. LDA $07A5
    - K' b6 l! X! J2 C% h1 t1 D
  1306. AND #$02
    8 \8 I3 X- ?. O5 X
  1307. JSR ON_OFF_PPU
    $ Y/ `7 |* u/ G) q5 ]' p
  1308. RTS1 M7 b. c* T) c+ b2 M+ U
  1309. 8 l+ D/ [( U) w4 J5 m2 ^# b# e6 @
  1310. .ORG $A5001 L) [, q' }2 C4 }, d, v, V
  1311. CLEALL_STRING:
    3 H% J5 ]- n9 m" q. \6 v7 E
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    / L7 h7 `0 Q; O, y" Z# k, o1 p
  1313. ( U& a( j# @* Z# B
  1314. " H! R" y$ ^7 s: f0 ]- W9 u& A
  1315. CLEALL_WRITE:
    / y# C  E" t( t0 y7 H. S/ f6 w
  1316. LDX #$008 Z4 z: r- f) L2 Y1 U
  1317. CLEALL:
    0 \  R7 K% ~1 j3 H% b
  1318. JSR PPUADDR_PROCESS
    7 I& d3 G/ }: p! n, D4 l* ?; a
  1319. LDA CLEALL_STRING,X
    & A2 S7 B) r4 O- V, V, L
  1320. STA $2007
    2 Y* U, ]  _# D( O. v/ V
  1321. LDA #$00
    % L/ A1 v4 g& |
  1322. STA $2000" E! \4 p) i" Z
  1323. INC $BA
    ' U- T3 W) T7 Y  A% H+ _
  1324. INX% `+ Z3 d. y' C
  1325. CPX #$076 B6 \, A6 Z( S9 ?; [3 x, c- i2 k
  1326. BCC CLEALL
    # x& p  j7 a; K* V
  1327. RTS
    , T8 k2 u/ e( A; l3 |7 `

  1328. 6 h6 u+ z% C1 U" b$ \
  1329. CLEALL_PPU:- j0 n5 [2 U" T8 j9 Z/ m) G
  1330. LDX #$00
    7 F# y1 H# c* Q! R0 I; C
  1331. LDA #$E22 V1 T7 |* @" ~' ]+ T
  1332. STA $BA: w/ A  V4 }. e: k4 }
  1333. LDA #$21/ I1 c! @' X, E$ k3 ^  E
  1334. STA $BB! ?* V2 k, o, h: R8 B- ~9 u
  1335. 2 ]6 G& u4 D1 D

  1336. 8 U8 a- U8 m/ P$ s, ]" b
  1337. JSR LF_PPU. I$ t9 b# K8 l  t! k. C
  1338. JSR CLEALL_WRITE" p& A  {, C; m* X7 N
  1339. LDX #$00
    / `' s: B% u) o8 I
  1340. LDA $07A4
    9 [; K5 L: g  N
  1341. AND #$04
    4 c, m  ^  [9 W& R; F0 p) s: A7 w
  1342. JSR ON_OFF_PPU7 J; B$ M; E8 x) c/ l$ L4 v# }3 Q
  1343. LDX #$00" h7 K! |. a9 `$ M
  1344. LDA #$F1: X8 t, x. N  |4 d: b) i
  1345. STA $BA
    " m# E- @. A' L  J6 Y+ c+ r# R
  1346. LDA #$21, k+ p# I: b+ K; Q4 a% B
  1347. STA $BB
    6 P; X9 o2 N( P% g/ e
  1348. 7 x1 F, |" E2 n  B7 E, s. ]
  1349. ) ]/ H$ x* g. q9 ?, \' n0 z
  1350. JSR LF_PPU* \3 P5 a+ F" B; u! i. {
  1351. JSR CLEALL_WRITE
    , K- k1 e  _5 |7 t/ z
  1352. LDX #$00
    ( w2 E( d! p  f
  1353. LDA $07A5
    . Y4 p  w# `: s5 p# h$ T7 t/ b* a
  1354. AND #$04, ]5 q8 ^5 W9 T1 Z4 k# x
  1355. JSR ON_OFF_PPU% n+ F6 F- d) V
  1356. RTS
    ; m& S; r  ]- s& |5 l' I# S

  1357. 8 V, t! L( ^! L" G" h- u6 d& B
  1358. HARDMODE_STRING:; C9 h. ?$ r0 D* a" d& v
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    ) F7 v8 w7 J0 q0 l4 j+ \5 Y- R

  1360. 0 D2 k9 T& h! F0 }

  1361. ( h4 y7 g. J9 y$ S) R& B
  1362. HARDMODE_WRITE:! J8 D" o3 F2 d/ O$ v) H. Y) W
  1363. LDX #$00! v$ t0 k' X, P4 v6 a  {8 \3 Y
  1364. HARDMODE:- J* o  R' w( I
  1365. JSR PPUADDR_PROCESS
    - Q. L8 j  P; h, J
  1366. LDA HARDMODE_STRING,X
    ; F+ g' t  _2 f+ z# a/ H! g0 `5 O
  1367. STA $2007" E8 `! N" V7 Y, D( }5 O
  1368. LDA #$009 k+ u# I! V6 D
  1369. STA $2000
    - ^6 d! O1 z2 r) `
  1370. INC $BA) ~  l6 m, m" y: [  C3 C9 W
  1371. INX
    ! W' ~2 e' D! O+ A3 l  }
  1372. CPX #$07& E2 Q$ f" P  X4 C* x9 `% B+ v* c
  1373. BCC HARDMODE
    8 P/ ?8 Z* M2 N+ V& k  j( q* ^
  1374. RTS# P6 l$ r7 G% V8 e+ M; ~" M

  1375. ) }3 `& \2 n, f9 r* m
  1376. HARDMODE_PPU:" d5 H/ _+ ^0 J9 E0 I( g
  1377. LDX #$00
      T5 M) M6 A5 K$ i) q9 E
  1378. LDA #$22# p8 F  V2 J. [' x  `* q
  1379. STA $BA9 r  q! b9 ~& d4 d
  1380. LDA #$226 @4 y9 C$ }" p6 i* J
  1381. STA $BB3 o# b$ c2 p# {
  1382. JSR RG_PPU8 L" n; g5 V8 B( O
  1383. JSR HARDMODE_WRITE
    ( W8 |5 E( E6 A) t: [$ ?! B
  1384. LDX #$00
    , q6 s9 u1 ^% X  B7 ~
  1385. LDA $07A4- `# w- |6 I% G. x, a
  1386. AND #$01
    " N1 l7 A# U( ?0 f! l) A6 |
  1387. JSR ON_OFF_PPU
    * S3 r4 w# l/ S' P- p
  1388. LDX #$00; S* u, c$ d$ k6 U& Y+ ?
  1389. LDA #$31
    ; I7 C* a( U; w
  1390. STA $BA
    / P  u# C2 A1 ~6 Y" ^2 X
  1391. LDA #$22
    3 U4 H2 ]0 s8 }( r
  1392. STA $BB
    7 }  f1 R' _6 i* J' d' f, R
  1393. : V2 x9 u/ W4 `% R+ T4 ?. x5 `
  1394. 6 N# f" |" C4 T4 O" U  x
  1395. JSR RG_PPU3 z: P3 Z, N7 ?& @$ }9 D
  1396. JSR HARDMODE_WRITE
    2 m9 n8 ~/ J4 s  d+ y: [, }; ]
  1397. LDX #$00
    * C$ O) }0 L1 Q% ~' g
  1398. LDA $07A5, h  l$ |. {4 h8 {5 j
  1399. AND #$01
    . O( r2 y3 T/ k6 W
  1400. JSR ON_OFF_PPU
    & _% w  ^" t. p5 A& J+ k- `
  1401. RTS4 I/ e) M2 {" N$ M! Z
  1402. . `7 o/ q( ^' j$ S6 K, H6 [6 v
  1403. B_TO_JMPSTG_STRING:* O& Z+ K% m( r* W
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$802 A4 R/ w: I- ]! ^9 F
  1405. ' L! f+ ?0 A/ J5 E* |
  1406. ' J6 d0 s4 k* b5 z1 x# F5 ?
  1407. B_TO_JMPSTG_WRITE:
    5 A$ u# o; i' N" Q* o. Q
  1408. LDX #$002 m% u' R  w9 ^! Z- V: D
  1409. B_TO_JMPSTG:6 `/ ]$ @* o, Q! {7 K
  1410. JSR PPUADDR_PROCESS* N6 j+ u/ `; N% X' Q" B
  1411. LDA B_TO_JMPSTG_STRING,X4 F: [9 t) ]/ ~+ L9 ?
  1412. STA $2007' `  _) i% x/ @! T) U/ o3 X" u7 a$ ^
  1413. LDA #$00
    ' L/ J+ V  N7 L; F
  1414. STA $20001 B$ z4 q% l0 N$ I; h+ m7 |
  1415. INC $BA* l0 I# i5 g$ v& I8 d/ m; D
  1416. INX
    5 P! p8 _" u, u2 c$ o. ~6 k
  1417. CPX #$0D9 W4 G! m( @% r8 a( o, ~- a
  1418. BCC B_TO_JMPSTG+ G2 ?! @# M3 j7 Y+ s; R: x
  1419. LDX #$00* O* ]2 t  \1 k4 }9 n' \' G
  1420. LDA $7FE0' Q! i( x7 F+ J; ?& A
  1421. JSR ON_OFF_PPU
    . i! C2 {; U/ }# ~& h
  1422. RTS, T3 y/ @2 s' u0 i
  1423. % ?! D" y% V: Q. v6 t  `
  1424. B_TO_JMPSTG_PPU:* G) J: _; U0 b9 U( d
  1425. LDX #$00) x' Z3 F6 v& ?- J' ~5 Q
  1426. LDA #$68
    , V# ]# ~8 C& _  X6 c! C
  1427. STA $BA& L" \( [2 k% n1 B* J. D* O5 s% V
  1428. LDA #$22) W7 G4 s9 Z2 U+ N  i9 x5 @0 J' ^
  1429. STA $BB
    5 U" }: u* Q3 o
  1430. JSR B_TO_JMPSTG_WRITE6 m% o7 ^) g1 X5 w% W! _
  1431. RTS, b: V9 E0 J: y; M& Q" h/ a
  1432. & ]6 _8 K0 M& e5 z8 j: S2 J
  1433. 0 `! F: E% i  S; r
  1434. A_TO_PLAMOD_STRING:
    * @" Q' ]. s( ~' |
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80
    : W( T! U# V- W$ O
  1436. & N8 U9 V, z6 D% ?' _& l9 s
  1437. 7 d! b8 v3 C: o: |/ Z& o4 a
  1438. A_TO_PLAMOD_WRITE:
    ! ]) |3 E0 Q% }, Y6 P% {4 s1 |; ~
  1439. LDX #$00
    # x/ i& O: M8 z- f
  1440. A_TO_PLAMOD:$ u" q4 O" y) o9 q+ _
  1441. JSR PPUADDR_PROCESS2 |& i* l% E' u7 @
  1442. LDA A_TO_PLAMOD_STRING,X
    # ^! ], V- B0 L5 a
  1443. STA $2007/ P5 s7 B7 T- `, d) l
  1444. LDA #$00
    # W1 x& ~+ ?; w1 @
  1445. STA $2000
    ( I% a$ a" f& R, @9 B% Y
  1446. INC $BA
    : \+ m4 V0 S. K$ {5 J) @; ?4 U
  1447. INX
    ' D# S" i" d5 ?* `8 c6 u8 p
  1448. CPX #$0D- z! J3 x$ N- `7 n2 r2 N
  1449. BCC A_TO_PLAMOD! S7 v& g# {8 [  _3 b
  1450. LDX #$00& J( J- v- [/ o
  1451. LDA $39* U2 E& Q! M# H1 F: w6 |
  1452. JSR ONE_TWO_PPU
    . n  k. s4 N: g, D
  1453. RTS5 I5 V5 f: I- {

  1454. + e% I9 R" c: d$ G& t' `& Q
  1455. A_TO_PLAMOD_PPU:9 ?$ }9 u; J* |3 `! F0 @
  1456. LDX #$00
    / X# B( E: L4 x
  1457. LDA #$A8' c% Z/ K8 d# E# |7 d2 z3 Y
  1458. STA $BA" x2 j0 @9 O% |7 H  \, g
  1459. LDA #$22$ M" s$ T+ o6 `4 W+ f7 c, k. K
  1460. STA $BB( f4 p5 ~6 B6 T1 U2 |" S
  1461. JSR A_TO_PLAMOD_WRITE
    " R% j# ?& w, w6 |3 s
  1462. RTS& j, o9 u  }7 w9 i% E1 @
  1463. 0 b+ Z; }' w5 b; G3 N* C/ }3 r
  1464. MOVSPE_STRING:) y- h8 R+ w0 K0 u
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    - x. t( W& D0 \, t. M3 ~) }
  1466. & ^3 b4 `: F% S

  1467. . D# k: @0 }: R3 s
  1468. MOVSPE_WRITE:% }$ D% j5 a+ K/ y
  1469. LDX #$00
    4 Q. r' O  J/ P
  1470. MOVSPE:/ @' ]6 U! _- }4 b+ {8 F& L6 F
  1471. JSR PPUADDR_PROCESS
    ' q; Z, y7 p  u) h8 @7 S7 x* I
  1472. LDA MOVSPE_STRING,X; h5 o' q2 D# `2 F# _
  1473. STA $2007" B% g* R2 ]1 Z6 v/ b
  1474. LDA #$009 w5 E, u2 D( l0 V8 T: q3 k) G) W
  1475. STA $20002 B; C8 y2 M- D- {
  1476. INC $BA
    # M! \( u$ I$ [) V
  1477. INX
    : w5 E9 P- o4 H7 O/ b& n3 z4 I4 t
  1478. CPX #$07
    ) a8 j) z' q" W) S3 m7 v! {+ X
  1479. BCC MOVSPE# z5 v0 C% S; M" _
  1480. RTS/ l! Y5 x( O& ]! P" c2 k! {
  1481. ; @" o. u  X: P7 Z' h3 g
  1482. MOVSPE_PPU:5 m) ^4 U3 _& s; Y$ b. o2 O
  1483. LDX #$00
    ! [% L! _/ P4 B# C9 O
  1484. LDA #$69
    9 K( |4 }( A* \6 _- l
  1485. STA $BA" m4 C( {6 m; F. C
  1486. LDA #$21) Y' n3 p( o8 ~. G) d+ m
  1487. STA $BB
    9 S+ N5 r7 t7 Q% c1 e1 S

  1488. 3 l6 k5 E7 f5 c- M
  1489. 8 N) l9 |$ K( z. e
  1490. JSR UP_PPU4 p: F' O) z) M1 }$ A4 `0 c
  1491. JSR MOVSPE_WRITE6 Q. w# H' G) I: w# g5 U1 u/ h
  1492. LDX #$00
    7 f" D. f5 A6 f, S, c+ ~
  1493. LDA $079F
    4 A& H8 H( H) Z9 v
  1494. AND #$08
    * h2 f1 R! T2 b. S: Z9 z7 Z# u
  1495. JSR ON_OFF_PPU  X/ n# i  C8 X
  1496. LDA #$80% w% B" h& @) `( P3 T
  1497. STA $20073 Z( K7 F( Z% P" [$ T/ M
  1498. RTS
      N3 u6 g  [' x) y! p

  1499. 5 a- C5 b. G, u6 a
  1500.   9 S/ ]7 n4 f3 K; }
  1501. UNLJMP_STRING:. ?* ?0 H/ |; M  k. k# w0 ?/ D
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80
    ' s# \/ E4 o# {! {7 Q

  1503. 8 X$ m3 D1 ?2 p7 E  @8 {6 U

  1504. ( h$ C; y" [4 R' [# ]" Y6 C  }
  1505. UNLJMP_WRITE:1 m# L# B9 f. H
  1506. LDX #$00
    & \# S' t  W2 E( V: [4 x
  1507. UNLJMP:
    * p* f5 ^/ U% Y3 a
  1508. JSR PPUADDR_PROCESS/ D4 E$ I* F$ n/ o3 T/ K
  1509. LDA UNLJMP_STRING,X
    , }; r2 i5 I! e5 g/ S# ~9 @
  1510. STA $2007
    0 w' s/ _6 {! L3 n" J' t
  1511. LDA #$007 i5 l! d9 f3 S( k8 u4 Z/ ?
  1512. STA $20007 E" j& f  R! O
  1513. INC $BA
    $ b# [. j5 [! U4 \0 S" o0 t& }9 d
  1514. INX
    1 o* d$ ?' |$ s& E4 h
  1515. CPX #$07
    8 C1 O7 N$ L2 ~) v/ j
  1516. BCC UNLJMP4 t7 k! r4 ^$ f: H" p
  1517. RTS
    2 O" B2 J4 Q0 y8 G+ j. I, g: b
  1518. 7 S9 M2 s! ?2 |6 d5 G* c
  1519. UNLJMP_PPU:
    . O# A/ Q" t) p1 ]
  1520. LDX #$005 ^: C) H+ r0 |
  1521. LDA #$A9
    2 {1 _* X9 H8 S, w6 l
  1522. STA $BA
    " J8 ^: H4 h  D% r/ C/ E1 Q
  1523. LDA #$21: K, W5 |" F% V$ w/ r2 g5 r
  1524. STA $BB4 Y4 K) v! Z: T5 f* T: B. O; j! |
  1525. ; z1 h" U$ ?# x& h- b

  1526. 7 X. G7 p% S9 F$ }
  1527. JSR DN_PPU4 C- E% D( f* e- a. c: S
  1528. JSR UNLJMP_WRITE, Y4 y) M: n0 P' v
  1529. LDX #$00/ l2 D/ R+ x# Z: r. W0 s! N) d! X
  1530. LDA $079F! a$ t* P4 \! l" W4 k, Q' x$ |6 u
  1531. AND #$04
    " Y; k" K; `+ q5 m' f+ p: J! t
  1532. JSR ON_OFF_PPU
    ) U0 W0 I) Y6 v6 U+ H* s5 Y
  1533. RTS/ S4 m" I! ]6 ?5 T8 d

  1534. 5 o5 [6 E& k; l9 [2 _

  1535. % l. o' D8 R! y0 Z, \
  1536. DESTRO_STRING:
    2 _! B: N$ ~+ r1 k3 ^
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    ; p' v6 a8 Y; Y' \
  1538. ) u6 b8 o" R# f, D) H, t

  1539. - ?& l3 n9 v/ U
  1540. DESTRO_WRITE:5 x9 O, F5 F( J5 X( M  W. ]
  1541. LDX #$00. s8 z; m0 {& [6 C9 G
  1542. DESTRO:
    ! |5 V9 J; e" H: D, m' U* E# P
  1543. JSR PPUADDR_PROCESS0 P) k, \5 r* u; F7 n
  1544. LDA DESTRO_STRING,X2 s4 ^; _; o* n5 r: X
  1545. STA $2007
    ' R9 H9 V5 M$ u6 ^7 i
  1546. LDA #$00! e1 U/ t$ @. f1 [( Q
  1547. STA $2000& x3 j) M! Y% a
  1548. INC $BA
    7 X  n" X. L' l( }% W5 N
  1549. INX
    1 X+ c8 [' O1 [6 Y/ j3 f
  1550. CPX #$07
    2 i; m1 Z# _/ k* t7 g0 V
  1551. BCC DESTRO
    , l; k  N) Q( |/ A) }# f
  1552. RTS- u7 Y# O. \) [/ e- ~# B
  1553. 2 B+ H! Q8 }5 V3 F& k' C
  1554. DESTRO_PPU:
    3 l( g. [! I5 R" g- @' o! P
  1555. LDX #$00
    7 i4 [8 U/ `0 N1 p
  1556. LDA #$E9
    # a9 @9 H! w* u$ ?, B4 i" i
  1557. STA $BA, z$ Y! x1 n& e0 i! U* Z/ W1 R: Z
  1558. LDA #$216 w) H, Q  F5 g) U4 x
  1559. STA $BB
    ( V$ j7 N* a* I1 p  i

  1560. ' F9 v4 M  Q4 p6 |* Y: F3 c% x

  1561. 9 e0 H1 t1 i6 P" [2 R
  1562. JSR B_PPU/ U8 i8 O' O% Z" y6 G; {
  1563. JSR DESTRO_WRITE7 V, H1 P) k" c) ~
  1564. LDX #$004 A% d. Z0 _+ |) S0 }9 l% k& ?8 n
  1565. LDA $079F# ]# P  y" ^2 y# X' z7 p5 K- {
  1566. AND #$40# e2 R3 l+ m8 W& X
  1567. JSR ON_OFF_PPU1 A+ k- _- C5 H
  1568. RTS# }% y7 B% G2 `* V7 l% r
  1569. * a/ ^% U! s" o; G  ]
  1570. 0 L. ]0 R5 F* z1 `& E
  1571. EQUBUL_STRING:- b2 w$ z9 s6 e4 g" q
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    3 \  V* r, ?5 y9 n! t

  1573. % G) ~7 F, Z+ ?- |. Y
  1574. ; W: _8 R7 ]+ c( m$ t: ~# Z! u
  1575. EQUBUL_WRITE:1 z: r7 K2 {6 _' V
  1576. LDX #$009 H" V- v0 K8 p1 G
  1577. EQUBUL:' m6 d/ ]6 u- s! P
  1578. JSR PPUADDR_PROCESS
    ; B) U! y3 i; C+ g6 K& E$ K, U
  1579. LDA EQUBUL_STRING,X! A" H$ O* p0 m: F7 K+ G
  1580. STA $2007
    ) H8 D  M4 b0 \
  1581. LDA #$00
    8 J& m) B" [0 u, ^* e
  1582. STA $20001 ~+ W" e* o: }8 a) G+ C$ i( I7 _
  1583. INC $BA/ j9 u: s) w/ U2 r6 g# u
  1584. INX
    0 Y, G& X9 [# r! Q  R$ w2 U
  1585. CPX #$07
    0 [* v4 t* w% t" ~7 L
  1586. BCC EQUBUL- W2 o. v: x4 _/ B5 a! I; G  k1 }
  1587. RTS
    1 [# x4 ^5 Q4 L# g$ \8 I
  1588. + ~' k; S( M  u. [
  1589. EQUBUL_PPU:
    0 O, |- u% l% g' a- @
  1590. LDX #$005 z( t( P9 e/ q2 u  X
  1591. LDA #$29/ E0 s* v# s2 j  l( u2 q6 O8 @; @
  1592. STA $BA
    % @3 P. W# @4 u
  1593. LDA #$22' Z* i, ]) q; q
  1594. STA $BB; A  d, d/ e. ]# D; o4 }* f
  1595. 7 |! t) Q& s) F6 P

  1596. 2 ]$ G& E( c: F$ U' a
  1597. JSR A_PPU4 U6 `1 j4 l) B) X* i. M
  1598. JSR EQUBUL_WRITE; ]0 E: a6 f* W$ Y$ V; _7 h
  1599. LDX #$00
    # S7 x1 b; n; @" ^+ {+ c
  1600. LDA $079F3 l- t9 A8 C; \' W
  1601. AND #$80
    : r" q6 t/ X+ [
  1602. JSR ON_OFF_PPU
    8 Y# q+ ^+ ?4 Z, G% n" L- g* x
  1603. RTS/ T* x% k+ k7 [) u% |
  1604.   [1 z  X8 \6 ]
  1605. 9 t/ E/ x0 d% ^- a
  1606. 5 O9 U1 R% e( [9 k% h
  1607. BULSEL_UP_STRING:
    : H6 e7 Q7 y' V3 w
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80( X  J4 m& d9 D* @, D
  1609. , b. F6 F+ R2 H6 ^
  1610. BULSEL_DN_STRING:
    + L; _5 t2 ^1 k' e% b9 @* r
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$806 C- T7 z) @+ y. W, t; k; R$ Y, k! S
  1612. $ H) S  J4 f+ k1 {/ [
  1613. BULSEL_LF_STRING:5 X+ h) O9 c' W
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80% |. ~; J" I& b

  1615. 4 X6 I# ^. `. V4 ?: o5 K
  1616. BULSEL_RG_STRING:. I9 K$ f0 T1 Q  p% J
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80# Q- ^$ z1 S( P' l" I3 T+ {
  1618. / k5 l7 R; J$ S8 `- |% L
  1619. BULSEL_B_STRING:0 Y3 P. B, o6 u+ n( S: Y
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    : D. i3 `  ~( H* m& O3 H- b- d

  1621. 2 s; i1 f. A7 J0 r
  1622. BULSEL_A_STRING:* j% D& p4 K: j( r* `
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E! ~6 V9 F, E% `
  1624. 7 X2 j8 \! f1 b) t+ o7 B
  1625. ( C' z5 J9 v% N- w  G# p0 k
  1626. BULSEL_UP_WRITE:2 `+ ]3 Y. e; X9 h7 d, L
  1627. LDX #$00* r% A; J$ W2 X8 _0 H2 J
  1628. BULSEL_UP:# u  h$ c7 j7 v: v, S4 B
  1629. JSR PPUADDR_PROCESS" _- q( w% g* u# j
  1630. LDA BULSEL_UP_STRING,X
    & K" s6 u& C# v) T! K
  1631. STA $20073 h; q0 y8 Z& m/ ^
  1632. LDA #$00$ G' l. B, e. ^7 S. {
  1633. STA $2000/ Y+ x  X5 q' V! V) C8 i5 \
  1634. INC $BA
    5 o% _1 p: V& }" f! t
  1635. INX
    ' E! }( ]7 R) o3 n- b( {# M: X
  1636. CPX #$09
    + _0 {( {$ `0 u6 n4 q: q
  1637. BCC BULSEL_UP
    & W0 ?# ?" ?! _  Y$ ^5 q: q6 N5 S" W
  1638. RTS
    8 [# D' k+ x% g2 f$ L
  1639. BULSEL_DN_WRITE:- U* J4 v$ q) G- r* v" k
  1640. LDX #$00
    2 t" o9 \2 \4 Z+ x0 L
  1641. BULSEL_DN:
    7 |' ]$ h3 _/ m( u4 r5 i; g0 E: W
  1642. JSR PPUADDR_PROCESS
    + e& w+ K( F& Z% I/ Q! p
  1643. LDA BULSEL_DN_STRING,X
    ; I  ]9 n( k  r7 E
  1644. STA $2007
    3 W* J" R" a$ @, W" `
  1645. LDA #$00
    ) R+ g. C. T: b5 K
  1646. STA $2000
    + t) q; P  B/ Q5 I  a8 }% {4 c
  1647. INC $BA
    ! m" S9 I, N# W/ x
  1648. INX0 Q1 U% F/ ~) L, W# X
  1649. CPX #$098 o1 m' H" }& P1 K1 k* B/ P" p
  1650. BCC BULSEL_DN8 o+ J2 E& w( x& V" g6 M
  1651. RTS7 n) c# t" H) s* g! C
  1652. BULSEL_LF_WRITE:
    ' }/ d* }; ]8 }$ `
  1653. LDX #$00: Y  c9 F) A! [/ @1 C3 F# u! L
  1654. BULSEL_LF:
    + m9 B4 p& U+ k+ a
  1655. JSR PPUADDR_PROCESS
    - V8 f1 G# l( K. m+ i, p- y0 h# s
  1656. LDA BULSEL_LF_STRING,X- `# h$ P7 U4 `7 {7 K6 E
  1657. STA $2007
    4 Q: Y2 _5 k6 W2 H
  1658. LDA #$00
    / U: [) t. [2 {, Z. U4 _" X7 M! J
  1659. STA $2000
      J9 S; T8 Q0 u0 ]
  1660. INC $BA$ C) ]. ^/ h9 s' ?  X  ]
  1661. INX3 j/ }. F  u, z; E
  1662. CPX #$09
    : P, E# r' p' k$ @
  1663. BCC BULSEL_LF
    ( d4 k1 F# W! J. b- G
  1664. RTS6 ?' h6 a, [- d- h
  1665. BULSEL_RG_WRITE:
    * ^/ F, h+ c  z( E( E
  1666. LDX #$00
    0 f8 y/ D+ B: Y- v. a0 z  w
  1667. BULSEL_RG:
    9 P8 n: Y9 s/ O& _' n0 ?5 a
  1668. JSR PPUADDR_PROCESS
    ! H  e- P' R2 M( I  D3 Y
  1669. LDA BULSEL_RG_STRING,X' x) l& S, f) B" ^8 S( v2 b
  1670. STA $20070 e% d2 n% H$ z1 `7 u1 x1 P
  1671. LDA #$00: o- t- t, m2 V
  1672. STA $2000
    8 Y  l3 n0 O+ [5 E, p
  1673. INC $BA% G. V' m# g% `( S4 M* N4 i% _
  1674. INX% Y* m$ o% V, M3 o' S
  1675. CPX #$09" D- v$ g) I( _1 \! r. G& p( L7 u
  1676. BCC BULSEL_RG
    " b% W: ^. _5 c1 k
  1677. RTS
    , N" g: ^# [4 Q3 \
  1678. BULSEL_B_WRITE:: I; ?* u+ c" P9 e: ]2 s; D
  1679. LDX #$00
    3 `) _, Y+ I& ]) s
  1680. BULSEL_B:
    " [' }) a  T+ n9 D" R8 E
  1681. JSR PPUADDR_PROCESS2 W1 C' x+ V) L4 \1 Y9 {
  1682. LDA BULSEL_B_STRING,X: j  n' n9 h" b" ~$ e: _# L# ?& G
  1683. STA $2007
    ) z! s' Q; f' I8 z3 h4 \. \
  1684. LDA #$004 U3 D) Q5 l7 ]/ m% a
  1685. STA $2000
    . m; Q' }4 Y$ ~
  1686. INC $BA2 }/ r  B# Y& c& k
  1687. INX# |* d4 I, r/ ^$ O2 V
  1688. CPX #$09
    ( Q) j) R5 D9 M* C/ ~0 m
  1689. BCC BULSEL_B  t. p- v5 @2 q* Q5 A
  1690. RTS& ?0 x( I, p) G
  1691. BULSEL_A_WRITE:! C; J5 H( O: w6 U  m4 ~' D
  1692. LDX #$00# [; \0 u* ]6 k
  1693. BULSEL_A:* R3 S( l$ u8 q- N8 C
  1694. JSR PPUADDR_PROCESS
    8 F% N+ V% q& k, b
  1695. LDA BULSEL_A_STRING,X- c; r9 g' x. j6 k- m, H$ c# W' }, J
  1696. STA $2007" B; I3 ~% f% m) B
  1697. LDA #$00# k' W( T9 v4 P" q
  1698. STA $20003 i( y+ e8 O  `6 p! s
  1699. INC $BA
    - S+ W! Y! Z  k6 y
  1700. INX
    & f  z" f' G& P) n3 U) V$ @
  1701. CPX #$12
    ! C2 Y* Q3 M+ o" H; F) T
  1702. BCC BULSEL_A
    0 Q% U4 ]/ G! X2 `
  1703. RTS
      h4 N. [5 r2 y0 \" x# O
  1704. % T' \  G" B& Y# j

  1705. 6 n' N4 V( t& r. l

  1706. - S% b. h6 }( Q% a8 T
  1707. BULSEL_PPU:, M+ |7 R8 L$ y$ U  K) n8 F
  1708. LDA #$6C1 D* }) Z+ k$ z  P/ c
  1709. STA $BA: `7 g# g* F$ X# X
  1710. LDA #$21
    ; _& Q. h' P0 C( Z( u
  1711. STA $BB
    * c/ m% r+ H7 b% F  j
  1712. JSR BULSEL_UP_WRITE0 Y! X$ y. V& w

  1713.   j) z# b! O7 l/ {7 G
  1714. LDA #$AC! M' Q% z0 S, h) `2 \" n
  1715. STA $BA. v7 o  b2 B1 u
  1716. LDA #$21
    / P4 ^; n/ ^8 M# A; {* V* p0 N
  1717. STA $BB
    4 _+ E& r  G2 s$ S
  1718. JSR BULSEL_DN_WRITE3 ^/ E) P- W2 v" W

  1719. : n. n; U! }8 ]5 n
  1720. LDA #$EC. V. g/ Z/ i; @0 g/ V4 h8 Y9 q2 H, F
  1721. STA $BA
      o5 E9 O+ V+ }4 z; _
  1722. LDA #$21$ f, a- x' r0 f  d+ s  H! @
  1723. STA $BB( u' ?4 P5 K& c, K% f% V; z0 Y& t
  1724. JSR BULSEL_LF_WRITE5 G8 F( L; ^* w: A3 E  b4 A

  1725. 1 k/ o6 D& p4 o9 z/ H
  1726. LDA #$2C
    : ^+ r1 C$ Z4 n8 K/ x+ c' C
  1727. STA $BA
    7 d: G  b4 {# ]$ ^5 J/ g4 p5 M' [
  1728. LDA #$223 `4 p, O% o+ k' P, A- b1 o3 u
  1729. STA $BB
    6 {  P1 X9 z6 P6 |: h4 H
  1730. JSR BULSEL_RG_WRITE) v0 `- z2 m% ]2 p

  1731. * m/ x, e0 C6 S2 L
  1732. LDA #$6C
    ! R+ H* n# N& [- k$ ]. `3 ?
  1733. STA $BA) b* }2 O. f. [" |5 a5 M
  1734. LDA #$22/ F" q0 s' z) Y" P0 z( p* ^. A! h
  1735. STA $BB3 ?" z% [" R* h& t( J
  1736. JSR BULSEL_B_WRITE3 |: Z$ Z& N+ l8 ~. A# Z2 r
  1737. ' u7 G  W9 W& h" ?6 g4 D5 E
  1738. LDA #$A7; z. B4 j% y; E. g$ H/ D1 A
  1739. STA $BA! L6 P8 y4 J, ~2 P; S
  1740. LDA #$22
    . Y2 k  I4 e- Q3 f4 g
  1741. STA $BB
    ( r3 ?4 K2 ~( w& F+ |; C
  1742. JSR BULSEL_A_WRITE6 W7 Y2 S3 x. X
  1743. RTS2 t0 B5 y7 j6 ~3 E% Y0 l
  1744. 5 W4 c/ D# K& z  n% j7 ]' i
  1745. - }9 ~" C8 p. ?2 c8 |8 K$ Q+ }
  1746. $ S! D4 }2 t9 E% {# V
  1747. UP_STRING:2 n) J" i2 W$ j, _4 A. i% E
  1748. .BYTE $9F,$9A,$80
    , ]1 s& Y  m3 O' w  p( J

  1749. / ^* e) N! b4 y+ ~. }! d
  1750. DN_STRING:
    / H/ C# F! Q6 a% f1 j
  1751. .BYTE $8E,$98,$805 h- t" X$ P% K& {* W

  1752. + A/ ~% F7 F( Z9 W6 d, \7 l4 a3 a
  1753. LF_STRING:3 a! t' L1 Z) {+ I
  1754. .BYTE $96,$90,$80& R, y6 A. m, P) w4 u. T/ \0 W& U
  1755. ! J" Z- a7 v# \# N
  1756. RG_STRING:8 U5 {- f6 u3 ^9 P6 U8 L3 ~) z
  1757. .BYTE $9C,$91,$80
    # ^# T- x8 ~. h( D4 P

  1758. 8 A8 w+ t- C; @, i7 @1 ]/ n/ D* v
  1759. B_STRING:
    & o2 `! d1 p# w. M6 w
  1760. .BYTE $80,$8C,$80& u" ~4 t" t8 C  p! H& q
  1761. - W# t+ T% c5 ?$ n4 F
  1762. A_STRING:
    6 S; v- ~9 A$ D; E9 F
  1763. .BYTE $80,$8B,$80
    - I$ V' b) W& i
  1764. * Q/ ]7 C3 S" O+ z( {% d

  1765. ( I. H# s* T% l& r1 i
  1766. UP_WRITE:
    % G4 ^" c, B# }! k( C0 L. H. n
  1767. LDX #$00% X9 v1 U; V# x/ G
  1768. UP:! s3 [0 ^" e' e" A7 e. g; x
  1769. JSR PPUADDR_PROCESS  l, F8 k" O! o; m. k% {
  1770. LDA UP_STRING,X
    8 K: Q' B+ t' f! N* m0 c
  1771. STA $2007' Z# O2 q+ G4 \  \$ m
  1772. LDA #$004 ~4 ]; A8 W" z3 u% i
  1773. STA $2000
    9 H' }& |$ v2 ]/ I& }
  1774. INC $BA
    9 \( w2 H% K3 r
  1775. INX! I; }. n( d# Y
  1776. CPX #$03! V. Q! t1 \' A- q
  1777. BCC UP
    ) `. V7 y1 o' t8 C- H
  1778. RTS- H" z* R; Q6 q+ {5 F. m1 W; y0 U
  1779. 0 W  W% t  u! t  Z9 _7 O$ F
  1780. DN_WRITE:
    ' s# e1 {% ]5 Q. k: c9 F
  1781. LDX #$00( \% R$ h9 `4 L$ l
  1782. DN:+ j- D5 j% a8 N. K3 r' q+ C) h: o. i
  1783. JSR PPUADDR_PROCESS
    ( D8 v2 S2 c( B( u; }6 b  h
  1784. LDA DN_STRING,X
    9 m& P0 H, n" \; j3 `+ t
  1785. STA $2007
    . b9 }8 `/ v0 Y0 u$ v4 H
  1786. LDA #$00
    * R6 e) G4 P; \, `
  1787. STA $2000" N) T9 t; c6 o& ?- J7 H
  1788. INC $BA
    " V' u6 d: e" l$ v
  1789. INX
    : b$ R( N* G0 p# V5 R
  1790. CPX #$03) M/ B8 U  ]% C/ L, {8 b; u
  1791. BCC DN
    1 U7 I+ p* c$ c; C
  1792. RTS" z/ J+ [6 l& a( v. Y1 R0 \
  1793. . M, [2 i7 _5 S% V
  1794. LF_WRITE:
    ! h5 D3 B3 w1 c. L% `% i
  1795. LDX #$00, H& J9 l' s/ x, c6 X) l
  1796. LF:' D, q' T  \/ g$ @& _; I- E6 P5 x$ p2 {
  1797. JSR PPUADDR_PROCESS0 o5 `# ?' q) }' x
  1798. LDA LF_STRING,X$ [: M" ?8 U. T0 a2 k6 i6 z
  1799. STA $20074 i5 P, Y% U0 J
  1800. LDA #$00; M* A; P0 }  m. B! k; F' d& S
  1801. STA $20007 S' L# F. `! h( s5 G! w
  1802. INC $BA
    + [6 r$ z6 q' }4 S9 {% p8 y$ k1 q
  1803. INX
    1 _- K) Q8 z. W. a' S
  1804. CPX #$030 a" G% y& z% s7 o
  1805. BCC LF
    1 |& U" l. A" r! E
  1806. RTS5 I6 {  I, @: n, u7 z) w# @, `

  1807. 5 n. j; F) ~1 Y
  1808. RG_WRITE:
    . Y6 y  @9 t0 T
  1809. LDX #$00
    ' n- Z' z* `- K% j
  1810. RG:9 |: d7 I2 ]! z- S1 Q7 Q7 N
  1811. JSR PPUADDR_PROCESS  v7 z" o: k+ J) G" s) Z$ I
  1812. LDA RG_STRING,X. h: i* C; s- @  |
  1813. STA $2007, c/ M, _% d% y
  1814. LDA #$00
    ) h6 F/ o% N/ n5 s
  1815. STA $2000
    + V. O) n, r9 j7 a5 p7 Q/ P0 Y/ j6 ~
  1816. INC $BA, ?1 w# Q: o5 }3 F# @
  1817. INX
    8 F% K9 n6 \. P1 y: ?- Q, e
  1818. CPX #$03
    ! H6 A" q) c" R5 a
  1819. BCC RG3 l7 I# m8 w/ d7 Y; p
  1820. RTS! ~7 N6 o( }0 r0 C0 ]
  1821. $ x  Q0 ^( l" r
  1822. B_WRITE:5 T/ O9 [" v; `& J# p
  1823. LDX #$00: D/ |) B, C& L+ e) P
  1824. B:
    ) r0 }1 ~" n! b# S
  1825. JSR PPUADDR_PROCESS
      H9 [- O7 J$ h( e5 J3 m. C
  1826. LDA B_STRING,X
    " D, n& c& S+ a* ?" |
  1827. STA $20073 @( N/ r' C  }/ q; t
  1828. LDA #$00
    6 [3 ]* t; l( _  h+ p& R$ H# q: }
  1829. STA $2000% d& h) z1 [1 L# Q4 o: d
  1830. INC $BA
    ! Y- b( t4 `' y7 S% s- ]5 G
  1831. INX4 D+ K1 b3 `/ f1 i1 }2 M* ^
  1832. CPX #$033 S  o0 y, W& d' R) R& }2 Z/ E
  1833. BCC B
    " C. X) e* x5 b$ V: x
  1834. RTS
    9 [9 x9 X' M  r- W

  1835. ) Z" `  _6 l* s' e2 L% v- h
  1836. A_WRITE:
    . N' N" G) C+ o7 x
  1837. LDX #$00/ @! Q9 y) T  `6 {6 j
  1838. A:
    & R7 e" V* s5 {2 p( N5 j: K
  1839. JSR PPUADDR_PROCESS/ q- Z* b' R, c" ~: A
  1840. LDA A_STRING,X% s' h% F0 G! U% v1 F
  1841. STA $2007
    . s- W8 e/ z% Y: w3 H; u/ y% t! ^
  1842. LDA #$002 x1 c- R' A& Q
  1843. STA $2000; V+ D. N, O9 ?2 `0 h5 P& k
  1844. INC $BA
    ) `$ u) z* V1 x& l$ u' a+ e1 V+ ]
  1845. INX
    % y7 _7 W. U( K8 T
  1846. CPX #$03
    4 y5 |1 W3 s, w- M1 V
  1847. BCC A1 d2 d2 Y; O9 \' Y; G: _5 g
  1848. RTS! I: ]1 {) w4 R) v6 ^) a

  1849. : q0 M$ {  `: w
  1850. ; P  C3 L9 m/ F
  1851. UP_PPU:+ D) U2 B) u' Z; K2 H
  1852. JSR UP_WRITE
    1 v5 V4 ^, f: i$ k& j2 A) u% ]* K
  1853. RTS5 {! _7 h% C( A) k- X& x0 r. W6 R

  1854. ' u: P0 K: e9 F# n" W2 `! E
  1855. DN_PPU:
    " J1 B! K" m- c" M
  1856. JSR DN_WRITE
    : {2 \1 O, j# |! m! l
  1857. RTS
    8 F9 P7 n  Z( O: ]+ j
  1858. % _; b% i0 j: i% M8 T+ ^
  1859. LF_PPU:
    / x5 M* _9 M+ ?/ v1 X) E
  1860. JSR LF_WRITE
    - ~6 `, V, l3 U2 a6 f8 \
  1861. RTS
    ( v7 o& V# b; e+ g6 E' {
  1862. $ X8 S. o1 W+ J  e+ |. h* x9 H8 s
  1863. RG_PPU:
    ) s" z3 O0 y4 H$ N4 A+ j
  1864. JSR RG_WRITE
    1 k+ _, o+ E2 X+ f0 s: f! K
  1865. RTS
    + D9 _# Y7 A; R9 I
  1866.   d" N- a  s4 ?) C; D
  1867. B_PPU:
    - P6 F5 e( I. [' s. G) m
  1868. JSR B_WRITE
    ( ^) Z" o0 A3 Y0 Y. }/ O
  1869. RTS
    : E# P4 K/ g; B$ k, v
  1870. " E6 v. ]/ _7 Y
  1871. A_PPU:
    1 C) Y: B) s  @) {: u) G4 a* _6 ?
  1872. JSR A_WRITE& J6 l; l9 w% Y* v+ Y
  1873. RTS
    7 n* c1 }2 t3 @  k; o
  1874. 1 x$ H- V9 A2 b9 k/ s- Q5 B

  1875. / f/ }: |3 _4 S: F4 o
  1876. PAGESELECT:
    ; h, M' r% z# o' V" |& J
  1877. PAGE0:6 w$ w" l, ]7 K5 r) p
  1878. LDA $07AA6 |0 `6 u' e) a1 L$ p4 H
  1879. CMP #$000 s; Z( O- Z* a1 r2 C; P- b
  1880. BNE PAGE1
    % N8 a; U/ [3 h1 M- N9 R' ^- u9 x

  1881. 9 J; J  _# a* V# ~! p) H) l
  1882. PAGE_00:
    & V/ `+ F8 W9 t) F  x3 a
  1883. JSR BULSEL_PPU
    ; W: u* ~- X, A: B1 U1 U9 X
  1884. RTS/ y* ^- O" N; T% d) x

  1885. & _% J5 q1 i3 H: |, \6 X8 q$ ]
  1886. PAGE1:
    % g2 y! p8 {4 T' j; ~
  1887. LDA $07AA& Y* j6 z9 B) c' u5 C  l7 m
  1888. CMP #$01
    $ {- h5 ~, B( t7 G; }
  1889. BNE PAGE23 @3 ~$ x0 }! |, @) E
  1890. ) z. i8 z/ b& p+ C2 _
  1891. PAGE_01:
    $ s5 Q; _9 {7 [5 i0 F, P0 W" m$ K0 V- e0 f
  1892. JSR INVINC_PPU% i3 o! D5 I6 U6 Z6 P1 w  H
  1893. JSR LIFELC15_PPU
    $ g, e4 G6 I- H
  1894. JSR DOUCON_PPU
    " t7 u) f& X' z+ r0 k
  1895. JSR KILLON_PPU% ?! a! Y$ j. j- H
  1896. JSR SKYFLY_PPU
      {5 U- c2 \* t1 _0 k
  1897. JSR LIFELOW_PPU: |8 ?" |0 f5 h2 g7 @
  1898. RTS
    ) ?3 z0 k- M( O1 U

  1899. 4 }! J; k0 m" L& \: b
  1900. PAGE2:
    , D! T; [/ w  R6 _( Y" c3 F' Q
  1901. LDA $07AA
    9 [2 J! f7 u# \) i
  1902. CMP #$02
    8 C) a  |' i- D* k
  1903. BNE PAGE3
      e& x& R: m6 t8 M$ {
  1904. & c' d% L* z, K$ D+ K$ }2 F
  1905. PAGE_02:4 {& A$ Q; {' \4 T4 I- _
  1906. JSR BULADD_PPU8 g9 j$ v% W0 K9 V3 V; N
  1907. JSR SKINGE_PPU; o/ i+ Q  ]  d4 I, j  `
  1908. JSR BULMIX_PPU1 j& A& _5 t' m' U+ N
  1909. JSR ENELOC_PPU( P$ }* q2 A$ E" k9 W
  1910. JSR FOCFUL_PPU) e2 Z* h. U3 W* L
  1911. RTS
    5 L" \: b9 O# ]1 }2 p+ G
  1912. ) j% \# R) H+ {/ s3 u2 ?  Q  V
  1913. PAGE3:
    1 F1 k1 Y- X' q) n! l1 h
  1914. LDA $07AA( Z' z* [9 K! W; b
  1915. CMP #$03
    ) Q4 Z! x0 L# d6 i$ Y
  1916. BNE PAGE4
    , m, [7 }. J- O( J; \8 Q
  1917.   y/ ?1 }, r( B4 e) H: ^
  1918. PAGE_03:6 i& w4 [" T  r
  1919. JSR BULCON_PPU  L2 m! R$ ]& x0 R! n+ g, Y/ {3 w4 C
  1920. JSR SPEBUL_PPU
    + o) Y8 p3 F8 d' {
  1921. JSR CLEALL_PPU
    ' ?8 Z' Q! m2 M9 E+ m& M0 ?
  1922. JSR HARDMODE_PPU
    - g) z) Z( r+ V; A* U
  1923. JSR B_TO_JMPSTG_PPU- V9 X# i7 x% J; E$ H$ {
  1924. JSR A_TO_PLAMOD_PPU. m  h5 J2 ~- D& \' U8 B
  1925. RTS0 L$ e$ T7 D! z/ k4 [

  1926. 6 T4 E4 d# l# I/ p
  1927. PAGE4:
    , _! i" @' }, J' o! }+ i
  1928. LDA $07AA( ~* `5 I  ~0 s+ Y2 V
  1929. CMP #$04" ~: D1 x  d% [3 Q
  1930. BNE PAGERTS
    . t  H- P, z3 W( h, I3 b- b
  1931. 9 V8 i" ^" U" a) Z7 ]$ Z4 Q
  1932. PAGE_04:
    ) v9 T, b2 y/ x
  1933. JSR MOVSPE_PPU( @( j$ h: x/ Q, I8 S4 M8 |" b  P& k
  1934. JSR UNLJMP_PPU, r) _$ M$ x- c0 q1 O$ X
  1935. JSR DESTRO_PPU3 E1 E0 @' ^) g8 x+ G; @: r
  1936. JSR EQUBUL_PPU- {- W2 ]& L2 D+ Q7 ^' L
  1937. JSR MOVESPEED_PPU
    5 ]/ w; \8 t/ N( M, p
  1938. PAGERTS:
    # Y% V+ C. C( K7 f5 J6 v% I" v' _* s
  1939. RTS4 o/ ]: h9 z3 C& X$ M( Q
  1940. 6 }9 H( r+ ]: C" m7 q

  1941. ( B6 R* N: l( J
  1942. PLAYER_01_STRING:
    : ?: B/ [  F3 Z% \/ F/ L. w
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    ' y/ ~" S. P. W
  1944. ' B; T2 C; }5 P' d8 p& `( {

  1945. . {$ e9 r' i. ]  f! R( g& m
  1946. PLAYER_01_WRITE:  E" K1 j6 c9 B( X
  1947. LDX #$00+ @7 q) k* n0 G) q7 y: V
  1948. PLAYER_01:
    ; p, ]9 _6 u$ Y3 j, c
  1949. JSR PPUADDR_PROCESS2 h+ @! W  p: V0 W( A1 k
  1950. LDA PLAYER_01_STRING,X
    * `' U( n, X$ U8 l
  1951. STA $2007
    8 |% q- G/ f$ M2 T1 N- ^8 K
  1952. LDA #$00
    4 ?  M2 Q+ `& U3 y8 P( }8 P
  1953. STA $2000) p' ^" C! Z0 c% {  j$ D
  1954. INC $BA$ P! Z. z7 o) U/ C0 U: s
  1955. INX
      l* w2 b. y# Z  C$ |: @
  1956. CPX #$0A# u( k6 D, m/ l& ?+ u3 f
  1957. BCC PLAYER_01  y* _% a, t3 ~# y
  1958. RTS( u" M! {: u& u, a

  1959. ' a* w. Q! w$ o; f; w& C
  1960. PLAYER_01_PPU:; L4 E1 e) q& m* N" {1 U4 d& {
  1961. LDX #$00! J( S( p( S, c; H" _2 l
  1962. LDA #$64
    : x% D6 ?) r2 V; G) L# j# M0 m
  1963. STA $BA
    * P6 \$ U2 ?/ F7 W: a
  1964. LDA #$20
    - `0 E' N( v# c* [
  1965. STA $BB
    % _' T4 d! ?, o+ r9 x$ ~
  1966. JSR PLAYER_01_WRITE) |- F6 M" j9 p& U& ]9 z# O  D
  1967. RTS
    ' c  E6 z0 t  g
  1968. - d1 S, X, ?+ g2 k) H2 `" @5 O' B
  1969. PLAYER_02_STRING:8 |: I- k1 |/ @/ j4 I3 o" m
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    ! `/ `$ `8 g& Z1 R- D7 P

  1971. : m# H. b; f/ |2 i

  1972. 1 C) S) T9 D$ e7 z$ L7 D
  1973. PLAYER_02_WRITE:5 l5 E0 }: y( d
  1974. LDX #$00
    & `! {8 Y# H  I
  1975. PLAYER_02:
    4 @) n7 s4 u$ C5 l4 l( g0 ]7 J
  1976. JSR PPUADDR_PROCESS
    ; n, i. b4 f* x  Z
  1977. LDA PLAYER_02_STRING,X  U& k% T. @! v" A
  1978. STA $2007
    # [* f/ w4 k- m# {
  1979. LDA #$00" S. s/ g6 ^/ W. U
  1980. STA $2000, V1 b  ]2 g( P3 B+ f3 a6 c
  1981. INC $BA
    2 m* H6 [, n" Q5 w$ y% h1 X
  1982. INX
    + s. ^' [0 ]% L2 {+ ?
  1983. CPX #$0A! h5 C2 C0 k5 y! {
  1984. BCC PLAYER_02
    ' u5 G0 U1 [0 Z! Y
  1985. RTS
    2 T3 T! \! Z. v2 Q

  1986. . J9 n* N) q' y
  1987. PLAYER_02_PPU:
    9 ^: ]( J# V) G" v7 k" K) F
  1988. LDX #$00
    4 ^! \5 M$ W) r1 y! q  J
  1989. LDA #$73
    5 Z, c6 z, B( ^& o" }8 B% x4 w+ w
  1990. STA $BA4 Y3 j/ z0 @2 \7 t1 X- b
  1991. LDA #$20
    & v7 X3 i0 Y8 S7 Z
  1992. STA $BB5 _! Y$ }9 m% @0 b
  1993. JSR PLAYER_02_WRITE
    * P+ `& u3 n  G: ~, k% r
  1994. RTS
    7 A3 o7 D! e8 b$ U

  1995. ! D5 S2 _/ ^. m  _2 @
  1996. PPUADDR_PROCESS:7 {+ K) I! v& j! M% A
  1997. LDA $BB" M; U. ]+ z$ }" }5 a5 j! m0 i
  1998. STA $20064 G# K6 C( r. T2 ~7 ^
  1999. LDA $BA
    ) }+ K, R0 p7 @6 v- v* b, ?" y
  2000. STA $2006- ~) S1 ?3 V8 Y" e
  2001. RTS
    2 y* `. _) e) U2 G* |; N

  2002. 5 L, t  _& _; }  b+ n2 A
  2003. 8 Y/ Q8 C" _9 S
  2004. ! M+ Q3 i$ E* k( H$ D4 [0 R
  2005. ONE_STRING:; @9 m/ i$ `/ D
  2006. .BYTE $99,$98,$8F
    - ]% z. i7 @) Y9 _

  2007. # g- B+ g" T" Q$ }7 o5 q# F
  2008. TWO_STRING:
    # H! R7 t: a" q5 v- w$ l3 e$ {
  2009. .BYTE $9E,$A1,$99
    1 d& y" e& d$ P* v
  2010. 8 o$ `3 H! O; h+ _+ e2 A% {. E
  2011. ONE_TWO_PPU:% H. \+ u: G- L1 |& D
  2012. BNE ONEWR0 T; j$ `3 ]/ D' G
  2013. TWOWR:
    9 A4 M# X6 H) s; B9 W0 J& f
  2014. JSR PPUADDR_PROCESS
    ' k1 |" f3 S0 P$ B" w, Y
  2015. LDA TWO_STRING,X) \3 J2 S3 q# S' e. S
  2016. STA $2007
    ' X/ D; J$ F6 {9 d
  2017. INC $BA
    6 l3 G2 \! c0 l
  2018. INX
    " i& @4 S  ~, L6 c0 u
  2019. CPX #$031 N( ?) [2 J, n
  2020. BCC TWOWR
    ! A: I  Y) E( s8 M9 l
  2021. RTS
    - O; B) V  l& N# F6 L. G( {8 c, m
  2022. ONEWR:( u% v; b0 R! o- t" B
  2023. JSR PPUADDR_PROCESS# `% a7 b- Y" D/ y) |/ `
  2024. LDA ONE_STRING,X7 s( A# N+ w1 Z3 m0 Z- _
  2025. STA $2007
    4 g: e/ X8 ^/ K8 Q) }
  2026. INC $BA
    ) @3 g$ x+ Z7 r* _1 E  Z
  2027. INX6 v# s9 E8 [% R6 }% g
  2028. CPX #$03
    9 ^$ p. u3 u4 m7 _
  2029. BCC ONEWR/ s6 H+ a  Z' r1 L/ U$ m" f
  2030. RTS
    % @. j: {) n, y+ i4 h0 Q
  2031. - z6 R+ {2 m% o8 F
  2032. MOVESPEED_STRING:
      K/ w& i# H  J
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    ! I$ N5 ~2 v/ H% z% P/ s& {

  2034. 5 C3 H0 t! x) h! D8 k. J

  2035. 8 [5 k8 s9 V: s* o/ V/ k
  2036. MOVESPEED_WRITE:# r; O4 b( t+ b. n/ ^# ~, {) Q" c  I, E
  2037. LDX #$00
    7 L! t4 ]% F. v! {" Y! }7 T5 m6 L
  2038. MOVESPEED:3 z( t! R: z$ b/ U* p% M) }* r( x
  2039. JSR PPUADDR_PROCESS
    - T4 [/ N3 R* Q+ {; l/ u( j
  2040. LDA MOVESPEED_STRING,X  I; @4 G6 s" z& f2 c4 P$ h+ O, O
  2041. STA $20075 x  ?6 c9 h$ Q9 O1 E0 y; l+ `+ [+ o
  2042. LDA #$00
    , \/ A- [# ~# _" C
  2043. STA $2000, r3 M2 S" B0 g3 F1 n
  2044. INC $BA
    6 G8 ^% q+ f# z, m9 ^: ]
  2045. INX9 R* M' |% {. g: c" V
  2046. CPX #$0B: X0 K- L% ]1 m0 U2 C
  2047. BCC MOVESPEED
    2 e, d3 [* }. E: f& ?+ s2 w
  2048. RTS
    # X5 ^* o! H. E/ U; ]

  2049. ' V# p  y3 `% w" \
  2050. MOVESPEED_PPU:) t3 [, w! X7 m0 X% ]: j5 q5 y
  2051. LDX #$00
    7 t2 d/ P* s+ m/ n/ _
  2052. LDA #$AA- y% I+ }# |# ?/ }/ w8 |% g
  2053. STA $BA
    ' _! L0 c' K: j1 @2 i
  2054. LDA #$22$ t. M6 |+ _! [
  2055. STA $BB+ g% Z% z5 ?4 H) V1 T% G5 g) F) q5 |
  2056. JSR MOVESPEED_WRITE+ j% ~; |  Q# N! J+ x: v3 }0 y, W; n
  2057. LDA $7003  }/ a0 U  g+ H
  2058. CLC' o7 J  Q/ P- J1 u. l. k" v8 ^! w
  2059. ADC #$82
    9 _$ W8 G+ u% `) Z3 c! K
  2060. STA $2007
      Z- g: w% F2 S' f
  2061. RTS, W$ `" ^8 u4 O4 i8 C% v7 N. ]
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 549 天

[LV.9]以坛为家II

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

签到天数: 7 天

[LV.3]偶尔看看II

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

签到天数: 2060 天

[LV.Master]伴坛终老

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

签到天数: 2954 天

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

签到天数: 2099 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
' \& }8 L- e* R- r6 g
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2076 天

[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, 2025-1-20 07:10 , Processed in 1.087891 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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