设为首页收藏本站

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
9 S6 I( d; h1 x% \8 E
* K, \' [% N: f9 z/ r6 {4 f
     [FC][魂斗罗旋风终板END暂停显菜单]
4 z" K6 }7 a& ]2 Q, h
作者:FlameCyclone(flamecyclone.ys168.com)$ ?: O3 U% R, r! ^* W% A
时间:2016/11/19 21:46:00
3 ~3 u8 T, V6 [* X+ Z( v更新日志:
1 a( W+ o/ |$ Q% q. W$ e
2016.11.19:加入暂停显菜单(共5页).& m4 Y1 v& t# y( m/ v* ^2 N  k6 a
2016.11.12:加入无限跳跃.% T5 ^1 Y, R: a6 C) m
2016.11.12:加入速度调节.
& d- ]8 Z$ m  x
2016.11.11:加入敌我子弹对消功能.
: A, m) n* ]# c7 c  U0 L4 w2016.11.11:加入全屏闪灭功能.1 p# N- j6 H1 d1 ~
2016.06.08:加入全屏瞄准功能.
# L- Z7 I' F. y2016.05.31:加入弹速调节功能.! o  t' ?+ @. H, S1 f9 L( r
2016.01.01:加入高难度模式.8 ~3 k0 H* S4 \  e! m* t
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
. P; W  R1 z, ?2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
% V5 g4 K# D/ m, {6 \2 L( z2014.07.05:双人切换功能优化.; W3 T4 u* s! }! g& ]8 l8 B
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
1 Z& ?/ r( `2 |8 \: t2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.
3 U/ \3 j( G+ c. e2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通." F; ^7 e% [+ M5 \
2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
* d9 g! p1 d1 I7 }2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!). Y0 |8 z- ]9 P
2014.02.13:加入自动演示通关.
( F5 X& u4 }3 z$ C6 H9 G5 ~内容:/ I* T  N5 V4 D6 X
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
3 a% s) K, `' Z7 Y( H22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
( R% x4 o1 O0 G7 o, P+ Y+ C$ w( W21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
" V! X. U$ V# m) f" D
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.3 u0 d' O* T* t. b) d
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.
) |6 K1 J4 s0 u" K* G8 g4 Y8 Q/ R18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
7 `& L: r2 d* W4 f' N/ N1 C3 K17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.* F6 n/ ]5 b3 H" U; ]
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.( ?/ H3 K& U; H4 Q) D9 _0 r2 G1 a
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.0 }6 _% Z. [% x( z- c7 P
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
* F$ ^  D1 \0 l  h* p! z4 K5 O03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.0 f5 j+ r( }0 ^5 I4 \, M( C; V
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.8 _* e- c& T& ~. P" d  [* K  c7 k8 j
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.
" Z+ j- w& Q0 j/ o  E1 `2 q0 r06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.5 O* v8 U2 m8 a, W
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.; V0 x  ^' ^/ w8 V# [4 X' ^
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
0 y* {) S" d: S9 j. ~09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
$ G, m  |# J7 g! r4 C9 L" o; L' E10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.$ K  l. U, [6 I: P
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动./ H0 H& {3 y& M
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关., _7 e7 J5 I  Q# D- }0 i: q7 D
13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.+ U3 q# P4 s# t1 N8 X
14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
( W2 j4 y8 S7 i" ~* ^' i6 _15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。
7 n! E, I! E% D' f/ a. M7 a9 q$ xA.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
/ C2 u0 V7 O, a- DB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!! B5 E8 b) L' {3 H$ c
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.4 f4 N) ~; W! r

" I3 p" p( h( Y5 u    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
4 O, c& d8 O. X. ~4 o欢迎大家转载,转载时必须注明出处.6 a. n7 T- P. W: y' t8 d

6 B( U2 H" S9 L3 K, ^) C
游客,如果您要查看本帖隐藏内容请回复

0 v9 l0 _6 Z. @3 S" z# j* N( E9 u; v! G, y
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
& g/ }' Z- W# k& c5 v+ {' }: `这几天的劳动成果如下:
  1. .ORG $B400& u5 ?( a$ ~& i' I9 \$ O7 a0 d6 C  x

  2. & Y2 G5 G5 F& \7 z7 ^, z

  3. / X- x8 T0 E. U- x
  4. PROREG:
    4 b9 Y1 r! O) e' ]" k2 R5 q9 V1 O
  5. PHA
    ( ~5 m# \3 \; I# J5 ]) O
  6. TXA
    # q# \9 f5 m6 N- [5 h9 O
  7. PHA& }7 r. v) Y  }, p$ U# E8 n
  8. TYA! s0 j$ T" H. j% i5 Z' P
  9. PHA
    : z' e) T. T! e8 f1 V2 M/ l) N
  10. LDA $25
    0 u! F( K' v) }$ S# T+ |9 m, I, X9 v
  11. CMP #$016 d: m! D( k3 J$ m
  12. BNE RE2 c5 Y, D  C( r9 Q; a; v: l! M: x
  13. LDA $010A
    4 `; r( J' D" H" U. p1 y$ o; ?
  14. CMP #$00
    % y6 i8 t. T6 B% i, K8 d/ G! A
  15. BEQ P1
    ; m) ~& D. c% l# S8 r' p2 i

  16. ' w0 Q5 L$ l! I' @- R7 I; ]: _
  17. RE:
    ' q8 u0 A! M8 a+ a8 [1 L
  18. JMP PPUWRITE
    ' E. Q/ H. [; T9 m
  19. ( L1 f  R7 |* X; B* \9 g
  20. P1:                ; 条件判断  l  J5 q7 ~% _. O' b4 n& M" |
  21. LDA $7FFF
    5 S6 c/ T* [* j) a# i+ p$ U- a
  22. CMP #$FF
    2 I& e0 h7 z1 _0 E& V
  23. BNE P1RP
    6 B1 d0 @; F" x
  24. LDA $7FA0
    ( w  x& w$ R3 I0 t; G$ G
  25. CMP #$00
    . @" e6 e2 O5 Z8 ^3 f& x
  26. BNE P1CMP
    . y  ~' ~- _9 m
  27. LDA $2001
    . A+ J9 x! V1 C5 g$ y1 a
  28. PHA* g% {1 s! l: m! X1 W
  29. LDA #$009 U8 ?0 v- s, D; y
  30. STA $20018 V! U# I2 O' K2 Y3 k: w8 t
  31. LDA #$FF- G4 L7 t) u  v  a( Y+ s8 r9 ^
  32. STA $7FA0
    ; J2 x% J( o8 o0 x8 o
  33. JSR CLEANA: ^7 Z! g8 b$ O: n
  34. PLA) @3 r8 R! N7 d5 t/ k
  35. STA $2001
    + y2 H/ D4 T) e" b/ w: e2 c' X7 C
  36. JMP PPUWRITE
    4 _8 f( |1 @. p! D
  37. P1CMP:
    1 j; q5 q; R2 j% j7 A5 o
  38. LDA $7FFF
    * ~4 L$ x) J5 L# Y  v. S- R
  39. CMP #$004 F2 {8 _$ ?0 ?/ E0 ^. v2 \
  40. BNE RE
    8 m" e4 f; X# W/ N! R5 D6 p0 C
  41. P1RP:( _: [: X0 k7 U. s: i2 `3 b& o
  42. LDA $2002
    5 O; j/ }1 S/ I+ ]& t
  43. LDA #$001 u8 A. ?( Q" k5 P
  44. STA $2001, G" s1 _- d1 Q: o( ^% P' r6 V# h
  45. LDA #$FF' G" I2 x6 Q: N6 u1 M) E- T
  46. STA $7FFF
    3 o; i! |. Q0 Z; `, i! c
  47. STA $7FA0
    - u, {# x' e! a* X+ w/ x0 i
  48. JSR COPYPPU' n' o4 ]+ e+ f3 `# Y/ o
  49. PIRP2:1 W! I3 P2 M( Z8 C$ Y$ {
  50. JSR CLEANA
    7 U9 m4 l( y" d$ p. }
  51. JMP PPUWRITE7 n0 _# f/ T( c6 \
  52. / T  \/ V, ]% m
  53. COPYPPU:" d* L- S! C' u1 E+ D
  54. L0:
    ' j3 [! @9 M. J
  55. LDA $30; k5 a+ {+ H) y. @4 j
  56. CMP #$02* u2 ]; v  z" K5 o* v& P$ e( B
  57. BNE UNPROFC: }* N7 L2 X8 X) M2 m, [
  58. LDA $FC$ `- |7 G( x' i2 d: ]
  59. STA $7EFC. X, R. n- j7 d% c
  60. LDA #$00
    # n. Z+ G; i4 E
  61. STA $FC
    ; Q6 r; X: `8 d  k: k; W
  62. UNPROFC:! {. b2 k* R! A1 ]2 t  `
  63. LDA $FD6 Q0 a7 j* N  {9 Y, v% q6 g( @
  64. STA $7EFD
    $ S" P6 t, A3 S: }: v- K
  65. LDA $FF* V2 s7 G% D" ?4 Q& u
  66. STA $7EFF
    3 ~1 h* L5 L0 [6 |2 F& k/ \
  67. LDA #$00. q1 Y$ c+ V' C; K  Z
  68. STA $FD" z& @1 h. V. ?
  69. LDA #$B0! V, @. A  t( @9 o" K5 `2 {
  70. STA $FF
    $ z! ~- _- @, ^( R2 y8 H$ H5 N& S
  71. LDA $07C1
    " y6 m, H6 |* L- P- h
  72. STA $7FC1
    8 k0 i) z; y- @7 X
  73. LDA #$3F
    & J5 U0 `& q8 Z/ c5 i3 C( ]) v: T
  74. STA $20061 ~( b1 g8 A- v; y9 Q3 A3 X9 L% c
  75. LDA #$01
    3 p  h( h' V4 l! _6 a7 K
  76. STA $2006
    " e+ W7 U& A4 v+ I
  77. LDA #$240 l- G7 U  H$ y, k# c. \
  78. STA $20076 X+ O& A. T! a, ^- o
  79. LDA $07F6
    5 V0 q: z& ]3 S/ L# k& h+ g
  80. STA $7FFE; V, N0 j# R) M; b0 b& R
  81. LDA $00FE5 L+ G! W4 i2 Y3 T- E- r7 a1 M" ?0 R
  82. STA $7FFD- H/ a) Q# b! H9 K# Z+ Z1 o" q% ~
  83. LDX #$00- ]9 s9 c; u; c8 e4 Y5 H) m2 \
  84. LDY #$00
    $ h+ E8 Z9 x  t$ d# e  }. l
  85. LDA $BD) x  _7 U7 b' ^) V6 |- H) |
  86. PHA
      l. G7 Z. y# I: \$ n# ]+ \
  87. LDA $BC
    * ~* i4 s$ ^7 \! b$ z
  88. PHA- Q$ C0 F1 r9 x+ k7 u, ?
  89. LDA $BB
    ; K. ], b7 F5 k8 Q! s- M: O
  90. PHA" Z+ o/ {. I0 l0 k; q
  91. LDA $BA: ~* `1 t: |7 n1 R! A
  92. PHA
    # G" W1 l' d: D0 a. \
  93. LDA $B9! y; Q% [7 D/ q# B# M$ m5 e! b3 F
  94. PHA: C# g3 p7 y% [, {. m
  95. LDA $B8
    & p% b3 g) Q2 E: V* ]# z
  96. PHA( d' s4 j0 F" S$ y# l& R5 _
  97. LDA #$00
    8 \8 ~3 |1 f- I; C8 z$ G0 _
  98. STA $B8
    " ?8 J) Y: o1 Y5 a8 X% {
  99. STA $B9. [) u6 X+ n% R) s* ^3 k3 {" D: p
  100. STA $BA) D5 s, n. ^) Q% ~  C
  101. STA $BB2 Y; A. r, W7 i- b* ^2 A* i8 W$ \) x
  102. STA $BC* Y* M9 [: j% h) s( O* M7 v$ j
  103. STA $BD9 Q/ Y2 {. Q% E8 v# I7 \
  104. LDA #$00
    0 ?0 K/ H$ N6 y# B% v8 G& R
  105. STA $BA
    7 U1 y7 a3 N( g( D6 a
  106. LDA #$20
      {( z' p: H$ A9 ]9 n3 F4 I
  107. STA $BB5 V1 |5 I5 E- f3 \
  108. LDA #$00
    + v: ]; X( I7 \* j( Z
  109. STA $BC
    4 y$ Q* s8 Z) m" P6 g7 }
  110. LDA #$60" k6 E6 {$ h7 B4 i# ~0 r
  111. STA $BD
    ( S. v$ z( d4 H6 ~2 _0 [
  112. " z( J' l& a4 P' ]; v  `
  113. L1:                ; PPU复制: {8 h% \$ j3 h& X* T5 F
  114. LDA $BB; j  A: k! b& S: c# ]
  115. CMP #$302 ~# d6 {: y1 W% Y/ j. X
  116. BNE L2" k, u: c, g# T5 A+ i
  117. LDA $BA
    8 b# [/ g6 U4 b, p$ a
  118. CMP #$004 F0 ^4 T' |" u% [( @# [
  119. BEQ PROADPLA( r0 Y: P7 W. E' L# x6 F4 ?
  120. . G: ~; I0 f& j' G( y  E9 P
  121. L2:
    0 O/ P5 N* B# u
  122. LDA $BB- K  q& K$ G/ T2 W& n
  123. STA $2006
    8 q' J' ]  m' H
  124. LDA $BA
    - N* X7 r2 Y4 q3 H5 ]3 y
  125. STA $20068 @) r6 t+ m+ j/ i! u/ l

  126. + U: j, q' v; E
  127. L3:, y, |1 r9 ]4 N& p, M3 R& W$ j
  128. LDA $2007
    4 L9 P+ n. G% K' U, d0 m
  129. LDA $2007
    ! H/ g' @% b" `$ i3 H. G
  130. STA ($BC),Y. x2 O3 x# Q( d" Y( d
  131. 4 o8 j0 D* u. u: g' K( ~  @' H
  132. L4:
    ! t' ?: q* E7 m- w( ?; J! f
  133. LDA #$00
    / T6 W8 ]1 g1 ?
  134. STA $2000% M( O% l0 ?! a
  135. INX
    + D$ h1 K/ F. L4 W6 z5 C
  136. INC $BA
    ' v) N$ s- u: Q7 S: Y; x* @
  137. INC $BC  w( n: ^8 s  m' l
  138. CPX #$00% I* C$ x+ O. h! P- ~  |
  139. BNE L1
    9 o$ z+ L8 x7 ?$ l/ {( Q+ w
  140. INC $BB
    + t5 ?* v4 u; I9 M  H
  141. INC $BD
    " x0 [0 ?6 k! ?! _
  142. JMP L1
    ( W, F! l+ E% K8 [- L# m; v
  143. + h3 H" i' X6 a6 S  O0 [3 v3 G
  144. PROADPLA:                ;出栈0 l/ ]$ q0 y  W
  145. PLA
    1 ^+ N8 ]% o* _7 i8 ]5 f5 E
  146. STA $B8* K- I5 ?$ @5 g7 ?
  147. PLA$ v, m0 C& k; X& s3 U1 |
  148. STA $B9  M6 S2 v2 x* m, g1 z/ D8 s
  149. PLA
    7 F  D6 n1 }0 \# B8 o  Z
  150. STA $BA3 ^" e" m5 d8 @0 a! p
  151. PLA
    " G$ l6 a/ _# H" J' y$ g
  152. STA $BB) M; L; K) U: `. p: ~
  153. PLA
    * U3 H/ h3 M+ H9 \& ^
  154. STA $BC% o' w0 A1 ^+ ^4 D. M- D
  155. PLA( W0 F7 s  K' _0 h& z
  156. STA $BD% ^* [; o7 I" _
  157. CPRE:! Y" K, P8 F8 F* b+ I
  158. RTS3 l2 I# q3 L9 A8 Z4 r. X. u
  159.   p) ], I' l# u6 h0 W
  160. CLEANA:                ; PPU清空8 U; Q5 q% w0 ?
  161. LDA $BD
    - h, O! h, F" J* G
  162. PHA
    ; E) W; ]' q1 X: k7 g4 U+ f  C
  163. LDA $BC
    2 k& Z. E" q  w/ h
  164. PHA/ W) v/ h$ k& a8 M& O5 T3 q
  165. LDA $BB
    : ^; }2 S' H7 e3 z% A
  166. PHA
    7 O7 _; H8 |$ L
  167. LDA $BA' I1 Q* p5 q8 H" t' D* E
  168. PHA/ u# i3 {4 j+ Y7 z7 E; m
  169. LDA $B9
    8 r: N, }& t( I& ?# e  L  i1 v
  170. PHA$ B! G" U$ u+ q9 _2 f3 b
  171. LDA $B8
    0 z* O% `6 k2 J
  172. PHA1 s2 h1 f8 o: s, O3 i: |
  173. LDA #$00: J8 Q" P9 O7 K) n: o* l6 U
  174. STA $B8
    ) c, X5 G- C. }# [; g; }+ a$ v1 h
  175. STA $B9( ^' r3 m" W0 y' p# q0 P) y# t6 ~
  176. STA $BA
    : Y$ ?1 F8 i5 {3 r; c9 `0 a
  177. STA $BB6 O" I4 A$ d2 [" e% E" i
  178. STA $BC& s0 \8 t$ ^. `1 K
  179. STA $BD
    / Q+ R7 v# m5 j( b2 ^8 V6 q% B+ Y1 N
  180. LDX #$00. W# J6 G1 w) H  O% r, b
  181. LDY #$008 D6 r6 x1 I9 @4 B
  182. LDA #$00" k0 b/ ~  ?& I/ n
  183. STA $BA' g9 G! R% a( R# b8 x
  184. LDA #$20( [' P9 ^( ^; b" p6 h
  185. STA $BB
    2 ^8 L+ T6 `# W$ Q/ c2 B

  186. : @; J* w) T  z2 d$ h& ~6 R
  187. CL1:
    : y" G8 h* b+ g. p
  188. LDA $BB
    : L3 S! J; t" ~
  189. CMP #$30/ f3 v& m7 S% ?* ~5 V, [
  190. BNE CL2
    6 r5 m# s6 @% X# r( v
  191. LDA $BA
      O+ x$ U/ ?& T7 l  g, r6 P
  192. CMP #$00
    1 N* h+ p. n+ `' P$ [' D
  193. BEQ FREEWRIYE! b- E3 j, {' D' a
  194. + l* k" X" f, B. O5 X7 M
  195. CL2:" _. y& p# G1 f* |9 S8 Z2 r' i
  196. LDA $BB
    : `% Q5 F4 A& B( v4 h! Y$ P
  197. STA $2006: a; v- L( S) _% w1 a" m1 Z/ s
  198. LDA $BA
    & p+ H  ~  C9 a' L$ t1 U" O4 w+ D: U
  199. STA $2006
    / p3 d0 a8 E, Z$ A* l3 ^: q

  200. 4 y( h/ F( U; B5 E% n' {7 e
  201. CL3:; Z8 h3 p% p% P, x/ Z
  202. LDA #$00
    6 D- m* U, E  ~3 l9 X8 ?( [
  203. STA $2007: \4 e5 {/ s; b$ [6 o2 a1 [

  204. ; l/ Z1 F: c# v
  205. CL4:" E2 J! `( u: {' B7 F
  206. LDA #$00
    5 N7 P3 H; L% K3 ^4 i
  207. STA $2000
    % Q$ H$ k2 G4 v8 C, j% |
  208. INX) x! e1 a2 X* s
  209. INC $BA' E. l' G% N: E& y: x: E
  210. CPX #$00, g5 w7 w" ~8 w3 C
  211. BNE CL1; J  _) T- b( Q* k" L
  212. INC $BB
    ) w& P4 a. \1 g# ]+ B+ A! k, `
  213. JMP CL1 $ k1 o' |! b. t) @& F# x
  214. # o* o  G- U0 J( m* D( n9 k

  215. 0 ^8 s4 d, `- x- h. V  ?
  216. FREEWRIYE:
    4 ^4 T! q& ~9 {% k( l0 P
  217. JSR FREE2 v0 x0 }, Q9 b) f7 P
  218. / Z' U/ k: H' R
  219. ; e) D- O, h# m  f5 \; O& g
  220. & a4 k$ Z& l" v. J' q: r
  221. ' G' n& A! ~% B

  222. % j6 r  c$ Y% y/ w
  223. CLEANF:                ; 恢复现场
    0 z6 B7 Z1 O& y8 ]! Y8 [" O7 |
  224. LDA #$08" ^% Z2 @9 a: [1 X# h9 N
  225. STA $FE
    7 O1 q$ u$ N  h; v- |
  226. LDA #$00
    # ]* x# z: k0 X
  227. STA $07F6- v6 i1 X: {, Q2 ]; Q4 s3 X" _# B
  228. LDA #$24
    & q, x- L# N( f/ x0 G4 H4 y
  229. STA $7FC0
    3 a  Q. T  P; c
  230. PLA
    & |& J, W, U  q4 ~7 M- |& e
  231. STA $B8
    / a5 a9 h( p, `! X
  232. PLA9 s' Q3 Z- v' H- h
  233. STA $B9: j; K5 C# S6 D7 Q) z( Y
  234. PLA
    & g/ D# t& V  M7 ^$ z
  235. STA $BA
    . d. h5 s8 V1 t* O5 j* r( x6 h
  236. PLA
    1 h# A7 O- m3 ^
  237. STA $BB
    . z* ~) d0 F& W; h0 Z
  238. PLA, d  ?$ j5 g% A' V; W0 P
  239. STA $BC1 ^! o* n, B. B! E2 r
  240. PLA
    ; h. U& U+ r$ r7 k9 }3 z2 w% ~
  241. STA $BD" M# |- \) q2 a. t
  242. CLRF:1 c" e+ J6 `* O
  243. RTS
    4 n+ L- E& v: j) K  M8 r. {

  244. ( W# S# T0 _; c  r5 D5 `
  245. W_DATA:
    - a. g5 d( r' @# E5 q
  246. .BYTE $00,$01,$02,$03,$041 K* [) L( R5 b; i
  247.   9 }/ i% y) K* _. D
  248. W_PPU:
    8 [  B( {$ Z% C  v) c3 c* |5 \5 @- H* `
  249. .BYTE $98,$97,$90,$9D,$968 M# w/ q! x0 b  J
  250. - A. D! Y, ]: Z& w
  251. P1_STRING:
    , {. _: \0 ?& C  f2 Q: P- f
  252. .BYTE $9A,$82,$00                ;"P1"
    9 s* O. c2 M" u: ?

  253. / e1 s: v+ x% L) o. T
  254. P2_STRING:. m9 F/ |, F' m
  255. .BYTE $9A,$83,$00                ;"P2"
    2 f8 }. P. Z) ?$ S- ^3 S4 d) {+ I' Z

  256. % Z0 z; V( {2 S/ }9 E
  257. WEAPON_STRING:$ U; e4 o$ Z, s- n
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"8 p( y: q- O- C* Q! F3 D
  259. 8 k: B" n6 P; b" J7 P( V
  260. RELIFE_STRING:
    3 s! H+ `* |  D2 k0 M3 c
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    " g% F6 e0 v; m3 x& V( a

  262. & ]5 S& I8 Y, J6 `! N: {: S
  263. P1_PPU:
    ( Q" n3 a2 A& f) y. B% J
  264. LDX #$00' ]4 d$ W% h' ]7 t+ ?+ ?$ {

  265. : o9 O0 c* Y/ P; m9 ]) U. Q
  266. P1_PPUW:9 N  R6 a: Z9 O$ l$ T
  267. JSR PPUADDR_PROCESS! Y4 s1 z. j) A# p$ l  |0 b0 Q5 i
  268. LDA P1_STRING,X
    4 f, c/ J* l1 q1 c
  269. STA $2007
    5 q/ l- V; j2 [3 D
  270. INX
    7 q" \8 w# }  r' h
  271. INC $BA% d: l: ]5 W2 P0 X7 Q' k4 U$ e
  272. CPX #$03+ j) R, d5 e, n3 c) U& a
  273. BCC P1_PPUW
    0 g6 m, S* S1 E7 c
  274. LDX #$005 l9 d6 Z* o3 R# v1 E5 h
  275. RTS
    6 R/ F! B/ y. }9 H, Y
  276. ) `# R: |- N0 D, }* d$ I
  277. P2_PPU:
    2 s) y* v5 w$ e" V
  278. LDX #$00
    ' W! c, ?. ^6 A8 U/ r- r2 \
  279. 2 C. Z9 M% w9 J6 S/ y" ?
  280. P2_PPUW:$ g/ ^- h4 v5 l
  281. JSR PPUADDR_PROCESS
    2 b: [9 f; i  d. I" v6 Z$ h) Q( `
  282. LDA P2_STRING,X
    6 t) d; T& `$ t
  283. STA $2007
    1 U6 C: B% s* `3 p
  284. INX
    ; z0 [5 w- j1 L, v7 C7 s$ b
  285. INC $BA
    8 D4 e: L' q: ~2 d( U5 e
  286. CPX #$036 V7 i: V' L$ [! i. L
  287. BCC P2_PPUW! F# a; s1 E# R. ]' Y2 u2 M
  288. LDX #$00
    + P5 W% R$ \( w
  289. RTS
    2 d& m( h1 u, b2 {" u3 S
  290. 6 y1 f9 N1 J, Z& s
  291. 6 y! x( t9 R& ]0 \: P
  292. LDA $BB8 j/ Q9 h, J2 w' l% P/ d0 F' \* ?
  293. STA $20062 m' m, z4 ?) }1 x/ I+ j4 F3 m: P
  294. LDA $BA- c# m+ K7 N$ l/ {$ G: B' Z9 b5 w
  295. STA $2006
    ' a3 c' ?- t4 l
  296. RTS1 ^3 `' {# p3 c/ ], e& ~- G
  297. 0 T# w5 `; K: ~4 [: D: ^* I1 z5 v6 b5 {

  298. 5 I& Q7 J* _( u
  299. * K3 J2 B" O8 Z
  300. PLAYERLIFE:. J  d' U$ u" J( Q
  301. JSR LIFETODEC7 }' X: Z+ N% s7 @& i  `
  302. LIFEPPU1:
    # K5 ^: j$ I+ R' v- k
  303. LDX #$00
    # R' u* w, ?* ]
  304. LIFEPPU1RE:
    % {' Q4 F3 L0 x, Q9 x5 X. \1 m; k
  305. JSR PPUADDR_PROCESS
    : H! A& [: r0 o+ N' ?
  306. LDA RELIFE_STRING,X+ u+ N8 t/ z; y: G
  307. STA $20079 X: W- w5 \: P6 H
  308. INX6 D- \, M  F9 F/ G  W
  309. INC $BA
    3 O" I: {) y. \/ P7 g1 k( o
  310. CPX #$07
    . t6 B1 M$ Q. y$ u, W
  311. BCC LIFEPPU1RE( E0 C" s: O% j" ^/ k- X$ g

  312. 9 V0 J1 c2 p5 j. r1 m0 Q
  313. LIFEDEC:                ;生命显示写入5 Q/ F! Z1 o: v' F2 b
  314. LDX #$00
    8 X2 c2 }  ?- g+ x
  315. LIFEDECRE:
    # q0 j' a( V3 x% |6 x* C
  316. LDA $7A03,X6 s  Q6 @( ^! H0 U3 X3 T
  317. CLC
    % k' [3 H: t+ U4 e0 P) ^
  318. ADC #$81% _% i7 Z. [  w; n$ e8 z4 Z/ }
  319. STA $20070 \& u; M) F" h3 o
  320. INX
    2 K3 x6 z5 W! B0 @2 e
  321. INC $BA
    + s7 e; a) u. j. j  b
  322. CPX #$03
    # N4 |. B4 J2 Q2 Q2 A, d6 ^
  323. BCC LIFEDECRE$ [4 @- H! C- D9 V
  324. LDX #$00
    " D4 A6 V1 X1 l! z9 f
  325. RTS( @" b9 h" v) L! }& V: ^" z8 A
  326. 7 v, I& T8 G) K: R/ T# O0 l
  327. LIFETODEC:                ;十进制转换0 P, {+ c) q+ ]" }3 d+ F8 n- q+ n! s
  328. LIFEL1:        ;initialise/ J8 T0 g2 f* r. v7 Y& y3 x
  329. STA $7A00        ;$7A00=F3
    . R/ T6 S1 w$ F! Z; T5 T
  330. LDA #$00
    ) x! C0 \6 u5 E8 o$ H& S
  331. STA $7A03        ;$7A03=00! P' v2 v; R. H5 y' n( F  L7 D
  332. STA $7A04        ;$7A04=003 T" c' v1 F6 ?+ L5 L/ Q; X* r5 ~
  333. STA $7A05        ;$7A05=00
    # a, ]6 z1 G/ j( b7 p- F
  334. LIFEL2:        ;copy data $7A00 to 6001' e3 \6 E& E% n+ e5 _8 l$ K
  335. LDA $7A00
    6 g2 P! o4 ^2 r* B& Y. N3 [; I
  336. STA $7A01
    4 \3 X  L$ B1 z1 u

  337. # p  B6 e+ H5 H/ t7 P
  338. LIFEL3:         ;hundred' M) S4 J& f1 `: W& t3 V8 @/ I# o- D
  339. LDA $7A01% I, u2 o4 J8 U+ m( R$ n
  340. CMP #$643 @2 X; B! D1 _5 j$ P3 X4 e
  341. BCC LIFEL6                ;$7A01<100 goto L6
    & y1 S9 _6 l, g9 g5 }+ F7 }. X
  342. LIFEL4:
    ( [, T1 q, ~! R7 ]
  343. LDA $7A01
    ' c. J% m8 _" B2 S! z
  344. SEC) {+ w5 x6 y! [0 e# y# _
  345. SBC #$64        ;$7A01=$7A01-100
    ) V! O; \7 W. b2 V4 Y
  346. STA $7A01  g" g% U+ s7 q% c# x6 v7 d4 \# [
  347. INC $7A03        ;hundred++" B" M2 X) Q9 t$ S; J8 r! G& Q
  348. LIFEL5:
    7 b0 ^- k1 h7 G- p( G* X
  349. LDA $7A01" i: Z5 Y6 g' R; w
  350. CMP #$64
    # a/ R- I9 ^4 Q4 W; u8 Y
  351. BCS LIFEL4                ;$7A01>100 goto L46 ?6 H+ ]8 F4 G

  352. + f1 b% Y+ ~7 L
  353. LIFEL6:        ;decade) _. \8 L& t" P) v1 l6 k8 d  {
  354. LDA $7A01
    ) h$ m8 r$ Q7 j) o5 ]4 |) b
  355. CMP #$0A
    & x$ {# x) Q, F1 j; g
  356. BCC LIFEL9                ;$7A01<10 goto L99 w+ A; X4 R8 @: k
  357. LIFEL7:        ! t) V7 Q! `  F9 [/ j
  358. LDA $7A01
    3 ]" e0 E, n' f" x5 ~
  359. SEC9 s* u/ `2 g2 g4 P
  360. SBC #$0A
    4 m- ^5 A/ A  V1 A9 g" L
  361. STA $7A01        ;$7A01=$7A01-103 A/ B! u9 A  h1 s' r. d; S, [
  362. INC $7A04        ;decade++/ k- n( l% K( I
  363. LIFEL8:
    7 M* T) c8 M0 f9 b2 ^& G* _4 n( F9 G
  364. LDA $7A01
    + p% O: b! V/ d* D
  365. CMP #$0A
    & h# l5 }  x. J; M6 k. P: F& M
  366. BCS LIFEL7                ;$7A01>10 goto L7
    1 p2 z- ]% j8 D+ `) Q* \# A
  367. ;unit5 [& z+ y  _2 D  ?' T# Z: y$ k
  368. LIFEL9:: ?9 ~1 F! w* D% V1 z
  369. LDA $7A01        ;$7A05=$7A01* N) r  G& u  N
  370. STA $7A05        ;unit
    ; ?5 T7 d/ b" q' `1 O' ]
  371. RTS        ;return+ H' S+ ^7 C- I
  372.   B% j$ A' R0 M1 e
  373. ! r3 b9 k% a4 V( Y% q9 X8 [

  374. , \+ q2 V& a( }# M
  375. WEA:                ;武器ppu写入1 I6 ^6 ~/ [; m$ D' @
  376. LDX #$00
    9 J9 d# }- L9 M
  377. WEARE:- I6 @2 p' Z9 C2 ^
  378. JSR PPUADDR_PROCESS
    0 K8 @7 a' B  N) M6 S! [
  379. LDA WEAPON_STRING,X
    : \% G; Z& P  i* T4 ]
  380. STA $2007; a# Z! p$ d- u# s2 P
  381. LDA #$00( x/ n9 h  \3 X: l* ?; [# q) C
  382. STA $20009 f' f2 ~, m" p1 p
  383. INX' O" a, x2 o; R" z/ f" [' Q& P8 k
  384. INC $BA
    + T" _, M2 s+ t# A4 I3 I/ z
  385. CPX #$07
    . i$ a- T* S9 [3 u
  386. BCC WEARE- u5 H% y7 v7 \
  387. 7 n- `2 _' Y9 \4 X5 Z5 Z8 Y
  388. READ_WEA:, O# u8 a- O0 {
  389. LDA $B9" t$ E9 }! H3 `% {
  390. AND #$10: o2 O) Q9 R( l' D& H
  391. BEQ NWEA+ f2 N6 i$ P% v8 l
  392. SWEA:
    : ^' u1 D4 A/ i- p+ Y; _1 u

  393. % e4 n3 n5 k" i3 R
  394. LDA #$9D0 _) ^$ A, P7 f" d( F' U0 S
  395. STA $2007) v, f( ?& w/ [  `
  396. LDA #$00: S' p6 F7 m8 _
  397. STA $2000
    + ]$ v8 D& W- b& _& {5 `9 v1 b1 \
  398. INC $BA
    ' z- K; C. L; _5 G! W. u' j
  399. LDX #$00
      q( ^3 N* q* `; k
  400. JMP WEAREAD
    ( _4 v% I! s0 f
  401. NWEA:% d" ?3 z7 J+ s3 r0 D

  402.   W. z! p/ P$ Y
  403. LDA #$8D9 E( `, }. w' e/ h0 O
  404. STA $2007
    + A# O6 i, M3 Q' A" I$ Z
  405. LDA #$00
    . ?% [3 k$ F5 V3 z3 U& g* z
  406. STA $2000
    3 k' j" {- y/ t! \! H
  407. INC $BA
    5 s- O' Q1 q0 p+ B+ h
  408. LDX #$00
    ' g, b7 w. l0 z* @6 o! j
  409. WEAREAD:
    4 }9 j1 D" k: B2 R6 f" i
  410. LDA $B9% D" H/ \* F! L( W' ^  S
  411. AND #$EF8 J1 L6 X/ \- c0 K
  412. CMP W_DATA,X
    5 `# D' ]/ o( N+ O, J6 s
  413. BNE WEACMP% w$ b# ?2 v4 l. w

  414. 7 `: _+ ]9 t* z5 z& R) }! I3 J
  415. LDA W_PPU,X
    1 U; f) b; Y* I; K! d7 Y* z
  416. STA $2007) S1 ^3 _- ?5 N9 i
  417. LDA #$002 ~1 G" W$ }% M8 l' }7 q4 V6 ^
  418. STA $2000. c+ N$ }  E; }

  419. 8 O$ |' |% m0 c" \1 x
  420. WEACMP:  T7 ~$ y4 Z8 P& C
  421. INX$ G$ X) a* c1 l* `! F
  422. CPX #$05
    ' ~( S( v. q" }& G$ Q
  423. BCC WEAREAD
    8 _) n+ ^5 o3 i
  424. RTS
    . P9 {2 A7 P2 x5 c9 H
  425. " B: P# y5 X5 t: T

  426. ; @, H# j- k/ U" S
  427. PPUWRITE:
    7 e" x5 |& e; _5 ?9 S3 L- ^
  428. PLA
    # N& V8 s" V1 |. d9 h
  429. TAY* R& h8 |6 Z  m' V) r, d4 L, n7 p
  430. PLA/ w) Q2 O$ }  t9 z7 \( ~4 w; K( A
  431. TAX
    $ Z' c0 l- C' t" }: d/ u9 q
  432. PLA6 q4 V0 w  }# L* p- B
  433. LDA $25: E: t3 Q1 U; n7 L: G% M( P
  434. CMP #$00
    : ^8 w) |  j; i/ [0 w4 ?6 R1 L
  435. BEQ WP1
    1 K- A% w$ ?, `/ \: M
  436. LDA $255 _* P% v  O5 t' ~1 N: r5 }# m
  437. CMP #$01
    % F7 I7 H+ I; D) _' G3 P
  438. BNE WRE
    6 p) c, w7 p8 l; ]" F6 J3 H$ [
  439. LDA $F5,X0 r" S. t% ~3 y: a* H# W- K3 J
  440. AND #$EF
    . V! O5 Z9 t" K
  441. BEQ WRE8 S, H8 G. V0 z# `
  442. LDA #$005 e0 h  f# i9 u5 [7 N+ ?
  443. STA $7FA0
    / a  [: F" E! G

  444. ' }+ a: j& z5 K2 y9 I: }/ B) o
  445. WRE:
    4 k# o6 P8 z% u; Z3 A
  446. JMP $A000
    1 [, Y6 b3 t; T9 I& K7 ^0 {2 i0 {9 B

  447. , j! u0 {- X4 Y0 n! w* q
  448. WP1:
      v  F" _2 w; y: d
  449. LDA $7FFF7 g4 B% ~6 r, j- P# P
  450. CMP #$FF
    2 ~9 P6 @  I" s2 h! D4 d
  451. BNE WRE
    , H/ Q/ |% A7 ^9 }
  452. LDA #$002 r# [, Y1 t, j% D
  453. STA $2001
    - i, e* O' Q- _) {5 `
  454. LDA $BD" T; h7 g2 q! u8 }: ^
  455. PHA
    3 q3 M3 x4 i  _' X# l$ }: m- h% \. L
  456. LDA $BC
    7 e6 A5 B' R9 _
  457. PHA
    9 ?- ?9 y7 y  j: m1 H; l
  458. LDA $BB6 |- t$ L9 K) p
  459. PHA, P. ?9 S+ C  R. E
  460. LDA $BA& N% Q" w/ s# l, b, v$ E3 X3 i
  461. PHA8 `2 D, ^" x3 S( D% [
  462. LDA $B95 A( W4 S; N7 y1 n" I( N
  463. PHA
    & ~. b6 F# Z) R0 u8 F7 ]
  464. LDA $B8- V+ F- \0 |; B
  465. PHA+ f' ^- f% V9 t, o- I6 }' g" X6 @
  466. LDA #$004 Z9 l7 r& Y( o
  467. STA $B8  O  P& H% V1 C: {/ a3 _& ?
  468. STA $B98 Y8 w/ g$ \4 d" C+ q
  469. STA $BA
    . D" N& F6 h4 R+ Y' B/ K
  470. STA $BB; \* ^0 J( z- e  C0 C- E3 |
  471. STA $BC
    0 S6 V! U1 w4 V/ J4 e
  472. STA $BD
      z* r: N. e# |- k- `  A1 [/ U
  473. LDA #$00( _- N$ N% M+ z, a
  474. STA $7FFF# W% i' K$ W( [9 d8 j- b: r8 X. D
  475. LDA $30$ k, [8 |+ g- \; H# Q* T/ k& V
  476. CMP #$02
    ' f. B' m& a* F$ N; \
  477. BNE UNPROCPL; q2 X# H7 v# w) m3 l; J% P
  478. LDA $7EFC( r/ ^3 n. g* Q% ~" d
  479. STA $FC* i; C, x: v* K- j3 ?1 w2 R/ g
  480. LDA #$00' D' Z2 Q3 c- m+ R) u
  481. STA $A4
    5 N$ G- I5 v9 R8 w$ r% m
  482. STA $A5
    * [. n. p+ s! p3 c5 \% n1 S
  483. UNPROCPL:
    . T0 g, u# s8 N0 V$ [  }- X
  484. LDA $7EFD, {, J/ j- I& p
  485. STA $FD
    # D# _. h# z4 P# I. f6 I
  486. LDA $7EFF, ?% `- B: `$ J6 ~( b4 r/ a
  487. STA $FF
    & m( y- G2 V8 L4 u( i

  488. * z6 K- A9 i: t7 r; c4 b; `% S  ~
  489. WL0:
    2 t- o! r$ b7 L0 v) v
  490. LDX #$00
    : j- u' T/ d1 S) ^
  491. LDY #$00; u; c* p2 k. _; s
  492. LDA #$00+ P  G, l. R* P  z) O; t9 T
  493. STA $BA
    ) V5 j7 D+ y" m4 l1 S
  494. LDA #$20
    $ ^2 d, G! g6 |: d. V
  495. STA $BB
    * r9 \4 f* x8 K4 o9 ^: C, V$ l
  496. LDA #$003 J; ^# D/ K" W
  497. STA $BC" [% w9 n$ A* o4 h9 I9 ^: M; X
  498. LDA #$60( T  A6 ]1 v- p6 J8 V1 C3 h$ J
  499. STA $BD6 Q) U3 l2 @3 S3 J* P
  500. + z: `. s7 a- |4 `& i% J! {+ I
  501. WL1:
    ; J- ]9 X$ I! b# T- K
  502. LDA $BD
    8 {4 Y7 `7 V2 _0 M) i
  503. CMP #$70  Y$ E# X) H5 l4 {, v2 @4 R2 m
  504. BNE WL2
    * o/ F( o. G' H4 O( u2 S
  505. LDA $BC
    8 H% |# h" J  g8 @/ `' ]" h( b
  506. CMP #$007 w  a& C, N2 ?8 a5 J+ }
  507. BEQ WLR) _' {. T& v" z1 l% `
  508. : a1 O+ U$ ^; s+ b, S. H7 G# Q; _
  509. WL2:
    ) z5 }2 R- v' X3 R0 d
  510. LDA $BD  e" P1 f9 ~- x4 j. ]4 t
  511. STA $20066 w: R6 T' A3 y4 N& C7 N+ ?1 f/ o
  512. LDA $BC8 {2 a- L" M% N
  513. STA $2006
    ! S! ~3 O) \0 c2 v
  514. 8 l! r0 Z0 Q6 \' S9 D5 p+ L6 Q
  515. WL3:7 Y' q" q1 g/ _, a; b& }1 {1 v# W
  516. LDA ($BC),Y( X4 z' J: Q+ K
  517. STA $2007
    ( T) t% M$ B% f( y

  518. + t9 v% d+ o# n  c
  519. WL4:
    9 [, \# o9 B3 ^, O
  520. LDA #$00
    * a' w3 q; [$ S# X  g
  521. STA $2000
    . \) F8 E) _: F2 z2 h
  522. INX
    * ^5 O9 Z2 n0 E5 |  C" h
  523. INC $BA
    ! B0 P; Y& d- |7 \+ U$ t! D
  524. INC $BC& i0 o) D' z7 V, R7 ]# I. O/ x! K/ A
  525. CPX #$00* Q% ?7 E# D  Z& Q* X) B
  526. BNE WL1
    4 L3 ^' G8 Q, d; H6 a$ [- S
  527. INC $BB0 C8 D& P4 p: G/ [! x! I- P( ]
  528. INC $BD7 u1 [( T# b& B: o( i8 J5 p. \/ `
  529. JMP WL13 o$ Z$ P& W5 ^8 {
  530. 8 M6 a, P8 h9 F$ G3 J) b8 C  O
  531. WLR:, T* l' B5 J7 {
  532. LDA $7FFE
    6 \1 T. q" v9 w! h7 w
  533. STA $07F6
    % B# z9 r9 u& N* @* H+ W9 u
  534. LDA $7FFD: l2 R% @; [5 |) t0 ~
  535. STA $00FE2 \# w* M' p! |3 K1 w6 d% K
  536. LDA $7FC14 q" x, Q3 ^6 v/ H* l# N
  537. STA $07C16 V( i# G# g! q" v
  538. LDA #$3F8 K) h7 m5 t3 ~  z) `( H+ m) w
  539. STA $2006. y# y+ x% Q! L
  540. LDA #$01
    , l* t" C9 Q5 |
  541. STA $2006
    - _& H* U( d$ o" }5 D' C
  542. LDA $07C1- o( J# e( @) F1 R
  543. STA $2007' o% u% B2 C4 H3 p
  544. LDA #$00. V& I  E5 c( d, Q8 _
  545. STA $2000
    : D) N8 H" A+ D. p' n) g
  546. PLA$ ?4 o% w( [8 X' x
  547. STA $B88 d7 V% n- [4 s( P- S) f1 T
  548. PLA7 W1 T$ E1 _) q
  549. STA $B99 Y0 E$ f( y8 t% e4 I
  550. PLA
    . B8 E' H! q8 v+ w
  551. STA $BA
    6 \2 Y: M. u  P# a1 Y( r
  552. PLA
    # ~% b% @4 ]4 ]+ k# z3 E2 o) z0 V, o
  553. STA $BB
    ! {1 x: M% M4 U' J6 B
  554. PLA
    3 n/ o2 Q/ d9 y7 l6 }( y+ p2 g
  555. STA $BC
    5 P) x- l& f1 x" \& s
  556. PLA
    3 G- m: y6 r1 z" W6 z; ~. `
  557. STA $BD
    ' |% h, |8 p& W. ^
  558. JMP $A000
    ) l: `; p0 u* E* ?
  559.   Y, d, u4 D. V4 @- G  \/ B% ]
  560. FREE:                ; 暂存器保护
    ' [! k' v" x5 i. K$ x, z1 q
  561. LDA $BD
    * Q- R* i' _0 E( l! z
  562. PHA# V2 K2 S: |, a
  563. LDA $BC3 I; d3 g" k! B6 u' h4 C! N+ |
  564. PHA( e6 W8 N, l1 X
  565. LDA $BB) H- S; h! M9 C2 G8 Y. Z
  566. PHA6 [, p: ~: D* {. |3 v
  567. LDA $BA/ a9 q% I$ Z' U7 O0 j
  568. PHA5 B9 s/ g, a- k: X  @
  569. LDA $B9, ^/ Q8 k/ G' @! m2 f
  570. PHA/ w2 m* |, g( m* f0 V" E
  571. LDA $B80 v/ a* r3 u2 D5 D
  572. PHA
    # o8 g  T# o6 b% n3 {$ x9 C; r
  573. LDA #$00
    : @# J9 I4 G8 T6 L: u& b/ ~+ H3 A& s
  574. STA $B8
    ; D, o) D7 ?# L% L( g4 N
  575. STA $B9* [9 _- z9 R1 ^
  576. STA $BA6 P; x) `4 x9 p( W* D  w
  577. STA $BB
    ' u& Q: h/ W) z3 |! D0 Y1 m
  578. STA $BC& v# `9 [9 a0 L1 t: F2 I# r
  579. STA $BD
    ) D1 N# u1 j+ V+ V+ q; ?0 k

  580. 9 e$ [/ }$ e2 h1 {0 d. [
  581. WEAWRITE:                ;武器ppu写入
    4 \/ V  C( R3 N' i8 Q; |$ p  }' b  r
  582. LDX #$00
    " q7 ~& d4 e  ^9 w4 R
  583. LDA $AA3 `3 m" c; ]3 y
  584. STA $B9
    9 k- z+ Z1 K7 N- p% ]
  585. WEAINI:                ;地值初始化
      H& p8 e9 w% h6 J& L  y/ ^
  586. LDA #$A4
    6 F1 P) f: k; e/ x7 g
  587. STA $BA4 g; i  j& \$ k
  588. LDA #$20
    , O; D: i) n4 i" q
  589. STA $BB
    + q4 I" n7 R; e6 l
  590. 0 \8 e8 ~7 m" |+ |1 B5 [" Y

  591. * J+ Q) K' d5 B* b
  592. JSR WEA
    ) t1 q' F; P; U% \
  593. LDX #$00                ;武器ppu写入, @6 ^  H5 ?. A8 q4 `
  594. LDA $AB1 Y9 b! M: E- W. d+ H" O
  595. STA $B9  M9 W( n  ?' `4 J, E& f
  596. LDA #$B3
    ) I, w1 N9 y$ X/ D% p& n5 `2 {" u
  597. STA $BA
    * V# U1 Q3 D2 S% Z2 r
  598. LDA #$20! m5 x) a9 T8 X, ?+ t6 G6 z
  599. STA $BB
    9 `# G: H9 o' X! b# q
  600. , s2 }: k( T) k2 p

  601. - Y8 o0 R4 N& Q- W6 h9 R/ J6 b) @& n
  602. JSR WEA
    . {7 ?0 @: a' N

  603. , e# g6 q9 G1 U6 m* M
  604. LDX #$00
    $ I! g# h! m5 }
  605. LDA #$E4
    3 \, |- l; Y8 [+ V9 ^# K+ w8 J
  606. STA $BA2 X3 X& M. Z8 c1 h' L/ W
  607. LDA #$207 v, {2 Q$ d$ Z/ ]
  608. STA $BB
    - Y  S" X9 G0 ?$ c% Y
  609. 2 l- }) N7 m" G+ j7 h% J( z* C, {4 G

  610. & I, |4 P. f; q
  611. LDA $32
    8 T9 l& `6 j, n" {8 s" g
  612. JSR PLAYERLIFE
    ' U9 n2 [# |3 d8 n9 U6 X

  613. ( T3 F$ w8 @5 T  E/ [, C, \
  614. LDX #$00
    , R" N( `& f1 C) U2 N
  615. LDA #$F3+ d; q# G6 T9 Y/ A7 N& g6 G4 y+ E( Y
  616. STA $BA
    % J% e. B) |% H* H
  617. LDA #$20
    2 J3 q3 j0 q. O
  618. STA $BB
    " x; w( C0 x3 ]7 f& o; K( j6 Q
  619.   A# z/ c/ ^+ L/ p' W

  620. 5 ?% ~* N1 O. G! J9 K2 g
  621. LDA $336 }" ?- b0 O" j6 `) o# z
  622. JSR PLAYERLIFE
    5 d1 w* P' K2 V8 ]3 s8 }7 O
  623. - p5 V  e3 S& j7 k) h
  624. 8 ]1 F; ~: }$ K7 E4 @" m
  625. JSR PLAYER_01_PPU- x0 e8 I! f* U0 [. n
  626. JSR PLAYER_02_PPU
    " }0 r9 W  Q- I4 U" I" U

  627. * L& f" t& g6 v
  628. : l3 i: F6 j* D9 q% P; M. Z
  629. JSR PAGE_PPU
    % A+ o7 u0 N7 m$ I
  630. JSR PAGESELECT
    1 K/ y. j- o% L# F

  631. & s; L  A, f3 K

  632. 1 a) X$ S2 U: W' W
  633. & w" _) i7 Z; D7 N8 [, V

  634. 6 i9 }) q% c8 a( r% l+ d! ^
  635. & T" I2 Y1 g5 x! y% O

  636. & e; R3 S* A, k

  637. 1 m5 s+ j4 e) r8 |4 Q4 g

  638. # [8 Q# k& L; {" `

  639. " R# |  f+ W0 M1 }3 p1 t8 D' H

  640. $ k, D$ o, L' c* a/ e  v' |

  641. $ Y5 d( C  q0 y( ^+ P) S9 N

  642. . w8 q* o. _' q7 ^. t, X
  643. + y- t5 ^0 T0 w2 ^) R
  644. PLAPRO:                ;恢复现场0 D1 y- v- h  ^5 D2 {
  645. PLA) H4 s7 A' \/ [9 ]/ d
  646. STA $B89 s; D1 t, O+ f9 k' _
  647. PLA
    ; ~+ c3 L8 s; P( x! N
  648. STA $B98 C, Y) ?& g* n% R
  649. PLA
    ' ?) W4 w3 S: c5 X+ C  M
  650. STA $BA
    3 {; @5 ?" d( L) `8 y7 H+ G0 I5 [
  651. PLA/ V/ m/ O- o# o+ Y9 |1 M5 c
  652. STA $BB
    9 R" _" c& D7 B
  653. PLA
    ; Y7 s& X  Z7 R( m
  654. STA $BC" m* S# E9 h1 {; {
  655. PLA" z" ]5 O2 i2 ?" w
  656. STA $BD
    ( o* Y) [8 g7 C, ~" b; M
  657. FREERTS:
    4 V4 O0 R9 \/ \  V1 C0 X4 N- m
  658. RTS! e3 h* J. A4 Z. e: Q2 d

  659. # E: p0 u5 ~% Z  {% J
  660. INVINC_STRING:                        ;invincible, P9 D' O9 J8 ?2 f$ a
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80) h+ a5 j& y. h, i: T& r# ~+ _

  662. 2 d! b( p/ k0 m' ]2 C1 C2 p1 \( f
  663. INVINC_PPU:3 @5 |: N: [) v9 d
  664. LDX #$00& v  k  I2 c2 N, k# B, |9 Y: v9 Q& B1 T
  665. LDA #$62
    4 q2 O+ u9 [) O3 r+ X
  666. STA $BA" {0 |0 a+ T$ N+ k
  667. LDA #$21
    - K7 J) C! k3 N* b8 K
  668. STA $BB9 T0 P8 `3 G% h/ L9 s7 P

  669. 9 ]) X" {" |2 x; a4 [  x% H; b' |0 h
  670. & N5 j8 u# l8 N1 U# e* Q- c
  671. JSR UP_PPU
    ) o" C8 J/ p7 }+ ?9 {% J7 Z, K
  672. JSR INVINC_WRITE
    2 I2 B' g' U& j
  673. LDX #$000 J, Y* G+ p* N  U4 Q
  674. LDA $07A0) r" h; F! D6 `4 y
  675. AND #$01. ?* o2 q5 d. a6 U  k8 K( q
  676. JSR ON_OFF_PPU$ ^4 T7 |3 i( V2 x0 N- Z- z) }9 |
  677. LDX #$00" [% |3 F0 }% a# f0 K3 i
  678. LDA #$71  s2 r2 D1 `' ?, X% p
  679. STA $BA
    , W) b2 D+ ?0 u- S2 Z* e- T
  680. LDA #$21
    ' }* m5 E5 d( j, s
  681. STA $BB
    / e4 k  V! I- o- h

  682. 1 @! `, j% P. v6 l% G4 {! U
  683. . I' W' \8 B2 m
  684. JSR UP_PPU; ^) m# ]( J# N9 h. T5 _) I1 }
  685. JSR INVINC_WRITE
    8 ^9 q8 k8 D  r9 Z( T" I& U; f4 f
  686. LDX #$00
    ! O/ q7 v, F! d" ^- H
  687. LDA $07A17 S+ d& B5 {7 g/ ~" m
  688. AND #$01
    " a0 ^8 ]/ T6 V; ~9 ?3 u
  689. JSR ON_OFF_PPU
    8 J# @8 T& J2 o9 o. m' M
  690. RTS
    & C: m( o) f3 L: \
  691. # v- i6 ], e& J! j1 j' j
  692. INVINC_WRITE:( m, B- Q) A- Y
  693. LDX #$00! @2 s2 f+ N& M$ b7 @7 E
  694. INWRITE:$ Y+ T% ^* b$ `- U
  695. JSR PPUADDR_PROCESS1 ~: j# W) n( T, D
  696. LDA INVINC_STRING,X" ]0 e# d) j. F1 ]3 c; i
  697. STA $2007
    ! B9 l3 }! g4 G
  698. LDA #$00+ w( m; j7 X2 u7 d
  699. STA $20001 T/ R3 C2 C. q& y) m. b5 v
  700. INC $BA9 X, z" j3 |) w& o5 \
  701. INX
    ' B4 G, {& B' [  y
  702. CPX #$07% b' f# o# e# z# _8 K. n) r
  703. BCC INWRITE% B- o- M+ j: O  X7 v- x
  704. RTS
    0 a% J6 Y. o$ P# s

  705. ) n5 Z! T' ]' ^1 [1 r4 o, }
  706. ON_STRING:& |# G; U% h1 A& J5 X
  707. .BYTE $99,$98,$802 F- b% L& [: z  N! U" i& ~

  708. 3 j( n: e+ `$ Z
  709. OFF_STRING:
    . d! [" D& e  D  s$ @
  710. .BYTE $99,$90,$90
    ( G3 L& x5 [! d+ n
  711. : O8 E5 Q. E& A0 X. U) |/ m( J% y
  712. ON_OFF_PPU:
    . T4 x; K* N: r- W
  713. BEQ OFFWR
    . `! i  [: {( ~  E* w# N- _. J( ?; j
  714. ONWR:
    7 R; A! c  d$ z0 g; n3 J! o
  715. JSR PPUADDR_PROCESS
    * v5 g( R" v* u; _  L1 B" T
  716. LDA ON_STRING,X+ ?0 [5 F, H  {8 ~$ a% }2 V1 G; ^
  717. STA $2007
    : K4 l& g; Y6 ?8 B* L; u' R2 V0 c
  718. INC $BA
      g7 v9 H, u( d! ~# W6 b
  719. INX
    $ b( d( ]" l# y+ a2 X5 ~: G
  720. CPX #$03
    0 N) ^  p/ j5 \1 U$ Y9 E7 ^& b
  721. BCC ONWR
    # V' I& e+ f* r: f7 z/ e( s
  722. RTS
    . D" D9 c6 v' U" G$ f4 `$ q( E. H
  723. OFFWR:
    + G' V( J! n0 `8 @$ R
  724. JSR PPUADDR_PROCESS
    ! s+ W' u9 ~. Q$ P2 W
  725. LDA OFF_STRING,X0 L+ d* E8 J8 ?# H# h6 C4 {! ]
  726. STA $20079 c9 [; m9 ]- b( v  H: a* ~, n
  727. INC $BA9 ^/ G1 M# W3 n4 [. _0 e
  728. INX$ g4 }3 W( _; m4 T; A
  729. CPX #$03
    & j6 \. X3 o. h1 x& I, \4 B) U* G: H
  730. BCC OFFWR
    0 a; W$ O! j# u1 H  s
  731. RTS* g2 n: o4 I; n, n! o# B& S! F3 q

  732.   p/ E( ^* }, ?0 I
  733. LIFELC15_STRING:
    # }/ m+ B4 k* [( W. a" e( V' [, G
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80% l6 m/ x0 X. \# K4 F( j, }" D* M7 a

  735. ; s) m5 {2 ]) y- Y
  736. LIFELC15_WRITE:
    7 ~2 Y# t+ o" J2 p8 p# R2 c. M
  737. LDX #$00
    7 w' y* A6 d: q
  738. LIFELC15:
    % x% }( ]. i; L7 g! ~* e7 Q
  739. JSR PPUADDR_PROCESS
    + r# X* @5 T; `- d
  740. LDA LIFELC15_STRING,X9 y/ h$ o6 t! l" a) h) ?. m
  741. STA $2007
    * o; i8 B: a: M* }
  742. LDA #$00
    . b3 Y  m$ \! ^# d% d. B3 a+ Y
  743. STA $2000
    1 O1 p$ Z( `& |) d* ~8 B
  744. INC $BA& S* A* w6 D- N. Y2 g& \: j
  745. INX
    $ V9 q. d) j" u4 f$ u
  746. CPX #$07
    % D: ^8 m* j" j& X5 m9 D6 X+ R
  747. BCC LIFELC15
    ; y7 D7 M5 R, e4 L" j
  748. RTS2 f8 u0 i* B% V" ^& [* p( T
  749. ! v( k' ]& h) b/ m! U0 o! h
  750. LIFELC15_PPU:. J* H# c8 h9 I+ L
  751. LDX #$00
    ! E  n* M. W; A7 {5 h* u
  752. LDA #$A28 d0 g% V0 h& d" K% _! t
  753. STA $BA
    . D1 p3 h: J: _
  754. LDA #$21
    : C& A4 P( ]' w) u# W
  755. STA $BB" @( l9 |  {0 [. g5 i
  756. JSR DN_PPU/ F7 t# D' d9 J8 z
  757. JSR LIFELC15_WRITE# O7 |% s# O- {7 V
  758. LDX #$00. W% N% F& @8 Q8 @  p
  759. LDA $07A0
    + L! E, ~/ l1 G1 h  ~
  760. AND #$02( b9 p% j. \& {7 H  e
  761. JSR ON_OFF_PPU8 B5 |: X% `; C- w, y2 @/ I
  762. LDX #$00" g4 j" v" b7 |+ I. R3 |
  763. LDA #$B1
    * v0 c8 s& [  R! h' j( ~( N5 F
  764. STA $BA% |. y- V+ P6 s/ ^& T- c
  765. LDA #$21
    : u1 Y+ W) k/ y
  766. STA $BB! m$ |3 q  A$ A6 y5 ]8 ?1 {
  767. JSR DN_PPU
    + M4 M2 N2 ?2 C3 A' Y. c2 R
  768. JSR LIFELC15_WRITE
    0 x% H. e, H8 j7 ~0 z
  769. LDX #$00  s: s, s0 c! W2 s4 l
  770. LDA $07A1
    + _, ?, L; G2 D2 w
  771. AND #$02
    " E* M& N+ D3 y5 S1 r
  772. JSR ON_OFF_PPU6 s: l& L, ]/ q/ V: ~2 d6 J" f
  773. RTS2 N: K% J9 Z& b) N1 o; a( ^/ B

  774. 4 b$ n0 e5 g# x+ ~" g# s" R" ~+ U& h
  775. DOUCON_STRING:
    7 j( x, T. t, T: S. g9 H# L
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80/ w3 o, y$ B" f! m/ c4 D. ?( y2 K8 A
  777. : G# _- b% d4 g/ A+ S7 o
  778. DOUCON_WRITE:% Q  N  ~0 L$ Y( `; [1 \
  779. LDX #$000 S0 P! |4 r1 Y( |' B6 F
  780. DOUCON:
    # a# ?0 o# R; K
  781. JSR PPUADDR_PROCESS
    3 J3 x; C0 l8 m
  782. LDA DOUCON_STRING,X# s/ _) I! E. b8 d1 D7 ~" ]" r
  783. STA $2007
    8 p8 [, E/ R; g; p. d! U
  784. LDA #$004 S. ^  t" i" Z% _5 _1 v
  785. STA $2000
    1 `$ N& j2 ]& F7 ~+ |* J
  786. INC $BA: L$ o' z: z8 n. E
  787. INX
    $ V# Q6 I. r8 Z! ?, m$ i1 K
  788. CPX #$07' f3 R4 ?3 L; k0 v- ^
  789. BCC DOUCON- |  f) B# m' B
  790. RTS
    " r0 g* u9 w# h' q
  791. : M! W% r" _3 j& e0 m6 o: M
  792. DOUCON_PPU:( F$ G4 }" Q- k6 O. w
  793. LDX #$00
    ( ^5 V* P& _" I; ], Y% u
  794. LDA #$E2  O! p1 Z! O) E) J9 ]  ?7 p9 l
  795. STA $BA8 ^/ E6 w8 i% j- Y* v
  796. LDA #$21
    0 v0 c+ a, m8 e# ~$ Z9 j! A
  797. STA $BB; L7 Z# R/ }( ]
  798. JSR LF_PPU- _+ R& H: E4 ^% _, T! e7 h% c
  799. JSR DOUCON_WRITE
    3 l( `4 @$ u4 Y5 q
  800. LDX #$00
    * _9 r/ _  Z0 m1 r! X
  801. LDA $07A04 [( D" U/ p" ]6 s
  802. AND #$04
    & r6 u5 a0 S1 P, `( ~2 i
  803. JSR ON_OFF_PPU& L9 d0 j  p# U: {8 ~1 B6 q
  804. LDX #$00. o! O: F4 t. N% Q, t1 O! g
  805. LDA #$F1$ d/ |1 }1 m( T, q/ A4 c% k( I  S
  806. STA $BA
    : B$ M2 s% p4 K9 q2 s2 z6 p
  807. LDA #$21) l0 [1 t' s: E2 ?
  808. STA $BB
    3 }) u8 p, r2 M7 H7 y* ?& b
  809. JSR LF_PPU- S# d, V* G. g% l3 a1 R
  810. JSR DOUCON_WRITE  ^- F3 w: V9 n" b( v# J5 O0 A* o& B
  811. LDX #$00( d/ a! Y  E8 O3 e
  812. LDA $07A1
    : A0 H7 c7 W1 K# {& @! ^  z& R
  813. AND #$04
    / ^8 L* \% n9 H' @; d* k  ~6 E
  814. JSR ON_OFF_PPU
    " P4 T+ ?8 h' S" ^3 O
  815. RTS! V- y! l+ q7 a# I
  816. 7 ?  u  W8 v8 l, S1 q4 ?) s
  817. LIFELOW_STRING:! W- ^1 N4 u# A; a0 c
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80
    5 A1 a+ Z' t1 u3 p7 r& y
  819. / @# u- o0 W  C, A/ C
  820. LIFELOW_WRITE:6 E# a9 z& i9 `6 C; Y- D. x
  821. LDX #$00$ {- l$ M- A! J  |1 s3 \2 j5 v
  822. LIFELOW:
    # E- N& n0 W/ K* g# c* R
  823. JSR PPUADDR_PROCESS2 Y# V) J! F$ u3 t. z4 P
  824. LDA LIFELOW_STRING,X; D- G' n. x! M, p/ Z' q5 G
  825. STA $2007
    5 l2 W8 ]' Y% K! L6 K0 v4 A
  826. LDA #$00
    - G' s$ |  g: \" P/ [4 G7 B" g
  827. STA $2000  F2 E6 C9 D* n8 @# `  E4 }6 L3 V
  828. INC $BA3 k: E% F2 i. y* k+ p
  829. INX
    ( j% z3 L6 R* g7 S0 r& x/ `& V9 F
  830. CPX #$07
    ! M7 r2 S. ^2 p6 n2 _) g
  831. BCC LIFELOW3 G( B6 R- }( B, v+ R2 s( \' j5 h
  832. RTS
    : W! G0 z8 d9 p5 T5 e! i
  833. 2 g1 H( F6 |) D6 k9 `: H
  834. LIFELOW_PPU:
    5 ]6 S; p) U! B6 [- u  d
  835. LDX #$00
    5 B$ B9 f! ^& L% n& e& \
  836. LDA #$22
    ; c0 q# z" B* S2 y
  837. STA $BA# J* S- t8 b2 [; B& o/ s' D
  838. LDA #$22+ c; Q# u! ?* v6 l+ L
  839. STA $BB
    ; r  O, C- p; U  s- f
  840. 3 A7 I" ?5 H, z1 ]$ |

  841. / `) s. Z' d+ V$ G1 I/ q/ Y, m
  842. JSR RG_PPU
      F% b3 _, P) T- _+ z, O: {
  843. JSR LIFELOW_WRITE9 A- ]% W. S! |
  844. LDX #$00
    4 z; X' [; w+ j' l% P; U+ R3 M
  845. LDA $07A0( X' j+ a2 B0 S- w
  846. AND #$083 \; s2 u( K' q* b: s- A; f
  847. JSR ON_OFF_PPU
    / u# r1 E* b, i3 m4 Z
  848. LDX #$00- o9 M3 L8 \# H7 g
  849. LDA #$311 O: I- ~" {1 X) I9 A0 V: S/ a; n
  850. STA $BA! o/ ^% c3 q  }0 ]
  851. LDA #$22
    - z+ g; N6 B( ~8 Y( O* ?& `4 o6 e; l
  852. STA $BB
    3 a8 H4 c( ?/ t# f/ Y& p

  853. ' g- G1 n6 n- c
  854. " p9 T, p' N, U7 ~) a2 w
  855. JSR RG_PPU
    : u5 R- I1 T% i( C. P
  856. JSR LIFELOW_WRITE
    5 b/ O6 ]! C" e! h5 P( V* {- U. Q) L0 G
  857. LDX #$00
    ! I  p( w  \9 D
  858. LDA $07A1$ `4 u, j+ U5 e/ D8 S% c+ }
  859. AND #$08, h+ e8 Y2 _* v1 O2 e8 L, s, a5 q
  860. JSR ON_OFF_PPU
    % b# t4 X" @1 Q7 o+ C4 g% s% g+ E
  861. RTS
    2 ]" ]4 [$ ?6 J4 m+ c
  862. 0 W2 H" {" O/ j
  863. KILLON_STRING:
    4 W$ t6 ?% D6 E& M9 ?: f) G; a# e
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    + r" z: L' |( {* E; k

  865. , C: e% r' a! @, X
  866. KILLON_WRITE:
    1 v3 l% t; y/ ?
  867. LDX #$00
    $ V+ O* N8 |8 ]8 O) p& y% o+ Y; B
  868. KILLON:5 x  ?5 l5 j8 o. y5 A5 k$ G
  869. JSR PPUADDR_PROCESS' |7 Y- B% Y) R$ @7 ]( D1 f
  870. LDA KILLON_STRING,X
    - h* q% m% O; C$ e9 x
  871. STA $2007
    ; f9 r7 u9 `# [) P
  872. LDA #$00
    ! Y8 O& w, W: n) P+ J# E; }) i7 C
  873. STA $20009 J3 S* _. J5 g0 U- W
  874. INC $BA
    : s& J7 |1 d' v
  875. INX
    3 n# ]2 S% k3 d6 H/ N. g
  876. CPX #$07
    + \: |: P$ g% q! H
  877. BCC KILLON! c5 X- O: d  o: H$ ]; Y
  878. RTS" `3 l! z; C% p  k

  879. " l2 B. ^( v" B2 L% {% u2 G5 @
  880. KILLON_PPU:& F. j4 w$ N& y( z9 ^8 Y
  881. LDX #$00, i6 ^+ Q: D8 c" H, s& |+ E% t5 G
  882. LDA #$62
    3 [7 ~6 w9 L  E. v) e
  883. STA $BA
    4 ^! D  \6 y5 y/ ~) m$ w* R% Z+ [
  884. LDA #$22
    ; A% H' B6 i. J; P7 B3 u- P# p
  885. STA $BB# {- V: _: {1 Z/ u) r, x
  886. $ y; w, L" D* w6 }$ b* s
  887. + v# {4 {* h3 F5 D/ f
  888. JSR B_PPU
    8 E- I5 Y. D% X& b- z
  889. JSR KILLON_WRITE
    " X$ G7 }  N# F0 i6 G* b
  890. LDX #$000 @. T7 D7 q. p5 o2 R
  891. LDA $07A0
    . |# K* \" O5 U2 a. w! a3 \
  892. AND #$10
    $ P' {8 {* K- \: ~! v3 D
  893. JSR ON_OFF_PPU* G8 ?" p4 n: s
  894. LDX #$00+ N  x5 u' y% A( _& u0 s9 _
  895. LDA #$71: W+ [( Y" _" Q/ y, \
  896. STA $BA
    4 @, {0 Y& N" M% Q- b
  897. LDA #$22
    . o4 n& M3 q$ M, Q
  898. STA $BB
    $ m9 a0 i" }* G4 g$ e4 y. Q

  899.   K( \6 \$ P* p9 X4 ~4 c

  900. 7 Q0 x; J+ t7 M' [' f7 `9 Y
  901. JSR B_PPU# U9 I, ~* A; {" l; }
  902. JSR KILLON_WRITE$ S. n3 m/ I5 b" ~  i5 |8 r8 \' e$ t
  903. LDX #$00& T7 a2 x* t: j$ g2 G' w  ~% u9 y
  904. LDA $07A1  U4 W2 C. D1 L9 `# [
  905. AND #$10
    . i. p; Z: F# W3 l
  906. JSR ON_OFF_PPU9 N" K( C  b8 [2 H
  907. RTS
    6 y9 J+ p* D- b+ S  Z9 O

  908. " G% m' d* ^  T
  909. SKYFLY_STRING:
    & k% H) m& T4 m0 i6 K$ Q: D9 q
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$801 O& x6 [( x! p3 U- c- @- p" }' S

  911. ' _. @$ `) _  R: ~( d- f2 L
  912. SKYFLY_WRITE:
    , A9 I- o3 k9 ^8 \
  913. LDX #$00% D5 p. Q2 N5 k
  914. SKYFLY:
    $ d, M1 g5 Y- q& g
  915. JSR PPUADDR_PROCESS
    ; M" a) s$ n5 U9 F! ~2 Y" q8 o
  916. LDA SKYFLY_STRING,X
    , g8 b5 W  T, G  G2 q0 [( [
  917. STA $2007" g& Z7 `( O" _& [0 S8 t3 E7 b0 f* j
  918. LDA #$00
    + v4 ~# B+ w  K% X' v: I1 d$ |
  919. STA $20006 {" c! g5 H3 H& |! @
  920. INC $BA) W8 F6 ]9 S/ s5 a& F+ P) f
  921. INX4 X+ l( S2 f$ u% m
  922. CPX #$07
    ; }: w* {7 r6 c$ H
  923. BCC SKYFLY* p8 ^4 z) `& Y' x2 J
  924. RTS
    6 {: d/ H# g6 B

  925. , m  R( r' t9 i7 [1 l
  926. SKYFLY_PPU:2 P1 b- I, l& ~* X0 @+ a1 {2 p
  927. LDX #$00" E% z9 t( V) G1 |; P8 z
  928. LDA #$A2
    6 ]( d' `+ M1 \
  929. STA $BA
    / u8 z/ p3 r! x% N: o( ~
  930. LDA #$22
    + Y+ T4 ]$ M8 l8 P
  931. STA $BB6 k4 |% e' S9 p# x9 G5 N& O9 ^
  932. ' Q* g" s. A$ l7 x7 s
  933. 1 k* f7 {% {' [7 Q, `7 r3 v, |
  934. JSR A_PPU
    / n2 M7 j0 o" Q
  935. JSR SKYFLY_WRITE  {' M( I! r8 O" p) J
  936. LDX #$00
    ; ^8 p, d& l6 R  v
  937. LDA $07A02 c& Z& ^7 Y8 q$ V0 X' T
  938. AND #$20% O3 v# [2 F, G
  939. JSR ON_OFF_PPU. ?1 Y* x) h( b
  940. LDX #$00
    1 W1 L8 d2 g( p& [7 A
  941. LDA #$B1
    5 U- F. h9 ]$ a  G- |
  942. STA $BA
    - F" b+ ^9 ]  A. F2 E  P
  943. LDA #$22
    % r" v, V0 W0 d8 v  J
  944. STA $BB
    * s0 d3 `$ P* \& s$ v2 I" i% a

  945. & m- V/ Q( k) b

  946. 7 U0 g5 h2 c! J3 h
  947. JSR A_PPU
    # i+ x% G# b' m$ S7 u2 x1 P' V" U
  948. JSR SKYFLY_WRITE
    , p  @  T# l6 ?4 V
  949. LDX #$00
    & B  {2 S" z% G: c; c, g4 P  T6 m
  950. LDA $07A1
    1 R) d, f: o* _, D" ]/ [9 |+ t! y
  951. AND #$20
    3 a( X  b. |7 J2 E5 V' x% |
  952. JSR ON_OFF_PPU
    6 r$ e" v. J8 l3 l, [& ^/ T
  953. RTS( {1 Z; t+ m4 [
  954. : u7 R$ q) |: n, d! }" D$ G9 @
  955. BULADD_STRING:
    2 n% m! c  \% [4 u) ~
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80, [1 a* \; v+ z$ R( D9 e0 `+ [! V3 Q- _
  957. 4 [7 l) ?: C. F' b- g4 h
  958. BULADD_WRITE:
    3 ?* F8 o- R: z: i  {7 \- ~+ e
  959. LDX #$001 O" d9 S$ v! T5 C6 U
  960. BULADD:- c8 k# ^, }8 D
  961. JSR PPUADDR_PROCESS
    % c3 B, p) \. D' T+ f
  962. LDA BULADD_STRING,X- K( S8 b0 y  z& [1 r
  963. STA $20077 @7 G+ C( K* Y2 e
  964. LDA #$00
    4 r4 l- e7 S+ J+ s7 E" q. i
  965. STA $2000
    0 i7 \; ]6 @5 w5 b" u/ I  j, R0 R# W
  966. INC $BA
    3 h/ j# U9 D$ Y; V% C2 p
  967. INX) c& g! Z4 O3 ^. u
  968. CPX #$07
    # \8 f1 [+ _  z( R  P  p
  969. BCC BULADD2 ?9 |* V, |* V; Y  N5 V. c
  970. RTS
    # Z2 p4 N# b- Y2 N
  971. 3 A* c: }5 `0 s/ p; u% }
  972. BULADD_PPU:- ]0 p: f* r  C) b6 g0 d% }% ~* R
  973. LDX #$00' ~, i4 [' G& o
  974. LDA #$62
    ( m: G, h* D( \7 Q) }3 A
  975. STA $BA
    5 p4 t+ n% e% k9 W  n* q
  976. LDA #$211 l* G& P! h6 y% K; ^
  977. STA $BB
    % z  Z# T' T% J0 h; b! Z

  978. $ D- j) F& Z( |5 s
  979. ' R* }' H7 }# K3 `9 W( k1 `* b
  980. JSR UP_PPU
    " Z: R7 Z' g; t; {6 ^6 Z
  981. JSR BULADD_WRITE
    - `1 i0 _1 \. Z& o- }) y; [& N1 P4 p
  982. LDX #$00( j  y7 B3 {4 p' R! X
  983. LDA $07A2  {/ @! Q" v( F+ m3 |
  984. AND #$01
    6 F3 n/ \3 Y' ?) r6 L% Z
  985. JSR ON_OFF_PPU" f! [. J* B: {$ |. A
  986. LDX #$00+ i9 j5 O: b. R. H% }2 O
  987. LDA #$71
    # u* A/ F: C- W1 F; _
  988. STA $BA
    . V3 _$ x+ i  t: Y
  989. LDA #$21
    0 K) j. D# l4 h! K
  990. STA $BB' D5 y# g! O9 ?( p! M
  991. 7 P: S" G. B  }2 D
  992. / c2 u! I& L6 B4 T1 D
  993. JSR UP_PPU
    ' Q  K% X* c8 u; b
  994. JSR BULADD_WRITE$ y+ `( Q: j8 Y9 I; d. k" s
  995. LDX #$00
    . Z; ?, r. ~8 k0 l
  996. LDA $07A38 H5 Y4 k- w' r+ s, S
  997. AND #$01* V# z, O# q- A- `
  998. JSR ON_OFF_PPU. i, V3 J) G" S- n% J
  999. RTS
    $ {. X; M0 \3 a' w: G" s$ q+ L
  1000. 4 G4 U6 z$ v$ A% N
  1001. MENU_PAGE_STRING:
    * \3 h: z1 {5 C. b  z& `
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81
    / D+ U7 w3 k5 l0 {

  1003. & k# [6 ~; G& o: O# u, x0 i
  1004. PAGE_PPU:
    1 T3 }% U, L9 d/ q! y
  1005. LDX #$00* A/ o' L+ ^# J& y# Y/ y# K
  1006. LDA #$0A
    / o5 I* k$ J$ L( J& f
  1007. STA $BA
    0 ?+ q" Z( H! p$ L4 g* M$ o: P
  1008. LDA #$23
    : P/ O: S) k7 I% v; D0 X6 {
  1009. STA $BB
    2 ]# @/ D, \8 x
  1010. ) E+ [9 h: f4 t* J% n

  1011. 4 d, s" v0 @5 C2 |8 n
  1012. MENU_PAGE:/ V: k% L' ^: I: s0 m; \
  1013. JSR PPUADDR_PROCESS
    / N9 u' w+ Z4 ~6 w; |5 J
  1014. LDA MENU_PAGE_STRING,X) C1 w5 i- D3 T- R4 r
  1015. STA $20076 Y. [) d  M, U5 G7 l% A7 w) B
  1016. LDA #$00. E" T/ l4 p3 F8 Z- i
  1017. STA $20005 X. l. d! [2 b0 N. k- z
  1018. INC $BA# K7 R7 N) z2 ^1 r7 z, w4 H8 A
  1019. INX5 B: r3 q  u* j
  1020. CPX #$0B
    # _! s. Q" U9 C' m/ C' r; J
  1021. BCC MENU_PAGE# \$ f" R* T% d& c
  1022. LDA $07AA
    + f6 h9 d) g1 j6 b+ N
  1023. CLC
    3 s+ q5 y% b  `* m5 h/ P7 [
  1024. ADC #$825 R, i4 i$ F: x; N/ A7 S
  1025. STA $2007: m$ L* B  D* E/ y0 W
  1026. LDA #$00; `3 G2 `2 C( V( r3 n
  1027. STA $2000- K5 f3 @7 U( t! Q9 A
  1028. RTS
    ) r. y0 o' _# B/ t0 O

  1029. $ f, O5 K. \" t2 l: F7 u; @2 i

  1030. ; o5 `8 u+ d# E  v9 e) o, P3 ^9 c
  1031. SKINGE_STRING:
    $ j. _2 j: w1 V" |9 u
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80) \  [& k: h7 L5 B" \9 |. ^
  1033. : m* h$ G8 T2 F* P8 F
  1034. SKINGE_WRITE:4 s2 a: u$ M  w2 E9 T
  1035. LDX #$00
    - x- Y! f/ Y- Z) T
  1036. SKINGE:
    + N. F! g+ x5 F+ o1 X! x
  1037. JSR PPUADDR_PROCESS
    1 z  L4 j4 J0 B. D; r
  1038. LDA SKINGE_STRING,X0 _$ b: L  \" k
  1039. STA $2007
    5 d4 i- D; b! J+ l
  1040. LDA #$00
    1 @( V, v+ g3 |( T- b
  1041. STA $2000& Q' h/ P) K& U3 [' ^: Y) N% `
  1042. INC $BA
    6 `4 g7 a0 t' x6 j. n% ?
  1043. INX
    ! w+ r! z3 s3 g+ W% D
  1044. CPX #$07
      v" Z: R$ |& ^" L9 u
  1045. BCC SKINGE
    ( ^7 y% k6 d. K
  1046. RTS
    3 b/ U( u) Y4 K2 o6 d: _
  1047. , M) s  Z# M6 J3 e1 K" I
  1048. SKINGE_PPU:0 G( A$ ~+ N, w
  1049. LDX #$00
    / Z0 ]1 n" r" r0 q+ l: h
  1050. LDA #$A2
    4 h& D$ c" W0 l5 p9 G0 c1 ^
  1051. STA $BA4 e4 K6 m) ^4 V
  1052. LDA #$214 I. R+ K: J/ V  x. f( X" W
  1053. STA $BB
    1 O' G7 f: p1 }

  1054. % P9 z( \* X! t& t6 ]+ d0 a- q3 y
  1055. . |* y1 D' }0 @
  1056. JSR DN_PPU
    9 e* \7 o$ a, |/ e/ `' Y
  1057. JSR SKINGE_WRITE
    . {+ _5 ]. G9 K5 C0 M
  1058. LDX #$005 m4 }6 [5 H8 \, v% v$ V
  1059. LDA $07A2. m: w+ t6 T$ X
  1060. AND #$02
      K# G5 x( p( e/ z5 D6 N/ g
  1061. JSR ON_OFF_PPU
    1 {0 Q, S' ^! I
  1062. LDX #$00
      f! X' q: d& H& n
  1063. LDA #$B1
    3 @: q: e, p4 v; P$ d
  1064. STA $BA9 q  M: _; c% ]5 V
  1065. LDA #$21
    ; X. ]$ D, j+ [, C
  1066. STA $BB" y0 \- q% R3 r8 ]- |7 v

  1067. : J# K+ f1 Z$ v1 i: ]* u2 h
  1068. . U' b! D8 g$ T2 k
  1069. JSR DN_PPU6 w/ ]2 ?9 z" \0 P0 q9 M, n7 N
  1070. JSR SKINGE_WRITE
    5 O  K0 _' P3 u% P( C
  1071. LDX #$00. w' K* A' h) H. F6 O
  1072. LDA $07A3& s7 V- y" K* {# u
  1073. AND #$02
    7 O; h2 ?! G4 q: K1 G$ D
  1074. JSR ON_OFF_PPU1 }, c5 g! i0 c, L+ d
  1075. RTS- t$ Z. m/ H3 A$ W- K
  1076. 7 k/ U; b2 a9 k7 Z
  1077. BULMIX_STRING:4 X) `" l$ ~* b1 }4 Z/ F; P0 f
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80
    + a  q2 `8 S! U& A3 r* I

  1079. , g" d6 `+ f6 ^( k  H
  1080. BULMIX_WRITE:( ~; n2 Q/ l1 g' |& \& V
  1081. LDX #$00
    ! U& M& h: Q5 T" A. w
  1082. BULMIX:; o$ R5 ~8 B2 R7 ]; G4 v" S
  1083. JSR PPUADDR_PROCESS# B! T! W2 ?# d* Z& G) h
  1084. LDA BULMIX_STRING,X
    4 S; z; k8 i! S, P. A' i% V
  1085. STA $20074 t9 i3 o0 O5 F* a9 i; F
  1086. LDA #$00: _. p; _2 k; R9 @# {3 x
  1087. STA $2000
    , u" m% g: @$ z% Z& W9 @' i0 c; C
  1088. INC $BA
    0 {) [: x! p* W) p( d5 [
  1089. INX
    . h8 t1 k, s) G. [
  1090. CPX #$070 i7 O5 Q, s4 m. F5 G
  1091. BCC BULMIX
    " ?6 j1 c& R# E& {: C- G6 @
  1092. RTS8 x* U* S8 g% O& d$ ]
  1093. : H* d( ]6 q/ b6 ^* {( p
  1094. BULMIX_PPU:
    1 g2 m( y7 y' W
  1095. LDX #$00
    8 Y; I2 W* `) e" }' f& B* ^4 c
  1096. LDA #$E2
    $ n2 ]. H; `! R: B* \! D
  1097. STA $BA, [6 m3 K' |" b$ M7 }9 t
  1098. LDA #$21
    ; o1 z4 J' v7 q; C0 }
  1099. STA $BB7 |( A8 g* R- Q/ ]! m: D. t
  1100. 1 c. h$ n. \4 k  p( t) P
  1101. ; P, |# J6 v! F0 J/ ]' ^) P, ~
  1102. JSR LF_PPU# r2 M1 P3 q, L3 y/ ~8 w. c/ C
  1103. JSR BULMIX_WRITE
    1 c1 u5 @4 I# B2 h5 q
  1104. LDX #$00( S' l. I9 G- E$ y) |
  1105. LDA $07A2
    9 H, @4 a1 I% e/ Y! Q
  1106. AND #$046 X) C% |: L# }4 w8 G, Q
  1107. JSR ON_OFF_PPU
    + S4 P3 o/ `) X3 `/ ]; E. Q
  1108. LDX #$00
    4 H7 b1 v) o; ^- n
  1109. LDA #$F1. o& M+ R8 e1 \3 ?
  1110. STA $BA' m2 q$ w0 G' i" D# e9 e
  1111. LDA #$21
    1 c, m% ?1 Z; I
  1112. STA $BB, C9 H$ _3 p! r/ _8 m
  1113. * G$ b* k6 W3 d# K5 M; W0 ~) Y, r/ p

  1114. ( i! m3 u) {5 j& ?, i) V
  1115. JSR LF_PPU
    ; ~* @* N' ]4 P+ A( a! Q7 N7 H
  1116. JSR BULMIX_WRITE  P( L- ~0 A; s" K4 S1 V/ I( M# r: I
  1117. LDX #$00
    - E: \' n. _" M
  1118. LDA $07A3: _, w' |. P2 S* d1 p* r
  1119. AND #$04
    * X" r* c. a. ?' j9 Y
  1120. JSR ON_OFF_PPU
    4 K7 ^$ o" S) b, O, ?4 v
  1121. RTS7 f% B9 D  {' F. T

  1122. , O, d7 u/ V( g) G; d; `) d
  1123. ENELOC_STRING:
    . a8 G6 I0 ?& K' \8 l
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80& R: P3 ?. M+ `' n

  1125. ) M" l( o' Y- d2 e
  1126. ENELOC_WRITE:4 M6 F0 P) K) ?
  1127. LDX #$00% B2 r# `0 M" V' p2 B
  1128. ENELOC:2 `* m3 _1 u) K. }' \4 k# D, ~
  1129. JSR PPUADDR_PROCESS
    ; ]  s4 W8 |1 O! z5 u5 w
  1130. LDA ENELOC_STRING,X
    ! S5 v9 X9 S- N" _$ @% h( q' }
  1131. STA $20075 G, N, r+ X: d
  1132. LDA #$00
    & x2 j& u* X! ]8 }! D3 G, p! p
  1133. STA $2000+ O7 R* U( X3 G! H2 S2 `
  1134. INC $BA
    9 D) Y7 d, s. I8 O/ ~- d
  1135. INX5 x$ S4 L( X) {* h
  1136. CPX #$07
    7 P0 e2 A9 Q4 ^- {# K
  1137. BCC ENELOC. v2 v; d% z9 f3 ~4 v
  1138. RTS
    9 F4 x4 s* V5 U8 z0 t7 g) s/ E+ \; U1 L

  1139. 5 K  X4 j6 o5 N+ _$ L* ~8 b" |
  1140. ENELOC_PPU:
    % s' X6 [  b( v5 R& E/ K/ r- C
  1141. LDX #$00
    & q6 g/ U) r: F# S# k; l
  1142. LDA #$22
    4 y: u! Y7 [1 r, W6 M9 f
  1143. STA $BA
    - R8 c' {3 u4 X, q4 k6 @5 {/ V
  1144. LDA #$22
    / z$ L6 q" Q/ B& v
  1145. STA $BB% g! o: x+ o+ G& T% o
  1146. ) ?! P9 X4 y& y- @7 @7 t: f) {$ Y7 T8 O
  1147. 4 e9 a9 x, G% ]% v
  1148. JSR RG_PPU* ~2 Y) A" h: O  N  w6 ?/ ]. j
  1149. JSR ENELOC_WRITE+ K2 y' M3 w3 n8 _
  1150. LDX #$001 z6 F4 }8 Y" [" j2 y
  1151. LDA $07A2
    7 }& Q; T7 Q- w* t3 v
  1152. AND #$08
    : ]* l, Q1 Y& K4 Z
  1153. JSR ON_OFF_PPU
    ) L9 H6 N( E: E! l! X' b& E
  1154. LDX #$00
    3 u0 x+ G" f4 V- t% K
  1155. LDA #$31
    * X# r7 ^$ ^. o! C6 P
  1156. STA $BA- g# T1 V, _" f% n
  1157. LDA #$22. ]0 ^+ K* d4 x3 s; z$ O# j
  1158. STA $BB6 q4 |# B( g. H+ }1 w

  1159. + q; u- [, n/ U& @2 \

  1160. 0 Z6 ?* s# i1 }! w5 W1 Q
  1161. JSR RG_PPU
    4 H( m4 q* i6 O1 {0 V
  1162. JSR ENELOC_WRITE  s% O, V$ z6 h% I
  1163. LDX #$00
    , B2 \& g5 E: t. {& N( V. d& {8 `# [( }
  1164. LDA $07A31 m. f" ]2 C8 R+ ?0 Q- _& x
  1165. AND #$088 ?# ~  }& w( ^6 N3 c
  1166. JSR ON_OFF_PPU0 u# _: U4 H/ a! N
  1167. RTS3 n: V6 {3 X& t2 c
  1168. % d6 K1 X) a9 R1 n
  1169. FOCFUL_STRING:
    7 W0 a* b, V6 y) D7 w
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80( w8 L( ?! {4 V- G
  1171. 0 @6 g- [1 v% ?0 I/ d/ C1 {
  1172. $ f8 {) p, W, ^! n
  1173. FOCFUL_WRITE:) j5 B: t- N* S) f! n/ N- S! S
  1174. LDX #$00
      w/ X( F  [% O
  1175. FOCFUL:
    $ B& u8 T; I9 y5 }2 T7 K% N! ?  N
  1176. JSR PPUADDR_PROCESS
    # s4 {3 Z$ @: P# |; e# v
  1177. LDA FOCFUL_STRING,X
    1 }; g* I( Z. z8 b9 R$ ]
  1178. STA $2007
    . T9 L6 o2 K( i/ Q' k+ e1 C
  1179. LDA #$00" a, i* d9 Z; C% Z" }
  1180. STA $2000: x, W) y" q) H  O8 w$ F6 }1 P9 e
  1181. INC $BA
    # N/ g$ C) \. X3 }5 x. L+ b
  1182. INX& n, N. t4 W) Z; a7 }- e+ P* j2 W
  1183. CPX #$07
    ; X; |$ t" M; i+ ^
  1184. BCC FOCFUL/ n7 q# f) T# t( O
  1185. RTS
    + X& J: i" H' B9 q! F: Y. E4 N
  1186. 1 K( i8 Z  f% ?: t6 N. K& l
  1187. FOCFUL_PPU:
    + ^& u% V  Q: W, \1 A* b4 O" c3 l
  1188. LDX #$00
    : A+ s' C/ I- G8 L3 `! A
  1189. LDA #$62
    % u- q; t3 E! H& \7 B2 v6 l
  1190. STA $BA- I+ l, m, J  d" m9 F& a8 C; D
  1191. LDA #$22
    / K% V  X; h0 r
  1192. STA $BB2 ^' x6 M/ V$ j8 E" u
  1193. 7 Z! z* m* w2 @/ u1 Y/ E7 ?% d3 V* x
  1194. 1 E- `+ Q6 z- e5 C
  1195. JSR B_PPU1 `- g1 Q4 [  `) g) t
  1196. JSR FOCFUL_WRITE) n+ c/ ^6 O: B! s! u
  1197. LDX #$007 C1 H! N# U' d$ x6 o8 H
  1198. LDA $07A22 o. I: [! U9 n: e/ v1 O
  1199. AND #$10. X7 I# T' W2 L& y4 g) Y1 U  L" ~4 R
  1200. JSR ON_OFF_PPU
    2 V# a2 Z) x0 L, L$ Q
  1201. LDX #$00
      k" s: h8 O4 K% u
  1202. LDA #$71# e4 s( J- i( ]. \
  1203. STA $BA8 {, X* v& E! p5 @+ @4 W6 Q
  1204. LDA #$22
    $ r5 i2 Y* t2 D& ?. W/ p& Q7 }
  1205. STA $BB
    - M; n( S* m8 E! J3 p
  1206. ; h( f: ]  w% E. q
  1207. 5 J+ P! G! U# R: Z! F
  1208. JSR B_PPU' Y! E3 K4 A7 K5 S( J) u. T8 L1 Z& g0 j
  1209. JSR FOCFUL_WRITE
    9 _* D. f0 h% }4 b
  1210. LDX #$005 g8 o: b2 x% r
  1211. LDA $07A3! Y  C' x! U9 o# s! t* v  K( p
  1212. AND #$10" I5 F, ]1 {. P6 }
  1213. JSR ON_OFF_PPU( A- M2 ~* e7 H  g  l) R
  1214. RTS+ ?5 w3 P% w' c" ^+ X' Y+ y
  1215. , N3 @5 e3 R9 i: I% A
  1216. BULCON_STRING:2 p4 |9 {3 c. Q" C4 s
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80( G0 @$ \$ e$ g2 w0 g( n3 ]

  1218. 6 L7 [" V  S# V6 j3 h

  1219. 6 ^9 `! j1 s' H7 w( i8 o4 a
  1220. BULCON_WRITE:7 J" H8 o. n3 Q; T  j% L
  1221. LDX #$00( M* M' D* y9 A$ k
  1222. BULCON:+ \! e# p+ t- \8 x: q9 M( }% L
  1223. JSR PPUADDR_PROCESS, z6 e! J) R7 b# }
  1224. LDA BULCON_STRING,X& Z: p6 f* O: A1 \
  1225. STA $2007% p3 q0 _( M2 t; z0 J* S7 x
  1226. LDA #$00
    0 ]. r  c. [8 r
  1227. STA $2000& U0 v: d+ d+ O' h
  1228. INC $BA
    4 y* c' N. C9 f3 N  I
  1229. INX
    . e* s. u1 ~2 y% K9 r% v
  1230. CPX #$07
    ) O% w+ A4 R) h" S1 C3 ~
  1231. BCC BULCON, U# s2 B) @% Q8 v6 V0 W
  1232. RTS* o6 }7 p" O7 V) {- [, W3 x
  1233. 7 C* {( M: a# L  E
  1234. BULCON_PPU:  }, L4 N: C& F5 g, h8 l- Z# t$ [
  1235. LDX #$00) b% e( y0 J  A( a4 \* Z$ ]* h
  1236. LDA #$62
    8 [, k$ d) A2 M  k4 d
  1237. STA $BA0 x5 `( r) l6 U, H6 W/ s" ]2 Q
  1238. LDA #$21; E5 K+ Y- D. ~7 ^9 m) t. z2 y
  1239. STA $BB; t4 w% P3 B$ _0 i! \% z

  1240. , d" C$ {3 K! e1 T
  1241. , S& `9 F; m0 d- M! V" X) D
  1242. JSR UP_PPU7 R- k5 N/ o( `7 f
  1243. JSR BULCON_WRITE) @9 K) p  h6 W. a
  1244. LDX #$00
    / l0 Y- C& _' n( j, G# u
  1245. LDA $07A4
    * O. Z) f/ E' s; ^- U! p
  1246. AND #$08/ N3 T$ u" [$ V4 q
  1247. JSR ON_OFF_PPU
    9 c0 ^4 q5 e% V" i) v4 q/ W) }
  1248. LDX #$00* H) g1 _/ i# z8 k: M+ F/ M
  1249. LDA #$71" H, e" J% D1 E9 N/ k
  1250. STA $BA
    6 w: |/ ?5 ?* T( o$ {5 T0 d& f
  1251. LDA #$21" q; h! i0 @# i) V7 \! ?2 W1 s9 Y& \
  1252. STA $BB) B! x, J: {: G  q9 v
  1253. 9 a5 W0 p3 q2 G. K
  1254. 9 ]9 U. ~( i' r2 @1 b; ^7 L2 l$ z
  1255. JSR UP_PPU  o  O6 Y7 E5 k0 C) H
  1256. JSR BULCON_WRITE0 [3 F2 |, ]4 S5 ^/ T2 e+ K
  1257. LDX #$00
    6 ]: R, ~( z4 Y
  1258. LDA $07A5
    * h4 h# }* p8 J0 c
  1259. AND #$08/ p9 u. I8 Y5 A2 b6 c
  1260. JSR ON_OFF_PPU" ^, p$ d# J: v9 B9 V; c  \+ E5 B
  1261. RTS& N5 R4 e2 Q: r9 `0 g1 Q$ w

  1262. / l. |# `  z, m. h
  1263. SPEBUL_STRING:
    * w: z, g1 V3 v+ Y
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80, u) Q; [( T1 a/ c# Y. ]
  1265. / Y5 N9 q0 z- x7 j8 p/ z8 Q

  1266. # D; _* h. \, P8 S+ E1 x
  1267. SPEBUL_WRITE:3 n6 @8 R6 t# a8 V# Y
  1268. LDX #$00
    6 a  Q, M" ~1 v/ V5 c
  1269. SPEBUL:
    , X: s! i; }0 a9 y0 V8 I
  1270. JSR PPUADDR_PROCESS
    ' e7 b# |! x0 V3 l
  1271. LDA SPEBUL_STRING,X1 l  Y& \- o( \" r) \  s' T0 m
  1272. STA $2007
    . ^; ~7 Z) P# n1 \
  1273. LDA #$00. w& B+ K+ [4 x
  1274. STA $20001 F8 w* _+ |. Z/ S* Y
  1275. INC $BA$ A6 ~) \" B( x, k: ^
  1276. INX( |! z5 C, M# z
  1277. CPX #$07
    7 L# u+ [# l- N5 o6 F
  1278. BCC SPEBUL
    5 s) t1 @; u, {  q# r
  1279. RTS' n( i( ]# a: }- ^: O6 X3 O
  1280. 1 M3 l: K0 d5 G: V% C5 e* a
  1281. SPEBUL_PPU:( m8 O  T0 _9 t$ J
  1282. LDX #$00
    1 L& a$ f8 p$ g' h8 |, |1 B& z/ H
  1283. LDA #$A2/ u0 P! F0 I- Q% B3 c% K& x1 ?
  1284. STA $BA5 d, Q+ i# K: P
  1285. LDA #$211 i) n8 C; Q4 h" ?3 M' p) h% p2 t
  1286. STA $BB
    1 C* a$ P7 ]( U

  1287. % W1 J/ l' I, N/ t' [

  1288. . f+ B3 t; @( e0 L
  1289. JSR DN_PPU2 C& l+ @$ ?! c1 i8 W/ l  f4 f; j
  1290. JSR SPEBUL_WRITE
      `7 F8 e' O& \% a7 B: u
  1291. LDX #$00/ j: }8 f- L# j% y( t
  1292. LDA $07A4
    $ ]; y& Z( Y2 m5 Y
  1293. AND #$02# o) k8 B$ T& [
  1294. JSR ON_OFF_PPU
    ! n! v: m- h2 g) j2 J* h- M! U
  1295. LDX #$00& A1 \) x, c1 }
  1296. LDA #$B1
    9 g5 I& p& o5 r$ P/ c+ `
  1297. STA $BA. l/ Y/ X* Y" M7 |4 R1 \/ j
  1298. LDA #$21
    0 F& _; @8 e* _& `
  1299. STA $BB
    $ q( v5 c  v2 y

  1300. . m* E8 M% l  G4 B3 K
  1301. $ i% l/ ^; M( r  u
  1302. JSR DN_PPU
    4 f( ]& L- Y4 X9 {0 C/ a$ p
  1303. JSR SPEBUL_WRITE/ L& n9 m7 e. e4 q; }& g
  1304. LDX #$00
    0 n8 x8 Q) d% h& x: {  O
  1305. LDA $07A5
    . o) h# u8 L5 X& V% \% t5 N
  1306. AND #$02
    ; ~" j: j  v9 p6 G9 y
  1307. JSR ON_OFF_PPU
    ' l& u  E! p- |; Z' X0 a# M: M. j! z" v
  1308. RTS7 G0 o/ C- \- k" {) P
  1309. 3 [7 R3 ?% l2 a/ z0 \0 D
  1310. .ORG $A500
    8 @7 ~; [: m+ k" i" _5 V, Q! {
  1311. CLEALL_STRING:1 E, k) `9 B% D  M9 Q
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$807 v+ k' W- g" F) w# I
  1313. 5 y: d( X! o9 P9 H% \
  1314. + p) f- V, l' d0 p: ]7 k
  1315. CLEALL_WRITE:
    ( F% C/ f2 P  O8 `2 n/ u' k, B. W
  1316. LDX #$00
    6 m; i8 N% b6 E! P- i
  1317. CLEALL:- n* g7 V; K6 u, J4 i4 j/ N7 Z
  1318. JSR PPUADDR_PROCESS
    0 [- c& \% E3 w7 z9 j
  1319. LDA CLEALL_STRING,X
    ; v0 Q" C, m/ P: o
  1320. STA $2007
    4 J; a( |; f" D  y& A4 q
  1321. LDA #$00
    - o! e5 @. s4 r: [) b+ D& {& \# Z
  1322. STA $2000
    ; _) g& c& t7 b9 R
  1323. INC $BA* Z; P$ p& @, x8 N  Z
  1324. INX+ w; D7 F! \" M
  1325. CPX #$07& A1 P. N; h: E2 O
  1326. BCC CLEALL
    # d7 ]3 k1 B! F
  1327. RTS  L7 h! M: n* F* i/ i

  1328. , c0 f/ I4 W7 W
  1329. CLEALL_PPU:- ~. k! l( ~. y( v' P3 w
  1330. LDX #$00
    # L& A2 ~+ I6 i& K
  1331. LDA #$E2- [+ u. n) \6 b) ~' |6 Y) b7 O; q
  1332. STA $BA
    " Y1 u5 B6 u3 }
  1333. LDA #$21. `  N: k' k3 R  _+ f' y* _' O9 z
  1334. STA $BB/ w  D0 n; `1 ]2 ?! a( e. ~5 T* s
  1335.   n3 Z+ t- P2 f1 T- O6 P7 ]

  1336. ; q4 G  |. c3 b* S; k4 T& r
  1337. JSR LF_PPU
    ; @( h4 ]  s; k, s8 U- S
  1338. JSR CLEALL_WRITE2 k& S# T2 G) }) N2 C) e3 B
  1339. LDX #$00) B# z) o& r9 @+ s
  1340. LDA $07A4
    : X5 F4 ^- ~7 C% J. ~& N2 v
  1341. AND #$04
    5 a/ ]. S8 ?& [
  1342. JSR ON_OFF_PPU
    . {- t& g2 I* Z' C
  1343. LDX #$00
    + @" z4 N2 p3 O3 y1 _" Z
  1344. LDA #$F1
    1 ~  F/ {. w* k# h" N& u
  1345. STA $BA
    5 m5 t" U# o& m: U+ `& t
  1346. LDA #$21# C2 K  h7 T8 Z0 @8 i' g
  1347. STA $BB: B. E8 g, x: ~

  1348. - w( C) a$ h2 R1 A

  1349. 5 J/ I+ ]5 w6 Z" E% O
  1350. JSR LF_PPU
    % q; ?. L: [3 F8 ^$ z
  1351. JSR CLEALL_WRITE
    ) i' ?! F2 V5 [: l* F
  1352. LDX #$00
    , O  j- c% e( H' U1 Z' R* B
  1353. LDA $07A57 z/ q, n5 g" i
  1354. AND #$04- {% h" d0 w- u& Q, a
  1355. JSR ON_OFF_PPU* I' L9 g% E' f5 d6 ?
  1356. RTS/ u% [3 `6 r* R/ i

  1357. , o1 }) |& U; b8 u' b
  1358. HARDMODE_STRING:
    * R  S0 |: S% o3 l1 S
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80- W3 y: O& ]( K8 X
  1360. ! N0 ^5 g4 T( w1 b
  1361. . ~# ~8 e3 L. Q0 s
  1362. HARDMODE_WRITE:& m. a; N4 W) p" m- N8 p
  1363. LDX #$001 d0 J, F0 N! P! j$ S0 h# w# t$ n
  1364. HARDMODE:; }; W" J/ E) ?. Q* k
  1365. JSR PPUADDR_PROCESS+ i6 e6 z! I0 _
  1366. LDA HARDMODE_STRING,X
    5 Z" b7 w. u3 ^: B5 Y3 B/ ^
  1367. STA $2007
    + Z9 v3 R+ B7 F8 I# H# w
  1368. LDA #$00
    ) s& ?0 H' Z' B) c5 i: c
  1369. STA $2000
    : f7 d5 a: X* ]' ?0 B0 }) c0 U8 W
  1370. INC $BA
    ) A* N  e& o6 y
  1371. INX
    9 f5 B' f) I2 R
  1372. CPX #$07
    4 L6 i6 {# b  ?2 j
  1373. BCC HARDMODE
    # o- @" x0 E$ i8 V, P+ x
  1374. RTS5 r- r, ^% @6 A% L) ]

  1375. : W% u& H) {7 }& H. {, v
  1376. HARDMODE_PPU:
    2 z1 m7 g3 D2 R+ e+ @
  1377. LDX #$00
    & r( p" o/ U' w) r! P
  1378. LDA #$22
    $ e5 J0 R, w6 y
  1379. STA $BA
    6 Y3 J) y6 V0 x2 J2 Q+ T
  1380. LDA #$229 t1 @/ `4 Y' f/ ~1 @
  1381. STA $BB
    " z$ ?# N: L. O$ F( D3 q4 P" n$ x  a
  1382. JSR RG_PPU
    . X0 G( \7 c( ?2 H& E! Z5 j3 }
  1383. JSR HARDMODE_WRITE/ {' w0 J7 G4 p1 C" V% L# c7 D
  1384. LDX #$00
    1 y0 N0 g$ I/ q5 `5 Q1 M: X3 A
  1385. LDA $07A4# H, b8 h7 b+ F- s5 \
  1386. AND #$016 y, K& K& M+ k0 f$ f3 U$ [
  1387. JSR ON_OFF_PPU" L" n) s0 H) L" a# m
  1388. LDX #$00( X2 P7 {3 u! D/ A: H+ ]3 J# t
  1389. LDA #$313 A$ a4 a* \7 m0 Y2 Z5 @
  1390. STA $BA
    : Y0 A) w) d' Q( K$ H9 H
  1391. LDA #$22
    + h9 ^' U7 d/ z6 L) I
  1392. STA $BB
    ! E. Q# ]. o  o) V$ `7 c$ F
  1393.   w; [+ N$ ^6 |" l0 [
  1394. 9 w* I( I8 T' [( }8 `" m
  1395. JSR RG_PPU0 v7 J7 V! o1 L; `
  1396. JSR HARDMODE_WRITE1 p& d' P5 h& I: S
  1397. LDX #$00
    # _) v2 y8 o) l& B5 ~
  1398. LDA $07A5
    / Q9 _0 i8 O! O7 ~# B' ~# n, _5 K6 Q
  1399. AND #$01" Q% i* U7 Y& c- t! W1 L
  1400. JSR ON_OFF_PPU& h2 W& c' h  g7 B4 f/ _
  1401. RTS
    - v* M1 F. A* l, C
  1402. 9 \: }, T) G5 C/ c) l  H' P
  1403. B_TO_JMPSTG_STRING:
    1 J' X( B& P: b/ u: X. d
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80. n% |9 N2 i9 x9 g8 ]3 _
  1405. 8 M4 s) X1 r, n$ I
  1406. . A$ f7 s  Z/ E" a2 T& c
  1407. B_TO_JMPSTG_WRITE:
    ; _& M9 V, O" G3 G2 U! O
  1408. LDX #$00
    ' m3 }4 M& z6 ~& t& u; k* `
  1409. B_TO_JMPSTG:
    ; c4 U8 S" h1 I2 z
  1410. JSR PPUADDR_PROCESS
    0 Y  B3 _9 B6 E; Q6 \2 c
  1411. LDA B_TO_JMPSTG_STRING,X% H6 H6 g) h8 K! o5 f
  1412. STA $2007
    3 W4 J% B+ X% \$ G2 }9 f# n
  1413. LDA #$00- z4 h& Z9 I6 z  u- h. E: Z# g$ S3 R
  1414. STA $20009 T# L3 D/ I5 Y/ U3 S6 x* Y" y& T; t
  1415. INC $BA
    4 t4 }) a0 E" O! L
  1416. INX
    1 x8 J; s1 f, B$ y: o
  1417. CPX #$0D% h" c/ Q1 ~/ X% [8 U, h
  1418. BCC B_TO_JMPSTG
    $ e9 {! C; c+ P& w6 A
  1419. LDX #$00  J& E$ N' B/ l7 p
  1420. LDA $7FE0
    + \5 w' h  X+ T7 ?+ j
  1421. JSR ON_OFF_PPU
    & E7 n9 w5 L, N( E/ Z
  1422. RTS
      z4 t# s3 A8 ?+ Y5 L. T
  1423. ; t5 b; B8 M+ d( A( L
  1424. B_TO_JMPSTG_PPU:
    ' q- Y3 O$ J  r: p
  1425. LDX #$008 v6 j3 a% [1 S1 ~% m+ p( Y. \
  1426. LDA #$68
    : E7 a' |4 c: f& W  y5 b: J
  1427. STA $BA, n4 v" z7 p4 K8 G3 t
  1428. LDA #$22( e* c' j2 c( Q  r$ p
  1429. STA $BB
    5 {+ y- e9 k8 @; w- e/ v
  1430. JSR B_TO_JMPSTG_WRITE
      E! Y( p# Q) P" O: ~+ E. H3 u
  1431. RTS
    2 e8 ]: y) ~, p% O8 Z, d
  1432. 4 ?% l2 g3 P6 @) ^, K9 @' \% H
  1433. * }5 {- t, }  C4 r7 o1 O( ]5 V9 r
  1434. A_TO_PLAMOD_STRING:
    - e3 O  I5 l4 U. ~6 @( Y
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80! S/ e( r8 f8 o3 s7 R0 t2 J

  1436. 4 c7 w2 ~. K5 ?' o; f5 A6 F) |
  1437. - }" P7 B! o5 L- R2 X, b0 G
  1438. A_TO_PLAMOD_WRITE:
    5 n; i# r% U/ x
  1439. LDX #$006 p, V0 Q) G7 G9 N2 D5 U
  1440. A_TO_PLAMOD:' p) d$ G4 }0 Q5 W
  1441. JSR PPUADDR_PROCESS
    , f- L( g) `7 Z) Y0 H+ |
  1442. LDA A_TO_PLAMOD_STRING,X
    6 j4 W' g( v. q. q6 |
  1443. STA $2007% t' X# y; u4 S3 r
  1444. LDA #$00- @) ?& b+ `. a
  1445. STA $2000
    4 r4 J; H8 C3 i! a3 j. f4 u
  1446. INC $BA3 P$ ]* W6 Z1 z
  1447. INX
    8 N) Q: f* D0 O
  1448. CPX #$0D
    ' L8 K; T7 L; R: I
  1449. BCC A_TO_PLAMOD
    & k" r0 L! r& Y, W% J: L# E
  1450. LDX #$00
    " i, z6 T* @: }% X  y1 {4 V
  1451. LDA $39
    + k* R4 ~2 ?+ f/ T. ]9 Y
  1452. JSR ONE_TWO_PPU
    3 M. j, Y, \# ]. r5 H+ O/ `% c
  1453. RTS' F  i" ]3 V$ B3 t6 l9 q

  1454. ' [1 R) R+ F+ e8 z2 R) }
  1455. A_TO_PLAMOD_PPU:
    $ w- K9 h" R) H& Q5 L
  1456. LDX #$009 m8 i6 |& G9 N0 h
  1457. LDA #$A8
    / y& u3 J- Z# @+ s  T3 n
  1458. STA $BA" }" R  b) S# V& ~
  1459. LDA #$22* s% X- K# ?# R
  1460. STA $BB
    5 P8 ?; l+ y' l* r
  1461. JSR A_TO_PLAMOD_WRITE9 c! C2 i. x9 [7 {( I) c2 O3 f
  1462. RTS
    . h) w2 {1 \) M8 f3 C. r1 }! k% h

  1463. % @9 B/ R$ B- o! ]* r
  1464. MOVSPE_STRING:
    " t) K5 D* ^" X
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80. m9 {6 c; Y8 \6 }9 y/ a
  1466. - |% d+ |0 O' @2 }
  1467. 5 I3 e, C. T5 i( c% M- G: C
  1468. MOVSPE_WRITE:% U+ N5 C. U5 g1 C5 u) d
  1469. LDX #$00
    0 |( f# O& \! p1 V+ w1 x
  1470. MOVSPE:1 I( k; |/ ]$ l  H
  1471. JSR PPUADDR_PROCESS
    2 b9 l1 z* Z& V" I2 f
  1472. LDA MOVSPE_STRING,X+ h; X$ u( ]- ?) F
  1473. STA $2007
    5 ?" t0 ^1 K9 t" I( d3 K6 g% V
  1474. LDA #$00
    6 Q5 I7 C9 m+ H/ E
  1475. STA $2000' c- v9 E; V% q% D& n( G
  1476. INC $BA* H) L& k9 C* j+ h+ R) o
  1477. INX3 k/ \& Z) [3 f* X$ M
  1478. CPX #$07
    2 w% n/ }% A4 J7 C, W& ]/ R
  1479. BCC MOVSPE- u9 R. D$ @" N5 I  C; }, _
  1480. RTS
    1 q! ]. s3 i2 z. ~# p; Z: w
  1481. 2 w3 y- _+ E# S! `
  1482. MOVSPE_PPU:; |& J9 y, _8 |/ r
  1483. LDX #$00
    + d& N" c8 _% [# w# O  N% ]
  1484. LDA #$69
    / \5 \) b, S0 d! p; y0 S
  1485. STA $BA% f& L- ^2 F0 l: B! _. K% }
  1486. LDA #$21
    & d* z# }1 |8 A  F8 R. C2 {
  1487. STA $BB
    $ e" I$ B8 F' C5 l
  1488. * z% q  a* Z, v, Z
  1489. 8 ?( m& L& c# `: F6 C1 K  X
  1490. JSR UP_PPU/ r" s9 q9 d3 w& t1 ^5 Z3 G
  1491. JSR MOVSPE_WRITE6 v2 c9 i; ^( ~) I7 s% L. |
  1492. LDX #$00) [# v. ^* y$ W' j
  1493. LDA $079F
    % B  Y9 Y3 \  l0 @% ^0 N1 V
  1494. AND #$08
    ( E5 A- y# P7 o
  1495. JSR ON_OFF_PPU: g5 z9 L5 U( r- @) z
  1496. LDA #$80
    8 M6 x/ s8 }6 @& I! S
  1497. STA $2007" [! j+ G! H* k" o0 F% b
  1498. RTS5 N2 F* z/ ~8 S+ O3 L

  1499. 2 H. }* V  I- v( F& D7 t
  1500.   
    ) K2 x0 ]& n3 s( U' g2 Q4 g6 D9 j
  1501. UNLJMP_STRING:# f, |$ l: c! f5 v
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80
      ~4 i6 D: V. x4 Q
  1503. # R5 H- c0 C  q( Q. `& l* T/ J

  1504. % o, l- ~; |, Q. X3 Q: z
  1505. UNLJMP_WRITE:
    5 ?/ X) T. b% ?1 {/ p# k& R0 e3 T8 I
  1506. LDX #$00: t! S  P& M+ r  q  k
  1507. UNLJMP:- e7 X5 g/ F, q  i. W" j# z
  1508. JSR PPUADDR_PROCESS8 t8 m  Q, G# U9 ~% I
  1509. LDA UNLJMP_STRING,X2 p5 r4 @: T) t8 @, j& z- `! B
  1510. STA $2007) s- @* X! }3 m" F' Z
  1511. LDA #$001 v7 T/ ^" U* ?( d
  1512. STA $20004 n* p5 _1 m- {0 v
  1513. INC $BA5 Z$ U( K) N/ c6 c4 {) }- ]2 u
  1514. INX
    $ x. g/ }' Q' \1 |$ w
  1515. CPX #$07, `1 @- ~9 E8 @1 x5 p0 Q0 r$ W5 x3 [
  1516. BCC UNLJMP
    , K$ M9 M9 ~8 s2 ^0 m7 ?5 Z
  1517. RTS
    7 @6 h/ E% a* }5 _$ n

  1518. 1 }! N9 u2 n: C. P; u: `: ^6 P
  1519. UNLJMP_PPU:* r- h/ t0 h7 O) E
  1520. LDX #$00
    4 K! W% O; D7 x6 c! `
  1521. LDA #$A9
    ' t; }  y! Y7 a. l1 Y( {( z
  1522. STA $BA, I! K+ F, R# e9 |2 B) a3 D
  1523. LDA #$21
    . G* j) Q8 S$ l7 \3 J$ l
  1524. STA $BB
    # B$ q5 ?2 E+ p- ~" }6 c
  1525. : f9 ]2 H" m1 g

  1526. 1 @0 L9 f3 L3 X0 l3 `' w! @* K% k
  1527. JSR DN_PPU* O, R3 b3 ?1 V& `  k3 p9 f. C
  1528. JSR UNLJMP_WRITE
    # G' Z( ]# h$ M0 G  a( \
  1529. LDX #$00* m+ g6 K, H. Y9 {8 k- j
  1530. LDA $079F
    ; J9 x) t/ a  }0 x% B
  1531. AND #$04
    4 N; X$ S; |5 h. N# a+ t. T; [
  1532. JSR ON_OFF_PPU. L" |. L" s1 P  W" f7 \' [
  1533. RTS
    + Z7 M# f- e; |/ u; t
  1534. : h! p$ f' n! V, j$ ~( D

  1535. . Z3 E) p3 Y; D0 p
  1536. DESTRO_STRING:4 c4 |) C4 [8 a$ Q7 A4 T. g, |) A
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    : b( w. l: q2 i: X; N
  1538. : Z; K3 v4 v( O

  1539. 4 w2 L9 r" J% H' L2 f
  1540. DESTRO_WRITE:
    / }0 U3 U" W+ f( {+ q+ F
  1541. LDX #$00  o8 E6 P/ S6 [7 f, o+ `2 D5 l
  1542. DESTRO:" h9 ~  t! m- M
  1543. JSR PPUADDR_PROCESS' u4 j7 v$ m' {" H. B
  1544. LDA DESTRO_STRING,X8 P: L& P: h% v7 F
  1545. STA $20072 F3 i; m4 I- t
  1546. LDA #$004 d* v" s2 d1 Y3 j
  1547. STA $2000
    - z9 R% a6 s$ P
  1548. INC $BA
    $ F6 K' K# f* x3 S7 [
  1549. INX$ J! f3 Q3 T6 z9 J% V, N& n
  1550. CPX #$07" Z- F  Z' P+ M3 I8 u
  1551. BCC DESTRO
    0 u; x3 H1 Y8 C" }1 h- R
  1552. RTS
    , U2 [' {% n' a+ `! O

  1553. . c) ^, n* r6 J
  1554. DESTRO_PPU:7 e$ r% W9 T$ C4 ?3 ]0 R/ f( s
  1555. LDX #$00
    " ~2 k- _; `' d8 G' p
  1556. LDA #$E9
    $ o& b; ?" D+ W8 c( V. J4 Y0 H
  1557. STA $BA
    * J2 g' q6 j8 O' @4 I( I/ }! J
  1558. LDA #$21; L, D. [6 S: X2 A
  1559. STA $BB
    6 N/ o$ N* @$ ~) `
  1560. - U3 P5 c! O0 @. G/ D/ k1 I
  1561. 5 B/ Z8 P; G8 O
  1562. JSR B_PPU3 P8 U; K2 G+ s5 x' r3 s8 I0 N7 v
  1563. JSR DESTRO_WRITE6 D* k4 f2 @( y& d* y7 L/ g
  1564. LDX #$00! V$ e! q; n" H. q6 _
  1565. LDA $079F
    % q( g( H+ U! D7 |
  1566. AND #$40
    * G! ]8 a# R/ K$ s9 ?
  1567. JSR ON_OFF_PPU+ m8 }7 |) @% S* d  ~# N5 M% Q
  1568. RTS
    & ?2 H3 o9 e  c% m& k4 e4 b

  1569. ; V  E4 Y; i* }* m/ c

  1570. % R2 I0 \( [! Z- v  L
  1571. EQUBUL_STRING:
    5 E5 ^5 ]# ?' \6 b# K% u
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80# F9 a0 k. b0 O9 U  W& m8 w

  1573. $ {5 k! N: Q! ~8 L  ~; L
  1574. * V! t" L9 I: E- {; {% m" q
  1575. EQUBUL_WRITE:
    # ~9 O; }4 f) P! z
  1576. LDX #$00
      Q; p8 [. W; `. }
  1577. EQUBUL:" m3 r) b" G: ?, W7 y
  1578. JSR PPUADDR_PROCESS7 M" {( A- M2 N4 I' i) v
  1579. LDA EQUBUL_STRING,X1 P1 k( `+ K' h! h4 H9 @
  1580. STA $2007
    % q9 t( |# a- _0 E
  1581. LDA #$00
    & I# T; M% ?; m' Q
  1582. STA $20002 s+ A' p8 i4 |% K9 B4 f8 q" `$ z
  1583. INC $BA
    : t$ U6 z5 b4 `7 e3 @
  1584. INX- `4 n" T$ Q& u
  1585. CPX #$072 l! B) Q( r( F; Y2 A- X
  1586. BCC EQUBUL
    ' d' u& G* v4 J! e  A
  1587. RTS
    * a: W9 f1 m( ?0 s* `+ Q( c  q
  1588. - Q! v4 Y8 @5 i" C  E' @
  1589. EQUBUL_PPU:
    7 N8 y9 _- D0 Q8 S" h6 t
  1590. LDX #$00, P- [; m; L! z) F5 i* R6 ]+ {
  1591. LDA #$29
    : l: V1 I& H4 s5 o4 q+ M1 I8 b
  1592. STA $BA
    8 B% Y8 u$ F1 B4 E3 s  [+ R
  1593. LDA #$22: @1 T9 o$ x4 n" t2 A
  1594. STA $BB
    1 f9 w( I4 |7 ^* o

  1595. $ ]) ]7 X) M. D
  1596. . t6 n! D1 E' j
  1597. JSR A_PPU4 K/ a4 L, R6 I$ j
  1598. JSR EQUBUL_WRITE( ^5 c4 e: k4 x0 p: G: q4 ?
  1599. LDX #$000 {" p* f% {% V3 k7 }
  1600. LDA $079F% @4 r( |5 d3 k3 \( ?9 ?2 ?- c
  1601. AND #$80
    ( Y% m& J. V9 P
  1602. JSR ON_OFF_PPU
    3 N% ~8 k7 A" u4 j
  1603. RTS
    5 p$ w6 N! t+ w: d  P0 O' f! O

  1604. , S# e2 @( }& I+ G

  1605. ( Q7 F: r- a3 Y0 A1 l+ h9 V
  1606. ' l* d8 y+ d, x  _" U- n
  1607. BULSEL_UP_STRING:7 N. G3 H* E7 ]6 B1 H
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    4 D" Y0 C# v; ?
  1609. " l; @4 p7 G  U) {, L( v
  1610. BULSEL_DN_STRING:
    , U% n2 ?$ K1 H" |- ]" q# a
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80
    ' \$ p) b* g% A0 l+ H+ }, L

  1612. ) J, f1 @4 J0 H# m/ s/ Y
  1613. BULSEL_LF_STRING:9 B) G$ m& Y3 i  [$ M: z1 w1 ^
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80/ S3 J5 l8 N! s- ^3 T
  1615. ; J9 o0 @7 C) n" p
  1616. BULSEL_RG_STRING:$ |; N. K. Z" M7 p
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$804 l! C  D  o. ^0 i

  1618. 0 J& j! h6 R/ Y; u
  1619. BULSEL_B_STRING:; Z; a* D6 c0 F5 v  l
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
    # R3 n1 P! N3 \4 Y
  1621. 7 Z; ~" y' I  C/ e- k
  1622. BULSEL_A_STRING:
    2 p; `* y3 C- _0 F
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E
    9 {  A  l5 [! A9 o+ K5 ~" O' H$ d

  1624. 3 U& F3 ]8 x. d4 J
  1625. , d8 Z8 R# v) `4 `+ m
  1626. BULSEL_UP_WRITE:
    / b6 L8 p5 C' d2 \
  1627. LDX #$007 _4 |5 Q6 ]" `1 m; y
  1628. BULSEL_UP:
    9 j4 e2 u7 r  S1 Z* X8 s! w6 J
  1629. JSR PPUADDR_PROCESS1 G4 y7 e- U. H6 `
  1630. LDA BULSEL_UP_STRING,X
    % Z7 c+ j5 b0 O) f9 U& `
  1631. STA $2007
    2 U( c. o" M  R
  1632. LDA #$00/ Y! z& t7 b) q, p3 m
  1633. STA $20002 z) ^, a; I, H& R  F0 F9 E+ S
  1634. INC $BA! Q  f  D" T" h2 M- a3 Z" c' J" ?
  1635. INX
    # b" C+ [* H, U9 A9 h( R/ b3 I3 Z
  1636. CPX #$09
    7 U% Z8 A( S0 z4 _/ W
  1637. BCC BULSEL_UP
    4 R/ v! I8 ?) f" u+ p) y
  1638. RTS
    $ J) W- r' I& G; p
  1639. BULSEL_DN_WRITE:1 i1 t1 G9 d8 D% x
  1640. LDX #$00
    0 S  F$ c! i. h9 Z, t
  1641. BULSEL_DN:% J# j. I% z. y  V; z$ V
  1642. JSR PPUADDR_PROCESS) x% u* o: u8 v/ ]# C- O( A3 ?' F9 l
  1643. LDA BULSEL_DN_STRING,X
      |1 d) i. M! Q0 P* {5 f7 K9 L
  1644. STA $2007! \& U( a1 D* p  w2 ]5 h" k
  1645. LDA #$007 U6 ]2 i* s# @
  1646. STA $20007 o0 s( G# h0 z4 P3 s8 @
  1647. INC $BA, _0 q. `& e( T- C! H. l
  1648. INX% _0 `. n* O0 k
  1649. CPX #$09
    7 J2 m& S0 L. M0 R# F  o5 _4 G
  1650. BCC BULSEL_DN
    % X3 Y6 n  p! m- q9 D- B
  1651. RTS
    " @. D* ~. B. J
  1652. BULSEL_LF_WRITE:
    5 f* w* x" }0 [" a, Z6 a
  1653. LDX #$00
    ! d6 V  A2 N8 q+ x4 e
  1654. BULSEL_LF:
    + e% M" }+ ~! d, V7 R
  1655. JSR PPUADDR_PROCESS" u% f" k2 ^% s$ b+ C% Y% z0 o
  1656. LDA BULSEL_LF_STRING,X! T3 E9 h2 k: D4 L6 E* o6 B
  1657. STA $20079 E6 @5 N3 ~( x* ^
  1658. LDA #$00
    4 S% Z' Z. O% c! d9 g- k/ M: L4 X9 w- g
  1659. STA $2000
    ' C% v) O6 Y9 I. C/ g$ |( c
  1660. INC $BA
    ( N/ Z5 Z6 D; r5 w8 b" p5 h8 Z" W+ x. i
  1661. INX* `, _3 Z: H  h/ L1 [0 _
  1662. CPX #$09, \+ f2 X$ h, V1 s: `9 l
  1663. BCC BULSEL_LF
    6 \+ J+ g. T2 |, n8 Q6 p; I
  1664. RTS
    ! E4 L1 U0 b7 g& h$ S) E3 x0 W/ j
  1665. BULSEL_RG_WRITE:
    ; s( d2 M7 [4 @/ Q3 b8 N. u
  1666. LDX #$00
    / B) q8 {* `0 y5 T; t5 x
  1667. BULSEL_RG:
    2 v2 C6 H3 ^! l9 G: E' R" n2 o
  1668. JSR PPUADDR_PROCESS4 j1 I- `9 {# E0 k' y
  1669. LDA BULSEL_RG_STRING,X$ j3 h# z% @7 p6 T4 B
  1670. STA $2007
    , r0 O7 n& T9 p4 X; _
  1671. LDA #$00
    % g* |* |6 z' ?7 q+ K4 f
  1672. STA $20007 k  ?- V1 U( a( C) z- Z" G+ U
  1673. INC $BA9 c9 `, b) s/ V5 C
  1674. INX
    7 u, V& G+ a) C% P. e
  1675. CPX #$09
    1 N6 j5 n, K. z
  1676. BCC BULSEL_RG
    3 t. f# K, ], A) ~: {0 h0 W
  1677. RTS- c6 h$ S3 j, U# s3 u
  1678. BULSEL_B_WRITE:
    9 L2 W* `+ l# P( O2 {4 m" d
  1679. LDX #$006 H0 D) t1 N+ X' I
  1680. BULSEL_B:) o; F& O* G. N! p! E
  1681. JSR PPUADDR_PROCESS
    8 G1 X7 y0 y6 t
  1682. LDA BULSEL_B_STRING,X  S) X+ D% U6 K
  1683. STA $2007
    $ \& i. [6 z; X; K, ~+ s
  1684. LDA #$00
    6 G  x, G2 M( F
  1685. STA $2000  D0 a$ f  T4 ~! i- p% m
  1686. INC $BA
    + W6 p# {1 z% Q; ?5 o& T% M
  1687. INX! D' L) y7 m" Z% p- B  e. `6 z
  1688. CPX #$09% {, k6 @7 y# {' E: Q' F' |* z) C
  1689. BCC BULSEL_B' z: ^, x9 h( G8 I! }
  1690. RTS( {  ]/ U3 p" N$ W. g# X" |
  1691. BULSEL_A_WRITE:6 W( v% r( }  B  C
  1692. LDX #$00
      p  b0 i; C% w2 U8 l" A
  1693. BULSEL_A:: C8 \- g9 M7 b$ e8 K
  1694. JSR PPUADDR_PROCESS
      B0 {3 X9 B, f* `0 x) U; r
  1695. LDA BULSEL_A_STRING,X  z) u7 H5 {$ w0 w+ e
  1696. STA $2007
    2 m$ O& r3 l7 N6 m" a
  1697. LDA #$00
    % V2 v2 B/ [( m- `
  1698. STA $2000
      Q% `% g. E0 x& i8 x9 `! U
  1699. INC $BA
    0 H% A# Q5 t* ]$ f
  1700. INX: M4 l& G% U* T" R7 b* i9 j
  1701. CPX #$12
    & @/ g4 V6 E/ I" `6 _/ ~5 }
  1702. BCC BULSEL_A
    / ^% G  Q* Q3 Q' Y6 O
  1703. RTS' m. B- w, r- O- |
  1704. 8 D( G3 V- N. k
  1705. 9 ?+ K& ?5 b9 t* S+ l

  1706. 6 ]+ K+ M) x5 a4 w3 s
  1707. BULSEL_PPU:
    6 W+ u; I7 @* g) W6 \0 E* D
  1708. LDA #$6C5 i1 C( @5 h# [& E" h& e
  1709. STA $BA
    / I2 W) Q. U# W+ U
  1710. LDA #$21, M( n$ E5 O1 g+ Q$ ^; y/ n# C
  1711. STA $BB
    # m& t5 w* R3 i  W, H
  1712. JSR BULSEL_UP_WRITE
    . [5 ~7 J$ E7 y: a6 H
  1713. 1 g# O$ j9 ~0 q9 Y
  1714. LDA #$AC
    2 s) D$ d; _/ j% ]& z" f! D! i! ]9 q
  1715. STA $BA7 B. Q/ u, x% S7 c
  1716. LDA #$21  e$ N+ D# K( A7 ?8 R+ O6 ^
  1717. STA $BB
    / ]1 m# \+ B7 p  [
  1718. JSR BULSEL_DN_WRITE, w) L8 j4 H0 a3 j$ }
  1719. & R* R9 e( H  y4 x
  1720. LDA #$EC
    % ?5 Z) \+ R# p( c5 b& [
  1721. STA $BA( J+ W4 n  k! P! e
  1722. LDA #$21) \+ i0 b( c; g. T2 v) U
  1723. STA $BB# N9 w* I0 q! ?+ v8 H  X& l/ l
  1724. JSR BULSEL_LF_WRITE8 V! \8 `7 l* X1 X* Q

  1725. 6 @# ?4 |. @2 ]
  1726. LDA #$2C
    8 k  T8 S6 V0 G3 ^
  1727. STA $BA
    4 L' ?) t' _9 r7 N  P: q8 v
  1728. LDA #$22% K* L6 H- k3 E. X8 g" j+ |6 T
  1729. STA $BB
    " Q7 F: h7 J8 f1 I
  1730. JSR BULSEL_RG_WRITE
    6 [: z9 e8 k1 J$ u  g" c+ E* x

  1731. + ~8 ]) l- c2 M8 l2 {! }, a9 C
  1732. LDA #$6C, |1 O2 G) z' q/ a' p
  1733. STA $BA  I: O- U1 D0 Y' X2 ^" v
  1734. LDA #$22
    * D' f0 [& F  A  H1 M1 t
  1735. STA $BB
    . z) D1 b6 H+ \; t  R+ H! W
  1736. JSR BULSEL_B_WRITE2 F0 @7 u. R6 t
  1737.   D% g2 A" _, k3 A
  1738. LDA #$A7! l7 S* s2 v+ \& p
  1739. STA $BA
    * L4 H% Z3 f- K. |; _4 O- @
  1740. LDA #$22
    0 ?5 v5 G" t! k( f; Z7 y
  1741. STA $BB
    1 Z! n& Y8 v, y7 W" X
  1742. JSR BULSEL_A_WRITE
    6 T3 |# Q3 V8 C4 D! @9 o& R  {
  1743. RTS& W, u$ N6 }1 @% T5 ?% w
  1744.   l. d, D5 ~, V% u5 k

  1745. 8 P2 e' w" ^) a! N9 u  k4 I

  1746. ( @0 r9 E0 k) N  z1 S- }8 }
  1747. UP_STRING:* d, n; O3 E  d( X
  1748. .BYTE $9F,$9A,$804 S* L' L' a+ p' i

  1749. . s; M  S% m2 T9 N7 U4 T* _& G. x
  1750. DN_STRING:
    : R- p6 P  A# C% i: g2 \
  1751. .BYTE $8E,$98,$80
    4 h9 @6 j" |- \/ ^, C& F

  1752. 8 @# X1 C6 a) z- |6 o; l. j2 B
  1753. LF_STRING:" Z/ T* }: J: r: ~, Z" L
  1754. .BYTE $96,$90,$80" V$ |3 y; T5 s1 R0 j1 L, B

  1755. ! Y. R8 w) p, ], {1 N2 m
  1756. RG_STRING:+ P& E0 C1 p! r* a* S
  1757. .BYTE $9C,$91,$80, e0 c& p, p' p$ Z! l, T8 S

  1758. 6 p; s4 J4 d6 ~
  1759. B_STRING:# Y7 a, \& J  O2 W7 W
  1760. .BYTE $80,$8C,$80# W0 [# t1 M0 R* A

  1761. " ]1 F; k6 [9 X4 a; x: L
  1762. A_STRING:7 l3 p3 V- `% x0 l: j8 p0 S
  1763. .BYTE $80,$8B,$80
    9 @' M) M5 I* y1 K; E
  1764. ; U! |/ S; U) w
  1765. 1 T" y4 x2 k3 x) z
  1766. UP_WRITE:. \$ [. o: Q2 H; {
  1767. LDX #$00
    5 J# i( ?% U( {& u. a
  1768. UP:
    / Y( A9 K5 A; k1 b- ]# _0 q0 ]" a
  1769. JSR PPUADDR_PROCESS; C" ]) Y/ W: x6 T' J4 I
  1770. LDA UP_STRING,X
    2 U2 i5 {1 ?  T0 \  ~
  1771. STA $2007
    4 y- E' ]! A% Z& J7 h" P# p/ B
  1772. LDA #$00
    & q* u' K6 Z; v. ~, P1 P
  1773. STA $20001 t$ S0 ?0 F2 t
  1774. INC $BA* {2 _6 i4 \' r' e
  1775. INX
    # R: i" `" c. z0 ]
  1776. CPX #$03; b. M: c0 d/ A! f
  1777. BCC UP' @  B6 m" I3 l
  1778. RTS
      G" {1 r/ `' P* J6 T

  1779. " r3 Q4 `5 B! x" }- O
  1780. DN_WRITE:
    & k6 L, Z+ z7 X# B2 g- C1 C
  1781. LDX #$00. H8 r9 l8 ]# ]8 G3 q& g8 n* K) K
  1782. DN:
    ' a) T0 S: `9 R# u0 z
  1783. JSR PPUADDR_PROCESS. O$ z. o0 F( F9 A
  1784. LDA DN_STRING,X: X2 S( U4 P* C( i& X
  1785. STA $2007
    # K' v) W" g0 Z1 \0 H9 r
  1786. LDA #$00& C0 V4 N% U+ Z% L# [) e% y
  1787. STA $2000
    1 z: M% O7 F1 @! l& K
  1788. INC $BA
    , Y8 G  n; n! I' ~7 i! `
  1789. INX
    : Z2 ?9 j5 D0 B2 M  R
  1790. CPX #$030 f4 Y4 n5 u/ l$ [2 Z6 c
  1791. BCC DN
    ( D4 D6 l) i$ V
  1792. RTS
    . h% Z, H5 f; a
  1793. " V5 y; E% S, l5 U& S
  1794. LF_WRITE:+ M% L; T) j' A6 V- \& z0 f8 {
  1795. LDX #$00' C. [! P2 D9 P, v
  1796. LF:
    5 X  _% s3 k! X
  1797. JSR PPUADDR_PROCESS
    6 H0 O3 k$ D6 H( C
  1798. LDA LF_STRING,X' k2 ]- M2 n  e! x4 E3 g* P
  1799. STA $2007
    ! }3 X/ W2 n' |5 w: k' m( ?/ `
  1800. LDA #$00
    ; O( {) u/ D  B/ y% t
  1801. STA $2000# s, J. ?6 A& X% ^  s5 s5 X1 w  j8 u: P
  1802. INC $BA
    + F! F) p$ N  i8 ~
  1803. INX
    4 }, _9 E; m+ N& W
  1804. CPX #$037 e9 X; X" B! q0 Y' |2 u
  1805. BCC LF* |- l# s9 n: @% k" e
  1806. RTS
    ; q1 M, }5 r3 d2 ]3 g4 u+ G

  1807. & s/ [4 \1 Z9 e$ x
  1808. RG_WRITE:
    6 R' V/ s( e1 l2 n
  1809. LDX #$003 S' \9 V. u6 Q  }! \" Y# v
  1810. RG:& I6 j; n; f( s& u* }" E) l
  1811. JSR PPUADDR_PROCESS
    4 b: H- l1 O8 H; D9 F
  1812. LDA RG_STRING,X
    6 N, Q$ n2 t7 T* }5 _4 o' w
  1813. STA $2007
    6 @- t/ F2 h% u* S9 [3 ?
  1814. LDA #$00" }6 K: \2 p- n( Q# D
  1815. STA $2000& w# X' m8 O8 P! Z
  1816. INC $BA/ L. Y1 T# ]4 O3 c6 f3 n+ ]
  1817. INX7 E; Z9 L5 F- |) _
  1818. CPX #$03
    + `" ?" L5 W& r/ l& l* h
  1819. BCC RG
    4 S# [, @$ h# c
  1820. RTS
    ' k& Q5 e2 k: n4 [4 s& p

  1821. 9 r, P& w- ?5 j! X! a
  1822. B_WRITE:
    ; E. E: y8 {8 y2 j. X9 ?
  1823. LDX #$00
    - t) T! B5 B$ T6 ]4 B+ m
  1824. B:
    ) }  u5 O+ E' Z. B/ @5 l8 y
  1825. JSR PPUADDR_PROCESS
    $ i' j1 {6 _, b9 Z
  1826. LDA B_STRING,X
    & _% A' I! |4 m8 Z5 e- i2 d9 }
  1827. STA $2007) f* S5 r$ P+ S0 ~- k
  1828. LDA #$00
    ' O- A: K2 X. d; E, Q* [+ k
  1829. STA $2000
    & Z3 F+ r" \0 G# @
  1830. INC $BA0 m" g5 l# ~$ L" a, m
  1831. INX* _+ B: S) s4 H! V- Z
  1832. CPX #$03# q# D% \- p  v& l8 G8 P! p
  1833. BCC B
    : Z; i; W& n: }) R3 c' A/ W
  1834. RTS4 E4 w, g& y$ w6 |; _- |: q
  1835. 0 n( Z6 O' x, p, J; ^5 Q! t, `
  1836. A_WRITE:% _4 t1 [. ~# i" s$ y9 Y9 N7 ?
  1837. LDX #$00
    4 z: W# E7 V+ i2 a2 x2 n
  1838. A:  Q2 {8 |! ~5 Q4 ]  d
  1839. JSR PPUADDR_PROCESS
    8 B& Z. g& L& ]& h
  1840. LDA A_STRING,X
    . d% s0 T& J: |8 T, K9 d
  1841. STA $2007
    : q/ P& ]! N7 c4 G1 d5 N
  1842. LDA #$00- k8 {$ E4 G' o/ }$ j. A
  1843. STA $20009 w; `0 E9 Q3 J) p( d
  1844. INC $BA
    , Y! K4 Z& Q$ H+ s; p* ~! \
  1845. INX
    7 I8 u2 `; f3 e3 {$ {6 d
  1846. CPX #$03
    " }7 q* w/ L0 {# C- _
  1847. BCC A
    ! _( ^& d9 h0 r3 E
  1848. RTS
    + e2 V/ Y$ n& `  G' X# C$ G
  1849. + W, J8 \' P  n8 p

  1850. 5 s% Y1 a6 i3 F
  1851. UP_PPU:
    # j2 J, N4 C" W+ e- i$ W
  1852. JSR UP_WRITE
    4 @" s0 m& X8 i5 ^/ K/ D
  1853. RTS4 J: f  ^5 n- l& X4 c
  1854. & w8 t5 G5 I; v4 f" u
  1855. DN_PPU:) b; n$ X) f* y. q/ N6 d0 _1 P/ ]
  1856. JSR DN_WRITE
    / y) B, O3 ]$ B4 K' L  h3 T" G
  1857. RTS
    7 D9 F8 U0 P) N' h2 z
  1858. 4 q$ B. X& \/ e9 Y5 t$ C
  1859. LF_PPU:
    9 O& k8 q4 q! u6 a1 Q& Z' }8 ]
  1860. JSR LF_WRITE
    & b8 L6 H! Q( W/ p4 b! G
  1861. RTS
    ) H; w5 X/ |* f$ ?

  1862. 2 e+ P, L2 O& a( Y+ i
  1863. RG_PPU:
    0 A0 H" Y; q  v3 C+ N
  1864. JSR RG_WRITE( G$ v) o0 O% J0 S* Z
  1865. RTS
    ) s; P, e) D0 _- |' F: B' O

  1866. " B: |( ^* [9 d: x+ j
  1867. B_PPU:) z2 d3 @, D! |3 W% |" A( ~
  1868. JSR B_WRITE4 ~$ Y( g) {8 }4 J
  1869. RTS( k! J% H/ W$ B( K7 p$ `/ p3 V
  1870. * p0 F$ {* _, _7 I& u+ Y" ^
  1871. A_PPU:
    : G  ]- b, k: L4 @6 D' q
  1872. JSR A_WRITE
    & Q9 R' R0 A! K/ w0 D& I3 o# X9 V" v
  1873. RTS7 m9 H5 y" y( h6 A" z

  1874. . o: J6 s; u6 |$ q9 a! [1 {" M( e

  1875. 9 q3 v4 @" f/ l  R( y" f, j9 B
  1876. PAGESELECT:/ p9 j, w; a" I  V4 }" i
  1877. PAGE0:
    6 J3 \. o  L2 L1 X5 U) w
  1878. LDA $07AA
    2 X9 T# ^- Z. _, _9 L( R% `- R7 [
  1879. CMP #$00
    0 H4 l: V$ {3 M$ k0 X: U# N
  1880. BNE PAGE1
    8 E& ?0 i+ w6 B( g
  1881. $ X! p+ p  f  A/ D  r# c
  1882. PAGE_00:
    7 @: c! ?' p' f* V! L! X6 d
  1883. JSR BULSEL_PPU
    2 Q9 S- T" D. q9 s
  1884. RTS
    : F( m! `. m9 A. C& y9 q: w) G

  1885. 4 F  I/ e7 F) p4 l) e2 m% h: g
  1886. PAGE1:5 D! P4 g. c) Q
  1887. LDA $07AA9 C+ B: L8 Z2 b
  1888. CMP #$01
    ; f& B. g8 U* }: X2 M
  1889. BNE PAGE2
    0 q& a+ o( Y$ }0 i- w, Y& K

  1890. ) E2 t( @* J$ \! K4 i9 k" ~( R; A
  1891. PAGE_01:  u  h! w# M4 r6 m: |
  1892. JSR INVINC_PPU
    6 x( U% t# ~  m+ ]  }' X
  1893. JSR LIFELC15_PPU( L1 C) T  F) @* c0 V" ]9 e, }
  1894. JSR DOUCON_PPU) V, v( z3 f: v" n
  1895. JSR KILLON_PPU
    / B! U* c, [; L* L
  1896. JSR SKYFLY_PPU4 Y4 E: s9 |: Q% i( j$ L
  1897. JSR LIFELOW_PPU
    " j' V  F) ~, k2 u, q" f0 M
  1898. RTS+ u, b( I# ]. L% ?" ?0 Z/ @( r% C
  1899. 2 E! n' B8 w. Q/ o
  1900. PAGE2: 2 _3 i) b9 }( Q! T" q9 @
  1901. LDA $07AA
    + ~  g+ U) X/ a4 W+ u5 T
  1902. CMP #$02
    # k$ [! l8 q9 `2 C3 }2 ]$ w$ x: s
  1903. BNE PAGE3
    # Z" p0 \$ R  v, O$ i1 D4 H
  1904. 5 W/ [9 J1 F8 q- `
  1905. PAGE_02:
    4 I2 t4 c! F4 @7 |
  1906. JSR BULADD_PPU1 @) f5 s  a# u; y
  1907. JSR SKINGE_PPU; e7 a+ m; l; W4 ?
  1908. JSR BULMIX_PPU( x* K/ H$ \, i. z) b. U5 c+ R1 x* F3 b
  1909. JSR ENELOC_PPU* N) o& X6 k3 a% D1 `. N3 ~7 H
  1910. JSR FOCFUL_PPU6 k, [8 r' M2 d) u/ @. |$ X# i
  1911. RTS
    6 O* G) z0 w1 t( N+ L$ a* e

  1912. 4 c0 C5 Z- F% X2 B9 Z
  1913. PAGE3:
    ) j% g' S# y4 M/ c3 }5 L
  1914. LDA $07AA
    5 Q7 Z& G; @" N( O( s7 O
  1915. CMP #$03
    $ l: L- _& g+ E$ n+ M6 p
  1916. BNE PAGE4
    8 Q. Y& h+ f" w0 B' Z+ N, l
  1917. " H9 E6 H8 ^" M! d1 o1 r
  1918. PAGE_03:2 g+ F' w& @, `) D  f
  1919. JSR BULCON_PPU
    " |) P, J' Z9 t. k
  1920. JSR SPEBUL_PPU
    9 }. v  S! @' d7 K( z
  1921. JSR CLEALL_PPU
    & e/ V: ?& c6 W! |+ \4 M
  1922. JSR HARDMODE_PPU3 B) b) o; w  L4 i* h
  1923. JSR B_TO_JMPSTG_PPU! S; |4 V4 P) d7 ~1 d. ]2 F' c
  1924. JSR A_TO_PLAMOD_PPU' I: p4 V; f7 `: \7 R; d" M0 l
  1925. RTS
      Y, k& \9 p# A* W1 e5 k7 s

  1926. 3 }6 S& l9 J! A/ x
  1927. PAGE4:
    . @0 d0 Y7 _+ B( `- M) K$ G+ x
  1928. LDA $07AA
    ! s5 L8 M  E+ p, n
  1929. CMP #$046 i/ w- i3 ?' X
  1930. BNE PAGERTS
    : v. f1 O8 i3 |$ S3 a
  1931. 9 ^' G1 c9 }: j5 m# q8 l- e
  1932. PAGE_04:
    & R& I5 K# N/ j  A2 ?8 h" m8 t: S
  1933. JSR MOVSPE_PPU& N) B* c1 d/ y" c3 U
  1934. JSR UNLJMP_PPU
    : A4 h- Z0 C# P6 A) d! {
  1935. JSR DESTRO_PPU) c4 {* u$ L/ C5 B2 s4 p0 E1 q' [, ]" o
  1936. JSR EQUBUL_PPU
    $ C$ l: r( t& b
  1937. JSR MOVESPEED_PPU
    ) T7 W! V0 Q+ }9 r$ P8 Y- d
  1938. PAGERTS:. M6 g1 C* Z0 h3 @! o
  1939. RTS
    ! w$ @" P1 y& u/ O
  1940. " o2 r8 A( M7 \7 y8 h* c' p# E$ p4 J( }
  1941. 2 Q3 O3 Y, G9 q' N( \
  1942. PLAYER_01_STRING:3 _+ f1 g8 n5 v
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80; j: Z2 {+ E# C$ n1 N2 ^
  1944. 0 I% ?  u: @1 O- g
  1945. 4 V; Q! d( h2 `7 S3 x) a& j8 D% n. B
  1946. PLAYER_01_WRITE:
    6 J0 N. T* y' D( d" U
  1947. LDX #$00
      i& f' C/ e# V# `" d/ ^
  1948. PLAYER_01:. H/ R- i% H; r, J8 B" J- q
  1949. JSR PPUADDR_PROCESS- v/ j2 c. y$ E! y
  1950. LDA PLAYER_01_STRING,X- H; q1 O4 D% K
  1951. STA $2007
    , F: N& a+ F6 S: f& A- u; X/ H
  1952. LDA #$00
    2 X& d; }* J4 ]0 I% |# W8 {
  1953. STA $2000% o7 K: g1 G- a& k8 u* q3 k& h; q
  1954. INC $BA
    $ e8 C5 G1 V) V& w) k
  1955. INX* Y; M4 G/ o  d& e  _0 J
  1956. CPX #$0A
    2 f( }1 d" ^( j: C
  1957. BCC PLAYER_01
    ( `3 c4 @' W2 ?' {6 s1 Z$ Z
  1958. RTS
    # g2 k. G& {4 Z$ c4 }
  1959.   Q0 A: F1 g( _' Y5 [
  1960. PLAYER_01_PPU:
    : I1 E$ ]7 ]# _+ t: g
  1961. LDX #$00
    + U$ ^# L1 J2 y4 }: H5 ~
  1962. LDA #$64
    $ T4 C8 E- n4 [/ A! S% F3 P
  1963. STA $BA; R1 N4 h. y8 x) j' ]
  1964. LDA #$20% V& O3 ?& x: k0 f/ I5 q" I: u
  1965. STA $BB
    # B% }1 W# Q5 Z; ?
  1966. JSR PLAYER_01_WRITE
      a+ c- r; z9 t: h4 E: R
  1967. RTS- ^& N  v" m; F& m0 e: s3 O& Q" S
  1968. & E+ ^: f. s# a* J
  1969. PLAYER_02_STRING:
    0 |# V  I) k( E- z) Q
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    # P+ r3 n% u. e5 U3 r7 ]

  1971. " `9 V2 N( Y2 x6 M% O  h
  1972. " N; [6 w  I4 a% X  ]
  1973. PLAYER_02_WRITE:
    5 u  m- g( H: U5 E% j' F. {
  1974. LDX #$00! g  s1 U5 G5 H
  1975. PLAYER_02:* v& s8 O& _2 i( K+ p- E' P
  1976. JSR PPUADDR_PROCESS+ p8 F/ ~" U9 F0 q: B8 i+ z( q
  1977. LDA PLAYER_02_STRING,X) s  f3 q( q% I
  1978. STA $2007; D2 d  |! ~4 ~; w% R) c
  1979. LDA #$001 R6 l0 ~* s0 j; W
  1980. STA $20009 }3 K' X4 R1 b# @3 N- _
  1981. INC $BA
    # D  Y& D9 b% n: T5 U
  1982. INX
    ; H# L1 |" r6 t3 c1 n  X
  1983. CPX #$0A& p6 i! _' K4 U0 J4 e
  1984. BCC PLAYER_028 c. u( `/ ?5 i- K) [5 G
  1985. RTS
    / J$ p' b8 \9 L# Y

  1986. ' E* ~; _2 J8 P0 t" t2 `+ x
  1987. PLAYER_02_PPU:, I0 w; |9 ^! ?1 e8 X/ T
  1988. LDX #$00. f( a5 X! m1 r" C8 [
  1989. LDA #$73, y) @5 F- g7 A, s: s
  1990. STA $BA  U7 a' v1 f7 `/ C; h, I
  1991. LDA #$20! v/ S4 }8 q/ s5 y
  1992. STA $BB& Q* A0 g6 u4 }  p0 z* o  G: F
  1993. JSR PLAYER_02_WRITE5 i% A- J0 v; U# k
  1994. RTS
    6 q) }( F, J7 B' g: t6 o& Z1 B! j
  1995. " V# W) x% V, Y: S' N4 Q- z* p6 A( ^! I
  1996. PPUADDR_PROCESS:
    * h/ W, {9 w  S# J
  1997. LDA $BB
    , B- j5 ^6 q, n4 C0 H6 ]# `% C$ m; F
  1998. STA $20065 Q# ]! u9 w; i. c. i
  1999. LDA $BA
    ( c5 c# P, i1 `# F4 R$ @
  2000. STA $2006$ A. Z' c8 }" ?6 i" c& M) Y' }. k
  2001. RTS
    % m% N- i/ C0 t
  2002. 0 q7 K8 {) ]2 W$ s

  2003. 3 ]2 y" B, w5 x# e
  2004. 1 `- E. J/ [5 `3 F$ L% c3 }; p, i
  2005. ONE_STRING:
    1 ~+ U: X1 }* G& v# Q; [
  2006. .BYTE $99,$98,$8F7 _( k* v8 u0 `2 ]2 A) T5 \3 W* [

  2007. * V9 l% C! `5 }) G& {
  2008. TWO_STRING:
    5 k2 `" y* p/ U. \9 Q( I4 I( J6 ?
  2009. .BYTE $9E,$A1,$99
    ) J! S( C9 T( e5 }2 ^" @# F) u

  2010. ) r6 N# i% J8 `9 E1 e2 q1 D7 l
  2011. ONE_TWO_PPU:* x( X& ?+ A1 i
  2012. BNE ONEWR
    5 f" W1 V6 L: K  C
  2013. TWOWR:% W' Q) k1 @6 V% w
  2014. JSR PPUADDR_PROCESS
    ) `+ |. P: \! T, A
  2015. LDA TWO_STRING,X
    ! a: v% @4 t7 l8 W$ Y; v
  2016. STA $2007+ U* ]1 y- G/ N/ n. m
  2017. INC $BA& f3 d7 r4 y& a$ h2 i3 E# L
  2018. INX/ F! f5 ?, ^+ c" Y7 t
  2019. CPX #$034 u' I) u% l/ y2 `9 T! {( G& V$ S
  2020. BCC TWOWR
    9 n- x0 V, s9 Q+ W' o5 D$ O
  2021. RTS
    8 R% ~; F8 ^" J# A$ P# @4 S
  2022. ONEWR:/ `3 w3 S) D0 B% A$ c7 Y9 l
  2023. JSR PPUADDR_PROCESS! I- a- @6 b; @6 r9 Q
  2024. LDA ONE_STRING,X0 q' ]# [* z+ y# M
  2025. STA $2007
    9 n- R9 p1 h8 A
  2026. INC $BA  U; G) M' w' w9 r/ ~4 Q9 F& w- F
  2027. INX
    9 h4 h, L" S8 g; M- V0 T
  2028. CPX #$034 `6 u# M; Y& p, F
  2029. BCC ONEWR
    & `! |/ K/ f$ c- O% {
  2030. RTS7 R" w" L! I7 |1 p' g8 X: Z* k
  2031. ) _, A7 m7 Q0 T1 a% _
  2032. MOVESPEED_STRING:
    7 F* V- [$ c. k9 l% k
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    ' c  {1 f" t- Y* q8 m
  2034. 4 F: _$ G# Z# Q/ A4 O
  2035. % u% |( ?2 r1 J) V' D
  2036. MOVESPEED_WRITE:( m: `; M5 C' ^: q! u( G
  2037. LDX #$008 d# ?0 q  b2 c3 q! S
  2038. MOVESPEED:" T) X4 G# r" w7 S4 @, Y: Y/ A
  2039. JSR PPUADDR_PROCESS# |5 _5 b) p8 H  ?
  2040. LDA MOVESPEED_STRING,X) {, T8 E- N6 l' _4 ~7 V2 r
  2041. STA $2007
    2 T+ d/ `$ f) K; r# ~, |2 \6 W2 G
  2042. LDA #$00; W3 y. t' h. L% a2 b2 Q' J
  2043. STA $2000
    / z9 S) W# U2 g( B! \
  2044. INC $BA
    % ]8 ?) i; X" H' B, \* W0 S
  2045. INX
    + [( w4 N* F, u* Y/ V; g) L
  2046. CPX #$0B" K4 A4 \# o2 c$ Z! I& b9 S
  2047. BCC MOVESPEED
    0 S  o: f4 J2 k/ [0 {
  2048. RTS: h9 w! `, l, }( ~8 s# i

  2049. ; v5 B( D2 M: A- j
  2050. MOVESPEED_PPU:
    + x1 }6 L- n5 `0 n: t( f
  2051. LDX #$00
      C4 z# z" ?4 F  j: q" h! S) \; s* F
  2052. LDA #$AA
    % l8 Z$ T$ Z! ^
  2053. STA $BA
    8 X  T& h; p6 B5 O7 r" T
  2054. LDA #$22/ ^4 B/ O; \, q  p4 z3 |) o' b
  2055. STA $BB' z, v% G! J4 ]( Q
  2056. JSR MOVESPEED_WRITE2 W3 [( F. Z/ u; W6 Y
  2057. LDA $70038 x3 k# @( E# `2 P6 b( r" J# A
  2058. CLC
    . S8 D9 G5 q! i8 v; z8 n
  2059. ADC #$82
    + E1 ?+ B* h! t0 e
  2060. STA $2007
    9 o: U* E2 K! `' h: p7 b9 \: z
  2061. RTS8 q, Z( I3 |+ I3 s+ s
复制代码

本帖子中包含更多资源

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

×

评分

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

使用道具 举报

签到天数: 3109 天

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

使用道具 举报

签到天数: 2139 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
$ v7 K6 ^# B1 z, T2 U
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 2366 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 2238 天

[LV.Master]伴坛终老

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

使用道具 举报

头像被屏蔽

该用户从未签到

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

使用道具 举报

签到天数: 347 天

[LV.8]以坛为家I

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

使用道具 举报

该用户从未签到

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-26 03:41

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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