EMU618社区

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

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

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2016-11-19 22:19:45 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 % A; j/ g. c) i% x
  O; `& n) P, n1 @% s4 \
     [FC][魂斗罗旋风终板END暂停显菜单]

# y3 [0 }- i) Z# n4 Q作者:FlameCyclone(flamecyclone.ys168.com)
- z: |, ^4 d5 u* u6 X* O. B时间:2016/11/19 21:46:00
& Q- P$ ^2 J; G0 y0 y/ `4 _! o更新日志:
* z, A' k5 c% s8 y
2016.11.19:加入暂停显菜单(共5页).6 u4 b3 w$ l. T. g2 d# M
2016.11.12:加入无限跳跃., y1 }) |' d2 z! j" ?" B' H. O
2016.11.12:加入速度调节.

2 e  m; y, Y; k+ e: ~2016.11.11:加入敌我子弹对消功能.
; ?# }' k7 \+ W8 H% d6 d; o2016.11.11:加入全屏闪灭功能.+ p5 n9 r8 {5 @8 F+ G9 n) C& X
2016.06.08:加入全屏瞄准功能.& m( z3 Z9 x' x
2016.05.31:加入弹速调节功能.
% ]: Y4 |0 j$ R8 o& G3 x2016.01.01:加入高难度模式.
8 t3 K% s( F0 r' ~* {2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
% Z; Q2 i% q3 j/ m6 ^) G) L2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.2 |* ~# L1 i: R8 l* g6 B& r1 `
2014.07.05:双人切换功能优化.- Q* |3 t) n) u% p. N1 R4 {3 y4 s% v
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.$ |8 B1 N8 b/ E% V/ q8 X
2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.
% p" p7 ~! M$ t) I- H2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.
6 t& r- f' h$ g# t2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
$ y( T9 Y0 O* B% t# U2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)+ r& |! K1 \- Z. z( L
2014.02.13:加入自动演示通关.
4 C9 K8 g' q+ B! {( t+ _# m内容:% ?/ M' j# H( g/ [/ y1 T
23.暂停菜单:        暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.2 j; u! r  C9 j, K: t
22.无限跳跃:        暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
- {/ [, W/ c, K: {( T, q21.速度调节:        暂停后,选择键4次,按左右调节行走速度(0-3级).
9 R: M4 G, c0 Q. Y
20.子弹对消:        暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.
/ I1 ^4 p. s% c7 j0 `2 m19.全屏闪灭:        暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.6 i! ^7 d7 j% `* B# c9 Z* A
18.全屏瞄准:        暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效.
# B+ N( p* f' l' h8 |: p+ N4 H8 s17.弹速调节:        暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.% f1 V1 c: V8 D) T* i
16.困难模式:        暂停后,选择键3次,右键切换,我不相信你能够无伤通关.% U8 Z& V9 ]+ w, v, ]' `, ]" s
01.子弹切换:        暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态.  C0 R/ j+ h4 f( `+ T- d5 @$ \
02.无敌锁定:        暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.
" f# o2 t) R0 h* E03.生命锁定:        暂停后,选择键1次,下开启/关闭,生命锁定为16条.1 l6 N3 M9 j0 n# B! X/ H
04.角色双控:        暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.& ~1 r) L. {2 ^6 g* N
05.生命底限:        暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.- N+ O8 u, s, H2 }! L- k
06.一击必杀:        暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.( r* W4 y1 {& f7 M( X% @
07.角色浮空:        暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴.
2 a# o7 e& ]7 }* C' l% G08.弹数加强:        暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.3 _& j* K) D! }" r
09.皮肤更换:        暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.7 ]: e, g$ @' p
10.混合子弹:        暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
; i7 ?( I$ I! Q1 S. d+ k! b8 ^  N11.敌人锁定:        暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.5 ^/ |' {+ i% s6 w. J
12.跳过一关:        暂停后,选择键3次,再按B使用,使用后可以直接到下一关.
5 w3 ^3 v  C+ c7 w7 q8 `- k! r13.单双切换:        暂停后,选择键3次,再按A键切换单双人游戏模式.
4 }* t# f4 ]* q* U1 x14.子弹方向:        暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).  W# L  y% m$ `: ]4 u
15.消除威胁:        暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。& i3 \7 ~6 T: Z
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.! r% J" L3 i+ p9 X; }# v$ H8 x
B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!) T, C5 E7 g. y* H- Y- G9 [
C.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
' ?' P6 V" \0 `, N9 @- I& `, W# d  X# j9 h
    如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
, m: ~# F$ o2 ^3 o" X1 t. M欢迎大家转载,转载时必须注明出处.
8 b8 a) ^) L6 U, R( F& p3 o
. L$ _8 `% w. p. y' j: {
游客,如果您要查看本帖隐藏内容请回复

5 }2 H- P( w9 d9 d0 t- F3 U+ m0 O5 f8 G9 A
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.
8 Z/ x2 C2 S6 z4 d+ d这几天的劳动成果如下:
  1. .ORG $B400; B5 y* Y& ^; Q+ R
  2. . k4 N, D+ N9 O; S$ C) A- X% E" u
  3. # [, i+ ?4 ?. ~0 w3 t* J
  4. PROREG:7 m+ i* s0 K1 ~* H
  5. PHA
    ) q1 b5 e) h# h
  6. TXA6 E" R8 L/ q: p3 \0 H8 E/ K* \0 H
  7. PHA
    ( V+ q, k1 K3 U7 V# C1 d
  8. TYA
    + t) k4 \; f% {" q  h
  9. PHA4 O4 u# s8 u  I# S; h
  10. LDA $25/ H  C) ~! x6 D) p( k5 {% ?* H4 s
  11. CMP #$01
    ; i# Q- O, l# F9 @
  12. BNE RE+ U$ q2 d  o+ d) ?( k
  13. LDA $010A
    ! J4 ~% X1 }( b
  14. CMP #$00& x" |- t! @! l5 C8 V
  15. BEQ P1
    7 e6 P$ z( U7 G$ Y$ {
  16. * T6 _& Y+ _$ I6 j* t
  17. RE:" Y1 v4 W* ^/ F% I4 B" ]: p
  18. JMP PPUWRITE
    " j; I* d4 F0 l( F
  19. ! y' ^! J$ B; H, I+ q
  20. P1:                ; 条件判断
    . M6 N5 |$ t8 p( ]2 c
  21. LDA $7FFF
    : e  `4 k7 b, N8 k- j4 l" K
  22. CMP #$FF) _* Z% p* f% y4 G3 o: z
  23. BNE P1RP
    8 H" n* G4 A, T  u! a
  24. LDA $7FA0- S3 {/ o2 N. t) c2 E; [( @
  25. CMP #$00
    : ?/ `9 t+ C# k, {# P2 E' Q  i0 `9 ~
  26. BNE P1CMP
    ; J4 ^! x# z+ Q4 a) z' }
  27. LDA $2001$ o" H9 ]3 r( |, Z" b1 }- e
  28. PHA
    2 H* `1 w5 f  l8 S" ?
  29. LDA #$00
    ( A- ?& \, F! s) V: s8 {
  30. STA $2001
    ) K7 G5 ?; ]. L* C6 h) V% y0 X
  31. LDA #$FF
    # R+ H9 ~1 S' U, c; N
  32. STA $7FA0- A5 E/ y* E2 k6 L
  33. JSR CLEANA
    1 F- n/ L$ ^" o8 {
  34. PLA
    5 J' P& H+ l  h- L& M" D
  35. STA $2001! h0 |5 P; I  t; E% I3 s7 M
  36. JMP PPUWRITE! F0 D3 g8 q$ z$ X9 q* M  h
  37. P1CMP:
    # @( `0 I1 k8 X2 p) S
  38. LDA $7FFF9 T" O: u; }9 s" X
  39. CMP #$00
    2 k8 Q' l) a1 x% z8 h1 b
  40. BNE RE
    - ]) A9 X2 ]( W0 N
  41. P1RP:
    & H5 R% G5 e/ L( O/ w: _7 q
  42. LDA $20021 {3 R) t5 ^/ i- g% w1 |) Q) _
  43. LDA #$00
    8 B6 l3 \7 P  r4 |% I, R0 ?4 ?( V# |
  44. STA $2001
    ' G6 ?) m( q6 G' ^
  45. LDA #$FF
    1 I2 @2 N) n7 T5 T5 U4 J
  46. STA $7FFF
    2 ~* ?' N* ^, n: v! s# m+ O
  47. STA $7FA0
    & H* c  n% x/ X0 j3 }- E7 @3 B; w
  48. JSR COPYPPU0 v  ]+ T  m& z: W' ^
  49. PIRP2:* \5 n1 n% l4 }+ s! ?
  50. JSR CLEANA
    7 p3 Q! u' E4 ?6 }; D, [/ M+ J
  51. JMP PPUWRITE
    ) |# Y" }7 Z1 V; H% L" c& f. Q

  52. 9 q: n1 S* x) W" o) F
  53. COPYPPU:
    8 p1 W0 W4 G& j7 w3 y( y* u2 L3 N& I
  54. L0:
      t: d2 M: u" R1 Z9 I! B; T
  55. LDA $30- |9 K/ i. }, {1 P* W3 R! T3 k
  56. CMP #$02
    ! X8 |" ^* b: ~$ Z
  57. BNE UNPROFC
    * {# F; t( y% J4 d
  58. LDA $FC
    ( r. N  F3 h; y! B
  59. STA $7EFC
    7 Z+ o7 H  w0 \) c
  60. LDA #$00
    : {: l: r, u. S$ j6 Y
  61. STA $FC
    1 T  A' }0 }' Y  S7 X- ]% ?
  62. UNPROFC:' [" }3 l  B; M  x8 F# e
  63. LDA $FD0 o8 `; z- g4 o# r' s# b
  64. STA $7EFD  d6 X6 @+ w, A/ n$ c! H' q
  65. LDA $FF
    1 O6 G: [: S& s# ?2 ]& J" B! G$ u' C, r
  66. STA $7EFF1 d6 p8 g, x+ }3 {) {  A$ f9 @1 V/ H
  67. LDA #$00; t" |( d2 c1 r+ k7 V9 h9 \$ E
  68. STA $FD0 ^0 o: U" V# d) O5 |+ f8 M
  69. LDA #$B0
    3 R; c$ @6 A) P; f" |
  70. STA $FF2 V  [; w# o9 t6 j
  71. LDA $07C1
    . f! Z, s/ u! B
  72. STA $7FC1
    8 r$ u3 R' m% S: N; ~  p
  73. LDA #$3F! I5 V# q4 S) D/ y0 t
  74. STA $2006
    1 Q- v& P: C: E! n+ x6 w8 ?
  75. LDA #$01
    7 o8 Z; [5 Q5 z' C4 P
  76. STA $2006
    4 I* W" T6 M* V3 g3 S
  77. LDA #$24
    5 k; f+ p9 |. o3 F& r" f
  78. STA $2007
    $ w9 X" W1 m' a7 m- b& @% R+ L& n: }
  79. LDA $07F64 L) J* G9 I# B! z
  80. STA $7FFE4 z# f9 B/ X; S- u( D2 M( t% k/ F
  81. LDA $00FE
    . S+ F& I) U5 k0 [
  82. STA $7FFD
    + F% q6 ^* t2 \) s; d: E
  83. LDX #$00
    ' w( t) b8 O; a+ F
  84. LDY #$00
    : E( g/ u( G- g* c) a/ A# ~" d. v
  85. LDA $BD7 C6 R3 z& M; z2 `; g! o
  86. PHA. j+ i9 _* i/ G  U7 H
  87. LDA $BC! i. t# w5 k4 F- P6 m( `: Z
  88. PHA5 j, D# U: H( a5 v, U' ?" P1 U. I
  89. LDA $BB
    # d  ?7 f# m3 i4 z/ @. d1 ]
  90. PHA
    * ]0 T( e& N" \3 ]8 \
  91. LDA $BA, |( C; c& M$ u0 h% t" t* J7 r$ D
  92. PHA2 g# F( @! g  s5 w2 N3 i
  93. LDA $B9
    ! K5 x6 g' S1 [7 S- P7 ~& ~
  94. PHA
    4 J8 Z) ?- W$ }3 E: O
  95. LDA $B85 b" b0 L  D1 R  |
  96. PHA. E; I3 a5 u" j! l4 i( t0 q$ t
  97. LDA #$00
    " F- H0 j4 a9 y8 N) \& H1 l7 H
  98. STA $B8
    : ~2 s& d  E" h: [
  99. STA $B9
    + u% j9 J; U1 i6 [% R
  100. STA $BA7 h" P. t2 a& d  l, F' p
  101. STA $BB
    & g" W- [. {( X5 T$ x2 i" s
  102. STA $BC
    / }7 k% |: M, t* e' |% `
  103. STA $BD
    + l! t5 s  K& x# y) W% y
  104. LDA #$00. \) ~% \/ [2 ]2 H# `
  105. STA $BA9 e* t6 ^: j" X5 z# C
  106. LDA #$20: \& w$ ]$ t: p8 ?
  107. STA $BB
    6 g) X4 @' g+ P' Y& F
  108. LDA #$00
    0 V1 o. P* H4 W  P: w0 ]
  109. STA $BC. ^1 I' A7 ?5 k; q
  110. LDA #$608 v; ?: ]) F- _3 e% m
  111. STA $BD0 A9 `2 r: y7 d2 ~# {
  112. - a# a3 ^8 C* l4 e3 f% Z6 ?
  113. L1:                ; PPU复制
      [3 f. B# d. p2 Y: ~
  114. LDA $BB' N2 \5 B; a+ D4 L
  115. CMP #$301 q0 i9 l# ^2 I, g' R
  116. BNE L2
    ; Z8 E0 [6 E  z. z: G& A
  117. LDA $BA
    6 f/ x( Q: }+ m; J7 S
  118. CMP #$00
    0 l9 \- s# W( R. g$ o
  119. BEQ PROADPLA9 h4 c$ M+ z" F  p$ H$ y) W* w
  120. % \6 q7 G( U$ B5 _
  121. L2:0 s1 ^, H1 V8 Y# E  v
  122. LDA $BB- T& P6 b5 l  L" C& G6 q
  123. STA $2006( [  H* b' U3 B0 a( R
  124. LDA $BA
      X" X& H6 }, Y! b- s9 z
  125. STA $2006
    - X% s3 m. b! L, B

  126. 1 c0 T  B5 F8 T9 _' n; ~
  127. L3:* q. R+ y, g) x; G- m
  128. LDA $20079 u: y  D4 V! t2 H) q3 \
  129. LDA $2007
    1 a" J) b# c/ x4 P8 S
  130. STA ($BC),Y
    : q# a: a7 D  Q
  131. 0 ?! z& b$ [; G" c
  132. L4:4 z2 h( |# Q; v3 V
  133. LDA #$00
    7 Z8 F- U$ u6 W
  134. STA $2000" q, p. I# W0 P2 D* O
  135. INX
    6 s2 z8 M0 a: r
  136. INC $BA
    6 R! M- y: o( T2 d; `6 g
  137. INC $BC
    9 N7 J4 F8 ^5 x0 b
  138. CPX #$00( t2 f3 m, {  r
  139. BNE L1" K, w% V& h" O" J$ D; |
  140. INC $BB! u1 Y- Y3 g  i; g: i8 L
  141. INC $BD  `  i3 y: j0 h( L
  142. JMP L1  Z5 g5 N; M$ ~1 N& S8 M1 c- {
  143. ( i: a5 S& o( c9 Z
  144. PROADPLA:                ;出栈
    ! e5 h$ q. `, e9 X4 E- t; e+ P
  145. PLA9 q" u/ K! x) J3 y) S# f$ \
  146. STA $B8
    2 }! Q) B+ d# b  n
  147. PLA
    4 N' ]' p9 r7 o+ p2 R' O) t
  148. STA $B9: x5 k0 j7 r* G  Q
  149. PLA: ?4 ^0 |4 l1 W- C, R6 a$ s' S
  150. STA $BA
    ) g; U" R5 ^9 F, f* t- ]
  151. PLA* [3 _& o! G* A1 @8 G
  152. STA $BB. f! r5 }& }2 A6 z% G( ]( E
  153. PLA% C: ~( @8 [& B/ C) y  v4 ]" ?: @2 T
  154. STA $BC9 f) `  K- T$ `: g' i+ m: x7 q
  155. PLA
    ! \8 S! @. |9 C, V  ^, R
  156. STA $BD7 o0 A2 B- a4 D7 j$ g
  157. CPRE:
    0 E0 l! U# B4 ^/ q; L$ |
  158. RTS+ L6 i' h; u4 z# M% D
  159. ( t; _9 K0 N# q6 N7 e8 n; s1 R9 @
  160. CLEANA:                ; PPU清空
    ' X1 D' K  _+ x4 J9 C6 j; g6 p
  161. LDA $BD
    ) B0 @% {+ x2 F3 z+ f  q2 u
  162. PHA( {  ]2 `. v( P! Q- S! o& ~- y
  163. LDA $BC- V+ `+ F/ \& }+ l3 c& T
  164. PHA+ c9 |1 c3 X4 w4 @! k) I
  165. LDA $BB( O# Z; v2 v9 |7 g* M5 Q) h
  166. PHA9 j; z9 E" n9 P7 D3 E2 b
  167. LDA $BA
    - Y  M% ?# M! @
  168. PHA2 t9 R. d# P$ V
  169. LDA $B9
    9 j2 y8 U5 _) o
  170. PHA
    7 V! ]$ V, j& f1 u/ j7 {
  171. LDA $B8# E6 g  e/ N9 o$ a; Y: E
  172. PHA+ G1 l( Y; P9 M' O8 _1 a" v6 U2 C
  173. LDA #$005 {3 F& r/ R2 P; c& ]! H
  174. STA $B8: n7 U7 `) }. i$ k+ L& Q
  175. STA $B9% f% q- L5 I9 [4 C! V# G, U1 g
  176. STA $BA
    + a# b2 f( X& t
  177. STA $BB# u4 k' ^6 l* y, }0 b4 m$ N
  178. STA $BC
    ' M$ z/ a  W! b' F' C" ?0 n
  179. STA $BD6 c. x0 x' P5 R0 y
  180. LDX #$00
    * r7 K0 G) u! N5 P2 R& U! V" y( u
  181. LDY #$00
    0 [* z% P9 [. ?) t: U% P3 d
  182. LDA #$00& l1 W2 V4 d- l8 h) f  Q7 R
  183. STA $BA( I" m7 g, n2 H
  184. LDA #$20
    4 S4 G6 B' Z1 [* ~
  185. STA $BB3 G# A  ?( W5 c: z) Z
  186. % T( c" x8 i8 }
  187. CL1:
    & L% V3 L2 \  t. `4 F5 ]
  188. LDA $BB
    : ^8 \2 a* _  X) ^" g
  189. CMP #$30
    9 Z0 ]5 F& y! h# S4 S9 g! @# L. b
  190. BNE CL2
    5 \$ i2 E# ^* o$ q
  191. LDA $BA) ?# K0 n* @" ~3 p2 H0 g# I4 K4 Y
  192. CMP #$00
    " x. p$ R! D+ v$ ~
  193. BEQ FREEWRIYE
    " C/ ]6 q6 I& V

  194. 7 V' c/ o" H/ j2 h  b! E
  195. CL2:* w  E- K/ B# ~
  196. LDA $BB
    . A4 J" F. O3 |* ^
  197. STA $2006) n8 T" {# u* n# d' V
  198. LDA $BA
    + Y5 T+ g& x' U, O7 A( p: p( i
  199. STA $2006; G+ E4 U, k8 N3 s5 P

  200. % @& g1 l1 y8 {3 i7 N8 U4 o
  201. CL3:' _3 ^% o: J+ R( M8 l! s
  202. LDA #$00/ I" q; {: E. ?" i* A
  203. STA $2007
    & Z" H; s5 k5 C3 I/ s

  204. 1 H0 m& y- u/ m) s+ [
  205. CL4:
    ! ^3 i% G* l% U6 x
  206. LDA #$00
    / z, q7 A- [9 F1 M, [
  207. STA $2000+ C5 Z3 g2 S6 L0 g
  208. INX
    2 A' ?8 m% ^: |  f/ g
  209. INC $BA
    / h0 [6 |# [8 ~0 s4 ]6 n2 D
  210. CPX #$00
    , ?# J8 u7 ^* }6 e0 g  t+ V
  211. BNE CL1
    ) Q* t' s9 t2 z( a8 C- g+ \
  212. INC $BB# N$ P: x" q* x4 a9 p
  213. JMP CL1 ! T/ r0 c2 Q' P$ J& H& \

  214. 9 P1 r- y5 l+ p1 e$ M& i
  215. 1 R8 A$ S5 u' o/ I4 U6 E
  216. FREEWRIYE:- ~3 e* u$ _( E5 ]/ y0 C* ^  y! g
  217. JSR FREE
    9 I. B  v: f( y0 q+ s, x  |
  218. + A/ Y+ F: g& l, Q! K
  219. ( q3 f* c, n9 S
  220. % N# N+ R6 n# y/ e' s9 ^. R4 n  _
  221. & r& L+ {: X  Q* \
  222. 5 i& a2 D$ P3 A8 E4 _' N: m* C
  223. CLEANF:                ; 恢复现场
    7 v4 Y: i, O5 ]1 x
  224. LDA #$082 z' N8 M  i8 O( `2 J* s9 O: b
  225. STA $FE
    ( l5 Y% d7 u! a, M/ E
  226. LDA #$00) E! ]4 j5 ^5 ^5 u
  227. STA $07F6
    " u. r% H! a" l0 O+ j5 k
  228. LDA #$24: P% M9 Q9 W* X  F
  229. STA $7FC0+ @$ {/ G. ^2 j! t# P! f& x# B
  230. PLA! o. n2 A- k( z" P/ k
  231. STA $B88 I) q. H( Y. |/ c& T4 I6 s# g
  232. PLA9 A. c, c9 ]3 i. K+ }3 @
  233. STA $B9
    8 D, F/ i" Q, s. Q" y
  234. PLA5 m1 u# R9 L  d9 a( X+ u7 X
  235. STA $BA5 u3 T# \; Y$ U! {6 f( `: T
  236. PLA
    ( l$ m7 m* C0 T" Q; [- c8 X7 ?; O# \
  237. STA $BB
    % `; G4 [1 R& ]$ }% G8 K
  238. PLA
    % ^% ?9 t4 }6 F  }" E, n. {
  239. STA $BC
    9 f. a  V" q; p2 O
  240. PLA
    8 ~' L2 l; D$ e
  241. STA $BD8 d- Q$ ?9 J4 n9 P: J5 ?1 |
  242. CLRF:3 J* G$ C. n. C: O; I! m
  243. RTS0 N0 N8 R% {0 O- i# I& w
  244. & |' M2 ?& F- T
  245. W_DATA:. k* Q7 u- W  \( j+ s5 N! P! y$ F
  246. .BYTE $00,$01,$02,$03,$04! R6 Z2 `2 q8 w6 F4 o! w
  247.   
    5 Z; u" h6 V! N
  248. W_PPU:/ n3 l2 a" F* I
  249. .BYTE $98,$97,$90,$9D,$96
    # ?, `$ F! _( @' h) S

  250. # V" q, a1 {6 ]1 I: f1 T2 b
  251. P1_STRING:4 S- E9 B" D  g) G
  252. .BYTE $9A,$82,$00                ;"P1"
      P- g: K3 }0 A3 O
  253. ) Q8 w2 @+ P' v' C1 I
  254. P2_STRING:. [# u+ z: Y  f, P
  255. .BYTE $9A,$83,$00                ;"P2"# ]9 \. _- n  w& v. Q" ?: o- b
  256. # W8 A: U! i: V1 |0 y+ }, a7 f
  257. WEAPON_STRING:% ]! j' K4 G( W
  258. .BYTE $A1,$8F,$8B,$9A,$99,$98,$00  ;"WEAPON"
    , l; v6 o; [( `' D6 a1 j

  259. * z) M( X" Q. }  |; M
  260. RELIFE_STRING:( c" n8 |& x" k' q
  261. .BYTE $9C,$8F,$96,$93,$90,$8F,$00  ;"RELIFE"" v4 r! |1 |; x2 b8 w
  262. 6 S, E2 z% M' k
  263. P1_PPU:9 R) X7 Q3 f  \
  264. LDX #$00/ d5 L. J& q; o2 Z" U
  265. 9 X  b$ u  p. Y
  266. P1_PPUW:
    / d+ r: n4 G( `# z5 ?; G( X0 d
  267. JSR PPUADDR_PROCESS
    ) M! Q! X1 m( g& e
  268. LDA P1_STRING,X
    : I" o' v# T- ~
  269. STA $2007  W; G- z8 \& D! \. j- K4 I- A" o
  270. INX
    , Z2 F" `# X0 G  i6 A
  271. INC $BA# j0 ~- I- v7 \9 J
  272. CPX #$033 f4 o6 i1 I* Q/ D1 g
  273. BCC P1_PPUW( [1 W/ |; G) n# I" L1 l: u, K  {
  274. LDX #$00* s* E/ S+ g+ q4 B$ k
  275. RTS
    7 c2 {7 K. u# G- m. s9 T4 Q
  276. ! g! {* b/ z, J7 s
  277. P2_PPU:8 N: A* G% l. ]+ |
  278. LDX #$00
    - h) ~4 k; `+ d5 [6 s4 i
  279. - i. J' }# ?/ `9 W. a! O
  280. P2_PPUW:& L0 s' K) v3 K: ~' @
  281. JSR PPUADDR_PROCESS
    6 M# c1 p2 E: t$ V
  282. LDA P2_STRING,X( a" |5 _, Q2 Q2 c
  283. STA $2007
    9 F" h$ q1 \8 }  f; `) R0 I
  284. INX3 Q: w  G' [7 }. ]8 _# i( i. w
  285. INC $BA, n+ J" I8 A% S1 D$ Y7 T
  286. CPX #$03
    9 W; \! w8 N! y& O# I
  287. BCC P2_PPUW7 J, c: i1 O; n' m+ R- h
  288. LDX #$00
    2 P# W# `5 I0 f& t5 z, A( R
  289. RTS
    # h6 z0 R% q8 @. O% d

  290.   I: q- u2 v: O$ L9 d0 P! i

  291. ) ]$ _: U8 X0 o$ ?/ p
  292. LDA $BB
    5 Q7 h7 q- c3 t% @
  293. STA $2006( [( @7 c8 t6 K7 O
  294. LDA $BA
    $ @1 E1 B3 {# [/ ?6 ^* x) L
  295. STA $2006
    . O2 Q; q& A" \; D8 B) R9 |! J4 \7 Q
  296. RTS
    * i; K; j2 x& `+ F
  297. $ @3 q5 C2 K$ q1 c/ H

  298. 4 ^" Q! {' o, q  F

  299. " L; W3 D3 o& D9 e) ]7 R1 `
  300. PLAYERLIFE:3 W- p* S- u3 X8 u
  301. JSR LIFETODEC- i8 i, {" ^8 J& E! p! \1 l
  302. LIFEPPU1:
    + G, v, T, s& O& L
  303. LDX #$00) \' z4 ], G4 L: R) i
  304. LIFEPPU1RE:2 s" Q/ C! |% {: _" R1 |# K
  305. JSR PPUADDR_PROCESS
    & s" b. k& q2 Q+ S% D5 P! Y
  306. LDA RELIFE_STRING,X
    7 {$ d! I$ @3 j. o- e* \, T  \
  307. STA $2007
    3 [' N* @  B9 E7 a0 r7 r  ?$ u
  308. INX
    . c0 l) |2 E! a2 v
  309. INC $BA! n9 s. a( W+ W! x
  310. CPX #$076 r7 e# n9 J, l# n- M/ `" A; V- y4 v( U
  311. BCC LIFEPPU1RE' L) d8 B! I% C, r  y- c" v
  312. 0 D9 G5 u( c) c% y
  313. LIFEDEC:                ;生命显示写入. U4 u! V6 l* j. J( C
  314. LDX #$00
    - E- Q; W+ `' p" a* P
  315. LIFEDECRE:
    . b! l3 `+ j# Q, A5 v  {
  316. LDA $7A03,X- O# L0 h4 H+ l/ b
  317. CLC
    3 C$ f4 u. E# h: t# `: J
  318. ADC #$81) I; g$ y* d$ o+ y# u2 M; b, ?
  319. STA $2007/ O3 k$ _( a4 \
  320. INX
    , Q9 s0 r( |: O! Q  i* I/ R2 ^
  321. INC $BA  w0 a: O1 t2 R2 i" a% W" A) j/ w
  322. CPX #$033 Z* M  K3 M5 I6 @3 D" c! ~4 ~9 w
  323. BCC LIFEDECRE
    : V: M% {  Q' U
  324. LDX #$00( T, v8 Q  o2 {! U
  325. RTS
    : f# M' q% p* P$ @* E. T
  326.   @& o& r. t5 O1 `+ ~
  327. LIFETODEC:                ;十进制转换6 f* J# s1 \) c
  328. LIFEL1:        ;initialise
    6 A$ C1 l) [5 S' _6 @4 g
  329. STA $7A00        ;$7A00=F3
    5 K. m8 G1 l$ W5 N8 r7 P4 t# S
  330. LDA #$00
    8 w' H7 E' G5 J/ A; ~
  331. STA $7A03        ;$7A03=00
    , C  l% M, l$ [
  332. STA $7A04        ;$7A04=00
    8 I* }9 |+ [8 p
  333. STA $7A05        ;$7A05=00- {" s2 v5 q. e  h4 m9 N' J! K
  334. LIFEL2:        ;copy data $7A00 to 6001
    3 B8 [# M: `  ]* l
  335. LDA $7A00
    9 D9 Q+ m; E* F% d; {
  336. STA $7A01
    3 K# A1 J* g5 M7 l0 {1 O

  337. 6 N$ N8 W3 e" R! z$ O5 P1 V
  338. LIFEL3:         ;hundred# r* r( G9 n1 }, S$ {
  339. LDA $7A01+ f% ?2 e) ~. R
  340. CMP #$64
    0 [; e# b" h7 A# q7 ^. U; w
  341. BCC LIFEL6                ;$7A01<100 goto L6* \( v( K2 B) P3 j, f
  342. LIFEL4:: m" D7 K4 @9 J8 C! |
  343. LDA $7A014 J* v# i- |5 q) l
  344. SEC& A5 F, e+ E* x6 q' H& ]" Z
  345. SBC #$64        ;$7A01=$7A01-1009 o4 v: F& J' y) a$ R0 v
  346. STA $7A01* e- h+ I1 `3 I. D/ r" a
  347. INC $7A03        ;hundred++/ G8 o2 K9 \$ b0 E$ t
  348. LIFEL5:9 L, U1 O4 d. D/ I) F; r
  349. LDA $7A01' Q0 U2 T) ^# v( ?; A
  350. CMP #$64
    . w- _' X, x& p3 q6 {* ]
  351. BCS LIFEL4                ;$7A01>100 goto L4
    5 c* k: Q9 _' V/ }/ d- E
  352. ' n' k4 t/ {0 `; u* @, y+ j1 _
  353. LIFEL6:        ;decade  z1 ]5 Q, y1 j! o* S
  354. LDA $7A01, B* r1 f. w8 b& H4 c
  355. CMP #$0A; ]0 D7 {1 @. M6 s& p+ J8 W
  356. BCC LIFEL9                ;$7A01<10 goto L9
    4 t3 u3 ~( w" ?1 t1 \% ^; D
  357. LIFEL7:       
    8 F0 e, y+ R4 q$ x/ ]' v# U. T
  358. LDA $7A01
    # }6 |- k; J) p* E) M% u
  359. SEC9 @( O6 A0 _/ R  C
  360. SBC #$0A/ z# t" y7 i6 e& R1 v4 ^9 X
  361. STA $7A01        ;$7A01=$7A01-10
    ( o. ~9 x5 N2 V. Z# o1 ?7 `2 J# ?( R
  362. INC $7A04        ;decade++
    7 g' s  d) N* X6 _# u- g
  363. LIFEL8:/ b8 i  r* M, K6 M9 M& `
  364. LDA $7A01
    1 J% n( Z+ ^6 X  A1 L
  365. CMP #$0A
    4 ~9 g! x: _8 T1 l
  366. BCS LIFEL7                ;$7A01>10 goto L7
    ' ]6 s% J+ N& u! ?
  367. ;unit
    & P, j+ u4 n' U! l4 v/ ]9 `( g
  368. LIFEL9:( m' F' N) P$ m5 z
  369. LDA $7A01        ;$7A05=$7A014 R8 @" X; e9 q3 A8 |2 b; n. ]
  370. STA $7A05        ;unit6 D3 s, S( `0 m  Y' C: [/ v$ A
  371. RTS        ;return
    % x: a- K9 p+ A, N: H# L8 c8 L
  372. & W4 c! y2 X0 b0 I& M7 ?+ p* Q) A

  373. $ k6 c7 D  t  ?
  374.   y; ?% ^5 D+ `; _/ u+ A2 F
  375. WEA:                ;武器ppu写入4 d) s. d. _  j: C! F1 P7 H
  376. LDX #$000 G' Z9 G8 _, N; n5 n7 y9 u
  377. WEARE:" S* n+ q/ M: k8 U! U% m# i7 o
  378. JSR PPUADDR_PROCESS
    1 X# k; B7 W4 S' l
  379. LDA WEAPON_STRING,X( _( x6 G7 |, l5 [
  380. STA $2007
    3 u$ R$ s/ H: ~8 q! v0 D
  381. LDA #$00
    ; D# M. i6 R; B7 V- ]4 \
  382. STA $2000# [, ~  Q0 }3 q  s  c# \
  383. INX7 L+ h$ z# J8 V+ y
  384. INC $BA
    1 @3 q- m4 [9 D/ T/ V
  385. CPX #$07
    " }; D+ a3 x6 ?, \6 M: W$ u
  386. BCC WEARE
    9 Y' F6 R% _4 P% k8 T& L+ ~
  387. . Z0 {2 S! X+ m* [4 ^0 y9 k" B
  388. READ_WEA:
    8 m/ p2 J( e$ K4 K0 n
  389. LDA $B9
    & }  M' c3 p& _; \1 o1 n9 B" C: ~
  390. AND #$10
    & e" ^$ h' A6 |9 _( W: o  @
  391. BEQ NWEA
    % P: n" f2 d  n. i- P& Q* I
  392. SWEA:$ B) ?( ?% [- ?

  393. 5 y2 G: k1 W) ~  k5 g! D% W0 h
  394. LDA #$9D
    + s2 u2 O# W) \5 W1 U
  395. STA $20075 P) Y$ F2 l2 c' G; m  e
  396. LDA #$00' w$ Z4 h' `, k5 }% O: K% Y/ S
  397. STA $2000/ z& ]+ c! d0 ^* `& A9 ]
  398. INC $BA6 D/ w- \6 \2 |* J, L$ R) j
  399. LDX #$00% ?+ A/ z# U6 E) V' X* o
  400. JMP WEAREAD
    7 [0 H, @; B" |. D9 f9 U- M
  401. NWEA:) V  X3 Q- X& F) U
  402. # X) m7 ]/ ?' [
  403. LDA #$8D
    ' ]7 C, }9 L7 q( m
  404. STA $2007
    9 X& d5 j' @; B$ G; G2 P0 I
  405. LDA #$00
    " `- q, K- f) E8 A( C
  406. STA $2000
    % a2 t* w; l; M; V6 w( f
  407. INC $BA, }8 L& m2 \" s, p6 e. F: H$ A# T- e
  408. LDX #$000 s* h8 o! X6 n% Y2 u, r2 g
  409. WEAREAD:
    . K. x) N; z- [6 `% b
  410. LDA $B9
    7 Y$ b0 W8 N9 O. W& S
  411. AND #$EF+ M* U* M6 Z7 r2 @/ e: ~
  412. CMP W_DATA,X7 l8 P4 b0 c  b% M
  413. BNE WEACMP
    " L, y( P: s/ O- ]: P' Y

  414. ! N' A! W8 R: n# D7 U' {
  415. LDA W_PPU,X
    8 h7 [3 Y) r; D' T: v
  416. STA $2007
    & ~) M  x+ s5 N! O7 l! A( l
  417. LDA #$00
    # u5 a- p8 E, u% K- F3 \
  418. STA $2000
    . E; \) z+ E, X: }6 z

  419. $ @& F' ~. P5 D& K9 f& J5 H) _8 g
  420. WEACMP:
    8 Q6 R  p/ p( j1 S" y2 ]' O
  421. INX2 X8 X+ M8 ]; I
  422. CPX #$055 a2 K9 ^! B0 M
  423. BCC WEAREAD8 ^, z8 x; h+ N& b' B; A) Q
  424. RTS' C4 E2 g/ M+ I
  425. " J: r/ Z) M* _! d) \* n
  426. 7 r6 R4 i: l- L  _7 K; E, \
  427. PPUWRITE:7 d6 C3 g# T! ]$ y, F
  428. PLA- Z: y; M- r/ ^$ @: W; O5 p
  429. TAY7 v* J( a# Z) G0 d* ^
  430. PLA
    9 O( m2 w1 ~, g: Z9 u" p2 h: E
  431. TAX
    4 v7 k- O$ v/ V+ L' `
  432. PLA
    , }1 {& Y7 C$ H. X( `8 d1 {
  433. LDA $25, f8 [, D9 z4 t/ W# C$ W
  434. CMP #$00
    3 U8 X7 ?1 P3 v# i2 U
  435. BEQ WP1
    ( V2 J3 l4 I& f# M, b$ h  V
  436. LDA $25( ^) T$ Q! O: x, s; B
  437. CMP #$01
      @" a; H* P  n, Q, A! ^: E
  438. BNE WRE( H3 X- U6 e* ]  ?. \
  439. LDA $F5,X
    : m3 z0 r, N5 \5 a( A# D
  440. AND #$EF
    " R) Z7 u9 D; ^8 {8 d# w" f
  441. BEQ WRE# I7 c2 N  p2 z6 V, H
  442. LDA #$00
    % t" Z0 ?/ e' y$ a8 R3 f6 y7 s
  443. STA $7FA0& C; y5 y2 e% R1 N7 E

  444. 5 g* h. e8 s' h  q, ^9 p
  445. WRE:
    ! i4 Q( U. K& e8 r2 T
  446. JMP $A000
    / ~3 ^5 p5 M6 j$ j8 K

  447. ; _) m; ?1 Z/ `5 \! e" M4 {% y
  448. WP1:
      w# J8 w2 c9 K+ Q/ _3 a
  449. LDA $7FFF
    1 D% t8 B2 d0 I; o4 e4 m* g
  450. CMP #$FF1 C% @/ y5 S; U  S" {2 c7 D
  451. BNE WRE
    ; N/ O4 Z: r$ m& u. N; X5 Z
  452. LDA #$00- \- q9 T+ e6 E/ s. ?. \* X' s2 @7 k
  453. STA $2001! a5 n$ H$ }' O$ y
  454. LDA $BD% Q/ B3 S2 U" `5 X! X; u
  455. PHA1 Y. c: \! s( e" c: P, C
  456. LDA $BC! t  M3 ~; i/ H2 `; K5 m
  457. PHA% u9 i  {$ B; Q3 L
  458. LDA $BB( X# x1 W6 ^7 a( L7 o& {; B3 M$ l
  459. PHA
    9 Y. Q% _  x; ?
  460. LDA $BA
    ' p, L$ g! c4 P0 t' i, q
  461. PHA9 n: _, P" I( f1 o
  462. LDA $B9
    1 u# g( `* F- \  p+ ]2 u& e$ k
  463. PHA
    8 R$ C- B- u! R
  464. LDA $B8% A$ s% r9 Z. X
  465. PHA' ?3 w% s! v4 U8 b
  466. LDA #$00
    * g& Y/ ]+ T' Y: M: c( J  {( o: P
  467. STA $B8
    8 [/ q% {; ?) {" K, W; d+ H/ A, ~
  468. STA $B9( B! R4 B6 Z3 H' F3 A- P: R
  469. STA $BA
    9 o! P. m, w! j& U1 `# t
  470. STA $BB& n5 U+ M  K" R# W) v
  471. STA $BC
    ; l" N' v! @/ s% U- F
  472. STA $BD
    % H1 j' W' [  M, u* F  p9 d: v
  473. LDA #$00
    ! A5 L4 F% K* l; F/ O0 C( {! u
  474. STA $7FFF
    : O7 u2 i) u. C/ Z* T* |
  475. LDA $30
    4 S1 T1 }2 ]; z- h5 h, {2 J9 N# C% d
  476. CMP #$025 f1 u+ @# i2 l4 M8 j
  477. BNE UNPROCPL! S/ X# E, S) U/ h( C
  478. LDA $7EFC7 j! S4 X7 d3 q! y$ ^' w3 z" c
  479. STA $FC  b: U) _2 D( w0 M% r/ W
  480. LDA #$00
    5 r) K; d/ m% h4 _# B; ~1 A1 n1 u
  481. STA $A4
    3 h  b7 k5 q/ P. f8 p: u% n
  482. STA $A5
    / M/ V" Z, S, l' O7 w# O( S& y2 u
  483. UNPROCPL:
    1 |. g1 I, f* x2 {
  484. LDA $7EFD- c! ^' A$ v. N# M+ ?$ Q4 w
  485. STA $FD
    5 Y' Q8 E7 t! I0 u0 M4 G7 I  n
  486. LDA $7EFF
    ; O* x1 P1 w+ W0 L
  487. STA $FF
    ) t5 w; @7 R4 x8 w# G. ?
  488. % [/ q9 a# ^: y4 O% p
  489. WL0:
    . b; y0 x9 Q+ Y9 T+ a: \+ y
  490. LDX #$00
    " Z( P5 E$ ?0 P1 |7 l" l
  491. LDY #$00
    / T& h, r: }7 W/ ^+ ^
  492. LDA #$00
    % z+ M/ n) n; m/ K7 q
  493. STA $BA
    * s6 m0 z1 u. k# |
  494. LDA #$20: _2 m( H; O  k; w! |  U' ~. z
  495. STA $BB' J, v* d& l3 ~$ V2 c0 H
  496. LDA #$004 H; C: y/ X; o+ G& G$ i
  497. STA $BC  u  Y3 K8 |- c! T: D9 l
  498. LDA #$601 }, K' ~4 P) T9 @; L5 D
  499. STA $BD9 x5 j% \# m) i. z+ o4 X
  500. & I9 p' D0 M; g8 e
  501. WL1:) P5 e0 x6 q' M0 b
  502. LDA $BD8 R1 N0 ?7 G) z% }3 m# M% e$ _, S& \
  503. CMP #$70
    ' }& |: N/ a/ O4 R. g
  504. BNE WL2' |; M! r+ Q4 i9 k( D# Q1 L
  505. LDA $BC
    - O" u9 D9 o+ j/ a; x
  506. CMP #$00
    . o: H4 ]9 @! a5 ]
  507. BEQ WLR$ s4 @3 _7 R/ k9 f

  508. + H# b0 o9 ^8 H/ n
  509. WL2:' f; x4 s; ?) p$ d0 F, [4 @
  510. LDA $BD6 c% F5 f" M% X! Y
  511. STA $20069 g6 S: b4 h4 K
  512. LDA $BC
    & L; Q, ]. h5 i4 j  t- F( E* e! T
  513. STA $2006' G8 Q8 Y2 M. J9 v' J

  514. & E1 ]7 X+ W" N6 b6 W7 I
  515. WL3:
    , B7 L) ~, b3 V; J' G
  516. LDA ($BC),Y
    & t/ H0 q( T9 O1 c* `5 Q
  517. STA $2007: J. V& B7 Q# b, p: u% \

  518. # o2 d: {  B; I0 S2 v, l. N
  519. WL4:
    ' i" R5 m8 R2 P9 @0 @! x: ?
  520. LDA #$00
    1 b( `% O# Q4 j* h; G+ e) R# T
  521. STA $2000
    0 g) J. B2 T; C5 u; r
  522. INX
    1 |0 f, q6 c+ F
  523. INC $BA
    7 W: A% [- `, w' ~
  524. INC $BC
    2 K" C* p' k7 g
  525. CPX #$00
    . a3 ]  d/ h# ?. s6 m
  526. BNE WL1
    ! [- H: b' M  W
  527. INC $BB
    6 T: A* t5 N, \* `
  528. INC $BD. m& G: |: w- i
  529. JMP WL10 }4 w8 B" G6 n- |" M, T- b( A

  530. " C) i. ?8 R6 |) x
  531. WLR:
    : e/ S/ y0 N: J% Q9 F+ U4 h
  532. LDA $7FFE& Z" m/ {  Y: |3 X9 `; D5 [: d
  533. STA $07F6
    ) _" n" Y) O- R; ]
  534. LDA $7FFD
    4 ~; v' U0 Y8 V4 @( r
  535. STA $00FE/ Z+ e. y& J0 o  D" V. X
  536. LDA $7FC1
      T1 Q) j" X- I" G; q
  537. STA $07C1
    ) h1 N) i, T) ^7 U/ m7 ?; B' b3 _
  538. LDA #$3F
    1 U, E% T% N- Q$ \6 Z5 i3 \
  539. STA $2006  a' M$ O! I  [! E7 g  s- n, H1 f
  540. LDA #$01, C( c4 C& i, X2 \
  541. STA $2006
    ! y8 R, O) ?# V$ N5 _2 O2 j* V$ B9 n
  542. LDA $07C1
    2 e# H. k& S- k
  543. STA $20078 r8 z0 U& ~( s0 L
  544. LDA #$00
    % u1 N" `7 N$ a. k% A: l# |
  545. STA $2000
    5 M  I5 a( \; Y/ ?
  546. PLA
    . ?9 j9 Y* z( m3 ?& a* g
  547. STA $B8
    - r# @) Z# O% `) ^% ]% k4 {% L
  548. PLA! g8 b. A/ ~) ]/ K1 F5 X* D
  549. STA $B9
    ' \. X% Z6 U' j) I7 p* _& {* l
  550. PLA
    & x: y1 h  u9 w
  551. STA $BA
      t+ b7 s8 @! A/ Y3 x7 [1 V
  552. PLA
    - Q6 {9 [& P4 X6 W
  553. STA $BB* t4 Z6 P! [. w) m' m
  554. PLA
    7 ]' U" I) C9 z; A5 ]
  555. STA $BC
    9 |( [. v$ E, r
  556. PLA( \* r: A# h+ j( K! @2 P' T& B
  557. STA $BD2 }1 L4 \, P# Y1 f' F+ l3 @
  558. JMP $A000/ L: F5 D* \+ y1 V7 ?) J
  559. 7 z+ i& n3 ^6 M2 h
  560. FREE:                ; 暂存器保护
    . E/ H/ W1 A& G& q4 i5 @
  561. LDA $BD
    3 F. w5 E6 }8 L; f8 S' g
  562. PHA
    6 Y" m0 _. f4 b+ B
  563. LDA $BC& r. c5 N9 X* x' D
  564. PHA
    + x# v+ Z/ W. s' W% B
  565. LDA $BB
      A4 C9 S) J' z/ k
  566. PHA
      `2 q8 o8 ]* C0 c3 D( P
  567. LDA $BA" x" U( ^* T4 w1 _. `
  568. PHA; d7 Q( e2 L9 |1 @
  569. LDA $B9
    1 i# n2 L& |5 I9 A2 D' }9 E+ C( X
  570. PHA: D( o  ^9 E$ [3 A# B, L
  571. LDA $B8
    7 m  t) j* Q/ [) p$ S
  572. PHA( c  P" L' V/ w' E5 y) U8 x; o
  573. LDA #$00+ E! _/ Q1 P: I0 V4 C9 @1 m
  574. STA $B82 E% I' u  o. [' m$ k
  575. STA $B9
    : \0 w+ \5 ?& q/ j- J# j  Y
  576. STA $BA% q' X) a5 v/ D& s
  577. STA $BB
    # D, B; ^) [  t
  578. STA $BC+ N/ p2 R% x& J9 X5 |! j
  579. STA $BD& w9 N8 Y9 j; c1 f  r

  580. . s, _$ a: O  o7 Y3 i& N4 \6 Z( _
  581. WEAWRITE:                ;武器ppu写入7 L  c( e: J, ^& z. c6 ^( Y" Z- l
  582. LDX #$00
    : u; o. k% z& ^- t( ?( S0 D( N. d
  583. LDA $AA
    ! f) D" ?0 O  X
  584. STA $B9/ J4 k2 G- `4 X" z7 t! ^& A- B
  585. WEAINI:                ;地值初始化( L; k6 l5 G$ j- }. f
  586. LDA #$A4
    0 E- H$ Q8 P2 h! e% }
  587. STA $BA6 Z5 Y( @/ C; V$ Y
  588. LDA #$20; {& F' w, I. x, D  V! \+ W$ E
  589. STA $BB7 R6 D+ A! a) k2 H) y( p& U
  590. 3 t! f  R3 J& L5 v/ s7 s

  591.   d. S( u; k- z; m- Y6 B
  592. JSR WEA- M, [' a% }. z- K( f
  593. LDX #$00                ;武器ppu写入/ h0 O6 Y' S/ k0 I7 ]+ f- \2 H- m9 M
  594. LDA $AB. K9 n5 J& S# w3 [& \! f2 z1 c
  595. STA $B9
    5 o  [6 A1 n; N' k
  596. LDA #$B3$ Y. j# h, a  q& Q/ e7 Z6 w* k( n
  597. STA $BA
    - ]- h2 |7 D) u& |6 s6 ~, z
  598. LDA #$20& M1 M. ]+ J! V5 i1 g' x( f8 m
  599. STA $BB: i4 I! W: ~' i: W

  600. 4 y/ j- @; c1 x2 `) B* t5 k' w

  601. - x, s1 j+ i- s, [* K
  602. JSR WEA
    6 w. [" O6 ?  K& o( r' t. m6 y

  603. 6 P9 @- k1 Z  e& r+ E+ }
  604. LDX #$00
    0 k5 `9 ~9 R8 H9 F
  605. LDA #$E4* J. N, m3 r6 t# A, ?
  606. STA $BA
    - _: G. h( N1 o
  607. LDA #$20
    3 d# v* |/ w9 n, A
  608. STA $BB
    2 D+ B# z1 ?! e) ]

  609. % |8 ~9 i4 j- y: i

  610. 2 K% o* E  P- Z- b: m2 A6 b+ v4 O
  611. LDA $32
    . X4 L; j1 E) Q4 _, Q* `
  612. JSR PLAYERLIFE
      m6 m' Q7 Q! z4 y; F2 }* Y  k
  613. . t" W: d8 Y1 B' L5 l+ M
  614. LDX #$00; N9 Y8 L3 f3 z' K0 M
  615. LDA #$F33 p4 W4 W1 F8 P# O( u7 \$ K) T
  616. STA $BA; S; l1 g# Z. S9 j
  617. LDA #$20: ~% p$ o! D3 Y9 C) H5 `
  618. STA $BB; ?: ]* N# Z& r

  619.   m7 Q5 c* {- b

  620. + K) M7 ~& [" a; J
  621. LDA $33: r' b& M0 i* Y1 f
  622. JSR PLAYERLIFE; u+ C2 F+ N& B6 v! h

  623. 3 p8 H! J/ L6 G1 M
  624. 0 K( F8 J/ ~3 m/ ?
  625. JSR PLAYER_01_PPU
    2 M4 s  R! B; L$ }" y$ N
  626. JSR PLAYER_02_PPU
    % F9 h; j6 s2 O  e
  627. , X: c8 f+ f6 G; Q0 y6 x
  628. # v+ N" x. z2 l" L# ]3 n
  629. JSR PAGE_PPU7 G$ G9 E) ~' S3 u0 J0 S2 {2 ^
  630. JSR PAGESELECT8 w4 G/ I; G# d! j

  631. 8 e9 F: Z% `- y; i

  632. , |! f, ]' o: {; e3 T+ e4 g

  633. . Y( }: L% I* c) @, f4 G0 q. J
  634. - ?2 L: P- B# ~: E/ A0 j) g& M
  635. 4 A& y$ g; z  t$ J
  636. . n+ `: m0 c7 R* e" e3 b! E( F( b6 \2 q

  637. ! c' H4 x: A' V! l; o0 Z) n9 P
  638. & C2 d% `4 |* T% Q: q+ p3 x# j+ {- D2 t5 B
  639. 8 @6 `/ Z4 V6 ~8 h% v' h9 ~$ B
  640. $ X6 p( C! F5 P9 F$ ?) D' R6 f
  641. , o. U  s" x, K* y

  642. 2 b/ }) {3 S; m" T, R5 D9 s

  643. # B/ `  x# v$ [) N
  644. PLAPRO:                ;恢复现场* Z- X# h( D# z  I6 G
  645. PLA
    + `3 `3 ~2 t% u( J& ^% G" N
  646. STA $B8# G. A9 m; O0 q3 s0 k
  647. PLA" @1 y2 o: I+ O% Q8 Q4 \( W
  648. STA $B9
    ) E5 `% F9 a! R; ~
  649. PLA
    - |/ j) Z5 Q8 z0 j2 a/ g
  650. STA $BA
    0 B+ e5 L% p( M! P
  651. PLA
    * A! H1 p' O4 |, Z
  652. STA $BB- z' m+ e2 z; W9 J0 B" I0 |2 }
  653. PLA
    * I" j. ^" |* A
  654. STA $BC+ x! C* b  l) |, a8 i
  655. PLA9 l) d2 w7 K1 \
  656. STA $BD, ?1 T) m( e7 _& N
  657. FREERTS:
    6 \, x5 w0 v& H9 h$ l' ?# p* h  {
  658. RTS; B; p' d$ m, H/ {

  659. ) a8 T# S( {+ J9 B
  660. INVINC_STRING:                        ;invincible8 j6 i8 P' t3 b* N
  661. .BYTE $93,$98,$A0,$93,$98,$8D,$80
    5 D- [4 ]* G/ _- e" N

  662. 6 b3 h8 ^+ l! `3 a" e6 D5 ?
  663. INVINC_PPU:- z0 H, ^. K$ Y" b# g9 ~: ]
  664. LDX #$00
    ' u, X4 O# a6 `! h* U/ e/ G7 |
  665. LDA #$62
    $ J3 L$ q7 n3 l3 ^
  666. STA $BA
    - S9 k! `2 P: {/ t- N
  667. LDA #$210 w5 h" g( |3 J( x" @3 |
  668. STA $BB
    2 [, F1 H3 }" B' o# U
  669. ' D' n: f& o) i! r" }: M% T
  670. 5 x3 f# o6 G5 ^0 G* C0 o8 L  y
  671. JSR UP_PPU0 ]1 s% P! ^0 o% u0 R
  672. JSR INVINC_WRITE6 N! ^: w2 k! K! t3 h9 R1 g' F
  673. LDX #$00
    * _- F! ~0 a1 [! v. _; }1 a
  674. LDA $07A0
    ; j( {) h7 T+ i3 s
  675. AND #$019 _8 b) Y9 V9 Q" [
  676. JSR ON_OFF_PPU5 d. Z# I5 j- @  E
  677. LDX #$00
    4 o+ E& E6 [5 ?
  678. LDA #$71: ~% H3 \9 L- n7 K8 T
  679. STA $BA
    3 m" W& A+ l# @. s
  680. LDA #$21
    6 w$ k5 K) E; _- |* A
  681. STA $BB
    2 z- Q: R8 h1 b$ ?. q- C0 Y: Z$ z
  682. 2 j# p% h) W, D% \. z3 F
  683. , E% G" S$ r' R0 Y( n& R+ M
  684. JSR UP_PPU
    2 V0 X. I& ?9 [* X: k# s6 i
  685. JSR INVINC_WRITE$ |' b4 y, G$ s% j
  686. LDX #$00( I" n+ O/ k& D6 G
  687. LDA $07A1
    * \# k* J1 t% G; O
  688. AND #$01
    0 ^2 k; s% Z$ v" Q' I- w" d
  689. JSR ON_OFF_PPU' [# e9 ^5 f  y/ y6 R, c
  690. RTS7 p4 L3 A7 w0 o# B+ H; \) J

  691. 9 F3 E- j. E* U' g% s: J
  692. INVINC_WRITE:+ l7 o# n- Z) }2 @5 d9 o7 J
  693. LDX #$00
    5 I: \  b8 }8 F: M. Y% W0 Z, l+ r
  694. INWRITE:& o) d( Q9 W, N( _+ o: _5 Y* v# S) u
  695. JSR PPUADDR_PROCESS
    / T* Q. n7 [6 p7 Q
  696. LDA INVINC_STRING,X
    ( P* a( x6 F3 ~5 T1 _* B
  697. STA $2007
    5 b2 X; W# H  [# P9 Z- G
  698. LDA #$00
    4 S- m1 M/ m4 T* @+ c( W* Z
  699. STA $2000
    . M3 R4 |9 B* M, H* \* x6 K' v) {8 R
  700. INC $BA
    ! }* F# k- Y0 I
  701. INX7 t" ?8 P) k) l2 u
  702. CPX #$07
    8 N* Z8 E# @1 i+ ]
  703. BCC INWRITE) b' q  L5 ^0 f  b
  704. RTS$ W. G. l0 X! y. C1 J, c; O
  705. " g2 \5 q  G2 a7 ^0 y
  706. ON_STRING:
    " H8 r  U; b( H' Y! Y, c
  707. .BYTE $99,$98,$80) i6 l* t% a  g# C& t, K0 L4 X
  708. 3 s( ]; ]& R9 ^1 ?
  709. OFF_STRING:
    : F; g* T0 t2 |. `7 T
  710. .BYTE $99,$90,$90
    3 x0 e3 N3 b5 h6 ^4 H+ z
  711. - g0 R1 I' n4 y. v& e) h; L
  712. ON_OFF_PPU:" w# M8 q8 p; L
  713. BEQ OFFWR- d' o: [2 i) L( z2 D0 }1 ~# g4 h
  714. ONWR:
    . y& `% u# y& X8 A, v: T
  715. JSR PPUADDR_PROCESS
    # i2 u  U. n* o) [- ~) W: {) C2 P7 n
  716. LDA ON_STRING,X  ?, t6 q  V6 G' s$ g
  717. STA $2007
    - B' d2 b$ ^! A% s
  718. INC $BA% E) l1 S8 t9 l9 p/ B: M
  719. INX( v( I) Y( g( U. v+ O! i
  720. CPX #$038 y' q, h: w# f9 P4 i
  721. BCC ONWR! [# r7 \; Y) g
  722. RTS3 m) r. i. `% z3 `
  723. OFFWR:. z) N! o: C% l( }& H) [: Q( G
  724. JSR PPUADDR_PROCESS) ?9 @0 n: f3 T
  725. LDA OFF_STRING,X, @; Z$ F9 s; h0 m( G; N% a' a
  726. STA $2007
    ! E+ r- _. d  Q. n, y9 p3 }4 G% F/ [
  727. INC $BA
    2 W, `; {. y. }/ g3 _
  728. INX
    0 e3 `; Z  G, p5 I4 N7 t
  729. CPX #$03% h2 D% y( j* |- l+ d1 ]
  730. BCC OFFWR
    0 Q# L. O7 {: [1 j/ I+ _
  731. RTS" Z' ?% y0 A$ X; @

  732. + _* {2 Y( k/ h% s
  733. LIFELC15_STRING:
    : v. Z$ K! D# m# z) r5 k8 T% j
  734. .BYTE $96,$93,$90,$8F,$82,$86,$80
    , r* N" P2 d1 B: s
  735. " j6 n+ T! Y; _) k% f  ~
  736. LIFELC15_WRITE:
    " g- b$ q8 O* K
  737. LDX #$00
    / q. W3 I% |* I: {# y
  738. LIFELC15:
    / [' C4 k4 }# i) X! p' F
  739. JSR PPUADDR_PROCESS
    - L$ o  d) k2 I9 N- ]# x; E5 T) a
  740. LDA LIFELC15_STRING,X
    : \+ Y  K# d. e
  741. STA $2007
    6 a" w3 N- }; C3 V" `
  742. LDA #$00; m6 {6 h; S3 p( D" O6 e/ p& V( ]4 b7 \
  743. STA $2000
    5 \! {# X( F# w/ F2 L- d
  744. INC $BA
    * B* Q3 z' |* }# u: T
  745. INX
    # S  d6 B: y1 O6 B: w$ x+ Y" P* [* I
  746. CPX #$07" Y% R" n8 k" b1 p' Z+ e
  747. BCC LIFELC15
    ) {  A, H7 t$ j+ X! n
  748. RTS/ f7 W6 ^; b8 y3 o$ L  ^
  749. 0 m- g/ N& E. n, Z# P4 F
  750. LIFELC15_PPU:
    * @! {  w' w' o9 X2 }
  751. LDX #$00' B& J3 h+ ]2 f) g/ v7 C" u
  752. LDA #$A2
    2 n' p8 o5 W' j2 r
  753. STA $BA9 J7 y" D1 I  a3 O3 O& n
  754. LDA #$21
    5 O5 f+ K  F, `' P
  755. STA $BB
    ) a- X: T4 O4 H9 @0 s
  756. JSR DN_PPU
    2 f+ p5 M5 s4 e- F- |/ G
  757. JSR LIFELC15_WRITE
    . E7 C" j% c7 ]* }
  758. LDX #$00
    ) \; O7 c6 P! ?
  759. LDA $07A06 i+ z) G; a( T0 u7 a) ]
  760. AND #$020 ^/ J3 l  u' ?1 R
  761. JSR ON_OFF_PPU+ ^2 s* c5 y0 A" @
  762. LDX #$004 N6 z/ l" R! M6 ?1 A% J2 ~
  763. LDA #$B1! o2 v) B6 e# g" C
  764. STA $BA
    $ s- Y4 k% t' V$ l' t& N
  765. LDA #$21
    $ m, r! i3 d5 X8 v! G4 L/ w2 I
  766. STA $BB
    $ D8 X. d  l; h6 J# D$ |0 w6 ?2 f+ _
  767. JSR DN_PPU2 H* P# m  i$ Q8 M5 z6 N
  768. JSR LIFELC15_WRITE9 D% |2 w, ]& A6 `& o& k
  769. LDX #$00! F8 j4 p* P) C, e* T
  770. LDA $07A1
    ! D5 C' ?& Y" P5 R. m# C( ]
  771. AND #$02
    ' `: q6 n( |7 s, o' q: K5 I5 h
  772. JSR ON_OFF_PPU, t/ u. M( f, k2 K2 o) W4 k: a
  773. RTS
    ' c% D) ^( _2 q& M3 E( V  g8 E

  774. + @' Y. O) L7 J; P0 Y5 I
  775. DOUCON_STRING:
    # r: H  S5 G( @1 ~# X- @
  776. .BYTE $8E,$99,$9F,$8D,$99,$98,$802 E/ r4 {5 q8 N, Y" q
  777. : V, t! w. W/ T4 C4 l, n
  778. DOUCON_WRITE:7 Q5 ^$ J" q; ]6 v
  779. LDX #$00  ^6 N. J! k& j4 G! Q: U# |
  780. DOUCON:7 j7 t+ \: }/ f* E4 }
  781. JSR PPUADDR_PROCESS3 B. ]9 Y* Z7 ]
  782. LDA DOUCON_STRING,X
    ! T, k+ V* A7 f
  783. STA $2007% j7 G" e& b$ C; N9 w3 C
  784. LDA #$00
    ; W( N' A# |& ~# q6 u
  785. STA $2000
    9 L6 w  X" m7 [- b3 z6 ]
  786. INC $BA9 _! e7 f( O* |% s
  787. INX: B4 x/ F  r9 ^" W+ g  f
  788. CPX #$07
    * s! O$ u; V. O3 d3 j
  789. BCC DOUCON
    ! v  @$ g/ d, f1 N4 i1 \+ [- f
  790. RTS8 G. l  Z0 Q  ^* |0 h& U& D5 h

  791. 3 T  v5 v! n& ^% T/ E) s
  792. DOUCON_PPU:
    5 w2 {* g3 M+ ?0 R/ l' P
  793. LDX #$001 R5 |1 B+ v% ?4 n% t
  794. LDA #$E2
    1 B! T  ]2 e# k; G
  795. STA $BA
    ( J3 O1 c* w! r
  796. LDA #$21; l6 q0 H- _- h- [
  797. STA $BB
    ' b3 S. y+ A- @" [  |
  798. JSR LF_PPU% z" z! f) V1 w6 B
  799. JSR DOUCON_WRITE
    ! v$ t& e7 h! A( s( V2 Y+ |
  800. LDX #$00# A* G! O! j9 R# L0 s) @+ _
  801. LDA $07A0, U8 `* F4 J( L4 |( F+ S
  802. AND #$043 |2 @- r$ ]" O+ A0 u$ @% C+ {
  803. JSR ON_OFF_PPU/ F! _. L$ c- a5 p% C: X
  804. LDX #$009 y% u- n% I, G
  805. LDA #$F1
    ; U5 E8 u/ _7 {" F+ b
  806. STA $BA( F% T! j+ h) |: V! J- d; O# Y
  807. LDA #$21/ l; A3 J3 [: S1 P6 |' J: Z
  808. STA $BB
    # T5 `" ?" a. F+ b  {4 ~( F8 Y8 T
  809. JSR LF_PPU, ]" @( ^, U  D& Q
  810. JSR DOUCON_WRITE( d) d$ [0 [( n! Q9 y" ^
  811. LDX #$00: ]0 u6 g* A- p0 E
  812. LDA $07A10 h! k- S3 d# z' F
  813. AND #$04* H5 C3 X6 [" f; @
  814. JSR ON_OFF_PPU5 F6 e4 v- G& P" p- V" g1 y+ F9 P* W
  815. RTS
    : q: c5 e9 W% t9 U5 N

  816. 1 i  j/ F/ w* c, S  b
  817. LIFELOW_STRING:
    6 H1 }/ f9 U0 b3 G/ c
  818. .BYTE $96,$93,$90,$96,$99,$A1,$80+ X9 O* ]8 ~5 U% M+ x

  819. + |, v- H8 V; k  c$ Q. n, k2 p
  820. LIFELOW_WRITE:' e) x" v9 C! \+ d5 J2 `7 Q( R# z! F! \
  821. LDX #$00
    ) S, V7 f! t/ q6 f: ^/ U( l- l
  822. LIFELOW:8 h  G4 ]2 ^/ X8 E6 P% O) [& h
  823. JSR PPUADDR_PROCESS
    8 W' w1 K1 s) C3 g( M9 F
  824. LDA LIFELOW_STRING,X8 Z; G4 Z6 h6 u: V& s9 C" o
  825. STA $2007
    . X$ Y( y3 w2 G
  826. LDA #$00" P1 c! C! |2 X( y
  827. STA $2000" e9 n3 L/ b. x; @( D- x
  828. INC $BA
    8 ]6 O0 F* N3 n1 K7 T9 G
  829. INX
      S6 X$ k  y: i+ p
  830. CPX #$075 Z- ^. j1 k; p) g) Q( w& o( n1 D
  831. BCC LIFELOW
    3 E: M% f6 l- V4 `% ^& M
  832. RTS
    : N8 }- K2 `; ]( q9 L$ a1 `

  833. 4 [* X7 t. Q1 M2 h& N
  834. LIFELOW_PPU:0 [5 J$ H( }0 v8 E' O
  835. LDX #$00
    - I% V; i) ~1 @  T8 X1 g8 t
  836. LDA #$22
    6 P% k& y; L4 v8 i' E
  837. STA $BA) g( t: y, ?" r  F& V
  838. LDA #$22+ M' ~2 G+ K: w7 F: V( o
  839. STA $BB
    . W5 f' [$ k$ `3 Y# L; n  r
  840. % |) M- ~& G0 H: }+ x
  841. % D2 Q, J+ S  n  c( U! J/ h- T0 X2 t
  842. JSR RG_PPU- m7 E3 M6 }8 o. W9 j' J
  843. JSR LIFELOW_WRITE
    ' ~7 y  I8 Y" [9 ^
  844. LDX #$00+ V6 z6 D& `3 C& S# J( z' S
  845. LDA $07A03 i' L. w1 B& J
  846. AND #$08
    4 S8 _4 Q! b% g4 s5 d
  847. JSR ON_OFF_PPU/ `3 @  o: z, ~- z! s! ~  l6 U3 R
  848. LDX #$008 R' j& d+ ^5 ^: l
  849. LDA #$31
    4 J6 ^6 k8 c& |
  850. STA $BA: R1 B$ Z/ B) Q
  851. LDA #$22/ O% e1 J0 f0 D- q" d
  852. STA $BB
    3 V4 h* J+ X2 L: ~1 ]

  853. * {9 W, F0 C# J1 C; y- B

  854. 3 M' o  f$ j+ i* {
  855. JSR RG_PPU
    - G, I3 @( [: b; t( R. h# n
  856. JSR LIFELOW_WRITE
    , v; h$ X  l$ V; t. Y
  857. LDX #$00$ G) Z6 j0 o7 t/ b
  858. LDA $07A1+ x1 s8 Y( J2 [
  859. AND #$08: k' p4 b5 u, s  P1 z9 p
  860. JSR ON_OFF_PPU6 Z4 r8 A! B( n! c
  861. RTS: L8 }( k2 Z4 l; u, G7 d

  862. " O. b8 j0 R" p$ l
  863. KILLON_STRING:
    ; h, @* r2 [2 k. X) d- p
  864. .BYTE $95,$93,$96,$96,$99,$98,$808 G5 A4 e" i) Z4 {

  865. 4 O  ^+ J2 Y% [9 u/ t& `
  866. KILLON_WRITE:2 u+ g" h" ?! s" l$ S. l$ d( R' |
  867. LDX #$00
    ' ~' t$ [( h" X6 A( C7 A* g& k
  868. KILLON:
    * h: X! p7 N0 j4 L, {0 i
  869. JSR PPUADDR_PROCESS) t2 X" l5 w0 x6 z8 g9 `: `5 ^
  870. LDA KILLON_STRING,X) S1 V  w5 Y1 Q/ }
  871. STA $2007* p# [5 D! k, H9 g2 S+ d/ h
  872. LDA #$00
    ' Q1 ~9 k$ u3 ^: e7 m( P7 S( S( `6 g* t
  873. STA $20003 ]) ?3 P: o3 }- h. v6 N! m: \) l
  874. INC $BA& W3 w4 T- F2 M: t, h" D% Q/ M
  875. INX
    5 U; j" n+ U" E' T( ?
  876. CPX #$07
    ; t, _. V# v% p9 J
  877. BCC KILLON
    ) [) k2 p+ t5 A0 {, w2 J
  878. RTS
    # g( e* P$ Q6 a' w3 j" w

  879. * ]+ [) j. P7 K! I) `
  880. KILLON_PPU:
    , E$ L7 Z) l! k# K; ]
  881. LDX #$00" H1 P, F* w1 N8 I8 f9 V! d5 Q$ p$ ]
  882. LDA #$62
    ! A$ U3 \; G$ O
  883. STA $BA
    5 d4 O& W; F# b3 q, d  B* x
  884. LDA #$22
    0 M, F3 Z9 I$ A
  885. STA $BB
      q4 ]' n4 r% m0 [! P1 M

  886. 9 y, W" Y7 V8 W( T
  887. $ y) A9 Y1 U$ r* m
  888. JSR B_PPU
    ' t( A- U, v+ {! t; h1 ~) U/ a, [
  889. JSR KILLON_WRITE
    & U- i/ _9 p( L1 U, _0 F
  890. LDX #$00
    & Z% K# }! Z6 q/ z
  891. LDA $07A0  r/ c; z3 C: F" j1 w4 r
  892. AND #$10
    $ r; }# \- r- @: R/ H) }
  893. JSR ON_OFF_PPU5 Q5 z2 @) p4 ?! ]$ C0 ?9 X  _- J
  894. LDX #$00. x3 r6 Z9 ^+ c/ M* C
  895. LDA #$71- p: {4 d: }) b& y
  896. STA $BA- z7 s8 x9 n1 G; U* p5 h
  897. LDA #$22' f+ k8 j0 i: C2 I
  898. STA $BB
      B: r+ p9 e% ]1 V

  899. 6 N0 B6 I- d' I" q8 A

  900. - U2 M9 E" o7 x8 j3 y( N1 ]  E) {- ~1 ~
  901. JSR B_PPU& E7 k; z: B' L* H
  902. JSR KILLON_WRITE
    . U' B; X+ ?$ W( ~
  903. LDX #$00
    , ?* d$ @2 ?$ t' {/ I% [7 k* @
  904. LDA $07A1
    . n% p/ o% z5 H4 n
  905. AND #$10& ?0 v. X" j( M
  906. JSR ON_OFF_PPU3 q. o4 |4 o% X
  907. RTS
    : ~1 L/ W& s/ r8 `
  908. $ B8 B/ y. q! y1 f: j
  909. SKYFLY_STRING:% \* Y) Y* y; M$ E! y$ s8 P- _. G
  910. .BYTE $9D,$95,$A3,$90,$96,$A3,$80$ ?- ?7 J3 C9 n+ @. U4 u7 Z

  911. - n# V- f7 O: _' R9 `' ]
  912. SKYFLY_WRITE:/ s; L- g- c9 X6 a- |$ q* S% u7 M
  913. LDX #$00
    , K, [) L/ ^1 r* z) V" H8 n
  914. SKYFLY:
    " C' H; ]! ?/ E9 }
  915. JSR PPUADDR_PROCESS
    ; Y3 l) ?/ x, K! ^; H& R
  916. LDA SKYFLY_STRING,X
      @# q1 U, q4 W; B8 _, y# b4 l
  917. STA $2007
    & a7 {9 U) ]) L. u2 K
  918. LDA #$00
    * a. s! A1 P2 {
  919. STA $2000& E8 P+ z. Z9 f2 a2 N& }
  920. INC $BA
    4 J( n. j9 P+ M7 q) R- L
  921. INX
    6 [$ a% v, ?1 }* ~5 ^- T
  922. CPX #$070 ]) w) E' {4 Y% ^( A% [. w
  923. BCC SKYFLY
    + V# h4 D( J; l  T
  924. RTS
    8 F# m' B  M3 d# J, \1 k

  925. 7 E& e) ^; o: O( G1 X* f
  926. SKYFLY_PPU:
    ; S* ]$ K3 \% x* g" u, ~6 s, D
  927. LDX #$00
    * g. N* J# E2 b4 p: w7 s+ F/ e& S' G
  928. LDA #$A2
    # |& u$ h+ D, t+ T
  929. STA $BA( B, w+ c! p$ N! d+ L/ N
  930. LDA #$225 e9 n( o, }) c! ?; S# r' n! N' U
  931. STA $BB
    1 q2 Q5 z( p! C, ?  B1 B
  932. / c( O! E9 q% u! \

  933. $ ?( q& C7 O5 |4 m) e" J
  934. JSR A_PPU, z# ]3 M, Y' m7 |
  935. JSR SKYFLY_WRITE3 e, m: l& e. q' i6 D2 f
  936. LDX #$00# d9 d7 k8 P( B- O5 [# \
  937. LDA $07A0+ p, R9 u2 H1 J- r! a/ s! x
  938. AND #$20" r2 I0 \! i/ D
  939. JSR ON_OFF_PPU
    6 |0 F: v8 a$ N, G
  940. LDX #$00
    , ~  U% W" i# b% `5 E  s
  941. LDA #$B1
    3 T6 n0 }: p" f7 O  n
  942. STA $BA, ^( O# {6 U& C
  943. LDA #$22
    ; t* _7 E5 t8 E% S/ {, v& J& V
  944. STA $BB
    4 D8 R, n+ t$ Q* l6 K+ }

  945. " O$ h3 F5 N* k, b
  946. % g6 X% e- x- D& A( w% W
  947. JSR A_PPU1 }3 L4 k' h+ E' o* R6 e' o
  948. JSR SKYFLY_WRITE
    . z' Q8 F, p1 W: j  A, ]
  949. LDX #$00
    " \# j- u( Q4 N9 ]% \
  950. LDA $07A1
    6 o# p' p) H7 l) [. S' W
  951. AND #$20+ B% ^9 u" u) @6 l
  952. JSR ON_OFF_PPU
    4 c$ {4 H! T4 }+ l3 x; p
  953. RTS
    ( G2 I; V4 t8 c' \) L/ r& U; z4 X' z
  954. 7 {& }0 ~+ k' H% l" A
  955. BULADD_STRING:3 U; s4 C6 n* i: e9 R* L+ x
  956. .BYTE $8C,$9F,$96,$8B,$8E,$8E,$800 o: C: d2 d- n3 o. R' ^% d

  957. $ a7 @' L- H7 f% ?+ Q1 y
  958. BULADD_WRITE:, T! Q0 Z6 T4 J/ }, g. e
  959. LDX #$00
    + v1 Y  w! l4 t: b5 H
  960. BULADD:
    " Z! b+ x4 P5 _, b& X
  961. JSR PPUADDR_PROCESS( |: M- g* V- v3 q
  962. LDA BULADD_STRING,X9 y. @9 m9 w/ ^; u
  963. STA $2007
    3 V- M8 Z; X, l% {. V) I. s5 g
  964. LDA #$000 H8 v% L% k; m* ]# v
  965. STA $2000
    2 q. ?) V+ i; p# J; z. l* C, U2 T) m! ]
  966. INC $BA  v4 {6 z/ s9 t& r/ z7 V% `
  967. INX* H$ D0 P+ [* H4 t9 Y* t
  968. CPX #$07
    0 f5 Z: w% \4 A; N# G& C( i* f. @
  969. BCC BULADD
    + f8 |! d6 d" }0 m  T3 |$ h
  970. RTS8 @9 F  [8 M! T$ d5 N
  971. - b+ ?: n# k1 r1 b
  972. BULADD_PPU:- T5 `& L, Q: p% S. k2 u! M
  973. LDX #$00  Q. I8 Y. |# B5 ~% l
  974. LDA #$62$ T3 N7 ?& n" \
  975. STA $BA" @+ U+ f+ m' n. j; r( `1 \& D2 v
  976. LDA #$212 Y+ E: x1 Z; V. A* p9 I
  977. STA $BB
      M) P7 k6 ]; ^$ ?" E) }# Z  s/ y" s3 ?
  978. , V! _1 c  h6 }8 h

  979. 1 c  _* K4 K# V8 u5 h
  980. JSR UP_PPU, J( B' @9 B4 D1 m0 K- T& p
  981. JSR BULADD_WRITE  d& N1 j" ~6 h/ \+ ]" Q
  982. LDX #$00
    ) Y8 ^- }  O  _; n! U+ K
  983. LDA $07A2
    3 R1 [6 z7 W7 @0 `
  984. AND #$01
    . ]& s6 J  X9 i+ f- M
  985. JSR ON_OFF_PPU. R9 F6 M$ G  ~2 I7 e. C1 ?
  986. LDX #$00
    5 Y! T+ p# s" ~3 M2 `
  987. LDA #$71  u5 }3 S1 D- T7 O
  988. STA $BA
      ]% _0 `9 ]$ O8 e' |' Z' b: i
  989. LDA #$21
    ! Z( u6 M( b/ _. t( R
  990. STA $BB5 H1 w- B3 X1 c$ O  M; d! T

  991. * M' l" E! f3 R: @! G4 s# b' _
  992. & S6 m9 U0 K; g. n
  993. JSR UP_PPU
    , K% z- L" W3 l8 `! n
  994. JSR BULADD_WRITE
    % }) I7 Y; }: @8 |: h1 ~" n
  995. LDX #$00
    + }0 C! @. E. r( {
  996. LDA $07A3! b8 {" T; A/ Y! U
  997. AND #$01
    0 c6 s  D* ?0 y
  998. JSR ON_OFF_PPU# C3 @; U: f/ A& p0 D9 k8 S
  999. RTS9 s% \- W' F3 e. A. d' t# H
  1000. ) G7 }5 }4 d7 q6 M( @
  1001. MENU_PAGE_STRING:2 t  ~0 X3 m6 k8 U
  1002. .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81$ O( @1 P8 r# ^' n! F

  1003. $ K4 x1 p& X, ?, F% Q+ c' N
  1004. PAGE_PPU:+ V/ s& L5 n) H; v
  1005. LDX #$00' }6 X, @3 v$ R9 P$ E) w
  1006. LDA #$0A1 H' N/ L7 w4 k' R$ q
  1007. STA $BA  C; A9 f, I. Q
  1008. LDA #$236 u- S( h2 k9 Z8 p
  1009. STA $BB
    : Z9 p8 [& J) N6 ]7 p6 U) y
  1010. $ r' d' t; y( m9 C3 y( S

  1011. ) E! p% l& \- k3 j: T4 w+ T0 e
  1012. MENU_PAGE:
    0 F9 I9 K1 \: c2 k6 ?) u) S: J
  1013. JSR PPUADDR_PROCESS
    / M* r! c+ ?5 W  g
  1014. LDA MENU_PAGE_STRING,X
    0 y+ M* K8 L7 W) b" N. u9 Y
  1015. STA $2007
    2 U, x; a9 r4 a1 x- x) m2 z# y$ _
  1016. LDA #$00: y9 b4 X% P4 N- G- L
  1017. STA $2000
    # ]0 V( t8 j. A) ~1 |) q
  1018. INC $BA
    / N% R* u0 Y  G# x. \+ d( d! V" f
  1019. INX5 w4 J1 U* r3 U# U8 y
  1020. CPX #$0B
    : m& |5 C, V4 F8 |. h7 B+ Q; c
  1021. BCC MENU_PAGE
    ( y: G8 s6 s+ A9 D
  1022. LDA $07AA
    5 n8 l5 ~" }: T5 f- _9 z
  1023. CLC
    : v( M- M) \, h4 C' c+ C$ k
  1024. ADC #$82
    : e. f& D/ [6 m
  1025. STA $2007
    6 n) ?. a, \1 y6 m$ N$ a9 s
  1026. LDA #$00
    0 p* ?2 M+ ~. ]* |0 b
  1027. STA $2000# E  C1 t" Y3 G* I: p. j6 Z0 o
  1028. RTS
    ' \3 a; [1 P& Z

  1029. % X0 d0 X& I% g/ v! ~2 Y8 C

  1030. ) S7 g5 o7 S" ]4 m$ G) ~8 \! q
  1031. SKINGE_STRING:% i) C& r  o0 D) B6 `* K+ F' W1 ^3 B
  1032. .BYTE $9D,$95,$93,$98,$91,$8F,$80
    0 H' s! L/ r+ t3 e! u

  1033. $ g, j4 j" ?* V' X9 s) m% d
  1034. SKINGE_WRITE:
    . W: _# k% F. Z6 s. n" c- \, H$ ~
  1035. LDX #$00/ a* x: {. I$ D* w7 x. K
  1036. SKINGE:0 ^/ c4 Z/ [9 s# ^8 e7 C
  1037. JSR PPUADDR_PROCESS0 i5 Q, \7 x$ `% O7 s$ V
  1038. LDA SKINGE_STRING,X
    ' \. @/ f! g3 i" `( c: R
  1039. STA $2007. \: q" k, ]8 ?- A: T
  1040. LDA #$00$ E/ v7 l$ d, M; \: N+ K5 o
  1041. STA $2000) i  F; F5 x! a
  1042. INC $BA* j7 a3 }; }- l; D( y% X! Q/ `
  1043. INX
    3 y+ {7 M( ^7 t- p6 T$ U3 G% s! [7 }' `
  1044. CPX #$07+ g5 U( y1 {  i; H' |
  1045. BCC SKINGE
    + `( a4 u5 k. |2 S( p7 j
  1046. RTS
    5 C; k4 v0 `' d& p# M

  1047. - R5 E. `: }( p1 o9 `7 I6 @8 @' w
  1048. SKINGE_PPU:
    6 O$ l4 R% z4 O. [$ q
  1049. LDX #$002 `  x/ A! q( N9 z8 r
  1050. LDA #$A2
    / t7 f, Q3 ^  e* Y# S% a6 ~
  1051. STA $BA
    # W0 G. ]4 W/ E5 p  D, @
  1052. LDA #$21
    : I7 a- M1 o: S6 R. b0 l
  1053. STA $BB
    ( p8 i' i2 X" L: [1 Q3 \4 `6 {
  1054. % P4 |* U" H! p+ }5 M/ H4 h4 x

  1055. + W8 v& e9 F7 m4 q5 H5 ~, X$ F
  1056. JSR DN_PPU; S0 _# k$ v3 N) x1 a; z" @
  1057. JSR SKINGE_WRITE
    / }* E1 I; \9 n/ L, D1 Y5 W
  1058. LDX #$007 J0 i* X0 `+ G, D5 c  \
  1059. LDA $07A22 B$ d% l- U3 }; k0 Z
  1060. AND #$02( p) |# [6 v# S3 T+ d. S
  1061. JSR ON_OFF_PPU
    8 P$ Y" e* W3 j. O* |, c/ Q9 G
  1062. LDX #$00
    9 z2 V! |; p# [+ h+ H9 X
  1063. LDA #$B11 R& W( _0 F; }% s
  1064. STA $BA9 G% L% S- l  i' g
  1065. LDA #$21! d) c$ ^" N5 q3 d. O; m
  1066. STA $BB* e8 c8 g$ @, U. t- ~3 z
  1067. " J2 e( ~' I* z) R7 u

  1068. 8 c5 Q- g. @5 M: E! ^
  1069. JSR DN_PPU
    * W' [) i" y2 N  M- L5 p
  1070. JSR SKINGE_WRITE* B0 j. [4 U: s" T+ e
  1071. LDX #$009 c, z- F$ B% E, p5 f" U! H& q
  1072. LDA $07A3
    & h) L& l( k* `8 X; a
  1073. AND #$02+ k) M0 M1 p+ \
  1074. JSR ON_OFF_PPU( F- q7 c- C* y  Q
  1075. RTS
      V3 |" h$ q: m6 ?5 B+ U2 W
  1076. - b6 x* b! \! e% l. q% ]
  1077. BULMIX_STRING:& l5 ^1 @3 D0 t3 K
  1078. .BYTE $8C,$9F,$96,$97,$93,$A2,$80
    / b! U* n: e( X

  1079. 4 m) k; K$ \% E$ T
  1080. BULMIX_WRITE:
    6 O1 M) z5 o" `" I, E9 \+ H
  1081. LDX #$00
    0 A& ^+ ~( w* o% p: D
  1082. BULMIX:+ ]  g! d7 Q9 @# e4 w& V% Q
  1083. JSR PPUADDR_PROCESS7 N: q( b7 ^# i
  1084. LDA BULMIX_STRING,X9 u6 F$ }2 P5 F* G
  1085. STA $2007
    ( b# l: k7 G. p3 ?
  1086. LDA #$00
    , u; v5 q7 f" ~4 ~! N4 s
  1087. STA $20001 z- o' J: E7 ]  L
  1088. INC $BA
      \" a7 a: x% k" z
  1089. INX5 e) k/ p* N8 ?+ s! ]1 @
  1090. CPX #$07
    5 k4 f* g% D/ x
  1091. BCC BULMIX
    4 [& W5 Y$ u3 l. a7 N# ~
  1092. RTS0 ?: ]. k6 l& h: R" @
  1093. 9 E2 V. {5 ^$ F) `0 s8 M
  1094. BULMIX_PPU:) |1 d5 I  O% m# v$ N' Z# w
  1095. LDX #$00( U5 J% z# n9 z6 D
  1096. LDA #$E25 T; c, M- ^4 v' W5 i) y
  1097. STA $BA$ e; c0 S4 g# [3 s$ B6 _
  1098. LDA #$219 U" p9 ]* s* j, Z* O+ X
  1099. STA $BB
    4 p0 v8 [7 u2 O; \6 ~! x

  1100. 7 ]) u% F' ~8 o2 `0 T8 G; p4 T

  1101. , L2 w! ^9 _, Z" f& j3 ^
  1102. JSR LF_PPU) N9 U( ^+ G4 J/ ^% z! M7 H
  1103. JSR BULMIX_WRITE
    2 V3 r% D/ m" U# @3 H+ N' Q
  1104. LDX #$00" Z1 X- G9 ~/ M0 n
  1105. LDA $07A2
    ! a$ `: ]0 Z8 s9 q
  1106. AND #$04$ \+ N1 e+ |4 m' `9 G2 T
  1107. JSR ON_OFF_PPU
    3 y( p9 h' g  ^7 u7 E
  1108. LDX #$00
    , |& N4 L5 j5 s) G3 a- c* o% _
  1109. LDA #$F18 f. }! H7 p% r$ T$ ?# y: z5 c4 r
  1110. STA $BA
    " @  P* v# [9 H0 w
  1111. LDA #$21
    . J! @/ F: A- M3 A: _$ v
  1112. STA $BB  ?8 M- S, i6 b" r/ N
  1113. ! V$ I/ k9 `/ M7 e

  1114. ( b" [/ e8 r( q8 x. M* ~
  1115. JSR LF_PPU4 n9 v/ \( }; G# L" G1 s( }5 [
  1116. JSR BULMIX_WRITE2 {4 A0 I' C' A$ o* X
  1117. LDX #$000 B7 c: Q8 L3 `* {  v
  1118. LDA $07A3" _2 a" }# o# {4 |4 o, R) h
  1119. AND #$04
    : @7 T3 Q7 q# g/ K% n6 s
  1120. JSR ON_OFF_PPU
    3 U6 g3 p9 Z; a  x; {
  1121. RTS
    . p1 S6 Q7 l9 a" M& X5 t

  1122. ; D7 C  w: M; q9 [5 }* ^# b
  1123. ENELOC_STRING:
    ) b' `6 H7 f5 k
  1124. .BYTE $8F,$98,$8F,$96,$99,$8D,$80
    / M  ~* y6 F( l& u

  1125. + p8 |7 K" a' G% G
  1126. ENELOC_WRITE:
    8 U: G& i; [1 ]  U  U) T
  1127. LDX #$00" }( g- n2 {$ z* ?9 y
  1128. ENELOC:  P/ J; E; P- p, W) L8 U' |
  1129. JSR PPUADDR_PROCESS6 l# U8 q  v* Q6 E& {4 T9 }
  1130. LDA ENELOC_STRING,X$ J6 ~9 p" s2 {( {0 T5 ~
  1131. STA $20077 i! c) D7 l- \" @. Z
  1132. LDA #$00
    ! d! @6 T: Y; y( }* H4 S
  1133. STA $2000
    : J: I. v5 A" E6 l5 G6 y! z; D
  1134. INC $BA! M, U( a# i9 f9 R) O
  1135. INX
    3 L/ X3 _6 M0 n$ _  ?$ Y
  1136. CPX #$07
    # ?# H% n- \2 A7 U5 L
  1137. BCC ENELOC# B- E2 a4 L) C
  1138. RTS! U2 X5 c- O" ]* l( t! c
  1139. 6 {! G3 s) ~6 n: U2 J8 R
  1140. ENELOC_PPU:
    3 ~! e: K1 _; r0 @
  1141. LDX #$00+ x; N/ I  t4 n+ u0 B! f* w
  1142. LDA #$22
    0 {+ Q1 X4 q% o8 W& ~" g, m3 `/ d
  1143. STA $BA: ]5 g1 O( r# F$ N/ v
  1144. LDA #$22
    7 r+ P* c- c" ^2 Q+ R5 K9 P6 C
  1145. STA $BB0 }% t5 _7 h6 e6 V8 }
  1146. ) M% h% R- [- }: z& v; ?5 z) N
  1147. % [: D! [0 }1 K& X
  1148. JSR RG_PPU& Q' i- L% ?$ R5 _
  1149. JSR ENELOC_WRITE6 D4 N3 [8 V) K. _( a
  1150. LDX #$00  C9 {; A+ X8 ?. O3 U* r* u( p  _
  1151. LDA $07A20 F# d1 P3 s, @) n
  1152. AND #$08
    1 v! B9 W* X+ J; b- h! N5 Q
  1153. JSR ON_OFF_PPU
    2 k1 K2 K; x6 q' I5 b
  1154. LDX #$00* A' X1 W8 t& H- Z
  1155. LDA #$31
    . w) l* {; r# n
  1156. STA $BA0 L) k% ]+ @3 D/ [2 i4 E6 w# O
  1157. LDA #$22
    + N8 z! T$ z: B5 r- V: H" e
  1158. STA $BB, X0 \; b9 H# n7 v0 ?! x
  1159.   N7 x5 R7 ]' D
  1160. 4 j6 W" D( L# F8 W
  1161. JSR RG_PPU
    5 W/ @5 U. ?$ X  h/ j) ?9 W4 @
  1162. JSR ENELOC_WRITE
      {; z4 W' E8 P; L, f3 P5 p& k
  1163. LDX #$00/ x# a& W1 X) F0 `4 y
  1164. LDA $07A3" h! ]' T% b+ y2 \. v+ o4 z
  1165. AND #$08
    , Q! h5 v# p) d
  1166. JSR ON_OFF_PPU
    1 `" P# _* u1 m5 r) s
  1167. RTS
    % T8 q$ ?9 V* t, Z' }
  1168. $ G# ~- O) l* [( r& `- i) e* h/ r
  1169. FOCFUL_STRING:
    $ R3 y2 Q5 u" d; A9 \# ]
  1170. .BYTE $90,$99,$8D,$90,$9F,$96,$80+ N& r( E, C: V& J' P

  1171. . N+ L% v5 ?" |  h0 D

  1172. $ \8 ^1 ]/ O& g- \, i1 ^
  1173. FOCFUL_WRITE:3 H7 `  `3 X% @* O6 U+ P
  1174. LDX #$003 @9 U8 ]1 v6 N1 d& L% Q
  1175. FOCFUL:
    9 ^/ k* |% p% v4 r8 ~8 b2 p" D
  1176. JSR PPUADDR_PROCESS: g# L) j5 [& c; k
  1177. LDA FOCFUL_STRING,X" E, j( |) G( W
  1178. STA $2007
    7 @! J. a8 `1 {" o
  1179. LDA #$006 n" [! i; M6 E
  1180. STA $2000
    ) z6 t2 X$ n+ d% _- b* c
  1181. INC $BA* s" K0 ~- P1 }* d3 ^  e0 l
  1182. INX( `: n" K+ D, }6 y
  1183. CPX #$07
    7 s. W8 H; d9 T) N) h
  1184. BCC FOCFUL# B2 G4 z5 a  h4 ~9 x+ p
  1185. RTS
    " o( L+ Z# {$ U% S

  1186. 6 X; r% f2 Q) [
  1187. FOCFUL_PPU:$ o$ I* C4 S" `  \! E  t
  1188. LDX #$00& g: A2 X+ v2 r- F6 C1 C3 j% P
  1189. LDA #$621 j* `  X$ v5 E
  1190. STA $BA- g* V' n& e0 v3 W  E7 X
  1191. LDA #$220 Y& K! Z8 d5 Y: E! G% _7 e! N; k4 A6 S
  1192. STA $BB
    9 r/ T0 ^0 r$ n4 r7 h0 W% H1 M
  1193. , J# E+ m5 j, B+ z9 e; j5 O6 h
  1194. + j3 {7 `, Y8 C' G+ x
  1195. JSR B_PPU. z  I4 n& }% l0 X( S
  1196. JSR FOCFUL_WRITE
    7 u8 u7 |9 J  v. P" P/ h
  1197. LDX #$00
    1 h! X: e" T' H7 X1 v1 ~
  1198. LDA $07A2
    * {" c& _/ @) k9 v
  1199. AND #$10" t+ |% m+ |" e
  1200. JSR ON_OFF_PPU" v  K9 X5 i* d
  1201. LDX #$00
    ! v' F) q3 h  y+ T& g( M7 L- C2 k* l
  1202. LDA #$719 Q) n4 \8 j  S& q8 ]- e) u
  1203. STA $BA
    4 d+ h+ T0 d& h1 `# Y5 ^' ~  C7 I
  1204. LDA #$228 ]6 B" W6 e$ A9 X3 X& L
  1205. STA $BB
    " H4 G8 X3 }: w3 ]9 T$ c0 V& y
  1206. / m5 z2 a# B& o" W
  1207. , {' s8 i5 f  l# M% r
  1208. JSR B_PPU
    % ?' J/ s! v2 @5 ~
  1209. JSR FOCFUL_WRITE
    $ P: T9 x" S+ B! m6 ~# W
  1210. LDX #$00( |; E  K5 Q' C; r' o
  1211. LDA $07A3; O* J; S- m" ^
  1212. AND #$10
    # n; R  j1 \- `+ o* ^7 E
  1213. JSR ON_OFF_PPU! \* B% b; J' U
  1214. RTS5 y4 l  f6 W) v' J  T$ ^; V

  1215. $ h+ ^+ F$ z: Z5 n
  1216. BULCON_STRING:( s' _2 j$ N& {0 h
  1217. .BYTE $8C,$9F,$96,$8D,$99,$98,$806 U7 M9 F% x4 U1 ^# m

  1218. : ]5 ~' d) {% \# b' b7 Z% `3 d

  1219. $ F& w1 j# N. I5 }: V
  1220. BULCON_WRITE:3 P/ l; D' g! l) T6 C% A# B
  1221. LDX #$00; J  Q& M3 }/ x' O" [, Q8 f
  1222. BULCON:
    & J" h. O% V3 _  \0 ^( @1 s
  1223. JSR PPUADDR_PROCESS
    ! q7 n0 w- |$ [  _) {: r& h
  1224. LDA BULCON_STRING,X% k5 b8 {* U( j  I: ~1 A
  1225. STA $2007) |( C# m. Y$ k, i% I, V, \
  1226. LDA #$00
    / B% a( X( O& d3 u3 q
  1227. STA $2000
    4 Q. F6 S& q' U
  1228. INC $BA
    # V% |! ^) Y2 s" G! s
  1229. INX. y6 b  Q+ X( {/ s4 X* m( }/ g
  1230. CPX #$07
    ! v  X. Y4 G% f. ~* _
  1231. BCC BULCON  S, y, V/ B3 `/ Z/ c( y* M
  1232. RTS# z2 {% P& S/ b; `; [+ X& s, H
  1233.   \& O9 i3 Y$ _- U! d
  1234. BULCON_PPU:
    " r' B2 p/ y: ]9 J
  1235. LDX #$00
    : S5 v# c+ v# o; I* z
  1236. LDA #$62
    " Y4 {7 w7 p' q, T/ z
  1237. STA $BA
    5 M; q' g  l  V
  1238. LDA #$21
    $ R. I% g& V- s$ _6 _
  1239. STA $BB! e- k' {# a9 Q8 @

  1240. 1 _; I% R' }; t% }) p3 x; x# f3 x2 ]: r

  1241. 5 H- f- d8 j% g$ ]5 \
  1242. JSR UP_PPU
    , u4 b: p7 K. t( ?
  1243. JSR BULCON_WRITE+ {( s2 S" z- m4 O# P" z; G3 T
  1244. LDX #$00
    / v: X3 b/ b- o+ I% Z# s
  1245. LDA $07A4
    ' o! j; j  y# B; S9 {/ z3 C
  1246. AND #$080 Z! p# j* D0 E+ H
  1247. JSR ON_OFF_PPU# s/ r/ C  B) S0 y( w7 c
  1248. LDX #$00! ~& ]; {! M& `5 c
  1249. LDA #$71
    * ~2 T' R. W8 i
  1250. STA $BA+ _$ E8 u% {( t/ m- _2 o* _
  1251. LDA #$219 q. a& X. F2 F6 ]( |+ g9 Q) I
  1252. STA $BB
    & c3 t. Z; G; S- l7 ^5 Y! {

  1253. ' [- p! H5 c: o1 S0 {3 ~6 D
  1254. # V8 R) _8 \7 y" K: ~* l
  1255. JSR UP_PPU
    * N1 u. ^/ Z. o1 d& A2 \
  1256. JSR BULCON_WRITE
    7 t' I4 @* y, O# h( D$ H. {; y
  1257. LDX #$00
    7 {# D3 D8 V) P) H) a" d9 j$ Y
  1258. LDA $07A5: k# x% ?- j% ~! u
  1259. AND #$08
    / E+ m: s" Z, M% Z; g! F% y0 {: z
  1260. JSR ON_OFF_PPU# s; ^; ^9 p( e3 ~1 M9 z
  1261. RTS
    4 m3 D/ m& ?) `; x
  1262. , p$ z7 I* f: S% r
  1263. SPEBUL_STRING:0 z, U5 R  [& n: W
  1264. .BYTE $9D,$9A,$8F,$8C,$9F,$96,$80" ^+ ?5 }4 Y% U9 X1 q
  1265. : p& y" Q5 U  L3 Z# H  e0 O) i! X" Z6 [. ?
  1266. ! w; n& S2 j) G; G/ R2 J" I
  1267. SPEBUL_WRITE:
    & [9 e- v" `, B5 Z! c4 t* Z
  1268. LDX #$00
    : ]  l+ |% b6 E2 v5 z- S' v
  1269. SPEBUL:
    : R  f) v! m* ~
  1270. JSR PPUADDR_PROCESS* k8 `' f; t! L6 e+ @2 q
  1271. LDA SPEBUL_STRING,X  b8 {  k& T9 d( r8 o
  1272. STA $2007
    # E) U! \0 w, X, k- \4 i5 _4 a
  1273. LDA #$00
    ( J. u/ |  l3 \$ E1 J" F9 I/ d
  1274. STA $2000
    * L1 l* n6 q7 y( t8 O( i: B
  1275. INC $BA
    * |( W6 `1 K+ m4 ^! ^9 e) n
  1276. INX8 q* ^4 R( V1 n" [4 M0 X- U/ ?
  1277. CPX #$07) [: @5 {- g% o' U* V1 n7 K  E
  1278. BCC SPEBUL
    5 B% o9 `7 c! {4 w8 @) j
  1279. RTS
    / [2 U7 m* J4 V  ^- Q5 c" I0 n
  1280. ) E- y+ U/ |6 Y3 K# l4 s# P
  1281. SPEBUL_PPU:
    & s4 C6 ~1 j* a/ d) N# Q; j
  1282. LDX #$00
    # l# e: t& t( W- C" i
  1283. LDA #$A2
    / f% I3 K2 V" J, |1 Z
  1284. STA $BA
    - v) ^4 S& f+ l2 G6 y+ y
  1285. LDA #$213 N- x8 a8 i8 i) z# C
  1286. STA $BB
    & ?/ P7 p1 P6 n7 ?% X9 E

  1287. 7 G' o6 A" }  h6 q- ?( f

  1288. 0 T4 X  A* o4 L: A! B6 \4 ~
  1289. JSR DN_PPU( m5 V9 L" N) D* @1 V, p: f- P
  1290. JSR SPEBUL_WRITE
    2 ^& \( W7 @6 \3 V7 @5 p
  1291. LDX #$00
    3 O, c9 t' n0 g6 i5 U% x9 u. Q4 N
  1292. LDA $07A4* d/ Q! E7 l& E* K
  1293. AND #$02# Q: G1 w5 J# p5 _
  1294. JSR ON_OFF_PPU
    / {, ?: x& w8 {- x8 v" X" _* f
  1295. LDX #$00. s* o7 ^% k; s7 y/ J
  1296. LDA #$B1
    $ x7 b& U3 }# ?+ n! h3 g% `6 s
  1297. STA $BA
    5 r) ~! K% D3 b5 E  L/ u6 n
  1298. LDA #$21
    : y* G, Z1 A% s3 ~
  1299. STA $BB
    % u- v5 o/ b! z: K

  1300. 9 I6 C* K: }2 C' |, i

  1301. / V  f; s: i- _* y* j7 H$ G6 ~
  1302. JSR DN_PPU) Z  {+ e0 c; l- m- G  u
  1303. JSR SPEBUL_WRITE. d! o8 R9 q% A8 j9 Q
  1304. LDX #$003 t) N! ?, ^- {* O: Z# }& b
  1305. LDA $07A5# c8 T, k4 U# g1 L( }
  1306. AND #$02
      V* x, j9 i1 _8 w
  1307. JSR ON_OFF_PPU
    0 Q1 {" N7 z/ {0 X! A
  1308. RTS2 a3 n. R( m) j) q
  1309. ) x  H7 b; ?4 Y9 _
  1310. .ORG $A5000 D6 D  e* e% V  [% p, s' U# M$ C& Y
  1311. CLEALL_STRING:: o; B' X( r: R
  1312. .BYTE $8D,$96,$8F,$8B,$96,$96,$80& J. O, B  T* k% Y

  1313. 4 B/ h, s. v) k+ w) |; J1 a/ F

  1314. : S* g! O1 r+ q% ~1 |/ w4 D
  1315. CLEALL_WRITE:
    " K, ^* m" l) T
  1316. LDX #$00
    ; v' M$ [4 V+ }+ A
  1317. CLEALL:
    $ n5 v, t( o! i3 T! p
  1318. JSR PPUADDR_PROCESS
    ! J3 }1 H+ J. j6 {
  1319. LDA CLEALL_STRING,X
    2 t* z! a! h4 w# X/ p
  1320. STA $2007
    / m! E6 K3 v/ \; p
  1321. LDA #$00
    - }7 l* k. S# M6 o, R4 @
  1322. STA $2000- d" Q& r2 h4 W( Y5 }
  1323. INC $BA5 H# _0 ]' C9 w( ^8 f( l% h  |2 N8 p' o
  1324. INX3 a7 x" e+ h- Q4 x- A# b/ C
  1325. CPX #$074 l: j* ]- ~6 I0 D6 Z: }
  1326. BCC CLEALL
    & r8 @1 S% K, f3 K1 |8 N: C
  1327. RTS
    ) G5 V0 I1 i1 b& F, ]9 U* [+ I7 e4 j
  1328. # ?4 _# r! z2 p
  1329. CLEALL_PPU:
    1 w3 o# m% n, s/ O8 @9 x% Z- m
  1330. LDX #$00* N% e+ T& n) K% }4 I  T
  1331. LDA #$E2
    1 c0 J2 ~% t; Z$ `5 L1 {: v( k3 Y4 \
  1332. STA $BA
    1 h/ j" E7 V4 ~6 D( D8 a) z- `
  1333. LDA #$218 |. j4 {% L3 }, i1 w  V
  1334. STA $BB1 N; S2 y7 o) |$ v8 v8 l
  1335. ) s+ ?; z! P& r9 r  r) X& @

  1336. + s9 s9 |( X( H) I5 a1 r3 z( ~( u5 Q4 j
  1337. JSR LF_PPU
    - ^6 ^6 Q$ r( x% `
  1338. JSR CLEALL_WRITE8 v$ u. ~) k' r8 _4 t9 ?) e  b
  1339. LDX #$00- x9 r* q4 m: Y- a7 O
  1340. LDA $07A4
    ' M: r/ I: g; b
  1341. AND #$04
    + h, j. [. B( V$ B
  1342. JSR ON_OFF_PPU7 g8 x4 Y8 S' k% S* E  b& G
  1343. LDX #$00
    # w3 M! }, Y. c. W) n. z- b" N
  1344. LDA #$F1: {; x! i, g- `- k: l3 k( n
  1345. STA $BA3 }# M2 w/ y! A- z; k1 {+ q) h6 A
  1346. LDA #$21
    , W6 I1 M; c5 X* C/ C2 \) k
  1347. STA $BB
    ) C2 B: B7 q7 B7 t
  1348. , o) b. F* |$ ~9 d, r7 Z$ G
  1349. / G" c' @# E& h+ b( i0 J* t
  1350. JSR LF_PPU  ~0 J- T0 B7 ]5 b
  1351. JSR CLEALL_WRITE
    5 A1 y( r. R; @; a; \$ `4 q7 E
  1352. LDX #$00
    * c* F$ k1 `1 M# b( [; E
  1353. LDA $07A5
    + E* V! B0 [8 R. U- \
  1354. AND #$048 y0 Z( e0 \/ o$ F6 p5 b( R% S
  1355. JSR ON_OFF_PPU
    7 Z) s2 S8 E' c( R' K, S6 b% \. d
  1356. RTS
    ! }' X) Y1 s2 U! w

  1357. 9 C7 E: v  {" `2 b  z
  1358. HARDMODE_STRING:
    1 L7 {! k" o3 R
  1359. .BYTE $92,$8B,$8E,$97,$99,$8E,$80! i% ]7 L* l2 K! ^' B/ Q, S
  1360. 9 d2 u. `' Z2 @( `: K' c" D
  1361.   R1 o3 G5 d, X
  1362. HARDMODE_WRITE:
    ) k# Z0 t: V  w/ z2 J
  1363. LDX #$007 B8 r3 j$ O, w9 F
  1364. HARDMODE:
    $ G" j. t6 x3 A& X1 @; e2 a
  1365. JSR PPUADDR_PROCESS
    . F: G5 q) k8 \. A1 ]: `! A
  1366. LDA HARDMODE_STRING,X6 {% T4 }5 ^( N0 n8 m
  1367. STA $2007* w: B$ x8 N# w. y: ?( Q8 p
  1368. LDA #$00
    + w3 E3 K$ U5 c. ]" A: @$ t
  1369. STA $2000& B# l, t1 L8 c9 K8 x+ E2 @
  1370. INC $BA: `5 S( a5 P) y
  1371. INX+ q3 Y' B( m1 b3 x+ S2 E% G8 K
  1372. CPX #$078 o, P0 H! q8 k
  1373. BCC HARDMODE
    ) ?2 a7 N8 f, S; d
  1374. RTS
    , h4 j$ q  Y$ A- e8 `8 Y5 E

  1375. 1 I; s4 P% F1 ?& U2 `4 s+ V
  1376. HARDMODE_PPU:8 N3 o' M. M$ w1 s% c
  1377. LDX #$003 c, o* ?7 ^  L0 @5 j) k1 n; F2 u
  1378. LDA #$22
    6 u, R; h8 m, c' C) ]/ ]* E7 W
  1379. STA $BA6 z0 O; g8 d8 T. i
  1380. LDA #$22
    - q, G7 H; N7 l! B
  1381. STA $BB
    ; R* F- V7 K7 H/ G+ e" V  [% v
  1382. JSR RG_PPU( m( t4 ^2 }# r3 ~
  1383. JSR HARDMODE_WRITE2 h' i9 o" e$ P% Y9 Y
  1384. LDX #$00+ d$ Z# D& w# R% Z7 ~
  1385. LDA $07A41 l0 K$ r0 _  S5 Y
  1386. AND #$015 E( I) d1 [, g6 a0 H" i5 c
  1387. JSR ON_OFF_PPU/ O/ W# b4 e( ?5 h3 Z9 i6 h$ ?
  1388. LDX #$00
    " D, ^/ j2 ~8 b" i8 V6 R4 [
  1389. LDA #$31! G/ }: e% ]4 D8 v& d3 [. U
  1390. STA $BA
    1 r6 ?& S" |$ q) M7 ^
  1391. LDA #$22$ Z% W. _9 d1 J- y9 T) d
  1392. STA $BB/ o0 _+ a- ^, k: V9 V
  1393.   g: [' j5 k0 z( B; \' D

  1394. 3 W  o1 N; |" a0 x3 o
  1395. JSR RG_PPU, s& {1 Z! X/ E) v  A; G$ g+ u! i
  1396. JSR HARDMODE_WRITE
    ) S$ H# e" t5 G3 @) E8 }
  1397. LDX #$007 }! r" r2 Y& Z! [5 S3 b; f
  1398. LDA $07A5
    ; J: N" Y; |4 ^7 T7 h
  1399. AND #$01" m  ]5 a9 |7 r/ y5 R
  1400. JSR ON_OFF_PPU" _9 y# t, X/ l! m
  1401. RTS6 v( [: z; f7 U1 q( n

  1402. & U! ]$ `& @$ z" X" C
  1403. B_TO_JMPSTG_STRING:
    + i- h0 c1 k. k6 e/ H* q3 o
  1404. .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
    % S, [9 q9 G5 p) M5 j! h2 c7 b

  1405. / O1 u! T) O0 L5 Z4 t+ Y' m0 T

  1406. , r$ x. |, H% u. _
  1407. B_TO_JMPSTG_WRITE:
    : N' w4 S2 J3 D# E# U0 Q/ N
  1408. LDX #$00
    3 S) v) B1 E8 p9 x: F
  1409. B_TO_JMPSTG:" x0 P4 I# l7 W3 i5 p9 L: `6 [
  1410. JSR PPUADDR_PROCESS
    0 C6 n& {3 \- A! f6 R) S& e
  1411. LDA B_TO_JMPSTG_STRING,X# T0 X. f6 H1 a$ g6 O' [
  1412. STA $2007* N9 |% z, p0 V! J( |9 o
  1413. LDA #$003 p, Y) {4 v: M2 D" o; v6 e7 n
  1414. STA $2000
    - z; ]% i0 `5 I1 N6 m( R) f
  1415. INC $BA4 X" B' m2 G) `4 ]
  1416. INX
    4 q" R$ {9 n+ N& G$ P
  1417. CPX #$0D
    # v4 n, E, f5 a! ~$ J/ }
  1418. BCC B_TO_JMPSTG
    9 I/ R  u2 [! n8 @
  1419. LDX #$00
    - ]; `0 d9 s, H8 ^
  1420. LDA $7FE06 Y" P, u8 `# `" Y' v
  1421. JSR ON_OFF_PPU
    0 R- K$ C% s1 F  X2 A8 u
  1422. RTS
    4 Y( u+ ^& Y5 B2 k5 u! Q7 D

  1423. , _# V+ _/ T, T% [1 u: K8 |" F
  1424. B_TO_JMPSTG_PPU:
    ) L2 H! ^+ M& V3 P  r
  1425. LDX #$008 r7 D" ~+ w  P/ d
  1426. LDA #$68
    4 i, L& `2 M' K( m
  1427. STA $BA
    1 s9 f9 G9 ~' t3 D# p4 v7 Q
  1428. LDA #$227 G' {& X) F: `6 ~% @% l" x
  1429. STA $BB
    6 h3 P; t' d3 p2 y) `4 e8 o8 _4 i0 \  `
  1430. JSR B_TO_JMPSTG_WRITE: Q3 ^1 e8 w* r
  1431. RTS  r4 @2 a6 k& I7 y7 {

  1432. 8 m7 e( a: I5 H' V4 y: M

  1433. 3 E9 m: O9 _& ~1 J
  1434. A_TO_PLAMOD_STRING:
    ) @& g& S4 J+ j4 \4 B: y+ k8 H
  1435. .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$80: {- }7 B! Q* |) D$ a0 _
  1436. 5 a. t9 M7 \2 N) Q7 I
  1437. , y: ~! {$ k7 c/ P! I
  1438. A_TO_PLAMOD_WRITE:) j, z  H2 b0 s4 {. V
  1439. LDX #$005 }3 J" z# Q7 p3 p
  1440. A_TO_PLAMOD:
    9 b3 ^( U6 }: a) `( g5 }7 p
  1441. JSR PPUADDR_PROCESS( J  M5 v" n2 v) w
  1442. LDA A_TO_PLAMOD_STRING,X- l# M1 [6 i- {5 [
  1443. STA $2007
    8 ~2 [  l( |0 q& i9 M
  1444. LDA #$00
    ( p* n7 V# z; P" [! V: }% ]
  1445. STA $2000' g- Z6 a$ N: o% y" J
  1446. INC $BA
    & R% ~# W: l0 \' O' H
  1447. INX2 q0 H5 N9 o6 h7 y' t% p; a9 Q7 M0 {
  1448. CPX #$0D
    / h4 l$ v7 S& @* v
  1449. BCC A_TO_PLAMOD
    " o; l. X# l7 c, y8 Z1 C% y+ |
  1450. LDX #$00# u) Q6 `1 |5 I
  1451. LDA $39+ I1 \# b- L8 |; R* G# \
  1452. JSR ONE_TWO_PPU
    5 Z: Z, q6 ], Z2 ?' }
  1453. RTS
    $ z0 ]! _! @9 o  C* K0 H
  1454. * P  U$ I3 ?0 q8 V5 ^. C
  1455. A_TO_PLAMOD_PPU:3 [, }) B7 K5 e8 ~( @: p
  1456. LDX #$00" `$ H! y+ X. N: v. q0 `
  1457. LDA #$A8
    ! L4 y( r5 O9 G9 v3 K& ^
  1458. STA $BA2 l- h4 e) V$ q9 c2 ]( e7 M; J
  1459. LDA #$222 v$ ]7 L* n( ?
  1460. STA $BB
    0 x( X( i; S* m4 ~# k
  1461. JSR A_TO_PLAMOD_WRITE
    0 k& y% w! a! @' k  d! |2 ?
  1462. RTS
    4 {+ E5 {' {8 X% v0 D/ P" g

  1463. 6 i9 h7 @8 `& c6 v& }
  1464. MOVSPE_STRING:. J+ z. w$ ]' j/ o: Y
  1465. .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
    ( B9 Z1 ~4 B% _) O, ^2 W# N  u, ]

  1466. ( M3 k1 J. _& W. W7 |

  1467. 2 ]' x/ [$ y# k$ R& K/ \! @& P
  1468. MOVSPE_WRITE:$ r1 D& u! V5 O, a# q
  1469. LDX #$00
    8 s* q: ]1 {+ w& y  P8 C
  1470. MOVSPE:" q1 s. G5 m4 c# j! Q! @: j
  1471. JSR PPUADDR_PROCESS/ [* y1 Q7 a) ^. R
  1472. LDA MOVSPE_STRING,X
    7 G; k  o! C: M/ r
  1473. STA $20072 R( u+ v1 w. l1 K& F7 y
  1474. LDA #$00
    " ~0 D2 L7 O9 M' z: G
  1475. STA $2000
    7 D2 c9 q# T: Z
  1476. INC $BA
    . [$ g8 g( }# J, T: p( i: s
  1477. INX
    - h3 B; s* F# Y# _9 K5 Z
  1478. CPX #$07
    : n  @8 q: a1 L% u0 G/ o& d' t5 |
  1479. BCC MOVSPE; P" d2 X+ N) ~* h
  1480. RTS
    $ P, s! g8 m# d' o0 t

  1481. 5 n. E% R! \  N* s( e
  1482. MOVSPE_PPU:
    ) s- S. v5 w2 w* n6 _+ f1 ~$ {" `: P1 q
  1483. LDX #$00
    2 ?( N) r; k  J- f9 W. i+ }1 j" [
  1484. LDA #$69. `- X0 _$ n4 x& l6 ^  M
  1485. STA $BA
    0 c& Q2 c) d8 g' D3 I  j0 i
  1486. LDA #$21
    ' k! V/ N* W& ~2 x
  1487. STA $BB
    : K6 X" p. e! L( s8 n! V

  1488. 4 _6 ^2 ]! y1 _' x$ U5 H# o

  1489. 5 n  _3 Y3 I( \* Q! k
  1490. JSR UP_PPU" l5 N7 ?! ^: @1 r# @$ A) C
  1491. JSR MOVSPE_WRITE* u3 n2 W, {$ U& x2 J# R9 M* t
  1492. LDX #$002 t7 [: c7 m  L0 n4 C
  1493. LDA $079F
    1 a: V- M8 v3 A3 z/ s
  1494. AND #$08
    $ Y3 g+ i- I% m( Z9 W8 E% j
  1495. JSR ON_OFF_PPU$ _; h) t8 ^9 O8 Z! V' _
  1496. LDA #$80
    # [0 _- O! W! J" @& R1 @# d
  1497. STA $2007: s1 z. G/ T- x  V( I
  1498. RTS
    ! n  t$ A* M+ h' p6 V: o. w

  1499. # L1 H- \/ s" o! N3 q! f
  1500.   9 C* p8 \! t( _" t. l# B  b8 @
  1501. UNLJMP_STRING:
    ; ~6 x( J! `$ N3 d
  1502. .BYTE $9F,$98,$96,$94,$97,$9A,$80
    & l4 c1 N/ Z' z3 V2 r7 X3 F& }9 K
  1503. 7 H! |9 e4 D( t9 O2 z9 |) d
  1504. # L9 ^0 \: ?6 e& ^% \
  1505. UNLJMP_WRITE:) x9 I/ S; d/ V+ q# j3 L" ?
  1506. LDX #$00+ U3 e2 ~( x% H8 _$ S% C, L
  1507. UNLJMP:5 G- _* S8 Q4 A3 U
  1508. JSR PPUADDR_PROCESS
    ; ^/ |" N! L" u% Y% i  f- B
  1509. LDA UNLJMP_STRING,X( ^2 e% O5 d6 u8 n: @
  1510. STA $2007
    ; n7 M& D6 D* q8 v
  1511. LDA #$00
    # i. s; V8 J1 R& @0 N
  1512. STA $2000
    * z+ e/ U( f0 F6 \, s
  1513. INC $BA
    / j0 e+ o; L' i2 z: x* ^
  1514. INX6 Z1 W3 t% X. x  n3 |) I6 T1 w
  1515. CPX #$07" [! k, d/ L2 U$ s+ p) L7 R
  1516. BCC UNLJMP" K8 k  M9 }# T: h8 ]. D  N
  1517. RTS
    4 @$ K; m- F1 v' M2 _4 M! X$ ]

  1518. / E1 p- [% {* Z8 U. f+ u. m
  1519. UNLJMP_PPU:2 I5 o5 M3 a6 t& c7 \
  1520. LDX #$00
    % P+ Q$ I: l6 E
  1521. LDA #$A9( `9 t/ E( r8 Y% h" z
  1522. STA $BA! A5 x! `2 q5 _- p3 J" a
  1523. LDA #$21. N, J9 l) A6 k% W9 }
  1524. STA $BB
      x3 ?  O% r6 b8 s, K/ r
  1525. 8 j' f( }; o! D* ~
  1526. 8 l, H" U. c* I; @$ {& r' X# k% c3 P
  1527. JSR DN_PPU* @- w# p4 T8 i8 a' ]4 u, ~
  1528. JSR UNLJMP_WRITE
    ; R# T! D" h- y# n
  1529. LDX #$00  Z1 S" G; X$ t5 e1 ~! P4 [. {
  1530. LDA $079F/ C0 O' r* `2 |+ E
  1531. AND #$04* e1 [0 p. v! [( Q: v* M( y4 e
  1532. JSR ON_OFF_PPU
    7 {3 Y- ]3 D8 W' B1 n" [# u* l
  1533. RTS
    9 h" v& B) O' n2 U* b. `" |

  1534. & s' o# I7 Q, ?! G$ X: W/ M

  1535. " j- n5 p0 k% c2 @7 W$ U
  1536. DESTRO_STRING:  \& o' k5 x# P! L- a
  1537. .BYTE $8E,$8F,$9D,$9E,$9C,$99,$80
    3 y) ]! h% z# X8 _7 a

  1538. + ~( Y4 T# C) W) S- Z

  1539. 3 |' a+ p0 a' e8 ~& ?4 Q/ I
  1540. DESTRO_WRITE:
    - h: B9 N$ _% V4 P# U4 p
  1541. LDX #$007 U7 W0 j5 \' ^+ @2 B
  1542. DESTRO:5 L3 e7 z1 X. K% G
  1543. JSR PPUADDR_PROCESS
    / i  v  g% I  Z- f
  1544. LDA DESTRO_STRING,X9 H. ~1 U4 J6 h) [
  1545. STA $20074 w4 B: F1 \# G' u2 X5 r
  1546. LDA #$00
    # b# F: ^& Q; ?$ a5 B! L% N' R, V3 p
  1547. STA $2000
    + T3 ]) Y1 H  W4 ^/ m+ G
  1548. INC $BA
    . y  d" G6 X1 O$ x# ^
  1549. INX, M; }  v7 Q' J0 H/ B$ m* Q( p3 e. k
  1550. CPX #$07( O+ s$ T' X6 i
  1551. BCC DESTRO, z1 H5 r6 x: T6 l
  1552. RTS+ `" h# N" _4 r7 ~5 n

  1553. - _: i) g/ x! Y5 J
  1554. DESTRO_PPU:
    : R' a6 F" Z" C- i% O: j
  1555. LDX #$007 t  R( y3 ~( y5 w
  1556. LDA #$E9
    & h8 y6 d  W9 C) o8 V
  1557. STA $BA- C. E8 b$ a' D+ W' ~1 N
  1558. LDA #$21* K) j7 g1 ?- U3 z) L4 x
  1559. STA $BB
    , a: x4 x6 p0 {) R5 {$ @

  1560. 0 h+ I0 R" _7 k4 z( f+ z+ O

  1561. ! x$ V2 ^0 b4 `  J: p  R# X  Y1 M
  1562. JSR B_PPU
    - i& b& X( w/ Q; F
  1563. JSR DESTRO_WRITE& u- J# W( k1 a, u/ T
  1564. LDX #$00( D$ e8 N7 ]/ T- p. j: q8 t
  1565. LDA $079F3 \. E8 @7 G8 [% Y
  1566. AND #$40+ X$ L3 d; A4 E: p% F. S- T5 [5 p
  1567. JSR ON_OFF_PPU" j' D4 e7 K  v; k4 _
  1568. RTS
      P' x2 K  p+ I" ]8 Q' ?

  1569. 7 r0 J& B1 b" O! h% U" h, U4 `
  1570. 8 c6 \9 }* x) i, ]9 u. i3 `
  1571. EQUBUL_STRING:
    1 g, T* i. d6 p) i) u
  1572. .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80: R; e/ u( f  i

  1573.   e) y, E* p) Q! s4 |
  1574. : N  o- n0 w1 v) M0 q; \( p
  1575. EQUBUL_WRITE:# u9 K% }. H+ w( H6 J, {
  1576. LDX #$00' F$ S1 c2 I' J( ?, P
  1577. EQUBUL:
    2 _  n. E# L1 W" ?5 y2 G
  1578. JSR PPUADDR_PROCESS) n3 ^' c) ?3 S' n$ |" U: u: @
  1579. LDA EQUBUL_STRING,X* |' ]7 R! @. B$ `# f& @4 z- v. ^
  1580. STA $2007$ p* j) a  `+ D+ v( \. f1 e
  1581. LDA #$00: t: i6 A; w" H# u
  1582. STA $2000) G* a/ Z; B7 H/ u. L" ]. M4 k
  1583. INC $BA
    . C2 M1 Q8 B" C
  1584. INX
    0 k( m3 N5 P8 x" w* M* a& N4 `' ^
  1585. CPX #$07
    0 F8 U# F3 l- L9 Y+ q
  1586. BCC EQUBUL: [* U. ~9 F+ ?6 ?$ W0 U0 B7 T
  1587. RTS9 X# ~4 G8 R) x1 W# D  |* I
  1588. 8 \; l9 q2 i4 }# p
  1589. EQUBUL_PPU:
    # l: g# K0 X! U( a& p
  1590. LDX #$00
    8 y- u* t& }/ U! p! o2 F2 j
  1591. LDA #$29
    5 [- _% ~6 z6 `+ e) F, P. B. m
  1592. STA $BA
    1 z& q% V# o6 ^8 ]
  1593. LDA #$22. ^4 D6 X- @$ N: X& v
  1594. STA $BB
    5 P8 M$ ]: U5 T# |

  1595. ; d5 {! l, h% ~, x2 S# J7 i3 h, |

  1596. * ~- @0 `# K' {/ T# `
  1597. JSR A_PPU
    7 B4 q5 A8 N" A0 n: E6 k. N9 X5 P# h
  1598. JSR EQUBUL_WRITE
    3 I- x  l% U! P. ^5 w1 W
  1599. LDX #$00! [+ I5 [9 H  Q$ G& R0 \) k( K. i* o
  1600. LDA $079F
    7 A& [7 f; h& y& h/ C# ~9 P) [8 R
  1601. AND #$80+ n, q4 z3 X7 l5 _( E) a. D# \
  1602. JSR ON_OFF_PPU6 Z- f" Z4 ~* b2 E/ |" N
  1603. RTS8 P! w; u& ]9 B6 m" I  e

  1604. $ t7 j8 p2 m- r( `" i$ m

  1605. # [  a4 Z4 y# K6 m; L8 Y9 G+ o# T( s
  1606.   s+ l' K# B$ [" g1 [  a
  1607. BULSEL_UP_STRING:" x/ x# I4 E" d1 M: P9 \
  1608. .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80
    % z& F4 w6 b1 H6 D( e+ i# M$ y
  1609. ! ]2 z) Q7 V+ U+ e
  1610. BULSEL_DN_STRING:4 s- |4 N, G7 Q+ a
  1611. .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80$ @- r$ j; X3 O+ E+ h3 Q

  1612. 5 V& v; d7 Y" L
  1613. BULSEL_LF_STRING:
    ) l* K- _4 l' C8 d, t" V
  1614. .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$803 B7 z6 i, |3 X* X. h& Z
  1615. " I5 v7 c3 J, h, U7 v# }0 l# K
  1616. BULSEL_RG_STRING:3 W" d. A0 W- d6 `$ ]2 c$ x( t
  1617. .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$80
    8 v* t: \6 J  I  U

  1618. * D5 }8 Q8 u9 J+ }+ D# s
  1619. BULSEL_B_STRING:
    : w* O' ^# p4 u8 F/ ~8 @) m* V* |
  1620. .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80" h$ S! x8 g1 q( {2 n
  1621. 1 T# i: c3 X6 j8 W9 `7 `
  1622. BULSEL_A_STRING:
    0 R+ g* p2 l4 X. G: N& y
  1623. .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E0 j; D% L0 R; Q9 O# Y* ^

  1624. 2 a  K2 j: s' v: y# ^2 F
  1625. + n$ V( y8 }, d- }$ j
  1626. BULSEL_UP_WRITE:# A, k  v! [3 j+ z) G4 N' p; J2 c
  1627. LDX #$00% n6 ?* w! w/ K! J1 h: ]
  1628. BULSEL_UP:
    8 u1 k3 h# a- q) \- R+ t* X
  1629. JSR PPUADDR_PROCESS# P! H3 \5 ?& {) p6 H: o( p
  1630. LDA BULSEL_UP_STRING,X3 [8 p5 k( U: g
  1631. STA $2007
    4 J+ P; K5 H5 Y
  1632. LDA #$00
    ; B) \6 o- _, b; W2 b* g8 S
  1633. STA $20009 D, s8 M- u, _  e
  1634. INC $BA5 W; c8 A9 k; ^9 }* e
  1635. INX# _" R) c" V! D8 W
  1636. CPX #$09# D/ N! M5 C9 T3 m' l4 j/ J
  1637. BCC BULSEL_UP. V9 i6 k8 W" y0 D- S# ~4 z( F
  1638. RTS
    & _) a+ c% G& Y( b
  1639. BULSEL_DN_WRITE:
    ! A+ O+ y1 R9 Q: a3 q! K- h
  1640. LDX #$00
    ) L+ Z* T) u. R0 s
  1641. BULSEL_DN:
    # S. w6 o& S0 k0 f. y
  1642. JSR PPUADDR_PROCESS
    5 M$ I( P  D9 X! S# \
  1643. LDA BULSEL_DN_STRING,X3 K* S5 P* w4 v: E  q! k
  1644. STA $2007& \( F1 M7 Q, V- k9 [+ y. j# m
  1645. LDA #$00
    4 K3 |; P# k7 w2 y" N/ {
  1646. STA $2000
    7 ~: t% b8 ~9 k% I! h( q
  1647. INC $BA
    6 J6 P8 M" d1 k1 O
  1648. INX
    ; F5 V: a8 b. s1 w1 w* e8 L" P
  1649. CPX #$097 Y! `' z  B+ X9 i3 }
  1650. BCC BULSEL_DN, ]) c8 P7 V) \
  1651. RTS
    + h5 r! M- j- ^0 k: q9 t
  1652. BULSEL_LF_WRITE:; W9 A& [2 ?; B. ?
  1653. LDX #$00
    * s0 X( m$ l& w3 V2 O
  1654. BULSEL_LF:. N2 E* V" n1 _9 X) @
  1655. JSR PPUADDR_PROCESS4 }6 q- S1 }$ k. t" [  Q( L$ w* J4 O
  1656. LDA BULSEL_LF_STRING,X
    ' Z1 h; m* c5 g
  1657. STA $2007
    5 G% G8 h+ X: ^% @/ q; g: [
  1658. LDA #$006 J; S; M+ P- b9 ?3 r9 L
  1659. STA $2000
    - h# M) j; c. L' i1 l
  1660. INC $BA
    4 a2 `1 n& B3 q( q+ Q9 N6 {
  1661. INX
    / k2 R% B: @9 B* V- \; z6 U
  1662. CPX #$096 }; w9 K. `0 h
  1663. BCC BULSEL_LF  C4 e9 d6 \9 j( `9 N7 Z
  1664. RTS
    , j5 i; _1 c" V  f8 x4 C- K
  1665. BULSEL_RG_WRITE:8 K: U- u# Z  B( |# i
  1666. LDX #$00# a, n' _3 \7 ?  E5 W
  1667. BULSEL_RG:6 @5 t6 f" y5 B0 t: v' N
  1668. JSR PPUADDR_PROCESS
    ; e( o  ]: }8 q8 h- m! g
  1669. LDA BULSEL_RG_STRING,X
    + a5 R( J9 x. h+ ]; o* q' h
  1670. STA $2007  a6 c$ x/ i/ w& m& U! ?+ ~
  1671. LDA #$00
    2 W2 ]9 M& v0 ~, x8 ?
  1672. STA $2000  W4 k5 d4 f* p- I
  1673. INC $BA
    # F" p% S! P* |
  1674. INX
    - N2 C2 H( ]1 i) L# V
  1675. CPX #$099 u& l9 d+ u1 a! ~& L8 U7 S0 u
  1676. BCC BULSEL_RG
    8 ?4 ?; W& S8 Y6 [3 P
  1677. RTS
    - }* {5 Y* A/ [& ?) _" i
  1678. BULSEL_B_WRITE:
    6 p* a/ x$ A" E8 R0 X+ \
  1679. LDX #$00$ n% q0 Z: v7 p, g; s5 M5 x
  1680. BULSEL_B:$ @3 P  o* y2 q+ t& }: {, t
  1681. JSR PPUADDR_PROCESS( X% G( A# t$ _3 V
  1682. LDA BULSEL_B_STRING,X4 O9 f! N2 b3 U3 K" P
  1683. STA $2007
      p  X1 y0 V$ t" Z  A- D5 [
  1684. LDA #$00
    * @6 i3 s4 q4 e' k! }, Y
  1685. STA $2000. {7 f  F$ }! C8 k, j. ]
  1686. INC $BA
    # [6 ]1 b; `3 M3 j
  1687. INX
    / ?1 z! Z0 }3 w3 {* |! e: @) W: Q
  1688. CPX #$098 k8 {$ b, y6 v
  1689. BCC BULSEL_B
    ; b, M4 O2 x1 p8 E& S
  1690. RTS( |9 ~! ?5 ~: n! R9 t7 V$ x
  1691. BULSEL_A_WRITE:# w" m$ e: s3 E* x
  1692. LDX #$00
    ) _! k( f* T! I5 i/ D7 U' B) o0 ^
  1693. BULSEL_A:
    6 B  G" F8 Y6 o0 ~
  1694. JSR PPUADDR_PROCESS
    ) U8 n& Q! \+ u+ E- ]' |7 N
  1695. LDA BULSEL_A_STRING,X, B2 |9 d  E  B5 ^) L9 e7 E0 i" m' I
  1696. STA $2007
    3 M! y9 w& v# a% J) O$ H; u
  1697. LDA #$00
    8 v* t* R. n1 g. X
  1698. STA $2000
    , F: e: X9 D: i. x' L6 R9 i
  1699. INC $BA6 ?, [4 i. m; K* T" `# R, D
  1700. INX
    4 B) W7 e$ N: V+ m6 f3 H4 H, Z8 b& V+ @
  1701. CPX #$12( R' M  |; |% U/ _
  1702. BCC BULSEL_A* |4 ^+ V  Y: E/ {8 I
  1703. RTS+ O6 \, u1 J. |' n

  1704. " p  Z" D8 ~. E, B; s$ j- \0 C7 @* i
  1705. * K* x5 _4 F- r0 b) h% c/ U

  1706. / K. Q4 Q" ?- S. C$ o
  1707. BULSEL_PPU:
    2 q9 {* M4 E* ^: ^7 j9 i2 V1 o
  1708. LDA #$6C6 d* g( O0 h/ n
  1709. STA $BA' P, @( x7 Q- S) ^4 B# }5 e
  1710. LDA #$21  a2 \2 i7 q2 U- A
  1711. STA $BB
    / Q. F: N9 n2 ~- R
  1712. JSR BULSEL_UP_WRITE
    9 D/ V/ R* U0 T' N9 A
  1713. 6 Z1 d& g3 b; i5 Q  V
  1714. LDA #$AC1 E. u4 Q7 n) Z0 e
  1715. STA $BA5 r* s' I( [) [  v7 Z0 Y
  1716. LDA #$21
    8 S& t6 I2 R  G. o8 \, [
  1717. STA $BB
    9 X5 e) _; x* H
  1718. JSR BULSEL_DN_WRITE
    6 K# x! h3 i% w: R' d+ M6 q
  1719. ! D3 O# l: ?  {* n8 l
  1720. LDA #$EC
    2 C! A* ^3 N' y( X
  1721. STA $BA, }2 B9 c# \( H1 D* X) p
  1722. LDA #$21
    " D1 D7 J! L5 `% o
  1723. STA $BB
    ) G# A1 }+ n; w" P# g4 U
  1724. JSR BULSEL_LF_WRITE5 `- m3 ?2 {. r& X% N, ]- t
  1725. 5 q# ~% }0 P( ]$ x% _6 a
  1726. LDA #$2C
    . T3 x; i# z: u  _( s. L
  1727. STA $BA
    ; u# Z* b9 G# M/ j3 x' b& O$ P- K& @* q
  1728. LDA #$22
    9 c' i( D- L% x+ w
  1729. STA $BB4 N5 y' @8 C9 ~) O2 o  x! b8 a
  1730. JSR BULSEL_RG_WRITE
    0 a$ D9 p/ B- _9 r4 ~9 E; x/ L5 R( Y
  1731. 8 s! \) w, f' h* F8 `
  1732. LDA #$6C
    " G) K- z& E" G& \% i6 _5 x) _5 U% ~
  1733. STA $BA
    6 f, E$ [2 G5 U+ P0 D
  1734. LDA #$22& h/ \4 q( ^& Z  H* w
  1735. STA $BB8 p: x0 I! X7 q( v7 F- w3 R
  1736. JSR BULSEL_B_WRITE( u& w% u) q( j' W% y
  1737. 0 y: x( u5 G; p" G+ u
  1738. LDA #$A7  w! x# p; c2 n) K. q, f9 ?. M
  1739. STA $BA
    . D/ K2 I" b; B! g) o
  1740. LDA #$22+ @; l& f( ]$ t7 ~* ?; c8 x
  1741. STA $BB2 v' ]  o, k- C( Y* E( S
  1742. JSR BULSEL_A_WRITE# e" L+ _( }/ d: n$ a8 O$ G
  1743. RTS
    : i# N. d3 x: V$ u, H

  1744. % \* `! P% A3 S: S
  1745. ( V. z8 p9 |) Y' O- X$ v# s8 k5 Z

  1746. 5 u" j& y2 i0 [: m* b$ l
  1747. UP_STRING:, `% e1 a+ r! e2 r$ n. u9 J4 R
  1748. .BYTE $9F,$9A,$80
    6 }) T2 E& G$ S+ v) `

  1749. ; Z0 [+ P6 m% _0 V* ?2 L8 C
  1750. DN_STRING:
    . s8 r/ l$ j3 p6 i
  1751. .BYTE $8E,$98,$80- S* a0 \! Z# F; v

  1752. 4 y6 J. W# p% r, x; z/ H: l
  1753. LF_STRING:4 m/ D3 Z  q6 p& P4 D4 B
  1754. .BYTE $96,$90,$80
    2 Y0 K+ g7 ]3 d
  1755. + [: e' b0 k  ^8 z1 w9 w) O' l5 s
  1756. RG_STRING:
    & Z8 Y/ `9 g' l, ?/ i
  1757. .BYTE $9C,$91,$80
    - {8 F6 b6 Q& S. l/ J  n

  1758. " t6 t* r1 }8 @  e$ ^
  1759. B_STRING:
    1 G! _% q+ r  b
  1760. .BYTE $80,$8C,$80
    + _  v/ Y3 O0 ~* n% G5 V
  1761. % T6 M' m% a. T4 a& S! t
  1762. A_STRING:4 ]. Y/ @1 O7 H
  1763. .BYTE $80,$8B,$80* w# Z7 z/ X% I8 o/ Z& h
  1764. . Y; B8 b8 S5 C1 R& H7 {7 v

  1765. 6 z, F! A4 P, Z' D
  1766. UP_WRITE:
    7 y2 m: {1 D0 X* U* `
  1767. LDX #$000 Z* n& U* Y: M+ U* n
  1768. UP:2 u2 {: [# b. ?! F
  1769. JSR PPUADDR_PROCESS
    : F4 f# `" I% B, j( \8 \
  1770. LDA UP_STRING,X
    & E" ~/ a1 D8 ^
  1771. STA $2007
    3 r5 w) Z+ E, I
  1772. LDA #$00, r& t3 f% m" }% Y4 q. ~; C
  1773. STA $2000* o# I: F' u. Y6 n- \; `% z+ b0 J. J
  1774. INC $BA
    2 V2 ~7 s6 P' p
  1775. INX" @1 y2 c* y, ?4 P4 j4 |
  1776. CPX #$03
    + O: o8 n  S4 j' R  r) a
  1777. BCC UP
    * R" H9 L" P. ]8 _+ L
  1778. RTS
    : V$ U( C- R$ S1 _- ]6 i

  1779. % K0 _: f$ s$ Y5 k* I  q( e, B
  1780. DN_WRITE:
    $ i& A/ N  r1 v1 Q8 D+ Y: V
  1781. LDX #$00  W, s, K8 g- B
  1782. DN:. @# ]- r+ w$ m  ^8 y- v" `# ^' S
  1783. JSR PPUADDR_PROCESS& H' ]! X9 J+ N  g* H' A; z& ?; a
  1784. LDA DN_STRING,X" }6 r4 ~1 j. ~
  1785. STA $2007& N& N: T3 H' [# B& K3 ]% A
  1786. LDA #$006 G/ g/ m* P8 F* G- W) [: _9 |
  1787. STA $2000, \5 P3 A. k7 ?$ v) o' V
  1788. INC $BA3 _( _1 K; Z" H1 |" n4 t1 w
  1789. INX
    . J# H8 J* r1 q# K+ u. U
  1790. CPX #$039 t8 m+ ]& \# {9 L" p
  1791. BCC DN
    5 q+ f0 {+ ^( m. y4 w
  1792. RTS
    % w* C* ]+ S1 j9 V: C& _! g+ H( ]: W
  1793. ' Z, l( Z; X7 b# Q. b) U
  1794. LF_WRITE:: f4 D$ f2 \9 D; O7 S, q
  1795. LDX #$00
    * ^7 r4 X1 F2 @! ?8 _
  1796. LF:9 r6 N( M1 @' a; D' h/ d2 x" K
  1797. JSR PPUADDR_PROCESS
    9 _- ~( Q& ]/ d- u, z
  1798. LDA LF_STRING,X; k9 Q9 f+ e* a1 q
  1799. STA $2007
    ' \4 v. W+ C4 \$ O) {
  1800. LDA #$00
    1 \# U. o! r  W/ \8 f
  1801. STA $2000* A1 ?; P% l# ]( C2 R0 `/ X
  1802. INC $BA5 i: z# P% e. Q
  1803. INX+ T: b' N; d5 _( W( F
  1804. CPX #$03
    0 c( s& f/ D) q0 X3 b) B. ]6 i0 y
  1805. BCC LF
    1 A. x7 W( {5 E" n
  1806. RTS4 A% E' g" p4 Z; t
  1807. 3 d+ U- z* s# l4 `* y
  1808. RG_WRITE:
    / n, Y4 b" w. j3 Z% \4 M& {
  1809. LDX #$009 ^' Y8 H- x2 i. K
  1810. RG:
    ! Y' C  z" A; F. X  f
  1811. JSR PPUADDR_PROCESS% s; g. g* ?  O. Y9 ?1 z" L: G1 M
  1812. LDA RG_STRING,X
    / h; a$ {9 L. g7 _9 K
  1813. STA $2007
    ! x* P, A/ W1 s
  1814. LDA #$00
    5 B# i# B  Q& n) s) E- c
  1815. STA $20002 @: _0 Z; I2 a  g! `
  1816. INC $BA
    # P' q  S! Z1 o% X/ K/ |
  1817. INX. t. R! s  v6 T* j4 K
  1818. CPX #$03
    - M+ T+ G/ Z/ o
  1819. BCC RG) e1 v+ T" s% k. ]5 x, I
  1820. RTS- R: r, i, n0 j8 P! X% @- p

  1821. ) {6 @" b6 b3 x2 I/ F. y6 d
  1822. B_WRITE:9 ?$ S& s+ |5 Q- R+ D0 V+ X
  1823. LDX #$00
    # W, t1 T$ T) S( u
  1824. B:  u2 `2 U+ y" F) m* |3 G( v
  1825. JSR PPUADDR_PROCESS: b) N0 Z( r8 ^9 B. ]
  1826. LDA B_STRING,X
    ' ]. `& _  g3 O0 {
  1827. STA $2007' \% G9 k& o3 ~; q& K
  1828. LDA #$001 V9 @2 D0 w# `9 h6 v
  1829. STA $2000
    . n& w" N# d! g* o7 C, n6 W, d& F
  1830. INC $BA1 ?* K) G1 G( h* O8 g# O( U
  1831. INX
    6 `* c+ R3 h, ~1 o
  1832. CPX #$03% p/ h8 L9 X2 E# ]
  1833. BCC B
    : i- v! b8 {0 W6 f. c4 F
  1834. RTS
    $ I0 F) @5 e1 j7 l' p0 E
  1835. ( e" a$ r+ Y* Z5 f3 X3 G; R8 V
  1836. A_WRITE:& x, E0 l( m7 z' z
  1837. LDX #$00
    ) j0 T5 i  C5 b. c6 U/ u
  1838. A:
    $ S& X8 {8 V5 g) n) s" s2 U
  1839. JSR PPUADDR_PROCESS0 X4 C6 U4 z% A2 T
  1840. LDA A_STRING,X
    9 G7 c! H. E: {9 j' j! ^
  1841. STA $2007+ Y: q1 s" O( L% e2 A5 q, a4 y
  1842. LDA #$00) m* Q" x% t/ {) S2 {- j  o
  1843. STA $20001 Z# G5 D1 c! E3 q
  1844. INC $BA' n9 A& ?( I- z$ t8 t9 k0 h5 x
  1845. INX# y' S2 p# w' b: g0 K
  1846. CPX #$03
    8 [! M0 h5 ^( B  `- O
  1847. BCC A9 A  N5 t5 F/ b7 [0 O4 h- ^0 Q
  1848. RTS4 U$ G3 d0 e* [" p

  1849. 7 M% H1 i' _6 j% I# g, g' U4 ^( E
  1850. - o" ^; [3 K9 B* `( b( Z  E; V; o
  1851. UP_PPU:
    . p9 c+ C8 c! l0 P$ R
  1852. JSR UP_WRITE/ T) a9 x( C' n3 L% x5 e" y0 e
  1853. RTS+ f+ K8 f+ \+ U$ d. A, j" d
  1854. / f/ `) a' G9 z  H/ r0 M5 Z/ \* K
  1855. DN_PPU:- [0 w6 J. B* W3 U" m# x
  1856. JSR DN_WRITE0 C1 F2 g  T9 k. ]4 W8 a
  1857. RTS
    3 V( O- P  V/ m5 _0 e

  1858. 9 o; y1 i4 G  {( o" _1 m$ Y2 U, P
  1859. LF_PPU:3 V7 g* A% Q; N) Q& x
  1860. JSR LF_WRITE+ G8 E/ K3 ?2 T- M
  1861. RTS6 g  B0 o% g. n

  1862. 0 Y; [' c0 _* K# f, J
  1863. RG_PPU:0 g9 m; z) F/ m: t! E9 l, i
  1864. JSR RG_WRITE( [9 q& B8 j) V  \
  1865. RTS' p" r4 w! _5 Z5 c

  1866. $ h% R& O+ |* W
  1867. B_PPU:
    . i) z# s  N# R3 z! L, o% `6 F
  1868. JSR B_WRITE, d- R: y  C* h
  1869. RTS
    2 E- C$ _7 V, G& M. G& {0 [3 |

  1870. * [% l2 u; K: N, I+ q+ f6 f: _; H4 t
  1871. A_PPU:! ]; m' S1 S1 A( V: d" y6 Y
  1872. JSR A_WRITE7 p5 G9 w( ^7 x4 U
  1873. RTS% V7 e( ^0 Y( j% d. X/ C+ g  ?

  1874. - H) D3 e; o; \4 l: |8 n. x0 e

  1875. ( u; }# c# |/ ?7 e
  1876. PAGESELECT:1 m. T/ H7 _0 k0 d
  1877. PAGE0:
    + l9 a) b* }7 [) v; _/ ?
  1878. LDA $07AA5 x, }3 M1 p- x, g( J0 W9 A; f$ |. v2 Z
  1879. CMP #$00! x' {1 F* S) @. v2 I) ]( b
  1880. BNE PAGE1
    # x  t. ~9 y4 t" s$ G% o

  1881. 2 `2 x8 f% g7 I
  1882. PAGE_00:: g* n  }( t6 J2 q  D
  1883. JSR BULSEL_PPU" y6 y5 A9 L! e5 x$ G, E4 L
  1884. RTS4 M: T" Z! @/ W' {
  1885. 9 _& H4 q& Y: A1 m
  1886. PAGE1:
    * ^, j4 R. T1 J( B: ?1 ~
  1887. LDA $07AA5 ^0 J* \: d, r6 V0 K) P
  1888. CMP #$01
    : o- W2 O2 s1 ~/ Q# Q
  1889. BNE PAGE2. X; {5 T% h, m' l

  1890. 3 s3 `! ?' g! v5 ~8 ]$ M
  1891. PAGE_01:3 C4 W! z$ ]# l/ |
  1892. JSR INVINC_PPU# t* a1 {& Q! w' C
  1893. JSR LIFELC15_PPU
    8 W2 W, x0 a7 M+ [: i% ]7 s0 U
  1894. JSR DOUCON_PPU
    9 X) v3 }* t$ Y" E& ]
  1895. JSR KILLON_PPU
    ; I' r  n* g. e) {
  1896. JSR SKYFLY_PPU
    4 o' p+ N  X; Q5 I5 I
  1897. JSR LIFELOW_PPU) J6 Z7 P2 }! I
  1898. RTS
    " }# N) u* N! J
  1899. ! C  Q. R6 j. p# C, g
  1900. PAGE2:
    & r1 E) Y1 \4 T3 k2 L# y
  1901. LDA $07AA
    8 `4 \- ?8 r2 N6 Q7 X
  1902. CMP #$02
    , T* Y: V/ ]5 V( f; j. G+ t
  1903. BNE PAGE3/ a" g  w% @7 R4 H' j
  1904. : f9 l& J; P* i/ L4 M- \+ u5 q" g
  1905. PAGE_02:/ S3 n  z) Y$ z
  1906. JSR BULADD_PPU
    - O  p# ]0 W- p+ ]$ C/ x1 J
  1907. JSR SKINGE_PPU0 L- ?+ e0 r: c7 M: r9 v3 g) E
  1908. JSR BULMIX_PPU2 Z. o6 f: \- {% b; x4 H
  1909. JSR ENELOC_PPU- t9 W7 u& s0 }
  1910. JSR FOCFUL_PPU, W" g% [5 N8 [0 o- T- q
  1911. RTS- f4 D+ \1 @1 y6 O
  1912. : o3 H1 v2 V/ }) `3 c
  1913. PAGE3:
    . @( O! l' N& T
  1914. LDA $07AA4 D/ l% v. U+ B9 `* H3 V7 x5 m
  1915. CMP #$03
    9 A3 w; r' C# c- U/ |1 w0 F0 [: j2 T
  1916. BNE PAGE4% a# r) g3 s5 H6 ]

  1917. 3 j  b& x$ E" h+ I" Z
  1918. PAGE_03:: f! j. t. V1 X( T4 ]
  1919. JSR BULCON_PPU2 k% U% R2 g5 ~$ q- n" s
  1920. JSR SPEBUL_PPU
    $ t3 n3 A7 u! z% @% G; ~' u
  1921. JSR CLEALL_PPU
    : h0 k, e6 X, B4 a
  1922. JSR HARDMODE_PPU
    ! f- e3 r+ Y! X+ E& W, Y
  1923. JSR B_TO_JMPSTG_PPU# ?* ~5 @/ V( k; W4 m+ o
  1924. JSR A_TO_PLAMOD_PPU2 a4 N9 Z. f: A% O/ z
  1925. RTS
    ' U8 g% w3 b+ z5 h) k- J$ K4 C

  1926. + w7 A0 b1 |- ~% d$ @2 k& x
  1927. PAGE4:
    : N$ A' L6 {. F. D: V3 W
  1928. LDA $07AA3 i& a2 Y8 r  ?' I  h% I
  1929. CMP #$043 D1 ~8 T0 a+ F$ L$ j; \' u. N- y
  1930. BNE PAGERTS
    / m. s; w  R$ G4 i: r; \) s- H7 R; N

  1931. - j5 Z! f1 W* e6 h' R( o
  1932. PAGE_04:
    " f' X6 I4 D; p
  1933. JSR MOVSPE_PPU
    3 v8 t4 S  {. X
  1934. JSR UNLJMP_PPU+ ~) P& M) L6 u9 |+ B2 b
  1935. JSR DESTRO_PPU" [0 u* W/ F' T8 o2 B
  1936. JSR EQUBUL_PPU7 D5 Z+ O& r0 |* Y# r' i# b
  1937. JSR MOVESPEED_PPU( i3 d; y6 N. Q* {
  1938. PAGERTS:
    4 M1 U) a: S3 m$ x/ ?
  1939. RTS
    ' A' w6 O1 R; w* B% I

  1940. 0 z, [5 d; {; ?
  1941. , s, ]1 r6 _" w, @- Y$ L. i
  1942. PLAYER_01_STRING:
    8 t( E5 w, g3 y" f+ {+ {# O8 O& z
  1943. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
    ( A, l% R* G  a% i+ m

  1944. 5 C6 {( @1 d2 G/ C' l

  1945. 3 u& A7 q6 I: a
  1946. PLAYER_01_WRITE:
    : O- N! L: |4 n  `
  1947. LDX #$00
    * G. d9 x3 R; J. H& u8 j
  1948. PLAYER_01:
    ! z* I2 I9 c* G. E; C1 X
  1949. JSR PPUADDR_PROCESS/ J# w, c3 x! _, K
  1950. LDA PLAYER_01_STRING,X
    ; x* @; m1 o, |
  1951. STA $2007
    ! @' V5 G5 ~9 }5 }' g
  1952. LDA #$00$ W6 ^# ]5 P5 u
  1953. STA $2000& X9 E1 ~+ y+ l! b% G- a% w
  1954. INC $BA
    ! ~$ k1 r  F- N/ R$ ^  D0 N7 o# E
  1955. INX) n% y* `; u# U7 `- a3 e8 i/ {
  1956. CPX #$0A% v4 j+ a* t, Z9 N
  1957. BCC PLAYER_015 ^8 k  X! D4 J0 t! A. x
  1958. RTS
    " T5 P2 X5 E/ R- _" {6 ~

  1959. ! N* g# S  [* o7 d1 r( R. h
  1960. PLAYER_01_PPU:9 V# m3 [6 d/ d" j: Y5 J- `8 G
  1961. LDX #$007 V# |% ?8 H8 Y, O/ c2 B- G% w
  1962. LDA #$64# [, |% h) E# K6 a  U  ?% o$ O
  1963. STA $BA
    % ^( {, `/ E0 n& f, z9 l" V: X
  1964. LDA #$20- ~' G- t6 u6 M0 l5 U( m
  1965. STA $BB
    / C2 x' S% X- J4 Y
  1966. JSR PLAYER_01_WRITE; Y# l8 f) k7 Z, L+ ]
  1967. RTS
    * M2 w, q6 r4 C0 R9 x# S% H

  1968. 2 K1 ?+ [1 w; C7 @9 a0 @  \1 T4 n
  1969. PLAYER_02_STRING:, C; s* {- q# }% T  l) [, x
  1970. .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80
    : ]: }. @4 z  R0 U
  1971.   N1 I' |6 s0 w0 Y

  1972. ! Y; W( W* E  i$ F
  1973. PLAYER_02_WRITE:
    9 P/ a* \7 Q) s
  1974. LDX #$00
    1 Y0 s5 l: M: r( F6 x' D3 |
  1975. PLAYER_02:7 W8 ~% B  m; w5 y
  1976. JSR PPUADDR_PROCESS+ e( }( x- I2 V! v1 ]- W
  1977. LDA PLAYER_02_STRING,X! L2 H/ Y9 n$ y7 }% v+ F: w9 t) m
  1978. STA $2007
    3 Q# n/ }' J- w  U
  1979. LDA #$00
    + W$ ]% M0 j0 a" ]' w
  1980. STA $2000" D2 t' k, ~. b9 H* f& Q% C
  1981. INC $BA2 ^" r! L8 P7 Y9 q. i" N
  1982. INX) T4 `. p" M: v  n
  1983. CPX #$0A
    9 k5 V7 ]7 t7 z; n0 L) U! i
  1984. BCC PLAYER_02; J, ^5 V9 G# S! }8 U9 f  V' P0 u
  1985. RTS
    ) \* O8 M0 @( b9 \: ?$ [

  1986. " I) ~) P7 x& `* z+ T
  1987. PLAYER_02_PPU:
      O. T# p, K0 [
  1988. LDX #$00! T' l6 Y9 F$ L
  1989. LDA #$73
    + g( N$ d+ i- C( s
  1990. STA $BA
    1 E: S1 h  F8 D$ G9 Z4 Z+ }
  1991. LDA #$20
    9 ~4 _2 _4 q* N& M& j
  1992. STA $BB1 K" S& t' [1 C7 i
  1993. JSR PLAYER_02_WRITE- I; k" M$ n- i5 P+ R& O
  1994. RTS
    . \- z* R6 {' k- V

  1995. ( p9 g" N' w: ?4 j  ~
  1996. PPUADDR_PROCESS:
    0 }8 d* E3 m7 V/ u6 V
  1997. LDA $BB
    0 Q7 G" d* t6 l- }& L
  1998. STA $2006
    2 x- N  K& p' h* c, b# V. i# L
  1999. LDA $BA: O6 i4 D. W% E8 }9 B! f7 h
  2000. STA $2006
    , l( e6 f. m) X/ _& [! p, ^0 G
  2001. RTS3 i. L8 {9 v' g: R: A0 F+ k4 P

  2002. & j. w$ O) g; y) E
  2003. * p$ }# c& [/ ?. O6 v' u! B2 K
  2004. 1 V7 L+ ^. @1 b1 O, V6 P
  2005. ONE_STRING:- K0 L$ H& Z' \+ r5 y7 D9 [" _
  2006. .BYTE $99,$98,$8F
    . i$ ~% }, o$ h/ I
  2007. ) X1 ^6 b) v$ E! ^8 p
  2008. TWO_STRING:, }5 z2 S6 v4 I2 m; h4 N% T
  2009. .BYTE $9E,$A1,$99
    9 D- j+ I9 ^9 a; y- @
  2010. 8 m* _7 W' k2 o8 u
  2011. ONE_TWO_PPU:
    8 \% I) Y; B5 ~7 ^0 _
  2012. BNE ONEWR
    ) q# m9 k) i- p* H5 ^$ |. N
  2013. TWOWR:$ J! R: I$ q: u# S/ u
  2014. JSR PPUADDR_PROCESS
    ; \4 a0 f) c/ {, L
  2015. LDA TWO_STRING,X: u# Q: A, w4 k, o& V# |" b! q
  2016. STA $2007( a! @6 {" o- n6 x
  2017. INC $BA! I" X3 y, z  x* M* ^
  2018. INX* x$ ~4 P2 w6 h0 D/ m  S2 ^  T
  2019. CPX #$031 ^" A! D$ y# s" J; L
  2020. BCC TWOWR
    3 d5 I7 u! W/ Y: z7 G0 N
  2021. RTS
    . F! l4 V) ^# g# ?' T
  2022. ONEWR:
    : {+ g1 W$ E5 p! }
  2023. JSR PPUADDR_PROCESS
    3 }" W3 j; C$ Y( G
  2024. LDA ONE_STRING,X
    . \" s3 _1 `9 K% h, R
  2025. STA $2007
    ! \9 D* r# P( T2 l3 U
  2026. INC $BA8 {2 w6 Y9 H6 f- _: z& c6 b. J
  2027. INX- c% A* W" y2 d
  2028. CPX #$035 g. H  K. b" N$ B) U
  2029. BCC ONEWR
    3 d7 m8 O( x+ d* j4 |. G
  2030. RTS
    % g) u3 Z7 A. K/ t; k" i
  2031. 9 s# v$ n( |( v2 S4 Y- P# P
  2032. MOVESPEED_STRING:
    6 s/ s& A8 Z* S' {) b# \3 g
  2033. .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$803 ~/ F* T5 B0 S

  2034. 4 G) l; b! J" |  h" R8 z; J

  2035. ! a# _( m7 J& v
  2036. MOVESPEED_WRITE:3 r5 Y6 M% e* k$ \7 g* L
  2037. LDX #$00# p3 Q* g: N9 f' f
  2038. MOVESPEED:
    8 c8 @0 ?5 Y! O' a
  2039. JSR PPUADDR_PROCESS) U4 Q1 y: }8 y2 s' x' U- l
  2040. LDA MOVESPEED_STRING,X
    7 A* D9 p) J0 Y, t" A  l& K4 L
  2041. STA $2007- M! L6 k5 y1 D& L) f
  2042. LDA #$00
    & M- p; q* R3 H$ r: P$ B+ Z* _
  2043. STA $2000. n: A8 c# g: e6 P
  2044. INC $BA
      A: |# t0 s. ]( i' ?- n  y
  2045. INX) x* T" R6 m6 ]
  2046. CPX #$0B8 r) x7 K4 K) m! T
  2047. BCC MOVESPEED
    ! W) z+ w8 {. {' b% T; Q6 [1 _
  2048. RTS' h/ D1 R4 {/ c# b

  2049. 9 }/ x# q3 X: ~/ l; J% }
  2050. MOVESPEED_PPU:
    - ]; @# b" `8 y2 T/ E" h' \+ ?' K- V
  2051. LDX #$001 U- I8 L) Y+ o) G0 L. V8 J/ x. j
  2052. LDA #$AA/ F( X, A1 p6 `) E
  2053. STA $BA
    ; @2 ^# [$ \9 R
  2054. LDA #$22
    7 X! }2 K+ K$ ^" d% K
  2055. STA $BB
    * S7 s% G# X$ V' z* K: ~( U
  2056. JSR MOVESPEED_WRITE
    , Z" |" C- N& @2 q1 m8 n
  2057. LDA $70035 Y2 }% `( @/ b' I, _' @/ E
  2058. CLC
    : y7 a5 x# j9 z; p: f# b7 O( r$ D
  2059. ADC #$821 T2 e+ T6 N% h7 |. ~
  2060. STA $2007( g3 Q. b- s# L: T" U! {/ [: Y: x
  2061. RTS
    9 a) `% t, t7 Y! Y7 z
复制代码

本帖子中包含更多资源

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

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

签到天数: 2892 天

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

签到天数: 2048 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2016-11-21 09:59:17 | 显示全部楼层
这东西找了好久勒,谢谢!!
0 W& L; j7 I: J# A; I& G
[发帖际遇]: wjb19780515 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 2366 天

[LV.Master]伴坛终老

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

签到天数: 2014 天

[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, 2024-11-18 16:43 , Processed in 1.114258 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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