EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑   H' m  P! Q7 H3 D
9 u, N1 b: @- j
     [FC][魂斗罗旋风终板END暂停显菜单]

- t" a7 R, o7 S) F  e作者:FlameCyclone(flamecyclone.ys168.com)
- {3 Z3 G  _9 b6 Y  u时间:2016/11/19 21:46:00
8 T, I/ G( q1 ~8 e7 ~更新日志:
  Z3 M4 b. h, h3 e% A; Z
2016.11.19:加入暂停显菜单(共5页).9 F2 r! _) O  z) `9 z
2016.11.12:加入无限跳跃.
8 X7 E7 P* j! D2016.11.12:加入速度调节.

5 J) R  L* t) d5 }2016.11.11:加入敌我子弹对消功能.2 |* a5 |/ J( Q) ^  z
2016.11.11:加入全屏闪灭功能.6 R; e. f, s# O! G4 G# I
2016.06.08:加入全屏瞄准功能.
2 m  D2 [$ }( D3 v' Z+ ~2016.05.31:加入弹速调节功能.
! _& C+ T8 [1 R+ |1 H! j! ]) }$ i2016.01.01:加入高难度模式.$ d- i% V  O/ y" u. k
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
5 Z( H  {. O& a$ e) v, N% \2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
2 t! I2 A) [8 i' n( r2014.07.05:双人切换功能优化.
2 h9 ~* h6 @$ j3 x/ C0 D# Y  w- T2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
3 O7 R9 {2 m# }2 I: ^' }2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.
& t1 a. S3 d4 ]+ j: i6 i2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.
' A' }$ F$ o- [% ~0 E" r& j2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
; q4 A+ x( q; ?, R2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)+ X$ M6 u, k+ F8 I8 H5 C
2014.02.13:加入自动演示通关.
% X2 c* E. x5 [4 r# D内容:/ G, A# N8 Y  @
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
0 F+ ^4 b$ f  @, A6 T4 Y* G22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
; J& J: a5 P% x21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
& I$ _& O" J, k/ F- i
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.
0 U( i" h9 n* Y. ~" l. F19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
; i' x* P, y8 |2 z. j) E) f18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
: H0 S# o2 ?3 x; @4 K17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.; b  V- h) ^; f, n  m
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
, \; _* P7 ~( d0 k01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
. b9 _9 ~% x! y/ j1 v! R2 ^02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
: i5 B/ P! j3 T7 E4 o) ?03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
" Z+ z3 q- K" M% ^! C4 ^' A3 H04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.1 w! z$ J9 z& D9 `. X* f# _3 ^5 P
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.
; M; H" D9 b! r$ V$ W  Z06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.* Y; U; e6 X! @7 \& Y
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.7 h  z( i6 u; G  g
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
! L* A& G- L4 w! R# ^09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.  |6 w* J7 G6 h5 }1 G( `; r
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合., G# \$ _0 c/ \; w6 V' l
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.- v( t* S/ p' W$ _4 g$ w
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
- P# d9 r) V* r! h6 J13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.5 |% z: l  F6 M
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
  g" v$ m( l! Q8 @; _4 n2 p15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。! B/ _8 R8 G4 ^
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
- Y0 }0 y/ ?: G) U3 `B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!# J- y8 m) p+ l8 c% k6 |; [
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
" @; N' h* w; i" R6 [4 [4 c/ X2 P# M7 l, x% d( F* J
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
. X: B1 K3 X4 j5 S8 G/ {8 N; [+ A' C欢迎大家转载,转载时必须注明出处.! ~. \$ n$ @) s- p

) c  X) M' O* @# o2 t# I( O5 O' }; c
游客,如果您要查看本帖隐藏内容请回复
7 W, B' K; L& R

, t5 k# g6 T! Y* u! |" g忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
/ {9 T/ j. q; b0 j$ W# ^这几天的劳动成果如下:
  1. .ORG $B400) j  b$ p" i8 a6 q; F; y, v

  2. 2 _: {. z0 V  w- ]

  3. - q) w& T' u- J" B) k& A
  4. PROREG:! `5 d0 k3 z3 [; w% F8 X8 Y# k5 m
  5. PHA1 ]: J' d4 x1 a! q
  6. TXA
    + Z, r- u2 u0 K3 S) h1 X* |" ]
  7. PHA
    6 P0 m4 W) [; X# H
  8. TYA
    4 N+ i% F  k. W
  9. PHA
    ' f' x9 ?; T( y* q
  10. LDA $25: t, Y4 t* a/ a; a  r0 i
  11. CMP #$01
    3 `2 `$ E* \- f% W, ~* B" c; ?9 |
  12. BNE RE
    ! |6 `- L7 a+ A/ @& m; Z
  13. LDA $010A# W4 z  v) u4 i0 e2 Q! K( j
  14. CMP #$00
    * J8 e  H+ [" m$ E
  15. BEQ P13 W2 J% E, \  N% z+ U% ^
  16. , f4 C* o6 H- I6 Q- p% g: h' H
  17. RE:+ D+ K4 P) M* T
  18. JMP PPUWRITE/ H0 @, f1 B  \, [) E

  19. 2 q* e2 q* w2 ]8 `& D9 }7 d. a
  20. P1:                ; 条件判断
    3 c9 @( h# c# T8 i+ A; `) X
  21. LDA $7FFF3 ~9 R' L. _# L! ?
  22. CMP #$FF0 k. Q" U1 u2 [  h& ~9 d: P9 T
  23. BNE P1RP
    # l, p/ D8 R% n& {$ O& J4 v" S
  24. LDA $7FA0
    5 Y. z$ [  w3 H
  25. CMP #$00
    - e3 u9 ^- |3 |8 G# u
  26. BNE P1CMP) @1 v. T% V: J% R; F5 @
  27. LDA $20015 Y& Q8 z' u, o4 r8 c
  28. PHA
    % a4 D  y8 v2 p# G/ B
  29. LDA #$00
    ' ~0 F# U4 ?( y' P6 a" S+ ~9 e
  30. STA $20013 o, }2 n1 I- p. |) V
  31. LDA #$FF
    9 |8 `% F- U4 p! F5 ^
  32. STA $7FA0! `+ @( S* Q0 Q( Z* ?  a
  33. JSR CLEANA, v' s! ?0 p) S% ]3 `; L* ^
  34. PLA
    , h- `( P1 ^1 [/ x4 x0 V" ~4 i
  35. STA $2001- S: A% M# k; [
  36. JMP PPUWRITE8 O, ~5 ^/ B  W1 x! y. ?7 D
  37. P1CMP:! N: J, W/ X, }+ ^6 W
  38. LDA $7FFF7 w, t8 k5 ^9 o( F0 `9 S" d& \
  39. CMP #$00# h/ v, j/ s  {" A/ E* w
  40. BNE RE
    $ f% Z3 l: Z' }5 R4 p; ^$ g) Y+ W
  41. P1RP:
    5 I( y: c  D  Q( W! g8 j! ]
  42. LDA $2002
    3 A) w. h  N- ]& C' e
  43. LDA #$00
    . G& p% ^  r. r
  44. STA $20014 y, N) U) M. C( X& {; N, p
  45. LDA #$FF
    6 I  a. W: z0 |  k/ V, `
  46. STA $7FFF$ j4 b" D6 y1 O) N, s
  47. STA $7FA08 P' W. X9 Z) `
  48. JSR COPYPPU
    $ x/ J' K! c4 x2 U
  49. PIRP2:' I$ H, J) s: l  J
  50. JSR CLEANA( q" x. h5 m3 ]0 R
  51. JMP PPUWRITE
    8 h2 @6 y) C% l4 C6 L( h6 `

  52. 5 w( s/ g2 k+ m# F3 H
  53. COPYPPU:2 L/ w8 d: p( q7 ~
  54. L0:
    * p8 @% ^$ Z3 H5 m. Q4 t+ \+ \3 B# y
  55. LDA $30
    0 \8 S# s+ I  T: \( |+ E) v
  56. CMP #$023 w& p9 y' |! @* }2 |
  57. BNE UNPROFC
      H" D2 W4 q  G0 t- f
  58. LDA $FC$ j1 }! N7 `: ~  Q5 ~
  59. STA $7EFC; B4 p& E( U% ^/ A
  60. LDA #$00
    0 s8 v# B3 ]$ r. A9 W5 R# i
  61. STA $FC
    ( D" _# u6 ^2 K1 Y
  62. UNPROFC:: k% T2 ]0 x: s
  63. LDA $FD
    " `( H5 }: @" x. S
  64. STA $7EFD& w$ Y9 Q& B0 N4 E9 O' v
  65. LDA $FF1 _& i( @$ Y# S3 F2 X0 t
  66. STA $7EFF% p* P( f6 L) K2 W2 {1 Y
  67. LDA #$00& q0 ~, |( p, D2 g
  68. STA $FD
    $ p8 G0 b  z0 }
  69. LDA #$B0
    - o% q$ A3 z- U  n2 c* m! N" Y
  70. STA $FF8 k: w" J- ^: |3 R. o3 j8 L
  71. LDA $07C1
    3 b' p. D2 Y% g6 j& K% P; }" m
  72. STA $7FC1& ?1 C& ]  `% D$ {3 n6 U* F+ I
  73. LDA #$3F
    + y( G3 G5 X# K9 R8 v: w. ~8 w% Y3 u5 ]
  74. STA $2006; a5 S, c8 \, v, U, t
  75. LDA #$017 j" y: N7 ^9 Q. U/ S2 D. A# L3 [; j! q
  76. STA $20068 P5 {1 ^6 c0 `! S5 q  B
  77. LDA #$24
    * M3 l( b( O/ O# J# M7 g' u
  78. STA $2007
    ( g# C5 C% c/ ~0 T7 Q  i4 y
  79. LDA $07F66 |8 }6 z. P/ P* S
  80. STA $7FFE8 d3 |2 N% g, |- C7 g0 p( u! s& O
  81. LDA $00FE
    2 Y+ |2 O  h" D" J6 ~
  82. STA $7FFD( w& M4 z1 z) ~1 j5 C/ l0 j
  83. LDX #$00& m! F, |& ~1 L, @) A1 P
  84. LDY #$00% o) Z1 {% n1 C0 j
  85. LDA $BD9 I0 ~+ [. L0 t5 `
  86. PHA5 {1 {5 ]# u6 M. Q+ ]& }8 a+ V9 y& F
  87. LDA $BC( T0 H! Z' G1 H  i3 r6 K6 ]8 O
  88. PHA
    # \+ X1 K0 z: B$ b7 x: N
  89. LDA $BB
    5 `6 y% X0 }! @+ X7 e! f
  90. PHA
    ' K$ T4 i6 b" m% o9 g
  91. LDA $BA
    3 c" O8 l* X0 A, n) s9 o8 Q- N
  92. PHA
    & {+ W# {* j' @( [' S5 M
  93. LDA $B9$ }0 @* M, P; Y8 c# ?% Q# @
  94. PHA
    * v6 f, C' q' e+ ?
  95. LDA $B8- m" F2 p8 n" p
  96. PHA: O) \! \6 M/ B9 h& m# v4 M: z5 i
  97. LDA #$001 U6 j  }, T' x% D' c: L' o; ?
  98. STA $B8
    * g5 y  H" `# c; r6 r; k
  99. STA $B9( `  G+ a* I/ \% j' p
  100. STA $BA2 h  M" q5 L$ A  I8 I  C# {
  101. STA $BB) d6 S8 I8 W. r. d% d8 M, n9 @
  102. STA $BC6 [' B9 b( r4 h6 i) Z9 _
  103. STA $BD
    , {) M/ W$ U2 K9 \
  104. LDA #$00" z  N+ @  x) }$ L* }
  105. STA $BA
    . O: H1 E$ g$ |5 C! Y& g: Y
  106. LDA #$20
    / T+ ]: A! ~6 J& a( l4 G
  107. STA $BB* D" d, Y3 ]- }' D+ f" q7 P
  108. LDA #$00- O$ w: ^# g$ l9 n4 A/ `
  109. STA $BC
    1 k3 ]" @4 U8 J1 c
  110. LDA #$602 z7 j, U2 @/ p. m1 E( M
  111. STA $BD+ _3 G% p  T! b3 ?; ?% g
  112. . Y  {6 [: ^# v2 Z. P8 ]
  113. L1:                ; PPU复制, y9 [! x5 ^% i" t
  114. LDA $BB
    , s. n7 A" |# A9 r5 u
  115. CMP #$30
    ; z9 k0 Z2 E  E  ]- e' d' x
  116. BNE L2
    7 M7 o0 \3 E5 @2 O. {2 ?
  117. LDA $BA
    3 s% N) ~" n6 X& G( r6 s, [
  118. CMP #$00) K% F( `' a% d8 W' u- `6 g. V& Z  d
  119. BEQ PROADPLA
    9 Y1 ]- ]. L+ U1 x, K* D6 O% O$ a  w

  120. 3 r: L2 x2 g& F+ i1 ?
  121. L2:
    6 R0 F( M7 A$ i% L- C
  122. LDA $BB& g) X7 N# u  ^8 O3 j. T
  123. STA $2006
    0 @  b1 _7 H( T4 E6 ^6 t+ N
  124. LDA $BA
    6 f  b! i, {9 ^
  125. STA $2006
    * U" I9 k! U7 E7 R
  126. 9 a2 K. I$ T" \% i4 P6 K
  127. L3:
    6 S, Z6 _+ R7 r! Y
  128. LDA $2007* l. c7 I/ _+ Y- k$ ~
  129. LDA $2007
      ~' p" s8 f. N
  130. STA ($BC),Y, R% R% h8 J+ W

  131. + f& g1 H; o& ?8 ]- m
  132. L4:
    . O2 R& L$ d7 `! D' K/ k) ^
  133. LDA #$00
    5 y1 \8 R: q( }+ f! P
  134. STA $2000. d/ {  P: Y0 N3 q# v& u
  135. INX2 t3 S& \; _. g0 ?
  136. INC $BA
    ! V; P. l$ G" P5 m3 v
  137. INC $BC
    8 P" H! m! m$ Z+ p- k
  138. CPX #$00% D4 }1 Q: t- t( Q- j; s
  139. BNE L1
    % J$ D# G9 W& D
  140. INC $BB* p) O. J) v7 z0 Q& b& H1 w( }; |
  141. INC $BD/ U* b8 C& w5 ~3 o; F7 V$ I
  142. JMP L1' n2 M, s+ {7 S7 x9 R5 b. h  U  x

  143. # \8 @' N  J6 @2 q
  144. PROADPLA:                ;出栈4 r; o' d& _/ X! `9 }& I/ ]/ J3 ?
  145. PLA- R# |  p6 E* m& I3 u" r
  146. STA $B88 J8 t' A3 s* R2 @: @, }
  147. PLA8 }" G  V/ y/ ]# P1 g
  148. STA $B9: {1 K$ E9 r4 F: e( ]* V
  149. PLA
    / {/ a6 j, q4 @/ J
  150. STA $BA/ e' w& d0 n6 J* T: h
  151. PLA
    7 i$ {, g/ i* k: |" ~
  152. STA $BB9 c% P2 ~1 j* X, G
  153. PLA
    & v- n. X6 {3 M+ n) m  s3 Z
  154. STA $BC
    ( `+ ?$ e7 B& Z; K' F# c7 |$ M
  155. PLA) v9 ]! L% @. }. S! H
  156. STA $BD& \4 F+ q4 B4 N! j
  157. CPRE:% k% }; K0 [5 E& W
  158. RTS1 n, C+ \+ r  P6 u- V

  159. 7 _4 I- C  i  x! e9 D
  160. CLEANA:                ; PPU清空
    ( Z4 R9 i5 d1 ]' H2 R8 _
  161. LDA $BD4 P9 ^  U  a. `$ A) T+ Z6 ^$ `, v% X
  162. PHA5 [3 `" R, \& X$ ]" o: r! t
  163. LDA $BC! G. E; g8 m8 W* R$ [6 _! u$ U
  164. PHA
      C4 k% ?% v- `# u1 o) l4 i& ]
  165. LDA $BB
    , I$ h1 m7 g# C8 I) Z6 w! T( k1 j
  166. PHA
    ( C% P0 e8 j, R. v
  167. LDA $BA1 ~: B% @# [1 e- z) V) o" U5 k, b7 S
  168. PHA8 u! w# W% }8 K# D
  169. LDA $B99 x2 q- i" Z6 `
  170. PHA
    $ V. G* S6 Z0 ?/ _$ y) O- F
  171. LDA $B84 B$ ~1 i* z; R' Y3 ~
  172. PHA
    & S) K. z7 h. C0 b
  173. LDA #$00
    & Z6 j, M1 d. D4 F' E( J  B
  174. STA $B8
    # Y2 |0 w/ [& G/ K
  175. STA $B9
    ; A  H( v% U7 K0 d3 H- b: k4 P
  176. STA $BA) }/ d* F/ j! W
  177. STA $BB1 z: Y  H( H8 H9 @4 r7 D  r
  178. STA $BC9 k5 F# y1 N0 k* Y  u
  179. STA $BD
    7 J  ?# o  Z( Q8 w; N2 ]
  180. LDX #$00
    . h) x2 h/ c# K, _3 L. M8 H
  181. LDY #$00
    & m8 d$ f$ |$ O" u
  182. LDA #$00
    5 Y3 c$ E8 {. p8 G$ u
  183. STA $BA
    " l+ X1 o/ n/ |& Z, H/ H
  184. LDA #$20
    ) z* V. ?/ s! {! @4 n
  185. STA $BB
      E& l, R5 f; T) j9 \* l& T
  186. 4 Q# M8 c: m! `& {& A
  187. CL1:
    ( |; e7 D  k5 f- t  r
  188. LDA $BB
    3 Z( j; H$ j7 K3 S$ J$ D
  189. CMP #$30
    $ g1 \& k8 G3 A  b( \! r0 p, ^
  190. BNE CL2* N! k/ U5 a9 D! w: N
  191. LDA $BA2 k0 V  w( e" F
  192. CMP #$00
    5 ~! q# ^1 H$ S: O. L2 s  n* O
  193. BEQ FREEWRIYE
    6 e- @! t( P" G- q$ V

  194. ' O. v6 |: u, B7 m
  195. CL2:; \$ n1 Y, C; m, ]1 r, S1 n
  196. LDA $BB8 ~; Y. Y' B: {
  197. STA $2006) |# J, C, m% @6 [
  198. LDA $BA
    8 f+ ^! b# Z2 a; m
  199. STA $2006* R0 N) C6 m( v% D2 e$ P0 \
  200. ! w: S! K' W7 I" m( ]3 ~3 w
  201. CL3:
    , h- q2 J9 [( \0 N5 f
  202. LDA #$003 `( X* j+ z5 }' l" k
  203. STA $2007
    ( V0 w6 p: Q, h& V6 w

  204. 0 x3 J! U$ T2 j2 _
  205. CL4:
    * |& h3 \9 s. s1 d% j7 T
  206. LDA #$00, Z: D# _3 V! D( j9 X& Q9 _. g& e
  207. STA $2000/ Q. R: \! f9 Y# F. d; v8 U
  208. INX
    4 U' L8 d8 X3 {# \/ u9 E, r
  209. INC $BA
    + H2 f: r8 e0 ]* z( k2 h
  210. CPX #$009 A9 [8 R% \9 z* P
  211. BNE CL1# d0 y0 i1 F- [& q) P
  212. INC $BB1 n- c  d8 L3 f- d5 b% ~- C
  213. JMP CL1 ' f4 O/ t8 T0 }, H8 v" Z* W, Y* w

  214. ) b( I+ M! U7 M; k; q  w/ R

  215. $ ^+ P2 I9 @+ K! P" }2 _
  216. FREEWRIYE:8 _' ?( V; e  G
  217. JSR FREE
    ; {# A5 t+ ~3 w2 ?5 ~( \5 M

  218. 0 R4 M) q/ r8 n: s3 T( m/ H4 R
  219. 2 E$ q  x/ @, Q, W: F3 D' f+ N. a/ X

  220. ' _# W: f" [! w0 a: D+ Y, Y

  221. 7 b5 a  ]/ C2 E" g, U: z

  222. " W' z6 m: @  W
  223. CLEANF:                ; 恢复现场
    / P8 Y: J# q; W! G7 }, q9 h
  224. LDA #$08. a# N! E6 m5 E1 @  g$ p
  225. STA $FE, p( }0 t7 \8 G
  226. LDA #$001 R1 X# Q  U  e7 C
  227. STA $07F6
    ! n( K4 C3 h. h6 ]' t2 Y
  228. LDA #$24
    3 u6 d" p) c( t6 j" N
  229. STA $7FC0# s' B% w7 @. o( d, n  ~
  230. PLA; R; [& i. i. T
  231. STA $B8! I8 {6 o( A' u0 ?7 c8 W
  232. PLA' J' f* p8 r3 j/ O4 B3 [
  233. STA $B9
    ( A2 k. ]' z7 N0 Q2 T0 Y' l
  234. PLA
    ; @* j4 s# ]9 Y$ ?9 I
  235. STA $BA/ @, Z7 e: G) }% `
  236. PLA- |6 b9 l$ b2 C
  237. STA $BB8 V* r  S* ^3 c( L
  238. PLA9 Q; \, F5 Y1 G2 v' e* q
  239. STA $BC  @/ _9 R- l8 {6 q0 t
  240. PLA1 p% r, u, X7 J
  241. STA $BD- a6 \5 X0 c! @4 K6 N
  242. CLRF:
    ; q' K; j& c/ {+ f  f) [
  243. RTS7 |3 X& [/ k% W! K

  244. 6 v" v; P; g& {) d8 V0 `
  245. W_DATA:
    ; J  f% I2 ]+ n- B5 {) c
  246. .BYTE $00,$01,$02,$03,$04! e, b0 ^! q. |. u) @+ Z0 G# C
  247.     n: b+ Q) d( e% e% b+ \- i
  248. W_PPU:7 f# q) Y( E  {7 d& _. @
  249. .BYTE $98,$97,$90,$9D,$96# J! b6 r1 O/ |

  250. % c7 J  y. Z4 q8 w/ K- f6 H2 P
  251. P1_STRING:5 \/ P4 L- A6 f* E( A3 Y
  252. .BYTE $9A,$82,$00                ;"P1"
    + ^: i* i" Y9 i6 I* M4 s1 u

  253. % G4 V) T. v5 v7 V9 Z+ R
  254. P2_STRING:' W- b2 `- L: \. X- t# ~- j
  255. .BYTE $9A,$83,$00                ;"P2"& Q" o4 S% v& y9 D0 y- ?
  256. : P! ~% V0 y2 u' G; p+ Z
  257. WEAPON_STRING:
    3 \9 z4 ?* t8 y$ ^1 t
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"# n) J4 h. S2 \
  259. / U5 {+ C9 V: q0 ^  d4 t) H2 K
  260. RELIFE_STRING:
    6 Z7 ~6 W! ^, @$ t) `6 Y0 t  ^: ?
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    . ]8 B2 N5 y$ y) k# ~: K
  262. $ ^/ U/ h3 X7 q$ ^0 B
  263. P1_PPU:
    8 e4 d& K+ L: A# B+ Q/ Q. ~* F
  264. LDX #$00& f8 Q" m+ V% P7 x% J  i3 L

  265. 2 O5 b! K/ S. V
  266. P1_PPUW:
    ) B  A: C# e4 c1 W' K; E/ j
  267. JSR PPUADDR_PROCESS& _, x1 W4 l; p* d
  268. LDA P1_STRING,X& K" E/ m" k7 o# L8 k. \8 T- ?+ c
  269. STA $2007
    ' ^; ^$ E' o- l  b1 y" k
  270. INX& l) F- J; U: g( \0 _2 F# r  }
  271. INC $BA
    + v2 Q. n# h" _3 S# P: v
  272. CPX #$03' m8 V1 }! {5 I
  273. BCC P1_PPUW
    8 o; b0 ~9 e  ?5 Z" M
  274. LDX #$00; x# c1 Y" Y* W8 A; F
  275. RTS
    / b  I! y% C' G& m

  276. $ _2 o# m. x7 L8 c
  277. P2_PPU:6 `; s0 x( m$ G$ r/ @1 d8 |8 O
  278. LDX #$00- [' O$ w: ?8 U7 R, |1 R6 b6 R

  279. 1 ]+ H0 `" B5 m! w
  280. P2_PPUW:# e1 g4 f3 ^/ Z' j8 a
  281. JSR PPUADDR_PROCESS! C; B! h/ w- ]) q" f. g/ t
  282. LDA P2_STRING,X( A, A; K! f& b- `! r
  283. STA $2007& s$ b- X% {2 B
  284. INX
    6 B; H5 d& L( @0 w" @. S" j
  285. INC $BA
    6 ?1 m& z4 |. E7 z: L
  286. CPX #$03; E' ~! u8 t/ Q# }; ?7 d+ ~* k& y8 @
  287. BCC P2_PPUW
      u  a, x, p% h; E% H' h" A
  288. LDX #$00- R6 F- u: S1 Q3 u; @9 U3 s
  289. RTS
    ' ^; B/ R2 ]  u9 G
  290. & J  L* g9 g+ l. L+ v+ A
  291.   w0 o; s0 n6 g: P
  292. LDA $BB! \  }9 P0 }9 ^; i9 d
  293. STA $2006
    9 x& Y3 `6 N+ m" x1 w
  294. LDA $BA# `) P. m6 ~( a9 S: p& U6 J
  295. STA $2006
    2 F1 l: j) ?9 {# ^9 p
  296. RTS
    & r6 ^; w% r/ X) F3 L0 A3 L+ X

  297. ' i( Z3 D/ n* I5 O3 u

  298. / z0 v* j* L! n4 v; h& W

  299. + ]2 B: F. Q) }3 {* B- _
  300. PLAYERLIFE:) l" D/ D& V3 X' {
  301. JSR LIFETODEC
    & _' I- j/ g  L
  302. LIFEPPU1:% N9 ^2 G' o- o: T8 Z
  303. LDX #$00
    0 o  r9 f' B. y" M/ {4 h; ~
  304. LIFEPPU1RE:
    ' Z+ r0 b8 k' z  w# [, ^7 @
  305. JSR PPUADDR_PROCESS: |% O: n1 ]0 ]
  306. LDA RELIFE_STRING,X
    4 w4 O7 {6 S% L* g$ S+ D, V* W
  307. STA $2007/ {$ P6 [+ Z6 X; u3 |
  308. INX* {; ?, z( r! {# [% |5 o1 k
  309. INC $BA
    0 n7 j4 _! ]( T" d9 t) x. \
  310. CPX #$07
    $ L- Q! V, ?' q$ H. Z& d
  311. BCC LIFEPPU1RE# D% w: L: F) l1 F5 q
  312. ' K- F; \" \! E% q% g
  313. LIFEDEC:                ;生命显示写入
    3 u. S3 k$ w$ h# V/ T8 l
  314. LDX #$00% H/ e/ B# @3 g9 A
  315. LIFEDECRE:% A, d- h8 I+ Q2 a& A; A
  316. LDA $7A03,X: U( j9 s& A# S$ }! G5 B: L+ w3 R! U
  317. CLC
      y8 ]- W, t3 D) k, g$ ^8 B2 `3 x
  318. ADC #$81
    5 T* f) d) @6 ^$ y
  319. STA $2007" \* x8 B; q/ W: d
  320. INX
    9 T& D& M+ V3 Z, f7 I: U1 M
  321. INC $BA8 E+ c% x; b  R) Y. r4 Z7 x
  322. CPX #$030 f7 L1 r# V9 O* ]
  323. BCC LIFEDECRE
    # l2 P& ]1 J( Z1 k
  324. LDX #$00
    / n# Y+ |6 u  L9 U# c! G6 t" ~* i
  325. RTS
    $ Z- U0 l5 i! h/ m$ W, r* }! b

  326. - _1 u! Y5 D4 H. G' H- ]/ \
  327. LIFETODEC:                ;十进制转换
    7 v( |: s: O8 ^7 c! g; x
  328. LIFEL1:        ;initialise8 @1 j0 @, x' K0 V0 f  w2 a
  329. STA $7A00        ;$7A00=F3
    ! ^$ @8 D" U# z! y% L6 |
  330. LDA #$00. h0 p& V) u# r5 B% Z
  331. STA $7A03        ;$7A03=002 T% u. E- j- C. N# p' ?: K% W
  332. STA $7A04        ;$7A04=00
    2 T) ]3 U. q, [- y5 a' g/ [3 S
  333. STA $7A05        ;$7A05=00
    6 x; n$ p- J- Y, u" f3 |' {5 b/ h
  334. LIFEL2:        ;copy data $7A00 to 6001, F% C8 `& o$ O' _6 V
  335. LDA $7A00
    8 i/ G; L9 v3 `8 U* B: g* a
  336. STA $7A01
    ( v, N8 t2 `3 K

  337. " @4 q1 U- v9 }* F& u2 `
  338. LIFEL3:         ;hundred! U4 ?- m0 U0 o  F0 D
  339. LDA $7A01
    6 U) Y" ^+ m. \7 J6 \
  340. CMP #$64( F' c6 ^) I+ W* Z( J9 z
  341. BCC LIFEL6                ;$7A01<100 goto L6
    4 s/ t( y/ X  @& ~! [# u
  342. LIFEL4:3 V- L" ~$ J( e- R9 \2 p
  343. LDA $7A013 C. _$ |) @1 w/ m; i
  344. SEC
    & f+ _( z) j* |0 W0 M
  345. SBC #$64        ;$7A01=$7A01-100
    / p6 n5 C" c* J. {; ~; A& k* e  Z
  346. STA $7A01  Q% v& t7 T7 Y4 K: v2 t
  347. INC $7A03        ;hundred++& d  G7 V* i2 j
  348. LIFEL5:
    " K' E4 e7 O$ M/ }
  349. LDA $7A01' u0 w5 Y. r1 J* j' Z+ G- _, t
  350. CMP #$64
    7 G( Y1 V2 B: G( t& n8 U
  351. BCS LIFEL4                ;$7A01>100 goto L4
    ( O. k; h6 j; S+ ~$ F! o+ o

  352. ! i' a9 v8 `( |: q: `0 z
  353. LIFEL6:        ;decade8 F- J, j2 @6 {
  354. LDA $7A01
    8 L2 H4 C% f3 o0 ^; B3 O
  355. CMP #$0A
    + d4 |  P9 B8 r/ b
  356. BCC LIFEL9                ;$7A01<10 goto L9
    $ R' }+ W( c# c/ d; K1 {
  357. LIFEL7:        $ v! W- S+ }5 u$ n9 y3 y- z
  358. LDA $7A01
    : g& T0 Z% ~3 K- S
  359. SEC
    + U& ^' L# X& O( I
  360. SBC #$0A
    7 t1 {# @2 S9 N, C/ z
  361. STA $7A01        ;$7A01=$7A01-10
      k% ?, ?5 A# {% Y
  362. INC $7A04        ;decade++! h9 S, C/ [. s7 g% b; Y5 c" V
  363. LIFEL8:
    2 t3 H1 A1 P4 A$ B/ c
  364. LDA $7A012 s" a8 S, V+ {
  365. CMP #$0A: I/ ~7 j; K! s% I; }- ?4 U
  366. BCS LIFEL7                ;$7A01>10 goto L7( w* L# n% W+ f. L$ n  _7 v
  367. ;unit
    4 i" g4 v1 ~  D) |4 x
  368. LIFEL9:
    , J3 S) b$ c1 O+ T
  369. LDA $7A01        ;$7A05=$7A01
    1 z. x* X& [9 x. ^9 m' U$ [% |
  370. STA $7A05        ;unit0 C$ v# s; k0 q. p) O
  371. RTS        ;return" ?2 G) U: b& w6 F
  372. ' g8 L4 l+ Y' P, v4 }

  373. ( D& d9 b7 q' u5 G* u6 M# P* Z

  374. 9 E$ O4 q; g' y6 C% D
  375. WEA:                ;武器ppu写入
    ' e2 ^# [6 D$ I/ g
  376. LDX #$00
    ' |2 \8 a/ X+ }/ X4 c. Y7 I
  377. WEARE:2 J  {( W6 u- ~# t3 Q
  378. JSR PPUADDR_PROCESS
    + u* n; S- Z9 ^+ @! d( g
  379. LDA WEAPON_STRING,X
    ; L7 ]! g3 r8 c) Q0 H" D& f
  380. STA $2007  x/ S* Y, O( R! f8 T+ ]- f
  381. LDA #$00
    & v0 X5 K3 W, N! \2 @, [* ]- q
  382. STA $2000
    . I/ q9 c; q7 k- c% a8 n6 q$ i3 f
  383. INX4 {" n7 w7 x5 f+ d
  384. INC $BA
    1 U0 n2 l! E. \" m& [
  385. CPX #$07" n5 B2 f* t+ E4 E5 j5 \9 ^
  386. BCC WEARE8 P3 C; B7 |3 }* _% }% U# P

  387. 6 g' [$ E* P1 ]- B$ d
  388. READ_WEA:0 T2 |: \3 c: q% b* v, G
  389. LDA $B9/ H! u5 }9 `2 h8 U7 t. m
  390. AND #$10
    ' X; w  c' J  s; {4 A  @+ S9 y& ^2 E
  391. BEQ NWEA9 J, @. y( E4 g8 m8 B5 K& x: W  M
  392. SWEA:
    7 I7 p1 q5 ^4 C' ]9 Z
  393. + `1 L6 p; ^5 k- R( w5 R
  394. LDA #$9D
    ( ~3 i6 `7 N% y% T$ W% m
  395. STA $2007( B8 |; I& o( v8 i
  396. LDA #$00# z  j3 k, l' H5 h
  397. STA $2000
    1 a: y: S$ U; o) t% _
  398. INC $BA! Q3 s" y3 k: A- K& X/ ]! Q
  399. LDX #$00
    6 P! `; D( m# a! n
  400. JMP WEAREAD$ u7 |" z5 ^! J8 k$ r. f9 k
  401. NWEA:
    ; J2 d& h: m1 N2 s- u) U
  402. # c# V% j% |: d3 s+ `
  403. LDA #$8D2 n8 Y4 ~1 o: N) M  d
  404. STA $2007
    0 e3 \0 J4 \* p  W/ R- F! x
  405. LDA #$00
      f. ^  |1 l, V. a& W# \; G" i
  406. STA $2000
    5 Z( Q: I* N# A: V* Q
  407. INC $BA
    . w. A( R3 x8 T5 X
  408. LDX #$00
    4 \4 }5 e, O' n- L4 V% ^
  409. WEAREAD:! [/ O- q$ y2 J6 k! Z, e2 L
  410. LDA $B97 u) [+ M; d! B0 g
  411. AND #$EF
    9 Q1 i2 J  M; g  ?
  412. CMP W_DATA,X
    9 z7 A- [/ J# ^) U4 }( g' Q( b
  413. BNE WEACMP
    5 p) X  B3 f; O% L' T
  414. : l. {, v8 w; p) T& l
  415. LDA W_PPU,X/ g8 [0 I; A$ G; d" ^* T5 y
  416. STA $20072 |8 W( M1 O+ K5 i. E
  417. LDA #$00
    5 j% {, ?5 g1 J
  418. STA $2000
    8 O" X+ p: b1 F9 c' V, @6 \

  419. / W5 i& _  U9 i
  420. WEACMP:
    # U' A+ g8 p$ V; e1 Z8 ~* P/ z
  421. INX* B3 U2 T( _' x: v6 J
  422. CPX #$05
    ) T& T8 |# ]+ J# H4 t5 c
  423. BCC WEAREAD+ ?3 |8 M5 m3 b  Q" P" V
  424. RTS4 A; R6 j3 @3 d0 U* B! V
  425. $ r2 X3 u! C& u: }1 r6 O
  426. . O$ s6 [) Z) \, q' v6 h
  427. PPUWRITE:1 E+ ]7 |7 B% q  W* R" v
  428. PLA
    ' H2 V$ z. q* s0 X/ p* e; B0 c3 E' r
  429. TAY2 r4 ]8 a! M. g  j
  430. PLA
    $ d- T$ ^4 D, B. B8 B4 A
  431. TAX. z  K8 O6 N) O
  432. PLA8 `: c' {; d. P
  433. LDA $251 z; t# Z" A6 |  [+ W1 E
  434. CMP #$00
    & O* j) \( P( p5 [( T8 l+ Z) h8 i
  435. BEQ WP1
    ) }7 R% }$ n' K7 Q$ ]
  436. LDA $25
    4 ^1 H% q( j& T* D1 \
  437. CMP #$01$ [: l5 b/ G, i
  438. BNE WRE
    9 |! t$ o$ s7 D8 Y, a+ R% W  X- I
  439. LDA $F5,X
    / z9 @. m/ Y- `
  440. AND #$EF/ i8 F1 [, V4 R' z4 b5 E
  441. BEQ WRE8 \" K+ m" s4 r9 f4 V( R
  442. LDA #$00' y9 [& E0 Q6 }  v3 i; b8 J1 |
  443. STA $7FA0  t7 ^9 ?; O& z+ v- e; D! H

  444. : ~" N* x$ v  G' z$ s' W% E
  445. WRE:5 c9 `/ w" i" ^. x
  446. JMP $A000, T) O- k" T, n/ f$ R' }
  447. * |5 E; S# q; i1 l$ s0 l- d6 v  I
  448. WP1:0 |) r. ^1 ^) r. O6 U
  449. LDA $7FFF, u1 y5 n" e. r9 F
  450. CMP #$FF) y; V+ _8 r: [. k
  451. BNE WRE
    6 e+ j+ j. ^/ q3 Z, z0 |
  452. LDA #$00/ ~( g; z0 ?( u. K  F$ i
  453. STA $2001
    6 O* N7 T* ]4 \. M5 I+ l
  454. LDA $BD! U% M* q2 `3 ^% q
  455. PHA
    8 _) a/ U: d2 f& r8 r! h' y
  456. LDA $BC' f" [9 q- z2 w/ Q
  457. PHA4 v; \( b; n5 x$ S
  458. LDA $BB
    ( u. G+ Z4 ~1 ^6 h! Y( H, W
  459. PHA$ L# V$ G" i5 x( @) R
  460. LDA $BA: ?( M( O0 }; d. H& f
  461. PHA7 G9 {- K4 f# d6 o: ]0 O
  462. LDA $B9. l( w$ x8 C1 Z* M  P6 c
  463. PHA0 L" u1 ~5 [  s; A! S3 m
  464. LDA $B8- s# U+ F( q: U' E+ J
  465. PHA) A: a( H8 U. [7 J* I
  466. LDA #$00
    3 `5 L( X7 Y* s! B
  467. STA $B8
    2 a4 s& }7 r" E3 Z2 f" y
  468. STA $B9
    : Z- w& F* I4 Q4 i
  469. STA $BA5 J* d7 e* E. t% S5 L8 `
  470. STA $BB
    0 A+ Z' b2 S3 m" D, y$ }( L1 i2 B3 d
  471. STA $BC. [8 t6 i- {$ ^
  472. STA $BD
    , L0 Q0 o8 u) Y2 h7 ]% p
  473. LDA #$00( P" c9 b1 c0 U2 e) x# F: v
  474. STA $7FFF
    : ^, x/ `2 \$ N! @; V6 B
  475. LDA $30
    7 G9 c. W8 x) [% d! p) W1 K
  476. CMP #$02
    6 F+ u  V2 l. f0 z
  477. BNE UNPROCPL6 m+ |4 z7 C7 Y- `, b& W( X- ?2 c! e/ l, R
  478. LDA $7EFC0 ^: |- _1 b8 ]/ L1 @; Z: }% V7 v$ e
  479. STA $FC
    ; ]8 P8 E/ `* S8 Z; \( O
  480. LDA #$000 }8 j$ N' f5 `4 h# A1 [( Q' l" j
  481. STA $A43 D  ]7 Q" v3 R2 U6 w6 x
  482. STA $A5
    " \7 k& Z& J, N* a6 h
  483. UNPROCPL:
    1 ^2 J1 A% Q8 |2 N
  484. LDA $7EFD
    9 Z' D: B! N! u, \) p
  485. STA $FD
    9 p, k  U: U. w- E/ [& k2 e
  486. LDA $7EFF
    ) w; _7 f/ {; U8 S1 h
  487. STA $FF- Z9 ]6 C( H. o7 s; A/ D, b

  488. : D+ H& C- W5 v- T7 G
  489. WL0:
    ; ]0 W$ O2 ^5 E
  490. LDX #$009 X. T0 J8 q$ `( ^' ^+ b" P
  491. LDY #$00( \+ _! B: h! v' e  @
  492. LDA #$00: i2 {& v3 q5 ?0 \* {2 H* W3 b# E5 W
  493. STA $BA, ?2 _# O/ j4 U1 `1 c  N* x
  494. LDA #$20: X* ?. V3 o, C
  495. STA $BB! L% c- F* R- U  i* W" A1 G* a
  496. LDA #$00) ], R7 u, o( w/ h4 m1 U
  497. STA $BC+ J* o, x* T5 N% w3 ~  [: Y
  498. LDA #$600 a% ?1 @0 j9 \1 f3 \% l7 I
  499. STA $BD) _% I5 V; u) ^+ {7 r2 L- A
  500. / e7 K0 C2 q' {
  501. WL1:
    % l: a2 i5 x- H% X4 C- c
  502. LDA $BD
    , j$ t# d- o* {' M, d" Z7 \
  503. CMP #$70
    & z0 q4 p: p- c5 k0 Z1 Z
  504. BNE WL25 y. y( U3 H0 [
  505. LDA $BC' n3 T% D6 W6 x: a0 T: o
  506. CMP #$009 Z& }' a4 @2 v1 |
  507. BEQ WLR
    * R1 d5 T) {3 U
  508. 7 z1 S; D* ^* A3 X% p0 r1 h
  509. WL2:1 K0 S. v) z' W
  510. LDA $BD
      x  b+ w; w7 _% S1 P1 i
  511. STA $20063 m8 s: L1 F/ ^$ f$ _
  512. LDA $BC" e' P. j3 C7 Q! Q
  513. STA $20065 Y; Q0 f& c2 T  |& ?
  514. , m* @$ f. e9 w
  515. WL3:" ^+ _2 s& `9 @- n* |
  516. LDA ($BC),Y
    % K7 j4 F1 r) z, u% f5 N
  517. STA $2007* T" q+ G/ O, a. _: n5 B) u( R, U3 g

  518. 6 k2 h- D4 ]: R( u+ x0 ?
  519. WL4:
    % e) x9 ?# L3 M8 `
  520. LDA #$00
    # l7 {+ ?$ u: I7 n$ m" }2 Q  [
  521. STA $2000
    / A: A3 F! _" E# T1 W
  522. INX$ N0 S3 ]2 K0 w; n/ c$ x
  523. INC $BA
    . T) Y* Y! v" d' ^# ]
  524. INC $BC
    3 M3 u, T% f$ C) _5 \0 O
  525. CPX #$004 \7 U% ]* h- Q1 J1 M: i/ R
  526. BNE WL1
    5 t* P- |6 d9 o. A) K  P. @
  527. INC $BB
    & ~. I! P1 O1 N2 n  O( x9 F" g
  528. INC $BD
    , d6 S5 L, q1 ^( t+ V& s0 x
  529. JMP WL12 m. C. W' y8 v8 `3 w7 E

  530. " |, O7 l4 r* ^+ L- T& \% G4 @
  531. WLR:. r. i' M# H) U3 f* ]8 F) e
  532. LDA $7FFE: N' F# _3 r- ?( m4 H, s
  533. STA $07F6
    - L' P: h3 t9 o+ V: J
  534. LDA $7FFD6 Z, J) Q5 o( K, H
  535. STA $00FE
    / ]1 i4 q2 W; x$ Y6 J
  536. LDA $7FC1( ~9 P6 W4 c) P, g$ Z
  537. STA $07C1
    + J4 ~; A- I" R6 X& l
  538. LDA #$3F
    / F2 M1 G- F4 T/ K! m; L
  539. STA $2006) u& w$ l$ N6 S( Z) E, U! M
  540. LDA #$019 m1 ^( D* T* F0 n% E  a! }2 o
  541. STA $2006
    4 [3 i2 a. X) R1 d2 _& u
  542. LDA $07C1
    " B6 h* g) z$ F1 A
  543. STA $2007
    3 t% h4 |( l; S3 l( I6 N3 D
  544. LDA #$00* x5 u9 h# w6 s5 J" D. w% ^9 `' `4 F
  545. STA $2000* j2 P% _8 S( K  ~- O
  546. PLA
      x4 X% G" P5 O* [3 d
  547. STA $B8
    * |4 j7 p6 O0 Y) k
  548. PLA
    6 U6 e* `; C- R- T7 @
  549. STA $B98 ~5 j. P; T( V5 W
  550. PLA
    : G2 p$ ~/ A/ z
  551. STA $BA( i# q  o+ V, M/ O8 M6 I8 p
  552. PLA
    ) ~9 a" u3 w% r. T
  553. STA $BB, Z6 `: T. e2 o
  554. PLA6 W( W$ R+ X  m- @: e# ~
  555. STA $BC% _) U% p5 b% l, Z' P; P. _8 i
  556. PLA
    2 H( Z; D7 g1 y  u
  557. STA $BD4 o7 k* v+ p! b: K% Y9 u; O: Z( ]. v
  558. JMP $A000: C7 T4 j+ a& W  [, X  B. c( {
  559. * Z- }* ]! |/ s1 D* M
  560. FREE:                ; 暂存器保护
    % d/ ~2 }  w4 `0 E& a
  561. LDA $BD
    0 c8 c, ~) z' A& p
  562. PHA7 ?  S- F. b+ J$ d: \
  563. LDA $BC
    . y0 s. u+ e* Y. [  K2 R
  564. PHA
    : r, T" ?9 |! U8 Y
  565. LDA $BB
    7 w; b6 }# H! f$ f2 H
  566. PHA! ]7 U3 Q, X' g- X
  567. LDA $BA
    " u/ s# e) I  k" m: r
  568. PHA
    7 O5 N" t" X4 Y. ~" p  R
  569. LDA $B9# P* H% I/ |; |6 B0 K2 v
  570. PHA  d6 t1 [  U; D# u% X4 B& a
  571. LDA $B84 T3 C2 P) o& j& e2 V
  572. PHA( \# p( O$ j& \
  573. LDA #$00' E3 D6 A+ U0 s7 ^1 y) N6 o
  574. STA $B8. R. u0 ]) D4 Q% R: U$ t) }) s
  575. STA $B9
    5 m  M- e4 u& x% s0 g- Z
  576. STA $BA
    % O* `' B; k& q  k9 j' ?) `9 k
  577. STA $BB
    : n7 @; m; V" Z5 I% d0 o! K& _. f
  578. STA $BC! C* V+ s) J  Z. f7 w6 o  l; G
  579. STA $BD
    ' D' f9 E/ S/ p: J
  580. / S/ a( S, C* N4 Z
  581. WEAWRITE:                ;武器ppu写入
    7 a% k( q, Y% Q/ v* c0 P# c; q
  582. LDX #$009 Z3 d7 V0 M9 _. U2 O& I) P5 d) B
  583. LDA $AA* B8 f$ o- F9 A; h# B6 l6 x# _
  584. STA $B9
    % e6 |2 p' D0 n8 h% u" C+ {
  585. WEAINI:                ;地值初始化, V7 r# B3 I) K- w, \' ?
  586. LDA #$A4+ w, T- ?- R% A) q- q, c3 \
  587. STA $BA& I' X1 g% d( m+ q  N  @
  588. LDA #$202 K& j# ~1 o% o8 u
  589. STA $BB
    + [5 B1 I' e4 n
  590. % P5 l; L8 X& }$ @* d3 W" `

  591. 8 d! o, K( [' U5 [  F  c
  592. JSR WEA" C: z5 y, `- I5 N
  593. LDX #$00                ;武器ppu写入. g) V: ^* ~$ n  x  X# d
  594. LDA $AB! j9 @9 I, D$ E  C
  595. STA $B9
    7 l+ s7 ]" F( o; L' N7 T5 a% T+ z
  596. LDA #$B3, A! ?# @/ L* j
  597. STA $BA/ J8 i' y2 S' f6 |
  598. LDA #$20( u+ S) L9 V* a* l& ]2 C& L. J: W: T" b
  599. STA $BB
    1 d! z2 j# n% ?

  600. , {# b2 `) V) k* P5 N- p6 T' n
  601. / d% I8 d1 R4 Y. i  {4 I6 N
  602. JSR WEA5 b( N% T5 Z  L( b, }  T
  603. , `8 z" U$ a+ F6 M. S
  604. LDX #$00+ {. g8 s% [: ]! y
  605. LDA #$E4
    : ]  l+ K4 r( I1 m2 Y1 N  }
  606. STA $BA" X% F6 `, M7 {8 \  B. \; k9 G9 V
  607. LDA #$20
    8 b1 e0 V4 C8 ~# U# j
  608. STA $BB0 }, n1 {1 K" Y) G# r
  609. ) X: D* P- L1 [$ ?* k7 [

  610. # A% y. Q' T& o5 R' r& ^
  611. LDA $32- c+ V3 O0 z9 Q# D6 A
  612. JSR PLAYERLIFE
    % N" S+ E# e1 Q6 Q
  613. 2 V" I: ~. m, p# a  v& r5 t
  614. LDX #$00
    - I. O8 M6 X1 |8 u; j$ G
  615. LDA #$F3
    : h# w' y3 z; B9 D" n+ t  ?( W  e
  616. STA $BA8 G; Z+ C$ ~, \/ g
  617. LDA #$20
    5 i' v& w  K4 S6 q- {/ C
  618. STA $BB9 s) D# h. t5 v

  619. / |& `+ t% e5 z7 ]

  620. 3 U0 s' P+ O" n! c* o# D1 r* a
  621. LDA $33
    8 Z% c5 {; ~# a5 B+ P3 o4 R" I
  622. JSR PLAYERLIFE
    8 v0 F& [& H% z& C" R) g3 F7 \

  623. $ F1 @0 Z( f0 z) G( Q
  624. 6 E/ R' S( r0 ]6 Y2 Y
  625. JSR PLAYER_01_PPU
    ' I. K! Q4 |  [7 O
  626. JSR PLAYER_02_PPU
    . r) Y- L& Z' e$ a
  627. / G- m- o$ n  a4 X1 p
  628. 4 A9 [2 t3 J' P$ y0 V/ B4 d+ n* O
  629. JSR PAGE_PPU7 M/ ~% M8 w3 M: K# V/ \
  630. JSR PAGESELECT
    ' S0 x& t$ j' Y( x0 g6 J- o) b9 G

  631. * M7 u2 V( U) Y
  632. # \% J- k& Z& d: W
  633. : g) ?& \4 B- J1 C) D+ F0 S7 Z! P

  634. , L* n1 Q/ `6 P! y
  635. 7 \9 K: e6 {: R( Z+ G3 ~* d, a

  636. ! J- m# `1 b9 s& M2 T7 c
  637. 7 W0 |- k* q9 b, Y  B- ~# P6 o, m
  638. % g0 ?) H1 C8 f

  639. : H4 x0 R$ K" F/ {9 B
  640. . Z% c$ G  r/ ]- C1 |; {

  641. 2 W7 b" I$ M" K9 P$ b& x+ c  ?

  642. & {$ h$ y+ Q# y8 M0 k: X0 O* p0 l

  643. 0 j0 T8 x6 S* e- m9 u
  644. PLAPRO:                ;恢复现场! b' G$ O. l' K1 h7 S
  645. PLA
    - `/ Y' E4 j  `0 p: L' [$ Y0 d& K
  646. STA $B8" ~" c2 }: E6 C3 ]
  647. PLA
    / c, R( I9 s# m# L3 T
  648. STA $B9+ R5 f" ^% h2 L5 y  Y9 G( I1 Z
  649. PLA# c9 A! c8 R1 K  j2 J7 T% ]7 }
  650. STA $BA8 f* n4 G2 x. ^  x
  651. PLA) d/ Q/ C6 C0 t, M
  652. STA $BB/ H; X% Z% J2 N  B: X$ E
  653. PLA' O. `& t6 L$ a
  654. STA $BC: e. N* B0 I0 B) Z  D0 g2 _4 x
  655. PLA
    ( T. I# t: F& H: q8 b9 f
  656. STA $BD
    : z) K8 ?0 u9 z- A. [
  657. FREERTS:
    5 m" e1 A4 s3 E; H2 s9 Q- `' y
  658. RTS
    * W* e  e0 K) f* L1 F" x
  659. ( V% i7 O( @& g' u( j" E, \
  660. INVINC_STRING:                        ;invincible$ v4 I7 K8 h* x
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    1 w& l6 ~  F- Q8 |  q( h

  662. + v4 y1 g  }9 N0 Z! O2 A
  663. INVINC_PPU:, K; v6 m( Z7 g2 \/ N
  664. LDX #$00
    ! `# F6 V: V7 r" f, o/ |/ F' K
  665. LDA #$62' s/ c0 V1 C) ~: T3 U/ U" F
  666. STA $BA& |' G& F1 E5 n! c/ ^( P4 r
  667. LDA #$21; l( P0 \0 H4 D& @/ O
  668. STA $BB" _8 K$ j( a6 a

  669. 5 E9 k/ V) X: Y" [( p- A
  670. % H# c; \; c6 y$ j
  671. JSR UP_PPU
    ( G+ @2 H$ Z& e+ V5 n
  672. JSR INVINC_WRITE
    7 k. ?( I: W0 O- B
  673. LDX #$00% D: }* Z: Y7 V
  674. LDA $07A0# P% a' d+ y+ N) U
  675. AND #$01# s! C, q( Y- r" a6 A. Y
  676. JSR ON_OFF_PPU
    5 X5 J) r1 r- y& _" l2 Y
  677. LDX #$00
    % u% ^" C/ K2 T6 |) [: [
  678. LDA #$71: k4 l1 e2 u8 S; [* {$ D
  679. STA $BA
    . W, N* a- W; N) }8 ]
  680. LDA #$21
    : Z4 C; `. X5 n0 ?# m
  681. STA $BB9 i8 P, M  K0 Z8 q
  682. - h9 j1 i: H$ [& n

  683. . ^, `& \0 z1 Q
  684. JSR UP_PPU8 `6 c5 F3 G/ V5 D  i" B! z" M2 S
  685. JSR INVINC_WRITE
    , p& U8 H3 h4 X% S; V
  686. LDX #$00! D* E9 i. O& Z" [
  687. LDA $07A1$ g  S8 ?6 b( N) V
  688. AND #$01
    * A; \6 g$ H# `! J. x+ k; [2 o1 M! B
  689. JSR ON_OFF_PPU9 c( p( [" M: _
  690. RTS
    + A( x/ W6 ~: U7 h

  691. 1 Y2 W* h3 N$ U/ T, @  J
  692. INVINC_WRITE:
    4 }/ R, Z# L) i0 E- R3 \
  693. LDX #$004 j6 s+ n& P) V. M. ]
  694. INWRITE:5 Z3 D  L) O- J9 G# i
  695. JSR PPUADDR_PROCESS5 D. o( B* _- n/ H
  696. LDA INVINC_STRING,X
    : J% S. R# P" h- l, R
  697. STA $2007
    / [! a* D* I7 f: U
  698. LDA #$00  j* H* W* V( p# m9 I
  699. STA $20002 U# ]" T9 X" q6 k, C4 l' W
  700. INC $BA
    , I) k5 z$ u& s& G: B
  701. INX9 ?' [! ^4 K# R& P' n  I6 N$ l
  702. CPX #$07) x- [' A! O# B7 o2 _, Q9 _4 ?2 x
  703. BCC INWRITE
    : _, Q* j/ D$ {7 m
  704. RTS5 r+ e6 n5 Z9 B/ v9 G9 _/ z

  705. " Q) l, c  Y1 g5 d1 \
  706. ON_STRING:( K3 m( s4 U: b2 S$ x3 {+ J! z/ N
  707. .BYTE $99,$98,$801 p5 N9 R7 Z6 ]( i6 b

  708. ' c5 I4 Z6 Y: I! l$ v- g% E+ \
  709. OFF_STRING:. N* Q6 a& i% @0 j/ `
  710. .BYTE $99,$90,$90
    0 @) L" ~* I' ?1 H  e+ q, V" _6 Z

  711. / N5 ^5 W# J, m! T; @
  712. ON_OFF_PPU:  Y4 c# K: p2 B) Z. M6 y% s
  713. BEQ OFFWR
    7 {1 h, @3 t' f+ R9 W
  714. ONWR:
    0 T0 a6 |( R; N0 `/ `/ Y
  715. JSR PPUADDR_PROCESS9 z3 j' N: N. m# c! o1 w* B8 c+ r
  716. LDA ON_STRING,X  w1 e) Y4 n9 Q  l# B4 K
  717. STA $2007. ^! t# R+ \& u4 `1 L5 {5 H' S
  718. INC $BA5 f2 Q  Z; ?) |3 ~8 @5 O; @" B9 @5 K' E
  719. INX& S3 {& l; Z' A
  720. CPX #$036 h) }+ U( S9 s$ D: M$ ]# t$ D( l6 y
  721. BCC ONWR
    ( H% c# b/ r% H- R
  722. RTS4 t) Q  Y0 B. O
  723. OFFWR:% `+ T8 N# W  {6 m' Z. X$ ?- q
  724. JSR PPUADDR_PROCESS
    5 S  b! h) q( }% \9 ~  Y
  725. LDA OFF_STRING,X3 L/ d" a, ?+ F. ]: _% B' M+ e1 G
  726. STA $20077 R4 V* v% l% Z/ ]) a
  727. INC $BA
    : F8 {+ t, \) H3 f6 L# E$ n! t
  728. INX+ p/ s9 j- L* e* K- a
  729. CPX #$03
      |+ o' S7 [! U0 ^* i& @' ?4 A
  730. BCC OFFWR
    - O# ^* T. e5 o8 Z! d( o# t6 }
  731. RTS
    # }; W8 P' F% K0 m( e3 e; K* B
  732. 2 _+ o  _& Q2 T# `4 T
  733. LIFELC15_STRING:
    4 F( n) X% a6 L, z7 C* T
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80$ F8 E: @* k/ _- T' Q6 \1 y  O% V0 _

  735. ' R( y- R% r0 s: ?& O
  736. LIFELC15_WRITE:
    ! E( j7 g* \+ O6 \; s8 M
  737. LDX #$007 F! \* b# F3 S( |5 w/ O
  738. LIFELC15:
    / [2 G7 y5 }: e# G1 F
  739. JSR PPUADDR_PROCESS! @( I% c# Y% @  H1 r2 f7 ~' I3 Y3 r
  740. LDA LIFELC15_STRING,X
    5 Q5 L) L$ ~3 j5 S/ R) C
  741. STA $2007
    ) Q! D& Z& Y5 Q- V. M% R
  742. LDA #$005 p8 {- M/ Z& T3 a, t% F- `
  743. STA $2000
    - |2 m! K( `- J7 ?) y  G" S
  744. INC $BA
    * [  K/ v$ H# v! a; n; b  \0 n
  745. INX! c' q* L: c; D1 H
  746. CPX #$07' F* S5 ]5 N5 F6 b: o8 j* V
  747. BCC LIFELC15
    ! y/ k0 o0 ^2 W' G$ r
  748. RTS: s& j* R9 f' Q. s0 |( U

  749. $ S0 a  u! ]; l& \$ G
  750. LIFELC15_PPU:7 ^+ P, L9 p( c8 {1 k% w* N3 C- r
  751. LDX #$00
    ' M1 Q$ F4 z. |3 V! W7 y
  752. LDA #$A2- i# p. a) O- V9 H4 M  m- F' L* @
  753. STA $BA
    $ I2 t  ]/ z% Z! V* O
  754. LDA #$21$ j9 T% r+ I% i+ R. f
  755. STA $BB! r; S5 O, K% O$ D& H
  756. JSR DN_PPU
    ! W" _( B$ X+ q& m! ?% z
  757. JSR LIFELC15_WRITE6 w4 h& E8 J% ?1 M
  758. LDX #$00  H, x6 C! e) |, B# a3 N" h& Q
  759. LDA $07A0
    * @( L$ U. a' S$ Q8 q: j
  760. AND #$02
    9 T1 u5 K" C% n
  761. JSR ON_OFF_PPU
    $ M' H2 B+ F# z# H7 P
  762. LDX #$00
    - v8 _: e# J. r4 `& g  o
  763. LDA #$B1
    ) Y# P$ e- b. R. F/ l4 m
  764. STA $BA3 `/ k- Y: [" o5 n' c( y
  765. LDA #$21
    " `! X6 D2 c0 u5 e' o. ^$ G1 Z
  766. STA $BB" r* T$ U9 f3 A4 t, p: X9 ?* U' q
  767. JSR DN_PPU
    ) v6 s! U3 @7 }3 r2 j4 |3 ^9 b
  768. JSR LIFELC15_WRITE
    6 i* G& i( U' h( Q
  769. LDX #$00
    ! Y- b- v  F6 b9 X1 Z7 N6 x+ c: c
  770. LDA $07A1: U) F% ^* W7 F9 P0 \# w8 o7 N% S
  771. AND #$024 K* e5 p/ v9 W: w* l$ |( F
  772. JSR ON_OFF_PPU
    / e+ Q/ d9 b4 u9 H6 @9 T4 b
  773. RTS6 Z6 v2 I: }! m0 V, ~5 T6 Z

  774. 6 n; B  q8 g$ l; L
  775. DOUCON_STRING:1 ~% ~8 P& h7 y
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    ( l  G* {/ c& @, l8 Q% N
  777. ; V# K; }+ ?  T+ [
  778. DOUCON_WRITE:
    7 d; x$ Q' K5 Y( o7 }. v& K
  779. LDX #$00' q2 {- L2 O: J* l
  780. DOUCON:
    3 g" _  z; K8 h# l. O4 d8 Z. d! b5 l
  781. JSR PPUADDR_PROCESS
    " M& [7 q: r& H6 ~8 ?0 U% }- b
  782. LDA DOUCON_STRING,X3 c% g: d& u, i$ u
  783. STA $2007; O6 Z* o3 q9 Y! N3 d' \  [
  784. LDA #$00
    1 ^4 ]( S: l  _; W* B
  785. STA $2000; |( l+ S8 H: d" g* Q
  786. INC $BA4 ?0 v7 q) V' F! |* a* F8 s
  787. INX8 v1 i5 J8 E, r& r+ x
  788. CPX #$07
    + s" S1 Z+ ]& _
  789. BCC DOUCON7 Y; _/ j1 ^8 c. k( v/ z
  790. RTS
    2 K3 M8 @: }: T2 r$ V9 G/ F' B
  791. " ^9 g# y( N; u" a
  792. DOUCON_PPU:
    * G& m; l4 J  b- W
  793. LDX #$00/ O& H4 F! ?) U
  794. LDA #$E2
    % u  d# X+ K. p; y$ ?
  795. STA $BA: j/ ?# J' R. C, d3 ?' o( F( i8 P
  796. LDA #$21
    " o+ B5 X- b1 y; n! Z# s8 f0 v( L
  797. STA $BB: @; ^1 L" l* Y+ A7 r" s9 u
  798. JSR LF_PPU
    . h5 {: r; D. R- \1 N
  799. JSR DOUCON_WRITE, o: C# e9 f6 W+ i( t$ Y, M
  800. LDX #$00
    ) o) U+ p& ]0 b" H5 ~( f5 `* k
  801. LDA $07A0
    ( Y, z3 R6 f; E
  802. AND #$04/ _* B' L2 v& V4 @; t9 [1 h  C$ E! ^$ Z1 ]
  803. JSR ON_OFF_PPU
    : j8 T* {& T' W) ?& O! L
  804. LDX #$00
    * ?! ~, R" l& p& e4 n' f( V7 p1 Z
  805. LDA #$F1
    / ?6 o. j' P9 v1 G: j6 `, c
  806. STA $BA
    # @/ h, ^$ r+ {8 K! O. R$ ?/ K" O
  807. LDA #$21
    : m2 L; l8 ?# C' D# r
  808. STA $BB, X; W; ^! H+ y% j! {( i
  809. JSR LF_PPU
    $ Z; l8 y$ C- H& y
  810. JSR DOUCON_WRITE
    , K; Y2 i$ J  U' s# N
  811. LDX #$00: [! D5 W2 J7 A; p. z2 b4 y
  812. LDA $07A1
    3 x, d: V, P8 k1 D5 A/ c$ Y6 H' [4 b1 Q
  813. AND #$048 e- [' S3 t8 [$ f) l: ], Z! X
  814. JSR ON_OFF_PPU  A1 Z3 z& K3 r4 I3 @2 e  q1 ?; U7 O
  815. RTS
    & _% r1 x2 E1 C+ p) q. }4 C' W5 J

  816. 4 S' G7 F/ F8 M' i1 s
  817. LIFELOW_STRING:
    0 G9 T9 l7 L! Q$ v4 `" D+ L1 Y
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80
    ( y0 s% d, P& U- \2 I
  819. ) Y/ X. q/ p9 f  I# T
  820. LIFELOW_WRITE:
    + a4 }4 G0 o+ y
  821. LDX #$009 e: T9 t5 s9 U! [. p$ t8 \
  822. LIFELOW:$ V4 P) M, M$ ~3 Q& M3 t2 a: M
  823. JSR PPUADDR_PROCESS
    8 c7 c( x! d# \
  824. LDA LIFELOW_STRING,X
    1 R: U" D: K# k# z2 E' f
  825. STA $2007% J* D9 `. k/ w9 r( W
  826. LDA #$00  U- W0 F4 ?& T" [3 M
  827. STA $2000; \0 H$ m/ m$ ]+ _) ~+ ]
  828. INC $BA
    ! K7 E4 u* H5 Z" \1 T. o/ L# v( e
  829. INX8 F0 m8 N' E* Z* d3 p5 [
  830. CPX #$07
    0 j8 Y$ I6 J; p( B; ~  `1 f1 ~
  831. BCC LIFELOW
    1 G, ?9 u2 d( D" W
  832. RTS+ P7 Z! ~. D5 m' f) s+ u: G8 @
  833. : g6 m9 U4 D6 V# H- {0 K9 ?
  834. LIFELOW_PPU:% H2 P/ v2 }: E  T( r6 P
  835. LDX #$00
    7 b4 ~" R7 M* k# ?3 T9 T- b3 M+ \
  836. LDA #$22
    * s2 @- l& I" T' p' p
  837. STA $BA
    ( z9 N2 x; I0 @* T
  838. LDA #$22
    7 Q' X& s# H$ C, v! r, N/ f5 x
  839. STA $BB( _' m- m8 B6 o: V

  840. 5 u/ k1 I9 ~6 B% U8 E, [2 o: u

  841. ( Z$ B- z- a2 I# e* g+ |( M
  842. JSR RG_PPU
    + S/ u8 z+ h% G# B# \
  843. JSR LIFELOW_WRITE& u: S/ N1 e  M. g6 z
  844. LDX #$00. u$ y- N$ Z) x% p0 w
  845. LDA $07A0
    , b( X+ ~4 D9 G  j; y+ I9 M6 b
  846. AND #$08
    8 }- U7 ?  _1 v" @( f/ r
  847. JSR ON_OFF_PPU6 @, X, z; ^( x2 ?( S# N
  848. LDX #$00
    6 A1 r0 O/ v1 n8 a! y1 {
  849. LDA #$31
    0 y2 \" q; s# C0 Z$ ^
  850. STA $BA
    - S) p, b* U% s7 T2 L# H
  851. LDA #$22, i8 Q! i* x& ?6 p9 i  Y
  852. STA $BB" ~$ X" u7 g& c+ G, [& U6 `
  853. - h8 p- ?$ ~0 p9 O

  854. ) f) e9 ?1 p9 v6 N  x
  855. JSR RG_PPU8 S" p/ ?4 z; l6 t- F( \
  856. JSR LIFELOW_WRITE1 Z$ m  F' Z3 W+ E! l$ V" T& v
  857. LDX #$00- l* j1 b, B# k1 Z9 g$ s6 j8 }0 Z- H0 O
  858. LDA $07A1
    : e& o& @  O$ ?* }- ^! H
  859. AND #$08
    % K- T6 w% j! J& g  h  @+ c4 b" [
  860. JSR ON_OFF_PPU' ^# }# Q1 n5 s3 D' ?7 m
  861. RTS: n! }! J% R- e  _# e7 t
  862. & F) w0 D3 J- Q
  863. KILLON_STRING:: |" k9 ^5 V7 H4 f1 z: m/ n5 A
  864. .BYTE $95,$93,$96,$96,$99,$98,$80& d3 E! z' v1 I1 A% W% `
  865. % D, _- G- e/ [# k1 t+ j
  866. KILLON_WRITE:
    & d/ O; b$ W. q/ D
  867. LDX #$00
    " E( @4 z0 A8 _: i3 i; j
  868. KILLON:
    * [6 o3 f2 a  {7 n4 t
  869. JSR PPUADDR_PROCESS" `9 M8 E) q7 X0 E2 n6 F
  870. LDA KILLON_STRING,X
    7 P5 E: D6 h! a* e7 F  z, d+ P' o
  871. STA $2007: ?# ?0 Q5 P7 ?
  872. LDA #$003 e) D( F- X/ c! _0 X
  873. STA $2000
    % G; }& w) E  I
  874. INC $BA
    5 |8 O6 V/ |/ v7 o$ z4 U
  875. INX
    7 U% s( _' B% U
  876. CPX #$07( u# A$ Y( x1 N3 |, n, p% e
  877. BCC KILLON
    6 v+ w3 M7 P# Z1 Q/ X; C. w
  878. RTS/ O3 y; f& V0 X$ R5 K6 ?& {

  879. " @- d2 r* G- F+ T. n( O) b
  880. KILLON_PPU:
    6 o7 r8 J7 T, u0 {. ?  J* M
  881. LDX #$00
    " H8 X% A! i( t9 b& k0 ]8 H! N
  882. LDA #$62
    * v, ^2 W3 }. h$ x4 K9 ~
  883. STA $BA9 v3 b" Y4 n" S4 w! _; U2 i
  884. LDA #$22; r0 f8 V& {) Q2 b: N- z! @
  885. STA $BB8 Y. X4 H. L% T" T: Q& x

  886. 3 D0 z& I* h- r# n  z  x
  887. . L* G- `1 {; b, t4 ~
  888. JSR B_PPU
    # A; ]5 s% p, v* j
  889. JSR KILLON_WRITE
    # n/ U2 }9 w+ E+ {" L
  890. LDX #$00% @$ Y) ?1 [. h, y1 Z- N
  891. LDA $07A0
    # T, t# M2 E3 P* ~9 {' a
  892. AND #$10
    8 [* d* T1 Y; C0 C2 v
  893. JSR ON_OFF_PPU
    ; X7 F. V3 Y8 W, T7 W
  894. LDX #$00( h, q  {$ ?6 w. s! ]
  895. LDA #$71: N3 o! Z. A) x) G; W: w, C- b
  896. STA $BA0 v# f& I$ n  M7 d/ o5 S+ {! X
  897. LDA #$22: ^  W* L: d- X" u1 j) Z. k& V7 c
  898. STA $BB
    / g+ s7 ~' b& p) J- v$ a* c

  899. ( S" s% a: b( u  q5 z5 M2 R
  900. ! `3 b3 \5 n6 S  ]& g  i2 w8 f& P
  901. JSR B_PPU
    1 ]& P" ~# n  J: r8 s0 Z+ u$ x
  902. JSR KILLON_WRITE0 U1 r9 V5 H5 W. t  S, ~% U; o
  903. LDX #$00
    " l/ e+ x* e* t" x  \* P
  904. LDA $07A1
    ) N5 O. l/ c9 ^7 d1 _& K
  905. AND #$10
    7 r1 ]2 }! p; x' \% W7 a& m' r
  906. JSR ON_OFF_PPU) R# G. p0 G6 u/ F+ z
  907. RTS
    * c* H5 a0 o" D4 H7 _; k  h) `1 n/ j
  908. 3 r7 u6 b. G2 N: W2 A  ~+ e$ Z
  909. SKYFLY_STRING:
    . a: F( s+ Q+ u( @1 T
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$805 c3 A' N1 r" m" I

  911. 2 ]! S+ V! q0 ^+ Y! A$ L) f5 d
  912. SKYFLY_WRITE:
      p6 e& B& _2 g# l" V4 r3 y
  913. LDX #$00$ ^  v& r' X% D, B. J/ y* Q+ A
  914. SKYFLY:  S9 F; u/ Y$ F8 O% V' `. E
  915. JSR PPUADDR_PROCESS6 h% I+ @  n' [+ z- X7 G
  916. LDA SKYFLY_STRING,X' A* S) G% W/ w% [, K/ r# i
  917. STA $2007
      a& p) b3 |3 s/ X
  918. LDA #$00
      m7 N) e4 t7 x/ c" |# G
  919. STA $2000; G; K2 s8 \" L* l- `, `8 u4 p0 L
  920. INC $BA4 z# _- o- ?6 E
  921. INX' O5 ]; {% H2 B5 }
  922. CPX #$07; R4 g# X& H7 M
  923. BCC SKYFLY
    9 }, R7 z& L4 j! `1 {$ h  e
  924. RTS
    7 {- W1 |$ M* W9 h5 @( J( o

  925. " {# n3 R$ F8 y8 ?& b$ I. M
  926. SKYFLY_PPU:, Y) _* m3 K: u
  927. LDX #$00
    6 Q' y3 Q+ d7 q( h7 w
  928. LDA #$A2/ k# ^; h: [- t! D8 v
  929. STA $BA
    / x  b6 h& J( Q# Z
  930. LDA #$226 i$ I3 [2 L% n( V2 R' ]) m8 ]
  931. STA $BB
      j( ?* q* u# G
  932. , X+ Q) s' o- ^$ Y1 X5 d* _: x$ J
  933. 9 z. F4 C8 i3 y+ k. N6 {
  934. JSR A_PPU1 Z! i, Q! P3 I6 K1 N* l3 u$ m
  935. JSR SKYFLY_WRITE
    " w2 S. W1 x( I; s' Y  G
  936. LDX #$00- A$ u) o& Q6 }: z# f  X2 G- @
  937. LDA $07A0
    : I. m  L$ T9 y) I/ b9 E- z. Q, H
  938. AND #$20
    " N4 o+ k8 n3 N) u# Z2 i$ W# }4 H4 P, i
  939. JSR ON_OFF_PPU
    * a% G+ T/ L2 e% x8 ^
  940. LDX #$00
    7 i1 i- t  R3 b; L
  941. LDA #$B1
    4 {; @, d8 T5 {
  942. STA $BA& D  _  Y; P  B5 W
  943. LDA #$22
    ( \: K. `" W9 X1 w$ {! G& J5 `
  944. STA $BB
    ' a# m  z0 Y9 P  ^

  945. / C% Q( Z0 G! k; m& N# u

  946. " Q: K6 n6 j3 _4 z+ s- o, j4 _
  947. JSR A_PPU
    7 L7 B& X: E# G+ r. Q
  948. JSR SKYFLY_WRITE2 c, A; I* T4 E2 b) }+ m3 B) `
  949. LDX #$001 w2 K* I6 ]: G& b6 p" v' H
  950. LDA $07A1
    ( ?* z/ _) G- s. T4 ^6 J) a/ S5 k
  951. AND #$20
    1 z' O. v8 W& ?0 w' h+ t- Z$ f! J
  952. JSR ON_OFF_PPU9 @) @1 \" r, j9 v" Z
  953. RTS
    " ^% C3 z) @1 M# N9 R

  954. , W8 Y( [/ @( J+ I* q4 T0 m
  955. BULADD_STRING:! G- O- b7 m: L% {- R1 |
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$804 d( \0 t1 P# [7 i

  957. ! f, Z* H# ?: c* d3 y
  958. BULADD_WRITE:
    + ?5 _7 q0 U! H0 r+ w& f0 f; t
  959. LDX #$002 K% G9 B  z. T& z: O- t1 [: J
  960. BULADD:' p; I4 d. ^" E2 z
  961. JSR PPUADDR_PROCESS% v% y/ c$ U  \' j: V8 H& {
  962. LDA BULADD_STRING,X2 h& ~1 j/ c* ]" H  l# O8 B7 u
  963. STA $2007
    / q) a, B7 d" Z
  964. LDA #$00+ [+ l/ V+ O7 m! z, M
  965. STA $20006 ^# A1 p! o1 \- Y% @
  966. INC $BA- k% I) J7 H% o( F# F* t
  967. INX( \0 ?' I( S2 J6 m  @3 |3 t5 s2 L
  968. CPX #$07
    $ a# \/ Q" V+ c! e- w
  969. BCC BULADD/ Q" E9 e' J- ^2 F( h. b# [
  970. RTS
    9 e6 ?7 P  k. ?* ^& }) i4 n* h3 q

  971. + |: E0 s8 w2 K
  972. BULADD_PPU:
    4 c9 I3 C/ n2 D  O% j
  973. LDX #$00
    9 D2 I+ h% T% b3 _1 W0 W5 w
  974. LDA #$62
    7 }2 d+ }( u. z, {- V
  975. STA $BA5 p+ n: P/ W0 v" t* l
  976. LDA #$21- a; {: w7 K0 |9 R" W7 p5 U/ z! i6 P
  977. STA $BB
    4 m: \  ]0 I' A, i# D/ C
  978. & `& S1 T; e5 O( f
  979. 8 F3 l! s4 G, ?8 ]# }) [7 ]
  980. JSR UP_PPU9 b6 p3 ^+ z6 Y; e/ ~
  981. JSR BULADD_WRITE
    , B% F8 H( k: `* t$ b% D6 q% H
  982. LDX #$00
    ; v  d5 z1 p. V
  983. LDA $07A27 L1 J4 X' Q) D
  984. AND #$01
    * S2 g% Z/ |4 n& L4 h
  985. JSR ON_OFF_PPU/ [. C- f+ `( l& ~2 ?, }
  986. LDX #$00/ M- ^/ w2 r- [6 s3 F
  987. LDA #$71
    0 G( t( Y" W) R8 A0 o
  988. STA $BA- e" ?4 ]$ G; V$ `" m( L, W7 c
  989. LDA #$21& e3 q* S) J) S$ l6 T8 r
  990. STA $BB* j" b: a2 A! Q
  991. 3 U" S$ F: V3 |. V! f
  992. 2 @$ u; k6 t/ k/ S* T# G
  993. JSR UP_PPU
    8 j8 N9 r' Q! g( i( E' q
  994. JSR BULADD_WRITE
    % H  `) O  b( m7 \
  995. LDX #$007 E: s, ~# ]. s- I: O6 M1 z1 [
  996. LDA $07A3
    ' g& ^; }, U+ t1 `# M; V9 {
  997. AND #$01
    . B5 M4 K; E0 ]* f
  998. JSR ON_OFF_PPU
    - y2 ]. s6 [& U: S5 Y/ F" [
  999. RTS$ ~$ W) s' ~5 h! Y6 p/ v

  1000. * U' @7 t  r9 a6 m
  1001. MENU_PAGE_STRING:
    - x0 b5 j3 x% P
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    - E8 ]  T- @1 X6 v4 Q

  1003. " i* a* X! D$ l* r' M
  1004. PAGE_PPU:! U7 A' T6 M6 N6 Z  g0 S3 u: A2 n
  1005. LDX #$00- D  S5 }% _) }% e- C9 J
  1006. LDA #$0A) u; q3 Y# k9 @, i2 [+ Z
  1007. STA $BA3 a9 s, i% P! }) h) C' C
  1008. LDA #$23
    1 ~0 \! N6 k! K8 w0 R
  1009. STA $BB
    3 I+ d$ i3 H8 |7 U6 O8 z4 Z- T

  1010. ; ~+ k' e- g" M3 t( {
  1011. 4 _; ^4 @. x: v. d
  1012. MENU_PAGE:
    % `" A0 e  Y9 b) {
  1013. JSR PPUADDR_PROCESS
    . r; ?. ]2 [8 K' D8 p3 L
  1014. LDA MENU_PAGE_STRING,X9 ]: W7 ^4 i3 g1 j
  1015. STA $20074 D4 U7 r, A9 L/ P3 z- M3 K6 s
  1016. LDA #$00
    * e7 w, {0 z) i% f
  1017. STA $2000* U# h, n8 D- r1 a$ F
  1018. INC $BA
    2 `& T  j" g0 R- r0 m- u+ d
  1019. INX
    2 j0 _7 |" M0 t3 V/ t+ B) G; P
  1020. CPX #$0B& D" Z5 S. T8 i, f( u
  1021. BCC MENU_PAGE
    ( x  }  B, M# f$ s: j# B3 |$ E
  1022. LDA $07AA
    - c9 o5 p! ?* I7 x
  1023. CLC
    : Z; X) B+ U* Q( Q* e. k+ U: b
  1024. ADC #$82
    ! w+ D+ I- B" [+ w
  1025. STA $2007
    # T4 w: `% G% ]: X
  1026. LDA #$00
    ; J( H+ i2 C+ Q. b
  1027. STA $2000
    ' p/ V  [5 ?+ x+ A* h
  1028. RTS4 p5 M4 C6 M3 p) P+ z

  1029. ' q7 [& W/ c6 \5 `/ S( J8 W" b
  1030. / h1 Z. S/ O  [1 h  h
  1031. SKINGE_STRING:
    - Z3 v) y  u. T4 y
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80$ u5 F, C# Z% W8 L5 J
  1033. : e/ c% @5 _$ x& R4 @8 m2 f4 @9 R
  1034. SKINGE_WRITE:
    7 k1 K. m7 j( j% Z7 i
  1035. LDX #$00
    & w$ C) s6 g, s) u# T
  1036. SKINGE:
    " ?% b( @. N  u7 Y8 s/ ~6 l% g
  1037. JSR PPUADDR_PROCESS/ [! s0 G/ M; J( |( M$ \
  1038. LDA SKINGE_STRING,X
    4 f( ?- p2 a; u7 J; Y
  1039. STA $2007- \0 F& P- [2 v! K: Y4 f6 k5 h
  1040. LDA #$00
    , C0 F& P2 G+ s  q4 k3 ?( l
  1041. STA $2000# e# C+ U7 R4 V+ }2 z6 p
  1042. INC $BA
    ; N' q* C6 }/ m4 f$ J  l
  1043. INX$ r) b% l1 G4 \& ^/ b
  1044. CPX #$07* k6 y. W' b& i1 {
  1045. BCC SKINGE
    ( ~  @: E# z- b- e" d
  1046. RTS# j1 C+ V3 n$ ?# u9 F
  1047. 3 z, m' I( K- G8 D' X+ d) k# A8 j
  1048. SKINGE_PPU:
    & b! |0 e; }0 K6 b" H9 ]
  1049. LDX #$00, D9 [" |! s- X7 w% I! O
  1050. LDA #$A2  b- C6 l' J0 D& `: n9 E
  1051. STA $BA
      i: t' f  C( Y- ~* _
  1052. LDA #$21" c, W3 B; s* p4 `$ P
  1053. STA $BB
    ( a3 I. Q$ c7 P5 Y% y4 E+ e- i
  1054. / A& e- Z0 H) l* r+ y

  1055. / n+ c6 Q: X  I/ O$ q# B5 q& {
  1056. JSR DN_PPU
    ; x5 J; X# B( b# o. N
  1057. JSR SKINGE_WRITE
    7 L. ^+ A8 ]* ^+ C0 }1 l+ b
  1058. LDX #$00
    0 K4 |* `& U* P8 c; D
  1059. LDA $07A2
    3 N2 Z! T* w, A$ N3 E- Q
  1060. AND #$02: J3 z, `; g2 h: g0 [- Y& }: z
  1061. JSR ON_OFF_PPU% z$ A5 h$ q  T4 g) x
  1062. LDX #$00+ K; y  G# s. {5 z, y/ a: E0 j
  1063. LDA #$B1
    ! F* \  u' P8 D6 U: @
  1064. STA $BA
    & T, T! s3 t7 j7 X0 ?
  1065. LDA #$21
    . l3 t& i- d) E: l
  1066. STA $BB: b# B$ q  {) \' Q/ Q0 V0 [
  1067. / j0 p* B2 {" ~6 }- H3 r

  1068. - ~0 y6 F% \, r9 E' C; A; R9 Q
  1069. JSR DN_PPU% ]) f4 V) ~6 E: M0 o
  1070. JSR SKINGE_WRITE. v5 a* A( p% Z) r  v
  1071. LDX #$00  l0 ?$ y* `, A+ }
  1072. LDA $07A3
    + u% h9 ?  F& t) }: d. G
  1073. AND #$024 Z/ l( u7 m" `# j. N
  1074. JSR ON_OFF_PPU
      I: K5 ?3 R7 V3 ^, R% z$ M2 x
  1075. RTS
    - v4 ]% ^- {3 U0 B# i
  1076. $ @, A! b* Y; o* ]: d2 h
  1077. BULMIX_STRING:
    1 F5 x# w" @4 u2 L
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80
    ( R& J/ L% B9 C; @

  1079. 8 s/ ~: n" r, e' Q/ r0 |
  1080. BULMIX_WRITE:) [  J) o, R1 n/ m+ a+ m0 B
  1081. LDX #$00
    : A  b  Y! j; ]: k2 t
  1082. BULMIX:. x4 A$ q, U5 i! y; n, c. u6 T; s& n
  1083. JSR PPUADDR_PROCESS
    8 f% B0 [: B  |4 o+ M" |$ ?- b
  1084. LDA BULMIX_STRING,X. m0 W2 Y+ [; m8 ?5 \1 g; P% O' l
  1085. STA $2007
    + n: s* _7 Z" \5 Z& M1 {
  1086. LDA #$00
    7 @( ~* Q# u2 K' ^+ ]$ B
  1087. STA $2000! s4 Q( j0 F2 y6 W4 n# u5 f
  1088. INC $BA& f. u0 U' j1 U) k
  1089. INX( B( S1 \% J  Z- G2 Q
  1090. CPX #$07
    / _% P- w8 m4 T  w& V
  1091. BCC BULMIX% ^) I7 I) s4 P& A8 ^, b1 g/ n' e
  1092. RTS  x. F2 O$ f' }0 ]1 r5 a6 o

  1093. $ A. r, s* A* ?1 F, }5 c
  1094. BULMIX_PPU:, D6 z! i5 V: c
  1095. LDX #$00" |, F$ d/ _6 m7 i& S: K
  1096. LDA #$E2
    4 p0 j5 w2 d. z3 M; V
  1097. STA $BA
    ! o( _% C4 |. u( F' Q
  1098. LDA #$21
    / H/ I8 A8 E  `; p
  1099. STA $BB5 G2 P* ?5 [6 W; H$ \( v+ l
  1100. , _9 x- b3 T  k  e
  1101. # `* ~& U* e3 d( D. @# ~0 Q
  1102. JSR LF_PPU$ y% t/ X$ p+ I
  1103. JSR BULMIX_WRITE
    # ~( ]- b' Y0 [* {# D5 b
  1104. LDX #$00
    $ B6 C& |" {2 N0 Q3 _8 h
  1105. LDA $07A2& f0 q  E: Q" T
  1106. AND #$04
    9 f- @* e3 V5 U: ^9 M7 [: `
  1107. JSR ON_OFF_PPU
    2 J1 x: L# }7 I2 ^) T& R
  1108. LDX #$00& u( k( z" B/ D5 d6 |+ R
  1109. LDA #$F1
    ; u$ [" ^# ]/ J1 H0 Y! |. [& p: w$ `
  1110. STA $BA( ?% T) I& m0 g* |
  1111. LDA #$216 e- b' n1 `0 a: ^& _2 T# \
  1112. STA $BB
    * s/ c6 z- X5 z6 n4 D  W
  1113. 7 X/ N7 [# {0 f0 c

  1114. 8 h& r( H& R! d: G
  1115. JSR LF_PPU2 H& U( x0 ?2 L
  1116. JSR BULMIX_WRITE
    ! Y7 N3 l7 @0 }( _- G# ]& _0 f
  1117. LDX #$00- o+ X7 r2 A: h
  1118. LDA $07A37 \& ?1 K  X- O0 R: L0 C6 Z
  1119. AND #$04. ^$ C! ]; J# a1 I
  1120. JSR ON_OFF_PPU
    0 D- J" _5 T: {; ]
  1121. RTS
    # m2 o; T9 W- [! W8 D

  1122. 5 F) E( ^0 L$ J7 P" D% h
  1123. ENELOC_STRING:2 u! X  u* I" L+ i5 I" E
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$808 g' ^, {8 S: B. f7 O

  1125. 4 S) B: ~7 q6 H! ]/ [, e6 A
  1126. ENELOC_WRITE:! I% U$ l2 m% l' V' e) a
  1127. LDX #$00; g$ Y, y! L1 X4 G1 m" t
  1128. ENELOC:
    * Y& G9 z; B! [- C5 A" U
  1129. JSR PPUADDR_PROCESS  `  |4 j0 V- \# j0 L
  1130. LDA ENELOC_STRING,X
    ( V. A+ m' S) G# ?, a8 G
  1131. STA $2007
    / {: {5 |$ G" f5 M/ s, e
  1132. LDA #$00& Z- m/ X" ?; Q
  1133. STA $20007 H  ^$ a, x* x& y9 ?! t1 S
  1134. INC $BA
    ! Y; E9 e2 Z2 @" M! N/ }
  1135. INX& e7 Q( M7 v# A( X1 q( w. _- T
  1136. CPX #$07) ]. O( b7 K. g1 A
  1137. BCC ENELOC) }6 G2 j7 C/ @/ f1 ?$ w' l
  1138. RTS
    2 ~4 f9 [7 |, G  j+ J

  1139. 6 t+ c( ^- F, S' s/ ^
  1140. ENELOC_PPU:
    8 P. h' k& o8 O
  1141. LDX #$00# T5 u+ B+ t% M. `, L6 ?3 C
  1142. LDA #$22
    ! y* J* N$ L0 v
  1143. STA $BA8 n8 [+ j" j- q
  1144. LDA #$22$ x# }+ G+ j" r( b) Q& V- O
  1145. STA $BB. B4 l, O: B3 @9 D

  1146. , [* f; R& r9 H/ H; o4 K
  1147. # [- ~0 s7 x% a3 m. N
  1148. JSR RG_PPU6 m& V4 H  p4 b$ L- V
  1149. JSR ENELOC_WRITE$ M4 V' ?( d7 E& ?4 I, Z/ T) B9 \
  1150. LDX #$001 V1 z! Z% m! C2 A6 `6 q5 A
  1151. LDA $07A2  o$ j, J4 v) `
  1152. AND #$08
    , t+ P9 e  ^5 K! a9 T& {7 ~
  1153. JSR ON_OFF_PPU& p# i$ u; l6 V2 ]/ M) I
  1154. LDX #$000 X" _3 n' q+ I/ G4 H+ r; d
  1155. LDA #$31
    + t7 W" }; G: t1 c8 Q8 P( a
  1156. STA $BA
    ! }& v0 Q+ ^+ L( G# B9 A
  1157. LDA #$22- E6 R7 _! b" r  d- c5 I
  1158. STA $BB
    2 ]3 j' u" ]! Y2 @( x
  1159. / C  C+ K- D& P! x$ m/ F2 Q
  1160. 7 E8 U4 o2 L: d! ^' `
  1161. JSR RG_PPU6 b+ M1 P* f5 K7 \
  1162. JSR ENELOC_WRITE8 |0 V! V% i! J, j9 v( D6 ~
  1163. LDX #$00
    ) Y& r/ V9 ]) q: Q
  1164. LDA $07A32 ]5 Z. S. l. ~; x2 q  w, h
  1165. AND #$089 ~) g. M# X4 E4 o* ^6 U. o0 X
  1166. JSR ON_OFF_PPU
    , J4 P- L; O4 @# e
  1167. RTS
    2 u% `! P3 q# l! B. d5 H7 ^, L5 b
  1168. & \( J. g) R. b8 {" P
  1169. FOCFUL_STRING:
    ; `) ^  u+ W' d3 P- \+ D
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    3 U9 e5 L/ T9 k, W* f9 }
  1171. 2 a  _  B! }* f: I3 l8 v, }

  1172. $ Y) p. D) y& S* N! Z3 ]
  1173. FOCFUL_WRITE:; h9 R6 N1 G9 V7 R
  1174. LDX #$00  x- {( n* g" R% q
  1175. FOCFUL:
    4 b7 ~3 X* Z; l7 M- T& k4 g+ Q
  1176. JSR PPUADDR_PROCESS: y' G& s" D7 t; [# {
  1177. LDA FOCFUL_STRING,X: K( l" e1 N+ m: m/ B
  1178. STA $2007
    . }+ S# C) i; y# S% L: l; c' n* [7 p' ]
  1179. LDA #$00
    2 _6 O0 U" b$ H# ]
  1180. STA $20007 `# r; R4 z( N' J- V
  1181. INC $BA
    7 B$ H! V) t, m/ W0 ~# [: D  _
  1182. INX
    ; x: ^* L& p/ V  x
  1183. CPX #$077 j( D2 B0 a$ S$ j5 t
  1184. BCC FOCFUL
    5 ?5 S) Y( O6 J3 n1 K+ F
  1185. RTS
    ; B4 j8 A* \+ `" ]

  1186. * ~! c/ y, D" k' m( L( D
  1187. FOCFUL_PPU:
    " U- c1 t% s! w6 I7 i8 X) J. _
  1188. LDX #$00* d/ A2 |( R" V) Q
  1189. LDA #$62$ U- [2 U" @6 m+ r6 V
  1190. STA $BA; O0 b/ U* Z3 |: H
  1191. LDA #$22# T4 p7 F, V- q5 N
  1192. STA $BB- t3 T2 t2 y1 i8 _$ T! Z/ E+ H
  1193. / }: `: E3 m. x9 L
  1194. / m! m; Q1 L0 u/ b
  1195. JSR B_PPU
    4 @$ D8 K9 e' _
  1196. JSR FOCFUL_WRITE
    % l- r0 T5 ?- K) \- G
  1197. LDX #$00( Q: c3 g- W1 i. A/ ?) M1 A3 G
  1198. LDA $07A2
    2 n! X( e2 v: P, u
  1199. AND #$10
    ; a+ t  y# y; p$ R, Z+ ^+ H
  1200. JSR ON_OFF_PPU+ J, q: z$ o* }" Y6 y+ o0 p4 i
  1201. LDX #$00# _7 q1 o) \' x: G: W8 N
  1202. LDA #$71' k* H8 B- ]6 k
  1203. STA $BA
    # A5 {$ K' r0 r4 j. ^
  1204. LDA #$22
    3 y$ B" X8 G: R9 u+ F
  1205. STA $BB
      m( f' w" g( W4 H9 x- Y

  1206. 7 X2 L0 C% B" G' K$ B: e

  1207. 6 c; P) S' B- |6 E9 C) B
  1208. JSR B_PPU
    0 ~% Y( W; P# e4 U4 W1 c
  1209. JSR FOCFUL_WRITE/ P, y# H( a; R! P  o
  1210. LDX #$000 X, M( k- k4 T$ K
  1211. LDA $07A3$ j& u- U1 L" l' g, z& h
  1212. AND #$10
    + u. i4 W. n- _
  1213. JSR ON_OFF_PPU
    4 L( k3 g& p$ ]; _; n1 i
  1214. RTS
    3 V7 e! f6 r9 j; r

  1215. 0 _( L. {8 @7 p' V, e& u
  1216. BULCON_STRING:
    0 a# A; K& d  n
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80" n. t+ x$ o8 g- ^* r$ r% A& s& Y: S

  1218. , S* o! T1 O8 N5 B6 Y

  1219. 4 h4 j0 L" s( o4 c7 z0 T8 h
  1220. BULCON_WRITE:- v( e: c& H4 ~$ t$ R9 R
  1221. LDX #$00' p1 b  Q' o& p/ p( g# @  _; g
  1222. BULCON:
    " ]$ b' Y; r/ i$ I3 Y
  1223. JSR PPUADDR_PROCESS
    " W6 A5 H  I( f. w" ^) }- i; P
  1224. LDA BULCON_STRING,X7 g2 _. b7 A0 s* Q/ M. L! z
  1225. STA $2007
    6 F* R. e5 h' {" _) t  H
  1226. LDA #$00
    2 |& g( N$ F$ e' z1 a
  1227. STA $2000+ h6 D/ K+ p& x: c$ l! |
  1228. INC $BA, R  [. }* q& h: q- t8 M. s
  1229. INX" [, a. a8 h1 R4 S; A
  1230. CPX #$07
    : Q2 {1 M0 j% V+ D7 S1 G
  1231. BCC BULCON0 z, B% q6 p, i0 \- r. o6 O
  1232. RTS+ H9 h7 B  e0 Z9 M% g4 \

  1233. # ~5 Q5 `0 B1 h! b
  1234. BULCON_PPU:) v2 L  G: _, x/ r  F
  1235. LDX #$00
    $ b" K5 `# J' @# K6 J  s
  1236. LDA #$62) H8 m3 e! u( \$ o8 w
  1237. STA $BA7 L. y% s- S5 @1 b
  1238. LDA #$21( w% o) m$ D; o" `
  1239. STA $BB& u" I4 F; M- v! K) i$ l

  1240. . H1 n$ G7 @9 l! E9 L8 G
  1241. , {2 q! ^7 R! A1 X+ c. h
  1242. JSR UP_PPU7 V. n0 {6 ~# E- B7 z
  1243. JSR BULCON_WRITE- n/ \( u* T6 B& K
  1244. LDX #$001 W/ x/ L# B& a' r4 d7 _
  1245. LDA $07A4
    & c. j' J. V& c5 S/ S
  1246. AND #$08% V. B$ L5 C2 y" {* \$ j" F6 o
  1247. JSR ON_OFF_PPU
      P4 E# \2 ]6 ]
  1248. LDX #$00
    5 |* x. \$ c- N& u% \: n* I! P
  1249. LDA #$71
    * R# a9 u6 I9 |
  1250. STA $BA
    ! [5 @* e3 ~# }0 Z2 v) _7 m6 N
  1251. LDA #$215 ~* ~( e$ H  p
  1252. STA $BB8 s2 _4 s" |: \6 ]8 `, _6 o; N
  1253. ! z! a4 ^1 O+ G3 U) f3 E9 d7 {9 }  s
  1254. * ~# f& E# x' |4 K( I5 i" |  M
  1255. JSR UP_PPU( h: ~1 v3 W$ y" J  G9 z# d9 h
  1256. JSR BULCON_WRITE
    2 q1 h5 f- D* p' ?+ {" ~0 ?) u3 s# o
  1257. LDX #$00
    . r2 a; G- W1 C6 [  r- e* q0 y6 u
  1258. LDA $07A5
    ) [% k7 \. b) H- e  T) D
  1259. AND #$08
    1 N) r; c7 c6 z$ _8 p
  1260. JSR ON_OFF_PPU
    ' I: X1 u: ~% G: c9 w6 K
  1261. RTS
    ; _5 B3 T+ Q$ Z6 z
  1262. : D6 J; {9 c& Z% ~: Z* F$ s
  1263. SPEBUL_STRING:
    ( B+ q: Z; f! G8 j( Y  c  @% l/ ^
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$805 t$ r8 `7 Y' e, d' m

  1265. 3 \0 F+ \& x, }# v/ t. }

  1266. ( J; F. j/ Q; U+ W, w6 P
  1267. SPEBUL_WRITE:3 Z$ X1 r; s4 b1 i3 I
  1268. LDX #$001 A$ Y5 y3 E* p0 V$ R- z2 k
  1269. SPEBUL:
    - `+ ]' V5 e1 j, J$ C: ?+ c
  1270. JSR PPUADDR_PROCESS  M! e* |) r+ n- M
  1271. LDA SPEBUL_STRING,X
    + W+ {& ~& d! [  D) H' f
  1272. STA $2007
    8 ?" u, P- c* V/ }+ i8 |
  1273. LDA #$00% l$ e- H: L+ @9 V
  1274. STA $2000; _0 x2 T5 z( x& v1 F
  1275. INC $BA/ h2 A/ B$ e1 q; K% F7 Q+ _( Y, n. ]7 l
  1276. INX
    5 K' n) q! `' R# H4 }& n" b
  1277. CPX #$07
    * P0 B5 V" d  {$ H- X4 ^
  1278. BCC SPEBUL
    / b1 U, H$ a; `
  1279. RTS9 \6 X4 q' ^; F8 E% V" l% I

  1280. 3 `1 u* X, I4 p4 N
  1281. SPEBUL_PPU:- f1 @8 s2 n4 |" G" w! j
  1282. LDX #$00# X7 G" ^6 s" t% r
  1283. LDA #$A2
    7 F0 a) B! _8 k! d
  1284. STA $BA
      L+ O) r6 Q% B. h& R* A2 Y: k9 U; w
  1285. LDA #$214 Q, `( p/ F# y4 A2 J
  1286. STA $BB# u# g4 }; R7 F$ @' L6 Z, R

  1287. 9 e, ]  T3 I3 \+ R. S: N

  1288.   N% @: \; r9 b6 D9 l! [- K
  1289. JSR DN_PPU
    5 r, s$ U. k, F( F! m0 S
  1290. JSR SPEBUL_WRITE+ V& {3 b( ^0 l
  1291. LDX #$00
    2 B0 ^2 Y" W+ E$ \8 N
  1292. LDA $07A44 G! C7 n  g2 p* v8 p# X& q! j
  1293. AND #$02
    ( ]% t/ Y3 R3 v& F4 E$ S
  1294. JSR ON_OFF_PPU, @0 W3 @- f( x& {; o* V
  1295. LDX #$00
    2 h0 _' h1 u' s
  1296. LDA #$B1
    / T' U) n5 Y0 X# i$ U3 _  G: `  l
  1297. STA $BA
    + l: v4 K5 t) a. w* ^0 K
  1298. LDA #$21
    " ~. z$ |# i) c3 M* {# c& ~
  1299. STA $BB
    6 O0 x4 ]8 Z% h! s. v

  1300. 0 o1 {- ]8 s. k+ e
  1301. 8 h# z) ^# N* [' Z
  1302. JSR DN_PPU$ d( i. u6 D* [, L" [" p3 p2 S' H1 r
  1303. JSR SPEBUL_WRITE. S' v* p# E! v9 T/ x
  1304. LDX #$00
    : S6 h  d& m* D- I- w& U
  1305. LDA $07A5
    1 I4 |% s5 \3 I- @% \
  1306. AND #$02
    0 G" G" ]( C9 S" @$ r
  1307. JSR ON_OFF_PPU6 `8 s/ w3 K) \& T' L
  1308. RTS( W7 T1 D  E' g) F: L" c5 A) n

  1309. , ~7 @% d9 x: k0 C* |, U
  1310. .ORG $A500
    0 B  M+ c$ U- c6 M) f
  1311. CLEALL_STRING:
    6 L2 G4 A6 }* {1 }
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$809 t. s/ v+ v& r6 m( X9 Q' n

  1313. 0 k/ t1 U0 b( e/ C, q: V

  1314. 3 L' S+ p  n# P
  1315. CLEALL_WRITE:! D+ g1 |$ `$ W$ L( M2 J0 X) q
  1316. LDX #$000 d% ^5 J) W5 @/ H7 @
  1317. CLEALL:
    % @8 i& J3 z$ F; O) d! _
  1318. JSR PPUADDR_PROCESS
    ) }8 r( M; V9 d' n
  1319. LDA CLEALL_STRING,X, |4 j) U" G0 s# w
  1320. STA $2007* h2 Y( t" f; |. m
  1321. LDA #$004 Q" w- y' L* d$ ~
  1322. STA $2000
    $ U- O9 {, l0 `- V. E# x, E
  1323. INC $BA8 a1 p0 `0 U9 v* I$ p
  1324. INX. c+ B: L  D$ C: ^. w. `
  1325. CPX #$074 b/ Y) X" N# v% b! X
  1326. BCC CLEALL
    ) v! t. z3 F% g7 H- a( n' s
  1327. RTS
    3 Y1 ^$ S9 L0 e2 C" e! w( B7 T3 C
  1328. - f3 T$ t3 X* z( n4 Z  O* L
  1329. CLEALL_PPU:
    5 l( d5 i+ I& I" P  }
  1330. LDX #$00
    3 @( K, ]) I: G  x5 G) d! V
  1331. LDA #$E24 U* [# G7 Z3 J
  1332. STA $BA
    , `8 Z* l: Z  G# y; \! C. }
  1333. LDA #$21
    6 B9 L  R# l, L* q
  1334. STA $BB7 G7 c7 W' x: x& o1 g" q

  1335. 2 G7 f) Z2 l7 P, y) j+ `
  1336. 4 i6 a2 q' H3 ^$ u
  1337. JSR LF_PPU7 y$ N1 E/ _% |( N  }5 P+ n
  1338. JSR CLEALL_WRITE% X: ~" q  p) D3 h, M
  1339. LDX #$00" y4 C) ]$ J$ l8 d' l
  1340. LDA $07A4  y  g" l8 ~( Q$ H: B/ ^
  1341. AND #$048 ^$ k8 X. C) P" O1 n( n; _" n4 U
  1342. JSR ON_OFF_PPU
    3 ?; E( v5 A; T# H- G& d
  1343. LDX #$00
    8 C( l/ U" {  ?( [' t; |
  1344. LDA #$F14 E6 [- w/ o9 O  k
  1345. STA $BA
    5 s( S$ j) N& s* Z" j
  1346. LDA #$21- F/ r- h2 |) Z& J6 E% w
  1347. STA $BB( ^1 \$ x6 y% g3 W9 ]1 u! s
  1348. 3 `2 b, ~- ]- J5 ?1 U* e3 I
  1349. 9 Y. ]6 r; J/ g) j, a! x/ [
  1350. JSR LF_PPU
    7 F* `. q) `0 I5 @" V" R
  1351. JSR CLEALL_WRITE2 Q( X- z% @) X, C# V
  1352. LDX #$00
    9 \8 {0 _5 P; {
  1353. LDA $07A5
    0 L  \8 u9 J& A
  1354. AND #$04
    6 s( [; B5 X* x) ]' H/ d
  1355. JSR ON_OFF_PPU% ~9 V5 V( l& {6 H6 e7 b
  1356. RTS7 B! U$ G) H+ a# H& o2 J5 u; K
  1357. + v( F: i/ ^) d4 w/ j
  1358. HARDMODE_STRING:% P7 E/ j: m3 c8 d& v
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80" a' w! r+ ^' \; U. X4 A3 x
  1360. & M4 ?" N3 Y3 ?: m! K. ~
  1361. , m) w7 M; o9 T3 ^
  1362. HARDMODE_WRITE:
    5 {6 w2 [/ |0 b2 b" b( n9 n( H, s# o
  1363. LDX #$00
    6 f, B# X- v7 M. S8 D
  1364. HARDMODE:0 C- |7 \8 ~& `0 b, C  K' h# E
  1365. JSR PPUADDR_PROCESS8 ?$ M) {7 ?6 X' M6 ]3 q
  1366. LDA HARDMODE_STRING,X$ a; A1 d8 x- ~, p, K8 C7 d" x
  1367. STA $2007' i5 Q* l$ J* G  m7 P( g2 P7 k4 k
  1368. LDA #$00
    2 P" |5 X: t9 B
  1369. STA $20004 f1 c. }5 V( P# Y* ~5 ^8 Z
  1370. INC $BA
    ! B0 D' P* S+ B9 r' n- r
  1371. INX: u0 D" w1 B) J$ B! d8 i" i
  1372. CPX #$07
    % s6 n# y) ?+ B7 x7 a3 i; u& r
  1373. BCC HARDMODE. Y3 W9 h9 I' m2 y
  1374. RTS7 u; ~# }  Y! D5 s

  1375. ) L. z: q4 J3 l6 T8 H9 G; W3 r" ^
  1376. HARDMODE_PPU:
    + h. m0 T- V, j7 x) V
  1377. LDX #$007 [+ d% A: B- C) u5 a
  1378. LDA #$22& H& K. e) c; X0 b5 T5 E
  1379. STA $BA( {$ A5 [% C# Z# ^0 O' }% G  R
  1380. LDA #$22
    2 Q( l+ z: ?8 j+ A* X
  1381. STA $BB
    & ]4 W# |# o# B
  1382. JSR RG_PPU
    7 S, u3 g& H9 p) {
  1383. JSR HARDMODE_WRITE
    - j# o4 F! z+ f' p9 n* N
  1384. LDX #$00( V$ \1 J$ \# i, q9 J$ ]# z* }
  1385. LDA $07A4
    ! D% x- c3 u" i: \- E' y1 v' D  d) n
  1386. AND #$01$ F. J5 [5 b, Q$ \1 Z
  1387. JSR ON_OFF_PPU
    $ }+ C, f; {9 o6 X; S
  1388. LDX #$00& h' l; K8 p; Q% l0 @
  1389. LDA #$31
    ; A0 U% J2 s+ ~1 t( O
  1390. STA $BA5 E0 _% v# u" D0 I3 U# {2 l
  1391. LDA #$226 O  `+ e0 g4 d; W) Z' d2 i+ G$ P+ i
  1392. STA $BB8 i5 z0 l+ E: A! O% k- \4 \7 l
  1393. ' ^' K  _* `' B( F% K3 S

  1394. * [1 i% O4 B! r3 V0 I
  1395. JSR RG_PPU, E1 t5 q5 U, |6 Y& A; ^3 T6 z  x
  1396. JSR HARDMODE_WRITE" R! y, w. ~6 L- ~+ u3 H
  1397. LDX #$007 w4 A8 q. J7 ^% u/ Z* b
  1398. LDA $07A5
    # g0 N" P" X+ @
  1399. AND #$01
    * q9 a8 L- w; |
  1400. JSR ON_OFF_PPU0 q4 ?+ E; }) {. H0 ~( |
  1401. RTS
    + X$ ]( P1 E7 J- l2 \1 f% I

  1402. 9 p1 M6 I; \9 a2 e8 g0 ~! v3 l
  1403. B_TO_JMPSTG_STRING:
    9 }3 [( Y# J% t$ N1 ?& R/ c
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$807 ]# L- f8 i9 o4 C/ ^5 b6 l% q* o
  1405. ' p# G: o& V2 c7 n6 o" M3 J! |

  1406. - P6 I; {$ G3 P: z3 X1 C
  1407. B_TO_JMPSTG_WRITE:7 @$ z8 Y$ ~4 K* j5 w
  1408. LDX #$001 `( _: ^' w8 @" M& A( b  D% V
  1409. B_TO_JMPSTG:. @* B. w* z+ I" K, s8 w
  1410. JSR PPUADDR_PROCESS6 A0 Q& m& ]0 v) y6 `) V
  1411. LDA B_TO_JMPSTG_STRING,X5 c/ N/ A4 m: k$ C2 a, e
  1412. STA $2007
    3 v: n- W& a$ i, \0 A  F
  1413. LDA #$00
    5 v# P: V; a4 ]0 b0 D- F( f6 }9 d! B
  1414. STA $20008 v# ]% b! V* R+ r
  1415. INC $BA; k6 H( ]" i0 A0 K. q: w- _& E0 R
  1416. INX0 a& |, p' Y% |& S
  1417. CPX #$0D
    9 P. s1 C7 Q9 D$ ~7 ]
  1418. BCC B_TO_JMPSTG
    3 C# W4 Y" b9 }" B; o7 O8 P, h: ]
  1419. LDX #$00
    : e  W7 l5 t: Z3 ?" r* v; m  |
  1420. LDA $7FE0
    - C/ k' k9 F, A
  1421. JSR ON_OFF_PPU+ T0 `8 O0 [' v
  1422. RTS
    ' T  C5 D" z$ I/ U( H( h# C

  1423. 6 {/ {5 |1 @1 [3 {9 q% w! ]" v0 ]
  1424. B_TO_JMPSTG_PPU:
    - |0 }4 u& p: \4 ^
  1425. LDX #$00
    ) a& _  `8 [5 J2 h! }
  1426. LDA #$68: H$ l6 C  x( p$ B- q, m: Q- u8 w
  1427. STA $BA
    2 }. v5 O" T! z/ N) r
  1428. LDA #$22& L3 P* p' e: F  L
  1429. STA $BB- J; `7 I; u: Q
  1430. JSR B_TO_JMPSTG_WRITE4 ~0 m# a& D0 u( m# |* `* A% a
  1431. RTS) _; ^# n0 V0 l2 ?! w) S' k  F) q
  1432. + r6 p. A7 r! ~$ A7 N! K$ k+ K
  1433. # e, j/ {/ g8 [( l, W0 D, E, i
  1434. A_TO_PLAMOD_STRING:
    7 l' p6 {( b5 H' }  U. K
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$801 [. M3 T' S8 _! k4 K- f

  1436. * h( ^6 S1 I$ H4 i, ?

  1437. ! Y' i# d* k7 R4 \. Y0 p' x
  1438. A_TO_PLAMOD_WRITE:
    ' W; ^! x7 u, q) P4 [1 A. ~
  1439. LDX #$00
    8 w% I. A0 O: C5 l( i% n; g
  1440. A_TO_PLAMOD:5 v. a7 B7 E3 S) U+ x
  1441. JSR PPUADDR_PROCESS$ m$ R6 ^% B- p3 P3 o8 z+ a
  1442. LDA A_TO_PLAMOD_STRING,X
      c- y$ q- _* J' {) x: s
  1443. STA $2007; |, @2 T4 y% P  m
  1444. LDA #$00
    - @# |) R2 X  ?! E
  1445. STA $2000
    ( m. D6 ?! \1 }' E0 G
  1446. INC $BA+ n3 ]$ E  S( ]4 F8 e! ^' c; V
  1447. INX
    ! n2 m% j) r, T
  1448. CPX #$0D1 E2 ~# T4 o* T5 t
  1449. BCC A_TO_PLAMOD: \9 I( V1 _0 _  F9 N/ v1 `
  1450. LDX #$00
    2 H9 U) ?& u. Y3 q2 \% s, W
  1451. LDA $39
    4 U5 h/ r1 i- f6 `. w+ P' ]
  1452. JSR ONE_TWO_PPU! U0 x/ V7 |7 ?; E
  1453. RTS
    , G. T+ B+ r7 I0 |. R6 u4 C, I
  1454. + M2 [# e8 i; O; c# R$ ^1 D
  1455. A_TO_PLAMOD_PPU:# |4 t4 N; R/ B6 m5 H" `
  1456. LDX #$00
    1 Y* K! d; Q) r7 i' J; R
  1457. LDA #$A8% i: x* a, ]4 s  l2 E: @
  1458. STA $BA. W# s3 H1 L. H3 s5 t7 \! F
  1459. LDA #$22
    ' t% a: X( N; h; e0 R  g# M0 Q
  1460. STA $BB
    % t' l+ X+ M8 e  @
  1461. JSR A_TO_PLAMOD_WRITE
    , E& W. A  I- Z* G. _' ]+ [
  1462. RTS
    , f/ E4 w! p6 I3 x2 b5 e
  1463. 5 j& Z% m6 e' ^1 m! _# W' o+ b
  1464. MOVSPE_STRING:5 A  V' e& [% p: F/ h
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80; Y: u& L: R' a. Z
  1466. / F  A3 k  H, ~8 |* C
  1467. & \% ?4 p8 a" l6 [, q8 u) i
  1468. MOVSPE_WRITE:9 G. p/ o6 [; m% E
  1469. LDX #$009 L: [4 F; t4 e4 F% w0 `( j& E7 r
  1470. MOVSPE:
    8 {' ~* ]# ]- l/ [( o# \: l. K
  1471. JSR PPUADDR_PROCESS
    ' J+ Q( d) i3 @* Y4 c
  1472. LDA MOVSPE_STRING,X' p' Y& @% a2 D8 K
  1473. STA $2007
    , R" a3 Q! e  ^: B
  1474. LDA #$00: Q7 \* F+ L7 L
  1475. STA $2000
    ! ?- q# ~$ L4 o9 Y3 y
  1476. INC $BA
    ( h' U& Q/ z0 o
  1477. INX& v3 F2 w, E6 ?( I
  1478. CPX #$07
    : X/ ?% z) W2 u  d5 M# ~2 I/ H/ D
  1479. BCC MOVSPE4 h# G1 J  D+ I# X; \2 ~  [
  1480. RTS6 Q- r( {$ f7 I3 p7 J7 }9 n: K

  1481. 3 C2 k( v/ \- {; k0 M0 f
  1482. MOVSPE_PPU:' J- W1 k- v) g
  1483. LDX #$00: G/ T, i6 q2 N
  1484. LDA #$69
    3 U8 w) D  V6 d' a8 d* z
  1485. STA $BA* ]" ]2 h. }) g& z& U
  1486. LDA #$218 b; v" F; K% C3 c* k& n
  1487. STA $BB- ]7 d0 ?1 k( O! y
  1488. ; {# N. E1 B/ k3 x7 O
  1489. ! G" _, C1 m) i$ A1 H/ R1 `
  1490. JSR UP_PPU
    ( L; p, X0 q9 f
  1491. JSR MOVSPE_WRITE
    * `7 Y8 O6 n0 |- ?  t, k
  1492. LDX #$00
    . I( A' X8 j, U0 P/ L3 [6 \
  1493. LDA $079F5 T1 F4 n+ S+ Y& g' p! \0 v5 L* [
  1494. AND #$08+ b' u0 w' S: u% H0 `) a
  1495. JSR ON_OFF_PPU2 V. A8 Q. J* J" ~
  1496. LDA #$80( a* Z/ |- i1 X0 `* F' ~+ d
  1497. STA $2007
    7 B* y1 C0 Y5 ?& J, S* m
  1498. RTS+ R' l# ^# H& Q2 S

  1499. + z* c; Q, b( S( W* K
  1500.   4 P# H# W8 A3 {: d
  1501. UNLJMP_STRING:
    . S: P$ L) c( s# M4 E# ^0 V" D# l% t
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$806 K  P  o' ~- X; j! p

  1503. , S  ]9 E' D1 u! i% P# x

  1504. , u. A2 F4 ~4 O3 Y2 |
  1505. UNLJMP_WRITE:
    8 \; L( {1 ^' p  ^2 x
  1506. LDX #$00& Y& }! W3 E# h$ k5 H
  1507. UNLJMP:7 \: r6 J/ B/ ~, w# {1 n
  1508. JSR PPUADDR_PROCESS
    6 ~! a1 t8 k( [, P' M
  1509. LDA UNLJMP_STRING,X
    9 y/ d: x0 o9 J
  1510. STA $2007: K8 E* R, A: J( l5 w. K8 H
  1511. LDA #$00' G8 T. H4 C: h+ F
  1512. STA $2000
    & S5 L( J3 Y; a
  1513. INC $BA0 M8 |; [# |. u9 Z) N; M1 o: w2 ?
  1514. INX: s- b. T- Y! t6 y# }! K, i
  1515. CPX #$07
    5 V$ p- R2 o% h
  1516. BCC UNLJMP
    % W7 _8 r8 Q3 Z6 y' _0 l3 D
  1517. RTS
    6 R) Q! _! w/ Y: q% S
  1518. & H0 ]+ Q& x( G9 ?; E- @
  1519. UNLJMP_PPU:
    # C" ~: D! [! m7 r
  1520. LDX #$00
    ; o; Q7 Q- N$ K( h, p9 X1 T: \
  1521. LDA #$A9
    & Y+ O# L, b" Y" Q5 [
  1522. STA $BA
    9 a. Z+ s+ j8 O* ~3 A
  1523. LDA #$21: a) p) m8 T+ v
  1524. STA $BB
    8 }# @1 ^6 S. _/ F$ o( U

  1525. " ]# c$ S6 C9 `- t) t
  1526. 3 M. k, ~5 ~( O4 d
  1527. JSR DN_PPU  C5 \* i  x4 r2 Y& e
  1528. JSR UNLJMP_WRITE5 l2 J5 r9 j) }. r" D) t6 D
  1529. LDX #$004 ^- j; n5 ~: A; `% H) Z
  1530. LDA $079F/ ^$ f, @& V; z
  1531. AND #$04' A# z+ G2 u& b/ b7 p% C
  1532. JSR ON_OFF_PPU' Q" @. i8 Q. l, m
  1533. RTS
    ( d- [8 x2 N2 h6 s6 o

  1534. , ]! \+ |& q0 N/ S6 @) w! K, X

  1535. - W/ j3 f; v" R7 ^$ W  g' K9 T% H5 Y
  1536. DESTRO_STRING:+ n- J: O! b" g+ S
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80$ x" u" v6 R& w8 q/ c
  1538. 2 a7 D6 h/ [) O' y
  1539. 4 @5 c) Y6 D" Y: c  \$ N
  1540. DESTRO_WRITE:! j" x9 A, P) G; \3 z$ i
  1541. LDX #$00) n* B3 f, S2 `; ^8 J; q3 r1 w
  1542. DESTRO:
      K9 ~( F$ s  G2 _! }$ X$ M- J
  1543. JSR PPUADDR_PROCESS
    , |1 K4 m7 @4 q3 u5 ?
  1544. LDA DESTRO_STRING,X
    & H& }% n5 v2 D) U  D% Z
  1545. STA $2007% T6 F; K: `$ I3 j
  1546. LDA #$00
    - T1 {; v9 K" H, K
  1547. STA $20007 I+ f8 w  F8 w8 t, ~
  1548. INC $BA
    * d% |# O7 p7 U
  1549. INX
    5 p  X6 b/ V6 E1 L' ~
  1550. CPX #$07
    4 s! @- N0 e. k+ Z' d
  1551. BCC DESTRO6 X9 h  M" |% Z6 U2 k/ h$ o$ c
  1552. RTS! v6 p/ O/ L  s* r; L* L

  1553. $ `4 i3 ~) ~0 O, M7 l4 \: H9 [
  1554. DESTRO_PPU:
    $ J: ^5 H! C2 r+ D. m, G
  1555. LDX #$00
    8 I* d2 N8 o: _, C  p
  1556. LDA #$E9
    ' j8 g& ^0 i* v
  1557. STA $BA$ X/ l. S9 n5 _! ]
  1558. LDA #$21
    6 E$ u% Q$ q* @  M+ n9 M
  1559. STA $BB* U) R  g" R$ R# s
  1560. % q9 t; T% y4 W% e  r
  1561. $ K6 W  E8 N! A6 _+ C# W
  1562. JSR B_PPU
    # N- u- V5 h9 Z  h& f# N* M$ {2 M
  1563. JSR DESTRO_WRITE
    0 i% C! j( v( W" o  g' o, x4 E
  1564. LDX #$00
    6 x6 I0 T5 r  t  S
  1565. LDA $079F
    % o/ C5 n. b3 B' q2 X4 Q, f5 s- G
  1566. AND #$40
    " b/ Q- Z4 k& ^/ T1 _
  1567. JSR ON_OFF_PPU# w7 a& E9 b9 S( I$ |/ e- j" z& h
  1568. RTS! M# c& W. C. G! \! U: C, {, L

  1569. 7 S, l' t! p" }( ]  D- W; p1 q5 \
  1570. ; z* j, Q7 m! I
  1571. EQUBUL_STRING:, c, p9 j: d3 j3 b
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    9 O$ y; _7 ^% O5 r

  1573. " q6 l. q- H* ]+ G

  1574. ! Y2 B4 B( K+ B" b/ x" V
  1575. EQUBUL_WRITE:0 N' u) X2 u4 [3 a
  1576. LDX #$00: a( a; V5 E7 F9 T! ~$ w% ^5 Q( R
  1577. EQUBUL:4 e& I4 g8 [- a: q* Z8 \
  1578. JSR PPUADDR_PROCESS! E% \9 m- @( o" Q% v
  1579. LDA EQUBUL_STRING,X, Q3 W! l/ E( i) y: Q
  1580. STA $2007
    ! Q8 ^9 t4 T/ ^; h4 w; X
  1581. LDA #$00
      U5 _4 W7 f$ E% E# c
  1582. STA $2000  z5 `& p8 |0 |
  1583. INC $BA
    $ S! J" _8 P( j& l' b. i3 f
  1584. INX* }" N5 ^2 K1 q; V6 |) i; E
  1585. CPX #$07
    3 a; q$ O3 `8 Y* z  v* S( @( s5 g  ^
  1586. BCC EQUBUL: t' u% e: e# G
  1587. RTS
    ) f7 Y" K5 ~+ H& w

  1588. * J4 a: A1 U. X/ a. ^0 L
  1589. EQUBUL_PPU:
    9 f8 t4 p& y$ G- r
  1590. LDX #$00+ @% X* g. J6 D
  1591. LDA #$290 b. z& G& }3 D5 b: @
  1592. STA $BA' U4 [2 X/ L4 N4 f/ m& ^4 S
  1593. LDA #$22
    / W! ^) s6 I. [$ p
  1594. STA $BB0 N& g: e  E8 H9 t: z4 n* T4 w

  1595. & w: i! i5 P9 Z3 M' A0 d; u6 f5 W
  1596. 5 u. R9 @# Q0 y' B! j* B9 U% J
  1597. JSR A_PPU# O' h. G" g% C
  1598. JSR EQUBUL_WRITE4 Q1 ^8 F8 b  q) `# ^: B
  1599. LDX #$007 G$ a  g$ Z$ F; }% ?  A7 L% U
  1600. LDA $079F
    ( r" K8 R& |9 q$ I# ]8 U6 l
  1601. AND #$80
    3 t2 ?! N% Q) Y; P* g% ^
  1602. JSR ON_OFF_PPU0 g/ k0 K) v7 T( a* |: h$ f  V
  1603. RTS4 x* o* p3 u. L- E
  1604. * _. V% `9 G/ f: [$ [
  1605. " H( J$ D! y& Z/ d) ~/ f5 s

  1606. % b4 U8 c! t: @; t- I
  1607. BULSEL_UP_STRING:
    # L' B3 M( q, y( A( e; _" B
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80( Y2 {9 j0 [( m

  1609. . ]9 x6 s7 c9 N0 Y; k. E
  1610. BULSEL_DN_STRING:- H& @( ?' l* A& s4 n1 T2 X
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80
    1 a: v0 b$ V1 L8 e# r
  1612. # {- t  V& ?2 S9 K5 i* z
  1613. BULSEL_LF_STRING:
    + o+ E2 j1 ~7 J! @/ o
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80( x% c/ l1 x# P7 ?
  1615. & F$ X, t; L  V. x
  1616. BULSEL_RG_STRING:) {3 |! u0 q% m" b* z1 a& J8 m; ?
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$806 G: P. x/ E* y9 m3 b! R; _% I
  1618. ( [# C0 S4 i$ q) B6 S5 _1 }
  1619. BULSEL_B_STRING:
    ' ~3 T6 i2 b* n+ i7 I" Y+ D5 c
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80* K4 m9 Y% I+ i. o, {

  1621. ! `- z! R# _) Y2 y+ t1 b) B
  1622. BULSEL_A_STRING:
    ) V! f6 ?: w4 v! g) M4 U: P
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    0 H( ~( a! c0 i
  1624. 0 s8 h+ b5 w* s
  1625. 4 p9 \8 v8 k+ P1 S$ c0 c; j$ k
  1626. BULSEL_UP_WRITE:! I' a# i/ D2 K4 e; G
  1627. LDX #$00
      R/ A2 A. ^# \! ], L' p
  1628. BULSEL_UP:
    1 s! u- J: f1 B' u9 \# ]
  1629. JSR PPUADDR_PROCESS& [# }) [. k; U7 x2 w
  1630. LDA BULSEL_UP_STRING,X
    + b# j! \  l. o% A- D/ z' B
  1631. STA $2007
      D( c, P& m( `& I/ C! Z, {7 R
  1632. LDA #$00& E' V. N2 H- L2 U4 E* z7 \8 q4 o
  1633. STA $2000, k. b, a1 ~. l3 ?" k
  1634. INC $BA* e6 ^2 r# Z6 ^1 V* V/ b
  1635. INX. V: v4 S/ ~9 G4 q* V/ ?
  1636. CPX #$09
    4 ~2 C/ _/ x0 i0 F- S+ i. I8 \% @
  1637. BCC BULSEL_UP
    8 E# f5 d1 U5 c8 W. T/ R! F( @  d
  1638. RTS
    ( b* O* B* I$ B
  1639. BULSEL_DN_WRITE:' i& E/ R2 D7 M" @" T
  1640. LDX #$00
    , \- q7 n+ }) f1 w) [
  1641. BULSEL_DN:
    4 M* _; _$ b6 E# F
  1642. JSR PPUADDR_PROCESS
    . U& J, l1 T" n0 E/ b) W. X* H5 M
  1643. LDA BULSEL_DN_STRING,X
    ' L1 \0 B( S3 R8 _' _( N: Y7 P3 |
  1644. STA $2007) Z/ w/ y  R5 ]. V# K1 D) U2 X
  1645. LDA #$003 l0 E; |/ t% P8 H" g8 z
  1646. STA $2000
      h- U9 I9 M  y4 y& @: c8 M% u: y; k; e
  1647. INC $BA5 F8 c( P( R* ~5 M9 K
  1648. INX
    0 j0 w2 E5 A5 p* L* F( z
  1649. CPX #$095 z. D0 k+ [6 R
  1650. BCC BULSEL_DN- b+ o7 f  o( e
  1651. RTS
    - ]3 K5 Z, i! p: X! Y* ^
  1652. BULSEL_LF_WRITE:
    ' N( F. M/ ~- `
  1653. LDX #$00
    7 L4 s2 [" F) m+ P9 h
  1654. BULSEL_LF:1 _9 h' s" G& A, y# o- W: m: H6 S
  1655. JSR PPUADDR_PROCESS; ]- Y$ T$ d/ O( j
  1656. LDA BULSEL_LF_STRING,X
    $ r0 O- U* F1 Z) N8 j3 ]% R0 A5 e  `
  1657. STA $20078 s& s- R% C( h, g# k2 o
  1658. LDA #$00
    1 Q% o! N8 ^2 i) w: Z+ |6 z
  1659. STA $2000" y: ^: K% `% R9 ~! t) _$ y) l  N, k
  1660. INC $BA
    , t  n1 [. Z2 ?& T5 K/ H  z
  1661. INX
    ) t9 `1 P1 ^' N/ ?
  1662. CPX #$099 K8 d1 [1 i" O) z3 c  m+ o
  1663. BCC BULSEL_LF+ Y. w. G& @: E) N% U
  1664. RTS- v- d1 X5 v) U/ a2 {
  1665. BULSEL_RG_WRITE:
    5 ~9 f. P4 k# A4 ]; n. \
  1666. LDX #$004 Q5 |+ K6 i# F0 s0 X0 a! [* f1 i, D0 n
  1667. BULSEL_RG:, z# x( N, S$ T/ d. o
  1668. JSR PPUADDR_PROCESS
    ' [/ @  S7 r5 n  h: Z! l- @( [) q
  1669. LDA BULSEL_RG_STRING,X0 z7 t" k5 p1 w1 T
  1670. STA $2007
    / P0 D2 b: f4 |6 [2 `, q( d
  1671. LDA #$00
    2 Y& r, Y- m; r1 o
  1672. STA $2000$ U' g& w4 @1 J1 c9 [
  1673. INC $BA; g- S1 n$ f3 P4 m/ Z
  1674. INX
    8 U4 ]9 c/ W1 s: g% V4 W
  1675. CPX #$09
    & e  Q# n) _* F  ]8 k
  1676. BCC BULSEL_RG
    6 P  M( ~% P1 _- g
  1677. RTS
    " m- \7 o* w8 n' y
  1678. BULSEL_B_WRITE:5 F, r3 v6 N& ]/ j5 _
  1679. LDX #$00
    2 V. w9 p# ?- o& ]/ ~
  1680. BULSEL_B:
    & o1 K) C, Y) Q. C0 r- O
  1681. JSR PPUADDR_PROCESS
    , p6 E6 N/ ^4 }
  1682. LDA BULSEL_B_STRING,X' m2 A2 f( b7 m1 H  e
  1683. STA $2007& _8 M- F( w2 x5 K
  1684. LDA #$008 F/ c( ?9 F' M( ^% |$ x
  1685. STA $2000! h4 H+ |5 @# M. G) e
  1686. INC $BA
    , ^# z* H( ]+ d1 y6 ?
  1687. INX/ c; i8 ~0 w! b  }" K# U5 j
  1688. CPX #$09
    4 E# I) D1 f8 \
  1689. BCC BULSEL_B8 ?  y4 z+ E8 ^* H2 T0 y
  1690. RTS4 z( m+ `/ R" ]' ?1 i6 \
  1691. BULSEL_A_WRITE:, ]) e- k0 X, Y& |. d" r" v* A; a% ?
  1692. LDX #$00
    & t5 e/ u. [( I% s* B0 Q
  1693. BULSEL_A:/ H6 z8 H* Z) d3 T
  1694. JSR PPUADDR_PROCESS
    1 f- m% E) f, v4 ^; j2 e4 Y; j
  1695. LDA BULSEL_A_STRING,X7 [4 X* S% z- i+ y
  1696. STA $2007
    4 Q8 D) D3 g) g- i7 R# [5 B- w
  1697. LDA #$00
    5 w/ Z( t$ e* e' P
  1698. STA $2000' A: w3 ?: Z) m
  1699. INC $BA
    ; S& }2 v7 M1 D+ t- M
  1700. INX5 X& ~$ A9 k4 }6 \* E
  1701. CPX #$123 x5 _* U, e& \* A# ]
  1702. BCC BULSEL_A
    ) \  a( Z- I" R" |8 x, _7 p, i- j6 i3 q
  1703. RTS6 i- X: B" l  f- }6 X0 s
  1704. # M, H' t9 A3 l) i

  1705. " V; w, v5 l# Z9 w- Y& s
  1706. ' l( R0 i/ R! U# R  @
  1707. BULSEL_PPU:+ \6 u6 H' X3 R. F4 O! I
  1708. LDA #$6C
    6 `' E0 M, S0 e$ d( c
  1709. STA $BA
    " Y5 X8 \2 D4 {3 N, s) `; ^' H) J
  1710. LDA #$21! e0 L2 o4 O* R5 [: q$ v
  1711. STA $BB
    ) y7 K. u; B! Y$ Q0 s
  1712. JSR BULSEL_UP_WRITE6 S" N0 X1 y4 {
  1713. 9 ~! z4 O# Q+ x9 k% b" H, Y6 ]
  1714. LDA #$AC
    6 {: Y6 i0 r% c* \. }
  1715. STA $BA3 ?0 M$ f  ]0 t8 f
  1716. LDA #$21$ P6 ?6 p, P6 {
  1717. STA $BB+ g; L. X6 F2 ]' U
  1718. JSR BULSEL_DN_WRITE
    + N8 {$ `# T+ N& c; [
  1719. & I2 M7 X1 {7 m) U3 _3 i* G! p
  1720. LDA #$EC
    / b, g% |# y( Y+ [
  1721. STA $BA& \( S9 O- S* V* t6 R
  1722. LDA #$21
    " {0 ~/ o9 `0 N; t3 y% O1 ]
  1723. STA $BB7 ?; L7 \% y) ]  r2 g$ [
  1724. JSR BULSEL_LF_WRITE
    + r, e' `$ o" B$ U
  1725.   c9 {! ]. I+ }4 G6 p/ L% F: H
  1726. LDA #$2C
    0 W/ b: C+ F( j5 D
  1727. STA $BA
    / I8 C" J0 H' [, C
  1728. LDA #$22
    ; W! [7 D% h  R1 O! t
  1729. STA $BB- D. s$ h2 C4 j  M
  1730. JSR BULSEL_RG_WRITE. g5 u& v) i% t$ E4 T9 M! J

  1731. # p! d0 d0 p* R; I+ e# {; y. H: \
  1732. LDA #$6C
    ; D1 O2 }4 @/ q% K3 t8 O( s
  1733. STA $BA4 m7 |( z1 s. r
  1734. LDA #$22
    0 w2 N6 l$ o: Z0 c$ N
  1735. STA $BB
    3 M( @1 v0 F0 k# i  ?. P
  1736. JSR BULSEL_B_WRITE
    # e: [5 p# h! P8 ~, E
  1737. 7 \" k: y; i5 O, J
  1738. LDA #$A70 x4 E1 y- f: G% T2 _) Z, Y
  1739. STA $BA
    ( ~. J- i# _! L9 [" C
  1740. LDA #$22; g9 V1 M+ {0 C9 H1 `6 \+ u% O
  1741. STA $BB
    4 s' O8 ]0 |( @, o' ~) W
  1742. JSR BULSEL_A_WRITE
    + ^8 n5 ?$ }( }/ C
  1743. RTS, T7 C8 s1 e" R

  1744. . o3 p0 v! p, f3 b( i
  1745. 3 Z: f% n) d* }: T
  1746. 5 F8 b" v1 U( C' p) `- ^" X/ J
  1747. UP_STRING:
    ! y. ]# s4 \5 A/ N. }1 o
  1748. .BYTE $9F,$9A,$80
    & }8 \) V) {  W8 X  e5 A
  1749. 7 g4 \$ U9 j: ?( b) m) y
  1750. DN_STRING:
    ( L6 |8 b/ k' k! U' v+ g, Q. O
  1751. .BYTE $8E,$98,$801 m" ~1 E$ S1 m

  1752. " G! ^, w$ P0 E0 r6 o: m1 `7 y: h3 x
  1753. LF_STRING:7 k& A9 |1 A/ f- p. B* V
  1754. .BYTE $96,$90,$80
    " ?8 t8 x- d& T  L
  1755. % b5 g; i2 j3 p0 z  t
  1756. RG_STRING:# O% c3 O, x" q  v
  1757. .BYTE $9C,$91,$80
    * Z; y, D5 k4 h( J
  1758. : P9 B$ w* K4 _
  1759. B_STRING:7 J+ o- l' J: ~9 T- D! K
  1760. .BYTE $80,$8C,$803 X- d6 M' t- a. l& L0 H6 s
  1761. ; d; c, `! B6 J& T' n
  1762. A_STRING:% a  e: H  v" {
  1763. .BYTE $80,$8B,$80
    $ }/ `! [+ O) ~1 s4 t/ Q$ u& O, V
  1764.   D8 o" l2 n  n& A& [
  1765. 9 d* i: A4 m# S% ]  i
  1766. UP_WRITE:
    . D" K0 G9 X. p" V0 d9 G8 u; p/ o3 G
  1767. LDX #$00
    ; E; R8 ?. }( c0 [) W! n
  1768. UP:
    7 c7 h7 z6 b, E6 K2 F8 W; p
  1769. JSR PPUADDR_PROCESS
    ; W! f# U9 ~" Q  H$ K  ~6 H
  1770. LDA UP_STRING,X8 E) R9 b) w& h" [; V( q
  1771. STA $2007
    ' e, X/ O. T$ [* M2 U% |
  1772. LDA #$004 m7 J% h8 q" l. d, E
  1773. STA $2000
    " e" C' c: |4 M% Y& z3 J
  1774. INC $BA
    , s( E- e( |2 z; j( X
  1775. INX
    8 g' _. ~, `) ^! \
  1776. CPX #$03
    * H+ t' t( W$ U8 b' P+ E+ n( O
  1777. BCC UP
    . e5 C" `4 i  R
  1778. RTS
    2 Q4 ?& v& ]: e8 R4 w
  1779. * ?% I5 W; l. g! a( w
  1780. DN_WRITE:! _/ ]6 E  E1 Y5 l0 y) i: m
  1781. LDX #$00
    % {& L; J% J4 B
  1782. DN:2 P* P! D9 J! n! q9 B6 H
  1783. JSR PPUADDR_PROCESS
    , G; e- m0 m' T/ v' z$ H! y
  1784. LDA DN_STRING,X2 E" s% f5 ?5 E$ Z1 r
  1785. STA $20070 @' x! H" p# [1 _. F
  1786. LDA #$00( B; f. I7 J0 S2 x% {' P6 R
  1787. STA $20000 t* P; n: q5 w0 |- @. r) c# c! ~* T
  1788. INC $BA9 i  H2 v9 I: b: V
  1789. INX
    , B4 p" x, \) ^8 c2 K8 s
  1790. CPX #$03
    " D1 Y- [. i2 g, j2 d; t6 F
  1791. BCC DN+ r- Y! V$ a4 c$ m+ U! p
  1792. RTS
    8 J0 |2 G/ J+ u
  1793. - X/ \* f5 T7 i8 @# X3 A- H
  1794. LF_WRITE:
    * l8 |4 Q& y! g' |' e1 W; Z$ l- o" G
  1795. LDX #$00
    & `: ]- z% S* h
  1796. LF:4 J* h& f" Q( t" k
  1797. JSR PPUADDR_PROCESS, p) U9 v: d$ x
  1798. LDA LF_STRING,X1 i2 n( s1 E, W6 j4 I# Y  i' n
  1799. STA $2007
    2 R8 q' z, P# v/ L0 V
  1800. LDA #$00+ O& j: F2 e8 E  |* i9 s
  1801. STA $2000
    . z* b1 r: a  ]2 w7 c
  1802. INC $BA1 d! E2 B' Q6 G0 K" C" ^) a- b
  1803. INX
    $ G; I) ~7 T! l  w& Z
  1804. CPX #$03
    - ~6 T1 c  x! f& j7 u* A3 C) `& S
  1805. BCC LF
    ) b( i1 d: T6 D. y; y
  1806. RTS
    1 ~* a3 ]: j' t

  1807. + @( i. j1 W$ Q$ t
  1808. RG_WRITE:
    2 s. V- w; j$ S% e7 e
  1809. LDX #$008 T1 Y! L" c( d( H" A" u
  1810. RG:; e: ?8 x) y+ I' h
  1811. JSR PPUADDR_PROCESS
    7 p. g" V0 B3 l( ]# V2 a
  1812. LDA RG_STRING,X
    2 q1 H; ?, B# g
  1813. STA $2007
    " |" _7 ^' P2 }# o+ F
  1814. LDA #$003 D! A) E& k$ K0 C
  1815. STA $2000$ c# {* p! U4 D! W6 Z
  1816. INC $BA5 @+ `' i7 [( w2 W) `+ s7 P4 c0 ]
  1817. INX, R3 q! q* ~' |
  1818. CPX #$03( w; I: I5 s: j& o( R+ @
  1819. BCC RG
    : `& c3 \- P/ ?* f) p$ I* L
  1820. RTS* f! q6 Y. h1 }4 n3 t7 X+ V' }
  1821. . G4 ?3 J6 c: ]  @9 a3 A" |) d
  1822. B_WRITE:$ q0 F# W  Z0 [# ~3 d7 ]# x
  1823. LDX #$003 M% R1 u9 z  _
  1824. B:* ]$ B  I% {( _6 O% A8 S, a
  1825. JSR PPUADDR_PROCESS
    8 B" S! w( k, U) g
  1826. LDA B_STRING,X+ h! ^. |1 j* d, x
  1827. STA $2007
    4 Z2 l3 \5 p! p7 r
  1828. LDA #$007 C5 V0 v3 ?7 t2 Q1 _  z* j: j& |
  1829. STA $2000# V7 [. [" B5 b/ O$ G7 l
  1830. INC $BA
    - a6 r% P2 I" u/ H6 M
  1831. INX
    8 R, U- {/ |$ K% L2 I
  1832. CPX #$03
    / s0 ~3 Y4 ^8 k0 L+ o" P  i
  1833. BCC B
    ( ]$ E7 a0 v$ Q
  1834. RTS3 ?" Z1 _7 _. c' N* Z3 \* O

  1835. ( e7 k6 ?/ u5 e
  1836. A_WRITE:
    / e) T' ?0 k. N% ^" X$ G
  1837. LDX #$00& U3 W( V; C+ u+ _3 e* ?, ]
  1838. A:
    " {( \, N7 q1 U7 ]2 }# c
  1839. JSR PPUADDR_PROCESS. ~& b7 H2 {- `& p2 k7 H
  1840. LDA A_STRING,X
    , }% y7 [$ F# J2 q* v# ^5 K
  1841. STA $2007, A& j- e+ c! T- j+ V
  1842. LDA #$009 T" }. E2 x( K( W* x) u+ o/ m
  1843. STA $2000* Y0 |) o: Z# A  ^: T/ c) x* \' z
  1844. INC $BA* }5 |- _+ S# c1 ^
  1845. INX' v7 o1 U; Y6 E; m$ n7 L! c
  1846. CPX #$03( d9 F. [- f9 |& T
  1847. BCC A
    3 t4 g/ y/ @# j& K' s& ^. U
  1848. RTS
    - ]8 {2 C- h/ b

  1849. / J% X* p, V/ h
  1850. : ~: F% w" }3 n. X8 \
  1851. UP_PPU:) ~; j: k3 R6 Q/ n
  1852. JSR UP_WRITE, ~- c. l. C  r( ~0 {9 b: H: T: y
  1853. RTS
    + y  J' ~# g7 s* s" y
  1854. $ j2 S+ `: r5 F) l6 t! b
  1855. DN_PPU:
    ; r4 B6 N8 N6 v
  1856. JSR DN_WRITE
    / a! ~9 J  V( s: s* r  X9 E, u
  1857. RTS
    ! J* I  I- S6 y6 Y+ s' A' S

  1858. ! y0 P2 P7 n' f. m( o
  1859. LF_PPU:  W, |2 R/ N+ C* Y0 n  q4 w) \
  1860. JSR LF_WRITE- W. u. p8 n3 E$ L2 K& C" N4 g% \
  1861. RTS
    6 e- P  L5 I# i" ~4 D" j
  1862. 3 P3 H2 o& \4 r5 U, z
  1863. RG_PPU:/ H0 ^5 T! _9 J0 C
  1864. JSR RG_WRITE
    4 T8 w4 T  d/ O' C9 l/ F1 t! G
  1865. RTS
    * L3 H0 Q) c: U5 M# {& Q. p

  1866. 6 J  f  U# t6 f" G$ j7 t3 \
  1867. B_PPU:
    3 A$ O. A* J: n5 X8 Z) ]4 t- p
  1868. JSR B_WRITE8 e4 t% l; l( T. H2 c+ t& b
  1869. RTS8 H" M6 x# w9 i( H7 J8 u

  1870. % W+ M% x- J8 ~" i
  1871. A_PPU:
    ; J  e: x8 o4 @
  1872. JSR A_WRITE4 G' q7 a& g3 p- [( L, }
  1873. RTS
    $ V3 b$ u4 W9 |! w9 J) {; Z' C" ~1 J2 Y
  1874. " ~+ ]! m" G$ `% `/ {
  1875. 9 e8 J# H) E! G" A
  1876. PAGESELECT:6 i% Q6 y/ _) x# E$ B8 E% n
  1877. PAGE0:
      i/ y8 `$ I( R; s
  1878. LDA $07AA
    + W( ]# ~4 ]: |
  1879. CMP #$00
    ( ]+ V: b  v1 \8 k3 C
  1880. BNE PAGE11 T" G( |# k. E7 s- \

  1881. $ L! ^1 b+ l- t0 I7 J/ p
  1882. PAGE_00:
    2 Y% `; S3 c' m
  1883. JSR BULSEL_PPU
    & I) i  i  E) v' U  g! ^
  1884. RTS" \, K2 g, C: d9 @) x
  1885. ' G, l$ [, h6 D* l/ _: T' ]9 `
  1886. PAGE1:
    3 G0 Y9 b; `  x
  1887. LDA $07AA
    % U/ @- b, N, M/ z6 H& y+ q9 ^
  1888. CMP #$01
    ; F; F  r: y3 i% D
  1889. BNE PAGE2- z" h- j; X, i5 |
  1890. ' Z! U7 ~2 ]) [3 a, S3 b- K7 ?
  1891. PAGE_01:
    ; {8 u9 s3 M" ~1 m) t: [
  1892. JSR INVINC_PPU
    8 }; J+ ~' T& f8 u7 {- C
  1893. JSR LIFELC15_PPU$ J. U6 h+ E! ~
  1894. JSR DOUCON_PPU7 Y, t8 b- y$ M" t2 X% V
  1895. JSR KILLON_PPU
    # |, H% i5 t; E+ \: V+ R* X
  1896. JSR SKYFLY_PPU& f: a' `4 T6 E  U
  1897. JSR LIFELOW_PPU
    : T/ c/ v  N! h( F3 F. M. p
  1898. RTS6 |, L4 n* M% F# _* `' @+ X- _
  1899. 4 F, O  l" L, X3 }) I' K) Y
  1900. PAGE2: * I0 c/ r/ x7 A
  1901. LDA $07AA, l; r* \, Q. z& L* c* Q
  1902. CMP #$02
      Q9 x/ k6 g* @1 K- N  f  l
  1903. BNE PAGE3
    8 A. g3 r& m+ R1 l. t- ]" x
  1904. 6 {) b; q0 ]" a
  1905. PAGE_02:; u0 G1 x1 Z# G. n: {; B4 X
  1906. JSR BULADD_PPU
    . a( T  Z# T/ Y. ~# p1 M
  1907. JSR SKINGE_PPU
    ; M7 ?! U5 v4 s6 q( @4 n  j
  1908. JSR BULMIX_PPU
    - y' D* F3 Z4 G. [4 T
  1909. JSR ENELOC_PPU% G& B9 G# S, {( G) p7 E& K' `
  1910. JSR FOCFUL_PPU8 J1 u& S: t0 E. _
  1911. RTS
    + ?, U# I3 ^' m7 h8 k: {
  1912. 1 z0 D: p7 s* P6 H; k: r
  1913. PAGE3:
    / ~3 T$ s* J0 U
  1914. LDA $07AA5 m, z& B6 `6 G) |- |$ v% s9 Q
  1915. CMP #$03
    . |4 e  t  u, N1 D
  1916. BNE PAGE4) z1 r* ]2 |7 D$ W) t
  1917. 0 s5 u& O5 M# g
  1918. PAGE_03:
    ' C% m) U1 z: s4 ~1 U
  1919. JSR BULCON_PPU2 i1 J: E+ q6 Q1 |
  1920. JSR SPEBUL_PPU
    ) D( O1 N  w3 S0 ]
  1921. JSR CLEALL_PPU9 V6 x5 k* q+ i" f
  1922. JSR HARDMODE_PPU
    + k; e+ S7 y3 u" _+ x9 k7 f
  1923. JSR B_TO_JMPSTG_PPU/ }: e, N9 F/ W  c
  1924. JSR A_TO_PLAMOD_PPU
    - P0 t, N1 x  l
  1925. RTS
    ' B  N& [2 v  T( O/ R: L

  1926. ; V$ Y) H) d0 Y) O. ?1 m- `
  1927. PAGE4: 0 ]# c7 U9 z+ t- H( Z; s
  1928. LDA $07AA8 }. w' q7 ]; M% f
  1929. CMP #$04, ~; X5 E, E. P$ W' ^
  1930. BNE PAGERTS1 C/ _8 C% G3 N2 x9 v

  1931. ( ?) u. S4 A" N- \  [
  1932. PAGE_04:4 y! }1 z. i5 n& _
  1933. JSR MOVSPE_PPU
    & C+ F% ]' k( u& I; x
  1934. JSR UNLJMP_PPU
    7 N' i* {; i  O6 N, z% U
  1935. JSR DESTRO_PPU
    7 s2 r! c9 A; p- K  a
  1936. JSR EQUBUL_PPU
    * X, J: z1 R5 J
  1937. JSR MOVESPEED_PPU
    & G& _# `1 `+ i9 g/ w$ O" _
  1938. PAGERTS:
    4 K# B* b- R7 {4 E" B6 }
  1939. RTS2 F1 f. w3 p: V! A' d. `$ l# G

  1940. + q% a9 ~1 [+ j) x

  1941. % m/ F6 ^" O9 a0 Y
  1942. PLAYER_01_STRING:
    : `3 J9 b. W4 Y: W2 C/ W; }. T5 V; V
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80. ?+ }; o4 \" x/ c% Y6 p" @9 L

  1944. 4 S7 D1 U/ B- y! O3 H' Q* `
  1945. : u% X; I' s5 I4 D+ _, {/ t
  1946. PLAYER_01_WRITE:, b* q" q$ d3 H. o4 F' M% D: q
  1947. LDX #$00
    8 a: O3 y! l2 z# @% D4 c& |; J
  1948. PLAYER_01:" |% a  r' r3 T4 o) F
  1949. JSR PPUADDR_PROCESS
    ! X( X* e" `6 M8 G2 Z! T$ f
  1950. LDA PLAYER_01_STRING,X0 a' ~$ [" h; c# o( C' ]. H
  1951. STA $2007$ |4 E9 K; b: J) T
  1952. LDA #$00
    3 K+ L7 I( [* o& D1 U- u6 y0 t2 |
  1953. STA $2000
    - Z! i. d  N0 c* x! \5 }1 B; y4 w
  1954. INC $BA
    : w. g3 R* g2 _& F7 e" h
  1955. INX7 g0 F! L! P8 u8 U8 h8 T
  1956. CPX #$0A/ A9 e  X8 n3 _6 H( P7 F
  1957. BCC PLAYER_012 T1 I- S' `& d) B+ C& @- w
  1958. RTS" f2 V8 E+ s$ E* h& [3 ~

  1959. & T# P4 ^0 n: ?( i+ S$ T9 R, K0 Y
  1960. PLAYER_01_PPU:- C1 w) ~0 V9 K" O
  1961. LDX #$00
    - ^& |9 H/ J' Z
  1962. LDA #$64
    9 `. |& t  \: v* z0 \
  1963. STA $BA
    6 k! k! B4 H8 {( a# G; _
  1964. LDA #$20) u  o( n" K6 g
  1965. STA $BB
    9 v$ D" q* G8 S( ?
  1966. JSR PLAYER_01_WRITE* I" U& Y2 T  [( D+ c# |( |  T
  1967. RTS/ `8 }/ \) C/ H% X
  1968. . u4 O, p$ s  p4 ?5 c2 s
  1969. PLAYER_02_STRING:
      }& A' w* T( a( {1 v; a9 i
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    0 d) i: Q( |* w& w% v8 m
  1971. 4 l: f2 O/ @1 V7 s# L

  1972. % r' t3 v2 F8 n7 Z; T. n! r5 {
  1973. PLAYER_02_WRITE:% ]$ E4 Y& x, x0 S5 L& b5 x
  1974. LDX #$00
    & P7 u$ D# l% s' ~( l0 D/ O: ?& m6 E
  1975. PLAYER_02:
    2 h; D$ U9 U' Y2 h5 U0 F
  1976. JSR PPUADDR_PROCESS+ Q1 K$ o9 `" \$ E1 M' J2 e
  1977. LDA PLAYER_02_STRING,X1 Y- @! L: G0 L% }4 x8 L6 D
  1978. STA $2007
    ! t" K# a3 c. b% o/ ?  d# R
  1979. LDA #$00& b- W' v/ ^( ?. M4 o4 f5 P
  1980. STA $2000
    - T3 a! z( D( [6 Z; w2 M
  1981. INC $BA  z( `3 ?. N. Q6 k5 K0 U
  1982. INX
    ! j3 B( O, q; y' R+ c
  1983. CPX #$0A
    ! j) f& r/ m) w% r7 m+ {. `
  1984. BCC PLAYER_02
    4 }; F2 ^" G3 w4 u/ u9 M: s
  1985. RTS
    + u: B' I% _+ h$ Q$ V
  1986. ' m2 U- m. y1 t. r' x- x
  1987. PLAYER_02_PPU:; H7 \( B! w$ j9 E5 D$ _
  1988. LDX #$00
    , X" o! @* @. F" P
  1989. LDA #$73# D! S0 _+ f4 D, x  z$ f/ I
  1990. STA $BA
    ( I0 E' ^( x2 t5 [% e
  1991. LDA #$20
    $ t; D8 o. G4 N4 l  ?* G6 K
  1992. STA $BB
    6 U6 T/ H' \8 e) A/ V+ [
  1993. JSR PLAYER_02_WRITE
    ( q+ W7 o. n! p- N5 L  k
  1994. RTS
    / {9 o; Q' G% E8 Y( ]/ v) ?- J" b
  1995. 6 ~' C& u! J0 M. K' D
  1996. PPUADDR_PROCESS:
    $ m+ u" V7 j% ?) @; s  E8 f
  1997. LDA $BB
    " p$ i3 Y4 W6 t  e/ |! q1 w
  1998. STA $2006* v8 K( E- t! _) _1 F3 J, a4 A
  1999. LDA $BA
    . E% I& ~* s. W
  2000. STA $2006: ?; q6 t$ S8 ~/ Q0 R  i6 m
  2001. RTS
    ( N1 p6 S6 g" k" i
  2002. 2 `* T' r! Q- b; g
  2003. # c% L! [. P3 R) b
  2004. , R: g5 z5 M. j! u5 i$ L; F
  2005. ONE_STRING:6 j7 Q; M' E# w+ G! F
  2006. .BYTE $99,$98,$8F0 T# Z6 C. R) G& H8 J# D, q

  2007. ) [; e- t. }  c
  2008. TWO_STRING:
    ! A0 }1 I; c1 J
  2009. .BYTE $9E,$A1,$99; M  t+ i/ c8 z1 @

  2010. ' z; g- W. f6 d# U! Y* d
  2011. ONE_TWO_PPU:
    $ I2 r& O, L1 n, X
  2012. BNE ONEWR* X# ?  l5 M( h# h- ~5 Q
  2013. TWOWR:
      J4 a) ^" [8 j; Y/ K* w
  2014. JSR PPUADDR_PROCESS
    0 w$ g; r8 L# n1 l% K! q+ h' K
  2015. LDA TWO_STRING,X
    & C4 T1 u7 C* k9 a6 M( n
  2016. STA $2007
    $ I1 R$ j4 e1 r. u3 n& ]
  2017. INC $BA
      S; D0 k* n$ \" C7 i
  2018. INX$ a9 P# |' h% R
  2019. CPX #$03- c% X) [& d" j4 u
  2020. BCC TWOWR; k( Q, ?, y# d2 f6 I( @0 g
  2021. RTS' M" J! L" l% n0 r' j" U5 Y% T+ }
  2022. ONEWR:
    9 q& w# b" z2 s  w. @/ m# g. ~
  2023. JSR PPUADDR_PROCESS6 z% N0 y( w6 e' D  a3 k" X
  2024. LDA ONE_STRING,X& C0 S: h6 E6 O$ S+ Q( G
  2025. STA $20073 W: J1 i/ h9 p8 q9 [6 S
  2026. INC $BA
    # x- {* h, m; c9 R, C" r; b
  2027. INX2 x  M! E2 I5 r: {9 I
  2028. CPX #$03+ h% m; l; Y" [
  2029. BCC ONEWR
    ! n0 n2 P) h3 h
  2030. RTS# E% `  {" t$ {

  2031. 0 `& t7 I4 e- H2 U; a
  2032. MOVESPEED_STRING:! x$ a6 t& F1 f/ q+ R; _
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    - j/ R4 n( S/ P. ~

  2034. / f, A% ^. I( g

  2035. 4 j2 k  X' L2 U/ E: f
  2036. MOVESPEED_WRITE:5 S9 A: v- f7 ^
  2037. LDX #$005 A. J! M0 i5 K$ Q
  2038. MOVESPEED:8 m* Q6 P, i3 a/ C' h5 X
  2039. JSR PPUADDR_PROCESS
    , |5 }1 }  V! s/ w7 a3 j
  2040. LDA MOVESPEED_STRING,X
    & z) N2 K" h/ k; y9 W( I9 G5 q6 @
  2041. STA $2007; D; j  C! `4 B! Y6 F
  2042. LDA #$003 J! ]8 T6 h6 |4 t6 |
  2043. STA $2000
    - m8 _' B7 T1 v( V' [" i
  2044. INC $BA0 l$ D: @% P% K2 r' E
  2045. INX
    * V& i3 i$ ?2 U3 y/ D2 A6 L- M
  2046. CPX #$0B, Z5 ~5 r. o$ b/ \
  2047. BCC MOVESPEED# y5 z, l9 q6 k+ j! H4 w7 ~
  2048. RTS
    . t9 x8 u# i9 g: f

  2049. 8 Y) R# P  q  o9 u
  2050. MOVESPEED_PPU:8 d  h: i: J  v6 H& h6 A2 d$ F
  2051. LDX #$003 A3 [) H2 k. }* _/ R
  2052. LDA #$AA
    $ K  ~, L! [) k2 k# {- z9 p5 x
  2053. STA $BA
    3 _+ @3 Y* o9 i! _! {6 B
  2054. LDA #$222 ]6 q! W3 h% m8 u  e, j" [
  2055. STA $BB- |1 V  r" E0 U& z. B/ v
  2056. JSR MOVESPEED_WRITE0 j, M4 {  F( a! {% s+ C
  2057. LDA $7003
    5 E5 H3 L) ~" [$ z
  2058. CLC
    1 I1 ]' a% w$ `+ d
  2059. ADC #$828 q6 O( O1 P* o; v& z/ V7 V, d9 y
  2060. STA $2007& z5 e, z, l3 o' I
  2061. RTS
    4 _4 g! _" _& H
复制代码

本帖子中包含更多资源

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

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

签到天数: 2981 天

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

签到天数: 2115 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
5 c. w$ p5 @* G- D* R* t+ S% V$ p
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2105 天

[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-2-19 06:39 , Processed in 1.094726 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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