设为首页收藏本站

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑
, Q/ @, p* S9 N6 y3 T) I
7 B0 b1 T) O1 S) I6 m$ F7 v. U    [FC][最终任务][END选关]4 s! V2 g: x4 r
! u: @8 t( m$ f8 n) j( \
时间:2017.3.29! q/ b6 |: s, ]
作者:FlameCyclone
; S% _1 G! s( D2 ]+ n3 u" }内容:) s" `* L8 a, I4 u- Y0 P1 L0 V& @
    1.关卡选择:   标题时,左或B减,右或A加(1-5关);
( P3 I" s2 N5 `- Z) \    2.无敌锁定:   暂停后,按上键切换;
" s' C# {/ G( l4 Y$ W+ W7 @    3.生命加满:   暂停后,按下键切换;
( P1 R  O0 a% K0 g+ z    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);! M, |+ d; T+ q1 ]" I2 A
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);2 C- c$ ^$ r) t1 p5 v
    6.B弹数量:    暂停后,按A键切换(1个或2个);
/ Z% W2 B! e3 }7 q    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;
& a4 D+ r& V. b% j0 d7 y! N/ B0 T; b/ k3 V% E

9 J' P# x6 c) h. ]3 x/ j  H, u  l% I) g
, ~  V+ T3 P7 b; I# @% b
: Q4 c- a1 z: x" v- {- ^

/ ^5 t1 d' r! r; m" P/ A
游客,如果您要查看本帖隐藏内容请回复

