EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑
7 u/ I8 `) h( ?
" k2 b" v: j5 E: m
     [FC][魂斗罗旋风终板END暂停显菜单]

8 ?% t8 g+ o# e8 Z( J作者:FlameCyclone(flamecyclone.ys168.com); a+ d4 w4 I, ]  {# F0 \
时间:2016/11/19 21:46:00
) I. X9 T1 R; e. F" C更新日志:
8 G! U$ V, [& @# E0 A  r
2016.11.19:加入暂停显菜单(共5页).
+ s3 N. Y/ P( I1 ?( p. e5 o2016.11.12:加入无限跳跃.
* L( p5 h2 J/ \1 t2 e* r+ l- `% G2016.11.12:加入速度调节.
6 r7 W' {$ M) z$ W
2016.11.11:加入敌我子弹对消功能.
/ ~6 [8 t  t( l! \1 ]2016.11.11:加入全屏闪灭功能.4 ?% p! o3 X: a
2016.06.08:加入全屏瞄准功能.
0 ^" w- {) H1 O4 U  D* N+ \9 t- {2016.05.31:加入弹速调节功能.. ~  T4 M. v" C6 [" t4 {8 z
2016.01.01:加入高难度模式.2 Z/ x  m8 B0 Z, T; K) Q; \$ l6 ^
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.& Z- `# x$ d0 @, d. x/ O
2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定." S# N$ g" I" d( u8 f7 h# R1 M
2014.07.05:双人切换功能优化.
+ }0 L: a: a) \" k! A3 f2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.3 K0 D  V1 B% c0 c5 t" z
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.4 o( J5 g& z" j
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.
+ q0 \8 z) Z( ?& j/ s$ o2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
* x( ^* K4 K- R8 Y  O2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)- Y; @3 v7 C8 `8 P
2014.02.13:加入自动演示通关.
8 l) [7 N9 U/ {& @内容:
$ @" n8 p" W7 P5 y, P+ o23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.
6 l8 ]* K6 I' M$ Q' c22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.  D0 \" ]! B+ X4 p4 m8 Y8 A
21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).

