EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
0 S/ S+ X. J( _" s$ i# g2 p9 }# b% H* Z* [" p2 _! N% _3 q  P9 u
     [FC][魂斗罗旋风终板END暂停显菜单]
9 q# F, \* O8 q( ?+ r
作者:FlameCyclone(flamecyclone.ys168.com)
, W7 a& e: y0 k) y& l时间:2016/11/19 21:46:00
3 Q  B" N+ v: o5 `% {更新日志:
, ]/ Y6 t0 z& r
2016.11.19:加入暂停显菜单(共5页).7 w7 a* \% o& e; x6 s
2016.11.12:加入无限跳跃.9 [/ N) d# l- ]0 N
2016.11.12:加入速度调节.
- ?- Y& f, E# @5 v6 K+ S  I
2016.11.11:加入敌我子弹对消功能.* ^$ r$ M4 n& J2 v# D1 l+ L* Z! O  O
2016.11.11:加入全屏闪灭功能.
3 o) v7 D, I2 y0 d7 U( C" k* M2016.06.08:加入全屏瞄准功能.
/ Y% s. n* V0 A6 B. z. g2016.05.31:加入弹速调节功能.) m! |4 B, p8 K* e: M( G" ]3 O
2016.01.01:加入高难度模式.
/ R- H+ b) N# u9 O- o2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
  h/ G/ T, @8 F4 `2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.& ~# B* O' _9 F. \/ D
2014.07.05:双人切换功能优化.0 `5 g4 k4 T4 N) Z6 E3 V3 [
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
$ ^+ \1 B% P6 }( P  x2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.; `* d1 g  I* T- Y2 w+ E. }
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.) J! r6 K+ {) @3 B) j
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
2 M. M' E$ S5 }/ N2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
) W" ?* b1 L$ r2014.02.13:加入自动演示通关." D: C- F) q: W1 z$ v1 Y& E, P
内容:
  Z# v+ ]8 T3 l( T23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
; a5 `4 n3 @6 Z$ H; }* U22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.! S& L# Y% l, _6 V+ b5 h1 _, b- C. I
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

