设为首页收藏本站

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑 # K( \) Z5 K  V. l8 `3 D

2 \8 c9 {/ z1 Y- Y    [FC][最终任务][END选关]9 Y( H8 D/ t1 t

2 r% z4 \( i* }( W3 ~' V时间:2017.3.29
8 |  l3 G; m& j; s# F) Y作者:FlameCyclone4 J- q& G. f; A1 I. m7 W- p; g! u
内容:
+ F7 p6 R2 \2 w- `  _    1.关卡选择:   标题时,左或B减,右或A加(1-5关);2 {# f- a+ J9 p5 I
    2.无敌锁定:   暂停后,按上键切换;3 l* m8 \: J! R% S
    3.生命加满:   暂停后,按下键切换;
& |& o- L7 }- f* T7 W    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);1 L3 b+ X  F; E9 p0 {7 I$ V
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);# l7 L* g* I* S& O2 i; ?0 j* \! Z2 z0 x
    6.B弹数量:    暂停后,按A键切换(1个或2个);
8 y' o9 R3 n6 [- R- \    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;/ X; ~( }  [7 y0 }

, ~  Y# \# G2 r3 ?# a9 q$ F  Q+ g+ [" d4 a! N- s; T
" k  U0 d( ]! m4 V+ {! i

5 {/ t9 u. [% n. Q
4 g* d! X& V, W/ M" F( i$ m3 J. D& R$ I7 E  v4 B
游客,如果您要查看本帖隐藏内容请回复
/ {) E) h# H" [: F4 T
FlameCyclone.ys168.com
6 D  z, }  q. H' `www.nesbbs.com
  1. ;[FC][最终任务KEY][END]" j# H6 L6 J) `* O5 \: w5 d
  2. button = $04    ;单次按键0 a& g7 W: T$ Q" u; e
  3. flag = $6000    ;功能开关标志2 ^7 t, e) B; \% A) k/ ~" j
  4. pause = $000E   ;暂停地址
    9 ^) P0 p) t% R; P

  5. 6 u' [: _2 M' O8 A8 e
  6. .ORG $8000! X+ q) m6 @4 u$ F1 E5 ?* X" }7 g+ D
  7. LDY #$08    ;自带的按键程序
    # k2 j1 n0 N7 t: F2 S7 a; l
  8. ADDR8002:
    5 R! h4 t' X6 {8 ]( h+ X+ a8 z
  9. LDA $4016,X
    4 E" Q  M. Q6 i
  10. LSR6 [% B# j, e2 K, l. f+ B% g0 [' Z
  11. ROL $0021
    ( w* H; F: i+ h0 q2 a
  12. LSR
    5 M4 r4 k) x1 X8 N4 Q0 F
  13. ROL $00299 M* T$ N; A1 F0 X
  14. DEY
    5 w' P# Y- I7 h8 B6 ]# [
  15. BNE $8002
    $ m4 _' L- Y' R
  16. LDA $0021
    " `  v6 D  P  Q; m$ q# R* f; m$ o
  17. ORA $00290 W% y6 d: B1 ]8 d% }" V. o" M2 \
  18. STA $0021
    - F6 p  @- |; v, S; U8 E" R/ }4 ~
  19. LDA $0020+ Z  u: L- D& I* X1 k9 L" r
  20. AND $0021% j3 `$ K( M- W
  21. STA $0020# N- Y" r$ o5 [
  22. LDA $06,X0 k4 w6 G6 x3 e1 A! E6 K( t
  23. EOR $0020$ C1 ?) e5 p  z. f1 a0 A3 V7 ?) v) W- i
  24. AND $00207 |& g6 i3 f9 q8 @& T6 j9 P  M  i1 E
  25. STA $04,X
    , [. E5 ^4 K6 D$ l' Y- Z
  26. LDA $0020
    - Y2 ?2 [, s/ z6 \( K" D. T  z
  27. STA $06,X
    5 }! F: N1 C0 C- h4 }5 n; ^
  28. JSR KEY_OPERATE
    ! o* w* W' u9 g
  29. JSR Function    ;功能调用2 c3 Q) I' A& f9 U- Q) N: C
  30. JSR Weapon    ;武器切换调用! K7 u& q+ `% P; Y: S, a
  31. JSR Power    ;威力调用* L" m: S& y& `# j: l5 h4 O
  32. JSR BULLET_NUM    ;子弹数目/ I# Y; K$ \- f- q
  33. JSR BULLET    ;副武器类型
    6 U1 ^+ O* w, B' u9 p
  34. RTS. C" p  e% J1 O

  35. ) W9 r/ [" v0 u* z% R; ]5 B
  36. 0 G/ `6 F/ s& _# j/ V" S

  37. ; L# A8 L' z) Q4 d  Y, }
  38. .ORG $8050
    1 G9 ^( V% j  O0 f' S/ X  ^! b
  39. Function:    ;功能
    3 }% ?2 j! H. }
  40. WUDI:    ;无敌
    & w3 Y7 A- X4 z& n$ d* p* V% W
  41. LDA $6000,X
    : _" h* g5 Y# q" a7 b( y3 J. x
  42. AND #$08    ;开关判断
    - E* X, @) _  c  @+ [! [6 X
  43. BEQ LIFE
    ! |! H2 u% Q* y9 y. [# u# d
  44. LDA #$05' D% \) ]  K$ D2 [- Z% Q& h
  45. STA $05DC,X    ;无敌锁定
    / E" g* l4 j& D0 o3 E( {4 r
  46. LIFE:    ;生命
    ; ^5 t- C+ M+ e5 E2 ~
  47. LDA $6000,X5 W5 W* z) D& c. D
  48. AND #$04    ;开关判断: u# ?! u4 o7 @" z5 ^5 d
  49. BEQ FUNRTS
    7 l. m8 _! ~/ v$ Z% h5 K% x
  50. LDA #$05: P4 {" S2 G7 P
  51. STA $1C,X    ;生命赋值% M0 F' d+ |  i- U8 X" `. Q+ I
  52. FUNRTS:, ?& J* @4 z2 P  H+ E3 q' U7 V5 F
  53. RTS
    / W) O1 ]) ?5 N# F  O$ J' P% b( e
  54. " E% u. q: V% ?) M
  55. Weapon:    ;武器切换  ]  n3 U2 e* d, X  \, E8 D
  56. LDA pause    ;暂停状态判断# `% L7 _0 t" S  r9 P
  57. BNE WEARTS
    % ]8 |2 ^- ^$ P# t
  58. LDA $04,X) X# c# U# L. l: M; w4 E7 t7 m
  59. CMP #$20    ;选择键判断
    . O. i9 V$ c  k% _$ N
  60. BNE WEARTS6 Q5 m( d+ Y+ b1 [9 K2 |
  61. LDA $12,X. V* D: Q) k4 s% t7 \, y9 p9 b) g8 s9 P
  62. CMP #$03    ;武器值判断  X+ E4 v5 b, \! Z
  63. BCC WEAINC2 r5 A$ x- g0 _; b5 _$ b
  64. LDA #$FF
    & K$ c1 K& R7 @" t" ^0 z
  65. STA $12,X    ;武器重置
    : E7 o1 \% [% N( L9 s# m- z0 t
  66. WEAINC:
    ; T% f9 N4 o# l: K/ v! |
  67. INC $12,X    ;武器增加
    4 W) Q9 z; D2 _

  68. 5 T# k, [! A# T; F! p1 Y
  69. WEARTS:
    1 t9 j  l" p" `  A" K: G6 t
  70. RTS) u% ]3 j+ D; ?2 ~

  71. $ A* B7 F* Y. k: g
  72. Power:    ;威力6 C& E/ W" X' v) a2 E% L5 p
  73. LDA pause    ;暂停状态判断
    ) R0 v! B/ |+ f( Z7 g; o) F& i
  74. BEQ SPERTS2 W) g6 \. {- m& r5 [
  75. BUT_LEFT:: I, o& N; O3 n( q! }
  76. LDA $04,X% F' D- G) ^8 e# Z9 X: v- y
  77. CMP #$02    ;左按键判断
    & ^5 C# t/ J& S$ ]- G. s
  78. BNE BUT_RIGHT
    * o9 W! y% {1 j0 ~4 T0 F$ Q# V
  79. LDA $88,X
    6 K! }3 R, I0 N9 N9 k0 t' o
  80. CMP #$00    ;威力判断
    ) K6 [: `) M- a4 \
  81. BEQ SPERTS1 J+ u' d1 c0 f2 d
  82. SPEDEC
    ; z5 g7 F! u7 H0 t* i- g
  83. LDA $88,X    ;读取武器值
    3 r1 z6 v5 W$ P2 m) @, ~+ Z1 ]
  84. SEC+ |( Z( W. u" L. L- ^7 L
  85. SBC #$08
    . v2 x& K: h2 S, n% P
  86. STA $88,X    ;威力减小& g. z8 j0 j  e! X" @8 D( z3 I- T- m
  87. BUT_RIGHT:/ @8 J" Y4 B" G% p
  88. LDA $04,X8 z1 _6 Y1 E5 {8 Z
  89. CMP #$01    ;右按键判断
    ! L7 N( S7 ]$ s* E: e. B* J
  90. BNE SPERTS; _" z, h7 Y2 c3 A! j" N  N
  91. LDA $88,X8 B, s1 M. N, H3 U6 v" i- ]2 e
  92. CMP #$10    ;威力判断$ X0 Y9 ]( v* h8 W
  93. BEQ SPERTS
    # Z- u- Z0 N0 f/ y; E; O
  94. SPEINC:. Y) T& N1 f$ Q) _3 S9 C* L
  95. LDA $88,X    ;读取武器值
    1 ^; j6 p3 m5 l. M
  96. CLC( a2 w4 @/ _( b* y% K$ j; [
  97. ADC #$08# E2 N6 s1 Y7 A; m
  98. STA $88,X    ;威力增大) A* Y7 T& {- o

  99. . M; F1 M1 K1 l3 H
  100. SPERTS:2 s+ n% L3 b3 Q7 x1 c* G
  101. RTS
    7 u) J+ C9 y4 r4 d

  102. & ~/ C0 [2 P6 I1 q  {9 f. b8 t
  103. BULLET_NUM:    ;子弹数目
    " L) ~- l7 [, [$ K* L
  104. LDA pause    ;暂停状态判断
    - w9 Y2 ]) l7 c1 @/ h
  105. BEQ BULRTS; P% n# J/ P' C7 Q/ v  i; w& L
  106. CPX #$00    ;主机玩家判断8 U+ k9 U- @& u, c5 u
  107. BNE BULRTS
    , H. j& T+ }# U9 B0 M
  108. LDA $04,X    ;主机玩家判断
      h! a* S( [. W) v+ H( c1 e
  109. AND #$80    ;按键A比较
    1 h2 D3 h' W* w; A9 i. e
  110. BEQ BULRTS
    - M# g: O  T9 T$ o) Q" e/ p
  111. LDA $87    ;状态判断; E$ H0 E) V! Q8 `
  112. BEQ BUL_2
    0 v% \7 p/ O3 T  S
  113. BUL_1:. p" \/ u7 ]( q
  114. LDA #$00
    - z" ]; o, K. x: F' @9 S$ G
  115. STA $87    ;1发子弹! G$ F' ^9 n/ S6 h# X% z
  116. BEQ BULRTS* X' h& I% j. O# _
  117. BUL_2:: I/ v" r$ x3 ?+ t1 R4 k
  118. LDA #$014 @/ ?: J+ x6 h! o
  119. STA $87    ;2发子弹! C6 u2 n: G! ?0 q. ~+ h5 O0 P/ r! v
  120. # a  Y! x- B  T, Y! ~. x
  121. BULRTS:. W. {+ o  k" X0 @: Y
  122. RTS9 p3 j. I5 U7 W+ D9 e+ M, C( s

  123. # L" g$ e( I# Z% ]/ i2 M
  124. ) J' g- l) ~0 w" L) w5 s% w
  125. BULLET:
    ( A) h+ r) _; T' {$ H' I
  126. LDA pause    ;判断暂停状态  K$ M# j% M6 T9 i. ?' ]5 m
  127. BEQ BULLETRTS
    ; k0 o; P9 g! Z. t: b5 d6 p
  128. LDA $04,X
    ; M) ]* w2 G* T: ?8 \6 |- _( P& d
  129. CMP #$40    ;按键B比较/ |* F4 Q- c1 L. K* i5 e
  130. BNE BULLETRTS
    $ m5 o9 t4 \* r' u) ^4 T: Q+ ]
  131. LDA $6002,X    ;读取副武器
    3 b% d" U" A1 ~' W% ~; @
  132. CMP #$03
    & [# G8 Z0 F0 `7 N  p7 D/ M. H
  133. BCC BULLETADD2 p% M4 [" @) o9 c6 I7 i
  134. LDA #$FF9 r3 H* B9 [9 o, O0 ^
  135. STA $6002,X
    " ?& |! p- V+ Y3 L! Y
  136. BULLETADD:7 e2 T$ e3 p8 _( y! C1 c; Y0 [' K
  137. INC $6002,X
    % D  `2 |* y& k5 J% W' L( d. O

  138. 5 U; N6 v  _6 [3 g7 d2 l$ I) u
  139. BULLETRTS:* A5 d9 }7 C# s
  140. LDA $6002,X% v$ A/ M9 ]) w
  141. TAY  q+ [8 {; u) g& ?1 D9 t' H
  142. LDA BULLET_DATA,Y
    $ k/ L* M5 _. d
  143. STA $6004,X    ;写入副武器数据2 e1 k$ f$ l! ?/ x( e
  144. RTS
    ; H! w) f% Y( @) M8 r

  145. ' r5 r4 c% I* s- z
  146. : s# ]+ w& s8 U# R; J/ T6 b
  147. BULLET_DATA:
    ) S2 Q+ l- x$ i7 M8 @2 S, W& G& l" ~
  148. .BYTE $06,$02,$03,$04
    2 D, W# A# u+ V: X

  149. ' B8 p8 P0 i9 U1 l4 {' |6 B

  150. : x9 h; b$ G# ^( X5 f( y+ ~8 c# _

  151. / J, ^1 I8 ~( s1 W
  152. KEY_OPERATE:    ;按键开关操作$ l4 @$ B3 T6 {2 {+ x' u$ Z% L; O
  153. data_protect:    ;数据保护3 f" E9 F8 X: ]$ a$ l" A) x. u
  154. PHA
    ) ]( B  Y6 \" P
  155. TXA
    ' r2 l( Q8 D3 q  C
  156. PHA! t; Y1 \/ Z# t0 b! X, \
  157. TYA
    & S1 s1 C. w" L! _5 G# n
  158. PHA
    ) [4 s$ y+ q7 V3 {5 y1 H9 I5 r4 {
  159. ( v3 ^8 y3 b6 n$ N
  160. FLAG_INI:    ;开关标志初始化# _2 a' U- |  x8 M. V. f

  161. " ~$ M( O$ N9 {. O
  162. LDA $600F
    , _- s3 C, u8 O: {8 v: `
  163. CMP #$014 T8 L. w: ~8 C& F# C/ p9 w7 m( F
  164. BEQ pause_cmp: U- E& x* \' j3 x5 B+ s
  165. LDA #$00$ j* v4 |) q: X: x7 |
  166. STA $6000
    , O- t9 n8 k) Y$ G
  167. STA $6001( G6 u4 ^' M& u- a- m5 B" G  t  B
  168. STA $6002
    - U1 y$ s; ^4 s5 s
  169. STA $6003
    . E7 e1 W) l7 v9 `& C: J8 c
  170. STA $6004
    , {! q! C5 w6 Q  P' E. n- c: C
  171. STA $6005. h5 P) ~2 u  X' {8 ]0 p5 e
  172. LDA #$01
    , z, l  m+ [! p( [$ o( y& P6 Y
  173. STA $600F
    7 ^8 M6 O# h- j+ x! o

  174. 4 R  u( d- z+ Q4 H; q9 Q7 M4 H5 a
  175. pause_cmp:    ;判断暂停状态
    0 v- ~. o: ~9 e. d7 G" X
  176. LDA pause& I6 f/ N+ e, E! x/ Y
  177. CMP #$01    ;判断暂停状态' j; q; s4 l# E; m' R' m6 l6 ?
  178. BEQ button_press, W& k$ u% t$ U' _: [3 B9 R
  179. PLA
    7 _! \+ Y/ O2 i8 o
  180. TAY
    6 L+ i8 s! Z1 A  p4 D( R# u
  181. PLA' E/ [. @# K$ z9 O/ D% i: z
  182. TAX
    ; A) W8 N4 e  Y0 C: J
  183. PLA6 b$ t' X( A# P, z0 ~
  184. RTS
    ) \: ]! y, n. Z
  185. 2 W+ @* C" k: Z/ X9 r1 p
  186. button_press:    ;按压操作
    ) u$ }, \8 G7 M7 T& t# o) g* A% y
  187. ini_Y:
    8 X3 |. L% S& z8 n
  188. LDY #$00, ~3 f  b7 T8 \. Z) @
  189. button_cmp:
    * o. A6 y7 ?1 O  A
  190. LDA button,X7 {5 E. B! }" x4 p5 }" |
  191. CMP ora_data,Y
    6 ]4 H4 h+ F; i$ z7 Z  J. a
  192. BNE count_Y_cmp
    9 C* z/ m; r/ z6 X- S; C
  193. flag_cmp:
    * [7 O. l# r8 o
  194. LDA flag,X. W4 x7 s+ w0 T% v
  195. AND ora_data,Y9 p, y8 B2 O$ P- G) P
  196. BNE flag_and
    0 T6 p( r9 _. z! X
  197. flag_ora:+ g+ c/ F7 n: Z; v* C
  198. LDA flag,X
    , D8 V# s0 M0 v
  199. ORA ora_data,Y
    9 N: S; @, m% _' M1 z
  200. STA flag,X6 ]6 R$ I- O! g9 |; ?! h# D
  201. BNE count_Y_cmp
    & d. K5 l1 o3 r
  202. flag_and:. {# o, H$ S1 Z0 i; H$ R
  203. LDA flag,X- }5 j( N9 Z. a8 U" ~
  204. AND and_data,Y' O, c5 L. ?( Y* k
  205. STA flag,X! z" u% I6 B/ e. f
  206. count_Y_cmp:
    ) {0 D1 p7 j6 T4 R; i+ T1 L
  207. INY2 u5 E. i4 V" [1 L0 f
  208. CPY #$08( z. ?9 M$ w; l5 A
  209. BCC button_cmp, O8 O% \, R" `# g: q
  210. ( J3 }! {0 w, ]( D: d
  211. data_extract:    ;数据恢复6 a2 x- S3 p3 s. q2 [
  212. PLA1 |. S6 R; R, g  A. y
  213. TAY
    2 H6 f) h3 J& n
  214. PLA. j) h9 h7 W5 P; Q# X* C
  215. TAX7 s6 T, K6 x, j/ s6 E
  216. PLA+ @: a9 o5 ]/ g) }
  217. / P. W5 D; b' S' O9 S
  218. return:
    ! o5 f. k1 W; I# ]! M! a* v0 q* ?8 `
  219. RTS
    ; V$ A& I; Y/ k/ M' |2 [. t. n
  220. ' o+ I  _7 B5 @
  221. ora_data:   ;按键相或数据
    2 P! |. `0 A: Q7 m/ i6 ^
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10# d' c" U3 y' p
  223. and_data:   ;按键相与数据$ U4 p- B# `# y. Y+ v
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    * G5 y- J5 m, t7 {2 l. L, q
  225. - ?: `/ C/ K2 Z6 i

  226. ! ~  N- h& {) W1 `3 P- x9 V& |2 p

  227. # L& u1 L2 R- `* b5 h( X

  228. 4 W! Q5 M! w# _6 c  m' R9 K
  229. 6 B. @' h9 g9 y& Y. |
  230. ( k* T: p  o& X. p  b6 y
  231. % h2 e; n% [* c; y5 o

  232. + Z- T/ ~- }0 U

  233. : ^( N" j- c% F- {$ H6 f8 F
  234. .ORG $C264    ;自定义的MAPPER2切页程序7 g8 L$ U: {6 H! M# e5 m8 T
  235. PHA
    . Q$ p# m; d3 C
  236. TXA
    7 ?0 w% h+ Z/ _' |: U; v& j
  237. PHA
    % C* R; U: m( q- B
  238. LDA $0066# t3 m$ W4 I' a6 M
  239. BNE ADDRC280% a5 l/ A# a* |, k9 M6 Z! f
  240. LDA #$077 x, W0 w3 ^1 z, `+ ?. }
  241. LDX #$03
    * L" K* \# X" M" ^; f+ f! s# K
  242. JSR $CD9B    ;自带的切bank方法
    ( l5 I8 P* T: `0 B/ }
  243. PLA
    # k7 K- L4 a2 v  `* A8 X
  244. TAX6 t3 _5 V1 F% ^$ F* d
  245. PLA. l2 T4 y) m! u; p# z; a6 J8 w& S
  246. JSR $8000  t% ?- O5 e  j/ n0 M: f
  247. LDA #$06
    7 }& a/ w3 d9 m) C7 G2 H. L
  248. LDX #$03
    4 }0 j3 W& d) A# A* }' R0 D% t
  249. JSR $CD9B    ;切回原该切得bank(可以不用)
    9 j, V2 c0 F: Y9 {( h0 E
  250. RTS" J6 y6 s7 I2 u* x2 y9 Z2 _" t, B$ N/ c
  251. ADDRC280:6 l! k& x1 E: G8 Q, R& {5 U0 B
  252. PLA( l  ^( K) O* p# @' J
  253. TAX
    6 d* ^, F7 G( j2 K$ E9 K0 i
  254. PLA# L8 E  ?' k* x* p/ I: |7 x3 a5 g. l
  255. RTS. g  o- a* j9 T8 e6 ?: v) P
  256. + h" Q, Y, M( G* B

  257. & u3 G6 O# s+ L" k) Q) w  y
  258. ;[FC][最终任务PPU][END]
    / B/ R) J* u5 f  r$ k6 |
  259. .ORG $C056    ;跳转到PPU重写程序
    % o% `5 Y; ~) `! }
  260. JSR $7000# m# |% n1 ?. d+ p2 [

  261. % A5 ^/ g( ^. ~4 J1 l. a
  262. .ORG $CEBF
    ' P: G: z! q: ?% g* j' e7 G
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入9 m7 g# c$ z& S/ \) o
  264.   
    + L$ i- d# O! f- z1 z
  265.   .ORG $E460) P3 J; v% G' a( J9 w
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入, `' _/ G, _& E' t; O6 F' U
  267.   ; I' i7 U  T. k' s9 Q
  268. .ORG $71F0
    4 O7 H) K4 j4 m3 w
  269. STAGE_DATA_WRITE:
    2 L* X4 X2 t3 g
  270.   LDA $6010: G5 [9 p4 f% T0 Q+ ]; g0 N$ e
  271.   STA $1E    ;关卡写入! i& r* [. g2 ~- Y1 r" J, P2 }
  272.   LDA #$00. s, C  }, x7 t8 C5 r5 f' [; f
  273.   RTS
    " h2 u' h4 z3 C7 B$ z
  274. .ORG $71C0
    % H7 Z) d* a2 d. o
  275. BULLET_DATA_WRITE:    ;副武器数据写入4 S* X( S2 q& n# _
  276. CPX #$0E
    ( k- L8 f/ D; ?- h
  277. BCS P2_BUL  k/ [; J0 H: r
  278. P1_BUL:! V& R- `) h6 w6 q1 D, l* W
  279. LDA $60049 W& Z+ J4 B* b9 a* o
  280. JSR $D7D0    ;P1副武器数据写入0 S% h. n- K  x! y" d
  281. RTS
    5 j9 m& ^( k2 C# N
  282. P2_BUL:9 b5 Y, N8 r) Y6 w( K$ w$ g6 Q+ L
  283. LDA $6005
    ' C7 `: b$ }4 X
  284. JSR $D7D0    ;P2副武器数据写入
    ( L$ O  i0 F& I1 `8 }( `7 \, t! {
  285. RTS
    ) n! {2 D! \+ |1 p- ?  n
  286. 3 W) G2 M  v- u8 B# U
  287. 1 R9 Z! Y2 _; g9 A
  288. .ORG $7000- Q! l2 [1 F, T: b# C! A0 i  T* ~& r
  289.   
    3 J* {  E8 Z' R
  290. STY $4014    ;补上覆盖的精灵写入指令
    , |: @4 m! ]% W& t) l
  291. PHA
    , I. J. D* `: X3 J/ u
  292. TXA6 j& G% G* B8 g6 E  t& N& }
  293. PHA0 f0 ~8 R% U# g8 e
  294. TYA
    * d, H# D! F! J/ S
  295. PHA' u8 x" D+ t, w
  296. LDA $0C
    & G! f; z9 I/ r) Y5 `
  297. CMP #$01    ;比较是否为标题画面
    " `: U5 s# d7 Y$ G4 o( z* R
  298. BEQ PPU_STAGE. s9 G2 d4 n% c6 J9 [
  299. PLA
    7 J# \1 y0 B3 d* I
  300. TAY
    ) U' X; L0 F4 s. h: u; T( D
  301. PLA0 i$ W2 r( Z& a1 S: ]
  302. TAX
    - t" h& g, i6 q$ o+ G
  303. PLA
    . G' w9 }) K! ]' X( q  L* k8 F! ]
  304. RTS
    + r1 I, g) C, ]* k
  305. PPU_STAGE:    ;STAGE显示程序
    # ~; {4 U7 s9 Y1 j2 W7 e& ^4 x
  306. LDA PPU_ADDR_DATA
    3 `. _) M: N9 b- ]: o7 ^. I
  307. STA $20062 v3 e/ p2 y6 m9 i
  308. LDA PPU_ADDR_DATA+18 S) |) E4 n- X* g
  309. STA $2006    ;坐标设置
    ) d  c2 Y  \) q8 d( f+ ?
  310. LDX #$00
    1 n" \) V" a  f4 l& `3 s6 d3 c. T
  311. PPU_STAGE_WROTE:    ;写入STAGE字模
    & {" j# z1 K2 d7 E5 ?7 E! W
  312. LDA STAGE_DATA,X1 }, E8 g9 k: l* B" }& N% b" j; _( m7 V
  313. STA $20071 h+ n8 b" v  {; ?( X  J
  314. INX
    / A* S5 {) v5 ^5 w
  315. CPX #$06' u. h0 F  D% }" r( B- s
  316. BCC PPU_STAGE_WROTE
    % \6 R: ~6 L3 b7 Y! x' `
  317. LDA $6010- J; W/ {& k$ m8 U& D6 I4 V5 ~% O
  318. CMP #$FF    ;关卡数据初始化条件判断+ S  ~- |& }8 O9 ^" M1 F3 W
  319. BNE KEY_B
    ; B/ a- j, s* {3 W3 f
  320. LDA #$00
    % ?! Z! x9 I' m0 ]7 b
  321. STA $6010    ;关卡数据初始化
    9 z& e7 S% p) V; w6 U
  322. KEY_B:    ;关卡减少# L. X) d: c$ [4 o. ~6 r8 U
  323. LDA $04/ k4 Y; |7 {2 B2 O$ N& H
  324. AND #$42    ;按键B或左减关% Z# Y! @9 r7 H
  325. BEQ KEY_A
    ) X+ _6 T' p0 L: w: `4 O$ D: [5 \4 q$ u6 z
  326. LDA $60109 }1 ]$ B- s1 I6 a: A, \& \
  327. CMP #$00    ;关卡比较
    ; C; D' i5 `" z- }4 n5 P5 ?0 v/ T
  328. BEQ KEY_A+ c5 b. }8 r* V6 z. O- g
  329. DEC $6010   ;减关
    # ?5 j7 e, c( ?3 s/ U/ n; e8 O" N$ s
  330. KEY_A:    ;关卡增加
    % Y, r7 b  Y' {. I: i
  331. LDA $04% ?/ ]# o- T+ `4 U6 }% C7 |
  332. AND #$81    ;按键A或右加关* T4 u8 F$ Y& o( u6 v8 n
  333. BEQ PPU_NUM_WRITE
    ; q7 z5 s! l9 q8 _- u/ h
  334. LDA $6010
    , [7 {9 S  U: a* e/ S- G; A
  335. CMP #$04    ;关卡比较! x# |1 r% u& N1 q  x9 n+ p* C
  336. BEQ PPU_NUM_WRITE
    5 ~: ]$ g; S& J  q: ?0 B
  337. INC $6010    ;加关  C8 z  l" v: L7 s; @2 y. h
  338. PPU_NUM_WRITE:
    3 I, ~1 y& V/ P- m3 s6 |
  339. LDA $60105 j3 R, l7 [- v) y% B& V% D1 F3 [
  340. TAX
    7 O0 h4 |8 ]" X0 _" y( s
  341. LDA STAGE_NUM,X    ;写入数字7 c( @, l. e# d- B) I) w6 W
  342. STA $2007/ `1 a# Y. W  ^1 ]+ q& f! H) d" s6 }
  343. PPU_RTS:, ~8 V  `3 p* v# S! ]% v6 ~! Z, B
  344. PLA
    " c9 G$ A/ p  p  }  l1 V# p! N/ j
  345. TAY
    % k" B! `5 }7 v/ k9 Z8 G
  346. PLA
    : C. Y( O/ S3 C3 `9 h
  347. TAX7 z1 ]4 m5 t& Z# S; N8 z
  348. PLA
    9 x, w$ K7 F4 m" d
  349. RTS
    % h( I# e' Y5 n

  350. ; H) c/ x5 _$ ]# k6 Z

  351. 1 D* |4 n+ M6 H+ E6 E& N! u8 S
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据, T7 p. K( X! u
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00
    , P, C" H' r2 X) E/ q
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据% x  X) X2 Q7 G" E  t8 _; T
  355. .BYTE $D1,$D2,$D3,$D4,$D5
    0 h1 _+ w' b2 t& F, ?- W  N( `1 T

  356. . Q* M& I" z" T" @
  357. PPU_ADDR_DATA:- m2 [" C' W( v0 y9 Y
  358. .BYTE $23,$0C
    * t/ f0 O7 o3 T. i/ K( i. U% g+ i5 T
  359. $ C5 p; r! }0 v
复制代码

本帖子中包含更多资源

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

×

评分

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 | 显示全部楼层
感谢楼主分享新游戏
回复

使用道具 举报

签到天数: 1118 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 852 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 2051 天

[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:129 K# w, b, a0 M9 I7 N( H
最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊
& R, ^' ?( R7 n( ]+ a% [
已经加上了,赶紧下载吧
[发帖际遇]: 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
! Q9 Q1 c1 z: _5 f* ]/ [. S旋风又疯狂大修改了 哈哈
) {1 y) t* O( ]. d, X( T% Q
疯狂不起来,无聊了而已
[发帖际遇]: 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 11:46

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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