EMU618社区

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑 6 E4 q. |" G: n5 h' o+ P' C9 R

: i% F  t% o' N' T1 G% I# ^" E3 p    [FC][最终任务][END选关]
# q: ]. d0 P; _" f2 ~  ]8 y1 B9 |7 ~, L$ d5 C/ y* a' ]
时间:2017.3.29+ d! F* E2 W7 v  E& l
作者:FlameCyclone1 B  v* i! \. ?/ m8 a) c" n
内容:
$ C- E4 o- `7 _: M% j0 d3 D4 o8 q    1.关卡选择:   标题时,左或B减,右或A加(1-5关);
3 K+ K4 y# y0 O  v  k$ N1 m    2.无敌锁定:   暂停后,按上键切换;
6 i7 j8 O* j1 c( G: _- N+ [, Y    3.生命加满:   暂停后,按下键切换;; M# E7 P! f/ T5 W( m
    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);
! w7 ]! K2 ^( ?# l& k% O  `    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);
4 ~) M( W3 l2 S7 |( U4 x9 _6 y4 r    6.B弹数量:    暂停后,按A键切换(1个或2个);0 G8 }9 M. H2 x, U; C
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;
0 v( V# i+ {8 K) N$ V
6 u6 J- v+ U1 ]1 a/ F
  _* B1 e6 W- i% H; ]2 t9 z4 G- t: U, Y3 @5 n0 \9 B