9 E6 Z/ T" R! B9 o9 G20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.
3 X! M7 y6 f* T( B  x4 ~2 E0 d19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
6 G0 c0 o4 |+ X+ Z18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
  `# V$ S# [  N5 L9 S+ G$ u% g17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级." A- O2 Z# ]/ Z' I" [; L3 Q5 G; {
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.0 n# D6 ?; K, W  U% C6 {+ H# l
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
: F& n. w5 b# O) C1 z8 P: U02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.+ j0 h0 ?9 Z. c6 ?) k3 m7 U
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.5 \6 y" _( ]# ~3 x
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
7 c  g+ i% k1 b% q! l. a$ |2 T$ k05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.
' Z  E+ J( J- U& Q06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.# d# i6 h# e* }( v( P9 J! m
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.0 V8 u, x+ Z1 b' K# W% l4 G. ~) d
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
1 _/ j$ V5 _/ x' n4 Y09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色./ P  }' L4 F1 I" T
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
1 v9 z5 T1 e0 |1 f  e11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
' C$ B" [7 A/ Z; F9 U12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关./ G$ f4 w$ o% x" @/ v
13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.) v5 P) e/ y. Z0 {' c
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).9 o& K2 _" O6 x6 y5 c  y
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。
' C: A! t3 @* p: xA.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.# l; v) Y3 q' @9 s# J+ ^/ D5 S: _
B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!* Z8 x" E/ t, |( p* f9 B
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
% Q4 u0 v3 ?1 F  M8 ]2 `' l, H; @& U' Y" ~. G3 h
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
  b5 t5 n- N' A6 K/ G3 l欢迎大家转载,转载时必须注明出处.$ E8 _, O" i/ t, ^' K- s$ C2 A+ t

; |( W# }% r5 `- q+ @5 T3 V
游客,如果您要查看本帖隐藏内容请回复
: E7 W3 R4 N6 F7 H

) i0 ]: x1 O4 V8 B' M1 y+ H& p忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.  \, H7 [6 V8 r3 K: b$ ?8 K
这几天的劳动成果如下:
  1. .ORG $B400
    8 e: X2 V" ^5 @4 K0 ?5 j: A
  2. 9 s5 W. o+ t9 Q; a4 y5 f

  3. " h# B% ^# a  y& w- @
  4. PROREG:6 Z$ z1 Y3 m1 w* Z3 i' I, ]
  5. PHA
      b! ~% x6 T% U5 N' {) C7 e3 o' Y
  6. TXA; |, c8 Z' B& u% j% T+ U0 ?
  7. PHA
    0 L+ \" }& J! T" [
  8. TYA
    7 K% P/ l, E$ U7 \6 _$ v: a
  9. PHA
    % {4 P. M% i. z# d
  10. LDA $254 B* p+ |) U. O7 A0 ?- e& h  c
  11. CMP #$01  n/ L+ K8 O) H
  12. BNE RE! t: U5 J/ O4 {, Q
  13. LDA $010A
    ) L2 v5 L9 t8 x$ B. O
  14. CMP #$00. |3 e4 ~5 f/ E
  15. BEQ P1
    - B$ o$ @# b1 N: G  A# ^& l" Y
  16. + p. o# G% S3 M' f$ x
  17. RE:
    ) e5 z6 h7 l0 ~, x! Z
  18. JMP PPUWRITE7 h8 z% |3 O9 G6 _/ t9 E8 @
  19. + _8 a4 {7 y" ^8 n  w, H, }
  20. P1:                ; 条件判断8 v1 q) X8 r3 @' S) l
  21. LDA $7FFF* d3 _8 M; |8 d) s* }1 w1 X
  22. CMP #$FF8 j0 C; D  ^1 u/ C7 G- S8 l" @
  23. BNE P1RP
    / N& c, U' k, w! @) R
  24. LDA $7FA0
    6 F( O8 w0 I* m# d
  25. CMP #$000 A1 p( m3 N4 m4 P0 U
  26. BNE P1CMP
    % b( ?- A( V; _; l9 N5 U
  27. LDA $2001# t/ J1 x1 a; U
  28. PHA
    / t  I8 q! N# ?: v$ Z
  29. LDA #$00
    8 d$ D, E9 k, _
  30. STA $2001
    & X# {$ L  j3 Y( G& d1 ^( o
  31. LDA #$FF; r5 I1 ?  x( q7 e$ }7 z- o
  32. STA $7FA0
    * u' q) D  K% n
  33. JSR CLEANA
    % `! M  G6 Y" R$ }. t! A# R
  34. PLA5 V/ ]" B9 y5 X4 ^( C, y# k0 }
  35. STA $2001
    3 V7 Z6 y& d$ b! |0 n) s6 U. w
  36. JMP PPUWRITE1 v: ^- K- w. i* M, P
  37. P1CMP:
    7 k1 u( J- d; e! F+ A( Z( `6 A- Q
  38. LDA $7FFF
    % O3 y# r( |6 H' h
  39. CMP #$00
    9 P: E0 W$ e/ M3 J7 W3 h+ t
  40. BNE RE
    / a- L. `5 H. f: G) L3 A
  41. P1RP:' [. M. R: i, Z
  42. LDA $2002
    & _, D( N9 Q$ D5 j$ d
  43. LDA #$00
    1 a9 E# W' J+ W5 Q
  44. STA $2001  b0 y' O6 R# @) R  X# |6 \
  45. LDA #$FF
    1 I% a# T; Z( U4 R) b) k
  46. STA $7FFF) D. O& [# u3 H- N! }( `
  47. STA $7FA0
    ) H3 {8 O, W1 k7 Y$ A5 m3 s
  48. JSR COPYPPU& b6 A3 d9 N/ ~* N6 d
  49. PIRP2:4 ^6 D2 v% S" W: `
  50. JSR CLEANA
    4 h8 L2 m7 V. G3 P& \( [, A% A; A
  51. JMP PPUWRITE/ d, n+ |( X! M/ x# ^5 a/ B5 W) _3 |
  52. ) I) H( i  T1 L, i9 V8 [
  53. COPYPPU:" g& N3 ]( z' C6 X
  54. L0:( b% W% _) ~( G* s, }" b( K
  55. LDA $30/ `9 ^( f5 b7 H, H& ^: F) t. F
  56. CMP #$02
    4 m- R; |& k2 d# ^0 m7 y  Y+ x3 K
  57. BNE UNPROFC: Y: j3 @$ f3 W9 X1 M
  58. LDA $FC. f4 T6 ~% `6 c4 P
  59. STA $7EFC6 O) }8 Q. q0 a
  60. LDA #$008 r' _: h4 V9 @8 a2 T
  61. STA $FC
    & H! i. E* ?; @
  62. UNPROFC:
    ' t# H+ c: N+ U9 }) c' G
  63. LDA $FD5 t! _0 Q& Y* D' e; ?% c
  64. STA $7EFD
    ' r/ a2 U5 q% V% d) @
  65. LDA $FF
    + i$ B8 [3 P6 y, d" ~' ?9 `
  66. STA $7EFF( I  L+ ~1 }" h3 J2 |
  67. LDA #$00
    5 @1 @( J. W8 i2 o2 W& T; s( B
  68. STA $FD9 d/ d7 o; T; K/ `2 t2 `
  69. LDA #$B05 w' ?3 _- R; z) n
  70. STA $FF
    ' P' ^) }: [* Z9 z( H  D
  71. LDA $07C1
      L3 r: C& }# e0 f' E
  72. STA $7FC1
    9 H' h7 B2 E3 i" R
  73. LDA #$3F# X9 \; n5 ]* C5 p5 B  Q
  74. STA $2006( k6 y& P3 Y  ~5 Q8 U$ B; ?
  75. LDA #$01
    8 o0 D. e6 g- n7 H
  76. STA $2006) q1 N$ C7 E3 Z
  77. LDA #$24( @* c, P" z3 w4 G" u9 m
  78. STA $2007
    " i% ^# w, `8 D; @$ p( h- A. \
  79. LDA $07F6
    - Z* Y* }7 ~* }% j& X+ E
  80. STA $7FFE8 u8 j$ a8 M7 ^, g. j. C' \6 r
  81. LDA $00FE6 v9 a* c$ M6 `5 R
  82. STA $7FFD. f$ k8 u9 w- y% d4 `, L
  83. LDX #$00: X8 o! @1 u3 c# w) N! E
  84. LDY #$005 g, G' w+ R* X8 D, N& R
  85. LDA $BD
    & u# P! j/ q& @  b8 ^
  86. PHA
    6 `$ W- k! A) z
  87. LDA $BC5 i( n" n$ n- |8 s6 X
  88. PHA) J' c7 O. f  ~0 a# f
  89. LDA $BB7 L) {( A5 V4 ]/ k
  90. PHA+ }0 [/ n8 K5 O- J
  91. LDA $BA
    ; b0 n3 o; ^  _5 W1 B: l/ c
  92. PHA
    9 D2 Z4 @: U  h+ D" r) w
  93. LDA $B9% [5 U3 c7 {- y1 F) I4 X  `
  94. PHA
    1 |; j  x0 q. d. ^" T/ F
  95. LDA $B8
    * v! h6 W$ ]; E0 ~! D1 J
  96. PHA# g* k! `6 _% a" t" _% r  v5 O
  97. LDA #$00  u/ U9 Y' J1 e# {; w" \
  98. STA $B88 ^. w- ~- h+ h6 y
  99. STA $B9
    . |* a  b4 b( }7 e6 Z$ ]0 B2 \
  100. STA $BA
    ) a8 k- ]% a& _, F
  101. STA $BB
    " @5 ?0 H* p; U3 ~6 w
  102. STA $BC
    : O3 u* I( y8 n, G3 [/ J: \; }# F
  103. STA $BD4 H# n, X7 a" [( ^( x+ R
  104. LDA #$00
    ! E# ~, f& z6 F/ L) o
  105. STA $BA
      E. b6 u8 J* T) D
  106. LDA #$20
    $ n0 H5 d0 z* H9 y6 S
  107. STA $BB
    2 D1 A0 L* Y$ T) }# i6 s* i
  108. LDA #$00. w) K% h# w5 \0 O
  109. STA $BC* Q7 F. m1 T2 G
  110. LDA #$609 f; ?5 i  x8 m' }  P* c
  111. STA $BD
    & m5 Z1 I; H- m# I% _
  112. 8 X6 t8 o& {3 |' C
  113. L1:                ; PPU复制
    . E, l$ F: [* X, S7 ]. j
  114. LDA $BB; y! w( k( x: g$ x9 _& k0 f
  115. CMP #$30  Z' q1 \( }1 L! V1 y0 U
  116. BNE L22 k' B  u; D! g) h8 f) W
  117. LDA $BA
    $ X/ W# F( {& |2 q+ L
  118. CMP #$00
      _$ o/ w: _5 U5 X$ r* a3 t5 i
  119. BEQ PROADPLA
    . ^3 a6 J) g2 x1 N! o
  120. 6 s3 V/ y. D+ Q" E% p8 {4 d% ]
  121. L2:
    : v, D4 B+ G0 X2 D5 B& v) E
  122. LDA $BB
    5 [7 {$ v- X" l7 [# _$ y
  123. STA $20069 w6 }# ^4 O1 ~
  124. LDA $BA
    2 A+ h8 C& A  I4 B- Y7 P. g+ I
  125. STA $2006
    ) b4 S# x- R' G9 V
  126. + k$ E& ]) |- F8 \( F4 m
  127. L3:
    4 m1 ~" V5 ?; r" d
  128. LDA $2007
    , \6 D: S% u( h2 e* L  {% ]
  129. LDA $2007
    9 x# ]- F7 W( ]- A% l& _
  130. STA ($BC),Y
    / o4 |$ a5 {) I+ [# W2 Z& }+ i' t4 A

  131. # `" J4 j, z. o( t5 q2 V. j4 ]
  132. L4:
    9 A! G7 `5 z4 t. E7 r2 E! `+ l
  133. LDA #$00
    ; O8 Q6 M: M, R; Z5 j( C
  134. STA $20000 v" }0 `- p* _$ a
  135. INX
    4 N$ |; }5 Y( M  R( @5 B
  136. INC $BA9 W7 O* Y& P+ U! y
  137. INC $BC6 V! h7 M7 L# O" [1 t* ~- v
  138. CPX #$00* Q& d& P5 \2 q# `1 g9 b
  139. BNE L1
    " P9 G- P/ L1 d  S9 K, a
  140. INC $BB0 W/ o! f2 h6 K& L
  141. INC $BD% I2 Y7 R# c4 c7 c6 _- y3 y
  142. JMP L1& ^6 \) ~  e1 }/ ]0 V
  143.   B9 w. `9 t  [
  144. PROADPLA:                ;出栈
    8 W7 r) T8 s0 P- x/ Z
  145. PLA$ `2 [) B* Q" ?; c
  146. STA $B8
    1 r! P9 ~0 C: g' k! b8 I
  147. PLA; E5 d+ s, S% C1 T
  148. STA $B9$ |; J& H7 a; {- S7 f1 c/ ]2 P  h
  149. PLA4 u( n: t9 k; t, T7 X% h% J) X
  150. STA $BA
    % S( N# O; r& w* z2 N+ h
  151. PLA
      [# `( ]* m2 ]  }% R. g& s1 `
  152. STA $BB- {/ M9 o( l: G* @
  153. PLA$ }0 _% T/ o! x2 ~7 {9 X( N  |+ Y, L. c
  154. STA $BC4 O7 F- B5 g& B, F$ B+ I/ l
  155. PLA( H1 J* Q5 u! m" U4 ~4 E& k! h
  156. STA $BD2 o( d6 u& h( f1 J
  157. CPRE:
    0 ]0 h2 X; T7 V7 ?$ s. K0 k
  158. RTS
      t4 B3 d7 M1 o

  159. 4 D. F( K0 Y& @
  160. CLEANA:                ; PPU清空
    $ n2 v2 j1 P& `% p1 T
  161. LDA $BD
    ! t& b5 a& b1 X$ R) ^# r
  162. PHA
    " `- K# [- u2 z! ^, m: ?7 M' j( v3 X
  163. LDA $BC
    2 |  g' X/ W- |" W" o
  164. PHA
    / O) P3 C1 f' P  N: [4 \* I
  165. LDA $BB
    & w. R5 M3 ^  s; V
  166. PHA
    0 m* ]# {8 q* C( V, {6 s! j
  167. LDA $BA
    + w& }7 O, d" v8 i8 @& N
  168. PHA
    3 a: ], Q% t2 i  a1 y: X$ S$ {; K
  169. LDA $B9' @$ g, A/ H% n
  170. PHA' o! ~0 V" m& M( ?
  171. LDA $B8
    * w6 O8 J& }# W
  172. PHA
    ( g. Y+ i2 j+ u/ n4 x
  173. LDA #$00
    - I) R' Z6 G& U% P# _# \: m0 O
  174. STA $B8$ x. h9 I2 u2 a' y1 \) B8 F% Z
  175. STA $B99 d/ Z. T3 N* k- M! U  C
  176. STA $BA. p. }; c. R6 P8 I. [! O
  177. STA $BB
    0 D! Q- P  X" V5 o
  178. STA $BC
    " A+ m4 A1 q" \! `
  179. STA $BD
    , X5 d7 t1 p+ q& s' |5 n
  180. LDX #$00
    * V- @+ E  |6 Y  o' Z9 N: X* B' f# `
  181. LDY #$00
    * V3 y+ J# K) N' s4 x
  182. LDA #$007 {) C% p8 y; w. h  R. C6 H) A
  183. STA $BA
    8 d+ O9 E" n  ?! f# ]2 }
  184. LDA #$20
    ) R' R4 h  N- z) W0 }: y
  185. STA $BB
    5 t4 H) \/ J$ O3 Z' ^
  186. 9 a2 b6 S# h5 u! V8 E0 V, ?
  187. CL1:
    " o7 i; d3 A/ V& |8 h3 ]+ A
  188. LDA $BB) C/ g8 D3 s7 C# v; Y* }1 w
  189. CMP #$309 z) c3 W2 T6 B- L  w4 X, G! z1 h
  190. BNE CL2$ m! B: ^; c( {1 {% B; }
  191. LDA $BA, \' r5 Q$ c4 f
  192. CMP #$00
    9 s/ M6 s9 L6 O* {! v) I
  193. BEQ FREEWRIYE7 l9 L+ h7 G7 `/ k

  194. 9 T, W2 p2 a/ O
  195. CL2:  L; s( ~0 e8 ?4 B' L
  196. LDA $BB
    & z9 Y! Y7 R6 ^6 I5 L% m; P
  197. STA $2006
    + B7 ~# ^" q) |1 r' x+ ^. U7 Y
  198. LDA $BA
    ! \! J' a  |* Q; w6 M  Q3 R
  199. STA $2006- I4 `4 k0 \& F1 O" l

  200. & V# j5 Z0 _1 ], p$ b
  201. CL3:
    ) H. F% }! J( g2 p
  202. LDA #$000 o% k# w3 K6 z
  203. STA $2007" F% s- d: E3 U% W  K+ n' D2 M
  204.   t7 p/ e& B% y. A# T7 c
  205. CL4:
    ; @$ t0 I- r7 `2 ]& n
  206. LDA #$00# J) H# u* n& S/ g
  207. STA $2000# R+ z( R' o. V+ `0 f3 Q  T6 J9 y
  208. INX
    $ R& p, `  o: B* A4 z# S
  209. INC $BA
    0 C* s: c7 M$ K; k) y( \0 I
  210. CPX #$00
    ) f  C6 V# J; H5 z
  211. BNE CL1' f* G# }, T/ f( k* P
  212. INC $BB
    8 x& s/ a  `  w8 R5 c
  213. JMP CL1 $ r" }9 z3 X4 b9 w' J  G9 u

  214. - {' c: t$ i( U4 m

  215. * g6 d) c! ~/ h; H4 ~9 S
  216. FREEWRIYE:, t4 e, |, ?' E/ m- _) M
  217. JSR FREE
      N1 o* r  ?/ u) \  i  o

  218. , q8 Q0 i9 [% _% F

  219. 6 `% ]+ o0 z. U4 V5 Q  z! l0 q
  220. - }( J1 ~3 i5 y) D: M. {9 b9 I2 N
  221. % l1 B% K! Z- ~' u" Z

  222. 7 r5 X% B8 b6 K
  223. CLEANF:                ; 恢复现场7 d4 G* h  R$ e4 ~; v+ N. |  N
  224. LDA #$081 ^/ J& `* e% X: u3 M
  225. STA $FE
    # b; w/ m; j5 r# d
  226. LDA #$00$ |# @% {" k4 g+ F5 m' m
  227. STA $07F6; `2 Y. N5 U4 l& v: M  D
  228. LDA #$24
    4 m; _* W8 D' L; ^
  229. STA $7FC0! ]% C* p; q: e9 e0 x% D) z% p
  230. PLA0 V' o+ E' g- I: b% Y
  231. STA $B8
    - d2 b9 N: v9 L
  232. PLA6 f! q% i' U! j3 f
  233. STA $B9
    , j+ L) m5 B. v- I9 t& d* O8 ~
  234. PLA
    - Q, F  U: C' g8 f; f/ |$ u' {# ]
  235. STA $BA
    0 y" W- ?, [; N% B! O8 \" X+ q
  236. PLA
    . F, \) Y' q: d8 J' N: t6 q
  237. STA $BB( L- J5 b1 Y5 }6 k& u
  238. PLA
    - {- A, k# `, S2 |! ~) C- V  R
  239. STA $BC' h- f' A8 }& I. C( v; s" I
  240. PLA
    2 b7 N& j7 L1 X" ]/ t- d* {
  241. STA $BD
    0 o' `3 Q4 L7 l! w, O5 V
  242. CLRF:
    ( z5 R8 _9 k. B6 i$ U+ g
  243. RTS" g/ e& `, ^5 n$ \

  244. 1 C1 z4 K, ~1 i& q  V( q8 ^
  245. W_DATA:
    + \8 Y- B: y# }! S6 `3 D
  246. .BYTE $00,$01,$02,$03,$04
    $ N) i: |: m  e' S% o
  247.   
    , E/ B9 t/ A! B
  248. W_PPU:" ]' U5 ~3 ?1 [# y, {
  249. .BYTE $98,$97,$90,$9D,$96- J2 `4 w6 V$ z  n3 X' K
  250. - M8 E0 D8 a' y$ {  f& }2 i. @
  251. P1_STRING:
    , Y3 B# g2 _( }  i
  252. .BYTE $9A,$82,$00                ;"P1"
    2 t# J! Q) C+ g/ n  c; I* x
  253. - e* b2 [8 @7 ?
  254. P2_STRING:
    ) h8 S; g6 x) ?" u+ h
  255. .BYTE $9A,$83,$00                ;"P2"7 C' d9 V6 C8 V' e3 G7 i3 G# |
  256. ( _" N0 l2 }  F; h4 w
  257. WEAPON_STRING:
    ( L# ~: u1 D, c. \- f
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    ! W3 I/ y" _5 J9 H: X8 S$ @2 `

  259. ( b3 c% v. W. k0 }
  260. RELIFE_STRING:
    2 k6 p8 P9 N; P; F
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"& C  E. d& }. Z) E+ w, J
  262. - \* y; O9 m- n* O4 {$ }, {; R) \* G
  263. P1_PPU:
    $ b! P# J) E& ], s
  264. LDX #$00
    / J1 U9 U% @# [0 m/ h2 @% t

  265. " ?. T% b2 z4 K% Q0 O8 s
  266. P1_PPUW:. C  |! R) }: J3 k
  267. JSR PPUADDR_PROCESS5 b4 r  v8 W  m+ ?& b4 K. F% H
  268. LDA P1_STRING,X
    $ a) U4 m4 O1 k) S0 P
  269. STA $2007
    " H0 {4 d$ M& b+ B; a2 K" N
  270. INX
    ( N. z6 g' M  m
  271. INC $BA; t5 r. Q! I# @+ R  @2 N9 b! Z
  272. CPX #$03
    " u6 M! c* F. q' l' T3 P4 q! {
  273. BCC P1_PPUW6 ]( X* l% `4 t4 r# ~/ a+ z* @
  274. LDX #$003 E. B1 L  k' i& E
  275. RTS
    # Y/ c1 k) {8 b: r9 X1 |
  276. : z& b& ?$ g5 Z! @+ u9 T! N. s! R
  277. P2_PPU:
    5 s- H/ ^( y% R; M2 B5 @
  278. LDX #$00
    . s7 g5 @4 A$ x  ^) {: a2 q. m! _

  279.   t9 f  n# `9 |3 l: \
  280. P2_PPUW:
    1 r/ Y+ h$ d) ~5 z
  281. JSR PPUADDR_PROCESS% }/ c3 X( L: {: f
  282. LDA P2_STRING,X/ P' N& Z$ H9 F# u
  283. STA $2007- L1 h1 {! ^+ A; d- S
  284. INX$ b& R+ P  d' d
  285. INC $BA
    3 V3 C6 P& t- [
  286. CPX #$03
    0 ~' ]! P, R6 z, y7 y
  287. BCC P2_PPUW* L- y6 l! a3 d8 @( ?2 n# H% |
  288. LDX #$00
    1 B0 X8 d' j- i
  289. RTS9 Y% x5 N7 s' m5 j9 ], a
  290. 3 V- Q. T- u9 X- i

  291. 8 }% D+ s; V% j) A
  292. LDA $BB1 I4 q! `( Q7 T: k
  293. STA $2006
      _! t$ u, ]; N' k
  294. LDA $BA
    $ i# ~+ z% P- A- c1 k+ {
  295. STA $2006; Z2 v. U5 a3 _7 C
  296. RTS; r' p8 \( E1 F
  297. , T: [8 h4 w! }6 U' |- k

  298. # F! [4 B( U6 S3 k1 n
  299. : H; O# O1 ^( |$ \% q
  300. PLAYERLIFE:$ g$ c( C: A: q$ H
  301. JSR LIFETODEC* j2 `7 v  u; E  s/ H, ?
  302. LIFEPPU1:
    ) L4 r+ O3 O& t/ r
  303. LDX #$00
    / V: [0 s  S" t0 k3 V
  304. LIFEPPU1RE:. H) H$ T+ @  m! z8 j; q
  305. JSR PPUADDR_PROCESS
    ( ^- h% C7 A- d: G) O" l4 J# \6 Z
  306. LDA RELIFE_STRING,X
    3 b' x. a. ?  [3 S
  307. STA $2007; ]/ m2 n$ n% v0 m
  308. INX
    6 E" k$ B) O5 X
  309. INC $BA3 x) B" ?( G: }$ E
  310. CPX #$07
    5 e7 I0 J+ R6 n# M; {
  311. BCC LIFEPPU1RE1 K- O7 B; O% ^% B

  312. * r* w$ R  I- J: }9 x
  313. LIFEDEC:                ;生命显示写入& n/ w5 O0 n6 j3 Q) o- t: x
  314. LDX #$00
    , `- X; S9 A( [6 k/ B- c
  315. LIFEDECRE:
    5 g1 D( P/ G# N( h0 [
  316. LDA $7A03,X6 T2 e/ h( d- t3 W, Y* m" ^" n
  317. CLC! q# q. q0 t: I5 E- [
  318. ADC #$81
    ' i4 [8 x1 E  T$ A! |: A+ [! l
  319. STA $2007& S7 a$ z, I) |( J, _
  320. INX
    , d8 m' W8 D2 J2 x8 z) n
  321. INC $BA0 L/ j# h9 F! [2 J( h% Q% H
  322. CPX #$03" Y0 r% u7 B# f; q' J8 `
  323. BCC LIFEDECRE: B# D9 u2 S% _( u0 D! L9 A. K
  324. LDX #$00. A, N9 d7 M8 n, ]) @
  325. RTS
    % f$ {# f1 x7 _7 g/ c& \

  326. $ L+ `3 B! v# X& D
  327. LIFETODEC:                ;十进制转换* E) @/ V" v- j7 |
  328. LIFEL1:        ;initialise) j4 Q- `, z! g/ R' K
  329. STA $7A00        ;$7A00=F3
    & K8 Y) r& z8 W1 N
  330. LDA #$00- U  \8 ~" Y  k0 D3 E' `
  331. STA $7A03        ;$7A03=00
    4 W7 j* k# g4 y  a9 A0 ^
  332. STA $7A04        ;$7A04=00
    . b# Z+ m) X9 L
  333. STA $7A05        ;$7A05=00
    % T" Y+ h. N, T+ U! a# p
  334. LIFEL2:        ;copy data $7A00 to 6001
    + F) }3 R5 [% n- \  b
  335. LDA $7A00
    ) i% k2 ^9 N# N
  336. STA $7A01$ R1 G' L" }6 p$ v  `8 H9 R

  337. * I# h( t& W* q- F& A- f
  338. LIFEL3:         ;hundred
    * C# f0 }, y( p5 F+ l
  339. LDA $7A01
      |3 w: z! t9 ?
  340. CMP #$645 e( ], m; ?7 J8 i& h
  341. BCC LIFEL6                ;$7A01<100 goto L6, U( X/ U9 K* `# E# F5 u9 P
  342. LIFEL4:1 Z8 j) K4 M. _/ M" S* U4 ?; V- {
  343. LDA $7A01
    # T0 z& N9 C% a/ P) @
  344. SEC: p/ A, j) ]& q1 @6 S
  345. SBC #$64        ;$7A01=$7A01-100
    ; M+ {1 a7 f' W. }
  346. STA $7A01% h/ _7 L6 L9 y) ^7 g) W, p3 N+ @0 ~
  347. INC $7A03        ;hundred++
    ( C# g) R( W/ y: q% C
  348. LIFEL5:
    8 Q# \( k7 w" \' ~
  349. LDA $7A01
    6 g: ^) O0 s, O: u5 n/ s
  350. CMP #$64
    : t- U& c' T8 l
  351. BCS LIFEL4                ;$7A01>100 goto L4+ M: c( r8 c  T7 \

  352. 5 g- n7 m* v( x7 I
  353. LIFEL6:        ;decade. ]; {( V& m) n) F
  354. LDA $7A01
    0 c4 q0 @& l( r
  355. CMP #$0A
    5 u, u- v6 u' B0 V$ I
  356. BCC LIFEL9                ;$7A01<10 goto L98 @5 Z: f  @8 _: n6 H/ y2 Y9 U
  357. LIFEL7:       
    " P+ s) U' o# k/ ~3 n; v
  358. LDA $7A01
    4 \& j7 E0 e9 P
  359. SEC
    0 R  c4 T1 A9 I; G6 f5 h$ H8 K1 ^- U
  360. SBC #$0A0 ?7 e( M" O" [. k7 C
  361. STA $7A01        ;$7A01=$7A01-10- z# }# g: N  u% J, d, N9 O- z
  362. INC $7A04        ;decade++, e, g  b7 b+ D$ y9 `! {/ Z
  363. LIFEL8:
    ' G5 }3 C/ I& w! B1 |( U
  364. LDA $7A01
    7 c$ M# X, K3 i6 n: m
  365. CMP #$0A. U* ?7 H: `+ g7 g
  366. BCS LIFEL7                ;$7A01>10 goto L7  y9 h; ?  h" N. ?
  367. ;unit
    5 V3 j2 j& |" z
  368. LIFEL9:
    3 ~$ Z# D: b# c/ q! _, ?2 {# C
  369. LDA $7A01        ;$7A05=$7A01
    " x$ Z6 y7 {' ^, i& `& @4 T: \. X
  370. STA $7A05        ;unit( o' X. f# z& D* `3 K: d
  371. RTS        ;return
    ; h2 C9 x. |' K% Q
  372. ! I9 o8 R: Z# J
  373. 5 _0 t* }/ i) r1 U9 r3 @
  374. 2 ]& U% A* Y' D
  375. WEA:                ;武器ppu写入, J" @# L$ \/ f0 E
  376. LDX #$00
    , O% f7 X, ]% U. U
  377. WEARE:2 h  E' D" G" e" G
  378. JSR PPUADDR_PROCESS+ h+ v5 ]/ s' f8 f/ g
  379. LDA WEAPON_STRING,X9 l: b  A3 @! k
  380. STA $2007- O% W; t$ ]" O- Z' @
  381. LDA #$00+ f8 b# q$ l& b8 w3 H
  382. STA $2000
    / }6 b  |& P8 P8 c- U3 _
  383. INX1 R( A3 D3 S+ ?0 N1 e% M, _
  384. INC $BA, O( @2 x2 a+ y2 g! [  y2 v/ A1 F
  385. CPX #$07* s; P& ]1 T4 @1 o, K9 K
  386. BCC WEARE
    $ {' S% V- d9 x, S
  387. + A* M  A: u0 X( R- |, v
  388. READ_WEA:) h1 P3 X: Y3 x( l7 P3 P9 p: A+ K; C
  389. LDA $B97 j, x5 m. Q4 d# a5 X& Q+ ^: _. o
  390. AND #$10
    % D- s6 n. _: c# D9 M+ V
  391. BEQ NWEA
    7 {. F- O! I/ X0 o
  392. SWEA:) X$ A/ D; z! }' i! n1 x
  393. . a" |0 C8 b3 x( s( X, ]1 S- [
  394. LDA #$9D
    0 J. m! J* E' m/ [
  395. STA $2007
    6 f- O% z. r( P' v0 {/ U
  396. LDA #$00
    9 e" c" u. l/ ]% W
  397. STA $2000
    , R9 O$ W" ]! V4 y2 v! P6 z& r
  398. INC $BA* v$ C) l  T4 T- q
  399. LDX #$00
    ) F% z/ L% e1 T- Y
  400. JMP WEAREAD
    3 u" o$ y4 q1 e6 q9 v
  401. NWEA:
    4 W+ R9 g8 W0 ^8 [) J" \

  402. 0 F% ?+ h2 s6 \/ _3 x! F
  403. LDA #$8D8 H! D) K# }  i$ d1 l" H
  404. STA $2007
    2 U( K8 R; ~) f' }8 {2 i4 r- J
  405. LDA #$00
    7 Q; ?, ^: y7 X- E- X
  406. STA $2000
    $ J6 s1 s1 {- Q' S
  407. INC $BA4 c; j# c* S4 t0 C
  408. LDX #$00
    9 X& o' M8 E$ T4 a8 j
  409. WEAREAD:
    - {; @( Q8 s, w; g' z) r6 Y) n
  410. LDA $B9
    " m% `# h2 i/ L  J: J
  411. AND #$EF
    - z3 C1 U8 f; w* b: T/ k1 }
  412. CMP W_DATA,X
    8 I: n2 g5 c$ y, C: `
  413. BNE WEACMP
    $ W$ p5 z2 {* G9 e) n& T  L
  414. & u& R& Z3 ~+ B* J  t
  415. LDA W_PPU,X
    ; }: c, Q9 V( i& R/ i( r. f
  416. STA $2007% R# D- j; v/ X+ ^5 M* L/ d
  417. LDA #$00
    ; z$ A6 S. D. l# D. n# {
  418. STA $2000
    ) ^+ B( u. ?6 V4 \

  419. ' Z9 ^$ [( }. B7 X- k& I
  420. WEACMP:% z5 A( {  u- r- [) ?% X0 z6 a( y) {
  421. INX
    2 D6 J, u. X, F+ }" x+ f
  422. CPX #$05
    % _" o! C8 s; X9 L2 Q( P
  423. BCC WEAREAD6 ]" t. \) z8 k7 a& b
  424. RTS' V0 j( m, W& C7 N+ O: b
  425. $ i% C, c# X% m

  426. % \/ i' s' V/ ?. i# }
  427. PPUWRITE:
    " [1 A; W7 a( c
  428. PLA
    4 [3 a5 B* V4 x+ t3 ]3 f8 c1 y/ ?" I
  429. TAY
    6 T/ o' e1 K  \  s
  430. PLA
    0 x1 }, y( E2 Q" |/ d
  431. TAX
    ) _9 G) r# [0 f. `0 ^
  432. PLA8 k, G0 r& K; f6 w1 t# g
  433. LDA $25
    ; H. o, @2 {% a4 E  F$ _' @* \8 w
  434. CMP #$00
    / O7 Y# R) h' q: M2 o
  435. BEQ WP1
    " [1 x# F5 I2 O' c
  436. LDA $25
    % u7 z: @0 ]% S  }
  437. CMP #$01! g* i- ]0 C, h. N3 `9 M, b
  438. BNE WRE. x, N1 [/ b$ Q5 d
  439. LDA $F5,X' ]/ |& K% o' m% D' q+ ?
  440. AND #$EF
    * k+ g7 N# S/ f: B0 j7 w
  441. BEQ WRE+ z9 p( }* F$ |
  442. LDA #$00& Q6 ?: L1 U2 D( R5 Y
  443. STA $7FA0
    , ~% `* K8 @, S9 Y/ V& J
  444. 8 D$ D. X& H' \
  445. WRE:
    . }( O" h& Q9 N3 C
  446. JMP $A000
    / k+ r) t; r" K* Z: F8 ?% G

  447. , \: ]  u: C$ }/ X* O
  448. WP1:, G4 I! G) b. H
  449. LDA $7FFF$ a+ a! ^, @2 J) U" v  w0 W5 a. K
  450. CMP #$FF1 F$ z; C5 |9 w0 O. x% f: q( m
  451. BNE WRE2 t+ E& A& W) K0 M
  452. LDA #$00$ r0 f; r- d3 B" o+ D
  453. STA $2001$ B! o# s) n1 d7 l' W
  454. LDA $BD
    0 r& U6 f2 `( W* h) a: q
  455. PHA7 L) R! J0 [8 `
  456. LDA $BC
      @# U# L. W$ |4 Q; [5 `, h% R
  457. PHA
    ) T: M& J# B+ ]! z+ A5 n% {- V
  458. LDA $BB( f1 ]. K+ i+ x' b$ N* u4 G
  459. PHA4 `/ D1 F9 \+ M5 e" R6 `
  460. LDA $BA+ `5 d. D0 h8 r% B# G
  461. PHA
    , O) P( [5 y6 Z+ R9 y
  462. LDA $B9
    - _; V- I, K! m7 ^  D& {
  463. PHA: H3 F" y8 B) s" y* k: p
  464. LDA $B8
    6 e  }' m2 X7 N9 x: R
  465. PHA$ h+ N; A  s5 C/ |
  466. LDA #$002 }( P# K: n: \( z* R, p; o
  467. STA $B8
    ( R" i- u" O2 }* [
  468. STA $B9( t* X1 T, f* u- s
  469. STA $BA
    1 A% L% a; u/ n5 ?$ B0 p( P& Y
  470. STA $BB
    ! h8 \8 `' {5 r# Y; R
  471. STA $BC
    , f- W+ @3 ]& {8 S8 M" l
  472. STA $BD8 d! K1 h) s( g1 v; V
  473. LDA #$00/ i) ^- y! [8 R
  474. STA $7FFF+ {& I  \$ X$ P  Z
  475. LDA $30
    & A; P7 M/ e7 V& Y) B( t' M- s8 {
  476. CMP #$02& E9 u; R; \* j2 z* X
  477. BNE UNPROCPL
    8 U$ G7 i7 ^+ [
  478. LDA $7EFC
    ! [# G3 {4 P% E1 X! p2 S
  479. STA $FC
    ! A4 p- b- \& Q
  480. LDA #$000 {2 E; J: A, A, ?: [2 k$ t
  481. STA $A4
    : i. I7 @* h- q: s( |! _
  482. STA $A5
    ' E1 w9 H4 U" @, j5 Y$ |. u
  483. UNPROCPL:
    6 y" F  z# ^; M% g9 U. K3 @6 Y
  484. LDA $7EFD
    0 [4 C: U& W: l/ k
  485. STA $FD
    2 s0 r) \# }$ S0 I- U
  486. LDA $7EFF. ^) V, ^7 j2 n' V& Q
  487. STA $FF
    % |! o' @* v& o, ^
  488. ) V/ e. c$ ^! ?* N# s% n
  489. WL0:
    ( q  A9 u) C; Z5 l( U- k- |: A. e
  490. LDX #$00
      v2 p3 a, @/ [: p: ]1 ]
  491. LDY #$00& Y) V; d" E7 ^( N
  492. LDA #$001 ?; a+ H+ a" R
  493. STA $BA. r1 T9 j( ~) t0 c5 @8 g4 x. b
  494. LDA #$20
    7 S/ }, Y  L# F* ~7 K! E
  495. STA $BB2 o) _: R8 }! c1 v0 o
  496. LDA #$00
    : B0 ^# E2 a6 v. b( Z) h. l) ]
  497. STA $BC
    / Y: B& L8 M3 J
  498. LDA #$60
    2 b4 [4 }3 c7 z+ ?. ^/ N' o* K
  499. STA $BD
    5 u) l6 p4 L# h  p# i
  500. 6 B4 H( O: ~" K- V/ e. J
  501. WL1:
    2 z0 t7 P" B% G6 x. N3 z
  502. LDA $BD
    2 h6 j0 k+ |+ s: I2 _4 d9 U
  503. CMP #$70
    * e2 Q7 D9 H0 i( J' F* b: u, V* K
  504. BNE WL26 n  ^7 z2 P" P1 g
  505. LDA $BC& {3 ]% ?3 p1 f8 I
  506. CMP #$00# Y# ?9 {8 u& Z, B% Z
  507. BEQ WLR
    - N" L& A' @7 u# l
  508. / P# q9 y& r6 r, [; f( e
  509. WL2:
    0 \3 h  I+ `! r9 d' U% U
  510. LDA $BD" |5 r& k- y. Z# G' k  z+ v
  511. STA $20065 b+ g# W' G1 K7 W# o$ O8 j
  512. LDA $BC
    " o3 @' c: ~' j6 R2 [' W
  513. STA $2006- F0 \% k* {6 L+ r: x
  514. ! [' G& x3 P. [6 m$ K$ `1 O
  515. WL3:$ n8 s4 `3 w% C% W' X
  516. LDA ($BC),Y
    ; s# `6 \) N. c9 w) R
  517. STA $2007# U( H7 U( |, E1 X7 j
  518. - X* h- ~1 ^/ v  [# _5 K. q
  519. WL4:
    8 r4 b$ p7 X. s" U5 S: l
  520. LDA #$00
    & Z8 d; }$ g' s. f* E/ S9 x
  521. STA $2000( Y2 ]% I# L* V3 V7 o7 l: n7 Z! O
  522. INX% A! X$ L5 i: s/ M! A% x
  523. INC $BA) y& ?$ x& A7 [6 |+ y' u
  524. INC $BC
    . u* I2 w9 B# T: ~' N  f& `! n8 q+ ?
  525. CPX #$000 Q4 Z7 d  Y: u/ t% G7 ]8 ~& f
  526. BNE WL12 A. G' z8 ~& |! G9 S
  527. INC $BB
    3 }/ A) Y- o) T$ @
  528. INC $BD
    9 B8 ?7 o6 G! d& u( X8 k4 X4 G
  529. JMP WL1; C' P3 B/ l+ ~5 o# O# k: V& X7 o
  530. ! O: b0 U7 j- G  z. W; |
  531. WLR:4 }. C. F2 ?$ s4 n$ c) D/ n$ K  t3 m
  532. LDA $7FFE) y! u; V( V" ?  \
  533. STA $07F6
    7 i& ^8 t8 G. k+ R) J. b
  534. LDA $7FFD
    4 u" T# F& ^0 D9 Q; I' g3 |
  535. STA $00FE2 ~* m$ g) {9 {& c4 B/ A
  536. LDA $7FC1
    ! x; w2 n# ~5 _$ W9 x8 e. d
  537. STA $07C11 z4 D5 J2 _7 b0 q/ D, Z. e
  538. LDA #$3F
    . t4 x/ }  b+ J! J3 F1 H9 {
  539. STA $2006
    9 K) ?3 I9 `0 w+ f" P0 f# C2 ]! l
  540. LDA #$011 H2 N0 p+ Y# O2 a
  541. STA $2006
    ! G& A3 t. a1 c3 b7 D' B
  542. LDA $07C1
    6 y' Y) m; F9 b; `
  543. STA $20075 C# B8 ^1 V( `; c2 q, B; s
  544. LDA #$00
    ' |: b0 L# M  q. x1 f
  545. STA $2000
    9 J' t: V6 h' E0 L$ }, A5 U
  546. PLA" _5 [2 v; f$ C6 F0 \4 Y, k
  547. STA $B8
      w  h8 N2 y) ]# Q/ e
  548. PLA
    ! Z5 T8 i) N7 X1 U
  549. STA $B9
    . x/ {' c4 u$ H& w# |
  550. PLA% T0 a+ |* f+ s2 G. a3 Z+ O
  551. STA $BA  ?; R4 Z+ Q) M8 h1 e6 F0 B
  552. PLA
    0 \0 B7 z( K, e9 w
  553. STA $BB
    ( x2 C4 I3 }: `& K) D3 k
  554. PLA# e4 A9 L; ]1 ^7 a' V" ~, b* |
  555. STA $BC
    " W2 R, N  h6 o$ a5 |# ]) l
  556. PLA
    , m# ^, T5 i& A0 k
  557. STA $BD$ o! S- N; I9 I: Z. V
  558. JMP $A000
    & I: k, k( q* A. a1 V# U
  559. ( @1 `& z0 \9 ]- a
  560. FREE:                ; 暂存器保护
    5 |; s* Y3 M. A6 i
  561. LDA $BD
    $ K9 q2 p* U! v3 F2 y2 `
  562. PHA$ b% M/ _$ l: x7 f3 l
  563. LDA $BC
    2 G4 ?" T& Z; t0 }2 D
  564. PHA$ E- h* g6 Z3 n; c( Y8 c  Y
  565. LDA $BB
    + ?$ \" x6 T) X: y# T: C0 Z
  566. PHA0 p7 V' }& B) \5 y
  567. LDA $BA
    & {; @& Y) J! L
  568. PHA6 C! k/ V% S8 {0 l+ e
  569. LDA $B95 I4 E1 C' F1 A6 ^; Z) ]
  570. PHA
    9 s  f+ v+ O+ d
  571. LDA $B8
    ' {2 K! r, r0 \7 h4 ]
  572. PHA
    ) s$ i! a! I; d& X! ~7 e
  573. LDA #$00! X: B- F% T# W1 }, f: ?  [% h
  574. STA $B8! C* E/ K' A3 S" g) G5 }. {3 w  q
  575. STA $B94 \; S# I. M; C  M! B6 a5 f5 u8 p+ V
  576. STA $BA, F% v& J2 H2 T% J! j$ h  H6 ~
  577. STA $BB4 d9 x& @4 T# o
  578. STA $BC
    ; \5 u' v8 K" d
  579. STA $BD3 S+ y, V8 @6 X/ Q/ v
  580.   z; C% D, n9 T& ?6 E
  581. WEAWRITE:                ;武器ppu写入/ e  C3 V/ h" d! B
  582. LDX #$00
      D; |  T  O* R0 m- n: J9 u
  583. LDA $AA
    " T( E. {+ q8 W( X
  584. STA $B9
      h+ O' g) |' g3 Q
  585. WEAINI:                ;地值初始化
    6 S- `3 x0 o0 o9 w
  586. LDA #$A4, B9 X7 ^  Y. g# R
  587. STA $BA
    0 w- [/ a; V+ r; r! P
  588. LDA #$20# ^2 a8 B9 c3 P. j2 E
  589. STA $BB/ {# X  j: i' o

  590. , Y* E2 h8 w, G$ R, A  I9 Q
  591. 3 \* m- ]# D  T9 q
  592. JSR WEA
    4 s, [  z9 }! v3 T4 X
  593. LDX #$00                ;武器ppu写入* y4 j4 K0 ^( c  q8 w) g) p6 `
  594. LDA $AB
    9 E! S; K$ _: c
  595. STA $B9
    ' C8 [6 W9 j) p
  596. LDA #$B38 g# \& [# \# g0 E
  597. STA $BA
    3 d2 n8 R0 k+ b4 v, q
  598. LDA #$20
    / E4 ?/ b0 V2 F$ G
  599. STA $BB
    9 t. _/ g# N2 n# D8 w- ^
  600. / @4 P2 T' @7 b

  601. , g/ F# v/ o5 J3 K1 Y$ p
  602. JSR WEA* c0 ~2 X7 e% Y' U

  603. * _; _4 _* M- k: E: u
  604. LDX #$00
    . j( B2 v7 h! {6 X# s
  605. LDA #$E43 x! C% U/ S. |- {/ [
  606. STA $BA. x3 L/ I# K( Q+ B
  607. LDA #$20
    ( A$ e" a" i& V3 w- n# x$ J
  608. STA $BB
    , `% u: v2 L, y# l% g8 B
  609. 2 w/ }1 V. b7 I3 k$ x5 U* ^
  610. " _) G/ H5 C2 y, i+ h
  611. LDA $327 X0 I/ s+ q# _( X" X; G, K
  612. JSR PLAYERLIFE7 S2 i7 R4 m" T* Y2 S; l9 p2 a

  613. ! C' E  D4 f9 n+ j6 I1 e
  614. LDX #$00
    ; \/ |# W$ Z2 B
  615. LDA #$F3( J0 s6 X+ |2 H6 \
  616. STA $BA
    6 f( }" f% x! ^5 O
  617. LDA #$20
    1 y6 q) M' g, P  N
  618. STA $BB
    & b( i- Q4 c! Q
  619. ! \4 ~) e. Q' c& \- }; ^( F$ z" Z
  620. 5 W' q2 w! d  V8 j
  621. LDA $33
    - X9 w! o- K& u0 H$ t- r7 |
  622. JSR PLAYERLIFE
    4 |) t/ ]2 J0 t5 h- p/ h! P1 e: q
  623. 6 |4 |5 i8 m  q0 l6 D2 T
  624. ; m/ f1 G+ p  u0 o* K
  625. JSR PLAYER_01_PPU0 I5 R, e; v5 g
  626. JSR PLAYER_02_PPU
    , S4 S- ?6 X9 l5 [1 m! R
  627. 3 d3 ^  \( F" Y7 T0 X2 t- o
  628. , Y) a6 Y7 F/ a# e% I: c; f
  629. JSR PAGE_PPU/ v% \1 s4 t/ D2 r" j0 y# h
  630. JSR PAGESELECT' D% P) X( K/ L

  631. : g9 @# f5 V& K. {" ^  m$ N

  632. # w$ Q8 s$ C* [

  633. 2 U4 ~) Q5 `+ p% g
  634. ; C! M# m! a. T8 |& ]9 \  C

  635. : M, H0 ?: P) x! C
  636. ) j1 f, n( z# R! s
  637. ( T! N( p2 r. ~+ @

  638. * n( v4 i# u1 O

  639. % I! z- q3 t6 n; b

  640. 5 o5 r( X/ ?, a5 F) L4 p, ]
  641. % m9 Z% _/ j! x' ?7 M- U

  642. - J# ?+ d$ u7 U6 u& z. U* y

  643. ) w, A( j& j  j; I. Y9 i& f
  644. PLAPRO:                ;恢复现场
      k7 i: N  N0 `: o1 M/ Q/ i
  645. PLA
      M/ \+ v4 K4 o# C
  646. STA $B8
    ; h- s/ K9 n& K6 D. y
  647. PLA
    $ t) V, a; ^# d3 i' ~
  648. STA $B9
    5 f5 b5 s4 y0 d
  649. PLA9 i1 @& ?8 f* {$ H2 |
  650. STA $BA/ ]# u$ f' r2 v& H* H
  651. PLA7 a# M: @; k% k: Y9 ~5 S
  652. STA $BB& f( ~2 }8 C6 o5 B9 a/ q% V! f
  653. PLA+ k: M, c( J5 y1 J
  654. STA $BC, F+ [/ k1 ~9 p, V2 m
  655. PLA
    $ ^# A- [) X7 O
  656. STA $BD9 N% y/ F+ U4 g! ~
  657. FREERTS:
    ; j6 Z6 T1 N) M: t* `6 k& t3 f
  658. RTS+ ~/ }2 A2 h' e# w2 J% I
  659. : H+ [% l  m2 U# C6 Q) i7 x6 [
  660. INVINC_STRING:                        ;invincible( W) i' ~6 n$ v5 }- f3 n& ]; o$ ~
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    7 o9 Z1 U2 N- p: L3 A, q

  662. , j  b( s3 \. R
  663. INVINC_PPU:
      y, C# h, M7 q$ ^3 c. l8 Z
  664. LDX #$00
    # X- w. t* U9 L1 y) Y4 I- W
  665. LDA #$62
    * M; \# _4 e/ G5 r% c
  666. STA $BA
    & F; W( {  G5 X1 t$ a
  667. LDA #$213 p9 J; L% o; r) x+ m: C7 s- P" I; N
  668. STA $BB, ?, d# G4 b# b( t* r9 n5 h2 q
  669. 8 ?9 p+ `2 ~7 n
  670. 1 n! \' ?$ }3 M- |/ N! ^1 l
  671. JSR UP_PPU
    4 j$ h6 q! W0 [5 S3 I1 L
  672. JSR INVINC_WRITE
    / k; Q# a# K) X/ T
  673. LDX #$00: c5 j' J9 k: n2 y0 Y
  674. LDA $07A0
    : A6 p  s2 a/ q$ G
  675. AND #$015 V3 K: z1 `4 z+ e( a) o: A
  676. JSR ON_OFF_PPU% ?3 s1 D; J, N' C+ X1 r3 {: t
  677. LDX #$00
      ~; e9 Q0 {) s$ z/ w1 Z3 o
  678. LDA #$71
    $ B& r  z9 O) b  B
  679. STA $BA
    6 l6 O* e! `  B; u' A
  680. LDA #$21
    7 Z9 s1 M! H) ~% _5 J6 ^
  681. STA $BB
    9 a# ?* M. ]1 a' _0 Q6 R7 _
  682. 6 w; P) v' s9 l
  683. 0 e( S* ~7 U0 l4 J4 u9 I6 O  y, ]
  684. JSR UP_PPU
      a* U8 S9 `* V" O% }
  685. JSR INVINC_WRITE( Z: n- j4 o' p, ]- _( w
  686. LDX #$00; z$ c( W) @% \2 u
  687. LDA $07A14 I$ s8 N* z$ ?- M2 g+ m
  688. AND #$01
    ' k  G' n  o. F2 D% I
  689. JSR ON_OFF_PPU
    ) `9 @1 I1 z9 x% v5 y$ e( ^3 m
  690. RTS
    . V0 |8 y8 V( |+ E4 d- x7 k! \
  691. ( M# o, b2 N. ~& i; i! Y7 z- p
  692. INVINC_WRITE:
    7 [' ^: }9 h( f
  693. LDX #$00* b" A! a* R  \: u
  694. INWRITE:) V% G2 q  Z- P+ N& r! r
  695. JSR PPUADDR_PROCESS
    7 Z  B& ]) E, \8 r6 ^5 K( k& m
  696. LDA INVINC_STRING,X& x0 [' t% X3 i& z, \
  697. STA $2007
    3 L* E% T, `% d
  698. LDA #$00
    # n1 O0 i% C% B
  699. STA $2000  Y+ Z( [5 g; j# l6 |7 N
  700. INC $BA3 |$ `2 ]+ m( ~' Z
  701. INX
    0 L/ S4 d! x2 W* o# T' T3 o5 u
  702. CPX #$072 `. z8 n& m1 J
  703. BCC INWRITE$ K; U  B. G* x$ I) ?: b
  704. RTS
    , `+ x% ]( }( G2 R* D* ^% o% i1 M

  705. : D$ m' w% q9 _7 m) ~
  706. ON_STRING:: k# N& l  ?2 O( B0 X6 k
  707. .BYTE $99,$98,$80
    2 T. J5 N0 P7 f1 X
  708. 8 A# _0 K, F- c8 R$ ]7 x/ I! i" q% k
  709. OFF_STRING:7 b' ~; S$ w8 M* h7 y. m
  710. .BYTE $99,$90,$90
    : e0 n3 w& s8 \: k

  711. 4 a! y1 s) x" k  c+ R
  712. ON_OFF_PPU:; V4 a* E4 T5 b! U* l
  713. BEQ OFFWR
    1 g# |' V$ X. h* R3 o) V0 C
  714. ONWR:( o7 g0 d' Z) h* Q8 G
  715. JSR PPUADDR_PROCESS
    * a1 u: ~) r* e* P1 F8 _
  716. LDA ON_STRING,X/ I$ g+ v* q+ p
  717. STA $2007# ~& Z" i/ n" i- l$ H
  718. INC $BA. U& V" d# f6 K( ^
  719. INX
    . K$ B/ ]# {6 m$ ]
  720. CPX #$03
    + B' E" u% E& V. Q9 d
  721. BCC ONWR
    6 J  C1 s' n! \& {3 }" v
  722. RTS
    * v6 h4 r& t6 {
  723. OFFWR:
    2 s) ^: r: a1 J" J- W
  724. JSR PPUADDR_PROCESS
    . _% B% W: \# a. e- }: c
  725. LDA OFF_STRING,X. b% G/ @& R9 \
  726. STA $2007/ r; X; D6 e/ E3 `' S8 z
  727. INC $BA" S, G: \; f* |7 Q
  728. INX
    8 `# S5 [9 c- }* D7 p
  729. CPX #$03
    " r, I, Q# v+ G2 h2 y( S
  730. BCC OFFWR- ]& P& V! m) i9 f) Q6 }' P( V
  731. RTS
    1 d2 P; h. {4 f6 H0 F
  732. 0 v  P* W9 ]: g/ ^4 N
  733. LIFELC15_STRING:
    9 Q1 A0 \4 T1 [, s% a9 d
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    ; T8 _+ |3 ]  o8 W* N
  735. # N4 ]: d2 q! A4 c. x
  736. LIFELC15_WRITE:
    6 q8 A+ @: E( y" E
  737. LDX #$00
    ' y4 g( M5 m# Z5 X! ]! L
  738. LIFELC15:
    + K5 o4 a5 S; M
  739. JSR PPUADDR_PROCESS
    - n& h9 i7 E* r* l9 T6 |$ k
  740. LDA LIFELC15_STRING,X; h7 a, f; o" _' Z8 o3 e. \
  741. STA $2007
    # f8 Q$ W  H+ L. j$ l
  742. LDA #$00
    + q& }2 F/ {$ y- X
  743. STA $2000( M' r8 G( {2 w( J! |
  744. INC $BA
      ^4 I1 Q9 [0 h6 \0 H! C
  745. INX
    ' g- L5 T0 H& K- y
  746. CPX #$07
    3 }$ L( i% J! p6 }8 n8 ^) m
  747. BCC LIFELC15
      {  n/ z8 ^6 Q; X, o) f. X5 E
  748. RTS6 w/ r9 e7 j& [- @2 B; }. C

  749. 6 H! Y; k( ~, W# X* ^0 X6 x1 u
  750. LIFELC15_PPU:
    2 D) o  ~, A; B  R( i6 a. M- \1 \
  751. LDX #$000 i- X, S" p7 S3 E5 X* F0 B
  752. LDA #$A2
    3 {' m) p" a. z' I
  753. STA $BA- |+ \* \6 C8 R' a
  754. LDA #$21! i: p1 @/ M0 @6 j% d3 ^3 L
  755. STA $BB
      N0 Y4 H# W2 _8 k4 W' {3 v
  756. JSR DN_PPU" N1 b' U+ b% Q: ^' B' ?
  757. JSR LIFELC15_WRITE
    , O3 m- U( i7 L
  758. LDX #$00+ b4 |  F& b5 T3 B
  759. LDA $07A0
    ) K& Q8 T, ~& ?' C- K8 ~8 _2 a9 T
  760. AND #$02
    $ [$ _7 q7 W/ P* [
  761. JSR ON_OFF_PPU2 v9 V3 U: ?: K
  762. LDX #$00
    0 ^! L8 c9 {8 l6 R
  763. LDA #$B1
    6 X- G. z2 g- j" T6 C
  764. STA $BA2 u. O  {. V- X: X
  765. LDA #$21
    # H! Q9 v; w0 K' o+ W
  766. STA $BB8 _" K& K4 A( O% i1 |  a; _
  767. JSR DN_PPU
    4 L5 X" d3 r0 @; C# m1 q
  768. JSR LIFELC15_WRITE' f! y$ }: G. F' H$ A8 a) T
  769. LDX #$00- A1 @9 E; j; |' O& H( d2 K
  770. LDA $07A1! p3 T9 X3 K7 }4 f/ k7 K2 B/ l
  771. AND #$02
    0 M9 h" L5 e! D
  772. JSR ON_OFF_PPU# x$ K" K5 j( \: L6 j
  773. RTS; k7 Z% Y8 Y. ?: L8 r
  774. 2 \- V; x. J5 D3 b2 c
  775. DOUCON_STRING:# N: C1 L0 ^& J6 K6 S8 ]  f
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    / D6 J7 w: x* Y

  777. 4 c+ _. k8 A, M8 O% F5 U
  778. DOUCON_WRITE:
    - w+ T5 k! ^# D& R; i* {  |3 V
  779. LDX #$00
    ' P; I. i4 z; t. t' ]7 Q
  780. DOUCON:
    % R9 \  r" |# g0 q  B! s9 g: Z6 p7 N
  781. JSR PPUADDR_PROCESS
    - ^+ D! _& X: u( }, g8 [1 ?
  782. LDA DOUCON_STRING,X
    + r0 H) r" }- W1 ~& m
  783. STA $2007* i6 k. \% }0 `. F- ?
  784. LDA #$00
    & q7 H( Y' V" H5 m9 J+ _3 V
  785. STA $2000
    - q6 j! b3 v6 T2 t& U
  786. INC $BA4 a8 {2 ?  A  p" x# v4 u
  787. INX" Y3 t! k  O' r5 ?, f
  788. CPX #$07
    ! @; Z5 e2 Z6 Y! {' O9 H
  789. BCC DOUCON9 x+ _" v6 N3 f# H% I
  790. RTS5 D- f) u' r. C! [! D% a

  791. ( [; A" K. \; `* L
  792. DOUCON_PPU:% Q7 o% V5 A* }/ i8 e+ C
  793. LDX #$00" Q( L( D' N- d- l
  794. LDA #$E2% N  C( U7 m5 u6 R  q
  795. STA $BA
    , h( c# \8 S/ C, O4 @
  796. LDA #$21/ O. l# Q( q# i6 m& u% w
  797. STA $BB! C; d8 y2 z1 d- q; ^1 Y
  798. JSR LF_PPU0 \% f/ H8 {' E' ?. s; ~. |
  799. JSR DOUCON_WRITE' J2 o! Y) h$ w  A1 |% k$ n
  800. LDX #$004 x/ }% ]: j* E% l, p, R5 f
  801. LDA $07A0
      S0 n* G- c7 a! H& I$ B; m( \$ a
  802. AND #$04% b: r6 Y4 w3 B7 m3 u
  803. JSR ON_OFF_PPU# p4 s% _& s4 d1 S3 @, k* U* X& A- ]
  804. LDX #$00, J9 H+ H6 F! G. e, L
  805. LDA #$F1
    5 G7 L; @, a$ T( Y3 w7 e' o0 B3 Y
  806. STA $BA6 u0 c0 g3 H1 p
  807. LDA #$21
    . E! I( a9 L; N5 w+ C% F# N
  808. STA $BB  x( ?+ m* J8 l/ o* u" ?
  809. JSR LF_PPU' @4 l; u) n3 F5 E- C
  810. JSR DOUCON_WRITE
    - O" `8 W( W' b5 l; a
  811. LDX #$00; ]% M6 @# e3 G6 G2 J' R
  812. LDA $07A1
    % H, m% W2 ~( Q
  813. AND #$04
    7 J7 T" ]' e6 n* }6 m
  814. JSR ON_OFF_PPU
    7 z+ f6 w  z( d2 N# j
  815. RTS# `4 D* R; [2 K2 t9 n; Y
  816. 2 M# J( M* x5 O/ g$ i" Y
  817. LIFELOW_STRING:
    2 i; ^  I1 c+ `
  818. .BYTE $96,$93,$90,$96,$99,$A1,$806 P6 j8 `- j# y. @
  819. 6 T0 C+ A* O' J. ~
  820. LIFELOW_WRITE:
    + D$ i' B4 t) N( n. D& b
  821. LDX #$00& u( l: X! h  \0 O
  822. LIFELOW:# d7 D2 C* s& X3 H
  823. JSR PPUADDR_PROCESS
    + Z: R; ]5 D  Y1 M
  824. LDA LIFELOW_STRING,X$ l5 r" U+ d, k, Q$ C$ F, L4 p5 p8 W
  825. STA $2007" l3 P. }* D8 T! C+ _) ?. [4 E
  826. LDA #$00' }& {" |! ]  @/ Z5 ~
  827. STA $20009 u& L, k# p+ s/ @- O
  828. INC $BA
    9 i" n) y" |" l0 x8 c, @6 Y9 g3 ~& x
  829. INX
    3 l2 u- Z) D# {* ?" H1 {
  830. CPX #$071 _% m* d& Y1 F4 R. j: z
  831. BCC LIFELOW" i7 O2 T$ ~/ Q4 \. k
  832. RTS5 N9 z3 x6 l8 c5 p( H/ g
  833. - G% @' p( |* S3 f+ _0 D
  834. LIFELOW_PPU:
    7 \1 v- S1 F( h. M4 }  X) J# M
  835. LDX #$00& R# i1 _1 U5 r
  836. LDA #$22+ l, Q1 U8 O3 L- L
  837. STA $BA
    6 K* H; X3 c, d8 A# {4 N6 ?
  838. LDA #$22/ Y7 o7 Z8 b% h: \9 K1 H, N& u3 G
  839. STA $BB
    0 e3 F( d' z3 y  P. @
  840. , l  P& G7 K1 N& L& u8 d. a( v$ W

  841. : I8 O3 e$ V, X3 I- |8 e5 V
  842. JSR RG_PPU+ d+ j2 o' P$ W( @' s
  843. JSR LIFELOW_WRITE( q2 w$ [& G; J( h
  844. LDX #$00; p" [% I: D5 \" d) v$ l
  845. LDA $07A0
    3 d9 Q$ j' b2 O% h! I: X
  846. AND #$08" P, R  Q3 q5 Y) h
  847. JSR ON_OFF_PPU9 p1 B( F9 d* s+ j0 l' {7 \- g
  848. LDX #$00
    . e7 Y/ y. w( Z* ~( [2 D+ Q
  849. LDA #$31  `# ]0 ^/ Q' m: g7 w4 J
  850. STA $BA2 x  O$ d# O& R- I5 G
  851. LDA #$22
      h0 a: P2 O/ u" s8 y' O1 f) t
  852. STA $BB1 P; _$ Y9 K% e8 w( `* O& {7 h% {
  853. 6 j7 Q/ z9 g9 N, p" d) s

  854. 8 M) G1 W! J( k5 V4 Y
  855. JSR RG_PPU
    9 [4 c  y' s& n- F7 J! ]
  856. JSR LIFELOW_WRITE
    $ m3 P/ }8 A  H- v' ]& G8 t8 f
  857. LDX #$00. r" Z- H  R* ~/ k- Y( l
  858. LDA $07A1
    % m4 G2 i$ t/ D3 G$ p& q* E
  859. AND #$08& Y( W8 S0 \# g5 x# d3 x
  860. JSR ON_OFF_PPU
    . I* a' F" |9 |! T! S7 m
  861. RTS6 e- x( S$ e4 M; v4 v
  862. 3 s8 m1 Z: z- w5 Q) w( [
  863. KILLON_STRING:
    7 `- m+ d! c0 v. {1 O" k
  864. .BYTE $95,$93,$96,$96,$99,$98,$80* N- K1 Q) ^) H7 f  `% E
  865. 9 ^- h, r4 F4 `5 k/ F5 ]6 ?
  866. KILLON_WRITE:
    $ h8 L# |# }) @6 P$ N( p
  867. LDX #$00  x5 m( l, n, L; a# x# G
  868. KILLON:
    # X  v. e% }/ R0 i$ @8 ~
  869. JSR PPUADDR_PROCESS- i3 s- o, `5 T% W
  870. LDA KILLON_STRING,X: ^8 M0 W$ X3 _2 s1 {
  871. STA $2007
    1 d: V- O7 ~# d
  872. LDA #$00- k1 X( r, O( f$ J# ~. L
  873. STA $2000
    # n# M7 J1 C4 Z; N" c6 _
  874. INC $BA
    : [/ x& x0 B& {8 O, t' _
  875. INX
    . O) }8 e% X& D- w! `
  876. CPX #$073 T- s; _& `8 D+ u! P3 G9 i- n6 w8 G& }
  877. BCC KILLON& Y* Q. u+ I1 R
  878. RTS7 n) L2 Y$ i8 P! c' M+ S1 t

  879. 5 ~2 _! [6 t1 h* `! e
  880. KILLON_PPU:: d$ {: `  b8 Q; |* ~
  881. LDX #$00! X% ]' b: s9 x8 D- _; h+ v: e! f
  882. LDA #$62
    ; I0 }4 E  C( E6 K; c; X4 f( ]
  883. STA $BA
    : Q3 H9 d* Z5 l6 F# n, U  o9 b
  884. LDA #$22+ u, s8 n) a% A# e& m
  885. STA $BB% q& U* Q. T0 T$ x

  886. 6 ^+ V" T$ k  p' L: O0 @
  887. % l+ y2 o* I4 d3 C
  888. JSR B_PPU3 a# m/ e$ O( t- G9 W2 P+ v
  889. JSR KILLON_WRITE
    7 _" x4 r/ h9 q1 |9 ?& U
  890. LDX #$00
    1 I8 L+ x# Q# a
  891. LDA $07A0( q0 n8 j; u) X* t
  892. AND #$10  u, V" ], `. i3 |' E
  893. JSR ON_OFF_PPU$ Q8 b' d. F5 N
  894. LDX #$00- i$ i% K, M+ {
  895. LDA #$712 h* V  l4 F. S/ m
  896. STA $BA
      m% g+ [9 q! f# Z
  897. LDA #$22* K2 n7 }$ N) m! `5 n0 T- h
  898. STA $BB, F( f* x2 J( G' U" X) `% {

  899. ) p, `4 o# v, l$ a3 T4 S

  900. # _& X* a5 t+ ?, ^3 K
  901. JSR B_PPU
    # ^& L3 u1 c1 d# p. E
  902. JSR KILLON_WRITE
    ' p, X# M4 p0 j( {
  903. LDX #$000 V: y. P- s4 I* \& F  M$ I
  904. LDA $07A1, v" I" y% e" _# n
  905. AND #$10
    * l3 `% {% g+ {& p9 u6 d
  906. JSR ON_OFF_PPU) L" P/ L& \/ S" h3 }+ d
  907. RTS& `6 K5 I2 r) M1 N8 ?( G( t5 V! F
  908. * @7 N; s& b# d: U
  909. SKYFLY_STRING:
    7 k7 |9 d8 l$ g- {
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    - j9 c7 K* @1 [: S! G2 |

  911. 5 G. h: c( B! Q1 F" B, q2 O
  912. SKYFLY_WRITE:
    ; K$ f, i2 K! P; |
  913. LDX #$00* p( K2 b' W2 x: B5 ~2 j
  914. SKYFLY:
    / K! e/ W7 Z; w6 s
  915. JSR PPUADDR_PROCESS# L! q/ w6 c8 J, ?
  916. LDA SKYFLY_STRING,X
    % v: ^, e6 c! e, ^0 t' L
  917. STA $20076 ~" M  |8 r- H* e3 _
  918. LDA #$006 _) t- b) {# ~8 [
  919. STA $20006 ^) V- Z: Q" ~+ u# P1 {* ]
  920. INC $BA
    # k8 n0 l1 s! y; V) R
  921. INX6 T5 @9 h1 I/ b+ w: k
  922. CPX #$07
    + [0 o; c6 m! V5 T  X
  923. BCC SKYFLY) l2 Q, H% ]4 r8 l
  924. RTS  M& w& R5 l0 V+ @2 u" P. Y. {
  925. " A* Z# Q, a# ~; l$ w$ w+ d
  926. SKYFLY_PPU:
    9 B/ Y. R! d  f4 T4 B' y2 ?
  927. LDX #$00
    3 g- L* l5 T2 T/ w
  928. LDA #$A22 y& B7 a+ E$ L% ]
  929. STA $BA
    : t7 {$ X5 o& i+ G# k
  930. LDA #$22
    " d9 c2 ]1 U- l" u* S; [0 m2 w1 ^
  931. STA $BB$ r% H) B1 A; H5 U2 s) b% j( e

  932. ! T5 R) l6 r6 N; s! r+ ]0 u& N. z

  933. ( U6 F% O( J* o) G& z$ f3 s
  934. JSR A_PPU9 R  f4 G5 l1 s6 M$ _! }1 ~
  935. JSR SKYFLY_WRITE- M" B/ a; T# V7 x! h0 e
  936. LDX #$005 |) C# ?( V0 R" r' T' E
  937. LDA $07A0" }" }+ ~* l1 C) v
  938. AND #$20
    ) I1 i/ U; S5 b/ j$ k: p
  939. JSR ON_OFF_PPU2 h$ F: O. t5 O' {/ Z/ @* L
  940. LDX #$00
    - z+ g- M- ^( J1 r4 W
  941. LDA #$B16 }. K" ]* z) l- e7 t" ^0 Y: \
  942. STA $BA; W, b; o  e& g( W! S' P
  943. LDA #$22( ~; {, R" z* _# O( E' g. ^% l1 B
  944. STA $BB
    ) N$ z4 o9 \- a
  945. 4 \" Z6 Q! D* o% D

  946. 6 h; w, l* C& I  j/ e& D0 p
  947. JSR A_PPU0 ]. h7 P0 T: y) k( v
  948. JSR SKYFLY_WRITE8 u; m9 o6 Z1 G4 Y4 H
  949. LDX #$00
    ( J1 s0 ~% A8 A( ?! B( |; B
  950. LDA $07A1
    ) X* `3 E; j6 F  q# m5 d
  951. AND #$20
    3 c; J/ m% S6 ?3 o# }
  952. JSR ON_OFF_PPU
    : L9 u6 j! l0 H: S; e* A  }
  953. RTS0 E9 w2 q0 b2 @  a; W
  954. : f$ U/ y: n' f3 v! }7 z% h" G
  955. BULADD_STRING:" m8 y3 C: ^' W2 {
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80& ^3 y# i% R" ]
  957. 9 R/ ^/ W& t! L4 t) h7 y5 _
  958. BULADD_WRITE:2 j* O- ]/ K* i# Q# R) }
  959. LDX #$00
    ; ]; P6 h" B$ H
  960. BULADD:
    ; Z) s% M( i$ _' {8 u
  961. JSR PPUADDR_PROCESS4 n1 |& L$ Y5 f! s, `
  962. LDA BULADD_STRING,X; Z/ w, `; }- N5 U! t% x
  963. STA $2007
    ' Q2 u2 |! j$ m1 v/ F
  964. LDA #$003 f$ u* _5 b7 N9 s( ?# _
  965. STA $2000
    ( q/ I- a; C/ l# \6 D0 y
  966. INC $BA/ g0 f( Y/ i/ d" m$ \3 O. ~
  967. INX
    5 c7 ~* h4 O4 I( @7 B. O
  968. CPX #$073 F8 Q; O2 y- {% k9 I. ^$ b
  969. BCC BULADD
    : T* G% w2 k+ ?' J4 t
  970. RTS* `1 ]! S2 p) m8 Q
  971. ! s2 ?4 M- q. a2 t+ Q' f
  972. BULADD_PPU:% z% T7 ]8 t; E& m: X* O& s
  973. LDX #$005 L: a: W/ N4 x% G& v8 {4 m; U
  974. LDA #$62, Y* x  Z& E  T/ t
  975. STA $BA
    - P) ?4 P6 s7 Y$ J
  976. LDA #$21/ s* e3 f$ f0 x) _8 ]4 d* y! Q3 L
  977. STA $BB1 q( W8 @& {1 i. C2 {: \

  978. ; F. R  f. [8 Z) o* y% G7 {- h
  979. ; c2 S% Z" ]- b7 t
  980. JSR UP_PPU
    3 K8 Y, @1 S9 o/ c0 H
  981. JSR BULADD_WRITE
    3 h( g6 l0 ~# |& L, U4 z/ f2 B$ u
  982. LDX #$004 X6 c+ y/ A, D( t) J
  983. LDA $07A2
    . J* x$ t+ @3 S! B  S+ Z, V
  984. AND #$01, X$ V1 O; g; P) G
  985. JSR ON_OFF_PPU' c; _* q, J/ o/ a
  986. LDX #$00
    + Z6 r' z! I0 n- B, y- c
  987. LDA #$71
    / h# @0 _* G7 g- m7 }5 ?! _2 C) n; f
  988. STA $BA
    8 m. D% d, A* X" v
  989. LDA #$211 q# w& |/ I/ ?; l; t4 A
  990. STA $BB
    7 z/ Z$ `- k0 d/ ~
  991. 2 Z5 C4 }6 e: q, r6 i- ^7 V, C
  992. 1 _* Z. W7 Y" V$ }" F
  993. JSR UP_PPU
    4 M% F8 i- {4 Q' J; U; W4 v0 }4 H
  994. JSR BULADD_WRITE5 o* [9 C5 I- l' K$ R! ~9 L2 C
  995. LDX #$00
    ! }' p* B  A4 }; ^$ n' o, S9 u
  996. LDA $07A3
    % d0 x  u  N* D8 q2 g) S4 N
  997. AND #$01% x" G6 ~, v& V7 W* A
  998. JSR ON_OFF_PPU' [7 ^9 N+ M7 h* S9 `
  999. RTS" h' d: X% v8 m

  1000. $ o* Q9 \3 S# Z" _
  1001. MENU_PAGE_STRING:0 j6 L$ G2 `: [# H; L( r  p/ k
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    ) Z% w8 I" E# h! P1 |- z. ?5 r

  1003. ! E: ~/ s4 G, k( }+ p* F/ ~8 f
  1004. PAGE_PPU:8 D/ Y' E' x1 h! I9 _3 Y& c' ]
  1005. LDX #$00
    : W: [8 }# Z! g* T9 }- p2 O
  1006. LDA #$0A
    & O2 Y: r" L5 S& S8 b$ n9 C
  1007. STA $BA, ^, e! ~+ ~) }* G
  1008. LDA #$23
    . G, }9 k3 Z' H8 A  N& _
  1009. STA $BB3 S0 f0 z/ Z. `6 N

  1010. , s  o- t5 y/ j( n0 P
  1011. ! S; q4 k2 ?' \9 N, F( Y7 r# _+ e
  1012. MENU_PAGE:. T2 [+ A- O( V5 C
  1013. JSR PPUADDR_PROCESS+ I4 J9 M) K4 w- h' _2 B% a& x7 a9 X
  1014. LDA MENU_PAGE_STRING,X% \/ ^! J1 h3 I" F4 B7 t0 T# S
  1015. STA $2007
    ) i0 I2 R/ Z8 p" i
  1016. LDA #$00; ^  Q( l' ?; n6 R3 g2 a2 K
  1017. STA $2000
    4 q3 K' U- ?0 v$ I
  1018. INC $BA
    " h: o. v" {- E
  1019. INX
      g+ w$ v, a3 r, O2 B
  1020. CPX #$0B$ }$ d) {" y# [5 z1 R
  1021. BCC MENU_PAGE
    1 Y4 @2 c; t! H. Q& h9 Q( n
  1022. LDA $07AA" `# q! D# i6 g* W* ?
  1023. CLC
    0 O# D8 _9 E1 |, G9 B
  1024. ADC #$826 o* N1 J$ \0 K
  1025. STA $2007  j& {3 v- n1 s; X8 F. {9 b
  1026. LDA #$00
    0 o' M) W& m- n. H
  1027. STA $20000 x( Z2 A2 K' P1 H# {2 m
  1028. RTS
    ( X3 m' f8 s  a: l
  1029. , u, J' x3 x# F% F( I+ y5 p" f

  1030. % b, G( c3 _$ h! G
  1031. SKINGE_STRING:
    ; `9 I; _7 Z7 e& \$ S% R
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80: H7 n6 P$ W( |2 W: u
  1033. 8 O% ?0 j& U5 y2 l  U+ G
  1034. SKINGE_WRITE:
    $ k+ s3 ]6 w" k6 b1 m, O
  1035. LDX #$00* ?6 E1 [4 }# s4 b1 i
  1036. SKINGE:
    # M& E  J4 l8 I) \9 B+ K
  1037. JSR PPUADDR_PROCESS0 ~1 c( i; m8 y% ^& |! S; ?. U5 X
  1038. LDA SKINGE_STRING,X( w* L- _) w1 I. K+ a! H; c1 O
  1039. STA $2007) E0 k: [0 ?$ B, V; ]
  1040. LDA #$00" n0 y3 E7 n( \4 J9 n- J
  1041. STA $2000
    ( O3 M' d- B+ ?$ Q% y* y
  1042. INC $BA
    " z' B& n1 S# o+ Q. G
  1043. INX% r. [- i( `0 M8 |* ?1 i' e7 j
  1044. CPX #$07/ {8 H5 m1 b# H
  1045. BCC SKINGE
    5 @) R2 k7 O% _
  1046. RTS
    - h9 l7 z6 A4 k2 Z" t- M. N/ I' Y
  1047. 3 _# y$ _6 ?( G
  1048. SKINGE_PPU:
    , i9 }, b* v. s
  1049. LDX #$002 f! B5 B3 d( f8 L+ i
  1050. LDA #$A2
    , @. {$ a7 B; s: i
  1051. STA $BA
    " H6 u; q! ]* j8 j1 j& K9 a0 q
  1052. LDA #$21* I( ?% ^; j. z$ h# @  [; o! P
  1053. STA $BB  N2 }" n+ S) b
  1054. $ n# d7 _# N# [+ r1 t7 H

  1055.   v% f; }: {+ o% }
  1056. JSR DN_PPU: _* A6 R' U% y8 @" q" p) H! g, V; h
  1057. JSR SKINGE_WRITE7 k# v3 T3 b5 ^
  1058. LDX #$00
    8 Z. O0 f2 h, ^, H8 c
  1059. LDA $07A2
    4 z) u# k& x: j0 U
  1060. AND #$02
    " _' g; @* M0 `
  1061. JSR ON_OFF_PPU, I- w0 B* @) K1 z% ]7 g, m1 [
  1062. LDX #$00/ y* }2 ^' b6 F# D: x/ ]* I% z
  1063. LDA #$B1
    * b4 u2 s+ T( n3 h2 }% D
  1064. STA $BA
    3 R' O. S" O8 y3 `5 P
  1065. LDA #$21
    9 d2 ~8 I" _3 P, _7 m
  1066. STA $BB: u" c5 h2 ^$ u. ~

  1067. 3 u/ H' N5 x' `

  1068. . j4 o  V8 D& J' q( `& t' Z
  1069. JSR DN_PPU4 r! A0 Z' p: c: G5 Z6 N6 k, f
  1070. JSR SKINGE_WRITE7 [$ R% U/ G  \, z6 ^# h
  1071. LDX #$00
    & m$ {4 i$ m6 l3 l, l
  1072. LDA $07A3
    / r: T2 N, R$ L, n  N
  1073. AND #$02! v2 u* r3 j, }& x  K
  1074. JSR ON_OFF_PPU0 Q+ y! n& l% s+ z% m
  1075. RTS) u! O( @8 N# e) _

  1076. 0 O: }# ]' X) l, P  b/ t3 a
  1077. BULMIX_STRING:7 n4 s, H7 I& u* {: V( \& U) \; P
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80
    ' y; O8 i% d' Z9 T' ^
  1079. 7 S  `# {9 O, }' w9 H: K( ?8 N
  1080. BULMIX_WRITE:
    ) `( o* O! t/ \8 F( p6 y
  1081. LDX #$00
      j" i+ k/ U+ j- o
  1082. BULMIX:
    0 V* z7 n& s2 F; o- l( g
  1083. JSR PPUADDR_PROCESS: _: h# ]$ H4 r/ F8 Y" Z+ A
  1084. LDA BULMIX_STRING,X
    6 d+ x$ ]' U/ g4 F+ q
  1085. STA $2007
    # D9 Y3 w# x2 S" e& P) e
  1086. LDA #$00% t5 {5 y( ^* |% E/ V
  1087. STA $20000 `& b6 F( B( [6 \7 {1 ?
  1088. INC $BA
    3 ^# |* |, U* w  _9 H: h. x/ U
  1089. INX
    % B- w2 Z$ {1 ^- H9 T* ^
  1090. CPX #$078 D! l, M7 j9 p
  1091. BCC BULMIX* v6 ~6 t+ |* S7 N2 C5 [& f
  1092. RTS
    * w# K1 P2 f: w* D, N* d6 H

  1093. ) B; z, S4 e  g% A4 i8 k8 Q
  1094. BULMIX_PPU:( q% W; ?% t  Q# l) _0 g
  1095. LDX #$00
    6 C$ Y6 G3 G* I7 O/ |+ x
  1096. LDA #$E2% ~+ u8 g( m4 J; S5 _
  1097. STA $BA
    + p  K% J* e4 y4 r7 }9 z2 ]" C
  1098. LDA #$21
    / I! P  E; W0 h/ w! k# P
  1099. STA $BB+ o! {9 }  }3 [9 R# f

  1100. 6 S' m& R, G4 a5 d0 x
  1101. 1 [9 y0 P' O: A5 u- I
  1102. JSR LF_PPU' L: \: v0 t/ @9 A- t2 B/ \7 B7 W. x
  1103. JSR BULMIX_WRITE
      `- Q0 |5 b: s2 N2 Z
  1104. LDX #$00
    5 p/ X. U( r( h9 F9 k' N# @6 @
  1105. LDA $07A2$ a2 t7 r+ D( I4 u5 ~! H: d! k# i
  1106. AND #$04
    0 O5 B; d4 C+ N$ F7 v4 Y, |3 H
  1107. JSR ON_OFF_PPU
    6 _  z& G0 z" V2 x! t
  1108. LDX #$001 z$ h9 E! L* q& k; \' U! {# A
  1109. LDA #$F1
    ) C# [  }3 N! K# A5 J9 c
  1110. STA $BA2 g8 \. r0 N; E6 I; V% T
  1111. LDA #$21
    - r) Q  c& T, J) P. L
  1112. STA $BB
    5 v: b" i+ X# o$ {: [

  1113. 0 B+ P: T  D) [; }

  1114. # U- f' \) n+ i( k2 {8 {' ?5 K
  1115. JSR LF_PPU! i/ \- P% r( R$ i: |8 J. N' v8 }
  1116. JSR BULMIX_WRITE* d# m5 p# z1 v
  1117. LDX #$00
    : Q, \! b+ J* o8 H/ K2 F! }- H
  1118. LDA $07A35 L. e! ]5 }; ]+ J/ A* @  f# E
  1119. AND #$04
    $ M- G4 R6 v! g7 W
  1120. JSR ON_OFF_PPU
    9 I' X/ r" a& B3 u
  1121. RTS+ M2 u- \5 C, y

  1122. 8 g* j! s! g2 X" H' J& e
  1123. ENELOC_STRING:6 o( F0 _3 K+ `( h& K- _) Q
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$803 L. q' \0 T, U# e* Y) z& n. K

  1125. . S" J$ @% k( W6 R" m
  1126. ENELOC_WRITE:
    & u6 K1 _8 `2 B7 S% Z
  1127. LDX #$00
    6 p9 S& o. d7 z" I! ?
  1128. ENELOC:
    - ~$ C3 F& }/ W' l6 H% F
  1129. JSR PPUADDR_PROCESS( t/ t. A1 J2 T/ y: n" @3 g) N
  1130. LDA ENELOC_STRING,X
    8 R& `0 A5 L* H
  1131. STA $2007* v/ A( V* {0 b- R
  1132. LDA #$00
    / B4 n+ z5 {) C4 D$ P& m2 x
  1133. STA $2000! @% {. z5 \8 D% }  I% n' k) S& O
  1134. INC $BA9 P  s# `  Q0 R: M8 h. f
  1135. INX8 I0 y9 Z, S" m  `7 _. z- c! j
  1136. CPX #$07/ Z& b, p! o1 ^
  1137. BCC ENELOC
    ! ?$ B( {8 _- r6 A  V- X
  1138. RTS
    4 A7 B' _$ `) \7 R, U  V
  1139. 3 w+ a9 y4 c/ A( K
  1140. ENELOC_PPU:
    $ w9 X2 Z! ~0 ~: I/ z( t. H
  1141. LDX #$00/ R) p8 N( g! z/ t/ v, w' h; G) u( C
  1142. LDA #$22
    , |5 m# K+ r* {! l, P9 |
  1143. STA $BA
    " }4 N0 M& m7 m5 P5 t
  1144. LDA #$22  B- m8 s& O. I7 Q" }
  1145. STA $BB$ ~8 r8 d) N7 L
  1146. 9 ]) p5 _+ S% X, @# p9 O

  1147. 1 R/ c1 M4 T/ I* ?1 H! b6 K
  1148. JSR RG_PPU' M) M7 |; n! h: h
  1149. JSR ENELOC_WRITE7 [' l5 A3 |" S, \( e2 @* ]4 b
  1150. LDX #$00# |7 u2 Z  G% t: _
  1151. LDA $07A2
    1 F/ y" V" U7 V& E
  1152. AND #$08. R+ Y' O& r% F3 D+ w- p7 V
  1153. JSR ON_OFF_PPU3 \( h4 Y; [# Z  X( D5 \
  1154. LDX #$00
    # s8 e; r8 V" ]8 k; f+ [
  1155. LDA #$31
    4 x# m7 Z1 K0 C; H! g$ W" y5 V+ k
  1156. STA $BA( T" }) ]6 U' }* o' r
  1157. LDA #$22
    ) C+ s5 L, C, E0 t7 \* v# }
  1158. STA $BB- E/ _3 P% q3 e/ G: W  U

  1159. 6 k7 C6 N/ L6 B8 ~

  1160. : K" i; i4 g% N' Z+ H* h" {
  1161. JSR RG_PPU1 Q: c, M' D/ [2 T! A7 W, f1 S& K' W" p, C
  1162. JSR ENELOC_WRITE
    , Z* {6 m5 e# J6 S
  1163. LDX #$009 u: h; |, b; G8 W
  1164. LDA $07A3
    * d6 V5 _! }9 x) z! q0 u: |9 h
  1165. AND #$08
    ; h0 H5 l! v4 V
  1166. JSR ON_OFF_PPU& R, [2 @* }( n5 |. [% r! Z" \
  1167. RTS
    : T- u4 K# O5 N5 e6 B8 p7 Y
  1168. 3 s3 k; c' @, b, ~  q
  1169. FOCFUL_STRING:! q% \/ V2 _+ `( J5 n; T6 w4 P
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80- W6 R" u( X: c. W$ ^7 n

  1171. ! u/ q3 Z3 m9 k  q8 H

  1172. * M' J! C, }9 z, X. j
  1173. FOCFUL_WRITE:
    * S) G. F" f) S4 b' U
  1174. LDX #$00/ }/ [  T5 O" W2 ?5 o
  1175. FOCFUL:5 F2 w* D0 o0 N  b4 _" e* r% V
  1176. JSR PPUADDR_PROCESS
    8 S$ _$ M; c+ F1 G6 W+ I* t
  1177. LDA FOCFUL_STRING,X
    , y& b7 ~3 R/ p% U6 \
  1178. STA $2007
      N9 ]( {/ k# e: ^  {" C% J
  1179. LDA #$00
    1 @2 b! Z1 |/ z7 M% S% n
  1180. STA $2000
    3 `: e# T# F4 a) j0 f- }7 z1 D
  1181. INC $BA1 F8 y5 Q+ ?+ ^2 d: A
  1182. INX
    9 ^( ]% y0 E7 D7 d$ Z, c
  1183. CPX #$079 k  A* A0 H' x/ e7 M) M2 d) R
  1184. BCC FOCFUL3 |" _. T1 s1 Y! g
  1185. RTS
    9 y+ N; M1 ~6 q2 u! g* |
  1186. & v! Q: }! G( |1 s+ E* o+ `
  1187. FOCFUL_PPU:
    0 `/ E& [8 v) O9 P
  1188. LDX #$004 |3 J7 j* q; v& E
  1189. LDA #$62
    + D7 ^2 h( o2 y+ S
  1190. STA $BA1 u/ e: v, W7 X: Y) E# l
  1191. LDA #$22" G3 y- h+ n) |1 V
  1192. STA $BB* o4 Z8 N( f* x+ W
  1193. 1 B6 x1 I, s# ~& ^8 ^* E; W
  1194. ; ~& K8 b- v% y; ^) ?& l
  1195. JSR B_PPU
    # q& o( K; @4 `6 {2 |/ l
  1196. JSR FOCFUL_WRITE7 `( Z0 d. P* Q) N* ?1 C
  1197. LDX #$00" H( {* l' z! L1 r' M- ^0 j
  1198. LDA $07A2; u- f( n( _4 ]1 C) m7 H# j: Z% u
  1199. AND #$100 t4 ]# K2 d: S+ N6 X# G
  1200. JSR ON_OFF_PPU" a+ @8 |/ o$ _  J- a, R
  1201. LDX #$00
    , Y$ O4 X2 c, `% x2 f
  1202. LDA #$71' }: V4 u' B. v# b( b. |
  1203. STA $BA, u6 h$ p9 t8 u/ o
  1204. LDA #$22
    $ Y2 ]$ I* U* z, J+ t+ Z
  1205. STA $BB
    3 d* E8 e: o6 U. B0 N% O

  1206. / z1 O. ^( b1 }- P

  1207. ' [& S' ?7 F6 B4 u$ p& }
  1208. JSR B_PPU
    9 b; N9 a5 a- v4 t+ v1 N) r6 f
  1209. JSR FOCFUL_WRITE% ]# R  v$ V3 U% N& p
  1210. LDX #$00
    # `2 `- @# Q4 k; r9 E! r/ G
  1211. LDA $07A38 ?! P5 [" G; U
  1212. AND #$10
    + X# a. K, ]0 A4 t
  1213. JSR ON_OFF_PPU3 E7 Q" x- X$ N+ H  \$ f* N
  1214. RTS8 N! C( Z; G. B) |5 o+ o! t
  1215. * A- R! S$ v8 K! S
  1216. BULCON_STRING:
    + _" x" C; L# v* }+ U# w# i! C
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80
    ! q1 O4 z6 X/ ~4 r/ @1 d8 B

  1218. 1 A; N1 ]+ A* B0 K

  1219. % D. W! K3 E2 I+ J+ x0 Y. s: u4 X4 k
  1220. BULCON_WRITE:
    " L$ g9 j% G4 l' ?
  1221. LDX #$004 A2 G9 ?) P: f8 b" o
  1222. BULCON:
    5 Z" c8 M  c( H' g! j: i
  1223. JSR PPUADDR_PROCESS
    & R4 x& H' h  A: v% \
  1224. LDA BULCON_STRING,X* Q5 V- x4 E) @4 D1 G
  1225. STA $2007
      Y9 c" O% Y  l# D( p! G
  1226. LDA #$00
    5 M8 Y* F6 N! l) K
  1227. STA $2000, o) v+ x2 m& {
  1228. INC $BA/ C( m% x* K2 C& r# d
  1229. INX
    # D# Z4 x  t' v4 i. g% L# F7 p
  1230. CPX #$07" l8 w/ D/ n1 j3 G9 b! U/ |
  1231. BCC BULCON6 y" z$ n5 w& f. \, n
  1232. RTS
    % h$ d+ `& ]+ X$ |

  1233. - k) ]* q! D/ |1 p  M6 H0 d+ [: c
  1234. BULCON_PPU:
    ; y, j. h: N+ ^* ^
  1235. LDX #$00
    ) s7 D' L0 J6 v1 |- Q' }
  1236. LDA #$62- Y1 O: I# P0 w4 T4 E
  1237. STA $BA2 t8 G- [, b6 e% \0 \6 L
  1238. LDA #$212 M8 S0 {* [$ F+ h  ^* W  v& l5 u
  1239. STA $BB* a# o! ~# E4 r$ w
  1240. - t3 ]6 i7 y% C8 O. K: ]
  1241. 3 S$ e  y3 V. v! _; i: X! ^
  1242. JSR UP_PPU* X+ m. W# x  f- S8 s: h  h
  1243. JSR BULCON_WRITE+ g" z& B2 p  j% A2 ^5 A" P
  1244. LDX #$00, b% e" g  o, U" v
  1245. LDA $07A4
    5 v, S% B3 l. ~6 S& T4 o$ g
  1246. AND #$08
    7 y8 h; E+ m) c
  1247. JSR ON_OFF_PPU' x3 a* I( I% H4 `+ o
  1248. LDX #$00+ k4 w7 m- ]. T) y" M7 x' W' w+ P* F
  1249. LDA #$71# j+ s+ p) O1 T6 o: y9 L/ y3 s% u  c
  1250. STA $BA
    + y, V9 k& H( K: [8 d
  1251. LDA #$21# V9 G# I- e# @6 M$ F$ S
  1252. STA $BB
    ! `, V" l: T1 q* w$ u2 m
  1253. $ r5 F/ G/ Z; m; Q; C% H

  1254. ' m7 h! h, f& ]* F& |/ s3 H- q
  1255. JSR UP_PPU5 I  e  c/ ]4 v- |
  1256. JSR BULCON_WRITE
    ' t+ m0 N+ f, Q& |+ u
  1257. LDX #$00, g9 P: `3 o  O/ Q4 a' m/ _% W) {
  1258. LDA $07A59 y5 z+ |3 e" N) m; J# A
  1259. AND #$08
    + x2 H0 r+ ^" @+ }
  1260. JSR ON_OFF_PPU# `/ I) F8 S5 Y$ o5 x: A( R
  1261. RTS2 J; O8 k1 ?- [( t# @' w% H" p
  1262. / x) _, J. z4 Z% R6 V
  1263. SPEBUL_STRING:) A/ f# h3 J1 b) m$ }7 D- c
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    ( e7 e  u# @9 H" I( q* L

  1265. ( u9 V! s4 E: s, n6 o

  1266. - Q! Y0 [, c# O. A
  1267. SPEBUL_WRITE:2 `2 O0 b7 x8 K2 y+ z, S; q
  1268. LDX #$00
    . t$ ~2 o. p4 C1 ]
  1269. SPEBUL:* a, ?! E) s; w) ?" V5 E, u4 i
  1270. JSR PPUADDR_PROCESS, z8 o5 B/ \8 S/ [
  1271. LDA SPEBUL_STRING,X$ b0 N% j/ [* z2 |1 a8 V  F) B
  1272. STA $2007
    9 Z; Y6 q0 z/ O7 U  o6 |5 ^
  1273. LDA #$00
    . o8 o, s% j! L, r' D1 t9 \3 ^9 p
  1274. STA $2000
    # [0 {/ `, _( I+ p  J  c. @  i
  1275. INC $BA
    1 h. y5 n3 X; B4 P
  1276. INX
    " ^- n8 i- K: I+ W7 T- O
  1277. CPX #$07& ?; S4 E, f- z  q* C
  1278. BCC SPEBUL
    5 @. h* e; Y  K* M! z. W: o
  1279. RTS5 y0 B  y/ X: r' v* D6 V. @1 F. x

  1280. 9 g" g5 S/ I3 B& J. f
  1281. SPEBUL_PPU:
    : ?% y" X- Z$ s6 d
  1282. LDX #$00/ H2 P9 d$ U) X, n
  1283. LDA #$A2
    1 A. G, ]7 y+ V" T
  1284. STA $BA
    6 _# a4 o. W. O, y- N
  1285. LDA #$21  J4 V6 p4 B8 d1 m! T& q: E
  1286. STA $BB
    , C& I  ~" q; {% L  N1 {: N8 \

  1287. 5 o# x1 e4 w; u+ z, V4 H* ~) Y
  1288. $ @4 g- |, ]( v# a1 \" K: [7 j# @! k
  1289. JSR DN_PPU
    & O: O+ D9 R$ X
  1290. JSR SPEBUL_WRITE) T' V  D: ^, D  E& [
  1291. LDX #$00
    9 A7 o! F+ ~# f  D
  1292. LDA $07A4
    2 `# W5 `  T: K. W2 ?
  1293. AND #$02
    6 O, b' d0 D* P: j. ~! Q8 F
  1294. JSR ON_OFF_PPU/ F5 I! N, X) k. t% f. _% F
  1295. LDX #$00
    , @9 U0 u1 _$ D$ D0 Z
  1296. LDA #$B1
    ; k9 a: o+ v$ L& F% p; I
  1297. STA $BA/ Z/ \. z% e+ a" o, O3 e) G/ }' `( X
  1298. LDA #$218 r6 z  U  }+ H
  1299. STA $BB
    ; ]8 F; }( g; a  a

  1300. 9 h# z3 X4 @- h0 K2 I) \
  1301. 0 g: ?/ o+ C# f! f0 k5 R
  1302. JSR DN_PPU
    + ~; }6 B4 J, a* G; u4 B! x2 B
  1303. JSR SPEBUL_WRITE6 x* D2 I' t& s, D2 a2 v
  1304. LDX #$00  X- |' V$ d% c0 z
  1305. LDA $07A5
    ( S9 b- z2 P& T% T( a
  1306. AND #$02' Y( ?7 }" O7 _/ d
  1307. JSR ON_OFF_PPU. l2 p2 L3 ]# k( q3 V. T3 k$ {
  1308. RTS7 y2 ?" {( `" Q
  1309. 3 I/ d: Z. q8 U; k+ J1 H6 Q. s  V& t
  1310. .ORG $A500
    % E- x$ O5 K" m$ E  E
  1311. CLEALL_STRING:
    1 \$ m4 o$ Y4 \' s' P1 {
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    1 ]( `* a/ b6 H- W2 J4 o0 E
  1313. 2 n/ ~4 Z+ h; h9 w
  1314. & |  Y9 }9 p) P* T" O! U* m" f
  1315. CLEALL_WRITE:
    4 G5 Q# k4 L1 J: [
  1316. LDX #$008 t7 m/ k2 `* [( u6 k, V( I& M
  1317. CLEALL:8 ~, M" ]& n$ T: [5 i& Z
  1318. JSR PPUADDR_PROCESS( ?3 D  n$ Q0 a
  1319. LDA CLEALL_STRING,X
    ) \7 o, p/ h9 l7 P9 x9 K+ {! K
  1320. STA $2007
    # V& h( r. M" I
  1321. LDA #$00
    0 D6 X0 j2 A4 W3 x7 Z3 T+ B
  1322. STA $2000, h: b3 J  V6 @9 v9 h- B
  1323. INC $BA
    6 y$ q9 C4 [+ ~7 s
  1324. INX: ^2 P# v/ g3 U! ]& ~! V, g
  1325. CPX #$07: a& d, ], I* _: M7 j
  1326. BCC CLEALL
    4 f: q8 F; X, p" V5 @. j3 h8 r6 t
  1327. RTS
    - E% I/ V$ Z- U& x( n8 Y+ Z

  1328. ' T8 S7 q" X' t; U. H
  1329. CLEALL_PPU:6 s" O& I5 f1 M  e+ d
  1330. LDX #$00
    + X. t" [& b+ ?
  1331. LDA #$E2% T- A) h: ?. d7 s( a) l2 f# y
  1332. STA $BA
    ) }: c' i. V$ g
  1333. LDA #$21( ^: j1 B6 F0 N6 z* z9 i2 c
  1334. STA $BB
    ; O  \; a  x' p. Z2 \1 Z0 R
  1335. . J1 y- ~" o7 \% w+ Q: [
  1336. 8 Z9 ^1 N, f% s" J/ p
  1337. JSR LF_PPU
    3 v8 g7 Z9 T: `- Z
  1338. JSR CLEALL_WRITE8 g4 h  ?( B% ]& D! e) J9 e
  1339. LDX #$003 W& V/ z1 B6 ?+ `
  1340. LDA $07A4" p2 i' S  f8 ^( C3 N* i( Q+ D3 u3 }
  1341. AND #$04
    - U& q/ i& D# m" P9 X" j4 z  d
  1342. JSR ON_OFF_PPU
    * n% L- E) e! n) c! O* {
  1343. LDX #$00! [  o$ {& W" N' x4 w$ p5 {
  1344. LDA #$F1" r, \- l: Z% |3 [
  1345. STA $BA
    2 x. J( {: X# s1 d; l& x
  1346. LDA #$21& P$ z/ Z% P- S2 G- j3 P& y2 W
  1347. STA $BB
    $ m, H7 h- K, K" c+ t! N' q  b1 x
  1348. , G6 L! }( s6 \* w: ~! I/ V

  1349. 3 p, X1 q% w* Q6 y
  1350. JSR LF_PPU
    3 u8 D" H! k. E7 n6 [
  1351. JSR CLEALL_WRITE
    * R4 W6 ~  g; ~
  1352. LDX #$00
    % k  L- D. }. ^( l& y
  1353. LDA $07A5
    , R" c7 c6 C6 e& O
  1354. AND #$04
    * I* M* l% W8 n; T  Y0 e: W! y
  1355. JSR ON_OFF_PPU
    2 q1 o: x3 b9 Y7 t
  1356. RTS) D8 T* B: b" @' s( a5 c
  1357. 6 c6 U1 X4 X( d& W. e3 r5 L
  1358. HARDMODE_STRING:
    * @4 w6 V5 u% ~8 i; H& Y/ W
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$805 L3 A% g" x2 E$ V: B

  1360. & n2 X# `) S6 R# @( E$ Y2 @: P" Q

  1361. + H. F: G7 j8 }& {
  1362. HARDMODE_WRITE:
    - r/ P3 H: d- F4 i4 M
  1363. LDX #$00* r) W. D# [1 }6 [3 ~
  1364. HARDMODE:6 `1 O' C# n# b/ I; \! J4 R) U
  1365. JSR PPUADDR_PROCESS& v- F1 E+ y% m5 d5 _4 {4 g2 B
  1366. LDA HARDMODE_STRING,X
    ( I8 e0 q0 P# [2 R  E
  1367. STA $2007% {. [7 B0 f* _) H
  1368. LDA #$00
    5 y% T% [7 `  I4 n- ~
  1369. STA $2000, i' s; I- {# u! \
  1370. INC $BA
    1 ^! ^! g6 m9 k; B
  1371. INX
    2 o0 y8 ?3 T, ^$ K; G5 G. W
  1372. CPX #$07
    0 L: g# L4 y* x& Z5 q
  1373. BCC HARDMODE; b, A6 }4 m# @. q/ d. d
  1374. RTS, \  L5 \% S% `  `) F; c

  1375. # X% q/ c, N5 c! p' y* F( G1 i0 p
  1376. HARDMODE_PPU:
    6 G& M" M$ T, v! \8 l7 ]
  1377. LDX #$00* q4 ?4 V3 K% x8 A6 X
  1378. LDA #$22/ |9 ^8 |: W2 J0 Y. n
  1379. STA $BA  ^8 g: {8 z+ ~( I0 k
  1380. LDA #$22
    # U3 b& k& Z5 W
  1381. STA $BB! v3 |9 E5 o4 J' V  l- y5 |
  1382. JSR RG_PPU9 c% V6 q' Y. z+ g/ D9 E; \
  1383. JSR HARDMODE_WRITE
    6 p& G5 f: z9 u' f: j
  1384. LDX #$00
    0 x  L' U& Q/ [
  1385. LDA $07A4
    ( f5 Z( M: a! T  l$ b6 H  c7 }
  1386. AND #$01
    # D  H( w) J5 h) M/ \7 x
  1387. JSR ON_OFF_PPU
    $ u8 U% M. `; m2 |
  1388. LDX #$00
    4 o( n2 ~+ k; f' u+ `
  1389. LDA #$31
    0 }% b: S& F! R
  1390. STA $BA  H6 y# _: Q1 c; A" s
  1391. LDA #$22
    6 p5 e$ W0 b. R$ ~& X; n
  1392. STA $BB; A0 s, t7 S. N5 F# w9 a7 s
  1393. 8 |& M- {3 T# x5 r6 V3 i; f

  1394. 5 R+ j) [; t5 s) }  _, T
  1395. JSR RG_PPU/ C8 r% F4 i0 g) L
  1396. JSR HARDMODE_WRITE" k* J( P. n$ E7 ^# y
  1397. LDX #$009 W+ n- ^8 l! O  s+ c- Y* l
  1398. LDA $07A5, I1 K& ?# y8 i, R# n9 ]
  1399. AND #$01
    * U  d, c. f3 d9 A) b$ ?; X
  1400. JSR ON_OFF_PPU  @/ j/ T3 `2 A% P5 J
  1401. RTS: W1 i& b' p- \" ?
  1402. 6 v$ U8 k# T, Y0 r/ n& k! F
  1403. B_TO_JMPSTG_STRING:
    ' q8 A0 V7 r6 y- O/ A8 a* j2 s* C, \
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80" ~4 t6 @' k. X) f* K2 b& V2 f

  1405. 7 |9 b+ m" y& F8 d2 Z( B5 u+ @

  1406. - `5 Y& J2 |6 G+ H# i) @+ @
  1407. B_TO_JMPSTG_WRITE:9 C* ~3 Q- p$ k9 c6 b
  1408. LDX #$00
    6 e. A* \  h$ H
  1409. B_TO_JMPSTG:
    * D8 m: a. r2 c  z# [
  1410. JSR PPUADDR_PROCESS
    2 V! _! n' |* H! h5 ?
  1411. LDA B_TO_JMPSTG_STRING,X# h0 z9 e$ |* s+ }# q/ U' t
  1412. STA $2007
    3 ~' |* r/ {% n9 w9 m  P( C1 T
  1413. LDA #$00
    $ j* Y) J! |, |0 P. J& Z# r
  1414. STA $2000
    2 p  m4 B: N! F. H
  1415. INC $BA
    ; y' e( \' r5 G
  1416. INX
    ! N/ {9 k& K6 V5 X9 |8 E
  1417. CPX #$0D, P0 a/ T& `! [- ]8 G4 N, e( T* g
  1418. BCC B_TO_JMPSTG( d. Y, R& S  S& A
  1419. LDX #$004 k/ C  {, j2 B. y
  1420. LDA $7FE0
    6 x% N, l! G7 V/ B
  1421. JSR ON_OFF_PPU
    5 |: e# J! ~' z5 I8 Z8 i
  1422. RTS
    : l7 H: ^. f/ J9 C1 O+ p3 P! M

  1423. 7 r2 p0 r! ^* R+ `  @( P
  1424. B_TO_JMPSTG_PPU:, H7 W9 w1 Q1 w/ k" I! q
  1425. LDX #$00- D" O$ ^, i* m  C* q' Y# h" g
  1426. LDA #$68( B% q% d& k2 p; y2 H/ x% J
  1427. STA $BA
    , S# I6 f, J( {" `+ Z% E) Z, c. I0 _) J
  1428. LDA #$22
    4 s4 |6 |' A' U+ h: _: W0 x
  1429. STA $BB
    7 K( Z5 b+ Z+ W
  1430. JSR B_TO_JMPSTG_WRITE
    ) O# {  w! W( Z: Q& M
  1431. RTS7 R1 J% N2 A' F

  1432. + R3 V5 u$ z8 e( T

  1433. . l& p1 s4 u; W
  1434. A_TO_PLAMOD_STRING:
    2 u4 A: [1 L7 i6 e+ J4 g
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80* u  @: V$ l+ E$ s5 A
  1436. ) L$ |7 z8 F& Q; X( K" W0 f

  1437. / h) A( S2 ~3 X! b# u" ?( X
  1438. A_TO_PLAMOD_WRITE:
    ( |: n" ?! K3 }
  1439. LDX #$00
    1 T0 Z$ [6 s* l4 Y2 {& [! N7 k, b
  1440. A_TO_PLAMOD:- c- l; p( Z6 }5 s. D, T: g
  1441. JSR PPUADDR_PROCESS7 l- q5 L8 f2 Y9 ^) C1 Z3 J
  1442. LDA A_TO_PLAMOD_STRING,X
    8 U" a( s6 k: }9 [) m: j$ n
  1443. STA $20070 z& D- u- }- g2 D  ^+ T3 V& M
  1444. LDA #$002 ^- j. i; y. ^2 {
  1445. STA $2000
    8 b5 |& J/ S, I; O: n2 E  U
  1446. INC $BA+ i+ ~3 i& R& {0 _' }6 x- N1 o
  1447. INX6 W; v& g1 U* n
  1448. CPX #$0D9 t: _0 G* j  k  M3 R7 B
  1449. BCC A_TO_PLAMOD
    * r+ u- T7 w) z7 i, X, H2 Z
  1450. LDX #$00
    5 _  q' I2 U  u$ f8 V( Z
  1451. LDA $397 Y; G8 G( I* d
  1452. JSR ONE_TWO_PPU( G3 t* w9 B4 \8 S) S, q7 u
  1453. RTS6 o  f- b6 u3 s6 b; `2 u

  1454. ) Y# S& V9 d& c, |3 u& k1 q2 F4 W
  1455. A_TO_PLAMOD_PPU:
    ; Z  k, ]# N- R* o; e! @: x
  1456. LDX #$000 ?3 m+ Q' I! u, J* O& I
  1457. LDA #$A8
    7 o7 I/ ]0 h& D6 i( F$ L) g
  1458. STA $BA' \; p$ B; R: x) S. P5 @
  1459. LDA #$22% M7 Y' j2 V5 ?( h: P* ^& m+ h
  1460. STA $BB
    3 U7 }6 `. Y: Q+ j1 {
  1461. JSR A_TO_PLAMOD_WRITE
    , D4 S  |4 H( t8 `1 T& v3 f' W( c
  1462. RTS
    2 N& ?6 V4 r, K) l! q. X6 F

  1463. 9 A% x3 {2 U4 O# j' l
  1464. MOVSPE_STRING:. m3 r- a# b) Q$ D
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    9 f/ o) Z6 X1 U% j; _) s7 \3 D6 J
  1466. 5 D3 [; X: ~1 p. N7 y' k
  1467. 2 @5 K( z- u; l( [1 W3 [# H" M
  1468. MOVSPE_WRITE:+ W- ~7 C: M) P7 v4 H. M/ T
  1469. LDX #$00: `0 {& c+ f: t3 I6 I
  1470. MOVSPE:
    ' s2 c& Y- |5 J0 @% j
  1471. JSR PPUADDR_PROCESS1 I* i, M1 q* T5 b5 k! ^' d4 z* H4 a
  1472. LDA MOVSPE_STRING,X
    $ G7 @! L3 M: X( R
  1473. STA $2007; ?+ b1 b! r( u8 K$ [) a0 R- p
  1474. LDA #$00
    . b# o6 }+ L2 d: j  m. E
  1475. STA $2000
    2 h) ^( x* z' X, A
  1476. INC $BA- ^8 \0 [0 a: j1 s7 [
  1477. INX
    0 }, q5 \7 s  P+ y
  1478. CPX #$07
    9 a, \3 I5 E# \: h. {2 O
  1479. BCC MOVSPE! V0 _- [5 V/ Y
  1480. RTS# T/ j" M" ]2 T* S" O6 X
  1481. 0 @1 \& F$ u' L+ d* Y* \/ ?
  1482. MOVSPE_PPU:
    ' R3 ]: T- c5 e( y4 g
  1483. LDX #$00/ @. {; T- l% i/ l$ J
  1484. LDA #$69
    1 E1 s3 ^6 B) u$ @+ m; O& _, [7 L; ^
  1485. STA $BA9 C5 q1 `# U! ^) d
  1486. LDA #$21/ h: u9 r  |3 }7 D, ~: |
  1487. STA $BB0 E" a. c' D& Q8 H& w' x4 \! W) i

  1488. $ r; a1 @: h( _) t' {; S
  1489. ; W6 }# _7 k; f# D. p0 x; c
  1490. JSR UP_PPU
    ) i# K! F  Y6 s0 h: w
  1491. JSR MOVSPE_WRITE( P; C0 Q+ l, ]& W
  1492. LDX #$00& ]; a+ b3 t! o& d; t* D5 [
  1493. LDA $079F
    4 A' g: H7 h: x. |" [+ C6 i5 q
  1494. AND #$08
    6 K& \/ [# z$ X! g+ m
  1495. JSR ON_OFF_PPU
    2 p* o+ G9 Z3 e+ ^2 c
  1496. LDA #$80
    ! i: [3 I) Q4 {' k8 a& G% y
  1497. STA $2007/ \$ X9 ?0 ]1 N2 r5 G$ G0 |- A
  1498. RTS8 e" t' z- d/ _; l2 _0 w
  1499. 6 Z/ M1 K, [' y
  1500.   ! u: I1 t+ l* f/ h, z7 F, P1 J
  1501. UNLJMP_STRING:% |# y- E) n* x) x
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$804 X4 w6 e& n% ]+ R, [) K( m6 d! c
  1503. ) a: a# |: d6 r# V+ o
  1504. " f- A: k' I8 B
  1505. UNLJMP_WRITE:
    2 i. T6 J- a* ?5 w" W5 V
  1506. LDX #$00" K* E  o; S# [* i0 C
  1507. UNLJMP:
    $ e9 F3 k* l6 q8 h/ u8 f, L
  1508. JSR PPUADDR_PROCESS9 j# _, n, h( D
  1509. LDA UNLJMP_STRING,X
    6 |4 }/ m+ w: F& @, B" c" o
  1510. STA $2007
    2 S/ I: H) x3 k
  1511. LDA #$008 @. @5 K5 D5 Z# |- Z+ [
  1512. STA $2000, j$ U* g. b1 D4 T' `9 M8 M% p- {
  1513. INC $BA
    ; g% S6 w2 }; L) f, R" z) f
  1514. INX
    , O& A( {" f2 u/ L# {
  1515. CPX #$07
    : O8 q' w2 P9 S' Y5 X: {' N4 c
  1516. BCC UNLJMP8 c! g0 N" D% E" u
  1517. RTS
    ' B  y/ ~% |- A; J& A$ U

  1518. 3 a* G: c% h  F' T' E
  1519. UNLJMP_PPU:' h! |5 e+ H' O% t6 i
  1520. LDX #$00" b" k1 j$ K+ {% S8 q3 u: E8 B
  1521. LDA #$A98 F. e3 e7 G4 Y5 X$ y! M
  1522. STA $BA
    3 w6 z! U( X/ g# T
  1523. LDA #$21
    ; z& j8 U9 Y1 f! v/ y% H
  1524. STA $BB, J: g+ N! L9 T+ @

  1525. ! ~; Z: C  Q% p. H5 t
  1526. , x2 T, P; S) U
  1527. JSR DN_PPU
    : g  J4 q4 j2 v1 O) r2 r
  1528. JSR UNLJMP_WRITE; D7 z# {! @) d9 Y
  1529. LDX #$00
    " m; j  h( g% s# B# V
  1530. LDA $079F5 Q3 @6 j7 v4 ?: K9 ~& a  e. z  L2 e
  1531. AND #$04
    9 A: w+ p$ W7 m
  1532. JSR ON_OFF_PPU
    / L' |+ b4 e5 M  Z" H, d4 |
  1533. RTS0 l" ^  j) Z/ D; o* ^/ n& M& k( u

  1534. , |2 M% n5 N! q7 |/ x  X
  1535. 1 h& S3 H5 i- o( I' B
  1536. DESTRO_STRING:4 C- p; [3 o/ k" l* X* S& m: p/ J
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    # d5 x4 F3 x  z* W' e( j* o

  1538. / w. }- D0 s+ o* i" u
  1539. . z$ `9 B8 F& }7 j
  1540. DESTRO_WRITE:
    5 Z8 @2 ^" T7 Q. z# X8 Q
  1541. LDX #$008 o4 t3 m4 n% ]  E" t# G
  1542. DESTRO:* Z7 n' ^5 ^; D0 N, Q
  1543. JSR PPUADDR_PROCESS7 N$ c8 P: i( c- w  U; c  l
  1544. LDA DESTRO_STRING,X; d0 s2 M5 @! g
  1545. STA $2007
    ; z* j. ?5 W+ R* H' h# f2 i* ^
  1546. LDA #$00
    / G+ @" c: F6 _8 U9 \7 T
  1547. STA $2000
    0 i0 B( @6 \) E0 \1 o/ ~: {4 [
  1548. INC $BA
      e$ j* {9 j% I6 e) N, R& l
  1549. INX
    8 p) [. V8 {- C1 H/ w8 }
  1550. CPX #$07' l. V' {5 L9 R; j4 B4 S
  1551. BCC DESTRO( ?. \1 M' r# F# @6 i
  1552. RTS
    % G  }" t& ^) f7 {3 Q% J) e
  1553. : V( k2 P& r- Z0 u5 R/ {3 y5 D
  1554. DESTRO_PPU:
    3 y8 o# K2 b- X( x/ k
  1555. LDX #$00
    ) s- L% J8 N  b- C; a! r( O
  1556. LDA #$E9
    4 _' a/ A, `( _
  1557. STA $BA
    1 p6 k) }/ w6 [8 ]- {
  1558. LDA #$213 O' `, `  h4 R+ B3 x9 c: w
  1559. STA $BB4 ]+ p- D! d' J

  1560. 0 r% |4 X1 M2 }1 [* M
  1561. . X1 N6 J2 X% F4 |3 b
  1562. JSR B_PPU' Z9 g9 A' F9 R9 s8 u2 c
  1563. JSR DESTRO_WRITE
    3 o) N1 ]3 m2 \; A! i5 a+ Q4 N, a
  1564. LDX #$002 }# W7 j7 W2 }
  1565. LDA $079F- Z4 B: b  [" n( m3 u9 I
  1566. AND #$40
    ; L3 ^, i& r1 F1 T6 K3 W& Q
  1567. JSR ON_OFF_PPU/ X5 V% }- n5 _3 s6 S8 ?, C  L+ M
  1568. RTS
    0 U. @2 k: m8 t6 w
  1569. # d$ F$ {' f3 `* a

  1570. 7 R: L: L) l" `, O; ]" e1 A' J3 P
  1571. EQUBUL_STRING:8 y2 }  ?, J# D: p
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80& D* i9 x* j* `" u8 q: `& k) v+ e

  1573. ! ~2 V6 T. d, K$ t. q

  1574. , C$ y- z6 a/ o" D/ j2 d: u
  1575. EQUBUL_WRITE:
    . H! C* i0 n  }. D! o
  1576. LDX #$00
    $ t" Q+ ^( @# i( q8 l
  1577. EQUBUL:
    8 ~$ [3 f) ?8 [& k8 D0 c
  1578. JSR PPUADDR_PROCESS1 t( L; m4 o* i2 z; d
  1579. LDA EQUBUL_STRING,X! }# C" p* K; q7 z6 O7 Y# `" a: K
  1580. STA $2007
    ) |; w# [7 J% z, r
  1581. LDA #$00! X: v3 C+ p1 o
  1582. STA $2000
    & ^1 F! }) x  K9 R; f- b
  1583. INC $BA
    ' O& Y8 c/ Y4 k2 S
  1584. INX
    . ]& O1 v$ m; ?7 }
  1585. CPX #$07# m7 g% v# m9 @! W
  1586. BCC EQUBUL9 h7 P* j2 B+ _, h3 G! [6 B: T7 j
  1587. RTS. r; _, _. f  ^

  1588. 9 W7 U, O2 f7 P  g
  1589. EQUBUL_PPU:1 G; n; O1 }1 Z
  1590. LDX #$00) w- @) B2 ]' H% ^$ q( t' |! \
  1591. LDA #$296 K; b1 l& f3 U% b
  1592. STA $BA
      O. j9 ?4 o; d, p
  1593. LDA #$22* ?4 @; s$ e6 h# f; P5 `8 j5 U
  1594. STA $BB$ ?% x  F9 T! L8 ?) q6 Q
  1595. % P+ i6 n6 S7 P4 T3 R
  1596. / S8 Z1 b9 k& d3 j* L5 O
  1597. JSR A_PPU3 Q, S; ], E# |5 N& e; F
  1598. JSR EQUBUL_WRITE
    ; X) G  o8 Z, n6 G' l
  1599. LDX #$00, ^% n7 e! U/ r
  1600. LDA $079F: ~( ^7 E# i6 f$ O4 G, y
  1601. AND #$80
    ) d. V+ D& R* s; w1 l' i, A3 O
  1602. JSR ON_OFF_PPU" O5 J2 C0 z+ }% b/ U
  1603. RTS
    # ?5 `# Z& a" k6 T, c
  1604. & j* u  n+ i. X1 s0 b

  1605.   E, k# H/ V% o4 A

  1606. % R. X0 r9 K) B. O% e( Q
  1607. BULSEL_UP_STRING:: M2 t% D" K* n
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    4 z2 p3 x0 A7 a. p- X" W7 n

  1609. 8 i6 X" S" Q% d& Y
  1610. BULSEL_DN_STRING:0 t' w6 r6 Y$ V9 x) n0 e% v
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$800 ~( Y% ]" p0 M4 d+ y% u8 U9 d

  1612. ( C/ g# x6 Q3 m, p3 r- D3 M& @; y6 @
  1613. BULSEL_LF_STRING:, e) N2 h( z6 x$ _1 p
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80' |1 z' j! j0 B* m3 i4 y6 D( T
  1615. 7 j5 e+ t, Z$ H7 v
  1616. BULSEL_RG_STRING:
    ! E+ ~6 b, I% ~
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$806 D7 W* _. u1 q1 {/ p

  1618. ) C; d7 B4 ?+ R; w$ I
  1619. BULSEL_B_STRING:
    , C4 G1 O4 ]/ h% Y+ c& T/ b
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    . Y$ S6 j- ?" B2 T7 @& H: O4 ]

  1621. ) b7 r) J% A0 [0 n( q
  1622. BULSEL_A_STRING:7 b1 k! Z4 G% v* I, }+ ?
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E3 l6 s+ k" h, l; o* D: X. b  ?

  1624. 5 \: @3 i, h! Z7 v5 l$ N
  1625. 9 a* w: e4 ], P  ~* K4 a
  1626. BULSEL_UP_WRITE:. O* {6 U( c  p( L& X5 I3 P
  1627. LDX #$00/ J! R8 }. Y  W3 g
  1628. BULSEL_UP:
    ) t, ?& R& ~% \: n- T) u# U) ]( ^
  1629. JSR PPUADDR_PROCESS
    / m9 z9 z* n( x/ [
  1630. LDA BULSEL_UP_STRING,X
    6 M9 r1 s6 M$ c+ D
  1631. STA $2007+ Y  Q4 Y# p$ Z2 }3 e: Z
  1632. LDA #$000 N  e! A+ E! N$ K1 E! G3 V
  1633. STA $2000
    8 P2 v, R' n) s9 ]6 e8 f
  1634. INC $BA
    ' n$ H  n/ ]0 q7 y9 W" Y, ?7 F
  1635. INX% M0 m* o( K3 D! ]5 R5 D! W; {
  1636. CPX #$09
    . X+ w6 N% w" Y/ E1 |
  1637. BCC BULSEL_UP& @: L, `! v8 U3 E- c! @( X7 F
  1638. RTS
    3 M! o7 {9 x; U$ z( ~
  1639. BULSEL_DN_WRITE:
    3 t! D6 ~8 G6 A" F5 Q1 B  d" {) ?
  1640. LDX #$00
    4 w; {$ y7 _8 f) t; O- F% N. i8 e
  1641. BULSEL_DN:6 o! M! R! p2 W
  1642. JSR PPUADDR_PROCESS0 ^0 S/ K$ V9 s% H& f, K
  1643. LDA BULSEL_DN_STRING,X8 J4 K* y  r- d9 ]$ u& \" z
  1644. STA $2007
    % ^3 R6 Y! r+ W$ S' m6 M
  1645. LDA #$007 S# V5 d% O( c- p: j7 [4 y
  1646. STA $2000
    7 w( g/ g( h6 B
  1647. INC $BA" @7 O( q9 y2 K: z2 n/ V, u* l
  1648. INX
    , l/ Y; _$ i) u3 C, ]1 N
  1649. CPX #$09# E8 w  ?: V% P$ t% J
  1650. BCC BULSEL_DN% C; S; b$ d' a  E3 s  B. ]
  1651. RTS% H# G8 c6 D( F; a; [
  1652. BULSEL_LF_WRITE:: F& V: Y. y2 p, ^* {
  1653. LDX #$00
    ; d, z: l; f2 b" ^. ?: f
  1654. BULSEL_LF:
    $ V  {2 a+ b- m; i; l+ N
  1655. JSR PPUADDR_PROCESS
    ) v; A$ ]! I3 [3 Y/ `  y; X* N. \
  1656. LDA BULSEL_LF_STRING,X8 X! q* p9 c( |2 j
  1657. STA $2007
    : O" t2 d" x1 R) S& B9 X1 h
  1658. LDA #$00
    0 N7 \1 A0 e) s; D
  1659. STA $20009 ?# D; \" p/ i8 e$ A! j
  1660. INC $BA( r. M$ B4 a2 X( T7 z. N" Y
  1661. INX- h% s7 q$ ~1 N8 L
  1662. CPX #$09: ]- G; i" {' V! T  m9 }8 Y
  1663. BCC BULSEL_LF: n3 B' _4 p& |! [0 _. V/ z
  1664. RTS
    & E# ^* Y" I$ z( w/ Q
  1665. BULSEL_RG_WRITE:
    4 Q! W% M( d* O  r! o2 E" M6 D
  1666. LDX #$002 g7 w6 [- r: T/ P3 x# J+ t/ F
  1667. BULSEL_RG:3 e! z, [, _; |9 n0 i6 s+ V
  1668. JSR PPUADDR_PROCESS8 G8 B) S! a! n2 I
  1669. LDA BULSEL_RG_STRING,X
    - H8 F7 ~1 c5 P. x" X. i5 T0 N
  1670. STA $2007
    ' ^' m2 |+ [3 W2 h2 u! w$ H
  1671. LDA #$00' Q; R& r0 J6 y* `; `1 d2 v- A
  1672. STA $20002 e. {6 o. v1 y4 ~  W) m4 r7 v
  1673. INC $BA
    - ]7 l& {2 u1 e6 z$ n, F
  1674. INX. p: O( s# N/ \0 T  d& J
  1675. CPX #$09: S# M5 k% _. x" e5 x
  1676. BCC BULSEL_RG5 l" R! u- Z( G2 N0 I: V
  1677. RTS
    ; d4 G* Z% w( w! V9 t
  1678. BULSEL_B_WRITE:" x; [5 \' T* Y2 _) y( O
  1679. LDX #$00
    % M: ]  o  Z& O
  1680. BULSEL_B:& e* ]8 N' S9 E
  1681. JSR PPUADDR_PROCESS
    ) o7 j. P, c/ z* ], s! t( u
  1682. LDA BULSEL_B_STRING,X
    , o9 k! Z  Z- R) A
  1683. STA $20078 |* ]$ Z+ a, f/ h$ @! k, o
  1684. LDA #$00
    $ f) }; i0 m+ p, E: Q
  1685. STA $20005 Z8 y+ @% g4 F8 t( R, L  f
  1686. INC $BA
    1 s5 M' p2 ]' r$ n+ s
  1687. INX- K; ^. O8 t* J5 d" g$ y& g7 o; L
  1688. CPX #$09# t$ G* s: t; e7 }: I$ U7 F
  1689. BCC BULSEL_B  t& j% x3 A# K* Z4 t
  1690. RTS
    $ O7 X* C1 `! R% s- a& s& ?
  1691. BULSEL_A_WRITE:4 x5 ?7 `. K0 T( K8 g
  1692. LDX #$008 q/ j' E6 h  ^1 T0 d4 \/ D
  1693. BULSEL_A:
    . u; s/ m: O8 c
  1694. JSR PPUADDR_PROCESS1 v# i' K6 K1 a/ J/ i' J$ ]
  1695. LDA BULSEL_A_STRING,X
    6 i* y! }, |& V, N
  1696. STA $2007+ T# l0 \" S  e9 ?/ v
  1697. LDA #$00
    ; R  h1 y& c" Q$ \. L8 ^
  1698. STA $2000
    . m* M: s3 F* W: k. v8 h; _4 ^% c
  1699. INC $BA
    " m: |, P0 M7 \, ]; \# Y3 t: t
  1700. INX
    ( O/ V  m/ y% P+ y4 p* |! T, C
  1701. CPX #$124 @# f3 j. \& R+ i
  1702. BCC BULSEL_A
    , X/ \: ?- Y) P  f, ]
  1703. RTS
    7 y: ~* o7 P6 P* I- E3 j# x$ _: l

  1704. 9 ~; [( e, ?6 T3 D$ k9 E0 D

  1705. ' J( Z$ `  d6 q" O

  1706. * E) ^4 r; T6 j; s. y: B
  1707. BULSEL_PPU:
    9 s! J0 a  {" P
  1708. LDA #$6C
    ! z4 _  D+ P7 a) G
  1709. STA $BA1 D0 g& M  q* p) z  u
  1710. LDA #$21* X+ i# b# A* v$ ?( J4 i( c' C
  1711. STA $BB0 `* j; C# q7 C% D
  1712. JSR BULSEL_UP_WRITE* n) \; N) I) A# \) a7 @

  1713. . y/ D4 M& L8 a3 c9 D. W% u6 m# u
  1714. LDA #$AC
    ' S4 k$ K0 {+ {  A. y- p
  1715. STA $BA( d4 e9 R) g  c& I$ m: b
  1716. LDA #$21
    1 G/ T8 N5 e5 ]
  1717. STA $BB4 E+ a  N8 ^' C, k
  1718. JSR BULSEL_DN_WRITE! g6 u1 x; F: z3 y5 u

  1719. / J! y+ }5 B& X: F' @
  1720. LDA #$EC
    4 V; ?2 X; M3 O  B
  1721. STA $BA# T8 w: r4 O$ G
  1722. LDA #$212 d5 j4 W( Q* L
  1723. STA $BB
    ( M) Q7 q4 r% Z8 m3 n. H* w
  1724. JSR BULSEL_LF_WRITE
    / f8 d8 C) S3 W6 e. ]

  1725. 9 V" V/ M6 P' R" k
  1726. LDA #$2C8 R  A$ V8 `6 |. a
  1727. STA $BA8 v; @$ a4 }2 `- X' h
  1728. LDA #$22
    4 X* A  e9 Q6 P% M5 L
  1729. STA $BB* |) ^7 ^7 ~  g9 i4 F1 ~
  1730. JSR BULSEL_RG_WRITE
    4 V. }0 ^/ \( s! w* d; C6 g1 L

  1731. ) A' w1 }; Q" b& i1 c+ @
  1732. LDA #$6C, ?4 N, j: U2 \' Q
  1733. STA $BA
    1 x; c, h+ [% o2 m
  1734. LDA #$22$ d# X( o: N% x3 D; j" w; w
  1735. STA $BB) V8 h$ s7 y( J) L
  1736. JSR BULSEL_B_WRITE2 L; y5 C* S# ^* o
  1737. ; S0 I" l4 Y8 z6 Z+ r1 S
  1738. LDA #$A70 r% T$ B6 G/ W: o
  1739. STA $BA: n8 x1 i6 |3 ^  [( Z$ f
  1740. LDA #$229 f7 Z* N: Y5 h4 h8 m
  1741. STA $BB/ l5 O- s' z! r
  1742. JSR BULSEL_A_WRITE! L* J  R9 |0 w% y1 |
  1743. RTS
    3 J; P$ E: w: C+ K* Y9 h8 f
  1744. ; [% |- O' b6 P7 n8 D! O

  1745. ( y- z) R+ u3 e: H. n

  1746. 3 U: S8 E# R) ]7 b7 O
  1747. UP_STRING:# `& D. H6 J, F! M' `+ G
  1748. .BYTE $9F,$9A,$803 ~* D: e8 ~0 D; }+ ?# ?0 @; e1 c
  1749. $ N5 Q! @; s2 P. A6 L
  1750. DN_STRING:
    , s: q  o9 f* H9 m7 C0 r! i$ N
  1751. .BYTE $8E,$98,$80
    / L+ N2 D" M0 `7 k0 [) Q

  1752. 8 s' n) J7 [, b4 I
  1753. LF_STRING:; \- {: W  c+ u1 q5 G6 S) B: \7 y
  1754. .BYTE $96,$90,$80# H- J( P$ ]0 S: }) d

  1755. 1 B, {7 o# Y1 ?$ M% \* O
  1756. RG_STRING:
    / `( n/ k0 n: o
  1757. .BYTE $9C,$91,$80* I$ |& B9 F' K/ @+ k( |/ u1 X

  1758. / d+ S; `* W. |' l* ^8 @
  1759. B_STRING:
    ! [+ @7 M$ C! j$ U7 E
  1760. .BYTE $80,$8C,$801 v8 G) s8 X4 R' B6 j6 c2 j
  1761. " j- [) d- r5 v; p" R
  1762. A_STRING:) o1 C, N5 A( `
  1763. .BYTE $80,$8B,$80* F  W/ f3 B5 z. J( s- R* U6 H
  1764. - j$ O( ?! R8 q

  1765. / z- l" X8 X+ W7 ]5 H' W: R& S6 D
  1766. UP_WRITE:, o4 J6 R$ `; I9 E5 H5 w+ U
  1767. LDX #$00
    ; d; y# Y2 n; _% Q! l! E9 c
  1768. UP:! Q! k$ O8 S. @+ x$ p( S8 ?
  1769. JSR PPUADDR_PROCESS
    4 x- {; ^2 u1 g5 m2 O4 [7 ]
  1770. LDA UP_STRING,X
    : N6 {3 k* t. e: D6 \
  1771. STA $20078 m5 X& R- I1 g& f1 i7 V
  1772. LDA #$009 @' h1 o6 ]# R0 s$ H* w- r
  1773. STA $2000. N. S1 Q, L  C; w$ I
  1774. INC $BA
    # G5 u- \5 ], z  A0 z5 Q: h
  1775. INX$ ~; I1 B# S/ a4 R& N. i3 H
  1776. CPX #$03
    - S/ M  `3 U7 e
  1777. BCC UP
    1 H- Y5 D$ r# Y& t" J$ [
  1778. RTS
    , S5 ]9 t# Z+ m* o$ m# T7 V  q

  1779. : L7 T6 U% J& w$ F
  1780. DN_WRITE:; i6 Z: w0 j% h) C. N. F
  1781. LDX #$00$ M0 Y" [- A: B: X
  1782. DN:
    2 K9 D5 V9 T0 }7 m' C- a
  1783. JSR PPUADDR_PROCESS
    / X' M+ \1 N/ \) r
  1784. LDA DN_STRING,X$ k. ^/ m9 e0 b" E
  1785. STA $2007
    5 G5 b* z, f. }  a$ V
  1786. LDA #$003 D8 J/ h5 D3 h5 y
  1787. STA $2000
    : Q+ N/ G' H* c0 F
  1788. INC $BA
    0 e" @% J( W/ l4 H% B2 A
  1789. INX
      N4 p- t; T- M+ x/ M
  1790. CPX #$03
    # }8 I+ [- A. X6 `2 s1 a
  1791. BCC DN
    $ e; a0 {# P  P5 V4 N
  1792. RTS
    9 U! s# G& J& K3 L1 B; J6 K
  1793. $ F1 V4 c% R: j: @. \% p
  1794. LF_WRITE:
    + Q4 H, N* Y9 c# _
  1795. LDX #$00
    . Y7 v2 r  ~- k7 A- l
  1796. LF:6 o. q" I/ t" r5 R
  1797. JSR PPUADDR_PROCESS
    0 Y0 `2 R- z" C+ L
  1798. LDA LF_STRING,X
    " p& K& p% y& ?. G+ I$ l4 ]4 N9 `
  1799. STA $20077 e. J$ L8 J$ V  I6 \; ~2 A
  1800. LDA #$00
    5 Z  m8 s6 ^' x7 Y0 @; d
  1801. STA $2000
    , B# N! _0 q% r2 ?% J6 e% Z5 V
  1802. INC $BA
    0 e/ O+ j* J, {
  1803. INX% E5 R: F% P/ z5 L/ q
  1804. CPX #$03
    ! `/ p, W; I; X6 i
  1805. BCC LF, R; h+ ]0 C# I
  1806. RTS
      i  \9 }" l4 d! O5 |
  1807. 4 G: z# r/ [! h. [# O
  1808. RG_WRITE:
    8 x. v4 A3 c/ D# p
  1809. LDX #$00/ P/ I! i( o7 N; d! b+ V* d: n  w
  1810. RG:4 ?. h' C) w* Y; o9 U, V
  1811. JSR PPUADDR_PROCESS
    , W# t" v2 [/ x, Q2 `9 _) L; y
  1812. LDA RG_STRING,X
    ) H9 P# a* x' N
  1813. STA $2007
    # `) v2 u% {3 E6 O7 A9 P
  1814. LDA #$00
    + [+ z& Y7 F9 t4 E. W( Y+ p) f! r* Y7 o8 A; B
  1815. STA $2000
    + u  @; W6 ~, h" S- r
  1816. INC $BA
    0 N$ i8 L# ]& V' E% h$ B
  1817. INX
    ; p/ F! [# _' J9 d- M
  1818. CPX #$03
    ; q4 a: ?' y$ H4 t1 [4 _9 |+ f% S1 P
  1819. BCC RG0 M4 R3 h* s' F2 p' A
  1820. RTS1 b7 F  u+ J: `2 L! M9 i7 p8 }

  1821. 0 n7 w1 X: c& s( Z
  1822. B_WRITE:
    2 p( c/ j0 Q$ \4 j! u! n; k
  1823. LDX #$00) ]2 j& e4 w% W$ v
  1824. B:& I4 {# q3 j/ Y: H
  1825. JSR PPUADDR_PROCESS, r, y$ z7 }2 @. ^4 F
  1826. LDA B_STRING,X
    3 H: y; w; L' `( p/ K) F) [1 {, _
  1827. STA $2007
    5 o; Y% z/ |7 d& k8 P& h* }
  1828. LDA #$00
    7 c8 ?2 |3 T" v4 {, H6 A
  1829. STA $2000
    ) P" p7 Z6 F+ P+ f; h2 Z: ?4 E) Z
  1830. INC $BA. e& T0 }7 x; w. S" E7 S
  1831. INX
    . H+ l* l8 Y' o# {$ Q3 j; _# o
  1832. CPX #$03
    5 B" w  w! Z& {2 H& U! Z
  1833. BCC B
      `: t& @- d. S
  1834. RTS4 T% ~) l. @2 |: M

  1835. % K  H1 ^9 c3 _5 o4 ?: z; M% N
  1836. A_WRITE:
    8 ~: V: J9 i% x+ r2 _
  1837. LDX #$003 t, `4 i; ~$ e( V7 z6 |; J
  1838. A:: k/ S( h. E% X5 _
  1839. JSR PPUADDR_PROCESS
    7 Q7 w  l$ S1 p
  1840. LDA A_STRING,X
    1 L) Z! H1 L6 u2 A/ C
  1841. STA $2007
    4 _0 D9 `5 J4 u" q: L
  1842. LDA #$00+ M$ ~' k7 P8 b0 [7 E% `3 \3 M
  1843. STA $20007 ]- K& y; r1 h! b( c2 M
  1844. INC $BA
    0 H( ^2 u* P5 A( i1 M  _. k
  1845. INX
    8 R9 F2 i5 d/ p+ m0 J
  1846. CPX #$03
    ! K0 [2 U4 Y: [, A" G! c
  1847. BCC A: L7 n- L) C5 M' f# h/ i4 ?. Z
  1848. RTS5 o' J. J+ W) q; q0 R

  1849. 4 @" I$ R: i+ w: y! g

  1850.   O5 h) m1 C3 [7 u6 d$ H" r) T4 b! {
  1851. UP_PPU:
    ; H! ^0 ^4 _8 N  y, [6 P5 |+ d
  1852. JSR UP_WRITE4 k1 U+ d; B; K! v1 v1 x/ [% I
  1853. RTS1 ?0 h: ^$ C9 n+ N7 M
  1854. ) W; M1 L6 ?- {: e8 {1 L
  1855. DN_PPU:
    " l/ N4 U- s3 n3 n9 z
  1856. JSR DN_WRITE
    & q6 K% t2 r9 c# J
  1857. RTS
    : K! j$ ]8 V% J* c' ~

  1858. 2 q. l3 y/ T8 `( o0 E* m9 y: B
  1859. LF_PPU:+ L/ W9 B6 Y( ^7 ]: n
  1860. JSR LF_WRITE# B+ I% a/ p" y3 U, w& |5 w/ d# \5 G
  1861. RTS! J3 m: J# Y6 X
  1862.   I- X: q; D# r; y* k
  1863. RG_PPU:
    # S# k+ m8 }9 A
  1864. JSR RG_WRITE
    , t# k; S9 i% W' l6 Q3 o
  1865. RTS
    6 p. w; k5 g) A$ O  L% `
  1866. ( Z9 r: z6 ]0 V# ~$ w1 ]
  1867. B_PPU:
    . |7 g+ z) g7 ~3 ~5 u% t
  1868. JSR B_WRITE
    5 V" P1 X$ f, V! u* t
  1869. RTS
    , s* V4 D8 n( {) v

  1870. / j/ [; p+ s& a0 @
  1871. A_PPU:
    3 M; J: y! |$ Q; n
  1872. JSR A_WRITE9 T; n  Q/ c3 r  d( n$ ]  z
  1873. RTS
    6 T0 ~8 j6 ~7 w! c2 f
  1874. ' B& v5 Z9 N& m. l, [0 p8 h/ A6 w

  1875.   @& i5 F+ P5 ^0 u- C3 h
  1876. PAGESELECT:
    4 d8 C* B( |3 w) T
  1877. PAGE0:& H* f7 U, ^2 P# ^( a% B
  1878. LDA $07AA* l0 l' z& k) _/ W  b9 {
  1879. CMP #$00
    1 J# `$ E! A7 b
  1880. BNE PAGE1
    1 m6 M1 m3 J& N" Y7 y8 B! q) F
  1881. ) p8 ]7 u- o. o& D: M1 L2 m
  1882. PAGE_00:
    - Z# L% h3 J) x; F1 V5 M0 k- M; `& n! S
  1883. JSR BULSEL_PPU9 E- P1 `2 `8 L8 H
  1884. RTS& g- s+ d" D- l( M1 y

  1885. 5 {; q, U# `8 ?/ C4 G1 z
  1886. PAGE1:
    + j# K, @& @+ J$ X; S
  1887. LDA $07AA
    * g0 B0 A: M7 ?5 f- L" K7 G. R
  1888. CMP #$01
    # i! L, c/ ?, R8 M0 X1 a, j" T
  1889. BNE PAGE2: l$ U& ]9 k1 S0 N! P( U& p

  1890. ; ~- x! T' E7 K5 Y0 z
  1891. PAGE_01:
    * p6 [5 A6 F! H
  1892. JSR INVINC_PPU
    $ e- A# i0 M: }4 m' u
  1893. JSR LIFELC15_PPU4 L4 m/ Q; F) A6 S+ y0 L
  1894. JSR DOUCON_PPU
    ; a5 O7 a6 @9 I+ u1 g, B6 D2 Z
  1895. JSR KILLON_PPU
    8 U' z3 ~5 M* Q4 W# c& x8 i, L
  1896. JSR SKYFLY_PPU1 R. W/ Z5 L& g3 S1 ]
  1897. JSR LIFELOW_PPU' h* A+ X( k6 [; w/ z
  1898. RTS
    1 E: R' T3 l$ D( r2 ?. ?2 Z# a

  1899. 1 F2 [0 `/ N1 e' J7 B
  1900. PAGE2:
    2 K& e  T1 \2 U5 ~' f
  1901. LDA $07AA
    4 B/ g. C/ k& V% z9 R4 o$ p( M9 F
  1902. CMP #$02: z- j* }5 N, T5 d* w/ p0 F7 m
  1903. BNE PAGE3
    " _/ O6 i- m" a) Q' [
  1904.   ^: `" t5 ]% T! M- x
  1905. PAGE_02:, p& P/ @% _% i8 J# c" F
  1906. JSR BULADD_PPU
    ( f. [  Y6 {$ p/ Z4 X, l
  1907. JSR SKINGE_PPU' ~: y5 t) |" `
  1908. JSR BULMIX_PPU
    2 Z8 J' o5 f5 A6 ]
  1909. JSR ENELOC_PPU
    : [9 S+ U; {2 S7 S. d  b: Y1 Y
  1910. JSR FOCFUL_PPU
    4 b, R* n& }& d
  1911. RTS
    0 c$ G. }6 _* y# F  l7 c
  1912. 0 `7 y6 q7 q. w3 ^& u
  1913. PAGE3:
    $ I' D+ r8 A' Z4 E/ p/ ^# Q4 ?; {' a0 K
  1914. LDA $07AA
    # `8 E3 Q9 O$ x7 ~
  1915. CMP #$038 h8 j# d6 N  z8 ]2 [
  1916. BNE PAGE4  ^& I) ^+ [" g2 ^- W

  1917. * b1 B. Y! p: j
  1918. PAGE_03:6 t6 l3 N* U, j1 K6 F* B# _
  1919. JSR BULCON_PPU
    / m3 y7 c# f6 y# w9 W
  1920. JSR SPEBUL_PPU/ l2 T$ n. p. [9 C- ?
  1921. JSR CLEALL_PPU* H' ?: \1 c& i; I" D( k2 t
  1922. JSR HARDMODE_PPU& m+ U: R1 y, t' _2 i0 \, D' R
  1923. JSR B_TO_JMPSTG_PPU
    + W4 g" X& g2 {; I
  1924. JSR A_TO_PLAMOD_PPU2 e* ^. k8 l5 h" p) K
  1925. RTS$ F* h7 P- O& J3 |) K

  1926. 0 J9 L5 H# F; G+ O/ R3 N% H: l9 [( ]
  1927. PAGE4:
    5 ^/ k: z; b2 q  G0 {
  1928. LDA $07AA8 q4 {: J) N, s/ a( N
  1929. CMP #$04
    6 W+ i+ b  J( s. Q$ {7 R$ O8 q) U
  1930. BNE PAGERTS
    2 H: E9 U; F1 M' ?' ^) n

  1931. % b: n; s. n! q& ]& S
  1932. PAGE_04:! M6 a+ n7 B( K; v
  1933. JSR MOVSPE_PPU4 r$ D* \! w7 q5 M' e
  1934. JSR UNLJMP_PPU0 T3 h" q( s+ K- T+ g( L
  1935. JSR DESTRO_PPU
    3 M# w4 b1 }. z, Z0 e
  1936. JSR EQUBUL_PPU
    . X& b5 M0 L' M
  1937. JSR MOVESPEED_PPU
    5 m! m: n+ q3 `" i+ R
  1938. PAGERTS:8 Q5 r' q6 B! |% {
  1939. RTS) n& A, S4 p# i) Z$ K8 Q
  1940. % @2 U% v% r; V% o, X$ v
  1941. ' l$ t( f* D, R. P
  1942. PLAYER_01_STRING:2 {' c$ S8 M- |! {; v/ `
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    & J* g5 T0 y0 \8 R, o6 _$ ]# T

  1944. 8 N% M! U5 D# `, E, F2 R. F
  1945. ) ]& O8 S$ A+ g2 V- O/ B
  1946. PLAYER_01_WRITE:
    ( v& k) A% I- ^5 l6 b
  1947. LDX #$00
    ' H4 U: p& l3 ~8 U, v
  1948. PLAYER_01:
    % a$ e( L' R+ G2 l$ |8 j' ~4 K
  1949. JSR PPUADDR_PROCESS$ P( [9 s4 b1 k
  1950. LDA PLAYER_01_STRING,X
    ( I- d" d1 v$ q
  1951. STA $2007% z# `* ]1 w! h) J+ K( e0 ^
  1952. LDA #$00; S* j$ A' g, L' e
  1953. STA $2000
    1 H5 U# K  T% S; S( i
  1954. INC $BA
    ' s  o0 E: {" ^! g$ [7 U: y7 D4 p
  1955. INX4 q1 z. l1 }+ k3 M* t1 h
  1956. CPX #$0A- n5 g6 X4 K. T* q& ~& O
  1957. BCC PLAYER_01
    4 E! L3 s6 C1 b* Q- `. e& Z
  1958. RTS
    ( [) p0 R; D: B' ?; e. T" j
  1959. # I1 {+ H4 H! |5 r* g. U1 }* j
  1960. PLAYER_01_PPU:
    $ ~2 v+ n4 o# c) Q% {
  1961. LDX #$00
    - s. S' ?5 e- y- E
  1962. LDA #$64
    ! _! R- z1 b- c- M& i; S& v' J
  1963. STA $BA
    : l& x$ H  n& i. ]# J0 f/ r- R
  1964. LDA #$20# q; k6 a* L: R& R5 _  v4 a
  1965. STA $BB! E8 t3 g" F6 |; X0 _) c
  1966. JSR PLAYER_01_WRITE" ?( u9 _" Q! p+ d8 V; d) I' c) v
  1967. RTS6 Q  ~* x7 v$ _. W' m* n3 z$ Y
  1968. " N" f" Z  B3 q  i
  1969. PLAYER_02_STRING:
    * u# \/ m8 l; h& N
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$807 \, m# I5 s4 i; t7 t; U
  1971. + q- f% i  l% i) ~+ P4 m, G

  1972. 1 O0 g) }5 x0 g* M
  1973. PLAYER_02_WRITE:
      |/ `! r2 B2 V+ W. l
  1974. LDX #$00; ?0 X# }2 A0 I$ d' B# p0 \8 y
  1975. PLAYER_02:8 O" A4 m! W/ B+ p3 N+ d
  1976. JSR PPUADDR_PROCESS
    " m5 t4 F7 O! n, J! A0 z1 g; M
  1977. LDA PLAYER_02_STRING,X
    # y, ]( R+ N. }# `* U' w1 l7 _
  1978. STA $2007
    6 E0 R9 i. `- i5 M; s) z, l
  1979. LDA #$00
    ; u5 U' E3 n2 k) _: _- r  d% \; `0 [
  1980. STA $2000
    ' z# H7 n  z2 C+ n
  1981. INC $BA( }8 Y( o& a  e! c3 Y/ P
  1982. INX
    6 Z% L: z! y8 Z6 u7 F' v2 m
  1983. CPX #$0A/ i) h8 U% [1 O
  1984. BCC PLAYER_02
    6 `' s8 p+ u0 C7 k
  1985. RTS  A. t4 T' {8 n" C+ u  t

  1986. - m5 H4 B" Z  y9 P3 k3 J
  1987. PLAYER_02_PPU:
    $ g0 d2 f; P9 L. y
  1988. LDX #$00) e- B- T5 S) Y; G
  1989. LDA #$73& D( R0 n& m' a) z8 w" d
  1990. STA $BA) d* W, n9 C. k; i
  1991. LDA #$207 l( q1 h3 ?) ?) E) X
  1992. STA $BB0 f- Q% \( u0 m5 @4 C
  1993. JSR PLAYER_02_WRITE& X: q# Y2 V1 q8 H5 |) \
  1994. RTS- g' k2 U0 U' `' S8 ~1 |
  1995. * ?) F. G. m7 w1 Y% [6 k
  1996. PPUADDR_PROCESS:
      f% @7 k9 h0 z! b  l. T' d
  1997. LDA $BB
    8 D$ j. n$ C' I9 C  ~" g& |. h
  1998. STA $2006
    + Z: _2 M8 s  l/ c7 j
  1999. LDA $BA
    : X) V/ d1 Y9 ~. A( H1 x! @. {: f0 j
  2000. STA $2006
    : V3 C3 |1 ~$ X" X/ W
  2001. RTS1 f4 r) t$ L0 q9 C

  2002. ! \  _$ g6 C" e5 j1 V2 C! f* r
  2003. 3 I4 A5 U: y* n' Z+ @4 H
  2004. 2 w# W6 t, O' ~; E. d
  2005. ONE_STRING:9 s/ `3 R, _- L8 O% i4 D
  2006. .BYTE $99,$98,$8F: g% e4 d  Y( c& z1 t3 X
  2007. 3 Q/ P7 P* `+ k" \5 _
  2008. TWO_STRING:
    2 Z* f" N& x% V* x
  2009. .BYTE $9E,$A1,$997 Y( B, n! W! c7 R7 ^- j) i

  2010.   c  G2 |/ N3 l5 \# t
  2011. ONE_TWO_PPU:
    # t0 Z5 h2 M" U$ `' u
  2012. BNE ONEWR
    / d- _! C: ^( X# F) P& O, w
  2013. TWOWR:% S0 H" X" C  u' ~2 j
  2014. JSR PPUADDR_PROCESS% d+ \, L$ [. f+ h
  2015. LDA TWO_STRING,X
    $ V4 f" ^/ D. d
  2016. STA $2007
    / p0 U7 B  N- d& M
  2017. INC $BA1 n% V& L" F, @, ]: A0 v+ U
  2018. INX* V) R7 W' K2 J9 Y! x; c' Q- H
  2019. CPX #$03& T. O' u8 d( n+ `
  2020. BCC TWOWR
    * b) m; p; q. @2 M* W" ]' g- o
  2021. RTS
    : d' ]+ y  c( s
  2022. ONEWR:
    ! k; j/ m4 P4 U! j" Z" H% x
  2023. JSR PPUADDR_PROCESS5 F* G) u6 y( _0 R
  2024. LDA ONE_STRING,X
    ; R7 O6 @$ l( R' s7 a& q
  2025. STA $2007% H9 u% e7 B% F, H, k/ ~" `
  2026. INC $BA" k* Y0 ^$ b+ J; X# V
  2027. INX: E# A: g8 u3 o3 Z* W: m" ?! L# Y
  2028. CPX #$03* J& Z" @1 H2 P( c/ D/ S6 Y
  2029. BCC ONEWR
    - {( x1 }: j$ U. h+ _" w$ J, X
  2030. RTS' J) d" x& p$ M# K" }& {
  2031. . Y! x" s6 l2 |. B
  2032. MOVESPEED_STRING:% H$ y# O2 l. }8 k
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80" }8 r& T+ Z& a8 M6 ~; \2 G
  2034. 2 [9 ~3 M& M5 E

  2035. : h0 z1 d$ a6 L+ P. _* C5 j
  2036. MOVESPEED_WRITE:' R) J  c! p7 k+ N
  2037. LDX #$00& V3 z  C+ H7 N6 y* R  {9 H5 H
  2038. MOVESPEED:
    / a2 d# @& {& X  G
  2039. JSR PPUADDR_PROCESS
    9 b0 v6 o1 `" o; }  F
  2040. LDA MOVESPEED_STRING,X% Q' h. O! `/ n: b- n/ v( H
  2041. STA $2007
    . M% t1 g# _8 S8 w
  2042. LDA #$003 I- H# G$ N$ a! p( V" c' j8 d% }
  2043. STA $20003 m: c; L7 U, {! C
  2044. INC $BA
    4 |" P7 e# n' w4 D* Y' f$ x
  2045. INX
    4 f6 `3 _, c6 d5 X+ T+ A
  2046. CPX #$0B+ L) x# `( A! z$ H8 U
  2047. BCC MOVESPEED: B/ g5 t- n# e0 B
  2048. RTS2 t( a; P- r6 N# B, u, K# P

  2049. / H! l- m0 N( u5 _2 Q8 [: l8 O
  2050. MOVESPEED_PPU:
    0 t$ v* b4 ^* p2 O1 z/ h
  2051. LDX #$00
    . _! b* Y' o0 t
  2052. LDA #$AA
    # U2 G2 r* r+ L3 E
  2053. STA $BA$ y$ K" F& t& K4 f; s
  2054. LDA #$22
    & U1 F- P  E( R9 ]+ h- l
  2055. STA $BB
    ) @5 u( f5 b' R! L
  2056. JSR MOVESPEED_WRITE
    1 `% I9 y7 d! S
  2057. LDA $7003
    . ?( G% F0 g+ v2 ~! Q8 X" O" Q9 H+ T
  2058. CLC
    8 H& h! R% E4 X9 q& O- Z
  2059. ADC #$826 \7 g* a; F  T1 L# @
  2060. STA $2007' \/ `7 o' J9 p
  2061. RTS
    $ O. H7 o  i4 W) k* n
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 549 天

[LV.9]以坛为家II

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

签到天数: 7 天

[LV.3]偶尔看看II

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

签到天数: 2060 天

[LV.Master]伴坛终老

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

签到天数: 2942 天

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

签到天数: 2090 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!! u2 x- C2 _1 _) i+ j- `. k
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2064 天

[LV.Master]伴坛终老

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

该用户从未签到

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

签到天数: 347 天

[LV.8]以坛为家I

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

该用户从未签到

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-8 07:33 , Processed in 1.129883 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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