( a+ j- W. C0 G# B20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.2 W" F, P0 K' v9 V( Y- u
19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.7 }; R3 y# B6 U# X8 u
18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.! Y: E2 Q+ H  T+ a9 u
17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.
+ \2 f5 I2 K, B2 o' {* z16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
: l4 t# d2 F: m+ ]01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.
3 k$ `1 N9 c. M+ l1 l; F+ m( ]02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.0 `' Q  b9 n, A
03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.) k# S) C, z3 n+ @
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.
8 U- F; \3 p5 q8 k/ a# \05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.
3 R( j2 w3 I; z% a; c$ T% P8 h06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命./ O0 v6 [" {. F9 T7 S
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.+ v1 R% p) i. I8 g1 p
08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.! T  H  ]; H, f; }" b' R: p
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.
6 F, y6 y! a/ _  z10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.+ E% j: o* ?- ^4 q; e
11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.2 S  }) b6 Q+ L8 X; O2 \
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
" \8 n4 `( V/ e: l; h$ S8 ]13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
' v: b# H/ a# m$ J, Y: J2 M14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).' _' e7 q: M; D1 N9 U. f
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。' s* ^6 B8 F9 Z9 a# [! J: c+ U
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.
# S& h. T& H# e0 r- YB.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!
) s- Y/ v$ C/ R$ q7 K2 RC.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
0 A3 d; w+ R2 s7 A6 s- B5 B  T
+ @6 O" {. P, g3 D' ~    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
  [. O2 z- T. ?) t( Z2 F欢迎大家转载,转载时必须注明出处.
4 C  J( H6 j6 ?7 T" {7 x+ o1 B  u; j/ Y7 P0 ]( i" q3 i, q
游客,如果您要查看本帖隐藏内容请回复

# Z7 i5 Z; w: h2 t( O! K7 K
8 O- `4 N# U  l- l9 a& Z! J  R# m+ q忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
8 I. [( j( b" O+ [# Y这几天的劳动成果如下:
  1. .ORG $B400
    & z5 o' ^) S$ ?

  2. + ?; T7 g% O! P9 p% ]

  3. & |' C0 o# X2 |$ r
  4. PROREG:/ E1 Z8 A8 t# c/ }5 [  \" C( z" ?
  5. PHA+ f/ ?, Y* ?9 Z$ x
  6. TXA
    8 ^' L6 L# d3 L6 Z: O2 d
  7. PHA  Z) ?9 o1 ~$ i4 N# Z
  8. TYA: Q3 z/ d" \# P$ h
  9. PHA
    ) N* z( b# G1 f7 g, l9 j
  10. LDA $25$ H2 [  a1 d! ?2 s& _
  11. CMP #$01
    ( z/ k9 E* h. R' d' g
  12. BNE RE. \0 r7 f" h$ \2 I
  13. LDA $010A  E) v4 B) V4 d4 X% l/ _
  14. CMP #$00' ?0 c* L; D3 `3 X  U/ |1 `3 Z
  15. BEQ P1
    9 `/ m2 X( I; o; f' I
  16. % i( k$ A( a+ ^' U/ X" p$ K
  17. RE:
    * Q' s" i! U+ b4 a( b5 u* s; U2 k
  18. JMP PPUWRITE
    + F3 ]% M& ]: _
  19. ) l4 w) h/ j5 W& b. ^3 R
  20. P1:                ; 条件判断0 j: _2 }+ m* P- P8 K, R
  21. LDA $7FFF
    % Y* ?) N" h+ @" y* @* i, m2 O( M
  22. CMP #$FF
    9 U+ }$ \, z1 K' U( [5 ~7 P
  23. BNE P1RP
    6 ]" H, j8 R9 v. i& w
  24. LDA $7FA0
    8 p- }- ~0 J: p0 l
  25. CMP #$00
    6 A, t8 r# K4 ?
  26. BNE P1CMP
    ) W+ E+ J: I4 a5 w! f0 F/ V, x0 k* f3 @
  27. LDA $2001
    : N) ~! L5 p1 ?2 \( ]2 b
  28. PHA2 j% d( h# X3 ]+ e+ ]
  29. LDA #$00! w. Q! R0 S! Z* [" W* V
  30. STA $2001
    ! b# I/ H2 H1 {4 E
  31. LDA #$FF
    ; L7 \0 a* x% b4 Z! J, J0 X
  32. STA $7FA0
    / Q$ N$ w0 ]& K9 `* X0 l0 \
  33. JSR CLEANA
    $ d6 }" n2 X. W# y5 B9 s
  34. PLA# y0 W% L- `' A" N
  35. STA $2001
    * m, `0 q" u( `7 |: H$ M! U
  36. JMP PPUWRITE' J' g7 K7 E1 V  u. G
  37. P1CMP:
    1 j; X/ k# c# X0 F2 k
  38. LDA $7FFF1 {/ v. g0 g4 I* P2 |
  39. CMP #$00
    - c; ]" {' T1 H6 r5 i
  40. BNE RE
    3 n  H+ g4 B; G0 c
  41. P1RP:" G8 {7 k8 m- @, d, Q8 K1 ?
  42. LDA $2002
    ! `+ G( B/ c7 X/ N. t2 v
  43. LDA #$00
    1 G' J2 F5 T( O# a* }7 c2 F
  44. STA $2001
    9 L2 m  }5 X& }7 [1 J: Z; O  X
  45. LDA #$FF' u' \2 Q7 J9 H, j) E
  46. STA $7FFF
    9 z) y+ Q5 @& o* e, C4 V
  47. STA $7FA0
    8 |1 C' ^) J0 I) \  l8 D' F
  48. JSR COPYPPU' X' k' s$ {) K4 d" a0 Q9 A
  49. PIRP2:
    4 \5 O2 x5 a$ `2 t) A7 d1 q
  50. JSR CLEANA% ^4 U6 i) y: f
  51. JMP PPUWRITE  u% p; i, @, b5 u/ [# O

  52. * b% _% }% L. Y9 x
  53. COPYPPU:  X5 {1 U; T! G7 x! g
  54. L0:
    0 Y: l0 u$ q$ g0 A9 T8 B
  55. LDA $30
    1 @- ]( X1 N. i; y  j7 w" F
  56. CMP #$02* a) b7 }+ v0 ~
  57. BNE UNPROFC
    ; D# A/ T, t- _6 {  ]6 T
  58. LDA $FC% ]7 D# ^0 o% W9 j5 [/ K9 W4 G
  59. STA $7EFC5 w6 t) e% p- E& f# `; ^
  60. LDA #$00
    9 J9 g1 J6 f2 W# y, h4 x  p9 _, D
  61. STA $FC
    # ]; b9 s. C$ \+ k* N6 ]
  62. UNPROFC:
    1 ~9 x& s: |; a5 Y6 m
  63. LDA $FD
    $ e2 q. @$ Z6 ]9 }/ E; I. W
  64. STA $7EFD
    * Q9 W3 `( m: B/ }0 r9 N
  65. LDA $FF
    6 X2 ^8 b4 u' H) d7 L) h
  66. STA $7EFF
    $ Z- c* U) F" o
  67. LDA #$00. T& ~- O3 g! l+ b  N9 H4 @
  68. STA $FD
      S4 B6 j9 |, @
  69. LDA #$B0! n) y3 B4 C. F- Y& c% j) @7 G  ]
  70. STA $FF
    9 Q; |9 C' a, h1 H6 ~# ], @" {
  71. LDA $07C1
    3 e) Q3 x: m/ A! W6 Q" d# R$ p& B6 Q
  72. STA $7FC1$ x2 D+ Y4 B+ V4 k+ B; J+ i; q) d
  73. LDA #$3F7 `: j* }) V' ?8 ]
  74. STA $2006
    5 e4 G/ }5 p6 r- y
  75. LDA #$01" z5 `1 y+ `1 F* m' L3 z, k
  76. STA $2006
    1 t4 e' ]4 a5 p  }5 [4 ]! Q
  77. LDA #$247 ~. z" |& ~0 {6 q% O
  78. STA $2007& m1 ~! h) V- e( h8 }
  79. LDA $07F63 O* o) s2 u; b* }
  80. STA $7FFE" Z) t& k0 M9 M# n/ N
  81. LDA $00FE7 Y4 I8 h1 l' F0 i; @% r
  82. STA $7FFD7 s6 c- E. }  X  S/ U5 J
  83. LDX #$00# [7 M7 Q8 W- v& b
  84. LDY #$006 S) T9 _6 {5 o. i! o' h$ @, ?
  85. LDA $BD
    # j  q3 x# Y" z2 l$ }; Z% s
  86. PHA0 |  m" j" K  {, S: }
  87. LDA $BC
    . A* y. Y0 e# M( Z) z6 A1 K
  88. PHA
    ) m0 u4 T. `: Y
  89. LDA $BB
    : r7 X( q) t6 k% F4 x9 Q- s8 |
  90. PHA+ R! F) y9 e& C4 j2 s  `( H
  91. LDA $BA
    0 T9 r7 j- b6 W4 Q( V" Z
  92. PHA
    ( g6 o/ m' n6 a' @2 h. Y" s
  93. LDA $B90 O" s3 a; d" @4 L' E0 x
  94. PHA, c- S# N* L. K5 e  A" O4 l
  95. LDA $B8
    1 Z& H+ x- M* t- G8 {1 T( X& t
  96. PHA6 w  }- e4 F# ]! t/ T8 `1 o
  97. LDA #$00
    9 @/ i" D( [5 H( C9 A3 Q
  98. STA $B8
    ( c; Q- r; z* E3 i6 I7 b! E2 c
  99. STA $B9
    ! J& y# \! _! ?# W1 O
  100. STA $BA
    ; i. {$ W: F8 I% a3 V" \5 S0 S% J
  101. STA $BB( F6 b5 y1 d, r4 d2 |& L
  102. STA $BC$ `7 b; p) n, P; X5 a$ c, I
  103. STA $BD- I+ m2 h7 _2 }1 J9 k
  104. LDA #$00
    2 n9 M9 m" q5 S6 ?
  105. STA $BA
    $ _; w4 y$ E3 L0 a5 ^4 f6 S
  106. LDA #$20
    $ F. a  P0 f+ x6 t6 Y* q1 _
  107. STA $BB
    $ p' t0 S% W$ `1 t
  108. LDA #$00+ `  G1 ]) d; i" o$ \. I( F
  109. STA $BC
    1 J: f: Y$ h# N" M; i, V$ c9 ^# T0 g
  110. LDA #$60
    6 @  ]1 J  J! [
  111. STA $BD  d; G- s( _5 C" \, o- h/ ^
  112. + m6 F' H5 h' b1 c. z9 B
  113. L1:                ; PPU复制
    ( @$ u) u% \- O: o
  114. LDA $BB
    4 _, [; h+ H$ y9 h, e" t. \
  115. CMP #$30
      I, e, R! }7 \" A
  116. BNE L26 P8 L. @- ]5 M& ]
  117. LDA $BA* W! r8 C- Q; U+ m3 N
  118. CMP #$00/ U3 G7 k0 d& i! R9 Y0 z
  119. BEQ PROADPLA
    4 q. U+ o+ J* ~
  120. " E& i; S8 T. H( W
  121. L2:$ E, ~4 m: |: }' P2 G! l
  122. LDA $BB
    0 J# y0 {/ T, Y8 s5 R. g7 C
  123. STA $20069 y* n( }+ r" f+ ~, h
  124. LDA $BA
    3 b7 ]! |( R# l5 n
  125. STA $2006
    ) q: i/ w; U& e
  126. 6 \" H. G5 C) i' O* m& g
  127. L3:6 I" S9 F0 ~1 i0 B6 p1 q0 s
  128. LDA $20076 P1 o: s, K6 X/ ^/ j" B0 P
  129. LDA $2007
    . w$ ?0 ?( m% v  O4 K2 n) }
  130. STA ($BC),Y
    ( |, z! D& F9 Z9 C5 q$ \/ T
  131. $ R  W* |8 w4 R' r5 o
  132. L4:7 c7 {; c* l0 H3 L& }5 J
  133. LDA #$00
    ' V! t2 C7 A+ K; w1 V/ q' L2 ~
  134. STA $20004 Z$ J9 \- Q, n- c4 B  B
  135. INX' H1 q  g# p+ t# T8 j
  136. INC $BA) r' {2 V0 c6 r) z8 M# Q+ T/ e6 X
  137. INC $BC
    % V4 z- J" _- X- Q" E- `0 t
  138. CPX #$00
    6 Z) f8 m+ D0 X; m& N: G
  139. BNE L17 ~3 k' S0 F1 G4 \
  140. INC $BB4 E/ z/ A8 @; F1 M7 d  e2 m" T
  141. INC $BD
    3 ~# y% y7 f4 {1 y! a
  142. JMP L1% Y7 y3 `' r7 c, Y5 _+ f3 u9 O# ^+ U

  143. + l% E# j/ z" m! d
  144. PROADPLA:                ;出栈
    6 f% W$ {9 ?5 }! `5 \# S
  145. PLA
    " U* w1 @& @) @% t, H9 d8 |, a
  146. STA $B8* N3 ~, O& T7 c8 U( A6 {
  147. PLA4 ?* ^+ I( x5 ^& [7 j3 }
  148. STA $B9
    2 T- P" o* x) E& `! u
  149. PLA. `/ V! t. M! e" G) d5 c
  150. STA $BA
    $ G6 {& {6 j: m, _4 q. L3 ]
  151. PLA0 {, l* U6 }! D  q- e1 T
  152. STA $BB1 h7 d' t4 ]0 t6 e8 x( o
  153. PLA5 f9 N+ A- `2 S) I7 P3 F* Y# n8 c! [
  154. STA $BC! ?, m: R% u+ Q& E* y' B4 M2 [/ T- J+ C' j" z
  155. PLA
    ; Y$ F& @) l) [0 X4 n/ l
  156. STA $BD
    & z: l5 u- e( L; W- r% @$ Q$ ~! q- Y
  157. CPRE:1 E- W7 I* d6 M# D" i8 _* B
  158. RTS6 g; k0 Y9 v- j* \% `

  159. 0 `! x$ d6 y" A6 E* {. U. s' m
  160. CLEANA:                ; PPU清空
    % ~# A# F, k5 P
  161. LDA $BD
    ' h/ @  h/ o- R# u) k$ l  e
  162. PHA% I$ @1 p# {6 y& H1 h- W8 b
  163. LDA $BC
    $ F3 X: Q& ]$ C/ V5 [! K7 j
  164. PHA
    + O8 C$ _, @) q5 F
  165. LDA $BB, M& u, B) D8 i6 m; S9 E) J7 O
  166. PHA) ?3 s  y" g" g: b
  167. LDA $BA
    * r- d9 w8 R6 K* ^. V. q6 t/ z
  168. PHA- D* p5 h9 H. @0 X8 ^" n
  169. LDA $B9  D: `7 J/ I) q+ i' \6 @; i/ [* n
  170. PHA/ i" E! `' k4 v1 @5 }6 e
  171. LDA $B8. s% G4 M7 k. U) a) R  D( k4 e; C  n1 h
  172. PHA
    ) p, F" Q9 x" ^
  173. LDA #$00. Y' m: |! U7 y# _/ c
  174. STA $B8
    $ \) ]) Y# a: g4 S& D2 f( E7 U; C' ?
  175. STA $B9
    2 R% \1 r  g. }3 J7 V
  176. STA $BA9 F: V$ f9 Z5 e/ ~
  177. STA $BB
    ' D0 ~+ v4 }3 O+ P5 V
  178. STA $BC+ u* a/ ]7 c6 |/ R& v
  179. STA $BD
    " y' q# W* _* B) o
  180. LDX #$00' G* l( `8 i1 Z; n# K- G2 M  X
  181. LDY #$00
    - U6 L" ?2 i% g' `9 B# C
  182. LDA #$004 A7 d1 `& a9 M8 O+ ?
  183. STA $BA; ?2 |1 G& f4 `# h$ `
  184. LDA #$20* j9 l& L6 }( e$ J* p9 R8 ~
  185. STA $BB
    7 i% m" E0 e1 a/ ~- c$ J: M6 _

  186. # }9 i! s, O0 X& [0 p1 u
  187. CL1:3 T& e" J% u- f9 ]! x. f2 O
  188. LDA $BB9 r  F" E8 N* C
  189. CMP #$30
    8 h6 A: Z$ M% x* ?
  190. BNE CL2. m! d& v8 W  `) V
  191. LDA $BA
    1 U1 d7 U& h& Y$ @& v1 I; M- n5 e
  192. CMP #$00
    9 u1 |2 @. i1 a4 J/ w
  193. BEQ FREEWRIYE; X$ x( _& Z) i8 L2 m$ h5 J
  194. 4 Z' [  @: q& B# m* h
  195. CL2:
    4 ]5 O; }( n+ L: C6 \
  196. LDA $BB9 f2 w" y8 P0 @6 P7 t3 E/ B  [
  197. STA $2006% j+ W. S! J3 k5 U. _, L
  198. LDA $BA
    # H0 L; y7 E* u4 c
  199. STA $2006
    ' S/ H2 k) Y* f% \2 p8 W+ A

  200. % L# Q2 ]/ k5 ]6 F: Z+ R) W) U+ l
  201. CL3:
    % k" k( u4 x4 M$ G. d& U
  202. LDA #$005 F/ r0 [- o/ [, Q4 O
  203. STA $20076 C( R. V0 o0 p6 `( d% j9 V
  204. + b8 _! _, ^9 O, \. G# ]
  205. CL4:
    9 C8 N: I: x- b9 K
  206. LDA #$00% p4 ?" j( `* m# d& ?9 k6 Q5 |" K
  207. STA $2000
    & M1 w6 n$ m. y* n# k9 @6 {
  208. INX
      S& t  h# m1 S( G+ t+ a
  209. INC $BA
    - q- h7 @2 J' l3 N8 e
  210. CPX #$00+ j3 v+ n. s, z9 J  c, o0 m
  211. BNE CL1
    6 k& [$ p- |# S3 t
  212. INC $BB
    2 p! q0 F; l5 b
  213. JMP CL1   R& W2 ]! `, ?( V( c
  214. . E4 A7 t0 d6 U' v; u( Y

  215. 2 d# q' S7 c( K1 L5 Y$ F) M5 n2 D/ L
  216. FREEWRIYE:) x1 {# }8 a8 z" C  U& f% Y- e) d  w
  217. JSR FREE
    ' h# X. w9 K. R0 z: @
  218. 2 ^$ p( c) q! @: v, v& R) l) D; a

  219. ' j8 d7 X9 d" n% {: n
  220. ) M4 I& q8 ^1 |- {6 D/ H
  221. ( R" j% p$ _! V- P: a

  222. ' Q& }! C9 s/ t  M; u
  223. CLEANF:                ; 恢复现场7 j' y6 T& j. m/ E5 m- U
  224. LDA #$088 j- ^' m- z" Z7 e8 u+ M& o
  225. STA $FE
    $ `. X) w' |, a
  226. LDA #$00
    6 T7 |  b0 c, u- H  }
  227. STA $07F6! _1 ?* W6 ~5 U$ ?2 X/ l3 ^
  228. LDA #$24
    # z" _) S: V+ Z/ y7 a
  229. STA $7FC08 ?4 h# F. Z+ ?. U
  230. PLA
    8 `) [6 }) T+ X8 x. E! E8 M" O
  231. STA $B8, @) M/ J, I5 q% z* i
  232. PLA$ P! @/ U  U) X" j
  233. STA $B9
    $ [2 c1 x6 _7 Z4 M
  234. PLA( j5 ^* s# Z; b1 M0 f! g* d
  235. STA $BA0 p& b# y2 i# Y8 Y
  236. PLA# E3 P( }: F1 g5 z
  237. STA $BB
    5 |9 c  A# q- v( ]8 D
  238. PLA2 d' b# m+ f5 E* Q  u7 |- T: q( ~7 s; S
  239. STA $BC
    $ l3 h' ]* u/ D& R' f, L, i
  240. PLA9 a: o2 Z- @& E. m  J! u
  241. STA $BD) q: Q  I0 A* s8 g$ E
  242. CLRF:
    ( |! D8 d1 k& Z2 ]9 z  ~
  243. RTS
    ! ~6 H/ g# K% A! J% u

  244. 0 Z, m, b& }/ v, l) [
  245. W_DATA:5 A! S0 `& Q. g' P# Q
  246. .BYTE $00,$01,$02,$03,$04" y8 p! N' m5 ^: o" E& h3 b$ ?- @
  247.   
    6 L' r! X. {1 r  j
  248. W_PPU:
    9 U8 V7 y0 w& G- e6 \0 c! I8 z- o
  249. .BYTE $98,$97,$90,$9D,$96
    0 @& R; ?' ~5 T/ t
  250. % K7 M5 ]& u' \2 c
  251. P1_STRING:' u: j+ S3 V% E' y% C% l
  252. .BYTE $9A,$82,$00                ;"P1"
    5 ?: m1 {5 b; S

  253. 1 N* q+ T# X/ H" c4 `
  254. P2_STRING:: d6 ?2 g! J6 Q) i* W) K
  255. .BYTE $9A,$83,$00                ;"P2"
    ! z0 x4 t* O" X! Q4 E5 C
  256. , |  B7 A' E. G% J+ U7 z/ v9 R
  257. WEAPON_STRING:
    5 ^; Y- }. d3 P- x
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    ' V  j- H0 T7 P' f
  259. 9 U7 j7 d2 B  C2 M1 |3 O6 ^
  260. RELIFE_STRING:& y( u6 R  H  t/ f0 U
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"
    3 K) W8 m7 b2 S6 ^! j- O' [! o4 h
  262. ) M- q# Y  W4 F: H4 X; S4 W' N6 A
  263. P1_PPU:4 s% X' e7 a1 G/ m0 b8 A
  264. LDX #$00) t1 ]. W. l& R4 t; r: l
  265. 5 L5 j7 |  [. G
  266. P1_PPUW:9 v- e. y  W$ y( C3 w( \! T: J
  267. JSR PPUADDR_PROCESS3 R+ u% j- n/ h( j- I( ?- r& \: O
  268. LDA P1_STRING,X
    ) N0 F! S5 K) p8 b5 Z) Z
  269. STA $2007  ~1 s+ A3 j( F8 ~2 x: }# B, j
  270. INX
    , j& X6 }" T; z  {
  271. INC $BA
    ( t9 B5 Y4 t% ]* n$ G
  272. CPX #$03
    . x4 E, G) O6 }0 n" F5 I
  273. BCC P1_PPUW
    $ Y) d3 ~: t) V
  274. LDX #$00- N# Y. ]% f+ a& o1 b. L0 X: k
  275. RTS- a% U5 I8 R7 F+ e" D5 E2 J- V! P. r

  276. " H. e' @5 f% M' T7 }3 C# n
  277. P2_PPU:
    ( ^. i& g) d4 h/ G) @' y
  278. LDX #$00
    2 Z8 x# d7 s% S7 C6 d' a

  279. % j* \) |  r& X  E5 J3 F
  280. P2_PPUW:
    0 y# [/ g7 h( t+ y( e' R
  281. JSR PPUADDR_PROCESS
    ; ?, d; [) t* x
  282. LDA P2_STRING,X$ H* h( N6 A- G' g+ n; c
  283. STA $2007
    4 [8 x7 G8 O* ?# a
  284. INX8 M6 f+ w, O7 T  U, J! U
  285. INC $BA
    " r: Q  B- ?. i( G3 w# i
  286. CPX #$03
    # s! D" f' i( Z% L# X- w7 {8 O  U
  287. BCC P2_PPUW9 P% A& a0 L: B3 j- X1 }6 S  S
  288. LDX #$00
    . ?% k! m% W. A/ X8 a& K" }
  289. RTS
    % d! Q. }2 a' B3 D7 c

  290. 0 D; q2 \3 X/ ]0 h+ g; Z6 D

  291. 6 o9 e1 {; O) G3 S
  292. LDA $BB0 {; U5 f8 P& k4 A
  293. STA $2006: O- P$ j4 [* ?7 L
  294. LDA $BA2 z, b6 L" E) _; e# E5 S! k4 X$ K
  295. STA $2006
    ) F6 `! p8 c6 ]( M5 G! M
  296. RTS
    8 J! o1 |7 V/ q! ]- l% `
  297. ) |/ v9 F9 T+ N( ?
  298. ' @0 e) S( O; ^# _, K2 ^0 y
  299. + |; m6 }. ^1 }2 G4 P$ t
  300. PLAYERLIFE:0 T' G9 [' r5 Q4 x3 x
  301. JSR LIFETODEC, V/ h- f& h. U% E
  302. LIFEPPU1:  K- F0 X+ J+ w" h  H. E9 L+ l  N
  303. LDX #$00/ Z" s% }& [3 w1 r$ d! v. i1 {6 Y
  304. LIFEPPU1RE:
    . S4 `- U- S( L9 V5 W" ]
  305. JSR PPUADDR_PROCESS
    # N& N8 X( @6 z; F; B
  306. LDA RELIFE_STRING,X
    ' p' G% w2 `/ C6 r) I
  307. STA $20071 {# D* T3 J  b9 F9 w! z
  308. INX5 t1 z# E6 E' S! M+ K
  309. INC $BA! ]" E, J1 n9 |5 y( w
  310. CPX #$07
    7 H2 E- H  E1 V& j* {3 w
  311. BCC LIFEPPU1RE+ `2 t# P  k$ v. _# s) h

  312. 2 r7 R" ~! D  B3 o; S
  313. LIFEDEC:                ;生命显示写入  Y4 Q3 E. o9 b5 }8 l6 O& ~
  314. LDX #$00+ z8 V2 j, m1 j) ~! N
  315. LIFEDECRE:# r1 `3 X0 h  V" x6 z+ E& C" c
  316. LDA $7A03,X
    5 m9 }4 o9 _# @' B
  317. CLC$ J& M; @6 f8 k; h
  318. ADC #$81
    / S; n1 p: J; d7 x
  319. STA $20079 v' ~7 u( f2 S3 E9 x" J/ p$ r+ w
  320. INX
    0 u6 x/ H, o4 B4 y+ u! V
  321. INC $BA- w- ~0 o! a* w" d+ p5 v
  322. CPX #$03, h+ w) Y: f7 M# B8 f' K
  323. BCC LIFEDECRE6 }6 V4 `6 }5 E7 H/ }! y9 M; {
  324. LDX #$00
      I4 H; J. Z3 \5 d  j
  325. RTS
    0 p& ?/ _) I& ^$ [4 u( U: K
  326. 6 d* f. b) [) i
  327. LIFETODEC:                ;十进制转换. u, z" ], s7 t
  328. LIFEL1:        ;initialise& C9 J, p+ D8 C9 J
  329. STA $7A00        ;$7A00=F32 |7 i4 z: U1 }8 Z5 C
  330. LDA #$00
    + Z& a/ S4 U" M; V& s) E# l1 T) y) L
  331. STA $7A03        ;$7A03=000 \; N& ~" Z! E0 V& w
  332. STA $7A04        ;$7A04=00
    & X0 I& r/ t% s4 ?' V6 |9 ~! ^" |
  333. STA $7A05        ;$7A05=00( x$ ^; c- A( K* ^
  334. LIFEL2:        ;copy data $7A00 to 6001  p4 {2 e/ y. x/ g
  335. LDA $7A00
    ; X: p* v2 E2 G( @* A( w3 D7 R
  336. STA $7A01
    8 B+ i% o9 e/ Q
  337. ( x! l/ v/ m8 G1 ]/ o& _3 J" I0 z7 ?
  338. LIFEL3:         ;hundred
    7 d2 D5 j4 I1 K
  339. LDA $7A01
    5 M2 |. {7 H& o, r+ w+ q+ @2 ~  u
  340. CMP #$641 g. j) x9 _+ f7 H: P
  341. BCC LIFEL6                ;$7A01<100 goto L60 r1 e; a3 h5 d; e: F9 ^2 [
  342. LIFEL4:8 y1 k% T; h1 S
  343. LDA $7A01
    $ ~% V) A. [  x0 y) ^. @0 |
  344. SEC  g; c0 L  f5 X  W
  345. SBC #$64        ;$7A01=$7A01-1009 ]" W- e4 u$ ]- a7 w
  346. STA $7A01
    $ ^8 A% t8 ~  V- o% C
  347. INC $7A03        ;hundred++
    0 K- M/ l( f$ P0 X
  348. LIFEL5:$ C; Z2 G- E! B) z2 n
  349. LDA $7A010 T# V: {' O1 A
  350. CMP #$64
    9 a* u' P$ e6 n$ k$ D; w, @2 E7 @
  351. BCS LIFEL4                ;$7A01>100 goto L4
    7 m& Z) r* U" N6 F0 I/ A# y) ?) ]# G
  352. 3 C1 |1 h. l; b5 d! X7 |
  353. LIFEL6:        ;decade
    7 [7 v, Q6 f% h" T
  354. LDA $7A01
    2 v8 N: W4 U- w) O. E7 E
  355. CMP #$0A6 U0 y" T+ j) ^
  356. BCC LIFEL9                ;$7A01<10 goto L9
    / Y! {5 j1 N% ^
  357. LIFEL7:        " _; [4 W1 W# s# w& d6 s
  358. LDA $7A01
    % `3 r9 k9 d) Y/ f: r; s
  359. SEC
    : M5 I7 `, Z+ P9 L3 l% [6 c
  360. SBC #$0A) ^& ~, t4 k7 B) P, o5 S
  361. STA $7A01        ;$7A01=$7A01-10
      k! u. K1 L9 Y6 A' `
  362. INC $7A04        ;decade++/ e5 U9 }3 P2 U9 I/ Q. v( J& U
  363. LIFEL8:
    : ~) v2 H; O6 }1 E* Q8 R, P
  364. LDA $7A01
    ! ^2 e( @9 p3 n; e1 d
  365. CMP #$0A! z% M$ G0 ^! L1 M3 X# Y6 j
  366. BCS LIFEL7                ;$7A01>10 goto L7" f  O( b) Z$ N+ f2 n' x
  367. ;unit5 q6 [' s8 m+ }% g! `
  368. LIFEL9:
    6 q% d% D" l# V8 x
  369. LDA $7A01        ;$7A05=$7A01- _5 m2 S' P$ c4 R' j
  370. STA $7A05        ;unit. R% P& a3 X2 [9 a2 R. `
  371. RTS        ;return
    2 ]' P7 I! f( t" \. ^/ ^+ M3 ?! x+ @

  372. 6 u. e) \! Z/ r0 h' o: `* k( o

  373. 0 A$ T9 e9 a. x9 h
  374. + L& g/ U& @. s" @/ R0 @* n0 u
  375. WEA:                ;武器ppu写入. p2 {( T* F6 U: x0 O) k- |) J
  376. LDX #$00  N- m6 s+ B: \, K( }6 l/ s0 N
  377. WEARE:5 g  D0 U6 A, S* M3 i  I
  378. JSR PPUADDR_PROCESS
    9 u. i5 n) Q8 _5 P
  379. LDA WEAPON_STRING,X
    # p8 N/ T5 |9 N
  380. STA $20073 E/ E5 m" T* i/ f5 y, ~
  381. LDA #$006 s. J& r$ p4 E
  382. STA $2000
    * n7 Z( r: o% X
  383. INX
    9 R4 V8 @$ u7 m% q
  384. INC $BA
    0 q, e: I8 g2 p/ |# d) y
  385. CPX #$07
    8 G$ ^" ~7 ?8 L0 f4 C
  386. BCC WEARE+ d! A1 U1 p: C, W& Y$ V, G
  387. 7 G* D2 ]# E8 U  d8 o  A
  388. READ_WEA:
    , N. A& ]! k! E+ r3 `2 [, k' b( h. S
  389. LDA $B9
    2 n4 n" c. @5 l/ R
  390. AND #$10
    ) s1 D6 V5 n% Q8 @
  391. BEQ NWEA
    : _: u5 Q/ d) [+ t: W  j4 W
  392. SWEA:
    / ?' C4 y* [) P2 O6 S  v

  393. 5 H8 V/ t2 y9 P: d3 ~
  394. LDA #$9D
    . q* I- k- Z2 C' c
  395. STA $20071 ?5 ?6 F/ B) B/ u) X$ \5 k6 t( F
  396. LDA #$001 F8 M: r# H# d1 R
  397. STA $2000$ Q0 i0 [; Q$ x9 C( V$ Y4 Q8 T
  398. INC $BA
      g2 X( v: o+ k
  399. LDX #$00
    ( H; n' N$ O+ p9 i) u
  400. JMP WEAREAD  F6 E7 A7 Y# Q- @
  401. NWEA:! ]: `& i/ h: j0 C" C5 \+ X# ~6 l; {
  402. - Z" z0 s7 [, \4 \( U
  403. LDA #$8D
    / b3 B& t+ A& _8 o
  404. STA $2007
    / [% B* _3 F" ]3 e: k
  405. LDA #$00: y% f2 S4 @2 i$ J" T# X/ o
  406. STA $20005 y# `$ w! v: T, S4 c, w9 p/ Y
  407. INC $BA
    ; i6 k9 `3 @7 C3 C
  408. LDX #$00
    $ k( o7 d" F7 x6 {# k
  409. WEAREAD:4 C& o* C3 g  F) H/ ?: h
  410. LDA $B9
    . F7 ?2 z3 ?, ]3 Y
  411. AND #$EF4 R5 `" D  {+ E% g
  412. CMP W_DATA,X' m  p( r2 |- j8 V( n* N' I! n
  413. BNE WEACMP
    2 V/ F( Y) {5 t7 g9 i3 g3 ~

  414. % V* ?3 ?7 b" }& |2 C; w% F
  415. LDA W_PPU,X/ K3 h) N& t3 I9 ]
  416. STA $2007
    ! t7 J$ m& Q( Q& ~
  417. LDA #$00
    0 x1 r- ~4 n7 f( S) v
  418. STA $2000
    ( J% w& y5 L4 Q9 w2 p% G' x
  419. / M- W6 s" D: P) D) _8 G
  420. WEACMP:- K: F7 W& z" z! W! K
  421. INX+ q  j" m  z3 A2 v+ G6 r& D
  422. CPX #$05* Y2 t, _9 }+ E! P+ j* Q
  423. BCC WEAREAD
    * R' G( l( I  O. u0 V
  424. RTS' y7 r  f) M) \% d/ y. ?: \

  425. ( `: h  v4 f. p

  426. 1 [3 o2 h& W% e; P/ X" K1 b
  427. PPUWRITE:
    * c& x9 L" L; J& t1 p4 F/ O2 |" P9 I
  428. PLA% r- P$ e3 O' \0 e: c3 ~1 a8 k2 y
  429. TAY
    ' U$ |5 B- e' L& i5 _7 I. R
  430. PLA! n: l3 _* J( Y, j
  431. TAX9 D, A  Y; q, j
  432. PLA
    ! S0 T9 D0 W' ?
  433. LDA $25& C! t# M* M6 j  c$ g7 p4 ~
  434. CMP #$00
    9 Y, s6 H" W0 y5 |: M8 S8 r
  435. BEQ WP16 C, l! L6 N! J) r
  436. LDA $25( d* C  h4 x1 ?; p, [8 y* M5 B/ @& x
  437. CMP #$018 T# h& k" S/ O2 C0 \1 I4 F
  438. BNE WRE
    ) E9 J* ~' I8 |3 }6 S& c
  439. LDA $F5,X( h; i4 j4 u% T' h% G2 ?: _
  440. AND #$EF
    4 w) ]2 }5 x7 M7 L5 q9 A- k! v5 |+ a
  441. BEQ WRE
    7 W& u' N  x4 Q# ~- c( @0 P
  442. LDA #$00
    6 v; s- ^) t% q7 _) O; o
  443. STA $7FA0
    1 a( C1 u) n0 Y% i8 V
  444. ' L" K1 K0 {- K3 s3 f
  445. WRE:
    ( |" m/ M3 Q9 _( \4 i8 I
  446. JMP $A0004 y6 ~: S/ U) L+ R% p" V. |

  447. & B* r. F! e$ i
  448. WP1:
      K$ {" U3 D* U* B! p1 ^
  449. LDA $7FFF' a: w! o9 {/ q4 E% F
  450. CMP #$FF
    & M. p2 G+ z$ r8 C# R  P
  451. BNE WRE
    / w( }7 h* e" F+ Y
  452. LDA #$00
    $ H" `+ Q6 {0 z6 d+ ?7 K$ B5 r
  453. STA $2001" W& D8 P: x1 z/ j0 f0 u, ?
  454. LDA $BD
    # n1 K8 a) S" d- L- H  X( `- E" ^
  455. PHA
    & c7 H  e6 _* c7 E5 m) [9 h
  456. LDA $BC
    2 h8 V4 m8 N; I" \
  457. PHA
    ( \! [8 l8 W, c0 o4 Q) |; {& e
  458. LDA $BB8 G0 Q! H$ }6 T
  459. PHA( o% j7 e; A! ^$ v
  460. LDA $BA5 x7 t% l) a' A
  461. PHA
    9 @/ h. r6 `& x6 l/ v
  462. LDA $B9
    7 d+ r+ a5 I% J" Z' t+ ^
  463. PHA
    + c- Q! s( Y. K9 s, n
  464. LDA $B89 T1 R: i! i: m/ N/ b
  465. PHA
    9 H( ^, U. z2 D: Q: @: b
  466. LDA #$00# _1 ]2 i% \  t+ e
  467. STA $B8
    9 Z$ ?) L) ~; k: C+ B! D( ^! {/ H
  468. STA $B9: ]# ?) d0 r* |) c
  469. STA $BA  }/ w9 m4 u" e1 Q( I* f6 v
  470. STA $BB
    $ u6 j4 s0 }, ~" z% i/ ]
  471. STA $BC
    & z8 Q4 l! M! @! g1 @
  472. STA $BD
    . f( F$ C6 Y* u& o5 R
  473. LDA #$00
    3 ^5 K' ]3 V6 P! N6 t8 Z' @
  474. STA $7FFF* T! l+ i, [% \9 `3 A7 x
  475. LDA $30
    / Q4 {3 x- V3 |
  476. CMP #$027 D; l% x. [- A! B/ I; c
  477. BNE UNPROCPL
    % G: |& Y1 }  n) ]  l% {, X
  478. LDA $7EFC
    7 A0 V- s" J- N% W, K" k7 F
  479. STA $FC
    ' ?. A2 D, d7 X, u1 b9 _( S4 F# U- h' z
  480. LDA #$00) t6 B2 H# k6 {3 f( b5 |
  481. STA $A4
    ! o7 N+ J% L2 u" t8 Q
  482. STA $A5* J3 O0 B. X" Q" g- O
  483. UNPROCPL:' g9 O/ m& |: b8 G- a8 ^
  484. LDA $7EFD3 x7 m: u7 p0 Z  X) H8 J$ L
  485. STA $FD6 B, p% y2 H" O4 v, }  ~
  486. LDA $7EFF
    6 ]) b" C( i6 A8 d* G/ ^
  487. STA $FF8 Z5 M% T8 P1 c+ s' I1 K

  488. 0 z( w* D( P0 L
  489. WL0:  t, R8 {) H* x' L# Y
  490. LDX #$00
    8 `$ J% g5 Q8 |0 ~) E0 j
  491. LDY #$00
    1 H0 [* J1 C+ |
  492. LDA #$00' L5 z6 {: y# [3 ?; R' o
  493. STA $BA
    8 ?7 F# ~6 Q, l0 c2 ]6 `
  494. LDA #$20
    : g+ W$ R" D% n( W+ F3 X
  495. STA $BB4 T8 q1 [4 r. R3 \2 H* s# G$ X; ?
  496. LDA #$009 V6 \5 c$ R8 Z3 M0 Z
  497. STA $BC! N/ K0 `/ ^+ ^, g; \, I; Z
  498. LDA #$60
    ; F7 s8 V( j) X% l* Y$ i  f% n
  499. STA $BD
    ; T$ i3 k2 H: W: u. I$ J1 {
  500. ) w- p4 `) g/ s! I% X( Q- b
  501. WL1:; H- y: W( [8 |4 e
  502. LDA $BD
    + e7 L. o6 j8 q3 t7 Z
  503. CMP #$70
    , c/ `: M* \  K* r5 U% K5 \) s/ D
  504. BNE WL2
    ( K) w- ^* E4 h/ \$ D9 b$ ^' c
  505. LDA $BC
    , p# M' S1 p! V& `0 q  C/ ]
  506. CMP #$00: C* y7 v8 b1 I8 u7 W( u
  507. BEQ WLR
    & @. S5 J- X5 ?) B  e
  508. $ r" Y( N! ^8 K! `3 w) S2 s
  509. WL2:
    " u1 Q- o: w* f1 B
  510. LDA $BD: h- u! z0 Q- O% e
  511. STA $2006
      N- {9 R2 h3 B$ J! E- b$ r# Z
  512. LDA $BC3 K/ _7 ~( I) [% p" l
  513. STA $2006
    3 z2 D) f6 X, n

  514. . C  ~" s/ ?: ]$ Q5 h
  515. WL3:
    ! `, A7 |+ P) g
  516. LDA ($BC),Y3 s$ w( z3 [5 n/ q1 W/ h0 m, u- s
  517. STA $2007% ?$ h; z( c4 D7 y. L/ j5 t( P8 \

  518. & ^$ }! z/ ^: a$ E" X' R
  519. WL4:- J; V: h1 g' R3 P' g2 e9 w
  520. LDA #$00
    4 o  ?9 l" Y6 ~5 K4 @% z
  521. STA $2000, |. R6 E& o0 Q2 A9 H( X1 K
  522. INX2 |# ?4 F. \& J( F' Q- h* y' G
  523. INC $BA
    ' a+ H1 o/ J! f2 [
  524. INC $BC
    3 O( `) i% E: _& b  I! O4 a# S
  525. CPX #$00
    & `5 S0 C9 X8 [8 ?: H
  526. BNE WL1# M! m' {! l, o7 I, u
  527. INC $BB
    . N: L0 T  [7 Q9 f9 M! E8 f7 s' N
  528. INC $BD
    ' \: Y, T4 p" c# a5 S! @$ ~+ e
  529. JMP WL1! ]. l( F+ u8 O3 o5 K

  530. 3 x& i& k+ F- b( Y+ y, N  Z3 ]
  531. WLR:& ~; V- G/ a- |" `
  532. LDA $7FFE
    2 o6 A: ~( D/ ?+ H
  533. STA $07F6! a3 r6 S! |9 L, j2 L
  534. LDA $7FFD' j+ b2 x  e' W0 _5 C( E& S
  535. STA $00FE8 f& Y( Z8 M9 B1 m5 p/ {! Y* N
  536. LDA $7FC12 d1 A1 y4 E* v5 ^0 {7 V+ N* E8 n3 O
  537. STA $07C1
    4 \* _& |, a& o
  538. LDA #$3F
    0 e$ c$ P3 X; J" l, M* z8 y
  539. STA $2006# d% s; j8 S8 e( @  D+ l  R" `
  540. LDA #$01& @7 i5 R; B( A2 C) [
  541. STA $2006
    6 N; N# n# G, P- {0 W) c  i' X
  542. LDA $07C1
    2 L0 {( \% b) [- g
  543. STA $20075 \' x4 P2 R' Z4 G
  544. LDA #$00; g7 W( {* K* \$ p- q
  545. STA $2000
    ' G$ d& _; Q/ z, C+ L& q5 Z7 q6 S
  546. PLA
    , T7 p# n& q' R; z0 j( N
  547. STA $B8% S% q, V3 T: s+ V% k, q, y
  548. PLA
    $ h/ a" n4 [& M! [0 [/ P  |
  549. STA $B9
    2 M% V: ?( i, h
  550. PLA+ Y. \/ Y* t4 ^1 u  Z
  551. STA $BA
      c0 J; J( H' n1 A* \. u7 e' F
  552. PLA8 [5 e: ]: H: Z0 Q
  553. STA $BB
    : j6 z! B# }5 Y; x$ z5 t
  554. PLA
    * `- ?* f  m( m* f+ ~
  555. STA $BC
    " k* i4 b. {( r  j+ H$ `
  556. PLA
    ( k/ g4 D1 b. ]$ c7 o+ @. ]1 l; T
  557. STA $BD
    & a0 l: k2 ?4 E# u4 g( j( s! C+ c  ]
  558. JMP $A000) Z4 M" F4 M/ d$ a( Y. ?& T5 R

  559. % w1 z1 \( {2 ~. _8 k% M# h# F
  560. FREE:                ; 暂存器保护: v% }1 F' Z: U- V
  561. LDA $BD" E  ^6 ]8 p# H
  562. PHA' ~* w# n8 p/ u- u6 H
  563. LDA $BC! {2 z" J3 }' ]  A4 R
  564. PHA$ @* G/ h  ~! N* j9 n7 `
  565. LDA $BB7 {: j# _* `0 E
  566. PHA
    3 }$ Q1 N+ G$ W7 n: M& N7 M0 o
  567. LDA $BA  {4 s/ \3 \- W% Z2 F( t6 y
  568. PHA
    , H0 n8 ^5 r8 b: c1 d0 s
  569. LDA $B9
    - j7 [( B* |+ u1 M& v3 q; M
  570. PHA
    ! s0 H- i% f2 \
  571. LDA $B8
    ) f1 s6 y3 g+ r+ A9 Y! h& N# Z8 J
  572. PHA6 ~0 s" K8 a; ]- a2 f+ y
  573. LDA #$00
    3 Y- Z' n7 ?1 N8 U, p; n1 K  ^
  574. STA $B8
    1 c9 A( I! C# _/ D; |' r2 [% K
  575. STA $B9
    ; w  Z7 H# C; k. `7 ]3 C
  576. STA $BA# h1 Q9 |' I" F) e
  577. STA $BB
    1 S4 t: I* T4 m
  578. STA $BC3 j- H* }" A: _( w  w0 w
  579. STA $BD3 y# T/ `' E) u( {
  580. & b4 R7 ]  X# D% ^
  581. WEAWRITE:                ;武器ppu写入
    / p4 k3 s* g* m4 |
  582. LDX #$00
    6 c9 p. M: E& \6 e
  583. LDA $AA8 m0 _. v. j/ }$ U% w
  584. STA $B9
    ) K8 d( B6 O, j+ L/ b  }
  585. WEAINI:                ;地值初始化% ~+ z' z! T  y! @  \7 k
  586. LDA #$A4, S& V* Y& B6 z1 y) Y* `/ k' l9 \
  587. STA $BA
    * F4 I8 C4 M5 }+ Q' G% P' E
  588. LDA #$20
    4 w* b, c' b& S9 E; P0 V
  589. STA $BB
    ! e8 S; [! ~$ p/ g2 u5 Q) m2 u; D
  590. 0 D4 v1 Q) \  c# R
  591. 5 _$ L$ v$ {/ ~3 Z& o
  592. JSR WEA
    4 M  w/ T* i7 U! T8 c3 t
  593. LDX #$00                ;武器ppu写入
    1 b2 V. I2 B% F
  594. LDA $AB) s! [$ v- I: C6 n
  595. STA $B9+ I! x6 ~4 Q& X. O+ C( O+ ]  }
  596. LDA #$B3
    % d# u, M% o# k) Z' F! S; ?; t
  597. STA $BA$ n+ @# J+ H: R6 d( q% m$ q
  598. LDA #$207 q# z9 P# r, \" j: r0 M$ E
  599. STA $BB4 O& j2 L- F: g+ e; j8 |
  600. , Q$ w& X) O3 s/ ~: z6 r
  601. / v3 ^" @/ \; N" {- N( s* _
  602. JSR WEA
    2 y1 ^+ q: v3 A2 G+ Z. C

  603. ' \0 M& r5 [) q: w( K
  604. LDX #$00
    3 {- l, d$ t1 n0 e& b+ L1 N  I3 z
  605. LDA #$E4( `6 A1 M# Q7 [# [. X8 H2 ~
  606. STA $BA
    % H2 p4 R( `' Z+ `2 T# M8 X
  607. LDA #$20* u9 s& J5 W) [# M  c- m. ]+ {
  608. STA $BB$ a5 r" V  Q. `9 p9 i5 W! j! P
  609. ( `4 G4 Y1 a+ m; S3 j

  610. ; z0 {: |+ h, x4 G& c& \. u
  611. LDA $32! W8 W7 s$ y8 c# k
  612. JSR PLAYERLIFE8 O6 ^- d/ h8 Q) f: |8 ?
  613. % p1 j0 t8 t; c
  614. LDX #$00
    / e% C3 w, G) _/ I/ I# e; I2 Y
  615. LDA #$F3) s, p9 G# W7 K" T; f
  616. STA $BA3 i; L/ o0 f" ^/ L
  617. LDA #$200 C1 U! _( R! r6 p6 b
  618. STA $BB
    1 w' y. D5 H$ O( V0 E
  619. 4 ]( {1 e; l" ]% O+ c

  620. 2 ?% D3 L  E$ q3 c( C/ e& n
  621. LDA $33( S/ N. w4 i6 A7 m8 t! h
  622. JSR PLAYERLIFE( J, C' v" [6 R  R, l7 j  g

  623. & R1 k) z' m6 X0 C8 a0 x  X
  624. # u+ p& r; g; m; e) I
  625. JSR PLAYER_01_PPU, R/ W3 `  [. b
  626. JSR PLAYER_02_PPU
    1 I/ d0 ~2 l) B0 r5 s. U
  627. * o  Z3 w0 @: t, P/ y& X+ F* }

  628. , ^- C) l: u0 U0 K, `: R1 h( W0 o6 K
  629. JSR PAGE_PPU
    8 ]% L$ h' D% m) _* X
  630. JSR PAGESELECT% `0 m! J; ?' @3 m

  631. 2 A- _# d+ \. {" x" L" q6 r  W
  632. * Q: i" P$ _3 `2 s/ ~, Q9 u

  633. 9 w7 M( W4 C; a! T

  634. / g/ D5 ~9 U3 `$ }; l
  635. - e+ f( R% K1 q  n% h, P
  636. 4 g" L" L! o. m% y. \" d

  637. & I4 l. K& I. C  l7 w
  638. - m( \: P7 K! Q) k! `

  639. 9 c1 @5 Q) e3 C+ L/ _& K* R
  640. / L2 K4 _; v0 G$ E: j; H) k1 C

  641. : a. h. `/ G: ~. Z1 O- d

  642. % k5 y2 |# f' Z7 s

  643. 2 E8 f: S6 `6 x3 Y7 C. @4 R
  644. PLAPRO:                ;恢复现场7 c0 a! {' `8 ^0 E' O& t) I/ z
  645. PLA% k  P4 Q8 N5 H/ i+ }
  646. STA $B8
    9 b0 R1 Q2 d4 K
  647. PLA
    * C+ g; k( A6 i0 c( u8 y
  648. STA $B9/ y6 K/ O# R: v7 t
  649. PLA1 R) _( y: j! b7 T( q# k
  650. STA $BA, E# H, m$ ~$ V' Q
  651. PLA
    7 [$ ~, e2 J& I
  652. STA $BB; ~% {  w1 H: o2 i) y/ B
  653. PLA
    : v6 |, ~/ L2 m" I
  654. STA $BC) K! @2 u( V9 Z' L- {# |
  655. PLA
    0 p% k( D9 O/ S* [$ j! s9 P* o
  656. STA $BD
    & f( @. E/ E  L6 F: ]9 p5 h3 S
  657. FREERTS:
    / G5 N6 W7 s! }) Y: J2 y0 I6 [6 ~
  658. RTS2 j7 v% p6 M; s- Q1 c+ q
  659. ( j  l8 Y4 v7 e5 _' g8 \
  660. INVINC_STRING:                        ;invincible
    ( Q6 X. c# J8 [* H
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    : S- i- s" u9 p
  662. / _8 W2 I8 A* q6 Z( T! `( F6 J
  663. INVINC_PPU:& Y  G/ X/ r5 I+ v5 u" V# S& b
  664. LDX #$00* {8 Q2 a0 b- ?4 S( S
  665. LDA #$623 A9 _3 e6 d% R
  666. STA $BA, q$ v( U1 C% m3 x/ E5 J8 l  W
  667. LDA #$218 s3 m) o9 S) w; `2 [
  668. STA $BB$ @2 x) H% \+ i2 y6 J  L1 j7 `1 M
  669. / \: Y6 ?4 L. E1 x0 T
  670. . x/ F( u6 H  Y  E
  671. JSR UP_PPU6 \, s% }8 `- `& C
  672. JSR INVINC_WRITE* p- H- s/ d8 ~: ^9 n# J' t* p& `- k
  673. LDX #$00# L, P7 f& q" t1 p- T0 @" g
  674. LDA $07A0
    6 D( i0 Q8 J: _/ f
  675. AND #$01' r5 x; x/ K  G8 m% q! i9 _
  676. JSR ON_OFF_PPU
    $ @4 l  k0 \3 h2 ^2 |. C7 Y
  677. LDX #$00
    7 g) P. L: H6 _$ E& C
  678. LDA #$71) y8 P3 ?! j# t: w
  679. STA $BA
    8 c2 a. R' R5 i# j
  680. LDA #$21
    6 ^) W+ ]7 ~! n& `$ W! u& n
  681. STA $BB8 [8 O0 e0 u! T" J, O0 G

  682. 6 L/ O5 b, r  X" P  Y
  683. ! k7 O& G$ l" T  B/ S
  684. JSR UP_PPU
    : m' _( _$ L, a0 m& x  l) S
  685. JSR INVINC_WRITE; f& |$ R8 A  s' v  f$ Z
  686. LDX #$00
    ' D% C  @, n4 w6 C
  687. LDA $07A1
    . k+ i2 z- K) r6 V
  688. AND #$016 I7 }" [  x, z) l( g$ S/ Q
  689. JSR ON_OFF_PPU
    , U0 P# G# v. w) D9 i! P2 @1 g
  690. RTS) Z; O! g5 a' h# K  J
  691. ; k8 O$ h" a1 o" L0 ]$ s
  692. INVINC_WRITE:
    * w& M; s& z% d) v
  693. LDX #$00
    / F9 m* z; G/ M$ j7 r3 f9 S/ A
  694. INWRITE:: H7 c$ e3 q% y; I
  695. JSR PPUADDR_PROCESS/ x0 Z7 o' R/ M0 ^/ P' H2 d) W" O
  696. LDA INVINC_STRING,X
    3 D/ d9 \# l# @. P2 C; d; ]8 N
  697. STA $2007
    1 `# T5 c0 n! j  G$ D) y
  698. LDA #$003 s) R4 s; B0 T0 m% _( Q) }
  699. STA $2000% s1 D1 Z4 }" U1 _: K  l, [: l
  700. INC $BA& C/ ^; o/ t3 R1 t1 r8 x
  701. INX) R5 {  T% a1 Z# }% N+ k4 k# D
  702. CPX #$07
    2 Z+ T# `- |7 Y
  703. BCC INWRITE
    ! Z% v+ H0 w! `. B7 R
  704. RTS
    9 P5 s+ _3 j" Q8 S3 @6 i: k

  705. * q4 A2 |- G7 L. M0 D) I7 L
  706. ON_STRING:4 F' H* }( n- n% K- q
  707. .BYTE $99,$98,$80
    3 _% F: J7 B7 ?' C
  708. / \' u9 h; ]5 }
  709. OFF_STRING:
    : a! Y) b' j7 X; i# f* J
  710. .BYTE $99,$90,$90* j" p  m* m1 ^

  711. 9 H$ r' G* ~+ s2 J
  712. ON_OFF_PPU:
    2 c( n9 p: H; z% g
  713. BEQ OFFWR
    7 ~, |& m5 N9 ~4 U2 s3 g9 f" Y
  714. ONWR:' h/ r/ h9 r$ p7 x+ G
  715. JSR PPUADDR_PROCESS- C: K& t* N! [$ H% H4 v
  716. LDA ON_STRING,X
    + y) \0 ~0 X3 E* a% z2 |+ Z
  717. STA $2007
    9 ?! Y* v0 E& d# i$ g6 }
  718. INC $BA5 q! @* d) P& ^. W, Q: J/ E% f2 X
  719. INX
    ; e, \1 q5 {3 {- l+ ~: t1 \
  720. CPX #$03
    0 B* r( C9 }1 z% Q( D+ Q, Q
  721. BCC ONWR* h! F: l" D  E5 G7 \: G5 u
  722. RTS
    1 q2 C1 H, b7 O
  723. OFFWR:# H7 W0 E5 A1 K: B( M. t( H
  724. JSR PPUADDR_PROCESS, D: h' O5 r. @( v4 F
  725. LDA OFF_STRING,X8 e% i  R: p2 d: T# d- X
  726. STA $2007+ n% }/ q; K: O; D
  727. INC $BA7 Y# T2 W) R( k$ }4 s
  728. INX6 `( X# f/ Q1 u
  729. CPX #$03$ s/ `9 M& J6 |" `& S; l
  730. BCC OFFWR- d1 b! @9 G, ^+ W% u! b# R8 x
  731. RTS3 o5 Y5 @. M: T# C  ]

  732. % R( w$ H5 e" W* y8 y/ G( e
  733. LIFELC15_STRING:* k( g( M% y( j2 R% R
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
      Y1 \, x6 ]$ s6 D1 _5 j3 L
  735. 2 ?& S0 I8 P+ }7 G) G' ]1 Z0 C" R
  736. LIFELC15_WRITE:
    * m: i0 g0 G+ S1 _% d
  737. LDX #$009 s% r: c( E/ p( N1 L$ ]
  738. LIFELC15:
    - Z( V4 P5 M, l( Y) h- F
  739. JSR PPUADDR_PROCESS
    3 Z1 L  \; ~0 }/ N0 O
  740. LDA LIFELC15_STRING,X
    4 b3 \; a. \: }, f, g/ `1 e7 t( }
  741. STA $2007
    : D7 U6 ^8 m9 q
  742. LDA #$008 C/ t% c4 i: @, e1 i9 X, q
  743. STA $2000( z5 m+ ^0 h& T8 R' t
  744. INC $BA
    + q" @$ c1 c4 Z( w( h; ?( h7 W+ |/ \2 z$ z
  745. INX2 D+ P  R9 h! f& M7 w3 ?' N
  746. CPX #$07
    1 f1 ]  C$ ~# ^4 I
  747. BCC LIFELC15
    5 I& }; |8 k& U* v/ h- E
  748. RTS1 X( W0 x1 N" N
  749.   P4 v, N$ \; N% m/ ^& X
  750. LIFELC15_PPU:
    0 p9 W$ j+ {! X% O( M0 e
  751. LDX #$009 ?: ?! q5 M, O: E
  752. LDA #$A2
    , w# I5 R- L1 Z# ^  r7 E
  753. STA $BA- M9 r  S" S" ?. [# ]
  754. LDA #$21' i) n* J3 `1 q4 ~) D$ a) i3 O
  755. STA $BB
    1 Q& z  ~' Q2 F0 h
  756. JSR DN_PPU
    3 `9 r( P6 M! G* J+ G& {
  757. JSR LIFELC15_WRITE: e' p- B! @6 n2 N+ C9 A4 b
  758. LDX #$00% H. J2 g" K6 u! M: H) {
  759. LDA $07A07 L+ M: d2 \& w
  760. AND #$02
    8 O& J5 |3 I, [: s9 S2 V9 l/ R
  761. JSR ON_OFF_PPU  O9 }& R) \# t2 d3 p1 y7 l" i
  762. LDX #$00
    : z; `/ x% Q# e- x! K0 V+ N; V, |6 v
  763. LDA #$B10 p+ m2 Z0 z  t' t$ [( Y: O. H
  764. STA $BA& P  N+ n- v" a3 ^+ n9 m
  765. LDA #$21) k: u% S8 r* C$ m
  766. STA $BB
    2 O# N3 Y  \" t) S# {5 Y4 ^4 h
  767. JSR DN_PPU( m9 k& f% X) v' k; h0 s
  768. JSR LIFELC15_WRITE
    2 C$ x1 ]1 V: p8 k; h
  769. LDX #$008 ?  [( |) }$ j: Y! q, ?& B
  770. LDA $07A1
    + n8 q: R0 Y6 S" \' w# ]  ?5 q& m
  771. AND #$02  v, d9 v' O6 Z) J: k
  772. JSR ON_OFF_PPU
    ; O3 d$ p4 y6 T" F3 a& R' a
  773. RTS: T! [( s) d% o
  774. & B) p  _, N* O0 x( R: R) }2 f
  775. DOUCON_STRING:
    6 S1 b0 G& p+ L* V
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$80+ j) ?3 Q+ i- z, F% o& D* j
  777. 9 c( ?- a  S0 M. Y9 h' W( t
  778. DOUCON_WRITE:
    ! {& N1 U( t7 z2 k# f
  779. LDX #$00* t' V' m( y; t% u. G
  780. DOUCON:
    6 G; C5 t& L! x  _1 h
  781. JSR PPUADDR_PROCESS
    2 J3 O9 u: L! [
  782. LDA DOUCON_STRING,X/ C# C0 j/ Y9 j7 m/ \
  783. STA $2007
    ; @3 F' r& T+ K$ N. o: x
  784. LDA #$00  B4 H# T$ N* o; s' Q
  785. STA $2000
    8 G: m5 s2 w& c' J: y: X2 j2 o2 y
  786. INC $BA
    7 c: B9 Y7 o) E, ^% e0 x0 e" \
  787. INX1 }9 g+ ^1 t6 A- F. a
  788. CPX #$07
    ! Z, P- U: o# \
  789. BCC DOUCON5 w$ p9 a! W9 I0 T4 s. Q
  790. RTS$ V* O% z. v2 _* m: l

  791. # w; J2 @& Z' |' T
  792. DOUCON_PPU:
    ( l/ }) F+ l& `# v( Y
  793. LDX #$00# p; K8 V+ S- Q
  794. LDA #$E2
    9 @3 D( E0 G1 Z+ ?- M% K
  795. STA $BA% h/ Y) c, U. p2 ^3 h; i9 g
  796. LDA #$21
    3 k+ D8 v: _2 h9 ^: R$ l# J
  797. STA $BB
    " Q- y. p5 w" F1 ~
  798. JSR LF_PPU
    8 n- c  c2 W6 o3 Y3 r
  799. JSR DOUCON_WRITE
    , o. o* z& B" ?% D
  800. LDX #$006 w& P9 }6 N9 D: a+ g! `
  801. LDA $07A0
    / @) N& w4 X4 I, k5 r' i+ l
  802. AND #$04) |+ }. o5 a2 t3 V& \+ h
  803. JSR ON_OFF_PPU
    0 x$ f. l! f- {- m/ ^, }3 s/ h
  804. LDX #$005 q" x$ a& O2 |9 f
  805. LDA #$F1& D$ i& s0 u+ m( v1 f; y3 a: X
  806. STA $BA1 e7 r) r5 G4 U- c1 ?% ^! W
  807. LDA #$21
      o; C: J" H/ j
  808. STA $BB) i1 O- i. @0 _& ^, ^
  809. JSR LF_PPU6 @/ |3 S+ K# L! s" Y* p6 W$ ~  L1 M6 v
  810. JSR DOUCON_WRITE" X  w2 a8 t; r3 u/ @0 t2 C
  811. LDX #$00
    3 H4 g6 l  u5 b, w% H
  812. LDA $07A1
    9 E, v4 @3 I4 R  l, U! a5 }' S
  813. AND #$04
    ; {# d! a1 p8 _" z! q
  814. JSR ON_OFF_PPU+ ?1 [3 d7 t7 O) e6 {
  815. RTS
    ( y1 B3 @+ G- r" b" E

  816. . ]# i$ c+ z8 ~1 b" g' Y0 C' X( L
  817. LIFELOW_STRING:
      O3 a0 F' U( B
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80
    * y0 Y3 e: g0 i
  819. & h& t  p3 W* P$ P9 ?
  820. LIFELOW_WRITE:
    9 v9 H' v/ g' s2 L2 H) M7 y
  821. LDX #$00
    3 D9 e; g5 \! ?) J" R$ _
  822. LIFELOW:: |5 p5 c, \2 w/ b; O, z0 t
  823. JSR PPUADDR_PROCESS5 V/ i2 c1 X( W/ E6 u+ o8 U
  824. LDA LIFELOW_STRING,X
    6 d5 ?1 c4 X: v. F) s9 R1 X5 K+ C
  825. STA $2007
    / e9 M+ u0 N# C1 K/ }- D
  826. LDA #$00
    7 i9 X/ f0 c/ k9 q) J% L
  827. STA $20007 K% R0 G& ?' f' Y" q' _' C
  828. INC $BA0 h# `" i: ^5 ?& a
  829. INX
    ' \2 `- M7 k5 B; h
  830. CPX #$07# e- ^5 D) ~  {0 V
  831. BCC LIFELOW
    + w6 v, {% e# N! d1 U+ @+ L
  832. RTS
    * P+ r& [& B% o: M7 V4 K* _1 U4 V' c
  833. 4 n- L0 k7 k% U/ v& X
  834. LIFELOW_PPU:7 D. B6 V0 i' S
  835. LDX #$00
    4 Q4 M5 Y( E  I, `0 Z3 k) I
  836. LDA #$227 K2 H7 b6 C0 h2 ]& }
  837. STA $BA
    5 A1 {: V/ y6 x' v; l7 |
  838. LDA #$228 C+ b- }/ L: d3 A+ M2 O" R* U5 r
  839. STA $BB) _9 z4 n: K/ ~, C
  840. ) b5 i7 u+ q' u+ F) v* m
  841. ! e7 v" s) j) _' ^
  842. JSR RG_PPU
    - b1 b, P9 f5 M# Z, c$ _
  843. JSR LIFELOW_WRITE2 W" |6 u4 J  E+ k8 T
  844. LDX #$00
    * [2 U" o/ A: z6 o5 O
  845. LDA $07A0
    0 C% y3 C: l3 z' C* n% |6 ~9 c4 N: D5 e
  846. AND #$08; U: @- m, b" ^& d' Q
  847. JSR ON_OFF_PPU
    / _7 {% p2 U# i# i
  848. LDX #$00
    % d$ B% g% v4 t5 _
  849. LDA #$31
    ; n1 J7 z" m# C( @* H% t1 J
  850. STA $BA4 o. \- t6 [. f5 ?7 t0 ?0 f9 W
  851. LDA #$224 T/ O1 R) f7 H+ z- o, z
  852. STA $BB2 A. E3 G5 y# c* T8 W* K

  853. 2 _: S  F& i& r- C& \6 h

  854. : @& a# h* L8 ?% S: k3 D
  855. JSR RG_PPU2 L8 k5 K$ Y2 K2 s  V& l* h" v
  856. JSR LIFELOW_WRITE- q9 D6 ~4 I. M) _1 Z, M
  857. LDX #$00; c! u4 J0 J% d; S9 z0 b' C
  858. LDA $07A1
    4 x4 P% J& T9 M, q2 x2 g
  859. AND #$08
    5 N7 q' u  p$ |7 N& ]) s
  860. JSR ON_OFF_PPU
    - {2 x; a( c, A  [* }6 [: ^9 j, m
  861. RTS
    ' f& k& h1 X$ m. r9 {% [7 Q

  862. 9 K% A* b. g7 G3 K( T6 @  l' Z+ [/ f
  863. KILLON_STRING:
    ' w( ?5 ?) R3 Y' W5 m. n* ^% K
  864. .BYTE $95,$93,$96,$96,$99,$98,$80
    & h! M/ F  _1 Z, l9 P) M3 h

  865. $ G+ d6 n- z3 f  b0 D/ E
  866. KILLON_WRITE:/ B& B# \% z) T' f9 D: J
  867. LDX #$00
    2 ]4 m1 N& @" x. C' ]) c
  868. KILLON:5 u7 ?/ b! M9 U9 ]/ g  S4 ~7 d& R
  869. JSR PPUADDR_PROCESS' W" h& Z: Q+ @# F4 U
  870. LDA KILLON_STRING,X
    / ]- L3 `. L3 g  A( ^
  871. STA $2007
    % [* r9 L2 b! G
  872. LDA #$00: C1 @2 W2 e, D- d4 K
  873. STA $2000
    % W* x% I* \! n! n- h- R- }
  874. INC $BA
    1 V' _- e2 v, M5 G! D0 z0 t9 F
  875. INX
    ( F4 a0 R( f: f+ ]  N1 T
  876. CPX #$07
    & Q# v% m) y$ T3 d% E) ]
  877. BCC KILLON
    $ J; ~" m! W' @' h7 E
  878. RTS
    ! k: l( c1 V  P/ E7 u5 c
  879. 0 Y1 ~; r- B+ z  L" r& X4 a6 r! N7 d; I
  880. KILLON_PPU:  ^9 ~. _+ H3 q
  881. LDX #$00+ m1 h! \* {  y! Z- ^
  882. LDA #$62
    1 Q, \) {9 q8 }# N% Y! j" Y
  883. STA $BA
    . M( z! e* g2 p( e1 r/ t$ A
  884. LDA #$22
    1 ~! S, ?2 q) f: G
  885. STA $BB
    & y4 r7 K( o9 ?" w. n

  886. ! W1 I, S* v4 {

  887. ; p% o9 P3 z9 H7 f' A6 R
  888. JSR B_PPU% c5 i, ~4 l, m6 [6 ]6 Y
  889. JSR KILLON_WRITE
    $ ~  p$ h8 A, G# H, k0 E
  890. LDX #$00# Q  Q& \$ R2 T2 p) H
  891. LDA $07A0
    : Q2 [1 h' j; q9 a/ E' V
  892. AND #$10
    % o& Q5 M* F+ C- K1 M7 P
  893. JSR ON_OFF_PPU6 ~( ^; F  X% e5 a9 x
  894. LDX #$00, n* j4 s, N. v& V
  895. LDA #$71
    / L) @5 b! @7 W8 ~9 I) {2 I
  896. STA $BA
    1 G6 F, ?; y  n  A, K# B: V/ Z
  897. LDA #$22& E: n' O5 F) E% I
  898. STA $BB
    1 m: Z. |2 [8 b+ ^" S

  899. ( ^# W# w! _/ ~8 Z7 h6 {

  900. 0 X/ w9 g$ B( G1 c
  901. JSR B_PPU) \% S. ]' P: z9 h, ^
  902. JSR KILLON_WRITE5 y. ]) r2 D) S2 Q- X
  903. LDX #$00
    " s4 x. _  r( B/ a
  904. LDA $07A1. m# L# ?- [* J# u5 b; s( J7 f# a6 @6 u
  905. AND #$10
    % `  s5 ^# r9 O" h: J- m7 V; ]
  906. JSR ON_OFF_PPU
      L1 P/ h3 L  x
  907. RTS, F1 b8 r' @" t2 T. k4 }  e
  908. + S' W' t6 g; L: m$ g5 g% |3 Y
  909. SKYFLY_STRING:
    3 y& _7 u* t- t* Y0 \4 I* {7 K/ x- m
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80+ ^5 W: `$ \3 j

  911. % N- l" V1 ]  C
  912. SKYFLY_WRITE:
    8 ^3 D! u# k* `( r6 u$ R
  913. LDX #$00. ?/ ^  i5 M, ^. r0 |  g7 v0 ^
  914. SKYFLY:
    7 A9 R# {2 P" e) l
  915. JSR PPUADDR_PROCESS: c9 f8 G4 X5 G9 r( |
  916. LDA SKYFLY_STRING,X
    2 j) [' ~* f! l! U7 Z! Z( d
  917. STA $2007: z4 U9 V2 F7 B2 D- |& `5 l$ s. b
  918. LDA #$00* [- Z% c( D. J3 a6 {
  919. STA $2000
    * w- W& {1 R7 F6 J' o. K3 v
  920. INC $BA3 g7 }' p: v: z- T
  921. INX1 L: N; i4 ]9 G8 D3 X, B
  922. CPX #$07
    + u6 F) f9 G/ U$ o' I' K$ g! s
  923. BCC SKYFLY
    1 N; N" v4 Z( \4 S6 n1 T& e
  924. RTS
    2 p- h) f% Y/ F  @
  925. & P6 Y* U, X9 |5 a0 ?
  926. SKYFLY_PPU:
    - f7 u$ C; y6 p  Y) |. C1 z7 ?- t
  927. LDX #$00
    2 J, i2 ~+ C5 ]2 P: z) h
  928. LDA #$A2
    . O; q* U) x' E5 G; n
  929. STA $BA; w6 y" k0 h5 e% _  ]. Q9 J* k6 q, I
  930. LDA #$22
      P9 o: }- a0 j$ U$ @9 w* w( N
  931. STA $BB
    ! J" C% J) ?8 U5 T

  932. ! v* C* B. I$ x, v4 I( [! F
  933. 4 Y" Q+ x* @- y$ f" u6 }8 {
  934. JSR A_PPU
    " Z$ ]6 ]8 H' s
  935. JSR SKYFLY_WRITE# H# d5 [- k& j6 y' R; s
  936. LDX #$00: B! o* [0 L0 Y2 W# X
  937. LDA $07A0
    ! {9 e0 `( k$ H9 m" y1 C: l" X% l
  938. AND #$209 u4 y9 J; q; G
  939. JSR ON_OFF_PPU
    ; g/ M) s/ N, p) K1 ~1 T  J0 W
  940. LDX #$00
    ' }8 n2 S' d' ~: y; _% @
  941. LDA #$B1
    ' y: G- U: F+ K9 M* s
  942. STA $BA7 o) A5 ?( C0 d, H6 M% `
  943. LDA #$22! ]+ I) z3 y8 x; i5 w
  944. STA $BB
    8 _$ t6 z6 a5 X0 o( T6 h# q

  945. & g$ M) P; J% D. y; X4 a4 p& \- A
  946. / M6 ]1 @% m0 J, B
  947. JSR A_PPU1 r7 d& A# _* g, T% J* l4 D
  948. JSR SKYFLY_WRITE3 w6 n# [8 b& q
  949. LDX #$00
    1 C- X: U! a9 [$ O2 A! @5 K
  950. LDA $07A1
    ( i+ O! A, I8 w9 B
  951. AND #$20
    ! y4 d$ @; V9 R* @3 ~9 p. K' ]7 {
  952. JSR ON_OFF_PPU1 G& P% Q  x7 k
  953. RTS
    ) {5 M, b" F6 A( W- A5 h! o
  954. + }& C8 y( g9 c4 z
  955. BULADD_STRING:
    # Z8 ?( n, Y( q( s3 o. C$ `# U2 t
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$80- \# ]2 t" F- P% f( q

  957. ! v# p% M! h+ s7 _+ h5 C
  958. BULADD_WRITE:4 x6 A# p" d% N7 n
  959. LDX #$00
    " L" W8 b2 s0 e$ |
  960. BULADD:
    ! F" {( C# q4 _0 Y  U1 q" c
  961. JSR PPUADDR_PROCESS9 J/ w+ [  Q$ A3 ?1 L
  962. LDA BULADD_STRING,X
    1 o3 D! \* [* T0 g0 K' q" V
  963. STA $2007
    4 q; }1 p8 n4 |) Z3 G
  964. LDA #$00  h6 a0 w/ L3 m: P4 {/ o
  965. STA $2000
    / F  Q# c- `( J
  966. INC $BA& T) E: Y7 B+ G' M8 S
  967. INX
    . m: T: ~0 j/ U. P# p& L& O" Z
  968. CPX #$077 j' \0 e0 f1 n
  969. BCC BULADD8 M8 ?7 s1 l* Q/ `  |' _
  970. RTS$ D. T; H- |' ]) R
  971.   {8 H/ I& F# v& V
  972. BULADD_PPU:% E& z8 n7 M& w' L$ W) ]1 @
  973. LDX #$00
    7 w7 D1 B4 j$ W2 j) C8 P% c
  974. LDA #$627 J/ w  C# ~' K  L  |
  975. STA $BA  ^3 c4 D7 m/ p6 [: G
  976. LDA #$21
    / F1 h% t, }/ e% @9 P" I. H) ]
  977. STA $BB( l/ Y$ L2 d5 E' {1 B6 m' h
  978. # U& b+ x# c9 W

  979. $ M7 X8 T$ @- t% z7 {
  980. JSR UP_PPU
    0 G' o8 ^9 m7 T' A
  981. JSR BULADD_WRITE" K+ [( l" ?& L( m8 K
  982. LDX #$00
    2 w& q0 W& K- }6 K& n. R) Q
  983. LDA $07A2
    9 _, n' s# ~# W9 Y! U
  984. AND #$01; M4 G; a9 K9 y
  985. JSR ON_OFF_PPU0 T0 @4 ]. _" K+ {
  986. LDX #$00& `. V' A0 `1 R& e; v: i/ Y
  987. LDA #$71
    3 R$ L% q% ?$ R+ o+ D
  988. STA $BA
    , |+ K* t1 }' ~& C$ C+ d+ D! u
  989. LDA #$21. ~: [" _+ \3 o! Z
  990. STA $BB
    ! V) M; D; \7 ?( g8 j6 `

  991. % U4 B" `  p0 r5 S
  992. % d$ _3 X. A. A6 J: ^
  993. JSR UP_PPU* U4 G9 A: A' m. G: H! d& c# V
  994. JSR BULADD_WRITE0 {2 A, h+ C6 V2 _  Q
  995. LDX #$00
    1 N! B1 `% G8 X+ h' q
  996. LDA $07A3
    * o& t- C. _6 e. `$ q
  997. AND #$01
    " Q0 d) _6 m; T# V
  998. JSR ON_OFF_PPU
    ) @& I7 h$ u) R, S1 @% x5 D8 d
  999. RTS
    , n( _' ?* a, u4 z4 m% ?  {

  1000. 1 p. ~6 Q& W8 ?9 c% |
  1001. MENU_PAGE_STRING:# r2 A: s! K( w& m6 j
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$814 M1 L3 n( i5 g' T4 t
  1003. 3 ~6 m5 X) h( ~7 z
  1004. PAGE_PPU:7 ^% X1 N* J/ p0 z9 ]* N
  1005. LDX #$009 `, r. @8 q9 j1 v
  1006. LDA #$0A$ W  Q: v/ _3 A: D; `  j
  1007. STA $BA6 l% v. Q2 j5 Y3 M
  1008. LDA #$239 p9 x& E7 n) m! L* |: z: t7 V
  1009. STA $BB' E- c7 W- f8 t6 S$ b  ~6 F
  1010. . y3 R) N  J$ {# K7 {' N; o4 t

  1011. ' e* M/ Y( i$ w, f5 D
  1012. MENU_PAGE:
    7 F" i3 b& ^/ [3 e) ~
  1013. JSR PPUADDR_PROCESS
    1 N7 {% J7 ]$ [
  1014. LDA MENU_PAGE_STRING,X- x" J5 h7 f' u  z2 s3 S1 [! V- u
  1015. STA $20078 z( [# e7 D2 w) J
  1016. LDA #$00. G0 V2 y: Z% v+ Y' E- `/ ~
  1017. STA $2000
    5 [' Z2 `: `' J# }
  1018. INC $BA
    ! [; X" j( s" T8 u& F
  1019. INX
    % \9 j6 ]; E4 i" Q. y* r
  1020. CPX #$0B7 Z$ m: m+ K2 J& q- a
  1021. BCC MENU_PAGE
    3 D) F7 A7 C/ P5 a! y/ [
  1022. LDA $07AA% n# n" G7 M$ W
  1023. CLC
    , f& b+ n1 S( N! j. W: U
  1024. ADC #$82/ R; A3 d2 R* N5 h' i* z
  1025. STA $2007, a' M/ k$ A8 o) j
  1026. LDA #$00
    6 ~- I' D) L: R2 C. C& K( \; M
  1027. STA $2000* D4 [/ N1 P, M; ^
  1028. RTS
    % Z. H! e  y" p3 j
  1029. 0 [2 y( X2 m. I

  1030. 1 U: G* g7 x0 y) A- h, p
  1031. SKINGE_STRING:7 ~/ g% r/ Y, f
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    3 v  {+ V1 ?# F4 m

  1033. 5 n( I! i- l0 a5 h
  1034. SKINGE_WRITE:9 e8 k& O, R9 A# ?6 _3 K# {+ I( K
  1035. LDX #$00) z4 a" A: f) [: w  |3 }
  1036. SKINGE:
    8 S7 Z# W1 \: \4 \1 }
  1037. JSR PPUADDR_PROCESS! |1 e+ G8 T: X
  1038. LDA SKINGE_STRING,X$ U: u0 |1 U  \; V1 }+ r1 ]5 m
  1039. STA $20075 M- A* o. R# }2 j/ z
  1040. LDA #$00
      ?3 N2 P  _3 A& l" r0 C1 z
  1041. STA $2000
    9 ~% O3 N6 B7 H  J; E! A6 ^
  1042. INC $BA( i# |$ {( i! E6 k5 Z
  1043. INX
    $ X& t+ E( b$ H* g: G* p& s* j
  1044. CPX #$07
    3 |+ R- Z4 T, F, S7 Q! \: X6 i
  1045. BCC SKINGE. H5 D3 F- v1 K  P
  1046. RTS
    ) `1 F  r; x# v" u9 k2 g: O

  1047. 3 b$ o5 y' s, X1 e
  1048. SKINGE_PPU:3 R  e  ?7 O, g4 e6 |& v; J
  1049. LDX #$00
    : O  u! q3 n- x! U
  1050. LDA #$A2
    5 ]7 K, Q6 [( ~! b( |1 d
  1051. STA $BA2 Z2 F/ w6 [- b8 h. z! p
  1052. LDA #$217 V' I! m2 @: F8 [7 ]8 U; k
  1053. STA $BB2 ]" i* b+ c0 `' H6 F6 {
  1054. 3 N) ?3 L5 m. T2 u
  1055. : I1 [8 M3 B& ?
  1056. JSR DN_PPU) }& L4 {* E& u7 s  h
  1057. JSR SKINGE_WRITE
    & V. Z9 `) m, ?
  1058. LDX #$00
    ) F* ^- h# X: C' S
  1059. LDA $07A26 R; l* K, Z* L; Z. X
  1060. AND #$02
    * m) r3 h) X: i, b4 N: O3 x
  1061. JSR ON_OFF_PPU  d$ ^) c1 M) ^  z3 \- o/ U
  1062. LDX #$009 u8 r  _+ e( y4 A
  1063. LDA #$B14 N1 U( I. a# F& `  \( R; O+ L
  1064. STA $BA: X3 Q% v8 `. G; v
  1065. LDA #$21& K# b5 }- ~0 U" [6 K
  1066. STA $BB
    2 |4 r6 c* R" J1 M6 ^& j$ Z" e
  1067. 9 ^, T# X) r2 O& ]: e9 a( l& e

  1068. 9 l/ }  H9 P, Z' _6 L* [
  1069. JSR DN_PPU5 L1 m: T/ g- L: E7 J! @
  1070. JSR SKINGE_WRITE
    3 z6 ^( p; D% c% @- h, w2 G' d0 S
  1071. LDX #$00
    7 X8 _; }6 g6 j: j$ b3 c
  1072. LDA $07A3. F7 f0 E+ m8 A; y2 g
  1073. AND #$02
    # x! G! g& `6 q: Z# r6 ^
  1074. JSR ON_OFF_PPU
    * M3 I: L8 L* u7 `
  1075. RTS
    + h4 ^8 v: P6 o* D% T& p0 K6 S9 x

  1076. ) j  w. L, ?& V6 b4 m
  1077. BULMIX_STRING:
    3 R7 t- [; o: Z0 W9 w" w
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80
    * g2 \, n5 K9 F4 D( F; k! Q" ?& z

  1079. " ^: F& J; S. S) g
  1080. BULMIX_WRITE:' [( h& z& y  \( ~: i5 C4 _# ^
  1081. LDX #$00# A. C' }9 ~+ J" c. C, b( w, J
  1082. BULMIX:$ ^, n4 m! E; i5 D' x5 a
  1083. JSR PPUADDR_PROCESS
    . y# D; h4 B! C! b' O% H9 ]
  1084. LDA BULMIX_STRING,X
    6 H* k- [8 s; O2 n4 ~! p- |3 _: v
  1085. STA $2007
    9 e! J, E- k* ]- x; a- \( A/ s" K( e! Z
  1086. LDA #$00
    4 T/ _2 e, F' m2 c; z2 m' X
  1087. STA $20007 y- c5 Z7 _! t, B2 x- i4 @6 T! Q
  1088. INC $BA: u7 g5 d+ m7 m5 w
  1089. INX1 q6 B0 I- o5 e' v1 J: C: X& x
  1090. CPX #$07
    3 }9 ]9 P3 A5 J% I$ W; s
  1091. BCC BULMIX; x4 D- `6 [0 u7 h3 I4 ]# i1 P
  1092. RTS) U4 D9 |; O& v" n( H

  1093. ; b1 ?8 v6 ~4 F  R( R
  1094. BULMIX_PPU:
    " P  k8 N9 m" ]1 x& L
  1095. LDX #$00
    0 q4 d. r7 W( X# f4 @" l
  1096. LDA #$E2
    8 _8 Z" {. m( e& i" b+ |) q. h5 R
  1097. STA $BA4 S3 v( T& r3 h) w! `
  1098. LDA #$21. \' a7 y  x5 t" H) d4 b" V
  1099. STA $BB
    : y6 A/ i, y, d, C7 W
  1100. 6 U; l! {+ }. f3 k

  1101. - {5 k& K7 I; ~8 q
  1102. JSR LF_PPU* G  R! |0 z  @$ j
  1103. JSR BULMIX_WRITE; ~) S' [) p, N
  1104. LDX #$00
    ; ~. _4 o) W: O( ?  ]& \
  1105. LDA $07A2& _+ X6 d, v; d. Y2 ?# a  D
  1106. AND #$045 T: \( p7 W: L: ]' K  N
  1107. JSR ON_OFF_PPU% |# a% k* r* h; ^5 J' b, R$ y
  1108. LDX #$00' F2 r( ~. `7 D* a" H
  1109. LDA #$F16 N* M1 a) w. m7 {# x4 A
  1110. STA $BA
    : d& \. ^' I( w( ]+ a
  1111. LDA #$21
    ' u+ ]2 k4 Q1 Y- @) a4 }
  1112. STA $BB
    8 T; M+ H1 {( d+ p8 ?5 C; B

  1113. / @: K2 R1 Q) s* |

  1114. 4 O, @3 C3 L& n9 T
  1115. JSR LF_PPU
    9 ~- a+ z0 _. _. q
  1116. JSR BULMIX_WRITE
    ! k+ G( ?7 M( Y  \! N9 F+ F( \. ~# z
  1117. LDX #$00( ^% R" R& O" D3 w9 c( I) I( s* Y
  1118. LDA $07A3  c3 x, J7 ]+ E" h+ C2 J
  1119. AND #$043 R( R3 k3 p) e
  1120. JSR ON_OFF_PPU
      S, k' h4 {9 }" }& Y: G4 b
  1121. RTS
    : S# @9 }. Q0 `' k2 G7 T, X6 {/ i0 s4 ?
  1122. . ~9 d# H) O% H
  1123. ENELOC_STRING:
    ' r, X! ?! S7 L, O/ k' n
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80% w6 j6 F5 N7 S% O
  1125. / a4 j) Y' u% Y3 z3 |) Z6 g# A, A
  1126. ENELOC_WRITE:+ w: A3 k) t1 A/ ]0 D+ ~
  1127. LDX #$00
    - x( G9 n8 m* b0 L, h7 A% T* j
  1128. ENELOC:
    * Z' P. @( v$ j7 M0 A  M
  1129. JSR PPUADDR_PROCESS; I+ U4 r, {9 ]9 E
  1130. LDA ENELOC_STRING,X
    2 y' r+ c. X- H" g* `5 p6 q
  1131. STA $2007
    7 f8 n9 S" y( ]6 D5 a
  1132. LDA #$00
    # ~+ ]5 d0 [( {6 L; n2 C
  1133. STA $2000
    : C: \' t" z/ f( I4 r" Q" U
  1134. INC $BA$ t5 R% M/ l1 \: ?1 u( s3 u: N
  1135. INX
    5 L9 y+ I" B- _0 n
  1136. CPX #$07
    0 }( |0 k& u2 _" r1 B7 `# Y+ a3 ~( y
  1137. BCC ENELOC
    $ `, F) g8 s) ]) X; b7 `) f& G
  1138. RTS
    % y- ^2 M4 n, N. P2 G
  1139. & P5 f9 b4 G( Q9 {* C8 d: L
  1140. ENELOC_PPU:
    . G/ f3 Y" I7 \0 a! o
  1141. LDX #$00: u2 N( h8 R" L# o4 X8 E! b
  1142. LDA #$22
    6 k3 {, |- e: ]2 _' d5 {
  1143. STA $BA% }: T. _! s7 c
  1144. LDA #$22' ]* f9 G* l& d+ w
  1145. STA $BB" S, M) N$ ?0 n; J9 w7 c  D+ }6 A

  1146. 2 N$ O1 B; J5 l* l" ]. w) ?, o

  1147. 3 V8 V2 A6 n- s% V
  1148. JSR RG_PPU
    & i/ d$ P7 D4 \  ^$ v
  1149. JSR ENELOC_WRITE8 a+ m' Z) c. A$ t% |9 ^8 J
  1150. LDX #$00
    . ?# ^7 W0 s! N- ~! j) v; p, B. a. q/ N
  1151. LDA $07A2
    0 u: Q3 l, i5 k# A+ F+ I. k
  1152. AND #$08+ P' l* Q% y! l
  1153. JSR ON_OFF_PPU7 Y+ I5 c( ~* k
  1154. LDX #$000 i: u$ J0 R* }$ ]! I5 F" n/ Y
  1155. LDA #$317 ?) P; P' F  [4 o/ |
  1156. STA $BA
    8 l9 f; J, H, m8 o" x2 b  u
  1157. LDA #$22
    " |  x" ?2 Q) }, C' a
  1158. STA $BB
    ( v$ d% E  G* s4 H9 `# L& j: f; W
  1159. 8 f/ l' W2 C) P! v( [0 z
  1160. ) o9 E4 G- Y6 Q1 x5 K6 J: X
  1161. JSR RG_PPU  Q0 N% a7 w" S/ z& w9 r
  1162. JSR ENELOC_WRITE
    2 `, D1 q1 X4 W
  1163. LDX #$00
    1 A# @5 \' V8 U5 |$ m
  1164. LDA $07A3" \4 m0 y8 ?1 G) U
  1165. AND #$086 y$ s7 J' h' o
  1166. JSR ON_OFF_PPU! d% z# H$ m0 b! M( {
  1167. RTS4 O$ k# N, @1 X# H0 t" L5 e
  1168. ( l5 W9 B2 u& M2 ]7 O! s
  1169. FOCFUL_STRING:2 p  \" V8 h* Q3 j  ~9 _
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80
    ; s5 p& |2 V; {" J% `
  1171. % q9 w# f6 H! D6 p. W0 \

  1172. 2 L5 o5 \  O' m0 P. |7 N
  1173. FOCFUL_WRITE:$ F* {8 Q$ m* I
  1174. LDX #$00; Q3 }) B# P: |4 s% I* m; G0 [2 C
  1175. FOCFUL:
    6 A! r, g0 q) X  Y# T2 U
  1176. JSR PPUADDR_PROCESS
    ! ]' {/ l+ |1 D9 R; W0 f( O
  1177. LDA FOCFUL_STRING,X
    , O; [+ T3 A) U! T6 d; m
  1178. STA $2007( l, ?2 p; K3 d
  1179. LDA #$00
    * F1 z7 Q/ d+ m( v
  1180. STA $20007 c6 i  n. \8 g7 z: o& s5 U4 E! n
  1181. INC $BA+ |& [6 c( u# L+ F0 |4 A) }
  1182. INX* V6 m, p) b1 _3 v2 P9 X
  1183. CPX #$07
    , Y( _8 k- G$ n1 j/ ?1 l
  1184. BCC FOCFUL$ p3 ]2 x) @# ^( v7 z. J1 A+ O$ T( _
  1185. RTS
    7 g6 S5 [* H0 O
  1186. 1 p  e- s5 f8 K( e+ B1 C2 R4 t3 R
  1187. FOCFUL_PPU:7 t. C# G6 d! ]$ |: ?2 P
  1188. LDX #$00
    % r$ l$ j; c/ G) C# L  T+ n, \- A% _
  1189. LDA #$62
    4 B" o/ B. V1 `3 B& N' w  E
  1190. STA $BA
    % b+ u2 d" p: s' |' u) a+ O
  1191. LDA #$22
    9 x; l! J% T) J
  1192. STA $BB1 d! @6 K* @! \6 {$ V5 E! f

  1193. 5 T; \0 X3 o6 y" h

  1194. 5 y4 \$ a- O  W/ p0 o, J2 X
  1195. JSR B_PPU
    ; G& p& B' s+ N2 c6 _/ x& `9 ~
  1196. JSR FOCFUL_WRITE
    . M* F, R3 {4 B; H8 d8 _$ d( a% }
  1197. LDX #$002 b3 O0 h1 @$ q, ^1 `
  1198. LDA $07A2* ]5 C, x4 _- Z' j, s
  1199. AND #$10: g7 M- W1 v$ [. t2 F
  1200. JSR ON_OFF_PPU* i0 P% M& C8 _7 G
  1201. LDX #$00: u2 W5 O9 [" m( P9 t& |
  1202. LDA #$71: S, D8 q2 @) t
  1203. STA $BA
    + I, j) P- B* f
  1204. LDA #$22' ~$ {% N" Q: R
  1205. STA $BB
    5 N; n- ]/ k3 W" `# |2 C

  1206. / M7 a; C1 g. ]+ {

  1207. 3 b& B4 Y: x. Z* @  s. X
  1208. JSR B_PPU1 E  v/ G9 b; O1 \! C8 o9 j
  1209. JSR FOCFUL_WRITE7 V  r; d% X& M; c
  1210. LDX #$00
    ' c- j2 U3 _: n
  1211. LDA $07A3
    % o% v- l; t5 s" h1 n- ]- L. d3 u$ _
  1212. AND #$10
    7 u3 d; G4 i5 ^: l
  1213. JSR ON_OFF_PPU
    1 Y( y; j3 t4 ~3 `3 l
  1214. RTS* V3 Q! x! ~, D! l
  1215. 9 F* ]; N% B# P- _, m
  1216. BULCON_STRING:0 _5 E; f" s# J7 }
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$80! Z+ L8 q5 p% j

  1218. + ]* T/ S3 }4 A6 H; @5 z" P5 u
  1219. 1 u% {7 g6 l( t7 `5 p3 `+ x
  1220. BULCON_WRITE:
    : i6 r$ x* S- x: v" f
  1221. LDX #$00
    6 K# v9 I' `4 q/ ~' p. d
  1222. BULCON:: o8 ^' K: Y2 I7 Y
  1223. JSR PPUADDR_PROCESS8 {! \' R! F  f
  1224. LDA BULCON_STRING,X" }9 I, o# T6 ^7 ?; Q% y
  1225. STA $2007% s+ S" s* g: h5 ?9 x+ ~5 A
  1226. LDA #$00
    $ U* x3 o+ h) C$ c. q5 D
  1227. STA $2000) K1 F( T4 q: D8 M9 t. h7 Y% h
  1228. INC $BA- l; \; f3 \, k6 |3 H. c0 x
  1229. INX( l( c2 e) \  i% i: A
  1230. CPX #$07
    / q9 W' O+ Y- [2 r- v$ ]8 m+ B* S
  1231. BCC BULCON3 ]" `6 {9 H& ]7 Y% E7 x$ L5 A
  1232. RTS
    0 k1 i# Q% M  m% f/ y+ h7 i

  1233. 8 }$ r& d0 h$ z  Y8 \9 y& s
  1234. BULCON_PPU:* p6 E/ d7 R, ~
  1235. LDX #$00
    ' Y; J8 i$ M! l
  1236. LDA #$62  k' t7 V2 r  ?6 i# i: K
  1237. STA $BA
    3 r0 H6 K% ]/ l7 ]& h7 H" ?; I6 N; |
  1238. LDA #$21, e0 b. L. M( W
  1239. STA $BB
    2 B3 @" d- n6 D1 |

  1240. $ ^0 y3 F' g9 A

  1241. / J6 m3 f& W! b$ _' T+ \2 J/ |( K1 f' J
  1242. JSR UP_PPU
    / Z5 @: e9 x& ~, _/ o
  1243. JSR BULCON_WRITE
    $ G" i0 I9 A" \  ^, i& o
  1244. LDX #$004 g! {( J. K! D8 f' d! N; x
  1245. LDA $07A4, o9 J% v+ W  h( [' n  Q
  1246. AND #$084 P9 p9 m  E# q# H
  1247. JSR ON_OFF_PPU, P$ @, }4 E4 H2 F1 B. B5 B
  1248. LDX #$00
    9 s8 ~- A5 d' [: ^: H
  1249. LDA #$719 \. D4 F4 D- t; D- Z% f
  1250. STA $BA& L1 Q. c3 M/ _# Q0 t: c% |0 A0 [
  1251. LDA #$21
    7 S6 e: [, q! d( F+ ^( C$ a
  1252. STA $BB, m$ d8 H7 }, g- `# k! t

  1253. # n4 L# X1 U. j8 C: E- Z
  1254. 8 g2 i+ _' S7 e8 V/ i0 X: q7 P
  1255. JSR UP_PPU- G* D; {, v* D1 f+ t/ A  b
  1256. JSR BULCON_WRITE7 e- i& z$ }3 \/ f- E! Q
  1257. LDX #$00
    * v' b$ [! }* v9 b, R8 D/ \5 g! ^
  1258. LDA $07A5/ x* K8 }/ _5 R2 O
  1259. AND #$08
    * @! O) M8 T# j" d# `
  1260. JSR ON_OFF_PPU  R# [) c3 U: @8 a
  1261. RTS
    ' n- H: O/ F2 v+ B' W# L
  1262. 3 p0 F1 i. U9 x- p
  1263. SPEBUL_STRING:6 F! U! j. _# p# a: b. x% d( E# h
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80
    . G1 G( Q% P7 w, }( |4 i
  1265. 4 }- i( F% D  ]

  1266. 4 X0 }4 }* i6 }! _5 z
  1267. SPEBUL_WRITE:$ @# [6 k. q3 G) \& Q3 Z
  1268. LDX #$00' z* R6 i2 z3 J3 F' S0 ~; e9 o' A. w. w8 p
  1269. SPEBUL:
    9 J* O+ C9 `  @! w7 Q* g5 n  b
  1270. JSR PPUADDR_PROCESS$ G; ~/ }1 W9 x3 y8 t- \3 \
  1271. LDA SPEBUL_STRING,X9 {5 H/ C& q2 T& |* M2 y% \
  1272. STA $2007
    $ h: a5 i4 Q- e1 f8 Q
  1273. LDA #$00; M; H4 [+ I4 R: B& ^/ F" {0 h
  1274. STA $2000$ P& S; R4 ^" K9 c& H+ Q
  1275. INC $BA$ S: G  m* t, O  d
  1276. INX% M1 V; Z* v$ `7 M
  1277. CPX #$076 ^' U, q  }8 U) W
  1278. BCC SPEBUL. `: J4 Z4 o1 [( _- y
  1279. RTS  c5 Z) Y5 x3 }3 E) R! @

  1280. - ~: Z" R" g) ]
  1281. SPEBUL_PPU:
    & {6 @9 R7 s# n/ w
  1282. LDX #$00) T) r5 a/ E6 H2 j* e
  1283. LDA #$A2
    ) d# t9 K% F& K& d! H+ b" y
  1284. STA $BA) o& @4 p: D8 |; }; Z
  1285. LDA #$21& d8 P( A2 b/ w
  1286. STA $BB
    - h. Y( ]  R5 `( Y# U

  1287. 8 V4 ?9 b  X- ~/ c

  1288. # c; i8 ~* P7 ]4 \$ c: I
  1289. JSR DN_PPU9 S" k, n' m" @, a
  1290. JSR SPEBUL_WRITE
    2 \. a1 h  G" V& {  N
  1291. LDX #$008 m+ d1 S& E! b
  1292. LDA $07A4
    4 s/ G  }6 r) r7 N
  1293. AND #$02
    7 a4 R3 I/ d; y6 I
  1294. JSR ON_OFF_PPU
    : f6 P5 [- @& J$ x( \1 F  v1 t& ?6 B$ e
  1295. LDX #$00$ O" z$ v' q. d
  1296. LDA #$B13 F6 [% v" M3 k+ x# u) U
  1297. STA $BA1 u4 t, v1 u+ ^9 i4 K9 C9 S( g
  1298. LDA #$21  a- R: L/ V8 H8 u
  1299. STA $BB
    - ~/ o! S7 e" L% A

  1300. , s% y. X+ E  c2 }# X
  1301. " {$ K+ z* k% Y0 W8 P5 u$ p: V% E
  1302. JSR DN_PPU
    1 E$ A9 |- }9 {; L/ o+ M
  1303. JSR SPEBUL_WRITE$ R0 Y. H) C. K- @7 J; P
  1304. LDX #$00
    / w1 z4 T+ m6 ]9 V
  1305. LDA $07A5
    % N2 O% w* O" R; H# M" Y
  1306. AND #$02
    ( w( p8 B& X" E8 _
  1307. JSR ON_OFF_PPU
    / S- [6 |7 L% _) q
  1308. RTS
    / m1 Z0 I$ H7 X9 M4 A' \& w8 I
  1309. # Z0 G/ n0 M  D! V0 s& H' k; A
  1310. .ORG $A500
      ^: k  y! N7 [" z
  1311. CLEALL_STRING:& u5 [: T% y: ?8 i
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80
    - x9 j: y& J* ^. s- g9 l- Y) O
  1313. 3 T5 b' n% l2 j
  1314. - C* p  W& |2 t0 Y' T) @/ X& F
  1315. CLEALL_WRITE:
    5 k+ ^7 y0 x2 @' w2 ~; _; [
  1316. LDX #$00' F$ c% g, }7 h' w0 q! A
  1317. CLEALL:7 z3 u3 i1 ]) Z3 v( _9 G1 G* z
  1318. JSR PPUADDR_PROCESS. G5 T8 ~' Q  W
  1319. LDA CLEALL_STRING,X
    ' k4 A4 @( K& H
  1320. STA $2007
    8 _* m/ ~# O' U. L; {
  1321. LDA #$00* t4 B) r: h7 ]! @3 i' [
  1322. STA $20005 G! ]8 c  O' O
  1323. INC $BA
    ; q) s! ?5 t3 m' B# r0 R  \, e
  1324. INX
    ) t4 e3 C( k+ r5 a) {4 N
  1325. CPX #$07
    3 [1 h" c7 |9 Y  c5 E- ~
  1326. BCC CLEALL
    . t# L8 E5 O- u' ^! l/ u0 v1 V: n
  1327. RTS
    4 i( q: V$ ?2 i" [

  1328. / \4 S" i$ y  A
  1329. CLEALL_PPU:. v, k( \7 g7 b+ I
  1330. LDX #$00
      W" z5 ^5 c  Q0 n* C
  1331. LDA #$E2
    8 c0 l" S* I' N7 b% t$ p) V
  1332. STA $BA. z) [- {8 \% @2 ?, ~
  1333. LDA #$21
    ; m" Q" L. @' _- ~: p( I
  1334. STA $BB
    ) S4 _8 p; W9 h- F

  1335. ( x. v7 X6 |- `; p1 t$ ^1 e
  1336. 3 w: p1 X  W9 N! x  z! f+ {
  1337. JSR LF_PPU
    * i  S5 n& M! \4 R
  1338. JSR CLEALL_WRITE1 Q1 V7 |& G& Q! N9 Z( B/ N
  1339. LDX #$003 v1 L0 p$ i" ~, v
  1340. LDA $07A4
      D# x) D: v0 O% N
  1341. AND #$04( G8 n& q% C' e( d9 ~
  1342. JSR ON_OFF_PPU
    4 t) }& o$ I! C* n$ r6 e6 l
  1343. LDX #$009 c$ \6 l) P9 _  i( X- J: e
  1344. LDA #$F1/ Z# i$ r4 ^. N+ s! U' k
  1345. STA $BA
    # i  p( H+ z7 M, H, Z/ V  F+ |
  1346. LDA #$21
    4 l6 K1 x! ?; v
  1347. STA $BB! c# o$ i3 M' f2 b& E& a+ @
  1348. ; m4 L' H( R- |% m

  1349. ( A9 }/ ], O4 V4 ~. ^
  1350. JSR LF_PPU
    9 j+ D* A" R0 U# u
  1351. JSR CLEALL_WRITE
    * U/ D1 W6 D# _8 N/ F/ z+ O
  1352. LDX #$00
    1 s/ `, {4 m' n  Q" F! d$ m
  1353. LDA $07A5
    0 b) W4 f. y. A, x; g
  1354. AND #$04; z- C" G1 I; c8 n
  1355. JSR ON_OFF_PPU
    : e" N& d+ i$ s: \4 N& A$ U$ L1 C$ ?
  1356. RTS
    ! Q! N6 O. X% @+ b8 h9 ]

  1357. - a; @* m( E  S0 n
  1358. HARDMODE_STRING:2 b& v; q( |5 }( }1 X! v$ |6 e
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$808 {; T4 P: J/ n; J2 b
  1360. * T  L+ I: x1 h1 c+ y
  1361. . G8 ~. B* C5 b4 g0 R
  1362. HARDMODE_WRITE:: c' F; C, d: H& g2 k& q) G
  1363. LDX #$00
    6 ?5 b3 S$ A: \7 t# |
  1364. HARDMODE:! \4 o) C" a3 z. z. c. A/ W9 ^
  1365. JSR PPUADDR_PROCESS
    6 t) k1 Q# E7 A& \' ]
  1366. LDA HARDMODE_STRING,X" W+ q6 s! g# R6 O
  1367. STA $2007- z) M& G2 w5 }6 _0 P
  1368. LDA #$00. @) Q2 w6 x3 V, W
  1369. STA $2000% x  }0 t: F$ b- O
  1370. INC $BA8 @* N, _7 |# C! {9 a# }9 _( t" y9 L
  1371. INX
    1 j. Y' ?4 ]1 ^# H7 q9 M
  1372. CPX #$07
    - e8 @1 n6 j" m, ~1 A& x
  1373. BCC HARDMODE* m: O( |4 f% ^( Q. d3 p. E
  1374. RTS) A$ w+ A$ S0 W' p8 G% @, `& S# V
  1375. " p, n: _# ?- f! n$ n$ M2 V# V
  1376. HARDMODE_PPU:: w4 W+ K. S0 V6 z
  1377. LDX #$00) C7 U( p1 N/ }& \# T9 c8 V
  1378. LDA #$22
    - c. A8 G3 \' Z% @: N6 R+ `: t+ `
  1379. STA $BA; G' b; J* R' S' O: P* E6 i
  1380. LDA #$22. Y3 N) z" G# ~* Z1 @
  1381. STA $BB: t. @; o6 C0 T# }9 J' F9 R; o
  1382. JSR RG_PPU
    1 M( t. T5 {$ Q3 {2 r
  1383. JSR HARDMODE_WRITE
    ! N9 T+ s: d# h1 ]7 V2 C0 N
  1384. LDX #$00
    & p9 c; b0 t8 q; k' Q1 V% U
  1385. LDA $07A4- @+ ~, A/ N  k+ k$ j* W
  1386. AND #$01
    . K9 ?# Z8 Q, G3 d) f: w& O  Y
  1387. JSR ON_OFF_PPU
    / W* n. B% m# p( K9 V+ X
  1388. LDX #$00( _+ k/ J9 M. o% }+ q) G( s( ?/ \
  1389. LDA #$31
    8 ]1 c' s. N+ s" T
  1390. STA $BA1 C. X# @* ^) I
  1391. LDA #$22
    , l: C  @4 ~6 y6 e
  1392. STA $BB6 g1 V( A- J2 o) K2 L
  1393. - ], T! x' ^' r8 S+ W# H
  1394. & O2 \& _2 Y( z+ e! l
  1395. JSR RG_PPU$ [) i5 \) {8 B/ b( m
  1396. JSR HARDMODE_WRITE
    - z0 b! \" j$ p5 N7 k
  1397. LDX #$00
    7 `; `' w9 i' d; _1 O5 ?$ |& n5 ]
  1398. LDA $07A5
    , ^# ?+ k, R( r' t
  1399. AND #$01
    , }; L" f9 _  K& d, Q  \  R
  1400. JSR ON_OFF_PPU
    4 v, k- e5 N0 i
  1401. RTS
    . i# B0 t7 B0 D( D6 G  y7 S  u& c3 i

  1402. 8 U; S- k8 V+ e' q! M) C
  1403. B_TO_JMPSTG_STRING:6 J5 b; t  G3 ]& E
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80* I, o- y- r% b( ~
  1405. 8 ~+ y; J% l+ N6 M0 |

  1406. / A, s! a& c; t
  1407. B_TO_JMPSTG_WRITE:: B3 u7 c- P& I. I0 h( I
  1408. LDX #$00" c- Z$ k5 b# d: ^
  1409. B_TO_JMPSTG:
    8 ~! h0 _- z: x# Z
  1410. JSR PPUADDR_PROCESS
    ) Z: I, |8 W2 y$ V# M% m6 B
  1411. LDA B_TO_JMPSTG_STRING,X& @+ q! c/ K' ~! o
  1412. STA $2007
    ' n: v7 W  G! m5 v5 W0 A
  1413. LDA #$007 N% G3 m1 r* w+ P, g
  1414. STA $20008 e. U( W$ K; f9 j/ K
  1415. INC $BA: n8 i  l0 p# O5 f. P
  1416. INX
    6 }3 |3 H5 _7 n4 n2 F
  1417. CPX #$0D+ Y& E( J$ S8 _0 e. j8 |
  1418. BCC B_TO_JMPSTG) F, f+ _+ G, J$ H' J# V
  1419. LDX #$00
      }6 a! i$ f$ b1 p
  1420. LDA $7FE0
    * l$ T& K5 ~% q- f4 J, [7 a
  1421. JSR ON_OFF_PPU; |; P4 x# z: e4 }5 y+ B7 q+ E4 l
  1422. RTS6 u( l5 X( J0 Q: w7 ~: l

  1423. ! x2 b7 k6 K! L3 i) e2 V. L& _
  1424. B_TO_JMPSTG_PPU:2 O% U4 l* X% C$ j, `5 E5 }4 C
  1425. LDX #$00
    7 ?! ^  n+ ~4 f8 i' R' J) d* [2 V5 r0 ]
  1426. LDA #$68
    " b9 D% `  B3 a4 X2 v3 ~
  1427. STA $BA) e% Q  C7 u) \# `0 K$ l; Q
  1428. LDA #$22+ k6 o% {- `1 Q: `+ s# Y
  1429. STA $BB  I# |0 L2 ^8 F  W- Y* C
  1430. JSR B_TO_JMPSTG_WRITE4 S' @8 E0 x% z
  1431. RTS
    ; _! \( Q. [' H1 H

  1432. 9 G- U1 A. r) _0 _

  1433. 0 @7 O4 N- v, D( ~+ I
  1434. A_TO_PLAMOD_STRING:" O+ e5 w$ v8 ?
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$801 Q4 o8 E) M" K5 u- k% L

  1436. 2 @" S% q" n3 ]+ ^0 O: V! d

  1437. ( ^# S" ^: b  u$ j+ f5 r: a6 u( c
  1438. A_TO_PLAMOD_WRITE:  _6 c3 x7 I) C4 L
  1439. LDX #$00/ m! B' o, o: v# |# K
  1440. A_TO_PLAMOD:' V0 S  b' d; u& r4 _
  1441. JSR PPUADDR_PROCESS8 q4 H3 ], B8 |$ d) X( l
  1442. LDA A_TO_PLAMOD_STRING,X
    4 Y3 G' ^' W) D  u6 t3 U* C
  1443. STA $2007
    # Q1 |* s4 p2 [" M5 l
  1444. LDA #$009 V0 n! @) A8 g. B  C4 Q
  1445. STA $2000
    1 v& h4 `: @( q6 K
  1446. INC $BA
    # Z- n0 B8 ?' W
  1447. INX
    6 Y& w. r* g: m
  1448. CPX #$0D! l1 P% a3 E: E# V, t8 n! o
  1449. BCC A_TO_PLAMOD
    . B8 n( C0 J8 O3 Y' r
  1450. LDX #$00( @$ u' V4 B3 f, r
  1451. LDA $39
    2 R$ I# ]! O* @
  1452. JSR ONE_TWO_PPU+ z; p8 F4 s( @
  1453. RTS. o$ n9 Z( v% @, ]$ F

  1454. / m* \8 u' \( V5 v) q, t
  1455. A_TO_PLAMOD_PPU:5 h5 a/ d9 ]0 p- I% C1 w+ v( Q4 }
  1456. LDX #$00; J& A% U; M2 ]* i" X' P5 Z
  1457. LDA #$A8
    ' o3 X' |: |/ X7 j% m% Y  |! b6 M
  1458. STA $BA0 W1 @. w; V) e* F+ ?
  1459. LDA #$22
    0 O$ {8 u. B2 |7 c3 h
  1460. STA $BB
    + W" _( r$ Q' f; |5 @+ e, X* b2 L% T5 W
  1461. JSR A_TO_PLAMOD_WRITE7 [* Y( b/ Z/ Q5 x
  1462. RTS9 D3 Z2 q. W: ]
  1463.   _) b7 F( _- q
  1464. MOVSPE_STRING:
    ; n( d5 e% Z  `7 B; Q( r6 d! }
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    3 |& K3 m  `) n1 z
  1466. 9 S/ \7 u+ W2 k6 b) s$ q8 h7 |  w
  1467. $ v; I' U, H  R3 n
  1468. MOVSPE_WRITE:! k* j3 w& Z1 e  s$ y5 ^, b% D
  1469. LDX #$005 F4 L& ?9 H# `8 H
  1470. MOVSPE:
    ' |) U% Y1 u3 q
  1471. JSR PPUADDR_PROCESS
    0 D& j* }8 p- b# F
  1472. LDA MOVSPE_STRING,X
    + W/ {  e* k1 ^; C0 B1 O3 F9 \
  1473. STA $2007
    % Q1 \) T- [& I! X- Y, a& s
  1474. LDA #$00
    + }! X1 b3 a0 F1 W: |  |# g. ]9 G
  1475. STA $2000: V2 \8 t& `' W. w+ t! N) ]
  1476. INC $BA
    ; I5 [# J- c! h& p2 R& v
  1477. INX
    / C" w! Q/ j8 w3 u- @
  1478. CPX #$07
    5 [) F0 p. Q0 [
  1479. BCC MOVSPE; e" _' d7 h. L; `0 Z* b/ a( ]
  1480. RTS
    " @# L+ H5 N" _: [/ i5 _
  1481. 3 J3 \% c+ ^" W5 c& h" S% D
  1482. MOVSPE_PPU:- v; U  G+ C/ r" S; C# c
  1483. LDX #$00# C2 C3 \$ c; ]! g6 ^
  1484. LDA #$69
    - i# p" e& z' E/ V" ?# F
  1485. STA $BA# v0 W* g$ k5 k& ~0 {0 X& O& e
  1486. LDA #$21
    , P' x: _: ]1 F( d" G9 k
  1487. STA $BB# c& b* t! T' t$ F
  1488. ; X, Z: e5 ?/ n

  1489. 0 `/ D& d7 e3 |6 \# A& j
  1490. JSR UP_PPU! n' I& f; W/ C; l. f: c0 n" q# g
  1491. JSR MOVSPE_WRITE) z7 `! P1 b! g+ ^" X
  1492. LDX #$00' I4 o9 F$ E! r' N# _: t
  1493. LDA $079F1 X, M+ R, d; W
  1494. AND #$08/ C' _- z4 p8 _  f3 ]% W  R. O
  1495. JSR ON_OFF_PPU, N3 T, J+ T" |* q6 n9 q2 M: M6 m2 }
  1496. LDA #$80. F' I' h! f( C; H
  1497. STA $2007
    # F5 m, X6 S$ l# Q8 q  U9 p8 V- @
  1498. RTS" f0 h' T" E) O, t  V# Z
  1499. 4 N0 H7 B  ^, E4 ?. ^
  1500.   3 \- t, ?# w# D0 y3 ?
  1501. UNLJMP_STRING:! O+ x3 h% S; N- Z) \$ Z
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80" J( |- U- M! s: j! z7 R  q4 S2 W1 R4 u
  1503. ( @* a9 g5 n8 z7 L: ]. O4 M. f. s

  1504. ! B, w2 @, O; |! W
  1505. UNLJMP_WRITE:2 C; h. X7 f) V) }" d, U
  1506. LDX #$007 N! @" d4 {4 u
  1507. UNLJMP:5 R* P; U+ v! X9 b* Q! d$ ^" t
  1508. JSR PPUADDR_PROCESS3 G- @2 p) _* W0 D5 x8 [  U
  1509. LDA UNLJMP_STRING,X
    $ x( H1 `3 X. Y6 ^2 s) U* c
  1510. STA $2007# y* l; R# d6 R
  1511. LDA #$00# Q2 W) ?& b8 f8 B6 h, R
  1512. STA $20007 z4 J* K0 O7 o, r+ C) ?: Y
  1513. INC $BA
    + D: l$ q# i9 l3 B  H! {
  1514. INX  x* W- w+ x6 |/ U4 k
  1515. CPX #$07
    6 k" q$ \/ |) w. d3 E  J4 U
  1516. BCC UNLJMP. e( p8 o# j9 S) T% t# c  j1 }
  1517. RTS
    " U. _' N0 f8 b

  1518. 8 ?( I5 o6 n' S0 T* B
  1519. UNLJMP_PPU:$ J) m$ Z# V( g6 k8 d8 p, A9 Y* h
  1520. LDX #$00# t& g6 {$ C4 T  H0 g# g1 k6 U
  1521. LDA #$A9: u/ P9 Y! U* \4 o3 O5 L$ n$ \
  1522. STA $BA! V2 E0 O* `( n; t8 `2 R
  1523. LDA #$21* h! A( c5 m. m- k
  1524. STA $BB, M0 @/ }6 W9 T. }
  1525. $ P. |  \4 e5 Y, y
  1526. % O/ B1 y$ r4 P
  1527. JSR DN_PPU
    & I1 a+ \& U# I$ s. m
  1528. JSR UNLJMP_WRITE
    2 R$ k5 `) p9 H) Y' r& {
  1529. LDX #$00
    0 m0 B% o. ?1 H- z# _) D8 c
  1530. LDA $079F
    6 A. v6 q# Z6 k/ C3 B4 `- {
  1531. AND #$042 ?& D' k! k- j! A
  1532. JSR ON_OFF_PPU3 O. }' n$ q  f/ |( v( P; z
  1533. RTS: L- ~) v& D0 g

  1534. % y+ N3 M' _8 l

  1535. % q* l! Z( C/ @
  1536. DESTRO_STRING:$ N3 s* q# `: O
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    , Z2 C# o6 ]  a( A- {

  1538. , o3 M6 C6 S/ `1 s
  1539. ( S2 i/ s+ p0 ^" g3 n( s
  1540. DESTRO_WRITE:7 t& @. W4 G% y; t- H1 B
  1541. LDX #$00
    % j2 t) l$ o9 z" I' k0 u& u
  1542. DESTRO:
    + b  G2 y% x8 t9 ?( \
  1543. JSR PPUADDR_PROCESS
    9 A; s4 O/ w9 D* h3 s5 A
  1544. LDA DESTRO_STRING,X
    * O9 E! @$ l3 h5 Y5 y2 N; Y5 _) f
  1545. STA $20079 c, q  [4 I. }* W+ A; P% F
  1546. LDA #$00
    ( W0 H/ E0 F8 `* F: [0 v% K# P% j. ^
  1547. STA $20000 h& J7 S1 g6 ^& r4 y
  1548. INC $BA! y, J& Z# j" {
  1549. INX0 R% r: i! D; m3 u; S& W9 F  {
  1550. CPX #$07# d, T3 F; N% \  A
  1551. BCC DESTRO% s1 J6 l3 n/ i) W4 \3 h
  1552. RTS, D" P; b* C; @8 t
  1553. + L6 u( p2 Q1 c5 i% A% V) ^4 t0 W# t3 a8 y
  1554. DESTRO_PPU:1 B" T2 ^+ t. y" X( ?: O$ y3 g2 Y
  1555. LDX #$006 ~# g3 c( I1 h# p# H; e
  1556. LDA #$E9) y) A: v" s" y5 S8 z
  1557. STA $BA
    % q4 s  N1 r* T3 x$ @. P; m
  1558. LDA #$21
    0 f) h) D: l! ~9 Q( @, C3 i
  1559. STA $BB
    ) b& S" ]+ E% c. ~8 _! u% W

  1560. . N% [' C7 s7 D

  1561. * @, ~: H1 o; ^
  1562. JSR B_PPU6 y" r2 q+ }& w
  1563. JSR DESTRO_WRITE. V' J" y; ?0 o, o7 O+ G9 ]
  1564. LDX #$00" [, G  T, N3 d2 N3 C* R
  1565. LDA $079F8 r& J5 T8 z2 R3 q  @
  1566. AND #$40
    7 z* L& F6 s& ~0 I9 K5 I0 i/ k
  1567. JSR ON_OFF_PPU" T2 x* k, D$ S) T3 ~6 D
  1568. RTS
    8 j/ }% y& C. ~# W4 u4 h7 Y
  1569. * T$ A" L; [, M, D) t

  1570. 9 a2 \# ~/ X$ X# I: S# F( N
  1571. EQUBUL_STRING:
    1 k+ O! a! L' `0 f
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
    3 Y. X* p1 c. G$ b
  1573. ; y# R9 ~# |# `  Z( Q, k9 |

  1574. ) o; u0 d5 Z  q1 z  E, W. ^3 R! w
  1575. EQUBUL_WRITE:! c- J2 `' Z; N# J& t5 R: S  Z
  1576. LDX #$00  v1 h% |& h5 d1 [: k' t7 h
  1577. EQUBUL:& \5 f9 ~5 x- d7 |
  1578. JSR PPUADDR_PROCESS9 ]3 K/ G4 q3 j- A
  1579. LDA EQUBUL_STRING,X* s& O* \, P' G2 g1 |9 V; q* q# b
  1580. STA $2007
    4 O& @1 l* M0 z
  1581. LDA #$009 Y' F' S- x% i$ _' U
  1582. STA $20007 h7 e, I* R- t! M. z
  1583. INC $BA4 e; `. {6 f  P/ M7 o; u( q% f' C
  1584. INX. q6 V5 ~) n: Z. ?( [6 Y
  1585. CPX #$074 k/ s7 M% W: L% g+ Q5 ?( \0 z
  1586. BCC EQUBUL) [% x2 |) S; r" ~* H
  1587. RTS, v' [4 `; ^7 E: Q

  1588. : K8 L# G: Z+ ~9 X. G
  1589. EQUBUL_PPU:- J* \( H- s3 w" J; j
  1590. LDX #$00: J! y* N$ C! P- b: x
  1591. LDA #$29
    ! V6 b' |' h2 m! y2 T" p% O) o
  1592. STA $BA3 R0 z5 c$ {, V8 b7 O
  1593. LDA #$22
    ; z. J; J% Y. {3 K/ r8 l
  1594. STA $BB
    * m3 e* V9 J6 n8 o2 r0 Y2 {  a
  1595. ( F. _- n2 [% Y6 B" r

  1596. 3 d+ G# y- [/ J7 c7 I) w9 X% s$ f
  1597. JSR A_PPU
    5 l0 l. {* ~% v8 q1 p" @' W
  1598. JSR EQUBUL_WRITE
    1 F1 N! Q# j5 y% _- o
  1599. LDX #$00" ~) P$ g' y# N+ X; ^$ K3 W
  1600. LDA $079F
    & [; Z& U! s; q+ A6 o$ ^
  1601. AND #$80
    9 f1 I; j. C  u* A' W/ z' Q6 k7 v% T
  1602. JSR ON_OFF_PPU
    ' E6 ]- S& d% V
  1603. RTS
    8 D: i  {" R: e' \( g  y6 v; y

  1604. ) c( N% u1 N# M. P

  1605. 5 T1 P6 ~, \1 a0 {* x

  1606. . i& S8 I" W% X8 Y8 ?
  1607. BULSEL_UP_STRING:% c) \( w/ V. a! l; S9 \0 F
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    0 w( I5 P( h2 M' G0 W
  1609. + f% m* ~+ K- m5 _. ?7 u
  1610. BULSEL_DN_STRING:- [, Z' p+ E. W. u6 y! i
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80
    * F: ?. W; L% k$ P; G9 X0 `

  1612. 9 ~7 |, |! e: r. N/ N  I( f
  1613. BULSEL_LF_STRING:& ?& c: ]0 D1 Y) f% @  [
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80
    / B" J1 V) j" g9 C

  1615. 3 p# T6 k9 [" p; a3 p1 }- d
  1616. BULSEL_RG_STRING:
    & p3 h& `- d# k8 `. R4 z* k' m
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80" B. D% M! d: m9 D" Y

  1618. 9 s# i9 T$ D5 [! P5 a
  1619. BULSEL_B_STRING:+ t: h0 P# \0 d  [
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80) k; o# D; ?/ l- f9 Q2 n8 Y5 _

  1621. 1 c% V- I1 d8 r! b% K- A4 u: O( o
  1622. BULSEL_A_STRING:1 Y; D! W- T: ]  t( H* f2 z, ~2 P  J
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E1 l- w+ T. R2 h3 g
  1624. 4 Y+ Z; D" ~0 l
  1625. 1 }3 }* ~5 A  j* b3 {
  1626. BULSEL_UP_WRITE:( `5 M0 \+ {, V$ [' \% [( z
  1627. LDX #$002 N! G, N! L. |1 F9 k
  1628. BULSEL_UP:: `) d6 o9 f, w5 v  L, p( \
  1629. JSR PPUADDR_PROCESS
    9 n1 p! l9 \/ x2 {1 r" Z$ C& M3 ~- Q$ i
  1630. LDA BULSEL_UP_STRING,X- [3 `/ F$ v# r0 J2 I
  1631. STA $2007
    ! u- N" e1 n, w) ?4 S3 u
  1632. LDA #$00- Y/ V; j6 s7 }0 h' N: h  Z
  1633. STA $2000
    ' e' y1 r9 |, b
  1634. INC $BA
    3 ]5 J% k) D( Y: A4 @
  1635. INX# N* R5 o3 r1 P: q1 r( ]' u
  1636. CPX #$09
    7 Z( j2 X! P( _3 I4 ^. D
  1637. BCC BULSEL_UP
    , S- S8 o% v3 W
  1638. RTS8 \* `! Q; X' X
  1639. BULSEL_DN_WRITE:+ V" K: r% L* P, r8 W4 C# q1 M
  1640. LDX #$004 }  M, G9 u9 e2 m; t* ~. R
  1641. BULSEL_DN:
    . C$ @  v- [, n/ t
  1642. JSR PPUADDR_PROCESS
    / m7 s$ [# t. n8 e5 H
  1643. LDA BULSEL_DN_STRING,X
    % H9 T- |4 D5 u; o3 ?8 z
  1644. STA $2007- J' o3 o, i4 l: v& @1 l9 H  H
  1645. LDA #$00
    , p* n% [# k* ^% C3 n- ^
  1646. STA $2000, n4 ^* Z; Q2 x4 p$ R/ Z, G8 Y) j5 S
  1647. INC $BA( W& L- X' H) m3 a; a( H
  1648. INX
    ! K, w2 b$ p3 m
  1649. CPX #$095 h( t$ P/ u& ?  x7 p
  1650. BCC BULSEL_DN
    - Q7 M- A% t) D" T+ J
  1651. RTS" a3 J4 s% S9 ]6 D5 d
  1652. BULSEL_LF_WRITE:* D0 n) u# y$ C. b% l+ V/ s- R# K
  1653. LDX #$005 \: f8 w3 m/ t
  1654. BULSEL_LF:
    4 W0 M9 z8 T% ]' [7 Z( W7 S* s
  1655. JSR PPUADDR_PROCESS
    ; M7 q/ R5 c3 n" b! l1 n7 Q
  1656. LDA BULSEL_LF_STRING,X7 X% |1 Y9 I" ?- F# h) Y
  1657. STA $2007" x! l, Y3 U8 ?; q' P2 i
  1658. LDA #$00
    - g/ T4 M. |& T# ~9 R* ]: m
  1659. STA $2000; I9 W, Y) y- O2 S, H4 b- m. s
  1660. INC $BA+ c% T. ^' \, q  t& O. N
  1661. INX2 u* S9 R$ p2 `" x+ m# u
  1662. CPX #$09& v5 c/ q- G/ L5 Q: }8 v; N
  1663. BCC BULSEL_LF
    . H- I/ i, I/ m6 J" N! M; L
  1664. RTS3 F0 z. w' W3 Q' ^/ E( x* s- S
  1665. BULSEL_RG_WRITE:7 }$ x& u% ~) J- i9 G" n
  1666. LDX #$00
    ; u" p: R) T0 {  ]
  1667. BULSEL_RG:
    * M( l, m9 r; P/ b8 q5 O$ N% t
  1668. JSR PPUADDR_PROCESS1 J* ^/ [( V. W5 U! u
  1669. LDA BULSEL_RG_STRING,X
    4 W& o/ I, n; G+ I
  1670. STA $2007: A, K! y4 |7 g) P) e/ y: H
  1671. LDA #$00
    ( E8 u0 J, e* k4 D4 h( d
  1672. STA $20001 f' F$ W! _' ?, V
  1673. INC $BA
    8 G; ~% M9 d2 C* J) |6 E
  1674. INX
    , P  l# M. y* N2 N; x6 F
  1675. CPX #$09
    % {* P. V2 }/ Y  C( c
  1676. BCC BULSEL_RG  \0 o- ~; G9 Z
  1677. RTS) F) ~8 D& B7 R
  1678. BULSEL_B_WRITE:
    " y* U3 t4 M! Y( ^2 R
  1679. LDX #$00& g) }! ^! {# g4 V; E
  1680. BULSEL_B:! e( V& I% N8 z8 X2 C
  1681. JSR PPUADDR_PROCESS; F4 d# f3 C2 F  z
  1682. LDA BULSEL_B_STRING,X
    6 Q! R# }( B$ V
  1683. STA $2007
    , f1 p! g$ s# H: f
  1684. LDA #$00' M. i6 N6 h& y
  1685. STA $2000
    1 U/ O- D, ~% G/ {! ~$ a
  1686. INC $BA
    1 o- ~4 n2 D$ b% J  g
  1687. INX
    . a, q& h# T1 E2 V8 T* d8 V# b
  1688. CPX #$09
    4 `* d# k9 u$ G; v2 P0 W- a3 O5 T
  1689. BCC BULSEL_B
    : Q4 f% O7 \  _1 z% T  o
  1690. RTS
    6 a3 w7 j0 r; {
  1691. BULSEL_A_WRITE:+ J! p+ `4 l9 e. k8 M7 i$ J
  1692. LDX #$00
    % b6 F) l& [/ i) r) z! H
  1693. BULSEL_A:
    9 ~: G, }; G9 b% a! I8 L
  1694. JSR PPUADDR_PROCESS/ `; R5 u' P0 g9 h9 N8 f
  1695. LDA BULSEL_A_STRING,X
    8 P1 b% F% S# x; J+ s( j( U
  1696. STA $20070 g8 N0 i3 m+ m2 F1 A5 r1 e
  1697. LDA #$005 d7 x" s6 Y- g; N% I2 X! `2 q8 Q
  1698. STA $2000! T: M- m! a  e( j. Q
  1699. INC $BA
    + ?2 }$ u; v2 n- {( Q$ L
  1700. INX: b& I6 H! J' z* D, a4 {1 d
  1701. CPX #$12$ z' Y2 Y! i5 q7 E! _+ M
  1702. BCC BULSEL_A% u5 B& T1 y. M( s+ u( q1 D" T
  1703. RTS
    ! R: D$ v0 |; `+ U5 C& V# t

  1704. 8 |! N* a$ t1 u* {. l) d" O7 p
  1705. 9 d3 ^: R1 D" q# N# D

  1706. ' U+ j" H2 [  F8 U: D
  1707. BULSEL_PPU:" ]9 u8 M5 E: u) A$ \
  1708. LDA #$6C0 n, C# y1 o! y& ?
  1709. STA $BA
    / U* @  s7 U; U4 c2 E" O+ s
  1710. LDA #$214 Y+ d5 y/ V$ Y8 \
  1711. STA $BB% q" L  g( u# a/ o8 _
  1712. JSR BULSEL_UP_WRITE" s5 g) r. J  j  h0 E- U+ ]) N* E
  1713. / ]- M5 q% t! z2 M% w( \* ]$ W7 _
  1714. LDA #$AC
    : p; x1 P4 \" F! P, K
  1715. STA $BA+ s$ v1 a" ^& a$ m
  1716. LDA #$21
    1 s+ Z. Y8 q& i( G% @: f0 `
  1717. STA $BB
    5 U2 c' i: m6 @" Q% o) S" N
  1718. JSR BULSEL_DN_WRITE  Y, h/ |, L$ E! J7 o: H0 m

  1719. 2 o# ^( D% E  {- k7 k5 m! u
  1720. LDA #$EC; H5 \# ^* v+ n# W8 F0 r
  1721. STA $BA
    & H9 E5 F4 l8 D9 b5 t8 h# H
  1722. LDA #$21
    $ \  i! P5 U! D5 h. q9 t
  1723. STA $BB8 e6 C8 |) R4 J' e% A# U# r
  1724. JSR BULSEL_LF_WRITE
    & `; ~/ ]% k/ G9 R/ [

  1725. 5 @; s6 B8 X7 W4 U+ N$ _
  1726. LDA #$2C
    9 J8 J: ^6 t/ g; [1 x- w, y
  1727. STA $BA
    ' n5 o% y9 B8 R3 |9 M
  1728. LDA #$22+ f& P. t7 \) Z$ C$ p- ]/ [6 O
  1729. STA $BB' W3 c% e7 c$ Z! l4 L+ ~2 `
  1730. JSR BULSEL_RG_WRITE6 q4 A( y0 j" |) d: _* p7 q9 ?# S2 E

  1731. # k- y8 o( u3 ?# X; _
  1732. LDA #$6C
    . ~  }: M! Z2 Y0 x: z( R
  1733. STA $BA
    7 t, @2 H/ B  g5 Q. \3 R, J4 X6 `/ C$ M
  1734. LDA #$22; s$ b- s0 b3 J% c7 o$ W" d  |1 V
  1735. STA $BB/ u& @7 d. T5 E) n1 f9 t. s6 p
  1736. JSR BULSEL_B_WRITE# e. h* Q& U% J2 A% x( q  k

  1737. ; E: q( P  v0 A5 S# b
  1738. LDA #$A7
    # \( S4 i. {9 h
  1739. STA $BA, I% E2 B+ g4 t! a4 s2 c
  1740. LDA #$22" \6 c' l4 b  L
  1741. STA $BB' M  C! R' ~6 w; u  I& [
  1742. JSR BULSEL_A_WRITE/ G6 \$ E0 r7 {/ }: N) z
  1743. RTS
    - Q6 E- D. X; n7 ]

  1744. 5 j& ?) w* X9 g" d- a

  1745. 6 y1 {1 J3 N3 D( `

  1746. / o; }' G3 x- C/ k$ v
  1747. UP_STRING:0 l6 x7 ?! D9 r) h) ^! h
  1748. .BYTE $9F,$9A,$80
    : s! Y. K3 o" L  `1 _3 c$ G1 H

  1749. ! S: w* ?8 `1 c
  1750. DN_STRING:
    1 g1 b5 O& F/ o/ y, f" Z* J6 T- d4 ]
  1751. .BYTE $8E,$98,$80
    ( z6 z' h  O% p
  1752. * U. E# ~1 ~: ^3 z7 [1 d- U' [
  1753. LF_STRING:
    % q2 N" t+ Y1 w3 P* w& I& b
  1754. .BYTE $96,$90,$80, H% K6 c- G" W) Z$ ~

  1755. 7 t# o  j9 \3 v1 H  h. q
  1756. RG_STRING:* }5 L5 H5 t8 f& q+ E0 g; f9 L
  1757. .BYTE $9C,$91,$80
    4 p( w" I9 ?( N) d
  1758. , |# @+ O. Y( a/ }4 b! ]4 H6 B
  1759. B_STRING:5 e8 D# V3 K" S. |
  1760. .BYTE $80,$8C,$80
    # a7 o, N  X, t# Z6 P8 e  G

  1761. % ]0 `0 ^7 X+ K% [3 e; w, t
  1762. A_STRING:* y6 Q+ {# C/ U2 V2 [( m- h( _
  1763. .BYTE $80,$8B,$80  s8 `; ]: u- S. M2 {2 ~( x

  1764. * ^; P3 O1 H: [0 i0 k

  1765. & I/ S) e5 {# m" j# g
  1766. UP_WRITE:2 b  q9 T+ x+ [6 N: v( I
  1767. LDX #$00  K; e$ Y( |4 }8 u$ l
  1768. UP:
    % c+ @0 H* S! p6 r& S
  1769. JSR PPUADDR_PROCESS) {! _2 h# z% c9 W
  1770. LDA UP_STRING,X
    ) N3 P! `0 j% @
  1771. STA $2007
    ) e- S. O  l& c9 c, Q. ?9 D" E
  1772. LDA #$00: p4 R) C% ?' O* e  H
  1773. STA $20006 t# ^( ]- S: s' {( y9 Z4 a. q
  1774. INC $BA
      g, d% y) l! {1 s
  1775. INX
    0 M9 h: j% F# ?- ^) _$ g) K
  1776. CPX #$03
    3 G+ A2 W: |# }1 H# t2 k
  1777. BCC UP& Q1 [. L0 o( ~& o; g
  1778. RTS
    $ ]" V; b  K. F7 X0 M8 ]2 x
  1779. # l) R1 _1 P% W  i0 {9 S4 N8 o! P& R
  1780. DN_WRITE:
    1 c* f( M. V( z. Y" I3 D( |' c5 R
  1781. LDX #$00$ N% a9 k, C2 F; B: ~
  1782. DN:5 }: t0 z/ m. d0 e
  1783. JSR PPUADDR_PROCESS
    : L/ @; z5 j! }+ e4 h
  1784. LDA DN_STRING,X
    ; h8 t+ j8 J/ m. g  s1 W# J7 J
  1785. STA $20070 G. L  I; `9 w3 s; T  X+ _
  1786. LDA #$000 d$ h( O' }8 V' u) ^
  1787. STA $2000' g9 A; m/ O. I. a6 G
  1788. INC $BA( @4 m, U- b1 y" X. L, I
  1789. INX
    ( J# _9 y- D% i4 \
  1790. CPX #$03
    . i" F: O' Q8 e+ y# X+ h
  1791. BCC DN
    $ Z2 o! M3 S# G, z: i
  1792. RTS/ Y- @- D) |- K

  1793. 4 d+ [/ K* ~, u0 \  G6 b* t2 S1 d
  1794. LF_WRITE:7 L' j9 |" J4 Q4 ^! T+ B
  1795. LDX #$00( k) ~1 w  S, n! w: {7 s% W
  1796. LF:( Z- K" ^3 I- U2 D' [
  1797. JSR PPUADDR_PROCESS
    - u% H5 u5 k2 L1 L/ d: o
  1798. LDA LF_STRING,X
    ; p9 M/ g# y" o
  1799. STA $20078 n/ F' \% ~/ u# G
  1800. LDA #$00, v/ Y/ V* e; h3 k+ Y' B: `3 Z" d
  1801. STA $2000. c8 [  x( N- [! n+ e) p
  1802. INC $BA
    & l2 {( c1 b9 W! |6 K" S0 ^
  1803. INX
    + u2 R+ q8 u* R9 X# ~( ?' S
  1804. CPX #$035 X0 `6 _1 H" G/ E  g
  1805. BCC LF
    5 r/ n/ }9 c: O, v
  1806. RTS
    ; G- f$ k$ b  {7 a( t' x7 j
  1807. ) m/ s  ]6 p# u7 \! \" p' Y
  1808. RG_WRITE:9 O% \' ~& W! s8 D: Q& ^/ \
  1809. LDX #$003 M* ^8 N' C) j
  1810. RG:
    % J8 N8 k+ F, m0 H/ R
  1811. JSR PPUADDR_PROCESS
    : J. A/ r1 t) `" ^' j- x8 m
  1812. LDA RG_STRING,X4 r) Y8 i2 a: _; U+ v% Y& M% E
  1813. STA $2007' g$ P( Z! _4 O# g+ O. l) T
  1814. LDA #$00
    / L4 v( O6 v9 H0 P7 {1 ]
  1815. STA $2000& n  O4 o& y4 w7 m# v1 {/ e/ d; r- \
  1816. INC $BA
    ! M, P" t; g" g* t; O& m" H
  1817. INX
    9 _5 q; I+ M2 w/ u8 }
  1818. CPX #$034 n3 D( Q8 Z0 {( ]% f, U. I$ g
  1819. BCC RG- u$ G: x- u, q& Y2 \) t0 P
  1820. RTS& K& ]7 O  T3 m" I7 B

  1821. ' q3 x+ Z4 I! U1 K
  1822. B_WRITE:& U1 u7 d! A2 t2 l
  1823. LDX #$00) G6 m. G2 V. K% B9 x
  1824. B:
    8 ?0 @: O# g, G& T& ^2 L
  1825. JSR PPUADDR_PROCESS: x, Q( K# x" ~8 J. |. j8 w
  1826. LDA B_STRING,X4 V! \* i- K; {
  1827. STA $2007/ ^& c* X& ?. T# f& d
  1828. LDA #$00, w2 G2 `7 {/ A1 e; j. O5 A4 x/ G
  1829. STA $2000
    - G# C% P& T# \6 `, q! R, ]& ~4 L8 F
  1830. INC $BA
    0 W; U3 U( D/ L6 i" i
  1831. INX  x/ C, W- P6 M1 d' M. p
  1832. CPX #$035 }1 X7 U2 e$ t7 k
  1833. BCC B1 i" w, P4 K* N. k: j1 o- _: M. g
  1834. RTS
    7 q* j/ ~. K' v; A0 F$ _7 d$ K. n
  1835. 4 W* i- b, r! Q6 y
  1836. A_WRITE:
    * s$ ^! u: v2 \2 T- b3 p) d' D' K
  1837. LDX #$00  y1 j$ h; }1 p
  1838. A:
    : k! ~1 G8 i6 P% o9 ~6 z  i
  1839. JSR PPUADDR_PROCESS& R' h2 D4 ?* @  j# D/ S
  1840. LDA A_STRING,X9 `! Y6 v* I" W
  1841. STA $2007
    ! f7 f9 H3 M9 c
  1842. LDA #$00
    & m  {9 q$ ~+ R5 [& c5 K
  1843. STA $2000
    , B: n& M0 t, p8 s% x
  1844. INC $BA( S5 Q0 e# ]9 m' C. ?- E9 A! g
  1845. INX3 s* L  D4 l' `6 P
  1846. CPX #$03
      I4 q# X+ [5 z7 W
  1847. BCC A4 T/ A9 Q8 s8 `% Z0 y" `  i! H% v9 h
  1848. RTS
    ( b& b! s" @. x+ c  @8 F2 p9 H
  1849. + ]: m) w9 y( J" ~2 q% ]9 [" H

  1850. " U7 h* R! F' i( |2 A: k
  1851. UP_PPU:
    8 K8 B3 A- O/ ^8 K" M; y6 C
  1852. JSR UP_WRITE
    4 q3 M+ X8 f6 `2 T: A
  1853. RTS
    / ^: W" K6 R* N: i% A  i+ N

  1854. 1 r; D; I$ `; I6 Q& P8 Q
  1855. DN_PPU:
    9 I0 W3 |( I, h/ g4 a: G5 f5 _
  1856. JSR DN_WRITE' W4 E; a' w* r, k
  1857. RTS8 H  e5 l5 Y3 w" B9 s
  1858. 1 M! A3 Z0 c8 a% S. r, S
  1859. LF_PPU:% Z* C1 H/ ]5 k2 v- G
  1860. JSR LF_WRITE
    # s- ?2 r, A; s2 e1 ]
  1861. RTS. e/ Q$ V0 @7 J% [% G

  1862. 1 ^. q) a" r, E
  1863. RG_PPU:
    8 s! ?# k7 z* C% u5 Z0 ?
  1864. JSR RG_WRITE
    $ {; {$ |- [6 P$ I4 h8 F7 ]
  1865. RTS* `0 q9 x; ~' i" k0 q, q

  1866. & x/ H( |8 \" c' l$ A$ T1 Q
  1867. B_PPU:. s0 @% j1 H! {% }3 k) m
  1868. JSR B_WRITE
    ! \. Y# C- g, B% Z% y( d
  1869. RTS
    ) e. w0 g6 @0 i/ A5 h3 }

  1870. 3 _$ p/ X& t0 d. r4 w
  1871. A_PPU:
    + @2 W+ q: h5 Z4 v0 [6 x; w
  1872. JSR A_WRITE1 B+ D! f# N2 l4 S0 S: r5 ?
  1873. RTS
    . U9 l- Z% k' w2 ?6 [/ v
  1874. 7 f- [2 m  O  [0 F0 g. c- y3 h# q
  1875. 9 K& u  b4 u3 E. k' Y# z% M
  1876. PAGESELECT:$ D# b' ?; f7 H- a
  1877. PAGE0:, f3 r- Z5 C0 b6 w: ~
  1878. LDA $07AA8 T2 ^- }" K3 ]" C8 [; B0 r1 w
  1879. CMP #$007 T0 J( e6 s% I5 N5 Q, r5 w+ g- T
  1880. BNE PAGE1' `# K0 h% q' N. g8 B# e& C& u

  1881. - q9 k3 d4 P* O4 b2 H
  1882. PAGE_00:
    ) j* S4 J; D! \+ Z8 X$ W7 [
  1883. JSR BULSEL_PPU
    . s( h2 K& z$ s& \0 K9 [
  1884. RTS
    & B9 G9 }4 S2 Y" V6 Z

  1885. 3 v6 P* R5 `& ~4 @7 M" R
  1886. PAGE1:
    & ^; ^; _7 H! _8 a! s
  1887. LDA $07AA$ K1 j' |0 G# R4 u
  1888. CMP #$01
    ! Z8 x1 q5 P2 E( A( r
  1889. BNE PAGE21 w: K" \, j5 \  _+ @3 I

  1890. ( q2 Y6 b  f" C# t) v
  1891. PAGE_01:
    * {' X) N5 [3 X: R4 [
  1892. JSR INVINC_PPU
    / p7 v, T/ W$ l+ A( O" Y3 E
  1893. JSR LIFELC15_PPU
    ; t$ [, n( R$ e  c
  1894. JSR DOUCON_PPU
    , @" X1 [$ Y/ A; n
  1895. JSR KILLON_PPU
    ' J# r4 k* a% y% i6 L' [2 s& \# K
  1896. JSR SKYFLY_PPU/ \& ]% a/ Y3 F
  1897. JSR LIFELOW_PPU
    3 T% r9 Q, H; t- G  ~( K' e
  1898. RTS
    5 y& `  l$ A1 u$ Z* K0 v
  1899. . _' G7 U% P" \: |/ M( C
  1900. PAGE2: / j  g* d3 [, ^$ s! k! T% a3 w) X
  1901. LDA $07AA
    6 R. y  [" f4 l+ G$ k1 [7 D
  1902. CMP #$02: W8 B' t. s+ h" D
  1903. BNE PAGE3
    2 p! @: U% z- P1 x: y! D
  1904. ( o8 X& w/ L9 ~  Q
  1905. PAGE_02:0 t( j9 x* A0 q0 p  S& G' a
  1906. JSR BULADD_PPU4 H7 g6 y. [0 e* _: J( E
  1907. JSR SKINGE_PPU
      ]* ?! g2 B( y4 N: Z
  1908. JSR BULMIX_PPU. ^  d7 w. T% z2 M: ]  J
  1909. JSR ENELOC_PPU! o+ j+ v, m- Y1 l4 l
  1910. JSR FOCFUL_PPU' [6 E' j  M  k- t7 a( O
  1911. RTS
    ! j, p2 j5 _% r9 h+ j6 G5 i/ Y' i
  1912. ) k% x7 c$ R/ {3 a$ Z% `5 E$ E
  1913. PAGE3:
    0 A' n0 G5 E6 T" `- X; e
  1914. LDA $07AA
    4 l! Y6 Y0 p* Q' P
  1915. CMP #$03
    ) n- I5 K* C2 q7 a( s% v: X% b
  1916. BNE PAGE4$ L! s" m: \) Y
  1917. ! y* {. p; w" I$ n. G2 p
  1918. PAGE_03:
    % p0 n4 S- `* [; C- K6 u9 s
  1919. JSR BULCON_PPU; m4 W8 q3 M+ k$ _1 o: i9 i4 C: _8 L: ^
  1920. JSR SPEBUL_PPU
    9 }+ a; y+ w. l2 m/ ]) ?3 T
  1921. JSR CLEALL_PPU
    ) F  B! |. ?$ F" K5 J( I: |/ T! e
  1922. JSR HARDMODE_PPU# ]! V  l; C8 N1 W2 E1 b' v
  1923. JSR B_TO_JMPSTG_PPU
    0 i7 t  ^3 t. r2 K5 K2 r; H
  1924. JSR A_TO_PLAMOD_PPU
    % T+ ?' @. T4 A/ w2 R; T8 e
  1925. RTS
    - V7 x9 ~9 {: T3 s

  1926. ! x8 O" y( Y) ]
  1927. PAGE4: 3 Q4 {' l& q4 ?9 F1 \5 z! K+ I
  1928. LDA $07AA% t  `, {6 {0 d( ?' K
  1929. CMP #$04
    4 b0 p, u8 V  [; D9 u
  1930. BNE PAGERTS
    ' L9 \0 {( }( S& [
  1931. 8 n- `' K6 {! V. m4 P& K' n
  1932. PAGE_04:
    ( y6 G6 w- H5 G
  1933. JSR MOVSPE_PPU
    . [7 @! S& f& z
  1934. JSR UNLJMP_PPU
      N0 Q( J. g8 P- v) B
  1935. JSR DESTRO_PPU7 z1 S, g0 u4 K, _
  1936. JSR EQUBUL_PPU
    1 @0 @3 R8 g3 y. ]. J' ~" L" d: y
  1937. JSR MOVESPEED_PPU! n. c- R* G/ a$ f) E, _3 W
  1938. PAGERTS:) b+ V4 W6 Q/ v/ ]) ?( x# i
  1939. RTS# x$ h5 F0 j, ]

  1940. ' t" O0 m" D  H6 s' L( B- i
  1941. / ^* [7 Q. e! A% S" q* O
  1942. PLAYER_01_STRING:. B( m. |& x$ T7 P6 _3 K) E
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    & w. q+ d. Z8 k
  1944. $ {, v8 M, v6 ^* X/ g0 y. _( F

  1945. 0 S" }) y3 a8 d4 y2 Q( b* c
  1946. PLAYER_01_WRITE:
    $ s8 S+ U" l- c/ z7 h+ e/ M) @
  1947. LDX #$00
    # _* e# }. \& q7 }. k8 O) B
  1948. PLAYER_01:$ s6 p( _4 x. N
  1949. JSR PPUADDR_PROCESS
    ) U( P, j+ a7 y+ J# ]4 m' j% A3 K4 L
  1950. LDA PLAYER_01_STRING,X- G& V1 s% t7 N0 K' K, \
  1951. STA $2007
    " L( F0 k9 n2 E, k, M0 q& q7 d
  1952. LDA #$007 f/ c+ e1 w0 @% t
  1953. STA $20000 e, @  a8 v! v, i7 c- P( `5 h
  1954. INC $BA
    2 h: R. j' g6 Q, D+ K- b/ h' q
  1955. INX
      `% `& Y9 ]) ], t0 F
  1956. CPX #$0A
    2 h+ g& b. T, c" u* \4 C
  1957. BCC PLAYER_01
    8 u7 L6 ~1 a& {/ P
  1958. RTS
    4 ?9 y6 F9 a3 N* Q0 R' e

  1959. - M- S+ F' _  K% |+ p
  1960. PLAYER_01_PPU:2 `% W$ T% y, C3 k& P! K
  1961. LDX #$00
    5 h- |7 `1 S; ?" w9 L9 h/ ]2 y: Q
  1962. LDA #$64; p! N/ X& ^/ a+ t0 ]2 D% T" `' z
  1963. STA $BA5 i! H6 H0 E3 N% W8 `; a
  1964. LDA #$20% }3 ]0 W8 G  r5 x, z. P+ h
  1965. STA $BB
    $ |4 C' ]! k: L3 A8 r8 v
  1966. JSR PLAYER_01_WRITE
    , s- s, h8 Y( S+ t, o
  1967. RTS' ?: [" ]; k  [/ o, ^# t* w

  1968. 4 M; i* A* b2 a) s
  1969. PLAYER_02_STRING:
    ; X, D1 X% x1 S0 c/ b* ]
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80% v, U) b. `8 ~6 A# ?

  1971.   T, ]: s: t! s0 Z6 g+ w8 e

  1972. ' j* e3 \3 ~- Y! I# T" Q
  1973. PLAYER_02_WRITE:' Z) M! y  d( K" f
  1974. LDX #$00# _; a+ \$ x# z" w
  1975. PLAYER_02:$ ~, Y( i5 u6 g* E
  1976. JSR PPUADDR_PROCESS% x" d; S/ F4 J
  1977. LDA PLAYER_02_STRING,X
    ' }. _7 T3 U- O0 v
  1978. STA $2007# Z" [  z# _) ^6 H: X9 E1 i
  1979. LDA #$00
    9 `$ |' x9 p3 y( E/ e0 M" r/ @
  1980. STA $2000. {$ z" l% S* y( s6 b4 T
  1981. INC $BA
    8 ~! n, p: s2 k1 o1 R3 \
  1982. INX
    ! M) t: ?6 \4 ]9 n* r0 j  X
  1983. CPX #$0A
    / _& b) D: I; _* x9 ]
  1984. BCC PLAYER_02
    7 K9 B9 ~- k1 V
  1985. RTS& B( Y: G& r: a2 y! k
  1986. ; `4 ^# B' j7 o# I# H
  1987. PLAYER_02_PPU:7 o( b6 _( N  H( G+ d7 L3 L
  1988. LDX #$005 N+ |6 u1 o; Q# C, b. Q: B
  1989. LDA #$73
    9 k; e* B$ b/ @6 I3 w9 j* e
  1990. STA $BA; f9 B) w& K* c! y; @
  1991. LDA #$20- B0 ^* t3 q" u
  1992. STA $BB
    : d6 a% t& a/ x' G" L5 R! F7 I
  1993. JSR PLAYER_02_WRITE
    ' R2 F5 D+ }, ]1 @2 ?' h- u4 v
  1994. RTS
    $ W0 U9 X* }& t" @5 O$ z  j: {$ b

  1995. / c6 `9 a2 B' O- A8 t" n
  1996. PPUADDR_PROCESS:, r& j3 B+ f* A+ P: ^7 H
  1997. LDA $BB
    " z* Z# q9 K! }  \5 C( i
  1998. STA $20060 m# U2 L1 e9 F
  1999. LDA $BA: z% Y6 b( |3 i8 G
  2000. STA $2006
    ( A/ O( N2 r+ d
  2001. RTS/ a* C- n" V1 `: f, p  |

  2002. 0 F* d" ^9 S9 L6 N" ]
  2003. 2 L8 m' J: I4 H' q7 d: u  v

  2004. 0 R5 D3 u$ y( g0 F7 L
  2005. ONE_STRING:
    # u: Y+ h! ~* |- Q, l+ K( S, A
  2006. .BYTE $99,$98,$8F
    % J, l5 e5 H9 e
  2007.   _6 B: B7 |3 k1 ^9 O  Y4 V( U
  2008. TWO_STRING:, m; T& [" s# {4 Q
  2009. .BYTE $9E,$A1,$99* m  i& c: J& B6 G, F8 L5 X; x& m

  2010. - K6 v8 z. C0 q
  2011. ONE_TWO_PPU:
    / t' ]  l; a5 y2 a6 \' M
  2012. BNE ONEWR3 x2 |6 ~& _* Q& g; h, @2 O
  2013. TWOWR:
    ; X& Q( w: P3 ^* j- C9 }; H* a
  2014. JSR PPUADDR_PROCESS0 L" p. }, L9 Y' v; o( i9 A
  2015. LDA TWO_STRING,X
    7 j; d9 }, I: |' a0 e8 ^; ]7 \7 i
  2016. STA $2007
    5 @- ?9 F, J0 u% H' d; w
  2017. INC $BA
    / g) |' l5 V, y( ^' X
  2018. INX1 G( G  T1 p  r8 l  m  A
  2019. CPX #$03
    9 K! X, e7 |4 Z
  2020. BCC TWOWR6 h8 W7 r- y) i/ `" j
  2021. RTS
    ' h2 L% W1 q7 X& C2 X' z+ ]
  2022. ONEWR:
    * s5 [) F9 T5 b1 A" {8 S
  2023. JSR PPUADDR_PROCESS
    6 e# I9 r$ M. p' A5 B
  2024. LDA ONE_STRING,X2 M" ]' H$ o' V  Q5 E' c# l
  2025. STA $2007
    5 `7 f( t- U" c$ s7 A, \
  2026. INC $BA
    ; d: E5 B5 \5 A. M5 ]& n
  2027. INX
    ( [& a3 v+ ?$ f' i$ e
  2028. CPX #$03. W2 v; R1 B( \2 A9 v- c6 K
  2029. BCC ONEWR- a7 D. j5 G8 y, W( F4 m" o/ N
  2030. RTS
    & ?/ m3 k: Q% j; _) t

  2031. . ^$ P/ N$ H9 b& j
  2032. MOVESPEED_STRING:  W5 u8 B+ s7 G% }3 u
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
    * a8 l6 ?/ |! y; R* v

  2034. " d( W3 T4 `0 @# r, J2 b
  2035. 6 @5 g6 y0 u: v: h/ {7 g$ t
  2036. MOVESPEED_WRITE:
    + l3 K- p6 r+ m* H6 Z: u
  2037. LDX #$000 e" h  b1 X3 V7 \/ Y
  2038. MOVESPEED:
    3 o9 J7 D; T; \* I7 V/ ^
  2039. JSR PPUADDR_PROCESS5 g; Q2 a, c+ U5 n* l
  2040. LDA MOVESPEED_STRING,X8 O9 r6 _7 U3 v
  2041. STA $2007# |* U% G0 ?' p8 I- g
  2042. LDA #$00
    6 z) n7 H1 W. ?# q
  2043. STA $20007 t- k$ b' a8 Z% l
  2044. INC $BA, j5 n$ @* b& w6 J( [
  2045. INX1 F: W$ r2 B) p9 D. s5 H
  2046. CPX #$0B
    ! u- Y8 a/ n0 I, f4 S; U
  2047. BCC MOVESPEED; ~* N; B, D2 s5 T, e
  2048. RTS
    ; G' C1 R3 o. w. f, u- A

  2049. $ C  b% m7 S, ^  }: a
  2050. MOVESPEED_PPU:
    / L7 @- Q, L; e# G
  2051. LDX #$00( ]9 E) w/ q* ^' x
  2052. LDA #$AA
    ) c5 v7 V- ]  g
  2053. STA $BA
    ; |. f9 u1 P- Q4 f- N
  2054. LDA #$22" I& y" ^1 u& d. n% R* H
  2055. STA $BB" D' q- h; g0 a+ \" b
  2056. JSR MOVESPEED_WRITE
    ' z  I/ y* S# g; _
  2057. LDA $70033 ]3 i# a. l$ H( W) Z) a% x
  2058. CLC
    & I! ?  L6 N) h' p+ F
  2059. ADC #$82/ |1 L6 B# x0 q; h; ^- \& l% }
  2060. STA $2007
      `) S$ G/ S+ C% R6 E9 V
  2061. RTS
    : L; Y0 B* q. r" ?, O
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 549 天

[LV.9]以坛为家II

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

签到天数: 7 天

[LV.3]偶尔看看II

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

签到天数: 2060 天

[LV.Master]伴坛终老

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

签到天数: 3005 天

[LV.Master]伴坛终老

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 1279 天

[LV.10]以坛为家III

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

签到天数: 2137 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

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

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2134 天

[LV.Master]伴坛终老

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

该用户从未签到

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

签到天数: 347 天

[LV.8]以坛为家I

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

该用户从未签到

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-24 16:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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