设为首页收藏本站

 找回密码
 立即注册
搜索
查看: 3303|回复: 54

[原创FC/FDS-HACK] [FC][最终任务][END选关]

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑 & E3 X% `7 W0 R! c
4 {( O: B2 ?* x4 X
    [FC][最终任务][END选关]4 i8 p0 ^8 r4 Q4 h0 |
, G) h' q; Z' x5 k, M3 |. ^
时间:2017.3.29$ H$ d+ S5 W8 a) c) J/ g) X
作者:FlameCyclone. S  `- C& N5 u- e5 `
内容:
2 C& |$ I& y6 b9 B/ s    1.关卡选择:   标题时,左或B减,右或A加(1-5关);8 z( H: z( g8 J" f0 ?
    2.无敌锁定:   暂停后,按上键切换;
' S' i: t7 ?/ k$ U9 K$ V1 {    3.生命加满:   暂停后,按下键切换;% J8 [* u; L- x  T, l+ c
    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);
3 ~1 W, t) E6 f2 ^9 K) ~  ]    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);  x5 P' W" ]$ a+ g
    6.B弹数量:    暂停后,按A键切换(1个或2个);4 `6 n. C0 S: V' [: @4 Y' O
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;. ?2 l& T# Z* w& _0 l, [

6 k0 h4 U0 p2 T3 A+ C) o
& Q9 p# q) I) s: E8 j* \5 O1 x3 T
+ j- m; M) S9 ?* e

