EMU618社区

 找回密码
 立即注册
搜索
查看: 1842|回复: 50

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑
2 O5 w: ?* k8 o' r8 R/ c
6 g; f- q) g7 ^, p2 c4 b8 |    [FC][最终任务][END选关]7 q" E" n8 K% h5 x; ^6 v4 b! G
- v+ N0 V7 ]2 u+ D: {; A
时间:2017.3.29
; ~  g1 b3 P- @4 ~作者:FlameCyclone
! _* j3 O9 `7 Z7 @% Y' ]' e/ d* [内容:2 H: Y# L4 p, y3 b
    1.关卡选择:   标题时,左或B减,右或A加(1-5关);6 {0 @* J4 p1 c6 C4 h- r
    2.无敌锁定:   暂停后,按上键切换;& d7 r( p, D% ^: L4 t' w
    3.生命加满:   暂停后,按下键切换;
) |% F& M4 O3 ^# M* r    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);. h$ w) Z7 E) q5 q2 @: n  h
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);
7 d  v  U* J. b0 R  }8 Q! d    6.B弹数量:    暂停后,按A键切换(1个或2个);
$ y( e! |1 H* O6 W& W4 I' B$ Y    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;( a3 _" }9 M, k/ p8 v  P% Z

  H/ q. Y# L$ a7 s0 W# l
; ~7 f! Q, F5 }/ e7 l. u' K4 a
& \3 x- u$ r1 K* h( L: ]& q; q( B' W# Z* C3 P0 t2 S
' [4 w8 o& i8 Y3 T

/ v8 U! ~8 Q+ X1 J  Y- a8 m- e
游客,如果您要查看本帖隐藏内容请回复
# Y3 B6 C$ ~/ o- k% S/ n
FlameCyclone.ys168.com" T/ m2 i! J" f& O7 q, s" U
www.nesbbs.com
  1. ;[FC][最终任务KEY][END]
    / J- Q& n. C3 c0 f' v  x: [
  2. button = $04    ;单次按键4 u% ]3 `4 K" [$ t
  3. flag = $6000    ;功能开关标志- K& p3 Y/ F$ [9 N2 O# |( ^
  4. pause = $000E   ;暂停地址" l! J; T4 c$ }' r2 n
  5. 7 i; x" \" f+ D* t
  6. .ORG $8000$ K' m5 o3 D5 M* M, `. x7 b( l
  7. LDY #$08    ;自带的按键程序
    ' D: o0 E6 B9 {( M3 @7 I+ Z
  8. ADDR8002:7 L% M9 E; s' a  Z: x* ~
  9. LDA $4016,X" Z2 F$ w. C" e' [& |8 {6 g* ^
  10. LSR% s5 m, O$ x& C4 ~2 n  @/ h
  11. ROL $0021
    8 C7 w, A+ Y; }5 k
  12. LSR
    . ~6 v# z: S3 g: v* R4 C9 }% r
  13. ROL $0029
    : @! t1 y. ~; y, Q+ c
  14. DEY
    $ Q* J- l( k4 P. f: K+ R
  15. BNE $80020 j  Z' M- ], n8 ]. @% [# y
  16. LDA $0021
    0 h) s7 ]. R- S4 i+ I' u! n" N
  17. ORA $0029
    , E8 d" Q1 l1 T
  18. STA $0021
    + o* W) F$ n0 Y! B/ D* Z3 j
  19. LDA $0020
    6 R' C% J. [8 O! V- j6 P7 o
  20. AND $0021! V' T8 i! g. c3 s4 ~" c( G
  21. STA $0020
    0 H& Z$ K  F7 s5 w: @7 a
  22. LDA $06,X
    ; @* W7 a' r$ `! m" \3 Q) V
  23. EOR $0020
    2 F( G' }# s" H3 A3 V, k
  24. AND $00203 j! n- W# a4 v' O4 M1 I
  25. STA $04,X
    6 r4 z* g6 g+ K. w% {% W, F4 W
  26. LDA $0020
    # n$ v& k7 K, u3 w* M: _3 O
  27. STA $06,X
    * a0 r3 a6 \" Z4 }! h! k
  28. JSR KEY_OPERATE1 G' v5 t: b' ?3 P0 q
  29. JSR Function    ;功能调用
    - S! P- h; J( B( R/ Y  K
  30. JSR Weapon    ;武器切换调用
    , y% h2 ]+ A) s0 F. p% _. S
  31. JSR Power    ;威力调用
      v7 l8 A" x( S$ |
  32. JSR BULLET_NUM    ;子弹数目8 k% j' v) E5 m& D- J' l
  33. JSR BULLET    ;副武器类型
    ) o9 {) R' k; i2 K
  34. RTS
    8 v5 T1 C% }6 H+ @' p- U
  35. . D0 l6 N5 S4 A+ f  o, x6 t# u; y

  36. ! E/ T+ C5 U6 z/ b
  37. 5 Z" P6 G% A' u: \0 ]1 A
  38. .ORG $8050
    ! U; K: B0 K7 G, A, d0 Q# {. i5 X
  39. Function:    ;功能2 ^$ w  {' p3 h) w7 o
  40. WUDI:    ;无敌
    3 U! u( h3 t9 r) G) @
  41. LDA $6000,X
    ) T, s* ?( B" |6 j% u
  42. AND #$08    ;开关判断8 m+ r0 b  c  D( S3 N/ v8 a
  43. BEQ LIFE5 l& E$ E- E  K( G/ Y, Q
  44. LDA #$05
    ' Q' L. k0 a8 Q/ F6 F" p
  45. STA $05DC,X    ;无敌锁定
    7 B* z' \' p  A) G8 G# d# ]
  46. LIFE:    ;生命
    : L0 R' T" s, w( i9 s
  47. LDA $6000,X
    9 X1 U% @8 C# ^, d- b# Y! H! F! _: l
  48. AND #$04    ;开关判断6 X* R' i% L" r8 G8 w
  49. BEQ FUNRTS
    ; H6 D5 y+ W5 z/ F8 g3 [; |* i6 m
  50. LDA #$059 z& F# ?9 E  ^6 f
  51. STA $1C,X    ;生命赋值2 N, d) a* X0 L, y4 {
  52. FUNRTS:
    ' k7 M2 b& O4 s& `4 z" R
  53. RTS! V2 b$ @) @2 U3 C- d. \

  54. ! @& c% N) }, K0 i+ z5 A
  55. Weapon:    ;武器切换
    ( r' K% P: n: M9 n
  56. LDA pause    ;暂停状态判断1 ?% ^8 Q# ]1 U, X6 {2 X5 O
  57. BNE WEARTS8 ]* [# @* x4 Q+ A) w" m- I3 R! r) O
  58. LDA $04,X" U) l3 o$ Y: U$ o6 V& i
  59. CMP #$20    ;选择键判断
    9 @9 w* m$ J2 O: u
  60. BNE WEARTS: V: R9 d! w5 F' j9 b# O
  61. LDA $12,X0 T% C; c9 u+ s3 N+ W2 V( `
  62. CMP #$03    ;武器值判断9 r7 p. S  B4 u$ Z$ @
  63. BCC WEAINC
    & w( p% ^: X* I$ ^# R
  64. LDA #$FF
    ( n# w4 p+ t8 u5 @
  65. STA $12,X    ;武器重置' a2 E& h, f# Q
  66. WEAINC:' Q4 O0 O3 W# Q8 \( _: r9 `
  67. INC $12,X    ;武器增加8 |4 z0 V% f; m$ s

  68. 1 C1 O. G) H0 G1 i6 k8 N! d) L, m
  69. WEARTS:
    9 s& S7 Z* @! E/ g0 A& {/ U( N1 X
  70. RTS
    : M7 s; o' C  a
  71. ) C  D) j# t! G: [) A" b( m
  72. Power:    ;威力) u& M2 `, c1 b8 i, D( ?1 x
  73. LDA pause    ;暂停状态判断2 Q; [5 l0 L( ?2 T: \2 C" Q
  74. BEQ SPERTS- [" J" N( `" e2 }0 _9 ^( m) s! D- M
  75. BUT_LEFT:
    * K/ N2 K: v, u3 ?; a
  76. LDA $04,X7 [8 c& A6 O" _8 U
  77. CMP #$02    ;左按键判断
    - O" x  O& t% s: ^5 Y
  78. BNE BUT_RIGHT
    ; q* P" w( F% Q( e$ @
  79. LDA $88,X
    7 m( N7 y2 \! c( ^' ~9 }
  80. CMP #$00    ;威力判断
    2 w$ Y6 V9 a3 C) l7 e8 d  \
  81. BEQ SPERTS
    4 s0 g0 }+ f$ R# ?2 {+ X+ O
  82. SPEDEC
    1 j3 W# Y- A: C) E) |: l
  83. LDA $88,X    ;读取武器值3 H9 z3 M+ g* B- A  a+ Q
  84. SEC
    & B9 _9 s: d3 B5 `
  85. SBC #$08
    7 Y8 A2 h1 }2 E2 T0 m: h0 U5 _1 }4 \
  86. STA $88,X    ;威力减小0 M( s9 {) ^! D. q: X, Q
  87. BUT_RIGHT:6 ]" }8 u& m0 o# F. [# \
  88. LDA $04,X
    7 ~( {  c" D1 I- `6 W! R
  89. CMP #$01    ;右按键判断
    ! r) w2 K2 a7 E6 c; Z1 Q3 t% N
  90. BNE SPERTS. a0 m; \7 j9 k5 I  s, Q
  91. LDA $88,X  I9 w, B9 _) A0 A) T4 u0 F/ v
  92. CMP #$10    ;威力判断
    8 p; u4 y7 M8 Q0 q$ F7 X
  93. BEQ SPERTS
    - ]4 w: H0 u8 X# {
  94. SPEINC:' \3 x3 e# m: n7 j$ P
  95. LDA $88,X    ;读取武器值/ `/ l( I  x+ U0 |3 A
  96. CLC
    4 O5 v5 P3 y5 k# R" Q
  97. ADC #$08( w/ A7 G: @' `, b. k/ I, Z3 U2 f
  98. STA $88,X    ;威力增大
    7 u# E/ x  g) i7 x  \, }

  99. 1 W0 ?) i+ h* }9 E. v
  100. SPERTS:4 C' B2 @: j9 L4 B( ]
  101. RTS
    8 P- O4 O. C+ {7 E- [

  102. ; Q! e9 q) K6 q& W
  103. BULLET_NUM:    ;子弹数目9 y4 \# R. v0 f) R( e  }
  104. LDA pause    ;暂停状态判断
    ' g. A( Z  x$ ]9 ^# n" [
  105. BEQ BULRTS( i3 t- `$ l# T7 ]
  106. CPX #$00    ;主机玩家判断, U$ R) i+ f" y3 {4 a
  107. BNE BULRTS
    2 x( o- D" u7 }9 j
  108. LDA $04,X    ;主机玩家判断- d) _: N. l! k# v% m
  109. AND #$80    ;按键A比较( a, T9 K0 p* ?' S& B: @
  110. BEQ BULRTS1 l& L$ E) B5 N$ Q. J
  111. LDA $87    ;状态判断$ \+ v, m5 \$ k  T, l: i
  112. BEQ BUL_21 M7 P  f& l% a$ s9 i
  113. BUL_1:, A: q9 N# z  {* ?3 x1 S  j
  114. LDA #$00
    * Y* m+ H& R4 E0 t
  115. STA $87    ;1发子弹
    ( ?# `4 m, w2 k6 F
  116. BEQ BULRTS
    % O! p5 a* p6 H. y4 ?/ R, m+ x
  117. BUL_2:
    . p7 G( ?: T$ N
  118. LDA #$01
    ! j% v2 x* v$ H. e8 w/ X
  119. STA $87    ;2发子弹+ z: V+ Q1 i# G& c

  120. + ~. H# b$ X6 b- v
  121. BULRTS:
    , I" C0 G% p- q1 L' }$ h8 R0 T
  122. RTS, R2 a. `9 B+ c6 O8 @' k% G' Z/ G
  123. 8 \) L! S3 R, H# G" i6 V! T! _

  124. 3 F& a3 Z. u9 O3 r5 a/ |' u; Z
  125. BULLET:
    + }, D, z+ l8 G) q0 @0 c2 `
  126. LDA pause    ;判断暂停状态
    ' i6 i3 X  G! m7 F0 I5 K1 ~2 v: d
  127. BEQ BULLETRTS
    : L1 i; u4 S1 a- a0 Y# c
  128. LDA $04,X5 L( b) ~. G4 _! P, \4 X$ l
  129. CMP #$40    ;按键B比较
    , `: v" o! G; n, U3 }' b1 o* v+ P
  130. BNE BULLETRTS
    : I4 U7 I/ q; m7 S
  131. LDA $6002,X    ;读取副武器# w$ L/ M- c3 W& [8 l, d4 [
  132. CMP #$03
    ! c4 z; {# [$ y1 q; {0 T
  133. BCC BULLETADD( x& |/ _0 z& t0 `
  134. LDA #$FF+ X) F2 N$ g1 v! n5 C& W! r
  135. STA $6002,X
    ! o8 H, T0 `6 ?" \
  136. BULLETADD:
    ; _+ T. I8 j1 \2 x. |. E
  137. INC $6002,X
    8 p1 f7 O0 e% j

  138. 6 Z- k8 P  ]6 j/ Z) |
  139. BULLETRTS:
      ^6 ~- n( Z3 ?% Q. y) P
  140. LDA $6002,X. R: J! `* |' |" S
  141. TAY- G/ O- P+ v- J  g; O1 ?
  142. LDA BULLET_DATA,Y* h3 l2 o4 U" m: P1 \
  143. STA $6004,X    ;写入副武器数据1 N1 [9 W# D( z: D) ~
  144. RTS1 x! N/ F) v, w. F9 u' s& Z- f8 Y

  145. ! ]2 {6 I+ j8 c& Q" o& v9 `/ m

  146. ( n7 M8 w$ H/ o
  147. BULLET_DATA:0 J6 S& {, D! _. a$ J# J, J$ V7 H2 y3 N
  148. .BYTE $06,$02,$03,$04
    " j' w+ Q4 l# `  z- F

  149. : S3 D+ {; S/ U$ N( s2 e
  150. $ s- {* y# k, Y* }
  151. ! y, J1 ]) [. |. o
  152. KEY_OPERATE:    ;按键开关操作
    3 l4 k$ V- f. G& M+ `7 D/ O
  153. data_protect:    ;数据保护
    . R+ C- w1 j" v4 o
  154. PHA$ c! l% ^# R2 d* j  V1 Y, G
  155. TXA
    % H; N8 e  r4 }  M3 Z5 b/ }
  156. PHA
    ) P  _7 u$ X9 x1 Q
  157. TYA+ i! p/ {& Q) o% A
  158. PHA2 G$ s3 _, j9 n8 ^9 n9 h

  159. " `6 E8 i6 [5 o1 d6 l: c
  160. FLAG_INI:    ;开关标志初始化3 J1 R2 \/ B" C" ?7 n

  161. % T5 U- j, b6 V  P$ Z
  162. LDA $600F( r) f8 {# H4 A# f1 Z2 X
  163. CMP #$01
    & |4 P; D9 y8 ~1 c/ X, {
  164. BEQ pause_cmp
    : F) }7 C% y* d1 u- R0 e9 |# L5 S
  165. LDA #$00) f8 k$ p: ]; e0 f; [4 w$ |) W6 ]8 [5 N
  166. STA $60004 s: H" C! X4 q+ `; n# Q
  167. STA $6001& ~- W/ b8 U" X& u1 A5 \
  168. STA $60025 x( B9 @. ?9 W1 @
  169. STA $6003: x/ i3 v/ k& z; @& \8 i
  170. STA $6004/ i" x  L! D8 g2 E- ^' o9 T- J
  171. STA $6005
    , @& V8 K; d6 J' ~9 i$ a) _4 y& L: i
  172. LDA #$016 c3 R  r# u8 h5 [5 i! g6 B# Y
  173. STA $600F$ h+ L, I9 k; }% N

  174. ! [' ^4 H7 z# |# o# {1 h6 ]& ]5 Z
  175. pause_cmp:    ;判断暂停状态
    * Y  N3 `- l" Z
  176. LDA pause
    * i, |, Y1 u4 M+ L5 L0 A
  177. CMP #$01    ;判断暂停状态
    / V0 J5 M/ b9 V, m
  178. BEQ button_press0 V' {) z6 v+ b. A' U  |
  179. PLA
    9 v" r& H+ V9 C  ^8 N0 @
  180. TAY' A4 v" H* ?" b1 k2 z7 {
  181. PLA; C8 a( J( O3 h1 ~: Z
  182. TAX+ q  e+ {% f' V- B9 y# {- y
  183. PLA! A. `2 O/ I: P7 O8 [! p+ b* |* f
  184. RTS9 `8 v$ J( C" {  n) V* j0 ^
  185. 4 i: d. E; o% J9 V" Y; Q+ i& A
  186. button_press:    ;按压操作5 c, E. f& n8 ]8 J! r2 l& L$ \
  187. ini_Y:$ G4 T* g7 L! k( \. g
  188. LDY #$00( k2 N9 R; S( G+ ^+ a
  189. button_cmp:
    # D1 P* @( R. |7 C0 \: U
  190. LDA button,X4 A! K8 f5 z9 X* K0 f/ C
  191. CMP ora_data,Y
    ) R7 S1 j7 V% ^- _
  192. BNE count_Y_cmp
    " E  J1 B$ \0 x. |% ~
  193. flag_cmp:, J; W0 b: ~, F5 K% T
  194. LDA flag,X! [1 ^) g! I: q
  195. AND ora_data,Y
    3 V' y  Y: \7 B* Z1 m+ \& u
  196. BNE flag_and9 J/ \- G# O2 N  h
  197. flag_ora:/ o$ p! k" M9 U+ s1 [7 E
  198. LDA flag,X
    ) z; t3 k8 ?$ W) Q& L
  199. ORA ora_data,Y4 D( o: d5 ^5 t- w4 N7 G
  200. STA flag,X
      O- u& C8 M* x# ]6 a' j( l
  201. BNE count_Y_cmp$ M/ M4 z. m6 I2 ^6 @) }2 _8 f" W
  202. flag_and:
    ; y/ \; t' F3 J6 [0 D" r7 P
  203. LDA flag,X5 T2 m' d+ V9 J; X
  204. AND and_data,Y3 z5 ^: ]9 z3 O6 E2 `( o
  205. STA flag,X; J7 `8 A+ F- g: e% a
  206. count_Y_cmp:
    1 t& P4 \1 l, v1 Z; H
  207. INY
    - s* G4 J$ P2 o- t
  208. CPY #$08* u- `& c6 G8 l. r) n0 i/ [$ p
  209. BCC button_cmp
    , H1 P2 A& b/ s' E8 ]+ U' `

  210. 3 h/ U" `" F" C6 A' T7 E
  211. data_extract:    ;数据恢复) A0 e8 H9 C' K
  212. PLA! }; z: k; ?0 D6 d+ o9 q
  213. TAY$ P7 \8 s1 |5 Z, Q! k
  214. PLA
    , V! t% a( ^5 [
  215. TAX% r  ]+ A" f+ i* a* C& y7 j
  216. PLA' `- k7 j1 u; w7 y
  217. " Q' S# r% c( C% _0 @
  218. return:7 I% V" n5 p, d
  219. RTS
    ( _! v; }" p" U6 w- z0 K) d7 C1 Z
  220. 5 x2 p: `: X! g3 C0 k8 S
  221. ora_data:   ;按键相或数据3 D& _5 c$ S7 V! ^" N' t/ R/ B
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    3 Y, L+ O3 W3 D0 ^
  223. and_data:   ;按键相与数据
    " E  q. ?$ R. o" v
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    6 @+ ]" Y) r+ a* X
  225. ) |5 `% N" C  X  e
  226. - s( @4 Q+ [( g& J! [  Y" T$ P
  227. 2 ?: G. ~, @5 @. |1 N! v
  228. ) b; D$ V4 Z3 ~) _  j

  229. " w, q) A+ H4 J8 G5 x, u' I: @1 i

  230. . X" F+ V- n  [6 K

  231. ; o' _$ d& p7 g& n2 ~, U

  232. 0 L- j! J- m/ C7 R! ]- i# A  a1 ~

  233. # |8 b! S  x4 v$ P6 X% x9 {- J
  234. .ORG $C264    ;自定义的MAPPER2切页程序
    3 S# f# Z/ R4 Y3 f6 z# F$ M
  235. PHA
    ; l( u) b1 X2 W9 ]' z
  236. TXA
    ; ]3 l1 O5 \4 p. s  X
  237. PHA" K3 H# Q$ v! `1 G; V1 }( J2 k
  238. LDA $0066; W6 A* K$ L- R' Z9 l4 A/ j& E: _$ @
  239. BNE ADDRC280
    0 C; z1 L" i! |3 u6 `0 G
  240. LDA #$07
    : M& T9 }" g4 |( r5 ^
  241. LDX #$03/ F  s! s1 o0 m' M8 H/ F8 P' u& T( y9 \
  242. JSR $CD9B    ;自带的切bank方法
    : Y2 {5 \0 D. o& C
  243. PLA# w$ T7 Z! d; B/ X! o
  244. TAX
    1 F6 R: E! K. p
  245. PLA5 r# a' e- f7 _& Y
  246. JSR $80008 w5 A( i- e; O! Q" `/ C/ D
  247. LDA #$06
    6 r% m: H( N) ]' E+ K: R. c
  248. LDX #$03/ _! C; A. e& [5 D: n1 N# q5 Q
  249. JSR $CD9B    ;切回原该切得bank(可以不用)8 `+ J% f4 @1 f4 f  v! f
  250. RTS
      b. O, Z5 x5 Y# o, t
  251. ADDRC280:
      l& ~3 G# U. \+ h4 s& ^1 |; z
  252. PLA
    1 i+ e. {+ c, f2 m* m& a, `9 @* c+ d7 d
  253. TAX& H1 z* K! ]) o/ @
  254. PLA5 g) `# e$ C+ R7 s+ g# t$ q
  255. RTS( H1 R1 f1 ]) k+ q6 s+ K( Z0 f

  256. 3 z' J* y+ O1 C" \$ n
  257. 7 [" o' F8 x3 C" F) e2 [
  258. ;[FC][最终任务PPU][END]
    * `  S  ], p2 r( e
  259. .ORG $C056    ;跳转到PPU重写程序. Y5 k: N1 h7 }
  260. JSR $7000
    ( ~/ b: K& ]+ T' Z! a4 P/ S& l7 n" Z

  261. . S0 t: ^0 P& I( u
  262. .ORG $CEBF
    # a- d0 T, T/ {8 K7 G/ B- Q
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入
    ( K% t/ }9 q' m" m; i. ~7 {
  264.   ' k. \; S( N: t& Q1 ]
  265.   .ORG $E460  D. U  \" w* z2 s* q
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入# P% ]3 ?; P8 ?+ X0 ~% J
  267.   * {: z3 n' f% E. Z
  268. .ORG $71F0
    * Z3 v) U  y# _4 l
  269. STAGE_DATA_WRITE:
    2 \5 Z% q- L% w
  270.   LDA $6010& d# D" y& L/ r0 ~/ }  L
  271.   STA $1E    ;关卡写入
    7 _& E( I, s7 Z: }  `& ~8 B. W
  272.   LDA #$006 C7 B4 e5 A, Z6 P: D6 ?
  273.   RTS% |7 I6 b- x5 Y+ u
  274. .ORG $71C0
    $ c; v. s& m- z3 _
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    2 H" l1 j+ X8 r' R3 S
  276. CPX #$0E
    + L- O& }0 c" Q9 J. D9 x8 P+ |
  277. BCS P2_BUL6 }* x/ i( p6 a) r" ?" q
  278. P1_BUL:
    ( d; H6 F8 j0 A; l& f& e% ?
  279. LDA $6004
    3 F( i  X% D) y) }+ I' i
  280. JSR $D7D0    ;P1副武器数据写入  |% |; \0 ^; L1 V5 ~0 Z+ p6 h
  281. RTS
      ^( U; _6 Y1 U; u( O1 w
  282. P2_BUL:
    & ]" J% r6 K  I$ ]* _
  283. LDA $6005- A5 h# c, b8 p7 K; g
  284. JSR $D7D0    ;P2副武器数据写入
    # f+ O6 q% M5 |: W
  285. RTS$ u  V; M2 T2 q* H# U0 }' @

  286. ! |* h+ {; ^: W, m% c
  287. 2 R% v6 w- [$ s$ U4 g
  288. .ORG $7000
    # Q" e0 T0 x3 H8 _  }9 ^
  289.   $ L. k' n* ~6 U6 A8 v
  290. STY $4014    ;补上覆盖的精灵写入指令; f, z8 U4 |* g: L  G
  291. PHA
    5 v0 h' c+ {6 p3 N; g- c7 O0 O
  292. TXA7 @' M9 [; Q9 O
  293. PHA% X5 o& b" R" T- z
  294. TYA
    ) X( w# J! o1 S1 g" w
  295. PHA5 q* G, Y+ V* O& K" A
  296. LDA $0C
    4 H# d2 w! I/ m* X/ }( o
  297. CMP #$01    ;比较是否为标题画面
    * h* {0 s; B9 ?) c
  298. BEQ PPU_STAGE
    ' T1 g. G* S( o+ `; _  H9 [
  299. PLA
    : |7 Q  n& w# e+ u4 U6 ~
  300. TAY0 d3 z3 ?% C' ~3 }7 a
  301. PLA$ {. V; g0 c, T3 c; D7 z7 [7 {
  302. TAX- _) O/ c7 I+ `& w. j/ c3 E
  303. PLA
    , B' h2 t. _  y1 p4 k
  304. RTS
    " e8 V! @/ o5 @8 K' J
  305. PPU_STAGE:    ;STAGE显示程序  g  g( n0 Z( A% @8 |. N; F
  306. LDA PPU_ADDR_DATA, a; N( p& N- k9 G0 L9 z
  307. STA $2006
    2 |$ n% q& k  y  z
  308. LDA PPU_ADDR_DATA+10 P$ C0 x' V( J, d. S
  309. STA $2006    ;坐标设置
    # M% Y2 b. g+ g
  310. LDX #$00
    : ]' O" w7 {6 ]" l$ r" L
  311. PPU_STAGE_WROTE:    ;写入STAGE字模$ x* s/ O* g0 ~
  312. LDA STAGE_DATA,X
    0 h4 y3 L* F# M1 u
  313. STA $20075 z# _5 w/ k! u
  314. INX% O, I" d; w+ \6 |1 u& c
  315. CPX #$06$ Q; `1 L, d' B
  316. BCC PPU_STAGE_WROTE# n  x8 d- H7 c6 @( |+ j/ u& N
  317. LDA $6010% ]0 E+ C# ~  F$ M+ H) i
  318. CMP #$FF    ;关卡数据初始化条件判断
    & k8 ?4 H4 V1 A' F8 ]  l$ F
  319. BNE KEY_B
      h0 a8 H0 b( J' s  r+ \: f
  320. LDA #$00
    ! A8 m1 _$ C+ x! X
  321. STA $6010    ;关卡数据初始化: }$ i8 \( j+ O9 Y1 [# u
  322. KEY_B:    ;关卡减少$ e0 _1 k1 O+ _+ L8 P% f
  323. LDA $044 n. h1 R  [: Q% G" l* \
  324. AND #$42    ;按键B或左减关
    ; W1 U6 g' l- p
  325. BEQ KEY_A
    3 j7 o& k7 m! `! A
  326. LDA $6010
    3 Z( @& ?3 u# O
  327. CMP #$00    ;关卡比较& F$ A5 ]& F4 ~
  328. BEQ KEY_A
    ( b) r! i& e: ?  S* ]3 E5 k
  329. DEC $6010   ;减关: J/ k$ |. M4 b, s, y8 t
  330. KEY_A:    ;关卡增加
    % p  Y  c# `- G2 Q& L% S
  331. LDA $04' M' z! o* v* @
  332. AND #$81    ;按键A或右加关! e: F* Z3 c+ C# C& c, A$ R
  333. BEQ PPU_NUM_WRITE
    % D* Y& }5 ^, Z8 C2 u& J# E
  334. LDA $6010: J8 w  n0 m# d, g; a2 B
  335. CMP #$04    ;关卡比较( T  L! y1 z; U! L# [9 b( h
  336. BEQ PPU_NUM_WRITE/ X6 W# h5 t# `  H2 g
  337. INC $6010    ;加关8 M6 V* E" @( G: W: u7 w" L, I
  338. PPU_NUM_WRITE:
    . C" }! J9 t' R5 C
  339. LDA $6010
    8 w2 u! z# w0 }; W8 Q  G
  340. TAX
    % p9 }( I% d# A  u* |" m
  341. LDA STAGE_NUM,X    ;写入数字
    8 h8 B! x  r$ w' G5 y
  342. STA $2007/ o9 J) h7 [) X/ Z7 U0 @( F+ }- V/ _
  343. PPU_RTS:
    7 `5 X% l: ?! C8 R
  344. PLA
    ) Y5 t! y! N5 A6 ]) R
  345. TAY5 d) y0 a4 B2 W% ~* f; e% T. a3 |+ p; F
  346. PLA" }! }9 q& x  H/ _: X1 F
  347. TAX! ~! U+ K3 J3 V- O# |1 {
  348. PLA5 @# C5 I; R3 C* w( h
  349. RTS' u" t) U3 Z# o. `

  350. 7 I& K; P$ w7 x# w/ \; {0 u' t

  351.   O1 }2 T. ~0 F3 p' W
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据" e9 h4 w2 A& d( A  x( x
  353. .BYTE $EC,$ED,$DA,$E0,$DE,00. ^& a; f1 `( |
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据& {( x( P/ K$ y. f) ^
  355. .BYTE $D1,$D2,$D3,$D4,$D5
    5 Y6 `% C2 a0 x$ r# r
  356. 6 J7 m4 q& o6 I
  357. PPU_ADDR_DATA:/ `6 W% A- m  z+ A3 x( U! S! _
  358. .BYTE $23,$0C, Q5 B, B1 ~/ x: Y0 x3 S0 a
  359. 3 J3 U- h* z5 ^
复制代码

本帖子中包含更多资源

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

x

评分

1

查看全部评分

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

签到天数: 1560 天

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

签到天数: 994 天

[LV.10]以坛为家III

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

签到天数: 852 天

[LV.10]以坛为家III

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

签到天数: 1859 天

[LV.Master]伴坛终老

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

签到天数: 57 天

[LV.5]常住居民I

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

签到天数: 2981 天

[LV.Master]伴坛终老

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

签到天数: 1766 天

[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:123 R5 L/ F8 \; X8 f
最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

# X1 h. h  u& h/ O% Q: h6 w" o已经加上了,赶紧下载吧
[发帖际遇]: 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:354 r; c0 o* p0 J# S" p
旋风又疯狂大修改了 哈哈

3 {& q( N: a% M9 b疯狂不起来,无聊了而已
[发帖际遇]: 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-2-19 06:06 , Processed in 1.107422 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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