3 c, @" ~" U5 V* B4 c( ~
5 Z5 c3 a3 x8 G6 J! N$ m3 c. X6 `6 X0 B0 J7 ^2 O' o( N
游客,如果您要查看本帖隐藏内容请回复

+ N* @2 b' z% ^/ q# G: I; ]6 iFlameCyclone.ys168.com
  W. b% ~3 V' Z4 X- N9 D  ]www.nesbbs.com
  1. ;[FC][最终任务KEY][END]
    * v, H) o$ M7 P1 ^0 n7 d. u
  2. button = $04    ;单次按键$ [1 t/ ]+ V8 G7 K2 }) p( S0 I
  3. flag = $6000    ;功能开关标志
    % r% T  X3 e- X& j
  4. pause = $000E   ;暂停地址6 B" E2 S1 x* [" \$ J! p' O+ I

  5. 0 d+ m' H5 C! X) {
  6. .ORG $8000+ e- F, b0 B; `& W
  7. LDY #$08    ;自带的按键程序
    ! i; m" }0 R* L% t0 k: N. g
  8. ADDR8002:: H. Y6 P- q/ \2 q* h1 \+ i6 D/ l
  9. LDA $4016,X
    + ~" _2 ?7 d+ m. f7 A2 h) b& W8 `
  10. LSR
    ! X* ]9 o+ g7 R) V  b+ W0 q1 y# k
  11. ROL $0021
    ) |+ |, f% U5 a' j% x% d
  12. LSR
    7 l1 |6 |6 ^5 a9 y4 B7 ?& ^8 m
  13. ROL $0029
    9 _* u' i- d1 b/ J2 l
  14. DEY( r( i# Q4 t( {: ]7 }
  15. BNE $8002
    3 @4 [- n1 |- X1 u  Y0 }8 z
  16. LDA $0021
    - n% e- k" f. }
  17. ORA $0029! J5 U/ \" a4 f# f, n. \# R
  18. STA $0021) a1 H/ Y. V* E" t
  19. LDA $0020  v  u; Z4 K) z( m; d
  20. AND $0021
    / o$ N. w+ `: i( n
  21. STA $0020
    ! w: V, E0 _  P
  22. LDA $06,X
    , @1 r2 z' P9 N( z1 h! f1 l
  23. EOR $0020
    % \# ~1 q$ g5 g) @: E
  24. AND $00204 A) N1 b+ l$ f6 g1 ?0 p3 \5 J7 S
  25. STA $04,X
    1 F- e, n( e0 [1 C! `+ H* R4 ]( ~1 {
  26. LDA $0020/ f' M6 q8 N! r$ x0 M5 B( K
  27. STA $06,X: ~- c6 Z2 g- Z/ w4 F7 c5 @
  28. JSR KEY_OPERATE& P' x* P9 f, e; c9 \- d7 v
  29. JSR Function    ;功能调用
    9 g- M) u! W% y7 N
  30. JSR Weapon    ;武器切换调用
    * g; }  J! N/ C% \2 k0 |$ C
  31. JSR Power    ;威力调用
    7 q' S8 \" ?( i5 n/ S
  32. JSR BULLET_NUM    ;子弹数目
    + l$ @/ W1 i* G5 `' m8 g0 y/ c( m
  33. JSR BULLET    ;副武器类型4 c/ H* O4 E3 v7 l# o) }8 ]' ~
  34. RTS
    + C$ k- h8 I+ N2 N

  35. ) e; Q. U" D+ P* `6 x  E. N

  36. " I8 p( I$ w/ q3 ^, @# V- q" r

  37. 7 ^  l$ w4 W% C: d( y
  38. .ORG $8050/ G/ t& f! T0 ]4 w1 Y
  39. Function:    ;功能- u6 f3 k0 y( M6 ]
  40. WUDI:    ;无敌2 W( i3 T( Q0 g5 P+ t" B
  41. LDA $6000,X" ]4 X) V/ D* p' w
  42. AND #$08    ;开关判断5 [4 e" p  o& n) }
  43. BEQ LIFE
    8 y- Q* o0 Z# x
  44. LDA #$05* ~" G9 \1 M/ ]6 t$ [
  45. STA $05DC,X    ;无敌锁定0 i" i$ M8 A! d  `: }4 T5 D, t
  46. LIFE:    ;生命
    + ]2 b- x. i$ i/ f6 f1 v4 p
  47. LDA $6000,X
    " n5 z# p) t5 Z8 b
  48. AND #$04    ;开关判断  Z$ R! d/ u% G/ }1 M% c
  49. BEQ FUNRTS5 u% _- a$ p. |$ O: W. f
  50. LDA #$05
    / W' w" s3 B) ~& o* ^
  51. STA $1C,X    ;生命赋值
    + T9 l" `) n$ @7 x! @2 j+ n
  52. FUNRTS:' c) B: U$ v/ R8 Z; E
  53. RTS
    : P. i9 R4 Q4 @# B5 \
  54. * f+ n4 t8 `0 Q
  55. Weapon:    ;武器切换
    ! W0 x6 L, F0 n+ R7 B" {
  56. LDA pause    ;暂停状态判断
    4 R' Z, q2 P! D, U4 L/ M3 m. N
  57. BNE WEARTS& R- `8 O2 M, q- T& x3 n
  58. LDA $04,X
    6 q2 |& h: V2 W5 U
  59. CMP #$20    ;选择键判断. n* T4 i' W0 ~2 O. P
  60. BNE WEARTS; `: X6 E" [$ j5 ?3 s
  61. LDA $12,X; A9 Z* W3 E8 M" b
  62. CMP #$03    ;武器值判断
    5 y2 q  k7 j$ x! k
  63. BCC WEAINC
    - B9 V: S. B4 {# c% e* E' X2 }
  64. LDA #$FF4 d/ |1 {* ]& n4 K+ W
  65. STA $12,X    ;武器重置, r1 i4 v; u9 R( |7 q
  66. WEAINC:
    ! A/ c4 s% s* S* s; i! j+ V) U
  67. INC $12,X    ;武器增加3 M3 a% {9 d+ M; t" ^! ^

  68. " h' a0 _: [( o
  69. WEARTS:
    / r5 k  b( S6 N5 y# Z- v$ C
  70. RTS2 O8 h! ?/ Y. |6 N7 P

  71. ; G/ t# F2 ^4 L( }$ r1 J8 ?
  72. Power:    ;威力0 s4 c. ~/ ^/ {- ^0 E
  73. LDA pause    ;暂停状态判断
    ! n1 u# j2 A, V! E9 ]1 A% g. O
  74. BEQ SPERTS: I% F( G/ u( U+ v
  75. BUT_LEFT:
    7 C- r0 t4 l( w* I) y$ i  K  R
  76. LDA $04,X! Q3 f6 o8 p% z6 N+ f
  77. CMP #$02    ;左按键判断
    1 s" y) e2 q& r
  78. BNE BUT_RIGHT+ D! j# t# G, q4 m. r
  79. LDA $88,X
    8 p, z* [/ B0 `* p+ t
  80. CMP #$00    ;威力判断
    3 P, ?3 W* K5 o1 Y8 f
  81. BEQ SPERTS
      @0 H3 a3 |; \7 H
  82. SPEDEC
    8 U" P1 L; \- L9 j2 f' f( G; l& j
  83. LDA $88,X    ;读取武器值4 S. N7 z' O, q' b: Z
  84. SEC
    . o  T& b) i) R7 g( y6 }3 x
  85. SBC #$08
    0 z! ]& v1 B, j
  86. STA $88,X    ;威力减小
    ! O! A0 F* l- t. L0 y
  87. BUT_RIGHT:; U5 p# k* x8 z' N7 b) Z  d
  88. LDA $04,X
    / `* p( q) H8 P; [
  89. CMP #$01    ;右按键判断
    . C3 \' s) \3 P
  90. BNE SPERTS
    5 P/ y6 G# B) Z( k2 c2 i, r4 T) u% O7 y
  91. LDA $88,X
    + T* X3 o2 H  H0 D% n/ ~4 _8 ?
  92. CMP #$10    ;威力判断" m* ]  _# T3 w) ?% b% G) T( i1 t1 `7 N. Q
  93. BEQ SPERTS
      J. U% _( A$ |& |6 _  h
  94. SPEINC:
    8 s5 _+ m' D! I3 o7 Z
  95. LDA $88,X    ;读取武器值
      O1 C7 i6 k& i
  96. CLC
    " |9 y' f; ?& ~, ]" s: ]9 l8 z" {7 b
  97. ADC #$08
    * [( k- ]1 q& ]' N& n4 Q( D
  98. STA $88,X    ;威力增大
    ' H7 A# i/ f  T: o
  99.   H1 J* x- |7 F" A& G+ R
  100. SPERTS:3 e( {( ]: l2 X5 y2 ~
  101. RTS
    : X+ k8 k- r( F6 L8 Y
  102. ' F4 e5 o0 w- q9 u' H
  103. BULLET_NUM:    ;子弹数目
    7 v6 a" B* }  h3 ~
  104. LDA pause    ;暂停状态判断
    : O: t4 H$ X1 x/ @  W
  105. BEQ BULRTS
    ( v, D) z3 J0 @: c# A
  106. CPX #$00    ;主机玩家判断4 w" Z, ?- W5 C" F4 R2 c" Y* a1 n
  107. BNE BULRTS  d; r/ H; F' R1 w" P6 b6 g
  108. LDA $04,X    ;主机玩家判断2 X& q* n2 q$ R. C. i
  109. AND #$80    ;按键A比较& |1 a( r; g( g% y, D. X
  110. BEQ BULRTS
    ! `- S6 J# D- q7 \7 V) R) ^
  111. LDA $87    ;状态判断
    / z) S' Y! x- b9 @6 N
  112. BEQ BUL_2
    - k1 ]% a- ?/ v- C3 r
  113. BUL_1:" Q, Y6 `6 A1 O7 ]4 b9 g8 x4 o
  114. LDA #$00
    % ~  t" n6 r* K! o+ n# d$ X) e/ \
  115. STA $87    ;1发子弹
    ' O# o7 H  m- H
  116. BEQ BULRTS
    9 m; e. d: e, e& }
  117. BUL_2:) Q7 e4 b% y+ x# x
  118. LDA #$01) a9 O, \* @) O: D
  119. STA $87    ;2发子弹0 ]3 _; o1 G, I/ x- Q

  120. ( M) b' \2 i7 U* Y) ]
  121. BULRTS:9 c0 L% v5 \0 y7 h0 u
  122. RTS; r6 C. p3 g; ]  E) x" ~

  123. % g$ C  {% d# ]/ r
  124. % Q/ A6 ]2 K( O" J% M
  125. BULLET:
    * n  ~7 u. i) d2 j* L" K: A
  126. LDA pause    ;判断暂停状态
    6 e4 j  s5 H, q% Y- y& C6 X& P
  127. BEQ BULLETRTS
    8 ~/ |& k, H! }; z+ e& y5 c) F
  128. LDA $04,X
    ! n3 J2 U1 g' b) u0 Y2 U
  129. CMP #$40    ;按键B比较/ y, W' W7 Q/ z% @
  130. BNE BULLETRTS
    " y2 U# c" U3 M5 k. z7 h
  131. LDA $6002,X    ;读取副武器
      O6 t6 R( E+ L! @( }: N
  132. CMP #$03
    9 e* P+ H; p0 Z6 X" J
  133. BCC BULLETADD! b3 g! {/ I3 y; R! z
  134. LDA #$FF0 [$ e$ M& Z! I& U
  135. STA $6002,X; {' C% `) p3 L* R9 N3 h) @
  136. BULLETADD:2 f/ p  _2 ?9 w, r: c: }
  137. INC $6002,X9 m3 o4 i/ E+ [6 m) z5 m

  138. ' i' B* n6 g; [& A4 ?9 x7 s. y
  139. BULLETRTS:( C( ~6 F; \/ Z
  140. LDA $6002,X
    * S: l$ a) A' d, @' C3 K
  141. TAY1 Y2 ^  |/ e/ A1 }) v7 Q
  142. LDA BULLET_DATA,Y% |! U" Z  J) k' r0 V
  143. STA $6004,X    ;写入副武器数据
    / Z1 d7 m+ [6 d) D! C
  144. RTS
    & n0 b# g+ y7 N! E% w

  145. : W: E9 Q, C0 u& D- y+ r2 i4 Q

  146. $ a% Q2 P: \5 Z
  147. BULLET_DATA:0 t: T+ S0 |: v5 t
  148. .BYTE $06,$02,$03,$046 q* @3 L7 J& m: E

  149. 3 m; I& J& f% z" ~: b0 Q" f* K

  150. 2 z& J) p& ?8 G. k! q, p
  151. & w4 E2 j/ @+ s6 f: `) V
  152. KEY_OPERATE:    ;按键开关操作
    / \' A3 c. x) h
  153. data_protect:    ;数据保护
    3 y" C. [9 Y7 J5 ^+ k/ L! g. ^+ u5 z
  154. PHA
    , R% l2 x6 ]8 J4 c$ p  m
  155. TXA
    ) H& j' z; g! w: H
  156. PHA6 k7 [' ~& @' U+ k3 V/ e
  157. TYA' A$ }5 s+ v+ L4 M+ x5 L
  158. PHA/ Q: l& J* l4 U3 K/ z$ X" F
  159.   F- H5 v! O$ N' ~3 r& Y% C5 e
  160. FLAG_INI:    ;开关标志初始化
    % F/ I  K* v" H& ?

  161. ; ?6 M! E. C% k2 J- ]
  162. LDA $600F3 U& \6 Q* B1 Q5 Z8 D2 |+ k
  163. CMP #$016 Z+ W8 S: e& a0 w
  164. BEQ pause_cmp
    ) ]8 w3 V2 W1 d$ Y7 Y* N1 C7 n, F
  165. LDA #$003 e; t$ u3 q5 V8 X, b
  166. STA $6000
    7 ~1 z* E+ e! `7 A+ l+ o3 `
  167. STA $6001, ]: f6 f) d* |$ U, X! o
  168. STA $6002# M5 Y( b8 K$ g7 c- B
  169. STA $6003% }0 r) A0 P7 _# r: P- W) r
  170. STA $6004
    7 I, X2 x5 L& i+ B7 F" Q/ {
  171. STA $6005
    0 D4 |7 F0 a8 Q- W, |8 T+ ~
  172. LDA #$01# V1 ~- r4 i1 p
  173. STA $600F
    + _- U1 q+ l, w8 z" ~# J
  174. 3 S- A: {, W( B9 v1 x: _! }
  175. pause_cmp:    ;判断暂停状态
    + C6 `* A- L3 P* ^
  176. LDA pause1 V! }6 W) c# K# Z; D( D0 A- ^2 e
  177. CMP #$01    ;判断暂停状态
    & ]+ t" S* Z& L9 k
  178. BEQ button_press5 r/ X% p/ b; y( Y( V
  179. PLA
    " N+ h/ {3 T5 v7 n: p5 {7 T/ m
  180. TAY
    9 h- u9 z( S4 V! f' x, {3 }
  181. PLA
    % m5 b; J+ {9 C
  182. TAX
    9 u' V# x% X: ~  T/ l- E8 z
  183. PLA
    - B- W) m% K1 f' [9 u3 a& t3 I# ]
  184. RTS& `) i! Q/ W" j

  185. 9 _( ~0 H3 q  f6 r/ [/ \# ]
  186. button_press:    ;按压操作
    5 T6 M4 i1 ?5 w5 b, o. H! f! F) A) ?/ M
  187. ini_Y:
    : K6 d1 W& ~' O& O! w
  188. LDY #$00) @) T9 [, o3 p+ f5 @
  189. button_cmp:" H1 h1 j* A& L/ W! B% m3 ^
  190. LDA button,X, Q1 ~) Q: m* R  T/ `: O
  191. CMP ora_data,Y" Q7 B8 ]% w7 g) Z
  192. BNE count_Y_cmp3 a: e" k* F! B6 a# t) `! ^
  193. flag_cmp:
    ! z3 m( @: N" n
  194. LDA flag,X
    ) ~6 p% K9 w8 W# |; T% V
  195. AND ora_data,Y- `  @! W  B6 e" \9 G, d
  196. BNE flag_and
    / c: C$ C0 x0 S6 ^" Y
  197. flag_ora:
    - m/ \  y, [/ E" [2 ^# t; s- |0 h
  198. LDA flag,X
    9 r; W! v/ }9 R/ Y' M& ^( k
  199. ORA ora_data,Y1 a+ u# D7 N) A- m
  200. STA flag,X* \% W$ R8 q+ s* n1 n6 p$ M) o: C
  201. BNE count_Y_cmp/ y, N( k3 ~; L% G3 x
  202. flag_and:7 e+ k. s6 ~/ O0 ~5 f$ l1 W
  203. LDA flag,X2 ?. H. a' ~$ k& A
  204. AND and_data,Y
    : p  U5 \; X  \2 M% V
  205. STA flag,X5 N0 v4 g. Y$ e+ J2 O! g% f) Y9 F
  206. count_Y_cmp:
    0 N# s, K" a0 o' K! w" V3 U
  207. INY" Z. {1 `# T+ J  ~1 s5 |7 S' W
  208. CPY #$08+ ~0 X5 c2 W' k3 g. r! b; U
  209. BCC button_cmp7 ^0 z' ?3 ]6 P6 X
  210. + V. k) Z# M' o7 _6 |" H& e
  211. data_extract:    ;数据恢复, `$ N7 h$ ~3 v8 G; m0 P/ C+ T
  212. PLA5 u. m' ~! J* x2 K+ \2 y
  213. TAY" g1 D  ]. |. W# B, x# |
  214. PLA! H" d. _) n5 }) j' Z
  215. TAX& O3 y4 q4 z, X  ?, `; M: g. K
  216. PLA6 W; Z9 H) [9 Z
  217. 9 D$ B8 W$ y5 U- P& y
  218. return:
    $ _6 M2 m1 n3 N5 K4 o# x
  219. RTS
    ! v' B3 T: a, F' f( }9 |# e2 ~: B

  220. " |. j* w  I! O/ U9 |! _
  221. ora_data:   ;按键相或数据
    " u4 H9 F. \0 Q( U; W& _3 s3 U
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    ! i! k" V/ ]( q% P, F
  223. and_data:   ;按键相与数据
    , u7 V/ n- C3 [# O
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF: S: G- t0 f7 o% _$ i! R7 b
  225. - s4 F. Z6 s9 K; G

  226. : m' b# ]. w" z
  227. * _  L$ R# f* U
  228. . ?3 g8 q, E- O2 d% R

  229. 3 N+ t) v9 y& @: ~( W
  230. ( f& I) @5 @. _9 M- r1 C
  231. ' N) {6 o, C: b
  232. & D  Q" ~) C7 X. d
  233. ) D+ d6 O6 A# J% f- p, s
  234. .ORG $C264    ;自定义的MAPPER2切页程序8 A$ r- ?2 }1 E
  235. PHA
    ' z+ \7 F/ X  `0 B  K
  236. TXA
    8 X$ L8 j5 h& q0 ~$ m1 k+ [
  237. PHA
    + K9 o# u- }; O4 |- O
  238. LDA $0066
    0 D' M# P+ C& j6 o) e$ ~5 {
  239. BNE ADDRC280/ s2 B9 \$ y' G5 M' M) m
  240. LDA #$07
    $ c1 q, }) O3 ~* }- [; M
  241. LDX #$03
    , X5 n( B* K5 c- O0 t. [: K1 N5 ]
  242. JSR $CD9B    ;自带的切bank方法) p+ ^% Y; I( T8 Y0 z
  243. PLA% e; B, e& U" }: r9 R! W
  244. TAX
    . f, J; ]" ^; O0 J6 \1 f( a
  245. PLA( {/ ^% e- C, i: i: Y% Z  B* E5 e
  246. JSR $8000) L7 I: j2 _% [/ q, w
  247. LDA #$06
    " u  V: I( F; E5 L* d" i/ m# c5 P- \
  248. LDX #$03  X3 L) y: s0 M, E& u
  249. JSR $CD9B    ;切回原该切得bank(可以不用)
    3 r0 O# r- K) [
  250. RTS
    + e" e% x6 G: w
  251. ADDRC280:
    8 U1 e! z! G' A" S
  252. PLA
    ! j7 y' V) ~0 W: a- K7 w# M# Y
  253. TAX% m/ D5 U  ^* Z, u* m
  254. PLA) K: i/ o& n0 C: H9 ]
  255. RTS1 i6 {' S: X) h+ ?' U1 F
  256. ; f9 I6 e4 S2 j

  257. $ Y& a7 \* r' d# `: u4 ?. d
  258. ;[FC][最终任务PPU][END]! S$ D) t: U+ W8 @5 B
  259. .ORG $C056    ;跳转到PPU重写程序  y- \8 O8 V7 j& j+ p1 Z
  260. JSR $7000+ q1 O$ N: G6 y5 b+ B
  261. 6 d* M1 {  X  {6 Q0 K4 U/ q' k$ J! P
  262. .ORG $CEBF+ Q# w6 E/ F/ T
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入' C/ l6 m9 X8 E# v0 k
  264.   
    " k: \9 n1 G& O- l8 H
  265.   .ORG $E460$ ?4 b0 V" @! J7 r% Y
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入  Q5 V) }  J& U, I0 k
  267.   
    & F& m  V; ]& c
  268. .ORG $71F0, X* \2 V; W: k% t- g" K
  269. STAGE_DATA_WRITE:1 ]8 u  l- H# F5 k! x0 i; t' C
  270.   LDA $60104 B7 x$ F. d- x$ E6 ^) x3 o! g8 W
  271.   STA $1E    ;关卡写入
    - l9 Q5 G/ M8 p- [" N
  272.   LDA #$00; x8 X" W/ y0 Q) v( {2 X  c
  273.   RTS
    $ y  D3 V" S# r
  274. .ORG $71C0) G6 }4 V& [" h7 |* Y
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    ( F  S) [( S0 w
  276. CPX #$0E" y7 [$ J* `9 q: c4 q; w3 d
  277. BCS P2_BUL
    8 S- _, G# J. V$ p2 N
  278. P1_BUL:
    4 U/ T. W% `- G" n
  279. LDA $6004
    # }( t" S1 D3 W6 E- [
  280. JSR $D7D0    ;P1副武器数据写入
    2 c, J1 w, d' K! U; W1 @' X
  281. RTS/ M3 X9 {9 [9 A" C
  282. P2_BUL:
    3 B' Q8 {& D2 S& |$ T
  283. LDA $60056 l9 Y) m% G; z" K
  284. JSR $D7D0    ;P2副武器数据写入3 k- P" r0 l4 \8 G- I! W0 S9 ~# W( d, G
  285. RTS9 O" h8 ^! [- l+ V( L

  286. & X. A) ^- a, \4 F
  287. - I' ?+ b9 L! h( D1 K
  288. .ORG $7000
    - I$ K9 o9 R2 P! Q. J
  289.   ; L5 n) a* l0 x' b4 V
  290. STY $4014    ;补上覆盖的精灵写入指令
    # u. y! D4 l6 t, c$ [1 g! q& t
  291. PHA
    # A1 G0 {" S; f# p
  292. TXA
    5 A' R# n' q, W9 M3 h) O' _
  293. PHA6 Y/ l7 e3 T; {2 n9 l/ h* [
  294. TYA
    0 y1 w& X* Z: r; u
  295. PHA
    2 H, g. O3 F  f; i/ r4 q9 ^7 o' ?
  296. LDA $0C
    & S( D; ]4 e+ j4 g9 Z/ I7 S  R. X, ^
  297. CMP #$01    ;比较是否为标题画面1 w$ }) t: q& T4 N) W
  298. BEQ PPU_STAGE+ K* p4 p  C' `' `
  299. PLA9 v3 v+ i! u$ A$ g
  300. TAY+ O! W. L% |$ e" B
  301. PLA. y, T6 t5 \/ S' ?
  302. TAX
    ) i: Y) f' R& p0 `5 `
  303. PLA
    1 K8 \( c+ }2 A
  304. RTS
    2 M8 _/ z, q* u3 r+ F
  305. PPU_STAGE:    ;STAGE显示程序) k, v7 b( H* e* j8 O( i9 C
  306. LDA PPU_ADDR_DATA
    5 g/ w$ I; {2 P% }6 l
  307. STA $2006
    ; I4 o8 r' v: z& Z, D4 J) ]
  308. LDA PPU_ADDR_DATA+1
    7 F6 i) M+ s  l6 M  D$ V
  309. STA $2006    ;坐标设置' A9 S* `1 H! f0 k0 z% L& H" [# f
  310. LDX #$009 F7 {; @0 G7 D* _( F. e. i8 Q
  311. PPU_STAGE_WROTE:    ;写入STAGE字模
    8 Q' ]& z! h$ k% V( D8 E8 L( m6 {
  312. LDA STAGE_DATA,X
    ! P& h4 i$ G; @  c) E/ _% n
  313. STA $20077 F& b" f- m, h' h5 C8 U8 B& x: u
  314. INX3 f" D. I- W$ u" Z4 M. y' l
  315. CPX #$06
    % z, G* }: @: e" }+ C2 ]) Z
  316. BCC PPU_STAGE_WROTE2 o. T$ R! V7 G0 `" D
  317. LDA $6010$ f2 s  j: }1 G2 m
  318. CMP #$FF    ;关卡数据初始化条件判断
    + R7 v6 s: e: E. B  V* T
  319. BNE KEY_B+ l, t* i/ H& W2 I. M' D; y$ U
  320. LDA #$00  p3 g. n0 h. }
  321. STA $6010    ;关卡数据初始化
    % L3 f& c/ X5 n2 l  A& g
  322. KEY_B:    ;关卡减少5 J/ ]  q6 E" v8 P0 Y  R. E9 Q8 h0 @
  323. LDA $042 r) a& k) M2 M/ J! M7 b; E% F- A
  324. AND #$42    ;按键B或左减关8 Z3 l; H( i2 [- z! ~; N) Q
  325. BEQ KEY_A
    ! \; U" F. x( _1 f
  326. LDA $6010
    ( ~# \: z( a. `* U
  327. CMP #$00    ;关卡比较
    1 g) ^1 c- E8 s5 s
  328. BEQ KEY_A* q! x+ k; ]% v8 {- T$ g
  329. DEC $6010   ;减关
    * U3 v8 L/ C* s/ N5 U1 [
  330. KEY_A:    ;关卡增加6 k  Y8 N+ Z1 Y0 k4 C) M: u" h
  331. LDA $04
    2 a. o) N2 [1 F! o- W8 d( B
  332. AND #$81    ;按键A或右加关" S8 K6 ^/ p4 l$ c; B4 S
  333. BEQ PPU_NUM_WRITE$ x' U. ^1 t. t- B: w  t$ U, Z
  334. LDA $6010$ P8 M5 t8 J3 ]3 `
  335. CMP #$04    ;关卡比较5 {5 D1 l. ]0 b# Q
  336. BEQ PPU_NUM_WRITE9 j) k6 f( o5 n: S. _0 `
  337. INC $6010    ;加关
    1 g: v* g6 q' V/ b
  338. PPU_NUM_WRITE:
    ! ?3 h7 T2 n- L: V$ [  z8 ?5 X
  339. LDA $6010
    ' |1 j7 i% _$ X6 [
  340. TAX8 X' f& \& t2 ?9 K$ T7 g
  341. LDA STAGE_NUM,X    ;写入数字
    & D3 w6 w1 O# Z' \- T
  342. STA $2007
    2 |7 l  ]( a% H) b5 Z% ~. l5 E
  343. PPU_RTS:, T4 \9 h5 H! a) E
  344. PLA1 |5 F) F! s. u. M. s3 ^
  345. TAY
    ! S4 S( ?# f( v4 M- ]& Y
  346. PLA- y+ z) w3 D% u
  347. TAX+ r& {% }" v2 U2 V
  348. PLA
    8 e' W4 F( o, _& X; i
  349. RTS
    . k) @) B" `0 m  j1 q% r

  350. - f2 F! f! N; Z1 j: c$ [

  351. ' e# g. O9 {8 x9 f9 v% g
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据( u" g3 ?; T& W6 s$ O
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00
    * x4 [# p: `4 B( w, f# ?  ^- L" e
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据
    ( N9 S' |3 Q* H, P3 e. I
  355. .BYTE $D1,$D2,$D3,$D4,$D57 F2 W0 I! s( N. f4 p% m3 j+ E

  356. : b+ V$ R: x6 D9 Z
  357. PPU_ADDR_DATA:
      Q7 A" z1 K, I: m5 D2 \4 o7 {
  358. .BYTE $23,$0C* o9 g0 z8 Q' L0 x; B

  359. - i4 q% F* [; h1 o. N
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 1695 天

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

签到天数: 1124 天

[LV.10]以坛为家III

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 2050 天

[LV.Master]伴坛终老

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

签到天数: 57 天

[LV.5]常住居民I

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

签到天数: 3166 天

[LV.Master]伴坛终老

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

签到天数: 1801 天

[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
- ~1 J! b3 U) i* }4 S1 y- t最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

7 z3 K: K9 A  ?0 f已经加上了,赶紧下载吧
[发帖际遇]: 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
8 F( j9 n# s0 E+ p2 b旋风又疯狂大修改了 哈哈
& a6 ?4 x7 w  I4 S. h* n
疯狂不起来,无聊了而已
[发帖际遇]: 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-8-28 19:00 , Processed in 1.082031 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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