# C% F3 m3 N2 P: ?
. H3 M/ ~/ m5 o! d  a
游客,如果您要查看本帖隐藏内容请回复
5 g! k- n$ v6 s4 s( v; \
FlameCyclone.ys168.com
: {3 R$ w$ P6 ^4 U& N/ c0 v9 ywww.nesbbs.com
  1. ;[FC][最终任务KEY][END]
    , V* x9 D( |7 S3 e; \) P. |
  2. button = $04    ;单次按键( w& o" k, _* z% [
  3. flag = $6000    ;功能开关标志' }0 C. ]7 `. L( j, M1 N! v
  4. pause = $000E   ;暂停地址
    7 V' W  J# W8 l+ V# ?
  5. 2 m1 `( a% T% Y' L5 ?
  6. .ORG $8000
    : V8 t  b& Q# P' G  g
  7. LDY #$08    ;自带的按键程序2 F( X! \3 d4 ~: \
  8. ADDR8002:
    5 A  N1 W, `3 }5 g. E
  9. LDA $4016,X
    % N2 ?% r7 d8 o$ m+ A" Y
  10. LSR
    , l7 f+ ?( E3 \' P
  11. ROL $0021, a; Y/ \6 T. \1 `" Z$ n) h
  12. LSR; g, P; x' n, @6 O8 m# D2 V- ^
  13. ROL $0029
    5 d7 |/ ^( |( k6 n: _. j# u
  14. DEY# F4 w2 ?0 E& Z, K* W5 @( h
  15. BNE $8002
    % S& Z, U/ h6 p- e
  16. LDA $0021
    ( q* h( Y! ]3 L& W  a" b+ Q
  17. ORA $0029
    5 c( X7 |4 c, ]" w, F* M
  18. STA $0021
    # \& a. ~2 J0 D/ @  G
  19. LDA $0020+ o, k9 N) p9 S5 o
  20. AND $00215 P( W: ]2 @4 I' U
  21. STA $0020
    7 A; P' f5 k. }7 t8 Y
  22. LDA $06,X
    & g) ~) P% V, |- ]" x
  23. EOR $0020
    0 G, b% B) [; c5 ]2 ]8 o$ S
  24. AND $0020' E7 y1 n$ c, |
  25. STA $04,X2 F$ c7 t0 }3 D  l4 _& W1 g! @9 B
  26. LDA $0020; @+ _: t% F1 a4 N8 m
  27. STA $06,X
    8 M3 h' L! D7 B' a# e4 r
  28. JSR KEY_OPERATE! {2 f! C$ S' G0 N9 x8 B) t
  29. JSR Function    ;功能调用- c1 u& D1 R6 i' [# w2 ]
  30. JSR Weapon    ;武器切换调用
      {, q/ \1 q$ P" v0 M+ j, S( {7 W
  31. JSR Power    ;威力调用, F, C1 i$ u! Y4 l
  32. JSR BULLET_NUM    ;子弹数目
    $ r; M% I: z+ u3 f% d
  33. JSR BULLET    ;副武器类型4 r5 i. ^2 s# M2 U
  34. RTS
    3 o8 n! s; J4 j2 b8 f
  35. 2 e! |) [6 \$ ]5 ?" U' d% O
  36. ) r: J1 G3 Y2 s; i
  37. 0 U; n* Y) R( e7 Z, e# a: N, h; g
  38. .ORG $80507 w6 H) S* z# S
  39. Function:    ;功能- @8 `# G2 ?8 U. z9 x4 D- ~% n8 D
  40. WUDI:    ;无敌! l, q( Z0 C" ^8 i2 j6 {9 l
  41. LDA $6000,X
    ) D% y! ~/ U3 h4 Y3 x9 ]
  42. AND #$08    ;开关判断" N8 x- g' [7 |2 X: E3 o
  43. BEQ LIFE6 k9 N2 h/ T8 N8 G4 n! C- F
  44. LDA #$05* I  L% Z/ i0 _
  45. STA $05DC,X    ;无敌锁定+ [! d' g  F1 ^  v
  46. LIFE:    ;生命7 {: a- V' y, a2 y8 p4 _5 k/ S
  47. LDA $6000,X- a& q+ W2 A' z( Y. D7 v
  48. AND #$04    ;开关判断
    - L  d5 q- B+ Y4 D" T6 h
  49. BEQ FUNRTS
    4 h) L/ M; B3 ]" k% ]! B5 X
  50. LDA #$05
    + }  t$ s9 }. V$ E2 D
  51. STA $1C,X    ;生命赋值3 h/ Q7 ]6 H( n" _
  52. FUNRTS:
    & @6 S. A5 Y. t& [$ ?
  53. RTS
    # g0 \, {( `8 Z6 E

  54. * q: r, c5 B: u4 u/ q- o$ ~
  55. Weapon:    ;武器切换. x3 n/ N% U5 R& H7 L! K
  56. LDA pause    ;暂停状态判断
    / N& ^3 f/ k  @) Z" [/ ^
  57. BNE WEARTS
    % R7 r. K* F- ]& O. C: _
  58. LDA $04,X
    9 W2 C$ K% U7 V- r1 I7 z
  59. CMP #$20    ;选择键判断
    0 j3 J; q# j2 D' [, [; H# m9 ]
  60. BNE WEARTS1 @; ^% c$ d! D
  61. LDA $12,X" Y- I: H7 |5 \) P5 g( q' h- V" ^' P
  62. CMP #$03    ;武器值判断" h. K/ c3 [$ ~+ U
  63. BCC WEAINC
    2 k! Z+ g, M: F* Z
  64. LDA #$FF
    * @4 |, Y- F4 b$ I) d
  65. STA $12,X    ;武器重置
    6 r2 M' l1 O; i1 e' d, V
  66. WEAINC:
    ' L3 W& k9 |1 z0 X
  67. INC $12,X    ;武器增加
    , X% r3 f4 Q4 @' P% ~- L4 k2 D

  68. ' f4 H( I: `4 m) \
  69. WEARTS:
    * u. m. N; H/ `  g' Y+ g# s( H
  70. RTS( s  F; w1 F2 b+ E
  71. $ H( J8 e0 O  t% q2 g2 |& ~4 k8 x
  72. Power:    ;威力" G- A" a  W$ O1 D% F7 C- N
  73. LDA pause    ;暂停状态判断
    4 V/ R) f" m$ Z6 ?; R
  74. BEQ SPERTS
    9 u! v2 Q! Z$ j, i% D% o
  75. BUT_LEFT:
    + [- K- m/ `9 p6 n% h* v+ A
  76. LDA $04,X
    / l; f/ e0 Y$ r% \6 o
  77. CMP #$02    ;左按键判断
    8 y' }1 }+ W9 [. {5 {
  78. BNE BUT_RIGHT
    & Y& d) ]4 ~9 T- A5 K7 A
  79. LDA $88,X
    % A, c# l% ]9 T! _
  80. CMP #$00    ;威力判断2 @# W  O* N0 E. r; d
  81. BEQ SPERTS
    3 |0 g# t9 u) R: j
  82. SPEDEC6 l; y5 N+ @5 Y1 v+ U
  83. LDA $88,X    ;读取武器值4 \9 i6 T" r, \4 s4 N
  84. SEC/ ^- R% {8 v9 D/ Z2 X5 ?  z4 M& Z0 ?
  85. SBC #$08. O" z& ]* o( W+ Z5 ?. Z5 g- |, f* O/ ~6 T
  86. STA $88,X    ;威力减小. c2 o! h& \9 R/ t$ v4 i5 Q( L
  87. BUT_RIGHT:" X# }1 G% P; f  K1 t6 D& O6 C
  88. LDA $04,X
    - @! I7 }; {. A' B
  89. CMP #$01    ;右按键判断5 t6 }- K$ k, T: d
  90. BNE SPERTS
    : C& c, z( E! q; _2 x
  91. LDA $88,X
    / N$ I/ n) s$ ?4 ]- P- N* c4 }
  92. CMP #$10    ;威力判断7 i- X; l( m4 f6 Z8 N; u2 `
  93. BEQ SPERTS
    * [4 M1 M( H( C' I, U9 e- k
  94. SPEINC:
    + }. _3 s: }' \+ I! B
  95. LDA $88,X    ;读取武器值9 }% E. K: B% {  F8 u; q+ U5 d0 w" }
  96. CLC" }  U% ]3 r$ J" j/ Z
  97. ADC #$08$ d$ k  H* q! u; L5 H. q
  98. STA $88,X    ;威力增大) W% N, E9 h% m* ?6 F

  99. 9 t, O9 D* Z4 T0 s
  100. SPERTS:
    . F' r. i( a' X( N; I+ J
  101. RTS
    , [; \4 g6 V' B6 W% ^, p4 q

  102. " s! N+ C% F# ?) e) [* i) A$ A9 I
  103. BULLET_NUM:    ;子弹数目
    ( p9 q# f$ b+ C4 B" r
  104. LDA pause    ;暂停状态判断1 g. d  `8 b' A/ j
  105. BEQ BULRTS0 i/ Y( O  j! j: i9 v! S
  106. CPX #$00    ;主机玩家判断
    - Z6 A+ H) L0 B, L+ i/ H& ~
  107. BNE BULRTS
    $ D2 l9 ?, h& c% d$ J
  108. LDA $04,X    ;主机玩家判断! y+ S( L# w& j* _
  109. AND #$80    ;按键A比较% A, T* |$ |! d  z! E! a* M; x
  110. BEQ BULRTS1 Y; d6 d9 ]" y0 i) a  Y
  111. LDA $87    ;状态判断- t' g/ d* p$ ?+ K2 C8 x: l( }" ]
  112. BEQ BUL_27 W5 x* j; `: d
  113. BUL_1:0 y7 W& I* M% K& i" J. V1 A
  114. LDA #$00
    1 e" a8 C% {9 g* x: b( a! G. I3 E
  115. STA $87    ;1发子弹& `  B* C* e  \  [
  116. BEQ BULRTS
    8 H; B) V: ]$ X, n: V) \
  117. BUL_2:6 P! z- K+ d8 c& n8 A: K0 P+ K
  118. LDA #$01/ E0 p6 Q4 m- M5 ^  B. w1 o# Y' |1 [) w
  119. STA $87    ;2发子弹
    ' c! N1 f) f# j5 E: {8 F( {
  120. * B4 s" U, u' M. _: W
  121. BULRTS:0 o" Q& M" x8 I  E
  122. RTS
    ! B  H2 ]4 Z$ U) c& D% k, F) I- U

  123. 6 d% Q- a, T8 f5 V" C

  124. " M! O7 D3 U7 i1 L
  125. BULLET:, h# ]) Q6 n' H. k
  126. LDA pause    ;判断暂停状态) b0 F/ k  r8 x( R  t0 C7 V8 E
  127. BEQ BULLETRTS- ]! B+ S1 _! I* f  r7 d% B* X
  128. LDA $04,X
    3 ?) V8 V7 X1 h6 J  w
  129. CMP #$40    ;按键B比较% v! c8 W& F. N! |0 e: b/ A
  130. BNE BULLETRTS) F: X. j1 l6 k) @' v
  131. LDA $6002,X    ;读取副武器/ ?3 i) D/ Y+ J6 z" }+ Q% m
  132. CMP #$036 H0 X5 c) d! H& K. U/ n
  133. BCC BULLETADD
    ! ^& o% O7 {& a8 D
  134. LDA #$FF8 ?8 O9 D- |* J5 G+ b' v5 ?
  135. STA $6002,X
    7 r. w! C2 H) {
  136. BULLETADD:
    + Q# t4 ?& g( ^8 ]1 f* O
  137. INC $6002,X
    4 v/ P0 _& u' d0 o

  138. : }% F0 H$ q9 H# @5 t
  139. BULLETRTS:
    1 f' r; \6 d9 U  g( T" U- u- o3 G
  140. LDA $6002,X
    : K4 H- q/ F$ _  O
  141. TAY6 Z5 G- H( Z& A7 E+ v) `, w" Q
  142. LDA BULLET_DATA,Y
    3 t! j& F; s1 L0 t
  143. STA $6004,X    ;写入副武器数据" }( \- u" Q" d
  144. RTS. N5 s1 b5 K8 Q! B
  145. / S" l5 q# V: L( V( t
  146. # y$ `6 p7 V0 Y! w1 Y+ t2 _
  147. BULLET_DATA:
    1 P4 B( F, T' S- u; {% e4 v: e
  148. .BYTE $06,$02,$03,$04
    9 U  J3 A$ [6 }6 K. w

  149. ' }' [5 L1 B/ Q% P! R& f  H8 z

  150. 8 V. X. Y7 @2 g; p
  151. : R1 Y1 W7 N8 e, `! A, K& ^" @
  152. KEY_OPERATE:    ;按键开关操作' y* O! n) V" p9 ^$ X( C: }% H9 g
  153. data_protect:    ;数据保护) A5 {! a& B% g( Z# z
  154. PHA
    7 J1 Y9 F" J* d5 O
  155. TXA
    ! V# z- I  K+ G# h6 H3 m
  156. PHA! |1 t4 l, q$ [& u- f
  157. TYA: n0 X  e  [) Z/ e  V1 q5 \' a& R
  158. PHA
    : r5 u& i7 ~2 [% Y
  159. ( Q7 w* f/ b$ r9 b0 R8 o) y
  160. FLAG_INI:    ;开关标志初始化2 O( U& d9 W* M* y7 ?, a
  161. - Z% p$ l; W! V, @: t; u
  162. LDA $600F
    & h* L9 p1 F7 m+ s
  163. CMP #$01: v+ K# l- {* I# i
  164. BEQ pause_cmp( _; F. W/ x# s5 j
  165. LDA #$00) Z+ O8 z9 t, j% {) V9 K- F
  166. STA $6000
    . W* [# L1 i: d
  167. STA $6001  L! ~  F/ T' ^: A
  168. STA $6002, n0 H9 p* c' m3 `5 W) y
  169. STA $6003
    / z* d; ~& v& N% ]
  170. STA $6004) E% [- @/ L7 C/ f7 S6 F5 ]: H, H
  171. STA $6005" |" j4 U$ F, @' G3 D
  172. LDA #$01! r( p* w7 _7 |) d# Z  w
  173. STA $600F
    8 g! p0 F/ Z! W& Z& _: G& {* A
  174. 3 m& ]& j: h: h5 s
  175. pause_cmp:    ;判断暂停状态! T6 t! e' C! C3 g& F8 T4 F% ?2 y) t
  176. LDA pause& p" [2 I& G. E- \( `/ w* f9 q
  177. CMP #$01    ;判断暂停状态
    ; j5 P8 u! c# x& i* i7 D
  178. BEQ button_press! h  S( g/ P# d1 w  R- V, t% m
  179. PLA8 A9 z. F% m$ X* U# w
  180. TAY6 O4 U4 I) i' A  a
  181. PLA7 _" l" ~+ k: z! B# @5 o- R, X) X
  182. TAX
    ' r' B2 k- u: i" O! K! J
  183. PLA
    " T8 E2 E7 S7 H' |9 K
  184. RTS# L6 F  L! m& V/ B7 W/ ^' A. J

  185. 7 Z9 f. `$ P& a( r, F
  186. button_press:    ;按压操作# @8 Q" p2 p( ~5 s4 D; j, ^6 h
  187. ini_Y:
    % H4 Z6 m7 E' b
  188. LDY #$00+ y: M% X5 J9 W" ]1 a
  189. button_cmp:7 l* h' ^- P$ m) ?- P! B1 b
  190. LDA button,X
    8 @2 Z" n$ y! U+ l3 O; x( N
  191. CMP ora_data,Y+ ?' z2 I4 J. `: x* y
  192. BNE count_Y_cmp; A/ B2 O; u6 T, j7 o3 ?3 b1 D
  193. flag_cmp:/ a: }' ?$ j: M" N' l
  194. LDA flag,X
    ) {- |% a" s. }! f
  195. AND ora_data,Y
    9 q) f3 r6 d$ x0 t$ Q! k2 Z9 Q/ }
  196. BNE flag_and
    1 F5 w: E! V) X" s# `7 S8 S) V
  197. flag_ora:
    , I% g9 z$ i  R
  198. LDA flag,X( ]; Y/ Y. K7 S9 `4 v
  199. ORA ora_data,Y
    & D9 ~  e, s9 h* G% g; D5 h+ F( ^
  200. STA flag,X$ x! W0 P3 T5 `9 y9 v  b1 A! o
  201. BNE count_Y_cmp
    $ J4 m( R/ y' {/ C7 H" k; |
  202. flag_and:
    $ t2 s2 |( H# N) C- W0 `+ ^
  203. LDA flag,X5 `8 Z% Z7 v/ \
  204. AND and_data,Y
    * }) ^) v0 Q8 ?: s
  205. STA flag,X& B( }0 K$ g8 q/ j. u/ A
  206. count_Y_cmp:/ e. K$ m, V: q* i7 n% I
  207. INY
    / c2 m) p( r5 t6 A, A
  208. CPY #$08
    , {4 m8 T: E# z2 b& H% X
  209. BCC button_cmp  J' O+ G4 _9 G+ M
  210. ) E& {, X3 |- ^6 b. F9 c
  211. data_extract:    ;数据恢复
    - y( S6 _/ J9 i2 l
  212. PLA
    4 J: y, x# i! O2 F, k4 i7 p& O
  213. TAY
    * N5 l/ y7 Y- c% q
  214. PLA1 S3 U+ t1 j8 v! b2 e3 I3 b9 W: S) ?
  215. TAX  l- c- I0 m6 b; k+ k
  216. PLA  _. u' w3 U/ y, s7 n5 F# d
  217. - w; o7 \6 E; y; W9 a: i
  218. return:
    , ~+ _! @0 g0 J6 Z, l# j6 V
  219. RTS
    6 i" n, S) Q  o+ i+ x

  220. 6 d! }7 J% p6 ?; l) t' F
  221. ora_data:   ;按键相或数据
    ( }' E7 Z" H3 `# ]! b  M
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10# ]- l2 n8 @& ]
  223. and_data:   ;按键相与数据
    5 k! d% Z( x# ^2 |
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    ' {* y4 x6 N, Q( n

  225. ; l+ x" S% E  \5 _
  226. - e* F# ]- E5 x& ]8 }/ T

  227. : n! `, m8 W/ c- X% l
  228. ; s1 I4 Y# q& l
  229. ) z9 U: c/ A1 `$ c
  230. 3 r8 O* p# X7 Y6 b5 a
  231. " H5 [* u& _  _2 Y1 h9 ~  \+ P

  232. 6 i. A+ P2 T* @- a. L) G
  233. # Z* D# d* _) Q8 ?
  234. .ORG $C264    ;自定义的MAPPER2切页程序
    3 W8 v7 P# P! S# G+ Q  ?
  235. PHA; A, A; a% L' M5 e
  236. TXA
      H2 a- F" @0 S5 G
  237. PHA5 {6 ~, N+ t+ ]$ c
  238. LDA $00668 s/ k% w: I% D4 ^  B
  239. BNE ADDRC280" @! @: q3 ?' `5 y4 w
  240. LDA #$075 i$ O9 U+ X/ r$ B8 Z
  241. LDX #$031 i- k% Q% N1 A
  242. JSR $CD9B    ;自带的切bank方法
    - V. X- g) \8 |* C2 M) X. r! F
  243. PLA% A( {9 S& I# ^$ A0 p  y- y+ S
  244. TAX4 {$ N" M* M; ^
  245. PLA9 d% {+ h! L8 f+ v! a
  246. JSR $8000
    ! A- v: @& U7 Y' X+ `5 X
  247. LDA #$06
    ! E, ]1 z* |! c% A8 u8 u
  248. LDX #$03
    - s7 y5 q; g/ d& [: q# T* ?, `
  249. JSR $CD9B    ;切回原该切得bank(可以不用)
    4 i6 }( h( A6 d$ O  V# d
  250. RTS
    ) H, D$ u6 D( o2 o5 U* b) m) R
  251. ADDRC280:
    ; D( k, F5 r, l1 P$ ^
  252. PLA
    ( u) E2 g* N" F0 G, @
  253. TAX
    5 v' }# R3 e! a/ w1 M. k" Q- Y# p
  254. PLA% e+ o1 X2 U: F, K
  255. RTS$ l7 [, ?$ B  Y& H# e

  256. , F* g8 d$ @) F& Z. z! L4 `

  257. # W9 a# T% f4 D! M+ P/ d
  258. ;[FC][最终任务PPU][END]0 w" s' [7 J% u" F5 p
  259. .ORG $C056    ;跳转到PPU重写程序3 T5 i, k3 R4 {6 N: @) y; I6 W
  260. JSR $7000: t* m% c6 r+ _; p% y& g

  261. ) ^' @  c7 }, S9 ^7 k4 I% L
  262. .ORG $CEBF
    ) {1 h: x" g( ]
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入
    % n" Z$ t+ d' E8 z, J; m9 g
  264.   # F. g$ s, @$ x( }' Q
  265.   .ORG $E460
    8 u! Q3 _( @5 E8 r& p5 I# s1 J
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入
    # h- [+ c: Z! Y' I+ M/ E  P7 I4 P
  267.   
    . h" C1 A$ v: g" F: {
  268. .ORG $71F0
    3 B# c) J7 Y7 w2 Z; y! f
  269. STAGE_DATA_WRITE:
      H; I/ M' G7 W! f6 |9 u
  270.   LDA $60109 i, u/ K1 O  u: O0 M6 O
  271.   STA $1E    ;关卡写入
    " ?: c! B- N4 e3 }8 h
  272.   LDA #$00, W) n1 E. [$ a; H; a& B. h) x
  273.   RTS7 U9 Z( C2 _# |* h; w# d1 T7 J) E* o7 O
  274. .ORG $71C0
    * @/ T& C; Q, N  S
  275. BULLET_DATA_WRITE:    ;副武器数据写入/ {9 W" @: C- t/ a1 E  A
  276. CPX #$0E: Q) d, l+ c6 c; @, w/ C5 U
  277. BCS P2_BUL* M3 ~" m' _' o9 _/ r
  278. P1_BUL:* @$ }! o6 a& M7 {& g0 N
  279. LDA $6004
    2 c0 i. X) ~$ J: j7 ?
  280. JSR $D7D0    ;P1副武器数据写入) X( S" [1 C4 I% M% A
  281. RTS; I- e) x% z) @' u: d+ i6 U
  282. P2_BUL:1 P# {# g) `4 c$ a3 V! R
  283. LDA $6005. r5 ^! w) W% ~' B& \. \' z* [
  284. JSR $D7D0    ;P2副武器数据写入
    & C$ q2 F# G+ k/ I' t3 n
  285. RTS
    ; G8 |2 H; G* v; e7 d
  286. 5 A+ R8 a* X; S5 n" ]* \3 f/ t2 D
  287. 1 H6 W# E$ r& Q
  288. .ORG $7000. y# A2 m3 p4 f! \+ m+ P6 ?) w
  289.   
    7 ?) {) ~3 O9 P4 [# ~( E+ c
  290. STY $4014    ;补上覆盖的精灵写入指令9 @( Y4 ?: ?0 g9 s% g8 z- ^
  291. PHA
    0 i+ o+ q8 O1 y: a; c
  292. TXA  B+ b. H9 L1 K. m& V. j! J; v1 A
  293. PHA
    ! X' C6 R! |2 n+ |- H
  294. TYA
    ( t4 Y# \. R- M; [
  295. PHA6 Y% r' [) `  U
  296. LDA $0C# u  k9 u4 J! e" l( R
  297. CMP #$01    ;比较是否为标题画面
    8 j- m. d/ h' ~0 [$ s
  298. BEQ PPU_STAGE3 L1 N, o# k% {
  299. PLA* q' F6 L0 c% w9 b
  300. TAY/ B; C# Z6 i5 O* w5 g' P4 r
  301. PLA+ ~8 ~  Q7 V4 R4 ^' M5 t1 m% K
  302. TAX
    - P* h+ u% n7 k4 y, K4 Y
  303. PLA! G5 V5 h% ]% _
  304. RTS* h6 H4 T; ?+ Y) |
  305. PPU_STAGE:    ;STAGE显示程序
    2 V7 F" D% ]. D6 F/ Z  g
  306. LDA PPU_ADDR_DATA' L% n, }: \0 l% A" g8 o
  307. STA $2006
    " }: U$ `, u" Z0 ^/ P
  308. LDA PPU_ADDR_DATA+1
    6 s1 A- U1 B( Z& |' I7 s" O' C0 b% U4 a
  309. STA $2006    ;坐标设置
    8 F+ M, l/ G- w% R% a
  310. LDX #$005 T1 z. J0 ]$ O& G1 w) l
  311. PPU_STAGE_WROTE:    ;写入STAGE字模( B: d1 t. N5 f/ Y/ t2 q
  312. LDA STAGE_DATA,X
    8 f, {# k2 ?0 r$ n
  313. STA $2007, j8 l; v. L. r" U. u6 Z
  314. INX
      }7 H2 i- ^) ^6 x. S$ j5 s
  315. CPX #$06
      Q* K; U9 C0 l2 u
  316. BCC PPU_STAGE_WROTE$ s' t8 V1 `+ m6 d
  317. LDA $6010. Y! ~/ Q3 W. n6 }+ C  S
  318. CMP #$FF    ;关卡数据初始化条件判断
    ) Q% |& k2 d$ v+ [- {2 k
  319. BNE KEY_B
    2 Y$ v. O$ s  x( g! q% a
  320. LDA #$00
    & M$ r, z4 x4 _! F7 q  w4 a
  321. STA $6010    ;关卡数据初始化8 }, c3 c* w) F. O/ \( \  W. V
  322. KEY_B:    ;关卡减少
    $ p0 d/ _* D8 V9 a- W3 h4 i5 {
  323. LDA $04+ v* V2 T( V- B. \
  324. AND #$42    ;按键B或左减关
    & \1 K% |; q6 J! o! p( w8 h+ j
  325. BEQ KEY_A: X. e1 S0 u$ O; S
  326. LDA $60103 ~; M" p# d4 ]
  327. CMP #$00    ;关卡比较) ]8 t5 l! w8 k# V4 ~) S
  328. BEQ KEY_A0 N& H, ^8 t! D3 j. \: _
  329. DEC $6010   ;减关
    ; U) _6 F. X* U; y" q% |
  330. KEY_A:    ;关卡增加
    : r9 W, C- R7 \9 P. w# T4 C
  331. LDA $04
    5 \+ G5 ?7 z! F" i
  332. AND #$81    ;按键A或右加关) i* p. T( P  S/ b, z/ c
  333. BEQ PPU_NUM_WRITE
    6 t1 c0 K0 p! {0 V" q/ x3 G( b7 R+ V
  334. LDA $6010* U6 l$ H( X1 e/ p: a! t( A( D
  335. CMP #$04    ;关卡比较
    & }( \, x6 ]! W+ V/ A
  336. BEQ PPU_NUM_WRITE8 \  Y0 ?- W) }+ t/ J! r4 ^" P
  337. INC $6010    ;加关
    & b& p( n% r5 ~& w, F2 J, w
  338. PPU_NUM_WRITE:
    8 X) c- `: D6 A% ~3 l" F* v. D
  339. LDA $6010
    0 X# i; R7 O& v8 [1 Z" t
  340. TAX
    , K+ Q7 V5 a+ D7 V% {* b
  341. LDA STAGE_NUM,X    ;写入数字
    : a) b: Y# r8 g0 K; G2 @
  342. STA $20079 r  s5 ~& |9 F0 K7 O) k3 B
  343. PPU_RTS:5 E- k  E8 J! |* _2 {* a: t
  344. PLA" ]0 M( W$ N3 ]7 G& Y
  345. TAY
    4 W9 d/ ?0 z8 e& f% ^  w$ p5 b; @
  346. PLA, A5 |$ e: b# Y: L! w% E
  347. TAX! B: |/ g2 x& w3 W+ Z# _4 W/ ], m7 j  i
  348. PLA2 V! T: T. C/ H  v
  349. RTS# m7 l6 e1 y- t! Y4 n

  350. : h: G+ j* J; i
  351. * _$ E' `$ B( q
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据
    : Y/ [% x7 K- Z; {4 n
  353. .BYTE $EC,$ED,$DA,$E0,$DE,004 r0 k% V) U% _: x1 l% i
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据' H$ V2 y/ k" \
  355. .BYTE $D1,$D2,$D3,$D4,$D57 {' E! ]: d! @: _$ c, e7 O

  356. 4 A( n/ N3 A) R/ k, q+ G6 _2 q% _
  357. PPU_ADDR_DATA:
    4 ^* L% L2 d* ]  A' M4 w
  358. .BYTE $23,$0C/ Y8 y5 e3 y: o- P: _

  359. ! v/ }' X! V$ f: {8 d% x
复制代码

本帖子中包含更多资源

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

×

评分

1

查看全部评分

[发帖际遇]: yandagui 发帖时在路边捡到 5 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 1622 天

[LV.Master]伴坛终老

发表于 2017-3-29 01:16:54 | 显示全部楼层
感谢分享!支持!
回复

使用道具 举报

签到天数: 187 天

[LV.7]常住居民III

发表于 2017-3-29 09:18:26 | 显示全部楼层
感谢楼主的分享
[发帖际遇]: dabayu整理箱子竟然翻出了 1 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 343 天

[LV.8]以坛为家I

发表于 2017-3-29 10:12:16 | 显示全部楼层
最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊
[发帖际遇]: nianxu踩坏了花花草草,被罚款13 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 2366 天

[LV.Master]伴坛终老

发表于 2017-3-29 10:20:54 | 显示全部楼层
感谢楼主分享新游戏
回复

使用道具 举报

签到天数: 1117 天

[LV.10]以坛为家III

发表于 2017-3-29 11:12:57 | 显示全部楼层
这个就是所谓的空中魂斗罗!网上有大神修改很强大的!感谢楼主的分享!
回复

使用道具 举报

签到天数: 852 天

[LV.10]以坛为家III

发表于 2017-3-29 11:31:41 | 显示全部楼层
好东西,收下了
[发帖际遇]: kexiao1223花17 个 柠檬买彩票,血本无归T_T. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 2050 天

[LV.Master]伴坛终老

发表于 2017-3-29 12:47:42 | 显示全部楼层
这是那个空中魂斗罗么
[发帖际遇]: 找不到服务器 被钱袋砸中进医院,看病花了 4 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 57 天

[LV.5]常住居民I

发表于 2017-3-29 17:08:41 | 显示全部楼层
支持,楼主非常棒的实例,拿回去研究了,多亏了楼主,fc的很多东西都已经不再是秘密,我们这些后来者也可以做出更好更棒的作品,非常棒的教程!还是那句话:非常感谢!
[发帖际遇]: 曹的爽 打扫环境卫生,被奖励 6 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 3161 天

[LV.Master]伴坛终老

发表于 2017-3-29 18:15:17 | 显示全部楼层
感谢楼主分享!
[发帖际遇]: afti 在论坛发帖时没有注意,被小偷偷去了 5 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 1783 天

[LV.Master]伴坛终老

发表于 2017-3-29 21:34:32 | 显示全部楼层
楼主厉害,顶一个
[发帖际遇]: pp12辛苦发帖,赚了 1 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 39 天

[LV.5]常住居民I

 楼主| 发表于 2017-3-29 22:16:40 | 显示全部楼层
nianxu 发表于 2017-3-29 10:12
2 U1 z* X: `! U最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

* ?3 g2 P. m* B0 Z8 ]' x已经加上了,赶紧下载吧
[发帖际遇]: yandagui 乐于助人,奖励 2 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 2060 天

[LV.Master]伴坛终老

发表于 2017-3-30 00:00:09 | 显示全部楼层
这个不是空中魂斗罗吗?。。。。。
回复

使用道具 举报

签到天数: 39 天

[LV.5]常住居民I

 楼主| 发表于 2017-3-30 12:58:51 来自手机 | 显示全部楼层
是啊,为何叫空中魂斗罗
回复

使用道具 举报

签到天数: 179 天

[LV.7]常住居民III

发表于 2017-3-30 19:35:27 | 显示全部楼层
旋风又疯狂大修改了 哈哈
[发帖际遇]: 九月鹰飞 打扫环境卫生,被奖励 2 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 39 天

[LV.5]常住居民I

 楼主| 发表于 2017-3-30 21:45:08 | 显示全部楼层
九月鹰飞 发表于 2017-3-30 19:35
, L2 d8 T1 t- |* ^' S旋风又疯狂大修改了 哈哈
& K2 y0 n- e+ x5 C+ t5 K- ?
疯狂不起来,无聊了而已
[发帖际遇]: yandagui摆地摊卖菜,占道经营被城管罚款 2 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 48 天

[LV.5]常住居民I

发表于 2017-4-1 07:52:40 | 显示全部楼层
非常好的修改,感谢分享。
[发帖际遇]: 一个袋子砸在了 cococo8858 头上,cococo8858 赚了 5 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 39 天

[LV.5]常住居民I

 楼主| 发表于 2017-4-2 20:43:27 | 显示全部楼层
没人看以后都不想改了
[发帖际遇]: yandagui摆地摊卖菜,占道经营被城管罚款 4 个 柠檬. 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 666 天

[LV.9]以坛为家II

发表于 2017-4-2 21:50:46 | 显示全部楼层
Thx for sharing
[发帖际遇]: tom55473220 捡了钱没交公 柠檬 降了 1 个 . 幸运榜 / 衰神榜
回复

使用道具 举报

签到天数: 71 天

[LV.6]常住居民II

发表于 2017-4-2 22:06:54 | 显示全部楼层
路过帮顶,呵呵,真是好作品。{:4_144:}
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-25 06:57

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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