EMU618社区

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑 8 f/ ?/ }. ?5 Q3 i4 \, I

- q& K) g: I3 V5 Z    [FC][最终任务][END选关]2 P2 M$ R  }4 @% M  P9 Y
8 @$ E3 G& ~' \) p( R9 d0 V  i
时间:2017.3.295 ~) i! {( e7 E) M/ ?) Q7 M$ y+ J
作者:FlameCyclone& Q8 @6 z' z& V8 {. Y- h  z
内容:
7 l6 }$ D; C' {    1.关卡选择:   标题时,左或B减,右或A加(1-5关);$ [' L, _& l9 u( }
    2.无敌锁定:   暂停后,按上键切换;, U; C* G: n. J5 P, K; {* Y1 U
    3.生命加满:   暂停后,按下键切换;
& {! o2 A$ O( u6 q, k( z& C    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);/ p( u& V8 Y- l6 M! ^' M
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);
" t- @3 x9 G: y, q  G    6.B弹数量:    暂停后,按A键切换(1个或2个);2 L6 s1 A3 w* n- n" I
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;& m0 |, `! {% L. v
1 K. R6 B8 E/ S6 [7 g3 Z9 z$ |

  @* s; C8 p, b- `! Z4 n* E1 D, ?& j  h/ k6 Z  Q$ l
3 A: p3 L0 s: B$ h; h& D  }

  m. c$ Z" H3 h' C5 |" `2 |
8 u2 O9 G- o$ H" m, U  L
游客,如果您要查看本帖隐藏内容请回复

8 ^8 `  h, C* eFlameCyclone.ys168.com
$ h5 e- Q6 b4 V) J# m9 [www.nesbbs.com
  1. ;[FC][最终任务KEY][END]7 x- W1 ?4 P! D% t9 B2 O. `0 F
  2. button = $04    ;单次按键, M& ~8 G2 k+ [$ |
  3. flag = $6000    ;功能开关标志5 h5 X4 [; t* r  T& C0 O
  4. pause = $000E   ;暂停地址) x9 B7 D2 _  ^
  5. 3 d+ M" `0 t! u2 o) q+ E8 I' P
  6. .ORG $8000
    & K7 D) T% F! q% k' Y% N
  7. LDY #$08    ;自带的按键程序4 R) s' k" P7 N5 `
  8. ADDR8002:
    5 b' }! J1 O1 e- F  \" C
  9. LDA $4016,X
    - p2 }5 |5 [& [0 ~  q4 }- {
  10. LSR
      T8 t/ m' c% l0 q8 h& }
  11. ROL $00216 p7 n3 S+ W' _
  12. LSR
    3 ~  c1 T, q! A  x% Z  ]# S7 V  p
  13. ROL $00298 C, S0 D% K  @3 d& z  U
  14. DEY
    ( f+ w  o, E, e* Q' R
  15. BNE $8002
    * r1 W" V: j! u/ }
  16. LDA $0021
    ' ?3 {$ B( }* M0 L3 T' z
  17. ORA $0029  b7 y  a& g% S. r. G/ B. B
  18. STA $0021; m' r- O& {- G. |6 _$ Y! h. e6 q
  19. LDA $0020
    ; V: k: {+ z+ n% e' Q6 ?6 f
  20. AND $0021
    4 m! T. ?3 u# D1 U: p( s
  21. STA $0020! o7 d( S: e4 w5 }2 ]9 e
  22. LDA $06,X& ^8 G/ z7 E; M( q5 t
  23. EOR $00200 _) E5 C6 l+ n( S8 ]( o
  24. AND $0020
    ' G8 Y4 x# T9 Y% Q( w- D+ X7 f
  25. STA $04,X! ~  q6 h* R9 @3 ^8 j: I9 ]
  26. LDA $0020& H% g% [2 P9 i3 o5 O
  27. STA $06,X& h/ J/ o1 w4 P
  28. JSR KEY_OPERATE7 U' J: a* N8 o8 |3 X
  29. JSR Function    ;功能调用+ W+ J# j4 [' C9 t- o
  30. JSR Weapon    ;武器切换调用
    4 v2 T* c8 ?+ I4 [2 ~  V
  31. JSR Power    ;威力调用- _2 E' X4 g: ^2 i5 W7 I8 {
  32. JSR BULLET_NUM    ;子弹数目
    + T+ K/ i/ B" T1 y
  33. JSR BULLET    ;副武器类型7 [( j' Y+ }0 r7 K6 v$ `
  34. RTS9 {; B& ?4 @* D! V9 ^. K4 u8 C( E
  35. 0 [* |+ e5 N( _% b; u) d
  36. % y. N, }: A! _+ ^$ T2 Z1 j$ f

  37. 6 d3 c3 E0 ]" N2 k* V& p
  38. .ORG $8050
      \3 O6 q+ M) m, x: L1 }& ?7 F
  39. Function:    ;功能0 z) |: A  o3 S$ X! @- Q' f
  40. WUDI:    ;无敌' L: D* w. ?( {4 S
  41. LDA $6000,X) Q$ N' F$ _' T
  42. AND #$08    ;开关判断
    6 g# A, m, g! ]) T5 ?' g
  43. BEQ LIFE* `9 q, |" z0 c8 g0 b4 A  C
  44. LDA #$05
    0 G% N( R: a" V) v* y# Z& U$ B" Q
  45. STA $05DC,X    ;无敌锁定: g! D2 K. b5 _3 m: x2 G7 t0 K, B
  46. LIFE:    ;生命
    : ?; A/ x  K. A; b
  47. LDA $6000,X: g2 b+ n: M7 G: E+ }' b
  48. AND #$04    ;开关判断
    2 e2 q/ B3 Y' b4 t) Q4 y0 p
  49. BEQ FUNRTS
    7 d1 |5 j5 @9 x3 d% H+ A$ ?3 t
  50. LDA #$05
    / |  `. Z& Z$ O4 K
  51. STA $1C,X    ;生命赋值0 b+ Z5 M% Q$ R+ v' O9 c
  52. FUNRTS:& i" b5 r+ K# n
  53. RTS: a: V5 e& B6 ~% P& a! K
  54. & I7 y7 Z  {) q  g
  55. Weapon:    ;武器切换
    ; N0 X$ @- Q' a
  56. LDA pause    ;暂停状态判断, h% r8 l- T) d" s" \
  57. BNE WEARTS6 `9 K  C5 F3 K. h5 [* F: _' G
  58. LDA $04,X5 S# ?+ b# |# s. `3 u& Y2 Q
  59. CMP #$20    ;选择键判断4 n5 J# b& X- d1 T7 @# C* U1 V
  60. BNE WEARTS5 h$ O& n( {7 s5 ]- K7 [0 {8 z
  61. LDA $12,X
    ) ]/ _( V: {% ~2 {
  62. CMP #$03    ;武器值判断: o5 Z$ G" t% Q- E0 T- P, B( F
  63. BCC WEAINC
    4 K* D. w0 N( u  ^) j3 r
  64. LDA #$FF  h9 r  {$ k& }; g: Q3 Q/ q' T# y' E$ D# m
  65. STA $12,X    ;武器重置
    9 M; h+ D% e. p8 G
  66. WEAINC:
    $ t3 W* u/ f! T1 {9 G
  67. INC $12,X    ;武器增加
    / r) {9 j% f$ Q3 V% @# p
  68. 6 X6 r6 ?7 g9 h* V  f# b- u! T! T6 I
  69. WEARTS:" z# R$ m, P  a3 @7 n3 [1 W
  70. RTS- l7 S  H5 h2 s( P5 l: `! C
  71. % U7 c' D. ]+ S! K) ?/ a
  72. Power:    ;威力! d" ~4 N: }0 r7 S0 v/ E
  73. LDA pause    ;暂停状态判断9 n5 N2 _* T* \) ~2 o/ R
  74. BEQ SPERTS
    # G. ]$ h7 \/ I+ e
  75. BUT_LEFT:  _9 U) @  ?! j7 z. L6 b! B3 l
  76. LDA $04,X3 S( {; a& Y7 P  t  l
  77. CMP #$02    ;左按键判断" ?  d* U5 ?, l# Y0 ~4 o
  78. BNE BUT_RIGHT
    + F' R& E1 P5 V, q: ~* k
  79. LDA $88,X
    2 }+ ?. W# s3 l% [
  80. CMP #$00    ;威力判断
    ! z" Y# y* s) x1 p4 Q. S5 d2 T% e
  81. BEQ SPERTS
    : q- L7 [1 @- R
  82. SPEDEC+ A& n& y$ o* S0 s
  83. LDA $88,X    ;读取武器值
    " X  k! e% U  H0 A0 P8 r% A) W
  84. SEC; O/ g$ }3 e% M0 T' q
  85. SBC #$08
    2 ]8 K% x/ U; r# ]1 z/ Z0 P
  86. STA $88,X    ;威力减小
    5 t6 M' a) N$ S0 _
  87. BUT_RIGHT:
    # H: ], z# c; _% S- K+ `
  88. LDA $04,X0 Z2 K# Z5 ]) [
  89. CMP #$01    ;右按键判断6 x: h: l9 Z4 ?
  90. BNE SPERTS
    . E# S$ `1 G0 d! a5 C$ @$ x3 `
  91. LDA $88,X
    $ p" N. `: i) V+ H/ t. z" \
  92. CMP #$10    ;威力判断
    ; W3 a' x" r: x; B/ a
  93. BEQ SPERTS* S( z. K9 c  m! ?2 a; |
  94. SPEINC:3 l+ X3 t( P2 F: ]1 j3 D
  95. LDA $88,X    ;读取武器值6 t' F" I. E7 S& P8 }8 i7 _+ c4 H
  96. CLC
    * i+ C, A. c) a' a% o
  97. ADC #$08$ \* O3 r$ N+ P% g/ o! @' @& A) H6 T% K
  98. STA $88,X    ;威力增大
    - J* E7 d9 w% r, F. f

  99. 5 r8 v( N! v- A7 C; i& D
  100. SPERTS:
    6 C. p9 x3 }* q( f
  101. RTS
    + n, l1 V9 `. o4 N6 N) v. R

  102. - m, M5 \( N5 C
  103. BULLET_NUM:    ;子弹数目9 h1 K* M- U5 B6 Z* F# k
  104. LDA pause    ;暂停状态判断$ Q+ e+ {0 [# Q
  105. BEQ BULRTS
    " [8 |* s0 S& }0 O# G4 w, d
  106. CPX #$00    ;主机玩家判断
    . P; P' }# g' t; @/ H8 d' ]
  107. BNE BULRTS9 L, X3 N3 Q+ w: u; y/ R
  108. LDA $04,X    ;主机玩家判断2 V+ [% F5 \* ]0 U! q
  109. AND #$80    ;按键A比较
    8 a6 C* [' e- m$ E, f( _4 U
  110. BEQ BULRTS& _' B* a4 a$ ?/ C# u' a6 [
  111. LDA $87    ;状态判断+ ^+ |; A& l% m+ L, D+ y
  112. BEQ BUL_29 i$ a3 }" [6 c8 A7 e9 w. S/ D
  113. BUL_1:+ b- b) E3 ^- I, E2 e0 U
  114. LDA #$00$ T5 S# @' R9 J# y2 w9 l4 a9 u
  115. STA $87    ;1发子弹
      d+ h  k3 R6 z# H- V3 q! E  t* X
  116. BEQ BULRTS! K/ `8 Z5 Y$ }' k- c, K
  117. BUL_2:5 e1 {3 s1 S! _6 l5 m
  118. LDA #$01( x. c! B# P6 l$ L0 G* d/ @
  119. STA $87    ;2发子弹+ v# l! M, e. G- Y4 b. v

  120. ' `* h- [0 m& K! F
  121. BULRTS:
    8 b% d6 ]  M4 M8 e* x' v
  122. RTS# h7 S$ {# n; b! ?8 J

  123. 5 f" y( U' _2 C

  124. 4 K( Z6 h+ G4 q1 _) P7 l3 t
  125. BULLET:2 a) T5 P+ K" ?$ T4 D% C
  126. LDA pause    ;判断暂停状态0 t5 _6 o# Y$ F9 Q" n3 M& O
  127. BEQ BULLETRTS& W0 x/ d! v8 ~3 W
  128. LDA $04,X
    : d( O/ E) s- V# N' H' V
  129. CMP #$40    ;按键B比较  a6 m" c8 A6 y7 ^, n
  130. BNE BULLETRTS, v4 a% y8 V. `+ ]  S5 Q$ p. J0 U
  131. LDA $6002,X    ;读取副武器
    ; s2 n1 m9 w; [$ D4 H$ M
  132. CMP #$038 h# l9 C, @4 x; I" |
  133. BCC BULLETADD
    3 p% N# D7 J1 B
  134. LDA #$FF
    0 d. a% G2 l' b5 O7 d* g& j$ q
  135. STA $6002,X3 y- [; N* Y/ b
  136. BULLETADD:
    * Q' b. q4 a* e: v" Q
  137. INC $6002,X" C; v7 g3 x+ H/ p

  138. 1 |+ t% H9 j# m' Y7 [0 e
  139. BULLETRTS:5 N. A4 z* O* ~' h9 W* Q, z
  140. LDA $6002,X$ v& _- M; Y, Q1 B" X
  141. TAY2 s9 I  m2 b. K/ z! q/ r
  142. LDA BULLET_DATA,Y
    2 k# M- A& m  n/ D8 {7 ]. C% z# Y* O0 q
  143. STA $6004,X    ;写入副武器数据3 @+ j) ?, O5 J3 ]) e' h
  144. RTS* S0 L6 G( i5 b" ~7 |" ^
  145.   W5 c8 m5 a, |
  146. 6 m# w4 w# z3 o% R" i
  147. BULLET_DATA:
    - M  L- Z- E1 G
  148. .BYTE $06,$02,$03,$04
    % g/ u. f. [* }! }* n8 G
  149. # w. c& @+ ~. J0 G& h( b

  150. 2 W) S6 C! l3 E* @; ~

  151. 5 e# Q2 ^5 T- a6 y4 L2 p
  152. KEY_OPERATE:    ;按键开关操作
    * A: _: g# x5 ]3 F' p
  153. data_protect:    ;数据保护
    % B$ x' t+ f6 H+ l
  154. PHA- J0 c- |( Y( K2 Q
  155. TXA
    3 O6 b  O4 x# ~- k( Z6 I" p
  156. PHA0 {% V" K7 G2 [- q0 V1 `
  157. TYA$ O2 y0 q6 Q8 T6 \) Q
  158. PHA
    + q: }0 [; u/ q; s: R3 {" |3 e
  159. 0 `1 a# [  R6 M4 ^( @3 U) t: g
  160. FLAG_INI:    ;开关标志初始化3 P+ s3 `9 d4 R3 j- g' Z7 M, q
  161. - E( ^" A0 P6 X0 G  r
  162. LDA $600F# A3 B& [9 s6 s" q; [* ]: d
  163. CMP #$01. E8 Z& q# c6 T7 Q8 H4 h
  164. BEQ pause_cmp
    : V6 K5 p' [# Q6 ]! M# X  M* \
  165. LDA #$00
    5 J8 s) v/ B7 C3 j7 b0 I" ?. d
  166. STA $6000
    6 y& L) d7 H- A! ^  @
  167. STA $60016 s. T+ E, b8 G7 j
  168. STA $60025 f( ^6 x, K) I3 Z7 V& n$ k
  169. STA $6003
    - ]$ ~, ]- O# H8 ?: T/ T* \8 Y) ^
  170. STA $6004
    + P+ G# @. W: K
  171. STA $6005
    : s3 g: ^7 `8 i* n% e
  172. LDA #$01
    7 ]  R3 K6 H' T. r$ i- ~3 q
  173. STA $600F4 G# J- y; T/ w+ b$ _0 l3 ^
  174. 0 V* p( \: t7 [8 d, f% K9 _
  175. pause_cmp:    ;判断暂停状态4 f+ ^: W9 G* @( }" ^
  176. LDA pause
    + f3 y) P2 b5 Z- T
  177. CMP #$01    ;判断暂停状态# w) H! C+ V: T3 a( \
  178. BEQ button_press
    - @* Q+ m5 ~7 r5 Y& g
  179. PLA+ J' Y, m( ?5 g# ?) e% q
  180. TAY
    6 e8 d! k: x1 c" @6 p5 {4 X: g
  181. PLA
    0 `) E' {* q( v. S+ w' J
  182. TAX
    + O. ]( V1 D, g& M6 }! Y
  183. PLA6 u' B' `! N7 M* N2 n, b! i% Q
  184. RTS6 b' `: ?+ E' x3 O7 H
  185. ! k+ l. `: n( M2 B9 A- U% {/ q
  186. button_press:    ;按压操作% U* r" ]! c$ ?2 {: e. G2 J
  187. ini_Y:
    ' P2 `* g( j( ^- s7 _! L
  188. LDY #$00
    5 q7 J  r0 h7 D6 B- n" l8 o
  189. button_cmp:
    ( [+ K! O' g9 P9 ]" S. Q
  190. LDA button,X- y' V3 r) z3 M( y& u+ ~  v
  191. CMP ora_data,Y1 c& ]8 g1 @$ a) }8 t5 Q
  192. BNE count_Y_cmp
    ) G- p. h( w5 x. @! V
  193. flag_cmp:2 _! Q3 ~" P" j( Z# m
  194. LDA flag,X4 b% n4 B. Z# d7 c1 d+ P
  195. AND ora_data,Y7 x% Z; d* [* `
  196. BNE flag_and& @7 F5 l$ D% D2 Z3 {6 D) O
  197. flag_ora:
    ' h; T7 Z* }$ X
  198. LDA flag,X7 r  v% Y3 M. u
  199. ORA ora_data,Y
    1 v5 v6 |+ M' R2 T4 `
  200. STA flag,X. ?# n5 \4 ~' F- g' H8 e
  201. BNE count_Y_cmp, r) v; j0 w, i
  202. flag_and:/ r9 \& T# ~# p1 m4 `* ~9 g
  203. LDA flag,X8 V* E+ u" p# K# B
  204. AND and_data,Y
    # E! [7 p: j, \; q- ~) p7 d
  205. STA flag,X0 `- |, I: [+ ]
  206. count_Y_cmp:
    0 S" `2 B' E' L: t; [. u
  207. INY4 @3 c" I, T; s8 a: _" G
  208. CPY #$08
      x3 l  M% x* e2 f
  209. BCC button_cmp2 v) a; h$ X/ p" c- ~2 \
  210. 0 g* x, T3 k4 N. f0 ~2 @4 I  g( G
  211. data_extract:    ;数据恢复/ B+ h  h8 |% R. C
  212. PLA" o- d" |1 P6 Q9 k1 u: f
  213. TAY
    0 Z+ K1 I# B% G. {4 n: j; M$ K6 Q, s
  214. PLA2 h) s! o: @6 Q# E
  215. TAX% t. d! a8 q8 }" k' c: |
  216. PLA0 D' N  ?/ s( U8 e: n, b# N/ O& x
  217. ( M5 l5 q9 k8 q' P$ x- H3 w
  218. return:
    * T- t! o0 N, a5 A3 q4 o
  219. RTS  Z0 _) m( Q% @# }

  220. ' V' \3 I! K  o' a3 H7 S$ n2 p! t) e% j
  221. ora_data:   ;按键相或数据
    * ~1 S; \6 G* Q- k
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10% R7 d5 e6 `/ j
  223. and_data:   ;按键相与数据
    0 @6 i- u- W4 a; z' b+ V! b5 e- g
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    + x0 [- J$ \1 p

  225. 7 Y- X) {. X7 ^2 r0 m; c

  226. ) K) x! c5 Z0 s' K4 e

  227. " P* X! E: V/ I# r6 g

  228. % C! ?, u$ t9 x3 l; G

  229. 1 ?& x3 v. Z/ e5 h& d
  230. * f+ c8 }! I$ N3 D0 d9 f( a) H
  231. & t# z8 @; R+ Q6 T

  232. * J) S' _. o2 a2 U5 I& S
  233. * D% R; l1 x0 K$ |/ D
  234. .ORG $C264    ;自定义的MAPPER2切页程序
    + d4 N# y% K% n. j
  235. PHA. c" M1 d; o' v& U9 U( q6 T
  236. TXA8 e* ^- W# y# [4 L5 e$ |& `; t( w9 w
  237. PHA
    ( ?/ e# g3 N+ ?# m  a( V
  238. LDA $0066
    6 B) d& C9 W: L2 f/ P+ Q! E' y- ]* ]: L
  239. BNE ADDRC280
    + C) U8 O" v* y! y3 c. k
  240. LDA #$07& h5 G$ a  h2 w+ f9 _5 E
  241. LDX #$03; X2 s8 n4 P5 N( |) N$ s
  242. JSR $CD9B    ;自带的切bank方法% P$ q8 j& h) m6 J; Q
  243. PLA
    : p! y1 {( O% o* a" K) k
  244. TAX
    5 K8 R& v" |! Q7 @2 ~5 q* v
  245. PLA7 P! A% S, g; f! `/ ^
  246. JSR $80000 W9 J9 e' L2 _4 i4 ^" M- Z
  247. LDA #$06* K: k; t" C2 h$ O! N
  248. LDX #$03
    ' q. S& a% W) b! t* L: U
  249. JSR $CD9B    ;切回原该切得bank(可以不用)
    5 D2 A3 U9 I; J$ b8 T5 `7 E3 A
  250. RTS+ A7 U) W. R8 R0 t
  251. ADDRC280:, {0 t$ d, @) V. M, F) f7 x+ C
  252. PLA  i1 A9 k% m+ u
  253. TAX$ \1 R" z- s5 h
  254. PLA
    ( z% F/ v' P3 L; f# F. w
  255. RTS8 }7 w/ T: i9 c+ g
  256. 9 Q: I  Q0 E! q+ q1 U
  257. 2 `; Y+ O6 [2 y. y# u+ v; J( u( u
  258. ;[FC][最终任务PPU][END]- c" D+ S" y7 l' P) s: o) y8 K
  259. .ORG $C056    ;跳转到PPU重写程序
      Q$ _/ g- C1 b
  260. JSR $7000
    % y( n0 E, P3 N: p# }

  261. 1 z, ^3 Y+ r. o+ _& ]& @
  262. .ORG $CEBF0 n- {, |6 `3 W  F/ s; K
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入" j% a0 W* R' ^# d& d( r; v
  264.   
    - c! Z  n1 E) Q- W
  265.   .ORG $E460* H- t! b" k) E$ j, @
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入# g3 E: g3 P/ k+ P& b: {, H9 h2 D
  267.   # e7 Y9 T0 I# Y0 k3 _* Z% K: N
  268. .ORG $71F09 {" Z/ U4 G# u$ J7 B& b# a
  269. STAGE_DATA_WRITE:
    . L& a( g# ?, G' }
  270.   LDA $6010. F; t. i( w* l+ S' ?) q! K
  271.   STA $1E    ;关卡写入* G' r* x/ X# f  y, l2 s# j$ ?
  272.   LDA #$00
    - o3 F7 a. S6 v% Q2 l) u, r) d( {- L9 p1 K
  273.   RTS: ^3 `/ F, ^2 n1 Z2 p' k
  274. .ORG $71C0
    ; m' U' o6 ~; O1 e3 T
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    " T& ~7 c/ k# B) n& \6 c
  276. CPX #$0E
    - ?6 q/ s) }4 x- L2 a
  277. BCS P2_BUL
    4 J( E+ w' w+ q4 r6 Q1 b
  278. P1_BUL:
    , v+ g* y* M3 [8 ]" J- t
  279. LDA $6004
    / @! @" |5 j& m6 K, E
  280. JSR $D7D0    ;P1副武器数据写入
    6 X' C7 w: m: v
  281. RTS
    4 J2 ^( _: S& e/ C8 K
  282. P2_BUL:
    $ ?' v4 Y( s7 _- D* y6 A/ w/ w
  283. LDA $6005  B" s5 m, n) T$ y! r. F
  284. JSR $D7D0    ;P2副武器数据写入
    + T9 ^7 U" }' E& L! _9 S9 F
  285. RTS/ `2 a# c+ G+ D9 f! ~* A; S
  286. 7 ^: A) M/ w9 f+ T) N1 D# }- a
  287. ! J5 K, P$ }2 ?! i- G
  288. .ORG $70006 x+ D8 e' N# {
  289.   
    3 h. ?  c2 @  p! a4 \& M/ g
  290. STY $4014    ;补上覆盖的精灵写入指令$ u) V1 E& I7 N3 W& V
  291. PHA
    ; z$ n8 z! i* U
  292. TXA
    # v0 ], `7 j$ [: J$ G9 i5 ]! {
  293. PHA
    . ~, M- e1 ?% d* c! r- i) n
  294. TYA
    / P6 J" c0 n" f' u3 }' B, L
  295. PHA# R! N& V9 H' S" |
  296. LDA $0C
    ( t* j/ G" S+ O, h+ E% F2 r5 Z
  297. CMP #$01    ;比较是否为标题画面
    " {' P4 F+ ]/ @/ l' ^1 `7 r1 M
  298. BEQ PPU_STAGE
      \, \% E3 \/ R& ?
  299. PLA
    9 G: E5 S; P4 m" h0 N: D
  300. TAY( N2 Y4 `; W4 z8 F5 v$ N( u7 X
  301. PLA
    8 S8 h9 R# m7 E, q9 M$ s
  302. TAX
    6 M3 i$ a9 [" ~. }
  303. PLA, @( h1 z9 J5 \, B# W, `6 K
  304. RTS
    : C( F2 H5 u/ d" I1 c5 X
  305. PPU_STAGE:    ;STAGE显示程序
    % O$ M. G  k% F' z) ^6 s1 B
  306. LDA PPU_ADDR_DATA! j6 m( \/ Y) C
  307. STA $2006
    % ~, L$ h0 E1 ~7 D
  308. LDA PPU_ADDR_DATA+1; f2 y  x4 D3 O- Z  n
  309. STA $2006    ;坐标设置
      w9 M) ~: Z2 j
  310. LDX #$00
    + p: d" |* P' L- ?/ w
  311. PPU_STAGE_WROTE:    ;写入STAGE字模
    ( R2 K) {4 ~4 z. \' ~
  312. LDA STAGE_DATA,X, }9 s' i/ w* i( i7 i# C0 S) q
  313. STA $2007+ W/ J5 k# V+ A, n! Z7 y, g+ `
  314. INX2 j% Z) k- \, M/ U
  315. CPX #$06
    1 b1 [: W3 z+ q& S( z
  316. BCC PPU_STAGE_WROTE# X& k( V$ L7 E$ L
  317. LDA $6010
      a! ?9 O9 w$ l4 J( Y! h2 x
  318. CMP #$FF    ;关卡数据初始化条件判断
    $ H  g1 T% C2 P9 r8 [  b2 _3 D
  319. BNE KEY_B; X' Y0 x$ r8 m# I# N
  320. LDA #$00: i# a+ i) B: g. v" Z8 u2 r
  321. STA $6010    ;关卡数据初始化0 c3 Z& A- U. |( ~5 H) t/ I+ B9 I
  322. KEY_B:    ;关卡减少
    3 g" \, u5 J# p  b: L" F
  323. LDA $04
    5 v) c. _. z% r$ P/ ~2 @0 E
  324. AND #$42    ;按键B或左减关
    " @/ W" R$ P5 d
  325. BEQ KEY_A
    1 r4 W. ?+ ^% \8 a/ U( [1 ^
  326. LDA $6010
    ' f! J; J* i% p0 L& F% L6 i
  327. CMP #$00    ;关卡比较
      w( U5 ~+ P; ]+ r4 v* \
  328. BEQ KEY_A, j, f1 d: C( I  t1 _" P
  329. DEC $6010   ;减关& M$ {! f( E% e) X- t
  330. KEY_A:    ;关卡增加2 e; @- I  R/ S( N( V4 c* `
  331. LDA $04
    ! T% y# |9 g5 I# l, N, w0 v1 l
  332. AND #$81    ;按键A或右加关* B2 a( W0 @$ a" I9 O# _
  333. BEQ PPU_NUM_WRITE' _1 ^, F# Y2 ?. m/ v+ T* C; `0 e
  334. LDA $6010
    ! E! }- p( R0 R6 b& I5 t( [
  335. CMP #$04    ;关卡比较
    2 Z2 v, Q7 M1 R1 |4 A8 t
  336. BEQ PPU_NUM_WRITE. d/ o, E. O- M7 X! ?
  337. INC $6010    ;加关& X; y- B6 h9 I" m( }
  338. PPU_NUM_WRITE:
    + ?, V7 ]! q% o& ~2 U
  339. LDA $6010
    - e! Y2 E9 g% C3 Z
  340. TAX
    / f* Y; A; m% P3 Q2 R! X) G
  341. LDA STAGE_NUM,X    ;写入数字1 e; P0 g: V/ W" m) d6 ]  e
  342. STA $20071 T! L" Y- j0 `1 J( A; Q9 i; D
  343. PPU_RTS:- E: m; ~8 ~. F3 N! S5 _
  344. PLA+ d( Q4 f( X: }, V5 @, ~1 z# I# S
  345. TAY
    9 a  O  |( }- c- z: a
  346. PLA8 {. [3 E. e# y+ e; T2 o7 K1 ~4 d
  347. TAX
    5 g6 U' ^# s6 ~! w
  348. PLA. T* a; u' i, l, n, c
  349. RTS
    ' ~7 _; ~* e5 o, Y- m/ z' d
  350. ' ~' e2 @7 d7 I4 |0 |% c4 y

  351. ) Y2 y1 ^: R4 H  e5 w
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据
    0 D  Z: u; P. U
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00
    6 V, [# o/ S5 `6 s$ e
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据
    + W5 K* E! p( C- k( Z
  355. .BYTE $D1,$D2,$D3,$D4,$D5
    % Q$ j8 `. a! b4 ]  K7 r
  356. 2 `& u( }! w. C& a+ W8 N+ |( G. i
  357. PPU_ADDR_DATA:. O# {6 x* N$ G, X* e; R) n1 R
  358. .BYTE $23,$0C
    7 q; I" N) H1 ^2 }
  359. 9 c- G+ b' j: q3 R5 ]
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 1811 天

[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 个 柠檬. 幸运榜 / 衰神榜

签到天数: 2367 天

[LV.Master]伴坛终老

发表于 2017-3-29 10:20:54 | 显示全部楼层
感谢楼主分享新游戏

签到天数: 1210 天

[LV.10]以坛为家III

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 2186 天

[LV.Master]伴坛终老

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

签到天数: 57 天

[LV.5]常住居民I

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

签到天数: 3301 天

[LV.Master]伴坛终老

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

签到天数: 1811 天

[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
. ~0 @4 d! d! ?. Q' ^最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

; p0 k( T3 C  L! ?6 U已经加上了,赶紧下载吧
[发帖际遇]: 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: ~; ~4 x+ t6 y! m& b5 j
旋风又疯狂大修改了 哈哈

/ U& R3 I" |' }( J+ r3 r疯狂不起来,无聊了而已
[发帖际遇]: yandagui摆地摊卖菜,占道经营被城管罚款 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 49 天

[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-1-15 09:49 , Processed in 1.111328 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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