EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
& {8 g9 Q3 ^/ R- i5 Q1 d: r' ~# i; N! l6 h
     [FC][魂斗罗旋风终板END暂停显菜单]

& O- |8 K; Q: R: `作者:FlameCyclone(flamecyclone.ys168.com)+ r: a9 t) ?' v. m5 {
时间:2016/11/19 21:46:00% I, T1 h9 m. r
更新日志:
+ _- H# _/ Y2 t( n: Y7 |
2016.11.19:加入暂停显菜单(共5页)./ \2 M6 I0 t5 T" H  c8 `
2016.11.12:加入无限跳跃.
6 U5 z& q/ B4 p" S- x, K- E; ^2016.11.12:加入速度调节.

  ~! n! y7 ?; }+ L! l2016.11.11:加入敌我子弹对消功能.
2 z! q! `$ h( I: X" f2016.11.11:加入全屏闪灭功能." }& \2 z+ V6 I% c
2016.06.08:加入全屏瞄准功能.% d3 Y, l) P4 e- Z6 ~
2016.05.31:加入弹速调节功能.3 j/ c) g5 m- F) {. G+ y
2016.01.01:加入高难度模式.* i7 g. ~) ^4 Q" }+ a& T
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
) m4 F! G7 q* D; J& ~2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
: ^9 G0 E" ~7 {& _8 X0 O! }2014.07.05:双人切换功能优化.* A, b) e& ^5 R3 ?7 L* K
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.! o( m- |+ m5 V5 k. B" A8 d6 `. o
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.. C9 L! c/ `$ a
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.8 z. N9 ^0 V( w: C/ s# m
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址." K6 H. J3 o  R" L$ m9 j
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
/ w# N5 t- v0 G- F7 `2014.02.13:加入自动演示通关.
# B8 n) @; P3 I6 W$ @. l' Z  Z内容:
- W! |1 X2 L" z1 ?9 r# J23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.9 @4 [/ o0 _. I/ I5 t/ {" U; q5 ?
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.4 {7 q- t/ s- @8 a
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
! [- J1 |& A7 m- g& {
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.
6 s; t, R4 r* K# X% `; ?1 R" K19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
7 w0 F0 c  Q/ L: g+ h18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.6 v: E- K* X& S) H1 j! b& N) [+ m
17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.8 \" ]3 q& Q8 }0 C
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
4 R3 A8 u& X0 j7 w% Q( m3 B01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.% E8 R+ [9 z: N4 U' E* m6 E
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
# w+ F2 \) {/ y* i' [8 r03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.
  d6 l1 m; T. w( ]! W& @. U4 U04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.$ g% V3 a2 ]& R- ?2 H9 G
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条." |. t( W3 {, z
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.7 M0 A9 K: p3 o  j" ^
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.4 v4 V$ Z: m8 I4 j
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.7 j: n: k9 ~) W# N
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
% w' k" f! V8 M- r10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
1 t! E  f2 o1 ?11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
. f( f' g( o/ b, z12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
0 ^% I4 Q" p/ l- w7 |2 m13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.: k- U& u2 O1 n0 Y) Q
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
% |2 o8 ?% X6 \: ]: @15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。* k6 ]- B3 O8 w& {6 ~
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
3 z: Y7 H& q6 J( o6 a' ?$ ^B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!
5 G' ]$ _' ^% `2 ?0 ^0 ]5 \0 sC.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.! G1 s; ]" c$ C. ]% A' U- T
" k6 i5 L& U2 ?  j9 a
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)+ w, b9 U; O/ s! y- J& n
欢迎大家转载,转载时必须注明出处.) u$ ?0 |2 x9 ~3 G+ H- {

9 i# ?" Z4 ~# P' V
游客,如果您要查看本帖隐藏内容请回复
0 c+ {" R7 L$ ]/ o

# k. J( D* S7 f( n忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
; _: k* I6 e' ?这几天的劳动成果如下:
  1. .ORG $B4008 B  Q; }* p; M0 J! Q
  2. 3 {& G4 I2 \1 j+ C" U, E) P  d
  3. & h, T0 E+ |+ `
  4. PROREG:! u- P$ l' X# w
  5. PHA6 M6 S9 F1 B  d# R
  6. TXA
    ' F7 l. `; I6 z- q3 Y4 Y) {# A
  7. PHA: k4 S) k% n  y) _
  8. TYA$ ]; c6 q4 r: Q
  9. PHA
    . K5 q. P$ q7 z# F& R7 F4 F
  10. LDA $25
    , ?* ?6 g2 ?  N; r
  11. CMP #$01
    5 \, C9 ^9 m% x0 s8 s2 Z! S
  12. BNE RE
    / [% S3 F" ]: k: u; h3 C
  13. LDA $010A6 W6 a7 {$ {" w; j5 M
  14. CMP #$008 H$ S0 a5 M# F0 ?8 L9 d
  15. BEQ P1
      O/ a$ U7 B& B- @8 }+ O
  16. ' F0 V4 G8 g- \1 a
  17. RE:* v3 l8 @8 |0 Y  |
  18. JMP PPUWRITE
    ) C# R( _, j5 d$ _- E" y

  19. ( i1 U9 k; a" w+ E
  20. P1:                ; 条件判断
    ' ~4 \# i$ F- w4 @4 H3 W
  21. LDA $7FFF
    6 H: U" {( \$ L! Y, n
  22. CMP #$FF
    ( E1 I1 u9 A: }3 e3 U& H. I& T
  23. BNE P1RP
    2 r! ~+ y" n! o5 X
  24. LDA $7FA0
    + V$ g) a0 ^" e# [$ U* G- s
  25. CMP #$00- n$ c; B. ~) c7 s" s. H
  26. BNE P1CMP
    5 L2 Z  `( p( X, Y; G9 V: G+ a
  27. LDA $2001, R. u9 }$ i( e! S. l7 s0 B4 s
  28. PHA& |& R, r; C% b5 i  ]' U8 E3 _
  29. LDA #$00* Z. l! y4 b2 _4 n9 W$ i4 u5 T
  30. STA $20012 p5 o# G4 ?$ ?/ T1 s8 |
  31. LDA #$FF
    7 ^1 @% ?% H: T; s& A! t3 N  |
  32. STA $7FA00 b; J, Y0 Q. c) \( f* u
  33. JSR CLEANA8 i% I& c2 E; \0 |  w  J) a" U( O
  34. PLA
    3 s) p4 C5 w& P
  35. STA $20016 s7 [. s& V) E' ~2 j8 p& S+ w; J
  36. JMP PPUWRITE! F1 ^' ^) F& m* r5 `9 F
  37. P1CMP:
    : f. b% X! Q6 |1 ]% n$ [* b
  38. LDA $7FFF
    7 q5 o. v$ \' j) q; H- v
  39. CMP #$00
    ( r6 y1 n3 O0 p9 I* a
  40. BNE RE
    7 s. o5 l% w: I! R: r4 z
  41. P1RP:, S# S$ f9 h0 W& C$ h$ o0 i/ Q
  42. LDA $2002  I1 D# `# {( R6 C
  43. LDA #$00
    3 N5 N; b  `" ]7 f. F
  44. STA $2001$ T- e2 h# X0 g( r4 f
  45. LDA #$FF8 R8 P6 K$ ~. f2 g) K' ?0 t+ i. p
  46. STA $7FFF9 t9 G8 ^9 K& ?1 C6 h9 [( u7 I2 U
  47. STA $7FA0
    6 [/ v) M3 ^! W
  48. JSR COPYPPU
    9 X! f6 g' R( a) D
  49. PIRP2:
    " C% _. M/ P/ t
  50. JSR CLEANA
    " B7 \3 g5 @* {# W; v" B7 c* ^
  51. JMP PPUWRITE
    # u3 E* X, C5 `' K" Q" j

  52. / r9 l' E' g' _& M+ C
  53. COPYPPU:+ k1 O- d# p. G& Y  c- e
  54. L0:4 x2 G# ?5 r7 q0 Y# N
  55. LDA $30# _7 A; }% S4 U  r
  56. CMP #$02
    ' ~! H" h- [* \3 U; v2 g
  57. BNE UNPROFC! O# l  j; e2 A8 i3 G7 R1 h
  58. LDA $FC/ T8 u0 }" _/ n
  59. STA $7EFC
    1 M9 I: Z  C/ w- Z5 v2 P. P* y" }
  60. LDA #$00
    - ?( k7 K2 r' Q5 \5 u- w
  61. STA $FC
    ( B6 T  d) d$ J: c
  62. UNPROFC:- r( h5 b# F; k* G  ~
  63. LDA $FD
    1 B8 r6 J* O2 [5 _" g6 @
  64. STA $7EFD
    : A" b  m7 o' T5 v6 p) d- L8 _
  65. LDA $FF
    2 d3 s/ j+ U- d1 b6 @; u
  66. STA $7EFF
    1 }4 k  {  ]& X) v
  67. LDA #$00
    7 d( I9 R; N9 F% T
  68. STA $FD+ p2 @8 [3 O, c1 y0 p8 g, `
  69. LDA #$B0
    & ^6 \$ @  s! E) h8 G2 z1 B( O
  70. STA $FF8 y" H2 |6 @% S* x
  71. LDA $07C1
    : `8 |0 R" m2 J5 h$ }* H3 J
  72. STA $7FC1* U# N5 k, Z2 F. o) m  E9 N, G
  73. LDA #$3F; B* t, t6 ~: C4 a: N' a; R
  74. STA $2006
    ) n2 C: A4 g) w# b0 c
  75. LDA #$01
    9 ?, E' a, G0 w
  76. STA $2006
    " ^4 ]* k, F& _- u; N" U" o, Y
  77. LDA #$24
    8 }+ m# z/ J& e% S; g8 ^1 [4 @7 L- c
  78. STA $2007
    9 F. n* @1 B' R" \$ S1 l8 q
  79. LDA $07F6: _3 V9 Z3 n3 l* o$ ~
  80. STA $7FFE4 z  W2 v! a# z! w/ x
  81. LDA $00FE( T( r" I8 e$ K" G& L
  82. STA $7FFD1 z+ O6 s+ z$ S
  83. LDX #$00
    ! Q: [; @) H* i8 q
  84. LDY #$00& _1 ^( v0 c/ s9 r4 i2 X, e5 l
  85. LDA $BD: b8 r" ]" n5 B4 N- B8 w
  86. PHA% o& U( }7 y6 P" H
  87. LDA $BC5 C; \- L7 f: k5 J
  88. PHA, ~5 H% ~# d* G* H1 K, f5 W
  89. LDA $BB
    : H' K* N7 D& l9 H" \
  90. PHA
    7 L0 N) z$ b0 S& z
  91. LDA $BA
      e- ?# y; a" G' w
  92. PHA5 d; ^, v9 n8 a: ^) {
  93. LDA $B9' G* e2 q1 g- S2 \8 T: t* E
  94. PHA3 }  b- j' h9 {
  95. LDA $B89 L+ L# _/ B( |" [1 ?
  96. PHA
    ; v- M, `7 C" e& j% {
  97. LDA #$00: G5 O9 h: T7 q- f* @4 B+ _- I
  98. STA $B8
    - t8 L: S/ s0 h0 x% s
  99. STA $B9
    . s7 f1 D  R8 l5 y: b
  100. STA $BA5 e" z) ]/ h: S
  101. STA $BB
    # X2 _/ ~+ Y( I8 o8 e) J
  102. STA $BC: I/ T% ]/ C! p6 d
  103. STA $BD
    % U+ N# l: J4 h! _4 L  S$ E
  104. LDA #$008 {$ L6 E# \6 Z0 ^6 R3 c
  105. STA $BA
    2 a* M. D3 j) ?3 j/ Z" ]
  106. LDA #$208 D! w5 A9 L% w* c
  107. STA $BB* ~5 o" [- @0 I! I
  108. LDA #$006 b; p4 D* n: K: j/ [& @4 G
  109. STA $BC
    - ?7 P$ U4 Q/ }) ?- H  J) O
  110. LDA #$60
    # |1 i" o$ F, r6 Y
  111. STA $BD; \' P3 B: t( U  T3 {

  112. ' F. O2 q7 H% ?* N! X
  113. L1:                ; PPU复制6 ^5 i2 M; O' e" ~+ p
  114. LDA $BB
    5 j7 X( v5 \  Y9 `1 H! A  a; N
  115. CMP #$305 D6 H# B  B1 @- G8 j, ?: G
  116. BNE L2
    $ O" J0 L' `+ D
  117. LDA $BA: Z; w$ e9 u8 C8 c1 {5 P8 N- Q
  118. CMP #$00
    8 m# K$ E. F6 _6 y! d
  119. BEQ PROADPLA3 r# a! z: p5 X. B' r

  120. ! D! o" |. ~  ]' W4 {: d- G; k
  121. L2:
    3 T! T2 q" V" U8 k; j( T
  122. LDA $BB
    # g4 M" O2 p0 i& R, b& {, Z
  123. STA $2006
    . L) G$ M( \5 T7 R% {. [- U
  124. LDA $BA
    ; h4 j; O% j% V9 u+ z
  125. STA $2006- _6 M, t/ ?% V

  126. & h  j; |4 V5 p( k/ P" V
  127. L3:
    - h$ w) `3 V  w6 @8 N
  128. LDA $20073 r$ }9 m3 }1 w3 X$ n) i5 O' `0 i
  129. LDA $2007
    - r+ N; r. x; c
  130. STA ($BC),Y, j; o, K1 E) ?+ S
  131. - `' j. f1 j3 {% r2 R; M/ Y
  132. L4:1 r0 N. G% X3 R0 N) @6 K7 G
  133. LDA #$00
    - R. D8 Z- u% G1 l  C3 W% |) A4 Z0 [
  134. STA $2000' u& y6 h0 K4 q% h  y5 K6 M
  135. INX3 G7 @0 w  v$ A* b9 Q
  136. INC $BA8 x5 Y) b0 p! K: j
  137. INC $BC
    2 b7 j+ l$ b% _* v; g
  138. CPX #$00
    ; U: V- R" y4 U$ b8 e
  139. BNE L1
    . {  e. {( t9 P& r; Q( N7 a  ]4 W
  140. INC $BB
    5 ~; W  U" t# O/ A
  141. INC $BD( r: I+ F& h( i
  142. JMP L1& b/ h& x; s* d

  143. / A) \7 H8 {/ B+ t8 T: o; o& e
  144. PROADPLA:                ;出栈; {0 s# S: t" a- f" d  E- b+ X" h
  145. PLA" ~- ~$ b7 X4 C7 k! e% \: Q! Q* Q
  146. STA $B82 ^- k8 q' Z0 T+ i6 j$ E
  147. PLA$ f9 d/ s, |1 z% v9 z) b
  148. STA $B9
    5 l0 m# S* q" D% O4 W8 C- `5 L
  149. PLA
    + f% V0 ~$ F6 ?: @* W9 {
  150. STA $BA" P+ G* w1 N7 I' P6 y3 i" b% S, f
  151. PLA- x* l% F8 G* J- G7 ]
  152. STA $BB
    3 t/ U' a0 w3 k- d4 r2 x3 `* G
  153. PLA* z; M! ?3 G5 J8 Q+ P% V
  154. STA $BC
    5 S8 Z$ O2 C! U
  155. PLA
    ( X- F1 p4 ?& z2 \. z5 L& w3 z8 p
  156. STA $BD9 x* G/ _5 B; Y6 h) h
  157. CPRE:$ j" m5 x6 c+ w
  158. RTS  ]) U# s% E) S' u

  159. ) C# ^# b: e1 o) A
  160. CLEANA:                ; PPU清空' H- t+ z: j3 l+ U9 B  S4 M
  161. LDA $BD
    3 g8 r& h& |" M8 T
  162. PHA
    2 s4 Z! D5 |8 _5 f/ @
  163. LDA $BC
    9 N- L9 D9 s2 H
  164. PHA
    ( }: H% Y+ y* K6 M
  165. LDA $BB
    0 i4 a& T7 ?( n3 o9 e( Q6 j; I1 h
  166. PHA
    7 b0 E* F. M4 @0 }/ M
  167. LDA $BA
    $ f$ x% c( P1 E1 d7 N
  168. PHA
    9 s9 G  k0 x1 f
  169. LDA $B9
    ( x+ o: f" ?5 Q
  170. PHA) l! A9 K! V6 O) p% @
  171. LDA $B8
    / ]) E0 G+ z& ]4 }3 x
  172. PHA4 k* g3 o% ^2 r
  173. LDA #$00
    0 R! ~8 H' X+ Z
  174. STA $B8: v5 J, v$ |: o  M
  175. STA $B98 \8 @4 b- L) G8 n
  176. STA $BA
    ( L! }0 i9 B% M* k- Y7 P3 |
  177. STA $BB
    6 O+ h# v0 w7 o$ m' X9 \" b
  178. STA $BC
    ! x  n3 |' R. L4 F: F
  179. STA $BD
      C$ u& Z( a+ ?8 z
  180. LDX #$00  r3 l+ j0 @! m
  181. LDY #$00& u- z) z! l" s/ ?' E1 |# u9 P
  182. LDA #$002 v; I- r. ^/ S% Q2 z: G9 Y. I8 G
  183. STA $BA
    3 j! |* H& T/ @2 O
  184. LDA #$20
    9 S9 [. N4 n* t
  185. STA $BB4 B$ i5 i% [+ l! Q6 R
  186. ! F: d, s$ Z) U0 [2 \0 M9 j( L
  187. CL1:
    2 q  H! m+ B! z
  188. LDA $BB- R7 L# s1 x7 Q. p
  189. CMP #$30
    $ P* ]% l. |- G
  190. BNE CL2- H/ u1 \$ i# p) j' l# n7 l
  191. LDA $BA8 Y. f! @% m: x5 P
  192. CMP #$00! r: `% l5 \, q1 ^+ [7 z
  193. BEQ FREEWRIYE3 J) I1 U: `4 n7 T8 e. o

  194. ; T* K- A* J* ~
  195. CL2:
    ( b6 q; R. I, C6 l, ]5 G
  196. LDA $BB
    ! {5 S) [/ X) ?% T
  197. STA $2006
    , s4 w+ Y! n' Z8 e
  198. LDA $BA
    . J: Z. v" e, S
  199. STA $20062 v, Y/ n& ], S  J- C

  200. $ g& ^# l3 d0 V* @. B* L+ l
  201. CL3:9 _: F7 }/ j! X7 v* w8 A5 J5 }" C
  202. LDA #$00
    % p. O/ P: d) P6 O2 M/ m# W( j$ V
  203. STA $2007) K" Y, f5 D, k; T

  204. : P% i# d, E. ~, J2 m! L$ Q
  205. CL4:9 A8 u+ C5 P( g% J! g
  206. LDA #$00! B0 N* V/ |4 j' w2 G0 |% p. b, b
  207. STA $2000
    ( ?- Z( Z0 p. o: Z
  208. INX; c% d5 e" j; t6 ?1 F7 C$ `
  209. INC $BA
    % P) K) ]* e1 G% N/ ~+ U
  210. CPX #$00
    ! n+ f3 ^4 n. {7 a2 F( _- D& q( C
  211. BNE CL15 c. ]* i7 L7 p3 q
  212. INC $BB
    : v6 u0 i# i# a
  213. JMP CL1 3 Y" A  D) L4 \* F. C- E+ p
  214. 6 x! Z. `. q4 S8 g4 O6 N

  215. " d7 d: j! A, p, |+ p3 w
  216. FREEWRIYE:
    + S3 M6 p  }0 ?( L3 P( h( X
  217. JSR FREE
    7 G& T# ]( e6 D- g2 W  e' p) Z

  218. " E7 u9 f- K0 j' W
  219. * e* v$ ?# |- ~: I4 `7 ^; \- f

  220. 9 `, S1 s: M+ z1 k+ Q: y# G* q

  221. 5 E" Z/ h0 {- j( z% I+ y8 w+ a
  222.   z9 T2 V* ]( y1 I$ _5 b+ |
  223. CLEANF:                ; 恢复现场5 r7 p# Y+ D5 R+ w0 {8 N6 E
  224. LDA #$08% y4 q* F& p3 E! k
  225. STA $FE* B4 s( f- \; c
  226. LDA #$00! W1 j: A. C+ E
  227. STA $07F6
    1 S8 e, A! V1 h. P" o7 ?
  228. LDA #$24/ o* o) h7 u7 u8 V5 [
  229. STA $7FC0
    " ~9 n/ n; A4 ?) a2 w/ N- e
  230. PLA
    7 Q' z( \' o9 t% C& ~
  231. STA $B8, ], r$ B  ?; V6 u! r0 Q+ _
  232. PLA
    8 \9 c9 r- G. H! w; S+ b
  233. STA $B9
    " O+ m6 L+ q% b" B4 R
  234. PLA
    4 E5 P7 V& m; w' h2 V% K- s
  235. STA $BA0 ]' M, m; q& G8 z
  236. PLA
    5 }) [8 v/ N, Q% w7 c- _
  237. STA $BB. M) R+ x& T+ @7 j, e; G
  238. PLA
    ) h7 g4 i* R; Z* ~. A2 G% b7 Z; ~
  239. STA $BC$ N: J8 x% D& {
  240. PLA$ b3 T" e/ D1 x& @
  241. STA $BD; p3 _7 k( o& q* l. O
  242. CLRF:& l" P" o6 o4 a& E5 H6 n
  243. RTS- b8 d3 I7 j8 q. |4 j( z

  244. " O/ ?! l( o. J* a5 h
  245. W_DATA:4 F; F, L5 Q5 w/ ~
  246. .BYTE $00,$01,$02,$03,$049 z+ s1 x5 U& K4 n* D5 D) @# s% V
  247.   
    + g& D% g* V* D4 p
  248. W_PPU:' z( d7 Y/ D  u# `, G1 ^3 N  ~
  249. .BYTE $98,$97,$90,$9D,$96: S, z* X% y' j3 W% x4 y

  250. 0 W4 F5 |1 q# b, M- Y4 |3 q# {
  251. P1_STRING:+ y8 x4 f7 Q& }. W
  252. .BYTE $9A,$82,$00                ;"P1"
    # D2 k0 j% |. z+ Q6 t7 Y6 k

  253. 5 H  i' Q' N3 ?# Y
  254. P2_STRING:
    9 m9 `" I% D' L5 {! f
  255. .BYTE $9A,$83,$00                ;"P2"
    8 l% d7 Y. k) C' [

  256. ' k* z8 Y  ?& w) f! ]
  257. WEAPON_STRING:! p+ n# D, o0 j$ ~* C: u* F
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"5 r& x1 z- A$ ?; U4 u0 |, d; t
  259.   |1 z) M* g/ Y. h9 `
  260. RELIFE_STRING:7 [* m* f9 |* W; N  ]/ A/ Y, F+ v
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"7 s' x: X6 T$ }4 }, L$ v" W
  262. / ~- D* V; n$ O: s6 Y
  263. P1_PPU:
    * C4 o' c2 o4 X4 Z$ {% \
  264. LDX #$00
    8 B9 W) d! ~4 g* X3 j
  265. - F  h, N. N5 c8 Y1 t7 G0 y( N
  266. P1_PPUW:/ B' s& O+ t9 H/ E! h2 ?/ r
  267. JSR PPUADDR_PROCESS2 m- v2 u4 @( h1 G! r, \" U4 Z4 N, U- @
  268. LDA P1_STRING,X
    9 z) T4 p0 t3 D9 M6 X
  269. STA $2007
    2 _* B8 f. [- E
  270. INX
    & V1 ]. b9 j! E9 Q  Q- K
  271. INC $BA. d- o8 s" R' w- B* |( V. y* b
  272. CPX #$03
    % U  W, f+ u$ S' Q0 J# r+ J
  273. BCC P1_PPUW4 b! Z9 a# N) s) q2 Y
  274. LDX #$00& R' }: L9 a# I* m8 w" a0 b
  275. RTS
    ) ~: w, a0 }/ \4 p

  276. 4 i5 M+ A" T  O3 \" m
  277. P2_PPU:
    ) Y$ z! B3 B, ]8 G- G) V  G% T9 H' S
  278. LDX #$00" A2 s  O+ [+ J! _, `

  279. ! I# g3 h2 Y  M) R
  280. P2_PPUW:% j7 {9 |6 r7 x: j+ K
  281. JSR PPUADDR_PROCESS
    % G2 u$ r: O- h% v9 d, r
  282. LDA P2_STRING,X
    # U/ d2 D4 h, A9 b# |' i/ Y2 Q% |0 r
  283. STA $2007, m5 k9 M1 u1 t" d9 m. s
  284. INX# C: W3 ?- t9 B  i2 Q/ T& M
  285. INC $BA
    - L: G% p2 X/ E9 o" ^* H' W
  286. CPX #$03
    6 s2 @1 q& b9 h- V; @  r
  287. BCC P2_PPUW
    / {0 S  ^8 @: g$ x$ K
  288. LDX #$007 b$ v2 C% F4 ]) _, T' z
  289. RTS8 H& G& v- _- V- d5 S! `' L2 z

  290. + L* Q6 m$ C0 ]

  291. ' q0 \6 R9 M: p  \
  292. LDA $BB; B! A* f8 _% m( E. O
  293. STA $2006
    ! `$ A1 S/ G% V2 W$ T- R
  294. LDA $BA8 i0 ~- ~: Q) n" @
  295. STA $2006' x5 }2 T/ T# |" P. m+ h7 x
  296. RTS
    / n3 Y! h. _) `7 C
  297. 0 Y& w) B8 G8 K5 h) p+ p  P. P
  298. 2 w: |0 v; ?) q% c8 k; E5 Q
  299. 5 H8 n, f6 m4 s+ E
  300. PLAYERLIFE:
    4 L) f- x9 ^7 Q4 d2 q" D# I) z9 t
  301. JSR LIFETODEC: w. U2 n; v; D  x
  302. LIFEPPU1:
    ) h0 `2 v  e' A, G# K' K" r7 p! U
  303. LDX #$004 Z* g" o, m- }) t5 [+ j
  304. LIFEPPU1RE:
    ! [- K# c. n$ [
  305. JSR PPUADDR_PROCESS
    * _) M7 w; M9 b( z3 N$ a
  306. LDA RELIFE_STRING,X" a; I. _* O1 D6 l2 i
  307. STA $2007
    5 \$ W/ ]) `  o8 o% t8 g
  308. INX5 D, \" U9 W8 o
  309. INC $BA, q# J; d- f: y3 ]- x2 b* r: C
  310. CPX #$07
    : w" S9 v! v' x+ o% f: z  A
  311. BCC LIFEPPU1RE& S/ I# o5 J2 U5 ]% g& `
  312. 4 V5 }) T6 n% @+ M
  313. LIFEDEC:                ;生命显示写入
    3 s) [8 S/ O8 y! E' v1 i; `
  314. LDX #$00
    / \; u' A/ e  Y. G: w4 F
  315. LIFEDECRE:
    & u" B% }& l; ~8 ~& T. B! B
  316. LDA $7A03,X, x9 {6 |5 R  {) H! V7 ~
  317. CLC( J/ q6 a* j% N
  318. ADC #$817 E$ c+ L( r4 m5 H& U$ S$ O9 E5 b
  319. STA $2007
    3 S# B5 ?3 _* q& q# Z7 U
  320. INX
    2 \- J: |2 a. F* a1 o6 S. O! P
  321. INC $BA/ D4 M8 ~( w& ~, P
  322. CPX #$03
    # _8 d5 J1 w# I9 L& n
  323. BCC LIFEDECRE
    # b9 N0 a& R! R, a
  324. LDX #$00) a9 T) ~, C& I
  325. RTS
    / B# S; M# q) m( b* x
  326. 2 q& K/ P4 |6 b& U$ l) x" e
  327. LIFETODEC:                ;十进制转换6 q: Q% ]1 |0 P1 B5 L4 _
  328. LIFEL1:        ;initialise
    . W* n4 E: I: i( F( G2 k/ v$ t* J, y
  329. STA $7A00        ;$7A00=F3
      k  ], _" Z9 c! ~% _4 R
  330. LDA #$00
    8 |% ]$ V) Q$ V
  331. STA $7A03        ;$7A03=00
    9 L& z) y) o7 z$ v7 `
  332. STA $7A04        ;$7A04=00
    / y: `& W) H) g7 W. |' d% B
  333. STA $7A05        ;$7A05=00( H% A' N7 P+ F3 o3 i
  334. LIFEL2:        ;copy data $7A00 to 6001
    / s3 z6 _6 m4 ~& J
  335. LDA $7A00& B5 [! T" }1 f& W
  336. STA $7A01
    0 m7 w; I: j2 w2 V/ Y3 T
  337. ( `1 ^* S  d, _% {& D3 n( a# z
  338. LIFEL3:         ;hundred
    1 K$ j& P8 C1 S* M1 T. ~
  339. LDA $7A01  q7 V6 {5 g) {& n
  340. CMP #$64
    $ ?) |7 S* C( B1 h5 {+ E2 w
  341. BCC LIFEL6                ;$7A01<100 goto L6
    1 e# p7 n" J! }$ B1 K
  342. LIFEL4:) N/ ~( k+ G4 i/ C+ \3 G
  343. LDA $7A01. @" p2 k: h/ W7 }
  344. SEC5 X$ D1 n& ^. b, x! @$ t7 A
  345. SBC #$64        ;$7A01=$7A01-100
    ! ]/ i; \8 s3 |- x+ H0 Y  B2 L7 q
  346. STA $7A01
      Q; x+ t1 Q2 f9 k. D: Z6 w, V! d
  347. INC $7A03        ;hundred++
    / M" o3 g5 y# B! A- z
  348. LIFEL5:
    5 W. g+ e+ m2 g" g
  349. LDA $7A012 _3 X8 h" ?( K0 m( u1 E+ Y4 f) C6 ~
  350. CMP #$647 b; l- I4 }; s
  351. BCS LIFEL4                ;$7A01>100 goto L4
    + M! e& b- I, E2 X, |* g
  352. ) L- _! m" {3 A9 [2 m
  353. LIFEL6:        ;decade
    & z3 o# }- E2 C9 ~- k
  354. LDA $7A01' j9 L" d! h8 n0 S
  355. CMP #$0A  R' c" Z( |* W7 G. P% b- p6 ?* V/ _
  356. BCC LIFEL9                ;$7A01<10 goto L9
    4 a5 b1 Q+ K; x$ w! q! T! D0 \
  357. LIFEL7:       
    . y/ ?: G! G6 Y& ?2 ~9 z& a
  358. LDA $7A01
    9 o7 K- V, f3 r& U' }3 O( h
  359. SEC* f% \) g3 _7 A
  360. SBC #$0A
    9 J2 ^. M; h( ]+ [+ Z" ?
  361. STA $7A01        ;$7A01=$7A01-109 N+ B8 F: c2 Q  H+ _8 W9 a* g7 l
  362. INC $7A04        ;decade++
    5 S+ |" k  l" T' Y' V5 e6 f
  363. LIFEL8:1 U8 C: {* f4 o% Y, u4 ~
  364. LDA $7A01) I9 Z  l" ~- l+ ]
  365. CMP #$0A1 S& @. [  C' ]5 R7 w0 K5 t
  366. BCS LIFEL7                ;$7A01>10 goto L78 H( h0 b5 G0 _0 ~* z8 U( |  U8 ]
  367. ;unit
    7 y$ e: Q6 I! q' n/ _
  368. LIFEL9:
    ; ]  N$ ^" V5 R6 `
  369. LDA $7A01        ;$7A05=$7A01$ }$ P; S4 P9 f/ u" P. F
  370. STA $7A05        ;unit4 N0 s; r! `, [6 @9 T  Q$ J
  371. RTS        ;return
    ! z. i" z$ g1 `* Q0 X% K& V

  372. * g# t4 r* s+ C
  373. 1 n) S, O- i0 |1 U3 ]

  374. ' g$ y! a* K. n$ }1 ?+ n* B% t
  375. WEA:                ;武器ppu写入% P2 V8 a* A& L, w4 Y% S
  376. LDX #$00* t8 k* C( e/ @% z2 }( [. d5 V  B
  377. WEARE:0 A! W: ^, V, M+ i0 t
  378. JSR PPUADDR_PROCESS0 v5 A1 j& k: m' w& @
  379. LDA WEAPON_STRING,X
    ( A$ k( e1 ^5 S( D- X, o. R
  380. STA $20075 ]5 {0 s) E/ e4 Y# j6 J! b& f! y
  381. LDA #$002 s' E* w# q/ i% W4 `9 A4 I# g1 P
  382. STA $2000
    3 r; ~: H/ ?% R/ U9 z/ z: \
  383. INX. N9 i, m& X& e
  384. INC $BA
    ! v) ]) v5 Q9 T! o
  385. CPX #$07
    # s. c4 ]( X/ X$ Z9 c8 ~+ K. W
  386. BCC WEARE  a0 s( a* I5 Z% k: a6 J9 p

  387. 9 x. e" \+ e- u; H+ y
  388. READ_WEA:
    9 }" D( ^2 u4 }7 G6 I
  389. LDA $B9
    # V$ m& d2 u! Y1 I4 a& g/ G
  390. AND #$10
    / i: N6 T7 k& t' f
  391. BEQ NWEA
    0 T. e- Z' J1 W6 |* v
  392. SWEA:. m4 {3 d7 \" F) J( K

  393.   m' w4 O9 x9 m4 d) |
  394. LDA #$9D% r) Q- V2 l! ]( q- j. C7 v
  395. STA $2007
    ! c3 h8 M* U" m  @( D% o
  396. LDA #$00$ C( d0 [6 H8 i) K& g! j$ L! y
  397. STA $20006 N% _: w: r) m  M  I0 K
  398. INC $BA
      @- w! e4 J: g7 P% V
  399. LDX #$002 F5 T5 [6 v+ |- o. b( l- ^
  400. JMP WEAREAD# z7 |4 O2 k9 \! w2 W: D2 g% {
  401. NWEA:* k) N/ C5 ~+ _5 ]5 i9 j7 `

  402. / v* F# X; }& z) @5 M, [  F6 ^* Z
  403. LDA #$8D+ K% Y( g: L' k3 ]
  404. STA $2007  b& e- o5 ]' q% X# e- `& P  R
  405. LDA #$006 E' n8 k4 \& v& i( @9 v& A
  406. STA $2000
    8 _6 B& f4 u, v
  407. INC $BA
    ! N& T9 k3 m* J1 Q( j+ \6 {5 b8 |
  408. LDX #$009 D) ^& `+ ~1 c9 Z- c+ @
  409. WEAREAD:. Y5 K, n! J1 Y8 N
  410. LDA $B99 E2 [; @' }( I* S6 c' B0 _+ Y1 W
  411. AND #$EF8 ?) R0 M6 o1 \
  412. CMP W_DATA,X" W9 z* E) x2 r6 U* |4 h
  413. BNE WEACMP
    : ~, R5 i- H/ b- o+ ]9 ?& Q

  414. + W6 G+ j5 l( s, G0 }$ _, v* D
  415. LDA W_PPU,X5 n( L. ^2 @8 D+ q
  416. STA $2007
    1 }3 z3 x" ~8 `4 Y$ C% i. C5 p
  417. LDA #$00+ W6 w6 v, Z5 B8 m; q; }& T( ~* Y
  418. STA $20002 k2 i8 G5 ^' x1 G2 B0 c2 j
  419. + Y3 V0 B& `& o
  420. WEACMP:
    , M" {% ?1 x. k6 p8 a
  421. INX
    7 A4 l. H; s+ V1 ~! ~' T* N( ]
  422. CPX #$05
    & z3 G) y5 e3 F; [2 M
  423. BCC WEAREAD) N$ B2 N# n4 Z# U6 U, ]  ^1 C" v
  424. RTS6 e  j3 C- W5 O! L* S- w( Y

  425. + P, @. e& C5 r- }" o, y# w
  426. ! |0 Q2 t4 V5 B/ V
  427. PPUWRITE:+ d! p$ v4 u/ {7 t0 s- G2 b
  428. PLA
    - K/ y; w! R3 g2 \0 C
  429. TAY0 \* Q- M4 [! G$ S: \: d
  430. PLA6 n) h5 {7 k; d" W( Q$ P, b: ^
  431. TAX
    ' P% \3 {1 ]/ W2 Z
  432. PLA
    0 X0 Q  L( ~  B* M9 ~
  433. LDA $254 }) F# I% d6 h* D, m) Y2 e) q
  434. CMP #$00
    % j/ ]* ]! [. |7 K+ u# J, [8 o
  435. BEQ WP16 {% o4 _" X6 g! |( {9 j+ [- z
  436. LDA $25
    3 W% H" C, d4 a$ h0 _
  437. CMP #$01) T# k7 u, n+ A$ o5 i; ~. ?, R" t
  438. BNE WRE
    3 ?8 S* j) W5 m: e
  439. LDA $F5,X3 w/ O8 T8 i9 t& L. N) c
  440. AND #$EF! X% D! ^+ y* H, D8 s
  441. BEQ WRE
    $ L$ M! L( ^' U% }- s9 {
  442. LDA #$00
    ; s8 n- P* A/ L* D) r0 p4 ~
  443. STA $7FA0/ m# ]# r: u& |( T3 k

  444. 8 N; E2 X- \# j- H4 n) u
  445. WRE:, w* H9 L& J& n# v8 z! l- {
  446. JMP $A000
    ) m& ]5 I. ?9 ?  z1 R* a0 R: \

  447. + q( k( l! F% [: ]+ ~/ L1 R2 C2 f
  448. WP1:
      S# @) m% V% `$ p0 `6 {
  449. LDA $7FFF- L+ F; q  l! o8 D4 g
  450. CMP #$FF: X# V3 u* B: o- |
  451. BNE WRE
    7 }/ m: v. Q( {6 c% p$ q* I4 ^
  452. LDA #$00% h" p9 t: U$ O4 d2 R; h+ S( {% h
  453. STA $2001
    ( w- Q+ Z0 u7 ]# M5 [
  454. LDA $BD& ]" y0 y( j2 \
  455. PHA
    $ a+ L, T; x1 I5 }9 a
  456. LDA $BC. M: Z7 Y& b$ ?& ^; ^; W! w3 I4 k
  457. PHA
    ) ]( `1 i# z; z' [. r5 M3 V4 r/ q
  458. LDA $BB6 _$ V4 G/ h$ J4 [
  459. PHA9 q+ L; @- ^# r4 @$ c" h
  460. LDA $BA: }' j* s4 m( J; z7 R
  461. PHA. n; y. r- Z# P4 W+ E0 s& o/ @
  462. LDA $B9
    - _& t' @. D* j6 e8 A9 k  F( C
  463. PHA2 f6 f( H% X. k) }8 z5 d' d- s
  464. LDA $B8
    $ M3 n2 l- L4 b! `( g
  465. PHA" Y* t. Q$ n3 q, n6 a
  466. LDA #$00
    + z. a! H) E9 E9 l9 c2 K
  467. STA $B8
    ; Z1 \( }  U" \; n9 q: u
  468. STA $B9, f$ I* O' e6 E8 w
  469. STA $BA
    6 f  K+ |, T* S+ B/ d. Q) l
  470. STA $BB6 m& z8 l# y2 @4 a' N  j9 d2 G
  471. STA $BC
    8 F$ |+ ]1 Z3 g% G
  472. STA $BD, a) O( Z7 [7 p+ |3 n) M
  473. LDA #$00
    ! D9 q* x7 ~% T( X/ w
  474. STA $7FFF
    % ?( v% P1 L" l. a/ q4 J3 O6 X# n' }
  475. LDA $30
    ( Z$ Q1 ~! S7 z; C$ R
  476. CMP #$02
    4 @* ?2 K1 h' B) L
  477. BNE UNPROCPL, }# `# T8 [/ {( p0 L  |3 d8 F
  478. LDA $7EFC' W3 S; }0 U* B- @
  479. STA $FC
    , j9 @( ?* q  i
  480. LDA #$008 k1 J! V( ^! r+ V
  481. STA $A49 y( O: \9 W. T, h: k; Y( ^
  482. STA $A56 L  o5 l5 i" q9 i+ k! X6 {
  483. UNPROCPL:: F6 o% ?. a" @9 i
  484. LDA $7EFD
    , a4 n5 o3 h. G, a' ~  t+ N
  485. STA $FD
    ) j9 g7 U4 R6 O5 V* J8 z+ g3 l2 z
  486. LDA $7EFF
    & b; a" H( S3 d7 g( r' t) H
  487. STA $FF
    ! \# _+ O3 t1 z& {/ i

  488. 0 E4 G5 B- d* o8 g* {
  489. WL0:
    . `/ Y2 [9 |! g  w
  490. LDX #$004 \9 W- _+ z4 h" _3 {! r! f2 d2 [* d8 o
  491. LDY #$00
    + s- J( b8 f/ f) M- D
  492. LDA #$00
    " L/ _  [1 T. o6 B
  493. STA $BA: w. D) j* L7 L0 D; \
  494. LDA #$20
    6 R, d0 L. P  r
  495. STA $BB
    ' x" R& g( K; L6 }" l7 \& v/ v
  496. LDA #$00
    1 F' s6 i6 L$ `! t0 {8 x) G
  497. STA $BC( p& l) m9 A! E$ a/ G# L
  498. LDA #$60/ n, y0 {! V2 E1 h$ p
  499. STA $BD# C8 Z8 i8 e8 w* f1 p$ {! E: p
  500.   n3 A6 a# R: t7 O) q7 X
  501. WL1:
    # ^  u8 t/ q. t0 P6 a
  502. LDA $BD* j/ V  _6 A  `; R+ O4 z6 p
  503. CMP #$701 j9 R5 t0 L7 v9 [6 \& Q
  504. BNE WL2! U7 Q) q# ], L4 W$ X4 d5 s
  505. LDA $BC+ ]2 n4 R7 G6 A; V! S) U
  506. CMP #$00
    6 U# e$ K; c( \4 j- F
  507. BEQ WLR5 A' h2 ]6 \1 L: \, Y0 A
  508. 7 W" j9 |, Q& z& n
  509. WL2:  F# e' l6 s' T3 O% `7 ~! q, }
  510. LDA $BD( j4 p8 g2 m1 _) `+ i9 z5 _
  511. STA $2006
    1 r8 ^! e( g% u( ^1 \9 }
  512. LDA $BC" s% k9 k; e0 W  D% @% j/ {
  513. STA $2006
      v8 l6 N6 x4 B1 b
  514. 1 W7 J5 p7 |$ P; f
  515. WL3:2 d2 O7 F% Z- ]
  516. LDA ($BC),Y
    5 i: x5 d. {3 R
  517. STA $2007
    ( z* a2 S; ?- L- q: N5 Z5 _
  518. 4 C2 @" H, H7 o* r- C9 l5 J( i& S; A
  519. WL4:
    . E7 T. K% F' }/ E+ @
  520. LDA #$00
    . S4 E; s9 }5 I( u; d7 `1 L4 J2 h
  521. STA $2000  Y% H2 N/ [5 g2 d" U0 F' y$ \
  522. INX9 ?( i9 ?, P2 [+ Y
  523. INC $BA
    , h6 Y/ W& S6 l) q
  524. INC $BC2 }9 Z* Q% I) ?) Z+ v. T
  525. CPX #$004 R& b3 B+ z8 _; S+ K: _; l. d
  526. BNE WL15 f# ^2 t* w' z# f' V
  527. INC $BB3 h# D5 i3 V+ |- K+ F
  528. INC $BD
    / x- _; Q! k2 w2 e/ i- C- h
  529. JMP WL1
    ! l8 V9 S" c' x7 d' L8 x+ @! g

  530. % i0 g2 d" j: y" y. u& H* v" w
  531. WLR:
    ) b: l0 i: C+ H" o- v8 H% V
  532. LDA $7FFE
    & ^' [/ G, o' [2 b; E6 o
  533. STA $07F6# _) m# v# x4 O5 U  ?. D* M. D# C
  534. LDA $7FFD, ?! k4 h, J; f2 b8 C) @
  535. STA $00FE4 u7 `0 T" L/ n" f2 J' |) O
  536. LDA $7FC1
    2 {( j/ A  Z2 N
  537. STA $07C1
    ! l/ P8 F2 z  T
  538. LDA #$3F
    5 d, D8 M, a% x4 m3 `% k
  539. STA $2006! }( o9 y$ t0 x+ G: _  M4 |( q
  540. LDA #$01! U3 x5 C  C2 }8 E
  541. STA $2006) h( A& T/ z' m& a$ |# R' w
  542. LDA $07C1
    % h9 R4 ?! |+ D( L+ u3 m# z# r
  543. STA $2007* A/ F! B4 Q$ z; `
  544. LDA #$00( `5 i' Q3 h+ B1 g$ e5 e
  545. STA $2000
    + U: Y5 b& u& n5 t* @: v
  546. PLA
    2 H7 N. u" s- @8 _# q
  547. STA $B8
    * ?9 f* @6 w/ r
  548. PLA
    + ]  i5 i8 Y3 j+ k
  549. STA $B9
    + B4 C+ D8 l0 B# [/ t" F- q
  550. PLA
    * C) o( r; {% z- C' Z+ x
  551. STA $BA5 L& N5 L8 o' [
  552. PLA) y8 M& x7 b3 n; o+ C: E" n
  553. STA $BB) C4 d: x& A( w/ W; i
  554. PLA, y( e1 i$ J. A. p
  555. STA $BC' k/ p( s5 B" y4 U* A5 e
  556. PLA1 d4 q" z) I% ]% p2 w, n! o9 q
  557. STA $BD! w) D0 ?4 ]% u) U+ e
  558. JMP $A000
    & o+ I1 y* A; g2 s" B
  559. 3 a$ H( M/ R5 b$ Z) T, B
  560. FREE:                ; 暂存器保护
    % h% N: j$ f6 `. H
  561. LDA $BD: E' ^+ w4 A2 C
  562. PHA# E4 u- w% ?$ p' s: {. [$ i$ X& A
  563. LDA $BC
    7 K7 O: x$ z5 G3 D4 ^' s
  564. PHA- l) g+ T. _( r. W6 Y+ n
  565. LDA $BB
    * l9 |& N7 f' W; U7 T3 C3 z; D
  566. PHA
    / A. j! a6 a# R5 w  S+ g
  567. LDA $BA3 k& K+ |' B& y* A# z% `
  568. PHA
    / @+ p( z% K' ]+ Z+ ~' n; q
  569. LDA $B9
    . I9 t7 G: ~0 S! O/ g' S3 m
  570. PHA
    - n( Z/ }0 S1 `+ c0 _' D! m
  571. LDA $B8& \# z/ y' U2 X! ]2 c: {# m
  572. PHA
    % i& L# d( P4 Y# p# P* J( Y* K% s
  573. LDA #$00
    % z; U; @! @( m: N6 J1 S* I+ c3 r
  574. STA $B8
    : S5 H* o' |; q0 t' p2 q
  575. STA $B9
      G- J$ C  C* x6 d8 W) A8 V
  576. STA $BA
    # s) z( t: ~0 _2 x, d! Z
  577. STA $BB9 C! D1 Z$ Q- x! [+ \
  578. STA $BC9 V, {% e8 I$ l  t3 k- r8 T
  579. STA $BD
    % T& c+ _* R% J- {/ v

  580. 1 n+ L8 y8 }5 k
  581. WEAWRITE:                ;武器ppu写入
    7 o# m5 j7 O$ ]' [) U6 q
  582. LDX #$00
      b8 z) ]3 ^2 A; ?8 ^
  583. LDA $AA
    # X* D( o1 B6 F3 ]
  584. STA $B9" u0 _, j0 N* ~# @+ e, o  q
  585. WEAINI:                ;地值初始化
    3 Z1 O7 d8 T/ I5 X7 k
  586. LDA #$A47 B2 l2 M& w# }. s5 ~2 R& J
  587. STA $BA6 R7 d4 O9 `$ O8 k5 I
  588. LDA #$20
    # o" f3 I6 ?2 W/ E- P' S
  589. STA $BB
    0 M, N5 ?! D+ I) E( o- |8 y5 U0 R

  590. * V3 X1 D, E* @# F- m- {" T4 m

  591. 9 s+ a$ B6 E# D  R' J3 q
  592. JSR WEA
      J  c. b4 S7 ^' A) `+ t
  593. LDX #$00                ;武器ppu写入
    ) l! V! K; i4 {, e) `3 G! f% I) A
  594. LDA $AB# N$ o& d5 U/ s& Z. X' {" K
  595. STA $B9- t, n% M3 n7 A% a' @& j' s6 d- j
  596. LDA #$B3! z6 v# U# u) c9 e) T6 C; h" t$ _
  597. STA $BA
    * |* w, R$ d3 a9 {, _; x
  598. LDA #$20
    - B( m' P4 E5 M3 L1 T/ m( X
  599. STA $BB# }, O% l9 o. }, W, H  m* C7 ?# S+ i; f2 l

  600. 1 e' q0 `; r% V1 T8 V' c

  601. ' b/ e9 O/ U( X0 T
  602. JSR WEA
    4 b$ C6 u7 R" F: l) M' Z* g3 C( z

  603. 6 F& J' t9 Q3 R  J' J
  604. LDX #$006 Q' [3 M& O& L- E) Q% g+ B: c2 h
  605. LDA #$E4
      p0 Q: z) V7 ?% d3 L
  606. STA $BA
    8 N5 `8 z- W! E. r
  607. LDA #$20: D! u9 v6 ]* Q9 B
  608. STA $BB
    - R+ U: M3 N( v# ~$ l. y
  609. 3 L8 K# u0 y4 s9 Z& @0 l- i: u

  610. 5 @: g" Y( N3 v: x6 H
  611. LDA $32# n3 S, {5 ?8 ]! |9 E
  612. JSR PLAYERLIFE
    ' y) J1 ^, R* B3 x: Q' l
  613. 4 }4 ~, u' M* X0 v( C2 @7 V7 R
  614. LDX #$00
    8 O4 ?; B% [6 D: j
  615. LDA #$F3
    1 n$ U, r/ p. H; r
  616. STA $BA( f  N  l+ T3 C  Y/ n  ~& r
  617. LDA #$20- g8 ^# K; ]: g; v  J
  618. STA $BB
    8 B6 P8 |& J( U" M9 c0 f

  619. & h, H' h, v8 K0 B7 t4 K
  620. * l7 D- K2 }+ [4 V, `$ F! v
  621. LDA $33
    : S! l& f" S/ i! x2 v
  622. JSR PLAYERLIFE
    $ ]: v; A3 v1 d+ a& M' x
  623. + ?9 }0 Q  O1 r* S! B+ x4 t0 {

  624. ! j7 i( u4 ^) t8 S& T+ X' b
  625. JSR PLAYER_01_PPU
    : |' V$ E3 d6 x+ u; j
  626. JSR PLAYER_02_PPU
    * z: O% y! R. c$ |- A4 c

  627. $ O) ]( L# S5 o' E4 n

  628. , Q6 O. u7 i- l6 b+ Q3 h
  629. JSR PAGE_PPU
    3 Z/ s$ ]3 {7 s. q
  630. JSR PAGESELECT) o- X( l9 c& R
  631. * Q, B* E+ v; ~. S4 H9 k3 S

  632. ' ]* Q( b. `8 l8 @" l7 y( d8 j
  633. ' l# ?- K8 E* u! {' g/ y' T

  634. 0 b! y- |: h) T

  635. 2 C# O/ k( C1 A2 ], d6 H  u
  636. 7 M4 u; W, [7 o0 l5 X

  637.   j( Q) M2 Q3 m

  638. ( o) q; S9 p- r: n5 l9 F4 {

  639. : v0 Z4 J7 _) l- v2 l5 Y

  640. ! N$ |. X/ d# H+ F3 V& y# a) m
  641. 1 q, ]/ |7 }% I& s5 ^+ K- W

  642. 7 u# i" n) t4 {/ v! M- d8 G# f
  643. ; u& U8 e5 b. u" m
  644. PLAPRO:                ;恢复现场
    - ~/ b: p7 k4 A2 W, S, F, Y
  645. PLA
    3 M$ d/ v9 G0 T$ _+ F( `, L8 R3 w
  646. STA $B8* R$ X" S6 y& D. i
  647. PLA
    # i5 c' c* t9 B
  648. STA $B92 l3 l0 X; W' Y( i+ z$ M
  649. PLA9 B( Z) m" v, s/ c: D4 q" v
  650. STA $BA
    / _. u) @" m( K) t+ D2 }' _
  651. PLA
    6 |" i. B2 k! x9 j3 t  m
  652. STA $BB
    6 i( ~+ G1 N3 x) j9 r, \" R' }
  653. PLA( H! m& Q: ?8 s: g/ S% ?
  654. STA $BC* s2 e- S2 i0 j2 w) i* _& V; Y
  655. PLA
    - [' V9 D& B) _6 v! I
  656. STA $BD
      q& E) i1 K% C& f5 g3 L
  657. FREERTS:  M; S. q: p$ @3 X: M
  658. RTS8 Y  ]. O  L5 @/ |, R

  659. 2 l. f) p+ i% e8 S
  660. INVINC_STRING:                        ;invincible
    + u! N! w- F& V% ~4 _. T
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80& g. V& b. P9 ~  g7 \& }/ E

  662. 8 Y1 o2 i1 u( i: k+ o. c' p/ e( Y  k
  663. INVINC_PPU:
    ' V* g/ X9 @- X+ I$ _# m
  664. LDX #$00
    * _9 O. g- [  |; Q. r
  665. LDA #$62
    8 h3 r% G. A5 A. W
  666. STA $BA
    ; S+ B+ q0 a4 {" D0 ]5 B9 z
  667. LDA #$21
    % r9 a8 E/ R4 u" v
  668. STA $BB9 y9 j: B$ ?5 `5 L: r
  669. ! N5 h0 O; Q$ ~. @: I9 \

  670. 4 E! R* W# L  @- v: u" h8 M
  671. JSR UP_PPU
    2 \- \6 e; c1 P8 z+ J" @
  672. JSR INVINC_WRITE
    2 q5 i- Z6 {2 i! E
  673. LDX #$00
    2 m3 j0 N6 Y( ~, X/ T1 M+ J( O
  674. LDA $07A0# C5 @% ^# i+ m& y. T
  675. AND #$01
    $ J( g, ?1 q$ p) P, Y9 s
  676. JSR ON_OFF_PPU
    ! _$ k  {2 w; N: O/ F
  677. LDX #$00! T/ \% {; n  W) l% l
  678. LDA #$71
    . f7 s( z9 M" c2 U) R1 S# G
  679. STA $BA
    . N3 R8 E5 w, u: r9 d1 A6 \/ J1 p8 Y
  680. LDA #$21
    & Q% ]! K9 B# |& I& ?8 D
  681. STA $BB+ t$ f- X9 g( Q/ J$ Z1 Z% W- [

  682. . T+ l# K) G8 K
  683. ( J4 ^: b6 Z% a! ^0 {
  684. JSR UP_PPU
    4 l* ^( k; \7 v* u0 i
  685. JSR INVINC_WRITE4 u8 F; V2 I% r
  686. LDX #$00
    ( H! Q( ^  a# u
  687. LDA $07A1) w- a/ V; E( Z4 y% u1 Q
  688. AND #$01
    # }! D) P/ ^* p" N
  689. JSR ON_OFF_PPU; ~. m# e7 \# k
  690. RTS9 I$ f; d, a9 {6 h4 L

  691. . s! ~+ l0 b3 X) L/ m; C
  692. INVINC_WRITE:
    - R+ }% F5 e9 C. ?
  693. LDX #$00( t- o/ }5 c' D, ^# L# T6 h
  694. INWRITE:
    9 p+ A" V4 o2 m; m2 E, S  m
  695. JSR PPUADDR_PROCESS6 r# N( O$ f; g" @7 ?$ {
  696. LDA INVINC_STRING,X
    7 a. b4 S! n2 c! c5 C
  697. STA $2007
    9 O0 O/ W- \& S/ @; x
  698. LDA #$00+ ^& z2 c. c4 R; E2 H
  699. STA $20002 Y, v# G5 ?" `8 L/ y0 h6 e# ~
  700. INC $BA
    3 T  {* p2 E( }  a
  701. INX# n, O% ~, d0 v
  702. CPX #$07
    , E% I0 q3 T$ q  E: J7 L
  703. BCC INWRITE
    $ h: O" h1 c% E- n0 \8 c
  704. RTS1 i; q8 y  }* ~) e
  705. 0 O1 E* f! _) {: X% \
  706. ON_STRING:
    7 Y$ K8 k! H, t, r/ e. _1 r: K4 u1 K9 ?
  707. .BYTE $99,$98,$80
    , i7 x  _- M2 y1 a" _" J/ |
  708. 4 y: R8 N0 ?  F2 e3 w7 ^
  709. OFF_STRING:
    * |" D) A+ J+ g: N6 Q
  710. .BYTE $99,$90,$90
    3 T8 L+ E1 t2 ]
  711. * H9 o& \% _* m( c; R
  712. ON_OFF_PPU:
    ; O4 R# F, u( o; C
  713. BEQ OFFWR
    ) F- I: n  H8 b  `; J" t8 q" y$ X
  714. ONWR:( i' \* O2 d& Z) n0 L
  715. JSR PPUADDR_PROCESS& S4 U3 J4 o; Q
  716. LDA ON_STRING,X
    & B( R$ r4 D- ^$ ]
  717. STA $2007
    " ~; ~2 L3 l1 E3 a, F6 M
  718. INC $BA1 g* ~! P) Q; y7 ?3 Q
  719. INX' O" j3 M- Z8 O" {( x
  720. CPX #$03
    : V* E" Q9 t5 f, l$ ^4 I- f
  721. BCC ONWR$ \: r% r" Z; a6 I0 t) |* q
  722. RTS& b* X! L) x' i- G( A
  723. OFFWR:
    8 V. t2 J( s" C# J
  724. JSR PPUADDR_PROCESS
    $ ?5 Z) Z9 [' Q* x; k2 ~
  725. LDA OFF_STRING,X$ S8 O; A* Z* W5 t6 D+ O
  726. STA $2007( ?* R( T- P8 v$ o
  727. INC $BA  D) @& l. K+ W8 A, o* c: b
  728. INX
    7 q& ?5 s' U3 d7 S! A1 \
  729. CPX #$03
    6 ]% o( s% X' |; Y& }
  730. BCC OFFWR
    8 m$ w: f. l0 z) \
  731. RTS
    / T+ v8 L6 R; i$ [  r: t

  732. ' Y, i& U. c3 B$ X# V& F
  733. LIFELC15_STRING:
    ! {: ?4 \% u3 O" u' H/ e. M, e2 x
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    8 h( p# [/ W9 ]

  735. ) _# y0 n. w  a7 J) Q4 ^
  736. LIFELC15_WRITE:
    , s, U9 S7 Q5 i/ y6 X4 j( S# D
  737. LDX #$00
    . J; D7 e4 v6 [8 F+ W( y
  738. LIFELC15:$ f+ ?& x  D9 L" _4 Q' W, b
  739. JSR PPUADDR_PROCESS( s' z! c6 t" b
  740. LDA LIFELC15_STRING,X  P$ G  D/ ^4 H0 b# A
  741. STA $2007
    & m* m( Q5 C# I( a  }, K
  742. LDA #$00
    - Y+ L1 ?, l. O6 K4 B3 x/ h
  743. STA $2000
    1 `# n$ t! V3 W: \% C8 D0 F
  744. INC $BA
    4 ]! @3 ^! A1 n5 ~7 ^. _
  745. INX
    ; H5 N+ B4 q. b: v
  746. CPX #$07
    4 O4 E6 k* P0 f1 N
  747. BCC LIFELC15& l' L5 A' u. X+ @0 G& G
  748. RTS
    " k8 I1 i7 I. G: a

  749. 6 h1 v" q- k9 I8 i! e0 |
  750. LIFELC15_PPU:
    ) Q+ z! Z9 H- k4 q* D
  751. LDX #$00) e( A* z' e1 q. Q
  752. LDA #$A2% t* b7 \3 X: j+ g
  753. STA $BA% W: b( W  G" [0 ]
  754. LDA #$21: D2 ?! T' N8 |$ Z7 A
  755. STA $BB
    * q) t2 z" G1 C- B0 B: Z
  756. JSR DN_PPU
    ; y( @3 l3 K! h- ]% a. X( e% e
  757. JSR LIFELC15_WRITE# [6 `! |6 ^9 n. v
  758. LDX #$00+ u+ \' v& u: n! q0 O
  759. LDA $07A0
    2 e3 ?( r8 i# s. @
  760. AND #$02
    . ?( g% H2 ?7 V3 Y
  761. JSR ON_OFF_PPU# S, H0 \1 b; s( B4 t3 h5 w7 }
  762. LDX #$00' P" N& t5 u/ i1 w) m) \1 f2 F
  763. LDA #$B1
    : e  a" _5 R) O% p. b, U% K
  764. STA $BA* k. h. o9 t; h* W9 E7 `, u4 Y: j
  765. LDA #$21
    : J2 h% K/ x* c  U0 z3 o
  766. STA $BB  e9 u, D8 r8 Z# z) e& @
  767. JSR DN_PPU
    0 Z' x/ X0 w3 S9 e: W' N
  768. JSR LIFELC15_WRITE
    ' q" P7 }4 X8 B) W6 f" I7 [
  769. LDX #$00
    ) ^3 l2 w% \$ o& X1 W
  770. LDA $07A1
    & e/ N7 z0 }# K3 q$ n
  771. AND #$02% O+ m4 ^! H8 X" k  {' P
  772. JSR ON_OFF_PPU
    7 m, k2 Z. `' S" e3 P, Q" L
  773. RTS
    : S) K  X& x* Z; d7 u$ ]( N% a
  774. 7 ]& u) c; ?$ n, m
  775. DOUCON_STRING:; e: X  l  _9 N$ s( Q
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    3 q# x! ~$ G/ x# B2 Y5 @- s3 @
  777. 3 |7 o4 P( m( s
  778. DOUCON_WRITE:
    / m1 r) H1 U. {, m6 l& a) Y
  779. LDX #$00" n1 s, b4 e: k5 W/ S1 W3 o
  780. DOUCON:# I+ m. p* P9 {) Z
  781. JSR PPUADDR_PROCESS
    1 j+ i7 h9 c7 {
  782. LDA DOUCON_STRING,X
    6 J# p7 q1 }$ Y/ E! j) [" b! t
  783. STA $2007, Q7 R( z' u6 Y; D. r
  784. LDA #$00- {* v* X3 {, v# v- c% O5 j+ f
  785. STA $2000( b  ]- g) i/ p3 {$ o4 Q
  786. INC $BA& i( Q2 q1 Q3 c, w1 R( q$ J& z
  787. INX
    9 L) l0 R+ N9 i; |
  788. CPX #$07# _: |8 |; J* \- d1 J$ y7 s. b
  789. BCC DOUCON2 m7 ^# S: u4 J$ Y
  790. RTS9 y* U4 Y1 b1 M! w: v9 }/ Z

  791. 1 B- ^1 p# g9 F8 S2 ]0 K4 h
  792. DOUCON_PPU:
    . c5 h, N$ b& B+ Z1 a4 Q
  793. LDX #$00
    ' v  O& T9 u# `2 @5 _# K( w- }! ~
  794. LDA #$E2
    ) x( m; Q" b. W8 ]( R
  795. STA $BA
    + \. `! z3 N6 g  {4 S* _" ]
  796. LDA #$21) v4 b, o# V0 d1 S3 B
  797. STA $BB7 _& U# j- W. j7 \6 F
  798. JSR LF_PPU( b. w! ]- ^5 m0 _
  799. JSR DOUCON_WRITE
    : k* j: w6 `8 U' ~% ^) O1 T% a9 B
  800. LDX #$00
    ( C+ i$ f" Q  A
  801. LDA $07A0- U: w' `* j  N( {
  802. AND #$04% F; r$ R/ A4 }, f6 O0 p0 p
  803. JSR ON_OFF_PPU' R7 V: w; L4 |6 c
  804. LDX #$00) e  ~, r5 G2 u: I
  805. LDA #$F14 q' c+ ~/ f6 ]
  806. STA $BA2 Y; D. e/ e2 P/ a+ M6 k+ T$ \  }
  807. LDA #$21
    . t. |# W5 S$ h& e
  808. STA $BB
    4 q' k6 ^4 y/ K. s; O; |& Y
  809. JSR LF_PPU6 j$ b% j2 c' g. `" u. p( k$ ]
  810. JSR DOUCON_WRITE
    $ p" ]6 W2 Z# g  I4 A2 j
  811. LDX #$00
    6 d: P* T+ l6 X; g; g
  812. LDA $07A1
    ; r! @* W/ J7 S, r3 c0 [, s7 i
  813. AND #$04
    * E( D3 O! F) m) W4 g
  814. JSR ON_OFF_PPU
    ) `$ B& E2 y- L/ ~& m  P
  815. RTS, X9 v- Z4 t/ D2 g( _/ W; M! [

  816. $ e. {4 p( Y" j" C2 P6 H4 Y
  817. LIFELOW_STRING:# \! \) O5 |, |% n" e+ N6 _
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80) G$ T* u2 M$ b6 v  x3 F4 b  A) i

  819. . `/ r6 T# d# |; v/ Q% Z
  820. LIFELOW_WRITE:
    7 d4 m- T3 `- n4 T! _! n8 ^
  821. LDX #$00- q1 }) F- c. D, K# c
  822. LIFELOW:8 ]4 {7 _! t; d7 f3 K+ J
  823. JSR PPUADDR_PROCESS" a. T: R' L# c- `9 _$ G. Q, g
  824. LDA LIFELOW_STRING,X
    " {) A+ e- e' P; G9 M1 x! l
  825. STA $2007
    ' g& X3 _# c+ Z: ]5 T6 ~
  826. LDA #$00( `' R! B1 J# a: n
  827. STA $20000 R3 t* `! O, A' O/ ?2 P
  828. INC $BA
    / n, a7 I* E% q& ^
  829. INX) I' R: r" p" n
  830. CPX #$07
    # y8 u- b" n& \* z. N% p
  831. BCC LIFELOW. ~! {  @, q+ Y: Y% b
  832. RTS
    5 X" L+ i$ c5 z4 x9 s& I  u6 e# h. G
  833. 9 Z6 d2 }8 j; Z
  834. LIFELOW_PPU:, ?" L2 b* R+ K, Q
  835. LDX #$00, d4 Z6 z% F  A6 q2 Y
  836. LDA #$229 J9 H  H1 s4 B& N) g; H
  837. STA $BA
    " [0 a: U+ w& `5 x, m% h
  838. LDA #$22! y$ Y& ^  L  y" X& Y3 w" l. @4 X
  839. STA $BB
    3 Z# ?4 g. ?" F: w: [

  840. ; i* ?/ T3 s. \$ m7 o/ f5 f* w

  841. * j5 E: H* ~: e
  842. JSR RG_PPU
    / [# w: C# o; f  l) U$ t: U
  843. JSR LIFELOW_WRITE
    & ^1 P! y9 a; O. u! R
  844. LDX #$000 |: j: d% W% R, C9 f5 Z9 G' I
  845. LDA $07A04 f$ X1 C2 P5 Q% R* }6 W; h
  846. AND #$08( ]6 e- z( L3 P) q
  847. JSR ON_OFF_PPU- r8 E- w/ O, C8 e9 @
  848. LDX #$00
    # p. @/ f2 W6 i
  849. LDA #$31
    : v+ w* O, V; ^6 ~! o4 r
  850. STA $BA8 k2 k; p) ]0 X% F: B$ O
  851. LDA #$22" K. j9 B* G$ T6 c: S' l' d* ~
  852. STA $BB
    9 l) t  \! R% j5 i$ W; \3 @5 {
  853. ; V- E/ B! a2 L  g8 s
  854.   \6 d- Q: Q2 `* K& ]; x- n
  855. JSR RG_PPU# N& I7 L) ?$ S" Y# L
  856. JSR LIFELOW_WRITE
    : A5 m2 e# _9 s/ Q# ]5 \& I# f
  857. LDX #$00
    1 d+ X% s" c1 e8 d" b, v6 Y
  858. LDA $07A1% N* g' y/ K/ f$ N" t9 g
  859. AND #$08" _/ H8 f* Y9 E7 R6 ~7 ^
  860. JSR ON_OFF_PPU: O7 B% w4 ^7 ]
  861. RTS
    5 H) l2 T3 s3 K: b# U# `6 B; i

  862. 1 y2 z4 C0 [" E+ L! }) O) N
  863. KILLON_STRING:) R; g; ^3 ^' Q! Z4 j+ r
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    ; V: ~5 y" T0 {

  865. 3 E4 ?+ ^0 m3 U) k( t* j  j
  866. KILLON_WRITE:: n7 i" j9 x3 ~, a: A" p1 z! h6 A9 x
  867. LDX #$00; X- P; \7 G+ h: ~" C
  868. KILLON:& P7 [" c1 K- o' h; C$ t
  869. JSR PPUADDR_PROCESS8 m8 }$ X. `( e' ?/ L9 v
  870. LDA KILLON_STRING,X4 ]1 X: p7 S$ @0 T0 n+ a  e
  871. STA $2007, m& E- h. P( u, ]
  872. LDA #$00
    ' j7 I' W) P) t; l& K7 K
  873. STA $2000& _/ c% @3 q" N( ]! E
  874. INC $BA
    + b4 y6 {; g* ~# ~- q2 P5 G
  875. INX* z/ b4 O7 s% Z& H2 Q
  876. CPX #$07* J$ J3 Z; w) k$ T, }# S- r
  877. BCC KILLON" X5 z) r& {# \# f3 C
  878. RTS
    1 I1 M" _& ~3 \% d
  879. " b; G/ s$ U2 o- l5 G; V' a
  880. KILLON_PPU:
    " ?$ Q, u$ L! ~3 k
  881. LDX #$00; w2 b% `0 T- R8 k7 z; ]1 Z+ l
  882. LDA #$62, P8 e. O, [2 O4 ^
  883. STA $BA
    * b. m0 m2 j; l) B1 m
  884. LDA #$22
    1 c. X; j. ~7 s3 w; y
  885. STA $BB
    ( u* y: D* f, _+ u5 X( `5 e

  886. ; O; p) \9 h2 {9 o" l
  887. 5 I! W; A& k" z) a
  888. JSR B_PPU
    5 b+ e; ^' c+ u0 B/ b5 p( o5 {
  889. JSR KILLON_WRITE
    4 f; `) M5 X9 Y- z# B# d# [- {7 M
  890. LDX #$00% L; z  U# R% w. y9 b
  891. LDA $07A01 [( M- @2 Y; X3 a1 K8 {
  892. AND #$10
    ; O1 b( u+ c' w, o0 n5 t
  893. JSR ON_OFF_PPU
    5 O8 S. q! ~7 \5 }1 v3 r, S
  894. LDX #$00
    ( ^) L% _2 d9 Y2 `
  895. LDA #$711 w0 ^! I, O- h8 z- f
  896. STA $BA' K# N! }1 x& K' y" M9 G$ A
  897. LDA #$22
    9 @6 h6 k" Y7 s' P$ `- K2 T- S
  898. STA $BB
    % J3 t+ x8 j( j: h
  899.   c7 v& M% Z; n3 S% l

  900. : E5 s4 F5 ^) n3 A3 g3 V
  901. JSR B_PPU
    2 G* x! r: z( F# [6 I* E
  902. JSR KILLON_WRITE; t* K" }, X* w/ A- X
  903. LDX #$00
    : I- `9 v/ ^' e4 l1 Y% z* @3 Z
  904. LDA $07A1
    7 S8 s1 O4 g: }& E! ?7 S0 n2 o
  905. AND #$10
    6 E+ }7 H5 N7 S+ P: u1 p
  906. JSR ON_OFF_PPU: a9 @/ ~' y- g* i7 J8 M
  907. RTS4 i$ m( S/ P1 i8 ~* h! j

  908. + J- z/ o9 E  S$ D) K) h
  909. SKYFLY_STRING:: V7 t. f# j# a& I/ P
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
      h( |8 k* q/ _; e

  911.   d9 o; \% h& b. b% O1 H
  912. SKYFLY_WRITE:
    5 I* Z+ x1 U% l1 _3 h9 C
  913. LDX #$00/ ^! S/ V9 P, K0 f. g
  914. SKYFLY:+ n) h$ d, @: O/ d  G: d2 B
  915. JSR PPUADDR_PROCESS3 K" }) H- F# i1 M  w
  916. LDA SKYFLY_STRING,X
    6 j6 r1 b# p0 i# M* [
  917. STA $2007  O: u; H/ M$ k, B
  918. LDA #$00
    0 O7 `; V. T/ ~2 V" W# M9 @
  919. STA $2000
    & X) K2 q( _4 U' G% ?0 X
  920. INC $BA
    6 r' ]$ z* I* |1 X) X. _
  921. INX
    ) x3 o1 A& h0 `8 b% I& }
  922. CPX #$07: l4 l' M, [: {; [! z
  923. BCC SKYFLY
    9 o3 g% D" ?4 C& ~8 L
  924. RTS
    & X/ C& O) F6 O) i. I3 J  z
  925. & l: J$ N: F2 b& B% ~. z% }/ S9 \
  926. SKYFLY_PPU:
    + e# v1 z5 m9 I" R, Y4 L
  927. LDX #$00( Z. K  y( v1 }: T" C) @
  928. LDA #$A2
    & P( C* ~+ }# ^- k
  929. STA $BA
    1 K2 z2 @$ G- n6 x; {2 A* t, w; o
  930. LDA #$223 W- M! n! O3 U
  931. STA $BB7 x  g* I- U6 S" d% @

  932. - I. y/ j. I0 J( ~7 w; |( s  R& u

  933. 0 ~0 H) g$ ~5 O) h0 Y' y
  934. JSR A_PPU
    + q2 P  l' Z* T6 i& n3 z& d. n  q
  935. JSR SKYFLY_WRITE
    ( [9 K3 C) C- `- ~/ ~- n
  936. LDX #$00
    6 C7 Y% `' J7 d, n- Z( ?+ {4 o" K
  937. LDA $07A0
    " u. q8 D: r( _7 _" \" i: M+ v
  938. AND #$20
    ( L- J) c$ F9 V3 @- ?* {
  939. JSR ON_OFF_PPU) r! W! C( l: R2 x7 X0 w9 E
  940. LDX #$00
    3 ^; e, O$ g# F7 {
  941. LDA #$B10 v: l0 W, A3 z* k! }4 i
  942. STA $BA
    2 S- T) I# L% j" X( m
  943. LDA #$22
    5 R+ A7 x$ Y* T2 G+ G  }8 g
  944. STA $BB( d, d6 ]. Y6 x5 |

  945. ' o" ^( n' K: ~# A
  946. ! ~8 X0 }8 I+ J5 x  q5 L% [
  947. JSR A_PPU
    / J: Q* h3 d- n% L, k/ Q* d' g
  948. JSR SKYFLY_WRITE7 ~0 e. \5 t5 d/ e- x- f$ s) v8 q
  949. LDX #$00. v2 x. c* w; b- V* ?% f
  950. LDA $07A1
    ) J) s! N8 }# [3 Y4 C0 l
  951. AND #$20
    8 C4 m2 w/ Z7 Y+ `
  952. JSR ON_OFF_PPU4 ]3 `  v- ?; _- w7 C; C4 ]
  953. RTS
    # q" E7 M1 w+ m5 m: k0 l  [/ C
  954. $ j" X4 ?3 K6 R% Z8 b1 G2 |2 U
  955. BULADD_STRING:
    2 V  S; ?- B+ J1 Y
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    " s* L+ f& F  ^6 M) n

  957. - ?/ r3 I! X- R7 q# C/ t9 \0 A9 c
  958. BULADD_WRITE:! j5 u2 N: O+ {5 d# T$ ?+ y, L
  959. LDX #$00
      [/ V( p+ S8 C1 G6 s
  960. BULADD:! e. H2 w2 {; _, ^' c" C( {/ U
  961. JSR PPUADDR_PROCESS
    ; x6 M4 ]- j3 O  j" L* ^7 W  ]
  962. LDA BULADD_STRING,X
    6 U; h$ Y; E. U' }
  963. STA $2007( F; h# j, `7 C. A5 y
  964. LDA #$003 M* h, d& M0 S$ p3 U9 ]* p
  965. STA $20000 G. P; i$ ^' }: @, p6 F
  966. INC $BA2 m; M; u4 [6 r% n# d4 b) e
  967. INX
    : Q$ ~& T$ H8 |+ P1 U
  968. CPX #$07
    9 s* [. }3 i! v: a( U% Y- G9 w4 U
  969. BCC BULADD
    * e9 Y. t5 h' O) n$ p  m5 m
  970. RTS
    * [3 K/ Q" i4 `2 Y+ e
  971. ) N; o- D) z3 m; `1 W3 }
  972. BULADD_PPU:
    & `' l: J- \7 k% B; D
  973. LDX #$00
    5 N5 ^+ L- U* t! h
  974. LDA #$62
    0 l4 c5 K) H8 M* C: Q
  975. STA $BA/ l4 m1 G* ^* i9 p2 M
  976. LDA #$21
    / A9 r- V$ p4 ]* p! X& F3 A
  977. STA $BB
    ( C8 g0 L; q/ Q( N9 t& G

  978. # K  s8 H! z% K6 E
  979. / q4 }6 V$ u& j  l+ l" Z: l" I
  980. JSR UP_PPU
    6 s: u9 b* `6 B, |4 m4 u
  981. JSR BULADD_WRITE( u0 u5 Q7 ^5 Y
  982. LDX #$00
    . n7 A/ b8 P2 {1 B! k( p9 R/ @
  983. LDA $07A2" a8 @( j1 G- \% y, T. p
  984. AND #$01
    5 r- e3 O: B8 {' |2 M+ {
  985. JSR ON_OFF_PPU
    6 s# F4 }7 y0 F3 K1 s) b! R
  986. LDX #$00
    2 u/ _9 O' i  o! A
  987. LDA #$710 h' S* r" _) {9 t( M; A" Y' g
  988. STA $BA. V7 f" l' i4 I7 H* N
  989. LDA #$21
    9 M6 r- {4 W4 Q* e$ z0 H2 i
  990. STA $BB
    0 d: K: I7 B% p  r) k: t

  991. * U& w5 }1 s5 p( k$ p

  992. ! G$ j) D1 z# x: r
  993. JSR UP_PPU5 l" f( X9 v0 |; V3 x
  994. JSR BULADD_WRITE
    & w# G( a7 B4 U) f, H% @# e
  995. LDX #$00
    8 v. f; R% W5 ^% a4 _8 V- ~
  996. LDA $07A3% Z, ~) i# K" d! ?$ _: U) o# r2 j
  997. AND #$01
    , M$ {; R" ^* Y% ^" o+ [9 R
  998. JSR ON_OFF_PPU5 n4 z" h0 g1 u$ Y8 b8 e; B
  999. RTS% T1 p" W2 u; f
  1000. $ c3 u2 }  W4 f2 A& s; c8 |
  1001. MENU_PAGE_STRING:
    / T8 D7 H4 h6 R& x. i# c7 W
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    ) D6 [4 A" P) k) \- x3 i
  1003. 6 L: V3 J1 v# |% I
  1004. PAGE_PPU:
    , l- f2 k0 C' ~: B0 d
  1005. LDX #$00
    & J2 W7 X4 G2 H
  1006. LDA #$0A
    - G7 M! i- G4 E% [: w9 Y9 r
  1007. STA $BA) N% Q8 P6 u% @. x
  1008. LDA #$23* F7 p; T( N) e! b* Q5 j
  1009. STA $BB
    9 M1 q5 m4 N* I2 n# L3 f8 ^  R

  1010. ' R( T" w% u; _- o
  1011. 2 V) Q" m% Q% t
  1012. MENU_PAGE:. \  p9 M: {& n' o
  1013. JSR PPUADDR_PROCESS
    ) j& z$ O, `1 z( d! \7 c
  1014. LDA MENU_PAGE_STRING,X
    ! Z' I6 p1 I0 |
  1015. STA $2007* y) D% _; v) _( e
  1016. LDA #$00
    : o: R  h* V1 u: x4 U3 n
  1017. STA $2000
    . z  p; e$ ^) V1 B/ k$ I% Y
  1018. INC $BA. B: n: P2 h6 g4 a' v! l
  1019. INX" S% s4 W2 L4 T+ ?( t
  1020. CPX #$0B' v% Q! ?3 r8 X/ n" D# m
  1021. BCC MENU_PAGE
    9 p/ `8 w7 j' O0 [1 ~# n- n  ?
  1022. LDA $07AA3 J4 ]7 `$ ~. q4 A
  1023. CLC
    1 f& k. {4 c4 a
  1024. ADC #$82& {, b! K, e1 V" l
  1025. STA $2007: y" l  N* g$ ~9 C" j
  1026. LDA #$00) s( z. g6 ^: x# h+ b& z4 A7 E
  1027. STA $2000
    / c- V* ~$ Y* J1 c% h2 M/ y
  1028. RTS% ^. l* f8 R! ~5 W4 ~* ~: P
  1029. 9 _7 e7 c8 v$ @/ ]: v

  1030.   V- F+ k; A: t" W
  1031. SKINGE_STRING:4 P* T: x* y1 l% M' q
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    / d& G, w& w" L1 b6 N

  1033. & j& k0 T3 `* d: R, {
  1034. SKINGE_WRITE:
    ) L0 D$ I8 V9 Y+ m
  1035. LDX #$00% [5 q$ m9 H. e( w% s; R
  1036. SKINGE:
    - s( R* i$ X% C. r& a: h
  1037. JSR PPUADDR_PROCESS
    3 Y0 G2 ?# w+ _2 i9 I1 n  K/ z
  1038. LDA SKINGE_STRING,X
    5 \% X1 z+ r' L2 g! S/ B( R7 `
  1039. STA $2007( K, C' b( u: c  c! v, h
  1040. LDA #$005 h5 `1 k# t0 p3 s) b
  1041. STA $2000% X2 a. }% {- F5 b+ B' i# b( ^2 e$ C
  1042. INC $BA
    7 P- }" q7 V9 ^' v( y
  1043. INX
    8 x3 M3 e+ |$ a: ]8 v( x9 @
  1044. CPX #$07
    & j, Z' v0 K& i0 r) m6 |
  1045. BCC SKINGE1 U# ?$ U+ P2 ^/ M, i
  1046. RTS, W5 h8 Z6 x8 Y/ d5 c
  1047. : E: c, ]  J" l4 ?1 N. _
  1048. SKINGE_PPU:
    2 b  u5 r. z+ K% J" ^% z% G' w
  1049. LDX #$004 c6 A$ n5 [  s5 @# _
  1050. LDA #$A2
    4 E9 H# c+ N- S6 ?  u
  1051. STA $BA
    , g9 p' I% Z: T# G7 |) z' V
  1052. LDA #$21* V3 r2 h. f2 M, i
  1053. STA $BB
    # v* S  e" |* U: g6 f. N9 {4 q- s
  1054. ! p* t6 E1 a! D7 W6 F; ~6 Z! x
  1055. 6 X* L; r3 t: s! E. U' z
  1056. JSR DN_PPU
    ; ~, V4 h8 u3 k# ^* B, W  S
  1057. JSR SKINGE_WRITE
    - [3 L/ c( R! z) C. ?- i4 q" }
  1058. LDX #$00
    * n4 V' |& I! v" }9 C" G
  1059. LDA $07A2# ^& c9 s: P3 B0 o% @
  1060. AND #$02
    3 |- e0 P  h" C7 x
  1061. JSR ON_OFF_PPU
    ! l6 v/ x$ c2 Q2 |( _0 P* _4 d( d
  1062. LDX #$00* P! v- n4 r2 t% t" _$ ]2 N
  1063. LDA #$B1# U! o/ y. l) [2 M6 `
  1064. STA $BA
    : z+ K, k; k9 X, g" `
  1065. LDA #$21  n8 ~0 G. F9 I" `7 U* o
  1066. STA $BB' G1 z( d4 b& \0 f% P' m5 i

  1067. 4 n/ \" j8 D2 m+ w

  1068. ! y7 u3 w+ G( ]
  1069. JSR DN_PPU
    & w# a8 G# ~: \" |5 T8 P
  1070. JSR SKINGE_WRITE
    6 ?8 V; x' x: `5 J$ N1 d7 T$ N
  1071. LDX #$00( |- D( Z" P6 M
  1072. LDA $07A34 y  I+ f+ R; @& Q) P' N: R
  1073. AND #$028 v9 }& a2 f9 I% ?7 d* c
  1074. JSR ON_OFF_PPU
    1 J, F! [6 `, g9 [3 R
  1075. RTS
    ' e( ?8 S% ?5 ?2 m$ p* n5 W# {1 ]9 L

  1076. . o) C6 p) d0 v# ^4 ?
  1077. BULMIX_STRING:
    1 d: `" n" M* F8 A  Y# a( R
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$802 `2 \7 M/ I7 b% P

  1079. 7 x# ~3 G! R3 r2 Q/ @- _5 g
  1080. BULMIX_WRITE:; S5 {3 W& Z% d
  1081. LDX #$00
    0 p; l! f1 C* ^- r$ ~) y8 K
  1082. BULMIX:% u9 k( n$ P9 e
  1083. JSR PPUADDR_PROCESS
    5 L) f7 }5 ^0 l( y, M
  1084. LDA BULMIX_STRING,X
    0 P  y- j( a) F
  1085. STA $20070 J% J+ f2 X* E8 Y" A
  1086. LDA #$00
    # o$ J- Q& @: Z* a$ V4 ~" d. T4 P
  1087. STA $2000  ?/ ~" Z; R+ R- J
  1088. INC $BA
    8 }4 X/ Z8 v6 k" g+ k
  1089. INX8 Z5 n$ K/ }% Z% S# ~
  1090. CPX #$079 L5 F; s/ Z: T, V
  1091. BCC BULMIX
      i5 I2 @/ r$ i. W* ]
  1092. RTS+ V7 r) a+ T, m5 n1 `- i& X; O* |1 e

  1093. % b# u) y5 ?# n
  1094. BULMIX_PPU:
    # r+ ]* B  D9 ]+ l  x; o
  1095. LDX #$00: G* w8 I5 u$ O. Q; ]& s2 w; d
  1096. LDA #$E2, I6 |% e, Q4 Y7 t' l% t3 C
  1097. STA $BA
    8 S5 @$ H" [0 U( f& v) E
  1098. LDA #$21. H. C) K0 M% g2 o0 }5 ~
  1099. STA $BB
    ( ]1 W/ {' W8 v3 Z  i% b

  1100. & N$ G" _4 p) ]) ^

  1101. " H  L* `7 N; i. B, Y7 W
  1102. JSR LF_PPU
      u5 l+ u3 y% o# g0 M
  1103. JSR BULMIX_WRITE. ^- P- ~1 p- K- k; L: S0 g8 f
  1104. LDX #$00/ {7 A0 H# f. I+ p+ h8 j0 R' x
  1105. LDA $07A2
    - p$ M1 o3 B! y1 W$ u. a
  1106. AND #$04
    ; j- U. Y# l6 B6 A+ @1 s
  1107. JSR ON_OFF_PPU
    . f( t7 Q3 e7 b; C0 [
  1108. LDX #$00# e1 Z. c! }8 h9 w- Y
  1109. LDA #$F1
    ) K5 r# m8 F; k" ~
  1110. STA $BA" x4 B% ^$ e8 d2 X
  1111. LDA #$219 J/ f; Z( U6 q4 U2 m
  1112. STA $BB1 E& u* @4 I1 u8 I' _

  1113. 3 N1 r0 g: u, g& ]) Y
  1114. 3 ^; |0 j( N1 T2 {, ?  k" ]* }
  1115. JSR LF_PPU% e, Z8 M! J# |& P4 s' n
  1116. JSR BULMIX_WRITE" y) m5 Q' T9 B6 P
  1117. LDX #$00
    ( x/ n1 Q* o& d7 E. @8 N
  1118. LDA $07A39 z  u, Q! E5 C  X
  1119. AND #$04
    ) @5 D- J) [4 h! C. p
  1120. JSR ON_OFF_PPU
    $ t: E: b3 s& a% m- c, U; S2 `- k% B
  1121. RTS' O  d6 N. i! z8 @( _
  1122. 6 j! Y9 o7 n9 E' Q0 r
  1123. ENELOC_STRING:2 e% e6 E7 b  z4 s
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80' y$ @7 C2 v3 c% }& \

  1125. , F) e1 v" q& k5 g- W
  1126. ENELOC_WRITE:5 f1 X7 c8 C! t8 S% \/ v
  1127. LDX #$00
    8 b2 T& C% T2 u& e6 L
  1128. ENELOC:4 Q/ J/ B: j- x8 V7 S
  1129. JSR PPUADDR_PROCESS
    , p5 A. i5 ~% q0 {; k: f. x3 V
  1130. LDA ENELOC_STRING,X* ?& ~6 S4 B" l* L% X2 O5 g! k
  1131. STA $2007+ K2 x" ~% o& |/ f) @+ M+ C( N/ w. Z
  1132. LDA #$00
    & b( n' g% m9 {" g4 p
  1133. STA $2000. Y: w' A5 ~3 z' y  C4 M- R
  1134. INC $BA
    ( J" ?; `4 n0 [* Y7 ^
  1135. INX* c& P; f9 y# D2 c4 s/ b4 _
  1136. CPX #$07
    9 s- y0 ^% r( y* D! Z
  1137. BCC ENELOC
    ; C9 O* [2 O& M' D& T) m) w
  1138. RTS
    , s* W4 Q4 m! S3 y2 r5 Q6 ^

  1139. 7 T+ {* y; U. n. [* x
  1140. ENELOC_PPU:
    + P* k$ H: j5 r8 h1 K
  1141. LDX #$00% ]. R7 `) H2 q, S3 K' t6 a
  1142. LDA #$22. D$ G7 B3 p5 M. ~% j, _0 H# h3 u
  1143. STA $BA. {- b% d' @4 R* N6 Y2 [, W6 B
  1144. LDA #$22$ g" G( D7 `3 Z0 V( {) s& L
  1145. STA $BB8 ^$ ?$ a* {3 ?+ q" N. K2 Z
  1146. ' n5 z7 \* {) G7 H; u, d' d9 I6 V

  1147. 1 J  h3 n7 A7 n, }0 q! _! N
  1148. JSR RG_PPU
    1 q5 A1 r' T8 t5 ]  o' k$ d! T
  1149. JSR ENELOC_WRITE
    1 d8 {. W4 @: e7 N+ ~
  1150. LDX #$00' |! Z" e$ n2 Z* M' F' S
  1151. LDA $07A2) I5 c0 G" p& n2 [
  1152. AND #$08
    " r: ?9 g: d2 G; T) p4 m. t
  1153. JSR ON_OFF_PPU
    5 G( J0 Y" I7 a& Q: Q7 n4 Z. X
  1154. LDX #$00
    9 d) B8 v3 `3 z" f; k; f
  1155. LDA #$31- |4 D1 r# m! e2 J6 x8 `' i7 `
  1156. STA $BA( w; {& P' ]& E) y
  1157. LDA #$22' V' h; g# F7 q" X. ~
  1158. STA $BB
    + X* ?" o3 G% A; P3 A7 T5 X
  1159. 5 p, q5 U5 y- _/ S3 y8 l& b+ i

  1160. 5 x- p8 @: C( p9 l0 f5 w! b2 @! v
  1161. JSR RG_PPU
    # q( _2 i' z8 d" p. s- m
  1162. JSR ENELOC_WRITE
    8 k6 j: ?8 Z4 O9 c! D' k
  1163. LDX #$006 ]& H" p- L9 y( Y$ Y5 @# v
  1164. LDA $07A3
    ( c. V' |2 I& v. X* `7 z0 p* K9 Z
  1165. AND #$085 a' X3 [( d- q' m! }; t  o
  1166. JSR ON_OFF_PPU
    - M7 M# P" d9 w% M
  1167. RTS, l. w2 U0 r( g2 p
  1168. ) {5 t! m+ ~" j. T
  1169. FOCFUL_STRING:
    # n, ~4 X9 i2 s# m
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    / b0 k+ }9 |" `

  1171. % R/ I6 o  a& O; p/ |: r

  1172. # T4 C( A8 {( s3 z$ a! a  t% W
  1173. FOCFUL_WRITE:& @! j$ B# M$ J5 C
  1174. LDX #$00
    & D2 o/ h+ Q' }' X5 U
  1175. FOCFUL:
    ; `" h0 ~7 x. g9 S+ P( S7 P3 T7 [
  1176. JSR PPUADDR_PROCESS
    0 T# O2 C. @4 u' Z3 E% I
  1177. LDA FOCFUL_STRING,X: z$ p4 a. M, y' t: }" J
  1178. STA $2007, `% Y& \1 ]3 q5 ^1 @/ b* D# O' }
  1179. LDA #$005 ~  H" b6 k& f
  1180. STA $2000
    % q: _; M7 M, s' ?2 F
  1181. INC $BA' [4 _  b' k2 P
  1182. INX2 \1 }. ]6 o; W( z( x3 w! C: \) R7 t
  1183. CPX #$07) G5 A- X( `0 o( I5 O3 Q
  1184. BCC FOCFUL. v! d4 [; p5 m/ N3 u
  1185. RTS  h# }7 e  q  G! k! D2 w, P

  1186. + o) e" X* H$ t) f) A0 [# W
  1187. FOCFUL_PPU:
    % ^9 ~, v1 Z( P. r9 X
  1188. LDX #$00
    : ~+ z: S6 L' x: P& ^5 O
  1189. LDA #$62$ G8 Q) X4 T  e  ~$ S
  1190. STA $BA" E) @  g9 }9 `( q, g: A6 g
  1191. LDA #$225 B; \/ N4 I  R2 f7 Z- ?0 Q
  1192. STA $BB
    , q# I( U9 _# N

  1193. * }+ b4 U( n& @7 F' Z

  1194. * t8 i" x9 }7 x! F, z  ^0 I1 e
  1195. JSR B_PPU
    6 H* u8 i' K* X. Z# f, {
  1196. JSR FOCFUL_WRITE
    8 Z0 V! l1 X$ H* T8 e
  1197. LDX #$00& n; O2 w9 `% [, Q
  1198. LDA $07A2
    1 e2 L! j- u! J* c9 M6 {
  1199. AND #$10
    - ^) n. C2 C# a/ r; q
  1200. JSR ON_OFF_PPU0 y8 F7 E; w0 l8 l& ?8 [$ C
  1201. LDX #$00
    % W6 S5 c7 e8 l
  1202. LDA #$71! N9 m: H1 T0 P8 H+ d
  1203. STA $BA8 p" w; M6 B9 |/ B  z* b1 J/ g  C
  1204. LDA #$22
    ; i, C  D2 r5 f8 R9 Z/ J
  1205. STA $BB
    ( t( U7 ?/ ^) ?% ]6 l
  1206. * ^$ T! e6 w5 @$ K* o2 G3 M4 m; P

  1207. $ x/ h+ g0 w' U
  1208. JSR B_PPU+ |* X: O: I4 Q# Z1 G
  1209. JSR FOCFUL_WRITE1 c  E" ?2 W# ?/ X$ u# ^
  1210. LDX #$00
    4 t) A+ C) g3 Q) r7 R
  1211. LDA $07A3( _8 g7 n& [7 F
  1212. AND #$10
    $ J# ^$ R& D# c
  1213. JSR ON_OFF_PPU0 y9 B; N. V8 {* M
  1214. RTS
    7 G0 S# x4 P! [2 v1 m& X

  1215. 6 s" ~, X* r: E2 F
  1216. BULCON_STRING:# M  U7 c$ M4 M0 h) z6 o
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80
    6 R- U. n0 Z/ J7 q( a2 ]

  1218. ' e4 J9 f' J* j& p2 n6 w( T) j' f
  1219. 1 ^/ L' M8 o# R* j; R, ]1 @: y
  1220. BULCON_WRITE:( i% c* w" g5 w$ _+ F
  1221. LDX #$00
    ( S* }! q7 \- _/ s9 ?
  1222. BULCON:
    ; m2 K. d% O- T& r5 n
  1223. JSR PPUADDR_PROCESS
    7 v/ B  w7 a" k" W
  1224. LDA BULCON_STRING,X1 {$ H; N- B" L+ a  u
  1225. STA $2007" Q8 }- @( Z, O  k- l9 C
  1226. LDA #$00/ Y* |3 A! X# c
  1227. STA $20004 A0 X1 i/ c# Y' t: x  U
  1228. INC $BA2 [$ Q$ O. b: D5 r# F
  1229. INX
    9 w) O! z. d: L) f/ x$ i* k  U
  1230. CPX #$07
    ) O) x6 }4 a2 b; ]
  1231. BCC BULCON1 b" y  r5 H3 t1 K+ f& B
  1232. RTS
    3 j( i' W/ F/ [, m* ^: Q9 J# d3 c5 l
  1233. 7 z1 p9 w; t3 G
  1234. BULCON_PPU:
    ; ^( d8 p) X( p! ?0 L
  1235. LDX #$005 W! }) c( ?, l' I9 j
  1236. LDA #$62
    7 T1 ^" A! V! z0 \3 ?
  1237. STA $BA: e  n' m+ \2 }6 p) a* P
  1238. LDA #$21
    5 l1 O7 G* n; |$ v6 o7 X
  1239. STA $BB
    8 A" {7 J& r$ C  D. |) W
  1240. + O0 {5 S: K, `- j8 f) v

  1241. 3 b/ a" M( S4 u+ p( S
  1242. JSR UP_PPU, E) Y" B5 {. U& _7 e
  1243. JSR BULCON_WRITE3 F5 i7 r" y" n0 x- }2 T
  1244. LDX #$007 k6 k$ O9 r+ [% D
  1245. LDA $07A44 F7 g2 z9 f3 s+ {
  1246. AND #$08
    % o- T6 F, S/ C9 w- P7 Y  k2 v
  1247. JSR ON_OFF_PPU
    # d0 Q1 L3 {0 G. Y5 p
  1248. LDX #$002 n% n7 {  R$ O& _: {$ S
  1249. LDA #$71* l5 h$ }* V4 g4 i2 z
  1250. STA $BA
    ) w- G" r/ M) b/ ~
  1251. LDA #$21' w' X$ U. d; _  C2 C
  1252. STA $BB4 n. C( k) R+ U. b  B

  1253. - I! R8 i3 r$ T. ~- V' t, R
  1254. $ Z6 p" w+ n  ?% b1 D, g& d
  1255. JSR UP_PPU' x1 z) K9 [4 J. ]" V2 ]* }
  1256. JSR BULCON_WRITE
    7 C) r6 f* z2 ]1 w1 L, P5 s
  1257. LDX #$00- h- R$ [5 I# K! d6 v: e- D
  1258. LDA $07A59 ]+ r% [2 C$ C* }2 X
  1259. AND #$083 i- p% \) D5 T4 ~
  1260. JSR ON_OFF_PPU
    6 ~$ W' d9 p2 k4 {' h' M
  1261. RTS' [) s: B& r% K. m& D- b

  1262. 7 u3 u$ r! d) m4 t' U; a0 ~, K$ y* m2 w
  1263. SPEBUL_STRING:1 e# R% X6 L0 Y- V- j; b8 F5 a" o
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    ' d" B# c3 n) k3 p( a  M7 l' u  p

  1265. , v* k& q# D, ?% {" r/ ~# v

  1266. 6 E! ^$ p4 z  \
  1267. SPEBUL_WRITE:; i/ K# D  e( }: \+ b. P# {
  1268. LDX #$00: Y* Z" L7 w" b; \  L5 v
  1269. SPEBUL:5 E! W, y- P( h
  1270. JSR PPUADDR_PROCESS
    5 r! s" Y3 r* z) v0 M0 {
  1271. LDA SPEBUL_STRING,X1 d$ e. G+ X5 N1 c5 V; ]! e
  1272. STA $20076 ?( Z' B; z% o* _4 B
  1273. LDA #$00
    : k( Y2 w7 N5 ~: e1 ^0 R; h
  1274. STA $2000
    1 m, E$ |6 m& Y/ q
  1275. INC $BA
    & j: k! T+ E! x+ ^. H) ]
  1276. INX
    + I" w0 a( l& a1 y3 y" H
  1277. CPX #$07
    8 u# a8 x$ A& Z* @5 v  W( r
  1278. BCC SPEBUL8 o- t% e7 w0 r
  1279. RTS
    3 ^* A0 S- }  G# D

  1280. - J& J# x. ^  l; n% z$ `0 c
  1281. SPEBUL_PPU:0 N3 [/ x' D" a' N
  1282. LDX #$00& o5 i8 }( ?2 ~' D+ C+ X
  1283. LDA #$A2
    % `9 V( l0 }) q. j* I
  1284. STA $BA
    . q) l5 H' q* o$ N# P  K. Z
  1285. LDA #$21
    7 W; j7 K* Y3 \; ]9 j/ r
  1286. STA $BB
    2 G& \* P+ ?) K" }1 n* u$ _- k
  1287. % I* s  D) q! P7 \1 I

  1288. $ U6 R" L: P% P) q$ o
  1289. JSR DN_PPU1 L4 y# w+ @& r9 d4 d2 |, D# R
  1290. JSR SPEBUL_WRITE
    + y0 q$ t2 N. B, T' V3 Y4 b1 s& D
  1291. LDX #$00$ |! `: }( D5 ?" ^6 b: t& `: w
  1292. LDA $07A4: t6 E+ E3 d2 }" E+ @- q
  1293. AND #$02. u% d' G6 \9 t3 T: G% }0 X" {# m
  1294. JSR ON_OFF_PPU
    6 o* M2 H2 t9 z9 d2 }
  1295. LDX #$00: Q! m' u0 [; n! d
  1296. LDA #$B1
    $ g, i0 r6 z. t, _
  1297. STA $BA7 o% ^# L* i- r+ h
  1298. LDA #$21" E# X* @/ @& W- w
  1299. STA $BB
      M6 ^+ S  A/ x; v# L
  1300. - @& Z- Y- v, {* e0 r; w
  1301. 7 W& u- j% `8 E( R8 D4 f0 K
  1302. JSR DN_PPU
    . J! b$ R; G0 j. R6 k& e+ _
  1303. JSR SPEBUL_WRITE9 c" |" `4 x, L3 v1 o
  1304. LDX #$00: U0 M) c) w% \
  1305. LDA $07A5
    4 V7 Z2 p% U& e+ u% _6 r# b
  1306. AND #$026 ~. z/ W# B4 X, A; }
  1307. JSR ON_OFF_PPU! h( g9 T/ m1 L+ o
  1308. RTS- |& J* k# B" t2 f5 o- R, H; _% ~! F  Q
  1309. 4 ?* ^! ?& Y' M* t
  1310. .ORG $A500$ @; F+ A6 Y7 q* a) N5 Z
  1311. CLEALL_STRING:
    ) G0 C- `7 n4 d
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    " v* r8 s1 K/ J: a0 q

  1313. " U8 u- I/ E; t: X6 V

  1314. 8 m4 d* l- B6 F! K
  1315. CLEALL_WRITE:
    # @" [( X: |; ]0 }! i! o
  1316. LDX #$008 {0 e' q5 y8 n7 t9 M9 H
  1317. CLEALL:
    : s9 O0 d* u0 ]  U5 N* E9 A4 l" a
  1318. JSR PPUADDR_PROCESS: r0 R1 _$ u+ k8 \2 G* x4 e
  1319. LDA CLEALL_STRING,X
    / {7 o6 J( T2 R
  1320. STA $20074 c5 o* Y4 |- s! G2 P4 x
  1321. LDA #$009 ^1 l! p0 Z+ G9 C* c
  1322. STA $2000
    ) g3 }4 d" w6 t4 ~* \- Z
  1323. INC $BA/ v  M+ Z0 i& E0 Z2 `
  1324. INX
      r& u% A( |& [. U4 ?. o% M. y
  1325. CPX #$079 `- A/ u2 ^3 A
  1326. BCC CLEALL
    % ~4 {6 Z9 J+ T5 I3 x
  1327. RTS
    , @  \: x" k0 Z2 `; v
  1328. 3 d/ V/ n2 n. p7 L( z
  1329. CLEALL_PPU:$ e5 ^; H* D& k! `; b" ]
  1330. LDX #$00
    . o& P9 ]! A, o
  1331. LDA #$E2/ G, c: H* y1 ]1 |. i" q5 _
  1332. STA $BA
    * I% J9 @& Q8 S% K7 O0 j
  1333. LDA #$21
    $ C* r) l4 f+ ?- _$ j
  1334. STA $BB! ], Q) l  F" T" Y# B8 j( O0 S0 ~
  1335. $ B- g; N0 o. J# f- ]
  1336. % t5 u" p7 H, H) n0 n  h. X
  1337. JSR LF_PPU
    ( O4 [; p) @/ ~9 R9 d% ^: c
  1338. JSR CLEALL_WRITE7 C0 D) l1 D# o8 `
  1339. LDX #$00
    4 k3 A. P, ]$ ?) S: |7 w! {* C* z" S
  1340. LDA $07A4# E2 a+ }  k0 k# y
  1341. AND #$044 i5 P8 X3 O0 j! ^" V7 B8 r
  1342. JSR ON_OFF_PPU
    ( }+ b- n( Q, p( M/ V2 Q5 d
  1343. LDX #$00
    $ b  F/ B: L. |) f3 {& F# O! b
  1344. LDA #$F1
    ' @& K+ A4 ~" F' J
  1345. STA $BA$ Y& W8 S0 e  k# t$ m
  1346. LDA #$21& K- x+ n! m$ p2 j4 H
  1347. STA $BB, G) D; O1 I0 c3 V, a4 _2 h6 I/ Y
  1348. + n- o! ^) R. w  @
  1349. * \5 E1 l  r! `2 y5 Q: Y% W
  1350. JSR LF_PPU
    5 D- J! J. B7 ^# J
  1351. JSR CLEALL_WRITE
    & r9 |4 F  Z; `* ~, t2 G
  1352. LDX #$004 y; @( ^; Z- T  g* A! M
  1353. LDA $07A5
    # X: a: ?8 o$ n0 J1 }
  1354. AND #$04
    8 j/ P1 \. j% D4 V# i3 N- M! Q7 y
  1355. JSR ON_OFF_PPU
    ) n% s1 o0 k5 V1 t
  1356. RTS
    $ r2 n" L( R& y" Q: B- u
  1357. 8 _% T- V) [1 L  Y  _- B
  1358. HARDMODE_STRING:
    ( ~) U4 I# C, A) F
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80
    ; q$ N/ }' Q7 I. z2 u  P3 m8 Y

  1360. 1 i! Q& V' y: I. Y( @+ L' O  z

  1361. ( M6 @' O3 V# J3 y, l
  1362. HARDMODE_WRITE:, q" E! U' ^4 R9 H* V4 Q0 \( X
  1363. LDX #$00
    ! ?2 @: U# N: V8 Q! a6 }+ O- G, s1 ^
  1364. HARDMODE:
    1 `2 j# m7 k/ x
  1365. JSR PPUADDR_PROCESS
    8 |/ m6 x- ^1 C: f5 y
  1366. LDA HARDMODE_STRING,X
    . ~8 m* d$ Z, g4 K6 f$ ]/ }, G
  1367. STA $2007) d( n2 ~' ~# r- O
  1368. LDA #$00: \/ }+ W" D- J& [' A
  1369. STA $2000; [1 i( r+ @  b) P+ E- e
  1370. INC $BA4 r' d" B* C2 G) u$ m( N5 J
  1371. INX' O1 G8 t, H- B- ?3 B
  1372. CPX #$07  F2 K" p/ M. \; t
  1373. BCC HARDMODE
    $ x1 V1 T# {% H) C4 C5 B3 T. A) k
  1374. RTS5 G8 C* j/ Y3 ~

  1375. / q* C' t3 y# z$ K) F! }
  1376. HARDMODE_PPU:
    % u$ o7 K' x6 ^1 R+ D' l; |2 C  `
  1377. LDX #$00
    ( Y9 j) u/ [( }. ~( X
  1378. LDA #$22' j+ X" n" [! U3 ]7 P
  1379. STA $BA; ?. i6 W4 Z* W1 _3 N4 d  \
  1380. LDA #$22
    5 m3 M: |' H; G- U5 \& ^
  1381. STA $BB
    / W7 |5 y. ?" n) K1 G; _- {4 q7 _
  1382. JSR RG_PPU
    / Y+ T# f3 v* E! [5 C# M- f
  1383. JSR HARDMODE_WRITE5 z5 l  e7 e6 u3 F1 y6 X
  1384. LDX #$00& S: e! t' g2 h) C. Z0 ~* w
  1385. LDA $07A4! B% [$ s- a& ?9 q/ d
  1386. AND #$01* i  `) v9 l8 m4 n
  1387. JSR ON_OFF_PPU
    7 m( _+ |" b5 b4 S/ k9 A( X+ T. o
  1388. LDX #$00
      H$ d1 p4 O, M
  1389. LDA #$31$ `* f4 I0 T3 f; e
  1390. STA $BA
    - ^* Y) [: S/ j2 R  V8 P3 G
  1391. LDA #$22
    ( A" s/ Y4 g1 B4 J
  1392. STA $BB
    ' K4 \( U* C9 p' Z/ `( j( r9 i

  1393. ! f7 f' `7 B1 a% I7 p' ~- w

  1394. + f# q" h0 I: u. _, f* z7 j
  1395. JSR RG_PPU
      `5 ]) M$ l7 g5 N/ v2 G
  1396. JSR HARDMODE_WRITE
    6 ]/ z3 f( `/ K+ j% H
  1397. LDX #$00) K4 @* I5 W8 O- ~# O7 p
  1398. LDA $07A5
    ) ?+ S9 D- g- M( k
  1399. AND #$01
    4 D- v) w: o$ I  j4 Q* H
  1400. JSR ON_OFF_PPU
    . j$ g5 t1 G( z
  1401. RTS
    7 Z$ d, [# V2 f4 z
  1402. " Z0 `3 B" k* |/ p, i9 n0 O$ q
  1403. B_TO_JMPSTG_STRING:
    + t+ |5 C) e: E9 g  o: c
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    , T8 Y" h! W8 W- R- P; b5 S0 ~

  1405. * `! e% c0 V- }" G
  1406. : |6 s# R* k2 e. L$ u& N% H
  1407. B_TO_JMPSTG_WRITE:1 O$ m# t" Y% R% N1 s2 W
  1408. LDX #$00
    / Q/ @: ^" w. i* E& v" w2 n
  1409. B_TO_JMPSTG:
    7 Y- @* p/ t" X( x
  1410. JSR PPUADDR_PROCESS+ s1 X4 ^+ ^0 ]8 b$ Q3 }2 N
  1411. LDA B_TO_JMPSTG_STRING,X* v& ?  x8 e$ q
  1412. STA $20078 I, z" o1 C3 [  Q* J7 l
  1413. LDA #$00
    # d( m6 _5 A$ {: b
  1414. STA $2000
    7 \9 p2 L& I/ ~# r5 e: Q! k3 v$ x
  1415. INC $BA6 |0 F" x: }% a1 Q7 G
  1416. INX
    % k' F& G1 y; z1 c7 x, q
  1417. CPX #$0D8 y4 @0 i/ I6 y9 `+ W1 B& [
  1418. BCC B_TO_JMPSTG& `& u& \7 J; S: M, a
  1419. LDX #$00
    9 E# N. [# D/ l" [  k
  1420. LDA $7FE05 B9 T2 H/ ^5 p) S9 D3 R
  1421. JSR ON_OFF_PPU
    : r. J5 Y+ g3 X
  1422. RTS  o; e2 Q3 t' h9 P  W$ L
  1423. 8 y7 e! W* h6 u
  1424. B_TO_JMPSTG_PPU:
    * n* t) m0 ~" J; [& a
  1425. LDX #$00, S. E. j( q  g2 J; u8 T# h5 x
  1426. LDA #$68, e1 t1 t  {7 s- [0 C/ w! R
  1427. STA $BA
    8 E! v* Z" Z" ]# d  r4 B
  1428. LDA #$22$ P' N$ g+ |0 b9 l
  1429. STA $BB
    - f% x+ l  p9 P( J' P: C/ k1 ?2 F* T' B
  1430. JSR B_TO_JMPSTG_WRITE8 o' J: H  y) I/ X& r# u
  1431. RTS6 k: F" W! n8 v1 a! F

  1432. - v! P* c* c5 x- v* ~2 g4 N

  1433. 3 W% ~* P2 r9 \% I1 S- y
  1434. A_TO_PLAMOD_STRING:4 e' K( a" Y0 \3 S/ ]. S: }# t
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80
    ' Q( K+ D( b4 w3 a

  1436. $ |4 {& |% w( x/ Q
  1437. ! E: `& j2 y' i! _' c9 C
  1438. A_TO_PLAMOD_WRITE:* H5 W& _" \& }( m2 ~- m9 u
  1439. LDX #$00
    2 E4 Z7 y( q/ D- g* y2 c
  1440. A_TO_PLAMOD:8 K. @! H0 `' m6 o3 ~2 P
  1441. JSR PPUADDR_PROCESS9 o6 {6 s/ Q6 S
  1442. LDA A_TO_PLAMOD_STRING,X
    . }/ l0 L5 W& n6 ]) v$ E, ?6 ]
  1443. STA $2007
    8 h2 n) w+ N  N3 S9 h8 r" T* E
  1444. LDA #$00# n) s# b4 M0 V
  1445. STA $2000
    8 z% J! O( n0 v% I- p; \$ \* M( k
  1446. INC $BA
    3 h% c7 P  b+ T
  1447. INX! }1 y) c+ Q0 c# A6 Z8 J' `
  1448. CPX #$0D
    # A  X$ v' _' p
  1449. BCC A_TO_PLAMOD
    7 N6 S+ E  r8 [* X+ ~, Y! C
  1450. LDX #$00
    5 L" p! y2 o# R7 Z7 o3 K" e
  1451. LDA $39
    ; T$ f) w8 N: |) l
  1452. JSR ONE_TWO_PPU
    ) b  I0 Z( D) q5 V; L+ t6 f
  1453. RTS
    7 x. ]  Q# d; P/ P# U" N' z' s
  1454. : e$ R; y. J; b& b- C2 m0 s' c
  1455. A_TO_PLAMOD_PPU:
    6 O- s7 A# k' g- f
  1456. LDX #$00
    ( [+ ~3 u0 Z4 I- k6 p! [9 F
  1457. LDA #$A8
    * o! X" ~; m- U$ J# p! u
  1458. STA $BA5 u" P  y' h! g, h
  1459. LDA #$226 ?& \% z9 g) B% s7 Z
  1460. STA $BB
    . `; d: i$ H, H' D5 T  R  P& A
  1461. JSR A_TO_PLAMOD_WRITE
    7 V: A+ C/ q5 u" P; `9 z9 H
  1462. RTS" r% w* `. }/ q- T
  1463. & i: W5 G  I' f1 h1 G" [1 {
  1464. MOVSPE_STRING:
    7 Q1 l0 ]  L) c$ K3 I
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80% i$ X5 T4 j1 b9 K  o8 L
  1466. / _  Q: x* |) t. E* y1 {

  1467. 9 ?$ q* F; i+ v
  1468. MOVSPE_WRITE:
    ; L" z- x$ }2 b
  1469. LDX #$009 U) |( V. T* v; I
  1470. MOVSPE:: `" r( r7 D# m2 j: A
  1471. JSR PPUADDR_PROCESS& a! o: j; t# B
  1472. LDA MOVSPE_STRING,X
    : |- J! U$ n9 Y3 K" u( E
  1473. STA $2007* r! B" f8 L* c  `
  1474. LDA #$00
    ' @  `' }/ b5 |) Q, `
  1475. STA $20001 o& f6 w. X! d1 w; [  a5 g7 ]4 K
  1476. INC $BA
      m" s9 |/ q. X4 |
  1477. INX5 s1 w& K$ C  t6 n/ j6 @
  1478. CPX #$07
    ' P2 m" x4 N- |( Y0 w
  1479. BCC MOVSPE
    % B3 o' P, V! @
  1480. RTS9 V1 W! `& k  V; R
  1481. ' r& n1 s1 ]- H5 ?7 C
  1482. MOVSPE_PPU:
    1 \6 T- B: Y0 Q+ d* n. |
  1483. LDX #$00; y, f% M# C) Q+ f' p. V: d
  1484. LDA #$69
    6 W2 x' [. ]& @/ {7 n# w/ P5 P
  1485. STA $BA/ R0 z! L9 d; F: Q
  1486. LDA #$21
    ) D4 M1 L) H  h7 v5 a1 C
  1487. STA $BB
    7 ?# [" ~3 n, U  F, g' B1 L
  1488. ( d2 g1 u- b. O- I% P: X

  1489. " d7 l6 v5 l( q; B8 m
  1490. JSR UP_PPU
    " ~" m  t0 B  f5 a
  1491. JSR MOVSPE_WRITE
    5 B5 t4 Q5 k, K1 y
  1492. LDX #$00
    / H# k- U: k' ]$ f- j8 i, g+ `/ Y
  1493. LDA $079F
    9 w3 `9 D5 N, E1 e, j4 \3 Z, Y. ?
  1494. AND #$088 [4 F! D! Q, w2 S' u8 r! X
  1495. JSR ON_OFF_PPU
    ( \3 g, Y& C- j
  1496. LDA #$80/ J. i+ u8 d9 z  F( E! a
  1497. STA $2007
    # i( K3 h7 `" A2 d8 n% s" w
  1498. RTS
      e2 Y& R5 _7 B: R& N
  1499. $ c6 _% m# c  z! E2 h; B. ^1 I4 @
  1500.   6 T" K! B  ^, a/ J( b1 [4 J
  1501. UNLJMP_STRING:& g) l8 p1 ^0 Q' ~
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$800 h0 _6 i3 o& X1 O8 Z" J
  1503.   h6 U3 i6 _3 y7 M% y! ?4 }
  1504. ( h3 }. j) V1 r% s
  1505. UNLJMP_WRITE:  G# S0 C, Z: k) j
  1506. LDX #$00! U* _3 t/ t  K1 \2 D1 [, |0 t
  1507. UNLJMP:
    8 M# d, j4 {. n: X" ]9 W& x( F
  1508. JSR PPUADDR_PROCESS
    1 `/ _7 W+ g- p$ s! c9 s+ D; u
  1509. LDA UNLJMP_STRING,X
    & C& P0 S# F! ]: ]9 z0 _. y$ Q5 X
  1510. STA $20070 ?: R  r. V( b- W
  1511. LDA #$00
    ( n8 X! ~! `' e+ `$ Q5 x' z) T
  1512. STA $2000  O! ~, d1 c6 E
  1513. INC $BA
    , T" W& _! U0 G8 r
  1514. INX
    & t) X! C& a2 x4 c+ G, b
  1515. CPX #$07+ d+ _0 r. \4 T2 C. E# D' o
  1516. BCC UNLJMP4 [4 ~; c( i4 z2 M+ Q( R* y1 g
  1517. RTS, z7 `9 {, `, b* p' }. Z2 n0 N* T

  1518. ) ~& K. ^8 t8 y# Z
  1519. UNLJMP_PPU:
    * g  X' e& f' m$ u; e/ `; W. b& e
  1520. LDX #$00
    9 S( ?( O1 Z. l, X& P
  1521. LDA #$A92 ]; N$ ]: k* D9 [0 C
  1522. STA $BA
    3 b" l  ^2 b: Z
  1523. LDA #$21
    - K  {6 m( y, \9 F7 \5 H" e! K
  1524. STA $BB
    0 C* b" }$ {) H  K

  1525.   j! o$ K8 q3 q7 D
  1526. + F4 A! P. }( j) G
  1527. JSR DN_PPU
    ! \$ F/ T' u# C4 o. _* u
  1528. JSR UNLJMP_WRITE# \) J6 f+ u1 p$ a- r
  1529. LDX #$00) t% f9 {! A6 g9 V& Z2 n  O' B
  1530. LDA $079F
    + U- r1 [7 X( ]8 d
  1531. AND #$04
    6 K$ `2 e' x5 i: K% A& {
  1532. JSR ON_OFF_PPU( a" V2 B0 `* ]" j# R
  1533. RTS
    % ^( N! A- G9 l, t! @( x7 |* O4 G
  1534. # s! q3 p# q. I  h0 }( d' T: h: c
  1535. 4 z6 t  i* b" a8 ?# ^
  1536. DESTRO_STRING:3 K, z8 \, z3 N8 ]! C* I+ ^: ^2 h
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    7 b7 E9 S/ E! Z' N5 c  e

  1538. 2 n" b/ Y' E' {
  1539. 9 q$ o1 ~% y2 f. ^5 Y8 R
  1540. DESTRO_WRITE:
    & _' Q) |# y, B
  1541. LDX #$00$ b' d1 Y4 l$ a" g. _/ G" u/ c
  1542. DESTRO:6 O, Q0 ?9 U" I6 L; J: c" @
  1543. JSR PPUADDR_PROCESS
    $ j2 [; H. m% B7 N; v( U9 H
  1544. LDA DESTRO_STRING,X9 x; c; `0 i; c+ Y- b
  1545. STA $2007
    . t! K3 Q) r% @0 ^9 q
  1546. LDA #$001 E8 F0 F) c1 ^' @# |0 U. }1 z
  1547. STA $2000
    9 d' O; S6 i, Y$ u% @6 {% D1 r4 n
  1548. INC $BA
    % U7 Y/ \7 h, H3 T
  1549. INX
    3 z! A: y! s: |
  1550. CPX #$07
    7 @& m4 P1 g( {$ _1 y4 |: ~  Z
  1551. BCC DESTRO
    / a  ]+ X6 j6 c: z7 X4 d) x
  1552. RTS  v. H1 Q$ L7 l
  1553. . n1 Z- @, B2 Z; a9 P# i8 X
  1554. DESTRO_PPU:; z7 E  u0 z( {9 w% v3 _
  1555. LDX #$00$ _+ y5 \0 V* T$ T0 B1 s& E
  1556. LDA #$E9
    9 q' v) v4 q8 }- n4 R
  1557. STA $BA
    + t% w( f# S* [5 R" m
  1558. LDA #$21
    5 U7 T; u  a/ }$ l& ^* K
  1559. STA $BB7 B. [1 i# _! |6 N& {5 K* t2 f+ b

  1560. 5 v- U- o$ c. x8 d: O! s
  1561. 7 Q1 J9 ^* T7 T
  1562. JSR B_PPU( c4 s$ P, O7 M8 t8 U& |
  1563. JSR DESTRO_WRITE" W3 X# a8 E5 m' s) C/ I
  1564. LDX #$00
    ; R% b! v1 z" {
  1565. LDA $079F
    5 X, G& K8 N, O3 c+ e& d
  1566. AND #$40
    * T% N) c7 x- Z) o6 G) A
  1567. JSR ON_OFF_PPU3 }3 ^- {% y$ d2 S. X! v( @* K
  1568. RTS* A+ W- ]+ U4 ^$ W8 G  x
  1569. 0 ?8 g+ [4 I  c" ^" o  }0 w. N
  1570. ' H2 a8 a/ w6 A' Y% J( J- }1 S
  1571. EQUBUL_STRING:
    ' u5 U# l  m5 M, Q/ V% H
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$806 l! d* z+ u6 l# {( f5 C4 b; z
  1573. & u) L7 q; R* V/ e+ y. Y
  1574. 8 T3 b$ R6 I5 g1 h, m0 c4 O4 b
  1575. EQUBUL_WRITE:
    7 u0 `* l, _& @6 X
  1576. LDX #$00
    1 }) x& N. o6 K6 ^) N  p4 G
  1577. EQUBUL:. n7 a' [" i" H$ U! X; I2 A
  1578. JSR PPUADDR_PROCESS6 }' I3 w# U' s( \# i
  1579. LDA EQUBUL_STRING,X0 L. @# u5 U( `2 C' l
  1580. STA $2007
    * B1 V' e' j0 o/ \9 K) `
  1581. LDA #$00
    ! Z6 K# |$ u  g* l. v
  1582. STA $2000
    2 k/ i( `+ d/ E! e
  1583. INC $BA
    ( [6 g+ I4 n4 {7 k3 b1 x, s, w3 q
  1584. INX; T7 N: q' A4 c9 J* k
  1585. CPX #$077 W) ^: i9 ?; E7 z# J) G' u
  1586. BCC EQUBUL/ G8 d" |9 n& ^, K, r
  1587. RTS, S) n3 E0 H" v! |, `) @

  1588. 9 D9 _2 ~9 Z0 u' ]" A5 q0 X
  1589. EQUBUL_PPU:
    9 y  ~/ [5 m& X' |6 A2 }# x
  1590. LDX #$001 g; d/ U1 g& N! j4 z2 p. S! B
  1591. LDA #$29+ y$ B1 R0 @2 i" [
  1592. STA $BA
    6 e' F+ `/ x) p& A
  1593. LDA #$22
    . B. q' j- s  A8 h! d+ h& v
  1594. STA $BB& w- d, S! l& `3 S( l3 A: C2 s+ D
  1595. 3 M7 Y4 K9 l6 w9 F/ E
  1596. & e  g. \9 J- x+ w
  1597. JSR A_PPU
    : q: t* Y% N, N/ @0 d5 y
  1598. JSR EQUBUL_WRITE7 j% f  b+ @. m+ d7 v( n
  1599. LDX #$00
    " e( \0 [% ~! \
  1600. LDA $079F) g: z9 @3 C1 R" `6 M& I
  1601. AND #$80
    ( i, R/ `& G0 n( j
  1602. JSR ON_OFF_PPU+ \9 m1 \- F9 c, ^+ J; T
  1603. RTS3 C+ a2 ^8 i7 c! z! t$ a3 ]

  1604.   m$ _: @3 O% i; j, P5 C% }! o) J. i
  1605. 2 N" v5 ?9 O* R1 [. l! n2 F

  1606. & J' X+ o" C& h3 q2 d7 {
  1607. BULSEL_UP_STRING:
    % B1 U' h: X; c% i
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$806 q0 J, k- F. n8 N, q8 {* Q
  1609. ; p: g6 r. j" d  _& {7 O
  1610. BULSEL_DN_STRING:( [- ^# c9 a5 r7 [/ [* b" {$ T
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$800 [9 Y3 d+ C9 R

  1612.   v% }3 u5 e& Z3 ^/ ^
  1613. BULSEL_LF_STRING:
    ' |, N# S! o. d0 N
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80
    ! n# f# W3 V, q/ ~

  1615. 1 Q' f2 i2 U" ~
  1616. BULSEL_RG_STRING:. E+ A' x; _" m: e
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$804 |; V) M8 r. R
  1618. 9 u0 W& Z& w: O+ h5 Y4 W
  1619. BULSEL_B_STRING:, F* m0 v$ e- x/ y
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80: T- t; k' P0 T' i# l) T% j

  1621. # {0 z1 Y' B, [. x1 P
  1622. BULSEL_A_STRING:
    0 R" a  p. O% K" V  Q" G: i* ~6 ]
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    ! i: u( e' O6 h& \" p: k. }2 Q* |

  1624. 6 l" ^% E* ~. J) h+ \$ O. T

  1625. ' d( g  v, f& a
  1626. BULSEL_UP_WRITE:$ W* p0 R( i' s7 I: z  J
  1627. LDX #$00
    $ o! Z& c+ s0 @; x
  1628. BULSEL_UP:' k/ ~- B9 W% M, ~. D  ?. y
  1629. JSR PPUADDR_PROCESS# u, S+ ^0 X% d: W
  1630. LDA BULSEL_UP_STRING,X
    . Z' b( J0 V' I0 n: _, P3 t& e
  1631. STA $2007
    , J" ?$ A6 m* t  P
  1632. LDA #$00
    7 {2 `- q/ Q! j; J6 @: F
  1633. STA $2000
    ' t. J% j2 V; o
  1634. INC $BA9 {+ l$ o8 [) P% o; j  V( x
  1635. INX
    & e1 P6 Z4 z6 ^! C8 J
  1636. CPX #$09( u5 y$ R! |' B' c: d
  1637. BCC BULSEL_UP
    ( c8 e7 Y. d  w4 s# r1 V
  1638. RTS# n  e/ Q2 W7 ?, g! E
  1639. BULSEL_DN_WRITE:0 @( R3 k; g  ^0 e, R. j: k1 a
  1640. LDX #$00
    $ c/ c% ~$ {: [; U. @% P. K0 m
  1641. BULSEL_DN:
    9 M) `1 t. W/ S# Z9 o7 f
  1642. JSR PPUADDR_PROCESS
    / A: l0 {+ [9 N% Q* k4 Z" M7 N: F% n
  1643. LDA BULSEL_DN_STRING,X: a+ U% ]% G: K8 t  O
  1644. STA $2007
    & G: G1 f; K4 p
  1645. LDA #$00
    " g  D  R0 P1 R- S. N+ I
  1646. STA $2000& x: n" b# T" J6 O
  1647. INC $BA: ]3 I6 p7 I. y  \% k5 C  ^
  1648. INX
      H! M+ f- h  `- p
  1649. CPX #$09
    , ?) q5 \- |; z0 l. q
  1650. BCC BULSEL_DN! |9 U- ?( e$ o' i/ e: R1 U, L
  1651. RTS
    4 y& q: W& T2 \
  1652. BULSEL_LF_WRITE:& @- ^$ o% u6 G( |3 u
  1653. LDX #$00* X0 ?, {: k0 \) H
  1654. BULSEL_LF:, k0 W/ ?. V2 |; `" F
  1655. JSR PPUADDR_PROCESS
    , n% j9 [( r8 [4 Z" t
  1656. LDA BULSEL_LF_STRING,X. C8 M4 }1 K4 b$ ^5 U8 l
  1657. STA $2007
    8 ~+ Z/ O) P4 Z5 t6 e# I; S
  1658. LDA #$001 Z) `% k+ `% W- ~+ C  _8 F
  1659. STA $20007 D- J( p! S' D! e" y3 T& G
  1660. INC $BA
    & q3 C) V/ S4 a+ P
  1661. INX) w7 A$ B! s# i1 t' u/ p
  1662. CPX #$09
    ; I( i, D, \+ W! E/ l
  1663. BCC BULSEL_LF) }9 Y( w5 v; y6 O  c
  1664. RTS- N. |' |" K+ ^& ^
  1665. BULSEL_RG_WRITE:) G4 E" {# t  \/ l2 S8 g& N4 a
  1666. LDX #$005 r8 v8 S9 o6 Z* w0 u3 r- V* P) v
  1667. BULSEL_RG:* v  O! E3 R  B
  1668. JSR PPUADDR_PROCESS  d( _! Y, j% R3 N' O
  1669. LDA BULSEL_RG_STRING,X
    3 d8 L8 A" t0 n8 O( W; F* K0 ^
  1670. STA $2007
    1 c9 r6 g( y9 q( E( N& X8 r0 u* o2 z) x
  1671. LDA #$00
    $ o, ?4 z8 c' Z, m
  1672. STA $20006 G% u( q' N. g9 @3 J' o# P) U
  1673. INC $BA5 j9 i+ }. O6 z' z* I9 b% s9 R
  1674. INX% b7 Z8 Z' c4 {5 U6 ~- O  w' y
  1675. CPX #$09
    & K0 v2 O) {4 s+ @7 m2 g: ^
  1676. BCC BULSEL_RG
    * b7 G+ ~9 `" \, t8 I
  1677. RTS# _" f. v5 q5 Y: K/ @2 N
  1678. BULSEL_B_WRITE:4 _1 `1 a) K4 U8 H
  1679. LDX #$006 S, H  ]& k& _4 s4 n% [8 h4 A
  1680. BULSEL_B:* Q1 k9 ]0 ^+ y6 m+ C( C& _
  1681. JSR PPUADDR_PROCESS
    7 W5 K  F1 ?7 q2 f* e( S' N
  1682. LDA BULSEL_B_STRING,X- Z6 A7 g0 n2 c) y1 O
  1683. STA $2007
    ) T2 q+ s! T$ Q5 H0 n! z
  1684. LDA #$004 w- ?$ a. v0 [7 o
  1685. STA $2000
    , Y- s2 l8 d1 X# k
  1686. INC $BA
    7 o/ _7 i2 ]! \* v% r+ ?$ e( d9 h5 {
  1687. INX% k' B% k, _* U% r  k* ^
  1688. CPX #$09
    $ f9 J& t: x$ Y8 R; I
  1689. BCC BULSEL_B0 D$ B( l  p+ J! e! d6 t9 _: f
  1690. RTS
    - ~& \1 Z8 M" E6 O
  1691. BULSEL_A_WRITE:
    4 R3 z# H! Z2 g# U# N
  1692. LDX #$008 I9 s5 D) J( r9 g
  1693. BULSEL_A:; I9 O6 B  e$ }: k
  1694. JSR PPUADDR_PROCESS
    , B8 o. Z2 z0 Q5 N* @- y
  1695. LDA BULSEL_A_STRING,X/ N5 d6 ?# |4 d4 h" l+ ~
  1696. STA $2007: j( z4 h+ b7 x# X4 L0 `- T0 ^
  1697. LDA #$006 ~; B1 F1 J: ~9 P+ h9 R9 X$ Y
  1698. STA $20005 D& o6 O3 J5 K7 i( j" T
  1699. INC $BA
    2 J* o8 K! ~/ k9 L2 b
  1700. INX
    / ~7 m, i8 G/ d$ U5 {; s1 h% f
  1701. CPX #$12
    5 _" g+ m+ T- i2 Y* R
  1702. BCC BULSEL_A
    6 p+ H; G6 h& z; R
  1703. RTS8 n1 Y' o9 p4 S0 A
  1704. 4 n6 ^2 c6 F* i+ b) @* w* t3 {

  1705. : D- ^' J3 w5 t% b6 b4 Z

  1706. % y( u& J: ~2 ]* ]3 `  L
  1707. BULSEL_PPU:
    & i" v4 A: A5 f. ?6 S! U! G% |: I9 o
  1708. LDA #$6C: D5 }" L  U. }
  1709. STA $BA8 o. U0 }1 j, m- S7 C' j
  1710. LDA #$21$ |" b! v$ B8 y5 O: Z' G0 |
  1711. STA $BB) H( ^4 ^) S$ L& F
  1712. JSR BULSEL_UP_WRITE$ ?5 }9 k; A4 p& l" Q$ i
  1713. 7 A5 e% N$ D( G" l
  1714. LDA #$AC0 N" C4 n2 J5 B4 R% i* F* z& v
  1715. STA $BA
    " e0 j, w+ U. c: |% t) k1 Y9 u
  1716. LDA #$21
    ! \/ i) q5 }% R2 |# |) a, \
  1717. STA $BB
    9 `: e0 I" B! l# A+ x  B
  1718. JSR BULSEL_DN_WRITE
    % D0 L2 ~; ]: j2 M6 J$ p) b
  1719. + L4 j: ]5 _. I% g: w, h& ~$ m
  1720. LDA #$EC
    7 `& e' M0 S8 _7 e6 l; z3 `8 C; V
  1721. STA $BA
    ( ?% G0 K6 S7 H8 k
  1722. LDA #$21
    4 v7 Q6 [: N( ]. l; C$ y# b
  1723. STA $BB
    0 \5 ^+ e2 q4 k/ j2 R: H- z0 w
  1724. JSR BULSEL_LF_WRITE
      l* `0 w3 y3 r' v
  1725.   L8 B" t7 |0 k$ v9 n
  1726. LDA #$2C" _% ?) r2 M* T( t" P+ }  m8 \5 l) J
  1727. STA $BA
    ( Y- ]6 S3 {3 ?6 p
  1728. LDA #$22! ?, M" w' l# m& F$ d
  1729. STA $BB! L* |* O. r3 \$ k+ Y
  1730. JSR BULSEL_RG_WRITE5 d8 D! V' Y5 }1 Q
  1731. 2 j: S$ P4 B% d7 Q8 n5 ]! ]1 i
  1732. LDA #$6C+ J6 K7 ]- W; b0 P
  1733. STA $BA' }# M5 _3 R# B! d
  1734. LDA #$22
    1 X: ?" Y/ X2 H6 k9 R: o7 H6 m4 g
  1735. STA $BB
    ( f6 v% U0 e- a' g8 P
  1736. JSR BULSEL_B_WRITE
    ! y. A+ Q4 g' M! c

  1737. ' l8 ?6 T2 Y( T. K/ q( n+ }& i
  1738. LDA #$A7& M9 U4 P7 ^+ [! e
  1739. STA $BA
    : H) v& y% B4 i0 L( v! a
  1740. LDA #$22
    & z# c+ j: o! _+ n& ~
  1741. STA $BB) V! {% x- F  j
  1742. JSR BULSEL_A_WRITE
    9 Z' K, k1 U: f  S; j
  1743. RTS2 e: X/ s# ^' V3 C" e# |* g
  1744. ! e0 b+ _6 f7 t1 g8 U" U/ a
  1745. 9 w3 ?( r. T4 C$ Y+ I8 x# \4 Q) e

  1746. 5 f/ `" x1 [2 f9 C1 U! h
  1747. UP_STRING:- J0 c4 |. ^7 S& U! b! F
  1748. .BYTE $9F,$9A,$806 J! |/ q2 d8 k1 S

  1749. 2 B% a7 Y! h1 v& b# K
  1750. DN_STRING:
    * ]. A! e, I; J
  1751. .BYTE $8E,$98,$80
    , v& N  E6 B6 v/ ]# c6 V
  1752. 3 d1 J, A- b# X  v  _: x
  1753. LF_STRING:
    + }# t+ F& k- I/ Q# Q) [+ O
  1754. .BYTE $96,$90,$802 U8 v; x: p4 M' q% G

  1755. 8 E& h( B( s0 c& E4 N
  1756. RG_STRING:
    ! C: v% s: S* g
  1757. .BYTE $9C,$91,$80/ `0 t* B) e. v! u* }7 J

  1758. 3 f- y! n' l' q9 t. S
  1759. B_STRING:) t4 F! H1 A0 G4 N3 s
  1760. .BYTE $80,$8C,$80
    9 k( I; U/ ^; o# g

  1761. . ?# \7 I6 J# }1 m8 ~2 i
  1762. A_STRING:
    ( T' V0 t; T' Y
  1763. .BYTE $80,$8B,$80
      D/ C4 ^( V1 k; {8 h; T" l% O
  1764. * d  \& |5 W5 r) v# Q
  1765. 9 a" t$ K& W& t) x
  1766. UP_WRITE:
    5 j: p1 B& U5 P  a( l1 T
  1767. LDX #$002 J: ^+ S% D' S9 @& V
  1768. UP:
      N/ ^; s; y( q& d2 C
  1769. JSR PPUADDR_PROCESS$ p( |2 l2 j0 |3 N( r2 T, ~* u7 `
  1770. LDA UP_STRING,X+ n! f: l& a6 K7 T3 s) a& b- x& v% z
  1771. STA $20070 t3 C* @0 x& l! t$ I
  1772. LDA #$00
    8 g, @. M' V( A& F& e% S
  1773. STA $2000
    5 i/ K% M6 S) B1 }" j
  1774. INC $BA
    - m/ u: }) f, E2 P
  1775. INX
    & C. }- b8 ^1 C+ z8 h3 \
  1776. CPX #$03' K, e$ V9 D+ P! e) p: n
  1777. BCC UP
    & Z* b1 F5 p: l$ K4 \
  1778. RTS
    ! a' h1 i2 @& @
  1779. 5 ~- N' y& ~! S9 y9 g# y
  1780. DN_WRITE:1 f3 T$ Q3 @# I9 J
  1781. LDX #$00
    ; a$ p- n% J2 c5 B: L- B
  1782. DN:
    ) F+ Z' V2 X- F5 X  k; L
  1783. JSR PPUADDR_PROCESS9 B0 f" N7 L2 {4 H/ }9 [
  1784. LDA DN_STRING,X. G$ V, h# V6 p( N
  1785. STA $2007; f. k" I: y$ V! p
  1786. LDA #$00" U) k% n; v5 X" X& G+ U) j# z
  1787. STA $2000) B  r) b7 y5 R# O, X
  1788. INC $BA
    : g+ O3 x+ ~* R( X2 d- z
  1789. INX1 \+ E7 s7 c& n6 c" u5 t# m
  1790. CPX #$03
    ) c$ V- L" ]8 K, S
  1791. BCC DN8 ~, ^( u. b0 q0 U
  1792. RTS( A# ?' F) g% t* V/ }) n6 Q
  1793. + i5 L* D& ^8 _# O( Z7 d+ L
  1794. LF_WRITE:
    : k- l& o# A2 k; ^7 F3 P0 i  K: E/ ]" V
  1795. LDX #$00( i5 p5 Z; \; m7 T* T  Y! H. m
  1796. LF:
    $ \5 h0 k5 @2 Q
  1797. JSR PPUADDR_PROCESS+ g1 N+ V8 p& ~& a- j) E' z# y: I
  1798. LDA LF_STRING,X
    2 u  S/ U# R- r2 r/ ?! X
  1799. STA $2007
    . j" Q  G/ T7 ^
  1800. LDA #$006 i5 i1 n& h+ M8 _) G8 N8 A- e
  1801. STA $2000
    : d: _, o0 Q8 D0 u9 J
  1802. INC $BA
    - t* m1 n2 d$ }
  1803. INX
    8 I- t! T/ g4 ^; X
  1804. CPX #$03
    . n! |1 h$ ]! z  l! [# }. C# q
  1805. BCC LF2 F8 x/ ^8 w( g" D
  1806. RTS' U; C+ p$ E! F: r5 E% |

  1807. ) a: h4 k  N# X+ T8 g% _. e
  1808. RG_WRITE:+ {. H2 n3 E: u# {' @" m- Z
  1809. LDX #$00
    2 |5 h8 c( J1 T  {
  1810. RG:% u' ^& ?9 `9 P1 n7 Y0 ?# f
  1811. JSR PPUADDR_PROCESS
    - F$ X6 C0 p0 m8 W2 J
  1812. LDA RG_STRING,X8 g2 {6 i$ W1 Y, N2 t* S  E
  1813. STA $2007
    : h$ z1 L0 k& Q
  1814. LDA #$00
    : T# c$ Z: s6 q, s4 g
  1815. STA $2000
    5 n. C2 r5 W7 V* U3 b
  1816. INC $BA
    - D# i. y4 w$ @( y
  1817. INX8 a/ i; u0 Z# R: T; C% [
  1818. CPX #$03
    0 m: X( H7 {/ Q- K! d0 U9 y1 w, I
  1819. BCC RG; `+ t  t) b% [; L$ O% v
  1820. RTS/ P% ]+ W; n2 T, y9 v1 F

  1821. 6 n( V+ E% t6 n: ?. a6 S$ z
  1822. B_WRITE:
    9 z  Y' ^% x# c8 u' p5 l
  1823. LDX #$00
    8 ^" X. q/ |! @' `
  1824. B:
    . r$ r* C5 O, v: y3 ^! w
  1825. JSR PPUADDR_PROCESS9 e. c( `4 s6 g7 k$ Y
  1826. LDA B_STRING,X8 P! V0 o2 w. x; v9 m. v
  1827. STA $2007. Q& j  j1 l  E4 F* s  Q
  1828. LDA #$00
    8 A! d6 f, _# B0 a9 F/ Z
  1829. STA $2000/ g. W: n1 P1 P: G$ r. @
  1830. INC $BA
      y# a8 R4 i$ t, ^3 Y
  1831. INX# a7 R! j3 p- |  c
  1832. CPX #$03- Z" p# J8 `' D/ P
  1833. BCC B
    2 N; D3 Y& p" g# k
  1834. RTS
    0 R9 P0 }, Q; Z9 O5 f

  1835. & L" w! y" k+ w8 r- ^) k& t
  1836. A_WRITE:6 d9 |1 M4 u- ~4 M
  1837. LDX #$00
    ! ^. l6 i7 T( G$ [8 d. Q( f
  1838. A:
    5 k, ?7 |4 J5 Q( G9 d) C
  1839. JSR PPUADDR_PROCESS3 Q! u4 P5 D4 n8 ?; B
  1840. LDA A_STRING,X
    9 z4 H2 O- d/ H  O
  1841. STA $2007
    $ h1 H3 J1 N9 F6 r6 f2 C
  1842. LDA #$00
    % W+ O. Z$ V- t" K
  1843. STA $2000
    8 d0 w! h/ p2 F; R, |  b, M
  1844. INC $BA5 F! O( q! r9 D; S
  1845. INX
    - k8 d3 y7 K) K  n
  1846. CPX #$03
    9 u! g" @9 h0 j0 w
  1847. BCC A( Q9 y; u" j9 |# u; \1 \
  1848. RTS
    ! t2 x; t$ r% {8 D/ U# t: W

  1849. 3 G4 l) Y4 O/ x

  1850. + }+ x- {' r9 ^- K6 R. l7 k2 ^
  1851. UP_PPU:5 C0 q6 q6 q" q1 C
  1852. JSR UP_WRITE
    " C$ |7 t# _$ `% m/ l' i( ?
  1853. RTS' X$ w9 }! \5 E) `7 {8 O

  1854. 0 V8 O% v& `1 o& K" I$ D+ Z
  1855. DN_PPU:
    , }& }. w! s( m$ M2 z. @9 f; z
  1856. JSR DN_WRITE0 w' _* D, z. X' P! |& @( X
  1857. RTS$ \) A9 X6 F- E* Y" n& m2 G
  1858. ! {. Y; [% J+ j" j/ K2 r
  1859. LF_PPU:& y3 q& y6 p4 _! d; q0 E4 B
  1860. JSR LF_WRITE" a0 V' B" ]  u5 _7 n
  1861. RTS! H7 G6 E: s9 j
  1862. 9 y7 F  j4 \5 R$ E: d
  1863. RG_PPU:
    ) P+ c3 D* \- C# j2 X
  1864. JSR RG_WRITE
    5 D1 s# V  H; V
  1865. RTS% H9 p! a5 T, N1 Q

  1866. & a: {! y6 u1 U& Z* Z2 \
  1867. B_PPU:- z: [# q5 V" U% G1 Y
  1868. JSR B_WRITE
    " {: C* l7 X( r+ I8 E
  1869. RTS/ g  P" \( e2 i" A( @: `: N$ |/ U+ [/ U
  1870. 1 ]  z- {: K) R9 e8 Z
  1871. A_PPU:
    ) `6 ~* b* E# Z4 M& L1 X# I- z
  1872. JSR A_WRITE4 w2 p7 F; s2 \. E3 D* `
  1873. RTS" k/ P! [& c% k+ P
  1874. $ V" c' z+ Q1 I  ^( E& f- \
  1875. " s, @' J8 U7 Y7 a' U( x; d
  1876. PAGESELECT:$ v; O7 t2 O- c4 m' h
  1877. PAGE0:
    ; I. Z3 `% I# }; c1 m/ A8 p% _* f
  1878. LDA $07AA
    ) ]* x! i1 P& g% ~
  1879. CMP #$00
    ) z; P: e+ J+ s7 g: s
  1880. BNE PAGE1
    5 M- q: U& A0 N$ j. o

  1881. % M2 J/ m; o. g% h
  1882. PAGE_00:
    . b8 X1 T0 ]) e6 }7 A5 F
  1883. JSR BULSEL_PPU
    3 S4 x  S" H+ N' H$ ]' u
  1884. RTS* f( s, a" e$ a6 s9 j, J* N7 e
  1885. % R! p# f1 I6 x# d( Q& j
  1886. PAGE1:
    7 A% t7 n5 x9 I; U) R( D+ B( Q
  1887. LDA $07AA
    . o+ b  A9 c  Q; D- v$ _
  1888. CMP #$01
    4 F  t/ `# P: C* F
  1889. BNE PAGE2
    2 ^9 D' B; K! T& W
  1890. 9 Z- \7 n; d* e6 ~% f
  1891. PAGE_01:! b3 J1 j5 q& h$ V
  1892. JSR INVINC_PPU
    ) {/ V6 ]# y: D0 m) o
  1893. JSR LIFELC15_PPU) Q; q0 ^/ K3 l# ~) N$ t
  1894. JSR DOUCON_PPU
    3 B2 c+ b! d5 k% F8 y% D6 V
  1895. JSR KILLON_PPU
    " E# X) \; U6 |  y; D2 V; X% a. ]
  1896. JSR SKYFLY_PPU5 `! \' N( w5 a1 B( x
  1897. JSR LIFELOW_PPU
      m& n. v* {) s3 }
  1898. RTS
    3 _2 B; n' Y1 A
  1899. " }: L( O' ]# }0 O& E8 x) \& ]) p9 V0 `
  1900. PAGE2:
    5 A/ M$ G+ H9 I: }! j$ u
  1901. LDA $07AA
    : L8 g8 L% I1 W! U* @
  1902. CMP #$02
    ( o9 n: Q6 ^! @- P5 d& D' O
  1903. BNE PAGE3
    $ i" ?% R) `- S3 i
  1904. 5 Y1 R: {. G, x. a0 h
  1905. PAGE_02:! s: ?3 ^; ^7 _' l# `
  1906. JSR BULADD_PPU
    & H' X+ o1 D) Y+ j* Q* i
  1907. JSR SKINGE_PPU0 c. z4 A7 W) ]$ ?7 Q" R
  1908. JSR BULMIX_PPU
    ' n& v7 m; I* n( D: \5 k2 `, d0 d
  1909. JSR ENELOC_PPU
    0 X- I" n) N( A
  1910. JSR FOCFUL_PPU
    4 N5 m; y8 M6 U+ w2 I
  1911. RTS4 s- x9 k. o/ |9 D4 e5 C  y2 ~
  1912. : f7 n" v- N9 j8 s' A
  1913. PAGE3: ' |  c# |" g; {. B6 p5 a
  1914. LDA $07AA
    + m$ o' f1 z$ L+ z) G5 B% t
  1915. CMP #$032 |! C  g/ X8 V$ h4 A
  1916. BNE PAGE44 y/ [6 x2 ?$ }9 r) s# N; d5 |
  1917. , q. h! O# x$ N( a, _
  1918. PAGE_03:! Y4 b$ Q# G4 |3 k( |
  1919. JSR BULCON_PPU
    6 C# r5 c) h( [1 t7 X1 \! J; w1 W
  1920. JSR SPEBUL_PPU8 N, v1 k' Z- e$ h( s
  1921. JSR CLEALL_PPU( [9 R8 r. h1 ~& t9 f" _% h4 W3 ~4 t
  1922. JSR HARDMODE_PPU6 w- }) ?& k$ K$ }
  1923. JSR B_TO_JMPSTG_PPU
    + o& S+ ^+ t4 _  f
  1924. JSR A_TO_PLAMOD_PPU: _( d7 B3 t# V9 v5 F
  1925. RTS* f7 w9 L5 Y0 I/ |" K

  1926. 9 h* U$ x. e$ c- S' E) x
  1927. PAGE4:
    $ I7 ~! o1 Q' C& v% L
  1928. LDA $07AA% Q3 |3 n8 }* E% I& y
  1929. CMP #$04" I# k2 J+ K8 e% ~0 A% n
  1930. BNE PAGERTS- I& U& v# i8 F- T, L+ H3 Y& y( z! R
  1931. 5 }+ T6 y+ B( O. r
  1932. PAGE_04:
    * m' u2 h2 S* O3 V
  1933. JSR MOVSPE_PPU
    & j5 v" @; J. M: d9 ]5 X7 _
  1934. JSR UNLJMP_PPU6 a9 l. y# B1 \: Q; ]" S
  1935. JSR DESTRO_PPU
    & `  c9 E/ O3 X4 \9 u& G
  1936. JSR EQUBUL_PPU
    , u; Q$ \, r6 \8 R' K6 g
  1937. JSR MOVESPEED_PPU
    3 U4 U  e/ `; H, A+ ^9 u
  1938. PAGERTS:" y6 R0 r- U) c2 h, D7 S
  1939. RTS
      k* L' N6 g$ ?6 u

  1940. . e$ ]; E: c6 p- Q+ E

  1941. 8 H! E$ }0 {2 J2 z, l6 f3 ]
  1942. PLAYER_01_STRING:/ J% a& x: S) `' Y1 c& g8 }
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    7 O- S. _% \, y" o5 O
  1944. $ |* K, q; _  x4 h0 H% @- a- J

  1945. . o; P7 q8 U4 p: F/ d$ c9 u
  1946. PLAYER_01_WRITE:& x3 Q3 C  F8 F1 b; H1 Q+ `' s
  1947. LDX #$00
    9 Q2 \8 F9 b6 Y7 s3 N: }. F0 X
  1948. PLAYER_01:; J& s" U/ `1 q: d( S
  1949. JSR PPUADDR_PROCESS2 a) L% v& L. A! @& n3 w
  1950. LDA PLAYER_01_STRING,X
    % N( G- R( z7 ~
  1951. STA $2007
    . V# r5 d& [4 \/ I# @5 ^4 O
  1952. LDA #$00
    . d- j) C3 o$ W4 y( B3 E% ]
  1953. STA $20008 A; P% N7 D+ z8 N6 \  v: Z
  1954. INC $BA& a- B( D, Y# n1 t
  1955. INX6 j$ U! d2 \- A. M4 N3 |" f7 ^
  1956. CPX #$0A# I& i% S, p) W
  1957. BCC PLAYER_01. S0 C. y; Y0 V+ x! d& W% _4 \7 G
  1958. RTS
    ' b9 t+ C+ ]# z+ U$ _! r) c

  1959. ( H/ t7 R9 ?. l# m- B
  1960. PLAYER_01_PPU:" f2 M# g4 c4 j/ h  P- K/ }: ^
  1961. LDX #$00# X3 b0 a! ^6 L: I. z
  1962. LDA #$64
    . L, F2 Q4 v, Q
  1963. STA $BA
    " E2 R5 g( c6 L. E2 q. J
  1964. LDA #$20
    7 G' ~1 S  A3 K' F
  1965. STA $BB
    , \0 X( ?; v0 b' Z1 c' l2 h
  1966. JSR PLAYER_01_WRITE
    4 z7 ^8 Z4 \2 s$ \( S) {
  1967. RTS
    1 a: ~9 R! B+ M1 `
  1968. $ O. }4 y8 j" [) f: F! j
  1969. PLAYER_02_STRING:: Q/ A- f  {3 v5 Z$ R' i% h1 E
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    0 ~+ W/ Y6 H2 w( ~' d1 |) H

  1971. 0 M6 H6 l& O; P  N$ R1 |3 i
  1972. 7 J# s" J( M3 E
  1973. PLAYER_02_WRITE:' e: `/ V9 I! y' {$ T. N$ j
  1974. LDX #$00
    / k4 k3 t& y5 F7 v( b: X7 y
  1975. PLAYER_02:
    9 i$ m9 x) z: T
  1976. JSR PPUADDR_PROCESS8 I9 ]7 a/ Y# a! r  e/ [
  1977. LDA PLAYER_02_STRING,X" B- k$ i/ o; h9 b% y
  1978. STA $2007
    : ?  m( u: d& X* v. O( r7 W6 O% z
  1979. LDA #$00( {# X. p" {7 B9 T" Y
  1980. STA $2000
      U8 z" r+ e8 }
  1981. INC $BA
    + X% n. d  `8 r. T) V# B$ f
  1982. INX' `( g- b7 g- s# J1 e! M: i
  1983. CPX #$0A
    ' H* P7 D! _4 V
  1984. BCC PLAYER_02
    ! D! ~. P" g0 T7 e
  1985. RTS
    " x$ ^2 C5 T. H$ a/ m
  1986. - V& p( G4 z. i; r+ y& G. [
  1987. PLAYER_02_PPU:
    1 @) A. o/ u3 r0 F- p
  1988. LDX #$004 Q3 V5 z* T4 o  u: T
  1989. LDA #$73
    8 k! N6 w7 ~/ ?) G5 j
  1990. STA $BA7 F' O- [+ w& j
  1991. LDA #$209 g4 n$ E) ~( O+ |, g* v* S+ w" P
  1992. STA $BB
    8 H0 s# j$ N0 G- N
  1993. JSR PLAYER_02_WRITE+ C; p! q9 f8 u$ N+ d
  1994. RTS( w2 r7 d' i: h! E4 [
  1995. 9 ~  N7 d1 n# e" S$ B
  1996. PPUADDR_PROCESS:
    & o, j/ I: W! J  i  L% ^+ U
  1997. LDA $BB
    ( ?6 [& {. r/ X8 M4 \3 t0 _
  1998. STA $20063 L- l0 g/ |- J5 }8 s: h5 A! S
  1999. LDA $BA
    , B! B* X' y- e# P" a2 E3 s2 c
  2000. STA $2006+ l& B$ g) G2 x0 v
  2001. RTS
    , q# o1 \0 ]- P* J* }

  2002. 1 `. q) r: D7 @- F, N
  2003. 1 s) f& T4 S  {9 R7 L$ y. Q
  2004. 8 w- e9 S# l, W" j1 L7 S% j/ _
  2005. ONE_STRING:+ l8 |' x! b5 m
  2006. .BYTE $99,$98,$8F3 l6 Q3 M! N) W0 o5 B; v" Z- k2 E
  2007. 8 w! l) I9 L) b* g7 P) l' q
  2008. TWO_STRING:1 J+ ~; O+ F* v# W* z" P' i
  2009. .BYTE $9E,$A1,$996 A, X. `3 B+ {9 U0 K  D1 J" b
  2010. ) ?1 Y% c& X9 @2 ~, E" b
  2011. ONE_TWO_PPU:
    ( v/ I) W' O1 z  @6 Q8 e
  2012. BNE ONEWR% u: t3 D) @5 e9 D8 K
  2013. TWOWR:
    & Z2 B9 X5 K: l* E
  2014. JSR PPUADDR_PROCESS
    # m% c: T( ]9 J/ I! Z7 L
  2015. LDA TWO_STRING,X
    7 w* C1 d3 ?4 Q( p2 D
  2016. STA $2007
    / i& P% g$ @! u2 q2 C  w4 m! T
  2017. INC $BA
    $ W* s+ I6 S) T" L
  2018. INX
    + g; u' V, A+ b4 c8 M, @
  2019. CPX #$03
    $ Z" B9 q* f8 i! d2 X6 J
  2020. BCC TWOWR
    1 [5 w6 P9 w1 |/ m& Q/ b- S
  2021. RTS+ d2 o2 K- X* ^) _
  2022. ONEWR:. }  F+ O2 |: p' F) p& X4 B
  2023. JSR PPUADDR_PROCESS1 [9 X1 K( [/ P2 m8 @. e3 W
  2024. LDA ONE_STRING,X1 C" c, ]/ Q# p5 U; b( X2 R8 @4 n
  2025. STA $20078 e+ {/ D4 J# L; \
  2026. INC $BA
    6 x3 Y* N' L# ?: r- H+ I6 Z
  2027. INX/ O9 U( A- z0 z( c
  2028. CPX #$03, }* L" Q# m0 Y# \
  2029. BCC ONEWR! K5 x5 l- A$ Q+ I! r: h
  2030. RTS1 f4 f2 ?6 j" v' Q4 J- S$ O/ Z
  2031. % [) m- S9 Y0 a# x" A
  2032. MOVESPEED_STRING:
    9 i, n  e. Y( M+ G2 z0 J
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80' a+ J) s+ d3 J9 R. {' w- L
  2034. ( B- N8 Y4 V7 l
  2035. ' b1 u( `/ w" H# H9 w  O
  2036. MOVESPEED_WRITE:
    4 p) Q$ J1 e" Q
  2037. LDX #$00
    ) T) U0 ?! x/ `9 i1 C) Q- p
  2038. MOVESPEED:8 k5 y. `' b# V% u
  2039. JSR PPUADDR_PROCESS
    ' V7 N  k# V$ Q" `% Z
  2040. LDA MOVESPEED_STRING,X1 m- f- z# q. z5 Y' K
  2041. STA $2007
    7 C$ J8 ~* ^% s, L  c
  2042. LDA #$00
    / A( P* S( c- f% p5 z2 J3 [
  2043. STA $2000: M1 e5 S( J  |
  2044. INC $BA. `% H$ w/ u- J0 h1 w% L, N
  2045. INX
    : K, T, e# p; T- c3 `% w
  2046. CPX #$0B
    3 R" @. E/ O  Z- T
  2047. BCC MOVESPEED
    ) i- D4 b/ x2 O) s3 T
  2048. RTS& {8 |+ K4 o* V
  2049. & n, n. M# h. n
  2050. MOVESPEED_PPU:
    , Y7 Q4 ~. T+ Z% L
  2051. LDX #$00
    3 l: Y! ?* s% u) M2 N
  2052. LDA #$AA
    6 p# @9 v1 n* u$ ]! k
  2053. STA $BA1 e5 s) @% f& {" s5 ?! `
  2054. LDA #$22
      p4 \% ?8 O; |1 u: P$ d$ Y( K
  2055. STA $BB9 u% N! L/ L5 b5 _( J5 j8 M8 B
  2056. JSR MOVESPEED_WRITE/ H& U9 g( s/ g
  2057. LDA $7003
    / N0 Q: K3 g! [) Y/ q1 b: z
  2058. CLC
    . |3 ^" H; |$ [8 c
  2059. ADC #$82% O( ]1 X. s9 f% _
  2060. STA $2007' D8 o5 B& b5 Z- D& W6 ^
  2061. RTS3 x9 P- U& z- H* 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 个 柠檬. 幸运榜 / 衰神榜

签到天数: 3005 天

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

签到天数: 2137 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
' h0 J3 l" k+ }5 @8 b* C
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2134 天

[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, 2026-2-24 16:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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