EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
& o3 s" m0 }" W+ O9 z" m7 n. \6 m; f- W8 [
     [FC][魂斗罗旋风终板END暂停显菜单]

  p1 i* D# w" U& h, b作者:FlameCyclone(flamecyclone.ys168.com)
; u! R" M; l$ N5 K1 Q$ \2 ]$ C时间:2016/11/19 21:46:00. o9 E* a3 W/ A! r
更新日志:
6 E3 ^( F, f; m% p; x- q
2016.11.19:加入暂停显菜单(共5页).
& _% f6 P5 q" Y% M. s& w  f2016.11.12:加入无限跳跃.- W) T- ]6 M/ @# _: i2 o
2016.11.12:加入速度调节.
9 ^1 E/ ~- }; B: Q
2016.11.11:加入敌我子弹对消功能.
  c8 q3 G) }, ^* V7 \8 o2016.11.11:加入全屏闪灭功能.
- ^: x' |" G* C) j! G* o$ M2016.06.08:加入全屏瞄准功能.
: t9 T( y! ?) e' l, v( m. m3 `2016.05.31:加入弹速调节功能.
* @- S# h+ m( F% X4 o2016.01.01:加入高难度模式.
3 Z  B8 q0 g& C5 p' E) f2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
9 r+ E& {6 s" M0 U' D2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.6 G5 {$ k' r; E% H
2014.07.05:双人切换功能优化.
- G2 H: w4 U7 L& Q2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.1 i+ v; X$ _" c7 J! u
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.# F& }) L2 B! Q% n
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.
0 B! c7 S, V: b2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.5 a/ a$ f) @0 x& t9 Y' N
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)9 K+ k) W! j; P* V
2014.02.13:加入自动演示通关.1 |1 U6 o% {8 h
内容:/ q' F# T. l, A3 d! E# S2 k' Y0 H) z
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
' g! w& o- s) U3 ^( F22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
2 Q1 h) k* b2 G& h1 G0 p21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

