EMU618社区

 找回密码
 立即注册
搜索
查看: 3112|回复: 53

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑
( z1 E, o# j# ^
1 N, X1 r) A! W8 [    [FC][最终任务][END选关]
+ E( B0 R- V0 Q" `$ {" E
4 E4 q+ ?1 U# ?1 u" o时间:2017.3.29% S- H; [( g2 }3 v) v
作者:FlameCyclone- ]) M1 @+ @* m* N' g% T' b
内容:
. n% J  J+ m1 a, v: @' S$ G- D% t    1.关卡选择:   标题时,左或B减,右或A加(1-5关);
0 y! J) M0 o% j$ q& s% |    2.无敌锁定:   暂停后,按上键切换;
. A7 i1 s- X8 z, R8 J    3.生命加满:   暂停后,按下键切换;
5 B9 I6 x& j, H% _0 C% N" D& g$ f5 p2 y    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);2 Y9 n6 O6 z) c+ }& k
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);. V. `* C# Z1 S) z- n
    6.B弹数量:    暂停后,按A键切换(1个或2个);  N$ [* n  @8 K) k, x! c
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;
& ?# O  x. `7 F! Q8 z5 J8 V! m6 U) @) S6 u$ {7 o+ f. C7 X0 P

- I/ Z1 p5 a) o3 w* Q8 g9 o# C' [) t/ d- c4 b' y9 K& M

- y5 T2 q4 b' u( f: K# o" }4 f( h: ]6 k; b; h( F2 s1 I2 s- ~

