设为首页收藏本站

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑 % W& E, ?0 H' n  l
% j# g1 Q+ B6 r6 X
    [FC][最终任务][END选关]: \$ I0 o8 I- W9 X: K7 ?
4 \0 Y3 c& a+ y: e7 J0 y  K2 L
时间:2017.3.299 g0 h0 s, U9 ]. A
作者:FlameCyclone
" D# H0 O5 h: f2 b内容:
* D- F  V: X: Z& w+ m6 S  p    1.关卡选择:   标题时,左或B减,右或A加(1-5关);
2 K# [4 A  \& `6 @$ Q    2.无敌锁定:   暂停后,按上键切换;
8 R* {0 H7 Y) O& @+ f0 Y3 G    3.生命加满:   暂停后,按下键切换;/ K. j" ~  c4 g
    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);3 D' c' V4 t" u" Y
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);
+ ~0 V/ S! [0 o/ k    6.B弹数量:    暂停后,按A键切换(1个或2个);1 |8 n9 a( `# S1 ]6 s
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;
  U# a0 q- j2 a4 B& b% {- O/ f4 T# Y+ E8 D% F

4 z# N5 Q' G& Z8 T- [# h8 L3 f' c% O- M- S; {% M
1 G" x5 Y, x( \* C' ~/ f. I

6 E% @  M( I' c9 U
8 M/ F7 T% e) D" z; Y7 ?& [" D
游客,如果您要查看本帖隐藏内容请回复

" d# g: Z- h' z1 p, L$ EFlameCyclone.ys168.com
$ ^, J8 S: {$ N8 i2 u, Gwww.nesbbs.com
  1. ;[FC][最终任务KEY][END]6 Q  b* H% O; |. H
  2. button = $04    ;单次按键
    0 W; T- b6 [# W5 |3 ~( p
  3. flag = $6000    ;功能开关标志
    8 N$ V+ F% e4 r) T. B# {- _
  4. pause = $000E   ;暂停地址
    - @1 x. t4 R8 e" j' i

  5. ' e8 G: ]# k- p: X- T3 |+ c( K" C
  6. .ORG $8000
    * o! u  i  L5 E( y# z
  7. LDY #$08    ;自带的按键程序
    3 u- x3 i6 w% O+ o- T( H7 K& Z+ y
  8. ADDR8002:
    / p! t9 k+ f/ g) v
  9. LDA $4016,X- z& e- W1 R6 a
  10. LSR3 [3 x- p5 ^, [# J" r4 G  |- |
  11. ROL $00218 p( A! {/ |3 `3 N  O, K- l4 i3 l7 C
  12. LSR
    ' ^- m( r0 q7 D0 d
  13. ROL $0029: }/ X' w8 _/ }
  14. DEY3 B' w% |! [( Y& M2 O
  15. BNE $8002
    $ V, |6 \$ k( K, N2 h3 X- g
  16. LDA $0021) P. v, h" z1 P! ]
  17. ORA $0029; ~2 j  Q- O" Z1 o' n
  18. STA $0021
    % G/ t- T3 O5 x7 u0 T* v' y
  19. LDA $0020
    ) Q0 g' l  N' L
  20. AND $0021
    5 E* W5 S* T/ g2 p
  21. STA $0020! M8 f  x! N7 }1 w3 h* ~4 j; b
  22. LDA $06,X
    : o) T9 }0 j/ ^) C
  23. EOR $0020" T5 T5 b9 x* Y! s4 e0 Q+ O
  24. AND $0020
    7 Z* {0 Q/ Y( F0 j, q
  25. STA $04,X
    % ^0 [9 C$ A0 H& ]$ |
  26. LDA $00203 o& }) a" d- d5 A; _' b9 |
  27. STA $06,X
    ! d3 v  `( D) {% u# |
  28. JSR KEY_OPERATE& G+ d3 K8 p5 F" d* F7 P4 [
  29. JSR Function    ;功能调用* @/ s6 ?! [4 d+ H7 J5 N
  30. JSR Weapon    ;武器切换调用8 g+ H  x) A) ?' T( Y( N
  31. JSR Power    ;威力调用& c# a5 n7 l0 p/ Q/ O& p" b3 P* z
  32. JSR BULLET_NUM    ;子弹数目
    ) m- V/ h: w2 \6 f
  33. JSR BULLET    ;副武器类型
    5 X$ \' m5 \* x; \, j
  34. RTS
    . h: V- m; k6 H
  35. 3 m+ [2 Y2 s1 d. ?5 N) Q& }+ y8 b1 C

  36. 5 S4 ^* a8 v# n9 u1 e

  37. 3 y9 k" H/ }: h: G" J
  38. .ORG $80501 A3 k2 x) U0 C# r
  39. Function:    ;功能0 f+ B- j3 w& |' u
  40. WUDI:    ;无敌
    % e1 D& B/ f9 t
  41. LDA $6000,X( b1 `3 m+ H& C; N- B9 e6 C# p
  42. AND #$08    ;开关判断* o$ D/ @+ q, r; B- w- g
  43. BEQ LIFE
    ; Q, {9 x" ]5 C# b- E% J
  44. LDA #$05
    ' X& _& ?  d# d9 t) n# _, E4 i( W2 r
  45. STA $05DC,X    ;无敌锁定; a2 s. X8 G4 x' G9 Y7 s% o9 u  R
  46. LIFE:    ;生命# K7 m% }: w& G2 O. x
  47. LDA $6000,X: {( F) r' d" `" C
  48. AND #$04    ;开关判断. L* i- j/ s3 x8 J
  49. BEQ FUNRTS
      u+ B. J' r! ^. \9 r8 j
  50. LDA #$05
    + U' b4 E. D" C, F5 R
  51. STA $1C,X    ;生命赋值, U' N9 X) t  r7 |: u
  52. FUNRTS:
    8 Z1 b+ `1 G, x7 H- Z, m
  53. RTS6 ]9 y' n3 ~2 Y' r( C' i9 \
  54. " j. O% G1 i! G+ p( i$ @8 S7 a/ d* k6 o
  55. Weapon:    ;武器切换
    * X0 O9 I( x9 c
  56. LDA pause    ;暂停状态判断+ l9 X" k7 {% p% N
  57. BNE WEARTS2 N# t9 `# a" K( X2 M
  58. LDA $04,X# P3 W4 r0 j% ^+ v
  59. CMP #$20    ;选择键判断% F" G) o" J9 `
  60. BNE WEARTS, ~0 I5 e( O4 J4 N
  61. LDA $12,X& x* n1 ?# I" P" {7 j) K3 j
  62. CMP #$03    ;武器值判断
    / O% d! N. ~9 a! Y
  63. BCC WEAINC
    & E- x7 I: I2 G- b
  64. LDA #$FF
    + r7 x0 u" A+ |6 o+ X3 \3 Y4 Q, g
  65. STA $12,X    ;武器重置
    . u! a( j. j( ]' ?4 n. g+ C  S/ V$ ~
  66. WEAINC:! B0 ~6 n- U& e4 j: f. H9 T7 S
  67. INC $12,X    ;武器增加
    # a6 o( T/ h, D/ h/ t# Y

  68. 5 u7 Y& m3 J3 c7 E6 q0 c+ T1 y1 h
  69. WEARTS:
    . u$ M$ E1 a  b4 n, @0 I
  70. RTS
    6 V: g' Y2 r# j" x/ O  D

  71. ( t4 ?. m/ _* z0 O- t; q$ l4 M
  72. Power:    ;威力7 t% A! ?3 U  K' A" [$ n
  73. LDA pause    ;暂停状态判断
    1 h% ?/ n" x( v) X9 `/ I7 u5 r- x
  74. BEQ SPERTS
    6 F2 A+ y$ x: J  p
  75. BUT_LEFT:+ m2 B; C/ \* _+ e5 {
  76. LDA $04,X# [5 ?% R& d0 t) R+ f
  77. CMP #$02    ;左按键判断9 w; {9 s* o! \! G
  78. BNE BUT_RIGHT" x$ j: T3 Z. Q. \7 v# z/ F
  79. LDA $88,X
    3 K; _& S* \8 ^
  80. CMP #$00    ;威力判断1 B. M) r+ o% f$ C2 Y  d5 B4 @5 j
  81. BEQ SPERTS
    ( r7 H  n; E" C3 U6 G5 c4 j4 x
  82. SPEDEC
    * y9 `# B3 `# i7 y9 e
  83. LDA $88,X    ;读取武器值! X4 g, p. b. V+ F4 a+ @6 E
  84. SEC+ U, Y9 Z, q" y* B: ^5 R6 `
  85. SBC #$08) R) ?$ u# m" E! v# l; q; M
  86. STA $88,X    ;威力减小
    # |1 y( q9 [. G! y! q, _
  87. BUT_RIGHT:
    ( f, s: Z& }* |" T: e
  88. LDA $04,X
    & ], a/ v+ k; z( Z* z& f
  89. CMP #$01    ;右按键判断
    - m& r: Q- ^) q6 F& Q' d+ b
  90. BNE SPERTS
    . x2 D% X3 O! B/ N8 p4 P/ ^2 h7 b
  91. LDA $88,X
    : w0 V. ^* q: o, [
  92. CMP #$10    ;威力判断! r' j: e$ H0 h( r' [
  93. BEQ SPERTS
    0 k0 ~# B( K/ _2 F' y. \5 ?
  94. SPEINC:- u. ]% j9 ^4 \, w5 t
  95. LDA $88,X    ;读取武器值" s: P8 H  F; \! ]2 X
  96. CLC
    0 ~7 j$ K% g* v6 ^. x6 S
  97. ADC #$08
    9 P. Y3 l* W1 t" D* s+ c
  98. STA $88,X    ;威力增大
    5 X8 c/ k  k( e9 s& z( O, J+ i4 o
  99. 6 ]! y5 i4 u# ~5 W2 @% G
  100. SPERTS:
    ) W7 j5 Y# W: ^
  101. RTS
    . s# Q# J% D% [

  102. ' `$ y3 z+ J; [
  103. BULLET_NUM:    ;子弹数目
    ( C! a$ z, e, Q. v- X+ ~
  104. LDA pause    ;暂停状态判断
    3 q" u7 Z1 X' c& d
  105. BEQ BULRTS4 C- l. h# o0 L  q: u
  106. CPX #$00    ;主机玩家判断
    + m$ d+ K: x, b8 ^" G1 ^
  107. BNE BULRTS2 w! f" _2 f  p$ C! Z6 z
  108. LDA $04,X    ;主机玩家判断1 Z% o$ _- I7 i) [6 s% `' b
  109. AND #$80    ;按键A比较  [+ @( \. s( h; N" M) S
  110. BEQ BULRTS
    - \3 |& l# `$ h; A; N4 n
  111. LDA $87    ;状态判断
    2 ]4 ~4 L" H$ k/ O; o( `
  112. BEQ BUL_2
      O6 p" b1 z/ D$ Z4 v7 [0 V
  113. BUL_1:
    8 P3 i$ V, Y: u
  114. LDA #$00
    5 X9 J( q6 X$ o& b' @
  115. STA $87    ;1发子弹: ~, n1 W  }0 i0 ]1 f
  116. BEQ BULRTS, l- {6 O7 e& c# s2 n) u6 Q
  117. BUL_2:
    1 n: ~, p1 g% e3 X
  118. LDA #$015 t( x0 z8 M/ h
  119. STA $87    ;2发子弹
    9 ~* _9 a7 ^9 L  ]! R3 W/ U  ^; ?
  120. 7 t+ I& J& N5 p5 ^
  121. BULRTS:
    ) H* _$ G8 @* y* ]5 d( J3 [2 a, }4 \
  122. RTS7 J( A2 X4 L6 n3 j

  123. , ?9 a% G4 P( R# V& V
  124. / t0 I* r: H, A& `9 I! T
  125. BULLET:, S  M, z0 ^- L/ Z5 V+ @
  126. LDA pause    ;判断暂停状态) o% g, S" g) A6 c
  127. BEQ BULLETRTS
    8 d0 S6 ~! N; t. k8 N
  128. LDA $04,X5 y5 u6 f- F7 z% T
  129. CMP #$40    ;按键B比较, p# S1 V7 p- b1 L1 W' ^
  130. BNE BULLETRTS
    : i3 b8 ^* X+ q+ m; p; u
  131. LDA $6002,X    ;读取副武器
    " z; K& Q; l: p. }' F" F$ [$ L
  132. CMP #$03
    & x. ^; D$ b- O  j$ {
  133. BCC BULLETADD' K* O4 d8 ~1 r# m) f& [
  134. LDA #$FF
    % n1 I9 `+ \% s5 H
  135. STA $6002,X
    ( V# H6 h. {. Z' U3 f- Z7 {
  136. BULLETADD:0 ?+ B! d8 m+ t, i! j* y1 B) O
  137. INC $6002,X" _) b9 f8 \- I% M

  138. 1 Y  _+ ~" }7 k
  139. BULLETRTS:4 T! ^! U: c+ I6 d4 p0 [' X
  140. LDA $6002,X
    2 M" Q0 `5 S6 w5 V  D8 H. K
  141. TAY" K5 ?/ {: j. x: I
  142. LDA BULLET_DATA,Y
    - k& I% N, H) h5 Y; ~+ C; o
  143. STA $6004,X    ;写入副武器数据3 f; y0 b* @6 b) c. K# |( H
  144. RTS  W6 }0 ]# C1 ?, I0 N5 M2 M3 e

  145. ' H( \8 p# ?7 x
  146. 3 M1 |- |( g9 t. B1 H+ {7 i% x
  147. BULLET_DATA:
    ) @5 \' T3 q6 [. w
  148. .BYTE $06,$02,$03,$04* N* [$ u: J: ]  r* L2 ]
  149. 8 ^, K4 O  ^7 n2 r
  150. 6 m6 I0 _" ], t- i* E$ w& _' [

  151. 5 n' t% S2 @9 ]" |( c
  152. KEY_OPERATE:    ;按键开关操作! @# c6 j' ~& }. o; i8 D
  153. data_protect:    ;数据保护
    3 B4 {! ^% E+ E- \; _* I7 \
  154. PHA6 i% f9 E3 x; G* U% V4 z9 [# ^7 }. p# m
  155. TXA0 y7 k  y5 ]0 S- m8 u6 \9 o* P
  156. PHA' a7 X$ d9 [! c
  157. TYA+ _' Q2 r7 z, j- d
  158. PHA
    6 a1 V$ `) F3 T  _8 j/ r; H

  159. . c: D! c5 v6 m" M3 o
  160. FLAG_INI:    ;开关标志初始化
    / Z& _# v  D" P* {3 k; q. l
  161. 1 o# r$ V- ~4 i4 B% \
  162. LDA $600F2 B7 q* R0 n4 B$ O
  163. CMP #$01
    - S+ O' b* i/ S$ s% K* S5 H2 u
  164. BEQ pause_cmp" H' L" F- O8 E. S+ U) {  U* a! p
  165. LDA #$00. I* f0 L6 E1 L/ H) _- L- G
  166. STA $6000% g1 F8 E; ?! u+ S8 r
  167. STA $6001; }1 ^6 c: l% p. p+ y: B: M5 G* `
  168. STA $60020 f( I  a5 ~: C2 h/ V3 D$ s9 x
  169. STA $6003
    " I; o5 \" V5 R. {( H% q! J
  170. STA $60042 d! j/ h4 U- t. x: ~; P/ G5 L, t
  171. STA $6005
    % b) G0 U( G% Y' J
  172. LDA #$01
    ' ~2 O4 N3 P; U2 [
  173. STA $600F
    , n& |4 A/ b. V

  174. 3 c2 w! D9 f! \) q' Y  O# r
  175. pause_cmp:    ;判断暂停状态4 f. c5 y& U- {! N; s% W5 N" r
  176. LDA pause
    - |, L/ D% I0 Y7 g. n& n
  177. CMP #$01    ;判断暂停状态
    ' s" L2 t7 X( k, R/ y& |
  178. BEQ button_press
    ( m+ n% x& S, p6 u' a+ N) N& ?
  179. PLA
    ! f% D: n' `. q0 f* {; Z
  180. TAY
    9 o, Z1 _' q/ _" j
  181. PLA
    * w" R! B+ Z- H( @
  182. TAX
    0 Z" Q. f- W" u
  183. PLA
    8 m$ G5 L2 Z- f" I; u7 H. U
  184. RTS
    * I$ O$ a5 G& d; ^

  185. - p  `" b) P* j8 q+ V' i) B
  186. button_press:    ;按压操作3 I# [* n" {2 i$ E* x# ~! _+ Q
  187. ini_Y:
    0 R5 ]; g( `0 c
  188. LDY #$00
    3 Y4 F8 `5 G; ^. Y
  189. button_cmp:" l7 j' G8 M3 j0 K# T5 O9 N7 f
  190. LDA button,X2 d& q% l0 _) t2 P
  191. CMP ora_data,Y7 ~/ X+ x0 ~# X
  192. BNE count_Y_cmp
    . F) o" ]" _8 ^  e0 [/ s) O
  193. flag_cmp:
    2 i2 F' D- ^, ]
  194. LDA flag,X. \7 A) I( q6 d' D6 K
  195. AND ora_data,Y
    3 u, K8 m2 T$ Z- n$ A
  196. BNE flag_and
    : ?: G! L* V. n2 @4 P
  197. flag_ora:
    $ o* r7 `) {' r4 M5 c' n# ]4 i
  198. LDA flag,X# r! H: I& b/ U! z
  199. ORA ora_data,Y
    7 W: S( B+ m8 _8 ~& G$ V' ]  k2 U
  200. STA flag,X4 ~1 A) g* Y" ^+ L; [; D1 i
  201. BNE count_Y_cmp
    ; _8 \9 A+ p! q* f5 g& r* D
  202. flag_and:6 F, r  b' w9 x2 ?6 E2 I% q8 K9 K- V
  203. LDA flag,X
    0 _# [3 z$ q$ W4 Z
  204. AND and_data,Y
      Y3 r) H& R7 |, `' N+ e$ P
  205. STA flag,X
    , K7 [8 n6 C+ L, D0 l
  206. count_Y_cmp:
    3 C, J9 R. v  B
  207. INY
    , P( `; G9 w/ D& d) c
  208. CPY #$08
    . K) Y; X. f5 T, |
  209. BCC button_cmp
      D& ^: u, j5 `' o/ [1 `

  210. # d4 L; o9 N& A, h
  211. data_extract:    ;数据恢复5 y, _$ g3 `, j4 t3 q
  212. PLA
    ; t9 p, h% X2 h
  213. TAY
    0 j4 _& c; {, I3 V
  214. PLA
    ' c. t  j5 y' {- F5 x; S/ Q- `! V1 |
  215. TAX
    7 L4 E% a9 o5 t- w* A9 ~
  216. PLA# i2 B' Z; Q$ ]% a- U) D  G% h
  217. # Q- d1 X; q) L& Z# p/ H1 {
  218. return:
    $ i6 u6 `) l9 `& G1 B! B
  219. RTS' \, V8 A2 D2 Y5 n6 u% ?

  220. 9 @2 H5 Q( c  L7 `! e
  221. ora_data:   ;按键相或数据
    6 b, ~( r& m! t* m3 n( `1 W
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    5 a) }0 o5 G; l" I
  223. and_data:   ;按键相与数据+ p5 M. S* l# e: W8 B0 `/ T6 }
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF) Q" n/ s9 i/ L2 o$ U- ?4 v6 b
  225. 0 i0 E3 U* A  V) m
  226. # L! K5 ]8 j" i6 ^3 @9 A

  227. ) \" R) g5 e& u
  228. " F/ E" E& Q, Z7 y2 H
  229. / n' |: N# X+ w/ F0 G* S& S

  230. # o  E( c, ^: \6 J; D

  231. : c7 ]* w2 e3 I% f1 W# x- k
  232. 6 Q5 _6 f6 Z! I6 X; `" l
  233. 7 o- r. h3 h8 L( O
  234. .ORG $C264    ;自定义的MAPPER2切页程序1 w6 s/ ^! e' `% O; m
  235. PHA
    3 }" x3 D  k* d, U$ M* `$ z- [
  236. TXA
    4 f& e& D$ ~/ A) X6 L
  237. PHA& i4 R0 Z) J  e. [- \$ ^1 W2 c7 p
  238. LDA $0066
    $ A, z# A4 s9 G+ S; S7 A
  239. BNE ADDRC280
    + j6 J9 M5 W# `% @3 ?0 O# z5 r
  240. LDA #$07& e: w' a6 @! {; ?) M5 y: w
  241. LDX #$03
    " B! {4 S1 L* K) X8 z7 P
  242. JSR $CD9B    ;自带的切bank方法
    2 E+ M: A0 O9 j2 [/ l6 E& k
  243. PLA
    4 O. z1 M' ^8 e$ R. z0 U& v) ?1 r/ O
  244. TAX
    # F! ~3 ]) x$ O; w: Y# R
  245. PLA: A% |0 e& _- W( N6 Y9 M; x( r
  246. JSR $8000; {7 _- I# e) h8 n
  247. LDA #$06! e' j# \- L- u1 A! M6 u  ]
  248. LDX #$03
    $ _% a* T7 D9 J
  249. JSR $CD9B    ;切回原该切得bank(可以不用)4 T; `) e( m+ Q# w/ R
  250. RTS
    8 y3 L& ~; z) K5 c" m8 e8 C$ c4 g# o( m- r
  251. ADDRC280:
    3 c4 x% p' l3 B
  252. PLA: T& \/ t" J$ X% E; T/ g
  253. TAX9 r5 N- P1 n$ l7 X/ E* Q
  254. PLA
    . h, z& X) S5 @2 h8 [8 V6 E) ?5 f. k
  255. RTS: z$ ]# u4 q% R' Y8 b( l- b

  256. ; M% P( I) b4 {1 R

  257. ( E$ \( c+ {7 z+ Z- Y) B+ ]- ~
  258. ;[FC][最终任务PPU][END]; m' R& K6 K' @% e
  259. .ORG $C056    ;跳转到PPU重写程序" Q8 Y# z$ Z2 K* b+ m
  260. JSR $7000+ ~) Q& {$ c( I( b
  261. $ r. }. [+ b; A  C7 G/ X8 a
  262. .ORG $CEBF
    0 r  {. v( g: k# c1 y. n
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入
    ' \) Q+ F' N0 q# f+ I! E. G. n
  264.   
    ; C! p7 E& C( K" c+ J
  265.   .ORG $E460" D! V9 y* `; E1 _
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入
    ! I* k, |, s7 H( [8 I* G! L
  267.   
    0 ^4 f3 f' F- F1 I6 M% N
  268. .ORG $71F02 L5 z4 O; J; e5 A  C: w
  269. STAGE_DATA_WRITE:# e" L  g8 U9 p
  270.   LDA $6010
    " H4 v" c! ^; u) t2 p& B2 {% k% C
  271.   STA $1E    ;关卡写入
    7 z  S: ^' D4 K4 k" \, k
  272.   LDA #$00
    9 V% }! [+ r" G& }2 I: E+ V
  273.   RTS& f7 P8 p# A9 d( L% L) R
  274. .ORG $71C0% W  W! A9 T% w3 K% G
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    ' L4 K8 D- e! b1 s& D
  276. CPX #$0E
    9 Y" @; s" |3 o
  277. BCS P2_BUL
    % H- P. z' i2 N3 d+ W; H
  278. P1_BUL:
    & o& Z' t9 h! t* f/ }. Z! p& V
  279. LDA $6004' f% }+ n, Y% }5 I
  280. JSR $D7D0    ;P1副武器数据写入
    2 |( X, y+ ~# y( @$ P
  281. RTS
    2 D) q6 z, P' q% o) w5 x
  282. P2_BUL:
    + I1 D# f) [8 q! [5 R$ d
  283. LDA $6005) ~0 n/ E3 T8 \9 S
  284. JSR $D7D0    ;P2副武器数据写入' V0 F) T# R3 z9 ~, r
  285. RTS
    ' v9 ^) O. ?& M2 R9 A6 Z
  286. ( M+ a+ B" ]! J
  287. ! H' b! L" {1 T7 w
  288. .ORG $7000
    . Z- T4 D- ?) f  u; e
  289.   
      E& a7 I  Q/ U' `. p/ v6 l
  290. STY $4014    ;补上覆盖的精灵写入指令
    / y/ Y6 o/ j4 w
  291. PHA
    / K) n" v. c; E8 q
  292. TXA
    # M4 ^! Z9 x6 c" B4 E, D
  293. PHA
    ! W1 j: i0 P8 P8 w; x* N+ e; h4 B
  294. TYA+ g( p8 m$ H( |5 |$ A
  295. PHA
    / S# \9 I0 T6 T$ K! E
  296. LDA $0C5 m- T: j! r- b
  297. CMP #$01    ;比较是否为标题画面
    $ u# e, {; g6 |0 z
  298. BEQ PPU_STAGE
    6 @+ ?1 Z5 {/ q: a
  299. PLA
    / z0 {  O2 L) i" ]0 U
  300. TAY# {! M0 q0 @8 q- U, M* Y& }5 N
  301. PLA9 G& g) e6 ~2 K4 `
  302. TAX
    / t/ K! J1 g' L7 j0 z
  303. PLA- r  J! d( b2 ?/ f8 T7 W: a+ P$ c
  304. RTS8 E9 ?8 D7 J% U: c3 y; `: O
  305. PPU_STAGE:    ;STAGE显示程序+ P) t- A4 a$ ]  a% u
  306. LDA PPU_ADDR_DATA3 f7 k( H; o7 S; P
  307. STA $20062 ^" u4 B: L9 ^* [9 L1 x' k
  308. LDA PPU_ADDR_DATA+1
    6 i9 z$ g# u5 i9 Y
  309. STA $2006    ;坐标设置
    3 C* m- Z* [) ?( A
  310. LDX #$00
    $ }+ _( a1 ]$ y) y3 c8 u
  311. PPU_STAGE_WROTE:    ;写入STAGE字模0 ~" D. u; b$ h% ~: y' W6 |
  312. LDA STAGE_DATA,X! o6 r" K( h  |6 S! T) y
  313. STA $2007
    3 m# i+ N; ^3 q" X. F$ V% y
  314. INX7 h! U( v6 d) j: [7 ?- K
  315. CPX #$067 h5 @6 [6 c+ f- J
  316. BCC PPU_STAGE_WROTE
    9 r/ s: c1 L: U% B1 e4 g
  317. LDA $6010
    ; O1 j) ?( m: G* @2 O3 W) E2 X& V" p
  318. CMP #$FF    ;关卡数据初始化条件判断
    + D5 m5 i  v* @' y1 p/ X% Y$ i
  319. BNE KEY_B8 e/ i4 z8 G  N6 I. x+ W  {; E
  320. LDA #$00
    ! Z% j+ c. Z5 j
  321. STA $6010    ;关卡数据初始化
    6 C$ G& O+ D! o5 r# d& ^! i
  322. KEY_B:    ;关卡减少
    4 P+ f' k7 p% r9 l
  323. LDA $04
    6 b, E. b- `7 g) \& w
  324. AND #$42    ;按键B或左减关# C' |, U" K' Z# s$ [* ?, `
  325. BEQ KEY_A
    " V( Q* W3 b" e2 m( C1 ~5 L
  326. LDA $6010) `- ?3 w% t+ ^( ?1 e$ |1 W; \1 m
  327. CMP #$00    ;关卡比较- B( f2 s6 [& T* ^! |
  328. BEQ KEY_A
    / s/ A) e( U; w9 ~* }# R# o+ ]
  329. DEC $6010   ;减关
    ( K" q& W0 N: V0 S# u+ @, R( \2 w
  330. KEY_A:    ;关卡增加& \) N# W  R' c8 N& }5 T* x: \9 o& ]
  331. LDA $04
    ; r* U' y1 x! z- `7 T! J) ~) d
  332. AND #$81    ;按键A或右加关
    8 e& Z3 k6 [' g" q- G2 ?
  333. BEQ PPU_NUM_WRITE
    2 K6 w7 K& q5 I4 N  M3 h. H
  334. LDA $6010$ R' l$ U4 ?# I! O/ {. Q7 A9 ~
  335. CMP #$04    ;关卡比较
    $ J! ^9 @3 }. U' K/ w( C
  336. BEQ PPU_NUM_WRITE" A% t% w: n& x; o' M
  337. INC $6010    ;加关
    5 _3 [: u" Y0 J6 G
  338. PPU_NUM_WRITE:1 O6 k( s, S: ?: y6 Q0 I
  339. LDA $6010
    + ]% Y! [0 I2 V
  340. TAX2 e/ M+ q/ e+ }- C& U' [- b# a0 o- ~
  341. LDA STAGE_NUM,X    ;写入数字/ u0 v4 _% k$ ?2 T+ m! n% r: Z6 T% ^
  342. STA $2007
    9 ~% @+ X3 j  U) ?, N% e
  343. PPU_RTS:
    4 R- m* v( _3 b. f" J" x- }
  344. PLA% e- ?; U* L# w# l+ ~, b) }, z, S
  345. TAY5 s- F( u5 {6 J4 s+ }
  346. PLA' B- c5 n) r# B( z
  347. TAX
    % f% P' l4 B- B" t- C
  348. PLA
    3 p0 H3 @6 N  y2 a
  349. RTS
    4 Z% i3 a) C" t
  350. 6 A8 I  `9 J4 F; K/ w' e1 ~( C+ j
  351. / h6 _) B  m  K8 D, M
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据
    * `( T6 n: o& @* }
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00! U: Q. L% M, ]" r7 N# R6 r
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据
    1 I  R! |, x7 O  I$ R
  355. .BYTE $D1,$D2,$D3,$D4,$D5
    7 o& A4 a, r0 W- ]
  356. : |- F: {/ A+ w! `1 x7 t. H
  357. PPU_ADDR_DATA:; i4 V/ E" N8 u+ j5 ~
  358. .BYTE $23,$0C
    & z7 L) J6 J; r- W0 N3 j5 x- C1 s
  359. * G$ O2 [* X: s# N6 @
复制代码

本帖子中包含更多资源

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

×

评分

1

查看全部评分

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

签到天数: 1579 天

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

使用道具 举报

签到天数: 1034 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 852 天

[LV.10]以坛为家III

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

使用道具 举报

签到天数: 1932 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 57 天

[LV.5]常住居民I

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

使用道具 举报

签到天数: 3048 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 1775 天

[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
: m' o  }9 l0 G5 h最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

6 A3 o; Y# R. B+ K1 H6 V* R# 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:357 e; s6 z  S0 S- x4 f6 s
旋风又疯狂大修改了 哈哈
" m9 O; d( x& Y" w8 v; C$ q3 k
疯狂不起来,无聊了而已
[发帖际遇]: 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-4-26 12:46

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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