EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
+ f1 z, \- f0 L* ?7 S
$ D) R9 F4 h3 G! E+ w, g
     [FC][魂斗罗旋风终板END暂停显菜单]

& x- B$ T1 J* ]! Q6 E作者:FlameCyclone(flamecyclone.ys168.com)$ X& T( r& ?+ |# ]: y5 s
时间:2016/11/19 21:46:005 `' P  F# u3 O" x$ v% K
更新日志:

0 Q$ R: |3 I: a, e8 J" `7 a# q( Q2016.11.19:加入暂停显菜单(共5页)." w7 m2 z+ G; ]5 V( T) A
2016.11.12:加入无限跳跃.. w, h  q, J; X5 c' a& T' F. k
2016.11.12:加入速度调节.
9 E% f  ]0 E) q
2016.11.11:加入敌我子弹对消功能.8 `/ ^4 i1 a7 l2 f
2016.11.11:加入全屏闪灭功能.$ ~/ }5 H7 ~* D. I( i2 d
2016.06.08:加入全屏瞄准功能.
( _2 ~- H% V' e0 v2016.05.31:加入弹速调节功能.
  P# K/ K1 _  K8 |9 }$ o. Y+ X2016.01.01:加入高难度模式.9 y4 P! s6 P9 v6 Y
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
8 ~0 m2 W9 Z* f/ x# D2 V7 E/ u2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
% T! A( n$ r/ b8 ]2014.07.05:双人切换功能优化.
) A  y) g- E( d) f2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
$ x$ a0 D1 H% O2 J0 u: V2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条." K5 @. z$ n. T9 P. J
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.; n: T5 E6 r& }$ _) g; l
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.' G5 p+ I7 ?) q- j; X8 G' S
2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)
" ?3 l* j, s' v5 ^* }2014.02.13:加入自动演示通关.1 o( h6 }+ N4 ], }0 l# B, O8 I+ r
内容:' {# Z: e8 Q" X% o
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.; r. Z# A' X7 y
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
( Z& w; c/ h( T5 P2 ]& e7 Z21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
6 g2 A  R7 S6 j! W
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.( j, b; o1 R) S. N+ E2 }) R: i
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭." @  N( o& s& y0 z  V4 b2 \# Q1 o
18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
9 S% P- \3 S# q17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.( n" ]6 e! o' [4 V9 l" S. T% o
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
' B0 t1 }# u% i( N01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
, h. R2 P" w0 r$ B1 R  Q6 {1 L02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
  n; l  H% c8 D8 O03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.' \0 t, r1 D9 g& o4 F& Z" P4 ?
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机." M4 A. N) n$ \& L+ w/ n
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.3 ^3 f# E, y. \* x
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.0 l8 d5 F0 u; D4 r
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.3 r; v5 f* K6 Y- y6 k' N( ?& g& n
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
1 Q! F! a& L$ c2 N. C: i9 C09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
# b) G: Q3 f; \* b6 r& G: y, D10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.! j" n- t! h- N+ x4 S. U+ U8 Q3 y+ G
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.+ u' P! x( @8 Q8 `. H, h. {2 F
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
1 I. i' T6 P$ E0 ]% e13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
; Q* F& m9 Z2 t) ~% E2 {1 B  U14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).1 [$ P! a3 j  F2 M7 ^
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。5 [% L9 _2 h) _. \3 Q
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.+ L2 @+ m0 s+ o% Y6 J
B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!! ]8 G7 y) r. J- }1 v* t9 |
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
/ i: x1 B- p8 x' w( |0 q- v+ O7 z- I0 C* ^
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
6 Q& J+ \. H. h" ^7 }欢迎大家转载,转载时必须注明出处.
3 R% q' L$ Q1 ?9 U0 n+ p% N% x1 b- }
游客,如果您要查看本帖隐藏内容请回复
4 Q! B4 T! D3 z9 s  Y- B( s

" p, l! I' l' |忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.. \, k4 b& f  r/ u# @
这几天的劳动成果如下:
  1. .ORG $B400
    8 L$ u( i7 T1 R( N  \  N

  2. * ]+ e- y, Q' e3 q4 I) h
  3.   u  A' x' l* p4 @) j+ `; I
  4. PROREG:2 P; {  o& E, \) l) I
  5. PHA
    2 u4 d& O" f+ q6 X
  6. TXA
    6 ?; |1 R" V+ [, X4 r( C
  7. PHA
    6 _9 ~2 K2 N1 m$ s; b
  8. TYA
    & M2 Z: P3 ~: y& N( d& V' ~
  9. PHA9 v7 F- U; G# s0 `% @7 V" u. y
  10. LDA $25! N+ k! Y5 u& G
  11. CMP #$01+ l) q, ^3 x* o3 }& F. s
  12. BNE RE
    8 a. ?5 e" @0 c4 N. Z$ ~5 V
  13. LDA $010A. [& D. J8 q7 g& _* @$ E
  14. CMP #$00
    * Y# F$ t2 M5 k$ Z# }
  15. BEQ P1
    5 d* L1 o# P, d: N( d' V+ Z

  16.   V4 i  j" t+ G6 h, f
  17. RE:
    6 ^! Z% f; k0 s8 t. ?6 S
  18. JMP PPUWRITE+ x0 U+ b4 {8 J3 ^& x+ [
  19. . U: Z: ?  s+ Q4 l3 z. m- T
  20. P1:                ; 条件判断( i4 K  j6 ?6 E6 Z+ f* S
  21. LDA $7FFF
    5 r" S( I4 n* Y$ H% A) U
  22. CMP #$FF
    9 T( D/ ^  n: E
  23. BNE P1RP
    4 [" I* o3 C! `7 P! A
  24. LDA $7FA0
    - m8 V, V8 z6 ^2 u* i  h
  25. CMP #$00
    # W+ s, _) h3 g
  26. BNE P1CMP
    3 a" E% t6 q1 E  c
  27. LDA $2001
      w# D9 H  R( Y2 \' E1 X: _
  28. PHA
    ' ?: T0 N$ x. \
  29. LDA #$00
    0 z" P: l* ]/ [- @+ F
  30. STA $2001
    3 H/ d* s  `0 l0 `6 c
  31. LDA #$FF
    3 @" e( o) |# e9 F- `7 s; t
  32. STA $7FA0
    9 u' E* S% Q- g0 u" V; `
  33. JSR CLEANA4 @) Y2 @% F, b$ h4 r% e
  34. PLA
    8 P3 j/ C9 U, C4 b8 e; Z+ [3 q0 z" z
  35. STA $2001/ R- r( A6 Q( ^# S
  36. JMP PPUWRITE
    ; @. h7 u- w; ]5 i9 r; y! G& O, S' s; e
  37. P1CMP:4 h2 _2 m! w! ?+ Q) H
  38. LDA $7FFF
    % ?' F; m4 a) d4 Q
  39. CMP #$00
    ; p! A1 N" \( Y6 t1 Z
  40. BNE RE
    0 d  a# i! g+ s2 Q: R" E
  41. P1RP:" D7 o( q% ]& x& r) [1 j9 V& P
  42. LDA $2002
    9 A* h7 J# N8 c) R* q6 T
  43. LDA #$00; r4 w2 a2 R0 N' q
  44. STA $2001! m& y% k$ ?7 r$ n
  45. LDA #$FF
      \1 s( x* A9 P$ |+ X- u0 `
  46. STA $7FFF
    : @: s+ |1 {2 J1 W: F
  47. STA $7FA0, Q9 @2 b$ ?- d( A; e+ P3 I7 a
  48. JSR COPYPPU, l7 M. e# q9 c8 K; g, F
  49. PIRP2:: O' C9 ?7 R; U, L& X+ g
  50. JSR CLEANA
    + f. ]# U* u( @  |/ G
  51. JMP PPUWRITE
    & E4 n% s0 `( M* b; [2 {. \+ I9 u
  52. 1 u" N5 C7 v5 ^4 {
  53. COPYPPU:, q1 n" {0 a" M- o% A$ `5 G' P
  54. L0:& g/ r, m( S; L; C! c5 d7 G
  55. LDA $30, a2 n8 y( y& x0 _& O' K
  56. CMP #$02# \2 o$ d: ~5 v4 I9 v
  57. BNE UNPROFC
      [% l5 |2 b0 n4 {, E( {4 c+ t  N
  58. LDA $FC$ k0 c/ c- j- i/ y# e
  59. STA $7EFC5 t1 V+ l# z# N; Q+ [5 R
  60. LDA #$00# b* y/ o* e( n5 x" G
  61. STA $FC
    / [9 C' ~6 A6 |+ u' T
  62. UNPROFC:& R6 F( y3 V9 Q
  63. LDA $FD
    " A8 q/ F3 c0 U& S1 O; U" L
  64. STA $7EFD
    0 n$ h$ U5 n8 `* K+ \
  65. LDA $FF* Y2 I( D: W( S( x/ Y
  66. STA $7EFF
    ( \' s) M. i& ^/ w2 c
  67. LDA #$00* C3 h' Z) \9 Q* s4 K( M
  68. STA $FD3 ~& u# ?% Q8 M
  69. LDA #$B03 b/ v" g: `: _0 _  X3 u
  70. STA $FF
    : V( l  J$ T2 m4 y; j" H% k. _
  71. LDA $07C14 M. N+ P0 f3 ^- P6 x
  72. STA $7FC1: F5 n7 I' R3 Z$ p1 K- ~8 o
  73. LDA #$3F' {% G  j+ O( A" W
  74. STA $20067 F$ V) Y' _' D
  75. LDA #$01
    4 Q5 K1 t7 X( `1 ?
  76. STA $2006
      k# p2 j- V5 P  G+ S1 j
  77. LDA #$24
    ; u% z. v& O. m' D7 a
  78. STA $20075 G5 s' U# y5 d0 j3 C) E
  79. LDA $07F6& P, }* J4 d) R3 F! U9 ^3 c" T8 a' I9 V
  80. STA $7FFE
    6 X) n( S' s& k8 O9 A9 ]- K3 c
  81. LDA $00FE
    9 q! Y! P/ {, g) ?! s7 d- S
  82. STA $7FFD# d$ O5 J! Q( E2 w! z& o( W
  83. LDX #$00
    6 \0 `- k8 K8 M6 E9 A3 P% x  q% E
  84. LDY #$00
    ! @0 S2 F- L) T0 @6 @+ k- U, y1 ^
  85. LDA $BD6 a' Z% Y: u$ Q% l: k( g
  86. PHA( `' F; G$ b& f' R' D/ b5 z
  87. LDA $BC: k9 q0 \: g& K3 M+ z
  88. PHA
    & l& k! M) r) b1 d0 F
  89. LDA $BB# S* [/ g9 R6 D! _3 b$ @- {
  90. PHA% M' {2 z+ K* I  B3 a' N3 q
  91. LDA $BA
    : D# D- j; D4 e- W2 d/ L% \
  92. PHA
    9 ]: `& }0 s' \2 ?" A" ^5 @
  93. LDA $B9
    ) @5 {, F& x+ Q3 ^
  94. PHA: F" P3 i1 ~: n% L# t7 ?
  95. LDA $B8
    ( Z! r7 b+ Y1 Q3 j% b1 O8 t
  96. PHA( e% o3 f* L) p8 u
  97. LDA #$00! o- C' L" o! ~/ }
  98. STA $B8
    6 F! ?, e( x$ {+ V5 ]* b- Q% `
  99. STA $B9
    + b/ c# w1 }  L1 ^( }/ G% J% ~  Y
  100. STA $BA; }9 d+ c9 @9 `+ G
  101. STA $BB
    * Y  Y$ V4 e7 u
  102. STA $BC
    : q7 ?+ h2 T* Z; K  X# q+ F
  103. STA $BD
    ! S+ I3 ?+ Y6 j1 h! l6 M+ {
  104. LDA #$005 k+ [4 w# d6 p1 X( j/ d* L
  105. STA $BA
    ) ~; h# k0 J5 E1 p1 a% E* Z+ R
  106. LDA #$20& r$ u9 @. ~% w: G+ Z- z. x
  107. STA $BB
      w+ q% e) ~- k% d! [+ H* C
  108. LDA #$00
    ; D2 }" d; q; e6 L8 I% z/ i, i5 j
  109. STA $BC6 m- Z2 _* R4 W% {5 j5 Y  I
  110. LDA #$60: x) q: N& ~: X; |
  111. STA $BD& i' ~, m$ S1 C2 l
  112. , ~& a7 ~$ Z& h6 n% u" |
  113. L1:                ; PPU复制. ~' @5 p, F( U3 z- h) b% p/ y
  114. LDA $BB
    % ?$ n$ m1 v" q1 s) {" O: F
  115. CMP #$30
    : a* p0 A5 M7 n8 C% N4 N+ p* q* Q5 [
  116. BNE L2- ^4 ~7 B, K) {7 J& T( M6 i
  117. LDA $BA$ [7 J" [2 T/ e
  118. CMP #$00: @5 B4 Y0 C% _+ ]3 E0 u% `1 }: c  T
  119. BEQ PROADPLA
    - V8 C# F- s8 d& b1 x: }
  120. 6 e% @7 W& O( F9 a0 `% \' m
  121. L2:( @8 y/ W9 N) \) K" H1 j' H( p
  122. LDA $BB
    3 Y0 `" T  \0 o9 b
  123. STA $2006+ o0 R; m+ z6 X' f9 l, L' [
  124. LDA $BA
    - d. _- l- X3 b& }, s
  125. STA $2006
    ) Y: \) P, n8 b  T) J
  126. , q7 n! A- l3 E' X3 P6 O# O
  127. L3:
    ; l" G/ \7 q  H9 L- x6 V
  128. LDA $2007  ?' d. N2 n- J
  129. LDA $2007
    ( ^8 f5 b8 D1 B, ]* ?
  130. STA ($BC),Y
    . }, D, Y2 P" _( A2 w
  131. ! O/ Y, L2 `/ S& G( x4 m
  132. L4:
    , a  S6 W- H* r* R1 e  v' j
  133. LDA #$00( t' Z: e( K( D# F- Q6 T
  134. STA $2000
    + ?* H3 C4 u8 @& X( ]6 S: {
  135. INX
    ) j0 |1 }* N9 G% X/ d
  136. INC $BA0 w" Y- O* j+ H( c1 H
  137. INC $BC
    * u- N6 i, W1 M
  138. CPX #$00
    0 ]4 R2 e1 e5 I- J4 l, t
  139. BNE L1
    * e2 f" V$ H# u2 e# Q  {
  140. INC $BB
    " y- x* }2 R7 ~/ F- [
  141. INC $BD
    ! l; e4 J8 i# |( j' C+ U
  142. JMP L1
    6 Z+ ]3 F1 W7 d: [2 H
  143. ; d  Q+ ~+ s( ]1 G5 A& [
  144. PROADPLA:                ;出栈- `$ I$ t$ ]4 w4 q9 f* }: l
  145. PLA
      H/ A- t/ [1 d7 S$ V4 U
  146. STA $B8
    6 G. ~. |4 K4 C) _& d
  147. PLA/ S7 K$ B# h; ^
  148. STA $B9
      E4 C* F# Z- }4 {2 j1 z
  149. PLA
    ; h1 p1 W/ t0 h' h0 Z5 F4 ]( ~
  150. STA $BA
    ! K$ `! i) {2 N& w- j
  151. PLA2 T' x: z. Y; K2 r8 @
  152. STA $BB
    1 F; H" l% X/ U" D  L. o
  153. PLA
    & V0 F9 O9 b% G& _2 e, c' ?3 v
  154. STA $BC' T4 o- [. p# n0 x3 Y+ G$ m
  155. PLA1 G, |, Y3 e3 y8 Q
  156. STA $BD
    % ?% p3 ~, Z! P
  157. CPRE:
    " W" J, @/ S6 \2 W4 z. x6 p5 Y
  158. RTS9 a+ F- a- @9 r. ?

  159. ! q8 V* t, y4 x( |! r
  160. CLEANA:                ; PPU清空' l7 \4 B+ B2 a' i4 ?* t$ n
  161. LDA $BD
    ' s  K. `5 x/ {4 [
  162. PHA$ b9 R% {) k  _0 u  u
  163. LDA $BC) J$ m/ G! w- c" x& i8 c) K
  164. PHA% T) B& w: E/ e0 K9 B0 `
  165. LDA $BB
    1 y1 [3 a& h* v5 i
  166. PHA/ I9 F! s* n  S/ Y2 X: k' l3 @
  167. LDA $BA
    % ?: o% C+ N3 ]* j! Z: `
  168. PHA
    % A6 I  }; k4 H# t* S) @, ]
  169. LDA $B9
    2 _: H' P# W* Y* K! j
  170. PHA
    # a9 O# f! W; z) ~. E
  171. LDA $B8
    & L4 y; `3 g/ {# r* `3 M3 s
  172. PHA7 b$ g& x% a. r4 k+ z7 j# a
  173. LDA #$00  @! Z( m* B- R' K' ~
  174. STA $B8& p% T% A; j- R0 x: w
  175. STA $B9% Z2 l. \* h% c# B' X
  176. STA $BA  q" [" d. i' b  N
  177. STA $BB
    + o9 u; G: c5 \% Y" P/ k, `9 Q
  178. STA $BC- D! Y9 [5 A2 O
  179. STA $BD
    9 d9 Z- a  V+ L- r# I5 s6 R! c
  180. LDX #$00
    5 N$ z% E5 ?( `4 c. N6 F$ {
  181. LDY #$00' Z# `7 X& f9 V  t2 A; B
  182. LDA #$00
    ! S# \8 ~, y; B9 s  H
  183. STA $BA
      F. g: X' W$ n) x
  184. LDA #$20
    9 R% n$ O4 f. M0 ?% [* L
  185. STA $BB, G9 c# c! H( U3 l' v; r6 j
  186. 7 }" T- s& v) |+ I+ I$ ~. S- ?* R
  187. CL1:  v6 [* w+ l& V3 N/ m4 g
  188. LDA $BB
    6 A! u# B- T5 i2 h/ [: H+ }9 I
  189. CMP #$30
    # \3 @) r( C. M$ P4 {5 o
  190. BNE CL25 L, O. E9 d6 r; [9 t) y- h& `
  191. LDA $BA, h9 n& q+ s. b3 V, a/ e" H7 ^
  192. CMP #$00
    * w2 q0 U, A/ j5 e
  193. BEQ FREEWRIYE
    7 `1 d$ M) l9 C$ F7 T

  194. . k2 n( }* b, ?; `
  195. CL2:6 T+ S. y7 ^5 ^' |; q+ t
  196. LDA $BB3 L1 Z' F$ o& S- H, I  P* o8 N- }5 O
  197. STA $2006; L/ m4 R4 b! K
  198. LDA $BA: o/ \' Y- |: K+ l& d
  199. STA $2006; W- U5 R* v  A

  200. : O6 n' h( X5 v. `' h% E
  201. CL3:3 Z7 W: F2 {, P- W# c
  202. LDA #$00
    8 `  Y' ]+ m5 w3 z6 W( f# K
  203. STA $20070 w+ I  r" m) T/ E' z2 Q' C5 J

  204. ( R2 G# j4 U* ~( w( ?+ o7 U6 \
  205. CL4:
    * q) c8 _+ ]+ g% _: C: B& k
  206. LDA #$00+ j0 H' X1 u7 k. o5 U
  207. STA $20007 M9 ?) b' h6 y2 P/ b: l3 E+ F! o
  208. INX
    6 F  a5 `  G% ^' @& f; R8 H
  209. INC $BA
      q+ N5 E0 D- X% `4 o
  210. CPX #$003 ]! B0 @& I! _. A: p  B
  211. BNE CL1
    " p. R* h( Y/ N$ Y2 e) i
  212. INC $BB
    ' D) V- `% d, [
  213. JMP CL1
    ; x9 |) H, J6 C; h

  214. ) [. f! O1 e% V) `1 _

  215. ' e# E* @9 Y# r6 _
  216. FREEWRIYE:
    2 @0 x" ?6 r4 w) V% A) c2 G
  217. JSR FREE
    ) R9 ^2 A3 c2 B" ]: o
  218. ! N+ b1 w& d* X9 M. B3 }$ W
  219.   [6 [; h) B9 P, P- o
  220. 5 j/ |4 o) f) A8 L; c3 {' Q  d: B
  221. 2 U# @! U/ w. y' Y# T2 a1 ~1 y

  222. - |% a' W" r6 V* v$ g% m
  223. CLEANF:                ; 恢复现场
    ; M# k8 a* T$ c8 @6 ^9 @# c: i. D. E
  224. LDA #$08
    2 F' I3 H& v. Q! P' m
  225. STA $FE6 V3 A( M: E# E- q0 M) W8 ?* L+ ?6 i
  226. LDA #$00$ x, R5 H8 J. e& \$ v% x
  227. STA $07F6/ B5 n( t8 a  E' {3 j7 F8 J6 r6 Q3 c
  228. LDA #$245 s6 H) j& l0 w( Q+ {3 u3 R
  229. STA $7FC0
    * i# n: f- \/ _% W& w
  230. PLA' ?. e: R7 m  C7 ?- j- F/ {2 U( T/ |
  231. STA $B8
    , b5 u/ T( y5 i0 c1 p& `# `- D
  232. PLA
    : X3 P, h( Z3 w
  233. STA $B9
    ! V3 l1 [& \# N! B
  234. PLA: A* k( o7 o' G( ^2 {5 p5 A' I5 M+ p
  235. STA $BA6 p7 k' m# ?% }/ J! f" g
  236. PLA: O& \$ O3 y8 _. e
  237. STA $BB
    3 w2 b7 Z  {* G- E, V, g# p" \9 n
  238. PLA
    4 D0 m# e( X4 n( c0 ?9 ?
  239. STA $BC4 D  g3 |: N$ i  m
  240. PLA) E9 v, a/ d" Q
  241. STA $BD: P2 A7 f4 N0 [4 b6 q3 }6 h! g
  242. CLRF:
    : @6 Y+ N1 C& p. B* i. ]
  243. RTS
    - r5 ~! a4 e5 _9 m2 d
  244. " h6 s2 m' j- b) G; }
  245. W_DATA:! G9 E' Q5 b; i: x
  246. .BYTE $00,$01,$02,$03,$046 M: Q  Y8 E1 V, Y& c( x  N! ]
  247.   
      m8 n. A9 u5 i# W; ?
  248. W_PPU:
      e! e. ]: ?( N& e0 G' k
  249. .BYTE $98,$97,$90,$9D,$96$ o# B# _. G+ K  ^" I( T  u7 u. K' U

  250. ' O# @4 c' o: _1 s! l' Z  Y
  251. P1_STRING:
    - d! i7 A% {3 p0 H& B
  252. .BYTE $9A,$82,$00                ;"P1"
    $ r: w6 P- l$ l% b) H$ ^
  253. ; _: u! X4 K- v) ~
  254. P2_STRING:7 |. E7 R8 U6 `5 g1 b8 w, z- V; i
  255. .BYTE $9A,$83,$00                ;"P2"# J" ]7 S7 g% ^/ d8 @, x/ C
  256. & J' U: x" ?9 n" f: K9 K6 ~
  257. WEAPON_STRING:
    ' a. ?% ~* E: y% ]
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    7 C+ x- V- b: A' b' l* b
  259. $ X9 l$ L  O, Y- P/ j0 x6 M
  260. RELIFE_STRING:# x0 G+ \& v: F# h2 O3 z
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"1 F( l. ]/ T, d
  262. 5 a/ w! V  P! q4 [. R9 U1 ^
  263. P1_PPU:
    8 h; S1 U; Y" Y% }  P
  264. LDX #$00/ g( e9 ~9 M6 u5 N

  265. $ n* e4 b0 F0 d  j( l6 ?
  266. P1_PPUW:
    3 e' x: F/ x! k. Q
  267. JSR PPUADDR_PROCESS! i3 I( Q  e$ K6 H- y- ?
  268. LDA P1_STRING,X" A; h' Q0 k7 X' P  a# Q  I
  269. STA $2007
    " _. Z. Y. O9 b; _6 n' k4 E
  270. INX
    0 n  K0 S7 M( _2 q" z* \- ]
  271. INC $BA6 w) l+ F# Z5 h. c
  272. CPX #$03, W6 I" Z2 h; ^3 o% ^
  273. BCC P1_PPUW$ K+ D- R' {/ j1 F0 Y' e
  274. LDX #$00
    5 ^6 u' ?# ~: D  j6 K
  275. RTS
    ! h. f6 O- D. d

  276. - R8 W6 v. z1 N
  277. P2_PPU:
    * v3 U" z( N6 V0 y; _. d$ B
  278. LDX #$00( A5 Q; ]6 z2 f

  279. ! A% V* k: M5 v9 T+ ?
  280. P2_PPUW:* X8 E' i9 D4 Y. K
  281. JSR PPUADDR_PROCESS
    ; c9 U% P8 f! {4 O4 x- M9 F. c
  282. LDA P2_STRING,X
    ! e3 }( z9 Z* ~: C1 {, J1 U. C: |, _+ c
  283. STA $2007. g2 \& ^, _" v* T
  284. INX' }; H0 f) ^. O' J
  285. INC $BA7 r" t3 ^. B9 F/ S# i0 D5 X
  286. CPX #$03' N6 Z5 p8 e5 r+ X
  287. BCC P2_PPUW
    * ?! }6 s. ^* ]  z) q
  288. LDX #$00
    0 Q# v/ {! x  e# N: e+ ]
  289. RTS5 L4 B" l4 J' [# D" v3 s
  290. # K4 _, D/ }) p- Z
  291. 8 W& }( p* v3 j. y! z/ _
  292. LDA $BB
    . y3 l# t3 F8 r+ L1 E
  293. STA $2006$ ]0 p3 G. I1 }! t7 _  w, T
  294. LDA $BA( R) R6 n5 ^: E
  295. STA $2006
    8 `% r. A- t6 u$ |- C& `5 p
  296. RTS3 z" _7 R5 M, I) N

  297. 7 O( F( ~% h! G/ @7 C/ ~
  298. ; d2 [- `9 ?: T9 I  M
  299. . P, G; a7 p0 G; o1 m, Q% t
  300. PLAYERLIFE:# \9 ?/ U! V& K% {5 y
  301. JSR LIFETODEC
    ' u3 {. q& o/ f5 g, g
  302. LIFEPPU1:- j5 N% H! ?+ n, |+ v, s
  303. LDX #$00
    $ O9 ]+ V8 |" {, [" O
  304. LIFEPPU1RE:
    ; J$ }' K' p  L9 N7 _( i# @) ?
  305. JSR PPUADDR_PROCESS
    ' e, B* a5 U6 Q, y5 r
  306. LDA RELIFE_STRING,X
    9 N8 Q$ r* ^9 C0 i: q) \
  307. STA $2007
    5 W$ A5 }$ A+ h, L4 Z
  308. INX
    ; |* I) }4 `+ k* R
  309. INC $BA
    2 ~" M" X1 s0 ?/ p- v# k
  310. CPX #$07: K' e! s8 U' z9 T; F; Z
  311. BCC LIFEPPU1RE4 a9 W: g+ ]" h* b* ?

  312. 6 u7 b; k& ~9 ?0 U( e" O4 E4 o
  313. LIFEDEC:                ;生命显示写入& _0 p/ c: B" H. M8 N0 G& u
  314. LDX #$00
    4 n9 f) O4 J: B) e
  315. LIFEDECRE:2 k. k* _2 ?! q4 p$ ~3 S
  316. LDA $7A03,X% u5 T0 l; z: p, ]6 q; J2 C
  317. CLC  c; S! ]" q" L# i, p- B
  318. ADC #$81) x" s6 _" N3 u) ?9 R4 b
  319. STA $20072 D4 z% @3 U+ x3 b$ p
  320. INX- c3 v: P9 A2 j$ X
  321. INC $BA
    / @! A' X& ~, }
  322. CPX #$03
    + |# M2 @9 D& }0 H9 t$ O8 b" Q
  323. BCC LIFEDECRE8 t8 B2 Z8 S! c1 K# N8 e- ^3 S
  324. LDX #$00  j) S6 f( Z/ G7 N! [+ W
  325. RTS0 e2 v0 C4 C8 w7 `3 h9 v7 l/ l

  326. & Z. I! K: y5 y- E( [0 _4 y# \
  327. LIFETODEC:                ;十进制转换
    2 j5 I# C, b9 I2 [+ B2 O; P
  328. LIFEL1:        ;initialise- Y3 _1 [3 c* e( N' Q5 S5 `
  329. STA $7A00        ;$7A00=F3
    ' P5 k3 z' g. R! q! Y- i
  330. LDA #$003 y. m2 ~/ K& Y
  331. STA $7A03        ;$7A03=00
    1 Q$ l7 c- j9 R
  332. STA $7A04        ;$7A04=00
    8 h; T0 K1 g/ n
  333. STA $7A05        ;$7A05=00
    3 G' E/ Q3 c# j& B8 q4 a8 l7 j
  334. LIFEL2:        ;copy data $7A00 to 60011 [* e( b' P5 i* T& U
  335. LDA $7A00
    5 P7 T4 ~, W& m
  336. STA $7A01
    1 M) f" W: O, p7 a/ l$ R

  337. & z4 B6 y8 C! _& M; G
  338. LIFEL3:         ;hundred
    # z  e3 ~! a. Z$ M- O: `6 X* O$ {
  339. LDA $7A01
    ( m7 a; w+ ^: z0 f. Y8 S! V
  340. CMP #$64/ w- h/ A( c4 P4 [- C
  341. BCC LIFEL6                ;$7A01<100 goto L60 o) m+ ~4 |  d5 t
  342. LIFEL4:* [- s' l9 A+ i* w3 E
  343. LDA $7A017 B5 W% j8 z7 w; p) n$ u
  344. SEC
    / u# q' p- B0 ], J& M( m
  345. SBC #$64        ;$7A01=$7A01-1004 Y  ^% _% R( V* a
  346. STA $7A01
    : w- |* z4 {2 l% t. g" y) a
  347. INC $7A03        ;hundred++
    ) ^5 i3 j9 U* N& g. A$ h
  348. LIFEL5:; Y) \# I) B* ?
  349. LDA $7A018 g. v0 B9 X- c4 Z1 g( i, F+ P
  350. CMP #$64, c1 G: _# w) N; b6 W4 C3 F6 f4 M
  351. BCS LIFEL4                ;$7A01>100 goto L42 Y: O3 m0 v6 Z" k2 ~3 X

  352. " [$ h$ L3 g7 S7 Z: {3 u
  353. LIFEL6:        ;decade% q! f% y' |/ R3 f4 H- P) p" |! w" t
  354. LDA $7A01
    3 k3 N0 W  K0 g4 ?: \6 T
  355. CMP #$0A! J1 @5 \* G" z  r
  356. BCC LIFEL9                ;$7A01<10 goto L98 y" n/ S) U5 L6 y
  357. LIFEL7:       
    $ y- I: E9 A5 S( p: [, z8 ]9 V. j5 I
  358. LDA $7A01
      M* x- p6 q+ N$ E* B1 W7 U
  359. SEC
    $ q/ C3 p# p: \4 ?
  360. SBC #$0A
    $ B1 g4 b$ d& _" P3 T! H
  361. STA $7A01        ;$7A01=$7A01-10
    ( t" l9 _2 W2 |3 f# e- p
  362. INC $7A04        ;decade++
    ' e- Q! O; y/ Z+ J% c
  363. LIFEL8:; F. r! A* |5 `9 U- v: K) q( E$ p
  364. LDA $7A01
    ! w, Y4 l( p+ E  d* i& d
  365. CMP #$0A4 L0 K4 H4 r) t. o4 z- `
  366. BCS LIFEL7                ;$7A01>10 goto L7) E9 L* I* s& p9 a
  367. ;unit
    ' S) q# @( U6 s7 ~0 v9 B
  368. LIFEL9:! F+ d1 p; |$ x. e1 x
  369. LDA $7A01        ;$7A05=$7A01
    # Y# @7 c% K, j' ]
  370. STA $7A05        ;unit2 N! `: q. f6 {! Y3 [5 G8 m+ i8 W
  371. RTS        ;return
    * t- r/ u# f  T+ V4 m7 J
  372.   s# l* S, h% r4 X( `+ |: F

  373. 3 q( q1 I; i" Y; g: ?" J2 z& [* {

  374. 3 ^2 g& b+ b- t
  375. WEA:                ;武器ppu写入
    9 U; f, ~1 O% ~- b3 j9 ?9 n6 }/ P
  376. LDX #$007 g& N) d/ v: P' g) B. a7 I
  377. WEARE:
    ) v3 R& D  R4 L1 W' }
  378. JSR PPUADDR_PROCESS
    3 `# M, W9 A( e" d; U/ s
  379. LDA WEAPON_STRING,X
    % W3 F# z' S* r: D* Y
  380. STA $2007
    $ u5 {* F8 ~: a1 l  D
  381. LDA #$00* c; V% S" _# m# j3 x( S1 l: T
  382. STA $2000. W5 B' y: Y& p: k1 n  X
  383. INX* S$ U1 ~  \& A- k. Z4 L4 w* I' l
  384. INC $BA# T. ?& a! \0 n6 v
  385. CPX #$07
    6 X& e# u) U4 s. {4 `1 R* K
  386. BCC WEARE
    7 n6 Y7 ~& K7 ~3 z+ x

  387. ) P0 V  c2 {# c( C' Y
  388. READ_WEA:
    % X/ `! ]( [: l0 p
  389. LDA $B9
    % b5 J( R1 _1 b8 k. E) U. A
  390. AND #$10
    % l, P6 j; m1 v, e
  391. BEQ NWEA$ R/ G# D8 W3 D* ^3 C( A
  392. SWEA:4 g- d- D' N1 o2 f4 W
  393. $ u) k  W" h+ t: I) v& p+ s
  394. LDA #$9D
    & V; H" z, F* B4 |6 ^' _3 Y
  395. STA $2007
    ) A2 e0 E# h* I
  396. LDA #$00
    ( C( l# s) h/ c
  397. STA $2000
    9 X. n: X8 z7 f5 |7 c) c. b
  398. INC $BA
    ; T; w# S& u/ A
  399. LDX #$00$ h9 ~6 i( Z) j( s2 i) l8 z) P9 v
  400. JMP WEAREAD
    / Q! Y; D0 i8 y+ @& c3 Y
  401. NWEA:
    8 ^5 l1 i5 d, |7 a8 t1 c

  402. & A3 k7 ^! m+ o/ |; W% l
  403. LDA #$8D
    % G, N6 |! e( ~6 H
  404. STA $2007* P& w9 s1 X; O7 N- h
  405. LDA #$00. t+ N  U( w. t) y4 o+ t" Z8 V
  406. STA $2000$ }( ~8 s& I7 H: w4 r9 [
  407. INC $BA
    7 _$ V3 z8 |  i, N, o7 {
  408. LDX #$00* |7 [! S5 k; d
  409. WEAREAD:3 i& n# n  [+ F3 w: G7 y
  410. LDA $B9% i. F2 r/ H1 k, M' }
  411. AND #$EF; F! {1 t/ U. \/ R+ Z" w" n
  412. CMP W_DATA,X* ~3 h+ o/ }  R" I% d. o; b
  413. BNE WEACMP6 N2 G6 O& ~, h$ D$ o9 L
  414. 6 [" H, _7 g3 d5 t
  415. LDA W_PPU,X
    % w7 f; t2 t6 D: j( S
  416. STA $2007
    . l: [. {0 K+ K8 t# w, M  J
  417. LDA #$00
    0 f" ]! A5 f# T. V, J0 `2 i
  418. STA $2000
    $ Q) Y$ q( W" R1 [' G: Z. I
  419. / U) h% O1 T( U1 T
  420. WEACMP:
    ( t' ]8 B/ O* q$ I9 ]
  421. INX# A/ m" ?6 g+ q0 r
  422. CPX #$05$ _3 B) S% X1 }' r  ^! y' M- u) }
  423. BCC WEAREAD
    " [+ O" h8 K: ]  y) u5 D
  424. RTS
    1 K" T& Y+ w5 G

  425. 5 f6 I: j* R. M5 ]& I

  426. 5 B* q  c$ t9 q
  427. PPUWRITE:. |* T$ X" S2 b' M8 ^! _
  428. PLA
    3 q" J9 C" r3 J  A; q* i- ~9 }! i. Z
  429. TAY
    # p1 b0 l: }! e; \$ V/ D( N  Q
  430. PLA: L3 {$ A6 R* P
  431. TAX
    + N; W, I; `8 M  J/ k- a
  432. PLA
    6 o4 Z5 n) z( h/ w2 {
  433. LDA $256 L8 A: \. b' t  y/ w, m# z$ ~
  434. CMP #$005 \: V5 \" r/ V8 K+ b0 l* b, U
  435. BEQ WP1
    ) \; |/ p* S( v; |0 `, ^. D( O
  436. LDA $25- S9 F& d8 u! T4 t3 y! E
  437. CMP #$013 a, D0 i, O) i6 o; S
  438. BNE WRE! P* Y& S% q4 Y5 l
  439. LDA $F5,X
    5 j( e, H; Z- m  u) F6 m$ H
  440. AND #$EF0 r" L* D" \% w+ h1 m' s- u1 J
  441. BEQ WRE
    4 D6 s0 Q. {5 R3 O' D0 o6 D( r; u
  442. LDA #$003 {7 L4 ?# U1 B- }: K; A2 q
  443. STA $7FA0' X3 g6 S# L) f. q3 m

  444. . d* ?% o! Q+ f) a( z
  445. WRE:
    2 e1 K! U# s9 m5 S. c1 k
  446. JMP $A000/ o. @7 r9 v1 d

  447. & A- j6 l; m, K: D0 c  z
  448. WP1:
    1 L0 q5 w, B6 I! U9 j! O7 H7 {) _
  449. LDA $7FFF2 g) k0 k& x0 E' X1 p7 @" R1 i
  450. CMP #$FF& k! ?! n0 {0 H- F. e4 s
  451. BNE WRE5 O( ]1 t- y- I/ |
  452. LDA #$00  B( H. H: U! s+ r& q
  453. STA $20010 S, a" }* P2 t/ {# ?
  454. LDA $BD4 ?6 x( b( a2 u( E8 X
  455. PHA# q. g% w% o+ u9 P) A2 b/ G; T' F
  456. LDA $BC/ ~( T; {0 y  O" e
  457. PHA, q% l0 N+ m/ \& B* w
  458. LDA $BB
    $ M, w& L( B, t. f6 K9 {
  459. PHA
    4 T6 z8 ]" J& m3 D- }
  460. LDA $BA7 x; t5 R% P. v( H7 B' F, v/ s
  461. PHA4 M! r! b! [5 Y+ \- j0 V
  462. LDA $B94 r% s1 g% O8 F
  463. PHA
    " \  j8 ~- A% x1 s0 f* N- X) q
  464. LDA $B80 f$ V8 _6 q% O! J  |( H* r: W* t
  465. PHA, T& f6 ?" C- `3 p& q4 j( e: b8 h
  466. LDA #$00% x1 @4 x0 W# T4 B2 Z! t+ V
  467. STA $B8
    & P; |$ D* k! H& U
  468. STA $B9
    : h& ~3 O( w. o: e( E
  469. STA $BA5 b* V0 b* H  d% I5 U* s7 a' d; ^
  470. STA $BB3 x' ~4 t# U; J4 `, |
  471. STA $BC
    - N: X+ O4 Y* m* B: s' ?
  472. STA $BD
    ( y* a) b/ q4 Z1 p; F  F" ~
  473. LDA #$00- `5 e8 n  F" {
  474. STA $7FFF
    9 Z; F7 R  N5 `  R) q
  475. LDA $30# E- e, d& J) `, U( A7 g  x
  476. CMP #$02
    ! |3 {+ u6 q2 f- S% ]+ ]. ]2 e
  477. BNE UNPROCPL
    5 X5 ^7 I/ K  q; V" W
  478. LDA $7EFC
    % K/ _. Z/ v5 h6 S! D* }
  479. STA $FC% Z1 Q% j% E5 a8 t, o
  480. LDA #$00
    0 t' R5 s9 l! c" c6 E
  481. STA $A4
    , w" L7 b( s" l( u  ?7 ^
  482. STA $A5
    6 c& K" c. m0 B' U3 s3 W
  483. UNPROCPL:) b4 R* Q9 l2 p
  484. LDA $7EFD. x8 a* ~/ o3 s8 E3 c% ]8 u
  485. STA $FD! }, @" Q( O. z( L4 |( `
  486. LDA $7EFF$ c% }. _) x* z* n8 x
  487. STA $FF
      @0 c: X# g$ P/ i2 u
  488. , J) A4 T. M4 z7 c
  489. WL0:
    $ v, _3 u3 s, p; ?- Y
  490. LDX #$007 @; `# b$ N; K$ t9 }8 f: H. r7 T" v" U
  491. LDY #$00
    ; I7 Q9 M" s6 Y4 s6 N7 U
  492. LDA #$007 E, M( Q. T, O4 y
  493. STA $BA$ p2 X+ l# `) I' k% Q" V
  494. LDA #$203 N5 l5 I0 \- e8 c
  495. STA $BB2 q& P4 S6 e7 a* {1 K' o; t
  496. LDA #$00
    " Q1 L8 ?2 e/ j* n3 K) `5 D- H$ B/ g/ h
  497. STA $BC
    & w2 V9 }( |; }
  498. LDA #$601 Y$ c/ D1 u+ u" F  k! p
  499. STA $BD* V9 `3 d1 X; l

  500. : N3 o/ R/ q0 y3 Q
  501. WL1:* w1 O* g6 r3 k7 N! a5 r
  502. LDA $BD
    ) d* Y% c# {  ]8 e( j
  503. CMP #$70
    / x6 a/ ]. Z3 Q. ^" ]' e
  504. BNE WL2
    $ p9 X/ _4 E! |" k  n$ t: r+ B- m
  505. LDA $BC. \& o1 U* b; T9 n- R" ~( x
  506. CMP #$00. M" \1 O$ F0 V. A1 ]0 _
  507. BEQ WLR" N3 E- D6 K9 ?  d2 B
  508. 6 x+ h1 j/ O5 F; M# e3 }
  509. WL2:
    ( |& X- W7 t: V, g' G& h
  510. LDA $BD' P* B* m. B8 j" f1 o$ v
  511. STA $2006; V% J" V( }- I' O% S' ~
  512. LDA $BC' `6 t2 x- ^' y1 H% a5 X
  513. STA $20062 `0 H: Z. }: v7 z

  514. . ~; W' e' ]+ ?$ {- X
  515. WL3:0 \1 s' P# d# e# M# B4 s
  516. LDA ($BC),Y; H# P7 S+ ]( ~8 }/ A7 H
  517. STA $20079 z/ P+ h: [" K5 X( D8 G5 A3 d
  518. + h8 P2 o& r8 _/ t
  519. WL4:" |2 @! D9 x$ n5 J' B! g6 W6 g
  520. LDA #$00
    4 [/ _; K$ i7 W# j! L: s! q
  521. STA $20006 k1 A0 S; d& t) b- B+ l
  522. INX
    , T  T2 Y% ~+ m' u; }0 W
  523. INC $BA% f2 `/ N# [% V' C
  524. INC $BC
    ( i4 j" `0 w2 q- k
  525. CPX #$00* v, Q' A3 \  u
  526. BNE WL12 ~5 S  Z8 T! u5 V, {8 l% F
  527. INC $BB+ F# d9 z# o' J
  528. INC $BD$ o! E5 k# f0 h1 d: c% u4 G9 O4 q! e
  529. JMP WL12 Y4 p1 ]2 T- h) f" Y. R0 C

  530. - }( b. N" ?: p8 w2 ~; k
  531. WLR:
    ) @9 D5 M6 ^8 o. k7 a- L, A
  532. LDA $7FFE
    7 v1 z4 v5 Z, N2 s) Z/ H
  533. STA $07F67 Y2 m3 f# L+ T: T' g* R) s" P" a
  534. LDA $7FFD
    - b6 Q6 v5 \( ~) y! t" Y" v: q5 Z9 P
  535. STA $00FE0 z, B4 i6 r$ @5 F; q
  536. LDA $7FC1
    " _' A* N- `3 h  B, c* ]
  537. STA $07C1/ q5 }$ g! Y5 I$ b: L2 u' A
  538. LDA #$3F+ ]! r  i: ], K( U* _
  539. STA $2006
    9 A2 y/ L( z: {9 l2 W8 d4 N/ m
  540. LDA #$01( Z$ v7 C; h+ H' G4 I1 Y
  541. STA $20068 Q' d6 B& U3 ]. h" b  K
  542. LDA $07C1
    1 k3 Y* ~8 G" j% |- \
  543. STA $2007
    8 N2 K: U2 r- x( b$ c( Z
  544. LDA #$00
    % T0 c( r+ w8 P* a) A/ Z, j1 q% R
  545. STA $2000
    + P' L+ P! c- z5 z
  546. PLA
    0 L0 E1 p5 _' P" m- V
  547. STA $B85 i4 ?6 Q% M8 p  v1 [0 s- J
  548. PLA6 y: w* T6 [- |; @' s. _4 J2 j% h8 b
  549. STA $B9
    3 S1 L. D/ y( H  d
  550. PLA; b" n  b& k  D$ j" o; W
  551. STA $BA$ C  p* O8 M9 ]. [( V
  552. PLA4 L( N! Y3 }5 Y& C7 X$ B
  553. STA $BB
    7 P3 ?0 W: I2 v: r! w1 \) D. ~, X5 t
  554. PLA$ R) F/ H9 U! s4 |, u9 D2 h& U
  555. STA $BC7 s: E8 e7 d+ @& V: R# M
  556. PLA
    9 v' Z7 O* {& K( d; n
  557. STA $BD
    ; U4 m! E+ h7 D3 g2 H' |
  558. JMP $A000& y# ^. \  _) z& I$ I' B
  559. ' {# X8 \2 ~! Y( Q: b6 y: {: R
  560. FREE:                ; 暂存器保护
    9 k, w" i1 F! o* V
  561. LDA $BD
    " v1 d3 g6 Y" a
  562. PHA
    # S: d' A: c/ b& I4 Z
  563. LDA $BC
    0 H$ m% p& Q, c9 M
  564. PHA
    ) B" I& @6 m/ v  A0 B
  565. LDA $BB
    ( q$ r; N5 G% j1 M
  566. PHA
    6 P7 d7 x; V6 L7 o" h% _
  567. LDA $BA
    % F- i+ ], o  f" Y7 Z  }' x
  568. PHA
    % Q- e/ ~% c3 |, F
  569. LDA $B9
    3 S  n, b" O. a2 _$ I7 e5 T
  570. PHA
    ! V( B% T" n  k6 ~# N$ Q3 L
  571. LDA $B8' }; M) x3 J* ^6 o
  572. PHA
    : a. x' Q9 ~+ B) y5 f% e
  573. LDA #$00
    4 e, j/ Z. t  d9 t3 {; H
  574. STA $B8
    4 G2 D" }( N' `5 f
  575. STA $B90 S! b7 e! t0 Y3 Q2 H
  576. STA $BA
    ! @( Y/ `; z9 b: x
  577. STA $BB
    3 [6 s' O) B: k% T1 L- ]2 X
  578. STA $BC& ~5 s. H; T) o3 l5 G7 h0 m: R
  579. STA $BD
      g4 b! [) m6 B$ K8 g* j- T% w

  580. 9 D1 b  T' u, a% t$ l" G' X
  581. WEAWRITE:                ;武器ppu写入- t# S/ c$ E- Q! C! f' D
  582. LDX #$00
    2 _* H9 S  h' G+ ^& q
  583. LDA $AA9 N( |0 O" V* \! c. M1 F
  584. STA $B9
    8 R2 w( W+ H# g  f2 M: q
  585. WEAINI:                ;地值初始化. ^0 @* M2 B/ k. n6 H; C
  586. LDA #$A4
    ' v, M8 d1 H* O) z
  587. STA $BA' d1 u) m5 x; |
  588. LDA #$20
    $ n3 g5 z. t' K( _
  589. STA $BB* h5 H6 `. i. j# |* T: z

  590.   w  I/ j1 n- }9 f

  591. 6 t% t1 Q3 n: k1 W
  592. JSR WEA: ^$ Z1 V0 I! u( `1 L2 K
  593. LDX #$00                ;武器ppu写入
    ) v4 s5 c& M2 a. ]0 [
  594. LDA $AB
    9 C. ]! t* t* @# C! v% T- j$ V
  595. STA $B9
    8 |; J; W2 A! o: n0 D) T( Y: V
  596. LDA #$B3$ {* O2 B1 i, j6 H" ~7 c
  597. STA $BA
    ! P% N3 F  T; V5 b
  598. LDA #$200 S, k9 i8 o0 ^7 {& L$ P4 b
  599. STA $BB, d* I0 \( y3 ]. U

  600.   Y/ H0 J; ?( `$ }
  601. 0 O/ O/ B1 w% K) O
  602. JSR WEA
    2 |& q4 }$ d% U+ G! N

  603. / _; r8 l4 @4 [! c; i* d* f& D
  604. LDX #$00/ u8 v% I2 y3 R
  605. LDA #$E44 @3 u: B! q* t. G
  606. STA $BA% L+ ?+ h* T/ E3 N
  607. LDA #$20
    : L9 f4 J/ R$ N! \
  608. STA $BB/ _5 s- c0 F9 O* B; n: Y, K( d1 d

  609. $ t% x' e( Y2 }8 t) r
  610. % r: H, @" d6 h4 z) v8 z
  611. LDA $320 k2 M, }, G- L+ }- A( z1 V+ ~
  612. JSR PLAYERLIFE
    6 J2 M9 R: f# v  ^

  613. + t' a/ G* U) `! P/ Q5 g
  614. LDX #$00
    * w" T4 V  P' P
  615. LDA #$F3
    $ O5 @7 S' ?% H7 [
  616. STA $BA* ~3 m8 v+ Q+ M
  617. LDA #$20/ [/ R- @0 W" O1 l, V/ `# M8 G
  618. STA $BB
    $ Q9 ?& @$ l  x5 y

  619.   e5 P6 l$ c2 H- k, Q% o& d, H
  620. 6 s/ K$ q/ {% j8 I/ r  ~1 v
  621. LDA $33- x$ O' @) L# N  f3 Z. B6 x
  622. JSR PLAYERLIFE/ E% `% c5 ?) O* L! l

  623. $ U7 k5 L% {/ }3 J+ _$ ^

  624. 1 _6 \* o9 t$ |% I! U
  625. JSR PLAYER_01_PPU
    ' i9 Q& `3 Z5 n) ]
  626. JSR PLAYER_02_PPU1 d) C) \5 A% y: n" Z+ V+ h

  627. , k3 Z5 ~( ^9 ?6 P5 {
  628. 1 w2 w, A0 a8 n0 A+ a( `6 E
  629. JSR PAGE_PPU
    # k5 h0 h& `, Q! y# e( I; o, v
  630. JSR PAGESELECT
    " @; L% Z# Y1 {+ D# \9 J% `- T
  631. 5 y  r0 _3 {. ?% f; C6 K

  632. ( S7 I& |* D4 f5 V5 [
  633. 7 m# o5 \8 {6 |3 f( D  Q

  634. : d. w) I7 J8 x& _
  635. / W6 m1 v) O( F# {1 [% z
  636. 2 T6 m. _  ^! @% T8 k
  637. . o) Z- b1 C' b, Y2 d; o6 e5 R1 D5 Z

  638. 1 V% p; f0 u3 ]( v

  639. . h1 H$ N7 J; a

  640. 4 D$ W+ ]6 ~- a% d! u

  641. ) O# b' M+ s$ T6 T, @9 M% A8 e$ w
  642. 1 s3 V2 j2 o% O9 i( R7 y1 Q. w' W

  643. . O4 A. W( i" f% o% H# n
  644. PLAPRO:                ;恢复现场
    0 h# ?. X. R6 H
  645. PLA
    3 T. @, B' m8 R5 K
  646. STA $B8. t/ ]3 t+ O7 h+ s
  647. PLA( C% Z* G/ O( p+ w: {
  648. STA $B9" |" X" ?, y1 [% _  L; g
  649. PLA5 f' w# p& h# G: Y% P! s+ H) H
  650. STA $BA
    0 R& D6 O# Z1 _+ U
  651. PLA; s" y& l+ R+ P
  652. STA $BB
      c( e/ I! \6 X7 Q% s/ ^
  653. PLA
    : Q& o4 C2 j+ x5 I2 }0 e
  654. STA $BC, p, Q$ ~3 B9 |; Y
  655. PLA/ k9 d4 q( f! w( k2 P* |! B5 E
  656. STA $BD0 N6 d! {  e; Y5 m. O2 V8 Y
  657. FREERTS:
    9 d0 M+ \" y8 }: o; o0 P& p- f
  658. RTS
    6 N; U8 k' ?. X0 H$ m' a) W

  659. . \0 [% c. G1 ]" p1 D- T
  660. INVINC_STRING:                        ;invincible
    * w, M3 k) B9 V, K$ a
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80. |" n$ B9 s, u

  662. ) N* U  ^) M& e$ i% K6 R0 r
  663. INVINC_PPU:
    ! `1 _' i6 P! A' w
  664. LDX #$000 S7 Q. K, Z7 k( H2 g5 C
  665. LDA #$62
    . D! w% \0 h$ Q+ k6 V
  666. STA $BA
    - R: m, M$ ?& {' ~3 m7 }: L0 s: ]
  667. LDA #$210 P2 f- j- e$ \+ c  ^, i
  668. STA $BB! ]/ p" l1 R( K) G  w7 {, y. p
  669. 5 s, M! f' s; D) F/ w

  670. & z; R' @) F0 }9 g9 Q. v
  671. JSR UP_PPU
    , s9 P% i+ C. ]0 ^# M$ G
  672. JSR INVINC_WRITE
    % k" t" J$ k5 a# [, |. |% D# W
  673. LDX #$00
    ! c6 w- Q- g* P. V6 [# B  V7 [/ b
  674. LDA $07A0
    6 o& k( I  ~! k+ a% k% @: A- `
  675. AND #$01
    7 I( \1 Z' \/ r% }0 K' c
  676. JSR ON_OFF_PPU: ^, W) X7 P# `! ^, _: M6 F
  677. LDX #$00" O, \, n1 V! v/ m2 w! T2 p
  678. LDA #$71* `& g3 ]2 K4 k) h
  679. STA $BA
    - m' L2 ]/ S* x8 R
  680. LDA #$21
    % |7 b: K1 B$ Y  {0 T+ O
  681. STA $BB' }" X& w$ a" I; w( b5 |
  682. - P5 j+ ?0 R: ~! Q$ S4 t, `7 p
  683. # o, r+ w; K7 }7 p. I% S* Q
  684. JSR UP_PPU4 \; }/ F6 _: d4 ]/ O9 Y
  685. JSR INVINC_WRITE0 g/ Y0 O3 V6 ]
  686. LDX #$00
    ; r+ `5 W* Z4 q$ S6 Z3 f$ y- L
  687. LDA $07A1% I1 c" s! d- c- f$ {$ g! g
  688. AND #$014 G# x$ V4 }+ A* x4 w
  689. JSR ON_OFF_PPU2 u# e) U& O$ ]9 j  N, }
  690. RTS0 F/ r  w1 @+ K

  691. 4 C) k- l5 b' G! x! H
  692. INVINC_WRITE:
    - I9 N! \5 T  j$ c: M# Y; R: J
  693. LDX #$00
    / t( Z5 P- J) U( d5 h/ d
  694. INWRITE:% ]& h  X3 Q0 S2 p. b5 f7 D) D3 ]
  695. JSR PPUADDR_PROCESS0 p9 e" }1 t# Z' c
  696. LDA INVINC_STRING,X7 z3 a- ^. _2 d9 P
  697. STA $2007* k% `  v% X0 ]* c0 L$ z# m" F
  698. LDA #$00
    # @& F" q6 h! G2 t: w6 H9 j
  699. STA $2000
    ( A! {/ h  t+ S7 z
  700. INC $BA$ V, ?" x9 W! m8 u) i% k1 J7 {
  701. INX3 k! B: M" b$ l5 D' E/ F
  702. CPX #$07: r$ j$ Z4 q- L: |
  703. BCC INWRITE9 J" U" r2 Q4 x# H& v
  704. RTS9 R; @7 r; `" w2 c( f' @) E# ]
  705. $ R1 h0 V2 C% F+ K5 u" A
  706. ON_STRING:
    9 A' U$ Z1 J* p2 @+ a5 ]" a
  707. .BYTE $99,$98,$80+ ~* Y+ v( @; C/ \0 _3 _: a
  708. 2 g8 Z/ X' g- r9 d( ~$ j/ v
  709. OFF_STRING:- K8 N! G* F3 u
  710. .BYTE $99,$90,$90
    5 x! G% v2 k% e

  711. % ^6 v7 _7 H& p" M: y/ T6 T
  712. ON_OFF_PPU:
    ' r6 I6 g7 R# O
  713. BEQ OFFWR
    : ]7 c& v5 \) ?! ]1 z8 y4 _
  714. ONWR:& A" P1 l1 c4 s% u
  715. JSR PPUADDR_PROCESS1 _3 k' _. b/ w/ e$ e
  716. LDA ON_STRING,X2 \: K0 I" y+ \2 k! q
  717. STA $2007
    1 c: I' W( G& G& e2 D# {
  718. INC $BA
    9 Z& ^# X2 v' l( I8 k
  719. INX8 ^/ D# W" C/ K8 l6 [7 F& s3 ]
  720. CPX #$03( _4 T$ o2 }7 H  k. y2 k+ U
  721. BCC ONWR8 {  L* {7 P+ J* v
  722. RTS) z$ F# ?; H# m5 F% [
  723. OFFWR:
    + U* c  l4 I" \
  724. JSR PPUADDR_PROCESS. w& x; C+ l3 x& l! l( M  F$ m
  725. LDA OFF_STRING,X
    1 M: _8 L8 A# T$ i
  726. STA $2007
    " q0 a' s0 q7 x. ^* ^& Z/ ]
  727. INC $BA2 g9 D) |: B; f0 |* ~
  728. INX9 R! S) R" `' B+ m) a, Z3 }3 \, }1 c
  729. CPX #$038 r+ u0 X- a4 [
  730. BCC OFFWR  G- m- r. P; W* e  Z5 T/ _
  731. RTS
    , w; d7 P! x1 a& f) A+ Z

  732. # j9 v" w9 ^# ]- y: U* Q6 {
  733. LIFELC15_STRING:0 B/ Y) L1 T. G2 g! T4 L
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    4 Z8 Y9 ?: e( f* F
  735. 9 E1 E  m0 r/ D( T+ H
  736. LIFELC15_WRITE:5 D* l5 ~$ B& V) k/ J+ {# [5 I. {
  737. LDX #$005 q7 n* Y: _' ^3 S$ q) Z
  738. LIFELC15:0 ]; n1 v4 e, b* F0 p) m
  739. JSR PPUADDR_PROCESS+ \5 z+ [3 _* L3 G6 |- n
  740. LDA LIFELC15_STRING,X
    * R0 {; o) j2 I
  741. STA $2007) m! _: d3 r5 }: \4 x
  742. LDA #$00% p- i: ]0 N( P. e& p# C& ?
  743. STA $2000- T1 l, O; e3 K  z. d
  744. INC $BA
    8 _* z8 `! w0 e$ b* g4 J" p8 \4 t
  745. INX
    8 L, b/ h8 R( Z1 R
  746. CPX #$072 z! H; x% B" j7 u( W& L
  747. BCC LIFELC15
    , N1 W5 W5 A, V5 t4 t& W! }
  748. RTS* D; w0 }9 F6 s. U! \9 o( d4 h

  749. $ t* k2 u) ^' a5 X( o* S
  750. LIFELC15_PPU:
    * B. H1 N9 _+ e8 H
  751. LDX #$00
    * W9 B/ D+ c- |
  752. LDA #$A26 Q4 s. O8 l) Q- x+ I& p
  753. STA $BA
    ' m0 k$ Q. K) O( j/ I) M
  754. LDA #$215 s% x8 Q* r# p" e- p& O
  755. STA $BB* e! M( `  M- y; Y7 J, J
  756. JSR DN_PPU& ?" J) ^+ C4 i* w
  757. JSR LIFELC15_WRITE3 N' |- k$ Z. W
  758. LDX #$00! s9 ]* N& H7 E9 y1 C
  759. LDA $07A0
    6 Q% [# {/ i" A4 g2 t
  760. AND #$024 j, }8 E% d4 _  ^
  761. JSR ON_OFF_PPU
    ) a; n' S. e' U& t& p
  762. LDX #$004 p) p1 [' g- r) o2 E2 d
  763. LDA #$B1
    - F4 V+ u* T( u+ j6 u  `2 u
  764. STA $BA' Y" h/ b1 d; C/ p* q
  765. LDA #$21
    . `! `1 y! J9 |% h, v- q
  766. STA $BB
    ; [% V: y2 b9 v8 H5 v4 C
  767. JSR DN_PPU% L; [# U1 R- c0 p
  768. JSR LIFELC15_WRITE4 l5 w; T0 [3 T* w
  769. LDX #$00
    . q0 i2 t3 n; s6 t$ F" y
  770. LDA $07A1
    3 v* ~- I: e5 l/ T1 a  P
  771. AND #$02
    7 s- o+ B; U7 ?3 {( V
  772. JSR ON_OFF_PPU9 @& y& f0 V8 T: d5 t& h2 ?
  773. RTS+ p, D, ?' m6 c; L7 J6 |
  774. - X, f; L- O' `( W. \
  775. DOUCON_STRING:
    & [& O- _/ n: `( u9 X
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80
    + h8 }& c* t2 L- E4 E, j
  777. , o, L. |, `5 k8 n
  778. DOUCON_WRITE:2 Z+ [0 {) C/ i2 D3 h: r( T
  779. LDX #$00
    9 A" M* T: @9 G  @8 Q- g
  780. DOUCON:
    " r$ b1 K3 K4 R, Z
  781. JSR PPUADDR_PROCESS
    * s* _. f- T1 L5 o  ]: r
  782. LDA DOUCON_STRING,X
    + N2 m$ S4 z/ e( Q2 C1 u. D
  783. STA $2007
    6 c$ F/ P' n) O; q
  784. LDA #$00% f. ^5 N3 e) ]: F; s5 n, `
  785. STA $2000# G# C: ]0 e: z8 C, {* N
  786. INC $BA
    ) F7 G7 X; L8 t' f+ V/ k
  787. INX0 o, b; L( {5 t% n8 |* ^' `
  788. CPX #$07
      A' t% g* \2 K
  789. BCC DOUCON
    4 O4 ]3 O4 {! o" T
  790. RTS4 o9 P/ F6 n, l4 i: g
  791. / }0 o7 w1 k, {  @
  792. DOUCON_PPU:
    ) B& b+ j  N/ Z; S
  793. LDX #$00: F6 t) y& U5 x! f
  794. LDA #$E2
    , N& P: ?! _# X6 ^
  795. STA $BA
    : O8 c( m" b8 ?/ K/ Z2 D2 e$ J8 A
  796. LDA #$21) J1 S/ y6 K: w: W8 r
  797. STA $BB
    7 O% N! Q" @( a
  798. JSR LF_PPU3 b' K$ l8 O% f+ t- H
  799. JSR DOUCON_WRITE' [; R8 |+ f0 |: N; o
  800. LDX #$00
    : Y/ p7 K& w) L
  801. LDA $07A0% l8 m* R6 K. X. k9 z$ a
  802. AND #$041 i3 \" O- K7 b) W! E
  803. JSR ON_OFF_PPU
    8 L8 o9 ^: d) i) h# }8 J
  804. LDX #$00
    3 E3 m7 O, W7 X8 F& R$ T
  805. LDA #$F14 O( l; l0 ?# S" d0 l$ p5 `% Z
  806. STA $BA
    & I! a: x( \2 Z
  807. LDA #$21
    9 Z0 Q0 A2 A; I* r- a3 x
  808. STA $BB
    $ \  d1 z& f  }4 w/ S  O5 N
  809. JSR LF_PPU$ i( F! g6 a9 r" H- v5 [8 N  y
  810. JSR DOUCON_WRITE
    + f; H) N% w9 _5 K7 {5 A( p0 H
  811. LDX #$00
    0 f0 e' o' X1 W' m
  812. LDA $07A1
    ' A& G( S7 ?6 j5 e# i
  813. AND #$049 ]; e" `: r1 {# Z) v0 `7 G+ L- }2 d5 ^
  814. JSR ON_OFF_PPU
    : D3 D0 {0 Q$ \8 W/ z6 Z
  815. RTS4 k# @! |4 t  H+ G3 v
  816. 2 T  v4 d" ]+ c; k/ u. K
  817. LIFELOW_STRING:2 v* z) g& H: y2 S
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80# F/ o) S. l- ~  n3 W2 Y* O
  819. 2 }1 b* u, }/ J5 k* f8 Z% S
  820. LIFELOW_WRITE:* G5 w  n+ z/ j0 Y
  821. LDX #$00
    & u: ?5 p* B- g* t1 }
  822. LIFELOW:4 i5 L3 d* @6 w( b# m! N* k7 }
  823. JSR PPUADDR_PROCESS7 F6 `" U: ^2 ~7 V
  824. LDA LIFELOW_STRING,X0 P* y' V3 A1 d) {
  825. STA $2007( }% [* y% }# C
  826. LDA #$00
    4 {& b% M2 S5 ]% {* B, P
  827. STA $20003 r# U* E: l1 D3 U2 i& E' }
  828. INC $BA" ]- A" ]8 e2 M  i3 D
  829. INX( ?9 O# h5 p6 F! [9 J' S4 h. M' K
  830. CPX #$07
    5 W$ D# O) K% e
  831. BCC LIFELOW
    9 G5 M# v' l  t" _# c; _
  832. RTS
    + m9 `1 ?3 s8 `% K* E

  833. 5 H6 Z9 W  d7 A
  834. LIFELOW_PPU:
    5 t8 i5 q7 v% f
  835. LDX #$005 k: t7 O1 M( Q" ]& g" m
  836. LDA #$22
    % a! R3 f% U8 u
  837. STA $BA9 }: V3 u! L0 D- }
  838. LDA #$22
    ; E: b5 I; F/ [, ?
  839. STA $BB
    & n, @! l: }: Q/ W. _
  840. 3 }3 `2 w" s0 k+ z2 J

  841. % L8 o% Q# R1 J8 i1 ~* r
  842. JSR RG_PPU
    - ?! h0 x  I5 K0 X. H
  843. JSR LIFELOW_WRITE' [, q4 m$ r2 {9 x' ^
  844. LDX #$004 E* b2 t9 B7 H9 w: @. i" M, E
  845. LDA $07A0) h( G" H* v. T+ S
  846. AND #$083 E  u4 |2 a' O6 Z0 h
  847. JSR ON_OFF_PPU3 `% }& O# V4 d+ a& {
  848. LDX #$00+ R" @" N! _! h: V6 J
  849. LDA #$31
    * A7 r% u) V/ T9 G
  850. STA $BA3 c3 u& v9 i( I* Q  p$ b
  851. LDA #$22
    ; M, \4 }+ H3 b  M! I' e' P$ M
  852. STA $BB
    2 E7 e, t: R1 p( d' u4 |
  853. 4 B9 l) D) r5 b. `, m7 v

  854. ' p2 i2 w# z3 J
  855. JSR RG_PPU
    * S% S+ Q$ Y. @$ x3 e8 Y2 `$ O
  856. JSR LIFELOW_WRITE
    " B4 N) ^6 B& q' _8 g+ e+ x
  857. LDX #$005 S( N7 I3 d' O. u, L- @3 ~
  858. LDA $07A11 i& D& P0 o: p# g5 x4 L, N
  859. AND #$089 a$ D5 \7 e! R& p4 g
  860. JSR ON_OFF_PPU
    8 R5 V# q; c: u5 C$ ^: n: y
  861. RTS
    2 v4 y' g. w& x" V4 R

  862. 5 A3 f5 [2 m' J5 p
  863. KILLON_STRING:
    8 R- G, o7 G% `# P9 Z
  864. .BYTE $95,$93,$96,$96,$99,$98,$803 x: k* G! c* p/ ^8 ]5 E5 }2 I

  865. - z( i+ e' \) R7 p* Q
  866. KILLON_WRITE:
    1 q# v, N# O" c2 w0 J  w
  867. LDX #$00
    . T* `, t- d# ^( N
  868. KILLON:
    5 \" T( T/ }" J1 U
  869. JSR PPUADDR_PROCESS
    3 X- Z3 v& `* h! K& S  h" c! ~
  870. LDA KILLON_STRING,X
    # N/ T8 A! g( x$ \
  871. STA $2007
    . Q/ h5 v) l5 \
  872. LDA #$00
    ! [, U9 u; J1 t5 x. o( Y
  873. STA $20003 J8 l* w8 N) I' E7 s
  874. INC $BA/ }6 M! K( [( m( X& G, f3 z2 J* z
  875. INX* y# _: O! @9 m/ N# L0 r
  876. CPX #$07
    ! E% I  p0 W5 y& p2 R6 m
  877. BCC KILLON6 B1 x' v4 N6 }* C9 e6 [, D- N
  878. RTS0 v: {2 U, ?' L* }1 ^5 t& N+ b
  879. " ~4 M7 R4 s9 E) x; s5 `, I$ D+ c# e7 i
  880. KILLON_PPU:
    & M6 `, {$ g0 w
  881. LDX #$00
    . `5 I& U- G6 I  a8 ]" i9 Y
  882. LDA #$62
    7 |  I! `. q$ x4 }; [' _' u
  883. STA $BA' S7 N" ]7 P2 j
  884. LDA #$22. e/ f- i2 ^. \1 a" ~
  885. STA $BB& [& @) j8 P5 v6 i

  886. 9 B" t- p9 g8 g( E. J4 L
  887. 2 o  w% H3 t" ^* b
  888. JSR B_PPU  W: O6 c! r! W" N
  889. JSR KILLON_WRITE0 |* j: Y1 `  K5 o
  890. LDX #$00$ Q9 _- _  p; t1 r6 F; L  @
  891. LDA $07A0' l8 v; N! k/ w7 r. `
  892. AND #$10
    , E) A( V8 L/ R, y. J/ ]. [! L
  893. JSR ON_OFF_PPU
    ) Q0 w4 k$ H  k6 q
  894. LDX #$00, u% e3 G' B- j. j" a4 q& X& @. p
  895. LDA #$716 F/ W$ P: L$ \$ r% k& J+ _
  896. STA $BA# x& F& I. }3 m
  897. LDA #$22
    % |/ k% [4 w0 ?0 K- U8 S8 p+ V' q: w0 a
  898. STA $BB
    - {  S  L% z) o/ [! x
  899. " |5 E- T. @8 U8 W

  900. / m( R- N4 e* n  t
  901. JSR B_PPU" K# t  a' g2 T6 [) S2 s
  902. JSR KILLON_WRITE# ]0 y# T4 D9 f
  903. LDX #$00
    9 g" E$ F4 w1 O$ d+ I7 X
  904. LDA $07A1: G/ ?% K9 l7 o$ l$ t
  905. AND #$10
    " J' c% U$ m$ y2 _
  906. JSR ON_OFF_PPU( f1 [3 F3 q( M5 l; Y+ `& p
  907. RTS
      }0 ~, |! u$ Q7 {

  908. 5 C' r+ Y  F/ m% d; S6 c
  909. SKYFLY_STRING:
    , L! w+ t7 R) z4 N$ D
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80
    * K: Y3 P8 E6 j$ ?

  911. % c- P5 K/ u1 _! a
  912. SKYFLY_WRITE:
    0 [. H) u) o$ @$ \4 I
  913. LDX #$009 x8 H8 g' X. i; t; N: }0 Z
  914. SKYFLY:
    1 [+ N: N3 D3 ^
  915. JSR PPUADDR_PROCESS
    , W! ?4 m' w& s' x: ~
  916. LDA SKYFLY_STRING,X
    / L" o/ z& o$ n# \0 g8 x' O" k
  917. STA $2007
    * U1 j' P& c$ z$ F# j1 S
  918. LDA #$00( g! h; c+ n2 C& k+ E8 w  X
  919. STA $2000
    ) S1 R* V, k2 Y/ [  V) V9 |
  920. INC $BA
    * _1 E1 p  S& ]# W' \& S1 m
  921. INX- f: p: _1 n; u
  922. CPX #$07
    - \& `" L: v0 K; t. ]$ z
  923. BCC SKYFLY$ P2 w  W0 Z2 o7 {8 r
  924. RTS
    $ m( D4 m2 w9 e) ~+ a: L
  925. 3 C$ @* D6 {0 @. [9 N2 U. m
  926. SKYFLY_PPU:
    : t; {+ w2 t1 n7 i
  927. LDX #$00
    2 K0 G' s3 w: H( c
  928. LDA #$A2# }5 t, {9 U3 z$ T# k
  929. STA $BA
    ( o- n) Y1 j, e* _( m! g
  930. LDA #$22
    3 f# \- p: n; E
  931. STA $BB: H7 K% f+ Z. Z5 v2 u7 s) G# g$ q
  932. - Y7 ^& a$ K1 r) I- Z( [5 m2 F: q
  933. 7 M+ I- h6 {9 j( }& Q
  934. JSR A_PPU1 P6 w8 m" _! p* G$ K: r! o
  935. JSR SKYFLY_WRITE( A2 r+ A5 c# `
  936. LDX #$00
    7 k' u/ }5 w* [1 }' K4 q8 D2 M5 S
  937. LDA $07A0
    1 E6 i1 Q/ q$ q' A* l2 X# e/ r
  938. AND #$20
    ( a! A% F# J  |  r. |
  939. JSR ON_OFF_PPU7 w# C. ^, ]# r, e1 J, M! y
  940. LDX #$00) L* y3 J% w* G  n
  941. LDA #$B16 C; \: i9 \( u8 _- C* a# ~
  942. STA $BA
    + H& g: y( a; O0 y
  943. LDA #$22+ x3 Y" S  Y" e( _7 d3 f# P
  944. STA $BB/ B2 d2 t# o  E
  945. 2 o% W( g0 B8 b$ D, `6 E0 b' l

  946. ) Z  D6 K* N! [% H& p
  947. JSR A_PPU' C# c) i- |5 a' q
  948. JSR SKYFLY_WRITE8 H! ~! c4 k$ V' G9 c
  949. LDX #$00
    ' A$ h4 c7 Q3 M! s- k# O/ q  q' K
  950. LDA $07A1
    ; t/ u0 I& R& r( j6 {1 |# ~" T
  951. AND #$20
    1 n$ A: P  B/ R; u. ]$ o
  952. JSR ON_OFF_PPU
    $ \" {/ e3 G& E4 c* V8 T3 q/ O6 c
  953. RTS
    * p2 j$ x$ a1 s3 }; R
  954.   D4 W0 k/ [) {0 ]# L2 ]
  955. BULADD_STRING:
    # t/ w; I% K/ ~3 {" w; |" x. i) p. q
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80
    4 P$ J% o) w0 b# j# ?
  957. 1 i2 L1 `: B/ {
  958. BULADD_WRITE:
    . ?4 ?4 r: C. `/ [' ^* z0 H! ^* @! X
  959. LDX #$003 N  o" O. N% r  B, x! j
  960. BULADD:$ }" S3 C9 M5 n5 z0 f' d" E
  961. JSR PPUADDR_PROCESS
    , k1 u1 T' i7 A
  962. LDA BULADD_STRING,X
    ' ~4 R+ a1 n( ~9 W
  963. STA $2007
    3 ^3 Q0 i9 K4 c! O
  964. LDA #$00( ]4 v# w7 N, w  I( p7 [! c2 g
  965. STA $2000
      J9 @7 D; P! h" Z: v1 M0 c
  966. INC $BA
    ! ?! U8 ?* v4 z# ~) z0 E
  967. INX1 v5 ^* Z/ v' j
  968. CPX #$07
    / [, g- ~" r+ D; l0 R
  969. BCC BULADD) J( T8 a3 J& W/ P( f% e
  970. RTS
    : Y6 ]: F4 j0 m$ r: R

  971. - X' h; M9 F' U+ h
  972. BULADD_PPU:
    ! z/ U, Y, @* m* C- @( `
  973. LDX #$004 }5 U! |/ y% z; i
  974. LDA #$62/ s7 X7 W$ [1 l7 R& p8 a+ O
  975. STA $BA+ N. I# B7 B  h% b. E' J; M
  976. LDA #$21
    - [  n, ]9 y8 h  Z. N, {5 E
  977. STA $BB6 P# C6 N4 Q* w8 i/ ~4 w

  978. 3 g0 W+ \: k( L1 @9 B2 _

  979. 5 Q( u$ z* G. y. P3 }5 m. Y* t
  980. JSR UP_PPU
    & H  k0 N; G  n+ s' O) [( N
  981. JSR BULADD_WRITE  R- ?% L/ k) N* R
  982. LDX #$00
    9 k) e# ]$ ~+ O- X; R6 t
  983. LDA $07A2+ x  d# j2 m8 W# n
  984. AND #$01  E: x( Y, I- s, C9 }- O1 a3 x
  985. JSR ON_OFF_PPU
    ! {) P1 F1 o% q6 j4 s7 W  n
  986. LDX #$00
    ; e; g% F1 A" t: h: E2 |8 @
  987. LDA #$71' v( r, F  E0 R0 H
  988. STA $BA. _9 ?% r! ]; [; c
  989. LDA #$212 R/ e5 X7 x- h% |: Y9 o, q; P! @
  990. STA $BB9 B+ D' l9 s, z% M. t# O' j
  991. 4 p! F+ r9 P! r
  992. 5 u$ N1 Q9 g7 d% y  K$ s
  993. JSR UP_PPU
    7 T) u8 p( G# q$ ^# ]
  994. JSR BULADD_WRITE- ~4 c# l- I' x/ u
  995. LDX #$00
    8 u9 P: y- _' X# l
  996. LDA $07A3/ N, U' c# ^6 Q! _
  997. AND #$01
    # G& d1 U6 X1 I+ Z
  998. JSR ON_OFF_PPU
    / {9 B3 P- _* e9 ~
  999. RTS0 J! Y& @+ d8 x6 N9 Z
  1000. . T% H, K0 w0 N; m4 T& G1 }0 t
  1001. MENU_PAGE_STRING:
    4 K1 b  p$ y, C( e0 H
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81; _) q2 E6 i! h

  1003. 6 ^+ G2 r2 @. I0 L' o& j
  1004. PAGE_PPU:
    1 U9 d: i7 k3 q6 p; U' J# f
  1005. LDX #$000 q0 k/ w; |, }/ Z3 x$ w
  1006. LDA #$0A8 P1 e' M9 ~! a% D/ f1 v
  1007. STA $BA$ @% A2 H6 O5 K9 O! Z
  1008. LDA #$232 \1 O. X9 x* v& v3 ?# |/ |
  1009. STA $BB, g* W9 t8 s& R( P$ {# f
  1010. 3 l- J, z/ b, t' x' |' L

  1011. * q  e! c( H2 m( l: c8 G
  1012. MENU_PAGE:
    % S2 J2 z5 [+ u
  1013. JSR PPUADDR_PROCESS
    - }4 \( E. a8 ^3 v0 H, N2 H
  1014. LDA MENU_PAGE_STRING,X
    ! R( A7 G8 ^) g8 v$ i) L
  1015. STA $2007
    3 K+ p- J4 _$ R" c4 \; Q* U$ h
  1016. LDA #$00
    & O* |1 Y5 C' H$ _( m
  1017. STA $2000% m7 ^7 V7 i+ I) a, i9 P, d
  1018. INC $BA# a0 f: A% N+ |( o. \
  1019. INX5 r4 c! A6 @" J/ `8 X
  1020. CPX #$0B+ f) V, L. w9 H9 N' d
  1021. BCC MENU_PAGE3 J. c( y; J. E" q$ J( [" L
  1022. LDA $07AA
    ' s* e) V$ i# q  M6 e
  1023. CLC+ C% X6 x0 S) _2 ]2 M$ E4 m6 v$ f$ D
  1024. ADC #$82
    # L: h: ^* z+ B; S: g" r2 u! q
  1025. STA $2007
    : o' e6 C  J4 A6 ^
  1026. LDA #$00
    , w, S2 @+ J  i' p# x3 h+ I$ x
  1027. STA $2000
    9 D; u- Z' A8 B! l( y& J
  1028. RTS1 a& y( R6 A: M% R
  1029. / p- S) N9 o" F4 ]  P

  1030. # a/ W* }2 a% _
  1031. SKINGE_STRING:" _; ?: B& ^- a% ^5 y
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    7 M8 s+ ^1 g% a. \' W
  1033. + [. A5 z/ @( V8 D- g! [2 o5 J
  1034. SKINGE_WRITE:
    $ Z- X- @8 ?( z& [' c. Y( Y
  1035. LDX #$008 A6 D' o9 ?+ Y) B1 `$ b
  1036. SKINGE:
      F6 a# S$ }' h$ P4 O+ V
  1037. JSR PPUADDR_PROCESS9 Z2 o# j- G0 J6 {) k) m$ w- ?
  1038. LDA SKINGE_STRING,X, @7 R6 n2 F* @3 u
  1039. STA $2007
    / g9 {- ^% {: m% H
  1040. LDA #$00
    : O2 W; p7 M6 Q
  1041. STA $20002 u  k/ R, `6 S% r
  1042. INC $BA
    / j. d. T! o) Y! _  \
  1043. INX
    ) H, i9 k" h3 h5 ^! u
  1044. CPX #$07( u( C( I8 Y2 x/ b
  1045. BCC SKINGE( u) L! ?2 e) i2 ~& o  x
  1046. RTS, T0 Z/ z' U+ D

  1047. . }7 L. ]5 r& T3 z5 k
  1048. SKINGE_PPU:
    " `8 d3 i9 j% t5 o* i
  1049. LDX #$00
    " p( W: d& g% y  o4 n8 G+ A& d
  1050. LDA #$A2: _' Z8 r& }1 i8 L- D/ V
  1051. STA $BA3 b, i! ]/ i$ P8 l  L
  1052. LDA #$21
    . c- z) _! }. V; M
  1053. STA $BB
    5 j% D$ c7 Q. C7 h
  1054. 7 @! ]: b# t9 W& y3 u8 L

  1055. , F( w/ F" ~' y" E2 i, _
  1056. JSR DN_PPU: X* r/ Z- q* g1 N
  1057. JSR SKINGE_WRITE
    : H. p% u' \! n( ~
  1058. LDX #$00! `3 ]. X4 R6 U% [) f2 H
  1059. LDA $07A2" c; Q  Q- O- J8 @1 F$ h
  1060. AND #$023 p+ g& |4 U6 B2 j
  1061. JSR ON_OFF_PPU0 v2 H5 H6 x* @) {+ a, n+ }  P
  1062. LDX #$00
    1 t5 j: `$ y5 x% B' b
  1063. LDA #$B1
    8 s7 Y+ l" ~/ F: V- M! ^" g- o
  1064. STA $BA
    2 X0 f9 |8 ~+ x& ~* E) m  R
  1065. LDA #$21. d( J( S' Z% e: W; c
  1066. STA $BB
    6 \0 a/ g7 m2 Y4 F) N1 r, I" l9 u
  1067. 0 b' k/ `- x# ~1 V2 N" g; @
  1068. ( @9 [. e) x6 a, H' l: ^- r
  1069. JSR DN_PPU
    . u$ v) k, Z1 |* A, i2 w
  1070. JSR SKINGE_WRITE/ |1 f  t& I! ?- m6 ~* h6 i8 I
  1071. LDX #$00& A5 ~- A1 c8 h5 Y
  1072. LDA $07A39 P( j5 K: R  q1 k3 {3 D
  1073. AND #$02  F! Y8 _4 [$ x
  1074. JSR ON_OFF_PPU
    4 h( Q! Q& a3 Z# O
  1075. RTS
    1 B& X' Q* b3 _) s# q3 Z* T
  1076. 9 @& c4 F' p/ k) L
  1077. BULMIX_STRING:: R6 d, D4 r1 A0 H3 F
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80  I1 r! ]* y" m3 L9 A

  1079. ) [  f: \. g& U+ ?6 C, I( q8 M
  1080. BULMIX_WRITE:
    # x/ M3 n5 l  L* y* k+ d4 [( \
  1081. LDX #$00
    " [* M6 \- s% D% o7 Z4 y
  1082. BULMIX:1 E2 q* e6 h2 r6 X) }- B8 n
  1083. JSR PPUADDR_PROCESS
    % a7 I8 v, n6 Z; K7 A' i4 b
  1084. LDA BULMIX_STRING,X
    - M; m' T" i$ s) V0 v
  1085. STA $2007
    3 B9 O( m* L0 K4 R  O/ g
  1086. LDA #$00  G4 s5 i5 y3 L6 C8 W8 `6 ^
  1087. STA $2000
    , c% ]  n, m# g0 Z2 R
  1088. INC $BA- u( I, M* \( ^( q! ]
  1089. INX; _) Q- V1 J  l1 |- c
  1090. CPX #$07: `" g  L6 W2 w' M
  1091. BCC BULMIX6 o% N* f7 T; P; U
  1092. RTS$ C7 R5 \. d. M! Q# L) ?2 a5 h
  1093. * Y" Y0 m8 V; G$ J( d; j
  1094. BULMIX_PPU:* X+ ?/ v$ `! `/ V
  1095. LDX #$00) g7 Z  W7 X" y0 U/ t
  1096. LDA #$E2) K' J2 G& G+ _# v* T. W
  1097. STA $BA
    / _6 ~0 t0 Z4 @  V7 O1 k& M- l# Z+ n) R
  1098. LDA #$21! f3 x" ^2 R9 I4 W- A
  1099. STA $BB
    " R- W: C$ e4 O1 i  `

  1100. ! r, L! p# p- Y7 |

  1101. 1 @* o. f6 |3 m/ p* y% u% u
  1102. JSR LF_PPU+ C$ R2 \5 e1 j; U' y5 U6 m
  1103. JSR BULMIX_WRITE
      U! i6 G; Y  P/ x1 B1 F8 n) `
  1104. LDX #$00+ s: U: ?1 i+ _3 \  {1 w+ L
  1105. LDA $07A2
    ( a; W: G" t  M
  1106. AND #$04' Q# ?2 t- {  ?- Q( t
  1107. JSR ON_OFF_PPU
    5 a7 W/ h. }& {7 R( R* n
  1108. LDX #$00
    ) G1 q) g1 S2 Z* |
  1109. LDA #$F1
    9 Z, C9 M! l+ k* w9 x
  1110. STA $BA
    5 f' M6 h* D) z7 g
  1111. LDA #$21( I, r% g! [% Z! V
  1112. STA $BB
    3 F6 g0 O0 F/ V* y+ r9 }! p: l
  1113. $ h9 L% [2 n) p9 g

  1114. ; q3 S+ v( i/ N: t
  1115. JSR LF_PPU6 @% {' ^- B+ D8 q4 \7 q
  1116. JSR BULMIX_WRITE' }0 n7 ?4 D- ?5 q* H# U
  1117. LDX #$00
    0 m( N8 b- @5 B
  1118. LDA $07A30 x$ z4 t, x6 S8 `* ^$ V
  1119. AND #$042 `4 \2 l" m  @5 W! |5 C8 P7 A
  1120. JSR ON_OFF_PPU
    + }) n. F9 \3 P
  1121. RTS- y* b( h$ N, h

  1122. $ x9 @5 ]7 m  ~8 z, ~! I- A& O
  1123. ENELOC_STRING:8 \- j; U, F7 }0 m5 l7 R0 K4 P
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    . U; H% ?" j2 l2 r* }
  1125. 9 B% u0 ]; H5 _/ S0 ]' }
  1126. ENELOC_WRITE:! B: f# Y0 A4 O
  1127. LDX #$007 u0 C' ~/ d8 X/ f& W, X* f
  1128. ENELOC:, p, \$ j+ l0 t
  1129. JSR PPUADDR_PROCESS7 p! V+ J$ x' b+ t1 n
  1130. LDA ENELOC_STRING,X8 J6 u: r; w- B
  1131. STA $20070 b6 q" |2 N+ I: M* J
  1132. LDA #$003 h( A" C$ Y8 D( s, @# v4 F
  1133. STA $2000% \7 e% z: L$ F6 S6 g
  1134. INC $BA! {; y& v4 s$ b+ C
  1135. INX1 i' p8 _+ ~! J4 K8 p& G
  1136. CPX #$07+ G( q, E( E  z% G; E4 t/ P
  1137. BCC ENELOC
    7 n, G- D- K/ v  a- h
  1138. RTS
    8 c8 K( J# z; n! P5 g8 o
  1139. ( y* G( c3 `8 ?5 O
  1140. ENELOC_PPU:
    8 ?2 D% U; i1 K( I/ s, m5 B5 F5 M: j
  1141. LDX #$007 \( J. O" B* b3 a9 H
  1142. LDA #$22. M! l7 v. W. G! L+ {, }
  1143. STA $BA) I4 N5 O- ~; m  F& p' ^
  1144. LDA #$22
    & _' n% Y+ A" G; q$ z. h
  1145. STA $BB1 M2 n- y& c) P
  1146. 1 n( {) s2 O5 O
  1147. # q7 L' Y* z9 X0 l' J  {1 A
  1148. JSR RG_PPU' q. G; \  j: p5 o- X
  1149. JSR ENELOC_WRITE- O# R7 Z4 J2 t9 B6 Z* s
  1150. LDX #$001 v, V+ K3 q3 k0 S- N
  1151. LDA $07A2
    8 e; j& }% X, O& `; K: \0 m3 W
  1152. AND #$08
    ( K3 I6 U) _- r! e' F7 \  U
  1153. JSR ON_OFF_PPU
    ( Z' D/ H) R- D& j$ c2 u, E0 @4 G; b
  1154. LDX #$00
    % P5 S9 p. x( v* F& O; ?
  1155. LDA #$31
    " s) j/ R7 X3 Z# l3 E7 W
  1156. STA $BA4 I5 {; y7 v7 b4 `0 U/ ?
  1157. LDA #$22
    . Q+ G) p  c. N7 O* v
  1158. STA $BB
    3 N- r3 Y) S% w
  1159. . Q5 C# e: A3 {0 @
  1160. ; J3 h( a" j( j* B+ S6 r* `
  1161. JSR RG_PPU
    4 L* V# P6 k8 N& V+ r' U
  1162. JSR ENELOC_WRITE
    % {0 D( W1 A& r! r
  1163. LDX #$00
    : n9 B9 J/ q. _% U& c+ T/ a, @; I' Q
  1164. LDA $07A3  F+ S* X$ N( l0 M- V. \. @
  1165. AND #$084 P' }; F5 A4 H; J" C. Q. W
  1166. JSR ON_OFF_PPU
    9 c0 V& V& F( X# c# w! X6 C/ D. }
  1167. RTS
    . @3 w& ], u" i6 ^5 i5 G5 z
  1168. # b' W8 P) F* E8 g
  1169. FOCFUL_STRING:+ H9 |+ @# a& c( i9 A# q
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    . p" v* Q& N# @3 \. `$ t# d

  1171. 8 `; ^' m% ~' Z; z
  1172. ' H. ~) ?  X4 ?
  1173. FOCFUL_WRITE:, w% y8 g5 |1 r/ y2 @2 O. R8 l; a1 @
  1174. LDX #$00
    5 A% Z' ]( w7 x' l2 ^2 j8 q! N
  1175. FOCFUL:
    + w/ O5 @6 A5 F" j4 P
  1176. JSR PPUADDR_PROCESS
    3 h" P$ u+ Z8 j# W
  1177. LDA FOCFUL_STRING,X$ }  s( B* P" w; c- w: O6 x
  1178. STA $2007
      n5 a# e2 ?6 |8 L5 ]: Q' H
  1179. LDA #$009 A. h  x7 }! @( K% u, p! n
  1180. STA $2000
    . x4 I! j- s6 c( {$ i9 I# F9 |9 M# K
  1181. INC $BA$ o& z/ ]! a2 ?* H3 M- Z
  1182. INX
    * |8 i" b' [9 ^! k
  1183. CPX #$07
    6 H4 i/ @4 b/ J5 ^0 l
  1184. BCC FOCFUL
    # S( B- A7 j/ x& k# _5 w* ~1 r- \, L
  1185. RTS
    - t& o5 F; d- Q# P

  1186. 9 X$ f, g2 r% k
  1187. FOCFUL_PPU:
    ; q9 M- P( [# r
  1188. LDX #$00* y% t( @$ s% c+ S% c" Y
  1189. LDA #$629 t1 d$ v- ]. k
  1190. STA $BA: U; M3 T# v; h/ C
  1191. LDA #$22: l7 R2 q8 L0 {+ V* e( S! e$ `) y
  1192. STA $BB! W' h* Q6 X+ W: `( L. q
  1193. 9 v4 r$ i: ?4 M$ `" h3 v
  1194. ) f7 ^% c/ X2 q) @/ b
  1195. JSR B_PPU
    * B( \! R  Q: c  \$ b
  1196. JSR FOCFUL_WRITE
    / e! E0 U& a5 }
  1197. LDX #$00) n) z% q) N! v: m! l8 k
  1198. LDA $07A2
    ! [  z' a+ |5 B; T! `
  1199. AND #$10
    ) Z3 x( {' T3 ~( Q* E* g
  1200. JSR ON_OFF_PPU3 |2 S2 ~4 T1 K/ Y& j, S5 g
  1201. LDX #$005 W9 x0 W- i* @5 T5 Q' ?
  1202. LDA #$71: {9 p3 m  z. d
  1203. STA $BA6 y6 w3 s$ `/ Y; X9 C
  1204. LDA #$22
    + S3 W3 D6 Z. D2 i8 U
  1205. STA $BB
    . K3 C; I2 f" ^1 i# |
  1206. + z, F: D6 t7 x

  1207. : u5 t8 T. G3 k7 G* ~/ @3 ~
  1208. JSR B_PPU
    6 E% K; }& Z7 W# {" e
  1209. JSR FOCFUL_WRITE
    - r& l" d, |7 V) j% \6 g
  1210. LDX #$00: _" `; H+ {5 d& |
  1211. LDA $07A34 a9 j" [% g+ l. w
  1212. AND #$10! F) k; R  x2 W
  1213. JSR ON_OFF_PPU
    . [6 t5 x$ W: M' ]
  1214. RTS: ?) a- \! V( g; ?* t" _. ~) i
  1215. 9 W7 D& W5 j* C7 S+ j0 U) z
  1216. BULCON_STRING:+ S0 n4 X2 \  V; C7 [
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80# R" j5 z% M$ \1 E, ?" k% \" Q
  1218. - G& B) j' i0 C. L9 [2 R

  1219. 3 {  I; Z, n) ^& q
  1220. BULCON_WRITE:+ I# @3 }; R6 M; V
  1221. LDX #$00
    ' C1 e  I3 a+ L9 _2 V' L3 s; Z
  1222. BULCON:9 Y7 J7 U$ m) Z4 u# }- {5 {
  1223. JSR PPUADDR_PROCESS8 j$ o0 T5 @* P- r$ d
  1224. LDA BULCON_STRING,X8 ]5 W$ A3 F1 Q9 R
  1225. STA $2007' o- ]. x1 \' N2 R7 L
  1226. LDA #$00# ]5 I! b, K8 J- s2 t8 J' _8 @
  1227. STA $2000
    # T$ c2 R4 J9 E' U* c# p1 j
  1228. INC $BA% ^; F# u) n# [% T9 Q2 T1 E
  1229. INX6 x" A  n' Z8 r) |1 k7 O
  1230. CPX #$074 G. l" N4 o" Y2 i( p
  1231. BCC BULCON
    ( _2 @- n0 d# s  a% E
  1232. RTS
    0 r  \7 \7 h! d7 N: {% P

  1233. % z" _  G2 k$ W. F& o3 M* g, ^
  1234. BULCON_PPU:
    , j- J7 b" {! T
  1235. LDX #$00- R+ [5 B2 p7 |0 J
  1236. LDA #$62: F  R5 O8 b/ b
  1237. STA $BA9 M. C# u, @4 s; M9 {: C% V
  1238. LDA #$21" d/ u2 w0 T/ n: V! K
  1239. STA $BB# S' y! d6 A1 R9 E4 @5 T

  1240. , }0 b5 d) n* o* k% C# [

  1241. 9 X  ?- {  q* O2 i3 Y
  1242. JSR UP_PPU
    2 B9 C+ l, `# q& A2 M4 O$ Q, ^
  1243. JSR BULCON_WRITE4 O" E. v/ M$ e$ S
  1244. LDX #$00
    & h% d  Z- j7 |1 F( B9 C7 b. F/ R
  1245. LDA $07A4
    : _% I( v  d) L. P2 h' X% e
  1246. AND #$08
    " C# p8 z" y! L8 Q
  1247. JSR ON_OFF_PPU- R- I- A$ P6 H) E
  1248. LDX #$00
    5 {& w8 V3 O, u& T
  1249. LDA #$71+ r8 Y4 o$ r) ?
  1250. STA $BA* J! ~* a1 h4 Q$ A
  1251. LDA #$21, G. q& p4 [  z0 C7 _7 [. E
  1252. STA $BB! |5 T7 p7 Q, ~. J. `# f
  1253. / e6 u* u. d' L7 V
  1254. # D8 f1 b/ q$ @& x/ p  l
  1255. JSR UP_PPU
    % s+ L8 K) k, x: A" x
  1256. JSR BULCON_WRITE
    - m9 I. m( O% A& F; y' B/ l, B5 R
  1257. LDX #$00
    $ ~2 ^0 \( Q0 q6 w. D
  1258. LDA $07A5: n6 r+ c% y' ^* g
  1259. AND #$08
    % k  q- D8 e; z% c
  1260. JSR ON_OFF_PPU
    9 I6 r  [4 Y) Y, `  i3 k
  1261. RTS
    ! H4 G% @5 z. U
  1262. 3 A9 f0 G: B4 R) S* C$ S6 V
  1263. SPEBUL_STRING:$ v  k: F3 R9 P
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    , ?* ?5 ]( Z9 m& s, D; g- Z- y

  1265. ) |( d3 v& B) j; [" c

  1266. " B3 v* h0 g; O
  1267. SPEBUL_WRITE:
    % ^9 A) J# ~! a! q3 j
  1268. LDX #$00
      q: l2 Z# M7 L* f5 a- B
  1269. SPEBUL:
    : r- w2 o, G" u8 w' B8 `
  1270. JSR PPUADDR_PROCESS2 @( [2 g3 ]6 z1 l+ Q/ f$ P4 t
  1271. LDA SPEBUL_STRING,X& Y- o' o7 y9 C/ C
  1272. STA $2007: N' B5 \% T  p
  1273. LDA #$00( N! X! @6 A2 C
  1274. STA $2000
    ( m8 g+ y" p! T3 a
  1275. INC $BA
    / I6 q3 C' o3 j& K7 F" h
  1276. INX: ^5 q/ y5 _; O1 ]# y% v
  1277. CPX #$07
    + c# t* R; x# y6 D4 e- C& M
  1278. BCC SPEBUL- ?+ |( Z6 R/ X  l, |
  1279. RTS
    5 p9 c8 I! b9 d0 [

  1280. 4 d+ y3 A: T* x
  1281. SPEBUL_PPU:
    ) \7 Q, Y# \, c3 K3 S
  1282. LDX #$00; C( u0 E# |& h% D4 j6 n
  1283. LDA #$A2; ~+ r$ e! M- J9 J' k. c. {
  1284. STA $BA! F6 l4 r% C2 J' v! w
  1285. LDA #$21/ r; s$ t  S1 N. @! h: s
  1286. STA $BB+ c2 n( h0 l; n6 O* B; D% Y6 B% p
  1287. ' |8 R8 c" P$ f, k% {6 U/ j) \

  1288. , c. e, J' m" P6 n  u
  1289. JSR DN_PPU3 p" n2 B( ^* X
  1290. JSR SPEBUL_WRITE
    0 |3 I4 @6 l' J
  1291. LDX #$005 J! C5 p# j  l0 }) r7 z1 }
  1292. LDA $07A49 E4 `0 ~1 K0 G; r2 L4 @3 x
  1293. AND #$02* B% z) h2 w3 r" r3 A* C4 `0 A
  1294. JSR ON_OFF_PPU
    ) w  G7 W# B0 a
  1295. LDX #$00' \7 {9 [6 w( C2 x! t
  1296. LDA #$B1
    ) B) a* P" s# z
  1297. STA $BA
    2 X6 y3 H! R, V# n
  1298. LDA #$21
    4 w9 t7 R( m& F7 c3 K# ^
  1299. STA $BB
    1 W/ s$ l" m# w: l$ W( ^0 c

  1300. 2 k* a6 {) T7 \+ R, V
  1301. * j4 e) F# \$ e# \$ K' F& j
  1302. JSR DN_PPU
    1 W$ B% _+ f5 `3 M3 g' H" J
  1303. JSR SPEBUL_WRITE
    " [0 _) Y- ^0 P7 c4 J2 T
  1304. LDX #$00* L& ?2 S- [! T: {, T
  1305. LDA $07A5
    ! s$ Q: j  [8 {
  1306. AND #$02
    ; d6 |& O7 Y4 i- \9 p
  1307. JSR ON_OFF_PPU
    . J1 p8 ?; {6 ~- G% R* t/ X6 p
  1308. RTS
    4 p" C7 Q) W0 Z

  1309. & @' C; o3 y$ f
  1310. .ORG $A500/ Y, h" s9 W  r% L3 Z6 o3 Z
  1311. CLEALL_STRING:0 Z, K* g* d- T" N2 I
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    8 {3 I2 c' E. p% ]2 b! @
  1313. + I3 n! Q" v9 ^' Y5 n
  1314. 5 X+ k8 _4 G. z. s
  1315. CLEALL_WRITE:
    0 e$ z7 W% A) a" T& x9 |
  1316. LDX #$00" C; ~0 ~1 r( w% y. ?
  1317. CLEALL:: [# [, c) ~4 }! h
  1318. JSR PPUADDR_PROCESS
    ) {* m* ~, V) `9 ~3 }, e# R
  1319. LDA CLEALL_STRING,X
    % C# F: T* m% W% Y
  1320. STA $2007
    : ~; Q$ ?1 y, H( b5 a
  1321. LDA #$00* z# a! H0 n, Q3 c! ^4 M& Z4 d3 _4 I
  1322. STA $2000
    8 \4 f# T% E! \, x
  1323. INC $BA
    # ]) n* }) d0 r5 a* v
  1324. INX
    - B. l  J# y# L2 B1 {* c" T" _: @
  1325. CPX #$07$ v/ x& G. x% ]2 O/ |2 g
  1326. BCC CLEALL
    + D% {( M2 L$ W7 ?1 H) m- k6 F4 n
  1327. RTS1 a6 r0 l* W4 i. c- v; S  R0 _

  1328. : ?0 i. Z$ f. f8 ~( t5 z' B, g
  1329. CLEALL_PPU:+ s" E  A- o" `2 ~" ?( f1 y
  1330. LDX #$00) k! u" K6 w; W, d  m; e. A
  1331. LDA #$E2
    1 e4 w; X, I0 `' J  v! V; w
  1332. STA $BA( u+ u- m  X2 U1 T$ M4 [
  1333. LDA #$21
    8 o4 U& \% b' \
  1334. STA $BB5 Z  K# d! M- ^' k) Q
  1335. 6 W2 z- z2 z) ~7 c5 M
  1336. , A7 n# E4 K/ H1 K( l3 c+ U
  1337. JSR LF_PPU2 l: j! @! {& ~6 u; f) i
  1338. JSR CLEALL_WRITE
    3 O# [5 a3 C9 z
  1339. LDX #$00
      M, [' w* x$ @4 B
  1340. LDA $07A4; d* z6 C0 R: E! _
  1341. AND #$042 y; M; \* B9 J) n. Z" v( U" z) M
  1342. JSR ON_OFF_PPU
    . \+ c8 y: _7 D4 t* d) s; E6 {
  1343. LDX #$009 u4 r4 N  X: M8 J: ~
  1344. LDA #$F1/ g9 C# W, \( u, J( ?% x
  1345. STA $BA, G. \0 U3 _$ h/ r  O' L
  1346. LDA #$218 O9 m5 o. b: U9 F4 S7 H8 @" R
  1347. STA $BB# i2 W1 U  g' y& j( k1 j
  1348.   Q* R' A/ K" z( d: W2 P3 F; Q

  1349. 5 E5 a# ], N, p# x$ J$ |+ X) F
  1350. JSR LF_PPU
    4 c, c! P) y3 I! {8 |" ^" Q
  1351. JSR CLEALL_WRITE9 P- }$ ^: i9 `8 X; ^
  1352. LDX #$00
      @6 E4 ]; ~: f8 m
  1353. LDA $07A5, s6 F7 u7 {8 N" E
  1354. AND #$04( M: M  G- s3 F
  1355. JSR ON_OFF_PPU1 m0 d' w' Z; `4 Y$ Y
  1356. RTS# ^1 _1 o2 u  a9 R! p# Y8 w  O
  1357. $ j/ l* Q. C  ~6 H
  1358. HARDMODE_STRING:
    7 Z# o5 {! O  [$ m- G+ H6 q6 |" x
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80" ]" s" r0 `& L0 g, s

  1360. 4 l) l) d) `8 @* O
  1361. $ J6 @) m6 L: `1 l
  1362. HARDMODE_WRITE:
    2 U# W3 y/ u7 g) H4 A. z) i7 ]2 f
  1363. LDX #$007 y# r5 [; k4 k6 x" v
  1364. HARDMODE:
    ! b5 V. [: W& p7 ?1 m3 p6 g
  1365. JSR PPUADDR_PROCESS
    8 w) L! A! g" v+ ]
  1366. LDA HARDMODE_STRING,X" r9 S2 L2 q' l4 P) w4 t& |% u; v8 o
  1367. STA $2007( A( O+ U8 {, w+ ^
  1368. LDA #$00
    # B& D2 B& A3 V4 C: o# v9 k
  1369. STA $2000
    7 F. y( ]1 P6 y* y2 D& P& E
  1370. INC $BA$ s& q) g" {' ~; U) x
  1371. INX1 q  ?: }2 ]( e9 ]) @2 I& H
  1372. CPX #$07$ |) N* W. H3 J8 Q
  1373. BCC HARDMODE
    . E& u9 ]& Z5 Q4 Y  G( T- F
  1374. RTS
    8 a% h$ \9 ^0 A+ ^( O0 `/ T' {  h
  1375. ) J8 K: d7 p6 T  z' L- w# E
  1376. HARDMODE_PPU:! Q, e6 q4 J9 r3 o( g
  1377. LDX #$00- L% s1 |  {% M* g! c9 v
  1378. LDA #$22' W3 F. A" F8 p
  1379. STA $BA
    3 g) v/ I5 p  V8 O  C' D
  1380. LDA #$226 V6 I4 X$ G' W7 n
  1381. STA $BB( I/ \5 w, }, n2 U+ j0 E% G0 a
  1382. JSR RG_PPU
    6 U3 E& X9 P- w% ]! T5 v
  1383. JSR HARDMODE_WRITE8 Q' {, h' h/ t. O2 V; c6 E5 g( U
  1384. LDX #$00
    4 k! K* c0 `' T& X/ Z( z- w3 Q
  1385. LDA $07A4
      `! _9 u: M5 m8 d
  1386. AND #$01
    ' ?! u! ]7 G& B$ b  |! G
  1387. JSR ON_OFF_PPU
      l' v* d3 r+ K9 D( H' ~
  1388. LDX #$00
    1 e) c. l# R2 @" T  U
  1389. LDA #$318 I5 e3 I7 P5 s3 \1 I
  1390. STA $BA/ ?+ {3 B4 b% n( b! x4 j) {# z9 b8 k
  1391. LDA #$22: `3 \* q$ R; Q: ]( C) n: _+ f
  1392. STA $BB' i0 y% C+ W8 ], k  K' ]% I
  1393. ( d7 v3 H* X: ?# Z  Q0 U, e4 e
  1394. * S& s! H8 [( Z* e9 M, {
  1395. JSR RG_PPU0 ?; j9 k& L7 R
  1396. JSR HARDMODE_WRITE" O5 u8 @1 g! k, L( Z
  1397. LDX #$00
    % |' a8 v# Q$ t0 ?1 t- W! L5 y
  1398. LDA $07A5$ @  P3 k& ]. L! W; T; v
  1399. AND #$01
    $ b/ ]4 Y% U# x5 n/ x
  1400. JSR ON_OFF_PPU
    8 s. _; X, z2 ^5 d
  1401. RTS  ^7 o5 `/ d+ ?: S  K

  1402. 0 x; y7 {6 y' U3 @9 b  n
  1403. B_TO_JMPSTG_STRING:, G- c3 ~6 I4 A3 E8 i& R
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80& F3 B4 h( L% `3 x5 U" Q
  1405. 1 m- u. h; x+ H% k( z

  1406. $ B4 b. v8 v) u4 |: W9 ~
  1407. B_TO_JMPSTG_WRITE:3 P% q. k( B9 {/ a
  1408. LDX #$00! K; r5 Z9 w) W
  1409. B_TO_JMPSTG:! D& R8 L4 x5 ?; T7 a
  1410. JSR PPUADDR_PROCESS$ z- l8 b+ m4 y( r* `
  1411. LDA B_TO_JMPSTG_STRING,X
    " y: O9 |6 v& d
  1412. STA $2007
    , u1 k3 y- N9 |
  1413. LDA #$00
    , o% T2 ^4 z3 W4 W. @# N
  1414. STA $2000, T# J: r* |( N8 p5 V( j
  1415. INC $BA
    5 n! x; e$ S  V) l, F. j0 m
  1416. INX5 U9 G8 B& H7 i7 a/ B
  1417. CPX #$0D; a+ P6 P6 L: @  p: ]1 Y
  1418. BCC B_TO_JMPSTG+ e, Q$ ~8 B! F4 `
  1419. LDX #$00& \+ w, u8 E$ q
  1420. LDA $7FE0
    % @/ u+ p7 x4 c! x- X) B
  1421. JSR ON_OFF_PPU
    . |) l  H8 {) x# D/ q
  1422. RTS0 s% p: O. ~$ V" ^
  1423. ; J- @, a5 y3 _& u& e; `
  1424. B_TO_JMPSTG_PPU:9 C4 b) e+ O/ Y
  1425. LDX #$00
    % X: _% e+ }) a& e4 T
  1426. LDA #$68
    ( @/ Y5 h" U" V7 E0 R: q
  1427. STA $BA  _1 Z  r: F6 L2 Z% X4 t4 S* T
  1428. LDA #$22. p% P; R' g5 E7 u, x" R
  1429. STA $BB5 D7 I9 e, i" W8 k- Q
  1430. JSR B_TO_JMPSTG_WRITE0 T; l# Q2 U1 Q& Z1 b
  1431. RTS
    9 ~6 G0 m& f+ M7 I$ U% X3 v  D7 t

  1432. * l5 r( D& q1 |: w
  1433. & _7 @  L/ D6 Z* U' L0 c! q
  1434. A_TO_PLAMOD_STRING:4 Y& l9 m6 o& W( h7 E, A1 i
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80% k- W- x/ W( r
  1436. - d2 C/ W( K) t5 m' K3 M7 \
  1437.   k& q9 S- U: {! N& P; a0 c! N+ I( N
  1438. A_TO_PLAMOD_WRITE:
    # X% G9 D* V7 ~: \5 _) M+ a0 H, y
  1439. LDX #$00
    5 U7 F: G5 [5 T1 l( O
  1440. A_TO_PLAMOD:$ q) R5 R% @$ G) m
  1441. JSR PPUADDR_PROCESS; a" l: x2 C, O+ u+ A7 z2 q
  1442. LDA A_TO_PLAMOD_STRING,X2 L0 F8 n$ I7 H" M- K, S; |- T8 J
  1443. STA $2007
    % U* |; z5 G. `4 k0 o3 a
  1444. LDA #$00
    * Q9 }) w7 m7 q. H0 I- t6 S
  1445. STA $20009 Q" o  S" Q, v$ w0 K
  1446. INC $BA- ~, H& X* d, U+ Y; T8 G( E' k
  1447. INX: E/ Y3 n8 W9 V3 e
  1448. CPX #$0D8 f! A2 h% D" I# S3 k2 p0 e; k
  1449. BCC A_TO_PLAMOD% c* m2 [7 A' q6 B
  1450. LDX #$00
    + H) D& x$ {: \1 K6 V
  1451. LDA $39
    . `: T% @# ]  [9 m
  1452. JSR ONE_TWO_PPU9 \9 b5 }2 l; c6 ~2 W! Z; S
  1453. RTS
    , L5 Y2 ?" {4 A! Q$ A2 q
  1454. " p! Y* n5 D- m# S0 @6 c& ~' Y$ ^8 ?
  1455. A_TO_PLAMOD_PPU:
    * Y& s5 P9 t' I  O, J# W3 L
  1456. LDX #$00
    # L4 h7 B& Q, Y: |
  1457. LDA #$A8- P/ d" J6 M5 M3 p$ e$ \
  1458. STA $BA# \, q! T; H, y) E1 V
  1459. LDA #$226 n4 B# c# H3 c& M
  1460. STA $BB8 A) N  {. W# ]) o
  1461. JSR A_TO_PLAMOD_WRITE
    0 x( Y) _' k+ Q9 g+ V! m' `. u$ r) e
  1462. RTS
    " j; w2 N9 e/ Z

  1463. + B- `5 B0 t0 l
  1464. MOVSPE_STRING:
    % @, x4 }1 X! M* J1 k& D
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    . b; @: p8 {8 U0 M6 }

  1466. 1 |( ^" v6 f9 ^( C; {
  1467. , n8 b5 \3 O' \+ C
  1468. MOVSPE_WRITE:
    7 U' S: {7 W$ Q% U; h
  1469. LDX #$00, k# g6 Y# B* ], ^+ ^
  1470. MOVSPE:- r, k  _( y' B7 f9 x' S) R
  1471. JSR PPUADDR_PROCESS+ J, x! l2 i& y# w+ F9 g3 X; K
  1472. LDA MOVSPE_STRING,X
    ! u$ Z/ w( J* g8 `! w( U
  1473. STA $2007. v) K1 H$ }7 v+ N2 B' G
  1474. LDA #$00% r. J0 G. Q+ ^
  1475. STA $2000
    : }4 @5 ~, x& ^5 \+ B! R
  1476. INC $BA
    ; o- w+ _- o8 x  P
  1477. INX. y5 Q0 L  V  L! f8 W  s, [
  1478. CPX #$071 v  o+ E0 q, `6 p
  1479. BCC MOVSPE* u5 }! k3 V; D  A
  1480. RTS
    " H) m8 ~& d" Q" p+ |" V+ k
  1481. , }1 B5 k2 N. V$ O' V
  1482. MOVSPE_PPU:
    & }7 }1 _% q  X& ?
  1483. LDX #$00) n+ c( Z; M( W* [0 ?" L* l- S) J
  1484. LDA #$69
    " k$ _; c6 y- q' Z* Q
  1485. STA $BA
    / L2 {+ G) G, B  `! c4 v% [
  1486. LDA #$21
    " T3 n0 I3 x- n+ n2 W
  1487. STA $BB: q$ l. o5 M/ o. B' ^
  1488. , l- H3 y0 P% b/ x! {5 }3 s

  1489. / W  c8 O& r8 S9 [
  1490. JSR UP_PPU: g! u! x/ l) R9 A* R5 M4 E! k# E
  1491. JSR MOVSPE_WRITE
    7 j) J1 `7 H; I$ e9 e
  1492. LDX #$00& W& k/ V4 T6 u8 g& x7 x" b: c
  1493. LDA $079F
    7 @/ i% _6 {; D4 ~" A/ i
  1494. AND #$08  k. I8 ]* C5 X  `0 v1 d- j
  1495. JSR ON_OFF_PPU
    + `" n( }% p$ D' B) Z- [9 H
  1496. LDA #$808 E0 x' I# k) X: e
  1497. STA $2007
    4 t5 y5 p; ]2 `0 ^; [1 E* p4 u0 e& h
  1498. RTS
    - e  _9 j3 p3 _& c$ G
  1499. / G) D0 j2 W  m, w- I7 z
  1500.   
    + E0 M3 L1 p( J% C: ~% _. x# D
  1501. UNLJMP_STRING:. x% D4 A0 O% H5 J8 p- t
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80( r( ^: ]) N) s* |

  1503. 7 B' Z3 ^' X$ v9 D
  1504. & @9 {5 ^: Q# w$ F, _6 I
  1505. UNLJMP_WRITE:
    2 d: H9 e+ V! J. A; t, E# _8 G
  1506. LDX #$00
    7 U2 D) X2 ~" k
  1507. UNLJMP:4 O2 }. s0 X+ e' \% O
  1508. JSR PPUADDR_PROCESS
    + D( a1 n$ K' b
  1509. LDA UNLJMP_STRING,X
    5 ?+ v+ E( [  _+ O
  1510. STA $2007; w! J9 q9 N, u
  1511. LDA #$00& J: _- j( G' W( o3 ^9 C' H6 L
  1512. STA $2000; i* z7 {2 M/ M# ]) x4 Q0 m
  1513. INC $BA3 E% r1 n4 O1 T# |
  1514. INX9 |+ d# T/ r+ z$ k) k* c8 c
  1515. CPX #$07
    / u; Q$ s- g: Y/ B2 m3 P% d
  1516. BCC UNLJMP
      \% \& b3 n4 K5 r1 y
  1517. RTS
    5 i3 d% P; @; `) N" B0 d

  1518. 1 E# o4 ^( X  G3 f
  1519. UNLJMP_PPU:/ x; V# d% l' H/ G5 O8 v& ~; c; B
  1520. LDX #$00
    9 A( c6 [- v5 s$ l' `' b
  1521. LDA #$A9. d0 c0 x  E& P2 F! E3 w+ X
  1522. STA $BA
    1 O7 K6 O' F: G7 W0 p. w
  1523. LDA #$21* a! A$ _: E( B- o+ t' ^+ c
  1524. STA $BB
    & H9 y9 {9 d! K9 i- t2 x) p0 ?

  1525. 5 _- S0 j9 R2 Q2 ?5 C  Q6 p
  1526. - v2 l! ?6 u/ J2 {" V
  1527. JSR DN_PPU
    . c% F+ e9 N; T9 ^. {) Z0 K; x. S
  1528. JSR UNLJMP_WRITE
    4 ]/ }) j! k+ C) f. H+ Y6 J
  1529. LDX #$00
    1 y  l" a" ]  A6 A$ j6 S  G! o
  1530. LDA $079F9 ~6 z" Z9 s& Q1 u7 P# T9 q
  1531. AND #$04
    7 v* i* k% o& P! I$ @7 k
  1532. JSR ON_OFF_PPU! D; `' J5 K  v# j5 e
  1533. RTS" N, B; s9 g* `& R$ ?- X) A$ N

  1534. . l" b2 {3 ^! n2 x1 b( p& H& K+ B1 x
  1535. . @: W; \' G' X% ]8 `
  1536. DESTRO_STRING:' j3 q7 E/ R7 Y* c/ h: Y! Q
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    # s. L) ^% s. T3 I! f9 i2 N0 X

  1538. 9 l* |( `8 S. A* f# X; u
  1539. ) g& P# ]4 Z; v% I9 J1 {: y! K
  1540. DESTRO_WRITE:2 Y7 j- d/ \3 o7 S' l
  1541. LDX #$00
    2 a7 ~. ^+ {" S# h+ k* q
  1542. DESTRO:: l2 z( ]! }3 F* T: F, }- _/ `
  1543. JSR PPUADDR_PROCESS
      W9 Z, T8 I0 J4 {/ |4 a0 M4 T
  1544. LDA DESTRO_STRING,X
    4 W" a. H' d6 M' t
  1545. STA $2007
    * L% a/ h! J' E: b& {& y7 \
  1546. LDA #$00+ v2 w6 L, J) g- Z# T
  1547. STA $2000* K/ w# s' Q) D3 L1 w( n+ y
  1548. INC $BA/ X, }( m! B5 p/ E0 Q9 k& A* }
  1549. INX
    : U* ]9 |6 R0 f
  1550. CPX #$07) |0 ]! Q# L5 [% q5 h6 ^% |
  1551. BCC DESTRO- |7 ]: r- x- L* s6 r* w9 v
  1552. RTS# z2 A, I+ Q- k& B: P& A
  1553. # @7 i  g* G1 C+ Q5 E0 T+ C
  1554. DESTRO_PPU:4 n! c+ x0 _5 ]2 T$ V
  1555. LDX #$00
    * ^: k1 m, ?2 R$ `) V1 P
  1556. LDA #$E9
    3 J) T; |4 O, ^
  1557. STA $BA
    2 F9 I7 {, R  c; ~) h
  1558. LDA #$21, S% i; y* `$ ]8 R2 I! d2 ]
  1559. STA $BB
    . O% B' ?! ^" L+ V3 g

  1560. ' B& ^! w6 t) e% A) Q) ^

  1561. 2 e3 b. u4 h* ^  \8 p# }% Q, q: b
  1562. JSR B_PPU2 e/ p* l0 m* s7 M/ W
  1563. JSR DESTRO_WRITE, g5 w* @, V2 R0 i2 E" q; w
  1564. LDX #$00+ \8 L9 x8 n$ k
  1565. LDA $079F5 t. i& h% I, Z9 K
  1566. AND #$40( J6 r3 D' B/ a/ [3 ]
  1567. JSR ON_OFF_PPU
    : Q& t1 t7 J& L: D
  1568. RTS
    0 T! `( P6 B5 Y
  1569. 4 f. U; i3 U/ p9 }; S8 Q/ t- w2 ~+ {
  1570. : x! X! `+ |) e# `5 F& I
  1571. EQUBUL_STRING:
    ! i* H( Y. D8 U) w) U' p
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    4 f2 I. |6 @8 l3 [0 R) Q3 f
  1573. # q, l% M. Z+ L  v: Y9 i% Z
  1574. & X  x3 l0 h" K3 i
  1575. EQUBUL_WRITE:
    & }. \8 y3 p- ^
  1576. LDX #$00/ k% X4 b3 D# h, V1 y6 o! ~; N
  1577. EQUBUL:" J& M$ f% Q+ j5 s% w; C% E
  1578. JSR PPUADDR_PROCESS* y) ?9 i" e8 M  S  b# _
  1579. LDA EQUBUL_STRING,X0 A% `7 B" H4 E
  1580. STA $20070 I/ L6 s" T5 o
  1581. LDA #$004 c- i2 T; x. F' X
  1582. STA $2000
    $ E9 ~3 y: E' a8 {, ~+ \4 X
  1583. INC $BA/ K0 t) t3 _% Y4 ^7 B; a, b
  1584. INX
    . W6 T  K3 {9 A/ V4 `  A
  1585. CPX #$074 V9 K* k- e; v$ Z8 E! T) R
  1586. BCC EQUBUL
    ' Y, }1 q6 u5 l2 I, K) T7 z5 g3 {
  1587. RTS. I! g# s( v  k, E) x- z# S
  1588. ) h0 J9 z8 N9 e/ |" W' x* x9 C
  1589. EQUBUL_PPU:
    $ u' I: G; m+ h" \
  1590. LDX #$00, w6 j% [6 N3 ?- p7 k# v
  1591. LDA #$29' r3 W9 ]0 B  {% Z4 M- f
  1592. STA $BA1 y( S; j9 U( z% C) v! M' [
  1593. LDA #$22) N0 L& z; c6 V, s  \7 A# K3 d* n8 G
  1594. STA $BB
    . g7 _  ]2 a% x$ \

  1595. 3 j! a) \5 D& i

  1596. # c' [- t. n) ?8 ?8 I
  1597. JSR A_PPU. X. Q: \: W1 a5 N6 ]5 Y# F7 n% \
  1598. JSR EQUBUL_WRITE
    0 K$ j1 t( j* w9 w  W
  1599. LDX #$00
    5 p1 l: n+ j! T( F" E
  1600. LDA $079F, P% u4 L' z6 J
  1601. AND #$800 ]: U0 ]5 X4 P- M# ~, Z, w* u4 {
  1602. JSR ON_OFF_PPU4 e4 Z2 P4 L* `
  1603. RTS/ R( |/ P( m$ P) G7 y8 L8 z

  1604. 5 R. O6 p' H  r; s% Y
  1605. 0 w) u5 R: |- Q* K, y) }$ z
  1606. & f2 K; b- y( \2 v
  1607. BULSEL_UP_STRING:: }7 B6 s1 M& W3 L1 a, E
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    " m& a% m* O: M$ f* y9 F

  1609. % C# v) m" U: h
  1610. BULSEL_DN_STRING:" N- M* s! P7 V8 E; w3 t6 X
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80' n9 r2 H0 C" \5 g1 y2 D7 ?4 V* g
  1612. - I" O) \; Q8 s
  1613. BULSEL_LF_STRING:" b" X4 V6 D! Z& i0 E5 ]3 b
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$807 @0 b  p0 q) p3 J' o
  1615. ; E! K( l! ~; Y9 b# [7 b) m
  1616. BULSEL_RG_STRING:, L+ J- K2 \3 ]" O$ W2 S
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$802 D. ^5 ~2 J5 c' b' v) v

  1618. 6 V, y9 C3 n: Z" g9 ^: W
  1619. BULSEL_B_STRING:
    / ~: B) v- F5 ^6 |
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    ' C8 i( J3 y+ B

  1621. - ]4 j& W" I* _7 n- ?
  1622. BULSEL_A_STRING:' @& S. E2 I4 d
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    1 s4 I6 F# @! |

  1624. ; T% r" r/ F3 U( D' O4 R8 l" N

  1625. . p3 ^( V( ^- b5 e0 Z, `! H9 s) Q
  1626. BULSEL_UP_WRITE:
    6 l+ T+ ~  ]2 U7 z4 X
  1627. LDX #$00* d( K) x7 h1 F- p7 i. O
  1628. BULSEL_UP:
    ) U% Q4 L4 o% x* C; q
  1629. JSR PPUADDR_PROCESS
    & b+ _2 j  ?5 M3 f; p& t
  1630. LDA BULSEL_UP_STRING,X3 s) s5 b; [3 u  {0 H- ^1 t1 {
  1631. STA $20078 w3 b( G2 H- T  n/ l3 a% A
  1632. LDA #$004 j3 Y% p; c( U1 j
  1633. STA $2000/ I( Z7 o* a2 Q) \9 K5 g+ K3 R5 R5 V
  1634. INC $BA$ G2 {' {; Z: {$ ?2 M2 j; T
  1635. INX2 X  m( k& Z* B# N: v5 Y2 S
  1636. CPX #$09
    / g/ Q8 j( z$ E
  1637. BCC BULSEL_UP4 {3 t- E, ?+ R6 s  o/ N
  1638. RTS3 W  I$ E3 Y5 h2 @9 z
  1639. BULSEL_DN_WRITE:- I4 ^7 j9 z& O
  1640. LDX #$00' b  @; b3 [' {( x. J! H
  1641. BULSEL_DN:0 |. _: o9 b' h/ e- m
  1642. JSR PPUADDR_PROCESS) F, w9 u+ N. G) l3 d
  1643. LDA BULSEL_DN_STRING,X. o3 |! [% _" m8 `* \) K( |
  1644. STA $2007. L: B& M  G8 r  J
  1645. LDA #$00
    * V% U* k. Z5 H) m2 a( g& v9 z
  1646. STA $2000
      e& d# J" B5 C8 w# W! v
  1647. INC $BA0 P0 @* `/ Y  N! q
  1648. INX! @; |" Q$ R9 l4 N
  1649. CPX #$09% K  g' s: P& A
  1650. BCC BULSEL_DN
    7 D1 O1 _* w9 {# M
  1651. RTS
    / Y1 F, K8 d; Y, k" {# t
  1652. BULSEL_LF_WRITE:
    7 u, f9 k' r# D) `8 \
  1653. LDX #$00: I; a% U4 m9 Z" E
  1654. BULSEL_LF:
    3 ~9 e% j. j8 |7 d: X/ v
  1655. JSR PPUADDR_PROCESS8 T6 F, y( J6 j9 ~: G( a( j
  1656. LDA BULSEL_LF_STRING,X3 s; V1 k- q( x: B" h( j7 G- h
  1657. STA $2007# b) k, q( |9 e, R. K% x
  1658. LDA #$00% Z% E% X4 a' R
  1659. STA $2000( f# U% g. z3 [6 m) N/ P
  1660. INC $BA
    + z4 U: Z/ t/ K/ w  ]% e# h
  1661. INX
    ; B9 g% L" [2 W& r
  1662. CPX #$09
    * \) g) u1 X& A0 f$ O7 H6 l6 n
  1663. BCC BULSEL_LF
    5 J: J4 J/ y5 i3 K
  1664. RTS% _9 i; O1 q9 [7 X
  1665. BULSEL_RG_WRITE:
    . }1 N: S! D: {; j; T2 _+ y/ F
  1666. LDX #$00
    % I+ U  Z4 y; z9 o+ g
  1667. BULSEL_RG:2 L, X& I( @" A0 f1 q- n0 r/ a
  1668. JSR PPUADDR_PROCESS" ~; J+ ?, D7 x
  1669. LDA BULSEL_RG_STRING,X) L) u1 O5 o. r, l& e' X" Z) P
  1670. STA $20076 x4 a. Q2 S6 V6 C3 Q! ?
  1671. LDA #$00
    # D" M. W8 _+ k7 f7 C/ C
  1672. STA $2000
    6 i. X2 G( r9 v1 r
  1673. INC $BA
    0 I/ G; G/ ]1 I$ {8 N% G8 b
  1674. INX* X( K2 r( v6 Z' @' `
  1675. CPX #$09" \  Z) z) {3 w* ~0 L" g7 }7 g
  1676. BCC BULSEL_RG
    8 r. Y& a* z! d
  1677. RTS
    9 M4 P2 R( `  s% H9 p$ }
  1678. BULSEL_B_WRITE:
    - ~& s( \2 F& M) s: F
  1679. LDX #$00
    4 c  z7 R( C1 o  o5 ?3 |
  1680. BULSEL_B:; B7 A4 B6 {$ t  ?+ Y, \7 ~
  1681. JSR PPUADDR_PROCESS& g3 \1 X7 b. D1 k$ G0 f" V
  1682. LDA BULSEL_B_STRING,X  |% S- F2 m  J* [9 `
  1683. STA $2007/ ~" s" P' R2 W1 a6 s) V  E
  1684. LDA #$00! N! y/ O7 n3 U9 G2 Q
  1685. STA $2000
    / a  T! F% v! J  n) m5 H  C
  1686. INC $BA
    6 w0 h" Z" D, U
  1687. INX: u, M$ Z: h  |( ?' Q9 i( @5 P
  1688. CPX #$09
    ) Q0 @0 M7 M8 U' S7 A& n/ [$ @# h; C
  1689. BCC BULSEL_B4 P; z- i$ L% c' X! i9 p) I- `; l
  1690. RTS4 t, S* Z$ J( ^+ S, l) S3 w
  1691. BULSEL_A_WRITE:$ s5 ~- t& f& n
  1692. LDX #$00' e7 L) e/ k  s
  1693. BULSEL_A:2 ~6 v! s4 m6 L6 `8 ~
  1694. JSR PPUADDR_PROCESS8 x- u5 V! V- K+ r, T- e
  1695. LDA BULSEL_A_STRING,X
    # v% ?/ h9 ?) c7 ?1 m; l$ G0 q
  1696. STA $20070 b- l6 [0 c3 ~( G% A1 p
  1697. LDA #$00
    ' `9 z( `% x( a: k9 D
  1698. STA $2000! E' U6 t& R" H# e( w- E$ v" z
  1699. INC $BA
    ( f5 p% `. R0 x1 _9 u
  1700. INX
    ) m* j# y- [* o; i. f
  1701. CPX #$128 @+ ?$ o. Y1 O2 V; l! B
  1702. BCC BULSEL_A5 Q3 r$ l7 p$ N, f. {
  1703. RTS
    ) \) W3 [* m4 R

  1704. 0 D: A% [; C" G. a6 d
  1705. ! {/ z# ~: l( E! S$ q, r- ~
  1706. 4 _) b, E" \# f0 o
  1707. BULSEL_PPU:( B4 Q0 ?3 F1 R0 B" c
  1708. LDA #$6C& p7 q$ Y" ~) |7 W; }( _
  1709. STA $BA( }9 E" [& B1 Q
  1710. LDA #$21
    . U& F( `# @! p( K4 N( s
  1711. STA $BB
    8 p- u3 @9 l, d, m' [
  1712. JSR BULSEL_UP_WRITE
      f, o9 W) k2 Q* }

  1713. 0 |7 N7 S$ d# o8 [
  1714. LDA #$AC2 A; J5 w5 Z+ T* c4 j( n
  1715. STA $BA
      Q8 f4 r. c8 e! }8 U- t3 t7 ]& X7 k
  1716. LDA #$21' E5 o+ Z: r$ y! N
  1717. STA $BB* C3 }7 d6 j& l! v# H# w
  1718. JSR BULSEL_DN_WRITE8 w5 O6 d* }) o

  1719. ) I: p1 D. k0 c- j( o) m
  1720. LDA #$EC; ^) H$ v5 i) K* X+ A
  1721. STA $BA2 Y  ~" ~; S1 r& u
  1722. LDA #$21; _) F! p. ~/ p' S$ x
  1723. STA $BB
    1 z! @7 v: c; k& k5 ]+ t4 F
  1724. JSR BULSEL_LF_WRITE
    / U- q9 q& f/ V6 I; N' x0 \' d
  1725. + S+ T6 y' {+ o1 n' j
  1726. LDA #$2C
    ; D' ?  x' G. h2 r) g
  1727. STA $BA
    9 s; O3 D6 j! t- P
  1728. LDA #$22
    . k) y/ U) `8 G+ m. @
  1729. STA $BB; t1 l1 j- @+ l
  1730. JSR BULSEL_RG_WRITE
    3 _, j5 ]0 ~: |7 t6 V  d' K
  1731. 7 d+ x8 h" T: \1 j0 v9 a3 D
  1732. LDA #$6C
    ' S2 W  m. S. V( _
  1733. STA $BA
    & b7 z/ j/ D  N7 y0 w& P& D
  1734. LDA #$22
    ( I; j2 v  C2 m! w# X
  1735. STA $BB2 O8 j2 i. j& O. W' ]
  1736. JSR BULSEL_B_WRITE
    3 {# C( X  ~; s/ \" x, h
  1737. ! L; G& ^' y' ?6 Q7 T' c2 O
  1738. LDA #$A7" d. D$ f; j% ]* I5 h+ T2 D7 l
  1739. STA $BA+ m. z% g$ {( F  `8 @& K6 u6 S( K
  1740. LDA #$22( t8 [0 p' i% V) n' c
  1741. STA $BB
    ( F4 [8 v% B( K6 d, i- p
  1742. JSR BULSEL_A_WRITE
    8 w9 ~' ?  E* _1 K5 f, c
  1743. RTS
    " u% W9 U3 ^9 i) Q& s; B" v* V5 Z/ s' ]

  1744. 6 N( y( Y% F' F7 Y/ k

  1745. . n$ L2 E4 d% |# y
  1746. ' h1 h2 c' ?/ [2 |3 _: _
  1747. UP_STRING:
    4 i& L/ T% B+ Z  f. G9 V& [: v# X
  1748. .BYTE $9F,$9A,$801 H, u6 z' p% O4 K: n8 m% O: V
  1749. ' f9 ?) f1 E  X0 r9 p
  1750. DN_STRING:
    ; w. o6 l, y3 C
  1751. .BYTE $8E,$98,$80
    # u9 k7 Q6 R) F& h" |: a

  1752. 2 U1 J8 K4 U( y5 }* P2 Z3 `+ {
  1753. LF_STRING:
    " K; o2 q% T& I. }2 e5 l4 b
  1754. .BYTE $96,$90,$80
    & j: R3 x+ h* `3 l* |& q* x

  1755. 2 j% J4 g8 a- b3 k# [
  1756. RG_STRING:( w! U/ S8 f3 ?
  1757. .BYTE $9C,$91,$80
    ' o1 E8 k$ H% E) I  F& }) v5 P  b

  1758. + @8 K+ o6 j7 b2 f- x5 Z( ^! p
  1759. B_STRING:! Z8 h; v. G( {4 W
  1760. .BYTE $80,$8C,$808 ?& B+ Z8 Z/ G  y

  1761. / O- Y( `2 j. b
  1762. A_STRING:
    , ~5 g' c& d3 R- P4 a
  1763. .BYTE $80,$8B,$80
    ( C/ Z9 G! _8 \
  1764. 4 p3 K' ^: u1 X7 @5 @, s7 Y0 E

  1765. 9 [3 X" F, `/ I5 z& ?8 L
  1766. UP_WRITE:
    4 [( t3 b6 ^; t7 I
  1767. LDX #$004 M2 y- X& b+ Y  l( u- R
  1768. UP:; P' E0 n/ A/ U& |  p2 s  c% U$ z
  1769. JSR PPUADDR_PROCESS5 P2 X' P5 _& b% {3 E
  1770. LDA UP_STRING,X. I$ e7 e5 R9 ]1 F" T
  1771. STA $2007
    6 o. S* ^$ F9 z0 }( u
  1772. LDA #$00
    4 Z7 Y6 c( B3 P- ~/ W
  1773. STA $20007 L0 L. ]! x: M
  1774. INC $BA
    8 q. {1 \+ s* Q" A" A
  1775. INX
    - {' S( e! ~* p9 P8 g
  1776. CPX #$032 d  F% _8 r( a
  1777. BCC UP' D3 @9 G+ @" Z, n# K5 Q* y6 K4 P
  1778. RTS! [+ S% B4 S- B  [8 A
  1779. + n9 T9 g$ ~& H* c/ K( {1 ?
  1780. DN_WRITE:
    # r" K* e. r( K3 h1 ]+ F  I! `
  1781. LDX #$00! F* o1 u$ Y7 U
  1782. DN:6 }9 G7 X3 H% Z/ T; x( J' k
  1783. JSR PPUADDR_PROCESS% I$ x. z" ]6 }3 K9 ?: `
  1784. LDA DN_STRING,X
    ' L; s# r& y& U* K! n; f' P) G9 T+ Q
  1785. STA $2007) t3 u& X6 B$ W- [7 `. h
  1786. LDA #$00
    ; `$ a: R2 y" I5 n. e- H
  1787. STA $2000
    : g: f% Y1 t! O: P# d
  1788. INC $BA
    " Q3 a5 H. S; q1 s  y0 f
  1789. INX
    7 I! o  s$ x0 |$ N+ o- y9 ?
  1790. CPX #$03
    ! R+ m4 s: l" V4 Z- ?6 S3 |2 [
  1791. BCC DN
    3 X% A& I; C6 W7 Z' o
  1792. RTS
    * o, a6 x; A1 K  p
  1793. # W+ \( g/ Z: y- ^" L2 a2 _7 M
  1794. LF_WRITE:
    * J; Q! ?$ g/ `9 L/ Y' `
  1795. LDX #$00# V# {9 L3 c7 K" M) n7 c1 O
  1796. LF:8 A" Z& v. A" {7 T$ S
  1797. JSR PPUADDR_PROCESS5 N; N, I, Y+ s8 v2 Q
  1798. LDA LF_STRING,X
    - k8 L" r, N9 E4 Y/ d' n* d+ r
  1799. STA $2007- V, H0 f$ Y! A7 c7 S
  1800. LDA #$00
    ; j4 ~$ Z- k; G- E! A1 E
  1801. STA $2000
    ( |4 s9 u- J1 }4 \1 i
  1802. INC $BA) i6 G% F# z6 a  A
  1803. INX
    " e' v( E. @0 d' I+ V, J' a) x
  1804. CPX #$03; S/ e2 W) M' t8 ?' s# `: k
  1805. BCC LF
    3 G1 Q* V. G4 Y! N1 c. G
  1806. RTS
    9 A' n, _0 k3 z3 ^' Y8 l
  1807. - G9 t, Y1 R0 E* R. R) a( ~% r
  1808. RG_WRITE:
    - q* W& N0 m( e$ B' i7 W
  1809. LDX #$004 r1 h( {9 x6 s+ z$ E+ t& I0 Z
  1810. RG:
    " U! ^" t3 T; K* c5 D: [
  1811. JSR PPUADDR_PROCESS
    9 o9 Q  A: {* ~% \  @
  1812. LDA RG_STRING,X
    " i% V; }5 J& K+ T+ M
  1813. STA $2007
    - x: B' X1 ?/ [( `) N
  1814. LDA #$00" y, [8 u" R8 W. K
  1815. STA $2000  m# |9 \# x4 }- |" G  V
  1816. INC $BA
    ! p+ ^* N* g% z0 c0 r
  1817. INX
    6 L& i2 q$ x3 [# q
  1818. CPX #$03
    , C1 a9 P$ o( @
  1819. BCC RG
    ' m' A: w3 D' [
  1820. RTS
    - r8 V  R& j& w

  1821. 0 |8 G4 j2 c% Z; a1 R+ ]
  1822. B_WRITE:
    ' k6 ~2 m/ u4 K! _& w7 m4 v3 {
  1823. LDX #$00
    0 y$ K  M; L5 S( B& ?9 S; \
  1824. B:) i& o: J; N9 D5 O# W$ Z% P% p2 H& d  N
  1825. JSR PPUADDR_PROCESS
    6 v4 h( b! T1 z$ ]- w3 F& I* ?
  1826. LDA B_STRING,X/ E1 B! Z, C! z
  1827. STA $2007
    $ ?4 m7 f0 @7 g7 m  O9 T. J
  1828. LDA #$00
    ; f& f6 t% O& R& o, h4 Z
  1829. STA $2000
    - n! [, W9 ?" h& A; U6 B
  1830. INC $BA
    ! B% }: p6 v' z2 M
  1831. INX% w1 @6 ?+ c& Z& w" l
  1832. CPX #$03
    0 J* E- I2 l7 x- ~
  1833. BCC B
    $ X* R9 J7 r: b) ]' R: w$ |$ U7 T
  1834. RTS
    ) |  h6 X- s3 u

  1835. $ |2 e8 G  a2 a; ^$ g6 w) m
  1836. A_WRITE:4 @, E9 r& F( l+ q3 T5 ?* Q- J1 K
  1837. LDX #$00
    3 M( h! j9 O+ r; o6 Q/ c, c: F
  1838. A:
    & @  j4 U) S7 S: @: h$ f6 Q* {
  1839. JSR PPUADDR_PROCESS
    ( @& r3 J/ J. A0 Z7 f
  1840. LDA A_STRING,X7 L) w5 }/ `" T5 B  Y
  1841. STA $2007& p, }7 D$ @7 ]0 q4 }' [
  1842. LDA #$00
    . g$ `; e3 V7 c5 b; ]$ l
  1843. STA $2000
    0 l9 |+ i' I/ r# Q2 {2 q" G
  1844. INC $BA! j# @6 ]8 E. c
  1845. INX9 J" x8 O4 q2 @) v
  1846. CPX #$03: u: [' O) c% d  ^
  1847. BCC A
    . y& I. x: W! i# H1 J) `
  1848. RTS8 }1 _5 w) }8 F: g
  1849. . ^' q5 e! Y2 V" s$ `) v

  1850. : V6 H/ R0 l; N  }# Q
  1851. UP_PPU:3 m4 V( v. N6 P7 O: _$ ?
  1852. JSR UP_WRITE
    * b' c* _9 q5 L1 J' A
  1853. RTS( j. h: d$ e8 H1 E3 g0 Z* \9 S

  1854. 8 P, A5 h. ]9 L$ X2 \
  1855. DN_PPU:% W5 T/ W) a8 |! G% k
  1856. JSR DN_WRITE1 T9 e- o$ l8 [9 ^6 Y+ Z5 j! X
  1857. RTS
      P; E; @& b! r5 V3 _

  1858. ( D1 y) [7 U# g- N) z, N+ S
  1859. LF_PPU:
    # i' ]' \/ F  L% o& }. @
  1860. JSR LF_WRITE3 Y; D" D6 _/ _  u$ {& U
  1861. RTS
    ) Z5 Y# Y) y) ]6 N
  1862. , a, S9 i) z9 v- j3 @4 W* f
  1863. RG_PPU:
    ' j  W) C$ t/ D: n5 D
  1864. JSR RG_WRITE
    ( A0 d% @2 x( ?1 y, j
  1865. RTS/ a7 u* H, w- w0 T, b

  1866. 6 B# |" @+ [  e, y
  1867. B_PPU:6 W$ H" j. c% ~1 |1 U3 Z
  1868. JSR B_WRITE, ]6 A2 Y- h1 T" y7 j3 q$ E
  1869. RTS
    ) [3 b5 |0 p9 K: Y9 j$ O! \+ y
  1870. 4 J- H$ D% N% h  {8 ]
  1871. A_PPU:1 I4 K1 i" p4 }5 e$ q
  1872. JSR A_WRITE
    7 [: k' ~2 p4 F/ W$ |3 B
  1873. RTS
    / N; P& V! n- S3 v, T
  1874. / C& k( n) w+ a0 I: \- p1 i  U

  1875. % L6 f% Q1 a  u( S1 S4 r/ H
  1876. PAGESELECT:
    5 G' t4 i, A$ ]- o% W6 Q8 P
  1877. PAGE0:
    " s- V+ `6 S# C3 ^
  1878. LDA $07AA: c& R2 w/ U: m" r5 x$ j) |
  1879. CMP #$00
    9 z/ r9 \6 t# e) X
  1880. BNE PAGE13 p/ z/ \# D: C8 H' c
  1881. * \4 {! D" a3 V8 r8 t, A7 n! B+ n1 ^
  1882. PAGE_00:5 K; i; i9 o9 |. J+ x" }8 y  B
  1883. JSR BULSEL_PPU
    + p4 x7 C5 h$ B( i
  1884. RTS
    5 y4 o' ~+ Z* k, y; A
  1885. % o% H; \' ?$ n# A3 j5 s- Q
  1886. PAGE1:
    ( L9 B( B& P  Q5 H, W% x
  1887. LDA $07AA
    4 J% ~8 c! w- @5 j6 b( h3 o
  1888. CMP #$016 P+ p4 }2 r+ L) t  `5 j7 ^
  1889. BNE PAGE2
    8 ~2 e% R5 m/ H1 C/ ^/ S) J" w
  1890. ) o& d' Q3 S! ?$ ~" p
  1891. PAGE_01:
    0 E7 |0 h; Q6 `- B9 w2 `
  1892. JSR INVINC_PPU
    5 ]1 \; \4 I$ p1 b: k* |
  1893. JSR LIFELC15_PPU
    + P" j" ^- T# y* X) y
  1894. JSR DOUCON_PPU' g* K) i9 F% W* x
  1895. JSR KILLON_PPU( ]; N) h) j; c! O( [) G! u
  1896. JSR SKYFLY_PPU- f. i3 z1 K: p9 l4 D
  1897. JSR LIFELOW_PPU
    ( Z3 d, V) [5 i( C9 w5 f
  1898. RTS' b; K, N; ]) O2 W  V5 @% y

  1899. 6 N, }1 i8 Z0 U  Q8 S3 Q( j% [
  1900. PAGE2:
    + o: j0 N7 U3 n
  1901. LDA $07AA
    ; {- \6 v. W9 O  Q+ Z; n7 ?) W
  1902. CMP #$02; F2 Z% m( T) G9 R7 k
  1903. BNE PAGE3+ w* v5 f& `7 m9 F

  1904. 1 k! x9 Q" n. g7 `- W
  1905. PAGE_02:
    7 h) V" t/ l) G
  1906. JSR BULADD_PPU, L* b7 _6 V0 y! e9 h
  1907. JSR SKINGE_PPU
    % y8 J' a+ o* V
  1908. JSR BULMIX_PPU# [" m7 j& M* |
  1909. JSR ENELOC_PPU
    ' @! f+ `  J+ N: T# `& m& H0 b" r
  1910. JSR FOCFUL_PPU! m' F1 `4 @1 i- s6 K1 p+ I
  1911. RTS8 h8 @3 r" s7 M" h3 M
  1912. " t* d, u& F" j9 n+ Y& V: Q# q
  1913. PAGE3: 1 S( f- o7 e- p" _. O, C& s' N
  1914. LDA $07AA
    - F+ Y' Q" X, ~8 d) t, ~7 p
  1915. CMP #$033 [/ j' g4 d" w' |0 \, l1 T* J- E
  1916. BNE PAGE4. V4 T* M9 a- V0 E/ j6 t* _$ y

  1917. 8 ]/ N+ S# ~' f, Z6 {/ i  G
  1918. PAGE_03:
    8 w; w4 s5 h- v; E0 f# `
  1919. JSR BULCON_PPU
      s" l: C: P6 L' \* G% d
  1920. JSR SPEBUL_PPU
    ' j% z  M& Y8 T( I9 q/ V
  1921. JSR CLEALL_PPU
    4 u# L1 g3 B. Y) N; Q4 [2 e3 p% ^7 q
  1922. JSR HARDMODE_PPU+ ^2 S- D2 b* {
  1923. JSR B_TO_JMPSTG_PPU
    & H+ y$ y0 a9 v
  1924. JSR A_TO_PLAMOD_PPU
      Z, j! {7 K2 n# C; y& e+ P9 @7 O8 `$ h
  1925. RTS
      i, J/ G: e6 a. R& J

  1926. 8 b+ m9 L% w6 B. O4 |  w9 P0 w3 j& C4 n
  1927. PAGE4: 8 m3 _& k/ n4 i+ S
  1928. LDA $07AA  j4 [7 T4 V! Q
  1929. CMP #$04
    / k# t2 L; V$ l  d' w
  1930. BNE PAGERTS" m- B( W% _( x. r+ @2 ^- K( ]

  1931. ; j$ W0 x( t3 L# B+ f! \- \
  1932. PAGE_04:
    4 p- F. q% Q2 R
  1933. JSR MOVSPE_PPU
    ) G% G( n4 b1 u4 N1 s, Q; x# n
  1934. JSR UNLJMP_PPU
      O3 _* L  R% {* h8 ]" u
  1935. JSR DESTRO_PPU
    - d4 v( b$ M4 k8 x7 l2 ]- {2 Z
  1936. JSR EQUBUL_PPU, h8 z0 S. J$ |1 Y
  1937. JSR MOVESPEED_PPU
    8 S& b' k, W7 L
  1938. PAGERTS:1 d# u# u1 Z# t; e+ S
  1939. RTS
    ; i! Z" ~" G5 R8 R  |7 z
  1940. # t& |/ Z% u/ G

  1941. $ _4 k% e- q1 @* c) V$ h' X
  1942. PLAYER_01_STRING:
    1 W! k3 w% H  p7 Q
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80  l4 w- P( h2 V- A2 C. K

  1944. 5 Z& k: w. J8 {5 Z8 s6 ~

  1945. 4 S* @3 w+ @. H+ U2 r  u; U
  1946. PLAYER_01_WRITE:
    ) n/ j* R4 _) }
  1947. LDX #$00/ F5 R( T7 o. _& c
  1948. PLAYER_01:
    0 E( @. F  n$ H3 _, ^: X8 w
  1949. JSR PPUADDR_PROCESS. d8 J4 F# z! p$ E9 }: m
  1950. LDA PLAYER_01_STRING,X
    0 c1 o. ^  E. Z; z1 p0 H$ i
  1951. STA $20079 W' y* D3 C* V! y, P
  1952. LDA #$00
    $ J$ w+ d7 x+ V2 n$ i
  1953. STA $2000; v" V/ @, @3 w/ Z7 ^, C7 l. W' a
  1954. INC $BA
    9 S1 t# A% W3 n3 ]2 ?! S
  1955. INX% ?% @9 K- E. P
  1956. CPX #$0A3 ]& u2 o0 |2 P8 e& g# i
  1957. BCC PLAYER_01: E1 d  i# z/ P4 i0 y1 i5 }% ^  n3 \. W
  1958. RTS! _9 e: c7 B! Z. j' }
  1959. . ~8 d7 Z; ?* V8 M# b4 J) [3 l/ _! s
  1960. PLAYER_01_PPU:8 _6 I  h" S; `/ j$ Q' c3 X/ f
  1961. LDX #$00
    8 O+ S3 W; |5 o; X/ _8 E: J
  1962. LDA #$64, |& q+ [1 }7 J
  1963. STA $BA
    + i+ d0 q2 e7 o8 l9 d+ z1 S" e
  1964. LDA #$20' c; g6 b1 _& I$ @# V1 {( r
  1965. STA $BB
    8 [" C2 K: j, K  i" Y
  1966. JSR PLAYER_01_WRITE$ B5 ~% w2 V. n$ ]( ~9 W- S7 t
  1967. RTS+ h0 c) V, a. x5 v
  1968. ! ^. y' r2 t8 c9 E( \. F+ i1 v
  1969. PLAYER_02_STRING:
    ' R# {) z$ i5 o; a" v& i" q) @! u& S
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    + Q( ^2 `5 k+ d4 _, p" }

  1971. 2 m7 b. Q* {4 a0 W! w; _) j! o
  1972. & P8 p" e# a- ]+ V
  1973. PLAYER_02_WRITE:) W9 j2 u5 E/ I, }, G* C
  1974. LDX #$00
    6 \5 t% l' [" m: F& h# V
  1975. PLAYER_02:
    $ i# j7 s, i0 M) L, [0 [. e
  1976. JSR PPUADDR_PROCESS
    ; y: c. `$ ]9 u+ ~
  1977. LDA PLAYER_02_STRING,X3 y& U! a" p5 D; r3 ~( B. s
  1978. STA $2007
    , X/ {: c7 s& J! p. {$ m- Q. W( G
  1979. LDA #$00% d7 J; L1 o0 T4 _7 e  r
  1980. STA $2000
    5 n4 l; ^2 f# T. T
  1981. INC $BA0 B6 o& y- b, Q" o
  1982. INX8 u* h9 n3 `- r9 d; _7 @
  1983. CPX #$0A1 p- w8 J. J% l  R7 H: \
  1984. BCC PLAYER_02
    ) ^& P! t0 b, ]8 b5 Q
  1985. RTS
      s5 d' P: X+ |0 _( _! ~

  1986. 2 e, n7 ^7 l- N+ _' o
  1987. PLAYER_02_PPU:, j6 s, K' \: S9 f  b) y
  1988. LDX #$00
      W( s" e+ w8 B1 @: q4 v
  1989. LDA #$73$ B$ }/ V: u2 G9 H- h. D
  1990. STA $BA
    ! z0 `5 O% x# t4 P9 T  B
  1991. LDA #$20
    ( w+ u) M  D' w! `) C
  1992. STA $BB/ \. m3 Z% E; j+ r
  1993. JSR PLAYER_02_WRITE6 ~5 S- d# s, p- G! g
  1994. RTS
    ) M. U1 u7 Y( w# v! t

  1995. ' Y' H. Y: K& O" W3 g
  1996. PPUADDR_PROCESS:
    / l6 q9 D4 M  c$ T: s! S/ d7 K" t
  1997. LDA $BB
    # G- y3 Q* V# W" i
  1998. STA $20062 B  ]. U& m3 J9 d* ?
  1999. LDA $BA. t* y' h" n9 B- ]7 N" h: {6 X
  2000. STA $2006! T9 R5 N& W5 l' k/ t
  2001. RTS4 H8 I8 i& Y: X) m) o# S
  2002. 5 w$ E# n9 u# f7 z0 i/ M+ F

  2003. 4 c6 J3 f0 s& b/ q7 V0 u% L

  2004. 3 ^" C" B# z$ q9 s( v0 P+ i; H
  2005. ONE_STRING:
    " E: ^% [* L9 X9 X0 ^/ Z
  2006. .BYTE $99,$98,$8F% R  A3 z7 h& S( _+ V

  2007. 3 X2 d4 h; C/ Y+ t$ A" w
  2008. TWO_STRING:
    9 e! r! d$ ]/ X6 _: o$ g9 i
  2009. .BYTE $9E,$A1,$99+ r$ ?; h( y( p
  2010. ) r# n: J* T7 ?6 d; Y# f
  2011. ONE_TWO_PPU:' w( s& w! ?& m
  2012. BNE ONEWR% A+ w2 L" }, x5 X
  2013. TWOWR:) X5 G4 J) B9 p5 h$ e- T# C, K
  2014. JSR PPUADDR_PROCESS
    / s7 u9 F! `; U
  2015. LDA TWO_STRING,X
    5 u! H, a1 c  r8 ~9 ]2 X/ n+ U
  2016. STA $20077 v6 \7 `/ H6 N4 c0 z  e0 G4 N
  2017. INC $BA& {7 _% r& p% L. M! h6 V" }' c
  2018. INX
    * e& C1 B# e3 h$ x
  2019. CPX #$03
    8 D0 Z6 L' m) m; K& O) P* x
  2020. BCC TWOWR
    + Z+ p# t; j) ]
  2021. RTS
    / y3 J, c+ E) d+ {, Q0 D
  2022. ONEWR:0 e& c$ l( D5 y" A- ]: F
  2023. JSR PPUADDR_PROCESS
    2 k5 z. S" V; B0 @, d: n, a
  2024. LDA ONE_STRING,X9 w' B) w! v- u! Z' `
  2025. STA $2007! }: D( u, U/ a4 ~$ u; S1 H
  2026. INC $BA, f1 O1 F' c& U8 ?/ K$ k5 N
  2027. INX
    # ^' @0 Z. G( {7 p/ h0 V( H5 v8 d
  2028. CPX #$03' ?8 Z/ P4 s: b; ^; \
  2029. BCC ONEWR- M) l1 W$ n6 i
  2030. RTS
    ' I7 }; V+ W: j  r+ Y- M

  2031. ' Z& J* r4 p+ _  e4 a" A* A
  2032. MOVESPEED_STRING:( p" G2 l/ b. T( l
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    . g7 Z7 X0 `. F9 B( n  ?8 `/ ]
  2034. 1 p6 A$ i- C9 M% A1 D$ o, X

  2035. ) _; _  j  a3 q! O; x
  2036. MOVESPEED_WRITE:
    . _% H- Y- }6 V$ `. P
  2037. LDX #$00
    ! J/ z9 r' f' t3 A9 y6 K0 b
  2038. MOVESPEED:
    2 H: \$ L' N- x3 [9 f3 S
  2039. JSR PPUADDR_PROCESS( t, b! u$ b9 [- m/ B% r
  2040. LDA MOVESPEED_STRING,X$ v5 L* L+ }9 U. J- |! R
  2041. STA $2007! x) f- x" R0 o
  2042. LDA #$00
    / V0 s: K& r5 Q' Q
  2043. STA $2000
    ) m9 K, ~' o5 j& o
  2044. INC $BA5 e9 m2 h% x) L* s" i3 G% H$ c
  2045. INX
    / y: T( y1 Z* i' R, @" n
  2046. CPX #$0B8 Y) v' h+ h: f9 c2 \* z) f6 q; X8 m
  2047. BCC MOVESPEED
    0 C5 }4 q) Q# v4 k
  2048. RTS
    ' P3 f4 K- l3 d' H" n+ ?

  2049. 8 I6 i& B4 a% k
  2050. MOVESPEED_PPU:' _' S( e: m9 m4 y
  2051. LDX #$003 m/ o* U" k4 Q- N
  2052. LDA #$AA7 t* Q* l" Q+ _7 r! y  n
  2053. STA $BA
    0 x* X" R6 V. q7 ^. v
  2054. LDA #$22
    % y9 l) m; x9 G. s( Q9 F8 W8 e) w
  2055. STA $BB) s; D, ?1 B0 e+ F
  2056. JSR MOVESPEED_WRITE( J6 w" @, O& w. p3 i; s8 x* B
  2057. LDA $7003
    7 e' M1 L: ?: ^
  2058. CLC5 _: s' b) P4 o; A) Q
  2059. ADC #$82
    ! p. c! x1 t7 W
  2060. STA $2007
    $ c8 M" c, N, B9 \5 A7 V
  2061. RTS
    , [- {- E) V  f# M4 }
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 549 天

[LV.9]以坛为家II

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

签到天数: 7 天

[LV.3]偶尔看看II

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

签到天数: 2060 天

[LV.Master]伴坛终老

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

签到天数: 2981 天

[LV.Master]伴坛终老

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 1279 天

[LV.10]以坛为家III

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

签到天数: 2115 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
8 k9 o* z9 b4 \/ j5 {& v$ N2 L# K. {
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2105 天

[LV.Master]伴坛终老

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

该用户从未签到

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

签到天数: 347 天

[LV.8]以坛为家I

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

该用户从未签到

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

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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