6 W3 y, k8 s% ?/ V! `
游客,如果您要查看本帖隐藏内容请回复
2 }7 }! u6 M6 M* q* b
FlameCyclone.ys168.com2 j( M- m$ w" e$ V
www.nesbbs.com
  1. ;[FC][最终任务KEY][END]
    ' P  g" j( ~( I
  2. button = $04    ;单次按键/ T. [% H% p$ T; ]! I
  3. flag = $6000    ;功能开关标志  @; [' l$ Y' i) q" c  I# y3 l& Y
  4. pause = $000E   ;暂停地址1 G% H$ U9 H! \4 F/ r, ?
  5. . C) Q% s( E& o9 R& J
  6. .ORG $8000
    * W# ]" |) T5 e* T$ Z$ p+ D7 H# I, e
  7. LDY #$08    ;自带的按键程序
    ! L$ D" z: Q( K" C" `* m
  8. ADDR8002:
    # b9 g/ B5 I0 @  `7 d$ J
  9. LDA $4016,X2 N& \/ n% e# j- I8 R/ e6 O
  10. LSR
    ( t) x3 j; G. J. {
  11. ROL $0021
    2 i! {! i; c/ W
  12. LSR) R; C7 h) u1 k! `; t/ J2 W
  13. ROL $00296 M: e# I# P0 F5 C& `# r) t
  14. DEY
    . d( P& q% r1 Y+ T) K# P2 [
  15. BNE $8002
    2 T  K1 ]  Q2 ~" R* `6 E1 A3 l
  16. LDA $0021$ y% J- F  e+ _2 g- G( i; Q
  17. ORA $0029! _- C" V' V7 ]: u0 ^  t
  18. STA $0021
    % O) I( r" g7 W, z
  19. LDA $0020
    ) u0 m: Z; _1 W0 ]+ c. I6 q
  20. AND $0021% ?8 [* ]2 [# P9 }
  21. STA $0020
    , d- u2 b1 z, L! V. @- C
  22. LDA $06,X( k1 E9 M& J; @1 a+ e
  23. EOR $0020- `' J1 C: a' s
  24. AND $0020
    2 Q2 @* O2 N2 |; c
  25. STA $04,X7 h) ]# h# j6 b. g  t
  26. LDA $0020
    % c3 q* w& k. |; D' O, N0 Z
  27. STA $06,X
    $ e7 t- Z, [3 O3 |+ P7 Q  s
  28. JSR KEY_OPERATE
    ( A+ S: u' v* ]4 S; i5 a) h) R! e& `
  29. JSR Function    ;功能调用* z; m5 V, a" j! n2 d' B7 u  L
  30. JSR Weapon    ;武器切换调用
    " L4 t1 |# l; i3 y7 L5 Z: e$ y
  31. JSR Power    ;威力调用
    % E5 h- j4 E6 b- v4 V( n
  32. JSR BULLET_NUM    ;子弹数目( U0 @  v4 i+ O) ~) s2 V
  33. JSR BULLET    ;副武器类型, o; ?- v: N1 z2 O, h. O
  34. RTS0 A2 i" {8 k2 H; y

  35. - s# D3 n. j; G2 z0 w3 @, ], M5 y1 [" y
  36. . t- d" q- K/ K) U2 F- s6 q. k" u

  37. 9 V9 x$ h8 j4 [; c$ M
  38. .ORG $8050
    ( U; e& _' h" H. ^" H" s5 s
  39. Function:    ;功能
    2 R2 S) h2 ?1 i# G
  40. WUDI:    ;无敌' N1 T" ^$ L. Z+ w
  41. LDA $6000,X
    ; H* f$ Y9 [3 U" G
  42. AND #$08    ;开关判断
    0 Z+ h# M( }- X. @
  43. BEQ LIFE' \  f8 r- w" F
  44. LDA #$05
    3 \8 z- ~" Q1 b! z  y
  45. STA $05DC,X    ;无敌锁定+ q$ j( P! B9 P8 g; N
  46. LIFE:    ;生命! i; ~' I# U" F  F. K3 U2 I$ g) T# G
  47. LDA $6000,X8 x; b/ k% u; e2 I$ O
  48. AND #$04    ;开关判断
    5 i( m- p( N5 o7 y- K, V
  49. BEQ FUNRTS# l5 T% z" [, Q$ B5 t/ o5 L
  50. LDA #$05
    ; ~0 t  ]& m  J; A- G0 Q  f1 |( X
  51. STA $1C,X    ;生命赋值, e0 l) \! \+ [( S3 N/ l- ?1 G
  52. FUNRTS:
    - X8 |  E; X6 a% H& n" v
  53. RTS
    1 q$ |! t' P7 q/ [5 D/ v+ J! p
  54. ! |* j# u( [! h" ^
  55. Weapon:    ;武器切换* R( D" N  S2 G# j5 ^7 n( T
  56. LDA pause    ;暂停状态判断
    9 ~# Q, b. j) N. B
  57. BNE WEARTS
    & H+ L& d; E* C+ Z
  58. LDA $04,X
    / q& o, O& X/ v# \7 p6 y6 S
  59. CMP #$20    ;选择键判断$ ?6 n! ]- e( n/ c' F' p. J
  60. BNE WEARTS8 d0 z+ a) Y" H9 N( e) P7 T% r% G# R
  61. LDA $12,X4 f& T( @3 k7 ~! R5 T9 S
  62. CMP #$03    ;武器值判断4 d+ I/ p. a* y& V/ U
  63. BCC WEAINC
    " ~' [0 Y5 j0 H" r4 r3 p
  64. LDA #$FF3 T* v  F/ [4 E) P
  65. STA $12,X    ;武器重置
      ~; l* q# `5 m! t
  66. WEAINC:
      U7 p, h2 _9 d: x9 j, r: s/ r5 S
  67. INC $12,X    ;武器增加+ N/ W. Z1 m+ y
  68. % c  Z; q9 F: o& L
  69. WEARTS:
      t( d/ E  I6 D/ r4 e. \/ |1 J( J
  70. RTS
    7 B& B/ r+ b- Q6 C& `; @
  71.   d: C0 H) D* v" ~+ j8 l( ^
  72. Power:    ;威力; z+ X5 v% b) p: D" A1 W1 {! Y
  73. LDA pause    ;暂停状态判断
    ) d2 }( b' E6 a0 P8 U
  74. BEQ SPERTS
    ! p! Q1 C7 ^; U3 r& E! c' Z
  75. BUT_LEFT:
    & G3 F  Z4 Z. e, _/ f4 N: C
  76. LDA $04,X. d8 m' L+ K* M* W) i" S  V
  77. CMP #$02    ;左按键判断2 S6 _( i4 G) z1 {* l+ q
  78. BNE BUT_RIGHT
      B$ i: g9 S" K6 G1 z6 v  C% ^
  79. LDA $88,X
    9 o6 I1 S  v! W4 I, ^# `* {# U
  80. CMP #$00    ;威力判断
    6 {/ W8 g: t4 q4 D1 I' B  x/ A/ ^+ k
  81. BEQ SPERTS0 D# d' I  P/ F  q; M
  82. SPEDEC
    $ [9 L: u8 h6 F1 _& A7 j! P
  83. LDA $88,X    ;读取武器值$ h) X9 K2 J4 l/ ^; Y1 A% h
  84. SEC. |' X2 ^5 \9 W& F" f
  85. SBC #$08+ t" ?  E6 {; `) o) r1 U) `
  86. STA $88,X    ;威力减小
    + ?$ y7 t, N8 _: Q) L+ C% [
  87. BUT_RIGHT:6 x9 L- N6 c( B9 |( ^
  88. LDA $04,X, {0 D# Q/ F' X! B0 ~. v
  89. CMP #$01    ;右按键判断
    4 F/ c5 h& d$ g9 m9 r% ?. q
  90. BNE SPERTS% d1 W; Y& L2 [( h* u, V
  91. LDA $88,X
    6 ~, V, R  _! Q; b, O
  92. CMP #$10    ;威力判断
      {0 g) {  J6 h* `5 C" v& s$ }
  93. BEQ SPERTS& H& k7 F* R! j2 C$ P
  94. SPEINC:
    # b( z& s% W8 u+ C3 S6 H& |  e
  95. LDA $88,X    ;读取武器值4 C* w& B+ N- }) S4 A  X+ G
  96. CLC) b8 J7 [, U6 g) Y
  97. ADC #$08: f5 Q) Q* p4 O: x3 g' A
  98. STA $88,X    ;威力增大! J6 _! [5 a4 Q+ ?

  99. ; E) [5 ~" ]# z; ~' X
  100. SPERTS:$ w$ K" K2 _7 N: Z3 @; ]& X
  101. RTS! v2 K7 ~/ c6 A' |1 l
  102. : L' B( f8 A2 v
  103. BULLET_NUM:    ;子弹数目
    $ d0 l0 e( n5 T$ C6 I6 E1 a
  104. LDA pause    ;暂停状态判断) e. O1 q7 F2 n+ Z) P1 J$ K0 A; w
  105. BEQ BULRTS
    * k& C* H  w! P+ K0 Z- Z+ B5 I
  106. CPX #$00    ;主机玩家判断
    8 V% u8 z- _7 F; e, d8 s
  107. BNE BULRTS/ y( r" V2 N+ Y+ V  u7 \
  108. LDA $04,X    ;主机玩家判断0 ^$ Q( `9 X! k; @( n! r; N
  109. AND #$80    ;按键A比较
    8 }1 |% l! Q" @$ e9 A. C* s' O
  110. BEQ BULRTS7 `5 _0 M5 N! @  F1 ^
  111. LDA $87    ;状态判断( p7 J* A$ b7 N2 R8 N
  112. BEQ BUL_2
      m$ b) e3 h8 i2 ?1 ~& ?/ C
  113. BUL_1:
    $ m* V( t2 [8 U+ i( i( M
  114. LDA #$00: U+ P6 p- G# [/ c3 r/ B% c
  115. STA $87    ;1发子弹
    * F, [0 R% c0 W" D; h
  116. BEQ BULRTS  A4 f* w  `9 M( c' u) c( C4 h' g
  117. BUL_2:& J' z% P" r0 A$ t" x
  118. LDA #$01* _  z, E( R5 w/ ^% ]1 n" L: T( A. q
  119. STA $87    ;2发子弹
    : N% Y, B7 z" {" q
  120. 6 D3 r0 ]! O* J' y
  121. BULRTS:- x! ^0 P) t5 k* F5 b2 G9 V* z( s
  122. RTS( Z4 Z- M! L( g9 t% f8 w

  123. 7 H# `# G; M) J. ^0 O, S5 Q! r

  124. % Y$ `1 Y9 r/ J9 @" j0 A2 ?
  125. BULLET:# C" ]( i4 F5 I- L5 K( s
  126. LDA pause    ;判断暂停状态
    $ G1 _- P! ^5 c5 @- H: k
  127. BEQ BULLETRTS
    : `, |% O4 i( v/ R, m+ l
  128. LDA $04,X$ y. h& p, r4 x# p  t3 t% k8 q6 T
  129. CMP #$40    ;按键B比较4 T8 c4 M5 R* f6 W) X( B
  130. BNE BULLETRTS
    7 r6 o  Q  c8 y: |' R/ Q: L
  131. LDA $6002,X    ;读取副武器: o& i, g  [* r- V' w  o2 u8 c
  132. CMP #$03
    2 k- X* Q4 F' S+ g" d; f. S
  133. BCC BULLETADD. M0 K7 D) T$ c; }( A  Q. z
  134. LDA #$FF9 X5 k% b& y5 s3 A! r. S
  135. STA $6002,X& r2 e: ^/ G6 |0 y" w' A5 f. e
  136. BULLETADD:+ ~9 u, z1 a8 j4 U0 {' q
  137. INC $6002,X
    + _* M% S& g( g3 Y

  138. ( b! p- G1 T  m7 @+ k: B* u
  139. BULLETRTS:
    * Y) B/ O5 W" P% t& K
  140. LDA $6002,X0 @' C. m. _* i
  141. TAY
    ) Y7 C4 M: P: N$ Y/ C
  142. LDA BULLET_DATA,Y' c: \! O; b9 ~6 W! s0 r8 y
  143. STA $6004,X    ;写入副武器数据
    4 G; u; u& n5 C8 L* c  S+ C
  144. RTS
    - n; D; B% N: L1 D' y! I

  145. - d' S' `2 b/ x0 x' ?( }
  146.   N9 G1 P% E' f' L
  147. BULLET_DATA:: T% U+ Q, Q; |) d
  148. .BYTE $06,$02,$03,$04' O; [9 K7 [* w: u. c

  149. 2 R+ R$ Z" e% B+ _) \# d2 j
  150. 8 [9 ~" O. p- f# K) {6 r

  151. ) @5 z1 O% g9 H4 O: I
  152. KEY_OPERATE:    ;按键开关操作
    : C1 `5 i; g- @/ f% B4 q- ^
  153. data_protect:    ;数据保护' H; p) {0 S  c
  154. PHA3 x4 \" g; v' T+ w0 C* ~
  155. TXA
    - w" E3 f1 H1 I6 s
  156. PHA6 O3 M, _7 y, u0 [0 X
  157. TYA. z/ m: r1 i# r9 J6 y
  158. PHA
    ' b( ^4 l$ Z* S) [8 r
  159. 4 Y+ O# T% c' s/ r7 J' f) T
  160. FLAG_INI:    ;开关标志初始化
      O# Q. z# h6 ?# Q$ W

  161. 9 d/ J7 i6 ^; y
  162. LDA $600F) G+ q9 t- E$ E# n/ l: }& s/ W3 `
  163. CMP #$01
    4 {4 y5 I: d+ h% x  C
  164. BEQ pause_cmp9 W' K, j) U) M5 w6 D8 g5 z# H( S
  165. LDA #$00
    " E0 x3 z  Y7 i4 t
  166. STA $60008 S2 n4 p) w& }7 X' z4 p9 t
  167. STA $60013 o( m# o9 ]+ V& ?$ c2 `- M
  168. STA $6002
    ! k1 D% @1 k6 ~: ~7 Q
  169. STA $60031 C9 Z/ v9 q% U9 \. l% p
  170. STA $6004
    1 C- P4 J% ^7 I
  171. STA $6005
    ( ?9 K- n. m  h, w
  172. LDA #$01
    8 j2 v* g6 z/ C! }/ x1 B" M6 s
  173. STA $600F
    / O! ~/ l7 d+ F

  174. " U4 y) z7 q2 |, ~. \) l2 O) |2 n, }
  175. pause_cmp:    ;判断暂停状态  R. C$ A2 y* G( d" [- e* U
  176. LDA pause+ L2 a4 t) u$ d3 V
  177. CMP #$01    ;判断暂停状态+ x" g! Y3 Q9 Y6 g% U
  178. BEQ button_press
    5 l5 L. V* I, u
  179. PLA: k! y  m+ ~- i, J8 L. M
  180. TAY& [( x8 h5 ^+ ?  E. N: c
  181. PLA
    - O9 R1 o7 ?. @3 \2 m5 d3 Y
  182. TAX9 D- v1 i7 ]( V, V' A- P% n$ F
  183. PLA3 a' r2 Z. F' d) ~( u( _8 g
  184. RTS
      a, s- _* V2 s$ d6 N

  185. / x8 l# z* a8 x( O, a' W
  186. button_press:    ;按压操作& K+ z1 A) @- @4 z$ [2 k
  187. ini_Y:& W0 J3 Y  c0 Z0 w& w
  188. LDY #$009 ~& O  D) J3 i# J9 w+ d
  189. button_cmp:
    # y! P' F% b# [- ]
  190. LDA button,X6 S/ y4 Q" B& [8 r8 p3 A# J8 C
  191. CMP ora_data,Y8 p! {: b$ H% _, k+ W
  192. BNE count_Y_cmp, O- W/ q# G. ?3 P' Y0 p
  193. flag_cmp:8 |$ o7 b( j0 @* w! L
  194. LDA flag,X& [# L. R$ Q; `( O; ?; D, T4 Y8 {0 f
  195. AND ora_data,Y
    ! a' l0 [6 ]3 {$ S' I, \5 {- p" }8 S' E
  196. BNE flag_and) U3 q; T* W8 g3 \4 u0 m/ Y( x
  197. flag_ora:; f5 t- N9 C2 T8 `
  198. LDA flag,X
    / c" r- V+ D( P  X1 w; a& l0 h
  199. ORA ora_data,Y
    0 a8 p2 U# c; r  K) Y7 i; N
  200. STA flag,X
    8 T5 a2 }! ?6 I. }- |& t; d9 l
  201. BNE count_Y_cmp
    ( s2 Z7 P4 b- M! d7 V. s( y2 J+ S
  202. flag_and:
    7 u1 I1 ?% S, K$ D, S0 `% U5 C
  203. LDA flag,X2 x% S2 c3 y$ k& j* u
  204. AND and_data,Y
    / @! P: r: ]1 A- Z9 |# M
  205. STA flag,X! |( X) f& y$ a- \% ]! Z+ W4 N( W
  206. count_Y_cmp:+ |1 M; N/ A, J9 _
  207. INY
    ) B) q2 j9 \* f3 [+ f# H
  208. CPY #$08
    9 T+ j4 u7 F. K
  209. BCC button_cmp9 j9 S: ?/ x6 ^2 A
  210. 6 A/ F. ]2 _, p1 k
  211. data_extract:    ;数据恢复( Q- K) S4 G# Q
  212. PLA
    , i& T7 B2 x0 J* c$ |
  213. TAY
    ( |' D3 u4 m- k
  214. PLA
    ' e$ o) d' P9 h+ y* _# b
  215. TAX$ [8 w& h1 _* k+ H7 c* |
  216. PLA  [3 w: N+ G4 p& u3 V7 Q
  217. 1 q* I* v: x) e" K4 L  M6 p" X3 m
  218. return:
    ( j3 z5 `+ a! f- W
  219. RTS# C/ t* n/ x) P# y
  220. ! S1 T( i3 l+ E' _+ U  G
  221. ora_data:   ;按键相或数据
    - ?& p1 q, o& n3 \
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    ' [' F; F& z" N4 ?
  223. and_data:   ;按键相与数据7 H4 L6 O$ S& e5 v: X2 n, K
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF% }. S. d" ~4 S! l" W8 l* h+ |  |
  225. $ D' U) d/ o4 n* U4 ]) D

  226. 1 c  z4 \8 w# \* Z# ^9 w: t' y

  227. 0 _4 c- Z5 d5 O; x5 a& v- ]

  228. ; N/ `" K& t' q
  229. , o2 S; j5 U* Y6 S* S4 k# h
  230. . E" Y& n8 S: r, W

  231. ; t2 A6 {" D- B9 z4 u( |$ d

  232. ) d- S( H3 _6 t7 N6 I; p& e0 j
  233. 7 K- B8 g" W6 ^4 h* g! J9 ]
  234. .ORG $C264    ;自定义的MAPPER2切页程序
    ( G5 k9 W8 Y2 [+ H. r4 M0 `
  235. PHA
    ! ]8 c8 V  Y2 e( b" `) ~, p2 O) T
  236. TXA' m+ }( j: Z4 y# n9 K% c
  237. PHA) e- R/ ?  C) Y2 g5 {: E) T
  238. LDA $00666 f. k. v; l0 p. }" Z( S. `
  239. BNE ADDRC280% J4 l- Q! _! e+ U" v. R0 U
  240. LDA #$074 ~' p* Y* {& k1 L- r
  241. LDX #$03* v5 s& q# A4 w3 A
  242. JSR $CD9B    ;自带的切bank方法- k+ E7 e" i0 ^, K2 B8 i  W
  243. PLA
    2 M6 |' Y# B) j1 F, y: D# a( x4 Z; w
  244. TAX
    $ m# M3 q- t& ~  q
  245. PLA
    . j9 x5 x/ h! c5 ?% K  v
  246. JSR $8000
    & G& B4 w: ~% U# Z9 J* P
  247. LDA #$06
    9 `" r# ?2 g1 d+ f1 ~8 _% e# z% D9 [6 j
  248. LDX #$03
    6 A: U& r  k" ~  Y( R( f6 F. v
  249. JSR $CD9B    ;切回原该切得bank(可以不用)7 d+ X) n. l4 \) f
  250. RTS/ ?- m( L& @7 u6 M  |+ k' u
  251. ADDRC280:6 a, [9 @; l/ j  D% n
  252. PLA- {/ o1 F6 U% i  J' n/ c( ]
  253. TAX
    0 d  }% Q; H% b1 k
  254. PLA
    % ]' b# C. ]/ G5 ^; J
  255. RTS
    " ?7 G: M/ _- |7 D

  256. % r9 P7 }0 e* {- X# N% `8 ~* F% M$ g

  257. 0 h1 p* ]$ }1 D7 X
  258. ;[FC][最终任务PPU][END]
    4 L$ d; ?) B9 m( p) C
  259. .ORG $C056    ;跳转到PPU重写程序
    2 W, R" z3 w1 C2 u. Y3 q5 Y; [
  260. JSR $7000
    9 u9 g/ L! b2 s+ b8 {+ R

  261. & X8 y4 h7 [. |1 x3 s
  262. .ORG $CEBF- `* z( E# o; w8 E) `  ^* O
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入# |' b! ^# }, ?% K1 f
  264.   
    & ?! F# T0 V) p
  265.   .ORG $E460
    2 t+ O0 H) y5 T: N, G
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入
    8 s+ Z: t3 p, t0 m3 l3 x
  267.   ' e% t# C" M/ ~- U- k
  268. .ORG $71F0
    ; k2 x4 b! ?& e- I/ L7 @- ^7 M
  269. STAGE_DATA_WRITE:
    3 E7 x  h4 e2 ^2 ]* Q
  270.   LDA $6010% d# b) T; d# E# ~9 B: d
  271.   STA $1E    ;关卡写入) M$ P1 g& u% ^& M! [' Z3 H" d
  272.   LDA #$00$ M9 Y1 Y# v/ J# f
  273.   RTS
    " ^, T" _' s% X3 A
  274. .ORG $71C05 i- {& O, q% K
  275. BULLET_DATA_WRITE:    ;副武器数据写入! F. W  _. r, l) {
  276. CPX #$0E0 _! [2 Y- J# @% f+ P7 M* F6 ?( \
  277. BCS P2_BUL1 m: j2 C6 G. d7 ~
  278. P1_BUL:
    4 O: h) e$ O5 E2 b2 E2 ]
  279. LDA $6004
    # g- U# n# ~' B' E
  280. JSR $D7D0    ;P1副武器数据写入
    4 j- J9 z, L# q- e( ^
  281. RTS* w" v" E  {  q& L/ g
  282. P2_BUL:/ X. }8 N9 E+ ~& u5 w
  283. LDA $6005
    . g2 o/ c- [4 u$ T
  284. JSR $D7D0    ;P2副武器数据写入
    % R8 {; K& S; r8 b4 T
  285. RTS! N" L& f! Q+ d0 W0 ~+ u7 Q- f

  286. 3 ~0 ?1 X# W4 }# [% M
  287. 5 T4 i. h3 V" `1 I6 L
  288. .ORG $7000
    4 \4 P& `0 [1 z% K" p0 u. w
  289.   
    & K. Y; M8 V- Q* W- b1 b7 d
  290. STY $4014    ;补上覆盖的精灵写入指令' p9 N" x+ b; D1 [, f7 D% \
  291. PHA
    1 p& ?7 B# \: T: m( u$ r
  292. TXA& X( g7 Y: ?% d; \
  293. PHA4 r" R7 {- `. t. O6 s
  294. TYA; w- o5 h  q! x! Z* I1 P
  295. PHA* m0 N3 Q$ n7 P) P* g2 b
  296. LDA $0C" }, |% }2 ^( B5 d5 l3 d
  297. CMP #$01    ;比较是否为标题画面
    ( F5 s' v$ F2 R  d9 A% ^
  298. BEQ PPU_STAGE) p- z2 N9 i8 z+ k* \& |/ @5 c
  299. PLA
    . {# P& ]4 T6 D  ~: A$ k) D# q9 m+ v4 r
  300. TAY
    4 U7 s" C# X, ]2 e
  301. PLA1 a4 X8 a1 m- f/ K0 m: W' w7 y
  302. TAX
    8 p9 ^6 L- }) w  S7 G
  303. PLA8 g5 C, C. j9 T/ ?1 H" N
  304. RTS
    * e: v! @2 U7 r( O. d2 f
  305. PPU_STAGE:    ;STAGE显示程序5 |: J  k3 N# @1 A; p
  306. LDA PPU_ADDR_DATA
    . |0 F# T, v. t& \
  307. STA $2006
    . V) y& R# k. l" [/ g
  308. LDA PPU_ADDR_DATA+1% I. v. G) Q. ?8 T+ n
  309. STA $2006    ;坐标设置
    4 p0 z* z2 I& [, q$ v
  310. LDX #$00+ Q0 N0 D3 |, w9 v
  311. PPU_STAGE_WROTE:    ;写入STAGE字模. z% s- Y1 _0 M# I! _2 s
  312. LDA STAGE_DATA,X8 q, `! M& N, U; E) p5 K" \' ^* t
  313. STA $2007
    ! D% j7 I1 S& X! [+ b2 p
  314. INX' c( c, Y1 S0 j7 ?/ e
  315. CPX #$06/ z* y. x% e% [/ R0 e6 S& K
  316. BCC PPU_STAGE_WROTE. K9 \4 F5 w1 A/ R5 Y/ Y
  317. LDA $6010
    7 g! i7 v8 f0 @2 X* m7 y0 O
  318. CMP #$FF    ;关卡数据初始化条件判断3 G* [/ t. B: H! Y* g" o" ^
  319. BNE KEY_B# G, Z5 m6 O" ~0 B5 g1 f7 R
  320. LDA #$00
    ' {$ |0 q! _+ h: J: _  ^1 R
  321. STA $6010    ;关卡数据初始化5 @# [- f" h* u' f$ @
  322. KEY_B:    ;关卡减少
    ( P; ]+ J% m8 E
  323. LDA $041 Y- G* v9 w* W4 u+ Y1 U$ W( e
  324. AND #$42    ;按键B或左减关
    8 F5 @: `  n( |% ?- u
  325. BEQ KEY_A
    & N5 X( b2 V/ F! w
  326. LDA $6010% E/ R/ A# J" t  j! _1 f% ~
  327. CMP #$00    ;关卡比较7 c6 b5 X1 ~3 B: H3 g# s/ S
  328. BEQ KEY_A" U" D" w" @/ f8 k" M- R- R* |; @
  329. DEC $6010   ;减关# V7 B  ^' c+ s) [$ ^
  330. KEY_A:    ;关卡增加
    0 `5 e( K% }1 W4 T& o
  331. LDA $04& [  w" I: f) H$ g( j" X
  332. AND #$81    ;按键A或右加关
    ( O9 K5 P& }+ {/ a3 X3 T
  333. BEQ PPU_NUM_WRITE
    ) E- }6 L% [2 f
  334. LDA $6010
    % x! f# \- o% Z9 O) s# v4 j4 s2 g
  335. CMP #$04    ;关卡比较
    * Y& ^7 [/ b1 M$ |8 w4 a+ [- b
  336. BEQ PPU_NUM_WRITE& ^/ F0 ?+ J" Z# D& x* y
  337. INC $6010    ;加关- @' L7 }; U7 V! u4 w1 {
  338. PPU_NUM_WRITE:
    & H* `. s  g( q6 n
  339. LDA $6010
    . Y5 H0 e0 T1 ?, t& I
  340. TAX& p& ?0 A+ a0 h% m6 r/ l, E
  341. LDA STAGE_NUM,X    ;写入数字* J; O  o. Y% @7 y! ]
  342. STA $20072 H6 A+ ~! v% I
  343. PPU_RTS:  G. r# \" A3 q6 y8 J
  344. PLA5 O( ]4 g% ]; W/ ^
  345. TAY" {3 `: a2 E' T% A  q
  346. PLA
    : n! |6 W9 V* s* l  @9 u) B" ^# S1 V
  347. TAX- j2 \) j  @" ]! W. g9 W" M
  348. PLA9 I' {4 M1 G: u3 {' u$ s( |
  349. RTS
    / k: w% K, g0 q( @9 Q
  350. ( d$ |% i  x+ e; b6 b+ N

  351. * M6 A7 f( m1 h
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据/ s1 ?& t% m7 B1 h
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00
    ( T1 e. K! [8 `9 x& J1 c$ Z( y
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据
    # v8 N2 y. i% r* ?5 V# f
  355. .BYTE $D1,$D2,$D3,$D4,$D57 ~: ?. ~4 Q1 S/ j- v; N' s4 ~& _
  356. # K+ ]! N8 r3 Y" d
  357. PPU_ADDR_DATA:
    ; w" t; L0 D! s% }# |& z6 }
  358. .BYTE $23,$0C7 s+ b1 F2 K! r$ n4 W4 c
  359. ( _- J" r. k' k( i6 H$ y4 I
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 1775 天

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

签到天数: 2367 天

[LV.Master]伴坛终老

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

签到天数: 1183 天

[LV.10]以坛为家III

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 2147 天

[LV.Master]伴坛终老

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

签到天数: 57 天

[LV.5]常住居民I

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

签到天数: 3263 天

[LV.Master]伴坛终老

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

签到天数: 1803 天

[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. C2 |, }+ }3 X5 j- E1 K
最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊
0 o8 t4 c  a( ^  d& b6 D
已经加上了,赶紧下载吧
[发帖际遇]: 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:356 t- ?% x: H, F. C
旋风又疯狂大修改了 哈哈
- J/ [* B% N- g$ a
疯狂不起来,无聊了而已
[发帖际遇]: yandagui摆地摊卖菜,占道经营被城管罚款 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 49 天

[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, 2025-12-5 23:48 , Processed in 1.137696 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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