EMU618社区

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑
4 {& ?3 ^$ T* t$ i; R0 Y- [5 P
: {- ]7 u" |/ H    [FC][最终任务][END选关]! L; |$ B# H0 Y- K
1 ^* w5 l8 T; x% s" V6 \( @2 e: v
时间:2017.3.29& U4 r! y9 ~7 T7 \6 V5 m, k
作者:FlameCyclone. t# t6 b! L/ |9 R8 k& J& V5 A7 m
内容:+ V* `( S  Q$ a, @' P- M+ v  D6 p
    1.关卡选择:   标题时,左或B减,右或A加(1-5关);3 W+ M2 `" ~9 F& I' `5 d" n& X4 I, \8 q
    2.无敌锁定:   暂停后,按上键切换;3 L4 W: g( W' e0 x+ K2 c; T
    3.生命加满:   暂停后,按下键切换;
; ~: t! S) Q2 c" |, U. }2 @" I    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);" ~0 T4 b" Z8 f% }) U) _
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);+ N8 \4 V2 r; e! Z' i2 O- j
    6.B弹数量:    暂停后,按A键切换(1个或2个);
6 f  {5 p( _3 F8 X7 R% Q, @    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;
; S& m, q7 N* E- ^( L/ L5 p& z2 D7 v5 M3 h( r3 v

% L- G! k4 F9 k. C" _8 L' {% T, R5 K/ g

( w# P" o1 Y( S9 M/ R3 S
8 i7 @# n/ g$ w" S* y! P
3 N1 [  i7 j7 E, T. L! @
游客,如果您要查看本帖隐藏内容请回复

& {$ A2 P  w! ~  C4 F/ C+ DFlameCyclone.ys168.com7 ~: N9 ~& W0 x
www.nesbbs.com
  1. ;[FC][最终任务KEY][END]( k+ N5 r8 i6 W+ |
  2. button = $04    ;单次按键
    & n( D1 n$ @" N
  3. flag = $6000    ;功能开关标志
    ; p# s& u8 `  T
  4. pause = $000E   ;暂停地址
    . d. e0 y  N4 u" d8 ]9 u
  5. & Y+ W* i  C! Z& z$ Q
  6. .ORG $8000+ K+ C9 m. i5 x" t' q( h
  7. LDY #$08    ;自带的按键程序1 V6 W) ~8 r1 t: T  B+ m
  8. ADDR8002:  R' G- \5 T8 {
  9. LDA $4016,X
    7 b" d: w3 Y1 z& Y( K( g6 o
  10. LSR
    % r, ^2 i3 O7 v) d! e
  11. ROL $00219 J! P/ \" y9 d* T7 t1 E: U) i1 M
  12. LSR
    8 M7 B. T& _, m- G/ Y
  13. ROL $0029
    * k3 p' w  F3 f
  14. DEY
    0 s) b0 b8 L, j$ v  V
  15. BNE $8002
    8 C/ v. O" u* S7 L* w) V
  16. LDA $0021% y* N( l# N/ [. P7 @2 y, z) A
  17. ORA $0029# t7 N( @" ], c# |
  18. STA $0021! d$ O* K4 y* m; w
  19. LDA $0020
    % }& D  A& Z* B0 ]
  20. AND $0021
    + C# n& z4 a$ u  p
  21. STA $0020+ S% w! F% C. I5 k0 N5 y
  22. LDA $06,X7 R, b3 P/ W2 o. r; a, x0 ~
  23. EOR $00205 A0 a6 @) q2 v4 e5 f% u( Y
  24. AND $0020
    ' B- {# G$ k# o
  25. STA $04,X
    9 X' v4 ~/ N9 e
  26. LDA $0020, X) Z( ^) ^+ _+ E( f/ S9 j
  27. STA $06,X/ v5 T! x0 N4 a3 o5 e  U( Y" X
  28. JSR KEY_OPERATE
    9 V  Y3 R; e5 o: m4 V' H2 B
  29. JSR Function    ;功能调用( w& Q& k3 c$ Q* N4 m
  30. JSR Weapon    ;武器切换调用- y; A5 I9 E: U5 r* \+ O& i! C
  31. JSR Power    ;威力调用
    " y9 _9 J/ c0 k2 P2 F
  32. JSR BULLET_NUM    ;子弹数目+ s* j4 n2 |. ]! d5 _1 }
  33. JSR BULLET    ;副武器类型) K' S* M4 ]! D4 G
  34. RTS
    0 a0 c$ G  c0 b

  35. , G. r: f; ~# }' K: T2 r5 X* x
  36. 5 u$ }% Z- m- U  y
  37. . j/ U+ ~. Q* H$ F5 o
  38. .ORG $8050
    6 X" Z! o$ Y& p) y4 S( O
  39. Function:    ;功能: i1 ?# G3 H2 O4 S
  40. WUDI:    ;无敌
    7 f5 Y3 @* @+ F3 o
  41. LDA $6000,X7 H4 D  i' j0 a( g) A6 z, w
  42. AND #$08    ;开关判断' N1 R% E" E* M  r6 M
  43. BEQ LIFE
    / ~6 V  z  f/ r
  44. LDA #$057 a" B# H9 K0 z( }
  45. STA $05DC,X    ;无敌锁定" L% t/ L! K+ ?
  46. LIFE:    ;生命& c6 W& }# `( O* q: y7 z; U$ X# c7 E+ n
  47. LDA $6000,X  B5 B, d; |$ [' d
  48. AND #$04    ;开关判断
    ! p* n$ o. X  _$ |( X  N# {2 `& r
  49. BEQ FUNRTS; j% a2 j8 {# X3 K6 K* D1 F) U( e
  50. LDA #$05
    2 D- W- o7 J3 A- M, u$ V
  51. STA $1C,X    ;生命赋值
    3 f6 V% x6 ~& `, w- F- S' u/ `% g$ p4 ^
  52. FUNRTS:1 X/ C8 n4 B3 `3 B1 M2 j+ T1 H
  53. RTS
    - Q* f$ d. ~( G

  54. & {6 R/ Z; K; x* [% n) D
  55. Weapon:    ;武器切换
      M$ x& T. S$ D1 r
  56. LDA pause    ;暂停状态判断$ T" z3 w" F9 @5 e/ W. R
  57. BNE WEARTS4 n# _2 s+ q8 d: @, C& f& x
  58. LDA $04,X" r+ F. Y1 o; c2 j8 j3 Z
  59. CMP #$20    ;选择键判断
    : n: X. c$ w, h- m
  60. BNE WEARTS
    2 l. h* m3 m8 U% d7 k* J
  61. LDA $12,X6 \: j5 r2 U# y. \+ g
  62. CMP #$03    ;武器值判断% n, W' p9 ~8 ~6 V
  63. BCC WEAINC
    % V; j8 H2 @# {% q) |  {6 n: s) V. D
  64. LDA #$FF
    0 i. v% a" g' ]  P0 W
  65. STA $12,X    ;武器重置
    3 {, p+ x3 D* B, j8 b- ?
  66. WEAINC:
    , X+ V- p! F7 J/ b4 U5 n% c
  67. INC $12,X    ;武器增加
      S3 I  T% d# \# _. l

  68. 3 [6 A" l1 T7 y3 V
  69. WEARTS:
    " r  F1 \+ l. q9 i/ n3 q$ `
  70. RTS
    6 C4 z) }7 U8 W- ?

  71. ) |8 @  U: f3 Z& G4 t5 N7 c
  72. Power:    ;威力
    ! L8 A: Y" j9 x$ j  i& r6 y
  73. LDA pause    ;暂停状态判断: _& G& n3 D1 e( w* v4 X+ c9 b0 M
  74. BEQ SPERTS
    5 z4 c4 s. I1 q9 t3 u) X2 G
  75. BUT_LEFT:
    . _3 J8 p7 K+ Z8 {# ]
  76. LDA $04,X
    3 A- g0 M9 Z3 [0 S5 h
  77. CMP #$02    ;左按键判断# d& ~& j' e7 i
  78. BNE BUT_RIGHT
    # }# n$ Z5 _6 x$ W3 W
  79. LDA $88,X
    / d6 W4 d! e9 o. I8 S0 P8 z. K
  80. CMP #$00    ;威力判断, _9 E; c7 s2 w  Y& x7 c
  81. BEQ SPERTS! `7 ~0 y6 ~! C: Y0 \/ l( F
  82. SPEDEC
    ) H& l7 B6 d7 _6 o8 i
  83. LDA $88,X    ;读取武器值
    . d& a5 @* _' H: Y" Q! N5 R$ w
  84. SEC
    ! d/ [6 O) r, }* ^  O( b
  85. SBC #$08: n. f0 K# W" J' w. v
  86. STA $88,X    ;威力减小0 [: v, q8 R$ ~$ V+ ~" C
  87. BUT_RIGHT:
    3 |. T; @7 Y8 M0 V+ Y
  88. LDA $04,X
    2 q( B- q7 m) ]" y" k) s
  89. CMP #$01    ;右按键判断% N: r8 }% d) c, I% n
  90. BNE SPERTS& j+ i  E4 f" V( Z" T
  91. LDA $88,X
    8 s9 A  L4 m# Q
  92. CMP #$10    ;威力判断% m( t4 P3 e/ \0 M7 F3 g2 o
  93. BEQ SPERTS
    * x: g( G7 O; Q2 b" b4 I, W* O
  94. SPEINC:
    . z) b, S- A1 n8 U' g
  95. LDA $88,X    ;读取武器值
    / m, h* M( z. ?0 y
  96. CLC. p7 c" V: F. d: }2 D1 ^. P+ t
  97. ADC #$087 O. _" Y8 v; @& n! A" h0 t; e3 _
  98. STA $88,X    ;威力增大; i4 m2 Y( w* E4 A$ x
  99. . V2 R- T8 D, s# D$ c1 S2 p, i7 [
  100. SPERTS:
    7 s9 r, R8 z6 J5 o: `/ u
  101. RTS
    9 ^) c4 U6 e' N; j# r
  102. 4 D$ g# `1 w5 z9 E
  103. BULLET_NUM:    ;子弹数目* Y2 V8 I( f# J. M6 e
  104. LDA pause    ;暂停状态判断6 [: u+ a1 r2 N5 k( b. H  r. i
  105. BEQ BULRTS  b! }: z9 K* e/ s( p
  106. CPX #$00    ;主机玩家判断/ U# V4 ?5 y9 B3 x" v' C  W
  107. BNE BULRTS
    ) Q( p4 \4 @9 H1 g
  108. LDA $04,X    ;主机玩家判断
    / u  D  n2 Y. {( C0 u- c
  109. AND #$80    ;按键A比较
    ' e2 z& d0 V$ j" M
  110. BEQ BULRTS
    5 P# S- w5 K0 r8 ]
  111. LDA $87    ;状态判断
    ( _6 X  u2 J- u* q, G# S
  112. BEQ BUL_2# s9 z, T5 V( h- g. `; J
  113. BUL_1:- h: P' U% L/ {) \# O& n( e6 T% @
  114. LDA #$001 ~) X) K8 v; p8 S4 i
  115. STA $87    ;1发子弹4 b2 }9 P3 y: B5 F
  116. BEQ BULRTS
    ! ?* s2 d( G& g& N2 z3 B& O, J
  117. BUL_2:  b  }  K: z" v- ]$ ^& c( Y; l
  118. LDA #$01: a$ w+ @7 c0 |: j" f
  119. STA $87    ;2发子弹
    . e4 L2 Y. `: r0 Q  M: c

  120. : t' |& W4 g# n$ r% Q9 Q
  121. BULRTS:
    & o! y, @; o" J1 N8 O  D. n
  122. RTS
    0 ^. j' o- a$ Z

  123. ! n; U! h* `6 c* t+ Y

  124. 7 \; _( n! {/ t7 A5 T6 b/ ]( e
  125. BULLET:
    + ^8 O) C. Z9 [1 k. M
  126. LDA pause    ;判断暂停状态5 W! p' D- w- t- i5 ]+ ^- K9 Y, |
  127. BEQ BULLETRTS" o( k' n& L8 f5 D
  128. LDA $04,X
    / A$ h$ y  P3 }- E5 L
  129. CMP #$40    ;按键B比较
    - r' {1 H( o- g; ?$ t
  130. BNE BULLETRTS
    9 b. J# `+ l( n& Q! q0 H1 l* L
  131. LDA $6002,X    ;读取副武器
    * q5 Y" T3 i& _  u4 d
  132. CMP #$03
    0 ?8 Y, g3 ^" ^
  133. BCC BULLETADD" p. {6 U7 ?2 L
  134. LDA #$FF
    6 H8 Y  }7 ]- o0 M; Q  p2 j$ }
  135. STA $6002,X
    ' ?/ R  v- Q7 Z. _% u. E  R4 J
  136. BULLETADD:
    & \& x1 `' Q/ f( b
  137. INC $6002,X/ G" M5 s9 f! [/ P* J0 a( e

  138. : u3 J! _, J4 ]( r/ Q
  139. BULLETRTS:
      X5 Q9 ^6 B& p$ I
  140. LDA $6002,X
    0 Q+ }6 h# J# ?# ~& I
  141. TAY
    5 h5 z; ?7 _0 x. t" \( {$ v
  142. LDA BULLET_DATA,Y0 x5 V0 h# z% g) @+ c
  143. STA $6004,X    ;写入副武器数据
    : t( z/ t$ s0 W7 H% h; D
  144. RTS
    # D- D" ^4 v, t5 `3 E2 H
  145. 8 p1 r. }3 e% Z' y% E4 q
  146. , Q" g1 ~& P+ y9 i: M
  147. BULLET_DATA:. {' B# O. L' a3 W' k+ t' b* V  Q
  148. .BYTE $06,$02,$03,$04
    $ Y' w" Q8 `6 Y$ c2 l! i
  149. ! {* V  x& e% r3 W
  150. + R6 a/ P  e8 y! Q
  151. 6 C1 b+ m1 D; W; `2 \! L+ ^
  152. KEY_OPERATE:    ;按键开关操作# h  E. Q  ?8 |) B% |( I
  153. data_protect:    ;数据保护7 A0 c' h% u. [/ \- D; O8 R
  154. PHA
    & l3 x( K" z# r% M5 A2 U
  155. TXA
    5 @- q# O6 _: u% O
  156. PHA
      i8 d+ s& O# h  c$ j& v0 f
  157. TYA+ K' Z% A/ F: k+ ], \
  158. PHA5 q) e8 D+ Q- n0 w1 P1 ]

  159. + i) ]% h0 T$ F
  160. FLAG_INI:    ;开关标志初始化+ x2 \; m" y* q

  161. . o5 i3 P7 `1 I: P) K% B
  162. LDA $600F
    ) h4 E" }9 {- n; Q& v7 Y" M; N2 a
  163. CMP #$01" }7 T# S+ g2 A* o  \% R5 v
  164. BEQ pause_cmp
    ; p' w( W% y& g/ k5 s; W) [
  165. LDA #$00
    + h9 g9 N+ m+ N) A
  166. STA $6000! @6 f" C- g6 w0 B7 `% ^8 B, |
  167. STA $6001
    $ h' |/ T2 A/ |. d% G& G7 r
  168. STA $6002
    % f- C# @  i- V  w" Z6 U9 ~5 G  s
  169. STA $6003
    8 ^0 D& d# L1 z$ t  C+ Q& D
  170. STA $6004, O, f* s, T8 {$ a6 T
  171. STA $6005
    ) p  Y/ R2 I/ `. A: j# P; N
  172. LDA #$01
    + m( Z) V" N4 @5 r, Y2 \
  173. STA $600F
    8 i: O" X  Z2 @6 x
  174. ' \4 t) O, |3 Y$ q
  175. pause_cmp:    ;判断暂停状态  I) L( L& x7 h: e  e' y( {
  176. LDA pause
    ; I' |6 P8 X# I2 V
  177. CMP #$01    ;判断暂停状态
    , T' A+ M; ~( d) ]  E
  178. BEQ button_press
    0 \' Z; y( a6 o  J% C3 w
  179. PLA
    $ _% y1 G# s3 {% g, `
  180. TAY
    $ @& D% [1 [4 J% W$ H
  181. PLA
    - b" P5 S; w2 }! W
  182. TAX
    + V# u* P5 V$ y1 b% M
  183. PLA
    ' p1 K+ X# f9 B; e7 O& H/ T1 ^
  184. RTS0 r# \) U& `3 B$ X1 w
  185. ( V) b5 {7 ?* R1 n+ H7 X7 Z
  186. button_press:    ;按压操作6 V* U- N3 h- D8 W
  187. ini_Y:
    8 C/ m% i8 V. R
  188. LDY #$00
    + M, e9 f$ h. U6 E. G) i3 W
  189. button_cmp:
    ; E& F3 V2 U1 k
  190. LDA button,X
    ( T' f- W. S1 M# Q$ \
  191. CMP ora_data,Y
    9 L1 R2 a- c2 |3 S: k1 u& M
  192. BNE count_Y_cmp* [* q7 x1 g2 |  _
  193. flag_cmp:, i# \1 B$ y9 r+ w
  194. LDA flag,X% z. |! S( v- x5 u9 c$ u
  195. AND ora_data,Y; l' I' ~5 U, m7 |2 q+ {
  196. BNE flag_and3 F% c$ R  \. f3 g' y6 T; q
  197. flag_ora:3 S; H2 `2 d6 w( B# z; M& ]
  198. LDA flag,X
    4 E; T* Q" J. Z( l/ W* G
  199. ORA ora_data,Y- r# c3 y0 G" _4 e+ U, S' j
  200. STA flag,X$ V2 H% `% A3 s3 F
  201. BNE count_Y_cmp# ?+ n+ V+ i$ @9 ?
  202. flag_and:( c, l) g6 w+ S
  203. LDA flag,X' G- Z! i) d$ A+ `  Z
  204. AND and_data,Y
    & ]( I8 q* O# z- k* T& m6 e
  205. STA flag,X
    " r6 u3 C( n6 s
  206. count_Y_cmp:% C7 m3 H  G, v. \5 s1 c* K( p
  207. INY
    5 [2 x$ |/ B5 U5 n5 `
  208. CPY #$08* J* ^0 S% j% l& n) |
  209. BCC button_cmp) R, u: N; W: _

  210.   h$ ~# F' I; G
  211. data_extract:    ;数据恢复; Z$ ?9 g6 a- k
  212. PLA
    7 \) U. |8 A- W7 \) g
  213. TAY
    . k" m5 R. A) j5 D
  214. PLA5 x' E2 |$ y1 l& N
  215. TAX
    $ J1 K$ s) ]7 \
  216. PLA
    2 [. d3 Z8 ]5 u, A' f

  217. 8 r1 }: ]6 I- X  Y1 l
  218. return:
    3 K/ e7 k5 c5 t/ C; w+ c
  219. RTS3 q! I# ^: m- P% \: b
  220.   _3 P( A& G1 p& @( B
  221. ora_data:   ;按键相或数据% q4 R" o$ m7 {* o+ m/ a6 M$ ?
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10; f$ p! m- M- p/ R4 @/ R3 r
  223. and_data:   ;按键相与数据7 h+ e' D6 I: D: [" x2 h
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF" o8 \' m/ f7 M3 r& x' \9 s
  225. * Q) E7 s- M& r% ?5 }
  226. $ E9 S1 i% g6 [/ x' v8 r. Q
  227. ( `/ U5 E1 a+ E
  228. & \0 a- `  D' m3 b& }4 R

  229.   n# O& O, x+ ?# ~

  230. : @! c, p! [' \! f+ ?9 x8 c# X
  231. 6 A! E& b. [2 k$ \

  232. 4 Z$ r6 G7 p0 x) G, [) z) X& A2 u
  233. 7 ~" E) k% Y. Y. O  \$ a- s8 t: [2 O$ Z
  234. .ORG $C264    ;自定义的MAPPER2切页程序1 w. z  Q7 L' F) ?. c2 c3 R
  235. PHA( `5 Z. T3 e/ w: m$ y
  236. TXA; i6 `2 V1 _: v( E" n- h
  237. PHA' d% q' N) ?8 a$ i
  238. LDA $0066" B  a8 H& `! B1 D8 [3 ~. B
  239. BNE ADDRC280" ^7 o, o8 X2 m/ X
  240. LDA #$07
    . d! I! D+ n# \3 u( N
  241. LDX #$03
    & C; z; g, d. p! m* v4 H( Q
  242. JSR $CD9B    ;自带的切bank方法
    , m! W& @$ c1 Y
  243. PLA" Y* z( G( S! F  k
  244. TAX
    ! R+ f8 g; ^" w% H
  245. PLA0 p7 F3 W) P' w2 V3 q& ?
  246. JSR $8000
    0 c0 a( g( }- Z( h* Q
  247. LDA #$06. b9 S7 {. p6 F- i- b
  248. LDX #$036 Z' k& T4 S* y% W- y
  249. JSR $CD9B    ;切回原该切得bank(可以不用)5 A: R& y$ n3 }; A) T. Y9 p% T& u* r
  250. RTS; h# t: w# N% N- S
  251. ADDRC280:5 U" w0 Q8 }6 Y1 L
  252. PLA- R" O- X: A( Z* ~
  253. TAX$ o. @9 Q5 k+ l5 H) t
  254. PLA. ?6 e- m9 L0 v) q0 |9 W
  255. RTS
    ) |. C) f" W& l7 C, ^1 \+ z1 R( D

  256. ( E  V: S. i8 |- [7 |
  257. ; @7 f6 a, f& i9 ]1 t; c5 a
  258. ;[FC][最终任务PPU][END]
    4 e3 r  `) F+ r. z" W% J- x
  259. .ORG $C056    ;跳转到PPU重写程序
    * u" A: ?1 e2 l' m6 z' v
  260. JSR $7000$ }$ U1 V" N5 \  I
  261. 8 F' F7 @, d3 o- W
  262. .ORG $CEBF' J2 Y4 O/ Q, o, O9 U% w" f
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入: O6 [. M, }# _) ]: a, g
  264.   
    6 Y+ `7 J+ m! F
  265.   .ORG $E460& I0 h6 N$ V& }
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入0 h# @$ Y5 w+ e% z% I- D
  267.   ! s) b9 r& ~0 r5 g2 }. C, k
  268. .ORG $71F0  @( x: p+ k7 h- ?  K$ P- P
  269. STAGE_DATA_WRITE:
    3 u, z, \/ M7 V2 V2 M
  270.   LDA $60108 [0 u* V2 s- [; w- }! `
  271.   STA $1E    ;关卡写入
    : N3 D6 t8 b, t
  272.   LDA #$00
    1 L( V) ^# u& M2 @: ]" W
  273.   RTS' ~) C/ ?; T) ]0 @- K5 u, k
  274. .ORG $71C0
    7 e! {, `- [& y1 x' t( o
  275. BULLET_DATA_WRITE:    ;副武器数据写入1 V. J) ?( n3 g# d$ u
  276. CPX #$0E. T8 P# d+ g$ ?2 ^3 l2 @
  277. BCS P2_BUL
    # w! s0 l" w& X* X8 r* n
  278. P1_BUL:# c! ~5 U- ?, Z3 J
  279. LDA $6004
    8 s% o2 l# o* {! I
  280. JSR $D7D0    ;P1副武器数据写入
    # S- H3 _; F# R+ ^; g$ c% F! w# @9 i
  281. RTS
    - |5 B' f8 `: ^7 y2 C( k- e- }. y
  282. P2_BUL:
    1 Y# n+ ?3 O" q2 k5 Q
  283. LDA $6005# `. x# a; C& W8 W& `# h+ s
  284. JSR $D7D0    ;P2副武器数据写入
    : ]0 s9 c3 L* a* W
  285. RTS
    7 G' `* K2 n9 o9 c% U
  286. / H7 G% c0 N3 H+ p5 c& y' J
  287. 8 B- l5 @, r. V0 d  W  S
  288. .ORG $70004 {. K: `+ T0 {0 K
  289.   
    9 `4 A1 T: B  M0 G# Z) G0 E- Q2 x
  290. STY $4014    ;补上覆盖的精灵写入指令3 b7 |' X/ w+ f5 M) w. T
  291. PHA
    9 g* |# _$ h+ ^+ D5 u3 R& d
  292. TXA$ h8 n! ~% W! K
  293. PHA
    & |5 v. d3 J) h
  294. TYA4 ~! p( O/ x/ `* S- H" i
  295. PHA  e9 D! e! F1 j! \3 Y! m
  296. LDA $0C
    6 h" @6 H% ~: s% J; B- E
  297. CMP #$01    ;比较是否为标题画面6 c" a7 w' ]: f5 i8 r
  298. BEQ PPU_STAGE+ s6 y, a3 z, w
  299. PLA
    2 A/ f& O. ?5 t* \4 m
  300. TAY) j2 P7 P9 L5 H- \2 e, ^1 Z: Y, @. _: g
  301. PLA
    5 a; i. i1 b% K( F2 M6 t5 x
  302. TAX- X  a, N6 k4 J" K6 y7 X7 i
  303. PLA) f: \0 k. m# s
  304. RTS
    & `, A0 M* \3 U' l5 w/ c7 g
  305. PPU_STAGE:    ;STAGE显示程序1 ~8 d8 o$ v7 D
  306. LDA PPU_ADDR_DATA# ]: z# D* ]  z9 I" U+ M
  307. STA $2006
    / O# Y% D0 z$ P8 Z. {, d
  308. LDA PPU_ADDR_DATA+1
    9 X1 c# I: `3 s+ j
  309. STA $2006    ;坐标设置: s; b* a% Q$ ^; h
  310. LDX #$00/ C9 W! K' X3 f: d4 ]: h
  311. PPU_STAGE_WROTE:    ;写入STAGE字模
    ! Y5 C: V% F: c) p/ d6 U
  312. LDA STAGE_DATA,X, v6 v" g  H$ A+ B* ^2 H' X; F! P5 V% S
  313. STA $2007
    ; O- x  c+ `' g. q
  314. INX2 y1 D( B2 l$ h% i* E- d% s
  315. CPX #$06& t( U' [0 X8 f9 J2 B
  316. BCC PPU_STAGE_WROTE
    1 o- d3 k( B& {, Z9 d
  317. LDA $6010
    7 \* L* D6 S( r! W+ e, i* @" g
  318. CMP #$FF    ;关卡数据初始化条件判断# l0 P2 R& N$ O4 X: \1 X
  319. BNE KEY_B
    " D$ m" [9 `" P9 \% n4 [, q
  320. LDA #$003 r2 ?- h, J6 w
  321. STA $6010    ;关卡数据初始化
    - O# ~2 X/ T9 p1 s7 O
  322. KEY_B:    ;关卡减少6 \: n+ x8 V# u9 b- r- k7 U
  323. LDA $04) u* E0 G- Z- |) g# H& Y* }: E
  324. AND #$42    ;按键B或左减关
    2 n9 Y* W4 A2 X$ B7 p) {7 \
  325. BEQ KEY_A
      T: D& @1 Z% z) w& `% x' c2 ^1 u
  326. LDA $6010
    : V# K% L/ I- z
  327. CMP #$00    ;关卡比较% A% V' y6 ?! J  l
  328. BEQ KEY_A' e6 x, b* F9 h( n
  329. DEC $6010   ;减关
    7 @' o: C$ }- |" ^% h. W
  330. KEY_A:    ;关卡增加
    - ]9 d8 f) @/ T, f1 S/ o
  331. LDA $04
    & Q  P! F# y3 [! N5 P" Q, p
  332. AND #$81    ;按键A或右加关0 \  _2 y% k) L+ M8 R* z' [( F
  333. BEQ PPU_NUM_WRITE
    $ I/ x9 I* G! K- W/ Z  B
  334. LDA $6010  w, }0 p/ F7 d6 @/ t
  335. CMP #$04    ;关卡比较+ ?4 f- |% c7 u) u8 D( Z( ]/ B
  336. BEQ PPU_NUM_WRITE& s2 C& K- m( b$ Y& T" q( N
  337. INC $6010    ;加关2 |8 H' P$ Z3 m: C
  338. PPU_NUM_WRITE:
    * A+ \8 q. h& l
  339. LDA $6010
    " @1 ]$ Y  P/ `' b4 B
  340. TAX9 f- m+ f' Y& X' h0 [
  341. LDA STAGE_NUM,X    ;写入数字
    , S: H; G7 i6 k
  342. STA $2007
    4 T3 K& R4 Y, B+ ~& ?3 A
  343. PPU_RTS:
    ! m7 L6 R6 ?+ F" [6 f: r5 d
  344. PLA
    $ P; M* f( l1 Q! q2 y& A) G2 _
  345. TAY
    ; ?6 i/ j$ }- P. K4 O3 h4 O- b6 @
  346. PLA+ c4 N. b- S- f5 ~! s
  347. TAX) t  |/ ?: m* k5 E. @( F' F' Y
  348. PLA
    ; R' I8 @9 y5 ~& M, z
  349. RTS1 K8 l7 g; C# s" u1 O: {1 N8 a' r% B

  350. 0 z1 c" y  T  `& h# V/ i

  351. * W. q% A  G) `- G; w
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据
    ' u" \$ Q  B) @; z
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00& N3 D" b( h# m  f, X0 w
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据) N; y# V' M; n  L6 I  x2 _
  355. .BYTE $D1,$D2,$D3,$D4,$D5* `; b% T& ~: B1 `" W

  356. 6 q3 c6 u- `5 P7 v* H
  357. PPU_ADDR_DATA:8 O& c* H0 V2 k
  358. .BYTE $23,$0C
    ! b4 ~& ^" k" f0 ]8 s" Q" @* H( W4 @
  359. ' z! u' `, g+ b6 Z: }- ?: b
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 1638 天

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

签到天数: 1063 天

[LV.10]以坛为家III

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 1962 天

[LV.Master]伴坛终老

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

签到天数: 57 天

[LV.5]常住居民I

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

签到天数: 3082 天

[LV.Master]伴坛终老

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

签到天数: 1773 天

[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
& L' r, ]( H" C7 L+ D# e: W最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊
' G$ o+ k. f, F* M3 R1 L8 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/ X3 A; E4 z$ ?$ S* B- s9 _
旋风又疯狂大修改了 哈哈

- U+ `+ R- x$ y, x1 Y疯狂不起来,无聊了而已
[发帖际遇]: 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, 2025-6-2 07:27 , Processed in 1.087891 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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