设为首页收藏本站

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑
4 V' `* B) E2 M5 W# l0 [
" Z  V2 J9 D7 u4 o5 q    [FC][最终任务][END选关]
( Y4 U# V5 e% M: J/ K% G& a" j
* \9 D$ F) a* v" g; u6 ~3 \时间:2017.3.29+ C9 V; a6 f/ a1 b  l5 S
作者:FlameCyclone
4 K+ H. w9 X$ x! p4 j1 Z* G内容:
6 c  K' ?3 @. S% @5 g5 c; L    1.关卡选择:   标题时,左或B减,右或A加(1-5关);
6 W' w$ G. h9 W) p, A  X9 k    2.无敌锁定:   暂停后,按上键切换;2 ^- A) _5 Z# e* f0 J
    3.生命加满:   暂停后,按下键切换;
0 {1 e6 H4 o" z( X! q    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);
; J) k0 g9 ]2 l: c6 X4 |" I    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);
; L0 c: D2 \5 ]% t0 @    6.B弹数量:    暂停后,按A键切换(1个或2个);: x' o$ S) o& _: h/ _& e# l9 A" g( Z+ ?
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;
6 s: y$ Z& ]) Z  m$ T& m3 Y4 \. `* N& p6 a7 X8 F  a( d; s+ y
% X+ V* b5 U/ ?4 S. H7 O7 P$ M
/ {8 f0 P" C2 r2 w8 H7 _/ k. d
# P! N6 N; _$ h3 ~7 G/ s- @: A) G

8 O" N' a" m( [% \' m& H* m- Z, ?1 }' c
4 H' V7 u0 I1 h
游客,如果您要查看本帖隐藏内容请回复

" h: I% ^) `: Y) {5 p& rFlameCyclone.ys168.com9 R0 V; J( I+ v
www.nesbbs.com
  1. ;[FC][最终任务KEY][END]
    8 K* ]% N3 Y9 R4 H) {" p
  2. button = $04    ;单次按键
    $ ~9 @  u1 i* @9 q3 }* t
  3. flag = $6000    ;功能开关标志  F8 K0 {" g8 ~, z  l
  4. pause = $000E   ;暂停地址% ^. x- {" r- r1 o$ ?9 D+ j
  5. ) }* y4 Y) A: v+ X. e
  6. .ORG $8000
      l% z; l: [8 ~- V( x
  7. LDY #$08    ;自带的按键程序
    $ ^. N2 T  D% M( T6 Z) m
  8. ADDR8002:
    ; z" C% C0 S6 c- q
  9. LDA $4016,X+ n; r8 X2 [' w" [7 t4 `
  10. LSR
    ' ?% P- C0 t( J& M; T6 P7 V
  11. ROL $0021
    , k+ W5 T1 q& l
  12. LSR
    ) ?2 i2 K9 y' b8 B$ g2 P' m6 R4 |
  13. ROL $0029  |! r! ^; p9 y; @
  14. DEY
    ; B6 a  Z( d% F6 p
  15. BNE $8002
    4 F1 p: Z2 T# d4 b1 S% }
  16. LDA $0021
    : @; {4 u! @( n. Z3 z4 j& z6 g: v' p
  17. ORA $0029
    , \- R& ?8 C$ x
  18. STA $0021* V5 D) i. |& ]/ l7 l
  19. LDA $0020; H& W! c. q/ ]2 c( J: l
  20. AND $00217 e. N2 p; O3 g) q) p0 K
  21. STA $0020, i  m4 o; p# K" `
  22. LDA $06,X
      s; {/ Y! z% J" `. Q2 e
  23. EOR $0020
    0 a5 j3 W8 x; E8 h
  24. AND $0020& J1 b& v) W! [; J2 {6 {
  25. STA $04,X
    ! O' E1 U4 o8 M( o# z1 _
  26. LDA $0020. C5 s9 P$ [" T
  27. STA $06,X: j, o8 ]9 N" X
  28. JSR KEY_OPERATE" e3 G: Y$ @2 X& V' E4 v" b
  29. JSR Function    ;功能调用
    # r8 H* s: X  c# b! g
  30. JSR Weapon    ;武器切换调用( Y' A4 b* k3 G# {7 k
  31. JSR Power    ;威力调用0 o( M) s( d" s7 Q# |& p
  32. JSR BULLET_NUM    ;子弹数目0 J7 ^  z0 b- H/ c4 b
  33. JSR BULLET    ;副武器类型
    ' J! |- [9 r2 w" J7 D+ I, w6 w3 P
  34. RTS
      r$ g' m7 v% H; M5 N3 B% x

  35. * X' m! L' L7 x1 i' T
  36. % _- D+ n# _5 s! d
  37. 8 o) g; o4 s. {$ m' t
  38. .ORG $8050  B, L  W8 U" m' M# ^: [
  39. Function:    ;功能
    : g; c9 @, X; p  d3 v7 V
  40. WUDI:    ;无敌
    1 H5 w, I( G1 @# [" j
  41. LDA $6000,X7 p0 _+ N7 o8 C  V9 _
  42. AND #$08    ;开关判断
    9 ]& H' k7 p" t# l" k; M: G: U
  43. BEQ LIFE; c$ i: x; p" R; y0 S. M7 q+ y
  44. LDA #$057 A( P# S% u3 t1 D! g- W
  45. STA $05DC,X    ;无敌锁定/ ^# d* g5 A6 N! j1 B& z6 g( H8 v
  46. LIFE:    ;生命
    5 M% r' ?7 D6 ?0 Y* o5 B
  47. LDA $6000,X8 \% w" ^% v" |! q  P; y" q
  48. AND #$04    ;开关判断1 J9 J: p: d! M; f2 B8 k6 o( g
  49. BEQ FUNRTS
    : M0 K% M, g$ I5 `
  50. LDA #$05
    # J9 p' s- ?7 U: g' S% v
  51. STA $1C,X    ;生命赋值
    3 I* v$ o$ C7 G! t% o
  52. FUNRTS:
    1 ^$ I6 c% m3 Y; v+ e& g- D
  53. RTS$ k# Q9 u! \' e% s  }

  54. # n# l& W7 b6 |' V
  55. Weapon:    ;武器切换
    2 T9 e* R6 F6 h$ ^& @: G
  56. LDA pause    ;暂停状态判断* A% b, g: U' `
  57. BNE WEARTS: x$ Z& M" L8 y- i
  58. LDA $04,X
    0 N7 e/ Z6 }' l, A4 r2 D: h
  59. CMP #$20    ;选择键判断
    : D- o! {0 v+ g) ~: _7 i! q: S! d6 ^
  60. BNE WEARTS0 N7 P1 A" I% [
  61. LDA $12,X( b7 P; j; v, S( ^* Z6 K
  62. CMP #$03    ;武器值判断
    9 Q0 Q0 W4 n/ j. h( X- _
  63. BCC WEAINC/ k3 ~6 R) c0 d6 A7 P- j2 \* o
  64. LDA #$FF
    $ }( ]$ ?( q; K  L+ m
  65. STA $12,X    ;武器重置
    $ E! _9 x( U; G, K: m
  66. WEAINC:9 ?0 @, P! V/ H; @
  67. INC $12,X    ;武器增加
    ' F0 {. i$ V* g6 |

  68. 4 `1 s/ J  T5 @0 G' ]
  69. WEARTS:6 N" k' q$ |3 Z, I# E
  70. RTS
    . Y6 b) j2 `2 q7 \) i

  71. 9 ~! `" U6 h0 c% _' f7 |, i
  72. Power:    ;威力
    5 H5 U; X* L, V  }
  73. LDA pause    ;暂停状态判断+ [! K) c. H/ N+ R' U
  74. BEQ SPERTS# c8 ?! w2 j+ f9 w6 E8 K5 R
  75. BUT_LEFT:/ J. M. u# X5 D, Y3 P
  76. LDA $04,X
    * s$ Q( f& a6 o& S2 M: Z
  77. CMP #$02    ;左按键判断
    6 G6 F* f8 U/ |  E2 h" \7 g9 f
  78. BNE BUT_RIGHT! k1 k) G* V; D4 e8 M; M8 k4 t
  79. LDA $88,X
    2 y$ L- N3 y9 ~1 h. ]
  80. CMP #$00    ;威力判断
    - @$ d. K" j4 j$ B! K0 g/ n
  81. BEQ SPERTS
    , Y$ E6 l% ^7 ~4 {  p* G+ f% i
  82. SPEDEC
    " V2 e- S; a& q  G
  83. LDA $88,X    ;读取武器值
    9 ~. d' q: |4 m; a& }: g1 e
  84. SEC
    $ z3 g* q0 \0 @; \1 w
  85. SBC #$08
      L1 D& u/ f6 F6 F: V0 v& M  T
  86. STA $88,X    ;威力减小6 x1 q% D4 U$ w7 f& j/ M
  87. BUT_RIGHT:6 \+ c  @9 Q5 L% L( K3 n
  88. LDA $04,X3 s" ~6 F+ ]" q& O, I2 g9 R5 e
  89. CMP #$01    ;右按键判断
    + [+ {! `; \2 y" b
  90. BNE SPERTS
    + Q/ G( _$ t9 m; W
  91. LDA $88,X
    ' N# s  ~) P5 }& [+ Y, K( Q% E' v
  92. CMP #$10    ;威力判断
    * z- d" n" v, h* c
  93. BEQ SPERTS4 R4 E5 G- ?" J( n
  94. SPEINC:/ ^; v) @  `9 C0 k  }
  95. LDA $88,X    ;读取武器值5 ?' A, j; L+ Z3 w' [
  96. CLC+ h+ w' {# q) m) }
  97. ADC #$08; G' `) ^, v( D# ]0 r9 R; l9 T
  98. STA $88,X    ;威力增大" ~+ O4 K' k* d7 b# F

  99. / c) z, I3 ~+ |5 C  Y  s0 r* j
  100. SPERTS:
    2 {9 p- }' q, {
  101. RTS! R9 ^. K% a9 H

  102. 9 s: g: W) J; v( k+ u; Y5 d- G- S$ S
  103. BULLET_NUM:    ;子弹数目
    " j9 y7 w+ P/ j! Q2 G
  104. LDA pause    ;暂停状态判断0 |8 l( z, u! [+ J& \
  105. BEQ BULRTS
    ' \$ T. ]2 o0 X
  106. CPX #$00    ;主机玩家判断) a, T! }/ q: g5 s8 V) r1 C- ~
  107. BNE BULRTS
    / N! m' _$ p" N9 a* x
  108. LDA $04,X    ;主机玩家判断
    . E. @( O# ]: }$ `3 F( D- ]
  109. AND #$80    ;按键A比较' j% h/ G. l3 V0 A4 F! N- @8 r( y
  110. BEQ BULRTS9 e, A8 i2 x" t: I
  111. LDA $87    ;状态判断/ P  W) c. O0 S2 J! u. u
  112. BEQ BUL_2( y. j% T+ I- ~+ D$ E, G
  113. BUL_1:# A9 r/ n5 P2 S% N$ P
  114. LDA #$00
    + A+ }3 Q/ U% u
  115. STA $87    ;1发子弹
    6 h  w6 r# ^+ R6 u3 R! O: a
  116. BEQ BULRTS
    9 ~5 X9 Z7 m* X% T
  117. BUL_2:, J5 X1 z( T# {) S! z0 }- D3 d
  118. LDA #$01
    # }# i  R, ?2 e+ F7 z  ^
  119. STA $87    ;2发子弹
    ! k/ u: K3 ~1 q( }

  120. ! ^" n  q8 \2 e6 G' y
  121. BULRTS:
    ' f$ J9 e- M" S  a1 t
  122. RTS" y0 G1 X  ?* y# W' }
  123. : Z' ?& S- X7 y) s, z: B" f6 h

  124. ' i4 L5 ?2 o1 a: w% X* D7 G+ \9 R
  125. BULLET:
      `6 u0 t6 m: K. Z
  126. LDA pause    ;判断暂停状态- n% d4 Y, I2 C" @: k
  127. BEQ BULLETRTS
    8 a. n4 T' v7 \9 z, A! E7 K/ V2 `
  128. LDA $04,X: t& u% t% x2 G. X
  129. CMP #$40    ;按键B比较
    6 j8 A: U5 Y; E( V! W
  130. BNE BULLETRTS: M' o& L# V, E- ~% x% m9 T% t
  131. LDA $6002,X    ;读取副武器
    ( O8 ^4 c: l; W1 u
  132. CMP #$03
    , }4 Q; S& p/ G5 E5 r& E5 \6 d+ Z
  133. BCC BULLETADD0 t6 |( G9 i5 g( o, \
  134. LDA #$FF
    # y7 N- N, _( O7 R- P
  135. STA $6002,X
    % i. {- _+ N% w0 N3 X
  136. BULLETADD:
    / u# H1 j( j2 Q* K7 r
  137. INC $6002,X+ l. |! a. P9 v! Q- K* g

  138. & ]  t  q4 F; B! _  [# g2 U2 u. [
  139. BULLETRTS:, o" }8 Q$ Y4 m4 K; o
  140. LDA $6002,X2 k( c! `  v1 G1 Y1 C5 e8 b, G
  141. TAY  Q1 w9 F2 Y! x+ |1 P/ y7 g
  142. LDA BULLET_DATA,Y2 X$ U1 @3 t4 g4 C
  143. STA $6004,X    ;写入副武器数据5 @6 t/ t3 U: \& ^8 |
  144. RTS
    0 z" K3 D" B( t; W7 O9 F% s
  145. 7 i3 {$ N7 [0 T

  146. ; Q) H8 J1 G  F" A7 _
  147. BULLET_DATA:4 r$ z% V/ s+ j* s3 Z3 t/ ]
  148. .BYTE $06,$02,$03,$04
    : d; L0 V) I* f/ w' M) }

  149.   @! c( `; e: a$ p: }- j& J& s5 G

  150. * i8 n) k& W" h& _

  151.   v8 a+ L; ^1 I" k% O$ _
  152. KEY_OPERATE:    ;按键开关操作) |3 N1 L* _$ x$ R7 q6 c) P
  153. data_protect:    ;数据保护
    ! z/ o9 @- m) [3 z; t' y$ W- a( x
  154. PHA9 z( d/ G, g  m0 `% P9 i3 C! e
  155. TXA
    1 j# e# N& k/ J' \8 ?# N: |* _! {
  156. PHA3 O+ e5 a8 ]: R0 O4 p% i3 t
  157. TYA" B! M0 o  k$ V$ f0 D+ g& D! _. m3 @: o( E
  158. PHA/ N  {) a* N. A+ |& }5 s% T0 N
  159. 4 M3 z- J& }' h/ V  T
  160. FLAG_INI:    ;开关标志初始化, I& e5 _3 N$ P* U& r
  161. $ A" T  e% P; A- J, x
  162. LDA $600F' j1 F) R  z; ~2 d3 N; Y
  163. CMP #$01
    8 T: r1 o% ?; M
  164. BEQ pause_cmp
    ( a1 l+ K# }/ ~8 W* s' H0 z! e
  165. LDA #$00" m8 e& q3 y" _* C
  166. STA $6000
    # `2 T5 w' L: u6 A9 x& w
  167. STA $6001
    ) b$ h& V0 T* A: S0 h3 }$ [6 B
  168. STA $6002" W( G! p: k' E2 e1 U! z+ i
  169. STA $6003+ E* Z2 f/ O$ l' V8 r
  170. STA $6004# C9 a7 k, u+ m. i8 ]
  171. STA $60053 M& j9 s$ G# D1 i2 k7 Q
  172. LDA #$010 y6 _$ S1 H+ N$ E$ e; S
  173. STA $600F
      ?5 \0 u* N5 N( O! q2 `+ O
  174. # e' X( T  ~! Z5 o
  175. pause_cmp:    ;判断暂停状态
    $ n- q. U" ^* W& V" b
  176. LDA pause' B" ^' I% U) {
  177. CMP #$01    ;判断暂停状态( Q" [7 K+ G$ \3 p  t; _
  178. BEQ button_press0 m( a  V2 H  S( `
  179. PLA
    ) _2 E& s% U  d: @  f5 ~
  180. TAY
    ; _$ _7 l" y# D2 d% P+ E3 A. `( r
  181. PLA) H. q" w  f$ H# Q! {. f$ I
  182. TAX3 A* X; \" p- P, g
  183. PLA
    ( J' L: D% d/ K
  184. RTS
    ' r- o0 j$ p+ D# F5 P

  185. 1 ^/ R2 o% F% R8 K7 Z2 f
  186. button_press:    ;按压操作9 c$ u4 e* `. x# T% j! R" y
  187. ini_Y:! L; c& f7 v8 W" C/ }$ g
  188. LDY #$00
    ) o& q, j$ O4 I* F
  189. button_cmp:$ Z$ |, t4 X# q0 z! c  r- J
  190. LDA button,X
    8 D* [+ C5 P' ?. \
  191. CMP ora_data,Y( `" t, }7 z3 X' p
  192. BNE count_Y_cmp
    $ ^* w) D# U3 o
  193. flag_cmp:
    ' {) I4 G7 V% c7 ~0 N$ }! L
  194. LDA flag,X7 n/ @1 o5 s: I8 x3 ?% w  ]
  195. AND ora_data,Y. `& {% A+ f  Z7 I( W( i0 t
  196. BNE flag_and7 n& @* N6 @) M/ W
  197. flag_ora:- F! Y; m4 p: ~/ `2 l- ^; Q
  198. LDA flag,X; @, s$ d' ?/ X  {8 K9 A$ o" `
  199. ORA ora_data,Y  a: X$ N: r& W# p
  200. STA flag,X3 `7 V, v- m) U; h& {! N% m
  201. BNE count_Y_cmp
    * p& s- J0 z# q
  202. flag_and:2 D2 q( E: @1 R) C8 ?+ U4 ~) x
  203. LDA flag,X; l* i& b& ~8 g- B3 V8 H
  204. AND and_data,Y
    , b* g! X3 S$ J+ \0 |3 [, {* ?
  205. STA flag,X
    : q& S  B- Q" }' z
  206. count_Y_cmp:
      P9 {# I+ @8 r4 A/ v. c$ J
  207. INY4 E6 |2 |2 h- B
  208. CPY #$08
    % b& J1 ~* u; ]4 C
  209. BCC button_cmp" I* f3 s  K2 }( |0 }

  210. 0 H: e/ b5 W# z. R& _- u" _
  211. data_extract:    ;数据恢复, E0 `) Z. k. O! }
  212. PLA% _. @, t8 C8 A2 g
  213. TAY5 O0 I; N3 p3 A) i( A) H
  214. PLA- Q& ^2 {8 O* o# M. D0 k
  215. TAX$ j* ]7 k/ ?& C( ]
  216. PLA. L$ I) N6 u. _9 q2 N1 t5 ?

  217. ; a+ c! o8 `  |* c( A* ]/ x
  218. return:: d% L: [# S1 J* I7 {& u8 J  ^/ G
  219. RTS
    + t/ Q! X+ k/ W) L+ `; l4 a' G

  220. ( i$ Q' t0 C& }) e% s
  221. ora_data:   ;按键相或数据
    5 {: y( E" }, d# q# K
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
      s7 }' G- q( A  c
  223. and_data:   ;按键相与数据
    - N( g; {0 b% U; S; Z9 i& r8 X
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF/ F. [3 U$ V* V. T3 M

  225. ; K* ?6 G# y4 z

  226. ( `+ g* i( l& N5 Q. }

  227. 5 W# T+ M/ A5 J  \0 ~

  228. / K4 d2 o/ ]0 S7 @' G
  229. % c+ q) H$ L2 [7 D* S: `

  230. & m5 ?5 _& Z* w& Z

  231. 0 F% O4 s: u' c& Y3 q3 g! x8 ]
  232. 0 P. ?. \, R9 ]  E* U

  233. 9 d: `# w+ T+ k9 E, y5 v
  234. .ORG $C264    ;自定义的MAPPER2切页程序
    5 _& t" i, H- W# Z# I, u
  235. PHA
    ( O7 o& Z& P  }. k# J2 [$ p% f
  236. TXA5 t  R% t% L1 @. d2 f
  237. PHA; W. J& x! c- S2 Q
  238. LDA $0066  x: Q- ?7 J9 P* r3 u5 \- B: ~
  239. BNE ADDRC280, y2 \5 O& F! C" [
  240. LDA #$07
    6 Q0 [+ r5 G8 b2 T* c4 i) P4 T3 g* V
  241. LDX #$03
    1 Q& ]8 U4 T7 X$ h
  242. JSR $CD9B    ;自带的切bank方法
    ! a5 K7 N$ F, V# ?/ B7 L7 t/ J
  243. PLA
    ' W1 m  S* m0 V2 W' m
  244. TAX
    & h* |0 K# {% T( Y
  245. PLA
    9 N1 f6 O2 x) X  a
  246. JSR $8000
    1 o4 p5 i/ |3 C
  247. LDA #$06
    8 j; u* l/ {1 E7 d1 F0 M
  248. LDX #$03' a  F. Z$ P: X. S; y7 J, M
  249. JSR $CD9B    ;切回原该切得bank(可以不用)
    ) o, M7 _0 W* M/ A, O1 f5 {6 k' Q, ~
  250. RTS
    3 ]. H9 \4 R$ t, R/ z
  251. ADDRC280:* B( I0 M3 R- V2 I; g" c
  252. PLA# j/ \: V. _; {3 c9 y- g& ^
  253. TAX
      K6 q, Q' j5 n! B9 X
  254. PLA
    + E/ [8 [4 o- V5 z. O
  255. RTS& c' P; s5 R& E
  256. - z# w2 C$ O4 J  r
  257.   |7 I1 u* S5 Z
  258. ;[FC][最终任务PPU][END]
    ) a0 I3 n  o. a8 M5 `0 q
  259. .ORG $C056    ;跳转到PPU重写程序
    : ~. G7 @" X9 P4 g- e
  260. JSR $7000
    9 C6 \- b. d: ]/ G
  261. : ]) b: w- ~* v* N% P! i8 b
  262. .ORG $CEBF% [, Z! s6 [6 A% H
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入: a' [$ p: o$ k  s4 m/ A9 N  y  @
  264.   9 q4 Q: I. H4 b7 [% e" F
  265.   .ORG $E4600 U) g, m/ U6 \: a
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入6 ~9 e  Y% P9 `/ `' a  [! m* ~
  267.   
    6 r9 H2 D/ U, U- h0 O* S6 N
  268. .ORG $71F0
    " {7 W* _' z6 E8 z( u
  269. STAGE_DATA_WRITE:
    . C* _1 L# r2 Y, H5 S' g% O
  270.   LDA $60104 ^" \8 Y+ g  [0 }, f6 ?
  271.   STA $1E    ;关卡写入4 Z+ j" G' m* B: T9 [! f
  272.   LDA #$00/ k! Z/ M/ X$ B/ A4 N' R3 ^
  273.   RTS( l* ?* b* y. a
  274. .ORG $71C04 D* w7 L8 }3 h" ^3 ]3 ~2 S
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    / y1 y  n7 O3 P7 C: x
  276. CPX #$0E
    - a, V8 ]. U6 `5 Y6 B
  277. BCS P2_BUL6 i+ Q- N" Q0 V# }" |) \3 m
  278. P1_BUL:- g! f" r) y$ ?) D7 u8 @/ X
  279. LDA $6004
    6 L# @+ K  F3 M. f/ S+ @
  280. JSR $D7D0    ;P1副武器数据写入
    1 y+ ]" x& ^+ s$ n  _+ v5 ~
  281. RTS$ e2 a' N0 c2 Q! v
  282. P2_BUL:
      T; r' c7 b3 A4 r1 [6 T" j5 D- `
  283. LDA $60051 x$ k) Z. O8 U( d( N
  284. JSR $D7D0    ;P2副武器数据写入* C4 q$ n- E, V: h2 {' T
  285. RTS
    $ W; W# d3 ]3 @
  286. : n. a/ S! X# J3 L
  287.   N/ z$ q9 s( `/ M% {9 J  E
  288. .ORG $7000/ w# i, q$ x8 g/ A& o
  289.   
    ; T  k0 |+ W2 g5 b; M1 B! u
  290. STY $4014    ;补上覆盖的精灵写入指令3 ?9 _8 P1 Y3 Q) m! [
  291. PHA
    3 l0 v* h+ u- Q5 {
  292. TXA
    1 y5 m4 f0 O2 A* N* t5 J6 r
  293. PHA2 `# C& E* a3 k" D
  294. TYA* x1 }0 n: v- V; t+ q. O8 e! o. v
  295. PHA4 g! O. }& M" M' _0 x+ b
  296. LDA $0C
    . P3 k9 h6 ?) ^( {- b
  297. CMP #$01    ;比较是否为标题画面
    1 R& C$ m; @( a. T4 O$ p/ }* x
  298. BEQ PPU_STAGE
    % T% Y- @* ^: r: e. m
  299. PLA
    $ {) T  G; |" J% C8 v) @2 B* n
  300. TAY
    2 P) N8 ]4 w9 y, ^
  301. PLA! b' \! _+ v5 T$ U! H- x
  302. TAX
    / t! d" \; V9 U# K( f
  303. PLA
    - [8 @! g, u9 @* X
  304. RTS! `: N' u6 c9 i0 t; z4 d
  305. PPU_STAGE:    ;STAGE显示程序
    $ |- S4 W' `9 P
  306. LDA PPU_ADDR_DATA+ b# K; f0 ]/ \  N% b  i& e
  307. STA $2006
    % H$ L2 V) M+ s
  308. LDA PPU_ADDR_DATA+1
    2 [) {" }* [, B* a- P) z6 f3 s0 [
  309. STA $2006    ;坐标设置- ^- J" Z( T0 f# W
  310. LDX #$00
    + B6 M7 m# X' s1 a: t4 g
  311. PPU_STAGE_WROTE:    ;写入STAGE字模- e5 v# {3 ~' V" \) q
  312. LDA STAGE_DATA,X
    8 j* Y: p& s7 S/ J( g0 A; @
  313. STA $2007
    + Q/ |" C1 K/ b7 n9 q& G6 H
  314. INX  B( \2 m  O9 T4 q
  315. CPX #$06
    # R8 E) G+ q4 ~; O5 B7 W9 f
  316. BCC PPU_STAGE_WROTE
    5 d0 |, P2 c( o8 s/ @* d$ h
  317. LDA $6010
    " h2 C" E) M1 K1 I0 i% x
  318. CMP #$FF    ;关卡数据初始化条件判断. c' g8 f* T: ?! O
  319. BNE KEY_B
    ) j, ?$ s  Z9 M% M6 x
  320. LDA #$00
    " v/ c$ y/ S. @5 b
  321. STA $6010    ;关卡数据初始化
    ) x3 o+ h5 _8 q% t& N! L
  322. KEY_B:    ;关卡减少/ j" n5 S, i' G* V
  323. LDA $04
    - t% x# q" Y/ N
  324. AND #$42    ;按键B或左减关
    ! b/ g3 t+ p8 I, A- r& H' H8 o( F, K
  325. BEQ KEY_A' V) R2 g' o: P6 r% Y' x5 @
  326. LDA $6010
    7 [4 V5 A1 y9 H# Y* y5 {& @
  327. CMP #$00    ;关卡比较1 q/ y; p, U* K8 V: q
  328. BEQ KEY_A; c5 c9 r. S! \1 K
  329. DEC $6010   ;减关
    / j# j. m! x- j6 P! x+ ]2 l' V, x& m7 f
  330. KEY_A:    ;关卡增加
    * r3 B+ ?+ o) {0 t; }
  331. LDA $04
    - {# ?8 {7 n0 f( e) L" H
  332. AND #$81    ;按键A或右加关4 w$ r& c7 U7 @4 t
  333. BEQ PPU_NUM_WRITE$ ]3 Z, ^) x- w. G: J, |! F6 \8 V& Y
  334. LDA $6010
    ' c/ F( G8 z7 b
  335. CMP #$04    ;关卡比较, O$ Z0 a$ `8 Y7 Q; ?2 K
  336. BEQ PPU_NUM_WRITE
    7 n6 c* |& U6 B8 n+ c" y
  337. INC $6010    ;加关
    ' U) ]5 f! r6 e4 ^6 c1 ~7 b
  338. PPU_NUM_WRITE:
    9 L- ?6 t; O/ \% a2 ~& C+ t
  339. LDA $6010
    9 L# |9 z0 U& Z8 [. D
  340. TAX
    7 K6 Y5 B1 U/ \. I# f
  341. LDA STAGE_NUM,X    ;写入数字
    9 e& Z% x. Q2 @
  342. STA $2007
    2 O/ |  E0 `$ B; }) c$ U/ u
  343. PPU_RTS:
    ; {. x5 B+ O# [+ ^. m# _  ~
  344. PLA1 a. w. O3 W1 x. w1 a- Q3 E( Q) V  H7 g
  345. TAY. h; E2 A( x; Z) J( V$ @
  346. PLA1 r9 R* ?3 V0 H* u  A" A
  347. TAX
    1 H2 g5 g4 q% |! P2 n5 v: [
  348. PLA9 m. _- ]% l* b( D& S: X
  349. RTS
    . M: o7 W+ |" o2 S/ r

  350. + Q6 P$ q3 F- E+ s9 |
  351. 1 ?! M: F: n: v! C- p; K
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据
    ; A/ `+ s. F' I2 Z) ]( x  P
  353. .BYTE $EC,$ED,$DA,$E0,$DE,001 i, C/ P2 u2 r( s0 J
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据& ^4 K4 k/ ]% k3 V( a* k3 h4 I
  355. .BYTE $D1,$D2,$D3,$D4,$D5
    3 ]- B# h0 e+ `

  356. # b$ K( g8 i( i( r" j) e% a
  357. PPU_ADDR_DATA:
    4 M; f+ z: o/ [. Z, _5 ?& w
  358. .BYTE $23,$0C
    % b3 {7 h# S7 j& X

  359. 5 I( i* T0 n, y& ?3 I
复制代码

本帖子中包含更多资源

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

×

评分

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:12
. r5 ^, z' T8 {' \/ o最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊
+ s3 R4 C- |9 S, t
已经加上了,赶紧下载吧
[发帖际遇]: 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' N+ t6 S3 ^- F: D- M
旋风又疯狂大修改了 哈哈

; I7 ?* n( i0 X9 `% Q! M8 j9 V疯狂不起来,无聊了而已
[发帖际遇]: 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 10:13

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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