|
|
本帖最后由 yandagui 于 2016-11-19 23:11 编辑 # M$ I6 O0 r& W
3 M+ ^7 Z& Y& m5 ]; O8 | [FC][魂斗罗旋风终板END暂停显菜单] 0 f% k- ~5 z S" v+ |( o
作者:FlameCyclone(flamecyclone.ys168.com)
# \6 T! a" Y0 D1 T时间:2016/11/19 21:46:00; X9 \9 k, K) i: M7 Q
更新日志:
3 I. g( Z' \, w& u2016.11.19:加入暂停显菜单(共5页).
. e+ a7 [; l; e4 Z% O: K2016.11.12:加入无限跳跃.
3 h0 }3 ^9 Y& m5 Y: {2016.11.12:加入速度调节.
# a' ?! W4 o4 `* a2 J- E# s# `1 O: E8 ~2016.11.11:加入敌我子弹对消功能.
' H4 G! ^( X; C) a6 x1 {1 l2016.11.11:加入全屏闪灭功能.
! L% H/ V" b* }# z! J2016.06.08:加入全屏瞄准功能.6 K6 O6 o: s% A, g$ B0 f
2016.05.31:加入弹速调节功能. Q( | @ B" p; x* U* u, {! y
2016.01.01:加入高难度模式.9 B8 S. h& ?$ T* W4 S) O; g& O
2015.12.12:修复消除威胁不足,使得移动BOSS关卡(第2,4,5,6)正常通过.
4 B6 p' e2 J: o- M8 b W2014.07.05:由于对打功能不完善,直接去除,更改为生命锁定.
3 g- }4 L2 R! L6 s5 k2014.07.05:双人切换功能优化.) h4 H! Z* O2 K6 n
2014.06.01:修复第三关浮空到BOSS前必须关闭浮空后跳跃才能见BOSS的麻烦.
[) F D( R1 s4 G. ]! m2014.06.01:取消生命锁定,改为生命锁定模式下剩余生命不会少于一条.0 l' u* ~6 j5 W, S3 f; z/ E! ~
2014.01.18:修复GAME OVER字样只有G和O的错误,原来想拉大字母间距离,看来行不通.
( ]) `8 d' f# a/ y1 b5 R2014.01.18:浮空模式下,P2飞行高度未限制导致死亡,原来是指令本该用绝对X变址的被用成了绝对寻址.
' O5 p9 V3 i! k0 Q2014.02.08:拿手机无聊时又发现一些错误,所以修正生命剩余勋章显示的错误(某天用读卡器插在DVD上测试发现机器读不了卡,原因是目录级数超过三级,只有刻录成光盘来测试,结果发现生命勋章的显示竟然无压力!)5 j, @" w8 t& N! C: X- `
2014.02.13:加入自动演示通关.
8 P1 I f m5 D* }% p内容:
/ A8 D. Q0 ~- G( A* v' j23.暂停菜单: 暂停后,自动显示菜单,选择键翻页,方向键和BA键进行各种功能的开关操作.6 s# _& m- _: Z' o' L ^
22.无限跳跃: 暂停后,选择键4次,按下开启,开启后游戏时无限跳跃.
4 @+ |. [8 D# v& f [21.速度调节: 暂停后,选择键4次,按左右调节行走速度(0-3级).1 |* c: W; J# s7 r3 G6 r
20.子弹对消: 暂停后,选择键4次,再按A键切换,此时敌人子弹可以打掉.3 y+ Y4 K- k8 H
19.全屏闪灭: 暂停后,选择键4次,再按B键切换,开启后游戏时按选择键屏幕内敌人闪灭.- S1 f: v" [9 Y/ ~$ g2 k# W; |9 S7 }
18.全屏瞄准: 暂停后,选择键2次,再按B开启/关闭,子弹对消开启时无效." v" b# K) b3 [2 A0 E7 b
17.弹速调节: 暂停后,选择键3次,下开启,非暂停时按选择键调节,默认为1级,共5级.
" g8 n. U! ~$ X4 r/ u16.困难模式: 暂停后,选择键3次,右键切换,我不相信你能够无伤通关.
( p, r6 h6 S4 J/ G) x01.子弹切换: 暂停后,选择键0次,上=快S,下=快L,左=快M,右=快F,B=快普通,A=取消当前子弹加速状态." Q0 H& n4 w$ @$ r- |
02.无敌锁定: 暂停后,选择键1次,上开启/关闭,不用讲了,金身无敌.. X$ v0 h7 z! G; ?; e4 K3 T
03.生命锁定: 暂停后,选择键1次,下开启/关闭,生命锁定为16条.
1 ?+ z _8 L: e+ }0 B3 a04.角色双控: 暂停后,选择键1次,左开启/关闭,无非就是主机控制副机.0 U8 B( X5 @. n+ C1 D
05.生命底限: 暂停后,选择键1次,右开启/关闭,锁定剩余生命数不少于1条.% l0 i5 m9 U8 y# [5 h7 h: ~
06.一击必杀: 暂停后,选择键1次,再按B开启/关闭,即使是第8关BOSS,一发花生米依然要其老命.2 P7 U2 a+ ^( B2 p2 w
07.角色浮空: 暂停后,选择键1次,再按A开启/关闭,第三关浮空时按选择键向上卷画面轴." j8 u e0 b) Z4 c o
08.弹数加强: 暂停后,选择键2次,上开启/关闭,此时所有子弹发射数为15发.
6 k. z! H/ f' ^7 i' h* Y09.皮肤更换: 暂停后,选择键2次,下开启/关闭,主机开启时橙黄色,副机开启时为蓝色.9 }2 a5 Z% {3 }
10.混合子弹: 暂停后,选择键2次,左开启/关闭,此时连射时所有子弹混合.
. b6 ^8 F) E- ]2 {: \11.敌人锁定: 暂停后,选择键2次,右开启/关闭,此时敌人原位跑不动.
5 V6 o& a9 Q7 X" m/ b) y0 @) ^12.跳过一关: 暂停后,选择键3次,再按B使用,使用后可以直接到下一关.+ Y( I( B& P) q. o
13.单双切换: 暂停后,选择键3次,再按A键切换单双人游戏模式." J, B; F9 C2 g6 Z' Q
14.子弹方向: 暂停后,选择键3次,上开启/关闭,开启后发射的子弹攻击方向会随着操作的方向按键变化,第二关和第四关的小关建议关闭(开启的话打中敌人太难了哦).
1 y: K6 {! ]; D6 [: S; ^5 ]1 ^2 q15.消除威胁: 暂停后,选择键3次,左开启/关闭,此时游戏时按B键使得移动物体被消除。5 f B( Y: q0 F. f
A.做了一些汉化(小字体),剧情,关卡名及通关后的文字未汉化.' l/ m! Y, d, S7 [) M6 Q" { i
B.自动演示通关,双人合体打通关,演示时有背景音乐,通关后一样会有结尾及恐怖台词,之后游戏进入选关(相当于游戏自动开始了).注:通关后P1及P2会获得16条生命!也就是说看完演示自动开始后第一版有16条生命!
' Y: ]8 Z1 E& w5 W3 c6 t) bC.生命显示加强:最大显示15个剩余生命勋章!电脑端请开启精灵超过8个(这样勋章不会闪烁),手机端认命了,不过不影响正常操作.
% W" M3 |& x3 `+ x' q" ^. n
4 T s2 Q5 z6 ~& G4 S( T& @ 如果有什么好的修改建议,恳请通过QQ(1490868135)联系我(也许我不在线,可以留言在QQ里)
) s- y3 k# p! U9 l3 Y欢迎大家转载,转载时必须注明出处.9 L+ O( X1 J. l6 m. N; \; I
) ]& L ~5 L3 t! y
3 R* Z/ T! N$ A- T2 t: r/ ^2 y- ~0 \+ p4 N& x
忙了一个星期,觉都没睡好,眼睛也疲惫不堪啊.终于找到解决方法了,目前VIRTUANES运行不了,请使用其他模拟器玩.$ P8 R, R" W5 i9 \ U! h' {
这几天的劳动成果如下:- .ORG $B400
2 F# O; w9 x) y' n - ( _* P6 z& w( u5 ] {$ I, D
-
1 A: D: [0 s0 O" s. _+ T1 U$ a - PROREG:
7 l X9 T1 z! ^( I - PHA
`: w7 M. `* R4 ?/ u - TXA/ i. Z0 t; V, P, t
- PHA
9 k/ N* }0 @4 | r" t - TYA2 O/ a; S- c2 w+ m( ^0 Y
- PHA" A; K9 m+ X/ E. v7 E
- LDA $25+ I& P% Z3 I' a: x( E
- CMP #$01 \+ G2 \$ E/ J- ], Z/ m
- BNE RE
2 o" U* }( d3 ?! v, J) x" d+ t - LDA $010A' v# b/ W' S/ Y2 r& z8 Z; N
- CMP #$00! \! j/ p' V* r/ \
- BEQ P1, m. _/ A8 y. J! |0 r
- ) U+ ^" \! n* r# V1 d! p- q
- RE:: \& r3 L& u; m$ Q
- JMP PPUWRITE
2 H' X# T0 M! P, H8 q - " {2 f/ m: c5 A2 L' ]/ k6 V- X, L
- P1: ; 条件判断2 M- U; e W+ k! j# Y/ }( N; R+ E
- LDA $7FFF
# _. ^' p. K3 v' ` - CMP #$FF; t3 S t- {4 w; b1 g
- BNE P1RP; p" r4 }# }" Q" ~$ W
- LDA $7FA0
3 L# n9 j% ?: [; E) o) e9 i - CMP #$00
; [( K9 j2 d& e! r8 g9 a3 ~; b - BNE P1CMP
, w0 e/ G, d, @0 i( K. D+ q0 ] - LDA $2001
* a! [+ ~4 @6 o( h9 U: ]3 }& b - PHA
/ z" E/ R3 q t7 s; e - LDA #$00
$ H- p5 T, F' P - STA $2001/ r# p. Q" h3 k7 E/ A4 ?2 G e" R& U( a
- LDA #$FF
: x- w |) w) o. L; q; L - STA $7FA0& a+ | W; a* ]6 J" B
- JSR CLEANA' E: z. O& Y! y: b
- PLA
8 R1 T1 e* g5 ] - STA $2001
0 P4 z( K w5 ^5 T/ k. c' U& O - JMP PPUWRITE
% q* k% F+ Z2 Y1 S7 Y - P1CMP:0 {2 p7 p- w6 v5 Y# r# S$ o# ]9 _
- LDA $7FFF
* i' q' y+ b8 w6 T- E2 j - CMP #$00
% b' }0 O5 a6 U) f, f - BNE RE/ \. F8 r5 j' h1 u% w* P) M0 z
- P1RP:) u/ |2 H0 T7 V9 t- \3 O
- LDA $2002
' K, V5 H$ f4 Q+ I) R) r% [ - LDA #$00) g1 d: ]) v* i- E/ w1 _/ J7 {$ L
- STA $2001+ ~* U/ Z" }! Q$ ^& R
- LDA #$FF V+ h% A- w" {: U6 u Y
- STA $7FFF' }5 N( M5 `! G; [
- STA $7FA0
% \; z9 f# |' G( C& M - JSR COPYPPU
6 z! C1 a3 O8 r - PIRP2:0 {& k# Q$ B1 {
- JSR CLEANA% P# f* ? Z) D& m
- JMP PPUWRITE+ j$ h- A7 H" H% z; a% P1 y
% }3 \# i2 H3 I: g' B: T% A- COPYPPU:
, H( m0 z9 f4 |3 @2 K9 w [+ [ - L0:
% n9 j4 F# [! e6 J& W - LDA $30
+ N0 J' Y/ A: y- v2 n - CMP #$02" L+ a8 e' n" v$ @
- BNE UNPROFC
/ T* v* v; B5 p - LDA $FC
& i2 b# _( b0 g# j, O4 \/ B - STA $7EFC
# P+ c5 I0 s* ~* ]$ D1 Y; c+ J - LDA #$00
/ \8 O* p( f) `' E b& Z' j - STA $FC# @0 ?3 p8 o+ D* X# C. c
- UNPROFC:3 }: g6 E( H B! C$ h: _
- LDA $FD
9 }8 g7 [6 Z p0 ? - STA $7EFD
& v( t* A& I# u6 W; B/ n - LDA $FF
2 W" h5 X$ a. ~" }5 }5 C - STA $7EFF
% \+ D4 c6 @, x9 M - LDA #$00
( i1 f! A; n. W. V: I& Q- p# _/ l6 v - STA $FD
4 O) ~+ d7 t" U' \9 x. V/ q" H - LDA #$B0
1 C1 @3 v' t4 k# `1 n6 v - STA $FF
$ ^9 p4 a g2 {! x8 T4 c - LDA $07C1
4 y8 s/ h: W/ I+ K2 k - STA $7FC1
- A$ V: d- a) x - LDA #$3F z/ B: o4 T$ M6 S Y
- STA $2006$ U) j4 p( {$ N) t7 X
- LDA #$01
1 q1 D$ y7 `4 T$ R0 D, b - STA $20062 c9 S' }& Z& Y9 f
- LDA #$24, }8 V0 E1 ?. L) J) E
- STA $2007) s) c8 j5 U7 Y% |
- LDA $07F6
3 |% R' H1 q% d E" S2 C - STA $7FFE# P9 y% A, M1 ]3 y( U7 _
- LDA $00FE+ l$ C" E1 i1 U8 P$ g/ Y
- STA $7FFD
$ e1 D5 e9 G8 w8 H2 m& {% d - LDX #$00, M+ c& Y% z! B8 K T
- LDY #$007 u, i) o% f/ b% H1 S( ?& u5 L5 Y
- LDA $BD% c& m( Y. R, b; F8 l& ]$ F' x; d
- PHA, W1 B4 H5 d" g' s; @
- LDA $BC
3 q4 w( y. K c! z- e: P) ? - PHA
; o1 R: \, T! N7 t) j4 ?/ @% u$ s - LDA $BB
( {" V+ L2 L/ b; Q) w# q3 s+ _ - PHA
; U- i2 n5 a8 Z+ t" G, K7 ~4 y - LDA $BA
0 t5 v& y: p# r+ J8 K9 v. ` - PHA/ ~ I( e! z5 d1 K
- LDA $B9
- m- i3 X8 u t* j - PHA
. X: W7 Z. B4 [+ p% ?) X% z+ N, b$ S - LDA $B8
3 `! @8 x) j$ j' x - PHA
3 }' _+ p7 p& M6 `7 D( a7 T - LDA #$00
4 c2 S; `1 C' E8 _8 v! Y - STA $B8
. b; X: a" ^6 b - STA $B9
- A( C' v' ]8 H, r x+ K) ] - STA $BA% k% s, j3 d3 w: E
- STA $BB
6 H+ ^3 P. ]" W" g0 { - STA $BC' N' {3 a9 \6 B# f( _1 r1 j" @! R
- STA $BD
2 L6 F: y" ]2 K# b) j' o - LDA #$00$ T2 U/ B0 k! ^# b0 l- x- W' @
- STA $BA" s& e, Y' e+ I; o3 d
- LDA #$20" A+ V) L/ ?/ K ^2 M
- STA $BB
5 B% H* A ]1 g8 R; m" A - LDA #$005 v5 [% C. M, f
- STA $BC
" b" j+ H2 \( g+ o' j - LDA #$60
+ f; e2 K0 i! `9 N0 ^+ l. p- {( f9 r - STA $BD
! P3 Z( B) @+ B5 q% o - 0 ?- f+ I+ i$ ]$ N0 {7 z+ V& X: s9 ?
- L1: ; PPU复制# Y" H8 t c2 y& c* _( { z# K
- LDA $BB- C9 \, ~& A* H6 n! _: G+ L4 A
- CMP #$30+ Q0 p- ]" i+ V7 h
- BNE L2 S. j; k/ u* g$ ~
- LDA $BA
3 W3 `* N4 D% m - CMP #$00
% k5 e1 r+ y, d - BEQ PROADPLA0 k) G! J0 `& H2 |5 I2 z5 `4 H; G
-
( k8 M) W) B4 f! w6 s1 w - L2:
+ K* b6 m: R v - LDA $BB
7 c( z( V4 f& [; F# r. ` - STA $2006. K, z% H# Q& E+ K1 @
- LDA $BA, m1 _8 D0 r" |+ i5 w, s: N
- STA $2006
: k, V! e1 S& U# Q8 `+ s - / Q0 O0 y8 a+ S0 {1 J' I" O
- L3:& _8 L+ y9 \' A. k. c
- LDA $2007
4 r& @: C/ `2 J! G2 P9 Z) _9 c2 _ - LDA $20077 g9 |9 E) E- t1 u
- STA ($BC),Y
7 s$ X, T/ |. T- B- r* }$ g - ) L. H; [+ e: S6 x# ^3 r
- L4:8 h1 q: A4 k' } G& o" V G5 @
- LDA #$00
H7 P! b2 e9 e - STA $2000 C* ~- [+ W. P. O' G
- INX
- g" p ~# c8 F5 n) x, p5 Q3 t - INC $BA3 Z' d; T; A0 a& w$ L D
- INC $BC1 `% A3 M6 e8 \! u" X
- CPX #$002 Q* R! g5 S* @# N0 I1 Q6 q
- BNE L1
! i! x& m- T& a5 Y - INC $BB% {* c, J6 j# Y) Q
- INC $BD
6 b. o3 }8 J& F- g$ q+ i- | - JMP L18 y/ W8 @) B8 V. U* O8 ]
% n3 b, Y T& D/ l, }- PROADPLA: ;出栈
( ^0 G5 L+ `- m - PLA$ l* M8 g& Z8 }" l( A2 f
- STA $B8# A5 P4 o4 J \8 U) @( t
- PLA
5 y2 u7 F4 y& `& T6 d; r5 d - STA $B9
1 Y% A) _& N. U% W& A" |. H3 X - PLA
- C" H' h1 }" m8 H: G- W4 [ - STA $BA
* u k5 V+ u6 J7 K: A* i - PLA
% R$ G9 h6 z7 c1 {' g - STA $BB
/ X+ l5 H( L: T9 H* T8 {# S, h - PLA$ e9 _% B! T8 x" n3 T$ }1 p7 @
- STA $BC. o6 c0 S0 D* G, A
- PLA
2 p! A! u) o }: X1 l/ | - STA $BD
" _1 k( ^# R9 G8 \ - CPRE:
6 i2 ?/ n9 r2 a0 F4 |$ }: w! i - RTS
: b6 A; j& X7 \" l7 o& B
+ A% r0 q; p1 q3 Q! L- @. ~) W- CLEANA: ; PPU清空 i8 ^# p" ~/ H" W
- LDA $BD
8 _! H% H, L6 z. F, J- q; a; |) x8 w - PHA
. J" c. Q% c5 r8 S* Q& h - LDA $BC
# n& ^% o# p) {9 _5 F3 `. \ - PHA
' f: l2 _/ _% v( {0 P, a8 A - LDA $BB
; B9 q; l' `) p D% C - PHA
# B: _5 l; v9 I% b, Z - LDA $BA7 c* w! C/ L5 _
- PHA5 f7 ]) N1 g$ o( ]; A% f
- LDA $B96 ]7 \! {) y* f& F5 ]8 S
- PHA
7 B9 b! [7 Q# Z8 r7 v - LDA $B8. V A* e/ p+ {" J; n* T# @/ Q
- PHA
+ N( f. `, X, _1 O2 D& x) M8 H0 Q- a' G - LDA #$000 A7 w4 j. n( v3 u5 Q' s0 u) ]
- STA $B8- Q, O7 Y6 e* l- [+ v# |6 e
- STA $B98 g+ r3 E$ P4 T) d1 ] m6 R3 w
- STA $BA
7 Z2 |5 s% c- g/ e) V - STA $BB/ H5 l5 K' G% M2 Z9 x6 N
- STA $BC- r- A Q# k: O8 f7 w
- STA $BD
# N) d" ?6 ~9 w _ - LDX #$00
- C2 P2 D$ V+ D - LDY #$00- T! s& \% a2 U# G
- LDA #$00
% F0 b( g$ H8 d) S; J$ z - STA $BA
; m& y3 h7 d( e( { - LDA #$205 _% T. l/ L: [0 H/ [
- STA $BB
1 c( B M3 j$ d9 J9 t -
4 x# O2 p4 `9 b/ K+ C - CL1:
$ Y* j. l. e( P" ~( I - LDA $BB
9 G* _5 B* s' W: w5 Y% B. i - CMP #$30
, E9 J/ U/ \% {! l" o# L - BNE CL2
3 ~$ t1 _2 M" Y7 E& [ - LDA $BA) R. q6 _2 B* m5 O
- CMP #$002 u( A+ q. Q4 g6 g. Y
- BEQ FREEWRIYE( m% s+ Y* d# g8 j2 A
-
" j3 f! y; a. ~ - CL2:
; I# w+ g- P; @, k: a - LDA $BB7 Q _+ D0 O. F
- STA $2006
( i u, ?3 O$ L - LDA $BA
& c( R) C$ q4 @. i$ O - STA $20065 u! l) N: Q9 R+ n
- # B! h! K, f7 \
- CL3:) @' w) i7 f4 J6 s6 e% ?# F) o
- LDA #$00
+ M5 _$ {* v# O9 K3 `8 V - STA $2007 L+ y* H8 ~, Y0 z. B
- 6 q9 U7 A1 E$ N
- CL4:
0 R' O- i; r/ s9 [0 k - LDA #$00& [* K6 H) E' d. o$ r
- STA $2000. T% Q; R3 [ t2 v0 E8 t
- INX
$ g5 \5 V: x, c+ u/ z9 z0 E0 K7 g* h - INC $BA& e; I3 x5 w* `. d( \
- CPX #$00
( ?; _) `: y$ {# Q( m7 U - BNE CL1! n" V: ~, \9 Z& Z. B. l
- INC $BB' q$ B9 q& X) r$ ~( i5 N2 t
- JMP CL1
( {" T+ W, ]4 G' ^ -
/ R2 A: Z0 s8 T. u# S0 [; z - W4 Z6 {/ ^9 O
- FREEWRIYE:; |; a) ?% `, {1 _ c+ E
- JSR FREE$ d4 j; L g( F* }6 N' O
# O0 k0 |( q6 Q& J
+ v! Z1 k) x% |6 U$ \- X- ! N" b; ^& d) P& O
- ' o( c$ \; {3 G9 z7 Y5 l* U! q/ P; W
- / M9 p0 B/ r# g2 J0 [3 Z: _5 W1 T
- CLEANF: ; 恢复现场
; ]6 u: ~; X6 B# N3 n - LDA #$08 p w% D2 G6 Q/ u; h, v( D- s
- STA $FE
; H- w! H" ]9 {$ T& V+ L1 d! [ - LDA #$00
1 T" y& z A7 S9 l' N; K - STA $07F6
" M7 c8 u k$ x( e3 Q, \ n! N4 y - LDA #$245 @' C, [/ q, m( _5 R2 r0 V7 r
- STA $7FC0- g8 I& @/ r i8 \1 y
- PLA
3 @& Y# h& ?" L; b2 L( X7 I4 R - STA $B82 r0 g Y4 O# G
- PLA
8 Z6 L) m3 }8 u% s P8 U+ E* c Q) D - STA $B9/ M5 _ d, z# I/ N! v5 B
- PLA5 D8 m. w. g+ D, ~( T: m
- STA $BA1 e9 l! L1 `* C+ q
- PLA
7 Q! T+ e/ g4 j2 d! V6 ~3 V - STA $BB
. V9 @- {& w8 R; V# r: @4 d% @' ^ - PLA T) t1 V1 I- a$ V% R$ h% ^% N
- STA $BC
, U b" A& s0 W - PLA8 @ {" M4 O. h: \" D8 q: N
- STA $BD
) H0 i5 l! O2 \( [ - CLRF:
6 x- {9 [" W, p: I/ q7 f - RTS9 u5 x! D u( G2 F5 s
-
# ], S, n7 o( v! F - W_DATA:
# N) Z* f1 O: q! ?; v7 m& u - .BYTE $00,$01,$02,$03,$04
: i1 n/ l$ Z. Q" w: w) [ - / O# f5 @( ~6 L1 B( s
- W_PPU:6 q( x+ ~6 b2 [* _7 T
- .BYTE $98,$97,$90,$9D,$96: R9 W( v# B$ C2 k) m
- " |$ p |1 J U& k& U1 L- D% X
- P1_STRING:
1 P' ]- _% }, a8 ?& W6 k# j. ~ - .BYTE $9A,$82,$00 ;"P1"# H% ^' t" Z0 L. r5 K
- S5 z- @7 T3 ]1 o' `
- P2_STRING:
- q* ]1 O7 ^9 E5 w' q - .BYTE $9A,$83,$00 ;"P2"% k$ }6 q* |% A% g/ D
4 D4 ~( L n8 |8 l* B- WEAPON_STRING:
( m, }, ~% q5 @9 A& j - .BYTE $A1,$8F,$8B,$9A,$99,$98,$00 ;"WEAPON"
3 }* Z1 c* f, H$ W" y/ R2 f1 N4 j
" X( J4 P4 [. H- h9 q' C, o9 p! |- RELIFE_STRING:$ a; T6 b5 a! }; q
- .BYTE $9C,$8F,$96,$93,$90,$8F,$00 ;"RELIFE"! {: X% p4 U, [: X0 w
. e$ b. |# H; A3 q7 @8 b' v& \& d- P1_PPU:
7 I) d) u8 ?/ I - LDX #$00$ \( i. l- o0 r+ m. s
- 4 N3 S8 K8 T/ C- Q( f
- P1_PPUW:6 v8 A* X0 ]' e9 ^
- JSR PPUADDR_PROCESS9 Y5 F. ?, M' K( c8 W5 L7 Q
- LDA P1_STRING,X* L3 [0 F/ Q% N
- STA $2007
T2 c- g5 P: A) g6 I - INX
4 x9 A/ e. y6 s - INC $BA
( }' y4 K9 _0 y" t1 R4 q a - CPX #$03
. D, ?: m- W6 S& F0 }. U- x - BCC P1_PPUW# c1 ~5 s5 Q& _4 U% `: V
- LDX #$00, q% [% T o2 ]3 z" ^) U0 Y
- RTS
, M h: N! D! `( x3 r8 O n - 8 B" Y: M! x, R" Q) o1 \8 G
- P2_PPU:
E# s0 W& d. E/ j - LDX #$00* E* ]7 \) _& p$ |: m& `/ V
; O. K, C7 t! G! y$ W' E7 l- P2_PPUW:4 {+ w, \2 T8 H' ~5 ^* A* u3 W
- JSR PPUADDR_PROCESS
, U$ v r, H0 M' m7 Z2 \ k - LDA P2_STRING,X" ]" t6 E2 Q# F, x+ |
- STA $2007
7 k4 R# l) e2 T - INX
9 j! y1 s1 o: f' ^ - INC $BA; D2 ?7 Q2 ~6 \3 n" t; ~
- CPX #$03* b! i8 e2 Y$ \7 M, J
- BCC P2_PPUW# F2 A9 f L2 o$ R' L2 p
- LDX #$00) X( ^6 U) S6 t
- RTS
& _ N' g$ W3 \7 Y7 M( I- O- F' R* [
" Z$ f+ }9 P* A2 [! G/ R
" G" }/ z5 w9 }- LDA $BB/ s1 j8 ~3 N r# ~9 ^
- STA $20063 n6 i1 ~8 _. t* G3 i2 r
- LDA $BA+ b$ |* K$ `8 B+ K7 Y
- STA $20063 F d7 f* S4 }' W. J: D. ^
- RTS
' H1 H8 d2 ^. a8 F9 W
$ K7 t+ U% I+ |: ?9 f2 r-
$ D4 i p. P& x -
+ d2 y9 e# {6 u, G# Q& k - PLAYERLIFE:; m8 k6 k0 ~1 H* `
- JSR LIFETODEC9 [3 H6 \5 H. e0 }: \
- LIFEPPU1:
( A! M$ r7 O5 }+ N; f - LDX #$00
& t% c' ^: d" j, z, h+ o3 w - LIFEPPU1RE:
3 G [8 W3 [, K - JSR PPUADDR_PROCESS$ t1 F. g6 Z i. _$ p9 U- ^3 K( l
- LDA RELIFE_STRING,X8 E O4 c/ H' y9 E; ]# Z8 K( s
- STA $2007
, c/ C- W! K) k+ w v- b - INX: }) [3 q ~: i- h: Y9 @
- INC $BA5 j5 M1 m8 M/ N7 n+ g
- CPX #$07
- y9 C" n5 u& w4 ~ - BCC LIFEPPU1RE$ y, Q0 n4 S6 D
9 ?) Y/ W& \* U- j; x- LIFEDEC: ;生命显示写入
. Z9 \4 t' h. v - LDX #$00
7 Z: K9 H0 y5 w N- k( t - LIFEDECRE:8 G. b# P( H, m9 h
- LDA $7A03,X2 v5 D6 `5 Z3 M' T- t
- CLC7 i m4 T/ c) |1 [
- ADC #$81% F1 j0 m, N2 V5 h6 y
- STA $2007
6 {1 S' A& i+ n7 O' }7 V5 k - INX
- ~% w' g& x0 e. K- O$ O - INC $BA: b( D0 q( j3 n4 l! S, X4 r* ~
- CPX #$033 y5 [* j% A+ G' B" Y4 t# x2 W$ }) L
- BCC LIFEDECRE- D/ J; g1 Z# r
- LDX #$00
* s8 e- l( H1 \$ O - RTS2 s( Q+ I& _5 B- f$ b9 H; e
- % O( X. Y- I \' o1 R
- LIFETODEC: ;十进制转换
) a. P* T" H! d* R8 a/ l5 L! b - LIFEL1: ;initialise6 C4 I) F' \# R$ {# Z7 y
- STA $7A00 ;$7A00=F39 T8 J9 {) ~6 I) z* e! O+ P+ W
- LDA #$00+ w! ?( |& n1 L1 c
- STA $7A03 ;$7A03=00
1 Z; \# |' ~: R; k# @ - STA $7A04 ;$7A04=00
3 K6 o# ~0 s: j8 K1 W - STA $7A05 ;$7A05=00: ^7 [( G3 v+ t3 W
- LIFEL2: ;copy data $7A00 to 6001
3 P1 `- P8 ?' V! Z - LDA $7A00
* @0 b; R' E( B: I. p B - STA $7A01
% b/ E; `; \! v0 E3 Y" |* z
: ]/ U0 u* F. } l- LIFEL3: ;hundred
V/ e9 K" Y0 u- [1 I - LDA $7A01: L2 L) B- H6 w" \
- CMP #$646 T. E* ~8 [% |, N
- BCC LIFEL6 ;$7A01<100 goto L62 ~/ ]' K+ D: |; X7 \3 c/ N. I3 b
- LIFEL4:9 ]- c2 ?" C5 t& |( e& k
- LDA $7A011 X9 g- i1 |* w: M/ u
- SEC# d' \6 P: X- k$ `
- SBC #$64 ;$7A01=$7A01-100/ @9 b% z W' ]0 p3 V3 {
- STA $7A01
1 e" W p2 I u7 ^8 L. S/ |. N - INC $7A03 ;hundred++, ?' Z6 W' I8 b! a7 C7 D& l$ L
- LIFEL5:% w, _7 q3 F k1 ^& v
- LDA $7A01' K- _5 i1 ?6 H' `0 J; t! t
- CMP #$64
N( w9 V" V; T - BCS LIFEL4 ;$7A01>100 goto L4
& N O8 M5 H! Q! Y6 N/ L
( Z$ [( U5 N3 D- LIFEL6: ;decade' O5 b7 D8 M7 b! ]0 u; U
- LDA $7A01$ ^8 \1 p$ O% P+ R) ]
- CMP #$0A# e; P1 N5 j! q& o+ ]
- BCC LIFEL9 ;$7A01<10 goto L9
1 b% @+ ?8 l) K2 K# j - LIFEL7: , V% a, P3 m0 P" {7 V3 {) e7 [
- LDA $7A01
! s: L% ^$ w% c2 W O - SEC4 e7 m& ]4 m* Q: L
- SBC #$0A) v$ l, P6 _% T# M8 L& M4 T
- STA $7A01 ;$7A01=$7A01-10& P# A6 y: D- O0 ]5 ]6 x2 F9 L% I. [
- INC $7A04 ;decade++; w8 M& I' r' v7 C. {
- LIFEL8:. f* \+ n9 D( p% W3 A6 L0 I9 j& Y/ ^
- LDA $7A014 m" D' e0 Z+ K8 ]- E: H& G
- CMP #$0A
% T4 ?$ v; P O: E/ K7 ] - BCS LIFEL7 ;$7A01>10 goto L7
; q- y6 u% v1 u1 Q% X9 z - ;unit! m2 d; l4 r& {* u8 O
- LIFEL9:0 j/ F* G: M* ?" c) G- z" @, t
- LDA $7A01 ;$7A05=$7A01! ~6 Q% J$ F+ R2 a+ x
- STA $7A05 ;unit8 C/ k3 J( X0 @2 R
- RTS ;return* T6 L6 z0 |+ E% ?/ @ @% x
; e' `2 C, r, t2 L* X
6 A0 s: n- S5 N& Z) n0 E- " b) o1 L6 `* ^' x$ Z; c" }# s
- WEA: ;武器ppu写入
) c2 ]( h$ v r5 `- _0 ?3 F0 C - LDX #$008 x/ H6 O' V' c; W! q$ ]6 ^
- WEARE:0 g& m0 T0 h9 p' T6 b, }
- JSR PPUADDR_PROCESS# g' O& E( I; _
- LDA WEAPON_STRING,X* @3 `' e; |* F7 G
- STA $2007& w; X% K+ s% X6 a( u! c5 D
- LDA #$00
- u% I! ?- [8 z' f' f - STA $2000, [$ Y! t9 H! h
- INX
z: m3 h+ Y$ i% G% u5 I% _0 K9 g1 V8 R - INC $BA
- s G) T, o# [! r) O5 x/ Z) @ - CPX #$07
- c8 K. N' h( f6 P - BCC WEARE
3 V* p: t. y- N! [
! C+ }" _5 |* a2 K2 L' u& Q$ d- READ_WEA:
; p1 [$ K" s/ ~, N7 X7 _/ z - LDA $B9
8 L5 i1 J3 o5 j+ g4 D5 r - AND #$10
/ x$ V# u) q: k; p - BEQ NWEA$ H" c+ G; E& H: R# D
- SWEA:
: C9 M0 p1 N5 |0 s+ [2 E# c - : n9 D% B- `& m' q3 T0 G$ V
- LDA #$9D
% I9 E9 q2 W: R; Q1 E1 K - STA $2007# {/ t* b. K) ?4 h
- LDA #$00
+ j4 p& V/ {1 i$ e7 }8 Q - STA $2000
+ k& c; J* g; e( D1 K: L4 d( c - INC $BA$ L/ k' ~, B0 s! r
- LDX #$00# I" Y! g8 f: E* U0 l/ M. a
- JMP WEAREAD
0 l( ~8 h; z, }: B7 E' {8 B5 o, D - NWEA:5 D1 C2 u: x& v1 h- q4 j! L2 W" H8 ~
. `$ |0 l* H- m! q- h) F. u- LDA #$8D* S- S& g! S) Y7 t: S
- STA $2007
: F( G) h3 Z$ k3 \# ?" x' W' G8 l - LDA #$00
0 q" c5 u* k Y; Z* O - STA $2000
5 r4 j. U, b% h+ ?7 V/ `2 u* o - INC $BA
A& h" W6 B& S- }* G - LDX #$00
8 d$ |. b9 y0 `% @3 _5 { - WEAREAD:; A! r: F1 p" S+ K4 I! p8 V7 g
- LDA $B9
1 x1 ~/ g" K2 k" i4 f0 N& F1 L - AND #$EF. D4 N$ T" r0 E3 Z. O
- CMP W_DATA,X. `! G, K6 k5 z* q" I$ w9 b2 Q
- BNE WEACMP" Q. V7 L- ?& T. K9 r1 F& v
8 m# V" G* i% i4 u$ ^! C' c- LDA W_PPU,X! r2 ]9 k4 Y; T5 N! N, E) N
- STA $2007
7 P, k% _8 Y! j' K+ c - LDA #$00
b7 ^. Y3 s8 ~3 I - STA $20007 R8 g) i4 c M \+ l( [, e* }
- ; U1 ^8 W" L8 `* K
- WEACMP:* \6 a2 ~# q1 ?" \& ^' F
- INX
. x; H* I7 r6 C' k - CPX #$05& I: z! ~" s2 {4 U
- BCC WEAREAD
% }) h4 z+ i( R. M - RTS x7 X% U( H& A$ B6 k5 X
- , r3 \1 @! D9 h7 [
* }9 p+ s5 |; B- PPUWRITE: Q0 u2 N6 J% z0 ~4 [4 o
- PLA
- Q- Y+ ]) m2 |' s2 M6 s; J - TAY1 s4 {! e5 f: T! J s/ z
- PLA
6 C0 v5 m4 m& {/ |' ^; T: T F - TAX
' Z7 F& H8 p2 n2 z: q" a2 r( w; i - PLA
$ f4 ]- A2 z5 y - LDA $25" i5 T+ l+ S7 H/ c+ t
- CMP #$00! |! K0 [0 ]# w9 v9 C1 f0 U* y- R
- BEQ WP1) e6 [5 G+ Y% e' j; [$ @
- LDA $25/ x/ y4 c$ W+ G
- CMP #$012 j* U0 `- Y* ]2 c# n# A0 N6 ?
- BNE WRE
* _4 D, z, K5 L) Y" p% u- D# Y - LDA $F5,X X2 c0 O. V j' N% ~. h
- AND #$EF8 B- ~/ w4 Y6 T% P# a/ u- c# M
- BEQ WRE0 d1 S, e3 O( v8 X
- LDA #$00! m* L* c0 H! V" ^" a
- STA $7FA0/ Q& h& }3 Q5 c- f( l2 K7 u- B @" C8 u
- - n" ^% W3 r* ^0 F
- WRE:7 C9 }2 a; p7 P* Q! J
- JMP $A000
+ R- y( r( S/ n n7 K; x5 i. n - 5 A, v! X" R% n' E% j4 J6 O) V \9 H
- WP1:, a6 Y" w) m0 Q) M* R1 {+ b& O
- LDA $7FFF) ^) b W0 n# j. `4 m5 f
- CMP #$FF* J% T4 _: U3 U1 h
- BNE WRE6 s/ i- ^/ g2 {- \' J+ [/ q9 l
- LDA #$00- ~# z3 V- [0 q0 @; N
- STA $2001
9 w1 V0 a" N$ }$ }. s - LDA $BD, \1 k" c. s( B% V: P
- PHA
. m4 N3 L6 d6 a8 A - LDA $BC' | W- [$ W. {% a8 D. E
- PHA( I3 p$ x, n B# ]: t6 e) z! [
- LDA $BB" K3 c2 b' w9 _# e) C& T
- PHA9 m G8 z( C ~
- LDA $BA
! q# X9 Z. r! i0 r% k7 W - PHA6 {1 ~4 h; d* f0 u# f! h/ ^0 `
- LDA $B9
" O" R8 i' ?+ j& X - PHA
, o0 r+ q ^1 z- i% {6 V - LDA $B8) n8 P" T) C5 m2 l/ S* D6 ^
- PHA1 f p* _$ ]1 M) E, d! a2 v0 T
- LDA #$00
7 X! L' b& W3 X$ B% ~ - STA $B85 h. [& e/ ^' b" M! e6 r9 K/ [1 D4 r
- STA $B9
3 l, f9 h* J4 G$ {8 i2 g4 H) w/ o - STA $BA
, i- B" l( U) v. P8 l+ { - STA $BB" ~ N. {# e6 _2 Y( ~) R
- STA $BC8 D, ]. [, ]- B9 D8 Q7 V f5 S6 y
- STA $BD
+ u0 q2 m K" f( i - LDA #$00
1 p+ ]) C$ o m+ n3 S8 m/ o2 i+ k* c - STA $7FFF
/ {, r, O2 ], {+ z2 p - LDA $30
3 d9 p( }) W3 V3 u" I - CMP #$026 W. t! G; f1 @
- BNE UNPROCPL/ v2 N" {5 X& ~% ?2 G) J
- LDA $7EFC& z8 _8 v" O7 D3 z7 R1 U
- STA $FC
! `2 T7 j7 I5 f3 b; [4 J - LDA #$00
" y* |( N3 W8 E, c1 h( `! M - STA $A4
7 _! d# _* K2 Z, U G. r, | q# n0 y. w - STA $A5$ p; F1 T1 [) p' W- w
- UNPROCPL: @* {8 ~" K8 ]7 r! E3 m" N
- LDA $7EFD2 U' I7 R6 ]6 f) j: _: c8 G& K8 {
- STA $FD6 I, H+ y* \- L1 K2 {, |, v& N
- LDA $7EFF
( I' M5 W% `7 C+ P - STA $FF' [. _; R( B9 q# t0 {
- * V$ ]8 R$ u8 [! Z+ c4 t2 f
- WL0:) z; w% n' i4 Q( m: }
- LDX #$00
7 i+ i9 N7 N& w! ^2 b* d) Y, G - LDY #$00# l) ^' G7 k1 @$ A f
- LDA #$00- o& e# ]+ i6 L0 h o3 U* ?+ V- T$ E
- STA $BA
2 G5 E8 y4 M+ o& W- b) L - LDA #$20' g9 G; a: j: _7 A, f L
- STA $BB
# U( ?5 h# ?1 B# b4 v - LDA #$00
2 x0 a. @4 D+ s - STA $BC0 e) k$ [5 }: u' y @ N$ i9 l9 K
- LDA #$60
9 d: a/ G k+ N - STA $BD
7 S3 M% @0 @) u8 z: Z( N u+ ` -
/ M; D( j! E: L1 n - WL1:$ n- w i5 S' y1 M. ], b) {) S; G6 Z
- LDA $BD
0 {8 P; V/ q9 `7 Z3 o. a - CMP #$70
3 @0 J0 v$ F; f7 N! h: w* W& {8 m$ F - BNE WL2
5 I8 Q4 z) n3 B, i2 e/ ^ - LDA $BC+ Q3 O5 [0 O- g4 u! a* N: `8 F& a; R
- CMP #$000 D e0 D8 `6 b; V% ^/ c1 h
- BEQ WLR' i9 x2 q' h5 H# a v, k
-
1 s) G4 ]0 v3 T: V - WL2:4 G b( L: P' Z. o( e: g6 R6 G
- LDA $BD3 J2 _, ?; l0 m) f# F, R6 G
- STA $2006" i h: o- D/ N. i( D
- LDA $BC5 J" g5 e5 B) |. v# P- c/ D
- STA $2006
" b) y" K! E6 M+ L* \& d -
( i) K; d |! Y5 c: v6 n( K* w - WL3:
; X8 `0 M% {% N" L4 I& ^* Q - LDA ($BC),Y
* I" g! X* d; c4 ?: s - STA $2007
" K& i% X X% o3 E
# P" z' a$ F# U, w, i- WL4:+ x/ }4 g) Q: ` G$ ]" t) P. N! z
- LDA #$00+ |# _7 R2 ~1 s( s1 X
- STA $2000
, W; r/ j/ T% ^$ t - INX8 O Z1 H0 X7 D8 {: ]7 s8 f
- INC $BA
* k6 T n! P* L: Z - INC $BC( @% f! u, Z* h x8 T3 K
- CPX #$00
7 |9 @) j6 H7 S+ {: N$ D - BNE WL1
1 E. t$ `* d. L5 R - INC $BB
$ v* v5 N1 h6 I s" ? - INC $BD
: g1 @8 [6 w3 {8 p; p5 {- R9 B - JMP WL1
2 G% m" t7 [1 x -
' i+ M$ b8 p) A7 e6 k, d" ^% ], c* @) ~ - WLR:
6 a$ Z" |9 Z- _8 _3 \ - LDA $7FFE6 z; w* [/ g M$ w& h
- STA $07F6
7 F3 s( V. |6 Z4 o5 D; |3 j; { - LDA $7FFD
, E- h# N/ u; G. D4 D - STA $00FE/ Y0 B% u2 G5 ~9 T! S- t
- LDA $7FC1
1 O" }) c: A3 S: } - STA $07C1
0 F. a v- O, u0 d - LDA #$3F
8 J# m8 u# W1 e2 z* P8 }6 d- c3 s - STA $2006
; y# H* c1 r: a4 L0 c2 D% v3 r - LDA #$01
, r) m5 }2 d" m5 g: E - STA $2006
+ Q6 d8 G+ d5 ^) [ - LDA $07C12 o# }' S0 ~# i, T
- STA $2007: W% Q" n! @. j5 A/ l0 {' r
- LDA #$00$ o# ]2 s- s% l+ y) L5 R0 Q' ~6 ]
- STA $2000" H' a( e' c7 h9 K/ f" M! ?
- PLA
3 C! i8 a5 Z; P& i+ ]4 w- C - STA $B82 g( S1 Z2 A8 @1 L' m) @- m
- PLA
2 K- g# p+ \5 w' V9 n - STA $B9
8 m, U7 D! ?! k: c - PLA: F9 A" D7 A; K" V% n) R1 B
- STA $BA
/ k- _+ l% {& _- f - PLA5 X) j3 e H0 c8 n/ e8 S: t4 ]4 X
- STA $BB& f: y) ? u9 U; E
- PLA- W" T1 w' R4 s4 i& r+ y
- STA $BC' j, v- K S7 A6 ~0 g- u
- PLA2 x N/ i: }7 `+ b7 ~
- STA $BD
- I* ?0 J1 m5 E8 V1 k - JMP $A000
" [: t) S' z5 b - 6 L% |% F L: n
- FREE: ; 暂存器保护; \$ I9 r7 @# Z
- LDA $BD
/ N, i6 f1 _; W& }6 X C; d- C - PHA. l% W( k! M% f3 y) |
- LDA $BC
- c$ Y* O8 }; x, X5 H# m; ~* X - PHA6 ?9 e, ?/ L7 A% K+ y8 F
- LDA $BB0 }9 [" k8 I) S: G) U
- PHA8 X% i/ c$ ]2 h k N4 U; [" ~
- LDA $BA
1 W9 w" ~ W/ R( x" I% _1 b - PHA' [* p" [0 ~% T
- LDA $B9
7 r# Z$ a4 Z6 H( N - PHA9 q1 {! n+ @5 v8 h5 A
- LDA $B89 W' p& ~8 k' p: s2 z' ^1 I5 G
- PHA2 [/ A5 R s8 v% q5 ^
- LDA #$007 W8 w7 g1 r# m, ?, `6 f
- STA $B81 s: X4 c8 D! K5 O( r" r
- STA $B9' u+ n. {/ S/ Y# ~
- STA $BA
) p. m0 j3 _3 i7 W" D; j - STA $BB
4 y0 x9 H$ \2 Y ` - STA $BC
9 o# H% q- q- S7 u+ l4 w" b - STA $BD
/ S8 E4 P! `! t
5 P& B, u7 C- Z, t4 @- WEAWRITE: ;武器ppu写入
$ x( O: Q& m0 p! c9 D - LDX #$00
" o$ A. }. ]1 y1 N - LDA $AA
# p2 y6 _9 C- W% r' W# s - STA $B9, x( i9 R- x' R. O, s2 \' K/ J
- WEAINI: ;地值初始化: T7 f0 j* @. x: R1 G
- LDA #$A4- k+ F! s6 P, ~
- STA $BA7 V; T' ~* S. h8 t
- LDA #$20
* C. M: m0 ]! e4 Y- ^/ D9 Z - STA $BB: P, z# S2 h! B3 L% k, W+ o
- # q$ m9 R$ f& O3 J
- / A( _0 N" @# v" M! L0 m
- JSR WEA
( n1 s- M: R" J% u* g# ~* L4 |- F - LDX #$00 ;武器ppu写入/ y+ ^8 z% j6 {0 v
- LDA $AB/ W/ v* J" J, P6 ^1 M. l& a
- STA $B9
1 R4 [! V L H- f - LDA #$B3* s% h: `" Y7 M- S. W0 t1 m
- STA $BA
/ n( m* {* G4 J" K - LDA #$20
J" m$ @+ H. w5 w. b' V - STA $BB
1 C/ {: D6 Z1 I. s7 s3 l - 3 V' ~ ?6 p/ n5 l& Z( g v
- / t: }- z4 @; n$ L2 r
- JSR WEA
9 a& E- H( A( ?, b% _. @5 | -
0 N7 L" r* r$ E5 @. r2 H - LDX #$00
) j" [" h" ]1 }, x0 X) Q5 ?4 d: {- s - LDA #$E4
. e3 m3 {6 M/ ]* Z5 F: o - STA $BA
5 G+ _- a: q! m! v( P A2 p - LDA #$20
1 v6 L- p8 x, n- u' N4 \9 Z - STA $BB4 ?) b, E) N3 T0 |; `: O) x, m
- 8 P& \( W, b. t* d
- & e R5 R4 Y3 G
- LDA $32# E+ }/ X7 A( O; n
- JSR PLAYERLIFE4 z, C: ]! @% e8 @( R
- : L0 Q' y2 ?1 g( W) {6 B
- LDX #$00( F1 k% y; F% ? E4 }
- LDA #$F36 x" L5 G. Y5 D. p8 G. c
- STA $BA% n$ B& d1 e1 W
- LDA #$20 \9 m. X9 ~' d* x
- STA $BB
0 Y% @6 r; X- |- g) P2 n7 ^4 Y9 _
! i5 w7 o7 G: e( K W$ K' X* E- 6 z$ u* a% A, Z! p: R
- LDA $33" q. h8 T; m+ G8 T+ r! z! d# N
- JSR PLAYERLIFE& y& v/ l1 w+ W, L
-
, u! U% g4 L: k3 m9 F: x -
2 g. l6 o" Z$ R9 \2 z - JSR PLAYER_01_PPU
. @4 v( ^8 P0 B6 ~; t - JSR PLAYER_02_PPU: d$ h, r7 K7 \: F4 [
-
9 g' D( P# ?7 \' @" b; {/ y4 I -
% B' u$ _/ ?) ^9 H - JSR PAGE_PPU
! b& Q, a, T( ~7 t4 Z - JSR PAGESELECT
3 V% t" ^+ P, A h: J5 V - / z6 t# ^; M5 k! R: ]
* K% B3 R) o4 {3 _- * G o; ?5 l1 a; ]1 e3 h* c
- . ^* l4 I, {! p ?# H, E
- / B5 a. ~2 N/ }, g
- |7 ?, M! ^( ~7 w0 F# {, }
- $ E( \6 n/ @+ r5 }0 T% g/ F
- 4 ^& `' s: @& H: ~* h* b9 p9 E- [
- 1 `3 }% A5 R' u' `2 J' P
-
5 K: b/ q' E! C5 S - / b! n" A( k) u
- - n0 K' G# ]( S8 e
- " w5 W ~7 s+ s7 Y$ r- a$ ]7 g
- PLAPRO: ;恢复现场
6 } O2 z T- x" M+ }8 T/ y8 J - PLA" R9 P9 M' V! {" J- F
- STA $B8
0 e* E+ K8 s1 a0 U1 y- f - PLA
6 a3 h6 @ b( A4 x9 S - STA $B9
& `1 I" Q2 w0 P - PLA
0 `% {: X. m. X8 Y" r - STA $BA& c4 P0 b0 ^7 v) v9 a7 y6 r0 V0 _
- PLA) V3 Q& x. a" ?: Q8 x) }1 L& Q
- STA $BB
+ D% e: z! \+ b: r! { G3 t - PLA) ]" L# |& c0 q7 [3 B' T
- STA $BC7 _9 q/ }/ K# g
- PLA
# x- K1 E- C9 |% E5 F - STA $BD
; ]; @3 A: I- a4 F1 N - FREERTS:
+ M8 k9 p. f! s( i' N) r9 U8 R - RTS. V |5 t9 R5 T/ I4 f; l) K, A l
- 9 d. t, t+ o8 @. P
- INVINC_STRING: ;invincible
0 R% \+ ?8 _! `1 Z - .BYTE $93,$98,$A0,$93,$98,$8D,$80
0 p/ X1 Y9 A; X5 r. [; m' h5 ` - # o) R2 N7 b$ @7 s
- INVINC_PPU:3 T# o) t: a5 e0 r' n; Y3 S
- LDX #$00
$ Y$ C, s- O: ~ m$ V | - LDA #$62
: }4 g& S i N& o5 k& Q$ k+ f" R( } - STA $BA3 m0 o* V A3 B. F! t
- LDA #$21
9 W( T$ r7 Z' I# s" y* E) z - STA $BB# ~+ h! e" ?6 {! x. C
- ' m& S% J2 n1 T& |
4 r) s: |' _* _% e- JSR UP_PPU
) q; S w6 j/ k - JSR INVINC_WRITE
k" O) k% Y0 \ - LDX #$003 t h2 c+ Q7 y
- LDA $07A02 g Y, }% a) W2 P& q
- AND #$01$ h: l1 E' s( v' w; B3 ~
- JSR ON_OFF_PPU* L' Q+ S# Z% k% }
- LDX #$00
# Z8 z) C- n" y5 `- w - LDA #$71
: ^& M8 R3 d$ \) R. P4 F: v - STA $BA/ f; i0 y- m" V# V3 a
- LDA #$21! \' ^/ D7 V2 n' @3 r! g: v
- STA $BB
, Y& M9 R; j1 K R* w - 9 p2 d7 K1 K5 Z
. E! S9 A- v, s" T- t- JSR UP_PPU7 P' }$ n) ]/ |3 r1 v# N! Q- E
- JSR INVINC_WRITE M0 G/ k. X5 d) [- g+ T1 c b9 ~% {
- LDX #$00/ Y1 p; Z. ?; @8 `
- LDA $07A11 H" x+ j) W5 Y5 d; a0 g4 l
- AND #$010 N m" p. T& b# i z
- JSR ON_OFF_PPU+ ?& l3 \, y% ^: ^2 R2 I* H
- RTS8 h) I* n8 L3 J" O' y
- 7 l c+ Y3 q% a4 L" }" K0 x J
- INVINC_WRITE:# z. v U* n9 M4 L, G, [
- LDX #$00
; V, w. ^3 T3 l) {2 b - INWRITE:) F/ l: C7 d. o0 _ f
- JSR PPUADDR_PROCESS
' M$ k/ s2 f7 t G4 ? ~ - LDA INVINC_STRING,X
# F, K, B2 L2 V s5 i1 l - STA $2007
# Y( Z T2 o" M) u0 `1 V+ R, I - LDA #$00
3 [+ x) P6 \& @ - STA $2000) z7 l3 z& o0 j) a
- INC $BA+ }+ ~/ [, |+ y: z
- INX: Q) M* d/ O6 ?. Y
- CPX #$07: h; `. ?# r( Y# A, t4 {
- BCC INWRITE- H( Q, A! V: t
- RTS
- D6 e" ^# u& q# q - " j7 E* Y. a9 D( u8 F) m- R K4 G
- ON_STRING:$ A) N& G' `- y4 s
- .BYTE $99,$98,$80" P$ u1 a$ m \9 x4 S; l
- ; X; }. e, ^& b6 @+ ~. P$ H A
- OFF_STRING:
6 f: w: ?3 t4 [4 b$ a - .BYTE $99,$90,$90* g& o; Q. P) E H: ?! }
) f! R- i( I2 }2 _& L4 o+ l2 F& `6 Z! F& x- ON_OFF_PPU:3 t0 a4 C. l$ _
- BEQ OFFWR
2 H9 m4 b2 W1 r' ]1 \; v/ h - ONWR:
- u7 h6 }* U# r/ R) }6 K - JSR PPUADDR_PROCESS. y! [: _- V( G3 y
- LDA ON_STRING,X
. c+ P. D: Y# C. X" _ - STA $2007
( i* ]+ H, q% q3 T/ H - INC $BA- m5 i( Y E6 D2 _; f" R& `; O
- INX
, ]' q6 I; J7 T/ Q# Q - CPX #$03- k' w6 |6 `! ^6 s
- BCC ONWR
$ N4 z% t4 m; @. d0 @. }& E0 N0 ~ - RTS
) m: ]7 e& k, L0 | F2 h - OFFWR:4 H+ t$ W" T4 C+ e$ l
- JSR PPUADDR_PROCESS# z6 v" a) H5 O$ |) y
- LDA OFF_STRING,X& H. Z$ E4 ?& w. w6 R" S/ S9 B
- STA $2007' K' ]8 f4 C/ e
- INC $BA0 P4 p% J# r' R6 ]( L! v* S
- INX
9 D7 J0 D6 Y9 x - CPX #$03
+ J0 {' c. o" {0 p$ w& p - BCC OFFWR1 n ~% _9 V- p& U, i
- RTS
/ Y# n' M. f) m0 D( ?5 P - # C" Q# L: g6 ]* ?
- LIFELC15_STRING:" U" D6 x C" e) z7 v
- .BYTE $96,$93,$90,$8F,$82,$86,$80. m) i+ M! g' n' D; p, v
-
4 N5 I' o1 T- ] - LIFELC15_WRITE:) r+ e* P; F1 p) K- N- x# c
- LDX #$003 Z5 J ^* U ~! k0 M
- LIFELC15:9 ^' N; w: J2 p0 i
- JSR PPUADDR_PROCESS& }' c& \$ C* T+ n% X/ S/ B
- LDA LIFELC15_STRING,X
# I+ f1 N( p0 K5 f W - STA $2007% n+ f5 @, D6 q
- LDA #$00
$ O+ p/ G, W5 V7 k) M - STA $2000
* T9 p$ S: e. Z - INC $BA3 i+ e4 B1 E0 i! C F6 a" i% U
- INX, v D; |% I7 A
- CPX #$07
+ c2 c8 Q$ _& l. c - BCC LIFELC15
8 n ^5 q' S" k6 f# g' | - RTS
6 |/ y$ q# K+ z& c D: V: S8 n/ ^
8 x+ j. ~( T+ b/ A- LIFELC15_PPU:
& @1 I i. `/ W3 E: H - LDX #$00
/ I2 i. @2 C& ]. H8 J( ]) _ - LDA #$A2
& C# W& \& Z, J# r) O8 L; V4 i - STA $BA
' m( n6 O( V4 {/ f - LDA #$21
0 \/ o4 }) y5 x4 Q: `2 B - STA $BB
; r! T+ \. G1 v" B) Z+ { - JSR DN_PPU* y# R+ n, H& m! F5 m
- JSR LIFELC15_WRITE" a% f1 i& ? \. G& w
- LDX #$00
g2 p6 z7 z( ~4 N - LDA $07A0 D7 B! q- h/ D1 k1 s
- AND #$02
, h+ i8 q8 `' z7 q3 H _! a: F - JSR ON_OFF_PPU
6 z: v7 v0 ~+ ]( P8 g' Y" z - LDX #$007 |: Z; q5 c* ^1 T
- LDA #$B1" E) Y0 ]. k& O; |5 K" `3 z
- STA $BA
1 |( {/ e, U; t/ o, @: s! C* q - LDA #$210 e0 y* d5 {; j/ l$ A
- STA $BB
# V' f1 _7 k! L2 Y - JSR DN_PPU
1 f- f2 t2 O8 t& c$ ?1 x8 z/ R+ M - JSR LIFELC15_WRITE
* i1 ~) M! R: u+ A4 y - LDX #$00
@) p7 ?& K2 x - LDA $07A1" A \9 i4 e, d9 x
- AND #$02 N2 y. \4 i; x5 \' q* F" H7 o
- JSR ON_OFF_PPU
. } ?6 q" C" ^/ r; g6 l3 N - RTS1 I1 J; F- U+ v! i: ~% F7 r1 w
-
& j u% z: a6 _: X: A' ] - DOUCON_STRING:: j" W9 P& ]& k R9 P6 ~
- .BYTE $8E,$99,$9F,$8D,$99,$98,$80% I6 o9 v- \) k/ y8 D# ~0 ? Y3 ?
- 2 ?0 o/ Z. i2 p& o' D( Y% e
- DOUCON_WRITE:
Z. k: {6 J' O - LDX #$00
0 U/ f$ z" H0 z$ q3 q) v - DOUCON:
1 k$ B O3 R" ]) J( `* \ - JSR PPUADDR_PROCESS8 d' L0 D9 o/ h- E7 X- A: U5 a
- LDA DOUCON_STRING,X
6 x' p- s7 v% u - STA $2007
: Z# P0 v. S0 w' l - LDA #$000 U' {) ^; g* }" y" p7 Y" u) J
- STA $2000
3 z$ [9 W/ C, x! W1 [ - INC $BA
/ N% }( e+ W0 @5 \ ? g" R - INX) v' Y$ H# q( [ X0 y
- CPX #$07- D* R# a( C8 o- e. _! e# G4 d
- BCC DOUCON
: w+ t1 ~* U: b2 \$ N) e1 S" d - RTS
. ~1 E: c6 S0 W4 e- A4 i2 T# d3 d& R' N
6 ]& _2 ~- g* z$ T* B0 Q+ y- DOUCON_PPU:
7 H. a: G8 K- o0 B - LDX #$00
3 \& n9 G: {+ ?2 R* O9 d - LDA #$E2# K- Q# j# a6 l3 m! g5 }
- STA $BA
. a* Z; r3 @: d3 \/ n5 z: m - LDA #$21
# C, y6 e8 K2 X2 z# [ - STA $BB
+ @: k+ h: F- Q% C/ \0 t - JSR LF_PPU
1 v$ \5 V% {' Q% p - JSR DOUCON_WRITE1 i. s/ B4 x! e
- LDX #$00$ }. N+ {: ?1 G' L7 c8 d
- LDA $07A0
% @/ w( g: j# f/ T" U$ e - AND #$04( G' A8 b) e1 f2 h
- JSR ON_OFF_PPU. T' T% [9 x' O3 k: z8 U( U+ ]# Q; m0 H4 k
- LDX #$008 g: K) J" E% P0 v* q- K5 |3 F
- LDA #$F11 s0 P/ `6 H+ [3 b8 ]9 H8 D
- STA $BA
9 l" E s7 J V: V( D. }/ l% Q; X - LDA #$21
4 S5 v' b( u' P - STA $BB, C7 `- G- r* U; [/ @
- JSR LF_PPU5 d$ x0 L: n- L4 J9 K
- JSR DOUCON_WRITE; B0 y% i: c' y$ j% r
- LDX #$00
1 d U# x6 W! x$ q7 x# I2 m# n8 @ - LDA $07A15 ^6 L7 M6 L$ Y# V, U' b, w& a# _3 [
- AND #$04
) E. t- L2 M; ^- q0 _ - JSR ON_OFF_PPU0 ^( l& K* d, b' D" J
- RTS
. h$ g6 J3 D" c - $ U; ?1 n3 g" l+ n5 [. K
- LIFELOW_STRING:
+ T1 c% @9 C1 S+ G; U* q2 L! ] - .BYTE $96,$93,$90,$96,$99,$A1,$80
( V* e w$ D+ h. q -
6 ]: f. { }* n. U1 u - LIFELOW_WRITE:- H% O+ B6 l- ^' \7 L7 u
- LDX #$00, V/ R" N `$ \, m2 `! G7 X
- LIFELOW:
- F$ J0 R6 Q2 u! p. ?$ P, l& c - JSR PPUADDR_PROCESS/ c9 S7 |- w0 W" r4 x7 c
- LDA LIFELOW_STRING,X
$ @; d5 e2 Y+ z# ^ - STA $20073 N, B, ]; D6 i' t- N& Q- F/ E
- LDA #$00" r4 T" |' I$ q* Y& W# u
- STA $2000 K& l2 G; m6 ^8 W
- INC $BA
2 {' ]8 X4 C, w% A/ S1 o - INX8 q" z4 f: g d" W9 f) s" C+ [, Y
- CPX #$07: T' Y- o( d, C- l+ T
- BCC LIFELOW o) c- h7 Y$ z7 d, m# Q; k
- RTS
. x3 v# N' W6 c - E* O3 K7 h# w5 G4 W
- LIFELOW_PPU:
7 A' R/ v, X3 w7 W# l7 M - LDX #$00
/ E2 G, Y5 F: p1 k3 g. f1 n) A - LDA #$22
" I9 n! f/ ?& P2 K$ s \ - STA $BA7 y$ C0 ?3 F8 c. r1 @! t% q! k
- LDA #$22/ c9 \+ x# {; [
- STA $BB
1 p4 o& ?( g5 a, ^& Z% p: {
( R O6 o; F, M9 a. [/ K- / j8 z8 H, l V0 s' x* r
- JSR RG_PPU) G; G* |: b1 w, w3 M
- JSR LIFELOW_WRITE
5 Q; v" D# |2 ^& i - LDX #$00
. J; G! {' G- V6 L& y [( J - LDA $07A0% ]: A" m1 k" m9 d3 c
- AND #$08
$ l7 O# U# M: _9 @ - JSR ON_OFF_PPU
}1 c" X' \( i - LDX #$00& r9 n& J" b* ^) t. a( b' E
- LDA #$31
( v8 f8 p7 Q' G$ m" G- d - STA $BA
$ T1 e+ G# M8 I! h; u+ g- y% { - LDA #$22% ]* o! K3 u, j1 N4 N
- STA $BB0 y) ^/ p( l; D3 m
- 0 Q8 X* D2 t" u U) e) l3 i' Q
- " Z# J, d( ~7 \7 g% A
- JSR RG_PPU T, u1 R" c' F1 L5 a( z" i, a0 p" E$ ]
- JSR LIFELOW_WRITE% ?- R+ d4 x) b/ e% G0 ^" w, o
- LDX #$00
) p) l1 A0 L+ A* \9 d - LDA $07A13 Q6 L, W4 a8 z& L: H
- AND #$089 `# }' |& q* y4 c7 g; t! K. x
- JSR ON_OFF_PPU
0 ?0 R7 J# a: F4 ~$ S - RTS! z4 C# c0 e' a) h0 P6 J% y
- ' H+ x3 c7 O: Z2 E+ {
- KILLON_STRING:
& M+ v8 o `3 R n8 n* R: { - .BYTE $95,$93,$96,$96,$99,$98,$80
6 |6 d4 b: b1 d( C - % @9 V" @+ r: F
- KILLON_WRITE:) O4 ` Z$ J v
- LDX #$00' ]. X1 p; G; `6 v
- KILLON:) O% v E- ^# R5 I5 t& o; ?; N
- JSR PPUADDR_PROCESS
5 [% Q$ z; ~# \ - LDA KILLON_STRING,X, n" V0 Z, u; T2 N, q
- STA $2007 f* l) e: D: U; C2 ^4 `: ?
- LDA #$00
: O9 [( k2 n2 o, v/ d - STA $2000/ L+ J( D* {7 a- y! \' R1 C
- INC $BA
4 I6 C* L. W, P- r - INX4 F; t% P5 a Z; U; `+ \$ y
- CPX #$07
) _8 p: {- U( J* }6 ^- b! N, R* j - BCC KILLON
' i, B) b& e1 j. o - RTS( ` I5 k8 n2 t+ |+ S. i
) J! t" ^8 k$ P# m( k- KILLON_PPU:
% z" c; ]- o* z - LDX #$002 B, g3 Z. |" N3 ?" z
- LDA #$62" G. A2 W2 H* ^7 X
- STA $BA
5 F7 X4 f7 u/ b! r; h: f+ X - LDA #$22
9 O$ K5 I D' c; v$ C - STA $BB
! c! a, N9 T" m, a - 7 L/ z* q0 g0 p
$ d4 h6 E% D; w" B" Y- JSR B_PPU1 X8 h$ S2 E7 L" n" ?# s: d! y
- JSR KILLON_WRITE( `% a# j- ]6 d% g& d% ?8 S2 p
- LDX #$00
: S7 c. ?6 Y' i+ X5 Z0 e - LDA $07A0- [6 l* U3 w- R# t
- AND #$10
' [8 Q3 {' R& F8 H - JSR ON_OFF_PPU% G; l* V3 I+ _" q# d7 I
- LDX #$00
/ j0 ~0 G$ G& F) k2 u - LDA #$71/ k: M; b9 X F
- STA $BA
$ A& q2 e2 Q9 Q1 p" [' B - LDA #$224 u3 o& e- H! k' q# N$ ^; W9 [
- STA $BB! u# N) o; a" n
% d) x- W- f0 N" _! o! y$ p- ( j( Q* j1 M2 _: ]! Z
- JSR B_PPU
5 h% E" b4 ?% `, g, q- |, `* z - JSR KILLON_WRITE
$ D8 c$ e: M" e/ d/ ^! U$ W* v - LDX #$00
2 {7 D/ v1 I1 w7 i - LDA $07A1
4 o3 g6 C7 Y R0 m4 R0 b% x - AND #$10
+ a1 @, d, o3 J8 R8 n - JSR ON_OFF_PPU5 Y- T8 J& W. H0 P% J6 F
- RTS
( `1 c! @5 |9 ]( a6 p, | -
`4 s1 q- w2 T3 l* B - SKYFLY_STRING:
; Z9 w, A+ N3 W" E, p% a c$ C - .BYTE $9D,$95,$A3,$90,$96,$A3,$80
# h0 r) A; l# g. m; T -
0 z* `- z* A+ W1 i6 k* _ - SKYFLY_WRITE:
/ X, ~' {9 ]+ F+ t- g. Y: Z - LDX #$00% I, x! _+ K* H' |0 [) J4 x3 r
- SKYFLY:
0 P3 Q* ?5 _1 ^+ a! Y - JSR PPUADDR_PROCESS4 f" J$ T9 [/ ?7 T- y0 A* ~
- LDA SKYFLY_STRING,X
& q# u2 T& Q! k D4 y8 u+ A) k: R! m - STA $2007
- g) @/ F6 {0 E8 k) l0 v$ ~4 D3 d- ` - LDA #$00
" v! H* H4 m) W7 c# J+ m+ ` - STA $2000, u: Z( O4 q- W; u
- INC $BA
" A" |! j8 j9 b% i, R" L - INX
0 D" L3 u3 t e - CPX #$07! l0 `+ S/ [8 F( ^
- BCC SKYFLY2 p& j; b5 V: y
- RTS, \& D5 g1 T3 w/ a5 ^: S
- " m5 j8 X8 R( d+ ~/ P n
- SKYFLY_PPU:! p1 {( e7 I3 X6 n. Z2 ~
- LDX #$003 b1 f. ^" K! H& o5 Q
- LDA #$A2
1 h# `: ~8 @. r F7 p% B5 w& h - STA $BA: g& Z/ ~5 L$ t
- LDA #$229 W: l0 E: k$ e: t
- STA $BB& Z* b$ n/ ?& f& x4 \9 T* ~# I
7 _1 [4 t8 v! y# G- 4 C% L5 O: }8 U7 A
- JSR A_PPU# m5 X* y0 P" [- M& f
- JSR SKYFLY_WRITE/ D" Y: ?. u2 `9 t) K
- LDX #$00" N0 a6 ~' F6 a- s4 O
- LDA $07A02 s6 @, G" t# P6 z2 r3 [
- AND #$20( d$ u4 r) C) [ @2 R9 p
- JSR ON_OFF_PPU
( e& Z; M7 V e* s! C - LDX #$00/ S) _5 x4 ]9 w- C) M
- LDA #$B1& i% F( S" l4 a9 @* w4 T
- STA $BA
! Z: w' ^! P5 [ - LDA #$22
: ?9 L8 l8 ]/ G, K - STA $BB* s9 t3 i, E, S, h, l1 p$ E
- 9 d: A1 V4 Q4 f0 _
& o8 ~2 u: \2 J1 k2 g; [0 D3 w- JSR A_PPU
' P6 Z5 w* L% o: L. e. p# R - JSR SKYFLY_WRITE% H2 G' [# {( R3 y+ H
- LDX #$00
* ~3 R% g2 g$ l4 i: a - LDA $07A1, y2 M: t5 h. u" F9 C
- AND #$20
& n2 C: F! L2 Q - JSR ON_OFF_PPU: z. N3 \5 r. }& t( |2 M
- RTS& }" b3 z0 p/ F6 N' S, ]( Z0 h
- : X1 R, X/ j; }, J3 S6 p' W
- BULADD_STRING:. |4 X5 |* [1 b. U& L8 M7 |
- .BYTE $8C,$9F,$96,$8B,$8E,$8E,$804 t# g4 p8 ?! b. N1 q! z; g
- . t% e u1 z7 K. ]
- BULADD_WRITE:. e* X) ?4 i0 }% q, @/ f
- LDX #$002 e& k, `2 h9 a- _" F# ^# M6 J s5 ]
- BULADD:
& U/ k) I/ {, b - JSR PPUADDR_PROCESS
5 l& q# p5 p B2 z. W- a. G - LDA BULADD_STRING,X
6 O# ~9 n5 ?, j8 q& v* t - STA $2007& T. r Q1 D0 v( o# o
- LDA #$00
! b* i/ g0 c& B Z - STA $2000
M- p* r6 ?* P0 {6 D& r3 M/ w( Z - INC $BA/ M$ S) i$ `/ p/ i( X5 G
- INX8 l: [% P" E" B
- CPX #$076 B( _9 j# I' y, ]5 j
- BCC BULADD2 T6 U0 u) R. X L, x Y) l
- RTS5 M/ M9 H( C& M0 |
- , h' Q, Y2 ^0 U/ P) W+ Y. V e
- BULADD_PPU:
$ M$ }) S& L6 ]7 k. V - LDX #$00: }* l4 Q/ B" F/ `$ x5 B
- LDA #$62, w+ L! I* l" B$ F
- STA $BA, |; S+ O `9 X( H2 G/ d
- LDA #$21& C |' }; q( {" S0 t, d
- STA $BB" J/ M. D6 l* c& M% t* A
- ; u! y5 o# z) V3 ^1 c
- . r% w- x) e2 N! x1 }' n
- JSR UP_PPU5 \' | W# ^( m! [2 N! t! _3 p$ M
- JSR BULADD_WRITE/ j, w+ T, t# S% m% f! C
- LDX #$000 R9 o/ W4 M) N
- LDA $07A2/ o2 ~) A, l; |/ m8 _0 A9 {& r6 ]
- AND #$01
: u7 \3 F$ ]4 [ - JSR ON_OFF_PPU
2 b0 x% r6 ]1 o2 Z6 V - LDX #$00, J2 g0 Z4 h3 m
- LDA #$71
: b, `" Z0 M1 B; S - STA $BA, N5 ?2 H$ n) F
- LDA #$21
& Q: ^! {; Y5 _ - STA $BB8 {: `- B0 c2 J; U1 Z# |4 C: f
; G, c+ D" @& f' ? i+ W; c( Q- - x! H5 p: k2 f. H/ Q8 h6 O
- JSR UP_PPU! w) X% g1 `; c8 m) `
- JSR BULADD_WRITE% g N# Z+ u6 Z0 M9 l0 w% i/ e. j6 y' {
- LDX #$00
& x( _0 w- I5 |# e8 p, f - LDA $07A3# m- H. z3 M' r: \" m
- AND #$01
- H1 p% h- y4 K# S _ - JSR ON_OFF_PPU
& `! l7 i! ^( P) y0 S4 G - RTS3 p2 R, H E4 `6 B
- 3 `7 @: I* a) e# ]) |% B
- MENU_PAGE_STRING:
. c7 j% R8 ?' O" B& [0 P9 k - .BYTE $97,$8F,$98,$9F,$80,$9A,$8B,$91,$8F,$80,$81, H( u; U P5 V K/ t' q( V7 A2 P/ p
- ( c% w7 P9 I% Q$ q" V- Y, A; M
- PAGE_PPU:
7 g2 l8 W" `3 ?1 Q' o - LDX #$008 ~& p! `: C" R; f) k
- LDA #$0A4 Q7 u9 _- U8 E# j- K0 r
- STA $BA
0 ]& P" f1 }( G z4 g - LDA #$23
0 J6 M/ r! Y1 |# ^ - STA $BB
% M) ^- Y# E5 e6 f3 w3 } - + q& f$ z2 k8 r0 J h# x
# t/ o) ?" c) d' U( B* n1 }; L% f- MENU_PAGE:! d5 }+ |4 c7 x- b( D
- JSR PPUADDR_PROCESS& C5 k) D T5 } v
- LDA MENU_PAGE_STRING,X$ r2 z9 m2 ~- K l: T$ Q; q
- STA $2007
; S2 z; Z" \+ @" s - LDA #$00- a; I( n8 ~! q9 u5 k' G7 I
- STA $2000( g" |4 o( o4 E7 Q
- INC $BA
5 u4 f- p, O5 R7 o3 j3 Q - INX! |: L& V! v( ~4 w& W$ k0 m. B, H
- CPX #$0B
' T# E4 r7 Z( Q - BCC MENU_PAGE
( ^& v+ T( q {/ d; f - LDA $07AA$ J, t. N/ \9 X
- CLC
( N3 w0 ~" E- S1 b - ADC #$82
7 r6 i$ Y: ~1 b8 k - STA $2007
; B9 g' L3 s* m% F$ T - LDA #$00
( o5 W5 S2 E: G8 V. U - STA $2000# M, T$ E% m v
- RTS
( f4 W3 X2 \' O* x m -
# q; C) h" Z8 g8 l( W. J -
% U; Q8 v0 p1 i3 I9 e A! Y' Y - SKINGE_STRING:
7 R o7 a/ Q1 x9 `3 i. {/ v - .BYTE $9D,$95,$93,$98,$91,$8F,$80
; V: s4 `# t4 t. G -
! W6 A! i% Y0 f. _ - SKINGE_WRITE:0 P1 X$ W! }8 } r1 q
- LDX #$00
: U' Q% O/ ]0 X" O& G* ~. n+ d! w8 l$ M - SKINGE:5 ~7 X( s: |6 M/ M
- JSR PPUADDR_PROCESS
2 ^8 R- U( }+ e9 ~6 G. N - LDA SKINGE_STRING,X
7 ?. n! n, N1 i | - STA $20073 Y9 j9 T o/ J; o! M+ Q6 {
- LDA #$002 m( ?& X& k# E9 T) ]% v
- STA $2000; v* S9 B) Y: H. l
- INC $BA6 } \2 X: G+ i5 D
- INX) ] v& Z4 d5 K x' m+ x
- CPX #$07/ a3 o. v/ }8 a8 M5 C$ i
- BCC SKINGE
+ S7 L( `8 x6 _ - RTS- A* i; S1 ]/ a+ A5 y# {3 D. [
! z6 H: A* U' p& d g; {/ j- SKINGE_PPU:
' N4 Y, b/ E' j1 {, E5 b - LDX #$00
" C0 ^" A2 {: g - LDA #$A2
# S& G# o5 v# a& @ - STA $BA
# w+ W* l; g( T/ F% Q" |3 ?& |, |& h7 L5 x - LDA #$218 \5 G* J: x: {# e# N$ k' e
- STA $BB5 r( {6 f) j! O% A
- ! F6 K8 M3 c4 F5 ]% a6 g) x% |% y
- - }; |" k) h6 J5 q8 s/ @ n
- JSR DN_PPU7 Q& [/ ]2 t$ @7 X
- JSR SKINGE_WRITE, r/ f* A- {" h# `4 W
- LDX #$00
7 ~7 X1 Z# e o3 R5 B3 w! S" C - LDA $07A2
- M( r d5 j" s/ l# D% g- T6 X# C - AND #$021 t5 p) ~$ v/ Y. |. ]" S6 m& f
- JSR ON_OFF_PPU
/ V- X( j4 f t' F: }( a. o. z - LDX #$00( w5 V: Y8 V/ Q
- LDA #$B1
' N1 g$ t& d1 B4 W3 G& H - STA $BA
/ Z* L8 Y! N1 H/ ^, R - LDA #$21% R" r7 a; [- E1 z$ H4 {
- STA $BB5 p5 o7 I7 r- k, b% }! v2 v5 u- f
- R" W& t. v) f- e' ^5 A0 p- ! i; L/ E) k0 u' y% R
- JSR DN_PPU) E. x1 n4 z3 F* D
- JSR SKINGE_WRITE
1 ~+ \% @% T; z ?0 } - LDX #$00
8 e2 y3 J8 G' h - LDA $07A3
- x+ d9 t$ X6 P! v - AND #$024 r! F! K- {+ z1 j; P; Y
- JSR ON_OFF_PPU9 N7 i7 g) j* \9 _$ G* s! |0 y# ~
- RTS
: T2 i* U0 g) `& \9 k - * q+ |/ f; F) i1 ^6 }. S' f
- BULMIX_STRING:( m* i- h4 R: N: Q
- .BYTE $8C,$9F,$96,$97,$93,$A2,$80
7 u" a0 Y) c S* p - & A8 d6 N; O# e
- BULMIX_WRITE:% H6 `) d; _. i( _ b6 }2 y
- LDX #$009 j$ [2 O" s+ d4 x5 Z. |4 q7 ^3 ~
- BULMIX:
- W* L- ?. i s' F: _+ C- D! E - JSR PPUADDR_PROCESS
* ^' {6 b+ k% E4 ~ - LDA BULMIX_STRING,X6 F6 Z4 b6 y: E7 q1 ~9 j3 Z& W
- STA $2007
( V) Z. L3 Y8 C. M6 k1 ~& u y' Q - LDA #$00
2 d% P: `+ M1 X - STA $2000
. K" A; z* B" T. i2 ` - INC $BA; Q" H& W8 X. t1 o3 S( W. U1 u
- INX4 T; w3 v& V+ V3 b& _' w" `6 w
- CPX #$07
( F5 X1 ^' Y9 ?6 F/ x - BCC BULMIX7 W# X( |! f+ T8 G/ }2 N
- RTS
9 V$ E" h# h4 x7 |9 Y h) T - 7 W" [) A* `- c
- BULMIX_PPU:
, ]' }+ B- R0 Z/ f9 g - LDX #$00/ W4 Y- w" `7 N! t
- LDA #$E28 E6 T) s( q$ @" ~
- STA $BA
! T1 O! l* H) x - LDA #$21( k: y) c% i* o1 f6 V8 u- Q+ K
- STA $BB% A( X5 d" ? y: f2 g% [# B$ T' F
- 1 k# r% |3 }( p1 z' a! c1 ]
- ( }- U/ ]) Q7 G0 k
- JSR LF_PPU& s( ]; C) `0 ]) l4 z* `
- JSR BULMIX_WRITE. Q; S/ y0 F& X3 X3 |
- LDX #$00
. A) F& `8 L" [# G; y - LDA $07A2% [' v5 T: P& ?+ L
- AND #$04
! E B( u. l" c. K; v" [1 g$ b - JSR ON_OFF_PPU! p/ a; [* z8 H) J, E
- LDX #$00 J+ r& ]/ _- q% l0 {7 p9 E
- LDA #$F1/ B* U! @/ N# s; Y2 a& U q' N+ E+ q
- STA $BA2 _9 a; w( V! t4 J. J* x
- LDA #$211 I2 k1 i8 M! M( Z: ~+ }
- STA $BB
- L) \" C9 q/ F5 {" |. U9 ~
- v% l! e2 U$ {9 L
# X# _$ b7 Q# [4 U) U$ q6 l- JSR LF_PPU
6 O& w b& ?" F - JSR BULMIX_WRITE
1 F3 E7 ^; H9 w4 O4 }* T% Y - LDX #$001 \" f* g0 X+ h* d I
- LDA $07A3" E2 Y9 J& [( j
- AND #$04' U, {7 f9 l5 l2 Q) ?0 l) F0 Z7 M
- JSR ON_OFF_PPU
/ U3 d/ ^4 q. P! w - RTS+ ]" Y2 T& J" h4 N; g. Y
-
! i$ a" M3 U- g) H* a6 t& Z2 n - ENELOC_STRING:
8 D. K& H: E0 n0 E% s$ l& }/ K - .BYTE $8F,$98,$8F,$96,$99,$8D,$80' e5 Q3 w; w' e) Q+ X( ?# H/ I
- , c) E; ^! I& q0 C) s
- ENELOC_WRITE:% z5 [6 Y- ^/ Y
- LDX #$001 h) s0 a8 o( N0 N6 k w" A
- ENELOC:2 @+ }1 O1 N3 U0 N8 w4 a) K) O# v$ w9 x
- JSR PPUADDR_PROCESS
1 T- J% }* u$ i - LDA ENELOC_STRING,X
! }6 T. Y8 J. y" C3 _' \ - STA $2007
- Q/ ~' y" h7 v - LDA #$00
* ]1 k) \: E) Z6 S5 k - STA $2000
! U% R, z" N* H% N - INC $BA4 D3 `/ c- D* b. K& Y5 I! T
- INX
* R3 D4 T+ k# p: u- u8 g9 t - CPX #$07
q0 m- L0 G3 G3 H" {8 Y* J - BCC ENELOC/ J% }7 v( w9 [, S; i& T. f& ^" S
- RTS
' {/ J5 ^/ g* ?/ ?4 C - 2 @- V# K9 V: B
- ENELOC_PPU:
4 @( V' U* w: \ - LDX #$00
+ V/ t5 c, w2 S5 c8 { - LDA #$22
3 i5 j4 }# D3 M8 m3 I3 W - STA $BA
# ] ], z% l" N6 H L% r% a" q - LDA #$22
1 g" B2 B# G" W; ^- P1 k5 e - STA $BB
0 {3 Q' X# ^0 P4 d2 e - + ^" b) W, U' w
. O" r) x# |% F% q2 ^2 Z! F* R- JSR RG_PPU
6 A% j, @$ l. y) X" W1 | - JSR ENELOC_WRITE
% l9 `% a1 s9 o' { x - LDX #$006 [" S8 v6 g) S9 y. @
- LDA $07A2
9 Q8 M8 W& @/ x7 d - AND #$08
) z7 l3 O6 P' w- a - JSR ON_OFF_PPU3 _ R/ O$ ]" A' ^# N
- LDX #$00
, B y) f- c. y9 S: Z4 ~: h: }2 p! K - LDA #$31
6 }( o: ~& G6 e7 X! } - STA $BA9 u' ]: w: M0 L% [! @* F$ h/ \
- LDA #$22) Z& E1 h1 F6 H& B* [- m
- STA $BB2 C" B# l: O5 I+ u! ?5 j
5 y" u6 Z$ T" v: C7 G( }7 y8 P
7 j6 `4 R/ {4 w6 ^7 S* n: @8 k, o- JSR RG_PPU, `7 H/ a1 n, \# j2 ~/ c0 X* }
- JSR ENELOC_WRITE
2 x( o7 y" J& P - LDX #$00
+ @/ ^6 A: J2 j/ M$ j' A1 M5 c - LDA $07A32 r- F9 v* Y# R6 H6 r* U) ^
- AND #$08+ g7 u4 o7 j6 V' `, t* K! d; F' F2 M7 j
- JSR ON_OFF_PPU
9 ?( V0 W1 b6 h$ R; q/ E - RTS9 a/ A# ?' v8 t/ b
- ) F' V! O& Z! b3 |! ]+ Y
- FOCFUL_STRING:9 N. A8 C: b6 C4 E0 N8 W8 Z
- .BYTE $90,$99,$8D,$90,$9F,$96,$80
" @" Y* G. D! s- }" ]" k7 r8 {+ ] - 5 R" g# {9 C% k& D# o
- 3 v$ S. J* q- V- u s( {
- FOCFUL_WRITE:; m" `$ r7 T k' c
- LDX #$00
9 U* s; D! u0 W# y7 ]$ O: ~8 Q' D - FOCFUL:
/ g9 X1 |( `! E; Q2 u - JSR PPUADDR_PROCESS
" p# g0 K) H& }8 h9 Z - LDA FOCFUL_STRING,X
5 J% H% K9 P; R, r! p! G - STA $2007* a% x9 U% x6 c: h: Q& [( ~2 U6 x
- LDA #$001 W* W( `+ a3 X: s: W
- STA $2000
3 g- V N" ^ C) A- v/ [* B - INC $BA, `" T3 w! C' M2 b
- INX# I" e+ p7 b6 u" t
- CPX #$07
3 Z0 c5 C" G2 t( I; F - BCC FOCFUL
4 S1 D- R6 `+ P5 g - RTS
0 s$ b2 W0 b3 v6 N8 ?: W
7 o ?/ c, o# K2 P. g& U- FOCFUL_PPU:% K5 Y$ k2 ]- N5 }# P6 S, g
- LDX #$00
& `5 C9 Q! `. w* K# {$ M - LDA #$62
# u& [ k4 H, e. r - STA $BA9 ?1 I, v9 y7 o D0 _0 [ y3 F
- LDA #$22
( `. a& I C" m8 z - STA $BB$ Y; ], ]4 i! l9 l
- % d2 [' ]4 N) m7 R) B
3 t; o$ R# Z) O) _) u% {- JSR B_PPU
& u0 c g: [) c8 j - JSR FOCFUL_WRITE( r0 O6 F b$ Q# i
- LDX #$005 B' }: y7 e! ^$ E2 U
- LDA $07A2
: p/ g7 K7 p% O& P - AND #$10
: t" l. g8 \0 H5 W( a( e0 p, m/ Y - JSR ON_OFF_PPU
) D. `5 O- k q0 b4 w - LDX #$00
& I6 E9 o0 r i7 A - LDA #$71
. {! W- [% k. b/ L: q - STA $BA! h+ Q e/ [, `
- LDA #$22' L2 f: a3 H. T0 _8 o; s3 `
- STA $BB, K7 W H6 p% e% B) s0 D4 ^: m& _# O0 k
- / w3 @1 V! { z& P+ L: E3 M' R' R
: f# I6 F# W" Q1 J" I- JSR B_PPU; N, \9 E6 @3 c" W
- JSR FOCFUL_WRITE; s7 C6 |/ R$ K. b7 j' ^2 M0 R
- LDX #$00
" e$ u; ^- @1 T- c* I - LDA $07A35 ?) M& V5 o, m$ V
- AND #$10: H6 a+ x2 Z; W% n! g
- JSR ON_OFF_PPU
* I" ^- ]) C* h! ]/ [3 ^ - RTS5 a' t( ^* q$ g) k( b
- 6 b( @3 c8 M4 b2 [# x
- BULCON_STRING:
2 E; J7 p* }8 y) S- O8 i - .BYTE $8C,$9F,$96,$8D,$99,$98,$80
1 c: G1 n0 }* p: K - ) @9 I! l5 A5 A$ x/ i- `
- ( w: W) j \1 M
- BULCON_WRITE:
4 F; b2 {& L7 U3 t - LDX #$005 t% ] K& N" H2 D( _, Z7 p" n
- BULCON:: k) d/ Q( v/ y) {" m+ _1 u
- JSR PPUADDR_PROCESS8 Z; l) K; M- b
- LDA BULCON_STRING,X
* s$ V6 r7 V1 `/ g9 g - STA $2007; P4 h+ y, X: V( o2 f1 b" Z/ y7 R
- LDA #$00( b5 s7 V# d5 Q1 x2 [# S" R' c
- STA $2000
0 i: T; T9 \& r& |) S - INC $BA9 d- N+ K' s! A- C2 J; Q+ c
- INX
7 t6 K( |# o9 J& m% ~3 X - CPX #$079 j6 A6 C/ I+ P1 l! j D/ G f
- BCC BULCON7 y; P) H7 r/ F0 ^
- RTS' k6 B! j' p1 Z/ I2 h* n9 M
+ e. l9 w: \" W; C7 |) c9 H- BULCON_PPU:7 }2 z8 w8 D& v. ?0 C
- LDX #$00
4 v: J% X, \3 ^6 e+ l% M" i f: o; S - LDA #$62% R4 w2 l2 g, v7 r6 p$ Y
- STA $BA! E, t6 i4 n% V! s
- LDA #$21
) X- S. u+ S9 p5 _+ w3 n/ C - STA $BB5 }. g( Z/ G4 s" `5 S8 M' V! [
' c+ H& F, A3 q, |7 |: w
9 P6 p- J7 ]: C, l% n* z- y8 ~- JSR UP_PPU
3 B2 X( h9 k0 ?6 N4 A( q9 o( I - JSR BULCON_WRITE
1 ~: f+ K! @6 G9 @* H2 c - LDX #$008 c7 _6 ]5 l" D- z: L+ D5 C
- LDA $07A4$ M# x2 f, H. D) I5 s# l. Y
- AND #$08- N, t& q/ S- m+ s7 Y) Q4 ?" m) I
- JSR ON_OFF_PPU; A# Z& T( d: s8 U* m" S, G
- LDX #$00
3 M6 w0 K# P8 r - LDA #$71
2 r' w! m' z9 v! I& u - STA $BA' Z: O0 R- ^% a. o4 [3 E, @& Q
- LDA #$21
, ^0 y" C n4 r8 X+ L6 n: [ - STA $BB, y% z' [5 N! J- {0 F
8 B2 ]3 d' ^! W$ W4 \6 m- Y
8 b* W" A* H9 E4 \; ^6 I4 N5 ]! H3 n- JSR UP_PPU" q3 ]7 ]& B9 B8 C
- JSR BULCON_WRITE1 j9 b; \7 M o/ a/ O% T( R% G
- LDX #$00
' l8 S* t8 |, E; A- z - LDA $07A5
1 d( c! A9 {. B) B" v - AND #$08" u: I$ p+ k" u. @" V
- JSR ON_OFF_PPU
0 C" v/ _: ^7 \; q; w% S; Y- W - RTS
! T |) y; s# X0 _( O; y -
/ L, g: t5 J3 V9 m - SPEBUL_STRING:
7 U4 q4 K$ x1 P) n; | - .BYTE $9D,$9A,$8F,$8C,$9F,$96,$807 x0 F) Q2 R3 L4 u. L
- 6 A! J$ Z" a/ t! M+ f/ v% ^
- 3 u% _3 y! X ]: }' _* |
- SPEBUL_WRITE:
, t1 I ]$ J, k: M( R6 j! N+ i - LDX #$00
6 Z5 `/ H/ Y9 D" v - SPEBUL:/ C: }" s9 q9 P7 ]. J5 O
- JSR PPUADDR_PROCESS
% ^8 y) E1 s6 O, k - LDA SPEBUL_STRING,X
j( ^* I7 b! C9 {& v! @ - STA $2007$ m. K! u' ^; {8 L* P. z
- LDA #$008 m* ?! L# z6 J- k5 H: h4 ]
- STA $2000
; j' R( e( G1 k. i) x; m' Z - INC $BA
3 Z5 ?* ?4 T( | - INX
( Q. d: R2 W4 J- u6 G ?) e& ~ - CPX #$078 @& Y3 k& H. O, x9 `, O4 Z
- BCC SPEBUL/ V; Q9 x4 G% u# o9 a8 A
- RTS+ x' ~' y2 R" }' d g% m8 e+ S
- ; t/ x9 d2 ?7 S+ R# `/ \, ^4 G
- SPEBUL_PPU:0 [+ Y9 C- C9 G" |5 a
- LDX #$00
# S* e9 P8 c( W3 K' F3 ] - LDA #$A2
3 w) z/ ]4 D& d - STA $BA9 F0 w: I D% @) Q+ M' ~4 E; i5 j% m
- LDA #$216 C2 t% L6 s) ~( ~6 [
- STA $BB
' o& L" K% Z1 `2 j9 b. X) h& \
$ @8 L# x! X( c6 t
0 m; n$ |1 b4 f: ]* Y4 g- JSR DN_PPU$ r; j+ }7 U2 h9 x; j0 Q
- JSR SPEBUL_WRITE! ]0 h+ g2 B7 D+ ?* f$ d6 Q: s
- LDX #$00
/ N( x) W9 J7 L2 t4 @ - LDA $07A4$ F" j, j) f2 ]0 b5 T% I) j9 S' s7 U0 K
- AND #$02
+ u0 m* _+ ]8 |) b' | D3 D - JSR ON_OFF_PPU9 f* O; r/ [2 K
- LDX #$00
6 p% j* _+ u6 h* t - LDA #$B1
, d: @' w& G3 e1 c7 |; a+ t7 L+ U - STA $BA6 s' C/ x) ?% ?8 b/ e6 r
- LDA #$216 h0 ~5 p, F# }, `1 R2 N
- STA $BB+ }6 h4 H0 G- C8 \3 O6 z
- 2 ^! S9 V d. K; s* G( P3 Y* k2 s
; S' ]& Y6 g y& q8 S- JSR DN_PPU, l6 i! W8 ?/ i2 ~: q
- JSR SPEBUL_WRITE$ ~( S& ?4 L; ~' j* K- c
- LDX #$00 d/ r3 K5 Y6 Q2 [6 Q ?) `( m
- LDA $07A5
% h/ T3 {9 ^8 [: R- Z9 I% I - AND #$02+ n# g9 `' l! R- j
- JSR ON_OFF_PPU; v9 W d o1 h& ?: F! K# Z J
- RTS
. o, v0 l" J# h) u' V% o -
" k; G2 v" @; ~: t8 P3 H1 P - .ORG $A500 i+ ~0 s9 I/ ^4 \
- CLEALL_STRING:% `- r7 O1 R7 G* Z
- .BYTE $8D,$96,$8F,$8B,$96,$96,$809 Y; J S$ w* H/ m# t& a9 C
- - t5 h" Q% f3 J8 T1 I+ d/ [
-
# S% ~8 w2 S; X( k5 d5 J - CLEALL_WRITE:% c+ P1 v% ^# g7 n
- LDX #$00, ?* M/ ~8 ^3 X4 O) g
- CLEALL:
9 o6 x* Q6 }) \$ I9 o. i f - JSR PPUADDR_PROCESS# `# l: \( r8 \9 w* S! q8 r5 A
- LDA CLEALL_STRING,X
- J8 P# p0 Y2 S - STA $2007
3 \( J) N; G$ m. E - LDA #$00
- i9 A9 ~4 R5 X$ @7 j+ r5 y2 p - STA $2000
! C6 C" O. a- R/ x - INC $BA: v! H8 i6 x+ p- ]( Y
- INX
3 I4 [6 X* b+ h! b2 C% F, |& K1 S - CPX #$07
! V, X$ [8 S* Z. ~0 }, \6 R& s - BCC CLEALL
) V$ J, G' R; P - RTS
6 U" Z1 `9 z# f7 a# i
$ P' l* w( R5 G) ^8 A. `% B- CLEALL_PPU:
# _7 J/ y: J- e" W+ ~; c - LDX #$00
% b& |2 A: F% N& Y w: S7 O. [0 \8 g - LDA #$E2
. D' C! F( p d D& {) G+ y/ z5 N7 K" c - STA $BA; B- X- t0 ~ T
- LDA #$21
2 v% I) @- l) N7 \' x - STA $BB0 l6 }6 M+ _0 v* b/ K! C8 h# O
- 8 V3 V% f6 m1 l& y+ S5 M
, A% R7 g! U& L+ ?9 y- JSR LF_PPU
6 n, B8 ?$ T v2 o - JSR CLEALL_WRITE# d5 L! [3 H, L% i5 ?! `
- LDX #$00. ^- b9 i& n" H7 x
- LDA $07A41 I9 C* v* w3 D; ^) {0 y% M
- AND #$044 {2 A# ~" G8 q" I, N0 [1 C# u
- JSR ON_OFF_PPU
" b0 p! }8 Y1 A* | - LDX #$00
" c$ A: W c0 O3 Q ?2 A* d( V& } - LDA #$F10 T2 y. A1 ^. S0 a
- STA $BA
9 m% ^6 i( G1 @2 V% C' y3 `- R. ?. \# l - LDA #$21! J! Y+ M& {' Z" C
- STA $BB; `9 I. D4 g: Z1 h w
: V: z' k" M+ ]- - K; _" b; P) u- Z) K
- JSR LF_PPU
9 T; g; E6 x/ h - JSR CLEALL_WRITE
1 ]4 Q& ^ U5 W" H; M1 i. S5 j - LDX #$00
& \# D8 H/ T" a8 [& h1 `- r( u - LDA $07A5: \7 j" ~ ~ c( Q/ i6 m" u
- AND #$049 \ R2 w4 H a
- JSR ON_OFF_PPU9 s1 z- Y; I' q! K d6 l; H- d% h& O
- RTS9 C. z4 q( ]5 g5 w! V* ^1 Q9 N/ X
-
( J- M1 ~3 M/ `4 M# N* R& f - HARDMODE_STRING:0 ]) C5 p, o# p( c0 N4 `" @
- .BYTE $92,$8B,$8E,$97,$99,$8E,$80. E; f5 C( I4 h6 `1 {1 Z# O) A+ ?
-
$ A. e0 k( a/ `3 v, k; Z -
]- l3 Y( d: _8 W I% n M+ q - HARDMODE_WRITE:6 p: e+ V. M5 `. a- [, X6 g
- LDX #$00
+ [$ }! R$ a1 z" q4 X) | - HARDMODE:8 g5 S J5 g1 E: u0 X( [" K# N
- JSR PPUADDR_PROCESS
7 P! Z1 @' p/ e& n* } - LDA HARDMODE_STRING,X
/ O# s5 o8 r0 P; J7 Z - STA $2007 g9 e1 F# ]" r. K& N
- LDA #$00
1 Y5 z% _! a& {) V - STA $2000$ L3 u9 T* Y2 Z3 i. ]% M$ D/ z/ I
- INC $BA
( E7 q1 N$ u; Z7 u8 k/ i; B - INX
+ w* g1 ~8 J1 o- [- d9 {* u - CPX #$078 \- F: C' g( H. e' R, R6 Q
- BCC HARDMODE
) C, R$ c' f) T! b6 m - RTS
7 L. c* ^0 @; B% j. ?
7 j4 Y# o' q$ h6 \- HARDMODE_PPU:! O& w- [# E7 t( D4 k. n+ Y& c
- LDX #$00. ?: h1 V( X- ~. b, h$ x; b
- LDA #$22
' I6 ? ~. ^7 q, G6 E - STA $BA
! ?! O+ _5 p! t) L. e - LDA #$22( i1 J; t1 z( `% Z
- STA $BB- x# A7 {: B/ t \! q6 Q# l. W
- JSR RG_PPU
8 e$ |! ~9 m& i7 i- ]* q! w" L - JSR HARDMODE_WRITE6 C5 D C6 V+ U% Z! @/ l* W
- LDX #$00
3 Y$ `0 ~: u w. ]/ i! W: ` - LDA $07A4
# d' [. N- M7 o: g* ?) X - AND #$01' t2 r" x" f0 ~0 S( a
- JSR ON_OFF_PPU; e; y( @, r+ A
- LDX #$002 ?! ^% \# e2 o: a
- LDA #$310 W# a1 x; K1 w: ^% d% w3 F
- STA $BA% E3 Q$ a7 W1 N0 D
- LDA #$22 B& x% O B/ e% Z
- STA $BB0 G3 ]/ Q v# y' |# {1 C* Z
2 F y3 ?2 S' E
" g* h0 x( h. O9 j" }/ V1 O- JSR RG_PPU
0 F1 m- N% |$ P4 [/ m/ { - JSR HARDMODE_WRITE- |& `5 O7 ~ i7 `4 ]
- LDX #$00; @ s2 Z- T1 O- z
- LDA $07A50 C( H3 k+ C3 ^$ b p8 o
- AND #$018 M O5 C0 m: k- [
- JSR ON_OFF_PPU
8 C$ J4 s7 u$ `/ e( M+ L) K- K7 J1 E4 i - RTS0 A( R5 X- G5 ]* q$ ?
3 h2 o9 J. l+ t. Z5 s7 O- B_TO_JMPSTG_STRING:3 N. J4 @7 ~8 N- h% y* ]) ^4 y0 ]
- .BYTE $80,$8C,$80,$9E,$99,$80,$94,$97,$9A,$9D,$9E,$91,$80
! m! g% B( a) E% t - # p: A+ E' w! m \ @& o
- % }$ H1 p) w! f0 _* n- o. [% r$ w* D
- B_TO_JMPSTG_WRITE:# j* u2 I, @5 r1 m$ b
- LDX #$00
1 q* e C; p) E9 {" o4 b - B_TO_JMPSTG:
0 ~' t. p, S; ~$ X: D7 G4 z6 K$ u - JSR PPUADDR_PROCESS
' b% A6 g# N9 m* t: }: V - LDA B_TO_JMPSTG_STRING,X" |2 U Z2 }, e& ?
- STA $20075 j, `, @0 l* j* h
- LDA #$00
, g# M! ]2 a/ x0 ` - STA $2000
# |( v+ j: f% o/ b% I7 _ - INC $BA
! [2 ~6 i7 u$ q B; H- ?6 f, i. a - INX; [6 ]# ^- o$ @. n' ]8 J- T
- CPX #$0D
: q5 b6 ?7 E* W$ | - BCC B_TO_JMPSTG
: T6 @- H! \7 q( y$ ]$ K* E, M - LDX #$00
* Y: F8 r. _6 ? o8 ~6 m) P - LDA $7FE0" n D; |! C+ n- y2 q8 M
- JSR ON_OFF_PPU3 C$ m/ p A5 p# E0 @% X0 s3 m
- RTS, A1 z8 Y$ n) d. H3 O
5 u+ y9 ^+ u( l) `4 j6 E+ h- B_TO_JMPSTG_PPU:
* e, e2 H* L% |5 [" ] - LDX #$00
8 ~0 h1 n# s! D- H' n' p9 { - LDA #$68' m4 _2 L; D" l5 J6 Y+ s7 W( C8 `1 |9 d9 c
- STA $BA
+ v- h8 M+ l* \; S - LDA #$22
3 D2 m2 R, k: e) j# D" K$ o# N3 J: H - STA $BB+ [ ]1 o* S6 I, s" Y# c
- JSR B_TO_JMPSTG_WRITE ^& `$ B9 o+ `# X
- RTS' d/ P7 [2 O0 h) z4 F; z! h6 t
- & P: l8 Z3 ~0 W% _0 M1 T' O
! l6 Q/ E1 S9 a- A_TO_PLAMOD_STRING:
3 c9 P o5 Y7 c - .BYTE $80,$8B,$80,$9E,$99,$80,$9A,$96,$8B,$97,$99,$8E,$800 n6 B6 U6 f8 U2 B3 s
-
) f8 ]0 u% s5 h! u4 F -
& v: G9 L- v0 }( ~$ ]# m" [1 S - A_TO_PLAMOD_WRITE:0 x9 q8 n: t9 L* O6 x+ I2 c
- LDX #$00
: ?3 U# i U3 L/ j% z. M" Z& S# x! U - A_TO_PLAMOD:
1 I8 X! O! B( ]) W$ I - JSR PPUADDR_PROCESS
- ~2 J" D0 d- g2 X, `; \ r - LDA A_TO_PLAMOD_STRING,X; {% T7 s" R* L; E+ u/ Q4 l- v
- STA $20074 E# n4 _& m, ]1 l# q$ R' V
- LDA #$00, M8 Y; ^9 T2 H8 @& S5 _
- STA $2000
$ M' Q: @7 p6 @ - INC $BA
( c* m( |3 I8 h - INX0 g2 M6 T* L$ {; g% c
- CPX #$0D
* ?6 Q7 E- V9 a, w- s - BCC A_TO_PLAMOD( Y( w4 ?+ k+ m1 S5 n
- LDX #$005 ~! |( ?, w- W) f
- LDA $39
1 A7 H; w5 I: f1 @& U; a: I - JSR ONE_TWO_PPU
: d3 ]7 D5 b+ r - RTS- z3 ?0 E- C# @9 j. H: c( G% f
# \6 p& {. [# D4 a. a& k- A_TO_PLAMOD_PPU:4 F, T5 }* o7 h0 V
- LDX #$003 y) s1 Z9 F r2 x
- LDA #$A8
" ]' G; M. U6 q# }: \9 r" m - STA $BA
7 k3 h- P, K3 x E$ |- T - LDA #$22
; [! ^1 m, S- s - STA $BB: S+ p2 m2 |0 f0 A( t
- JSR A_TO_PLAMOD_WRITE
) m- Y5 S2 M4 C! N3 K - RTS
- L% W% A6 l C+ C
p+ d/ P+ N/ Q6 C8 b- ^2 A- MOVSPE_STRING:
- r5 d- z5 o1 \" ]/ a( O8 I - .BYTE $97,$99,$A0,$9D,$9A,$8F,$80
o+ d$ _& _' z8 M -
) M" L& `* e1 s, M% y! B3 R& h' h - % Z$ g$ L# b5 Y$ E% N @& f
- MOVSPE_WRITE:
' B" t3 i/ x* | - LDX #$00+ J) [: u- Y% P/ k2 [7 @7 q9 X9 c
- MOVSPE:0 B; C, R1 L' L* {3 c5 X( X7 L' e
- JSR PPUADDR_PROCESS2 o* K. [0 ]9 K) c) z+ }9 S
- LDA MOVSPE_STRING,X
/ ^8 H k" {, g# V- q6 n - STA $2007+ B J8 C' j6 r- D9 \3 Q$ f
- LDA #$005 {; H8 |) C) V3 A) \9 Z
- STA $2000% G% D+ `4 p; t2 u) Q# r7 c
- INC $BA6 e& `. _. Q8 b+ }1 ]- n
- INX
4 [+ j) R$ x! ]) h* k7 B9 k) }) V* Q - CPX #$07
6 s. P! Q& H W( C - BCC MOVSPE, o( C4 I6 c, Q! I$ l& L
- RTS
8 L* w- F/ c" T5 W, q2 M: ` - & h4 y- g7 z, t Q% F
- MOVSPE_PPU:
/ P$ M7 g# h" v& s+ ?( n - LDX #$009 F; q! L8 \/ V: f$ g
- LDA #$699 ~7 u8 g" e: E0 M" [8 q
- STA $BA
9 ?( T0 J! p; i& K - LDA #$21) t. b; g) t7 G6 x# I" j
- STA $BB' l5 h6 B' E; k
- 7 h# ]/ n8 m3 {
' L: B( ^1 d. M2 t- JSR UP_PPU; q& @7 h5 ?* A! N, |/ J0 q' g0 t
- JSR MOVSPE_WRITE
' E' j0 `& i- t& Q - LDX #$00
- F$ P5 @% W7 z. L+ |* N: a - LDA $079F5 T- w6 B9 K2 G8 R9 j0 p9 m3 ]* M" g
- AND #$08
9 d9 a0 |1 x6 R& c1 S2 p - JSR ON_OFF_PPU
! A" H+ v7 o6 X# y2 l9 K/ x - LDA #$80
" L7 r: `" G0 a$ i- I& M2 L - STA $20077 |, U6 u# F( T0 |6 N
- RTS! g3 F6 |3 g( E7 R4 U
- 6 O6 C0 j% ?4 Z; P `, V; K
-
, G' H/ g; ]* t% e9 ? e" @ D! l - UNLJMP_STRING:, w5 a; e' d8 R+ N( h9 w0 r) B. {6 Q
- .BYTE $9F,$98,$96,$94,$97,$9A,$801 N0 e( k( M4 G% C5 d+ E1 n
-
, K5 R" ^( a, O" t; V - ( t" n, _+ M6 u
- UNLJMP_WRITE:, L& h3 R" u5 Y$ h
- LDX #$008 A( l3 v+ A8 f W9 q0 q
- UNLJMP:, d) K8 u2 w6 R9 f. E. u
- JSR PPUADDR_PROCESS. f) ]; T4 C0 z3 X* A* z
- LDA UNLJMP_STRING,X
, t/ m1 Q( P( r: ^. Y - STA $20075 S1 ^3 D) [# |1 R
- LDA #$00
3 w/ {. J$ R& L9 |8 \6 Z - STA $20006 ~+ W6 X) e0 B/ a
- INC $BA6 }. A& t9 p- e6 a
- INX
1 c( r( [/ w, G/ C6 f - CPX #$07; S8 K3 e0 @) ?8 S8 e: v
- BCC UNLJMP( R$ M( a! r+ k, u
- RTS/ v( Q U g) H" L
- ; E" W9 S f% u( a
- UNLJMP_PPU:
8 s! G9 |# J& m5 [2 Z - LDX #$005 q2 B& M, t; O
- LDA #$A9# m& ?' L, Q5 ~7 C4 x. T7 W5 u- |
- STA $BA
3 E0 p i& S" K# N2 p' {/ {6 m - LDA #$21, _: C5 o/ B+ }( `2 t
- STA $BB
3 ?9 I" S9 j4 ?" f
* S! m. F3 h; a+ U( u" i4 m$ V- ) |! l( i! k! x0 R0 L
- JSR DN_PPU: ?4 D4 Y" m3 ]( h/ V% F1 p9 Z
- JSR UNLJMP_WRITE
* \+ k9 E, _8 ]/ s2 v - LDX #$00
- |/ ]) w8 C/ ]8 y7 B - LDA $079F
* h" ~' C# G; d0 P; R' o - AND #$045 H# @5 R" V# t% _
- JSR ON_OFF_PPU
2 c/ R0 O. @" }1 |! W - RTS
1 x/ f& A9 e5 ]+ i/ i4 { -
& u4 _' f- U, u1 \ n -
- y2 ]( F8 ?7 y4 Q T - DESTRO_STRING:
6 p. E+ ]: }" ?% x6 o* {( C) p7 v0 H0 i - .BYTE $8E,$8F,$9D,$9E,$9C,$99,$802 W: S4 u4 e: z" t; h+ e* A
-
6 O+ Y0 o- K6 _3 t7 [ - 3 ?! F" s* l5 d, q; u8 e1 [6 J' E8 g
- DESTRO_WRITE:
/ ^9 o) G& b% ]% S6 Y/ k - LDX #$00" Q D. N9 G! _/ ?- O/ O
- DESTRO:1 N$ G( }9 |- O& e# A' ]8 z: t0 U
- JSR PPUADDR_PROCESS
% P# j8 A5 c) ]1 G" I - LDA DESTRO_STRING,X4 ], |- f) z6 _5 z! L! @
- STA $2007
" f3 V( s1 ^( @0 d0 L! c7 G: B - LDA #$004 P0 v: v/ U4 O; Q& \2 |. u& a% C
- STA $2000
! {+ M& h! b$ [' [8 s - INC $BA4 A$ i/ G4 ?$ n& N, u; q4 n( @
- INX
! S2 ?' D2 r: { - CPX #$07
q( f9 @( a+ i4 {. U! Z - BCC DESTRO
; g1 ?7 T4 m3 n$ ~) D2 }" _ - RTS% K. s( k0 d2 E
- ; `! x9 R2 N2 h9 Q
- DESTRO_PPU:
+ k2 j. A3 k& { K, x - LDX #$00
0 I8 V% F/ W( h$ K - LDA #$E9
+ P; Q9 V/ j ^1 N - STA $BA9 Y" G1 X) P' E |! s0 q
- LDA #$21, {7 x( ~6 s5 X0 {$ _* W
- STA $BB2 ^, T2 ?# X+ G4 h+ d9 N( J, i) _3 B
- ( K7 X, ^' Y0 `9 ]( _
- ) z) X; Y0 G" \
- JSR B_PPU O$ z1 C' }* V" ?% Y
- JSR DESTRO_WRITE
, a# U+ Z( w" S8 t) i" W - LDX #$00$ f7 k" J% A+ b( b% y0 X- a- e) `
- LDA $079F/ k: D* X* A8 P
- AND #$40
l0 S' I' C! z8 N/ O, k/ i - JSR ON_OFF_PPU
4 T9 [8 x( l5 v4 t3 F7 s - RTS
+ |* {0 g& B' _8 N u: z) c4 k4 ? -
( A- z, W1 c" p3 c/ P - 1 {# v% \1 ?* _2 M: Z
- EQUBUL_STRING:
5 z" N! q' |* y5 O+ d9 v - .BYTE $8F,$9B,$9F,$8C,$9F,$96,$80
+ n6 |/ H- E+ y4 n - 2 E2 N* g+ w8 a: |* k: {
- ( s- I, B% _6 e, S2 P' W N
- EQUBUL_WRITE:
2 }. S( @# k6 |5 C - LDX #$00; B- b' X) Y: e2 u9 X: t7 s, T, S
- EQUBUL:) u7 {2 b2 o4 B1 `3 |
- JSR PPUADDR_PROCESS; w. G! a& {9 Z9 d
- LDA EQUBUL_STRING,X9 V. k9 K2 _8 @, W1 @9 A7 @, U
- STA $2007
3 N1 A0 m8 h3 h0 ` - LDA #$00
* K' V( P3 v0 a, {. t' G" K$ r3 E - STA $2000
1 j: f+ {( x/ `$ @ - INC $BA% ~6 A( }. p& o: d/ p
- INX
1 V; e' \; b) Y8 T, v - CPX #$07. Y2 L1 z# x# m0 f2 t5 f
- BCC EQUBUL/ C& O2 `7 a" s/ F
- RTS
/ T8 N: W2 m) M6 ~ - 8 C, A+ R6 S) Z3 F. P5 y: n1 k
- EQUBUL_PPU:
! E3 A7 d3 ^3 B$ F - LDX #$00; P, h! y& _% |3 T2 W
- LDA #$29; @" [% k3 C5 ]; `0 A! A0 O' V# {
- STA $BA
9 _# j% {: I% U/ a - LDA #$22
$ `3 K+ j6 _5 b - STA $BB- v; Q$ E4 \ T, q+ H
- 1 r- C, K; O. Y/ o) Q
: J6 I) G m# E% D8 k2 K- JSR A_PPU
% R; ^; g! o Y+ P* [, b u" d - JSR EQUBUL_WRITE9 y. |( _* p- A7 x" ~
- LDX #$00
8 Y, x3 q) J" f6 y' Q# n - LDA $079F
$ Q* G! e5 r$ ^& _' h - AND #$80
% z4 m% Y: I7 @- j% N - JSR ON_OFF_PPU
- a5 R7 O5 _) r1 C: C9 L3 x - RTS2 U0 R: a7 |/ m; l {. A
- 8 E5 `& H) q/ D3 O3 |
-
0 c4 N$ x8 d2 c$ w0 I - " o4 }% M: H2 T, w5 _
- BULSEL_UP_STRING:
4 b4 P0 [1 H# I' w; ^! J# Q# ~" ` - .BYTE $9F,$9A,$80,$9E,$99,$80,$9D,$9D,$80/ v8 e3 s/ V0 B/ l8 v6 ]+ u
-
, ^, Q+ B/ i' t K% ~3 C - BULSEL_DN_STRING:+ V& S9 O8 x& O3 z1 n/ `" G& M
- .BYTE $8E,$98,$80,$9E,$99,$80,$9D,$96,$80* n& g4 O; S/ n# V+ Z; a# K
- 1 w6 e: W8 _6 T! s
- BULSEL_LF_STRING:
' S. M/ |: Y, g- Y - .BYTE $96,$90,$80,$9E,$99,$80,$9D,$97,$80
4 g' O) u/ _& a V6 C% N* z - 2 g) Z8 A( A1 g' V |
- BULSEL_RG_STRING:; b; z b2 F- w& E( D e
- .BYTE $9C,$91,$80,$9E,$99,$80,$9D,$90,$805 c# P, B2 R& `) e1 e
- " f. ?( ?/ e1 M, P1 S- G; w/ N
- BULSEL_B_STRING:
" ~% E! c; s' M' j/ C4 p3 I - .BYTE $80,$8C,$80,$9E,$99,$80,$9D,$98,$80
# H9 S3 B5 [! O' } -
, r. u" p9 V9 W6 t: A8 p - BULSEL_A_STRING:8 ^6 ?+ ^: m) Q% D- Y% m
- .BYTE $80,$8B,$80,$9E,$99,$80,$8D,$99,$97,$97,$99,$98,$80,$9D,$9A,$8F,$8F,$8E% y* q8 n4 t. p" p# M$ |3 @; S
- - C) v, C) S4 w
- " q9 R4 y! a; `3 l7 n+ {
- BULSEL_UP_WRITE:
1 O! e4 V: i# v0 F4 w) T& {0 Y1 ~1 b - LDX #$002 t1 } s" }. G) c
- BULSEL_UP:' r5 p8 ]' Y3 l* K
- JSR PPUADDR_PROCESS
- }. d+ @! u9 g6 q9 z8 p- |, H - LDA BULSEL_UP_STRING,X
; a9 }- t% q$ Y! S4 [9 S0 p - STA $2007
2 x% J9 ?2 h4 _* A/ L) Z2 {- G! I - LDA #$00: Y' B+ ?* o* ?( F& z/ w; Q
- STA $20005 F! V! v- D4 F+ i; h1 J
- INC $BA, }- F' H) R2 X# o, I5 }# U5 }, B
- INX/ c6 [/ Z3 O$ M8 g+ t$ Y% h9 b D
- CPX #$09; C% B, Z1 w# k. n5 S% S
- BCC BULSEL_UP3 y8 ~* V5 ~2 w2 |# `" _, D6 K
- RTS
. i, J1 a, e$ Q0 Q - BULSEL_DN_WRITE:
$ X r7 R! P/ o. H/ { - LDX #$00
) |0 j% [$ i, N8 S3 K( u - BULSEL_DN:4 Q6 d( T {! ~+ j: u% w' Y1 F+ Y
- JSR PPUADDR_PROCESS
0 G2 f5 Z# Q- ` - LDA BULSEL_DN_STRING,X
6 G% m9 t$ D0 H - STA $2007: o! n) Y3 u$ o K/ E Y1 _0 X
- LDA #$00- B. j$ s; G6 Z; @: ?0 A
- STA $2000
9 {" M& X9 w1 w1 Q3 d - INC $BA. |. k" x3 h; l7 a6 i5 C
- INX
' r7 M" K* ^6 [6 ^( f( R) K3 p - CPX #$09) r/ f* y L! D+ X& {
- BCC BULSEL_DN
6 k0 g2 [: U% a$ L* L - RTS: _6 Z' M9 P' k z' y$ e
- BULSEL_LF_WRITE:+ l/ N; q) ]! j
- LDX #$00
1 b# G* k( N4 j6 {; I - BULSEL_LF:; p/ ^; C0 [8 r( o
- JSR PPUADDR_PROCESS5 U- V+ N, a3 a. D* g3 b8 Q
- LDA BULSEL_LF_STRING,X5 V1 u- O: o- ?3 m8 a3 X. H# F
- STA $2007; W' I# o7 }. V8 R. u3 e! G! X( P
- LDA #$00. c/ V/ \, P" T1 n
- STA $2000$ u6 D( Z, G5 X g% D6 v. a$ m9 k; m
- INC $BA4 Z L4 g, H# X, I7 n
- INX
/ v, j& g8 p6 h* I: ?* _" I- H - CPX #$093 @5 i+ G6 d2 q5 P% a
- BCC BULSEL_LF# W5 L( u/ d" X# l6 S8 @( @% O
- RTS5 v' ]" d9 R7 f
- BULSEL_RG_WRITE:3 j4 f$ M b! q
- LDX #$00' m, ?0 t+ a/ G; I( W+ o9 D- m1 m& @
- BULSEL_RG:/ ^7 i9 v6 L4 A: G+ F
- JSR PPUADDR_PROCESS
5 I9 I. O/ \ B k, B. ^9 y$ { - LDA BULSEL_RG_STRING,X# T5 e: P: v7 J: j
- STA $2007; X. u& C* S1 v" u
- LDA #$00
+ g* {+ |2 d# @( w/ W4 m- @ - STA $20004 e" A1 \! Z; ~: E6 f) }
- INC $BA
8 D1 q c# f0 @! @; i& d( [ - INX
( {, N6 n) x. Q - CPX #$09
7 _. P2 w3 T$ l* e2 `, h( O) i - BCC BULSEL_RG7 ]5 b# P7 I8 l" e( [
- RTS
! ?2 n, d/ |+ W. t - BULSEL_B_WRITE:9 ]/ \2 M) J. I8 M. N3 r% o0 ?9 `5 x
- LDX #$00
$ d% M; b9 h- D0 f5 i) }8 g' l, C+ { - BULSEL_B:0 f! E. j8 R; T
- JSR PPUADDR_PROCESS* t# b% ~' [: u& b
- LDA BULSEL_B_STRING,X
3 y# d$ c- }% g' k7 n$ n - STA $2007
5 d5 a4 ]( z" ? o2 f5 y' \2 a$ f - LDA #$00
% N% n) c. ?, w4 C( w - STA $20002 M3 |2 Z; ^, U8 u* o
- INC $BA
i& F0 \$ n/ d, I# e - INX
! `% g$ u1 f V - CPX #$099 ~/ A7 `+ ~4 Q, F* K
- BCC BULSEL_B& F) M. E* R3 N6 o
- RTS' y, L4 t; s6 d' h
- BULSEL_A_WRITE:4 X4 L) N: l6 P2 k1 w5 N
- LDX #$00
) S: q4 b) p; o! W1 M( k1 \' I - BULSEL_A:
0 F4 i; ~6 t3 M+ o3 `# d$ S$ [/ r - JSR PPUADDR_PROCESS. |9 B+ s% X9 f4 S
- LDA BULSEL_A_STRING,X
/ I% [: n& ]! p- ~) ?' b - STA $2007
7 _1 x, j. B2 j+ l3 P; I9 _ ` - LDA #$00
" K0 [4 K* m' F* _ - STA $2000
1 _1 a$ _- z3 b* E0 `) b9 E - INC $BA- q6 d n, Q' d: r: l
- INX- \7 Z& |0 V! L( r7 G0 T+ i& v+ e
- CPX #$121 C9 x# ~# v, \
- BCC BULSEL_A
2 P0 ~, ?7 w9 v }$ N# Q @5 O - RTS& A0 y1 {; E: U( t) P( Y
- ( J" A+ T" }: i
- , Q7 q2 s7 ?6 n+ m
- 2 v: ? n: Y+ {7 o6 R
- BULSEL_PPU:
& V, {! ^4 D7 Q2 ^ ^: B ?- q - LDA #$6C& n! B2 X4 r, ?7 k
- STA $BA9 }& `& O+ B% c, R2 t, b, z3 m4 m
- LDA #$210 {: D' x& x: z" N- d9 c$ h' ^
- STA $BB$ |- U' n/ @! Z' R* i! U7 [
- JSR BULSEL_UP_WRITE: ~0 O& w8 O! m- D
-
7 l* H" v( d8 {$ S - LDA #$AC1 V: a, p2 P$ d, \( }" x7 P) ?
- STA $BA& l( j+ X- R. c$ M2 ~7 ]
- LDA #$210 F1 @$ d+ Z$ q( x. s- I' z
- STA $BB
" @' K4 x; S" t; A1 f - JSR BULSEL_DN_WRITE
& K+ P8 ]. H4 K/ T - 7 @3 X3 A8 C- Z% t! g% x
- LDA #$EC
3 O4 d6 o# n1 b0 [ - STA $BA
+ j) b2 A9 {3 k5 P* s% W0 l* ? - LDA #$21
- j6 q. \" ]% s - STA $BB1 K- p* W% o2 m* [; Z
- JSR BULSEL_LF_WRITE$ F, Q: ]( ~2 ~3 e& O; e" `
-
$ R) o2 A0 w4 b' l, p* M" U6 x - LDA #$2C
7 _$ }; i0 M& B+ }* o# k - STA $BA
2 m2 _# Z6 ?6 b% O; k - LDA #$22
/ s) a+ }( J6 y( Y7 W1 m - STA $BB
* U& N+ Q( Z" ~0 E6 M$ X8 @; y - JSR BULSEL_RG_WRITE
4 p0 K0 ~3 i' T/ N - 3 f. z. i& ^' K+ e. ^
- LDA #$6C
% i4 ]& Z+ X) p7 Q/ m5 n - STA $BA
6 B3 s/ R( W2 g, J8 K( m - LDA #$222 S/ j* m+ L+ `6 O q
- STA $BB. v' f) x- ~6 Z& f1 P$ M5 p
- JSR BULSEL_B_WRITE0 o# W5 X# n0 Y
-
: z& a5 o2 T r+ ]2 ~# `! ]0 }' b; k - LDA #$A7
. t; p3 A6 e9 N: u8 h" f - STA $BA* o) P. h/ I0 d" X
- LDA #$22$ j4 w* [# h9 N! F, {. |% [
- STA $BB
6 ^8 F* @# n# O4 s: Q5 X6 B6 o - JSR BULSEL_A_WRITE
' z2 s- I* y3 K* H+ u - RTS* I# d9 m' n+ ^( {6 C, E4 @ Q
-
2 q2 t* H( t* j! S) ~ - 2 ?1 x3 f4 ]0 J: i* ]0 o
- : P2 u! C, P$ G; k7 @
- UP_STRING:
( k# h5 D! M) ]# F( }) C - .BYTE $9F,$9A,$80
# C% y! {" y& e1 T, D4 H2 } - " d7 f7 K& ]8 S( F6 h, A
- DN_STRING:
4 V4 W% X8 n j - .BYTE $8E,$98,$80' z1 B% s+ H! l! \' H6 s3 u
- , B' W% X% e% J' ]$ x
- LF_STRING:( k6 _6 s8 [& M. K
- .BYTE $96,$90,$80
6 b- _1 M+ m" V) L4 ^8 G) s( U - 6 k$ K4 ?$ `9 |
- RG_STRING:2 _7 ~. D0 W4 B( m
- .BYTE $9C,$91,$804 i0 ~* n! L! H8 M+ }6 H9 D
-
& ^- U* ~+ K# d* x! S/ J - B_STRING:2 K# _- ^ ]& h' h
- .BYTE $80,$8C,$80+ l8 i7 ~6 C K3 [6 L
-
, F0 Z/ d( L( K3 T+ ?6 P - A_STRING:
% n+ ~& j; ~ _, h4 _ - .BYTE $80,$8B,$807 \* m+ n) s. m: v, }0 O- b6 r
-
( A0 [' t1 j+ ~2 S, R l! _( A: X -
2 M* A# J, a$ _$ g+ J4 D. \$ E - UP_WRITE:+ D4 S% f; R/ b+ H$ p
- LDX #$00- x& p- O- N9 ]3 w. g6 s9 Y
- UP:' M' i4 I2 Z2 S" E
- JSR PPUADDR_PROCESS
; c4 q7 w/ W) R - LDA UP_STRING,X
) r9 Y! ^9 B: U: \ - STA $2007" p0 j: t8 W" y2 E3 l" n3 z) ?
- LDA #$00
. N6 N q% q6 R! B6 X - STA $2000' v7 n5 i# w7 c( P8 d
- INC $BA
+ g4 |% t$ E* b/ e( l2 T9 k! L1 H - INX) ~' S+ s. b# M* a
- CPX #$03
" d1 L1 `+ i+ Q( @9 M. E - BCC UP
3 f6 T! \5 }% h - RTS
4 r! [: E1 l2 Q& \9 a - / Y B5 ^! U3 S6 E
- DN_WRITE:* p* v" s- Q8 P
- LDX #$00
* T2 b+ E; {$ ]4 ~/ v: b" b% `! M9 Z - DN:
# U8 e0 x8 T- |6 q( ` - JSR PPUADDR_PROCESS7 X: ~! J. g' b7 n' P4 r- ^
- LDA DN_STRING,X
6 ~8 x, m! S2 M5 x' @ - STA $2007
8 R7 b9 h: f2 @& h: A4 V - LDA #$00
- B6 c% Z) f% M* x; K - STA $20002 T& _+ h8 s$ R1 P
- INC $BA% p6 y9 b8 |+ k. a r
- INX0 M) M" m/ d7 j8 f8 U* q; o
- CPX #$033 p0 d/ C& `1 B: N- q
- BCC DN
+ v9 d& Z7 B& x1 q) k, W4 h! A! Y- x - RTS
/ {. t+ L* J9 `/ {6 J4 y -
3 ]- t8 K& M' ~ - LF_WRITE:7 F& w3 b2 H: f3 z$ g g# @
- LDX #$004 w) M, h/ I2 U G. ^$ U
- LF:
+ _5 t' {- W) D% }, q8 S# d$ | - JSR PPUADDR_PROCESS
" P1 L$ R- L: D3 x" b - LDA LF_STRING,X& t. \' l) ~8 z$ s" W0 G4 d
- STA $2007
" m, j$ x' N0 M: u1 b2 z - LDA #$00 l: N6 R) D' V
- STA $2000
6 U( ]8 j7 r& V+ e3 { - INC $BA
4 ]4 Z" a( B; V) t7 n+ j" n1 s - INX
5 z: m3 y7 [# \ - CPX #$03
+ E$ Q2 k! M. q. i# Z - BCC LF0 V& F; K5 f1 i5 z
- RTS
6 q4 ^2 L$ _0 k( H' L( ^8 V
% O% J: U, p$ `2 T8 l: n" l( E/ X- RG_WRITE:- s+ I; ]- C5 l e/ B
- LDX #$00
* O8 l; ]: F( T; b& G3 q {5 G; T - RG:" m6 Y+ T/ B6 ~6 S0 ^' \* p2 w- V
- JSR PPUADDR_PROCESS
0 s' i( A! f, r3 Q; q9 _ - LDA RG_STRING,X
, v* E4 Q& d* k - STA $2007, C5 Y2 {. q- y, E4 e9 j
- LDA #$00# p0 f0 r/ S/ Y1 t/ n8 Q: h
- STA $2000
) g- P& C# b1 ~* i3 l - INC $BA
# {. e6 t y& S - INX
4 [& K( q8 y) m" y }4 e! S - CPX #$03
- [( }6 b* L! A - BCC RG# V* p' d: |' Y/ {
- RTS
% O" @' i5 e1 l0 U' l3 w+ U/ _* }( K
4 s6 x: m; K2 c9 }# L- B_WRITE:1 z9 t L9 ~2 S
- LDX #$00& L( L8 A; Y) _6 |' K) Y
- B:# m* b: o* ` x" |6 ~3 L
- JSR PPUADDR_PROCESS- Z& _$ e9 `3 U! m R
- LDA B_STRING,X
, Q# D6 q. ^1 F; } - STA $2007% P1 p9 l7 ]& u/ d" l' K
- LDA #$00! L. `! z% Q' [7 r |
- STA $2000/ h* n/ W; l" k7 j
- INC $BA- y% s" J+ i: @. I7 @$ N/ ^
- INX
* D# W5 V9 w6 l; ~+ T: P, ]2 q - CPX #$03
; k: i' k3 X8 ~% t' R - BCC B
$ {0 X/ u6 C6 l, Z" g! C7 K - RTS6 G/ n) a" P% I$ R0 i1 x; C2 F# R
+ m7 Q+ l2 N; r. Z3 w/ k- A_WRITE:
5 p1 V' C+ T7 O, q+ A - LDX #$002 d$ j& Q3 y6 `2 v, J
- A:
1 ~8 u# `7 Z& K: Z( T6 Y - JSR PPUADDR_PROCESS/ t& J/ j8 q/ l) k, w+ I3 i5 b
- LDA A_STRING,X7 Y( ~7 T8 o* A8 F7 L" L- o! E
- STA $2007
; L( @& w1 L1 B - LDA #$00
& `3 a9 D" J7 k - STA $2000; `* p, z. w! x
- INC $BA
# B' I8 c: B) k1 R* {9 u - INX
2 Q) V6 o3 d B' `/ ~ - CPX #$03* X4 f: p; b) x
- BCC A7 l5 c5 o: a- ?8 ]* F- Y5 T9 L
- RTS
8 U+ O+ _1 F) M, i5 C, J
- ]* ?) n0 g. h" p7 N+ E( ]0 g. o- 9 {% M' \2 a4 ~# l
- UP_PPU:* h7 F, x. A' [/ m
- JSR UP_WRITE8 X- [3 i( g$ }1 q" f
- RTS% g1 `( J4 _9 S9 Z6 |, Z% e
-
- H0 n7 l% @9 k - DN_PPU:- D: ?! k" j* V- Y" b, `# m4 D
- JSR DN_WRITE+ Y5 S/ Z' p1 K! l8 n
- RTS
+ o7 m: e( f6 Y/ Y( ^ x3 o' a1 d - & b* t7 d- |1 w6 a
- LF_PPU:1 k" w$ }% K) C" n) t
- JSR LF_WRITE
0 n8 J9 K' G* u9 B/ F9 E8 A - RTS
! y! w- C5 i. j - , {: M) O/ r! z1 k8 T# {
- RG_PPU:
' t/ V4 q) ^( I2 n* h - JSR RG_WRITE+ t; }$ \' Z$ @& a$ [( @
- RTS- P4 q, r% ?/ o# _+ G& T" Q/ S+ `
- # L# i5 Q1 J( @( O: I* N5 E' ]
- B_PPU:
! o8 B, S- l: P/ i/ h; `# K - JSR B_WRITE- \$ F8 C0 ^8 {: U+ Y$ z. `+ x. L: T
- RTS+ ?: V- E" p ~+ Q$ B! s
- 4 P: i1 t3 T8 T' a
- A_PPU:" K* h4 t6 B( |6 w* @) [ D l
- JSR A_WRITE
+ |8 H" N7 G5 Q" V+ F$ ] - RTS
6 D. |" r* l& z3 Q' d+ t* t1 i& P - ' N r6 K) a, L2 I9 r- E, ?4 s# ^
-
& f: H8 E2 j; F ` - PAGESELECT:# H4 O) c- p1 u/ ~+ V, x( M
- PAGE0:/ t) p" v. w+ p3 U" v# b% t
- LDA $07AA
3 y" q. B8 H" B2 e0 t - CMP #$00
6 Z, d2 V9 ?. O- w/ S) \ d8 t - BNE PAGE1
5 u; B( @: ?6 o8 X1 a, {* P - - |, J3 g4 D9 \& u
- PAGE_00:
. ~8 g) f( w/ ?; P* _ - JSR BULSEL_PPU- N& D$ [& \9 y$ }9 r2 l0 ~
- RTS
- N; e/ G# G; h) |" S - 3 R7 T" K' _) U+ t! R
- PAGE1:
- ~! m' g6 B) J - LDA $07AA2 k. x" m+ @6 P6 b, |
- CMP #$01# |- X5 k! ~/ c( v9 W
- BNE PAGE2
1 {5 N0 {" ^6 w! o O1 H - 1 _3 r N% d1 u M4 V+ z
- PAGE_01:, \" I {: J4 g- ~
- JSR INVINC_PPU
4 Z( a6 l7 a2 M3 [, n - JSR LIFELC15_PPU* G: Z0 H8 n# N; Z8 S& I
- JSR DOUCON_PPU7 l% [$ ^) H& a
- JSR KILLON_PPU
g) X. r: Q& D4 H. w- P - JSR SKYFLY_PPU
`' x2 W8 @2 t" E' H - JSR LIFELOW_PPU
+ I, v" K% x4 ?5 [$ C9 R - RTS
( q' a j1 [; w! X
* m Y$ o9 c7 }* s% x- PAGE2:
6 s0 h+ ~" G+ H: R6 ~ - LDA $07AA7 j& [7 r5 v+ ?7 E5 Z
- CMP #$02$ i. a+ y5 k0 t9 {1 m/ w2 C
- BNE PAGE3
, X0 T6 l6 o* ~8 Y& b; u7 N( G! r3 o; ]! T - 0 D) ~# b5 v# Q
- PAGE_02:
8 Q2 i" ^ E& X4 D! `( w0 u5 b - JSR BULADD_PPU- N8 y! B4 l Z" F; F9 J4 r
- JSR SKINGE_PPU
* V j& m. `7 a5 ^1 S - JSR BULMIX_PPU
& q/ {! I# Y/ I7 { - JSR ENELOC_PPU" Q# b% V2 x" n) k8 B% k
- JSR FOCFUL_PPU$ n3 H# x; z% I
- RTS& y9 J) Z" f6 _. v9 a* T
- / x5 S% Z* p3 k3 _# e8 Y( A, h
- PAGE3: . u5 ?% y/ W5 V0 w3 h. T( s& i
- LDA $07AA: l" I. v+ A* W1 ]
- CMP #$03 x( M+ F; e. H, a* O8 l
- BNE PAGE4
5 r- c- m( `% h* U -
4 A6 G% r, w3 v/ ` - PAGE_03:) o( ~% }6 k* ^( I- R
- JSR BULCON_PPU
3 E- ]% Q& I: ~, K6 _ - JSR SPEBUL_PPU
% M) S5 F+ h. H - JSR CLEALL_PPU9 [# i5 f3 o- h. \9 l
- JSR HARDMODE_PPU
; e% o- @; _# S* B7 _ - JSR B_TO_JMPSTG_PPU
# ?- _$ E8 ~. Q+ b S - JSR A_TO_PLAMOD_PPU
7 g2 b* b+ r, D) w% k! f - RTS
- X8 f; }5 l& `! ?4 k - 2 z- q; h; F+ N# R" ]
- PAGE4:
D+ t' H1 @1 G5 c: A2 o - LDA $07AA
' S( Z. k# C. k& [* u - CMP #$04
2 a! Z) d* |/ q - BNE PAGERTS" r" b, j' E5 \( Z
-
2 A) j3 Q2 }% E1 v* p5 s: R - PAGE_04:' O( L3 c- D$ B
- JSR MOVSPE_PPU
$ f) T W7 P7 ?/ N; C: @$ Z$ |- o - JSR UNLJMP_PPU
F, R! e6 O& @0 M. F - JSR DESTRO_PPU
# Z7 Q- r9 i/ {# j: A4 N( d; ? - JSR EQUBUL_PPU. T/ o# o, J8 j e
- JSR MOVESPEED_PPU3 x; J5 ]5 A3 @4 c0 e( k
- PAGERTS:
$ t( x" A$ y1 g+ L - RTS/ v3 |5 w$ k0 h9 W' r+ W) j
- ( R2 G4 ^5 N5 P* R9 b2 J" M/ \$ Y
- ( V, C' `+ M- U- }* ^! V
- PLAYER_01_STRING:
0 X# o' P/ {3 m8 q. C5 h x - .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$82,$80
3 k# J8 k: e9 L% M+ B5 }' D -
: a* y# X& ?* Y+ Q3 N -
/ q* g; m6 P% w% w, ]. k- [ - PLAYER_01_WRITE:' |9 Y5 O9 w: |; t
- LDX #$005 W1 Y2 m. |! {% B% w* Q
- PLAYER_01:
( M5 H3 g- Z" [" [+ @) k - JSR PPUADDR_PROCESS A( Q0 g( l1 V7 o" o) x
- LDA PLAYER_01_STRING,X' u( t* o8 m: ~0 z
- STA $20077 O# `& ` L2 o3 n! Y1 J- }' n# @3 q3 _
- LDA #$00
: F4 O5 K* S0 v h+ g/ R/ O F - STA $2000( h5 u8 F- }3 i" L
- INC $BA0 W F5 E' q; Q* K6 h1 ^, `& g
- INX
: a" a6 L4 z9 u9 ? - CPX #$0A3 ]! \/ P) S8 `+ o
- BCC PLAYER_01- f+ S2 R- w* [! D) h/ V) ^+ {
- RTS# J4 N" J3 c) E4 I7 D
+ |1 _5 y$ _# v6 R/ K! f- PLAYER_01_PPU:
* i# `$ F- c; E' J) @2 M - LDX #$00
7 u. N m3 x" X% h6 f. T# m - LDA #$64
# I% z4 [0 a1 j! K5 T+ C- u - STA $BA
7 L/ h3 D6 }5 m6 H, |/ v' O - LDA #$20
6 P+ ]7 l" |8 n( J5 J# w - STA $BB8 G9 b1 M7 v8 L, c/ Q( G
- JSR PLAYER_01_WRITE
! Q4 i7 Q T1 k7 I, a$ o - RTS# l- w) C9 {. k. J# D K$ P$ t
- : i; z8 I# X' F% ]
- PLAYER_02_STRING:
; g5 R( N. T8 t$ C {' f) t; O - .BYTE $9A,$96,$8B,$A3,$8F,$9C,$80,$81,$83,$80; i! g" h' j* K6 A
-
0 H; b3 X5 }6 B) |0 a. V( Y -
9 P4 |: A8 d2 Z. a& V$ W - PLAYER_02_WRITE:
" @3 o3 r. V0 W3 p' z( q' r+ m, P D - LDX #$00( U s* X* y6 F
- PLAYER_02:3 z" v" C3 o: r; }5 ]: B
- JSR PPUADDR_PROCESS8 e( g ]9 A8 c6 M3 L9 w
- LDA PLAYER_02_STRING,X! c; y( l+ D" _0 k' o
- STA $2007. q, Y% ~, J. I- ?" Q( F( t d$ D: I2 K
- LDA #$00
; {; w/ H$ L6 f7 l - STA $2000
+ b& E. A* D2 L/ k4 A8 P - INC $BA) e- I+ M: i$ E$ o
- INX: k9 k) m" A/ b$ O# m# F c
- CPX #$0A1 d/ \6 s, T+ ~5 p
- BCC PLAYER_02
$ z. i7 q6 n1 [9 M4 _2 d! X! o - RTS6 J# X" N+ |0 H
1 D3 X% M' k4 p; |7 x- PLAYER_02_PPU:
/ X4 t/ i1 `: r2 D7 ^ - LDX #$00+ w7 w7 _6 b5 ^/ P( Y2 L( _+ E4 y
- LDA #$73
! x i1 o; s8 q9 s - STA $BA
/ p0 L/ j7 k' D: v - LDA #$20
! H3 r5 Z/ Y2 { v5 Z, t5 S _) v - STA $BB; w3 ^9 A6 \# M! ?* }
- JSR PLAYER_02_WRITE: _+ `/ y. ^/ x" B# S! q
- RTS
; X7 {% j+ |: I" c -
. O7 I# C( {% a - PPUADDR_PROCESS:
8 W7 W) G' j: \3 o - LDA $BB; E' q) `( Q* v# z2 a
- STA $2006
* e3 U5 h& s7 a% y3 V- N - LDA $BA i+ H% d. F' [3 O6 V+ ~1 i
- STA $20068 |* _- M6 c8 j# y) U
- RTS
j/ z: X# m) y -
( Y$ L, e5 b2 m5 r - / I# ]# I' Z) q* B
- $ Y5 X7 k5 ]; m
- ONE_STRING:
# P7 W P3 {' y; F" {# _. h - .BYTE $99,$98,$8F' c" r" t% w$ }, i& T
- : G% v- \3 P" r' {1 b
- TWO_STRING:: T, X$ ^" q3 B. U% J
- .BYTE $9E,$A1,$99
$ Q" X: I b3 E) M; [ - # ?1 v! o+ U$ x- S: w1 I
- ONE_TWO_PPU:
5 q1 V- d* W1 L6 n4 d2 B - BNE ONEWR2 \ x0 b$ h" }' z* Y7 Y
- TWOWR:0 X7 m r2 {" |+ Y/ ~$ w
- JSR PPUADDR_PROCESS0 J) u, C+ ^# B. y- i
- LDA TWO_STRING,X: Q9 T8 k( n" s2 S/ y* r
- STA $2007/ }/ U5 @8 A) J# _2 _; x
- INC $BA6 ^9 Q1 k9 q2 r# y" j! c5 \/ l
- INX3 A2 ~9 B( R5 p- |' R6 p9 D
- CPX #$03* ^* D# |2 z4 \3 A! F# F! M
- BCC TWOWR/ ]# R! y0 g& [3 C
- RTS0 T- T/ Q }3 P1 i$ m" w$ [$ B
- ONEWR: |6 m2 q* a4 V8 F4 n6 w
- JSR PPUADDR_PROCESS
9 Q b# E2 e5 }* m L - LDA ONE_STRING,X3 \# H$ P6 K7 W5 v& U
- STA $20076 R8 m1 N# P- ]) m8 a4 e0 @
- INC $BA! {* U- @: w$ N' v
- INX
5 b% G' b- n! b4 } - CPX #$03/ |# Z& C0 m+ r- G2 k8 ~. Y8 G
- BCC ONEWR
9 F7 G8 m7 N2 q9 A8 a - RTS2 S$ |/ V: q* P. q/ m8 Z% L
-
% `9 x! T: G# |! @( k" x3 Q2 a9 \3 i- P - MOVESPEED_STRING:
7 W; B: p1 L) x- P( w( h1 c! ^ - .BYTE $97,$99,$A0,$8F,$80,$9D,$9A,$8F,$8F,$8F,$80
# O6 |9 f' A9 g, t) p( Y - 2 m7 M6 P! ?) l( i- B
- 5 o. q1 B- `( B- M' A9 U+ [
- MOVESPEED_WRITE:3 u2 W9 F% p: G/ u8 X+ b/ H( p
- LDX #$004 a. z& D F, c" V. L0 `
- MOVESPEED: Q4 B3 \$ | L1 R& G1 w
- JSR PPUADDR_PROCESS
. y4 L1 v+ Y* Q, B. p v {9 t7 { - LDA MOVESPEED_STRING,X& c' O ?; q0 J- h
- STA $2007+ a- N# \. o8 P% n8 g
- LDA #$00: L. B7 a) Z7 S# M
- STA $2000( y S X% U3 S- t- c% v
- INC $BA. n% q$ B. f( e: T5 c! _
- INX8 M0 Z2 Z& E" z8 L7 \2 Q- |( c% {
- CPX #$0B, P0 D$ k/ @9 Q- q3 O$ O
- BCC MOVESPEED
$ X7 N2 ]! l, t! K4 @# ^4 p - RTS- u# C) w' I2 m' N3 S) @# G
$ I' W- A5 c" A: ?- MOVESPEED_PPU:3 D0 D! r6 Z% c( ~
- LDX #$00 L9 x* N$ u! O9 i/ x6 g. F8 l
- LDA #$AA$ q- {4 E- V5 N4 _# N8 Z
- STA $BA
( R6 u$ e% V5 h- a* p G* m1 A( ?0 N - LDA #$228 T3 l$ `+ _3 V8 D% @7 x+ _
- STA $BB8 E# ?/ H8 H# p4 ]! R7 Q$ O* b, a
- JSR MOVESPEED_WRITE2 R% w3 [' X* q; f9 ?* _
- LDA $7003
B' W9 _, P, L/ h( [% J% s - CLC
0 y9 d A s4 w4 Y - ADC #$82
6 ~6 s; H& \6 T9 }- v- ~ - STA $2007
# Q, z& X% d$ l1 N+ N3 I, i - RTS
/ K8 ]: b8 p% X( Q -
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
1
查看全部评分
-
|