2 p4 ^- r! r$ O" S" W3 }20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.
2 r" U4 L& N) Z( z# H2 y, k: n$ d19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
7 `5 d4 B. A! q% W" p/ j3 z18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
  n2 D/ _' U8 E3 l! p7 c17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.% `' o! E. `1 q/ Z8 E& f7 I  n
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.8 U6 O+ J0 p/ I2 E- p4 Z9 c
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
; }2 z1 D: I1 F02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
5 B9 b; N# F2 j7 ~03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
; G# g8 \4 e. ]- {, u* p: {04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.2 f3 k7 H9 ?2 e* W7 O. E1 \
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.( M  \! n+ I* c
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.* Z/ N) E1 F* A# T0 V" v! A
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.# P  d1 V3 t3 }" q! r
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
2 |2 F5 {6 d! `: L7 z' _/ u8 w09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
7 H$ z* K6 \1 p/ f" K* J7 K10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.: G0 }5 _3 E% D) O$ K" |7 g! g
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
/ U) D9 |: Y( g& B# T! \12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.( k! ]4 _1 g9 q7 G
13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.+ Q" t: o: R/ a/ L* D) G' M+ R8 [* g
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
! E9 f- K; \, a" b1 N  s% d" a2 ~15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。. H3 E3 N+ ]$ R& h, F( K+ {/ U1 L$ V7 g
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
, B, y- w2 |1 N& W: d# F' f9 `B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!* I+ D4 n; x' ^$ K$ _7 K
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
  s1 R8 {3 v7 M, j1 k- ~% X: _& P: M( r" b) v8 f
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)# [; |- s6 ^4 S9 J
欢迎大家转载,转载时必须注明出处.. e9 B" T, S: c2 j

3 M. P( D$ b: D$ s5 R& q" c! V3 L; S
游客,如果您要查看本帖隐藏内容请回复

$ m' X# p1 d) m" ~+ G$ H
" \+ H+ `/ t2 L1 A6 |# g5 Y忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.  p. @# t0 n' ~7 w+ d
这几天的劳动成果如下:
  1. .ORG $B4003 I" o- i5 m- b' A9 p
  2. / R* i5 h; z0 I; G
  3. ) |8 q/ Y% [$ ~  Y6 A; Z( _
  4. PROREG:
    " A& P& L  o+ J4 f- k
  5. PHA, e# l  K' K1 F4 y7 d8 l4 G, X
  6. TXA
    9 v5 j! ]  Q- P4 {' _
  7. PHA( q% }4 Q& C3 K% U4 v. e
  8. TYA
    . @( _3 \! E" W; L6 D9 l) l
  9. PHA
    ! }9 P3 i. G; b  B- G/ [6 |
  10. LDA $25
    % n9 z9 e5 B- u9 g3 W
  11. CMP #$01
    ) Q& Y5 z* z8 w9 E. s7 M4 o
  12. BNE RE7 P% ?% y# D. k8 c4 E: |$ l6 J: o
  13. LDA $010A5 ~3 V7 n% U  ?3 R
  14. CMP #$00% v# d6 {) W' W& ?3 o0 U: G# q& H/ M
  15. BEQ P1
    0 p* O+ t3 A) w/ M1 K6 c: z

  16. 8 B/ S1 o) ?6 B8 t. s4 C: d
  17. RE:; G8 l$ a7 O4 B% y- ~
  18. JMP PPUWRITE
    / G# r. q: q, E4 t

  19. $ }* W6 |2 Q2 w1 ]9 w$ Y/ O: a
  20. P1:                ; 条件判断
    ' L* o* }; u: g- T( L
  21. LDA $7FFF
    ! c9 p7 V% c  A# ^* `. U
  22. CMP #$FF
    , a6 L9 c2 b& A! w! b2 I2 ~
  23. BNE P1RP0 `* V' n# n% c1 O. v
  24. LDA $7FA02 `/ c6 j% a5 \4 P8 ]
  25. CMP #$00! s" P+ {& S( {* H" t  O( _& G7 G
  26. BNE P1CMP0 M  y: q6 _& H
  27. LDA $2001
    2 F9 F1 l: o; w* Z* x( q$ J
  28. PHA0 k1 t! Q2 n1 ?. f& T: [4 L) X/ A1 B* [
  29. LDA #$00
    % C$ ]! p; [1 h: E0 i+ F- N2 _
  30. STA $2001
    # ~8 r) t) e8 f- t: a  e: U' Z
  31. LDA #$FF" }' W  Z- S; s" o
  32. STA $7FA0
    3 J! E9 F& X" B9 G  Z0 T
  33. JSR CLEANA, q( Q& F8 P0 E( M* i/ G. u4 p
  34. PLA
    ( ^* ~' P0 h  f8 s4 h9 l
  35. STA $2001+ M, c5 b: ?" E) g# i; N" r
  36. JMP PPUWRITE
    3 X; {/ F& h3 G5 z: z2 ]
  37. P1CMP:! ^5 {6 U3 H1 b* ]: Z5 A
  38. LDA $7FFF; p! Z" m8 M7 \4 Z
  39. CMP #$00, D' Q# t! U& n8 T# ~; X9 f1 `/ n
  40. BNE RE# w7 f6 v( e* ^9 n' Y# h
  41. P1RP:6 l* ?6 Z! g  N& p
  42. LDA $2002
    * s9 ~$ n+ D& S+ x5 R# J; ~" ?5 @; S
  43. LDA #$002 Z. i6 s1 H' K0 p' k3 g
  44. STA $2001
    , s% Y7 C/ J+ ?  E. B. U
  45. LDA #$FF
    6 d2 x& W8 E$ u2 |6 V
  46. STA $7FFF
    ; q9 V$ a- H# K2 ?$ Z3 s
  47. STA $7FA0
    % y2 w3 ?  K+ [3 o, |- p
  48. JSR COPYPPU
    9 a. Z6 D8 Y' j3 G8 H; C1 C6 U
  49. PIRP2:" |6 i4 b7 S) f/ C$ ^6 e$ D8 u
  50. JSR CLEANA6 `+ T! f3 E4 {2 p
  51. JMP PPUWRITE# l7 s  k6 I8 {4 q
  52. 0 P' Q& {9 M% ?3 ], J+ u1 T& s+ M! d
  53. COPYPPU:
    8 K+ }+ \2 \4 X. @' r6 w* W
  54. L0:9 J( |. c+ O. R$ G: }3 m2 p  u! u
  55. LDA $30
    " e* D. G% I: ?- ?, K& \5 v3 x
  56. CMP #$02
      f; m. }( c& H+ R) d
  57. BNE UNPROFC
    # ?- p+ ]7 ~# k; X4 I
  58. LDA $FC
    % B2 H9 o$ L% o0 I- p! @
  59. STA $7EFC
    1 X: S1 F$ {, L  P  X1 |( r
  60. LDA #$00
    * o' z) W" T/ H7 G- m: j9 g
  61. STA $FC: B7 z7 f# C+ G) Z  I
  62. UNPROFC:  E& w2 G5 C0 W8 P
  63. LDA $FD
    " K3 I$ @) N2 D& U
  64. STA $7EFD# g4 H: Q; k. r
  65. LDA $FF  h8 _$ ]# k: K/ a- h6 `! E
  66. STA $7EFF
    % g& t/ [: v* d4 _* A1 k) m
  67. LDA #$00! ^0 i& R* C1 G0 w% o+ f: Y
  68. STA $FD. r2 {9 }) J* q0 T. Z4 u. r
  69. LDA #$B07 Z% H, Y% ~& R  c; q
  70. STA $FF7 X8 A2 S2 r- V6 C
  71. LDA $07C1
    , j2 L4 S3 N; u6 G. e. L
  72. STA $7FC18 w( B- V1 I" ^3 G
  73. LDA #$3F
    ( H  E- ]; T+ a$ |. o
  74. STA $2006. P5 I. Z" T; p6 ]1 \
  75. LDA #$019 c$ {- d+ d1 X# U! R7 f8 i
  76. STA $2006
    , q6 E0 j( m+ l' |4 b$ z! d
  77. LDA #$242 g$ f; i3 X- L9 w+ |
  78. STA $20078 j4 m5 t7 S- j; m3 ^+ k
  79. LDA $07F6
    2 l4 w1 ]) S9 m& S& P& L! u
  80. STA $7FFE( s& c: V' U9 M7 ^
  81. LDA $00FE
    6 E  t# I' g; i& w6 F
  82. STA $7FFD* b7 d+ ~$ G5 E# B, Z4 C- B0 i
  83. LDX #$00
    7 J% {$ }  ?& e$ g" P, R8 M" _3 s
  84. LDY #$00
      E+ X0 w; T% L2 I3 r3 @* B
  85. LDA $BD
    . T1 l. h$ a7 w% ?
  86. PHA6 r- d; V" Z3 c
  87. LDA $BC
    - X6 m9 d9 ~% w. o- y; ?
  88. PHA) N) x. Z9 j. G; e+ m; E
  89. LDA $BB
    $ i+ ]" l  H0 J! ]% C
  90. PHA4 \! A5 V6 u7 B' [2 H0 u6 k
  91. LDA $BA
    4 P* F. a/ U$ U/ J3 W$ Q4 H  M
  92. PHA
    ) A+ y& b$ {7 u3 S9 ^) x
  93. LDA $B9, U, d. r4 K" f! O* j
  94. PHA
    4 z4 _6 k; a* P& s- ^
  95. LDA $B8* w" _1 w# j3 J! ^1 r  s! ~& y' Y) Q
  96. PHA8 x* O+ D. i! _# n# ^
  97. LDA #$006 T. v6 q8 F4 U$ @; p& e  J
  98. STA $B8
    & ~) n. n' \8 L  I
  99. STA $B9
    / i% @+ \% V% {3 D
  100. STA $BA: Y7 E/ W8 w" V/ p2 Y
  101. STA $BB& O6 P* \0 J. h- N& G1 v9 c$ e. p
  102. STA $BC& M& ~  s: ]! ?( o/ M) L. M1 N& }
  103. STA $BD4 x1 w8 d9 D+ [& Z& p' O+ _
  104. LDA #$00
    2 I" \" ~6 f- L: v3 H0 Q  N5 ]/ w/ [
  105. STA $BA
    ( n0 U+ o. c; f0 K6 O5 W
  106. LDA #$20
    9 H; }& J0 c5 U% R  D# A
  107. STA $BB
    1 l  G, J! U: {4 I
  108. LDA #$00
    . K) i7 {0 i9 v& e
  109. STA $BC$ d, ]5 N. ]/ [7 S
  110. LDA #$60
    3 j. x$ i- ]" B. q1 d
  111. STA $BD' W/ Q  r# n1 g2 v$ k3 `
  112. ; p! b6 e2 B& i
  113. L1:                ; PPU复制" t" [/ w/ Z* Q) T; L* ?( `. t
  114. LDA $BB6 }! {. [5 b- f* F/ }) ?9 i
  115. CMP #$30
    2 B: p0 N6 s  L. R8 o; l
  116. BNE L2
    ) e  F! [( `- |2 I
  117. LDA $BA& U' C  F. A; l1 l% G- v+ t2 K
  118. CMP #$003 W$ O$ n4 S6 r$ N& j' P4 i
  119. BEQ PROADPLA
    0 D# S+ l# Q5 m% M2 ]
  120. % ]2 \% d  q! u* b4 \0 ?$ F) \
  121. L2:( _# L% y  S- D; {
  122. LDA $BB
    * f& q+ v+ ]  Q
  123. STA $20068 j* o" X; {- ?3 C: _, ?
  124. LDA $BA
    . j+ T- d% V2 Z/ Q- h. R
  125. STA $20069 J7 S6 v2 Z9 U8 S/ k4 i

  126. 5 ?4 u& z  A5 j) z
  127. L3:. F* u% Q3 }, f, N5 O
  128. LDA $2007# }0 t5 k. @8 E/ Q; i
  129. LDA $2007: V( H7 K7 q5 B1 U
  130. STA ($BC),Y
    & s( V. A8 q8 `% ~" \
  131. 4 X- m+ R; a$ t4 |# J. ~: @$ b3 Y
  132. L4:/ V5 S  C# q- X% E% b, `5 G
  133. LDA #$00/ ^) K1 k7 e2 I6 A( T" J
  134. STA $2000. ^9 e% r( S7 x5 j4 |# Z
  135. INX
    - u$ M9 _9 o; U: Y) Z% S1 I9 h7 o' m
  136. INC $BA
    5 a9 N3 }$ V+ j5 t- |
  137. INC $BC9 f* b1 T5 L; d/ z- `' N
  138. CPX #$00
    ! |4 B: \5 @6 b) k, t" A3 ]
  139. BNE L1
    # N  e& }* v% b2 w- O0 o" t$ v1 C
  140. INC $BB
    ' M' o) L- R2 R+ l
  141. INC $BD
    7 v4 Y6 m" A3 ^$ b, f
  142. JMP L12 @+ Q# Z! q5 f+ ]0 j

  143. $ c3 {2 J" \( v. v1 E
  144. PROADPLA:                ;出栈
    1 J# q# a6 N# g. `* L/ C
  145. PLA5 U( Y' N8 {1 \. ^' O& {1 P2 Y; @
  146. STA $B8
    : ~( U0 Q, P9 c( I/ G5 [
  147. PLA" Q# M& D+ c% R' k3 w/ o' j7 [8 n
  148. STA $B9
    . X  F; |$ O5 D9 v& P& G2 a
  149. PLA8 `- u# ], n* }6 R" q$ D
  150. STA $BA/ t" z9 d+ G2 L  s/ N
  151. PLA
    ; C8 q/ f) s; E
  152. STA $BB
    # x" A3 @& R' M8 b# [4 @6 V# y' Y  i
  153. PLA
      a! M/ t, ?6 t6 x; R8 G
  154. STA $BC) s! y* f/ a+ @
  155. PLA/ M/ l3 }+ l- ^+ O4 ]% _; M% |
  156. STA $BD+ F" I- t' E* r4 L7 b% [3 c* r
  157. CPRE:# v9 C0 a9 [. R* Z
  158. RTS6 x/ I) s+ L: ~! A* p% B

  159. - o, r' Y. L' x6 x! V* |% w! G
  160. CLEANA:                ; PPU清空) N; {6 `' Y7 V: k: ^6 c
  161. LDA $BD
    : I* d- A* ?& n% l& {
  162. PHA+ X7 j* V0 n2 P7 o( {" v
  163. LDA $BC
    . g6 Q1 Z( g' F0 ^1 _" x2 W: k2 P
  164. PHA
    # K# o6 A/ z/ T/ c' X* W+ X
  165. LDA $BB3 w  [) w/ n1 T% Q
  166. PHA
    / Z2 @2 c( O$ K  s! E! i6 h  u
  167. LDA $BA$ w) K; F- L+ y# v8 s
  168. PHA
    " y' s( g+ L2 n) c3 d
  169. LDA $B95 ^, G3 J7 A3 ~/ [9 Z
  170. PHA8 ]( d8 ^8 E8 |$ ^! U
  171. LDA $B8+ Q% F" [9 b2 M7 b* E( m! _: t
  172. PHA1 g1 K8 q1 a& b( C; v8 v+ T0 f
  173. LDA #$00! ?: F& h; }) r' R7 _
  174. STA $B8
    , Y; ~+ |8 b9 z8 |. V
  175. STA $B9
    ( J7 Z9 \/ G/ |; `8 x, P4 m
  176. STA $BA
    ( T9 y. Y5 X: `
  177. STA $BB
    % O4 i+ H3 b2 X
  178. STA $BC
    3 G5 P, b4 ?  x- r2 s6 p' J0 k
  179. STA $BD
    7 h& {; {4 M: ~9 T$ x2 L6 A
  180. LDX #$00+ ^2 P- X4 N, Z  D$ [% m' P
  181. LDY #$00
    & X" S3 \+ T) c
  182. LDA #$00/ E9 C9 E' a2 h. J' z" p1 L- J
  183. STA $BA1 Y. H5 Q2 v2 y' D# M
  184. LDA #$20+ t2 V- {1 z1 w9 V& v
  185. STA $BB" q* U2 `. {5 L& D# M# e% v7 z

  186. ; b; t/ X& P- u( _! q. K
  187. CL1:% s8 t2 g7 R  O% d' }$ A
  188. LDA $BB$ v) T2 t5 y% g) x
  189. CMP #$30
    7 S2 ^' \' q! K  O9 u3 j
  190. BNE CL2
    1 X: g4 w; R% d; n4 I
  191. LDA $BA
    + O' q9 E; [8 b1 a2 m
  192. CMP #$00
    0 v8 n& z8 K  ?- _
  193. BEQ FREEWRIYE
    & n- I* v. u' z+ r# d
  194. 2 c+ |( m, [! e7 ~0 I  t- L( W0 x
  195. CL2:
    ' K$ o8 w3 D1 X$ w) ]3 K
  196. LDA $BB
    9 U5 u. Y- J/ g. u
  197. STA $2006
    5 j2 V* o1 c  U# ~) t& u" {, a
  198. LDA $BA# l9 P) O' [. \% ^5 a7 R8 w. d( s
  199. STA $2006( ^* ~& @& [8 }* Q! u  o3 C8 U
  200. 2 L. P, |- E3 w. ]  {/ m1 ]
  201. CL3:
    & m" L6 `  H' C
  202. LDA #$00
    6 \7 m# u8 @( I9 N
  203. STA $2007/ E; j5 d7 i6 h
  204. % _$ b1 w; `. o2 m: y+ y+ U: b# y
  205. CL4:
    4 a! z1 G# w2 M7 j
  206. LDA #$008 _# ]: E8 n7 Q% m
  207. STA $2000
    / u- v: J' f" }( U5 d$ f# {  [7 |. J. q
  208. INX
      l* P" A0 Z/ E3 E& Q! j
  209. INC $BA" s# k: N0 Q& U9 z! q9 D5 r; C) ^
  210. CPX #$007 S( q6 v- y7 x
  211. BNE CL14 J' K* Q" A. @: |
  212. INC $BB
    & s- V% }, b5 T. \
  213. JMP CL1
    # b3 P; F1 D0 [" v) v
  214.   M* d9 d# r) G; j
  215. 2 `  _, C6 ?2 ?( _+ u5 j7 E
  216. FREEWRIYE:
    + p6 t$ o+ @) p1 n
  217. JSR FREE
    " Z2 h! `: ~. x& U! ?2 K

  218. , i1 {# M  y7 h6 C9 J' Y
  219. & A7 M% P4 Z+ p' z2 u+ ~- q! f

  220. : y' k. j2 B( N% d% p' y. }% X; o# R

  221. ! B8 S- S, a' F1 Y4 P
  222. " W/ g$ V/ q  b* {8 i6 n7 i
  223. CLEANF:                ; 恢复现场8 T9 `9 i) Y) u0 _
  224. LDA #$088 E' Y- Q( R0 E
  225. STA $FE
    $ t9 Z! w; ?1 y: g+ B$ K& o, i+ l
  226. LDA #$00
    ) x# ?8 B' c% i( Y0 ]! \
  227. STA $07F6
    ) C' q& [6 G- u& @5 s& u
  228. LDA #$24
    ( P4 ]! _: K6 `5 j7 c; f
  229. STA $7FC0
    / O+ P+ Z0 H* N% a5 y" I
  230. PLA, q+ b$ _$ g- X9 z) q- X
  231. STA $B8& N- W2 t  `7 C
  232. PLA
    , e4 d7 E) E* D, p" R, {
  233. STA $B94 O4 z1 W& \6 b
  234. PLA* C6 j+ e7 C- c! n+ [+ t: H+ r
  235. STA $BA
    4 d$ i7 o( u7 e3 E# d- F
  236. PLA( `. h5 {# q6 j8 W% @1 d
  237. STA $BB
    * C) B+ M9 D* H& D; k
  238. PLA
    + j+ a8 P' k4 B! [) h  U
  239. STA $BC
    ) `+ |" s( |/ W$ p2 `
  240. PLA/ @! j. e3 I7 j
  241. STA $BD
    + x5 j4 n) u2 q( E1 E* f
  242. CLRF:
    4 U  M* g8 p( m  ^' x$ \
  243. RTS
    4 Y7 d. P& G! ^7 Q

  244. ! ^! L+ Z; K. o$ e# R7 L
  245. W_DATA:
    ) y9 G- F6 @* J3 X
  246. .BYTE $00,$01,$02,$03,$04
    7 f7 [/ y. D7 M1 B2 Q4 ?2 ?$ _
  247.   6 v* F8 W/ v4 v
  248. W_PPU:
    ! t+ i/ s* ^1 P8 U7 H' a1 }2 Z
  249. .BYTE $98,$97,$90,$9D,$96$ [. k/ R6 w, S6 \, G) V8 ]$ r' P
  250. * i2 b8 [( W4 S0 a6 A
  251. P1_STRING:% h/ E" ]; p4 g
  252. .BYTE $9A,$82,$00                ;"P1"7 E6 C8 H# f1 u' n$ w. {* J
  253. % ?* n7 ?$ ?' S- J! z; l7 F! T
  254. P2_STRING:' P0 N$ }' |  K4 s
  255. .BYTE $9A,$83,$00                ;"P2"
    8 E8 z( p- v% q" `2 I
  256. 0 X0 A6 M% E, \, I% F/ Y- H
  257. WEAPON_STRING:
    # l9 r/ L" N: {
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    5 _+ V8 G/ t# i4 L

  259. 6 Y- N" ^7 b* B& w/ Y
  260. RELIFE_STRING:
    3 f; \! `) i1 F
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    & }, c  h, n7 z

  262. $ x5 p" }, @' {0 S. k6 b
  263. P1_PPU:
    & s. ^9 w. g$ k/ H3 }2 i
  264. LDX #$007 j% x! l( V- Z6 w8 ?8 g

  265. 3 A: [. ~8 j$ ^) v% \* h5 k
  266. P1_PPUW:
    + X* u0 N8 ^& P
  267. JSR PPUADDR_PROCESS
    ) n8 w- Q* ~+ v# C' ]
  268. LDA P1_STRING,X0 h0 I6 ]6 I" s! \1 l
  269. STA $2007; l3 ^7 c. A! S
  270. INX
    % C, \+ {6 U. G: M" @
  271. INC $BA1 g" v3 ~  Z9 e, L
  272. CPX #$03
    # `. h& C) H* y0 A% _' X
  273. BCC P1_PPUW9 Z8 j# P5 g% s4 |7 p* y
  274. LDX #$008 K7 w* c1 V: E4 k9 C4 J0 t
  275. RTS
    $ b5 ]9 n" K6 Q2 K4 W/ S1 r5 I
  276. " \# B8 N2 d1 `& i" ?3 ?
  277. P2_PPU:
    . ~0 L6 n8 ]; h0 y& `$ S7 E
  278. LDX #$00
    * N- F- [1 W  r/ Y) ]
  279. 8 n6 w) t; k5 d% `7 I" v
  280. P2_PPUW:$ o6 `! K4 t( e5 J
  281. JSR PPUADDR_PROCESS
    : e0 ]  s( X  |& x# k7 E1 c+ M
  282. LDA P2_STRING,X9 T7 w' F; `( |
  283. STA $2007
    $ Z: L) w0 }1 D$ x: z9 p
  284. INX. L4 S8 c/ j8 |( J6 K* h
  285. INC $BA
    3 h! i- H$ }" r' G& H7 U* [1 Z) n. H1 [
  286. CPX #$03; i! i, F& \' h
  287. BCC P2_PPUW
    ; n9 F& A9 q2 q3 N, `4 L2 S, ^
  288. LDX #$00
    # P9 [7 M% y$ B9 I" C2 P2 c
  289. RTS
    . {" m4 c3 }' y

  290. 4 V1 f# v  ?5 E
  291. $ o) A6 [. G4 {6 x7 l
  292. LDA $BB2 B; ^: Y4 F# q/ g8 C! e; L
  293. STA $2006
    2 J9 a5 A& R- `
  294. LDA $BA" N$ l4 |0 y- _# Q1 l9 `7 T
  295. STA $20062 E& L, q% |: X3 a3 g- A- s
  296. RTS
    5 g  O# {5 p, h- [6 b8 b2 s
  297. ! t8 j3 {3 t. x0 i! ]( `- w& d
  298. 7 s$ |1 |+ h* [( V0 E) G
  299. % T0 Z0 R' f3 I2 L6 h
  300. PLAYERLIFE:
    7 Q$ V3 Y+ o9 Z+ U
  301. JSR LIFETODEC' @! Q8 o3 c& I
  302. LIFEPPU1:
    - \7 b4 D5 E; R. ]4 c3 U
  303. LDX #$00
    $ [( \' Z8 W4 O, A' s& y
  304. LIFEPPU1RE:; O1 D3 P0 K: j4 h" |
  305. JSR PPUADDR_PROCESS% P' k  ^0 n) f& J$ q7 R
  306. LDA RELIFE_STRING,X
    " \5 }" @) q) N1 Q+ s( v( `
  307. STA $2007
    : w0 F- ?+ I8 _9 w6 j
  308. INX
    + B3 Z7 {3 E+ n5 D' n! ^
  309. INC $BA
    : s& }  O/ o, V: q2 Y0 O$ ?
  310. CPX #$07
    5 Y1 K: [5 ^5 o. v* h  o
  311. BCC LIFEPPU1RE( m; ~6 f" y0 f. a4 n
  312. : Q( X  }% Q8 R; v
  313. LIFEDEC:                ;生命显示写入
    0 {( H7 f3 X  |# D2 ^8 E& B. Y$ T
  314. LDX #$00$ g: T8 c& k; z8 t7 y% q
  315. LIFEDECRE:
    ; c8 L# ?+ E. E% f+ M: s
  316. LDA $7A03,X& ~) H$ M6 f9 w$ p
  317. CLC
    7 [6 h6 F1 Q0 v( g2 {% M
  318. ADC #$81! H6 v7 P% `( N2 J
  319. STA $2007, `3 Y& P( v+ _! m* B
  320. INX
    3 k& Y; n* R0 x5 Z& P" i
  321. INC $BA! D' A; P, m% p! x* d% Y: t
  322. CPX #$034 L9 G# }, X* o7 X& U. X" w
  323. BCC LIFEDECRE
    8 M- M' r7 N  {) O1 Y+ k
  324. LDX #$00# o4 a% Y; n- Y/ G, \
  325. RTS& d: R0 i9 h) i

  326. / B2 b+ t; w# |8 d7 i* S* Z
  327. LIFETODEC:                ;十进制转换" a3 y* s$ }+ A( [% \7 I7 U; w+ @0 V
  328. LIFEL1:        ;initialise- |/ @0 m) c( w2 t& {# V0 n
  329. STA $7A00        ;$7A00=F37 Q& n4 t1 e* n; o* a$ [
  330. LDA #$00. D; E* j% o( i8 V
  331. STA $7A03        ;$7A03=00+ p/ Z" G+ x1 `
  332. STA $7A04        ;$7A04=00) v% o6 g$ z# g+ J
  333. STA $7A05        ;$7A05=009 r- H. z. |, d6 W5 G: L6 ~5 g
  334. LIFEL2:        ;copy data $7A00 to 6001; Q2 |4 ~) v9 |+ }% Y( p
  335. LDA $7A00/ A9 G7 ?$ V8 ]& {# p6 B
  336. STA $7A01
    * e+ c( L, B' n
  337. , q4 a& `) ^. u1 \4 l. F: p
  338. LIFEL3:         ;hundred
    . Y3 C; a2 j& y6 q9 X
  339. LDA $7A01* V0 F& p( F6 X0 E+ U. y
  340. CMP #$64. r# a1 E1 z% V' x3 ?; t+ Z
  341. BCC LIFEL6                ;$7A01<100 goto L6- H% g# z3 N$ ~- x' ~% R
  342. LIFEL4:
    * o" J8 S' A, t& c
  343. LDA $7A01
    * @6 J; f7 n* r6 H0 G: t6 Z
  344. SEC
    . B# E/ f8 S: C/ s
  345. SBC #$64        ;$7A01=$7A01-100
    1 ]. |: O0 w! B4 p+ m# Y
  346. STA $7A01* f$ h. D; N4 c+ g9 `
  347. INC $7A03        ;hundred++
    # n8 g0 d  |( c8 k7 d3 p& f
  348. LIFEL5:
    : `! N/ P3 F9 ]
  349. LDA $7A015 V- b% M9 n- R2 q. \
  350. CMP #$64
    . v, R/ a( X& p6 }) Z
  351. BCS LIFEL4                ;$7A01>100 goto L4; {! q- t( A4 J# d
  352. + L% V) H: A$ ^/ J4 g
  353. LIFEL6:        ;decade
    % j* i4 b2 I6 \: i0 ^! A0 g  l7 q
  354. LDA $7A01
    - L- e3 x" n% k; F5 A) y
  355. CMP #$0A) e; D# w2 W) \$ Y
  356. BCC LIFEL9                ;$7A01<10 goto L9
    + F7 A9 s% N: y8 u
  357. LIFEL7:        : R9 j/ F* i, H8 g9 n3 [- z
  358. LDA $7A01
    : ~6 l- a2 y! o8 a$ G3 |' B
  359. SEC; Z4 l* r: w& N5 p: I
  360. SBC #$0A
    6 P- h7 ]5 E! `4 L* X' z, A
  361. STA $7A01        ;$7A01=$7A01-10) _. p8 R7 o# Q# L1 x* V5 o5 i
  362. INC $7A04        ;decade++  V1 X* z. p/ w- ~+ j: F
  363. LIFEL8:' q# x3 b: _( h
  364. LDA $7A011 |5 J$ Y9 ^" ]; e- ?3 j9 u! u
  365. CMP #$0A2 C' k: ^6 p' a0 }) X
  366. BCS LIFEL7                ;$7A01>10 goto L7
    + l1 }1 z& f3 h% t3 P6 `
  367. ;unit* c- K8 p/ `6 O5 d; u* b) N( h: l/ H
  368. LIFEL9:
    5 M$ K; I5 u. |$ P8 v* u
  369. LDA $7A01        ;$7A05=$7A012 ]4 j( J& {. h+ \- a
  370. STA $7A05        ;unit
    4 F" v& b1 F; n. Y; o1 s: |  R
  371. RTS        ;return
    ) e  |: U! [7 u& U  p6 Q
  372. & D; m4 s( _/ \) v+ ?1 w/ F3 ^
  373. 8 S# ?* E' u+ U6 A. O& i3 Q+ _8 O
  374. . g. w  b) W- d% V. L
  375. WEA:                ;武器ppu写入4 p. g$ W$ K  {# m+ v
  376. LDX #$00/ ^6 x; B# p8 i1 p% t) i
  377. WEARE:
    # [0 l& Y8 l0 x6 t- Q/ K( `1 l
  378. JSR PPUADDR_PROCESS
    " a& `+ }+ s5 I" l: N; @
  379. LDA WEAPON_STRING,X
    & [- V9 `/ A: P- X6 Q$ Q
  380. STA $2007" T+ m9 ~" S. Y
  381. LDA #$00
    1 [+ ?- W3 D- H& E- ^2 D* ]& j
  382. STA $20002 i: ?) s$ W# m, B/ ?
  383. INX
    , O) w7 u% _# y5 Y( ^* G# d
  384. INC $BA
    9 C; k( P9 Q' A( ]9 [' ~9 N
  385. CPX #$07
    . Y; u1 W5 K$ Y6 f+ a/ K
  386. BCC WEARE
    & D. R  o) M7 w0 w& t
  387. 6 s# o& O8 V, S
  388. READ_WEA:0 d* D# S" J& D) x( V
  389. LDA $B9
    # R& C' L* K  t- K2 g  \7 W" }
  390. AND #$10) ^5 T, @1 ]$ }- M
  391. BEQ NWEA* P4 y' a( y+ b* G& r
  392. SWEA:: T1 w$ ~# q* i+ i- V" B
  393. 6 W9 F, x2 w' M# {8 Y
  394. LDA #$9D
    , U! H2 [9 V: f4 p
  395. STA $20077 Z4 I5 J9 {$ @4 i
  396. LDA #$00
    . ?+ a  E, e: A* s1 y" r. E' v
  397. STA $2000
    , Y# K- ]9 B1 l# s$ N
  398. INC $BA
    - N( f8 j# @  w( x
  399. LDX #$00
    . p9 s! s1 ?8 I( e% W& y
  400. JMP WEAREAD" w( [. R; Y6 s* m
  401. NWEA:
    5 s9 A; f! E* M8 c/ Z) s
  402. % Y: C' j* e8 n! L" V
  403. LDA #$8D, |6 F- b0 Y$ X3 \
  404. STA $2007
    . f! e: O/ e1 |& C# i4 N, x5 G
  405. LDA #$00
    / m3 }# Y) t! B- x& @0 r
  406. STA $2000
    ) \; D8 }5 k# i2 M& g
  407. INC $BA
    " i0 k0 N; T) ~- \
  408. LDX #$00
    7 ~# M8 L5 N0 o/ `
  409. WEAREAD:) a# ?* A* V) `: {2 _2 `" q  k
  410. LDA $B93 s: V+ G/ ~. K+ O
  411. AND #$EF3 J- Z3 f' l+ d3 ~0 ^" ~; j
  412. CMP W_DATA,X0 T  ?6 m1 S1 ]1 ?1 [9 Z
  413. BNE WEACMP/ w8 K) ]/ `* P8 ^
  414. " J; @2 ]$ d# H8 N+ X9 V
  415. LDA W_PPU,X  f* @0 B/ n4 k, B& z/ s1 ~
  416. STA $2007
    * n" ]4 Q& o; p; X
  417. LDA #$00
    6 T5 Z# }$ r5 _  R6 X; p2 r
  418. STA $20008 T1 Y0 J0 H4 ?4 o( z: A
  419. : M8 b9 m. s. \; a  \
  420. WEACMP:0 W0 Z! q/ d. i+ A
  421. INX0 }6 Q: D8 b. B9 E' B& [
  422. CPX #$05
    7 Z' z. m; R& Z3 V
  423. BCC WEAREAD# {7 G+ ?# z0 M* L
  424. RTS3 O7 ]0 }7 p+ w" P

  425. 4 [; G; |) }( h
  426. 5 V" j$ W( p. _. x7 S4 h
  427. PPUWRITE:3 v" j5 P$ B# L0 E2 `6 c. b1 U1 R
  428. PLA
    : g: d7 |+ ?: `- G! \* R% Q9 ?
  429. TAY4 ?  }, [* I$ j
  430. PLA
    % [! Z" b* m4 \# ]0 V
  431. TAX  `& s* D( k( U! Q: k4 s8 l2 F
  432. PLA
    . I/ V! n/ Z3 W, a: Z3 i
  433. LDA $25# t" ?: y" [, @( x5 ^) H
  434. CMP #$00
    & f8 p% D4 W# }% {5 G# H
  435. BEQ WP18 y4 `9 [: S; i! @, f8 Y
  436. LDA $25% f( G- f( K0 Y+ w6 a* K" B/ q
  437. CMP #$01  Z( r5 W% K, J( H( q; o
  438. BNE WRE3 g+ f: M. d' h' W! \! C; ?
  439. LDA $F5,X' k! A. T( R! t5 ?, f5 _
  440. AND #$EF% s; T/ @# L/ }( T. ]4 y$ t
  441. BEQ WRE
    ; A* c% u+ _( `/ Q- p9 ^
  442. LDA #$00
    . d2 j8 r% z- }; I* X
  443. STA $7FA0
      w' U( @2 u/ V& G1 Q

  444. ) }9 B- R: P! z6 g& s! O+ f, m0 {
  445. WRE:
    9 ]  k& T. Z- v
  446. JMP $A000
    8 z( a9 D5 P% `  w- A

  447. 0 z' o% N. \$ d5 y/ [8 {0 \
  448. WP1:  l9 L. i/ G# ?9 K! P' W
  449. LDA $7FFF! ^1 E/ r4 n8 {
  450. CMP #$FF! T# W9 h3 L- c$ T
  451. BNE WRE8 d- U' N% @! q4 W) Z6 Q0 `  Q
  452. LDA #$00. ?! N. x2 n# i
  453. STA $2001
    ' M8 A% Y: L+ M' J( C( i3 s
  454. LDA $BD
    % l* E, D+ F, u' x4 n% L
  455. PHA0 x- K2 J1 ~& x% W7 n& O% f: B
  456. LDA $BC8 Y6 B/ w/ T6 Z. \
  457. PHA  ~& K( R5 o% }& n1 I3 h
  458. LDA $BB
    $ A0 q* v9 J5 t6 @4 w
  459. PHA
    , U) t  w" H, X  F) n. s7 U
  460. LDA $BA
    / [4 o* ?* [0 a: y
  461. PHA: y7 ^7 B: D+ f6 c
  462. LDA $B9; \: u3 ]! N8 ]1 s
  463. PHA" u0 z- ?/ h8 b1 \! M
  464. LDA $B8
    9 ^. o8 K3 S- s, L! S1 D3 R. e" E
  465. PHA* ]9 ]# F" \/ }, O4 A: V. u* _- I
  466. LDA #$00
    ' m/ K9 D. j; M; Z0 Z7 n
  467. STA $B8
    . |/ F1 K0 \+ L& n$ l: @( Z
  468. STA $B96 u0 Z% o$ b4 ~' y- v& M$ V
  469. STA $BA
    ) y3 m/ g7 m$ {. _# j0 s
  470. STA $BB
    ! ~* y3 d3 a% p  {" Y" ~: B, |3 H
  471. STA $BC& i  N! V7 h6 L+ m( R5 ?& f
  472. STA $BD. w  g. C2 M& _0 U
  473. LDA #$00
      ~' m7 y0 M  u+ a+ `, \- I
  474. STA $7FFF
    / s" P! }! X  s
  475. LDA $30/ a3 N; {3 z" H4 g" J; V
  476. CMP #$020 ^% V! I3 j, K9 w) }
  477. BNE UNPROCPL
    / ?- p$ q+ n' f: m% `( D. Q: \
  478. LDA $7EFC, ?& O$ g' C/ ]' Q5 A# n
  479. STA $FC, Q+ Y5 O3 L5 u. R
  480. LDA #$00# ]  `  r0 Y/ L1 i
  481. STA $A4$ |( B2 ?) E& x' U9 {, U
  482. STA $A5
    : p! T. g% K$ O: x: N- v
  483. UNPROCPL:% A+ H* F1 N$ L, v
  484. LDA $7EFD
    7 D( y. B$ k; f! z
  485. STA $FD
    & |3 M3 i2 J) x1 U2 i; t
  486. LDA $7EFF
    ! E( `8 F- O0 \( O
  487. STA $FF
    5 x9 M; }! j3 O3 @
  488. 5 ?/ e: p7 p9 e6 K, O
  489. WL0:
    . y6 Z$ f! w* u2 F
  490. LDX #$00" ^2 x* g/ h( S5 L1 a+ k  _
  491. LDY #$00
    " O( @3 z; R/ G1 n2 D- C% T/ S- \
  492. LDA #$00
    3 e( B) O' ?; r  \2 q+ X# _
  493. STA $BA
    / ~2 S% {0 M3 T+ z. _# U
  494. LDA #$20
    # u/ n6 ]& `9 |& f  y" N" l3 @
  495. STA $BB- f+ E) c/ B4 N' D$ ]
  496. LDA #$00
    1 O% \3 a! j. V: m9 Y) Z, g
  497. STA $BC
    . d8 a) J8 {5 o/ @- h, t) O/ r
  498. LDA #$60( K" _) J1 ~% y. \" ~9 i) L
  499. STA $BD4 g9 f9 Q# Y% E% q% s

  500. 8 H! c' x2 C  Z- q7 q. Q
  501. WL1:
    $ S6 B5 Y5 h! Y. ?' I
  502. LDA $BD
    # R( a' B; {/ o. f" M: X/ l
  503. CMP #$70
    , J. i2 [3 S% g
  504. BNE WL2! q" O  t* T8 G: _) a
  505. LDA $BC. V9 m" |' E% h: a
  506. CMP #$00' l+ z9 \- W0 u2 _' E
  507. BEQ WLR& }$ L7 \5 E8 s/ ~; i

  508. 2 e) n; M& k) ]" w# Y5 |7 n2 w
  509. WL2:9 R- N) i5 ]9 D' x+ V4 n7 G* R
  510. LDA $BD
    : X; d: k% \# G' m; z, z
  511. STA $20066 P5 Y8 d: k/ H4 ?' `# T
  512. LDA $BC
    ' l# h7 f* L8 @) c" Q1 h' v0 n
  513. STA $2006
    4 i; N. D; N/ x
  514. 6 {1 x% Z  g( I+ _( G  y
  515. WL3:
    * h8 y/ o6 f5 K) ]
  516. LDA ($BC),Y
      @$ {# r. A* T: }9 b
  517. STA $2007/ l- U6 q; L, X8 Y

  518. . @7 J  u' x8 `& Z
  519. WL4:
    ( p3 S; f2 N7 K" k- ^- c
  520. LDA #$000 }& R, }3 l* _0 ^
  521. STA $2000
    ' b% T  Q% i' N1 w8 E
  522. INX1 b  I: N% C# o; N; |( q4 ?& A* B
  523. INC $BA
    * w/ g. q: e4 `- F3 ~& B& u
  524. INC $BC6 i0 M& @  e# d8 Z; L) G; ?5 G
  525. CPX #$00% Y( `: ^- T& @. M- W
  526. BNE WL1
    2 Q% x. l* F' n1 T; g& K' S
  527. INC $BB! [- Q0 R, B& v% S, A; P
  528. INC $BD3 L7 C7 U6 T4 c, i  M( \8 f. R2 J
  529. JMP WL1( j, `* S6 z3 L: P
  530. # `5 l# ]9 _+ _, i- U
  531. WLR:* k& G: _4 J5 ~
  532. LDA $7FFE) \# F/ e' [& T9 d; M
  533. STA $07F6
    ( r; D: K$ b9 d# ?( C
  534. LDA $7FFD
    ) ?/ T6 _+ k6 m& P
  535. STA $00FE
    7 q+ {+ g$ Q( _" _/ ~
  536. LDA $7FC1
    + O* ^2 u2 v8 r% F) L
  537. STA $07C1
    4 K* m/ |  g5 A) N) ~  k
  538. LDA #$3F
    # b, H/ G. C7 O, {. M9 v
  539. STA $2006
    . ]2 P' X! c0 U4 ^
  540. LDA #$019 _5 a2 I# ^0 [2 F
  541. STA $20062 \# s5 y' ?/ n- q' e& D1 A0 M
  542. LDA $07C1
    % ?5 t* c  @# `& _; n- W
  543. STA $2007
    : |9 Y( h) E! I' [! p% ~
  544. LDA #$00$ H, v# R! W- \
  545. STA $2000; f; \( x: n$ v- U* y/ h3 y
  546. PLA6 y* Z- R' F1 x
  547. STA $B8( d$ E9 R# ]; P8 a
  548. PLA
    - `4 u' H7 q( S# F( j! d
  549. STA $B9' d! T: N) d3 d! b1 n: M# _
  550. PLA
    ( |5 I* B3 M; Q# s$ H) D+ h$ [) v
  551. STA $BA* u3 F1 D1 ~' p7 H
  552. PLA
    & P7 ?$ `- ^% x# D6 R" ~
  553. STA $BB
    5 _' Q! o3 n* t. h& L* I  l
  554. PLA! t0 |/ I6 o' C/ i6 R* Q) a% p# Z
  555. STA $BC. W% p- K* M" r! h+ m& \
  556. PLA
    - P  m2 i- Y# {" ^/ Z9 h/ H* p
  557. STA $BD
    1 T. k4 u% s! {5 W: P- U/ w# w
  558. JMP $A0009 i" Y3 b5 f2 G- H+ R9 s
  559. / n( g, e- F! \. P
  560. FREE:                ; 暂存器保护/ A+ w: _" Z# y7 m
  561. LDA $BD
    4 M0 d0 H6 s$ T0 L* H  b5 I
  562. PHA
    1 a% ^) L0 T$ r) A& c# _5 _% P) A
  563. LDA $BC
    1 w+ M5 h: d5 @  D
  564. PHA
    8 f/ K, d4 c& e% K8 o
  565. LDA $BB5 s# B. }7 {  g0 T9 U- s8 l
  566. PHA
    " o; n. {2 P. }- c$ q8 a" R. `/ c) @' P
  567. LDA $BA$ F* |6 s6 x. p6 f
  568. PHA% K4 _' l5 Q# Q/ [# G' X" z
  569. LDA $B9  Y1 N: k$ `" F& P$ [/ l( }) t( u
  570. PHA( G4 a. r1 l, B' @5 I* k1 K
  571. LDA $B80 L0 i" w# I& w8 o
  572. PHA' k# r/ E2 u4 |- {( y
  573. LDA #$001 Q2 v% |1 F7 Y5 H
  574. STA $B8- W* l1 Y4 `+ D' q6 r; x! H% X
  575. STA $B98 P) J3 J9 _2 k0 J, t
  576. STA $BA
    ) p" u" `( o/ `
  577. STA $BB, v* b6 C! C& M4 n! B; ]
  578. STA $BC
    % F6 k* C# v2 T! M6 i% _7 W5 ~0 r, n
  579. STA $BD, `/ v: T- E9 H* y
  580. ) R0 f9 v4 j2 ^8 I
  581. WEAWRITE:                ;武器ppu写入$ A- X. S3 a3 B6 ~, `) J
  582. LDX #$00
    % G$ v& l7 `) z0 K
  583. LDA $AA
    + {) f9 Y/ n: {7 ?3 o+ Q6 z
  584. STA $B9
    8 s; T; ]  t/ ~
  585. WEAINI:                ;地值初始化5 A8 Y2 U8 q" {; j; u
  586. LDA #$A4
    $ T9 y0 `- D0 M* W0 \
  587. STA $BA
    ; w- `( c& S6 W1 M: ?+ E( }% t
  588. LDA #$20
    4 X7 a& H  V- M- N1 H  {% I
  589. STA $BB# G8 q  c8 P$ {; |) R  w
  590. , V, O6 f1 y9 K4 F  F
  591. 8 r; n% `, j1 D6 Y% T& m& @! |1 B
  592. JSR WEA  M) z  k6 I4 p
  593. LDX #$00                ;武器ppu写入! s& n9 F9 [  y3 O1 c
  594. LDA $AB
    4 n  ]4 n0 g* d9 z6 q1 y
  595. STA $B9* e7 O4 \& i. ~' [" e; R
  596. LDA #$B3' P( t+ `9 [- V1 p% [3 H' y; V
  597. STA $BA
    7 x1 e& [% K! \8 w. M$ z
  598. LDA #$20  B+ e" j* a7 X1 Y+ z
  599. STA $BB4 P* g0 U, q3 ^! d" }
  600. ; M; N! u9 g% \& w/ U3 Q2 j

  601. 3 a; N6 Q$ W2 x
  602. JSR WEA
    / E, q" F  K/ g5 Z8 I
  603. " u2 C& D8 G# N+ G% y# F% h
  604. LDX #$00+ w: V/ L! U9 d, n+ b  T0 c- v
  605. LDA #$E40 [6 l/ @) K. ~' d3 l7 s
  606. STA $BA5 E6 w1 L) X: p  Q& q! {* K
  607. LDA #$204 X: ]3 u% i7 K" L7 S9 s0 Q
  608. STA $BB# N' v! [# c9 d: d& A) E$ k
  609. 7 ^9 k  e3 c/ T5 u7 k# s$ J9 E

  610. $ d4 c1 K4 N8 Y6 w" r( m
  611. LDA $32
    % D) F0 Q$ S# n0 n# Q1 v
  612. JSR PLAYERLIFE
    $ G- t5 p+ {2 e

  613. " V- o  F+ [, T! w; B9 @- m! ~% K
  614. LDX #$00
    + a1 K. Z  T3 F& ?- n
  615. LDA #$F3
    " b5 {3 P! Z: ~+ ^6 r+ |
  616. STA $BA: s, R0 }4 \4 t/ c# \
  617. LDA #$20. k; ^0 B! b$ F6 P. u' U
  618. STA $BB. ], N0 j& m3 b. F6 e/ ?) G
  619. / F+ D0 O* T% f! l
  620. : U# c. v3 ?6 ^" x
  621. LDA $33
    # c$ [4 q. O$ k4 C) V2 ~
  622. JSR PLAYERLIFE& f! e6 Q7 i2 T. {2 y7 O) l" N! R( u

  623. 2 `; U* \7 E6 q- n9 H- e  @, W$ a

  624. 0 S* X; a' c4 _: L1 K; c* T  O
  625. JSR PLAYER_01_PPU( i0 u, h: F- q' R2 |
  626. JSR PLAYER_02_PPU+ h* X2 ^7 S/ A

  627. 7 r; E8 W  l0 ^0 |( Q
  628. . ^3 H% i5 R) ~; |) y
  629. JSR PAGE_PPU
    ( X; R& v/ d7 Z. A6 d
  630. JSR PAGESELECT
    : Z, ^+ {( e! @/ j5 ]5 [
  631. 2 z7 \- D: Z4 c& H0 T
  632. % T4 K$ W1 l4 v

  633. ) e$ f/ F8 u1 P; |/ d( N  i

  634. $ l8 v) i: A- t
  635. 3 x3 T& ?( T9 M) n, ?. G
  636. 5 e  a" L/ H9 I$ Y2 e

  637. ! n/ R  s) G6 N

  638. 3 I' e# d; ]+ U9 W
  639. 3 Z2 m9 X$ X" Q' o* i* y* X
  640. ( ~: R6 D( R# G( W! Q
  641. 8 k1 O& ~6 m2 y" n' ~2 N+ q- J
  642. 0 v$ p- |) \. t

  643. 4 T1 [6 o/ t/ a" x( v+ [5 k+ Z
  644. PLAPRO:                ;恢复现场
    - l+ a( j* S" W0 K' D) s
  645. PLA
    2 b2 b/ E2 q2 _* A
  646. STA $B85 n- N1 J& E* o2 [( m
  647. PLA
    + G+ {" K2 `5 k" q) ?$ B
  648. STA $B95 E* |( p/ [7 |
  649. PLA( B0 `" [, O9 n5 i+ T, f8 g4 H! t
  650. STA $BA' e/ f) c3 ]9 T+ ?' P6 n3 Y8 p3 B* S- r
  651. PLA: m# m1 V' H: W& r, _
  652. STA $BB" @: m' G) Y* }  P6 k# }- s
  653. PLA
      E8 G% }" J! v
  654. STA $BC) J1 r9 F6 W3 G( K7 G# E" V8 z
  655. PLA
    % Q6 o, i7 Q+ P1 R$ p
  656. STA $BD
    1 Z& e8 m; Q0 D7 {* k8 V$ }6 e
  657. FREERTS:
    7 Q" E2 v3 r* r- P& l) u
  658. RTS
    : [) J% L% W) C- v# S

  659. 8 Z- W/ J- _/ T
  660. INVINC_STRING:                        ;invincible! @; N. H" ~7 U9 u1 P$ d
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    4 z( R' r! g2 l3 e4 n! S

  662. $ B+ L7 W+ I, u; @6 h" U
  663. INVINC_PPU:
    1 u6 S" K+ q! {4 F9 @  V
  664. LDX #$00
    ' ^# K8 r# m. K+ y! g- k
  665. LDA #$62
    0 S* @- u! P  J4 K! _6 s  @
  666. STA $BA  c/ K4 F, T: l" m; I( f) V# |8 I% I
  667. LDA #$21- L4 I5 _  c4 g. H
  668. STA $BB" w6 s5 f& Q; p2 W3 ]

  669. 5 m# |9 T& p8 W% f; K6 }/ P
  670. 4 _/ ?3 C2 r. q8 `5 S9 K* a
  671. JSR UP_PPU) Z& @* k; H+ X1 }" ?( C4 R
  672. JSR INVINC_WRITE
    7 Y% F3 h  Z, {
  673. LDX #$002 A4 E5 q3 U- M9 R# O' P. ~1 M
  674. LDA $07A0, N5 `" F5 c9 x5 I: k9 Y/ @
  675. AND #$01
    8 M7 l, d4 m, n/ r- q' ]) G) `
  676. JSR ON_OFF_PPU2 m9 H& p" E2 g3 i
  677. LDX #$00
    ! f1 I& k( A8 Y8 |1 m2 x
  678. LDA #$71
    / S- J- v+ X, }9 G7 k
  679. STA $BA
    ! C  R; ?3 i! ~+ Y/ x
  680. LDA #$21, J' i; M6 E' r8 K: e7 F2 f
  681. STA $BB# d" }- S% X, Z
  682. ( \; y( Z2 ]/ n' `
  683. % L9 q# ?/ \1 i$ G5 V- @0 U
  684. JSR UP_PPU
    8 k4 N8 q* H# m$ m) Z
  685. JSR INVINC_WRITE* \2 {. m. c. n5 U! o
  686. LDX #$00* S- ^3 `+ T- Z7 |  B
  687. LDA $07A1
    * w0 ?' e* k! g$ y4 m' B3 e
  688. AND #$019 a9 X1 u0 a# D
  689. JSR ON_OFF_PPU
    6 I* N1 Z. o$ c% G! J
  690. RTS
    / p+ c1 N. ?* s% e; y% e

  691. ! G, @5 J5 u5 l4 k, }; W
  692. INVINC_WRITE:+ X5 P2 G) d4 U( |0 P% j  I. I1 G) B) X
  693. LDX #$00- D- O' z. q$ b: n
  694. INWRITE:+ K/ R; U1 I5 K5 ]
  695. JSR PPUADDR_PROCESS8 y% Z* G( H. C4 n* c
  696. LDA INVINC_STRING,X
    9 a" e# R" @* _" r& ^( l* b
  697. STA $2007
    $ D+ ^& m1 L' z
  698. LDA #$00
    ( z) L+ }5 c1 u0 b" E# e
  699. STA $2000# Y/ P7 @7 S  Z& a
  700. INC $BA
    3 O% @' d. `2 ]9 p% k0 U
  701. INX
    ! S! i& f# U9 e: c
  702. CPX #$077 T1 c/ C! r1 T9 c3 p
  703. BCC INWRITE8 j& z; i3 F1 `" o
  704. RTS
    5 @# O; b. E  x; A) b* N+ I: Y- D
  705. - [1 y( x& G* E' O+ c+ @
  706. ON_STRING:$ U& a9 P& P" ]$ D6 ^$ }' R- v
  707. .BYTE $99,$98,$804 S0 Q9 g+ ?8 v

  708. 4 S  y' A; n0 ~) d- j
  709. OFF_STRING:
    $ {' r* A" c3 L( Y9 b
  710. .BYTE $99,$90,$90
    ) `7 J+ j8 Z- G8 Z' }+ e+ A9 j

  711. $ F6 b7 V* l5 e7 \7 R  g
  712. ON_OFF_PPU:
    8 o6 M# [* M" g- D
  713. BEQ OFFWR
    ( @1 y3 @6 Q; K
  714. ONWR:$ Q( s% S. `9 x4 _3 Y4 l) h
  715. JSR PPUADDR_PROCESS
    4 w  W8 L" P- x1 T
  716. LDA ON_STRING,X
    % ^  u5 [9 h" k/ b
  717. STA $2007
    ' v, d2 Y4 b  s. q
  718. INC $BA
    ( ~/ m% u' ^# J; P
  719. INX! M7 m! ~2 U6 V, V: \
  720. CPX #$03
    7 L! D4 o' B2 m% V7 ^
  721. BCC ONWR5 e! M- ~) b7 ^- |: U7 f" E. U6 j4 P' G
  722. RTS  y, `" e, H2 t: [; P. n3 ~
  723. OFFWR:
    6 A1 a" [0 {& b; K5 {. g- ]2 w
  724. JSR PPUADDR_PROCESS
    0 D0 U; @) s$ L( x0 ]
  725. LDA OFF_STRING,X
    , Z* L- I4 M6 |, d: t! n9 W* S
  726. STA $2007) d1 q7 A  `8 \0 V& G9 T/ C. E
  727. INC $BA
    6 f% r/ U  g! F' \+ F. }. l$ A
  728. INX4 w7 o& D9 k) B; H
  729. CPX #$039 l7 Z* w- J6 n  n  g& u
  730. BCC OFFWR3 e* E, d. l/ p1 k9 s2 ]
  731. RTS
    9 m8 M& A5 h, k
  732. ! Y1 |' w; s! w; w4 v7 o5 U% y
  733. LIFELC15_STRING:6 ?4 V. |, q# y* u2 n" @3 ]
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    3 D; \" h4 l  r' J/ j8 L" U
  735. ) `# U- Y5 f8 i$ r2 |( L, o
  736. LIFELC15_WRITE:+ {8 _- z% y' p1 x1 D
  737. LDX #$00
      @' |5 y' s. d; h! p
  738. LIFELC15:. Q: E$ i( ^- b
  739. JSR PPUADDR_PROCESS$ x. Y0 r/ \: m" @8 o, u& m/ U
  740. LDA LIFELC15_STRING,X
    3 y# X% i3 Y+ p
  741. STA $2007
    2 B. q4 b" o0 f% W
  742. LDA #$00
    7 e7 q. \- e, P. w' ?  E3 z8 `0 h
  743. STA $2000
    & O9 i+ g. I( R( m+ `# ]
  744. INC $BA# k2 C6 S: _9 C: R, J2 B9 s
  745. INX* A/ q2 v) r4 D4 N3 F
  746. CPX #$07
    ) c" o  m# V0 F2 |, P  A: X
  747. BCC LIFELC15
    - b) v: c# G' E
  748. RTS
    . n% S: b1 s1 \. n* q0 [+ x' P

  749. 0 a9 c; U' |9 g  k- `5 E1 k
  750. LIFELC15_PPU:
    4 T  b$ V8 z2 D8 y
  751. LDX #$00
    1 C& V" `4 r. y7 y6 k
  752. LDA #$A21 B! ^4 M+ r/ _7 ]
  753. STA $BA
    0 Y) |% O5 K) l/ ]7 H6 k' K
  754. LDA #$21
    5 N: o2 G9 @& H. m4 F8 g$ O
  755. STA $BB  E/ P; Z$ S: w
  756. JSR DN_PPU. y  B2 V2 @: Y' d) X
  757. JSR LIFELC15_WRITE- C/ ^% \/ }, y; R5 U3 b; }
  758. LDX #$00
    8 T' f7 j# ]  ]& F* I* e3 L
  759. LDA $07A00 M) R- n  Z: ?- C! r) E% F
  760. AND #$02
    ' N  X( j0 k+ A/ ~. r
  761. JSR ON_OFF_PPU
    8 [* v+ O/ y$ m
  762. LDX #$00  w7 X. l' }( O& z
  763. LDA #$B1
    + }6 R% D% a4 _& V3 r" d
  764. STA $BA% o/ V5 a  ]3 \/ b2 \4 @
  765. LDA #$21+ U' W. H! [3 v9 i5 v6 Z5 b: f# W4 Q6 |
  766. STA $BB
    1 w3 R4 h0 u% K2 j/ z" c) R
  767. JSR DN_PPU5 Q7 U( e. q6 ?/ L5 |
  768. JSR LIFELC15_WRITE4 {6 D- }9 O6 D6 {3 Y
  769. LDX #$00
    0 D2 n# ?# Z" O! x% s4 q& V0 e! `
  770. LDA $07A14 _3 C* K" @7 ]
  771. AND #$02
    ; B8 G* e. |6 x9 F
  772. JSR ON_OFF_PPU  {# P' k' n0 ^2 E* ]( M/ w
  773. RTS
    # i% v7 {# J, d( O& \
  774. . g2 F$ W, I/ f- f
  775. DOUCON_STRING:
    ' c& g4 C; n% ]; W
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
      {7 }5 B. C4 J& _! U3 E

  777. ; q1 z; Y4 }0 I
  778. DOUCON_WRITE:: ]# p8 L1 T6 O
  779. LDX #$00
    8 s7 e# X6 ?- `2 ~5 v  ^" _
  780. DOUCON:
    * Z* B. z# @7 R5 A. M
  781. JSR PPUADDR_PROCESS
    & V+ t1 e: d! l8 `* i8 d! X
  782. LDA DOUCON_STRING,X
    + F, d, e. e. Z; X! b1 I1 m1 ?! t  ^
  783. STA $20078 A* p! S4 W9 w# j2 G
  784. LDA #$00+ t( p6 p' L1 T( P# _7 S" i4 U
  785. STA $2000( k: j- N. Y8 ^5 t8 X" Y
  786. INC $BA
    - l& X9 C  S( d0 l: w/ F
  787. INX6 o0 a* ]! W' c9 a( J
  788. CPX #$07- X  Z7 P8 F1 m' `7 X8 i. f
  789. BCC DOUCON3 N' b; p3 F- [5 @3 w, e" B
  790. RTS% _: Y; }3 E/ N1 E3 h) N
  791. . r+ Y3 m2 p4 h+ U* w. a
  792. DOUCON_PPU:
    8 X" c; j2 ^2 G5 C( P' A/ x
  793. LDX #$00( J6 D0 K0 z' m
  794. LDA #$E2
    & U$ h4 n& v; K3 }# O+ Y' E
  795. STA $BA
    " ?, S' g; W! C* Q
  796. LDA #$21; S  E8 [5 }0 @' @  w) K6 z1 K
  797. STA $BB& m) h6 V4 g% ~9 _
  798. JSR LF_PPU$ l! w. \6 L3 u+ z9 v$ c# u0 k
  799. JSR DOUCON_WRITE
    : u5 A9 c! E  r: A
  800. LDX #$00
    & R! h) @# t' R) i
  801. LDA $07A03 z- b# C( ~1 y  e; @3 r
  802. AND #$04
    ) r! {% n5 Y: F
  803. JSR ON_OFF_PPU8 C8 C( b1 [, T* u/ c; Z
  804. LDX #$00
    7 G: j: |7 j- G% F4 Y0 V
  805. LDA #$F1
    4 T  w; H' h% g! g
  806. STA $BA
      L* B* t: ~  H# O+ |2 Q
  807. LDA #$21- ^" \' T6 j' V1 i+ G2 D
  808. STA $BB# U! H+ K2 ?' n
  809. JSR LF_PPU
    " A+ X9 b' ?) O5 ~
  810. JSR DOUCON_WRITE
    , _9 H6 Z5 u5 [: T# \( T
  811. LDX #$00
    4 T" f4 N7 |3 y5 P
  812. LDA $07A1
    $ X9 c, W& j: A- J) @) |! N& a
  813. AND #$04/ F0 I6 _3 t) z) V. \) f
  814. JSR ON_OFF_PPU: D6 m; j  q1 |2 }0 I/ g# G8 V
  815. RTS6 v6 k3 i+ C; e0 E2 C
  816. % h, S& h/ j6 G9 K
  817. LIFELOW_STRING:
      P. [, b# V% S
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80; i6 d: s: ~' c% X" n7 Q+ D

  819. ) I) ]  q+ _1 K" r
  820. LIFELOW_WRITE:
    ' B7 o8 [3 t7 G+ W
  821. LDX #$00# L! U# }% Z! ?
  822. LIFELOW:
    3 v. {- Q+ s% c6 _/ b8 Q1 ]
  823. JSR PPUADDR_PROCESS0 U% a6 A- c3 p& u; q1 F
  824. LDA LIFELOW_STRING,X
    ) X  F! i: i1 Y! E9 B" f% i2 ~
  825. STA $2007. B5 j8 H+ i) e5 w, N4 N
  826. LDA #$00' }* v7 L5 g! E$ U
  827. STA $2000
    ) s$ i7 P$ ?3 J9 M
  828. INC $BA/ ]) Y7 h/ M4 U
  829. INX1 i1 F+ G: D, j. w. Y: m7 z
  830. CPX #$07' Z' Y* D/ C# j
  831. BCC LIFELOW
    $ l5 U# c# B3 A) x- a' I
  832. RTS% \2 `# j# B0 A7 Q" `6 F1 P" g
  833. 3 A" E8 z: Q( d5 j& d
  834. LIFELOW_PPU:
    * y4 W2 [" U  F& C6 d7 v
  835. LDX #$00
      P: \4 _0 }0 h* F/ Q
  836. LDA #$22
    2 y) ^: ?8 @# O; ~6 @' D
  837. STA $BA
    5 ]4 D; f# q) D5 D
  838. LDA #$22
    9 y1 i, I, k3 C: F/ ?) v8 g% j% ~
  839. STA $BB+ [8 G  H9 f! ~  K0 d2 b; J

  840. 7 b# p" ], }1 e" F( C3 R) \) l

  841. - q( l4 z4 H8 Z3 N* N3 z1 y
  842. JSR RG_PPU
    ( D6 }8 Z, N' i- h+ m  g9 C+ }& i) i2 o
  843. JSR LIFELOW_WRITE
    7 k* M4 ~# O/ A$ Z$ K! S
  844. LDX #$00' R0 p! w' t3 n/ Z4 k: E
  845. LDA $07A0
    ) f, _7 D3 i" `+ [
  846. AND #$08
    1 M; k/ A5 x7 o% L# O; Z' c
  847. JSR ON_OFF_PPU
    . V7 d" j# l, K; s9 t: B/ P, c+ H
  848. LDX #$00- T. a8 P6 Z2 [' b+ Z9 L1 m$ U
  849. LDA #$31/ }4 _1 d! \0 B. ^( m# @+ n
  850. STA $BA
    ' {9 ^" x9 S6 u7 R% ~
  851. LDA #$22
    % S& B! ^" s- N2 k# _0 x% _! Y
  852. STA $BB
    ) s: P6 e5 [8 u
  853. $ ^' E/ s, i+ t1 V

  854. . H: M( b+ U+ l) q3 b9 ~
  855. JSR RG_PPU
    # z. d, |" I! c  N6 C7 b
  856. JSR LIFELOW_WRITE
    - J* H6 a( ~5 ~: b, C3 ]& Q
  857. LDX #$00
    - L8 f) q/ n% N: o
  858. LDA $07A1/ A6 h. l; S( @
  859. AND #$087 f; o: j5 ^  D" B4 s
  860. JSR ON_OFF_PPU
    ; a' Q3 M$ R! q- }5 _1 }
  861. RTS; p4 T/ l3 E4 G( Z
  862. ' j1 P* l2 _  A& T% v
  863. KILLON_STRING:9 P; }3 d" K2 E- p. C
  864. .BYTE $95,$93,$96,$96,$99,$98,$80; ]4 K3 T/ Q* i; N" k
  865. & R3 C3 j  B; g, `# R
  866. KILLON_WRITE:- p! W: s& \1 l1 @* P; x
  867. LDX #$004 e* Y  t7 o0 \2 G+ P' }
  868. KILLON:% d$ x3 H  W2 d0 O9 a8 ^$ T
  869. JSR PPUADDR_PROCESS
    ! @5 D* |4 E( t" J
  870. LDA KILLON_STRING,X* E) m4 ?! R8 N' X6 y. a& Q
  871. STA $2007
    8 A) ^; I9 g5 {$ c4 c0 z3 G4 T
  872. LDA #$00
    ) O; F' B# w, R, R& y
  873. STA $2000* z/ P# S; F) O/ `
  874. INC $BA2 n7 }$ e" E5 @' g, b: Y2 h
  875. INX) B$ t0 F( C# P& n  @( P& s1 K- c: l
  876. CPX #$07
    $ o; E% b8 d' R: C; L9 c: S
  877. BCC KILLON0 K% Q! G7 X! Y$ Q7 Q
  878. RTS6 L) n6 Q! ?* E; H

  879. - B& M  M- o+ m5 G) ]. v& w
  880. KILLON_PPU:
    : \0 F* [4 Y# l5 o, ]2 O# F
  881. LDX #$00( H+ R; L7 `+ A5 O
  882. LDA #$62( |2 {" d( P4 |% `; \' W1 a! v
  883. STA $BA
    - `2 K/ ?! y$ O* `; O& Y: I- a1 x
  884. LDA #$22( x" k3 V+ X" N5 D
  885. STA $BB6 M% z2 X6 A" {+ {: O% ~2 f3 L

  886. 7 y) J# f( z$ M
  887.   C6 B1 s7 H; V( R$ F3 x- x# C
  888. JSR B_PPU* I8 B, C; A/ u
  889. JSR KILLON_WRITE! c# p9 k  o$ W) \7 }0 z' U8 g: n
  890. LDX #$00
    $ V. T: j; V, T' p6 z. ?! B
  891. LDA $07A05 O2 ~- e, Q1 ~3 |& p4 s' k! b
  892. AND #$10
    . Z  @5 ^0 q' I
  893. JSR ON_OFF_PPU9 _: v  [4 @- \, H6 w* h* x5 ~
  894. LDX #$00$ |  N6 v: h( c  {
  895. LDA #$71
    1 x, G' ]! H5 p3 m8 y' Z
  896. STA $BA
    4 E5 u1 U% U. K& Z
  897. LDA #$22) B1 z' }& M. H) W  `& V) p
  898. STA $BB
    + o) ^2 u' d0 H2 l' `
  899. , \) P# J  Y/ ^  u" `; G# Y0 W' d2 I
  900.   H) A9 E. @9 {
  901. JSR B_PPU- l4 k& J" s7 z
  902. JSR KILLON_WRITE
    % |7 `+ G" D! c- U% U1 D
  903. LDX #$00
    4 Z& q4 U: s1 L; g1 I0 D
  904. LDA $07A1
    8 K: N* d7 J  y* h
  905. AND #$104 j2 C$ c4 N; G  O
  906. JSR ON_OFF_PPU$ E) v; S+ t9 b. Q4 Z8 U
  907. RTS& z0 D$ l% r6 e
  908. : V, {' o5 D( z; ~$ L; ^& [
  909. SKYFLY_STRING:; E4 b. e' W/ V4 P+ F
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    . `6 X. d5 i! W

  911. - w* \) k9 H) ~, x
  912. SKYFLY_WRITE:
    + n/ ~' I; L' |7 w. C& k
  913. LDX #$008 p9 m8 j! Z3 J
  914. SKYFLY:* m4 A. s) ^* F+ p# N) t7 p
  915. JSR PPUADDR_PROCESS
    ) M0 P) v. M: v7 r1 x8 _# c
  916. LDA SKYFLY_STRING,X
    ' L! p# E- ^" G0 d
  917. STA $20077 D% R: W% Y& X: K* b6 `
  918. LDA #$00  O% o1 X5 [6 h) \8 n4 ~
  919. STA $2000
    1 q. [  M( h3 J1 h% G
  920. INC $BA
    * e+ Q: Y- L; s, d
  921. INX
    7 [3 d* L% [3 s
  922. CPX #$07; X: t+ [- y1 l' e# @7 i$ q+ A
  923. BCC SKYFLY  |: f5 ~0 m& D- }. J. h6 F7 L
  924. RTS
    ) t" i/ L, ?! i( h* S6 l2 @3 R8 ^3 e
  925. , q: [# L+ ?6 _9 o/ M
  926. SKYFLY_PPU:
    % a; j+ b9 e$ r+ D
  927. LDX #$008 x8 i, m+ e: \- P1 v
  928. LDA #$A2+ H. v/ ?3 _8 Z' T7 H
  929. STA $BA
    9 O: y* }1 z; l3 z8 o! s& V
  930. LDA #$22+ W" S9 \+ K5 l+ Z. T
  931. STA $BB
    / Y/ L, |$ n. o( O
  932. & D( S, A& r5 F2 v  y8 w

  933. 8 j9 c$ J9 q/ y! q
  934. JSR A_PPU8 O; x4 [+ {( v  g
  935. JSR SKYFLY_WRITE
    5 G1 ?3 ]* J" l
  936. LDX #$00: r4 a  m6 Q1 V
  937. LDA $07A03 |  f, ~+ ?  Z! q
  938. AND #$20
    7 ?  a- j% Q$ E; p5 I- _# B
  939. JSR ON_OFF_PPU6 f, z9 j# L+ V, U# \8 S; u
  940. LDX #$00
    ' W, }" F& h' H9 I3 O
  941. LDA #$B1* X. O$ s. l2 P- F
  942. STA $BA/ e  b# y; T0 u) v: j: x3 \: |
  943. LDA #$22
    # I, N# l1 k9 I) K
  944. STA $BB! O% F! ]9 U+ z
  945. 2 I7 |$ T% |6 N4 a
  946. / @0 I" |* B5 K2 v6 ^
  947. JSR A_PPU( e4 ?8 o* u) w1 T! Q, T7 n. f3 u
  948. JSR SKYFLY_WRITE1 e+ m' U1 G9 g  X' w$ ~
  949. LDX #$00
    ' a  u5 m; l5 j  n, ^$ j
  950. LDA $07A1
    - e3 C; J8 k  a7 X! a( h# s/ X
  951. AND #$20
    + [' `" s, E# W( V! N
  952. JSR ON_OFF_PPU
    ( V% Z- J) E+ h* Q1 d; M
  953. RTS+ b2 u2 \, w$ u
  954. " ]! m. M2 z6 K: t1 [
  955. BULADD_STRING:
    6 d7 \) f* @8 F( B0 n* E- c
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    + h' `2 X" E) Y# Y( Z9 m5 P- D

  957. ' l, h7 i- p4 K' V, X) {
  958. BULADD_WRITE:" d# G5 E( S/ Y: @1 v3 N  [$ Y: z! v
  959. LDX #$00
    6 c9 k% J" ?' ~
  960. BULADD:
    0 r% x: [" B8 P+ |9 b9 K9 A8 `
  961. JSR PPUADDR_PROCESS
    . I) @% u: a4 {4 {  i# K! K
  962. LDA BULADD_STRING,X; c' i* E" H& V! [, n4 ?; e
  963. STA $2007; w* H% m0 L  z( r# R3 l
  964. LDA #$00: C" ~- S! x* u& I
  965. STA $2000# O4 x' u; l: a$ B! t! t/ o
  966. INC $BA
    * M1 n% d# W5 H3 E' Y  p- \! e2 p
  967. INX2 ^# ]9 b: m: g
  968. CPX #$07
    ! s$ d; a7 [# ~' \
  969. BCC BULADD
    0 a$ G( K5 h( n$ g1 @2 |$ g
  970. RTS
    / o6 d" n9 L# s6 q! P& u4 y0 A1 W5 }

  971. - A4 ^! L0 s1 l
  972. BULADD_PPU:! b, E( K* m2 D$ V1 b/ T9 n
  973. LDX #$00
    : g5 B7 k0 _$ n; h8 L
  974. LDA #$623 |1 B4 L( Y9 }' o( @
  975. STA $BA, F2 e7 E1 K' Q+ Q9 j) u) S" P
  976. LDA #$21
    4 r7 V5 A- ?4 [2 P( u
  977. STA $BB' a8 G; d7 t# D: z# i; Q- }
  978. 8 H# {: ]' D, l& \* W1 ~4 }
  979. / X( l6 q) Y% Z# O& d4 z& h
  980. JSR UP_PPU+ r! z7 s% h2 e' ~% K/ L! O0 J
  981. JSR BULADD_WRITE
    % i7 g# ]+ M0 p# E
  982. LDX #$00
    - R; @/ v& Q. w0 E
  983. LDA $07A2: \; i  m' h# s, e5 F: \
  984. AND #$01& ^- U  U$ `1 K5 `
  985. JSR ON_OFF_PPU
    " @* O! [0 z# {  ]2 \1 c- m
  986. LDX #$00
    ; I7 V! W( P, Q# d8 c! O
  987. LDA #$715 J& l1 x( c' n+ G
  988. STA $BA
    1 W' h5 u+ i* U( X
  989. LDA #$21
      F0 }! t4 d" p. S+ }
  990. STA $BB
    0 ]  s- P3 |$ Z: F

  991. 2 @7 u: _/ i0 S! p" s5 \8 [

  992. ) Q+ z6 ]. t  c' ^! T: v8 R& |# g
  993. JSR UP_PPU
    % e0 L: [* E% ?
  994. JSR BULADD_WRITE
      X8 P, J$ W0 p- Y1 X/ d
  995. LDX #$00
    % B9 v! ?% a3 X8 l" ]/ |& @
  996. LDA $07A35 X- x3 a8 n% Q* j8 q, p
  997. AND #$01
    # }- D$ v6 W" \
  998. JSR ON_OFF_PPU
    * }( N! w' ~& M/ \, C1 k
  999. RTS
    * ]) J/ ^$ `' X/ S. s
  1000. 9 ~! \; f3 A5 l% u1 A# @6 A
  1001. MENU_PAGE_STRING:7 d" M% w: [1 t
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$818 s7 [; W! U, X' K3 i0 J, V) l

  1003. 1 }+ e7 k* h# o/ X# A7 w2 b+ [- R
  1004. PAGE_PPU:* M  m1 j! M7 d7 c
  1005. LDX #$000 Q5 {* X/ F; ?% o0 A3 z' b) U% `9 M- ]
  1006. LDA #$0A
    $ S  F% f4 F, n3 b
  1007. STA $BA
    6 c5 V& [, b! {5 T  g1 i; J
  1008. LDA #$239 z. ~) T) C6 d$ o$ y8 C
  1009. STA $BB- N, A2 O5 M; H: @6 E5 r$ A

  1010. # P, j+ V! K- F& L4 ?; A6 A

  1011. * g( E0 K5 @; e& y/ Y
  1012. MENU_PAGE:
    - i1 c% \6 U  o: @5 @3 A5 ~
  1013. JSR PPUADDR_PROCESS, R) u+ Q( f: t9 w. r- p( i
  1014. LDA MENU_PAGE_STRING,X
    # ]% D4 X: Y6 O2 O1 y# a1 z. Q
  1015. STA $2007
    * R! J0 c- k% f
  1016. LDA #$00
    / G" _+ F3 W- R$ m
  1017. STA $2000
    + l$ L0 k" t/ p- ~7 T+ `
  1018. INC $BA: d: h: P9 J5 o
  1019. INX
    ; g2 v! J9 |: w4 y: r
  1020. CPX #$0B
    1 ~" N6 F5 H  u) Z+ b! Y
  1021. BCC MENU_PAGE& W6 S! U# E* k8 z' z# ?! Z
  1022. LDA $07AA$ W% S, L3 s2 F3 ^
  1023. CLC2 E  Y( j* y0 i# h
  1024. ADC #$826 a" G4 }8 R" U8 h+ W
  1025. STA $2007
    3 _. r* a' a, ?
  1026. LDA #$002 V+ B! M% e. }' E9 _" ?6 H
  1027. STA $2000
    + J. e" J$ f0 n. }/ _1 m
  1028. RTS
    % n( Z% X; S) k

  1029. $ d3 f' |! W6 u4 i

  1030. % Q# H. ?# ?, m. s, y6 T3 n) V
  1031. SKINGE_STRING:; G. U. S% s/ A$ P' ~0 u1 u
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$809 h( t  n/ l% w; P) ~
  1033. , L# b, C- ]) F: w: {; G
  1034. SKINGE_WRITE:
    7 h2 W; p5 `1 r) z8 p: D
  1035. LDX #$00; z/ @+ u; c6 @1 v
  1036. SKINGE:  K/ u- b: g- W! q  I! b1 K
  1037. JSR PPUADDR_PROCESS8 v8 E7 o- c9 O: |
  1038. LDA SKINGE_STRING,X
    ( @6 t) G6 H' V
  1039. STA $2007) W/ ^9 B+ b4 L8 J
  1040. LDA #$00  `" L7 b* b, h
  1041. STA $2000
    7 x, |7 k1 [* R, ^" r
  1042. INC $BA
    " _; |, Q, {( L, ?5 X; H
  1043. INX) \& w; p7 |5 \- y
  1044. CPX #$07
    7 ~- H/ w6 S0 l" {$ b7 X0 g
  1045. BCC SKINGE
    % a& b# }4 [: a* W1 J- s
  1046. RTS# T- l+ J; P- R% I6 V2 D2 i4 b

  1047. # j  o) J# x! H
  1048. SKINGE_PPU:
    0 X+ Q; ]- b+ F3 Z5 s4 D1 e
  1049. LDX #$00
    ; m9 `# R  Q4 B; y  g
  1050. LDA #$A2
      {0 H" ^9 T; w0 F5 H4 k
  1051. STA $BA
    0 s) d, h# f: X
  1052. LDA #$215 O! ~% }8 K% Y/ k
  1053. STA $BB
    6 {' a; s" U# \9 [: B. P8 Q; E

  1054. & R: m% w# y* r/ z/ J

  1055. # v0 f; K7 e+ ]6 N1 ]& A" E" d
  1056. JSR DN_PPU
    ' b" {' i* L& Z
  1057. JSR SKINGE_WRITE6 N" }5 a. U4 M- l  N6 V: w5 a$ H
  1058. LDX #$00
    . K" ~3 r0 k; d
  1059. LDA $07A2
    # Z( N6 d( k0 q$ r' ~; s- g7 a
  1060. AND #$02
    - Y( X3 {0 j& T% m3 ?' u
  1061. JSR ON_OFF_PPU
    5 _' S, a& P: n) H4 P0 t
  1062. LDX #$004 n7 x2 g- @) P' Z( Y- J0 E
  1063. LDA #$B1
    2 e0 t5 C* r; b9 O9 i& F
  1064. STA $BA! b4 Y0 ?( e0 I- C5 ~) A6 ]  P
  1065. LDA #$21
    ) l# ~5 X! e2 x5 ]! E! S+ t
  1066. STA $BB) U- M% B2 T* t9 S( P  x* \, ^' S

  1067. 6 s4 k! I0 c) D# f4 g: _

  1068. % t4 z& e! {. I' A
  1069. JSR DN_PPU/ l1 Q# I; D; `9 c  S7 n. a8 \+ B# J
  1070. JSR SKINGE_WRITE
    ! k8 ?. A  @; _% ?3 y
  1071. LDX #$00
    ) J: W9 V& G, w* G
  1072. LDA $07A3
    3 h6 `$ s  y2 E8 r! f' \; d
  1073. AND #$02
    ! i  \6 i- b5 a6 i6 c% x
  1074. JSR ON_OFF_PPU
    0 y* g- H) x) V6 ^
  1075. RTS/ f2 ]! e3 S! U2 u% f' J
  1076. & G, w2 w# `' U+ p
  1077. BULMIX_STRING:# q3 {' j% F. }. O. O
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$800 R3 i5 t' x" Y% Q8 U9 F5 \
  1079. 1 l& w4 d- h* C( j( ^4 v) c
  1080. BULMIX_WRITE:4 c' u0 g3 ~; V: w, ~& ]
  1081. LDX #$00
    ( a, D! M4 ^* P5 M' [
  1082. BULMIX:* b0 P4 C  e; d9 S4 Y+ z
  1083. JSR PPUADDR_PROCESS. ?$ H6 G( P3 {; p( z8 U6 r  g
  1084. LDA BULMIX_STRING,X
    9 F+ D) K9 A$ K' f2 }9 u
  1085. STA $2007
    # ~3 ~8 @- V1 T5 L
  1086. LDA #$00
    3 j+ l' r; U5 \' t- Y$ o
  1087. STA $2000- I# j. \) h4 X: l. b' i
  1088. INC $BA& M+ g1 x/ B# o4 l* S; J5 l
  1089. INX
    " Y5 \6 a2 Q& L4 n
  1090. CPX #$07
    9 b) {# [" P; ]% H+ i
  1091. BCC BULMIX5 u/ _1 Z' }0 }0 j4 j
  1092. RTS: e% Z. G5 M$ W3 H' \; w* u

  1093. ; n8 E$ S. _( W# `# W0 f! ^
  1094. BULMIX_PPU:
    % o5 q5 S$ Q6 I
  1095. LDX #$00. \( n; b0 B8 \  m6 o  Y
  1096. LDA #$E2- ~& b' c, |  }7 p9 P9 ^) S) {
  1097. STA $BA$ K7 ^, U' z+ k- x7 `8 i# a
  1098. LDA #$21
    / B: t- I: e- y% A! S- \
  1099. STA $BB8 H/ B- Q, M' m$ {5 W- S' ~! d

  1100. % j5 f7 A# ~$ v! {
  1101. ( ]9 r( Z5 {5 k  L1 U" @
  1102. JSR LF_PPU( p4 u# b1 U/ ~
  1103. JSR BULMIX_WRITE9 ~) \+ y% l6 N* K( l
  1104. LDX #$00; B& n4 C1 K/ L1 h
  1105. LDA $07A26 O( N& h! e2 y$ ?1 T2 n/ a$ c
  1106. AND #$04
    & f% p0 ~( e$ B
  1107. JSR ON_OFF_PPU
    1 Z0 K8 E! P0 v/ a; h& h* k
  1108. LDX #$00: ~" X. P: u. Z+ u
  1109. LDA #$F1
    , u, p1 q0 i; a
  1110. STA $BA
    ) s+ O$ q  Q* l, P; D3 j- g
  1111. LDA #$21
    ' }, t4 p% G; C+ \. d" ]* I
  1112. STA $BB
    # d6 b6 m7 `! r" i. j
  1113. 6 @% T* }: P7 z$ ]- A
  1114. # F6 o$ D3 |* v! w
  1115. JSR LF_PPU
    6 c7 b6 E' L+ P9 T
  1116. JSR BULMIX_WRITE
    . l- h' e! O+ U, C0 ?/ g' F
  1117. LDX #$00
    6 N+ V: ^$ d) [) q& N
  1118. LDA $07A3
    7 v8 X9 U' U8 F. J! `* ]
  1119. AND #$04
    5 _+ R. o. }: }5 C
  1120. JSR ON_OFF_PPU
      I- R: ~$ E% y2 Q  s
  1121. RTS
    5 ~: e7 O( h5 R# t$ {, _/ o9 A

  1122. 1 v& d2 I. i. h% m3 J" T# z7 I  d
  1123. ENELOC_STRING:
    . H6 ^9 r' b% @6 t" H( Q& Z5 s6 a8 h
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    6 ]  I/ m5 h- x; _! x. H  i

  1125. 2 R# c9 e; h7 X+ `# d
  1126. ENELOC_WRITE:
    3 A$ ^6 ^  }2 |) W& ^# G) Q5 D
  1127. LDX #$00
    ! v; P5 Y, t' P0 |/ g
  1128. ENELOC:
    ' T. y$ B* j, }
  1129. JSR PPUADDR_PROCESS
    - z$ u+ ]' j5 y2 ?# y3 g9 D+ b
  1130. LDA ENELOC_STRING,X" i. T: G( w$ n& ?& ^
  1131. STA $20070 l- ~6 W$ U- a$ h2 w$ R: O
  1132. LDA #$00
    7 L- u/ |( g& q! }8 a2 D2 d; o
  1133. STA $2000
    * s2 Y$ F. Z: f
  1134. INC $BA) ~' X7 H! Z" ?4 ^9 J  O- r
  1135. INX
    # J& o2 M$ i! a2 v
  1136. CPX #$07
    ( X5 A  ]% ~7 R# w
  1137. BCC ENELOC
    6 ^& C. Y$ C3 S" u4 {* m9 ~
  1138. RTS& w8 h( \8 z& V( J

  1139. 3 H$ h7 @1 I0 N  Q; L
  1140. ENELOC_PPU:
    6 q2 h# F# Y1 y# C
  1141. LDX #$00
    4 G5 \  F' A: L! u
  1142. LDA #$225 n  G3 E* C1 N( c* A$ E0 E% }6 y
  1143. STA $BA
    ) F* f2 [: I7 f! Q  V: S4 c6 Y
  1144. LDA #$22
    5 e" U/ ~8 X* K9 r
  1145. STA $BB# d, y# @0 {5 y/ ?! m9 I
  1146. 2 t( |9 w' z8 S! s: H
  1147. ; `" p: |' X0 s" O
  1148. JSR RG_PPU3 C0 P5 D0 D* M7 u4 |) D
  1149. JSR ENELOC_WRITE
    ( V* G0 {* O/ Y$ b. }" P+ [7 t
  1150. LDX #$00
    . o; M6 {. P8 B- q- |( Q
  1151. LDA $07A2
    % h# U- I1 z$ i  w+ R
  1152. AND #$08
    , q8 R6 \; U1 ]/ @. f" h
  1153. JSR ON_OFF_PPU3 |1 V9 }& ^4 i1 R
  1154. LDX #$00
    & ]! H% E$ k! Z0 S# M1 l  Q% {
  1155. LDA #$31
    0 N. ^  `" Z; g4 Q. n
  1156. STA $BA0 N$ |% M$ T) [" Q- _) ]6 B
  1157. LDA #$22
    2 B$ _/ H4 E1 k3 Y4 n3 e5 r
  1158. STA $BB
    ( h" x, n! d8 s9 Y% n* C

  1159. ; j- z, S+ s& T

  1160. 7 ~" M+ N  _- r3 u0 k+ t6 Z8 F( A
  1161. JSR RG_PPU8 X; |% I' [: x+ D$ K3 _
  1162. JSR ENELOC_WRITE/ G2 X2 v7 x; a- M6 P
  1163. LDX #$00( ^: h: P4 ]/ K4 F
  1164. LDA $07A3
    # L6 e* {! j; T6 w: D) r, w
  1165. AND #$08
    8 V2 [* c* _5 O, T' F
  1166. JSR ON_OFF_PPU1 S; U% v" Y; w$ \  N
  1167. RTS, p# o1 X+ m$ U$ [! ^/ j
  1168. ) G6 I7 ]4 L5 ?4 Q* h
  1169. FOCFUL_STRING:
    & C- b- L4 Y3 ^0 E2 F# U- O$ W
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    : U# T5 M+ e4 w$ z  P

  1171. 4 R; O) V  B7 S3 h+ E5 ]
  1172. * d# x1 c: U) [+ v- n% H
  1173. FOCFUL_WRITE:
    3 {1 }5 ]0 \9 t% F% S
  1174. LDX #$00( q! U  _, E% a/ `! B0 A7 C) J
  1175. FOCFUL:
    # _, |  _4 r& f* x
  1176. JSR PPUADDR_PROCESS0 h  H; b! ?  q$ _
  1177. LDA FOCFUL_STRING,X
    3 t; O7 x; `# S5 L* J$ s" G# Z; s
  1178. STA $2007
    5 r1 E: G& d* w: m
  1179. LDA #$00
    % Q8 ?' y% G4 i% i, M
  1180. STA $2000
    / V- B% F- y5 [
  1181. INC $BA
    1 @5 w& }! S+ Q- E) ?
  1182. INX
    0 n' L! F5 v5 w
  1183. CPX #$07
    8 [  h( @+ b8 F. ]9 ^6 v
  1184. BCC FOCFUL1 B( @; i  T3 l) L3 ~
  1185. RTS
    & ]0 _( ?4 k1 H# _" C

  1186. 6 l' r4 M# e9 t
  1187. FOCFUL_PPU:
    + t: J# @. T6 F# y' P; T. A; e
  1188. LDX #$00" k0 P# `1 U1 H9 ^' h
  1189. LDA #$62' g8 w5 D" f# F: h% c* I) }
  1190. STA $BA
      N, n( e$ J6 G/ l
  1191. LDA #$22
    # n9 w. L! |7 ?9 n3 u, L
  1192. STA $BB
    7 x' J! R. n4 b- _
  1193. 0 p( ?9 k! ~2 [7 U3 r: l1 B
  1194. / P4 y) e! L; T, N0 d6 {
  1195. JSR B_PPU2 a  E- z7 l5 D2 T* X# B( t
  1196. JSR FOCFUL_WRITE
    4 v; Q$ s& n2 o
  1197. LDX #$00
    7 @# s. o  B" w4 s- }6 R
  1198. LDA $07A2
    8 }8 d6 Z% ]; l1 U
  1199. AND #$10
    5 {: @) e6 {& c4 n! v0 k0 G
  1200. JSR ON_OFF_PPU
    , r1 U" d) r; ~8 R+ c# `
  1201. LDX #$00' n2 U& d; L, ^8 n9 P% r; M, ?+ q
  1202. LDA #$71' O! k1 U- `# @4 y& r( D
  1203. STA $BA  v1 b! x4 A9 K& ^7 m2 c
  1204. LDA #$22& M4 g" l  O  v5 q2 z! N; M& ^
  1205. STA $BB
    + \+ u* n2 A" |2 P0 ]2 B

  1206. / V+ k1 V8 D) M3 ?5 G- T. k

  1207. , X' U- f$ a" ~: h
  1208. JSR B_PPU
    7 F' l4 p2 U7 N; _1 V7 W
  1209. JSR FOCFUL_WRITE# ?) n/ m1 K) D
  1210. LDX #$00! l# _' D, ~) I# ?. C# N% a8 i
  1211. LDA $07A3
    ' @$ k$ o1 b0 s. o  q
  1212. AND #$107 ~1 f5 p* W' y
  1213. JSR ON_OFF_PPU
    2 K# R. M. u3 S) i
  1214. RTS& k: S3 V1 \' O5 n/ J. x8 A' i

  1215. & ^/ q2 |3 |2 ]) r% x! J+ K, Y
  1216. BULCON_STRING:
    8 D7 i0 n; y2 f) a  j& A2 P+ C
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80
    ! U: ]& y/ V9 W% h' L! r' @9 u
  1218. ' c: n+ n2 Q1 _
  1219. : O8 |9 Z) V# E. |" Y; |) M% u9 Q
  1220. BULCON_WRITE:# ]2 u% G8 T. g5 m  H
  1221. LDX #$00
    ! D  y; l0 q: S' e. U+ s: N) Z' T/ S
  1222. BULCON:0 Q4 A) T& S3 d" V8 x0 G9 S
  1223. JSR PPUADDR_PROCESS/ V4 b% {$ C) x7 X: L
  1224. LDA BULCON_STRING,X
    . E+ {* P4 S& C5 |
  1225. STA $2007
    , X& Z( k3 n& c: y$ V  A+ S
  1226. LDA #$00
    8 }# _) m$ l$ U" E7 R
  1227. STA $2000
    / z5 _+ M  Q' C! l! s6 q1 n* d/ a% g
  1228. INC $BA
    / ^4 S, a9 d# Z1 b) d% A
  1229. INX0 r2 t6 g- L& V' |
  1230. CPX #$07
    1 A1 G" W, f9 w9 e7 A' d  c4 e0 S
  1231. BCC BULCON
    : E! x( E8 V$ n' P
  1232. RTS
    6 U* E; p# ^/ e. w$ h
  1233. 5 W2 h) \5 F5 a$ l# d
  1234. BULCON_PPU:* J' f9 a0 j- G7 m% V" j- j
  1235. LDX #$00$ p# O$ J# s) y% @4 l6 P( ]
  1236. LDA #$62- H+ X( I9 }, x' b
  1237. STA $BA+ C" i/ U1 P* D$ x6 `6 |
  1238. LDA #$21- g7 J7 l" u' d7 C% T
  1239. STA $BB% B9 {5 H: [9 X+ T/ ~8 ~

  1240. , o3 r, t) g/ d7 a. f% D  c# s  |3 x
  1241. " B6 j7 g$ @. e+ m
  1242. JSR UP_PPU
    1 g# c+ i/ Z4 J! G7 {  N0 T( U
  1243. JSR BULCON_WRITE
    ! m9 ?0 |1 z( z3 x- t1 }. {
  1244. LDX #$00
    % Q5 M& Q; C! c3 l6 L* B
  1245. LDA $07A4
    3 \) l7 K+ l2 U/ @: X/ J# K0 S: I
  1246. AND #$08
    # G3 |6 @+ L, N5 N
  1247. JSR ON_OFF_PPU
    3 j+ D' A0 b3 f" X
  1248. LDX #$00
    / Y4 S. }5 \$ d- G: J
  1249. LDA #$71
    * Y) y! ^8 ^2 O% h8 Y' l* I+ R' W/ h
  1250. STA $BA6 u" b2 Y( y" ^# v1 o( ^
  1251. LDA #$21
    # F: R8 q: Y! h' n9 F
  1252. STA $BB8 N' q1 U/ o" D6 ^

  1253. 7 |( V. q, I! g2 k
  1254. ) x/ Q+ F% c% l0 P! g8 W; A
  1255. JSR UP_PPU: t. z  \2 V* v
  1256. JSR BULCON_WRITE( K: }* ~6 w: i# e' c( P
  1257. LDX #$00
    . L6 _8 h3 g9 D7 l: [9 s
  1258. LDA $07A5
    0 D4 w+ A' r5 ^% s( Y
  1259. AND #$08
    - M. [* L+ g/ R5 Y/ L( h+ j  E
  1260. JSR ON_OFF_PPU/ T$ g* g3 @6 Q6 G" ~" W2 g
  1261. RTS
    ! j" B( ^/ z5 o: Q  h
  1262. # ~5 d% b) P8 |# i, |
  1263. SPEBUL_STRING:
      J" {; B* C; K& S+ }
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    + c; F1 n/ ^' X* O
  1265. ! P2 t% M$ ]/ E" D4 A  b

  1266. 0 C( v( i: `: N3 K. u; f6 T
  1267. SPEBUL_WRITE:
    % C* d8 p! d' H7 B
  1268. LDX #$00$ F& E( H; f, R9 U& T) m
  1269. SPEBUL:
    ( g3 [( s: [; Z4 m4 c5 a
  1270. JSR PPUADDR_PROCESS
    / M3 H, y4 @2 l) J8 p- W
  1271. LDA SPEBUL_STRING,X
    . Q8 P2 k+ U$ c
  1272. STA $2007
    9 K# Q' `9 n$ H/ m. t8 N  p" _4 B
  1273. LDA #$00
    5 e/ H' w) V+ q& b6 t+ B3 B+ I, Y- }
  1274. STA $20009 u; k: T9 O; b! n  n6 Z8 q0 p/ r0 y
  1275. INC $BA3 d! Z) Z3 i8 E
  1276. INX. h; N2 ^6 x, |) v% Q, L' C
  1277. CPX #$07# b, L: X" j. M  ^8 V+ r0 h
  1278. BCC SPEBUL
    ) G' T7 V7 d0 W( a$ v
  1279. RTS2 a1 b  Y* ^7 I

  1280. ) o! C8 p# l! |; I
  1281. SPEBUL_PPU:
    5 G, @% R8 ?9 ]! w8 O
  1282. LDX #$00( v8 X# i% I; {1 [2 `" Y8 ]
  1283. LDA #$A2
    3 R/ f7 Y- d1 G2 j9 O
  1284. STA $BA# w( A# o2 {. B- V6 e7 g2 K# k
  1285. LDA #$21
    * y! \- z( R) A5 d+ ?. Q$ i& S
  1286. STA $BB
    : T6 U7 ~/ V7 V( s( {6 z! O8 p3 I

  1287. , T9 J. }  y0 i- @; R$ c5 _
  1288. 3 A$ C  f3 A- q* _% ]# k/ I5 h
  1289. JSR DN_PPU
    9 G% u# |4 [( ^% V! ]) W, x
  1290. JSR SPEBUL_WRITE* T1 d; f3 i: Z4 E  S* L. S  n
  1291. LDX #$00
    + A& R( V5 B$ g
  1292. LDA $07A4
    & o+ q2 y+ s' Q
  1293. AND #$02
    ( o% _1 V: H8 t7 A# E8 o! l6 _
  1294. JSR ON_OFF_PPU
    ! b* x4 l* O5 H9 u
  1295. LDX #$00
    , K. J" n9 I% D# D2 V
  1296. LDA #$B1
    ' {! i" A5 `- E: J- L' A
  1297. STA $BA/ c5 X- B7 q  w$ w$ I
  1298. LDA #$21
    4 J' }/ z$ K# B. L6 c
  1299. STA $BB5 N4 V+ r& M& D2 |/ N
  1300. ) H; I. M* d2 E8 m6 k
  1301. . h( m% V/ g  T7 F  t' H. w- |
  1302. JSR DN_PPU
    ( @6 f9 ]9 f" g/ q6 `. N6 t
  1303. JSR SPEBUL_WRITE% p3 R# W* Z7 m0 n$ D
  1304. LDX #$00( I( E/ o0 a' e4 u- d
  1305. LDA $07A5  O! g8 E" N6 X# N
  1306. AND #$021 C4 B# i& Z, V
  1307. JSR ON_OFF_PPU
    ' k& O. C$ J! M0 H
  1308. RTS
    3 n+ P, I# P9 I/ V: \, F: }/ l
  1309. . h3 p" _( j: a; b9 n5 Z. Q
  1310. .ORG $A500% y) E  N) K9 m' L- r, r! `/ l' d2 d
  1311. CLEALL_STRING:' }, }( d7 o/ f! H
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$800 v; q2 m" Q+ F% s
  1313. - L& i5 L; ~5 K

  1314. 5 {- \! X) m; r0 O) q4 d. x+ F) S$ S
  1315. CLEALL_WRITE:
    ( k' S/ G' j& C5 }! }. V8 Y$ n" ~
  1316. LDX #$00
    $ C& \2 s. w7 t. P6 s
  1317. CLEALL:8 `7 g9 W# j+ j7 l! ]0 ~; I( C, e
  1318. JSR PPUADDR_PROCESS
    ( }6 o8 e5 x7 K& R( M9 O
  1319. LDA CLEALL_STRING,X
    ' f+ u  W- B/ G" F* i
  1320. STA $2007
    : a% P  |! D' b) z" L
  1321. LDA #$00) J# M( I) u* N# P1 O+ N
  1322. STA $2000
    - g* m1 W. n/ e, s2 k) O- e' ]
  1323. INC $BA% P! L$ p) b) ]) F
  1324. INX
    3 u: o* W6 a' n' C' n8 ]. K
  1325. CPX #$07. O- M& c) m6 l' e, E1 l8 u4 ~
  1326. BCC CLEALL7 Q- V6 D& X* q1 s6 U1 H( C6 O3 p
  1327. RTS! M0 M. N4 e7 r, ~& d3 S& q

  1328. , p3 l8 I2 P7 B: U4 R2 ^9 ^
  1329. CLEALL_PPU:) P) r0 l. J! P- Q
  1330. LDX #$003 }) Y0 N: y- m0 h5 l" X) @  k
  1331. LDA #$E2( S5 a4 ~2 q" v6 h  m0 N" M: G: x
  1332. STA $BA
      q+ U' J# v; J# \- L+ R1 J' \
  1333. LDA #$21
    : L1 v. X8 F7 H6 W# z: ], Y. f
  1334. STA $BB& l3 \. K- s; J3 {1 i7 U

  1335. 4 X* }, a) g; p7 n1 s8 F; ?& }% G
  1336. * i; N' K+ M( t
  1337. JSR LF_PPU6 J5 L+ A2 o6 N. Q
  1338. JSR CLEALL_WRITE
    ( N/ Z6 e: a- m! x6 I- j0 u1 W( k
  1339. LDX #$00
    ; L/ v8 l9 U$ Y+ o, {
  1340. LDA $07A4; b8 x; @1 a! E
  1341. AND #$04, s: y9 a/ T1 V$ a9 {9 M3 S
  1342. JSR ON_OFF_PPU
    ' q( b7 |* L  n3 H7 H, |3 o2 R
  1343. LDX #$000 r' u5 |. N3 G1 U0 d/ w1 a
  1344. LDA #$F14 }/ M4 [3 X- w2 F& [* Q  k
  1345. STA $BA) ^; H9 R( \0 q( i
  1346. LDA #$21
      |+ K: A& L2 C  y$ ]$ h. |
  1347. STA $BB
    % Z% k4 I# F, A, h- w& F

  1348. ! \: z: x) O' M4 I

  1349. 7 l5 b5 u, m/ d1 @
  1350. JSR LF_PPU
    ) ~6 G( F9 _) m' N3 ]9 Y7 }
  1351. JSR CLEALL_WRITE
    & w; m5 Q' j/ O$ R, C
  1352. LDX #$00% r$ l5 g+ s9 R
  1353. LDA $07A5
      p' p+ Z: Y. S4 h3 |
  1354. AND #$04
    . K. J4 w# C* q3 @6 ?
  1355. JSR ON_OFF_PPU& \1 R$ T5 G* o
  1356. RTS$ H2 _5 w6 |) M; x5 R* H; [
  1357. ( W' a8 w" J9 i2 ^/ x$ ?- p
  1358. HARDMODE_STRING:
    9 a  l, i) \7 t$ Z& [+ A
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80. r6 T9 |6 d  E/ O; Q- z
  1360. * D9 L3 a7 K7 m) [  n/ F/ R

  1361. " x# m" a9 v+ X- U2 v
  1362. HARDMODE_WRITE:
    / t) B4 L& \$ _
  1363. LDX #$001 s( \  O7 f* I7 N
  1364. HARDMODE:( E# w( O8 ?* \1 f
  1365. JSR PPUADDR_PROCESS) x* p- w! b1 p# C# F
  1366. LDA HARDMODE_STRING,X) p0 A0 [$ d/ ]# R: ?: y
  1367. STA $20077 |. ~# |. c# ?4 p
  1368. LDA #$00
    ; U! r8 T/ O2 t" S! H
  1369. STA $2000
    2 C+ w: R: u6 g7 }' h! o' m
  1370. INC $BA
    0 p: @& _% N9 q2 u# O
  1371. INX+ M2 g% r, O1 G  |, w$ ]
  1372. CPX #$07
    4 b7 T" H  @4 k/ F3 f: o
  1373. BCC HARDMODE1 f7 @: S% \( a) c3 g) O
  1374. RTS
    - v8 H/ E, z# t

  1375. 9 z* M+ F  }7 i# y, D' t# e
  1376. HARDMODE_PPU:& z" i+ z, M+ f7 ~3 Y, I  [& d
  1377. LDX #$00
    " C5 r9 f6 Y. w6 W
  1378. LDA #$22
    5 x2 w: P. Y. Y
  1379. STA $BA+ @4 _- J1 U, A5 A* Q
  1380. LDA #$22
    ' W# V! ~) y$ d2 `$ Y
  1381. STA $BB, x: M6 i0 @5 n6 B: v
  1382. JSR RG_PPU7 r# M" Y; x3 M' E6 J( d4 M' }
  1383. JSR HARDMODE_WRITE( U0 U6 F0 a  z& c. L. G- K
  1384. LDX #$00) g- e6 X7 y4 f# w" m
  1385. LDA $07A4
    & f3 H+ e/ z" i7 B) y# O/ Y  h
  1386. AND #$01& ]2 ?, k/ T: E6 R" g; a
  1387. JSR ON_OFF_PPU
    . P& H+ G! G# }; v: `) c1 ?! z
  1388. LDX #$00
    ; B: q3 ^6 P, X8 P" j
  1389. LDA #$31
    7 T! M% g6 @3 I  @9 r6 M* p
  1390. STA $BA
      @" s8 c3 G" M( Z1 C: c2 T) n
  1391. LDA #$22  g( f4 Y7 ]8 H- _
  1392. STA $BB
    8 r/ _) m) i( I
  1393. / X0 c- P" T, O+ r7 J4 {

  1394. 2 l3 U6 e4 l  M4 K
  1395. JSR RG_PPU- c6 P( ?7 [4 o- h- M
  1396. JSR HARDMODE_WRITE
    , W4 Z/ ]4 S* u' H
  1397. LDX #$00- V$ ^+ b1 ]* Q) w+ x
  1398. LDA $07A5
    ! O9 D- @' u, X2 t% y5 K3 O
  1399. AND #$01
    * g& }& d1 H' K2 ]
  1400. JSR ON_OFF_PPU
      @* W, y1 f( _, X/ W% V
  1401. RTS! y1 L7 C* Y9 \3 ]

  1402. 2 _* Y& S% `- p! W% U. i+ Q9 G
  1403. B_TO_JMPSTG_STRING:
    9 y% O! T* x& Z% o( T1 Z
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    ; u8 U: c7 g3 |" M/ i/ ^

  1405. * s2 I- `8 _# g) x( o

  1406. , i1 l$ z: a4 X9 O( R
  1407. B_TO_JMPSTG_WRITE:& w$ u6 m* ]8 f* k0 U
  1408. LDX #$00
    : u  w) p: f4 F
  1409. B_TO_JMPSTG:
    , V" d5 f' q9 N( F! Q7 c+ P
  1410. JSR PPUADDR_PROCESS
    2 Q0 T' X! M1 N! q7 V/ |' P: G
  1411. LDA B_TO_JMPSTG_STRING,X
    + S- i" J" B" A, K
  1412. STA $2007. {0 V4 C8 P" s4 T
  1413. LDA #$004 G, W, F- J! Y, \
  1414. STA $2000. H) w/ v7 `3 U! p. Y6 X7 N$ f* M
  1415. INC $BA
    6 ?: c0 O3 B' o6 Q6 n4 W/ `$ u, b
  1416. INX
    : S+ b' K4 f6 o0 U3 S2 e' Q9 K& W
  1417. CPX #$0D
    $ x# K* h) q% i- R+ E
  1418. BCC B_TO_JMPSTG
    1 t4 P; r& ]( q! o; U3 j/ u- h
  1419. LDX #$00
    ( ~1 S. Q0 O- e. t
  1420. LDA $7FE09 @( n* [/ @% J( H3 Q" y4 W1 a" ~
  1421. JSR ON_OFF_PPU
    & e7 N# T4 w3 L; q( N/ S
  1422. RTS
    " E( k' E1 {$ {% e

  1423. ) {" j( x, i# M3 T
  1424. B_TO_JMPSTG_PPU:! \; u0 k8 o. x& ~; N3 o
  1425. LDX #$00  k7 T6 q0 U0 }* \
  1426. LDA #$687 m% ^, I8 P5 {* D
  1427. STA $BA
    % I; W' b, F- Z$ y# b
  1428. LDA #$22
    ( m/ h' p" t' N+ `  g( b
  1429. STA $BB# Y1 F5 u: L5 b
  1430. JSR B_TO_JMPSTG_WRITE
    8 c6 x: b# r$ y! F; G% b" V% L
  1431. RTS7 \( F- V/ E8 R
  1432. * Y- c& _2 `! E) j! l( n/ c
  1433. $ B8 e/ H- P2 x, c- G. n
  1434. A_TO_PLAMOD_STRING:1 j( S; @/ b( E$ o& i3 \7 w
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80
    ) A% c' K! P8 O2 j/ p. w8 i( H

  1436. , i% r% J3 H# B

  1437. 0 l5 m- f6 m8 D# I
  1438. A_TO_PLAMOD_WRITE:  O7 S2 R3 a5 [" g9 r& c: j
  1439. LDX #$009 }- j5 |1 C$ r) O7 e. X
  1440. A_TO_PLAMOD:
    ' {; U. \( @& A
  1441. JSR PPUADDR_PROCESS
    . E' ?$ R. z% V+ z
  1442. LDA A_TO_PLAMOD_STRING,X
      M6 h, n9 c7 w. t
  1443. STA $2007
    3 {# ?8 f% }# L5 D5 e* ]8 F
  1444. LDA #$009 s; y+ ]5 N+ r4 J+ Y
  1445. STA $2000
    7 E0 R1 W. @5 r# g+ H0 u: Z
  1446. INC $BA# i' X  \9 P' ?# X: s2 q1 B) q
  1447. INX
    " c+ J6 T5 W: k3 c
  1448. CPX #$0D" S2 z, C; Z% ?4 W
  1449. BCC A_TO_PLAMOD; e9 m+ H* j6 F4 S4 h2 C! Y
  1450. LDX #$00
    + U' X: \* g3 j% E4 u4 F* w
  1451. LDA $39
    & x; _7 H: }9 }2 _/ ~# c$ b
  1452. JSR ONE_TWO_PPU
    % ?9 D& ~3 E: g2 P  s
  1453. RTS0 E! I" R2 E& t

  1454.   R5 w. Z% t8 o4 O/ h
  1455. A_TO_PLAMOD_PPU:' ~/ z; C, A2 o5 @
  1456. LDX #$00
    ; C3 E! E8 I2 R2 m2 a9 H
  1457. LDA #$A8' X& }! t' Z+ N8 X- z1 j4 k$ O  r6 z
  1458. STA $BA
    & v; P2 o3 s3 ~
  1459. LDA #$22/ z& g, s9 K) X8 M  G
  1460. STA $BB0 L" e* L1 V8 U4 B# N( F2 d
  1461. JSR A_TO_PLAMOD_WRITE
    " G2 u3 C) \) g# t* ~1 [
  1462. RTS7 u0 V: E' F3 Q; _- M7 b% {- }

  1463. % Q# L8 e; o* z  g( u: S
  1464. MOVSPE_STRING:
    / Q4 |: v3 \! Z& @$ W2 x& T
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80/ l4 v; O* @' A/ L. N0 _# r7 G6 q

  1466.   n: W  l! v- x* w+ n) y1 G5 V
  1467. + V& ?4 z/ |8 e3 O* C
  1468. MOVSPE_WRITE:
    1 b, ?$ s% A* }" H1 k0 P9 z1 c8 x
  1469. LDX #$00
    $ s% H3 P; H& ~
  1470. MOVSPE:
    8 j& X+ ]; W: S& h, g6 ]
  1471. JSR PPUADDR_PROCESS# `9 [& I) J2 i( T6 z+ N3 m" ~
  1472. LDA MOVSPE_STRING,X. R, G0 ]' M0 Y7 S& G4 M
  1473. STA $2007
    8 J, }3 F- r' F7 N
  1474. LDA #$00
    7 m  q, g: I3 ]
  1475. STA $2000' i! z+ Z+ m1 o1 I: N5 W
  1476. INC $BA
    / U7 @0 B$ Q- {% Z5 Z% c( W: Q5 ]
  1477. INX
    ( v$ y0 O( X: ]
  1478. CPX #$07
    ! B  ]2 w6 M1 Z; y3 W- ]3 r! o
  1479. BCC MOVSPE
    ' o3 C. z( s3 ]6 B
  1480. RTS) A6 {8 i$ `6 w, W' a7 ]# n

  1481. ' x. x6 M( D- }$ R: _% z3 B
  1482. MOVSPE_PPU:, f2 S8 B% P/ a3 |" Z
  1483. LDX #$00
      S1 P6 W# h6 t# k4 S7 O" l
  1484. LDA #$69
    % p6 N! o4 B3 l; N# d
  1485. STA $BA8 X5 i& I. j) A  T0 P3 W
  1486. LDA #$21
    ; n5 j% Q* W  w: E8 u
  1487. STA $BB
    3 X( _0 k; C- d% I' A# N: O9 }

  1488. $ e6 D8 K7 n% b9 C
  1489. " c1 d, c$ }2 e  X: I/ A4 T
  1490. JSR UP_PPU: P  a& N' d, }2 L/ X
  1491. JSR MOVSPE_WRITE
    & O/ Z, M+ Y: S: a5 p% k
  1492. LDX #$001 }7 Y- w" O+ K2 G
  1493. LDA $079F3 x5 d' w! M9 \/ F8 F
  1494. AND #$08
    / v& k1 @' O1 B( ~* V
  1495. JSR ON_OFF_PPU+ B, H1 n" i7 u9 H7 {' M$ m" t
  1496. LDA #$80
      T& ~) |/ y, u' [/ C# U; |" Z" ]
  1497. STA $20074 G4 Q' h: }( ^9 T
  1498. RTS# r2 ]2 ]# g+ m, f' b0 z" U

  1499. / G& m( E6 g3 e; W
  1500.   
    ; N6 U& X# S8 y; S  |+ a& U0 q! C
  1501. UNLJMP_STRING:. M2 ~2 t, F5 X$ D
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$809 F2 T; F0 g3 [# `9 U7 U

  1503. * N5 N% r3 u% l* S

  1504. : W6 I5 q8 X! S) `3 A
  1505. UNLJMP_WRITE:
    8 j+ M2 q) x3 ?7 u8 w. Y
  1506. LDX #$00
    : l  g0 k( J; B) @6 J8 K5 t9 q8 H
  1507. UNLJMP:
    2 Q( u8 K, X6 l" e% T$ H, w
  1508. JSR PPUADDR_PROCESS5 I/ Z- ?: ^* J& L
  1509. LDA UNLJMP_STRING,X
    7 b, s% z# n7 y: k. {8 y
  1510. STA $2007/ i6 x6 n7 T- x. O$ g
  1511. LDA #$00
    0 q; M, ~* R2 T
  1512. STA $20001 I0 o& e! `- @1 i
  1513. INC $BA
    + [+ P( O0 I- X% o' c4 d
  1514. INX
    ) z" ]# f5 o- I
  1515. CPX #$07# H8 Q% s; u! n3 s) y. O
  1516. BCC UNLJMP
    7 K1 Z# q  W; y0 Z9 e$ @
  1517. RTS
    2 N6 M. q! @% x: B4 Q

  1518. . I' k' V+ z0 h
  1519. UNLJMP_PPU:
    0 @1 ], |6 Y& p; k' p* D  \
  1520. LDX #$00
      n# R  @0 z( a; A
  1521. LDA #$A9& V3 `3 G1 O% H$ Q( N3 B% G
  1522. STA $BA
    5 Z+ `3 ~# F1 [' f6 p
  1523. LDA #$21: z. ^* d5 h+ X$ K4 O5 b/ V2 A5 N
  1524. STA $BB' R: C/ @& }& m9 I! c, V3 B
  1525. & r# H: I. H( ^/ |4 Y1 y' B
  1526. 9 n4 T% W- a% u$ z& b* L6 N
  1527. JSR DN_PPU: a1 D/ i+ v7 B1 o3 Z
  1528. JSR UNLJMP_WRITE
    . |6 c, s9 f0 k6 i
  1529. LDX #$00
    & w8 ~$ K1 c) Z+ y( t; U
  1530. LDA $079F
    ' _8 j* B0 g! g3 s" r" ^5 m0 p) G  m
  1531. AND #$041 F+ O" q% ^0 [6 b8 h
  1532. JSR ON_OFF_PPU
    3 I1 b! c  }2 Q- t) Y9 z2 x
  1533. RTS+ v5 V7 `  g$ g; S

  1534. " b7 F0 m) s# @3 N

  1535. $ I3 f2 h$ S! X8 L7 p
  1536. DESTRO_STRING:" b8 k- l; z# Z* K) k
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    ! j- d( U9 @6 _# S$ u

  1538. 2 [& i- ]! @7 x# F3 C4 d
  1539. $ C! Z  i' _- J. k; I; I5 g7 e
  1540. DESTRO_WRITE:
    0 u1 A2 Z; V2 k
  1541. LDX #$00
    0 x$ J* H7 G9 W# B8 D* P6 J
  1542. DESTRO:3 o) B2 K) }, {" i
  1543. JSR PPUADDR_PROCESS& x: O9 N) T, C; H
  1544. LDA DESTRO_STRING,X
    - I0 f  i( x8 h8 v
  1545. STA $2007: R% q# Z: B1 Z0 G
  1546. LDA #$00
    / \* ~6 T% {( \/ a
  1547. STA $2000$ L+ ?' Y" p$ G" k
  1548. INC $BA
    + S0 G7 Z3 S+ a. ?" e
  1549. INX+ _( n+ D+ Q1 Z+ s8 t1 N  O$ O4 Y
  1550. CPX #$07
    3 X! l; N3 U5 N% \; y* [( @
  1551. BCC DESTRO
    ; U  p) N, @0 Z/ v" M
  1552. RTS+ G+ b4 f% {- t& g6 b

  1553. ' Y+ w* N) P% d7 h
  1554. DESTRO_PPU:
    2 D2 a$ L  K: y6 H7 W5 @, g$ c
  1555. LDX #$00
    ( D' _4 Y( i& T/ _) R2 d
  1556. LDA #$E91 U# f1 p2 H/ T5 j
  1557. STA $BA
    & c; p  q9 u& o( A) V1 q- w
  1558. LDA #$21, a, W! M7 }" q2 m! l! M
  1559. STA $BB
    , i, `& D4 r! H
  1560. " f0 i! D0 t" E- i4 \! @3 u

  1561. 7 W4 \8 Y" N  Y9 V
  1562. JSR B_PPU
    - z. @$ Q% C: P/ y  |( L0 Y/ j  I
  1563. JSR DESTRO_WRITE: K$ }! d1 i& v( h
  1564. LDX #$00
    " l* m9 D" X) k" f' J- }
  1565. LDA $079F
    ' E9 F+ l- o( o- J+ R. o7 O
  1566. AND #$40
    7 A9 `; O6 K3 ]; f- G/ s& B
  1567. JSR ON_OFF_PPU
    ( I( i1 \8 B7 u- l
  1568. RTS
    ' N# M1 \& T# X' }2 K/ J6 o- O" D
  1569. % Z& e5 B# U4 n

  1570. ' q' m$ j  Q7 z, Y0 {
  1571. EQUBUL_STRING:
    # t% i. R( }1 N# {
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    ! l  A! r7 e, T- ]) Y, @3 C+ H0 d3 v

  1573. 5 i' j2 G5 C- V) H( z

  1574. " J, A5 ~% M2 j# k" B
  1575. EQUBUL_WRITE:( e/ e; c3 f* e' a- }. n
  1576. LDX #$00) T( m: e% D- l0 |  L
  1577. EQUBUL:! W8 R2 \4 G7 z. m" r* u* B2 [5 S
  1578. JSR PPUADDR_PROCESS! }4 j" v2 e1 n# c3 R! w- P
  1579. LDA EQUBUL_STRING,X6 B, s1 o6 O7 [% l
  1580. STA $2007( T! E. G( x% t5 S; n6 S. ?; U* n7 H
  1581. LDA #$00
    8 \) _# p, h# `% |" B
  1582. STA $2000
    6 Z8 s- \1 I) D
  1583. INC $BA
    : A2 R) S/ b/ c5 w' [' }3 i9 g
  1584. INX. _9 e# w" a% `& p2 E: p2 f3 t
  1585. CPX #$07
    5 ^$ W. G6 r5 ]) y, Y, U8 d
  1586. BCC EQUBUL
    , F8 q  ]: _. I5 k- w% m  E$ f
  1587. RTS0 Y+ P- v! L( i
  1588. 2 i" I6 i- h" V. L. ?+ w
  1589. EQUBUL_PPU:
    ! d5 `1 ?0 o* r- t+ m& O
  1590. LDX #$00
    4 ^" @" a% A# ^" t( m: J
  1591. LDA #$29
    8 M) }2 v) m* g; M
  1592. STA $BA
    ) a" X+ K! w& ~
  1593. LDA #$22
    - `4 t4 P' Z& E) G
  1594. STA $BB* |( N, l( G  `- D: q

  1595. . g# S) C$ |. P/ |" ?* d. n
  1596. : y+ f4 _  Z6 v& E6 h
  1597. JSR A_PPU& c/ B/ A8 y) u! D0 s; T
  1598. JSR EQUBUL_WRITE
    ! x9 j9 W# ]$ ]8 P& u4 O
  1599. LDX #$00
    7 z3 I  J3 q2 D/ z7 I, I' D
  1600. LDA $079F
      l5 b3 p' ?1 Q4 {
  1601. AND #$80
    : V- Z6 D. ^+ b' O3 X2 o# U
  1602. JSR ON_OFF_PPU6 U* i, q( l8 _) q
  1603. RTS
    # }% C5 a2 |1 c& z, x1 n" T
  1604. ! u) g5 ]$ K+ j/ U7 I7 l, @: P

  1605. 4 W" c1 L. f* ]! n" h' }' x7 r/ N

  1606. 0 \. C2 z" m0 [5 M( d) Y( Z
  1607. BULSEL_UP_STRING:7 a6 Y6 t* Q+ I! |- r% K5 \
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80! W$ ]( h( D5 I* i

  1609. & s) R+ S7 e" N  n6 v- T9 n# H2 _
  1610. BULSEL_DN_STRING:
    " r6 q9 C1 V; q3 K
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$803 C" ~9 N0 B6 l( M3 F) O$ ?( `

  1612. 9 n( }( v' B! z+ `6 A) x
  1613. BULSEL_LF_STRING:) K9 o% W+ U/ O) u
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80. B( m% H8 m. I9 B; `1 x6 {, a9 |2 P
  1615. 0 k, M2 o; s+ @0 U. Q- ^
  1616. BULSEL_RG_STRING:
    0 L) f) D/ _0 y# S* x
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80# I. X7 a  T4 u* ]

  1618. ( X9 o" d. p* L9 X4 k  `% Y5 f. B
  1619. BULSEL_B_STRING:9 L! j; u2 t3 c! I+ r; B# ?
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80! \( [8 A0 b1 O" q" M6 C( m6 i
  1621. 2 U# a( p( P( u( J- W4 h( @
  1622. BULSEL_A_STRING:
    ) A+ A7 V' U5 ]* [( c
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    3 G9 O& R# y5 `3 T. G: _
  1624. ! q9 J  ?! D- G

  1625. $ M1 p3 ?, x- ^3 V( |, P0 }
  1626. BULSEL_UP_WRITE:
    2 U. F3 f! b. F: k( a# y" k5 f
  1627. LDX #$00
    . e8 U- I, m" s  ~
  1628. BULSEL_UP:
    + o+ C5 D& b# b
  1629. JSR PPUADDR_PROCESS; A1 S8 M: x; ~! i1 V- N
  1630. LDA BULSEL_UP_STRING,X* N' N* V% O4 k5 k, j( z
  1631. STA $2007+ w; X/ H5 B7 w3 x2 `4 r* q
  1632. LDA #$001 |% x* Q7 c; G% B3 ?2 ^! |
  1633. STA $2000
    4 L& d# m; G5 T! [9 B- M- I
  1634. INC $BA
    $ d7 d% F- Z  c
  1635. INX
    & u5 P( G* f9 {. }) `
  1636. CPX #$09
    0 c0 @( }; I% c, M
  1637. BCC BULSEL_UP# C, h! `1 K! R7 R  D3 z: d
  1638. RTS
    . _& O" w0 f# p, |, k+ Z
  1639. BULSEL_DN_WRITE:
    5 e; `+ f8 H6 g6 ~9 K  I
  1640. LDX #$006 b& s& W% q, o" l+ B" z
  1641. BULSEL_DN:
    & c- S8 K8 d  _( G) _1 f- T  e* `% u3 P
  1642. JSR PPUADDR_PROCESS- U% ~1 I- I$ M& }/ ?3 ?* E0 W% d
  1643. LDA BULSEL_DN_STRING,X
    6 @. I2 w8 l2 a6 A+ `0 a
  1644. STA $2007
    5 W0 K) k# v' k  K, l0 H7 a
  1645. LDA #$00! y2 O4 [  p# O' C9 u
  1646. STA $20003 ]/ ^  @, F" P+ x. O7 v
  1647. INC $BA: g8 E& }; _, a+ ]* x
  1648. INX
    2 x, e: n+ s+ _2 i2 v) @! l
  1649. CPX #$09
    , ]9 _% U5 B" L: r
  1650. BCC BULSEL_DN
    , g9 Y7 H% T6 w* i. L: y
  1651. RTS
    8 ?* w2 P7 R& Z. `$ u
  1652. BULSEL_LF_WRITE:
    / f# x- z* Z# O7 x- @& c# U9 d- V
  1653. LDX #$005 ^$ m3 S1 H+ M+ `$ H/ u4 w
  1654. BULSEL_LF:  W1 U4 J9 g2 I3 k- B/ w& ]" q
  1655. JSR PPUADDR_PROCESS$ j% F( P# c4 f% U" K5 \
  1656. LDA BULSEL_LF_STRING,X" m8 M' H, W6 m
  1657. STA $2007, j) A" q) D. e
  1658. LDA #$00
    % f8 ^! W9 O* D+ y
  1659. STA $2000" h/ @5 J) |, y' E" n
  1660. INC $BA
    $ r- \* x8 b0 l8 J* @9 F
  1661. INX
    9 ]6 h% U* R' q8 c+ ?
  1662. CPX #$09
    5 A" O  W% `/ Y3 x- c' z9 N, ~+ w
  1663. BCC BULSEL_LF/ h  H1 N9 b6 x$ V+ o; ~' `+ K
  1664. RTS6 ~' i& H5 V# ~$ z. T$ @
  1665. BULSEL_RG_WRITE:3 H; S$ l& `9 U7 p
  1666. LDX #$00" A3 a: L& A5 s% Q- m2 O0 y
  1667. BULSEL_RG:6 _4 f- X2 B- {1 ^
  1668. JSR PPUADDR_PROCESS
    9 J- F9 G1 L5 X# Z/ H2 N$ v. b
  1669. LDA BULSEL_RG_STRING,X4 S  h' o5 Y9 u5 ?
  1670. STA $2007
    " N% v* x7 k% R, C
  1671. LDA #$00
    # H) k% n, r8 K0 ~) c
  1672. STA $20001 X4 A0 Y3 A3 S2 {% Y# r% y
  1673. INC $BA+ o. t3 A/ [8 t
  1674. INX7 k$ Y( l3 Q# v
  1675. CPX #$091 v* q: b: b) n8 U$ w8 N
  1676. BCC BULSEL_RG9 a4 D+ l" u- B
  1677. RTS0 L: u8 }2 ?! {, I6 R4 F8 i
  1678. BULSEL_B_WRITE:
    * f6 D" I$ w5 L3 c
  1679. LDX #$00
    & ~8 z* K- s1 D' f$ h& S$ \7 S" H- z
  1680. BULSEL_B:
    ) p$ r. O9 g' g+ k% [/ R. \
  1681. JSR PPUADDR_PROCESS6 ?5 X1 m# Z- e( z
  1682. LDA BULSEL_B_STRING,X
    $ E" d, ^) f& W
  1683. STA $2007' V' k9 W1 H8 A: t; q* F
  1684. LDA #$00+ ?5 p4 k8 P4 h% T
  1685. STA $2000+ v0 u6 K: ?# j- W1 R$ J5 \
  1686. INC $BA
    5 F. h0 y% T9 q' z" a9 h6 t
  1687. INX+ K) d' ~9 ^- s" K
  1688. CPX #$09# b; g. ]# h5 ?9 O" `' g2 Y
  1689. BCC BULSEL_B
    / I3 R) F2 r: ?; d# Q, g
  1690. RTS4 l& |5 [0 D1 w; b) M& X
  1691. BULSEL_A_WRITE:
    " t* r2 E: B1 r1 \$ H
  1692. LDX #$003 c3 q" u4 ~  T+ o
  1693. BULSEL_A:0 k: o9 j) O0 t$ L
  1694. JSR PPUADDR_PROCESS: F3 n7 F3 }: q% D- f
  1695. LDA BULSEL_A_STRING,X2 J7 b2 Q6 Y+ [0 Y
  1696. STA $2007
    % k  w. Y! e' o. v, }" ]2 R
  1697. LDA #$00
      G" r. `4 o' G. ^( W
  1698. STA $20003 g7 `0 a+ W' E  H% h
  1699. INC $BA. S6 I7 \* B9 Z3 ]
  1700. INX
    . _5 o6 v1 ~. Y4 a& g: o
  1701. CPX #$12
    % N  r8 U) e0 e4 |
  1702. BCC BULSEL_A
    ; T1 @- u% X& U
  1703. RTS
    / L/ E' I( I' t2 m1 \
  1704. - a# D$ p: q- O# D- V1 B

  1705. 7 D. Y* z- V0 p2 \+ g  H6 h" }. U
  1706. 0 v* C/ g+ e5 v6 k% n8 S8 L0 A
  1707. BULSEL_PPU:! y7 w8 Z1 p1 _: T! n0 x
  1708. LDA #$6C# S, R4 z6 v( l2 j* x
  1709. STA $BA6 S' M2 J8 Y+ C6 b) G9 q
  1710. LDA #$21
    1 p* y) Z6 z' S3 m& c4 e, D/ B
  1711. STA $BB
    , M. N3 W( z# z- ?: f2 p' W5 ^% P
  1712. JSR BULSEL_UP_WRITE" ]) d6 ]* p' h7 ^2 t/ @
  1713. , i, z  ]# h( H+ q: q" f
  1714. LDA #$AC
      F8 u) [5 O9 s+ h$ u
  1715. STA $BA
    5 a7 m9 O4 C5 ?- f1 g7 R
  1716. LDA #$21
    9 E* h7 c2 D$ I# `2 R
  1717. STA $BB
    0 J* G' |+ G6 a6 P0 W& p7 C$ t
  1718. JSR BULSEL_DN_WRITE& X2 y7 V" k7 |% x2 _1 K
  1719. $ K" {' a+ g! @+ a7 \' x+ _3 y
  1720. LDA #$EC
    - |. I1 l' C: ^/ N" p0 e# _# d. f
  1721. STA $BA+ |2 e% P2 g8 @! J
  1722. LDA #$21
    ' O" D/ {7 f4 L1 H5 S5 Z1 I
  1723. STA $BB& ?, F1 U# y8 Q4 M, v) m
  1724. JSR BULSEL_LF_WRITE
    7 `# [0 b  N  E( {: d

  1725. - o5 z! f4 v& i3 k% T# B' i
  1726. LDA #$2C
    4 S5 p- _$ D: l+ Q
  1727. STA $BA+ l9 }1 i, b: f  C
  1728. LDA #$22
    / C: j! X( ^' {# @" K4 G! a
  1729. STA $BB. y+ u- D. P& D
  1730. JSR BULSEL_RG_WRITE
    ) Y$ `* J8 p1 w+ `

  1731. % G6 t- v  ~( f
  1732. LDA #$6C5 W) b$ K. v$ v7 k+ S' i- k, c
  1733. STA $BA
    $ f/ C8 [6 A: s" I8 E0 M! P
  1734. LDA #$22; Q. V5 a' q0 J% q. E% T. N7 I1 j+ ^
  1735. STA $BB
    1 s8 E) f. U8 d/ J/ ~6 Z1 `* Z) `
  1736. JSR BULSEL_B_WRITE/ K; y! A! K! \8 ]
  1737. 2 s7 l. k  d5 I* F) }8 g. C
  1738. LDA #$A7
    * R  m9 v9 {5 }; y( ~
  1739. STA $BA
    * ]! A! U! A: v' [& P5 q
  1740. LDA #$226 V3 b5 ~3 @& e! X; }
  1741. STA $BB
    1 P) x, j, G9 f' S
  1742. JSR BULSEL_A_WRITE; `! I# n; J1 r" ]$ b% h' Q4 s+ G
  1743. RTS
    $ Z! @, e# O! G& k: F: K- c
  1744. 1 l# ^* f( k+ ?0 G. `4 d$ b' {
  1745. 1 w" k% v; r0 |7 t. r$ {
  1746. 5 k3 Q- U2 @* F/ c- q0 N
  1747. UP_STRING:
    4 a1 e8 H! _0 c! f4 M3 n
  1748. .BYTE $9F,$9A,$80
    7 q: k) C" }# E* S7 z) D! b, d
  1749. " s# @+ D  P; S/ @9 }( m7 }
  1750. DN_STRING:
    / t' N+ v: J3 \
  1751. .BYTE $8E,$98,$80
    : X- G! h$ K# [) ~: U8 y

  1752. # g8 F6 i  i/ I6 S" i
  1753. LF_STRING:
    1 c3 v. E5 v! n5 r9 {
  1754. .BYTE $96,$90,$80  s8 y6 J, h9 w* M+ t# X9 M; Q

  1755. 6 L+ t; L9 l4 ^- b
  1756. RG_STRING:
    $ U7 t8 C$ h: L+ ^! r0 l
  1757. .BYTE $9C,$91,$80
    ) q  \* ]2 d) f: b+ k% p1 I& E( Z

  1758. 4 `/ x! l/ ]' Z# L0 h
  1759. B_STRING:/ c5 W7 b6 n- v! d0 L, K
  1760. .BYTE $80,$8C,$80
    ) e6 `  L0 N- K% v9 L" w
  1761. ' r# q4 O6 a9 F5 ~8 i% C2 z
  1762. A_STRING:
    9 e4 z8 C  b( q& J# x
  1763. .BYTE $80,$8B,$80: e9 q1 Z" L7 j8 _) A
  1764. 0 l: _0 o9 i, K1 a: l3 [

  1765. 2 F/ @' c  V" o6 H8 u# m8 I
  1766. UP_WRITE:' X" {3 {3 ]+ m/ J4 E; q
  1767. LDX #$00- ~$ b" p% r8 v5 c7 `& q$ T) X$ @
  1768. UP:$ I2 Q( K9 @& ^# I# j1 b7 G& R
  1769. JSR PPUADDR_PROCESS0 e2 T' m. ?. g- d$ c" r
  1770. LDA UP_STRING,X
    & o; [; J! S, y/ Y
  1771. STA $20073 D' H- w! a) }2 g7 `2 G) q/ z6 n
  1772. LDA #$00& t, N6 E6 v% Q0 d5 N! R8 a  i' J
  1773. STA $2000
    ( B. W. g# S2 v8 N( r
  1774. INC $BA
    2 K+ o, x, `4 Q4 ]; R* V
  1775. INX* i- U7 @; u; ^7 X  W
  1776. CPX #$03, u8 @! _9 _* T: I9 N2 |) [9 r
  1777. BCC UP, S/ I9 E& Z) k0 ?
  1778. RTS
    : ?# Z6 ]9 v4 u' o; ~, R
  1779. ' `( \; h9 j# K( g- L
  1780. DN_WRITE:
    ! P! L2 D2 j7 {2 K
  1781. LDX #$00! ~- y8 c- ^9 t6 t9 t8 t
  1782. DN:
    / {3 v8 g  J/ {' F6 l
  1783. JSR PPUADDR_PROCESS1 u5 N  Z) ?( Z
  1784. LDA DN_STRING,X6 q- C8 E) B% k) Q4 e0 P
  1785. STA $2007
    * b0 K6 _' T0 }! q! }
  1786. LDA #$00
    ' N' A2 `+ m7 }3 Y1 N
  1787. STA $2000
    9 s$ u5 P5 I2 k: P8 w7 x4 u  F
  1788. INC $BA+ C* n1 R& r" \, X5 }7 C1 n' s
  1789. INX( L- B3 W$ m6 J) A6 o
  1790. CPX #$03
    9 @% R7 T6 I# d: Q; }7 w, m
  1791. BCC DN
    0 c: s0 o2 g+ s( P9 z6 r- P5 Q
  1792. RTS' E9 g  g( c% J% k1 b
  1793. 5 C+ K- V4 y. |% ?
  1794. LF_WRITE:5 a, l2 a! a; e; R# b1 n2 _
  1795. LDX #$00( M) p" g' r# C0 J$ @: S
  1796. LF:
    3 ^) b' T5 W. S+ r1 U
  1797. JSR PPUADDR_PROCESS
    ( y! i  T8 F9 ^$ S
  1798. LDA LF_STRING,X% B8 ?3 k  V9 ]- F# O
  1799. STA $2007) g- y7 `8 t  w1 s+ e* B
  1800. LDA #$00# c4 l2 ~  s& v) f/ ^5 s
  1801. STA $20005 S8 L( Z% a  C; S, g
  1802. INC $BA( G: b: q' W0 H% j4 X1 I) u
  1803. INX
    9 \7 k. }, r/ d* i6 a3 i- f  e: D7 i
  1804. CPX #$03
    : ?# ?! w) m2 U. E: H2 F7 s) o, B7 J
  1805. BCC LF
    % n. w1 G2 V0 f9 |9 j2 W9 R. Y
  1806. RTS1 m: J$ u) c6 N0 a9 c( S6 ~( c
  1807. 7 d2 H& \" Q5 ?
  1808. RG_WRITE:
    ' H3 T6 s5 l3 j
  1809. LDX #$00
    * N# F6 o- G  E" X/ [
  1810. RG:% j7 m6 C" a3 \, c
  1811. JSR PPUADDR_PROCESS
    & |$ B" @, ], T3 n2 a1 T
  1812. LDA RG_STRING,X
    ! V% C& _/ S  Y8 E9 S! t1 U  M
  1813. STA $2007, h$ }; l. b' m
  1814. LDA #$00
    % M! U. @  R& _' h6 U. \4 z
  1815. STA $2000- s2 t/ @% W: S/ _0 \# c3 b3 o7 P
  1816. INC $BA7 b$ a, C0 M+ G9 }7 x4 A
  1817. INX- T+ T4 p( |8 |& o- f9 r, L2 Q, i1 _
  1818. CPX #$03/ S0 ^' ]4 F: `* R8 P& |+ n
  1819. BCC RG# n% \9 U* W, Y% ?0 w, z
  1820. RTS: Y/ i% j$ Y) C4 [) Y

  1821. 1 O3 G2 L, M" g4 v8 [+ I! S3 ^
  1822. B_WRITE:6 S6 f/ n2 \" p% T$ i4 k/ z# M
  1823. LDX #$00
    0 e7 e. _9 S6 O* e* I8 |+ ]* ]
  1824. B:3 t5 y* M+ r4 U' p% m7 D  N
  1825. JSR PPUADDR_PROCESS
    $ ~5 w9 ?0 g. y, y
  1826. LDA B_STRING,X
    : j; @9 ?, o' S8 A
  1827. STA $2007; F% ]3 ?9 R2 S' d' g. R& _. U
  1828. LDA #$00
    ' C8 w2 T5 z3 T" L
  1829. STA $2000- {1 H# P  U9 b9 B
  1830. INC $BA+ N6 m. F9 G% T  C8 P
  1831. INX
    . h& ]. a9 F  A! s: S9 f4 g6 Z
  1832. CPX #$03& ^! B1 {" X$ ~( `& S
  1833. BCC B
    9 p* |" u8 y/ j6 Z0 Y! b
  1834. RTS4 R. A! [+ u% ]; j4 C/ ?7 |

  1835. . G8 d# l6 V( W0 r; m/ L  B
  1836. A_WRITE:# G& X  t( `2 O9 @! x
  1837. LDX #$00$ P' B8 B0 V! z, M5 P
  1838. A:
    9 O0 V. v- i0 Q+ [5 E/ i' p  [
  1839. JSR PPUADDR_PROCESS
    7 n1 G7 T( D" H% t  C8 @
  1840. LDA A_STRING,X
    $ g0 w  m' n# _4 F+ q4 V' r' N
  1841. STA $2007
    ' `- {' W0 Q8 `/ M. ]. ?8 N5 J! \3 T
  1842. LDA #$006 i' _$ {. A6 ^1 R
  1843. STA $2000
    ! b5 E+ n' K4 W" M- L; i7 J
  1844. INC $BA
    ; T9 {5 d+ Z/ ?6 Y
  1845. INX4 L7 S. z0 W: r4 o
  1846. CPX #$03
    ) c: _5 p& O" n$ w5 F/ w
  1847. BCC A$ W/ n% X, u: W3 t+ Z
  1848. RTS
      v; \, e. U: E$ V8 H3 {

  1849. / s( }* j% m$ x5 a

  1850. 8 o0 J: f) u& \- f
  1851. UP_PPU:
    % h; N9 [) L! X, A0 z
  1852. JSR UP_WRITE+ B/ I# z9 `) ]+ v" u4 ?  p
  1853. RTS3 I9 F6 o+ O! N% G

  1854. 3 \, Y" W+ \; K5 @* _+ v# L
  1855. DN_PPU:
    2 T2 t- ]4 L1 C/ z- u, Q2 H1 k
  1856. JSR DN_WRITE
    . c. o, S* v- E: z4 B- _
  1857. RTS
      M; l% Z- m7 f9 c& j
  1858. 2 C% e& S7 T" l  L& u; a
  1859. LF_PPU:6 D2 @. M: S4 C# i6 O5 Z- [! q" w
  1860. JSR LF_WRITE
    3 ]6 g8 D5 H5 p. [1 Y% t( s
  1861. RTS
    2 c* w' i7 K% _+ r) b: X
  1862. ' n2 _( W" d8 c* U: M; }) h
  1863. RG_PPU:
    8 _7 L$ a$ H) P8 c. i) O) a. ~
  1864. JSR RG_WRITE2 Q: {' V+ Q+ F9 v
  1865. RTS
    + G- t9 z2 {" t0 q% X8 q

  1866. : ?' T) T' K/ i, e) v) T8 H
  1867. B_PPU:
    * p( |7 ~7 o9 F6 u" Y: D
  1868. JSR B_WRITE& h! e& }8 X. r# t& G7 ~+ u5 C
  1869. RTS# ^9 p. c1 y% I* z

  1870. & |5 j1 G1 v1 M4 Y( u2 @  s
  1871. A_PPU:
    " Y6 Q8 t) K  E8 R4 ~
  1872. JSR A_WRITE
    ' S( _' r- ^0 I' I  W9 A
  1873. RTS
    / q) P$ I1 k% {# i3 f

  1874. # H, Y- T: y! `9 i' q
  1875. - F5 y$ O% P* k( e  k
  1876. PAGESELECT:1 v# o3 l# }% q6 _4 c- U
  1877. PAGE0:
    , @1 v* \! I+ {8 ]9 c
  1878. LDA $07AA( U, g" _: [2 \4 s! @
  1879. CMP #$00  v2 L! e: Z3 Y0 ~3 A. m$ t1 J
  1880. BNE PAGE1/ L  p; U$ r2 W% t

  1881. ; _+ ]$ x( Q" B
  1882. PAGE_00:3 Y; v, j6 M) {9 L5 E
  1883. JSR BULSEL_PPU% r4 @8 `0 b6 g0 S
  1884. RTS+ B  h) R2 e1 f0 x# F
  1885. ) x& r3 j# P% Y; ^
  1886. PAGE1:
    7 H* f' }3 k+ [3 \: G- @
  1887. LDA $07AA
    2 x7 W+ c$ Z- v5 ]) {! l
  1888. CMP #$01
    9 P1 c* C5 F) n7 z8 n* A( A0 S
  1889. BNE PAGE2; ?# {0 c8 z% }2 {+ j9 b

  1890. # ~* |: l; S$ s8 h7 Y7 |/ Q
  1891. PAGE_01:
    , [+ v, r, {. l# s. l
  1892. JSR INVINC_PPU; Q6 {$ U( M0 C5 b
  1893. JSR LIFELC15_PPU0 e0 G/ o1 M" a
  1894. JSR DOUCON_PPU
    7 j: V: U$ z3 F0 i& U8 T
  1895. JSR KILLON_PPU
    8 ?/ x, u+ z. G" T5 Y% u* s0 V
  1896. JSR SKYFLY_PPU
    ) l. }  t& C# ?; V: {6 y8 l
  1897. JSR LIFELOW_PPU& O3 W+ Z; g8 ?
  1898. RTS
    & E: K1 `* d) z6 s- S9 M2 j' G# B' p# o/ _
  1899. . H* O% k# ]  E- [; R
  1900. PAGE2: 9 K4 P- e- Q( _6 Q) q$ @% |
  1901. LDA $07AA
    7 d; b; Q! S  z
  1902. CMP #$02$ ?) c7 y/ ^7 a* Q0 f2 ]) g
  1903. BNE PAGE3
    4 S8 y3 M7 s% i4 S

  1904. - E1 Y# w' M/ y6 x- ^
  1905. PAGE_02:& n/ h3 u% v: _8 _; _  C
  1906. JSR BULADD_PPU
    / `0 n0 a  E' m2 U# r
  1907. JSR SKINGE_PPU
    2 C" W( _0 Z' ?* h
  1908. JSR BULMIX_PPU, v  C' @# H+ g! V5 P
  1909. JSR ENELOC_PPU! q+ J6 S$ |% l5 j
  1910. JSR FOCFUL_PPU
    ; ?- L5 ^1 [" \
  1911. RTS* t; F$ ]! [8 o) d! z

  1912. 9 \4 e9 ~  v* |: t* Y% k
  1913. PAGE3:
    2 J, L& w9 ~8 L& a( E6 U; ?
  1914. LDA $07AA
    3 _1 u; G3 ~- Z4 m& Q) t$ z
  1915. CMP #$03
    6 J+ ]1 o6 x$ H, [% o! c! V
  1916. BNE PAGE4
    % g% T, a/ Q4 T3 E* b

  1917. , n6 u3 B% i, d) l' X: o
  1918. PAGE_03:! j7 v6 p# {# [5 x
  1919. JSR BULCON_PPU
    - ]  z2 B: u4 T6 h( G$ N1 ^1 ^
  1920. JSR SPEBUL_PPU
    & O/ [: X. v2 @
  1921. JSR CLEALL_PPU' l- L- _: q0 P" \& h8 A2 S# o- V& i
  1922. JSR HARDMODE_PPU
    ! K! ~8 \4 F& P- V( E. c5 z
  1923. JSR B_TO_JMPSTG_PPU* x% S. i( ?! @
  1924. JSR A_TO_PLAMOD_PPU: l5 k, T4 ?( [  k( R
  1925. RTS
    - N. l$ f1 V5 W2 C, H

  1926. - ~$ i" K- _, q+ G' c' k$ T  h! v, X
  1927. PAGE4:
    ( |  U( N5 f( b2 G- K: i: O+ _
  1928. LDA $07AA
    ; i- n0 Z5 w" s1 F6 I6 b. m' K
  1929. CMP #$04
    + [+ j$ ~/ m+ ?. A  }3 l
  1930. BNE PAGERTS
    & ~# d7 \+ h8 R) R/ D9 F$ m0 v* V) V

  1931. 5 e( `0 v% f7 ^* z' _. r% [7 L) G
  1932. PAGE_04:2 }0 r+ u9 ^7 t, m* V
  1933. JSR MOVSPE_PPU
    9 w7 _% @+ R7 [4 C
  1934. JSR UNLJMP_PPU
    # Y/ c7 K/ I, C" X/ w9 o) v  f
  1935. JSR DESTRO_PPU- `, k8 M9 w2 U" p- `+ _) F3 R
  1936. JSR EQUBUL_PPU' [) ^9 Z4 v9 f! i4 f7 I: M' s& Z
  1937. JSR MOVESPEED_PPU
    ; ^1 g  Y3 @- c+ l9 u" Y# I$ p
  1938. PAGERTS:6 }! `" r4 I! h
  1939. RTS
    - T3 F2 D; s4 @8 I6 v2 X1 W

  1940. 8 v5 [( d" R; B8 A3 Z# t3 i

  1941. 1 G5 v- P3 X6 W2 B% q* T
  1942. PLAYER_01_STRING:9 e0 d0 l$ f( l5 W  _
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    ( ?- h( d2 z, J  {

  1944. : ^  i0 _$ Q7 ]; W: y
  1945. 8 v5 R' m6 r$ F5 ^
  1946. PLAYER_01_WRITE:
    : {! ^- w8 a- q7 S1 C% w& g2 C$ s( `, v5 @
  1947. LDX #$00: e$ H  @% g1 c# x( ~
  1948. PLAYER_01:6 q$ m9 ]4 E( [9 z+ W- A
  1949. JSR PPUADDR_PROCESS
    ) p5 g% n3 }, i5 u0 v. a) q9 g
  1950. LDA PLAYER_01_STRING,X
    $ P$ P2 Y, O" O
  1951. STA $2007$ d, e$ s2 z! N# V% x
  1952. LDA #$00( ~. u. M* k9 ?( ^% v
  1953. STA $2000
    7 q% h9 G3 p( o
  1954. INC $BA5 L# o" z% E  H: E4 n0 b
  1955. INX3 q0 m; @% N$ y' v( D
  1956. CPX #$0A" H* |5 @# j, H& @, |% P/ O
  1957. BCC PLAYER_012 A( ]% m$ N3 n$ o
  1958. RTS4 P' U% a1 K8 w8 m' I
  1959. : L# i+ W7 R! I% U, Z: l
  1960. PLAYER_01_PPU:
    8 m. p5 B5 H& [* q8 L
  1961. LDX #$00
    $ n. u7 G/ F% @% n
  1962. LDA #$64- v  w9 H1 `1 Y+ ?
  1963. STA $BA% \$ o1 W' e  J0 W
  1964. LDA #$20
    & B, A2 j4 N: A
  1965. STA $BB8 a- n- [1 W; j2 p" {- `* g
  1966. JSR PLAYER_01_WRITE& n/ K1 [: U! m+ f% I! O( R; z
  1967. RTS
    ) Z( n( l1 S6 R2 d' [6 ~

  1968. ' S2 y! \; P  S# G9 x2 t
  1969. PLAYER_02_STRING:
    4 m) G. k/ g' X$ S
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    - g$ o" X, Z% M: s: z3 S  @0 F
  1971. % f* M$ B8 S8 b" y. ?2 G& ~
  1972. ' Y: }7 u1 l- d, v% K* l* T
  1973. PLAYER_02_WRITE:3 g/ _0 u2 ?" |& b8 F# M
  1974. LDX #$00/ Y& Q9 o% y' r6 T7 A4 ~, x
  1975. PLAYER_02:
    1 X$ m! C9 j7 c. i) |. `
  1976. JSR PPUADDR_PROCESS
    8 E' O: m2 t8 B7 u3 X( d/ U  {0 ~
  1977. LDA PLAYER_02_STRING,X
    0 F1 r( O7 Y) Z8 b7 M: g. Z, L
  1978. STA $2007
    % z/ y# i# q4 M5 s
  1979. LDA #$00
    4 }8 y9 v7 [2 z- G2 a  f- Q
  1980. STA $2000
    3 Q& V1 Y3 Z7 m; _2 x7 H
  1981. INC $BA
    + J+ T' a# \. c9 x; M0 O( N5 U
  1982. INX  Y' {8 ~5 t# O
  1983. CPX #$0A, r* B3 H% a1 `( z
  1984. BCC PLAYER_022 n9 R8 K4 o3 v* T
  1985. RTS
    ( P5 t8 l6 j! ?  j& L6 I
  1986. & j- {  ^+ C4 w  C& @+ x6 V: q
  1987. PLAYER_02_PPU:) ]% ]$ D* y( }1 m$ ~5 D
  1988. LDX #$00
      D( m1 z. A3 L5 b, W" Q
  1989. LDA #$733 b. J' {1 S  a7 W# y$ q$ `
  1990. STA $BA
    1 y- Y* z  R  ]
  1991. LDA #$20
    9 e. Z* ?, w& P5 D( M  Z2 S
  1992. STA $BB' e1 n7 D/ t! i
  1993. JSR PLAYER_02_WRITE
    ! P+ ^* _5 N7 U2 O1 U& R
  1994. RTS
    5 G5 D, f, b# C4 S. K& X) O
  1995. 4 X7 Y3 M' e! O2 G$ U
  1996. PPUADDR_PROCESS:
    : N  S6 t2 u/ B, d
  1997. LDA $BB# H8 p3 Y' N: P$ m* D8 |' t- X
  1998. STA $2006
    * W) _  D0 [3 a; O. `, F$ V
  1999. LDA $BA% c3 p* |+ L3 Y2 G6 k0 J! w
  2000. STA $2006# E  U& Z3 j2 G; p& Q) C. x  o
  2001. RTS
    ( D3 u: p' t6 i( r5 n
  2002. 0 J3 g1 B; |4 M, K

  2003. & X  z1 d9 W2 e1 D/ g( _
  2004. * h3 M7 \* h: M/ w/ U, t: j: o
  2005. ONE_STRING:& ]) v  C/ p, n' ^+ `
  2006. .BYTE $99,$98,$8F
    $ T7 ^# E( @2 v, U

  2007. # ?( ^7 B( K; z  P
  2008. TWO_STRING:! S! ]$ ~4 Z+ |* n
  2009. .BYTE $9E,$A1,$997 Z7 {% }7 i; u+ ^6 }

  2010. 7 n. @( K1 ^& x( k! Z
  2011. ONE_TWO_PPU:
    8 o0 ?  I2 h" v! {
  2012. BNE ONEWR
    5 ]0 w$ \0 i2 J; ~" x
  2013. TWOWR:6 \2 g& V# d! r9 Y. o5 }. m& R& p
  2014. JSR PPUADDR_PROCESS
    : u$ R8 s* v& X6 ?# U
  2015. LDA TWO_STRING,X  \2 |2 I7 ~! x) v! P* E3 `$ x
  2016. STA $2007, t2 p6 L' q: z8 |8 M0 F
  2017. INC $BA* R" S1 m$ `6 L) Q3 j6 u
  2018. INX  P0 Z& O9 i. E+ S# z- V% E) W8 E1 |2 M
  2019. CPX #$03
    - X0 s! Y# `' S7 L: M  u9 ^
  2020. BCC TWOWR4 |1 D  q; L- f. R1 F" h
  2021. RTS" m& i& j1 b6 p' `
  2022. ONEWR:9 z* h* S6 K; l1 W2 q6 ~4 f0 o
  2023. JSR PPUADDR_PROCESS+ t8 T& _- H0 P. R+ ?
  2024. LDA ONE_STRING,X3 V4 y% J0 L$ W8 c3 W
  2025. STA $2007) @% J) g" d) i: @# {/ t
  2026. INC $BA8 l" G9 X) n4 P5 ^3 Z6 b" }
  2027. INX
    ; M1 o* c$ I; t3 P$ K4 e" L# D
  2028. CPX #$036 V5 ]2 B$ T' U0 V4 o& v
  2029. BCC ONEWR
    $ H4 f; h- k7 N* F. k
  2030. RTS# i2 i$ p' k3 ^$ |0 b
  2031. - q3 J( `  {' N: l& W3 z4 ~/ w
  2032. MOVESPEED_STRING:, M- y& S, `/ b# k+ H* y, G
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    ; Y7 d* S4 M! l: r% S8 g+ o) l

  2034. : y$ b3 `: D4 l/ V; `3 f

  2035. ; G2 B7 A5 n$ ]+ Q# x
  2036. MOVESPEED_WRITE:! s- V7 H4 {- W' d
  2037. LDX #$00
    + @, Y% }1 |( _7 U6 U9 I! P1 L
  2038. MOVESPEED:
    : W: w$ N( s% a' V! l
  2039. JSR PPUADDR_PROCESS
    ' g8 T  ]+ ?* y# p6 z
  2040. LDA MOVESPEED_STRING,X- `9 E2 Y' Q4 x3 [
  2041. STA $2007
    4 C  |3 q' h5 e5 Z' z* `
  2042. LDA #$00. X  s8 G' P+ l. v2 r, ?( I0 |
  2043. STA $2000
    . k" \1 W; D, e: u7 v$ [6 H
  2044. INC $BA6 G$ Z* f: L! U% x4 F. u5 @' e
  2045. INX
    . Z- i" {1 f8 [. B! d! A
  2046. CPX #$0B0 Y( a5 p% P; \( G
  2047. BCC MOVESPEED& C; u) |6 m8 N& r" i* ?
  2048. RTS! ~' s% ^: M% F3 w. ^- z- l

  2049.   q0 O% F# s* Y# o# R0 F+ _
  2050. MOVESPEED_PPU:5 c" `2 |) d3 a0 y8 K
  2051. LDX #$00
    7 g) @8 b% `& }+ \9 ^% u, M6 M
  2052. LDA #$AA/ r/ K* e, U1 w+ ^2 i) y7 K
  2053. STA $BA
    2 P- r- H' V: F. [/ r
  2054. LDA #$22
    # ?/ R5 [9 W0 I
  2055. STA $BB: y/ R4 A; u8 u" R2 k
  2056. JSR MOVESPEED_WRITE
    ! k% s- J" H  ?% t8 f7 v8 U( e4 W
  2057. LDA $7003
    ! o  H0 i4 v% {; Y/ e& K9 O) y) r! p
  2058. CLC
    , I5 k6 N9 E+ K
  2059. ADC #$82$ O( d; U7 M+ i. d- G- {+ d. h2 v$ ?
  2060. STA $2007
    / c4 u4 }4 X4 B% E! _2 S( X
  2061. RTS3 W4 [9 Z2 B  p+ T4 k2 h1 R
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 549 天

[LV.9]以坛为家II

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

签到天数: 7 天

[LV.3]偶尔看看II

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

签到天数: 2060 天

[LV.Master]伴坛终老

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

签到天数: 2981 天

[LV.Master]伴坛终老

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 1279 天

[LV.10]以坛为家III

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

签到天数: 2115 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
. N8 ?4 o* E* i2 s. f
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2105 天

[LV.Master]伴坛终老

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

该用户从未签到

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

签到天数: 347 天

[LV.8]以坛为家I

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

该用户从未签到

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-2-19 07:15 , Processed in 1.155273 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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