* F4 n( b" Z# v! r4 y. K! x  |' RFlameCyclone.ys168.com+ J, M4 i: z/ @; G
www.nesbbs.com
  1. ;[FC][最终任务KEY][END]
    ) Y) ?1 b- x, o- i
  2. button = $04    ;单次按键
    * Y7 J- D" B1 k' K; i. X! f+ |# t
  3. flag = $6000    ;功能开关标志$ Y  G- s; a, L7 o* k8 \% L
  4. pause = $000E   ;暂停地址: j; E% Z( ?9 @
  5. 5 ^+ T/ ^( |$ @$ X
  6. .ORG $8000; w8 Z( `' I6 l) P! p& z& h( B/ q
  7. LDY #$08    ;自带的按键程序- E- e6 s% u( |3 {& D
  8. ADDR8002:7 d" }7 X; t/ `8 F3 v
  9. LDA $4016,X! U5 T& m# V6 g, E5 v6 q
  10. LSR6 S1 s) u4 z/ g& I; _+ Y
  11. ROL $0021
    * X) |/ ]9 c" j+ o4 u
  12. LSR
    ' n, y) \8 z# {3 f, \. V' t
  13. ROL $0029
    ! B5 H& O* k) t% k
  14. DEY
    3 s) f9 \3 d# _
  15. BNE $80024 M9 v4 _  x- R; w
  16. LDA $0021/ z- |; L! ?3 i2 j  I
  17. ORA $0029  G8 K- T  {$ S* A. C0 I3 P
  18. STA $0021+ I! N8 k; R1 N! `
  19. LDA $0020
    ; e8 ^/ H  b+ g
  20. AND $0021" t7 p7 w" v& L* q' H
  21. STA $0020
    0 A3 F+ H* w& t+ a( G5 j
  22. LDA $06,X; y4 p3 c3 h* F. d$ R6 u
  23. EOR $0020
    ( O2 _  M7 C6 m$ \* ~4 {/ L
  24. AND $0020
    7 @$ [" S3 y& q# j) P
  25. STA $04,X) u( C, [8 i- V
  26. LDA $00205 M6 B" I6 v- X' x
  27. STA $06,X9 P# ?+ R; w4 d& k* K
  28. JSR KEY_OPERATE
    - }: K% l' J% K# q, u
  29. JSR Function    ;功能调用& h- s# c7 L2 b! \8 c6 s$ d
  30. JSR Weapon    ;武器切换调用
      r1 R# C& ^! r' G1 Y" o
  31. JSR Power    ;威力调用
    . a$ V! A, q& ?" j
  32. JSR BULLET_NUM    ;子弹数目
    2 y! u! H2 P4 B  F/ i' y9 ?
  33. JSR BULLET    ;副武器类型
    & i* d% Y/ ]3 H7 W- h
  34. RTS% U$ F4 Q, b7 i1 N0 ^

  35. 6 [' Z# i" j" T& @
  36. + Q( c: g: `6 x5 S8 s5 J& i
  37. % M" A! i, g6 t
  38. .ORG $8050
    : \' p- B1 I  I. N9 _0 K8 t$ a
  39. Function:    ;功能
    1 T! A. N: D, K7 o0 c
  40. WUDI:    ;无敌2 ^* Q% {9 k7 E8 F! j' x9 u
  41. LDA $6000,X* w1 A- {+ v, B. B6 D7 S! F
  42. AND #$08    ;开关判断$ @* r! e: `/ }6 z3 q, y! V2 j0 W
  43. BEQ LIFE
      B5 ?5 c7 c: a! I$ L) S
  44. LDA #$05
    3 I6 W; U( I' R8 L5 j7 E
  45. STA $05DC,X    ;无敌锁定4 @/ o9 Y7 R) g
  46. LIFE:    ;生命
    7 e% ~1 e- H# G0 t( {1 z
  47. LDA $6000,X
    + c: R; V, b$ X, X2 [8 Z
  48. AND #$04    ;开关判断. s1 e+ H8 c: @5 Y
  49. BEQ FUNRTS
    0 I9 J7 }8 b% B1 H' ~. R4 ~( d
  50. LDA #$05
    + l' [! h, e6 U) H* i* `, S9 _
  51. STA $1C,X    ;生命赋值/ [, S8 ~: U# ^
  52. FUNRTS:
    % J6 g, D: C! U- D
  53. RTS1 f  h- Y9 M8 P! B

  54. ) ]. U+ Z3 S' E# ]3 S
  55. Weapon:    ;武器切换$ `4 ~  u' a: p% D$ O8 m
  56. LDA pause    ;暂停状态判断. V$ m' y1 c! k  E. [
  57. BNE WEARTS5 J1 d  u# K" J7 u% j
  58. LDA $04,X
    2 f0 d( n( C& @) a$ e, X
  59. CMP #$20    ;选择键判断
    ! \7 C0 ^) `& @$ {
  60. BNE WEARTS
    8 X+ v9 f0 ]; b, y# l; y
  61. LDA $12,X
    . ?7 p/ Z* W# F2 V& g5 ^2 N: x. ^; D9 n
  62. CMP #$03    ;武器值判断
    7 c0 K. z& v2 a) e# u& p7 ]) C" H1 Z
  63. BCC WEAINC
      ^( g& l+ J6 R9 X3 h% Q
  64. LDA #$FF
    4 d, U) Z( t/ D
  65. STA $12,X    ;武器重置9 Y, w5 {+ A$ V7 t6 H' {. o0 L% D- ~2 Q6 ]
  66. WEAINC:! b. G( k& H: ^& Y5 x% c
  67. INC $12,X    ;武器增加
    9 u) {$ L/ @8 o5 k5 E  v! r! R
  68. / B+ }5 f) L0 z4 d) J; D8 V
  69. WEARTS:
    1 l" j9 K5 J. x- d
  70. RTS
    9 {& ~7 M) G) A* g

  71. # k- d) n4 A8 H* h- B8 R$ L
  72. Power:    ;威力0 }: Y$ ]- B, r
  73. LDA pause    ;暂停状态判断+ F3 Z3 o: I" s1 L6 _
  74. BEQ SPERTS
    " t% H7 a, O( Q3 f1 ]
  75. BUT_LEFT:
    9 B% c0 c' r! s. l
  76. LDA $04,X- y2 @7 u5 P8 f+ q4 R3 R
  77. CMP #$02    ;左按键判断- p, D: y! O& c+ x
  78. BNE BUT_RIGHT
    9 E* u1 R9 O% [0 W
  79. LDA $88,X8 F. P0 \3 }, [+ W" o: W
  80. CMP #$00    ;威力判断
    % q% L4 b' u) F5 \4 Y5 h- K
  81. BEQ SPERTS4 p5 K- ~; x7 Q. B: r( B
  82. SPEDEC
    " c: J  K/ ~% }
  83. LDA $88,X    ;读取武器值) G7 h( k0 M2 U
  84. SEC( q8 U8 n9 T+ V
  85. SBC #$08
    : [- y8 ?( O& [& J. S
  86. STA $88,X    ;威力减小
    0 F4 m- Z0 _$ D5 h0 q
  87. BUT_RIGHT:, X* W) I, C& r0 p; ~+ J# F
  88. LDA $04,X
    # w2 l1 I9 I: `# m; Q
  89. CMP #$01    ;右按键判断
    7 O/ c+ ?; U) g2 f9 a8 ?
  90. BNE SPERTS
    ( h1 b) L  B6 S) g" ?
  91. LDA $88,X
    ' m% G$ l- D, s3 d5 r% v+ c0 G
  92. CMP #$10    ;威力判断$ a" ]& q+ R+ P" a( U: N
  93. BEQ SPERTS
    $ B5 }  A1 i, g) {( n+ X
  94. SPEINC:5 I7 F% g( H; D7 u9 n% k
  95. LDA $88,X    ;读取武器值
    5 G' D7 J4 f7 I; S" Z. E  n% v* G
  96. CLC
    ! z0 G9 [! ~' p. p
  97. ADC #$08  a! {6 x3 r# z" S  {! |+ x
  98. STA $88,X    ;威力增大
    0 W5 l6 N1 p$ [$ p9 [4 o# Q& f- G

  99. - C7 O0 O4 f% W8 i3 p
  100. SPERTS:, T  e1 y! O2 ?" H* w% M8 K& H; Y1 ~
  101. RTS
    ( ~! y: `! u1 c7 F/ w
  102.   y. ^$ j. H. I, Y. a1 M2 F& f
  103. BULLET_NUM:    ;子弹数目
    8 O% G4 A# h! z  l1 W
  104. LDA pause    ;暂停状态判断
    6 e9 `; {5 m& d: N# S" Q
  105. BEQ BULRTS0 _9 z  u2 G  }4 W3 B) H  u0 [' I
  106. CPX #$00    ;主机玩家判断8 s: `% a2 ~' r. E, s  M9 v6 ~& g1 i
  107. BNE BULRTS
    . P+ n8 Q8 Y; ~- W: ~
  108. LDA $04,X    ;主机玩家判断6 s) R; J/ {/ G3 n( y. S
  109. AND #$80    ;按键A比较! j( S) P, ?7 x( s7 ]1 Y6 b
  110. BEQ BULRTS
    % X) u# x1 C7 m) n7 ]5 X1 H
  111. LDA $87    ;状态判断$ \% O0 {' @0 h$ y& W
  112. BEQ BUL_2+ s0 M% D" b' E
  113. BUL_1:
    + o" a3 H2 I% G7 J: }
  114. LDA #$00
    7 I0 T4 J/ z* }: G6 J
  115. STA $87    ;1发子弹$ o+ x0 _. i$ _2 ?. g, x
  116. BEQ BULRTS" E' y* G: g2 `' x3 {2 `" }& w
  117. BUL_2:* I$ G* Y8 q: r# k; s- v  Q
  118. LDA #$01
    7 Y# \7 B( H6 M( Y
  119. STA $87    ;2发子弹
    & m" G- p+ u8 H, }' P: h4 X& P

  120. - `& h: W6 ~: K* `( |
  121. BULRTS:
    ' J8 `6 o* f& |- o
  122. RTS
    9 X3 p9 f1 \. O& x* y3 F

  123. 9 |, H. s* {: P6 s

  124. 6 q7 r. u0 c/ R
  125. BULLET:
    4 @' ?6 Q' j  W/ x$ ]7 q# Z
  126. LDA pause    ;判断暂停状态- ?- f. D+ v8 [
  127. BEQ BULLETRTS9 [* o4 D) a! z  {. N: Q
  128. LDA $04,X& M- t% W. j- q' A. I3 Q
  129. CMP #$40    ;按键B比较( D4 @4 U( X. I* n  A
  130. BNE BULLETRTS
    ( I' Q' A/ Y  T. R$ h
  131. LDA $6002,X    ;读取副武器
    / t; L  n# F2 I& Y+ r* `8 H" N
  132. CMP #$03
    $ k8 O' N. F6 o8 X
  133. BCC BULLETADD6 [/ G/ j7 n, Q; o7 X
  134. LDA #$FF7 z; u# j  y6 R+ F/ E
  135. STA $6002,X
    " p6 O) h/ J# M5 o* ?
  136. BULLETADD:
    5 V/ ~# Z' ]* U) ~# M
  137. INC $6002,X
    ' l8 K. f- q) F' j( d4 K! m4 P
  138. . C% ^5 k1 W% `9 M( R
  139. BULLETRTS:  l% x% E' [& i
  140. LDA $6002,X
    : |2 A: p$ m7 l, j; W: q) S6 w$ v
  141. TAY
    - _& Z& p" s/ `: E8 F
  142. LDA BULLET_DATA,Y
    5 O( ^0 a9 j$ [9 ]" Z; l
  143. STA $6004,X    ;写入副武器数据
    ' Q: N: L7 I, q; R0 F
  144. RTS3 p5 ~0 X  n9 \* v8 J
  145. 8 T0 @6 b, F& @, l  T

  146. 9 o! F0 A0 c; [6 p
  147. BULLET_DATA:
    ; W# I4 f$ O/ W$ ~/ E4 f
  148. .BYTE $06,$02,$03,$04
    & J+ w* D. U3 h2 }3 J  b* x- A5 F

  149. , \- w. }% P( c- ]
  150. 9 _0 i2 c& h" _, n6 P9 E
  151. 6 h$ y8 {7 s; h+ P% J
  152. KEY_OPERATE:    ;按键开关操作
    % e- K7 F0 I9 P3 D
  153. data_protect:    ;数据保护: Z4 @+ \& r: _8 q. Y$ B% Q
  154. PHA
    8 r0 n; H" o  D6 F6 Z7 k
  155. TXA
    1 P+ R5 L9 K7 B- `. F" p  W9 Z
  156. PHA6 x: w* @& q! X, ]' D3 b* {& l1 b
  157. TYA
    5 D6 D+ m: _8 c, p
  158. PHA
    - a$ ~$ A5 v: {
  159. # z! Q) }  {6 g0 j- ^  Y  R
  160. FLAG_INI:    ;开关标志初始化! G9 N$ r9 U5 [
  161. * {' G) d" _! B  S6 \4 \' j
  162. LDA $600F$ m% L3 N: M, P, q+ R
  163. CMP #$01" d; b7 E4 ^4 `# o' F3 o
  164. BEQ pause_cmp
    & C2 ^, \' M) u) H! w
  165. LDA #$00# m( A  A/ W9 W) I' p
  166. STA $60005 c0 g' f2 C/ g, o7 r$ L3 k
  167. STA $6001( r" r$ @$ v8 N' M" ~! t# A* E5 Z
  168. STA $6002
    / n8 t. t4 |4 \1 x- |, n" h
  169. STA $6003
    % o7 Y: x8 T* S  ^7 r
  170. STA $6004
    3 f8 K1 Z5 K8 d' {3 R' h- o
  171. STA $6005/ b; [* O. p% x/ f, k" E: Q( X
  172. LDA #$01) K; I1 s: @7 Q% k! u4 ?
  173. STA $600F
    8 F* k. m# i" k9 K

  174. . Y" B  l. `  m9 R! z! c
  175. pause_cmp:    ;判断暂停状态
    1 x* [- k+ _) Y" z: V! N
  176. LDA pause; [+ Z  r6 j4 J6 f0 l, t. Z: k& y
  177. CMP #$01    ;判断暂停状态5 e3 N) P1 y' I) s3 `3 z
  178. BEQ button_press
    2 U/ j4 X7 ~8 ^: q# f/ d6 m) q
  179. PLA
    1 p, I" A. }- X) u: x! e+ C* ^
  180. TAY. H$ R' ]* C' w, E% I0 ]% r5 e
  181. PLA/ ]* l- {5 l+ K' A5 W4 \* o
  182. TAX
    6 Q9 Y% @, _' R  l; _6 ~3 {
  183. PLA
    ; C7 _" f) c+ Z' E) X: @
  184. RTS. P$ z9 P5 ~' g2 B" p+ }0 f
  185. ( U9 d7 A/ U8 i; }
  186. button_press:    ;按压操作
    . C; Q  m1 S$ R' [+ q4 k& e
  187. ini_Y:
    7 s/ b& D6 I# g: F) g; P
  188. LDY #$00
    * k3 {; o. @5 F8 _( B* E2 ~
  189. button_cmp:
    & n. X  T- S8 `) c$ E2 O* G
  190. LDA button,X
    2 z4 L; y4 h' _/ B, ~
  191. CMP ora_data,Y9 [; S/ w& P" Y
  192. BNE count_Y_cmp
    0 C; {* b  B( r
  193. flag_cmp:! U7 w; j8 Y5 L4 t* j9 |, F/ S
  194. LDA flag,X
    ! R2 k/ @9 Y+ P
  195. AND ora_data,Y1 P" `' T. \( ]/ T& x; m4 |9 X
  196. BNE flag_and  ]4 i' w; n$ K0 \8 v  @: e( U! V; H
  197. flag_ora:
    : R; [7 `' f9 Z' R3 m3 |4 @9 i
  198. LDA flag,X0 x5 G9 s8 l: N, s5 U3 L7 I
  199. ORA ora_data,Y5 K! n8 E3 h1 _
  200. STA flag,X
    ) ^8 K! I, w" H& `5 l
  201. BNE count_Y_cmp
    ; P3 ~# {8 g) [0 m' O8 k5 J0 T/ R
  202. flag_and:
    . R0 M- B1 j! b
  203. LDA flag,X. S( r( I, |- X
  204. AND and_data,Y7 _8 N# w$ O* E% C( \3 C
  205. STA flag,X
    # f2 S' O+ w! S8 r# d
  206. count_Y_cmp:4 a' y# e+ k: h
  207. INY
    ( [. k0 o+ K3 i( `9 G4 b( q( b7 P
  208. CPY #$08  \6 _2 R3 z) A+ L. [1 l
  209. BCC button_cmp
      \& W. f& K1 [5 R" T
  210.   A" J; s) \# i, C8 M5 j- E) }
  211. data_extract:    ;数据恢复4 F7 C9 ^9 ^0 y: b3 \9 W
  212. PLA0 ^/ U. b+ l& m: `* X2 m/ n/ u
  213. TAY- x7 {2 r9 Y) q  U1 f3 P5 O
  214. PLA; s2 T+ E$ [3 {3 l
  215. TAX9 B' W6 i0 p! j  l$ `5 B
  216. PLA* b/ |" t! a  J' T$ [
  217. & q7 F' {( _% r' Q: P& k' F8 }
  218. return:) J5 q# `5 p4 j( Q7 L  E& X8 D) n% g
  219. RTS
    ! `# [8 X+ q1 ]. r% q  q# S
  220. / A) ?) L) @% Q2 N
  221. ora_data:   ;按键相或数据: ^! c" R6 \; h
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    $ H8 C0 ^: V9 i$ U7 f; m
  223. and_data:   ;按键相与数据
    ( w, m- b; P; V" h( x4 r
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    8 i2 D7 [  i, d2 I" ^) [

  225. % w  h5 H' k3 l) K- S# d

  226. 6 r7 o. x- l0 m* |  y  |
  227. ! a5 `; X  V8 k  K6 a7 a
  228. ' U1 j% ^. E; Y8 z( T
  229. ! z5 q% N/ c% n0 ]

  230. 4 E2 L: U2 F& Y: f5 ~/ U

  231. ) M$ D+ d8 Z6 Q/ L
  232. 4 u; ~/ i4 Q1 a1 Y

  233. ' `% x8 }$ U' v) k( u" ?
  234. .ORG $C264    ;自定义的MAPPER2切页程序+ F5 A, P7 Z' U, ~: h" [8 ?" T4 w
  235. PHA( c, [. {+ Z+ v  v% h
  236. TXA6 Q3 U! ^/ q3 A8 d* [3 S% _
  237. PHA' T+ [9 r1 `7 j* B3 m4 w! J
  238. LDA $00661 C' v2 e: @* k
  239. BNE ADDRC280
      f1 {- `2 y0 l' r
  240. LDA #$07
    4 Y8 h. d6 W  j3 ]$ H) O. e
  241. LDX #$03* `( M7 q% u, U) w% ^/ p
  242. JSR $CD9B    ;自带的切bank方法1 o( W* i: `7 X+ q
  243. PLA
    / H. H- d' f( j, C  k8 S2 i3 A8 p
  244. TAX7 F# M5 D% Z' F0 H
  245. PLA
    3 s5 \/ x& P* C  ~6 }2 Q
  246. JSR $8000
    * o3 k9 N# @/ W% K. W
  247. LDA #$066 H- ^) p2 x  @9 Z
  248. LDX #$032 A  x# Q7 r. ~. N* q) C+ y$ l) Y0 Y# E
  249. JSR $CD9B    ;切回原该切得bank(可以不用)# x: C9 i9 ]" W. }: u) ~4 i' n
  250. RTS
    / t0 g' ^6 o( `
  251. ADDRC280:
    # h$ k4 N) ], N7 j# n1 c7 }: S
  252. PLA
    9 x# U! z8 R9 {8 N
  253. TAX
    , P1 r$ ^0 x5 [0 T: o
  254. PLA! i, j, T. a- b( o! f9 e
  255. RTS9 X5 l8 C9 L6 K# a

  256. : @. B/ v" F* Z/ s- {1 Y$ z

  257. . q9 }2 q/ a. i' Q4 J
  258. ;[FC][最终任务PPU][END]. D) V6 T( U7 _. x9 t( _
  259. .ORG $C056    ;跳转到PPU重写程序9 E8 a) }: R) c3 Y
  260. JSR $7000
    8 |: q  w: d" |
  261. $ n! a/ r5 S- |/ k8 Y; e3 }' K' ]
  262. .ORG $CEBF3 Q# F  y) P! U2 o# t3 A' {
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入  {& \! d5 W8 f4 k7 D3 V9 o4 ?
  264.   
    . A1 D9 b! f$ u% w$ `- d/ L6 T' ?, Y4 ^
  265.   .ORG $E4605 @# ?, G2 v2 v. G
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入. E4 O& L' R9 t( @5 {* N
  267.   
    ' I/ v( c' M: \# Q* e3 \7 f
  268. .ORG $71F04 {2 t, _, W2 P! I' E) Z& v( K
  269. STAGE_DATA_WRITE:1 ^% [7 D6 A; _( ^# l. B
  270.   LDA $60109 ~  g4 ^$ ^" F* j. o1 `
  271.   STA $1E    ;关卡写入
    9 Q& j- d, _) p9 [, S1 {3 q7 O1 d3 K
  272.   LDA #$00
    ; \; G0 a+ O8 b$ ^2 h- ^! d8 h
  273.   RTS5 U/ O" \2 p) l! ?6 D- Y: |4 d
  274. .ORG $71C0& l0 x/ m- y7 g5 P# z" j8 A
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    : ]- v6 {* K9 p0 K
  276. CPX #$0E! u' N0 d; R9 g( ^1 q' l5 Q
  277. BCS P2_BUL' d5 R+ c2 \% c; z
  278. P1_BUL:$ b; `  t/ B' @5 ], T0 y
  279. LDA $6004
    , F) T: I) V6 S
  280. JSR $D7D0    ;P1副武器数据写入/ d. p. Y, U1 P: {
  281. RTS
    ( h" o) X( E* ]/ a9 |
  282. P2_BUL:* q" P  S1 Y/ y& j0 J0 |' R3 ~
  283. LDA $6005
    ) Q# o/ u& Z  W& D- S
  284. JSR $D7D0    ;P2副武器数据写入5 h1 V0 Y6 s" h) l- A
  285. RTS
    / B5 B# W- l- u7 k. U5 o

  286. 2 _! y4 V( M  W7 S1 t
  287. 6 c3 U# k/ W9 O  [5 _% X4 ~  p
  288. .ORG $7000
    ( b% ~$ l4 m0 y: Y
  289.   # p! j7 O7 b3 i- a9 d8 K; h
  290. STY $4014    ;补上覆盖的精灵写入指令4 @- V1 [  y: j4 y( k
  291. PHA& V0 p5 F  b8 \0 x! ^- c! S# F5 @
  292. TXA. Y  R9 p* O9 b+ v  b
  293. PHA5 R: D# H+ a2 w6 m7 J
  294. TYA- l& V/ V2 r* h) U
  295. PHA
    3 o" Q; ~4 {& \5 Y* Z( r7 L  ~: n1 A
  296. LDA $0C
    2 ?' G& a+ A7 w  C
  297. CMP #$01    ;比较是否为标题画面$ |3 L. w9 x5 m: {+ i3 Y
  298. BEQ PPU_STAGE  M4 X4 Q0 y! m
  299. PLA
    # y1 d5 N6 D3 v7 H' x6 N, E: d- {9 n
  300. TAY5 X, H; i. |/ l
  301. PLA, z( O# n5 |, A1 O! S; Z
  302. TAX' k( z0 O( G  E
  303. PLA
    4 a+ w7 w- [8 w4 R, \7 z
  304. RTS9 N2 i" Y; Q0 w; h. u) i
  305. PPU_STAGE:    ;STAGE显示程序
    & n4 Z2 I! C3 @. K/ a* a- u
  306. LDA PPU_ADDR_DATA+ B" q; L* e6 Q2 v
  307. STA $20067 ?5 {2 e2 B+ [' S; A4 E9 ?3 C
  308. LDA PPU_ADDR_DATA+1) A( S" O5 ~8 x8 k6 h( a$ I! |
  309. STA $2006    ;坐标设置! Q6 M/ U8 f+ B$ l$ J5 J2 z
  310. LDX #$00
    6 j2 a6 P2 {8 ^: @4 i$ M
  311. PPU_STAGE_WROTE:    ;写入STAGE字模0 N  N* z* x( \3 G! C; |% [% s
  312. LDA STAGE_DATA,X+ ]  d. v3 O; G. {8 J
  313. STA $2007
    3 i/ L8 L: N+ z. Y
  314. INX0 k9 |) F0 O: y. Y  W: k1 ~7 T
  315. CPX #$06
    ) D! L' |# e, e5 L
  316. BCC PPU_STAGE_WROTE
    . m6 z" |  n0 \& r8 H
  317. LDA $60101 G3 H1 Z- I7 V) i- c
  318. CMP #$FF    ;关卡数据初始化条件判断9 `0 a9 K# @& x! @% }+ Q
  319. BNE KEY_B
    . t9 s/ z5 v. s1 A: g7 F, Z
  320. LDA #$005 C( f( a# M  C1 ?3 x
  321. STA $6010    ;关卡数据初始化
    - P+ W. ~" x- d$ J% W) a
  322. KEY_B:    ;关卡减少" [5 U0 z# b! Q# |0 R
  323. LDA $04# T! h9 k" F$ R9 k
  324. AND #$42    ;按键B或左减关
    % T# H( k) L: i1 ?/ C
  325. BEQ KEY_A
    + ^/ Z# K- e3 ?# O+ `
  326. LDA $60106 Z$ p8 [1 Z5 q5 A, ]
  327. CMP #$00    ;关卡比较
    ! I# T: E. _" d: l
  328. BEQ KEY_A/ `4 b4 K& Z9 `4 u3 Q- k
  329. DEC $6010   ;减关/ _0 S) h3 {! T) H4 l5 Z
  330. KEY_A:    ;关卡增加
    4 r1 h- q$ f8 v
  331. LDA $04
    - x' A/ M8 i! m% W2 Y
  332. AND #$81    ;按键A或右加关5 r7 a$ c0 D/ u
  333. BEQ PPU_NUM_WRITE
    5 C1 O  c$ Z* x7 _4 H
  334. LDA $6010
    * K- w, f3 C! m+ C! q4 E! w
  335. CMP #$04    ;关卡比较
    / f! X: w3 G' y6 E7 y2 T  ?
  336. BEQ PPU_NUM_WRITE/ s6 G$ f5 T  ~
  337. INC $6010    ;加关
    ( g2 c& ~* E$ m/ y
  338. PPU_NUM_WRITE:
    9 o# Z9 a9 ^6 e
  339. LDA $6010
    : v5 G0 z- X1 @" U, K  J8 y
  340. TAX
    ) I$ F0 y+ [3 Y9 O
  341. LDA STAGE_NUM,X    ;写入数字
    . e  K( t! S4 e$ }+ r/ i
  342. STA $2007
    7 y' v+ Y  M) X* x
  343. PPU_RTS:! l! l  N! Y! z% u+ [
  344. PLA* B- q5 n5 q8 P/ j# C& ~2 o
  345. TAY1 T3 k+ n5 g  H! V- e' a! l
  346. PLA
    ! I2 S3 `+ X8 Z: |8 J4 h7 ^
  347. TAX' t& Z7 n# U9 I' o( b- S4 }0 f( I
  348. PLA: |5 l0 D( U$ ~) k1 [/ T2 C
  349. RTS# r! n: [# I" K
  350. 8 |$ c. F* S8 L( P" t1 @

  351. 5 B: U& O( m  X$ y' O! p* Y$ O* R$ b, w
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据
    9 x7 m' o) X1 |6 E2 A: @
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00
    " z$ L# z4 y( X& R
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据
    , F6 |9 q, F0 C" P8 v( }: `3 Y2 J
  355. .BYTE $D1,$D2,$D3,$D4,$D54 k* ^$ T* Z/ R0 p- S+ _

  356. ) w* _* d2 [2 j& t* U
  357. PPU_ADDR_DATA:3 J. q3 f! y. u7 A6 x
  358. .BYTE $23,$0C+ W! _/ k) H) o* ?; r

  359. # |* D7 H* j- @
复制代码

本帖子中包含更多资源

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

×

评分

1

查看全部评分

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

签到天数: 1599 天

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

使用道具 举报

签到天数: 1075 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 852 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 1992 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 57 天

[LV.5]常住居民I

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

使用道具 举报

签到天数: 3109 天

[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
, r5 M) K# ]6 B& k最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

  F' ]% J( q4 A/ e已经加上了,赶紧下载吧
[发帖际遇]: 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% [- ^% C7 g* w# \0 Y% f
旋风又疯狂大修改了 哈哈

& h  n3 |7 j, l疯狂不起来,无聊了而已
[发帖际遇]: 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-6-25 20:48

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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