EMU618社区

 找回密码
 立即注册
搜索
查看: 3099|回复: 62

[原创FC/FDS-HACK] [FC][忍者神龟3][END选关]

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-31 14:40:49 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-2 13:23 编辑 0 G+ l" G' F: U8 a( U
. F8 C( d' j6 f! m% y! C; i
[FC][忍者神龟3][END选关]; o! u, _4 `; c( g* ~. S

! i7 W) \9 t9 w& `8 v时间:2017.3.302 i) [& }5 z: F$ d' V
作者:FlameCyclone9 t5 H+ o5 Z& @/ h* C  B, W
内容:0 Y' l1 h! e/ l
    1.关卡选择:   标题时,左或B减,右或A加;
/ m* A/ ~5 O: P6 Z- C# `9 q4 Q; E    2.全屏击杀:   暂停后,按A键切换;
% j2 i9 x. F3 v. W    3.一击必杀:   暂停后,按B键切换;
  1. .ORG $FEA0
      k' a3 ]4 {5 m) F* }
  2. ora_data:! H  @6 X: g! d
  3. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    4 f" p2 N' T: T5 u4 z; ^
  4. and_data:
    ; j8 D; v9 g( Q
  5. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    . N2 K9 F+ a- }# @
  6. + t. E: P& {. T0 M
  7. button = $F8
    3 k1 F" c0 i5 ^! P2 U9 n/ K* a2 H
  8. flag = $6000' U1 D' |( @4 }1 i: G+ R. C
  9. pause = $00457 p/ f9 |, b; ^1 N2 ?5 s
  10. $ v+ B. {% p6 W& _0 `0 h
  11. 3 d* [! H% K- l. P0 k8 ]+ z, C( ]
  12. .ORG $F90D
    3 d5 [* W9 @4 ]7 t& E
  13. JSR $FEC0
    & S7 M) n* r7 v& ?! V% z1 C

  14. . |* u! L/ y2 @* c
  15. .ORG $FEC0
    3 O2 Z! N% d4 C( w; |* Q& Y$ l5 r
  16. STA $54,X  G9 p2 c. {" p/ E3 ~. d+ |8 o9 T
  17. STY $FA,X8 q9 i5 o( x) ?6 C
  18. PHA: A' S* H  Q3 T. M
  19. TXA0 Q* A2 [% |6 h  X9 e6 E
  20. PHA7 N& D1 ]$ j7 d1 ~9 V# A
  21. TYA. l1 I5 J0 C; m
  22. PHA
    " U$ L" Q) }' P" X0 I8 t6 l+ M0 B
  23. JSR KEY_OPERATE1 v5 U& q) e% O6 Y' R7 i& D% k7 q
  24. JSR INV
    - z4 n$ q/ e2 g5 K+ I
  25. JSR LIFE: r* M. b- p; y# x
  26. JSR BLOOD3 _. X8 X, X' a" |6 V
  27. PLA, Y1 r  k: U% f1 M' s1 [0 z- Y
  28. TAY7 V0 ~, l5 n* _9 Y( ~' B1 T: Q0 U9 k
  29. PLA
    . E0 A3 s( `9 ~2 N! g* a+ B3 ?- w
  30. TAX5 x$ |3 C* y7 c/ f/ C
  31. PLA; ]3 J# Y% W' L! E2 `$ e1 }
  32. RTS+ G9 P% l) Q& |
  33. KEY_OPERATE:
    ' n6 ]3 s; P& O$ n$ f: S( Y
  34. data_protect:
    + F3 T3 o; h! B: Y. n9 v9 V. [# e0 ~
  35. PHA- X; c) F% ^, [+ m
  36. TXA0 e  Z" [) S1 k- M6 R3 k0 O3 |1 n
  37. PHA# b: I" N  j  [
  38. TYA3 X( g+ U8 y% S. f9 b  U5 k5 |# x
  39. PHA
    6 o7 u3 @* W+ r! J9 Q
  40. ) l* z( R# t. M  F3 k% U
  41. FLAG_CMP:
    ; ^7 c$ c. F# }
  42. LDA $600F
    & T! j8 F$ W) n* n  }3 z+ a) j
  43. CMP #$7F    ;标志数据初始化条件判断
    6 I6 o/ X) l: v  `0 `' R/ m: E
  44. BEQ pause_cmp2 |- ^. t) \0 e$ p- G+ q
  45. LDA #$80
    * d- ]1 ~* z, C0 x$ G/ w
  46. STA $A001    ;6000-7FFF写入启用
    ) y5 G# }4 _) V; h( w& [
  47. LDA #$00
    - \% G0 m$ S# ?$ H
  48. STA $6000    ;数据初始化- l/ v  r8 w' q9 F. K6 Y3 q
  49. STA $6001    ;数据初始化7 w3 g: w0 ?6 h- d' [
  50. LDA #$7F
    5 ?# V4 S0 @' |9 R1 n5 c) A0 n
  51. STA $600F% a; a+ |5 z! Z9 k: E! n
  52. pause_cmp:
    8 z1 |3 m) B( y" D: Q: o
  53. LDA pause  v1 |+ Q* x4 m5 a; i# d5 c
  54. CMP #$01
    0 j, b, `* c1 A# [: F8 G
  55. BEQ button_press8 U) w9 I4 y: h6 _! j0 q, D  u
  56. PLA0 U5 ~$ V& }! o
  57. TAY
    * p9 h8 x5 _3 d4 A* Z, T$ c
  58. PLA' |# N" y* f; |5 T) X. S: K$ {
  59. TAX7 u% Z9 b$ V7 H+ H, ^9 r% B
  60. PLA! n9 R3 f2 P. k) Q# q$ y  t
  61. RTS
    # V# Q9 U( T0 u0 E' r, r1 ?' d

  62. & z& V1 B# O' c" G" Y. _
  63. button_press:
    & M. q) x7 W% ?, c" S
  64. ini_Y:
    + l4 X% k( o/ ^7 _' F, c  z% }
  65. LDY #$00
    : Q* z) {5 H" X* a5 s0 k4 B
  66. button_cmp:
    9 M4 d( d8 z/ a  b7 r4 u0 R
  67. LDA button,X
      Z% K& R- f: I2 k
  68. CMP ora_data,Y* E: w' c# I+ [3 q- u9 V% U* J5 i
  69. BNE count_Y_cmp6 j% O+ p% T: W  R2 B
  70. flag_cmp:9 G+ w4 t$ I& f* f( v; x. r
  71. LDA flag,X' K; u; ]+ }# x
  72. AND ora_data,Y
    # T0 W/ V, l7 [* ?1 z3 O9 S
  73. BNE flag_and3 V. S. E5 J/ S6 M$ Z* F
  74. flag_ora:$ z) F  K& @8 E6 |3 Q3 W$ k6 `- K  S
  75. LDA flag,X
    3 m+ q- U, W. G# ~( _3 h% J9 h
  76. ORA ora_data,Y
    4 E6 @' b8 r, i9 ]  v
  77. STA flag,X
    + ~* l5 R; a; K; Q* B7 D$ D( Q
  78. BNE count_Y_cmp0 [  K2 l7 v0 q: N; w1 I
  79. flag_and:
    4 X8 J: ]" C; z! x: _7 W& G; s
  80. LDA flag,X* q. W" N6 Y/ u" @8 d
  81. AND and_data,Y7 L5 Q7 u" l" ?6 m6 E  O" M
  82. STA flag,X
    1 w, S/ C7 A- |7 Y7 n
  83. count_Y_cmp:2 _& C& q/ m3 @4 c
  84. INY4 \% |" k( A' |7 z" ]% i& a
  85. CPY #$08
    % j6 L; [  e# ]3 e6 D( q0 C. {
  86. BCC button_cmp# p$ f; m! v/ A1 D7 X
  87. # _! B* g/ p! @# B3 K3 Z
  88. data_extract:) E1 _( b$ n% _" v* c3 `  r
  89. PLA5 P# M. B0 s3 z/ b
  90. TAY
    3 Q* E5 Y& Y1 i0 r8 c. v# i, \
  91. PLA: M: q2 O7 ~  k
  92. TAX
    : _! z; O7 M. R9 O! Y! ]
  93. PLA
    $ \6 F# K# [6 T6 w

  94. 4 l- A, t$ `% a; i+ m4 F
  95. return:
    , L$ c2 @" z+ Y
  96. RTS! @. n% T2 s9 t

  97. 1 w  E" o' F- R6 C
  98. 2 ~( |7 m! V' Y. J" ~
  99. INV:    ;无敌
    4 G% \7 `' w$ h+ o" {3 y2 f& y
  100. LDA $6000,X0 R! v. B8 i/ V. |; G
  101. AND #$08. \7 {8 z* o) l3 y. b$ Z% P) `% }
  102. BEQ INV_RTS
    ) L2 ^+ ^  b* X
  103. LDA #$05
    ; P2 @9 P. Q/ A! y" n
  104. STA $04FF,X
    ' t  |% f# a7 @/ u) ~- Z. m5 Y1 D) g
  105. INV_RTS:
    ) m! x. X3 A$ m2 i/ V
  106. RTS
    ; l: T* [% |9 \! b) k

  107. ! K3 k& T$ `# m$ |4 I, N
  108. $ W) _/ b/ P; K8 i) S- ?  z
  109. LIFE:    ;生命( G7 n* e) q: l6 t# I8 C# k. x- L
  110. LDA $6000,X
    + j1 m4 S( t& G7 O; _  U
  111. AND #$04- @% N( [; E) y; a. q7 d7 z
  112. BEQ LIFE_RTS, s4 r% V: F# }4 u6 w6 P
  113. LDA #$09  @+ D# R( a5 v* O+ E& z4 y
  114. STA $6A,X
    - W- ], I$ b, @& L2 k9 @6 x
  115. LIFE_RTS:1 F6 @2 x# [2 Y9 J9 ]2 Q4 ~7 b
  116. RTS& e" C# V$ c, s+ ~% n
  117. * H6 t6 s3 |! B

  118. - X: T1 v" l7 A* y
  119. BLOOD:    ;血量2 a4 Y# o5 o- E% G$ }) S. N% a# Y
  120. LDA $6000,X% _7 u8 [! h3 S& v2 R5 d( o0 `
  121. AND #$01
    - b% b9 Y& i! {7 {. b# {. o! E) W2 e* v
  122. BEQ BLOOD_RTS. C$ R+ h6 u, Q
  123. LDA #$7F8 ?0 ~. z# p9 W: m9 [1 @" n8 {
  124. STA $04F1,X' z  m  ]6 O% o
  125. BLOOD_RTS:
    - M, ~$ Z8 C3 g3 S6 s2 I5 [/ D
  126. RTS
    3 ^$ M' Z" Y3 X* `- h! R

  127. ' I& y! {3 L+ S6 ?! ?

  128. ) a) ^% R( \8 `1 X! ]3 M
  129. 3 U3 J8 h6 H) [' z. m

  130. 1 ?1 g  [! c% s/ e/ p$ r) y
  131. .ORG $D29F
    * K# p/ \4 K$ j/ C5 b4 R
  132. JSR $FF802 H! N; h/ F1 C" U; G8 [) H
  133. 8 W  |8 R' s3 J" p. e3 ?9 ^$ o7 i
  134. .ORG $FF80
    7 _. k9 K3 i( D
  135. KILLBOSS_BY_ONE    ;BOSS一击必杀
    5 f- S3 b  l1 @, G1 J  h
  136. STA $06287 ~# L% o$ c! a, i) ]1 k
  137. PHA
    ) T1 d7 {! E* P0 \
  138. LDA $6000
    + P! W, [7 m5 l1 E2 ^7 H
  139. AND #$40
    # Q+ K/ g" D( F: }& q
  140. BEQ ADDRFF8E
    % ^- b1 l- T$ k/ _0 o& d+ W3 u; |$ h1 o
  141. PLA
    8 q/ q# x! K5 {' P! E
  142. CLC   ;敌方死亡状态判定
    & C! x; x4 `$ `& H$ v; U8 Q5 [( |
  143. RTS
    % J; W+ x- F$ l' y
  144. ADDRFF8E:  p' {3 H2 Q3 ^& O! l
  145. PLA; {% |- Z! x. j5 {0 u/ L
  146. RTS# I* |' N6 A  o
  147. ' {/ g1 M* [4 q% w/ R- V7 b
  148. 8 B7 X% J6 f7 \  |
  149. .ORG $D1518 s; O& H* m2 M  x8 q
  150. JMP $FFA0
    6 p2 ~$ S; S3 W' W1 g: e

  151. # R( i8 B* p9 q( N! P7 {
  152. .ORG $FFA0
    * r% Y( W$ r' Y% M8 X
  153. KILL_BY_ONE:    ;杂兵一击必杀
    : a7 S% R! }3 J" {# Q9 w
  154. STA $0621,X+ c6 q0 d0 S; N# ]/ f# M8 G0 D
  155. LDA $6000/ u, b- e0 ~; E
  156. AND #$40
    ' Y* J- ~, i" ~; ~
  157. BEQ ADDRFFAD% w6 ]" S0 h9 X- r& O, N( J
  158. JMP $D19A   ;敌方死亡程序跳转$ ~7 Q( f) Y7 B# P
  159. ADDRFFAD:3 {. `( G( _( k7 _6 u
  160. JMP $D154
    - ?9 m6 J, G9 ^: ?  v
  161. 8 Y& @3 j! d2 L# f/ x
  162. $ Q, g+ U, B) I( v
  163. .ORG $A7F66 M5 J. k/ [! [0 m8 \$ {) s2 M
  164. JSR $FFB09 S- G8 A# l9 M1 |! U, B
  165. ) D, ?# d! v) V, ^
  166. .ORG $FFB0    ;全屏攻击
    . P$ c5 j# b; X3 o5 |+ m, L& b+ m/ P8 j
  167. PHA% I( C4 c2 i% f" j1 R0 h  ^
  168. LDA $6000
    2 g+ A# n* u2 m, E3 D. r( W7 q& D
  169. AND #$80; Z; S" x, Y, s
  170. BNE ADDRFFBD
    + S& M, D$ A$ \3 T
  171. PLA
    ; k4 e# g3 ]+ J5 b% d- D$ m
  172. LDA $0015
    7 z9 J# y9 [9 V! W; b
  173. SEC/ Y# P2 ?0 L) }  ~8 Q/ C7 Z
  174. RTS
    9 ]" c  ~) l  f  |0 ?
  175. ADDRFFBD:! Q% T1 J3 X2 Q/ D# S: @, d9 H
  176. PLA
    5 b# f5 {4 l* A. a, E- \5 t9 B2 g
  177. JMP $A826
    . v# }( E7 g+ G2 T

  178. : x+ V6 g' O2 N

  179. 7 b: E! T6 z! I( x, I2 w$ A: v, M

  180. 9 T, F( ^: p# U- w
  181. .ORG $AA6A
    $ h4 t& O& J* j/ ~& f
  182. JMP $FFD0
    ' F% x0 |0 Q" O6 e0 H, N, j4 {

  183. , ~4 K) u3 t* c0 r) o! _) K& r
  184. .ORG $FFD0    ;敌兵动作忽略( L  d5 s3 o1 k/ ~7 \( H; K
  185. PHA$ Z4 ~/ w% K1 Q# x& ^
  186. LDA $6000
    . \& l, b! }7 {; V. B, }1 H
  187. AND #$80
    1 d' s5 G* J2 s( D
  188. BEQ ADDRFFDC
    ! T+ Z. O' r! l% q6 `
  189. PLA
    1 P' s  I2 d7 O6 m  r" m5 W. ?
  190. JMP $AA72
    * H& n5 }# ~- d
  191. ADDRFFDC:
    ' `; t; l9 x2 V* O9 M4 C
  192. PLA
    : a4 E4 {1 j* M( B$ U1 E  y7 [
  193. LDA $0629,X
      o3 ?/ A" I% p) L% H! B
  194. JMP $AA6D/ I& M7 O. l9 y) d4 a) M/ |) Z; i, j! z
  195.   R3 u9 a7 A5 V* j0 c
  196. ;[FC][忍者神龟3代标题选关程序]
    0 L' x5 {# P7 ]/ c8 v( N6 [( Z
  197. ;作者:FlameCyclone 2017.4.1
    9 B2 k! f' K/ y& n
  198. ) d& D. m$ q* [- M9 {
  199. & R) m  r6 C, L% V$ C$ Y0 i8 _
  200. ;配置数据
    ; B0 r$ P0 d. t. J- B
  201. KEY_ADDR = $F8    ;按键地址
    , C- y0 P" m. `% G
  202. STAGE_TEMP = $6010    ;关卡临时地址5 M0 R" ]( K2 L
  203. STAGE_MAX = $0E    ;最大关卡数& y5 f, Y: U+ c& w7 t2 \
  204. TITLE_A = $20    ;标题条件A
    2 r9 v- v4 {7 I
  205. TITLE_A_ON = $02    ;标题条件A有效状态判定7 z% t9 Y% ~( H3 X- N* \
  206. TITLE_B = $21    ;标题条件B
    4 K6 x8 U- t) ~3 p
  207. TITLE_B_ON = $03    ;标题条件B有效状态判定
    & }# n& `% D  N/ [
  208. PPU_END = $FF    ;PPU结束符+ t) m) l% F5 |0 Q
  209. TIME_LAY = $4A    ;标题显示延时地址
    + d$ |6 J* ^$ `0 y9 H7 W( F
  210. BUTTON_DEC = $42    ;关卡减少按键* G* ]  d% k/ a) {3 h8 \
  211. BUTTON_INC = $81    ;关卡增加按键
    $ O4 }, d" V2 ?1 B
  212. NUMBER_A = $06    ;数字A距离STAGE偏移量
    - t) W5 k" E1 p1 W( G& o  ~1 H
  213. NUMBER_B = $08    ;数字B距离STAGE偏移量
    4 @3 T5 P# c- @. O% O+ `! L
  214. PPU_ADDR_H = $23    ;STAGE写入地址高位
    ( ^0 v* ^7 r% t9 L/ l- _! Q* M8 H
  215. PPU_ADDR_L = $8C    ;STAGE写入地址低位% A' _6 \4 A$ N# z. N$ J
  216. CHAR_S = $A2    ;字符'S'
    # L& o4 y6 B4 d! W: M, _# F# h6 [
  217. CHAR_T = $A3    ;字符'T'0 ~* L( c! _, K, N, D' @" ]
  218. CHAR_A = $90    ;字符'A'
    ( `8 @( ~; r) ?: h$ Y& A
  219. CHAR_G = $96    ;字符'G'$ W% X9 _4 n$ ~& v
  220. CHAR_E = $94    ;字符'E'
    3 S( f6 r+ d0 _8 x/ h
  221. CHAR_SPA = $00    ;字符空格
    , {! g7 z/ o3 c, ^! j
  222. CHAR_LIN = $AE    ;字符'-'# P# U0 G, z" o* b8 z4 u$ s5 M. \; y
  223. CHAR_O = $9E    ;字符'o'' A( G/ E% I( s9 u: V; w
  224. NUM_1 = $81    ;数字'1'
    * y& \, l  Q0 {
  225. NUM_2 = $82    ;数字'2'
    % U+ {& V4 u" q2 h
  226. NUM_3 = $83    ;数字'3'
    : v6 i( V8 t9 E( g# j
  227. NUM_4 = $84    ;数字'4'
    0 @! B0 ^, d' z% ~0 W3 V
  228. NUM_5 = $85    ;数字'5'8 y6 b: W! Q4 h
  229. NUM_6 = $86    ;数字'6'
    $ T0 a9 j2 h, \" l" M
  230. NUM_7 = $87    ;数字'7'
    5 Q/ k3 r7 b7 G. L5 X1 a
  231. NUM_8 = $88    ;数字'8') q4 \, U  a  Y
  232. NUM_9 = $89    ;数字'9'. A! W  u* t& U7 R6 g
  233. NUM_0 = $80    ;数字'0'
    ' R0 P  {% B( ^7 s# x

  234. 9 m7 Y' E: |+ e. N9 ^8 c
  235. .ORG $F82A! R% M5 }& E7 |5 _- g' a# J
  236. JSR $E700
    ' ]  g( d4 A" V& {& y
  237. + W: O, v1 j0 i( Z0 i! ~& P  v; H& r

  238. $ E9 {3 C7 D2 J/ f# I& G8 `
  239. .ORG $E700' X& g* E8 K7 c
  240.   ; Y1 I/ j' v/ e6 p5 N
  241. STY $4014    ;补上覆盖的精灵写入指令- s  i; [% T9 V- g
  242. PROTECT_DATA:    ;数据保护1 s/ n& o" H+ Z  k
  243. PHA    ;数据保护开始
    8 Z$ j/ v5 ~- w' p
  244. TXA8 o+ w2 a. z) K4 ?! u- t! i  p
  245. PHA1 {2 \% o: f! [9 Q- ]
  246. TYA
    5 C. s4 }- Z2 |9 R  w4 g) ]
  247. PHA    ;数据保护结束; F( T; c) E" a. l
  248. LDA TITLE_A
    3 i2 P$ \! H% C- D$ j! y  a, L9 H
  249. CMP #TITLE_A_ON    ;比较是否为标题画面
    2 s+ p6 e- z, G! |; U
  250. BNE RET
    ! {; r8 _- ^/ Y, _$ f3 ^
  251. LDA TITLE_B$ V* b/ Y3 z2 [
  252. CMP #TITLE_B_ON    ;比较是否为标题画面
    % v8 ^: h6 |( ~+ w% ~# ^
  253. BEQ PPU_STAGE) n" e: s$ Z( L, h7 ~: j7 g: e
  254. RET:    ;恢复数据
    % k! l6 e4 {/ n( O; G7 [9 B6 w
  255. PLA    ;恢复数据开始
    ' e7 P3 b7 F3 Q8 O4 Z% |1 r. I" C
  256. TAY, @" ^$ M8 F$ J
  257. PLA
    % F' t! S6 }; O/ v9 W0 O
  258. TAX  D( }7 u4 T; q. E( G8 w* H8 ]
  259. PLA    ;恢复数据结束
    - @5 X6 j2 t/ Y6 w. C% N* x2 o
  260. RTS    ;返回
    3 Q5 z% U5 g: Z/ F% _
  261. PPU_STAGE:    ;字符STAGE写入程序
    / C, |3 C8 k+ v8 [7 j9 K
  262. LDA #PPU_ADDR_H
    % Z" A  ?, f$ B9 z1 Q
  263. STA $2006    ;设置PPU字符写入高位地址
    . I1 R5 n. N4 W- Q
  264. LDA #PPU_ADDR_L& |) x# Y" W, N( s% ]
  265. STA $2006    ;设置PPU字符写入低位地址
    / [  t  ]  k  [9 ]  p9 c/ [% M
  266. LDX #$00
    ) W8 Q. ]6 A. i$ x' i7 Z
  267. PPU_STAGE_WROTE:    ;写入STAGE字模, r3 o2 Z) |2 ~+ f
  268. LDA STAGE_DATA,X" _& ~6 M, z& ?8 b8 I8 w/ @
  269. CMP #PPU_END    ;判断是否写入结束! {+ d8 h* m+ r) }' }7 [2 i
  270. BEQ STAGE_CMP1 S& W3 `# {; y' ^* V) C2 Q
  271. STA $2007# l  q3 {/ ^- C$ f( J5 M: K
  272. INX3 N  {6 s; N7 `4 T2 `* U0 l1 Z
  273. BCC PPU_STAGE_WROTE) X' J0 Z) D3 E& j; O6 J$ u6 D
  274. STAGE_CMP:    ;选关操作
    : U9 m7 c+ l( \
  275. LDA STAGE_TEMP  O$ G4 g5 r& j6 A  ^9 c) o
  276. CMP #$FF    ;关卡数据初始化条件判断" n. z" C' n7 a' V" F# P
  277. BNE KEY_B
    & X: F. @0 {8 c: k. j9 U
  278. LDA #$00
    " g! M4 p* A/ d& T; [. s
  279. STA STAGE_TEMP    ;关卡数据初始化
    ! J4 i0 N; m) {* R7 B
  280. KEY_B:    ;关卡减少
    1 ~/ V9 v" d5 s. ]
  281. LDA KEY_ADDR1 M* Q5 ~1 q/ O, o
  282. AND #BUTTON_DEC    ;按键B或左减关
    - {5 p9 A) x% r$ z" Z% N
  283. BEQ KEY_A$ T+ r$ _, e% e; }) ]9 f4 k0 X
  284. LDA #$FF, j. n* M9 K4 c! k8 H' o
  285. STA TIME_LAY    ;重设标题延时' s- j3 J/ n% a: U5 h
  286. LDA STAGE_TEMP: N, E( E: a! c. F
  287. CMP #$00    ;关卡比较; ~( O. j  b; G9 j% \
  288. BEQ KEY_A
    6 `7 D! T& J) p* S+ ?5 z% |
  289. DEC STAGE_TEMP   ;减关  W- P" E$ s0 v! c( ^$ B$ I  K
  290. JSR MUSIC    ;按键音效# x! ~/ K. G3 o/ I) P! q! U
  291. KEY_A:    ;关卡增加* Y5 {1 Q0 e8 W
  292. LDA KEY_ADDR
    " r( s4 r5 u' g7 s! F
  293. AND #BUTTON_INC    ;按键A或右加关
    : E+ b2 F7 v& N
  294. BEQ PPU_NUM_WRITE
    3 V& x/ _5 ~! H  M' }
  295. LDA #$FF
    ( a; W! e% _# f5 o( K! c
  296. STA TIME_LAY    ;重设标题延时
    ' E1 y7 k8 Y3 c
  297. LDA STAGE_TEMP
    & C7 w" }  W* Y: n& S4 b
  298. CMP #STAGE_MAX    ;关卡比较4 _$ h! S7 G( j! y% _/ F( x
  299. BEQ PPU_NUM_WRITE1 x0 ?) m$ N5 h' W
  300. INC STAGE_TEMP    ;加关
    8 {& ]  b' o. |& I& t
  301. JSR MUSIC    ;按键音效
      \  A7 }8 U9 U/ ~
  302. PPU_NUM_WRITE:    ;关卡数字写入地址
    . D* n3 W, h. W5 V7 A
  303. LDA #PPU_ADDR_H
    , B7 [6 k+ Z) P; ~
  304. STA $2006    ;设置PPU数字写入高位地址4 Q4 Q, Z6 k% v; }: M% `
  305. LDA #PPU_ADDR_L, F$ F, e( x) s# O" X' K( k
  306. CLC8 y! S" O6 t: Q' r" L7 b
  307. ADC #NUMBER_A% [1 d0 E+ @/ G5 ^# |* s
  308. STA $2006    ;设置PPU字符写入低位地址
    : F% X$ ?4 T7 C9 V2 V5 P* t
  309. LDA STAGE_TEMP. D  |6 H4 k1 k5 v% ]
  310. TAX& F; g/ F8 d' q) j) Z# Z
  311. LDA STAGE_D1,X    ;写入数字
    1 H2 w/ e  [3 T! J( \' H. k; k
  312. STA $2007' \$ Z" v. O* h" E1 N0 Y
  313. LDA #PPU_ADDR_H# C- b7 ^: J( J( y' B5 M
  314. STA $2006    ;设置PPU数字写入高位地址3 p  R1 r9 ]* B
  315. LDA #PPU_ADDR_L
    0 B$ i# T3 g4 U. S
  316. CLC
    ) Z6 M) ^. L' P9 j1 B6 n
  317. ADC #NUMBER_B9 N0 D9 V; T- T# [& w  b- l
  318. STA $2006    ;设置PPU字符写入低位地址
    ! |/ V: U, z7 r% y' H% j$ A
  319. LDA STAGE_TEMP
    # C5 ]. U) l+ n2 d
  320. TAX
    1 W5 i+ f! w8 V- e5 e" P/ {* u
  321. LDA STAGE_D2,X    ;写入数字
    9 a0 ]" x5 B* q) U4 F2 X, `
  322. STA $20074 o& d/ q  j) I3 o
  323. STAHE_WRITE:
    4 ~' p% W. |! Q  s
  324. LDA STAGE_TEMP( a; I% g$ d( |+ b" C
  325. STA $2D   ;初始关卡写入
    4 i' C, J) v  m, s; X
  326. PPU_RTS:    ;恢复数据
    1 g" m) M! \, E% q" X- c3 E
  327. PLA  \5 L9 i5 W& d% v
  328. TAY
    # |5 x  y+ ]* D* W
  329. PLA& p7 y& X% z6 o9 g+ V8 O# s0 t  a, }+ E
  330. TAX
    % d; W3 l' S, P) D" Q  H1 t* O
  331. PLA4 Y. j8 _: _, V2 V
  332. RTS
    9 E# P0 P7 J, Y$ d1 L: A9 b
  333. . p4 z; M- \' g  y9 L! }; _; X
  334. STAGE_DATA:    ;关卡文字S,T,A,G,E,X,-,X字模数据
    8 X. A; a5 s; y
  335. .BYTE CHAR_S,CHAR_T,CHAR_A,CHAR_G,CHAR_E,CHAR_SPA,CHAR_SPA,CHAR_LIN,CHAR_SPA,CHAR_SPA,PPU_END
    / G7 H5 b0 c' p

  336. . T/ K- W( E- V* a8 m! U
  337. STAGE_D1:   ;关卡数字$ d5 j% j: y( z3 @0 }
  338. .BYTE NUM_1,NUM_2,NUM_2,NUM_3,NUM_4,NUM_4,NUM_5,NUM_5,NUM_6,NUM_6,NUM_7,NUM_7,NUM_8,NUM_8,NUM_8  g, A+ Y+ z5 {
  339. : |$ L+ k  y4 T( l- d& ]
  340. STAGE_D2:   ;场景数字
    & w3 w4 B! F. |9 J+ _
  341. .BYTE NUM_1,NUM_1,NUM_2,NUM_1,NUM_1,NUM_2,NUM_1,NUM_2,NUM_1,NUM_2,NUM_1,NUM_2,NUM_1,NUM_2,NUM_37 ^% |' K- O. {2 q

  342. ! }+ w5 m, `( ^/ S9 a, G3 U5 j- e

  343. * v3 r4 k* c; h( U( h1 w
  344. MUSIC:    ;按键音效
    * A) c" L# _6 x  \
  345. LDA #$3B    ;音乐号
    4 V  \: R1 o5 c) p  D2 b8 R+ g; F
  346. JSR $919E    ;系统音乐调用
    - I" H7 Q+ R; }8 g( j) q6 @
  347. RTS
复制代码
4.无敌锁定:   暂停后,按上键切换;
' p+ V" I& I" O% A" ~    5.生命加满:   暂停后,按下键切换;- g$ e+ k) F4 M, `+ y! p+ `
    6.血量锁满:   暂停后,按右键切换;
: N  ?9 ^0 k, M$ C6 L+ F5 f. }* J- S" F9 A8 h" `: w
" ?1 ~3 ^! \& A# g) R: D

6 O& t( U) s" e7 {2 o: Z# Q% `; |# l) [, W' I; F0 l# s& Z

) Z6 a$ `8 L$ x' [  D8 ]FlameCyclone.ys168.com
% }+ X6 x- B# M7 Q4 iwww.nesbbs.com
: f+ Q' `' K% p, {% h* Y
游客,如果您要查看本帖隐藏内容请回复

2 k4 s0 ?3 \( T. V& a$ I; k% ]

本帖子中包含更多资源

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

x

评分

1

查看全部评分

签到天数: 187 天

[LV.7]常住居民III

发表于 2017-3-31 15:19:48 | 显示全部楼层
感谢修改,辛苦了
[发帖际遇]: dabayu 发帖时在路边捡到 3 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜

签到天数: 48 天

[LV.5]常住居民I

发表于 2017-3-31 15:57:22 | 显示全部楼层
这也是个好游戏啊。谢谢修改。

签到天数: 2366 天

[LV.Master]伴坛终老

发表于 2017-3-31 17:15:48 | 显示全部楼层
感谢分享新游戏

签到天数: 1418 天

[LV.10]以坛为家III

发表于 2017-3-31 18:08:30 | 显示全部楼层
这个有意思,比30人版的还要简便

签到天数: 2466 天

[LV.Master]伴坛终老

发表于 2017-3-31 18:24:11 | 显示全部楼层
2和3改的很强悍

签到天数: 71 天

[LV.6]常住居民II

发表于 2017-3-31 19:13:18 | 显示全部楼层
{:4_103:}哇塞,真心不错,楼主辛苦了,终于圆了我的梦,多谢多谢!
[发帖际遇]: 街机爱好者为灾区捐款 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 1375 天

[LV.10]以坛为家III

发表于 2017-3-31 21:04:59 | 显示全部楼层
这个修改超爽啊..太感激了
[发帖际遇]: 多乐事为灾区捐款 3 个 柠檬. 幸运榜 / 衰神榜

该用户从未签到

发表于 2017-3-31 21:30:31 来自手机 | 显示全部楼层
这个修改的好阿弱弱的问下不是说隐退了吗

签到天数: 1771 天

[LV.Master]伴坛终老

发表于 2017-3-31 21:34:31 | 显示全部楼层
楼主改的太棒了,谢谢分享
[发帖际遇]: pp12 捡了钱没交公 柠檬 降了 1 个 . 幸运榜 / 衰神榜

签到天数: 3040 天

[LV.Master]伴坛终老

发表于 2017-3-31 22:08:30 | 显示全部楼层
感谢楼主分享!
[发帖际遇]: afti辛苦发帖,赚了 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 2164 天

[LV.Master]伴坛终老

发表于 2017-3-31 22:32:18 | 显示全部楼层
感谢楼主分享
[发帖际遇]: 一个袋子砸在了 datone 头上,datone 赚了 5 个 柠檬. 幸运榜 / 衰神榜

签到天数: 1919 天

[LV.Master]伴坛终老

发表于 2017-4-1 02:16:39 | 显示全部楼层
简单很多了,感谢修改
[发帖际遇]: 找不到服务器 打扫环境卫生,被奖励 4 个 柠檬. 幸运榜 / 衰神榜

签到天数: 135 天

[LV.7]常住居民III

发表于 2017-4-1 11:35:44 | 显示全部楼层
老规矩,先回后下!!!!!!!2 Q: Z9 P+ }! ^) V6 m/ n

签到天数: 179 天

[LV.7]常住居民III

发表于 2017-4-1 14:07:04 | 显示全部楼层
以前在实体机上老被BOSS虐 现在好了 搞死BOSS 哈哈哈
[发帖际遇]: 九月鹰飞 在网吧通宵,花了 2 个 柠檬. 幸运榜 / 衰神榜

签到天数: 1609 天

[LV.Master]伴坛终老

发表于 2017-4-1 15:51:06 | 显示全部楼层
好东西收藏了

签到天数: 39 天

[LV.5]常住居民I

 楼主| 发表于 2017-4-2 20:42:12 | 显示全部楼层
来看看貌似没人下载

签到天数: 39 天

[LV.5]常住居民I

 楼主| 发表于 2017-4-4 11:44:04 | 显示全部楼层
已经适配nestopia模拟器

签到天数: 93 天

[LV.6]常住居民II

发表于 2017-4-7 01:13:04 | 显示全部楼层
感谢游戏

签到天数: 57 天

[LV.5]常住居民I

发表于 2017-4-20 10:51:15 | 显示全部楼层
研究研究
[发帖际遇]: 一个袋子砸在了 曹的爽 头上,曹的爽 赚了 3 个 柠檬. 幸运榜 / 衰神榜
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|国治模拟精品屋 ( 沪ICP备15012945号-1 )

GMT+8, 2025-4-20 01:15 , Processed in 1.198242 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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