EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
' k7 f" P2 A* r! N9 Z
" n* }2 j0 h+ v! w$ P3 g
     [FC][魂斗罗旋风终板END暂停显菜单]

+ V+ K& I+ i  J. C; r: U2 _' j& f作者:FlameCyclone(flamecyclone.ys168.com)1 C' C, @, t3 \$ G3 I
时间:2016/11/19 21:46:00
8 Q' S  y: N7 C3 ^$ _2 E( t3 U: v- R+ q更新日志:

' l$ T, _7 K" w+ S1 w' A/ z# q* A2016.11.19:加入暂停显菜单(共5页)., p$ s: F- y! w# B
2016.11.12:加入无限跳跃.
3 x6 n& M% }: v# k2 ], S# o2016.11.12:加入速度调节.

# F" m1 `; [. G4 Q2016.11.11:加入敌我子弹对消功能.
# ?/ g  C6 p8 ^8 e$ W2016.11.11:加入全屏闪灭功能." V$ o* F. K! }' u% t, _
2016.06.08:加入全屏瞄准功能.
, X& n0 {; J* t7 z5 p2016.05.31:加入弹速调节功能.
& C: l7 Y* M. Y! a" i5 r2016.01.01:加入高难度模式.' M* n5 L) i# V: _  E# s# y
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.* D# [( y# Z; a% x1 m6 o8 L
2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
+ N4 y, f. H7 G2 `8 _; O( R2014.07.05:双人切换功能优化.. E1 X0 l0 s- g! ^: x  U
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
, k) x$ h& V$ o2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.+ @- m) K! L0 O
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.5 A7 p& r# r; |& i$ b; {) |
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.+ L8 U; j6 B- D( @4 X- ^+ M* P
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
) B* D- k* [% M+ ^1 j  D! l% L2014.02.13:加入自动演示通关.
. x: n  p) O- _0 _8 S) p内容:
/ P+ |5 f% v1 d* V2 O& t23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作./ Z& j2 o1 [& n; i' `
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃." Y: C( r/ s9 O; [. J' |
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

! p* b/ W+ W0 S  \$ k5 q! P20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉." r+ M# i8 c5 v: d. w
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
0 {& ~  H- z. u4 O" R( v/ u) F18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
6 [: @9 X2 s; o8 A" F! k17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级." z! p0 p3 E0 W* R; o; e7 _
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.0 ~1 e: Q, W. P
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.5 \! {! s! A! t5 B
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.2 u) a( r+ O. x
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
9 Y' |9 N& P; l3 [04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
$ `' I) s) ]4 J9 x* L; [0 L9 N05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.8 h2 \5 c) z" I/ ~; @! {# G
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.
7 n" ?* Q4 P# }: k! {07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.) X/ X" E. i' }+ d6 \2 n7 Z
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
, V) s$ g- I) O; r4 f- ?+ [# Y09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.9 d& F: `0 W+ v5 @! ~' f
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合./ @7 z& w  {# N
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
7 O( G; t( h  H1 u7 ^2 H) F' e. Z12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
' Q* J) K- J, ]: [! [% E13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.! ~, ]- @4 B. o3 ~4 Y* ?  p+ d
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
7 r  F5 J! _7 e$ \15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。7 c  m8 n8 s2 ~
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.1 v, ?/ h! \) b: Y
B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!0 d9 @4 w: L8 D7 c) ]% O
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.9 B! N; }+ J6 V" U# p( m+ u/ |: Q
  z7 `9 c6 N! |* U5 c% Q
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
2 n3 ?8 F; T( g# k% F% y2 W欢迎大家转载,转载时必须注明出处.
0 Y* p" j- l& w6 n1 k
/ @: k) c5 B9 s% Z, f
游客,如果您要查看本帖隐藏内容请回复

/ Q' _& m9 Y& m5 J1 M  y2 T* Q) A  p1 `
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
' H8 Q  a7 P, c+ `- a/ m, `! Z( W这几天的劳动成果如下:
  1. .ORG $B4004 W* ^: R  f8 k8 m5 g

  2. 5 z% U3 {' k/ H6 g0 s  y* R

  3. ' \/ b* M1 L( _! s% D2 e* ^# l: k
  4. PROREG:7 D9 C( k- P$ H4 `
  5. PHA% }# }5 ^/ N( P1 _+ ~/ c
  6. TXA
    ) G1 K0 M8 [" O0 O
  7. PHA
    + h. f5 [" s: }: G
  8. TYA
    - j8 @; r  h' k% H& g' q
  9. PHA
    5 s+ w( `% O* \1 f" b' v
  10. LDA $25
    8 |, T+ s: a* N; A: [) p  O" D$ J
  11. CMP #$01
    9 N- a- k* }" a- S5 A# ^9 H& z$ \# t
  12. BNE RE
    8 x8 P4 L) ?/ F8 m$ j
  13. LDA $010A
    0 B& {9 j& m" p/ _, k  M  |/ F4 q
  14. CMP #$00. F2 P) H' n$ W1 @
  15. BEQ P1
    ' ]. \1 [5 ~& y' l! [

  16. ; P5 U- D0 `" B5 C
  17. RE:! e: H- e( O: a; i& ^1 A
  18. JMP PPUWRITE2 E% O0 F7 q" m- }. x! z; y

  19. + v; }5 Y5 S4 q, O
  20. P1:                ; 条件判断
    . K0 V/ x# _) @! O5 b: Z# z/ A
  21. LDA $7FFF7 @/ p5 m6 L+ f
  22. CMP #$FF) G' N' y% a* h6 S: N
  23. BNE P1RP5 X: d9 ?! i5 n% s) [8 Z
  24. LDA $7FA0
    ! s& j  }' r* x' B% b) |
  25. CMP #$00" b- ?% M9 F1 D, O5 j
  26. BNE P1CMP
    ; o3 e- ^8 g6 E, m& Z7 X8 P
  27. LDA $2001" [7 {& m: [+ u" g* g! t1 o
  28. PHA4 Q% u$ h( W/ J. k
  29. LDA #$00
    7 x2 V; V( T/ `( i
  30. STA $2001
    $ |; B; p- g: g0 H0 ^  ?; a4 k9 `
  31. LDA #$FF
    5 ]4 {2 w" h8 `" p  `# f/ X6 G
  32. STA $7FA0
    2 s) i4 q! |3 g4 K
  33. JSR CLEANA: Q# _* i. w8 a; T
  34. PLA1 {: h2 u" o/ i7 S& m! B. V0 i, ^
  35. STA $2001
    7 r! h! F/ S: K1 W
  36. JMP PPUWRITE
    % x4 `7 R' [7 s7 u+ w  l
  37. P1CMP:
    - z3 q+ i, }; |/ E  m: ]
  38. LDA $7FFF
    ' Q1 e& A9 r/ q1 [
  39. CMP #$00
    , e( \- n* R: n; ~) S8 v! x+ F
  40. BNE RE
    / J  g4 J$ W+ s) {4 M$ k
  41. P1RP:
    ! h: }5 L7 [. h! x# B' ]& w8 y
  42. LDA $2002
    3 n  x, C0 F8 M
  43. LDA #$00) b1 T2 i+ U- L! X# G* k
  44. STA $2001, R) K, N. {* i, c) h! Q: [! m
  45. LDA #$FF
    5 E* f- F2 d' A6 v4 O
  46. STA $7FFF* S) o6 p3 ~* G; O: m( C9 E" E  i
  47. STA $7FA0. _7 S$ @5 i4 B
  48. JSR COPYPPU3 `* z3 l& p* w3 U# J6 ]
  49. PIRP2:( G9 K! _0 a% R8 a0 e. V6 f$ d
  50. JSR CLEANA0 k' {1 R) L& k  o
  51. JMP PPUWRITE% j- J1 c1 Y3 `7 e" J9 f

  52. 6 K# Y' }3 x- K
  53. COPYPPU:" ?7 g# P" C- W- y8 }
  54. L0:
    & p* i/ K, ?5 l3 O: Z
  55. LDA $30
    * X3 n- m$ m( {; P) \) ?* }& g2 s. e
  56. CMP #$026 o* O2 r: `; F" e$ C1 r5 I1 c4 ~
  57. BNE UNPROFC1 @. G: d% g; I# m: O: q
  58. LDA $FC
    $ g0 D/ J; D6 y, {/ w: ~+ E; t& P, U
  59. STA $7EFC
    & y% {6 ^# M7 Z/ E3 _6 J1 r
  60. LDA #$00
    " g5 x& ?4 o" y7 o6 G
  61. STA $FC
    7 s9 o; s! b4 E5 _2 ~! q, }# p. L
  62. UNPROFC:% u$ |$ [( ]1 x. @2 k3 o8 W1 M6 ~4 s7 a
  63. LDA $FD
    4 Q  |4 V# y' b$ N$ y1 B
  64. STA $7EFD
    ! p/ b3 L# I3 P3 q6 M
  65. LDA $FF
    ) `" ~( r- p  ^/ I, V& [' |
  66. STA $7EFF
    3 q7 R, U  P7 u& t% Q9 L9 U
  67. LDA #$008 R# K' t" M& K8 H* P/ b! b
  68. STA $FD# ^' l$ U6 I5 z- I6 D$ `* v; c8 A
  69. LDA #$B0
    7 n! q! l# z6 B& }& N
  70. STA $FF
    ) U1 d0 d* n: J* w+ s* ]5 J# T8 k# D: o, x6 Q
  71. LDA $07C1
    . ~$ e4 }" k  H' Y+ C
  72. STA $7FC1
    $ K" s2 e/ T6 W  t5 v# o
  73. LDA #$3F$ a! O5 ?1 j' Q8 O" A! ^
  74. STA $2006& |# ^# k9 S( E0 ]/ n5 `  Z$ k- V/ K
  75. LDA #$01
    5 i2 I/ B7 o4 v; B
  76. STA $2006
    ( m% A( r! Y8 w* N$ s/ z; M! r
  77. LDA #$24
    0 ^+ r! `$ M+ \+ P. A7 d. r
  78. STA $2007
    : L5 C1 X$ J3 P
  79. LDA $07F6
    ) R$ W) A' V; w4 p& q7 r
  80. STA $7FFE) \7 W( z! w1 I2 v; [; S  ]/ E
  81. LDA $00FE4 {+ O) T  }6 m( [9 C9 G
  82. STA $7FFD
    : x0 J: T" S* C2 G( [2 `' N* E
  83. LDX #$00- O, Z7 x7 K; W* f: g9 |8 I2 S$ i7 e4 X
  84. LDY #$00- S& |' S  d% @  x/ n
  85. LDA $BD3 {/ ]$ y# x2 y9 o$ o
  86. PHA$ X3 B, ~, |! }3 M& s4 l( t
  87. LDA $BC
    . W+ y) A2 K: L; s0 K
  88. PHA( o  @( U7 x$ o. b4 K( p3 \
  89. LDA $BB, z, v7 T* B2 L% F& _7 L
  90. PHA9 C% V. j; h) B9 s3 ^
  91. LDA $BA
    # _1 K1 S* x9 E9 @# D
  92. PHA
    7 \. k" F$ s# X% F$ r
  93. LDA $B90 h$ L( j) I0 w: e4 V
  94. PHA+ D# I/ f4 L! `4 W) O& ]3 W9 B
  95. LDA $B8
    5 A. C' ]7 I  h
  96. PHA
    . D, D2 S, {. K( W% ]/ ^
  97. LDA #$004 N9 |* \! L8 N4 t6 F
  98. STA $B8
    - ~1 e! [0 E& z* E8 ?
  99. STA $B9
    * \" r/ k  A' T% I
  100. STA $BA2 {3 g, e3 H! O' _
  101. STA $BB" P+ H+ x9 A. ~# i+ `) m7 ~
  102. STA $BC3 i) f1 c& h" M. f+ V) c/ b) Y; @
  103. STA $BD! W7 b8 D* O- i0 h. l/ _/ m: P
  104. LDA #$00
    / P0 ?. O/ l1 b: Y) [7 P7 c
  105. STA $BA" l/ S0 t% m% q# l2 [- g  k
  106. LDA #$20$ J: E- b# W5 H9 J
  107. STA $BB
    ' e3 L) ]9 K/ p2 h: o
  108. LDA #$00
    + K) e6 ]- j( Y- ~4 z% @4 T$ c
  109. STA $BC; U# f: ^+ E& e3 w) T7 \1 m9 H
  110. LDA #$604 W6 l9 K! V% q
  111. STA $BD8 J0 E& E" V: |8 E' K

  112. ' v- U5 R' r1 {9 u
  113. L1:                ; PPU复制% R: V: Y: J, G6 a, r$ N+ c- W
  114. LDA $BB  \/ a" a( c7 K% T# v
  115. CMP #$301 t# _- Q5 `' P" \8 y  {
  116. BNE L2: B! B2 S3 u/ H( R3 P
  117. LDA $BA
    6 p7 s& G, n0 ]6 M: u2 u# `
  118. CMP #$00) a/ ?/ T* ]. h& g' w
  119. BEQ PROADPLA& P. z* H9 ^0 `- `. o
  120. ! u2 a( \9 D! E6 I
  121. L2:! E# Y: P1 R6 _# ^; V5 E0 o
  122. LDA $BB. f" |0 I2 ]! y; u& I$ R
  123. STA $2006
    ' W3 L& [# O# w- x* C
  124. LDA $BA+ v8 H1 j+ I* w/ t+ F2 M( p
  125. STA $2006
      L; a7 R0 w! \( B' S

  126. 5 C% f& e# g7 }. h! e+ f
  127. L3:- j3 n. n( h8 ]2 U/ t, T0 ?
  128. LDA $2007
    % w# z% }% M: t( F( \. K' Y. y
  129. LDA $2007
      `# k) T  S: v! A. d
  130. STA ($BC),Y
    - E; G5 k; e( s  P" z: ?! w

  131. * d, c; }/ x/ G; M4 {$ z9 K
  132. L4:* u" d( a  S) D; v% r; P8 R
  133. LDA #$00" T* E* _6 h' U0 b
  134. STA $20000 l0 H7 n- k/ Z$ c
  135. INX3 k$ S4 ~% y- M/ h9 K( n+ {5 Y. }$ n0 _
  136. INC $BA
    - ?; S: i# m5 O" X- l
  137. INC $BC
    8 E" g3 x' m9 e( K1 n5 F
  138. CPX #$00
    ( F. @) I8 p" l
  139. BNE L1
    9 x3 B' M0 o$ x! ^
  140. INC $BB
    / w7 w# K" O2 x3 W, \. C
  141. INC $BD* A9 B! v) c) L( o, O
  142. JMP L1
    8 j, p& C5 \# {8 ~' s
  143. # l7 x5 A5 M+ N/ |& D
  144. PROADPLA:                ;出栈
    3 N0 ?5 l, L1 }. {+ U
  145. PLA* f- D  |( ?: r# ~( E9 |6 v
  146. STA $B8. s! r) t% N7 y+ Y: t& D
  147. PLA/ g# L7 r& [' _0 d, x6 ~# @2 A
  148. STA $B9
    % k. l* X( p8 I% h6 O
  149. PLA
    $ r- H4 P2 z1 b" W, _
  150. STA $BA2 @2 N2 h- X. q3 g
  151. PLA
    * l& z" A" R2 @3 `+ }" s
  152. STA $BB
    5 ]6 l5 g/ c( t- a# D
  153. PLA/ l9 }0 P- f3 U5 y& ]2 K1 C9 U
  154. STA $BC) \# b$ o, V- {/ t; {( c$ ?1 n
  155. PLA; R. k( @! O# [: E6 k
  156. STA $BD
    % m9 B( R) r0 R1 H% d/ y/ f  O4 u
  157. CPRE:
    ) A% d) W2 u3 {, e" `
  158. RTS4 l! L7 m8 W& \5 k
  159. ( T/ d7 q  O) ]: V
  160. CLEANA:                ; PPU清空, L7 M) t0 r# j4 X7 W: v- h
  161. LDA $BD
      G2 t: X" m4 }# D2 Y4 ~
  162. PHA2 G  ]) G0 R( r  A1 O9 c5 K2 y: a6 h& C
  163. LDA $BC# R) t% k1 L* _+ }) t2 L4 E9 x
  164. PHA
    ' F$ U, y; P/ j
  165. LDA $BB
    5 K9 j& F) y) l5 h
  166. PHA
    / @# p' k  w+ Z5 D
  167. LDA $BA& U* A. S) }. ]. T) a
  168. PHA
    9 b7 @4 o( C7 ?+ p. V
  169. LDA $B99 Z3 `% c/ Q+ k1 p9 b
  170. PHA2 ^; R* Q4 p% ]
  171. LDA $B8
    , }; u- S) m. J; f9 B
  172. PHA) g% }, J; H  K8 K1 {/ J
  173. LDA #$00
    3 W# R$ ?6 U" `, ^# Q; Q+ Z
  174. STA $B8
    ' @& A# v4 ~* G" L0 Q3 G
  175. STA $B9
    1 B3 o) N& b8 r2 v1 ^1 I
  176. STA $BA+ H. V& n& N" L7 m- @( \
  177. STA $BB7 r: i" P4 y' Z/ S1 w+ n3 G: s
  178. STA $BC9 }" {2 u7 ?: a2 W& l
  179. STA $BD, U3 n+ K; f; o6 f7 S$ H$ x8 x6 \
  180. LDX #$00
    7 _, e6 y, |/ ^! B( [) c. V% z, j
  181. LDY #$003 [/ W; F  g6 ]) L. m
  182. LDA #$00
    $ n1 d+ L1 W8 G5 Y0 E
  183. STA $BA
    & U6 A2 p5 V5 K& C0 w! ^; E
  184. LDA #$20+ S( l+ r1 z/ ~" T2 L% ?
  185. STA $BB/ {8 C7 C& S# x  a

  186. 5 n2 y* |' m* y0 p
  187. CL1:& q* R6 V0 u8 H% F) ?% t
  188. LDA $BB
    0 y1 O& F1 j( G  f) C& f; @( i. t
  189. CMP #$30
      U& K/ \; }. z' \( r+ l2 R
  190. BNE CL29 b8 q: l( P3 I
  191. LDA $BA
    7 j% K! y7 L6 X5 d- V6 _
  192. CMP #$00* A# O0 r$ a* x
  193. BEQ FREEWRIYE
    , _- n9 b+ V! o+ ?# i! y

  194. 0 n; t/ M8 Q0 m6 F
  195. CL2:+ S+ L( N: L4 g
  196. LDA $BB
    + K# W; Y* K" N/ ]( x' ~
  197. STA $2006
    9 S; G9 E' P# d# R& M
  198. LDA $BA5 o: q! A5 T3 T+ c
  199. STA $2006# s! C* G0 p; g- \
  200. : w" H4 {6 a! D4 {0 L/ z
  201. CL3:
    ) O* i3 k0 }" a1 \" Q
  202. LDA #$00" r/ ?- B+ x: W- M- s
  203. STA $2007
    ' |( h- B& ]5 L8 q5 {) a4 V% l' t

  204. 4 Y* L6 t3 R; I9 g$ R3 r
  205. CL4:
    ( p  ?. g, O, \8 R0 s
  206. LDA #$00% ~7 H3 R- H3 S( U0 l* x
  207. STA $2000% m- s0 f0 H0 C8 A9 c
  208. INX
      g6 H6 Q) l! ]9 k
  209. INC $BA5 p' n& a% t- W7 Q- }
  210. CPX #$00
    4 G5 }' V5 y3 y* r
  211. BNE CL1
    1 R( g+ P1 C' |- K2 P# n3 C
  212. INC $BB& I, O( V! F) p( G8 i
  213. JMP CL1   Z: p# F+ R$ F4 c

  214. $ ?7 m, H; t8 ]" t$ t
  215. 1 x( A3 @, P) u  O/ [- L
  216. FREEWRIYE:
    4 Z2 Y  v- {/ X
  217. JSR FREE
    9 \/ ~) R) n) Q2 O$ {
  218. 9 t9 \* B7 N% }7 L$ t$ E, g% ]
  219.   ?- r8 s) |+ \4 H2 d* y

  220. : z9 B0 ~4 v4 I
  221. , L' q- Q  {6 j, b

  222. - L: \  ^% c. s5 T. p( e! i, k
  223. CLEANF:                ; 恢复现场9 z7 x4 b2 H# }# I: N# z+ p9 B  U
  224. LDA #$08
    8 q3 S' T8 L$ a1 o4 v2 K0 S1 h! m
  225. STA $FE- `) E) ^& H1 E- r! C" U, ~% x7 P3 s
  226. LDA #$00" `: {" I7 D, n$ G, Z, U1 A
  227. STA $07F6
    ) f2 z0 f6 v/ @: G- m  F6 }4 l. ?; W
  228. LDA #$24  \1 l# Y( {* X) e
  229. STA $7FC0* C7 O7 O  P! y* K4 m
  230. PLA/ T* a( @+ `9 e% |7 S* a
  231. STA $B8
    ' F4 k# g. H; f, ~' ~! k: x5 [. x
  232. PLA, {3 `  _1 q, w8 W
  233. STA $B9
    4 Y3 y' x9 L9 u& I# w6 @
  234. PLA
    2 N' E- H/ e! R' f+ j: A$ |% P7 x( y/ g
  235. STA $BA
    5 e9 @4 p' o1 g( ]9 J0 |
  236. PLA; S- Q: M  a( C# f/ u
  237. STA $BB
    , b5 p8 O" b! @9 y! X9 C# e
  238. PLA  O0 |, I2 J/ E/ U* a
  239. STA $BC1 r4 C/ w* x/ t+ |
  240. PLA
    * B- q  u% G+ O/ A/ L7 k. ]: R
  241. STA $BD
    ( N: T& H5 K# ^* Q, [
  242. CLRF:9 P" a1 I' X& ?6 `) a
  243. RTS  J7 O& ]) Z. ]- Y- I1 b( `0 T
  244. % t- ?/ L% t, \! \
  245. W_DATA:
    7 a/ O! o7 V. m% j
  246. .BYTE $00,$01,$02,$03,$04/ V7 `! z3 X. |# [, U' T) h
  247.   5 e1 I/ |9 j: v. e! Z7 Y$ u/ J
  248. W_PPU:
    ) Y# r: F9 R" y1 ~3 y# B: Y# D9 k: n
  249. .BYTE $98,$97,$90,$9D,$96
    ; {, {" B( m$ G7 F  a# B  q# a
  250. * x1 D* ]( ^1 q/ n
  251. P1_STRING:% O+ C# H% x& B( k$ J* I
  252. .BYTE $9A,$82,$00                ;"P1") y1 n3 ]8 M9 G. I* N% V$ o2 \: X! V
  253. : i5 |( f; H# J) V6 s" z
  254. P2_STRING:
    " \6 I+ O3 n! \$ z0 }
  255. .BYTE $9A,$83,$00                ;"P2"6 m: P# U1 R( u; b

  256. 0 A* `  g. d( c- t- _) k
  257. WEAPON_STRING:
    1 l7 y4 V* q4 p  T9 L9 D/ t) c
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    : J! `1 i8 V7 v3 L' v; n2 o
  259. * \  L) u6 }; P0 F/ N0 I, T/ g7 L
  260. RELIFE_STRING:
    ' |9 v+ g, h* \+ L/ o7 n
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"/ B. o1 a& B. r9 x7 m8 A2 k

  262. ; }0 X6 n( a, i6 J, G; N" |
  263. P1_PPU:
    2 n7 e6 X. T' }& l2 C4 b: _* _
  264. LDX #$00
    2 k3 C, p2 B# r3 n: g5 T

  265. $ p. H% u7 W' n5 X5 h
  266. P1_PPUW:
    ) e* y0 ~# m" k: ~2 |9 T- [! h
  267. JSR PPUADDR_PROCESS- B% n4 w% X, T; Z6 ~( S
  268. LDA P1_STRING,X  m' ]* V, f8 @6 S! P
  269. STA $2007" j% T& K  m/ D+ [, E, b* ]4 ~7 e
  270. INX+ W/ t2 y* e* E% B& @
  271. INC $BA
    " z# o% ]# J7 d
  272. CPX #$03
    3 t+ Q- G' ?' E0 R
  273. BCC P1_PPUW4 f- z1 T3 h5 Z1 D; k3 @
  274. LDX #$00% D4 P( J, u- I  U! f7 ]
  275. RTS
    ' F3 s5 b: e, m

  276. 3 ~5 ]/ O" Z5 K
  277. P2_PPU:, b2 R& U" X. U( k+ e. T$ v
  278. LDX #$00% d  d1 _5 j4 S2 c7 s

  279. 9 C) m) c* Q. M$ x# Y
  280. P2_PPUW:* I/ J$ x# \" y; E- W
  281. JSR PPUADDR_PROCESS0 q5 d' ~/ ~( [8 o$ @
  282. LDA P2_STRING,X
    - {1 o9 G0 d( ^, V2 p$ g, s8 `/ l6 w
  283. STA $2007+ E: L4 R# ]6 c5 \
  284. INX8 ]3 e/ ?9 {' N9 U2 J/ C" @
  285. INC $BA
    3 w8 o8 }" h- L; L
  286. CPX #$03
    , a. i! E' F- _6 }! p4 I0 I
  287. BCC P2_PPUW
    , g9 o) t0 G: N( U3 H. \
  288. LDX #$00
    " m5 U+ n6 Y9 {3 T+ Y
  289. RTS
    6 a4 y1 x. H4 Z" t5 Q- b  u: l
  290. : S9 C4 F, U7 u# Q. P
  291. : w" K: V4 M  u1 N9 L6 Y
  292. LDA $BB
    8 d* U* I& x0 X( G$ C( Q& M7 [
  293. STA $20065 M; e0 C  n* z
  294. LDA $BA
    ) ?8 ?5 z( \3 J
  295. STA $2006( B  N" _( Z" N4 P) q+ E
  296. RTS
    . g. ~& X! _& E) f$ `+ G  e
  297. 6 ^; H! z7 E: `" E  |( [; B
  298. # r' M! I! q: R2 y

  299. 9 Q& {* W* n3 t: e" r
  300. PLAYERLIFE:  U. e$ p  y5 z5 D( T) W' [
  301. JSR LIFETODEC
    , u" \3 z: _) h7 x$ x) i6 x
  302. LIFEPPU1:2 P( l1 c; B9 a3 E, [1 Y
  303. LDX #$00
    * i% F, D7 }* K# z& d
  304. LIFEPPU1RE:& U% D$ z4 I( q9 O2 f  N- K- U
  305. JSR PPUADDR_PROCESS7 @3 ^1 \' \- N9 M, b. C
  306. LDA RELIFE_STRING,X2 o5 E; ^* K, A" y) e4 w  x; ?
  307. STA $2007: G! X" Z( v% ?5 E& N* V& g
  308. INX
      E' i5 l8 q1 P: |
  309. INC $BA
    2 x: V0 C- O2 S, i
  310. CPX #$07: s: P. t7 I! ~. T# w9 E" q8 x8 `
  311. BCC LIFEPPU1RE
    3 C1 V7 E+ J6 o  s4 k
  312. $ P6 n4 c) Q/ ]( X
  313. LIFEDEC:                ;生命显示写入; ]2 e/ _& i* a1 `; l9 y
  314. LDX #$00
    9 I) U& |7 {' F% n  H
  315. LIFEDECRE:9 I+ }2 c1 S% {" F; w* b/ g/ G
  316. LDA $7A03,X
    " e2 t+ X7 _. Q+ b* p. U
  317. CLC+ i' C& Q( V; F: p4 h2 L
  318. ADC #$81% n7 y; p- x/ N, N( E, d8 {  c
  319. STA $2007
    1 w, }' |. {& [+ F- t  N
  320. INX7 ]; F) l" b3 K4 F( v
  321. INC $BA
    9 W, X* B: c. j6 P6 b
  322. CPX #$03. B) u1 [/ p$ G
  323. BCC LIFEDECRE
    + p1 ~5 @3 r5 W; G+ Z8 ~
  324. LDX #$007 B- Z% g' u" w
  325. RTS
    ! |) X9 R( ~" M# G8 w+ T0 f; u8 x8 T

  326. - W* S* N; w" X/ M+ O- l
  327. LIFETODEC:                ;十进制转换) i7 y: H4 r1 Y; d7 d& ~2 b, b- V& M
  328. LIFEL1:        ;initialise5 J' m/ M' F) b
  329. STA $7A00        ;$7A00=F39 C- s7 B9 n, U# Z' ^$ e7 r
  330. LDA #$00( T/ b/ z5 Q) }/ C1 r
  331. STA $7A03        ;$7A03=00( |2 ]2 y! R! g1 n& j& ]  i3 Y
  332. STA $7A04        ;$7A04=00
    - M% ]' t& z. X- G9 _+ |  Q, l
  333. STA $7A05        ;$7A05=00, }1 l3 g9 t+ x0 P* [; d% n9 h
  334. LIFEL2:        ;copy data $7A00 to 6001
    % R' \% w0 T: v. c0 O: v3 E" o
  335. LDA $7A00/ m  ]0 m: A5 U: B* @( d
  336. STA $7A01
    ( r8 {" y( n# Z* s- ^, _% x1 Z

  337. . W( T7 P4 e& a- b, B
  338. LIFEL3:         ;hundred
    6 L; U( b5 S9 j5 A
  339. LDA $7A01
    ; ^7 O, }! ^/ ?. t  _: S  _8 [% V
  340. CMP #$64( O1 d3 X& g2 r4 s3 R- q8 g
  341. BCC LIFEL6                ;$7A01<100 goto L6  N# y' t1 E- p' h
  342. LIFEL4:% r3 o7 f" u% [' ?: h  h  _
  343. LDA $7A011 }, h9 c8 Y, ~. G
  344. SEC) F- Q( F! J! s$ x8 F
  345. SBC #$64        ;$7A01=$7A01-100
    4 q0 @$ h3 w, m3 f, Y! V/ k
  346. STA $7A01' A! j: m1 _; v' A0 X) s' P5 Q, A6 h
  347. INC $7A03        ;hundred++3 _( a  ~" D6 T, f) |5 J0 P
  348. LIFEL5:
    $ n3 O, ^, ]) @* i0 O% X; n
  349. LDA $7A01
    8 w9 Q9 d6 @/ I4 i+ U: l/ O) Z
  350. CMP #$64# W8 E+ ]/ Y: l- b
  351. BCS LIFEL4                ;$7A01>100 goto L4" B! \- Z+ M$ X8 _
  352. 4 P9 @2 y% d  H5 h# E
  353. LIFEL6:        ;decade
    ) V% |9 p6 G& Y  H( h/ O' c
  354. LDA $7A01
    7 }, f; y& |( }# s" b6 x! o- q
  355. CMP #$0A- x& a  ~! f6 a; Q
  356. BCC LIFEL9                ;$7A01<10 goto L97 p- L. G9 s/ \3 V& N
  357. LIFEL7:        & {- t& K$ `: H0 {! P2 j
  358. LDA $7A01$ F) @# U' D& G# E
  359. SEC
    4 A$ O1 X6 y8 A- f, `4 U
  360. SBC #$0A& k* e- a  g) I# p0 P2 o
  361. STA $7A01        ;$7A01=$7A01-106 o8 m8 r& H( v: \6 M
  362. INC $7A04        ;decade++
    7 S* {' V, d; x' X4 E6 Y1 ]$ Y
  363. LIFEL8:/ `3 N3 M% |- G; L. e
  364. LDA $7A01
    2 ~% F( R; U/ a: [/ p
  365. CMP #$0A
    " m1 W6 V3 @! q8 A. ~, P/ @7 }
  366. BCS LIFEL7                ;$7A01>10 goto L70 V' F8 n: w) d, j
  367. ;unit+ I3 S! B& |1 U4 \9 H
  368. LIFEL9:
    ! V! Z: D4 z3 K7 h; P0 ?3 J! p
  369. LDA $7A01        ;$7A05=$7A01
    * }+ N! C1 {, `, s" h. B
  370. STA $7A05        ;unit% I0 U- c1 e: o, C0 v' X: U
  371. RTS        ;return0 [; K" B5 e8 `" y' e
  372. % p; D& U( [, u; c- |
  373. % H# H; p6 F/ l8 c
  374. 5 {  u) ]8 G0 @( y3 i; @
  375. WEA:                ;武器ppu写入/ |! J) S) I' n+ p3 C
  376. LDX #$00# _: |3 N1 u( L* K
  377. WEARE:6 Y/ |( K7 W  X0 I, i5 v/ o  m. T- i
  378. JSR PPUADDR_PROCESS' Z6 T) [2 R, ~% ?
  379. LDA WEAPON_STRING,X
    9 s9 m2 _+ M5 y. Z& [# U
  380. STA $2007
    3 {# W* w7 B/ h
  381. LDA #$00
    6 P* w. f$ Y6 A& d7 V! A6 O( s
  382. STA $2000
    ! ?' {7 h7 v# c
  383. INX: O$ m: c4 T3 B
  384. INC $BA3 \+ a6 m1 ]" g( X! ?/ L2 D
  385. CPX #$07
    / F4 U- f1 j6 `9 o
  386. BCC WEARE; p- n( W' g" b' H  ?9 Z% Q
  387. 0 z. Q: [, x( @# u& ~
  388. READ_WEA:0 `. a, `4 x  @% w0 o* U6 c4 ~
  389. LDA $B93 b) ?! w* w5 p& u
  390. AND #$10- c" p/ ~. L3 h8 X' |( {6 x
  391. BEQ NWEA7 L% \" f8 I8 c
  392. SWEA:
    . S: f1 L0 E: l- I6 O, W
  393. 5 ?) e+ C" b+ a8 M  X
  394. LDA #$9D4 X8 x$ M4 d. X3 W  U
  395. STA $20075 }# Z4 G' ]) ]3 @
  396. LDA #$00. Q. {/ c+ y: d7 j+ c0 |/ |* ^
  397. STA $2000
    6 x0 J8 D6 X8 a4 c5 q3 n7 \* c
  398. INC $BA& q1 J0 `$ d  _  V2 J0 z9 a- U
  399. LDX #$00* e, u) _- F+ W4 {% C6 g# _
  400. JMP WEAREAD
    8 n/ S) B1 {" d/ g2 N- O& U
  401. NWEA:. P; I! l8 w! |- @
  402. % q1 i. E; S! H! N7 K' p% }$ w
  403. LDA #$8D, z: `- B, h# B
  404. STA $2007/ y4 l+ L+ W' g# k8 L3 Z/ D
  405. LDA #$00; K4 J- N  i0 l$ _
  406. STA $2000
    ' W  V9 R5 V2 w/ [- }; g4 o, D
  407. INC $BA- A( f) y0 T  r6 C5 |
  408. LDX #$00
    + s3 ^5 U. M% b) C# a1 n
  409. WEAREAD:
    ' f" h9 z6 @/ n( D
  410. LDA $B9* v$ V" ]% ^- c; {, L
  411. AND #$EF
    $ n4 U* V. L' u: o- L  [
  412. CMP W_DATA,X
    % H/ d$ e* X) j  k7 }5 g
  413. BNE WEACMP! X. R  O( J; Z& Z, w; o

  414. 4 o, I: l, R( [3 w  @
  415. LDA W_PPU,X9 G9 j: w" F7 g9 a+ C8 E
  416. STA $2007( v6 E# J0 S7 D! _1 K
  417. LDA #$00
    # A& A) `  j/ g" P3 R7 g
  418. STA $2000. y, ^& t# `: `! `/ M

  419. 2 n2 t1 @0 ~; }
  420. WEACMP:% s. c) _2 P2 v5 N# Q& q
  421. INX
    ! }) g8 ?! `6 |5 m; k. D
  422. CPX #$05
    1 |1 q* _- i4 b6 F: u/ _
  423. BCC WEAREAD
    2 c3 G9 f7 }2 h, X; D
  424. RTS% t3 N' f9 D, @' A/ m/ b

  425. 4 i" q" R* i# J( V

  426. ) A3 \  y% w; a+ K2 E6 t
  427. PPUWRITE:
      ]! ]" C. [7 y& |
  428. PLA
    ( n" B/ T0 w" Z" O9 l4 x+ c
  429. TAY( Q2 r2 }/ ?* e' P- K$ L' P1 q  y
  430. PLA" _' S1 _$ I+ }" i6 ]! ?7 t
  431. TAX+ y2 i  V2 _0 J. e6 Z
  432. PLA0 D% Z1 N: {8 _. _
  433. LDA $254 z! F8 O: t4 ?9 Y5 T, I
  434. CMP #$00
    5 y6 t* s9 K( u4 b
  435. BEQ WP1
      `* \6 E, W4 M6 u0 Y0 x6 L( P
  436. LDA $25
    0 R7 ?' O$ }3 j, M
  437. CMP #$01
    9 c, s8 Z5 i7 s) A3 R( m
  438. BNE WRE
    + J( _1 w) D( t1 r/ p( F
  439. LDA $F5,X. k9 B) \; D1 W, t/ a
  440. AND #$EF
    + C1 w  R4 v9 {; r1 |
  441. BEQ WRE7 W7 C  X5 h, }, D" |; h
  442. LDA #$00# I( a1 d) x& k, q( w( x+ U
  443. STA $7FA0# [7 L: Z" F& q- z: X# u; ~

  444. 1 i1 `4 H" Z4 k% O, f
  445. WRE:5 V3 Y4 }) Z$ r. ]; Z, i: m" W
  446. JMP $A000) P* E/ n! Z8 x' R

  447. . Y  k+ S6 C- v! p6 }
  448. WP1:& `9 M$ ]8 V2 E! M* n
  449. LDA $7FFF
    2 O+ U& S/ W* L* i" d
  450. CMP #$FF& n% d% K/ R  g! e; h2 C: {. a
  451. BNE WRE* u8 U, D8 E0 N  L
  452. LDA #$00) M8 o0 q0 m8 d; m1 S
  453. STA $2001* x9 S- P( y3 r1 m7 C
  454. LDA $BD. q9 d$ A& Z) y3 P! V" a& _
  455. PHA) }% J; J: ?4 I, R
  456. LDA $BC  {! x0 a, n4 k
  457. PHA$ B% o" J) F7 J& h: G( S4 @3 \% Y- K
  458. LDA $BB' K% D4 a6 ^, u  X! K' M
  459. PHA. j/ h5 u. q, m
  460. LDA $BA$ j7 m* ~6 O6 h
  461. PHA
    $ J: n% T# i- J8 }+ H; J
  462. LDA $B9
    " I+ K" r/ X, I2 G
  463. PHA
    ; b1 Y+ g) I; Q* X: f
  464. LDA $B8* n6 }- z. S, i0 }7 s5 n5 v4 a( w/ W
  465. PHA' r; R" }9 I6 W2 T# `
  466. LDA #$00
    , ~. y9 ?8 j1 d$ L- f# J
  467. STA $B8
    ( z9 v# ?% a/ Q
  468. STA $B9
    ) n% ?( ^- b5 ^+ t
  469. STA $BA
    3 i" Z5 y8 N$ x  h
  470. STA $BB
    1 N* k' V- V) @7 f% l" s* E4 y; }
  471. STA $BC
    . \0 H. u5 n: P4 A% S/ o
  472. STA $BD
    & r# V6 m/ e& t
  473. LDA #$00) E4 Z# U6 V& U6 i7 {: k+ C- G
  474. STA $7FFF" i: Z$ {2 `0 h: h3 z
  475. LDA $30
    ; C5 ]8 f! u# |3 H# q: S3 ^
  476. CMP #$02
    ; S2 F) E% S5 ^% E6 b( v# @! s
  477. BNE UNPROCPL$ i; b3 R! W3 H) e
  478. LDA $7EFC. R8 I& E+ w2 m# l* h. d6 G
  479. STA $FC8 R* J7 S" @  T3 `
  480. LDA #$00/ n# D0 D: M& ~) O: x. U& s
  481. STA $A4
    * b- I  j& g& z& w; M& _$ H$ Q
  482. STA $A5! ^! d5 m. q3 n' L& I. p! {( B" r
  483. UNPROCPL:
    ; e2 u+ W: @* [
  484. LDA $7EFD
    , l8 m8 V" c, @  Y/ h
  485. STA $FD
    ' Y$ D! q8 p. y, a7 H4 }! o* c
  486. LDA $7EFF
    $ |4 D3 H6 \" E
  487. STA $FF
    $ a9 i! i5 N( k8 A9 e# l

  488. / v; k( I( H2 s1 g1 P+ ]
  489. WL0:( a4 y& Z, d+ |9 }3 ~& ~
  490. LDX #$007 C$ L& K- F7 h
  491. LDY #$00& Y; }5 l) V, u  ~( Z- e) b
  492. LDA #$006 @; ^  v% G0 c, j$ Y
  493. STA $BA& Y* U- f5 z/ v1 ~& e/ c) ]# B
  494. LDA #$20
    % O6 c4 {6 W* ^
  495. STA $BB4 R* R6 _+ ?& u' |! W
  496. LDA #$001 }; K1 V* K6 K! T4 N
  497. STA $BC
    ; [6 s% H- H: C' D
  498. LDA #$60
    1 B6 T, _' B9 L& [* w7 w4 s
  499. STA $BD3 ?7 h; X2 q+ Y' z0 v" I# N1 c

  500. 4 n7 A9 ?6 t8 ]6 t) J
  501. WL1:4 l5 b2 N( P5 G9 D4 b
  502. LDA $BD
    5 N8 t0 A  y- g; X+ X* W
  503. CMP #$70) _  F5 }# I# n
  504. BNE WL2: H4 M- w: Z4 `
  505. LDA $BC4 ]+ i# ]- e9 l! S; r7 d- b( B
  506. CMP #$00
    1 @3 M5 B; T: F4 {
  507. BEQ WLR
    1 O0 U+ F  ?9 J, B& I6 q

  508. ) o) {+ e( r( e* _7 `1 s
  509. WL2:0 }4 ^" `! \8 F; E5 v
  510. LDA $BD# B4 p+ L) a$ Y+ c
  511. STA $2006: |7 S) l/ i3 [+ [
  512. LDA $BC
    1 D) ^* A: v) e! h- }5 S8 r. [
  513. STA $2006
    & d2 y7 I$ U. _' N2 `
  514. . i0 }/ V6 C' H7 A+ z+ U7 a. M5 @
  515. WL3:
    4 l6 o* {1 Y. D0 h
  516. LDA ($BC),Y
    & {: R( N$ \3 b5 C7 Z3 l
  517. STA $2007, {. A- T% Z1 u; e' c
  518. ! m1 Z: [/ `( j" g6 f8 m& H( S* R
  519. WL4:$ E: v* K/ O) G& Q; e
  520. LDA #$00
    4 m3 g8 u- `" s  o8 N! E
  521. STA $2000( F6 g; F, g2 l9 C0 S
  522. INX
    # p0 C4 p8 G8 {0 R& r1 `' b: F
  523. INC $BA
    & J' U7 d, U& B, j
  524. INC $BC
    8 Z" ^% ?, H9 r9 r
  525. CPX #$00' S0 h! ~$ N( R9 _+ C+ o
  526. BNE WL1
    ! |" d) d9 N" k% h" [, g
  527. INC $BB
    . _& M2 P  n6 F# }
  528. INC $BD
    0 |! s6 m, Y& s3 W. x1 A
  529. JMP WL1
    / p& y$ _7 [$ g* e* k5 J

  530. 0 q7 L+ h2 M' m
  531. WLR:* v* _+ _2 b8 I  y; V
  532. LDA $7FFE; o( G4 Z1 M" X( _: o
  533. STA $07F6
    + N+ E5 f, Z, `7 r
  534. LDA $7FFD
    0 ?) `9 p8 f; t% Y5 E
  535. STA $00FE
    , m% O- S9 c/ T, R! V
  536. LDA $7FC1
    6 n$ ]: I4 U" `4 }1 ]3 v2 p
  537. STA $07C1& Z, I* I' E$ U3 b4 J) W
  538. LDA #$3F" u9 M0 a0 v2 L- ^4 @& z
  539. STA $2006
    1 }6 }/ r- }8 M/ a6 P
  540. LDA #$01; P0 ]/ M! _6 F6 I& {( F
  541. STA $2006
    # d4 P" E5 ^7 O0 W
  542. LDA $07C1
    & X. D( Q4 G( D" T
  543. STA $20078 j5 n8 l% B# b! s/ Y1 m6 L
  544. LDA #$00
    ) s% _! x- @  t* X# `% _1 k- y
  545. STA $20001 T5 M% _- R1 l: y: i4 s' j
  546. PLA$ l: G2 H$ o8 C% ~* G: ^
  547. STA $B8
    5 g9 ?+ C' ]* O0 G
  548. PLA
    ; K6 `* R% [5 {8 M
  549. STA $B9
    3 |! V. z$ ^. k& N8 s
  550. PLA/ N/ `+ V( l$ R  U) _
  551. STA $BA
    " `0 y- U! R0 r- s7 S9 T+ H1 |
  552. PLA
    / B- R3 u& `  u
  553. STA $BB
    9 m, s8 e* K/ ?  U
  554. PLA
    " r2 I; B# j" T4 ]) W3 \5 |) o
  555. STA $BC
    8 T% \& e' ]. B) r2 r2 Y2 I2 \$ a
  556. PLA
    0 [" d3 I0 f- n7 m3 y* z
  557. STA $BD
    0 }# [  ^2 X+ v
  558. JMP $A000
    ' D# z# f9 _7 `' Y+ y8 J1 U
  559. 2 C* e% G  L4 v' Z8 K, |7 A
  560. FREE:                ; 暂存器保护
    3 t4 m. E# G- x% |5 I6 c1 `# l
  561. LDA $BD
    : t9 |, t* t& s1 b7 E. ?6 D
  562. PHA/ h5 ~+ E$ k" U9 t: X
  563. LDA $BC
    7 E4 C! @$ j1 T5 i- R% p
  564. PHA, R/ Q% }2 u) m7 b
  565. LDA $BB
    ) {( N7 Z- \  r. U! q; M* l) Y
  566. PHA# f8 g* M3 q* K( {- I6 y9 A
  567. LDA $BA' y' ^! a6 Z+ M  X
  568. PHA
    7 h% P1 i6 a0 u, D
  569. LDA $B9& f6 j, }: e0 p% {$ u3 _5 k& e
  570. PHA' s; K0 D, A- Y4 R# o
  571. LDA $B8+ a. a7 w# P+ w: ]* N
  572. PHA  I( y5 G# h) j, Q4 J6 F
  573. LDA #$00
    ( V- t  D, o6 d' C6 ^# T/ d
  574. STA $B8
    ( [0 ]$ J* `4 w) M, u1 U9 }- b$ p
  575. STA $B9
    , P1 ~0 ?! I! o
  576. STA $BA) X% C4 g& S1 o! B
  577. STA $BB
    3 D7 h, X0 \; n- v7 L$ A
  578. STA $BC3 A& D  {( j  E2 k
  579. STA $BD' S% m/ c' |1 H" Z! B

  580. 7 ?* C6 c9 m' G1 V: J) P
  581. WEAWRITE:                ;武器ppu写入
    5 p' l" p/ |3 |
  582. LDX #$007 @2 ]; ]2 k; k0 W
  583. LDA $AA
    " I6 P4 o( n* m  {
  584. STA $B91 ?4 l  r* c# `
  585. WEAINI:                ;地值初始化" a" E) o5 }! f  D$ A* O
  586. LDA #$A42 H# R# i2 g9 k0 K4 i* o' r, i
  587. STA $BA
    ) d# |" t% m) X0 B1 U0 A$ a
  588. LDA #$206 M0 C; y; m+ a! @
  589. STA $BB
    * d4 d$ C+ s6 h8 u( C# c' ^0 z, n
  590. 1 N; o( x, ?0 j8 b
  591. / j! ?; ?" L1 j" F
  592. JSR WEA
    ; V) O. i) d+ M9 j
  593. LDX #$00                ;武器ppu写入
    ) p( z* }8 l8 }( }
  594. LDA $AB
    " E5 r7 i$ u& `# [
  595. STA $B9
    + G7 w9 n  A2 r
  596. LDA #$B3% @+ E  g8 {, ?2 r% @# `
  597. STA $BA
    / ^/ s3 U9 {, U" h. P  ]
  598. LDA #$20
    - x4 F( U/ E, t2 ^# ^. G9 @
  599. STA $BB
    ) n# w5 i. }: P- b' e: k8 j

  600. * u2 {- u/ C) [5 s6 s$ {

  601. ) u) Y- W' B% c/ E! P
  602. JSR WEA+ `8 B! h  l+ w5 S, Q

  603. 1 Q' M$ J* K1 [- v# Z$ F
  604. LDX #$00# |8 A  n2 t: i" [
  605. LDA #$E4
    ; f8 {5 _, z5 x* B) ]! Z3 Z8 k
  606. STA $BA$ N+ p$ b3 f$ d% }6 d" w' M
  607. LDA #$205 \' }9 ?% ?7 _+ C& q
  608. STA $BB
    - @  H+ `- G' Y, h( f

  609. 7 w! g( P0 v) M# k
  610.   d. E* l1 f2 X$ N3 O8 q" T
  611. LDA $32
    8 v: [' y1 f* }/ M, f4 D
  612. JSR PLAYERLIFE# U  B4 l/ o0 X" _: i  O8 [

  613. : h2 ]- @( {4 l  x
  614. LDX #$00
    2 P- O0 r6 K0 t1 C
  615. LDA #$F3
    + y2 H1 R* B1 a4 {# {) s7 L
  616. STA $BA
    8 L9 z! s! B7 X0 S
  617. LDA #$20
    + i. M0 g! w: K: o/ E3 M  w
  618. STA $BB" \- H' P6 U& d, n* S
  619. ( V+ k$ ?2 y: [

  620. : ]9 K/ p5 Y" V2 \# \% ~
  621. LDA $33* A3 h  r6 [0 M' y% y
  622. JSR PLAYERLIFE
    6 }7 r  m3 C4 o
  623. 7 a+ a1 z# d, }5 C" [

  624. - J, `; x2 R* `7 p8 C1 k# e+ ?. Y3 ^
  625. JSR PLAYER_01_PPU( b3 L$ i7 G2 }; U
  626. JSR PLAYER_02_PPU
    9 Y$ q1 o$ e7 |2 c* N

  627. 8 G1 R2 [  H* {) O1 p: a
  628. & Z2 K. d) u2 p% a4 {
  629. JSR PAGE_PPU
    - C8 x9 y! s2 j- U4 E+ j
  630. JSR PAGESELECT
    5 i8 H7 n6 ~  T3 a
  631. 9 U6 V5 R; D+ r: R' y# n" \5 j4 `4 N
  632. 2 W; }3 R' D9 n) p' l& Z1 a8 P
  633. ! A2 [: |6 x; C  Q- n  y- z
  634. 4 J3 ?8 N7 q1 L7 K

  635. 6 a0 N) D' o, d
  636. + ~, c/ D/ \0 G4 J0 x7 f- C; l2 R
  637. $ q3 R. P6 [  x1 C) i$ f0 v% [% b
  638. # w/ l- W) i7 b

  639. $ m, z$ B# R6 ?1 A/ k" Y0 A4 u# D

  640.   o" f4 F1 H! f' w- _% \
  641. ( q* e) m7 K2 }. c
  642. 0 _( d0 k, ~7 Z. g" o" a

  643. 8 ~6 O) n. E; o, D
  644. PLAPRO:                ;恢复现场# u. z8 C# K2 H! s, K
  645. PLA
    ' b. ^; J2 b7 R3 y8 w6 i, E) D
  646. STA $B83 c6 J1 f$ M4 b( y
  647. PLA$ n" n% x+ d7 ~
  648. STA $B93 ^5 ~; v; e: x/ [% x& ^- F! t' s/ Z
  649. PLA) K, C' }( _, `3 L) C7 |
  650. STA $BA/ G5 P. M% a6 j9 z( A7 s( @  y
  651. PLA6 U! h1 T2 K6 [0 m/ j
  652. STA $BB7 Q% @# b) N; i% x) x
  653. PLA) o& U: w) `. D& H2 r
  654. STA $BC7 O4 i8 e3 s: D+ \! Y( D# e8 u
  655. PLA
    8 x, c" u4 r) \; b& X  H
  656. STA $BD: P' Q/ G6 P. Y! k1 }% T
  657. FREERTS:3 z7 \6 e  m- h+ l
  658. RTS2 [6 H  c! ?9 B: L) Z. E' ~" s

  659. 8 `1 }, t. j& B1 n0 S" b3 L
  660. INVINC_STRING:                        ;invincible7 n/ C1 {; O! V1 M$ h! O
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$801 r; ~% o$ E* c! M/ K2 Q) ~* B
  662. 2 e0 z$ C  W1 k' u
  663. INVINC_PPU:, Z( E5 U& [- B" H
  664. LDX #$00
    ( w" V, f1 |5 p/ \8 X
  665. LDA #$62
    3 _4 i1 S4 ]/ O5 G5 H0 y1 K- P
  666. STA $BA
    3 \- B% u# `& ]& u+ m
  667. LDA #$21
    % I1 [. _+ H7 h5 [
  668. STA $BB, j: e9 S. y& U) \9 G% l

  669. & T- f3 v+ R3 D

  670.   W, S( p& H" x6 p+ p% E8 X
  671. JSR UP_PPU$ ?, ]5 {& H, j& r: e5 k! ?. a
  672. JSR INVINC_WRITE* D7 G& ?1 }. q' s7 F6 s6 V9 A
  673. LDX #$00
    & C+ Y0 I7 B( q. U' n$ `
  674. LDA $07A0' E$ o$ B2 Y; D' S/ S7 S
  675. AND #$01& s8 @2 \7 t5 v- ?: |( r
  676. JSR ON_OFF_PPU0 {9 s% P% ]( h' F& x
  677. LDX #$00
    6 n) j; W- n. v4 G
  678. LDA #$71* J3 V$ c3 z" F/ Z/ G2 }  ~
  679. STA $BA
    & C# U3 W1 s# j  m
  680. LDA #$21& h5 p8 z9 Z1 B: x
  681. STA $BB% t, f6 ]& k' J( S6 M) O! L

  682. ( y  N% o$ z& s+ o4 Q) `* z& G

  683. " q, E9 h% V, p2 O0 D% `: m5 L/ P
  684. JSR UP_PPU! c5 Z& k* v9 M+ e! j2 t: N4 z
  685. JSR INVINC_WRITE# l. @3 d6 e! Q
  686. LDX #$00; c4 T; e3 s$ [6 {
  687. LDA $07A1
    7 z. J+ @9 Y8 O( F
  688. AND #$01
    # D& m- J4 o+ Z# C) o+ h
  689. JSR ON_OFF_PPU
    3 S; q# ]. H5 x8 T$ R+ D6 Q+ t* V
  690. RTS
    % C& B( C0 e2 S/ x

  691. & L5 u$ j8 x; l3 a! f0 o* a
  692. INVINC_WRITE:
    , a9 d) q6 s! n3 p8 T
  693. LDX #$001 _; d+ ?' q6 y$ ]- r& Z' P
  694. INWRITE:! x6 X3 u/ e6 N4 m
  695. JSR PPUADDR_PROCESS+ J  J4 k, s8 B( r8 c
  696. LDA INVINC_STRING,X9 P3 b1 G  }7 A! K
  697. STA $2007; Z- w+ d3 p4 A& O' J9 g
  698. LDA #$00
    % @4 h5 ]& I# ?* g. p- f5 U4 @
  699. STA $2000
    6 Q6 M& T" t/ R) s/ o) k% E
  700. INC $BA
    4 Q; E! B# p# Y
  701. INX
    % x+ D; `; j8 [0 D
  702. CPX #$074 M- t8 m: T6 ]/ ~
  703. BCC INWRITE9 g5 ?# J0 T9 d8 Y
  704. RTS. y- T' H5 Y; T& a6 q  R
  705. , r! `2 A) E# z1 f* y' v: l
  706. ON_STRING:2 O' b  J3 e0 U8 }) |& }: g
  707. .BYTE $99,$98,$809 r6 S8 A  S8 g" R

  708. / }. j) m4 B1 [9 J0 \
  709. OFF_STRING:- n  {; t& u0 L0 `
  710. .BYTE $99,$90,$90
    8 O2 O- u2 ~$ u) b6 w2 R

  711. 0 t0 ]1 r$ {9 D; e  ]$ [" R$ ^
  712. ON_OFF_PPU:
    $ G/ d8 I# D. c' {7 L6 v* \
  713. BEQ OFFWR
    5 a2 K7 E7 Z4 z' ]# w# }
  714. ONWR:
    - @' u4 _) Q+ E4 V( K: F& B
  715. JSR PPUADDR_PROCESS9 F) w% n7 Q- @
  716. LDA ON_STRING,X
    ' ^/ G% Y- t" Y( k! ~8 f& _( ~
  717. STA $20074 M% {; Q7 E2 F% }- K% x; A
  718. INC $BA
    ( K7 W! j- L+ v: {5 y
  719. INX: W" a5 I3 ]$ H8 S' u
  720. CPX #$03
      `  O) x9 h/ U1 [( v- E
  721. BCC ONWR) O- N& G- R% K2 n0 h
  722. RTS
    2 n% N0 Y" g6 [8 C5 I: p2 J# w
  723. OFFWR:
    + J! i6 J7 N$ \+ o" E# T& ~
  724. JSR PPUADDR_PROCESS
    7 y$ h5 V. ^8 ~- w
  725. LDA OFF_STRING,X" O. A5 g% M, A/ c0 G0 B9 a% U8 A5 s
  726. STA $2007
    ; i5 N4 L0 Z& S1 v
  727. INC $BA) d: }+ e; E4 s  S
  728. INX
    ' [9 k3 Q8 C9 B8 H' ?3 e- j# H
  729. CPX #$03) f3 l/ G0 Z7 M+ G9 l" U
  730. BCC OFFWR
    5 z, F- L: {/ X
  731. RTS
    1 a/ I( S9 ]1 H

  732. ) I; P6 Y- {0 [- \$ Y! M$ a- N) F
  733. LIFELC15_STRING:
    1 d. i7 _, Z6 e5 ]2 z$ g* n
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    $ V+ o0 U4 b3 Z  x4 A! k+ p9 u( k

  735. 1 H; W4 Z% i% L
  736. LIFELC15_WRITE:
    4 U7 B+ u  `" o. c  [4 a8 }
  737. LDX #$00
    ! O: N7 P6 w& Z  W+ G; y
  738. LIFELC15:- `( V2 M2 ^3 a) r6 [/ e* Q3 J
  739. JSR PPUADDR_PROCESS
    $ g0 T7 G" A& g( W& {# C- G
  740. LDA LIFELC15_STRING,X5 ]" k) n5 W1 u- L7 j
  741. STA $2007
    0 e; s2 @$ _/ s5 r0 U, i$ g5 o0 I( S
  742. LDA #$006 d7 b# c. V5 b+ Z  ^! c; F
  743. STA $2000
    9 C. N; S3 R* _+ p2 F" O; i1 K
  744. INC $BA
    " H' e. `8 w) p6 {& ?4 p! P
  745. INX
    ; Y& C* M0 F$ t' ]" X- I0 y; T
  746. CPX #$07
    / I8 K0 }" C& p& v
  747. BCC LIFELC154 f- j7 Z" I- i7 U0 {
  748. RTS2 u# _% S' e3 |$ x- S  j

  749. ) Z& |7 U; U( B8 p3 p8 p
  750. LIFELC15_PPU:
    1 G0 t/ E! T2 L8 ~
  751. LDX #$00
    " C5 C* S! J5 A# i8 U5 {+ s
  752. LDA #$A2
    ( l) p0 J2 \4 X# G* Z
  753. STA $BA
    ) J5 D# _9 U2 N( r
  754. LDA #$21& x4 g# j( Z: \2 r2 n$ n% Y7 [
  755. STA $BB
    ' z3 S3 I: g$ d
  756. JSR DN_PPU+ G6 F& ?+ V& Z- r  _' v  A# R
  757. JSR LIFELC15_WRITE
    # g# A& ^" }9 k! o1 |8 T. B
  758. LDX #$000 C9 O6 Z  Y8 t
  759. LDA $07A0- I; S* }$ Y& d- s0 S4 z/ v" ^' |
  760. AND #$02
    * u& P% [) y4 j+ S- v
  761. JSR ON_OFF_PPU$ P0 Q8 n8 {2 Z) ]
  762. LDX #$00
    3 d: r/ v- T2 f; G1 @3 N
  763. LDA #$B1
    ; x0 t+ d8 H* v0 p
  764. STA $BA
      q5 ^. k) W7 }: k
  765. LDA #$216 O; n. t9 V% l  U2 t6 i2 ^: ^2 X
  766. STA $BB+ F+ v8 _8 @4 \$ n2 Z/ U
  767. JSR DN_PPU1 n4 R5 i: g5 e& S' C' m
  768. JSR LIFELC15_WRITE
    $ u8 \. c8 i( x# w: ?- f
  769. LDX #$00  V- D! ^* M& @* _+ k- d3 O8 j- h( m
  770. LDA $07A1
    6 C0 S) d/ |6 Q; Q9 S% {
  771. AND #$02  j: o/ T9 Y# |3 E- I6 ?& Q
  772. JSR ON_OFF_PPU
    0 L0 E0 L4 J6 s  p
  773. RTS
    8 \( D* {( d0 i; Q
  774. 1 ?+ ?; h) W! H$ X
  775. DOUCON_STRING:
    8 D1 z) R% S" d; R. i: ?' Q% F
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$804 q: x) B9 V) Q, v8 b/ p% \& }
  777. 3 D9 Y/ X" O  W* x# }. Y
  778. DOUCON_WRITE:
    ( P4 o3 A# X" G8 g9 S. S# G
  779. LDX #$00
    ' M+ j; }" e  I+ o4 @3 F3 K" @. n
  780. DOUCON:
    & }, g# K- W  p& n; S8 }
  781. JSR PPUADDR_PROCESS
    1 `$ T' s& m# d
  782. LDA DOUCON_STRING,X$ q& `0 P& P/ M& q! s6 j1 Y) i
  783. STA $20071 S7 s& R0 R  ~* H) ?) J
  784. LDA #$00
    0 ?: R2 Z/ {6 L% t0 x& T) {1 T2 v7 L
  785. STA $2000; O1 H# S7 C, a$ K( \* Q
  786. INC $BA
    / v/ ?& C% I5 r* }$ r( p7 {/ T9 q8 b
  787. INX1 B& T* r* j5 ]+ ^
  788. CPX #$07
    ' r3 ?7 O! r- X; G6 ?. n1 Q" w8 l( G
  789. BCC DOUCON0 v  u& Q3 N8 j2 J7 {/ Y+ r
  790. RTS
    ; I) `- c1 \$ {% X& h& Y( x

  791. ; V  M2 i% H& j: q
  792. DOUCON_PPU:
    1 }' G' o: B7 ?' t! r
  793. LDX #$004 ~# N" S' L& k0 \+ @0 m/ n
  794. LDA #$E2/ q7 ]4 c4 \! b1 b6 C1 `5 `
  795. STA $BA& F9 H6 p/ Z3 o8 X  }+ ]# O6 ]' D7 m( O% b
  796. LDA #$210 @7 S: {3 u) @) K" w
  797. STA $BB
    ! e, k6 W% Y/ Q- |* M6 b
  798. JSR LF_PPU
    . R( K# r+ T- p1 W! p
  799. JSR DOUCON_WRITE
    / `. v# M* w. d7 f( P8 ]% C1 r
  800. LDX #$009 o. f& c7 ]' z; w- f  z8 A
  801. LDA $07A0
    9 A: y( P& l$ q( ]9 s% O
  802. AND #$04
    - z$ Z7 h9 F! s& `: s
  803. JSR ON_OFF_PPU$ L2 b: t) p& M& i  o
  804. LDX #$00
    ! M9 D3 K6 `  Q
  805. LDA #$F1
    ' N0 E+ ~2 A- x: r! l+ `. f
  806. STA $BA
    9 M$ W6 I0 O' I" _
  807. LDA #$210 N% n2 {- L" o
  808. STA $BB
    7 h! ~2 Z% ~( A3 ]
  809. JSR LF_PPU* j& m. i) s( w1 w
  810. JSR DOUCON_WRITE
    4 e+ s9 H' j, m8 S. @3 e
  811. LDX #$00; U+ }' w9 K" ^, ^, B
  812. LDA $07A1+ @. ?2 N( H/ J2 A1 y3 E6 e
  813. AND #$04
    5 Z1 B, t% P% S6 G
  814. JSR ON_OFF_PPU2 ?5 `  G; z2 `/ C, V. _( F
  815. RTS1 @% L7 W( t8 Y+ r0 o+ |+ n
  816. 7 f# F! l1 q% O2 x6 i
  817. LIFELOW_STRING:
    + S6 A0 z% }3 P% G" V
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80
    5 @: G( h. Q# x  X5 N

  819. 7 M8 g# m8 v7 {8 W
  820. LIFELOW_WRITE:& }1 w. p1 c& z) B% \+ S* L
  821. LDX #$00
    5 @9 d0 m( t1 h2 p6 n
  822. LIFELOW:
    - [0 h/ ]8 s3 ]
  823. JSR PPUADDR_PROCESS
    7 |8 B& N! a1 u/ T9 S3 u( E
  824. LDA LIFELOW_STRING,X4 o9 A. Y) ~& s' t% \0 m5 j
  825. STA $2007
    8 x' o8 p7 u. Y4 E
  826. LDA #$00
    . Z9 ]+ S9 l( `8 |
  827. STA $2000) E% j: u; S0 [( s1 J+ p: b, o
  828. INC $BA" T, p$ c0 M9 @8 P/ w- s
  829. INX% j0 ]6 y6 f6 r0 B4 `9 \) c# @
  830. CPX #$07; V, ?' L: u5 h7 l! y& R
  831. BCC LIFELOW
    4 @/ @: O( q: I6 G
  832. RTS
    , A1 {( o" _& V& I* R3 V

  833. + f! c& ~5 I- f  @
  834. LIFELOW_PPU:
    , ]; ]# J* X; X' F
  835. LDX #$00. X) l# c$ Z6 ^
  836. LDA #$22
      U- ]6 K; s0 f
  837. STA $BA/ \, \1 k( I+ C7 ]5 ]9 F, u) h" G
  838. LDA #$22
    # E0 J8 |' Z$ K; k; V
  839. STA $BB- }2 F, M4 |( l( @' V9 i
  840. 5 A- O6 }: a4 q6 f" |  ~" o4 `

  841. / z) Z! d$ F) l7 V$ r+ r8 n
  842. JSR RG_PPU7 N4 p) v* f* M! _" Y
  843. JSR LIFELOW_WRITE: I. Z( D4 ?. s6 p+ q  B% g; h/ c
  844. LDX #$00& A0 L. q7 w6 e6 Z' x8 C7 c
  845. LDA $07A06 w4 E0 ^4 e3 ?: u5 ]- ^# v+ @. i& J
  846. AND #$08! D8 U' L+ e" c" a- b4 O* R
  847. JSR ON_OFF_PPU2 V3 L' o% T$ T7 ~0 X$ o
  848. LDX #$00
    : D! a; o. L" [9 k! t5 w
  849. LDA #$31
    2 N6 z$ X) z% @2 D; {' m7 J
  850. STA $BA
    ! V; U! E7 y8 A- c% ?6 g
  851. LDA #$22" K' y5 t3 @' a+ y9 P# m+ S) Y
  852. STA $BB
    ; m; e, P& z* ~& |, m/ k1 K

  853. . b* l) ?5 y& w+ _/ v
  854. 7 G0 k. K1 z6 S. H+ [/ l/ {
  855. JSR RG_PPU
    ' `! {) E4 Q* K1 J! \  C
  856. JSR LIFELOW_WRITE
    6 g8 z) M: Z/ }# m
  857. LDX #$005 G8 e) x% c2 ]5 c
  858. LDA $07A1/ a5 g6 r0 M6 M5 U/ {' \$ r
  859. AND #$08
    - a) l  T! E. w
  860. JSR ON_OFF_PPU6 K) J8 R+ o/ X( n+ q# L
  861. RTS- J1 b2 m2 u/ J* [( s; u

  862. / x: H  p8 y: j5 T+ Z: D
  863. KILLON_STRING:
      a; y8 B( e) S% V% Y
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    2 w! d* d, S( D: b) ~
  865. % F; y7 T  o( _9 g# U
  866. KILLON_WRITE:1 W$ J  U. h8 E2 l  d+ w7 d" {) C
  867. LDX #$00# T2 Q! m! A* s; p! M4 \
  868. KILLON:
    $ S5 I9 u2 h/ K( N4 R
  869. JSR PPUADDR_PROCESS1 J# C2 K& l' k7 B6 o; W
  870. LDA KILLON_STRING,X
    + L5 ]3 J  a( |4 j' C/ z! _
  871. STA $2007
    % ^; {% ]- v# K2 b
  872. LDA #$00
    $ x8 a5 `/ [" r7 h
  873. STA $2000
    0 Y8 r. P: a5 o$ B6 z5 W
  874. INC $BA
    # S6 m) E& C# p5 ?; \! Z3 C
  875. INX  m; Q6 F( H1 U# q
  876. CPX #$07
    " f8 W2 S  c! e% f
  877. BCC KILLON, ^/ l) i3 e& t8 _' g+ A
  878. RTS
    & t5 O  o: o/ x

  879. 1 j# B2 e8 }8 n5 D
  880. KILLON_PPU:
    ( F. \# Z, P1 m2 f& H/ W9 G
  881. LDX #$00/ [+ @5 F' k' U/ ~7 P4 n
  882. LDA #$62/ `# c* @4 |8 N# T* l; b, T
  883. STA $BA
    3 K( S- C: r1 m5 T/ D3 V# h
  884. LDA #$220 O" X) h3 I% s
  885. STA $BB5 Z) e* Z. ~; f, h9 N' {' N& k, F2 l

  886. " Y0 ^9 y" n7 _' B4 ?7 m
  887. . J8 q/ ?- q9 _/ t
  888. JSR B_PPU6 h( |: H' t2 l! {. R6 p9 B
  889. JSR KILLON_WRITE
    , `) q$ ^6 I- v! S4 {3 r
  890. LDX #$00
    4 @3 t' S: ]+ {1 j: Z( u. N
  891. LDA $07A0
    8 K/ P  \# Y. v' x  a' I7 J6 r
  892. AND #$10! j6 M  J) l9 q3 q! a( v) _
  893. JSR ON_OFF_PPU- T  J% U- ]5 M  \! o
  894. LDX #$00
    - F. c- u8 k$ r; ], J" P0 I) L6 c
  895. LDA #$71" R& W& W# ]' ~6 e  ]
  896. STA $BA* {6 G6 A+ o' V  q! b
  897. LDA #$22
    / f1 `  y% c# K6 V
  898. STA $BB8 n0 [" x! K5 A

  899. : |9 O9 @/ k; V
  900. 8 C$ v( n# ^. @& n2 X' R  @7 H
  901. JSR B_PPU
    9 \, p& q9 i$ ~2 P6 y$ O
  902. JSR KILLON_WRITE  [* p# D4 T0 l9 U8 Z. v- I8 ]1 J- [% p
  903. LDX #$00% N% x: C" i0 \
  904. LDA $07A1  }4 E! B5 w2 \+ Y
  905. AND #$10
    ! X8 M- x2 \6 Q2 R- q: ~( y
  906. JSR ON_OFF_PPU, |" b# }, J% k8 W  z) u
  907. RTS1 ]+ T- T# U" R5 f: h

  908. 7 @* d' V! ~, _" \1 d
  909. SKYFLY_STRING:
    6 B! q2 L; y9 T8 o8 g; M" }8 Q
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    4 i/ F4 I. t( X& \4 a& n5 t
  911. 7 P9 ~( k. `( v) s$ `
  912. SKYFLY_WRITE:/ ]- c5 N8 {# [$ Q
  913. LDX #$00
    $ X& z2 \, e5 {  ^2 k" o1 }% J
  914. SKYFLY:
    % |! y. X/ W, R) F7 r
  915. JSR PPUADDR_PROCESS
    " k; q1 p- I. ?" g% d
  916. LDA SKYFLY_STRING,X
    ' v7 `: Z5 r5 s  ~3 y  _
  917. STA $2007
    : X; N0 `- k  ]  H
  918. LDA #$00
    % f/ v, R$ ~& K0 Z1 _
  919. STA $20007 A8 n0 H& [3 W+ u
  920. INC $BA& N, y; |) u/ ?
  921. INX
    ; P8 q) V* H: B4 `) p
  922. CPX #$07
    3 W- h7 p) F! _2 N1 Q
  923. BCC SKYFLY4 w. D+ x" ^- g1 `% [4 V
  924. RTS9 y! T" F! `: T( N
  925. ' H( v6 U3 V( ^- d
  926. SKYFLY_PPU:* W/ L9 G/ p7 }% P/ V0 A. d
  927. LDX #$00* Y- x" E9 n) }# v" L. ^: i% y' g# [
  928. LDA #$A2/ N: k. W7 A, z* q: o3 a8 p
  929. STA $BA2 z5 Q! A9 ]4 ]9 Z' L
  930. LDA #$22
      Y0 d, E1 j# v1 J  M+ |! ?
  931. STA $BB
      v( t  x# R4 \1 T

  932. , X% _& @0 E8 P) A/ `' ]! P: M) ~

  933. 9 G8 k' L  R" i- G5 T& S/ f
  934. JSR A_PPU
    8 \1 e$ e, C" L8 g7 |* Z; @
  935. JSR SKYFLY_WRITE1 c/ u5 q& s5 ]9 u  s9 W
  936. LDX #$007 v7 a- [6 E5 @: t8 L
  937. LDA $07A0
    9 Q- E( A9 `9 d( v
  938. AND #$20
    2 U. L9 V4 H6 y  m
  939. JSR ON_OFF_PPU% c6 X% \; A, ]7 z
  940. LDX #$00
    1 Z1 {; f0 w  o' U
  941. LDA #$B1
    ' j& t# s3 g7 l; X8 w+ {9 p
  942. STA $BA+ s( F% a, }* @* n, x
  943. LDA #$22; J8 B" L0 e4 v: ~, y+ b4 \& A/ `
  944. STA $BB
    : V$ h, Y7 e' n. m" |, Y

  945. ) i7 N1 y8 x; `! \; Q% N

  946. : C2 X' M% t) k* Q. u# o
  947. JSR A_PPU9 t7 C: Y' r, |5 k: V( I8 k
  948. JSR SKYFLY_WRITE
    5 E) S$ l1 w. Q# J
  949. LDX #$004 l, f: `0 C. G7 N& B
  950. LDA $07A1
    8 \9 ]  e3 a0 J6 Y
  951. AND #$20
    - A: V0 v' f9 K! q5 g
  952. JSR ON_OFF_PPU
    ' T$ F. o: F. c# |
  953. RTS
    6 `  ^- G7 t, X, x( J& n, V( k

  954. , w! V5 G4 ?9 k. f: `4 J
  955. BULADD_STRING:
    + J* t& l. W! }; t- }* ~* Q
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    0 q9 N3 o9 {& `! A2 @
  957. 0 f. |4 p% S4 K( c
  958. BULADD_WRITE:0 G# O, s! a* \- Q1 ^& Y" N) V
  959. LDX #$00
    ! @  ?/ n. O; c+ p
  960. BULADD:
    3 o3 K: c% L3 A( n. a+ g0 Y
  961. JSR PPUADDR_PROCESS
    7 S0 [: ^; O+ x! R0 S# _4 Y
  962. LDA BULADD_STRING,X2 }! I) h  N+ m, |, Z  u
  963. STA $2007
    & L  ?7 Y: t) ^) j6 A
  964. LDA #$00$ j$ m2 d, I' ~: ~
  965. STA $2000
    + B' p& |# l/ P! R& {0 [& d! X
  966. INC $BA
    0 l7 l0 F& |$ b- O9 R: a
  967. INX# W' m4 R. s: W& g
  968. CPX #$071 D, T0 O+ |+ Y8 Q/ d& q# X# d; ?
  969. BCC BULADD
    7 _8 O* K: `/ N! _
  970. RTS! U) C/ j1 F. \1 w8 a4 ]: g+ h0 Y6 Z

  971. % f4 n* y7 w5 K
  972. BULADD_PPU:
    + Y4 n& n& g! R" a  [0 X
  973. LDX #$00
    ( |3 s+ k  e  j) D& x! E
  974. LDA #$62  Z) N/ ]4 r& a) i3 R
  975. STA $BA9 \- J8 C8 m, n
  976. LDA #$21
    $ K7 W! x1 @1 n- V5 w* b
  977. STA $BB: K8 Z4 k6 {. a1 m& I$ D& X+ x* W
  978.   Q0 f, ]3 a" i/ M

  979. 0 t" y3 M& v2 d8 F8 a8 |# G
  980. JSR UP_PPU
    + L: d& v. @/ D: n: w# }
  981. JSR BULADD_WRITE
    ) r. f! h) r4 m4 A% ~# ~) x
  982. LDX #$00+ d7 ~8 W- ^, W% V$ _- S$ O
  983. LDA $07A2
    " V) u1 [$ r/ V
  984. AND #$01
    , U9 G% g# v: b  o
  985. JSR ON_OFF_PPU+ H/ s$ E/ ^: }- ~
  986. LDX #$00) M" [# F. P: X! O! m: V" o+ k" m
  987. LDA #$71
    $ O5 r% M0 ]  [0 m# T. y! |6 q
  988. STA $BA9 `3 E. V2 M/ ~3 I: j
  989. LDA #$213 y: ]1 V6 w" |, U; }. M8 f
  990. STA $BB8 |) \5 c2 B* P$ {. \( I& s
  991. % s' q$ L4 T2 c4 ]- w
  992. / O3 ]6 z$ B8 y7 c0 r7 c. v2 L
  993. JSR UP_PPU
    ( [2 r6 w, R" Q
  994. JSR BULADD_WRITE0 D0 b3 F. h  O+ }4 C& O
  995. LDX #$00
    9 E2 u8 z  o- u
  996. LDA $07A31 K! }# T9 T- w: y4 w3 |7 k
  997. AND #$01
    * h4 j  D$ |* p* Z1 @0 R! L
  998. JSR ON_OFF_PPU
    - t5 M: q4 i& }, p/ m/ t
  999. RTS
    # e! N" Y$ y! L" \

  1000. 0 S+ P5 ]+ p0 k0 Z, @& {
  1001. MENU_PAGE_STRING:/ x2 L- ^9 N# e) s" G8 {
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    2 A8 r/ w* T$ @+ s+ ^& G

  1003. / B2 A( Q7 d9 \0 C, Q* e
  1004. PAGE_PPU:7 l5 W. `: O* s0 ?
  1005. LDX #$00+ D8 N  K/ e5 K( n- t
  1006. LDA #$0A- G% ~" R8 l- P4 M
  1007. STA $BA( q0 I( f4 D7 ^3 }& U9 K7 P
  1008. LDA #$23$ g  w" P/ o2 U3 u: f
  1009. STA $BB
    . t2 V; |9 B5 s# y3 q( ^
  1010. 4 z* h* y1 F3 e- D: P4 A
  1011. , n: u. A+ J3 M9 p2 L6 o/ G
  1012. MENU_PAGE:* y; `4 C7 O4 [* s  `. O9 e
  1013. JSR PPUADDR_PROCESS
    ' Q0 A3 q& D6 u8 H' a7 W% l7 {
  1014. LDA MENU_PAGE_STRING,X
      S" I- J( l% B6 x, `+ W
  1015. STA $2007
    1 J1 R, A2 t5 L; N8 L2 t. C, J5 ^: `0 L" U
  1016. LDA #$00, Y: ]7 `$ u. y1 f
  1017. STA $2000
    , B. {, f& g* G8 e! e; U" z; Y- u/ q
  1018. INC $BA# @: ^7 e3 b9 y& E' W
  1019. INX
    + r$ r' Z4 y1 t" l* U
  1020. CPX #$0B
    1 q8 N- ~1 R! c, f  q$ g( n; R
  1021. BCC MENU_PAGE
    9 Q$ d3 H( P+ \- O5 C. p
  1022. LDA $07AA  N3 [' S( R' K
  1023. CLC/ ^' n# K; s5 K
  1024. ADC #$82
    / h- c4 M7 @/ g/ {% P; m6 A
  1025. STA $2007
    ! a7 i5 f+ ~; ~8 n
  1026. LDA #$00. g& g! U! S1 S( A+ [
  1027. STA $2000# |' g$ B4 H1 J' P" w
  1028. RTS. |  U4 J$ x, I) k7 z
  1029. + k) }/ ~" z& V( S3 f+ D0 p

  1030. 3 }+ B4 |( o- l$ B  q
  1031. SKINGE_STRING:6 n5 S6 w& f8 F$ I! s
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    # o2 M! C- F3 p7 T4 Q( G3 Z3 V
  1033. 9 w! q3 p( a  T' \" O
  1034. SKINGE_WRITE:
    7 C2 c$ r5 G& v& i7 T3 P  H
  1035. LDX #$00# m, P3 v$ G8 U3 H/ ^  Y
  1036. SKINGE:
    ! N6 `% z9 R2 w$ Z' ?  b  n  N1 Y
  1037. JSR PPUADDR_PROCESS
    ' s$ b& M( s4 C
  1038. LDA SKINGE_STRING,X# n1 P& w! ^' f
  1039. STA $2007
    / ^: |! D3 ~2 S* e
  1040. LDA #$00" Y) m4 b0 q* G1 [' k; W; q
  1041. STA $2000
    5 ~" M# J0 c* e2 ^9 h
  1042. INC $BA& ]* v8 |6 W; d3 P
  1043. INX* ~$ y7 X! a2 M, y9 @5 p# C
  1044. CPX #$07
    - ~/ t0 p! b! n
  1045. BCC SKINGE- T4 g7 b) n! G$ R+ c
  1046. RTS
      [; J5 ^5 f7 }& v+ {9 _

  1047.   q9 k( f* q9 ^+ {0 `  I# W5 w( L* ?
  1048. SKINGE_PPU:
    9 y' b, ]. W; p4 W& l& ^: E
  1049. LDX #$00
    ) X, Q+ K8 @5 I/ Z$ t
  1050. LDA #$A2  [+ h) f1 |# L
  1051. STA $BA
    9 T/ D# B) [& V
  1052. LDA #$21( j$ h0 a" q4 E0 h3 }7 |
  1053. STA $BB" t' C1 Z! t# J0 p! R

  1054. % J9 L! o; I6 r4 d$ ]

  1055. 2 ?  L) }, ~# ]+ T+ Q% H$ S4 u
  1056. JSR DN_PPU
    , L5 J% C& n# b4 J% _
  1057. JSR SKINGE_WRITE; p, b/ L# A; Y$ I7 M
  1058. LDX #$00
    7 r2 J! r- J7 i
  1059. LDA $07A2
    - h7 n& E) h! y# o! @
  1060. AND #$02+ L0 i' k/ M4 `( D
  1061. JSR ON_OFF_PPU5 b4 h+ K8 L9 S& R1 O* {5 I
  1062. LDX #$007 ]- D# b3 d4 Y% ^
  1063. LDA #$B1
    / ^" f, W( Q. G: |- ?
  1064. STA $BA
    ( R8 p3 d+ |1 @9 H
  1065. LDA #$21
    : S7 }& ]. s; [6 L; b0 S
  1066. STA $BB( B5 w/ y- n! _5 g9 U  i; J
  1067. $ Z* ], _0 V: D
  1068. + B/ j  t# U5 s1 c
  1069. JSR DN_PPU8 L8 \) ~  p6 i
  1070. JSR SKINGE_WRITE
    , T/ k) L* {: ?8 Y0 ]
  1071. LDX #$00- u3 |6 j% S; D4 _
  1072. LDA $07A3; l5 p" p3 |# C2 w6 I
  1073. AND #$02
    8 K; l; B2 }& l6 x5 p* K. z1 W
  1074. JSR ON_OFF_PPU
    2 A$ o- @# R; q# Y4 C  U: s( K
  1075. RTS
    / M6 f. U0 |( ]

  1076. " n$ T9 b4 C- H) ?
  1077. BULMIX_STRING:  k, P0 B& C$ n3 A  S% |1 g  f5 @4 I
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80. k/ R' W4 Z$ J8 f! y) o8 g

  1079. / [; K/ ~& x0 d; M( R
  1080. BULMIX_WRITE:: G1 X$ B0 U/ _; ]
  1081. LDX #$000 O& l* U$ T7 Z5 ^& u; s
  1082. BULMIX:
    * i  V' n( x) }
  1083. JSR PPUADDR_PROCESS* I; M6 E6 i" B
  1084. LDA BULMIX_STRING,X1 H* b2 E/ @4 x/ E
  1085. STA $2007, {3 H- [( ~* z4 _
  1086. LDA #$00
    2 f) e/ E. e% S
  1087. STA $2000
    & n) }6 N4 {7 u% |- q  F
  1088. INC $BA6 u, b1 `7 j9 @, m; L! l+ d
  1089. INX' ~4 b- `  J2 J
  1090. CPX #$07
    + X9 T2 w' M. s! g  B8 z  |
  1091. BCC BULMIX! n" A, @" f* `, [0 l- R! B
  1092. RTS0 F3 n+ ^* k6 C: s; T0 S( \
  1093. ' u7 F" I/ |4 \/ I$ e
  1094. BULMIX_PPU:+ ~" S# b' M. |
  1095. LDX #$00/ m  Z% I. l, s0 ~: e6 m6 R
  1096. LDA #$E2- K2 F5 B- }6 B; y5 S1 ^  R
  1097. STA $BA
    : K& i4 s6 K: l- a
  1098. LDA #$21
    ! i8 ~1 F+ r7 P+ e6 k: @
  1099. STA $BB3 K) d7 g- E. Y! q* k5 E8 w
  1100. ; e# q+ l! C4 E8 {- L9 J

  1101. 8 R/ `5 N5 H, |& [4 ]6 L* j1 y
  1102. JSR LF_PPU
    3 y, j/ A9 ^6 J2 g
  1103. JSR BULMIX_WRITE4 |& i+ ?6 F- J4 D! d% ^% P7 L% q
  1104. LDX #$00
    - d! T5 s+ G0 g, p+ Q3 j  ]
  1105. LDA $07A2% O+ y  v! U3 v) z! v9 T& T9 U
  1106. AND #$04
    ) G( \9 v! u* j
  1107. JSR ON_OFF_PPU
    6 l4 i6 `$ F0 n7 Z: p2 x
  1108. LDX #$00
    # _' Y3 r% o- O( r
  1109. LDA #$F1
    % z4 _) L: I  q0 N1 D/ n# ]2 f% D7 e
  1110. STA $BA, |; l) d/ |5 T% ^
  1111. LDA #$21
    0 F, ?" V' i& ~# h: B% G
  1112. STA $BB
    ( ~; U' m) ]& E( Z; t6 w9 U$ p

  1113.   s' v; \3 [5 m" z, g
  1114. % C0 i- B9 B: _: p
  1115. JSR LF_PPU
    7 e. e( u+ n6 g) ?  B
  1116. JSR BULMIX_WRITE' p2 j$ M" Z  u
  1117. LDX #$00' D& j, ^/ E& p1 F' ]! I; S) c
  1118. LDA $07A3
    0 W! f$ A( E! S' T/ ?9 p
  1119. AND #$04
    $ N0 X5 B! D+ w
  1120. JSR ON_OFF_PPU& ?) N) M' c" g0 S- Z
  1121. RTS1 ^3 x2 E& L! G+ d( x

  1122. $ I! K- n! E) ^% y9 Q
  1123. ENELOC_STRING:
    ; g+ H, ]3 r$ a; e2 A1 U0 [8 @
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    6 _# b( Z8 }7 A
  1125. 3 a6 ~7 _+ D. M  e
  1126. ENELOC_WRITE:
    % a! |% u4 j$ R$ T( }+ R
  1127. LDX #$00
    $ a4 F# [4 D; E- g- C# J
  1128. ENELOC:* E6 B7 h' s4 S( z
  1129. JSR PPUADDR_PROCESS
    - k3 U# F" K% v& k
  1130. LDA ENELOC_STRING,X
    ) N) e: I: P8 P; |; M3 i2 U. \
  1131. STA $2007
    . y5 r5 j+ n, O+ p: O+ c; O$ E: Z
  1132. LDA #$00
    4 L5 b- y  X  {. i
  1133. STA $2000$ ?1 x8 l) H9 b" Z& J" U7 e! Z
  1134. INC $BA7 k! R: x; w/ D* M# X
  1135. INX
    0 n1 z8 U  g6 M; Q+ D& ?5 u" V
  1136. CPX #$07
      O: U$ T8 F! Q1 y0 O
  1137. BCC ENELOC
    1 }6 D6 k: J9 w. t
  1138. RTS/ Y( x% n2 e4 y( x% l) t! [# u

  1139. 6 D" o  N! S+ m5 X6 k9 E$ ~* [
  1140. ENELOC_PPU:
    ( E& j4 I  [2 A8 n7 [0 a
  1141. LDX #$00
    & [% T' {0 J$ E; v/ t2 q
  1142. LDA #$224 s8 d9 v2 E# w& p+ T
  1143. STA $BA
    - B2 n6 }1 ~8 R* B
  1144. LDA #$22. u9 X# f7 z* `' t5 z6 z$ C( h- ]/ _
  1145. STA $BB
    * ^  ~, u6 P. G" y/ G) U- S

  1146. % r: M6 o4 ~' s& S; \  l# }
  1147. 2 ]' k6 N  X  P: {  ~! U
  1148. JSR RG_PPU% A6 G; d) T* V
  1149. JSR ENELOC_WRITE+ a) w0 T! l$ H) B7 w5 J9 I
  1150. LDX #$00
    + G/ ^7 a! y# H2 E+ X
  1151. LDA $07A2$ D6 ]+ d1 M/ n( I# s
  1152. AND #$08
    % H5 C! d) O( Z- k$ Q1 n
  1153. JSR ON_OFF_PPU; `1 K. U  w9 \1 g$ W, ?; f
  1154. LDX #$00
    ! M; ?2 t7 F4 e  T5 [9 @. v
  1155. LDA #$31
    5 n' o8 Q/ V* {. _  q4 t0 y; p
  1156. STA $BA  R% l$ |- u. V# f  S3 w
  1157. LDA #$22/ p5 X9 I+ _$ a9 f1 B" l7 J' X1 c
  1158. STA $BB( i0 O& O1 i" c1 x" I+ S1 T

  1159. - c4 D" E! s* T7 G+ ^8 M1 @% O6 k
  1160.   V! d+ q/ i1 Q: ~( o  G' o
  1161. JSR RG_PPU
    / p* _& z. Q+ A
  1162. JSR ENELOC_WRITE) E2 u0 T" K% _2 ~! _
  1163. LDX #$00! b  t3 B0 A0 M/ V1 r6 f
  1164. LDA $07A3. W" W1 p% l' O/ z; K
  1165. AND #$081 f( I) U3 |( y. A( c5 a$ d1 ~* I& F
  1166. JSR ON_OFF_PPU
    " b: x! J; f; W  D8 m! @
  1167. RTS3 x: l- g) T( i; Q$ D) R$ u
  1168. 9 U) \, h0 f  n9 M6 A+ s
  1169. FOCFUL_STRING:+ N- _8 b- d; u+ J( q% t( t- f
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$808 N3 y! M5 K# D4 `+ y

  1171. 4 B' U8 S7 z/ S7 G

  1172. 8 Q# r! Y1 F5 _7 T9 U8 N' _# F2 j
  1173. FOCFUL_WRITE:
    : S+ y1 m* I+ {0 e5 V) N! n" T1 k
  1174. LDX #$00% o& K8 f5 S" q$ p
  1175. FOCFUL:# c, C5 L, b( A% k' G  g
  1176. JSR PPUADDR_PROCESS! X9 ?5 \' k  R( L+ [3 I6 t( [
  1177. LDA FOCFUL_STRING,X
    , w5 ~. c# _0 S, S' k
  1178. STA $2007
    , ]+ E3 |6 j& i4 k6 I
  1179. LDA #$00
    1 W' p, P5 l) v! r
  1180. STA $2000" f  P7 W7 }) r
  1181. INC $BA
    0 E" S, f0 K  h2 C
  1182. INX0 s  z, |( E0 m" \& N* f
  1183. CPX #$07
    1 _' b& i8 v3 j# Y& E  s; f
  1184. BCC FOCFUL
    1 g8 Q# C, L5 O; k5 P
  1185. RTS
    8 U) T1 E" R9 ?

  1186. 5 X6 `5 ], `# a# i4 P, o
  1187. FOCFUL_PPU:
      @6 M) ?8 M; F. W4 i8 c+ w
  1188. LDX #$00  z( J9 b1 z; w9 R& x) V
  1189. LDA #$62
    . |2 ]" n+ x+ I; U$ u5 R$ }3 [; t
  1190. STA $BA
    ' @3 ~' v) \/ R; I; T7 ]
  1191. LDA #$22
    0 C2 y3 J6 X' J4 H( D$ o) R
  1192. STA $BB9 C1 \& e2 G. M# g

  1193. 7 o+ ]6 x  w0 [9 S
  1194. 6 P) z1 C. K% f8 R) {" N* s& c
  1195. JSR B_PPU
      c$ A, s" Q" M
  1196. JSR FOCFUL_WRITE8 p, m" r2 z& A; D, E7 q! ]
  1197. LDX #$00
    0 ^  V6 @, |8 j' s
  1198. LDA $07A2
    ' Y/ T  j+ w, o/ {- [- r
  1199. AND #$10# ]5 n6 {4 i: F+ h( B+ y+ `. u
  1200. JSR ON_OFF_PPU
    2 {, Q9 R/ w& @: @/ k- q
  1201. LDX #$00
    2 j" O4 n6 S- J/ `. u
  1202. LDA #$71+ g7 L" Z5 k+ Y
  1203. STA $BA) z" S9 s# x9 }7 Z. c( U3 V' b* {
  1204. LDA #$22
    ! X: s: p. O9 z+ A2 J
  1205. STA $BB7 ]% a1 V. v% s1 S
  1206. 3 S0 D9 r' j; C

  1207. 0 y, d; @2 _' [2 G( A2 W
  1208. JSR B_PPU- L* B& o! I- Z
  1209. JSR FOCFUL_WRITE9 l7 p0 p7 \* q, c, U3 b
  1210. LDX #$00( m  y8 J3 v! a& o$ g
  1211. LDA $07A3
    # Q: u/ `9 r$ T; S* S- E
  1212. AND #$10
    2 t( o; e) B, z1 l+ B
  1213. JSR ON_OFF_PPU& D2 e8 V/ {+ }
  1214. RTS4 q: h1 F/ V' H, P
  1215. , N9 ^8 U* ~2 ^" }# f: U
  1216. BULCON_STRING:; @$ R; T1 r1 ^3 ]
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80& w/ E. b/ m2 {/ f/ P& ]" z
  1218. ' Y& ^# l& h" k+ d# u  l

  1219. ; a" `  c6 t, I0 i2 w
  1220. BULCON_WRITE:
    , r+ }8 d' ?4 x$ s2 s3 w9 s
  1221. LDX #$004 }: s& c( i; o' N) G5 |9 R8 k( W* u
  1222. BULCON:6 P3 d7 e9 j- E8 W) Q$ H8 G
  1223. JSR PPUADDR_PROCESS
    + R0 @* Q; H' c5 d3 v1 R& h- F- |+ b9 O
  1224. LDA BULCON_STRING,X( q# a3 G; D3 B
  1225. STA $20078 J% {+ i/ {$ }. l" C
  1226. LDA #$00
    7 U% p9 @* M, f2 X+ s5 f$ N2 g
  1227. STA $2000' a  ^! r8 |5 M# }
  1228. INC $BA+ [+ l1 d1 R' H
  1229. INX* N5 r' u) \( d1 B. v+ X
  1230. CPX #$07
    $ S* N- K7 L' |9 S
  1231. BCC BULCON
    & O% {: U: }  e5 F
  1232. RTS
    6 z$ u7 c* h+ s% c7 s3 g
  1233. % v# q) m! [  @- l' t; W+ I' Z
  1234. BULCON_PPU:
    6 I7 w# ]# L. [$ h: b4 v- g" z: l
  1235. LDX #$00/ g2 h, Z9 m* R$ Q5 Y- @( h
  1236. LDA #$62
    3 p4 Q% n' `, W9 O, {2 }6 r
  1237. STA $BA
      _4 T3 ?/ H1 y, G9 W7 [3 t
  1238. LDA #$21
    0 Z1 N! T. r5 G
  1239. STA $BB
    : Y& b! ]- k8 L' }

  1240. 4 J3 c0 T; r/ n$ E. e

  1241. : u& L7 \$ d! k6 T5 V
  1242. JSR UP_PPU5 B8 y8 e+ j5 {5 @
  1243. JSR BULCON_WRITE
    4 u2 R: K. [% a5 v$ v
  1244. LDX #$00
    & U0 y4 w# X+ Z3 U, E: Y/ o+ t# f
  1245. LDA $07A4. a0 l( h' A  D  X
  1246. AND #$08
    4 C; q- ?; X2 t. h. Q
  1247. JSR ON_OFF_PPU
    : h% a( l$ ^7 U3 u5 m
  1248. LDX #$00
    7 _; W) i5 S% p  T) x
  1249. LDA #$71
    8 W, ~/ e  \6 d7 h3 ]1 c9 k
  1250. STA $BA4 T; F; L! K- t2 o3 |
  1251. LDA #$21
    - i! g+ N* s* T- _$ k7 D
  1252. STA $BB9 z8 h) S: y( C
  1253. - m; ]  \  k4 P1 k3 D0 }# P

  1254. 6 f) e6 ^9 |; n" d8 @4 i
  1255. JSR UP_PPU- t# L  T- e  ?8 @$ m
  1256. JSR BULCON_WRITE
    / |6 q8 M; i0 g: E
  1257. LDX #$00
    5 [* r6 v$ s; r1 @+ T$ x( z
  1258. LDA $07A58 W6 ]9 n5 }9 @; y% K
  1259. AND #$08# J5 M% @# C/ Q$ e; G
  1260. JSR ON_OFF_PPU9 j0 S. \1 w) D( X$ {
  1261. RTS# @+ t) g+ @8 r8 A5 D+ @1 h) K

  1262. ; N4 L. T" R: f7 q! ~
  1263. SPEBUL_STRING:; q8 S( R- G8 O3 o- z
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    " L: A  r1 R3 `. e& e! u
  1265. 7 v; D7 \, P, \* P3 X* d) Y

  1266. " X& v# W# @# [5 C
  1267. SPEBUL_WRITE:
    ) B( `" o6 l$ O) k! W
  1268. LDX #$004 z' ~% O* r& ^" J/ C' e. T$ X2 `: o* k
  1269. SPEBUL:
    ; o7 d( k# f3 Q3 N) I: o
  1270. JSR PPUADDR_PROCESS4 `5 s* \# I; f" O8 ^" `! P* ]
  1271. LDA SPEBUL_STRING,X
    / P) }3 v6 s/ B( ~/ v: q2 N
  1272. STA $2007
    % q+ V$ h) x, f% ]& ?3 j/ V+ t3 B
  1273. LDA #$00
    9 E& s; Q% [3 D% U. C
  1274. STA $2000
    , l! [9 B& m7 Z- z" A; z  Z
  1275. INC $BA: i9 e8 L$ K7 W; e
  1276. INX" D7 U; Q8 z/ H& e% x/ M/ N
  1277. CPX #$07
    ) W. _2 a$ B7 r9 r1 e
  1278. BCC SPEBUL0 Q! c5 {$ R# k. n. o1 e- Q; c
  1279. RTS; H; I9 Z0 j5 M3 }* |

  1280. ) A3 t( N6 W! |! V- l& U* K
  1281. SPEBUL_PPU:
    4 N# q& E# R$ H. C: H1 [+ F2 g
  1282. LDX #$00
    . ?# W6 G. {$ W5 e
  1283. LDA #$A2
    % k' l% @- g0 x! X" u7 s/ l' t; s6 j
  1284. STA $BA, Z! h- @7 p7 H& o7 K& s
  1285. LDA #$21  f2 W, m4 P8 N8 s* i
  1286. STA $BB- {2 O7 n2 E1 J8 B: K; I
  1287. : h, s8 ?6 y8 l; ]

  1288. ' c8 W+ [4 V- w2 k6 P0 p
  1289. JSR DN_PPU
    : c0 I8 w3 W0 z
  1290. JSR SPEBUL_WRITE: @# J. b" S4 }, o
  1291. LDX #$00
    5 X5 a* P. K1 E, x7 T
  1292. LDA $07A4
    4 k3 [) y! O, o8 ?& ?( S9 d
  1293. AND #$02; o; s+ w) x4 S3 N$ j8 n, p9 ?% P
  1294. JSR ON_OFF_PPU
    1 k# m4 z; e+ g  R4 j6 w
  1295. LDX #$004 u9 {2 m! J' B, I. ?
  1296. LDA #$B1
    , p% O$ ~* [; e6 ~7 I% A
  1297. STA $BA8 I) W4 @/ Y9 l$ U/ P- z
  1298. LDA #$21
    4 r; H0 {" N% H! J+ q- @' L
  1299. STA $BB
    / g" [- W( a) u$ }0 u, d
  1300. " t( Q" i6 i0 \$ ?& q

  1301. 9 P2 r6 q7 i; I+ ?
  1302. JSR DN_PPU
    % m; ?" J: ^1 d* A# Y, p, h* m3 s
  1303. JSR SPEBUL_WRITE
    4 K" s- G# H$ J9 \+ m
  1304. LDX #$00
    * L! S2 H" |$ x9 r
  1305. LDA $07A5
    # p( o& a. C2 ]' I+ M. }
  1306. AND #$02
    2 y& y6 r: _5 C, F9 T% x
  1307. JSR ON_OFF_PPU: ?& w( N: r0 K6 {
  1308. RTS# z+ d: E1 }3 ^/ D; J& U
  1309. 3 z& O3 z( n: A0 h! k( j8 ?
  1310. .ORG $A500
    % M- H' @( }2 l+ J* f0 R9 o  c
  1311. CLEALL_STRING:
    - I: M. p1 r2 _8 G/ `) x3 ]( d
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$807 b9 c% Z$ K* b! g1 q

  1313. 7 ?* G" H7 ^/ [5 I7 p
  1314. 4 P* R, B" e  P
  1315. CLEALL_WRITE:6 w1 v  S$ s! l" a& ?2 W
  1316. LDX #$00" q+ d' J( P- u, X/ r2 h/ U
  1317. CLEALL:
    % L" G9 \" T) l" j' o
  1318. JSR PPUADDR_PROCESS
    ; S: r3 g5 [7 u6 k) R( i# s( _, i
  1319. LDA CLEALL_STRING,X: P3 I7 {% A# d5 y
  1320. STA $2007: b" L, h2 j, t( I7 X( g
  1321. LDA #$00
    8 \: ], ^+ @& ?. }! }/ v
  1322. STA $2000! a: `& K2 X- I, d# s" h$ m! a8 v
  1323. INC $BA
    3 f4 F' B/ H7 l0 v0 \- \/ L2 A: [# Z
  1324. INX7 }9 C# T* J' ~6 D; @8 e
  1325. CPX #$076 v" R4 Q# X9 ^4 h
  1326. BCC CLEALL
    ' [1 i) J1 w8 U/ x
  1327. RTS, F7 @4 @% L  n+ u; B0 g

  1328. . L' L/ q) c( |$ Q
  1329. CLEALL_PPU:
    % K" [2 [8 N& v) B0 }
  1330. LDX #$00  X$ Q; r' |5 L6 C: z
  1331. LDA #$E2$ C& f# n. t- r- l! T+ l( d- b" l
  1332. STA $BA2 s  h0 p$ S! _- f0 y# j% f" b
  1333. LDA #$211 Y8 e# M7 e+ G2 ?2 _8 x
  1334. STA $BB
    & O: |: k- |2 H9 _; [

  1335. # ?- y4 p+ i$ U7 z  i9 r4 _2 h

  1336. $ {9 x9 K7 L5 R0 b
  1337. JSR LF_PPU
    7 X0 S6 L8 u. t+ t8 m, V
  1338. JSR CLEALL_WRITE. z& Z, T) f5 n
  1339. LDX #$00- H$ m) o$ ?* W
  1340. LDA $07A4; m4 p' a  i4 z, Q3 V
  1341. AND #$040 Z; j, b1 M+ \7 |3 E1 k2 N
  1342. JSR ON_OFF_PPU/ v1 x1 s, @# x, V' R+ H
  1343. LDX #$00
    / [1 l; `# i+ j/ W/ D& N# E
  1344. LDA #$F17 `/ B& o$ A) V+ H* r
  1345. STA $BA: I- N  M9 f) o' Z
  1346. LDA #$217 G7 }1 d! ~7 M' @# p9 T
  1347. STA $BB' z; ~; ?4 M; b9 w

  1348. ; [# y2 d, U) s0 Z4 _5 Q: a

  1349. . m% W4 o$ A  v) w6 G1 q$ L/ s
  1350. JSR LF_PPU
    ! b% D# T1 u9 j$ Z) X
  1351. JSR CLEALL_WRITE
    : L$ {2 o7 l) h7 E( E  U+ x+ b( Q
  1352. LDX #$00! F8 @9 o2 P# ^& Y1 H
  1353. LDA $07A5- k' o7 ]" T$ T2 A" q4 C
  1354. AND #$04
    8 U/ P- l5 j1 N5 ?5 Q
  1355. JSR ON_OFF_PPU8 N  `5 p4 O; r( ]0 P4 {
  1356. RTS4 V: T9 S/ P3 n- j; C3 t' E
  1357. / u# V6 S. L5 b0 O+ q* ~* l/ |
  1358. HARDMODE_STRING:
    & X7 h* Z: n/ g3 Z9 q* m
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    3 K9 r1 D! E! A  A# I

  1360. 7 p) X$ n: c8 f, }+ ?
  1361. $ _" V' v% R. U( Z! Q8 ~/ _
  1362. HARDMODE_WRITE:1 j9 B  h' @$ a. H  B/ }
  1363. LDX #$00
    - S  d& i' }: ~5 H/ P; L
  1364. HARDMODE:
    6 |, t/ o! t6 u
  1365. JSR PPUADDR_PROCESS
    3 ^# A/ t& I7 [# o
  1366. LDA HARDMODE_STRING,X) Y1 y9 b4 z( |
  1367. STA $20074 \- A( A1 K, ~' I! Z3 w" w
  1368. LDA #$00
    7 }( [& I2 }8 v5 i5 v9 W
  1369. STA $2000
    ; s( ~- _' @% [8 W# V) m
  1370. INC $BA5 {: V& `% @& v" C
  1371. INX% {% Z; I* `# D9 \
  1372. CPX #$07/ g5 E; b5 q/ m. @  D# `* p1 |
  1373. BCC HARDMODE
    , S5 k& U, i$ e  X
  1374. RTS
    ! Z8 Z( f) w& ]/ A* b! G

  1375. 1 G: T. G. j# s
  1376. HARDMODE_PPU:
    % J+ Y. K1 N$ f+ [# {$ r
  1377. LDX #$00+ T' T+ l2 U% W: X6 U' P2 n+ H
  1378. LDA #$22  y# [4 C4 t8 L5 i1 _
  1379. STA $BA2 A" G, p( ^0 z! @! R/ L+ P
  1380. LDA #$22& P; o$ [  t: Q- D- b
  1381. STA $BB/ }+ i1 W) Y& O- ]8 D7 M
  1382. JSR RG_PPU
    * R& k) T# R) w- a8 V
  1383. JSR HARDMODE_WRITE/ z! i7 U" m, _. R0 g# p- O; X: ?
  1384. LDX #$00
    ! c% D; p  r% A' B# a2 R: ^; L$ W1 Y- I
  1385. LDA $07A4
    2 g$ ?/ G& Z! u
  1386. AND #$01, F4 Q3 W8 S) w' v+ K
  1387. JSR ON_OFF_PPU
    9 I/ f. G6 G, g- g1 o' Y
  1388. LDX #$00
    9 n# w* K8 p2 ?
  1389. LDA #$31
    ! j5 N0 N& I$ w
  1390. STA $BA
    7 _' h0 B& }4 y: U
  1391. LDA #$220 F; i. p7 t6 ]: s1 Z
  1392. STA $BB# ]% j; o5 Q+ s% S# ^, z% V

  1393. 5 ?# ]7 t- o7 _

  1394. 8 H6 h+ N9 L7 j% U& z/ @  Z
  1395. JSR RG_PPU
    1 o2 M8 L6 W- R. B2 l
  1396. JSR HARDMODE_WRITE5 h9 k& k# f& c' X& Y
  1397. LDX #$00
    , x# X* b4 C# }* ]+ ~
  1398. LDA $07A5* o9 P# M6 \/ z
  1399. AND #$01. p7 H+ l; v+ \1 l9 X) Q5 v: R
  1400. JSR ON_OFF_PPU0 v) X# Z9 b$ i- B4 ^2 a
  1401. RTS
    6 |, I, f' h. D! K

  1402. ( y6 K# S! i# Y2 C* z  Y
  1403. B_TO_JMPSTG_STRING:
    " L  F3 n; C( r, a$ F& z
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$805 G) d' f9 T7 M  G5 ^" s! S. s
  1405. * P/ a% Z2 w6 l6 v1 b7 j: V, U. \& s6 f
  1406. - ^) c# l& I0 Y! C" z2 ^4 f8 i
  1407. B_TO_JMPSTG_WRITE:1 O5 M, o1 i4 H: y0 c2 U0 J
  1408. LDX #$00
    " o/ N& W* k& |; b- z, n
  1409. B_TO_JMPSTG:
    , b/ g. {  u# P: P
  1410. JSR PPUADDR_PROCESS/ e. C. [4 e% m
  1411. LDA B_TO_JMPSTG_STRING,X
    6 v' s! v. ?& \# }
  1412. STA $2007
    # ~* S* i' q0 Q7 n; Z4 ?
  1413. LDA #$00% T0 \# b7 w' ~2 R& [# `; ]5 M; p- `; S
  1414. STA $2000' O" j) [! `0 [  J$ {$ C
  1415. INC $BA. M0 u* L" C6 F$ R+ V( D0 [
  1416. INX- z: l. @1 R6 A" ~! I4 J
  1417. CPX #$0D% v5 h* }, V3 K4 J6 U$ Y
  1418. BCC B_TO_JMPSTG
    " |0 H* z+ `: ?9 a& G% S
  1419. LDX #$001 I- G' t, k) q
  1420. LDA $7FE0
    6 b' Z+ w+ @" X
  1421. JSR ON_OFF_PPU
    . _2 f' G% ]1 S# H% `$ `( z
  1422. RTS2 G  y3 N6 X/ O: @$ E7 Z

  1423. ; g+ {  Y8 h9 ?
  1424. B_TO_JMPSTG_PPU:' O; n% u$ r9 j5 U% V- |. ~
  1425. LDX #$00! y' s( n- h. P( I$ _) s
  1426. LDA #$68
    ( B: \' x% b* k, d, s6 `# O0 {
  1427. STA $BA
    , V, p5 q" g0 p6 ]/ O) W
  1428. LDA #$22
    9 w. `  w2 X4 K  a% i8 i  d" H& b
  1429. STA $BB! _! z$ R8 a# x1 ~  A- q) u$ f
  1430. JSR B_TO_JMPSTG_WRITE
    9 H! S( `$ ^  l& c1 S/ F) i
  1431. RTS; r/ g7 C% V% j" f$ p+ ]/ \, r

  1432. 0 k5 k5 h5 ^6 N0 P, T
  1433. 5 c# [4 c& z6 U$ g
  1434. A_TO_PLAMOD_STRING:
    8 H/ N; `0 {" q0 L9 A1 B. E
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80+ J. X9 z' q# d% i) v
  1436. . a% D& E2 D# ?- G  _

  1437. 8 h2 [; h1 e; ?! Q& |2 {5 k
  1438. A_TO_PLAMOD_WRITE:# C! p! O0 }0 h5 O* n( F$ x
  1439. LDX #$00. ^7 z6 y3 L1 A  m9 J% W
  1440. A_TO_PLAMOD:+ Q4 ~0 J" }* V) h
  1441. JSR PPUADDR_PROCESS7 m* S1 _) H- O+ M  M2 g2 K
  1442. LDA A_TO_PLAMOD_STRING,X: Y& F& m+ e3 b9 ~& K
  1443. STA $2007
      g+ @! A* Y! X/ [8 \% g
  1444. LDA #$00
    . @* x" z& U- T& @
  1445. STA $2000
    4 O9 D' t+ m1 O
  1446. INC $BA
    ) q& F) }' H# Z: a  f, t/ V3 i$ u
  1447. INX
    : M  K) U% o' {; O
  1448. CPX #$0D8 |& r2 X( w; U% d# k6 L4 b
  1449. BCC A_TO_PLAMOD
      o2 _2 @: f+ e, ^
  1450. LDX #$00$ u. Z- ~8 V5 N4 H% j) _) R
  1451. LDA $39
    3 \, E, Q, b4 s
  1452. JSR ONE_TWO_PPU
    7 R3 M" L: v: a2 G
  1453. RTS
    , {. W% ~  }9 Z/ i

  1454. 5 @, E1 j6 u* H( V7 ^) ?
  1455. A_TO_PLAMOD_PPU:
    8 Q) v. s# N( x$ Q
  1456. LDX #$00) n1 f/ b( H" B% ]- A% P" K/ P
  1457. LDA #$A8
    & w3 v" `2 m. H
  1458. STA $BA
    5 M# Y( R' R) N  W4 C. x3 ^; }1 D8 D
  1459. LDA #$22
    & D* p9 F6 m( I+ X5 M1 ~
  1460. STA $BB
    7 s+ M: E0 y  ~3 Y( p& y7 g
  1461. JSR A_TO_PLAMOD_WRITE
    # @( q  s, [( C' ~
  1462. RTS: E# |& X# \& \# ~% T
  1463. ; d! t, j1 t0 Q
  1464. MOVSPE_STRING:
    5 H2 E$ I2 ^9 F/ i" Q6 _" t
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80: S) @6 c1 L( w8 k- D" j, ~
  1466. ) l  z7 O# g$ m$ U8 X& \

  1467. : h2 E5 [2 B* U' L( K
  1468. MOVSPE_WRITE:+ b  J) F5 G3 _) c+ l2 z
  1469. LDX #$00
    ( Q8 o% b0 q  D% B& S7 O
  1470. MOVSPE:+ ~- s$ D( t: u  x
  1471. JSR PPUADDR_PROCESS
    / e! W9 W2 X7 t. }
  1472. LDA MOVSPE_STRING,X2 v+ O0 w* U0 K* @9 G
  1473. STA $2007
    7 E3 g7 M% @$ G8 H1 i0 a5 O, r9 K
  1474. LDA #$00
    3 I% m7 e8 z' R0 @
  1475. STA $2000( c  u  ^1 [4 C9 j) A# o. f
  1476. INC $BA
    / E; K6 y! e* t
  1477. INX: x  i  n; t+ f) u6 c2 P% Z8 W. x7 z7 l4 G$ @
  1478. CPX #$071 J1 F. s6 Y) n) H% c
  1479. BCC MOVSPE2 F  c8 ^, Z: D- A+ R0 Y9 Y
  1480. RTS
    1 X( o2 h2 e9 ~' f
  1481. " e! t: }8 C7 w
  1482. MOVSPE_PPU:: F- t- O" l- {1 n
  1483. LDX #$00+ Y  c" M' C0 s3 N0 w
  1484. LDA #$69
    # q8 v9 r/ f) o$ E( G
  1485. STA $BA
    $ m9 w0 S& s4 [" O+ G& ]# H" T2 `8 Q# B
  1486. LDA #$21% c6 ]5 I  j( r8 w
  1487. STA $BB, R4 r! n8 n0 p$ L0 B8 R/ d' ^
  1488. 7 D! I+ m0 }8 t/ G! k- S
  1489. " [1 W+ _" U, Z6 {/ w
  1490. JSR UP_PPU
    4 @, o0 f+ W" D* N/ S* E5 B) Y. R
  1491. JSR MOVSPE_WRITE
    * x* U' ~4 i8 b9 C( v* v
  1492. LDX #$00
    " K" t3 v; e) E
  1493. LDA $079F
    $ v, \# e* H8 ?( o  H6 C
  1494. AND #$08
    2 j9 `+ s* g5 c. `! p. W
  1495. JSR ON_OFF_PPU8 j1 ]: A- O  }  d0 L! j+ b' w
  1496. LDA #$80
    * `7 H; t+ `5 v: `/ j: R- F+ J
  1497. STA $2007
    4 Q0 Y0 f& j1 n3 |
  1498. RTS+ G- ^; _2 w9 d+ B& Y

  1499. , ^  Z) t& G: F& `" ]
  1500.   
    4 L% {% [& _  Y$ x* r- p
  1501. UNLJMP_STRING:
    / D/ B, `; G0 o4 Y  {
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80
      f+ W; z; |: i2 \

  1503. ) F7 t! w5 R; u0 i
  1504. 4 K  S& ?4 U& O; U9 W, d
  1505. UNLJMP_WRITE:
    9 ^- S! x3 y! r; `. r; r
  1506. LDX #$00, I, M2 E( I' p8 @' q! N: }2 y4 E8 [
  1507. UNLJMP:+ F: D& d0 f5 A( @* B/ I
  1508. JSR PPUADDR_PROCESS% G/ C! ~+ a/ E+ T  c
  1509. LDA UNLJMP_STRING,X
    % i6 [8 V5 \2 \5 z0 ~
  1510. STA $2007
    ( I- W, G* N  G5 O: k
  1511. LDA #$00
    : `) R; d! r' V4 ?' K
  1512. STA $2000
    & t2 p( _8 D: g# L
  1513. INC $BA0 ?7 I3 X& K1 C( q; G5 h  `* M
  1514. INX
    . ~2 U  l+ n) w% g9 l7 U
  1515. CPX #$07
    4 [1 j4 ~( c1 Y, Q3 F2 R
  1516. BCC UNLJMP, K" f; p& b- }& q: n# E
  1517. RTS
    ) e5 ~1 y" j9 F/ t4 u8 \/ `, g
  1518. ! c, }/ i$ j5 a4 a
  1519. UNLJMP_PPU:
    % K( F6 J8 V/ k/ w4 Z4 T; N8 p
  1520. LDX #$00; I$ Q/ H0 n4 I  B
  1521. LDA #$A9
    , j3 E1 g1 q6 u: h% @3 P2 K7 _
  1522. STA $BA/ n# D4 m/ i$ w4 _: |
  1523. LDA #$21* @  _, ^& _$ Q
  1524. STA $BB) f6 h% g, G% S; f4 I
  1525. % i" M  x2 A4 f7 j2 j- ~5 m

  1526. 1 x! O( U# z2 Y! W' T7 M  z) l. a4 U+ K
  1527. JSR DN_PPU
    * {: T1 l8 r% U5 E
  1528. JSR UNLJMP_WRITE2 v% j3 l( v8 E1 h/ f  r+ `
  1529. LDX #$00+ X7 k* U$ e8 {! E* w0 @$ v; z8 A
  1530. LDA $079F/ {) R7 Z& M$ c" \  p) p
  1531. AND #$04
    & c9 v' l6 P" o& w7 W* K
  1532. JSR ON_OFF_PPU- F* ]' C- d' \6 b
  1533. RTS
    0 ?/ r/ Y7 \0 F8 ]* m

  1534. 5 [9 Y* t# s) }2 V2 b' Y
  1535. 1 R3 i) m* `6 \+ b, q& V$ p
  1536. DESTRO_STRING:
    5 E: p. L! J* ~9 C4 \
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    / t: R5 _" `! T( Z, B' l

  1538. & Q+ t1 C1 W+ s2 W% Z$ G

  1539. 1 ]. l8 n& W3 T
  1540. DESTRO_WRITE:
    5 T/ o* M# q: t! I1 V
  1541. LDX #$00
    # e' N6 K$ {0 K( w& Y* L& S4 l
  1542. DESTRO:  C- c9 T2 R, q' |3 z; l9 @
  1543. JSR PPUADDR_PROCESS
    0 C  c2 ]/ g' U0 O- q# `
  1544. LDA DESTRO_STRING,X: O. L+ N, X/ N( C  @
  1545. STA $20078 L/ D$ F9 e8 a! N
  1546. LDA #$00
    4 g/ T. `' H: s( h# w6 ~
  1547. STA $2000
    9 ], H& b% g: W: i. ?7 w- @
  1548. INC $BA7 s, M" j4 E& V. i' `& h
  1549. INX0 Y/ E" O% g- d8 e4 c2 v/ H- Q; \
  1550. CPX #$078 R# U, C, ~. j
  1551. BCC DESTRO
    4 V( T9 {& L  x5 S  y) Z. \
  1552. RTS3 _) ?% R- U. p2 |

  1553. 4 F/ s# R! w' g8 r, ?% B
  1554. DESTRO_PPU:  ^' B: Q, ]" y$ Y) _8 j6 R
  1555. LDX #$00
    ( r& g7 b7 C" z/ j" m
  1556. LDA #$E9
    6 D- I! U5 r3 G4 L+ Q  v
  1557. STA $BA$ @4 w' P9 g+ R7 h: ~" L( e3 }
  1558. LDA #$21
    : e. C( |# e& x
  1559. STA $BB
    1 G# B5 {& r& Z  Q0 G' A

  1560. ) A3 s9 L' L7 ~$ s! G
  1561. & t6 @8 }+ [2 G
  1562. JSR B_PPU
    & \/ q* x; ?0 h( E
  1563. JSR DESTRO_WRITE9 \5 r' p1 @( A
  1564. LDX #$00
    + L; N6 \- ?6 F4 X  X
  1565. LDA $079F
    & D, _! t9 V( D1 |$ F. D
  1566. AND #$40, F: A' ?* t1 \
  1567. JSR ON_OFF_PPU  L; [) ?' [: _1 }' ^$ W  o" ^
  1568. RTS
    . ]* q2 m" r# n9 @% o4 l+ R' r
  1569. + _: ^- ?9 e* z/ l& c/ }; {5 B% t

  1570. 6 o$ a, `9 h5 v* g* i5 U( F
  1571. EQUBUL_STRING:) y& t8 p( q6 D
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    $ B/ ?/ Y; t$ Y& ]" _" \3 q6 v! z

  1573. * D& E5 T( \3 j

  1574. ; k6 M7 f  V; p
  1575. EQUBUL_WRITE:0 B" Q# m% I) }2 n% a
  1576. LDX #$00# n  c  z# k7 p, ]
  1577. EQUBUL:
    9 f7 @" z. G) W$ f3 x
  1578. JSR PPUADDR_PROCESS
    ! I% @. ~. F9 o% Z$ S; `
  1579. LDA EQUBUL_STRING,X
    & w8 V  {$ n% U5 y7 a
  1580. STA $2007. y2 f, ]1 O! f. D2 j9 J4 L; s
  1581. LDA #$00
    9 t; C$ x4 i9 B3 e
  1582. STA $2000
      J* s2 j+ M1 {# }, l5 j/ g- E
  1583. INC $BA
    ( O' \1 Y8 p. w% k! _( }0 o8 ?
  1584. INX
    : _& w: i5 J9 g6 P& S0 X
  1585. CPX #$07
      n; r' M1 S, a# R2 P$ ?( r7 D
  1586. BCC EQUBUL& o( H8 w: k8 g
  1587. RTS% g& {6 L/ z/ c! i8 y; }% I" ^; _' A
  1588. + \$ g7 W# e# k1 C9 k5 o
  1589. EQUBUL_PPU:' B, _3 |& E4 X5 z2 o. ?: z$ ?* r
  1590. LDX #$00
    ; W; ?  W$ M# ^; W) y8 x
  1591. LDA #$29) O! ]9 f1 E3 B8 ]+ U
  1592. STA $BA
    8 \9 A% q1 [0 `5 L2 j+ K
  1593. LDA #$22
    6 {- o9 x6 V$ f" ~% k. ]& F' ~$ W
  1594. STA $BB" f) F" V4 ~: e& x" j
  1595. ' G& u, s1 {/ Z# G5 H; O( F

  1596. : w/ U: K- x2 [* x( h5 h! P  H8 T
  1597. JSR A_PPU
    . l' Y* Y7 `8 r3 J
  1598. JSR EQUBUL_WRITE* X% w1 v4 K; |9 t1 G" h' P
  1599. LDX #$00; |8 t3 b: {1 B" F" \; W6 r7 o; E5 P
  1600. LDA $079F; K2 X7 a% y% M, f! F
  1601. AND #$80
    5 d- ]+ V1 z3 F3 U/ d# u" T
  1602. JSR ON_OFF_PPU
    ; l- s1 p' D3 F5 `+ \& t5 j
  1603. RTS! |8 q/ [# }* \% u* u
  1604. 6 y& n  g: K; E3 K

  1605. " p! R6 ~- Q6 i- x$ @

  1606. 5 [* I! N: ~# `3 n0 D. W# F
  1607. BULSEL_UP_STRING:
    3 N2 _2 d" }# H( q6 V( t4 x
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80- b! U& G0 Y! n

  1609. , W2 B5 @  A4 ^; t& A
  1610. BULSEL_DN_STRING:( u, [5 d4 i' ]) ~4 E
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80! H5 v7 Y: w& L" n
  1612. 6 T$ u) T6 |, E3 q3 \, N0 ^
  1613. BULSEL_LF_STRING:
    3 b# Z, g" D/ b2 A5 S5 l! s
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80( u) [/ O1 ?' m
  1615. & l7 b% {( n! T) w; T# R4 e; g0 O" j
  1616. BULSEL_RG_STRING:# w, N4 q. K+ p2 ^
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80
    + z" t, W0 e1 F0 }- B* \; b9 L0 J

  1618. 3 t1 s( Y8 u" E1 l% T$ \6 S
  1619. BULSEL_B_STRING:: z- ~. {/ Y$ c  F' A: P
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    + t& C% l' k; C. o
  1621. # ?9 h+ |  Y% U8 |  [! d  I
  1622. BULSEL_A_STRING:* Z# O( ], s0 E8 i8 |& s
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    ) I3 R* Y) t" L  L
  1624. + b* G% r9 v) m# L  v4 f
  1625. 6 A" L' ~6 q8 L5 f1 V8 {9 A
  1626. BULSEL_UP_WRITE:# m4 g1 K% g* T. x( B) C7 U
  1627. LDX #$00& P0 j$ x6 B1 H" @3 v3 O' o: |; Y. \
  1628. BULSEL_UP:* K  C- V7 ]: @8 v5 X! _
  1629. JSR PPUADDR_PROCESS
    6 ?: a0 O1 C7 M( `' ~
  1630. LDA BULSEL_UP_STRING,X. P  @- t8 W: E: v! e( @1 S  q3 q" H
  1631. STA $2007: a9 R* w% s/ O) l) T. ?( X
  1632. LDA #$00
    ( Y1 M! B0 N: h& Q7 }9 o6 j
  1633. STA $20003 ]9 w7 M$ I$ T& A; t$ E/ H
  1634. INC $BA
    0 z- Y, W7 L" V* y
  1635. INX
    5 n0 p' j2 U! j: q6 T
  1636. CPX #$09  q" E- V& Z6 E9 w& x
  1637. BCC BULSEL_UP
    - j  _' b# `! {+ q; l
  1638. RTS
    8 q  Z1 ?6 @; e
  1639. BULSEL_DN_WRITE:1 E+ s4 X; n3 o6 c* z' l" v- B
  1640. LDX #$00
    1 ]6 l. e! \1 C4 T3 Q  D) _. _
  1641. BULSEL_DN:4 |7 C' e* p- J  Z6 U+ S. z
  1642. JSR PPUADDR_PROCESS
    ) F+ t3 r- V9 O0 J& j  W$ x
  1643. LDA BULSEL_DN_STRING,X9 D5 W  d/ s0 T  _0 I( Z
  1644. STA $2007
    5 T3 L1 N) O2 N- m% [
  1645. LDA #$00; o+ P0 m' M. x" u' X$ j( r
  1646. STA $2000' d1 O+ A1 R6 @$ Y) r1 f
  1647. INC $BA
    & |9 s" U; R! ^/ {/ R( R( C
  1648. INX
    0 j/ {  m7 x7 ], A
  1649. CPX #$099 b* q) c' V$ E( H, c
  1650. BCC BULSEL_DN% z8 j! x) D+ c" l
  1651. RTS; m" ?" @$ f+ ]8 x
  1652. BULSEL_LF_WRITE:5 P- [* {+ ~, J+ @
  1653. LDX #$00( T* B+ s( z' F4 v% L  l* M8 T
  1654. BULSEL_LF:
    ) }/ d4 K. E" ^- h
  1655. JSR PPUADDR_PROCESS, Q$ c0 i. U# J
  1656. LDA BULSEL_LF_STRING,X  W6 T& V2 y8 ?3 f3 k
  1657. STA $2007
    9 F( |3 F8 g! Q
  1658. LDA #$00
      h9 h8 J; M8 Y& n6 r3 c  {# X# c- w
  1659. STA $20001 L' W9 y1 f9 Z7 u
  1660. INC $BA, P2 j* Y- h0 v$ E
  1661. INX
      m2 J8 k3 J! \2 }
  1662. CPX #$090 T7 k3 ?8 @, r5 q* |, B. J; K
  1663. BCC BULSEL_LF1 R8 d, y  b, ]
  1664. RTS
    0 s3 P9 d6 X1 j
  1665. BULSEL_RG_WRITE:, S, Y% Y3 W5 Y
  1666. LDX #$007 p6 q  F: A' }5 l
  1667. BULSEL_RG:
      }: R# A& t! i9 A- A+ i) W
  1668. JSR PPUADDR_PROCESS
    7 Q6 p# H: z1 l
  1669. LDA BULSEL_RG_STRING,X0 a3 M+ D  {8 [2 P
  1670. STA $2007
    ' l6 L7 y" b2 `+ y
  1671. LDA #$00% w+ X: r0 m$ M2 y+ z8 R- R
  1672. STA $20005 w5 S8 i" ~) C3 Y
  1673. INC $BA- C& B8 ]2 V0 d# p! S
  1674. INX; `/ C, b4 p2 u  Z) l
  1675. CPX #$09+ A1 T1 |) S  K( z  J/ W
  1676. BCC BULSEL_RG
    ; X& e7 e0 e7 I/ A  k
  1677. RTS, Y' b- I$ t- z% b( M: w0 }
  1678. BULSEL_B_WRITE:
    3 O# Z. O( G" n1 O2 x
  1679. LDX #$00
    : P& n2 B$ ]: \! r* ^
  1680. BULSEL_B:$ q6 N- X$ P2 t- m' O) j; ?" [
  1681. JSR PPUADDR_PROCESS: l( R' [% c7 L# w8 A4 L
  1682. LDA BULSEL_B_STRING,X) I8 d5 U$ E6 k, H+ N
  1683. STA $2007
    / Q! W9 k6 k6 V! M
  1684. LDA #$00
    : P5 S* z1 Y9 R' L
  1685. STA $2000! u) c. _  f6 u. V& P; y( a
  1686. INC $BA4 u6 h3 |8 A7 l' |, M$ Z3 j* H
  1687. INX- U8 z) x7 Q' Y4 h0 K8 l. w5 X
  1688. CPX #$09
    3 x! m& Y. }7 K5 V1 A8 Z5 Z: D
  1689. BCC BULSEL_B- S, `2 B) W) f; f
  1690. RTS3 w1 j1 y5 b. Z
  1691. BULSEL_A_WRITE:$ \3 L4 ~( y/ l8 M
  1692. LDX #$00$ s; |( P* c, d( D! A
  1693. BULSEL_A:7 V- }/ T- W8 j
  1694. JSR PPUADDR_PROCESS- k- R8 \2 m) ^' F* O$ X0 }
  1695. LDA BULSEL_A_STRING,X
    " y% s$ t# k7 G7 k2 m; m" `9 t
  1696. STA $2007. O5 r: v/ g0 S0 @8 X: y
  1697. LDA #$00" {- _) G9 w3 ]2 k
  1698. STA $2000, n: j2 Y! Z  E
  1699. INC $BA
    # }* ~7 O  @, M+ B  T% t# i0 I
  1700. INX5 ?* ]0 f9 R0 D% U
  1701. CPX #$12
    / w  s% n9 v5 P- `
  1702. BCC BULSEL_A
    + w4 D2 U* J0 K3 Y' M, v" D# O
  1703. RTS8 U& G4 i1 Y! h, Z7 Z- s% {

  1704. # n2 q& [* Y/ Z6 P: `

  1705. 0 I8 o1 m3 k  h$ {; f5 _
  1706. 4 m2 j9 s. }  }: r: d
  1707. BULSEL_PPU:$ O$ b7 @; h) r0 b0 ?$ s+ |
  1708. LDA #$6C- U. z7 Y. \6 Q' U
  1709. STA $BA8 L6 T- Z, a+ ]6 T# d
  1710. LDA #$21* V9 r1 X0 W! D( x
  1711. STA $BB
    7 n1 C0 h$ j7 {) d0 A
  1712. JSR BULSEL_UP_WRITE
    ' }3 ?7 \- R$ ~, f
  1713.   Q8 |% A- l$ n8 K/ x: R8 |
  1714. LDA #$AC3 A! G' C4 h* K) `5 h
  1715. STA $BA' F0 E+ u3 H5 M2 B! ]* ~
  1716. LDA #$21
    ' _2 x  w0 p, f' a
  1717. STA $BB
    5 {, U& V+ c' e, |3 \  T/ J2 [: @
  1718. JSR BULSEL_DN_WRITE
    " u$ [% A! B7 G7 [# _6 U! Z! \

  1719. & E9 V: O+ K  c) f
  1720. LDA #$EC
    : w! G7 B9 g: E5 L
  1721. STA $BA$ a, s( u( v& m+ _! f7 E
  1722. LDA #$21
    * v! c+ Z4 G! Y3 n
  1723. STA $BB$ |* L4 N9 @8 H. W: `( M6 u
  1724. JSR BULSEL_LF_WRITE
    8 @7 c4 g  _4 [' }& l) c
  1725. * }6 G" U" [) Q' q" C3 q% R
  1726. LDA #$2C
    * \5 C9 o7 c8 o$ f( n
  1727. STA $BA+ M& V9 Y# Z5 k1 Y0 C
  1728. LDA #$223 X7 Q9 Y, |4 ^% U( j( x5 b
  1729. STA $BB
    # y0 C9 ~, `% ^+ z6 Q* K( b
  1730. JSR BULSEL_RG_WRITE3 O) M4 x5 m+ u& {
  1731. 3 A9 o3 x. Y4 F: L3 T- C" m- w
  1732. LDA #$6C
    8 S, q: R6 }! E9 H
  1733. STA $BA  ?" l% e, o; F! X) C4 M- V
  1734. LDA #$22
    ) v7 Q- v0 E0 Y: A6 ^
  1735. STA $BB
    # A" f' N" |! w2 i4 z. n' K/ {$ J
  1736. JSR BULSEL_B_WRITE4 `7 Z- _% i" j% [/ O2 D& ~

  1737. 8 F9 a% I, \" d& z* Z( k. K( D* Z* F
  1738. LDA #$A7" s5 R! x1 r3 R9 b7 M* C/ H( E$ X
  1739. STA $BA, K) w4 Y2 n5 a5 i
  1740. LDA #$22* p, u, B/ e2 L9 y' ^
  1741. STA $BB1 f, m, T, O: R3 k/ B
  1742. JSR BULSEL_A_WRITE
    9 e6 l; J% ]; c
  1743. RTS
      F; S& c8 Z+ T& g: d6 I
  1744. & T$ ~- q* b# N# Y3 f9 @
  1745. 4 k5 Z- f2 q' `* ~

  1746. ! D9 h, J: t/ N! ]% G
  1747. UP_STRING:% @' V- X# S7 |1 X5 L* n
  1748. .BYTE $9F,$9A,$80
    8 _% W* |- m- I# d# n: o

  1749. 1 }& \+ H* R1 ?, `" q9 o# v
  1750. DN_STRING:
    " B9 X% p1 U2 U( V
  1751. .BYTE $8E,$98,$80$ K& ]: l6 Q; Z! }7 I; }! B
  1752. 0 U2 X* h' H$ p5 u' s( U
  1753. LF_STRING:+ W8 e  [1 R3 K2 W$ w5 k6 Q) Y
  1754. .BYTE $96,$90,$80
    - V# z2 X* V8 s, c
  1755. + g. Y# Q* G! y* c6 W; l$ w# }
  1756. RG_STRING:
    4 U9 P' z# E: `6 D- ?2 L3 [
  1757. .BYTE $9C,$91,$80! L9 H2 G5 M5 l% o/ J$ s
  1758. + u5 \2 I. X  F
  1759. B_STRING:
    : q8 M% V! g) l) c8 G' a, u
  1760. .BYTE $80,$8C,$80
    + Q9 X3 J  W  P) D" L

  1761. , h: H& b0 g. d' Z  W) |
  1762. A_STRING:
    / M, K2 T1 |8 x! B
  1763. .BYTE $80,$8B,$80
    - {9 [4 n3 e& c5 k1 m/ P: J
  1764. 1 I4 r( s# V: D5 b- ]

  1765. : ~  C0 _- F; W/ Y
  1766. UP_WRITE:
    & c7 s( D. X8 E1 D
  1767. LDX #$00, L. G% [! h! y( [( x& X
  1768. UP:
    ! P! E+ b1 w4 N( I0 E5 u9 w( o1 s8 h
  1769. JSR PPUADDR_PROCESS
    " Y5 _8 m  i( U  B6 h. X
  1770. LDA UP_STRING,X# f9 ?1 {# P( V" C0 N8 ~' N
  1771. STA $2007
    5 G7 }0 `7 s2 `9 W* i; p7 D
  1772. LDA #$006 S4 O  O) \  h
  1773. STA $2000
    $ A8 N) W& j( L* R. v- N9 u4 b
  1774. INC $BA# V2 I  R* K9 [
  1775. INX. o+ J" p- b& n
  1776. CPX #$03
    , ]4 T7 w, X/ _1 f) K6 X* h
  1777. BCC UP7 l* L% r: q0 k: u: s$ [" {1 F; @. D1 s" e
  1778. RTS: q6 v2 k8 h5 ]# t# s- M8 z

  1779. 6 _$ O5 B  z4 d$ g& L8 y: B
  1780. DN_WRITE:
    * Q& ~# {% W5 i9 Q+ Z* ^% ], a' K
  1781. LDX #$00! \" [" I( S: a! ?. P# A" j
  1782. DN:
    0 {3 P9 L% e0 N3 _6 k
  1783. JSR PPUADDR_PROCESS
    7 g5 R/ Z/ b3 U' M% b* B  E
  1784. LDA DN_STRING,X
    4 R1 |+ w( l/ N" ?
  1785. STA $2007
    # m# y- K2 h( I
  1786. LDA #$00
    / X; ?9 }% ^2 j4 }4 h- i2 E9 m
  1787. STA $2000
    ) r$ k( e' }) e# I+ Z8 a
  1788. INC $BA
    # L0 m$ Y' M% R3 d: B6 u" A
  1789. INX
    / P8 ]2 }, l" Q5 `1 [% t( l, |
  1790. CPX #$03
    4 r/ f1 c6 T7 }# q
  1791. BCC DN9 w) ?6 c# ^: D1 ^8 J
  1792. RTS
    ' l5 a  g$ @3 R6 w5 o
  1793. * [# H( W, h  f$ G1 r- t- M/ k
  1794. LF_WRITE:
    3 X4 ?% @  l4 B; p: `+ U2 [0 X
  1795. LDX #$00+ s+ j' O" V9 [" ~
  1796. LF:# m! _+ q: v6 `! N* c7 V
  1797. JSR PPUADDR_PROCESS. R+ G( p6 q$ i
  1798. LDA LF_STRING,X# J8 q2 _" e0 a- B- o3 Y
  1799. STA $2007
    ! v+ d5 I2 x. W2 O) w( k; V' _
  1800. LDA #$00
    ' U6 ]. `8 Q- R" W  ]8 c( A
  1801. STA $2000
    5 a8 T# ]: P! i7 @4 @
  1802. INC $BA' d% \& O/ P) b$ U
  1803. INX; H, C" A% C' e9 @6 E
  1804. CPX #$03
    0 ^  f0 ?3 }; j( C1 z: y
  1805. BCC LF. ~9 l0 A- e5 y' q$ h" h* K
  1806. RTS3 T9 a/ c  \+ w

  1807. 7 h4 K; Q( X$ X. W, q  ^
  1808. RG_WRITE:/ Q- i( f3 [# O$ ^
  1809. LDX #$009 _- @; ~* R. R3 `9 ~- [
  1810. RG:
    3 e* V5 ^. A! }! N: i% o  x3 ^
  1811. JSR PPUADDR_PROCESS
    6 R) _* U0 \2 c" _5 V8 c
  1812. LDA RG_STRING,X3 @1 `( |" n+ e0 [
  1813. STA $2007, [; y$ Q: F2 d9 H
  1814. LDA #$00
    ! J' h' ?. f. a9 ?
  1815. STA $2000$ y: ]9 `& Z" h9 l
  1816. INC $BA7 ]2 \2 g7 `+ T# f- S( z
  1817. INX0 F) l: ~% ?, {" H3 a
  1818. CPX #$03
    : Z5 G/ t" r! s( i1 q
  1819. BCC RG
    ; A: h1 F4 r  C
  1820. RTS: u* q; [9 X  N* D$ \
  1821. ; D& D  N' r7 _2 l9 \0 v1 c
  1822. B_WRITE:& a# Z. a. i# F0 Y$ U+ {+ y3 X
  1823. LDX #$00
    + h9 k3 F  P( w  X3 ^6 |) s
  1824. B:
    4 z' F) z. M; ]
  1825. JSR PPUADDR_PROCESS2 x# U! G0 L7 r$ e. C* I+ f
  1826. LDA B_STRING,X
    0 ~7 x" B9 p: b' p
  1827. STA $2007
    $ Y) H2 F. s" T8 Q
  1828. LDA #$00/ S5 Y1 j1 J) A* q; r9 p6 v4 R
  1829. STA $20008 k2 }9 V  H" f/ j% i
  1830. INC $BA
      W5 z4 S# Y& s) I$ \
  1831. INX
    & ^% V0 W& z% C( B% i7 j. ?
  1832. CPX #$03
    ( ^4 j9 Z3 }0 O, M& T9 u
  1833. BCC B
    7 b. h, @7 s: g5 [" R
  1834. RTS" k- N9 I; d! B/ Y) i3 _' u2 k
  1835. ( f: N8 n4 q2 \' F
  1836. A_WRITE:
    & s; Y+ d3 J& }; f+ o! g! A1 W' O, Y/ R
  1837. LDX #$00
    + V( Z# I# C& r- C8 M1 m8 s
  1838. A:& O, o4 ]2 K9 i  O' L
  1839. JSR PPUADDR_PROCESS7 x( U% @3 F* ^  P. \- {$ q0 R
  1840. LDA A_STRING,X0 Y/ l. m0 E' R/ Q  ?& t( b5 |& R
  1841. STA $2007
    - W8 N8 K8 g( _
  1842. LDA #$003 @: u9 b1 H/ Y1 T7 N# x
  1843. STA $2000
    / p3 h0 @+ Z! \" [4 m' o* b- u
  1844. INC $BA
    ! Z/ d1 T* l1 K0 f6 ~  N' \
  1845. INX. i" ^3 c* N. u
  1846. CPX #$03
    9 m5 [, A: E: E: M
  1847. BCC A+ s2 l" ^% c0 F6 l8 y! r" m
  1848. RTS
    " \" R8 \2 }- H" \2 h3 j* W- i

  1849. * P0 w0 @* p% i% V  F
  1850. ( x- t! x! B) ]1 W( Z9 g5 P
  1851. UP_PPU:
    7 H; x# N3 ~) s* ?' |- J& {2 w' z
  1852. JSR UP_WRITE
    - i+ F" ^6 \# R0 R. P" A( b
  1853. RTS
    1 _% w" e+ e: j# i/ [  G

  1854. 6 n6 c5 M" ^) e, [
  1855. DN_PPU:
    1 k6 d. o# T  N/ P  o+ Z- ]
  1856. JSR DN_WRITE; X+ }- l' X9 s, p$ f
  1857. RTS6 I$ \) q# p5 u& ?: @; y
  1858. 0 S5 C! c3 J4 b( O! M" t
  1859. LF_PPU:" Q6 u% N* v2 E/ q% @& l
  1860. JSR LF_WRITE9 v) T. t$ w' z$ p
  1861. RTS
    7 T2 ]4 M7 q; G1 J- E1 h; D) w
  1862. ; v* U8 l# C7 R+ x0 C  C& F0 u
  1863. RG_PPU:
    . Z5 a! z, a& i% o% G
  1864. JSR RG_WRITE. i- O3 ?  B3 N* W7 L
  1865. RTS5 v7 d5 C4 j- a3 [7 r7 a4 M

  1866. 4 g% a/ h: X, e
  1867. B_PPU:
    8 w. N7 g% W7 F9 b9 v8 [3 a
  1868. JSR B_WRITE. _: U9 J% S( V4 D0 V8 \
  1869. RTS. @# B  E( N. M$ d# j0 h
  1870. , K" G' |! ^! k( w# \# A  r
  1871. A_PPU:
    . ~' g( f6 P* `0 ~
  1872. JSR A_WRITE
    ' O: l$ o9 W2 M3 H/ L, @8 Z
  1873. RTS
    : @# }" v: l# d+ I3 }& J
  1874. 9 O% ]1 Q( Y' h2 O7 ?5 n& [
  1875. 0 Z* u8 P8 K0 P) J% A
  1876. PAGESELECT:
    7 W; _" }, M! k- H
  1877. PAGE0:
    7 D- @& X& g# e1 C2 I$ G7 _, _
  1878. LDA $07AA- H0 C+ e, s/ S7 V$ U4 m" o9 e
  1879. CMP #$00
    , {  }" E* d4 N4 P4 b% |7 l2 i4 N
  1880. BNE PAGE1
      p% d/ U2 t; y' {$ l/ o3 y7 `
  1881. 8 s, s2 a" a( n( X$ P
  1882. PAGE_00:$ ^  S0 `% t7 w: z
  1883. JSR BULSEL_PPU! c2 b5 U& {6 l4 C# X" `
  1884. RTS
    / H, A" r' u% z) \/ a0 T
  1885. ) f2 ^6 C6 g8 L6 Y2 B6 [
  1886. PAGE1:1 l  x3 L; N/ O  m  ^' _2 r: R( v
  1887. LDA $07AA# t. T8 X' K* z2 }8 Z2 i9 p
  1888. CMP #$01
    % j( }1 s5 L6 {% q+ D
  1889. BNE PAGE2
    3 ^3 X+ z* v4 s
  1890. 4 e# W# ?9 O# C5 t9 k+ U& G
  1891. PAGE_01:& e4 v5 i9 s. d6 Y
  1892. JSR INVINC_PPU
    2 n9 I( T: C4 @. l8 I
  1893. JSR LIFELC15_PPU! e9 L: d1 {4 ~2 A5 S$ L
  1894. JSR DOUCON_PPU
    8 N3 h* K. h2 O# a
  1895. JSR KILLON_PPU
      M9 M) M$ g/ p! J
  1896. JSR SKYFLY_PPU
    8 G1 ^( M. j5 U/ R# `( x
  1897. JSR LIFELOW_PPU: J3 S/ {; i7 P& [3 ?( U
  1898. RTS
    / T* s/ ~1 l( j9 L* O% G0 R3 I" N. M
  1899. * C. [# p3 i( G- q
  1900. PAGE2: " B, f# l! p! e' e+ `* V( u1 ^3 \
  1901. LDA $07AA
    - n  U7 g8 x: @
  1902. CMP #$02
    # n9 @$ r9 Q  V( D! ~
  1903. BNE PAGE38 r) p6 W# w) A9 @

  1904. 8 S) D" t2 {6 s2 [- \
  1905. PAGE_02:
      {# H9 O, X$ V8 u/ z
  1906. JSR BULADD_PPU! }3 z( i9 q6 z, I3 d- i) @1 u
  1907. JSR SKINGE_PPU
    . c2 @. M( B+ D
  1908. JSR BULMIX_PPU3 g" d4 n1 x1 t8 ]2 V8 ^( F2 B
  1909. JSR ENELOC_PPU8 i2 D/ z& k, q
  1910. JSR FOCFUL_PPU: C/ W/ B+ ^7 ^) j! N  P; R/ j) k. v
  1911. RTS/ Y9 M# v& N' [$ _- b4 e' d
  1912. - K/ i4 O6 l1 D6 Q+ f% r/ f
  1913. PAGE3:
    4 e# a- L/ [- ?( k- Z) e
  1914. LDA $07AA1 y# n/ X/ h. _1 ]; U1 b
  1915. CMP #$03
    5 ^3 ~. h( B9 n1 v! ]
  1916. BNE PAGE4
    1 A9 A# ]6 u4 `/ r! i9 [

  1917. - u( Q! [: c. y% ^! S0 d
  1918. PAGE_03:
    ! m+ k" A( G" B) ~  K: M5 F" [, b
  1919. JSR BULCON_PPU+ t1 M6 ^$ T) f! o1 ]) c
  1920. JSR SPEBUL_PPU
    / h- g4 k# _/ R0 R' x
  1921. JSR CLEALL_PPU7 x5 R0 ~0 G; E: S/ E
  1922. JSR HARDMODE_PPU
    $ `3 }7 E2 K  M. T4 ^
  1923. JSR B_TO_JMPSTG_PPU7 K. X% t# I4 _. w
  1924. JSR A_TO_PLAMOD_PPU7 Y7 p& i6 C$ y  |$ R
  1925. RTS% M1 e1 Q" C; ~7 h

  1926. 9 ?+ I* w0 F% I" u
  1927. PAGE4:
    # v8 v% Z. J- [3 x, @) ^
  1928. LDA $07AA7 Z. j$ R2 K. }. o1 u3 Q
  1929. CMP #$04& p/ ^4 K/ x7 C4 K' _- _
  1930. BNE PAGERTS7 S5 J( z6 [# h

  1931. : p8 h! c  \7 p' L% _0 k
  1932. PAGE_04:
    / O# B$ W, m) I3 o
  1933. JSR MOVSPE_PPU' m, ]; \6 i2 C* x: w7 r
  1934. JSR UNLJMP_PPU
    9 J9 E- u# q2 c( I& R% V' I
  1935. JSR DESTRO_PPU) X. P* y& H  P) s4 b
  1936. JSR EQUBUL_PPU
    * `, c. o7 i/ U2 Y
  1937. JSR MOVESPEED_PPU
    : o& N3 X2 o" R2 w
  1938. PAGERTS:
    ( J: E8 V- B+ T9 w
  1939. RTS5 o( p1 x( E1 P) f% k' L6 ?

  1940. * [' }/ S0 O/ R# P+ C+ D& y

  1941. ' G6 a) H) p, r/ o& J2 _* }
  1942. PLAYER_01_STRING:* C) v! r$ `$ z( T- |! K5 S- J
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    , E) e  _5 ?( e9 {; ^& j" f
  1944. 5 e$ N  A, S8 H( N9 [# {, z/ E

  1945. " b6 M' Y6 n7 I8 I( u
  1946. PLAYER_01_WRITE:$ v5 s* H. e) M9 S5 u
  1947. LDX #$003 ^1 q2 B* A, m% \& m; y- o
  1948. PLAYER_01:
    ( _0 ]9 {- Z5 e
  1949. JSR PPUADDR_PROCESS5 _* D; ]2 q- e4 W3 B$ m7 Q/ j+ ^
  1950. LDA PLAYER_01_STRING,X
    7 t, b/ W& \, \( F4 b4 n% H) u
  1951. STA $2007
    ' _" K6 p, J5 ?$ v8 y4 R  `* }. E
  1952. LDA #$00
    * k, j$ T7 d. A9 o: J( c
  1953. STA $2000
    9 T8 w8 y1 d- e- P' n2 w7 e1 R
  1954. INC $BA
    * y" |# k; l8 I4 L8 e* q
  1955. INX
    / I& }4 a% J7 X' `) h
  1956. CPX #$0A
    5 _$ }: o0 j( c8 N8 v
  1957. BCC PLAYER_011 f. U  ~3 P. ?3 m( R6 Z
  1958. RTS/ q' ?) Y7 M$ c- I- h/ i0 i
  1959.   D, L9 {) x+ @2 h) U
  1960. PLAYER_01_PPU:" b: j/ b: i: \4 z% L
  1961. LDX #$00# R6 X" T7 j6 j
  1962. LDA #$64
    : `1 Z- G/ k1 n7 {$ q5 D/ }
  1963. STA $BA! k: t2 H# P0 r* s9 d+ c; Z
  1964. LDA #$20* k( n3 C/ n2 D& Y
  1965. STA $BB# s& E7 K* l; p$ ~
  1966. JSR PLAYER_01_WRITE
    9 w  K" R# K9 k* y& ]& j1 z
  1967. RTS
    $ _, Y( g0 e& J9 A9 y9 R
  1968.   ~: E% @  V7 \8 y' w- q. N
  1969. PLAYER_02_STRING:  M, ~+ ^  @& Y, I  H, K' t
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80. j" b  t5 a0 v8 B, H( a' ~+ _

  1971. % h- R( W4 K9 V) i% ^" [3 U/ W
  1972. ! ?5 S9 A4 g$ |; w( K" G
  1973. PLAYER_02_WRITE:( t  d& ~! ?* }. B2 k5 o' a4 A1 ]
  1974. LDX #$001 e2 W/ P( w- Q2 y  A
  1975. PLAYER_02:
    : S5 M6 D! u' _6 X* M! |* f
  1976. JSR PPUADDR_PROCESS
    8 b1 t& ]: u1 f
  1977. LDA PLAYER_02_STRING,X  h5 i* m" r6 E4 L- r# X
  1978. STA $2007
    7 D" `1 k; `/ o* W5 i  u. V
  1979. LDA #$00
      C. ^7 I9 H' o
  1980. STA $2000
    5 H) {  q; N8 P
  1981. INC $BA
    , k8 T6 B+ k( x8 h5 d6 L
  1982. INX
    # R" l; D% X4 @- E5 C
  1983. CPX #$0A8 a, O% A, _5 g5 S8 H0 R$ Q& l0 e
  1984. BCC PLAYER_02
    % Q$ x) c* r9 ], L
  1985. RTS
    " M' E4 V3 D0 n' J9 m
  1986. * X9 M9 |1 [8 i) t
  1987. PLAYER_02_PPU:( @0 a' }; b: A  e
  1988. LDX #$00
    4 [4 N3 h: Q$ u3 L7 [
  1989. LDA #$73
    8 h" z' E+ g+ P5 B0 E( \
  1990. STA $BA
    ' ~; D) R' Q  U; y9 ]5 k9 t- ~2 ]
  1991. LDA #$20  ~) [* O6 v7 j8 a7 `9 L; ?
  1992. STA $BB
    + J8 f! r' D/ ~+ k
  1993. JSR PLAYER_02_WRITE1 D5 \* e% ]+ J  M" d& b% \
  1994. RTS
    - Z# e2 ^! R( b# K
  1995. 6 m# t( f; ^' ^8 a5 X
  1996. PPUADDR_PROCESS:
    & Q- x& y& w  T9 j% f
  1997. LDA $BB
    - w8 l( a7 j" r$ Q: j9 G
  1998. STA $20069 j" U3 G- P( u  h" e  v
  1999. LDA $BA
    / P( m# P9 w7 s, R% u* m( p; J+ O$ e
  2000. STA $2006
    4 c& Q! r( f) b$ d/ x
  2001. RTS* x  M# R# d1 ]5 C3 j  \0 c; ]

  2002. 5 d2 h! X; O% D- f; ?
  2003. ( s9 Y9 g0 P5 R9 k( l
  2004. & P! F- M+ ]) a% e6 e
  2005. ONE_STRING:9 s0 G4 j8 i# p7 w6 {
  2006. .BYTE $99,$98,$8F
    4 w" {. y5 ~* {) h" [8 ]
  2007. 5 x/ e) N: C8 S. B
  2008. TWO_STRING:+ ^: e5 T' \- p$ j) y/ s
  2009. .BYTE $9E,$A1,$99
    - ~! H' G: g, k5 t% X7 M# C6 v
  2010. # l+ T0 z7 b8 N4 W
  2011. ONE_TWO_PPU:
    " ~: d- g, o# y
  2012. BNE ONEWR6 r6 E0 o6 P8 c
  2013. TWOWR:. X" c6 t' h" _6 X/ A8 M
  2014. JSR PPUADDR_PROCESS
    " ?& g- l) C/ O& Z: F
  2015. LDA TWO_STRING,X
    9 Y& s/ K4 z$ ?% T
  2016. STA $2007! L. l4 p( m4 U( O& ~/ E% }
  2017. INC $BA, t2 x5 t5 N' N
  2018. INX
    4 j- j; `2 O  [, `
  2019. CPX #$03
    7 p; J1 e5 s( O  z
  2020. BCC TWOWR8 P8 T+ ?. \& @; @: x# X( G& l
  2021. RTS9 v2 \: I2 k" Q- ^9 p1 j& c
  2022. ONEWR:1 K, m5 k$ U" P% V; V& M: N
  2023. JSR PPUADDR_PROCESS- w9 u1 d& f5 |# a) J9 \9 r$ B
  2024. LDA ONE_STRING,X( G% R: r0 r6 v# k' h! d
  2025. STA $2007) N6 `: A+ @& I7 l$ M2 F
  2026. INC $BA  \3 r* M: e, i1 ^
  2027. INX
    6 k6 z+ \: J4 f* v0 s; }; k) k
  2028. CPX #$038 ~, L8 `3 I/ M  q7 W
  2029. BCC ONEWR
    9 L3 i3 T$ a! J
  2030. RTS; E; e& I* h# c$ j3 g! U
  2031. $ h8 Q- n& M, Z7 x
  2032. MOVESPEED_STRING:
    : n4 n7 z4 M6 m# S# l' J! x0 S
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    " d8 n% @8 l5 a# C

  2034. - @& Y' `& N/ F7 z  G) Y2 j

  2035. : w! Q- ^( c- F, d0 Q9 p2 K+ _
  2036. MOVESPEED_WRITE:
    % Q; U0 z1 `% ?! |6 b
  2037. LDX #$00/ m$ l# a9 p3 t6 E% j# Y; `$ o3 H. S
  2038. MOVESPEED:
      C7 J4 Y& @$ t& x/ O# B
  2039. JSR PPUADDR_PROCESS: G, R3 m; i3 E: e7 O2 N0 @" l
  2040. LDA MOVESPEED_STRING,X
    2 @* g+ h( R( e; [! m, ]0 b. Z% |
  2041. STA $2007# V$ b2 W4 l0 Q3 e
  2042. LDA #$00
    8 s% m% Z* J% E1 j9 ]% W
  2043. STA $2000
    + l: B4 L% |$ W# z) |. Z
  2044. INC $BA# }8 J/ K- {+ C  Y0 r6 k% B& ~
  2045. INX( `3 Q' z) n" n/ ]
  2046. CPX #$0B7 c: F0 D  d* J6 K
  2047. BCC MOVESPEED
    ) B/ `- n' M% U
  2048. RTS
    ; ]8 E" e9 a  c2 c( |" @5 ^
  2049. , F$ S( L; |" V! O) _$ ]2 h
  2050. MOVESPEED_PPU:. H, _1 N" a, @1 D
  2051. LDX #$00
    5 q0 ^+ L; S# U# z
  2052. LDA #$AA
    6 h1 f( }3 l/ n/ ]( Z0 \6 H
  2053. STA $BA1 t$ c* O" @0 R9 _6 H, K" L7 K
  2054. LDA #$22
    6 o+ E! \- S. n! }8 e
  2055. STA $BB, O0 D; g5 X3 k
  2056. JSR MOVESPEED_WRITE0 f  q! \( x; c+ ?( C0 U
  2057. LDA $70030 `! \' h- J8 z3 v5 j: M
  2058. CLC
    8 i4 s6 [( N7 [( D1 z1 @
  2059. ADC #$826 _# D% H7 i& c# [
  2060. STA $2007
    * i6 Y) p! s/ c: a( r
  2061. RTS% G0 p% a) B  y4 }! R* P- |5 S
复制代码

本帖子中包含更多资源

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

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

签到天数: 3030 天

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

签到天数: 2156 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
' q2 Z+ }. r. \) F) k; H) l/ N0 S7 j
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2155 天

[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 | 显示全部楼层
看上去好复杂
回复 支持 反对

使用道具 举报

签到天数: 12 天

[LV.3]偶尔看看II

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

使用道具 举报

签到天数: 767 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 37 天

[LV.5]常住居民I

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

使用道具 举报

签到天数: 174 天

[LV.7]常住居民III

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

使用道具 举报

签到天数: 16 天

[LV.4]偶尔看看III

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-10 16:10 , Processed in 1.196289 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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