EMU618社区

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-28 23:25:55 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-21 18:58 编辑
5 M8 V7 _: D& Z# Z* H) ]8 E) J1 G" z* Z5 [2 x3 w0 W) p
    [FC][最终任务][END选关]4 }0 d5 I) J: t
% z4 N1 q+ ^& t5 ^) Y7 N
时间:2017.3.29
  |2 h6 V. L$ E( n& ]3 q3 B作者:FlameCyclone
# a, ]" E8 E6 ~: x3 k内容:
8 U' e! M" d3 N( @$ [! B! _% ^    1.关卡选择:   标题时,左或B减,右或A加(1-5关);0 E  V+ T  S3 o* G+ [/ M/ o
    2.无敌锁定:   暂停后,按上键切换;
5 p, D  R9 x6 T% e7 y- X    3.生命加满:   暂停后,按下键切换;
2 W2 _# H0 V" z8 I. |. ~    4.速度调节:   暂停后,按左键减,右键加(1,2,3三级);* O9 D1 w6 Q) ?: t) g2 d, [, L/ N# H
    5.子弹切换:   非暂停,选择键切换(普通,W,L,B);/ Y  S' x+ Z' S
    6.B弹数量:    暂停后,按A键切换(1个或2个);6 d4 S9 n+ j0 c, a
    7.副武器类型: 暂停后,选择键切换(普通,W,L,B),非普通时子弹方向是向右发射的;' J3 |/ {! l/ C2 a- C
8 x3 a& U* J/ X2 E0 a" H* g+ M" Z
5 P2 ?3 G; M3 _
7 X8 h" c" e0 i. _

! G! k/ F  P' H. ~" I9 \; `& N3 @: X+ N* R) S8 S

$ p& w# }8 i, X! C! l
游客,如果您要查看本帖隐藏内容请回复
8 q! C5 R& S0 E: m) g, u$ f, B' U
FlameCyclone.ys168.com+ A$ q7 e( T; k# ]% {! O
www.nesbbs.com
  1. ;[FC][最终任务KEY][END]7 L1 `8 e5 k, q% E
  2. button = $04    ;单次按键
    # o4 u# V) Y4 ~5 P0 ^
  3. flag = $6000    ;功能开关标志
    5 \! _2 U& Z- d
  4. pause = $000E   ;暂停地址2 P- N, w- @! |4 U
  5. 6 T/ h7 i* a  q, d: W* C
  6. .ORG $8000' c; h( l  K7 j$ m
  7. LDY #$08    ;自带的按键程序
    3 c2 T0 g+ w3 n
  8. ADDR8002:
    2 b- M! x! F6 V2 g( i
  9. LDA $4016,X: w% @4 D4 T) u0 u$ B
  10. LSR
    " q* O. v! X5 J
  11. ROL $0021
    : }  H% C7 g# W) d" E! L
  12. LSR
    5 R  N1 b5 i, O, L, m; F' J
  13. ROL $0029
    6 i1 V- B8 n  V/ J6 D
  14. DEY
    # M7 o% @* J* i5 Y0 \
  15. BNE $8002
    4 F# f- X" p" Q' a4 z1 u! E" {
  16. LDA $0021( b4 R' p( M% ?; A/ }2 a% r
  17. ORA $0029
    ( b$ ?, Y+ i; C8 ?
  18. STA $0021# o* z/ @- h8 A0 a% ?+ b" K
  19. LDA $0020
    ' T( U" T7 @% m6 D
  20. AND $0021
    : X/ g3 ?; o; s
  21. STA $00206 O* p* G$ o0 F9 u3 y
  22. LDA $06,X
    * N. n/ z# V5 y6 [& ~: ~8 F' t4 |3 P
  23. EOR $0020
    0 U* h  C& i8 m  S
  24. AND $0020' p( M) `$ v3 C. t8 S1 c, b
  25. STA $04,X
    ! z- N4 U% r- H* {
  26. LDA $0020
    + b9 g9 D$ \& r3 E7 Z0 n' r# e; v. h
  27. STA $06,X
    & [) K! t7 }! E* c: {& e. V; I% t4 a
  28. JSR KEY_OPERATE
    ! a9 K9 X1 f9 F$ g
  29. JSR Function    ;功能调用
    # W+ M6 e% o; @( x4 [; h( H) d0 c
  30. JSR Weapon    ;武器切换调用
    : T. U4 U$ F/ ?: k* d6 Y7 H
  31. JSR Power    ;威力调用
    ; m& E+ f$ a4 `7 j4 H. V, m( o$ i
  32. JSR BULLET_NUM    ;子弹数目
    ) Z3 g1 I- N8 `6 i& ^) Y$ \
  33. JSR BULLET    ;副武器类型  d  ~( J) ^; E" n% I. @* j+ ~
  34. RTS
    / o) s! G/ i7 [' F" A8 N
  35. 9 p% z6 d! c. S: C3 ?

  36. 4 o9 \% Y0 a" K- L
  37. / }) n8 b8 l- q
  38. .ORG $8050
    2 ~" `0 H7 y% k- n/ }% Q
  39. Function:    ;功能' r. T0 k; M8 P8 n
  40. WUDI:    ;无敌
    + z3 q: l5 k1 L0 e* S0 T' L4 h
  41. LDA $6000,X7 _: a! E" g' w$ p, z* q
  42. AND #$08    ;开关判断
    6 q) @6 g8 h0 |0 L" J
  43. BEQ LIFE
    7 f/ l% h: c" I6 s( \
  44. LDA #$05
    2 t5 d' G! U. j, X+ U7 y$ _
  45. STA $05DC,X    ;无敌锁定; S/ d3 \! G% \' Y$ u5 m7 B# H9 Z, s
  46. LIFE:    ;生命
    6 C& C' ?8 Q/ ^0 u7 R1 k
  47. LDA $6000,X$ r1 `( m2 c+ O9 l9 X1 j" ]
  48. AND #$04    ;开关判断3 f' C  y# N: F& y
  49. BEQ FUNRTS
    , l+ s' z; D! o) A0 p5 [# a
  50. LDA #$05& v5 |! d  o9 O+ j# |$ F& u
  51. STA $1C,X    ;生命赋值6 U4 c- W& z* F6 f. p/ V& h. v
  52. FUNRTS:
    - m) f0 M! H- s' G; M6 h: u+ v
  53. RTS
    * v5 \7 C& v% v0 e  r" |

  54.   h" h9 K! C" e: j& T
  55. Weapon:    ;武器切换
    6 c) A# |- t" O9 L8 l7 ]
  56. LDA pause    ;暂停状态判断
    7 A0 c' T6 h9 Z- B# a" i
  57. BNE WEARTS5 X+ u' ^; y4 J( x* [) T
  58. LDA $04,X5 N; d2 p, O* B7 _
  59. CMP #$20    ;选择键判断! r% I' \4 N6 ~3 R
  60. BNE WEARTS0 d1 R2 ?2 [8 o) g7 @. |7 z
  61. LDA $12,X! i3 A$ @4 \1 M) C2 H4 q
  62. CMP #$03    ;武器值判断
    8 ^8 }1 T  Q  W, N0 x. d1 S
  63. BCC WEAINC7 }: M$ y$ E5 ?/ y( _
  64. LDA #$FF9 d7 J, D! p' a/ l2 I
  65. STA $12,X    ;武器重置
    ) Z# K1 d/ y* _
  66. WEAINC:
    & J5 A; n# T. o" r
  67. INC $12,X    ;武器增加
    8 \" e" S! E' _, t3 V0 b# z7 @3 ^, w

  68. * j9 G; @; P8 R1 o/ N
  69. WEARTS:( s2 e" j: w8 ]; u: k9 Q
  70. RTS
    & K; |6 ?9 A3 j

  71. + `' }' p; d1 [/ D
  72. Power:    ;威力
    . \  L+ X, o6 Q  R8 U
  73. LDA pause    ;暂停状态判断2 `6 O, y; D) R
  74. BEQ SPERTS
    2 o7 s6 h% r2 k
  75. BUT_LEFT:
    ( V* z3 |* p! H4 ]# b0 {7 |- A, `
  76. LDA $04,X
    8 b( N: o% C, u' x, ^
  77. CMP #$02    ;左按键判断. V* {2 R; D' b8 {
  78. BNE BUT_RIGHT
    & x, T1 W! _; }/ d' |
  79. LDA $88,X% b7 S5 n1 x' N
  80. CMP #$00    ;威力判断
    $ B# N& |! @6 i# y. a
  81. BEQ SPERTS
    ( k2 ~- Y1 _. G' G
  82. SPEDEC
    ; d: q! G3 x. {% i% U
  83. LDA $88,X    ;读取武器值
    4 H, [0 f( k$ G. N6 D" t
  84. SEC4 }, w* r4 k( w5 s& P  g4 d/ n
  85. SBC #$08
    7 l# @  N9 C$ G& |" J# h
  86. STA $88,X    ;威力减小
    6 A; h$ K* C2 ~9 o
  87. BUT_RIGHT:, G' O$ [. S9 M
  88. LDA $04,X! O6 B! i$ [& q
  89. CMP #$01    ;右按键判断
    5 [2 I( D% o' u! f- r& t% J
  90. BNE SPERTS
    ( c9 b8 \: M' `" k/ Q: r* Y
  91. LDA $88,X
    ( O) _. y5 k3 f; _% |- A2 f
  92. CMP #$10    ;威力判断
    5 k/ u( g1 p. e
  93. BEQ SPERTS$ T+ a, O. ~% B. c" [
  94. SPEINC:; g- |3 L6 @! ]6 O" d9 q3 _
  95. LDA $88,X    ;读取武器值2 j( W: H* D; q, o6 g4 ~7 @2 S
  96. CLC
    0 o$ k* c$ J9 I
  97. ADC #$08) u, ~# o: r4 `3 D
  98. STA $88,X    ;威力增大  N# |1 V: {' b4 P) J1 S

  99. 5 l1 ?3 v- Y5 Z" C9 `
  100. SPERTS:( G# }: c3 E+ q! k
  101. RTS
    * P' N, Y' \  E& |, n. U
  102. % e" O1 A4 n. C# p
  103. BULLET_NUM:    ;子弹数目
    + x& s+ `8 M  J6 x( v" g+ G
  104. LDA pause    ;暂停状态判断
    7 v/ Y5 z+ o9 e# A
  105. BEQ BULRTS2 v) P3 K  v$ N. `  ?- T
  106. CPX #$00    ;主机玩家判断: D( U1 R" x( W5 N
  107. BNE BULRTS
    : o& x# [7 L2 x- V/ D5 A& i  [
  108. LDA $04,X    ;主机玩家判断
    7 M8 z/ q1 k5 U' w$ G0 B; n1 ^* H
  109. AND #$80    ;按键A比较
    * A# t  o8 Q' f% }5 f
  110. BEQ BULRTS, R; P6 e* n7 j) t: y1 m5 I- X
  111. LDA $87    ;状态判断
    1 P9 P; J' I* i% t
  112. BEQ BUL_2
    $ Z( y/ L$ M9 |0 G1 a8 q# l) z
  113. BUL_1:) }* L  Z) l6 f) M. K+ m
  114. LDA #$00+ b5 S$ l+ @& N& b( o
  115. STA $87    ;1发子弹
    7 `- C8 j2 A% E. C
  116. BEQ BULRTS1 {6 I; M, C! F, o) B2 {
  117. BUL_2:
    , a5 V& @6 k4 e4 |, y
  118. LDA #$01* _. w! G# D5 G
  119. STA $87    ;2发子弹
    0 m" m7 ~  X/ }1 j

  120. 4 L3 V" Z+ H- r  G! l: L
  121. BULRTS:
    & ^# ^! _- s$ J- D$ c3 X
  122. RTS5 c" K5 y' E. ~" O* @
  123. 9 ]: c$ q; q! o0 X0 w. a

  124. " q5 T' A  `8 b
  125. BULLET:& E; U0 \" [0 q" k- r7 f3 }
  126. LDA pause    ;判断暂停状态
    1 e, M0 {+ L& w1 \# b
  127. BEQ BULLETRTS
    5 z5 i$ y$ H# r2 _2 d9 T
  128. LDA $04,X' ]# _, i* @* Y, T& A9 e/ e9 c; V' j
  129. CMP #$40    ;按键B比较/ {! j) N1 @- D) l
  130. BNE BULLETRTS
    & n/ r: B+ U8 j5 {+ K& t8 N
  131. LDA $6002,X    ;读取副武器/ r. {# d3 @: t' X( X% J) i, h
  132. CMP #$03
    9 s( w9 ?2 A6 g- Z8 `5 ^8 L
  133. BCC BULLETADD$ P/ _, n. u- J6 B! X
  134. LDA #$FF$ e8 \* d: v; o4 D6 e! y  Z
  135. STA $6002,X
    0 F5 E/ U+ H6 P& h* {5 `
  136. BULLETADD:
    ! L- H& X0 V4 b7 j
  137. INC $6002,X
    ' t7 V9 i" g2 G5 E' T
  138. 5 [# D, ?; t/ c! i
  139. BULLETRTS:+ @) Y* M5 {! @, M3 \4 C4 h' {
  140. LDA $6002,X
    ( G* T' b/ A! E
  141. TAY' K$ K( a# [% O- L6 N, {
  142. LDA BULLET_DATA,Y
    - M2 q6 M, a& m" b1 \8 W
  143. STA $6004,X    ;写入副武器数据$ L6 N) H4 Q4 [% Y( Y9 ]
  144. RTS9 J5 L4 v$ j( e. {' m+ F( n$ C3 A

  145. 1 C3 ^5 ~4 t+ g5 p# l
  146. ( g/ Z7 O( O, Z6 b' S
  147. BULLET_DATA:' z( O! m, }$ I* X& w
  148. .BYTE $06,$02,$03,$04& h8 A. i2 p$ D4 V. I" |  S
  149. ) b: y, J# R$ l& E
  150. ( Q4 d" s4 y; ?4 L7 {0 ~
  151. 7 Y- ~* a+ ^/ m. X! E
  152. KEY_OPERATE:    ;按键开关操作2 ^' r8 |/ N; o# l+ C% i
  153. data_protect:    ;数据保护
    : y% o  i2 [" P+ y. M+ e) c3 U
  154. PHA
    ! E, B5 j2 B7 A# M$ O8 e
  155. TXA4 g, Q5 @7 c4 t0 a; N4 u) c
  156. PHA
    / N7 d% l' ]: o$ [5 f* K
  157. TYA
    ! R; Q# I" O- L+ N- a
  158. PHA
    , m0 j$ ?' D* B' i+ h
  159. * ^6 k2 s; F) r: Z2 {
  160. FLAG_INI:    ;开关标志初始化
    " A9 |. D" _! g# p& Q$ w

  161.   J5 R  Q! B( b  ~8 P3 q' D
  162. LDA $600F
    " t  y! N3 Z( v' x: [
  163. CMP #$01. X/ X6 D) W. o& b& Y  Z  k$ P% S+ T
  164. BEQ pause_cmp
    2 L- i3 W$ L$ W- H( h# k4 m
  165. LDA #$00
    + z% C2 V. H8 g1 [+ @$ ]
  166. STA $6000
    - `+ @% z3 f; Y0 B: @
  167. STA $6001
    ; b7 h" t+ @( b3 K4 A2 ~0 c1 O8 J
  168. STA $6002
    . L0 j9 Z* G" X$ Q4 g
  169. STA $6003
    8 O; j- }* v$ h+ m# C; @
  170. STA $6004
    + w, b) A" V+ I$ h( T0 F
  171. STA $6005
    9 O2 N0 J* I6 V( B
  172. LDA #$01
    " N' f4 X; h( _
  173. STA $600F
    ; \7 Q6 r9 l1 Z3 r3 k
  174. * [0 L1 Q: M! G5 c9 l
  175. pause_cmp:    ;判断暂停状态' V- s. U; m6 p, ^* ^0 V
  176. LDA pause
    9 b% L2 ?5 x7 {9 q$ ^9 ?
  177. CMP #$01    ;判断暂停状态
    4 s$ [& K9 F( Z8 I8 m
  178. BEQ button_press
    & z5 D: S8 r; z6 J1 `! w6 c
  179. PLA7 N. m; a9 o( p5 C! i* Y7 o% C$ l( U
  180. TAY7 k& K, F! j( g- g
  181. PLA
    ( R  N. ]( R( k4 ~6 D5 W
  182. TAX
    ( Z# F1 n: c; a
  183. PLA
    1 C( d" x# K+ O- Z
  184. RTS) T$ ?" ~3 `2 ?/ ~* y" m

  185. 1 o& l3 o3 d' z, t" Y: b. d* u3 k
  186. button_press:    ;按压操作
    $ F0 i9 {4 C* S& X; a3 L/ Y
  187. ini_Y:" ]- ~7 O9 w5 |( t; \( C
  188. LDY #$001 |+ O" \$ Y+ W, k
  189. button_cmp:6 z5 \; f" O7 z$ J6 @
  190. LDA button,X
    4 y2 }$ o  N7 ]( w
  191. CMP ora_data,Y% |/ M/ \" Y. i6 e4 i
  192. BNE count_Y_cmp7 E, T# i5 f9 M, |3 s5 a
  193. flag_cmp:; a+ W4 E( b6 [1 ~1 I
  194. LDA flag,X! I" C; i- O2 g7 b  r
  195. AND ora_data,Y) b" p% X( [8 W! F
  196. BNE flag_and6 c0 o- t1 K5 g9 s
  197. flag_ora:$ \0 o$ F+ Q+ X1 i* V
  198. LDA flag,X
    8 |- }/ e& e  I5 G! y% }! _3 K
  199. ORA ora_data,Y
    3 z$ _8 K2 r9 Q( W% e% a9 p% t
  200. STA flag,X
    3 J% f" k3 K9 `* J8 A' P
  201. BNE count_Y_cmp
    0 q# a5 B1 `9 B( ~% @' g
  202. flag_and:
    : n% P, B0 ~1 s" E% l! @+ j& o
  203. LDA flag,X
    , K7 i5 J9 E. A9 b$ X
  204. AND and_data,Y7 \+ }, N2 C  g& w3 ?* b6 j2 c
  205. STA flag,X
    + I- M6 f7 \9 P
  206. count_Y_cmp:
    9 F! _& S' X  L6 _0 i$ S# i: R
  207. INY& {) Z) S0 K  ?
  208. CPY #$080 ~9 X9 s/ u' U5 O
  209. BCC button_cmp
    8 R2 S4 ~/ }! |/ j8 R' C
  210. " v3 x. `/ a' b
  211. data_extract:    ;数据恢复
    ( \" _' I3 [- k1 q
  212. PLA
    . R1 ~3 J6 O6 l7 Q
  213. TAY& b: b2 H; f1 s$ k' d
  214. PLA# q0 {" r/ j2 g* p
  215. TAX0 ~$ F3 |3 v$ ^% v. d+ S
  216. PLA0 ?0 r$ Y6 X9 F8 t. k

  217. ; E& O* J6 V2 @- G, K! g8 q
  218. return:
    : n3 l" S9 |) c7 f$ K- ~! G$ W
  219. RTS
    8 o$ D+ B: {/ O; |, F0 o
  220. % T* }5 J0 P* t$ N$ N
  221. ora_data:   ;按键相或数据9 |2 o5 g  G$ r# b, W7 T
  222. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    : U. w+ O1 z  D1 Q" {0 L  r
  223. and_data:   ;按键相与数据
    1 d  X/ s7 o& C5 P
  224. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF/ a. @5 v8 F* Y1 X9 x  U& p" D

  225. ( w% @9 q0 w# H* c

  226. ; S8 c  c1 R, P
  227. + K% a- P/ s+ a/ y2 X
  228.   Y0 q* a6 }) o1 s
  229. / ?7 w3 q% I3 ^% O
  230. % A+ f7 _2 N4 r9 W% Y9 N# d
  231. $ ]1 W, F( X/ y- }

  232. & {; ~4 u! v* B0 h& G

  233. 9 |" H& W, A6 K9 J6 w  q! E
  234. .ORG $C264    ;自定义的MAPPER2切页程序
    2 h! I. H$ x0 J' T3 a
  235. PHA' H) J- d7 Q" R) A
  236. TXA
    0 Z$ D- ?% v4 q" B
  237. PHA9 A4 l$ B5 Q8 [' @$ ^6 h. K/ Y' o
  238. LDA $0066
    7 J8 W% D( h) {
  239. BNE ADDRC2809 i, c5 i- }% h1 p$ p1 g- ^
  240. LDA #$07
    * |8 m" W! z/ z6 L: m8 w
  241. LDX #$03
    3 c' ]. N5 f: u0 o% e$ `; t
  242. JSR $CD9B    ;自带的切bank方法
    6 P+ K% r8 n0 `! _% h5 h$ C
  243. PLA
    5 |! m4 o- a! ~7 X3 b
  244. TAX
    4 E: s) ^/ k; L7 Q+ ]: H3 j0 J
  245. PLA
    * l1 }+ U5 v9 A8 c: g
  246. JSR $8000
    7 ~* s  q: F0 ~! }' K% w
  247. LDA #$06
    ; N: _! I5 @$ y+ X# R! z. p
  248. LDX #$03
    ; i( O# o' H+ x% g2 ^2 ], g
  249. JSR $CD9B    ;切回原该切得bank(可以不用)
    $ [0 ?4 F3 {5 o. {. w! u/ {
  250. RTS
    1 u* i) a/ @7 B0 a$ ^
  251. ADDRC280:
    2 c) y  x7 |( L6 Y1 |* G7 t
  252. PLA1 T. x6 o: [- T4 d3 C! W; ?% x
  253. TAX
    , R4 `! ]6 K" ~1 o4 s4 N
  254. PLA% P  E; ^* i  `* v) d
  255. RTS- M/ ~8 S3 k. M; `% i

  256. ) O- v2 i% A- _: p

  257. % ~0 p/ L+ H$ H
  258. ;[FC][最终任务PPU][END]$ Z& E" d! v/ S" t: F, C& h
  259. .ORG $C056    ;跳转到PPU重写程序
    % R6 o7 G+ q6 e" [* Q: f7 |
  260. JSR $70009 X1 U4 @' H# D1 a8 [
  261. ' x8 |7 V% I9 ?# m
  262. .ORG $CEBF
    2 \! S: {/ A. K  ~8 r& l/ h5 X
  263. JSR STAGE_DATA_WRITE    ;跳转到关卡数据写入. o6 x: S7 X' h* e0 I: M7 w
  264.   
    # A  k+ _: g' d( g, W4 X) Q9 _
  265.   .ORG $E460  H+ D% l+ T/ L5 S
  266.   JSR BULLET_DATA_WRITE    ;跳转到副武器数据写入- E3 x! ^! W& f7 J! ?( z' n2 e* C
  267.   
    1 I. X2 h2 ]1 r
  268. .ORG $71F0
    4 P2 a' T' N* R1 a( u2 C7 x
  269. STAGE_DATA_WRITE:5 ]- P* n3 C1 W3 O' x' s
  270.   LDA $6010
    / @' F3 h. s0 A6 V6 g7 X) o
  271.   STA $1E    ;关卡写入5 b; N' E8 {" k! y: h( `
  272.   LDA #$00
    . T, j: Y* I3 B8 K6 i
  273.   RTS9 e5 U; h! f: Q
  274. .ORG $71C0
    ; A7 B2 q  \8 u' t  H1 p
  275. BULLET_DATA_WRITE:    ;副武器数据写入
    5 d' I" j+ W% V! s$ L2 g2 G
  276. CPX #$0E' a9 ^0 ~7 S( F. c
  277. BCS P2_BUL
    ( }' C( M" ]1 d7 P- A1 \
  278. P1_BUL:, S, i6 y  V1 |# [
  279. LDA $60040 t5 ]# v$ J; Y2 w7 s4 k
  280. JSR $D7D0    ;P1副武器数据写入
    ! z4 A! _; `  L' f* i1 d6 T
  281. RTS; R1 V; k4 C6 ]& I
  282. P2_BUL:; ^8 e4 W4 [8 y+ W% G
  283. LDA $6005
    1 e# s- P: N+ g, h. i0 ?
  284. JSR $D7D0    ;P2副武器数据写入* f9 x+ C9 g- O; P
  285. RTS
    : x9 @+ h" K7 b2 A8 J  E

  286. : N8 r5 w5 P$ U* L  s
  287. / u( X7 u" u. d. |( N+ ~
  288. .ORG $7000
    8 s$ N) i$ q; L( w
  289.   
    & M* U0 p/ k9 W' t( ^) {8 ^
  290. STY $4014    ;补上覆盖的精灵写入指令9 r7 ?  e5 T2 h2 R5 O
  291. PHA4 m' r2 A2 T* _2 i9 F
  292. TXA6 F  ]& v! I7 G" e; D* r
  293. PHA& Y5 y% [* [0 f4 [' F
  294. TYA
    - Y% {+ o/ I4 v' C
  295. PHA
    % _# J0 G1 y+ [: t! |% v+ g
  296. LDA $0C
    # H5 g. o. B( H
  297. CMP #$01    ;比较是否为标题画面
    8 q' \4 ~" c% x  g1 t, c
  298. BEQ PPU_STAGE
    # }9 E; E6 ]1 A4 g8 E- \
  299. PLA; R9 ~" o, W& h! a; ^( A& f' U# F
  300. TAY
    9 T/ b& ?9 p% r& ~' i
  301. PLA
    , _0 k9 x0 k7 p$ c& p7 T# {+ y
  302. TAX
    # [9 T/ Y, r8 O. h1 b) n
  303. PLA
    $ A# T6 p1 k+ m3 M* @* A% p' }
  304. RTS" f% n' Q( F% Q$ _5 C0 _
  305. PPU_STAGE:    ;STAGE显示程序2 ~8 V( l3 q/ B$ J
  306. LDA PPU_ADDR_DATA: \' J4 n' T: ?0 r- ~- Q" O
  307. STA $2006
    0 a: {$ Y6 z, P0 x% R' }
  308. LDA PPU_ADDR_DATA+1
    / O1 f, N3 q4 W; F! k- A
  309. STA $2006    ;坐标设置
    & N+ O% }9 u7 l+ V5 ]8 o2 e! W
  310. LDX #$00
    - e' p! X7 K/ W1 j3 p
  311. PPU_STAGE_WROTE:    ;写入STAGE字模
    0 G  D. q* Y6 G
  312. LDA STAGE_DATA,X
    9 q- Z5 s1 f- Y! Z: }6 Z$ c  H* J
  313. STA $20079 X% Y9 @! O. x* D/ q2 W
  314. INX
    7 R% g1 x$ z8 G  I3 _& m& n- ~
  315. CPX #$06& ^' o) M! [7 ?4 M/ \# b
  316. BCC PPU_STAGE_WROTE
    0 o1 s$ G7 ?: @/ W1 ~* V/ U/ W
  317. LDA $6010
    ! j5 }5 ?; R: {9 I
  318. CMP #$FF    ;关卡数据初始化条件判断
    * l9 d' e: ^4 L$ y4 {
  319. BNE KEY_B8 j1 V6 ?# P7 J
  320. LDA #$00
    , h( l3 S3 y8 N# o, A$ N
  321. STA $6010    ;关卡数据初始化
    9 M9 W- t3 W% b8 P7 t# o
  322. KEY_B:    ;关卡减少
    ' d) k& m# ]7 c' d1 \- k5 M! I, q: f
  323. LDA $04
    ; N8 A8 K* \9 [4 _$ E
  324. AND #$42    ;按键B或左减关6 H* T8 A9 O' T$ \% Q2 J  I$ a
  325. BEQ KEY_A
    ' P4 X: v! |  F
  326. LDA $60109 N$ B6 w* n3 d# E
  327. CMP #$00    ;关卡比较: D5 Q  z8 S9 N$ E% {; v+ l* K
  328. BEQ KEY_A
    ( v) \, |8 `! D$ g
  329. DEC $6010   ;减关2 `( R* B* K. l4 ?3 e" B
  330. KEY_A:    ;关卡增加4 j  O4 T" D% p' @; Y. Q
  331. LDA $04  k* G# \7 Q/ x( i. m: U. \( V
  332. AND #$81    ;按键A或右加关: E' ?! x; }5 A2 u4 N6 ]
  333. BEQ PPU_NUM_WRITE
    . u- U9 H; _3 v% Q3 r
  334. LDA $6010
    * p% u. Q% j( ?- F' p
  335. CMP #$04    ;关卡比较
    - C1 M% B* Q& I/ w
  336. BEQ PPU_NUM_WRITE' s1 j$ h/ r: K3 k
  337. INC $6010    ;加关
    ( Z- A1 V' g) U* k
  338. PPU_NUM_WRITE:3 D5 A# e$ ~! E$ ~
  339. LDA $6010
    ! \5 R* O! ~; q7 B- g1 G
  340. TAX# T' S; |+ v( k
  341. LDA STAGE_NUM,X    ;写入数字+ B  ?) e+ x3 B1 A% s: R# j4 y
  342. STA $2007
    7 a% F) `* |0 l% _' E
  343. PPU_RTS:" z3 e  p4 b" Z) X. g
  344. PLA
    & g- v! C4 G( E
  345. TAY
    , D  j9 k+ r. n1 [
  346. PLA1 A- h5 r8 x/ y5 J
  347. TAX0 m4 K3 R/ X. t
  348. PLA& q3 g- a" _4 K' q4 X8 I. T
  349. RTS9 K/ S$ z% e' Z. g! y; {; N! \

  350. & _) v' V$ \( q2 x
  351. + t, j# X  C( o$ t* c9 P
  352. STAGE_DATA:    ;关卡文字S,T,A,G,E,字模数据9 v% e7 s! W8 @% {# R* \
  353. .BYTE $EC,$ED,$DA,$E0,$DE,008 t- ]' M" d& A) F+ |) A1 Y8 B
  354. STAGE_NUM:    ;关卡数字1,2,3,4,5字模数据' o% \  f3 n4 k# ?% p+ N$ I
  355. .BYTE $D1,$D2,$D3,$D4,$D5
    7 J% r% z, ^; |5 `  J; F" z, {) w: e

  356. - a# B7 h5 h' m0 N5 q+ c7 Y
  357. PPU_ADDR_DATA:$ J. M7 t0 A7 o' R7 U3 w
  358. .BYTE $23,$0C3 H/ y4 b4 J; g- J; y6 r( a' V( U2 Y

  359. ( f/ o+ j5 B5 z# x# S" m+ Z6 Y
复制代码

本帖子中包含更多资源

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

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:12' W2 }( Q6 y; a
最终任务用选人秘籍选10人后B弹一次可以发2发‘,平时只能发1发.修改的子弹切换功能能不能多加上这条啊

" o. ?. B% x1 v0 J: n& ]已经加上了,赶紧下载吧
[发帖际遇]: 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
- f9 D, z& l7 O. ]' N: P旋风又疯狂大修改了 哈哈
( E# u2 M% l1 C
疯狂不起来,无聊了而已
[发帖际遇]: 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:31 , Processed in 1.105468 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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