EMU618社区

 找回密码
 立即注册
搜索
查看: 1799|回复: 51

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-31 14:40:49 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-2 13:23 编辑
) ^# t3 y' @$ I- T
3 r6 b/ w9 Y* l. w. B) `- a[FC][忍者神龟3][END选关]
# [" d. `- L8 Y' }' j
, n+ y# R# D9 v% l, ?: Q时间:2017.3.30' @( Z7 b- K1 z) O! s# W' x
作者:FlameCyclone( N/ y  J7 U- U3 F( i8 g/ ^
内容:
) N6 y4 M( r7 ?$ P' `6 T    1.关卡选择:   标题时,左或B减,右或A加;
+ s4 w) R+ P0 I# U) r9 h- D    2.全屏击杀:   暂停后,按A键切换;) s' j+ M. e. ]6 V5 V7 Z
    3.一击必杀:   暂停后,按B键切换;
  1. .ORG $FEA0' i( R% G, v' f4 N+ b  |, b7 u
  2. ora_data:" J: k% |  s: t8 `
  3. .BYTE $08,$04,$02,$01,$80,$40,$20,$10, b4 Z% g. d2 ^4 q: h( L+ I$ a
  4. and_data:2 _. A3 Y+ A/ n6 Q- p' _
  5. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF) k& }" x; {3 O6 _! L
  6. # p( L$ g7 A) Y( |
  7. button = $F8
    + f7 d/ d. m! I7 j3 s
  8. flag = $60006 Y4 ?7 L" x9 h5 C: X' o9 D' |6 V
  9. pause = $0045
    6 u% g' I% p9 s- u; k

  10. 3 P" t( m7 G( V! F. e. \

  11. + y) v1 m3 h' O( l* j8 z
  12. .ORG $F90D4 \3 B& P0 `" A
  13. JSR $FEC0
    1 `( |" w8 G5 @4 X; g
  14. 8 C/ C& O: ?( ~1 T
  15. .ORG $FEC0
    . W  K5 g8 w) x
  16. STA $54,X( \- `# T. A; q
  17. STY $FA,X3 j% _1 P% i4 M4 n8 `$ L6 {! x( j
  18. PHA! s2 u0 U* Q! W$ d3 p8 t3 A
  19. TXA$ f- H' h- L9 I5 ^7 f+ w) _
  20. PHA
    ; R+ z% z+ V" i; o7 M8 c! c, _
  21. TYA# ^! B/ `- A( j, E
  22. PHA; q4 @% W) ?9 g0 ]' V3 i
  23. JSR KEY_OPERATE& Q  s4 r# V4 f. d/ V
  24. JSR INV* M- B1 Y; F7 O
  25. JSR LIFE. e0 K& a- R; p1 z# r: V9 [
  26. JSR BLOOD$ Z8 u3 w8 X, s& v
  27. PLA3 n9 o2 A9 s# W2 E( x
  28. TAY
    / ?6 ]7 b/ `+ j+ _
  29. PLA% L0 b1 |* b5 V# x6 m2 u
  30. TAX
    $ B4 f/ V' }  k
  31. PLA" x( R  Q. ~9 L& J# Z
  32. RTS  ?! X. Y; u. h2 K% a9 I$ [8 \
  33. KEY_OPERATE:" ]3 f7 e4 u0 \% B
  34. data_protect:$ a8 v& m0 f1 I  ~# A& s
  35. PHA- K2 j9 b" ?7 |: Y$ @$ J/ V
  36. TXA
    1 x& S5 [4 X6 `1 X. ?8 o
  37. PHA
    & N  F. A0 e( r+ n9 r% p; Q: f
  38. TYA
    / [: x9 A6 F- {! |8 Y- _& ]* X
  39. PHA' z1 N& x( U8 c$ f1 I" S" ~

  40. * ?' u) s3 b% |2 H! f7 t
  41. FLAG_CMP:
    ; j8 i& ]: N# K! H; J/ K
  42. LDA $600F; S4 V( C0 |9 U  X9 T
  43. CMP #$7F    ;标志数据初始化条件判断, w6 N' N  J5 D, x" h
  44. BEQ pause_cmp/ _7 P+ E3 O1 c3 v& F- d
  45. LDA #$805 Q7 ~" }/ Q7 Y8 [; [
  46. STA $A001    ;6000-7FFF写入启用
    7 a7 m3 @4 v- F+ G3 j  b
  47. LDA #$00' E" `) {7 U/ n- j
  48. STA $6000    ;数据初始化
    ) U/ I$ \; [, o# {
  49. STA $6001    ;数据初始化
    4 H3 L6 L$ N# K! ]6 f! {
  50. LDA #$7F, Y; i" Y5 D; n$ d2 r8 @
  51. STA $600F- I5 J/ g. `& R4 u9 S. I( `0 T0 {
  52. pause_cmp:& O1 {; s( v* G2 {2 ]
  53. LDA pause2 I/ L, M- |  ?# L
  54. CMP #$01# |# ~2 _9 [7 Y4 b; }4 v
  55. BEQ button_press
    ; X( N* J& D  Z; q
  56. PLA2 }* |2 C1 f- D7 p, m
  57. TAY
    - y) F9 D; ?) f3 g: |" L; ^
  58. PLA
    % ]- F7 ]3 E: w) d
  59. TAX
    " E0 _3 Z9 x( R% |2 r; P* |, I" g
  60. PLA
    ; X+ w! Q" N) V4 ^
  61. RTS$ H9 y1 Z9 z0 m- j  E
  62. ; M& H" @. x* Q
  63. button_press:
    ; V6 i7 b( X  r
  64. ini_Y:# C* [8 y. q9 O1 m$ I
  65. LDY #$00
    : ]/ a9 O5 u/ g
  66. button_cmp:
    ; p" T- p! p- r- e! o' g8 h
  67. LDA button,X
    + |! `% b/ f: ]
  68. CMP ora_data,Y
    , M  X$ z" d- G7 T$ B* c
  69. BNE count_Y_cmp. G8 L/ l, v( O& L! A, q
  70. flag_cmp:
    , |9 h* `3 T2 q# X, ^+ X8 H
  71. LDA flag,X0 f+ a+ i2 T% d6 }, Q1 Z5 s6 o: h
  72. AND ora_data,Y
    9 U7 s! K4 u1 ?" R
  73. BNE flag_and
    ' v4 K8 q: G* _; H, K& i
  74. flag_ora:
    2 T$ Y0 K5 \% X" x4 Y. K" ]
  75. LDA flag,X
    ' Y; e7 b( \: R) l
  76. ORA ora_data,Y
    ! U7 D' N: z  U* d
  77. STA flag,X5 Z- v, V/ h. k; D1 a, N
  78. BNE count_Y_cmp
    + K! D5 W  I3 K2 O  K
  79. flag_and:
    ; G3 O  v! {2 m$ h
  80. LDA flag,X
    9 N0 A4 ?; [9 h- l
  81. AND and_data,Y
    * U& P0 L0 O; N8 H' m' m
  82. STA flag,X. p  X3 E# I/ u4 C9 w
  83. count_Y_cmp:# a; M" g  O6 m# r( Y2 F! S
  84. INY
    ( V9 p& e. F- Z3 [% j: Q
  85. CPY #$081 D7 `( S  l; d* a. @. t+ E
  86. BCC button_cmp5 ]# U- Y! M# [3 l% N
  87. / r  _# N7 U& Q1 F( n- e! ?
  88. data_extract:
    5 H/ p0 u9 l; [3 B8 j# C, o
  89. PLA
    $ n6 D+ v) l: z; x( [
  90. TAY6 \+ M( z2 x5 a2 g
  91. PLA! @2 F( J. t4 X0 D* I$ T$ q
  92. TAX
    : e' J2 F, S; f& u( p9 y
  93. PLA
    6 ]3 z; g4 Q; Q  Y5 b( W1 @+ @8 h* b

  94. - V! _: G. O3 B6 v2 [
  95. return:) v" d+ o) j, t
  96. RTS
    & Y3 l: M; B  e
  97. 3 L  K7 }, ?; F& O9 G$ p

  98. + F3 q% ~* a3 Q4 {4 Q8 F6 C2 i
  99. INV:    ;无敌( s! x! [6 l  y' U* C& N
  100. LDA $6000,X+ s& Z! n# h; @; {  y+ v4 s
  101. AND #$082 `2 O& N% j, [# |! [, M
  102. BEQ INV_RTS& \: l3 L3 {  F; H2 x2 }4 T
  103. LDA #$05
    , t1 v4 G5 j5 X$ u
  104. STA $04FF,X0 I; g: T, |* s0 {
  105. INV_RTS:  d5 k6 Q8 M. _2 [/ A% J9 b
  106. RTS
    ) }( K# E$ a& H( V- s
  107. ; R& A& y0 w3 }
  108. 9 l- g$ |6 ^: d
  109. LIFE:    ;生命; H. D; l6 `6 R; j+ H. L( ]
  110. LDA $6000,X
    5 V5 ~/ @* A% K. g# G' B7 K1 p
  111. AND #$048 u4 t1 Z2 `9 P
  112. BEQ LIFE_RTS9 f7 E# J" @/ P! j# b
  113. LDA #$097 P  P9 ~% ~/ A/ D5 z
  114. STA $6A,X% u1 a' W  M9 n  q  @: c
  115. LIFE_RTS:1 |  J! @. V. L
  116. RTS
    + r, H5 ], P, R4 H6 m

  117. , }7 e: N. c# X( D5 Q2 ^

  118. ! f7 B- v  k9 K& k0 ~
  119. BLOOD:    ;血量
    ) S) k+ z$ H: D  x. M$ ~4 l; O
  120. LDA $6000,X7 C6 Q+ ~) ?/ i# o0 L
  121. AND #$01" s1 h- E  M$ O, ]0 }" y
  122. BEQ BLOOD_RTS
    2 y; B0 f8 ?* y) M7 M
  123. LDA #$7F
    3 Y/ }$ i5 F6 k
  124. STA $04F1,X6 z- e( i# Z0 E% l/ Z/ Z
  125. BLOOD_RTS:$ l( }( a; u. ~0 {8 X8 C6 d
  126. RTS, G; c5 W0 Q, @9 ^

  127. 9 C0 t1 g& B/ a- r
  128. % ]+ E% H2 v* f* [& J" J4 l) V
  129. 7 ]4 _0 l( q; S- @$ Q8 B. [# w" p

  130. # |" E$ t$ Q7 r1 P' c3 P5 A
  131. .ORG $D29F
    . @; t* A+ O  p
  132. JSR $FF80
    3 N* Q9 m$ ?$ Q$ n2 n
  133. " A' a' h2 i7 K% B+ W/ j( @
  134. .ORG $FF802 `% ^8 |. S$ v7 M+ }
  135. KILLBOSS_BY_ONE    ;BOSS一击必杀
    / z+ B0 S$ j  B1 [4 p6 m" D8 C
  136. STA $0628
    / s( y! h0 Q2 x  E  F
  137. PHA$ X4 M: Z( j! n" l7 J' y( }
  138. LDA $6000' A9 A$ l' u5 ]
  139. AND #$40
    4 z$ M" `. P" D
  140. BEQ ADDRFF8E
    % R; E( {" @7 m. v4 d- P
  141. PLA
    9 l, G& l* z1 G, ?0 Y4 m$ J, @' r& c
  142. CLC   ;敌方死亡状态判定/ F% Y# e4 e1 E, S
  143. RTS! Z+ Y$ \6 B+ L- J; [# k! T0 m: C
  144. ADDRFF8E:9 i2 D0 ~" n+ P" ^& e) |$ m# B
  145. PLA0 X$ i8 c# h* W4 q2 U! x) @3 h$ G
  146. RTS
    3 B: c# \/ p6 ?8 d6 s! e+ h
  147. 7 d* K8 u$ y& S- d$ T

  148. : R5 t1 W5 W% e
  149. .ORG $D151$ b$ c# j# @7 I5 o- R- V
  150. JMP $FFA0
    9 s% A$ b: |' L* h9 o& T
  151. ( e3 W( i+ ^# q9 G% c& f) I
  152. .ORG $FFA0
    ; W! ?# ?5 n# S( @4 _' R% J) m
  153. KILL_BY_ONE:    ;杂兵一击必杀
    ) P0 ^: U! z# {( z6 ?5 e$ ]5 q
  154. STA $0621,X
    6 W+ p6 Y5 p3 l7 J0 C
  155. LDA $6000
    + B9 A: r5 ?8 {8 P
  156. AND #$40
    + }+ {- C$ i/ D; ^/ x, c
  157. BEQ ADDRFFAD
    6 `( N" @" W% S' f
  158. JMP $D19A   ;敌方死亡程序跳转
    8 R2 W* C- g- h& E
  159. ADDRFFAD:
    ; E1 C7 S# L8 d# J, W# K8 L, D
  160. JMP $D154
    . c! V) Z2 g& ]- {7 h
  161. + g# v( x- A3 R6 y- q8 ]5 z4 U

  162. ( K/ i8 I- t3 D# b* f* d
  163. .ORG $A7F6
    7 F% P" o: Q; {
  164. JSR $FFB0/ W, |3 L% q) o" ?, j: z9 \% X

  165. + k! N$ b5 G# e, Y6 K/ I) E" y: e
  166. .ORG $FFB0    ;全屏攻击" m! D5 P% o( j  ]
  167. PHA
      ~) l: K. H/ j
  168. LDA $6000. v* v9 Q- l( N8 [4 e
  169. AND #$80
      T% h8 f9 A  ]( Q3 ]6 ~
  170. BNE ADDRFFBD
    0 B- f& E$ a4 Y) W) a2 {
  171. PLA1 t! v# N: q8 l3 y
  172. LDA $0015% K2 J) R# L+ t8 P2 E& X
  173. SEC
      p+ }6 ^' ^9 A7 G; q
  174. RTS
    # P& T+ \$ ?. d. M/ \& `' \. `
  175. ADDRFFBD:
    3 V4 Y" h3 N0 V4 Z, K
  176. PLA
    : j8 O0 t; {: t4 y# T  Q
  177. JMP $A826
    . [- c% k0 i$ b& z& X6 e

  178. # U; {' }% {9 j1 S* u

  179. % s- X7 n& i" r6 U. G/ [7 [
  180. $ h7 Q2 b8 _, `* P2 k2 Q
  181. .ORG $AA6A8 ^* o! L+ R0 E7 D9 P% d2 ^  L
  182. JMP $FFD0
    ) z' ]. p# D( A! Y

  183. ) q- f5 V( d6 _( [" i8 _+ {
  184. .ORG $FFD0    ;敌兵动作忽略* U7 h  {* |, B  q& u2 F
  185. PHA
    " l2 L7 r( c5 H, M' A$ g2 x
  186. LDA $6000
    ; T4 q+ v/ f) }
  187. AND #$80
    5 g! U2 ]/ m; w
  188. BEQ ADDRFFDC
    ; P; @$ Z# E- g; M% o
  189. PLA
      Q' n; ~* l2 T$ {1 |* G7 h
  190. JMP $AA724 e& D& \  t, K3 _8 @$ C1 p
  191. ADDRFFDC:) E  R. s* ]8 j3 q9 u, G( @% f/ l
  192. PLA+ G/ [$ @. i, A( \! y# O" A, s
  193. LDA $0629,X
    / S$ X  C% w# |6 G" Z
  194. JMP $AA6D
    9 K4 G/ G# ~3 P. x  _+ m, B" i

  195. 2 H. _- a; L  m4 a( ?& H* e
  196. ;[FC][忍者神龟3代标题选关程序]
    4 t. N8 ^) j7 y) }) w
  197. ;作者:FlameCyclone 2017.4.12 D7 @$ T( r/ q1 b" f- _" P$ p

  198. . C" W8 T9 H% o2 i* y* {! s

  199. / i7 a" a- S* e+ y6 ^. P3 [% R" O
  200. ;配置数据7 {* w, ]' G: r
  201. KEY_ADDR = $F8    ;按键地址
    % x. S1 i6 d2 }  H! d
  202. STAGE_TEMP = $6010    ;关卡临时地址
    # g' g/ X! S5 w8 S7 O
  203. STAGE_MAX = $0E    ;最大关卡数8 H  O# P, q6 Z" i( c( R! s; ^
  204. TITLE_A = $20    ;标题条件A
    0 k/ A7 Y. y7 ]
  205. TITLE_A_ON = $02    ;标题条件A有效状态判定' o8 C9 c% M9 _" L% q$ v# z
  206. TITLE_B = $21    ;标题条件B; k" X& b( v% y, u/ s5 `& I8 c
  207. TITLE_B_ON = $03    ;标题条件B有效状态判定% y/ p  ]" k& Z) Q+ ?7 M0 g1 [6 W/ Y
  208. PPU_END = $FF    ;PPU结束符
    ) A4 D, R& B3 j  D9 E" J9 M
  209. TIME_LAY = $4A    ;标题显示延时地址
    + t; V" V" K# S  o, E
  210. BUTTON_DEC = $42    ;关卡减少按键
    % o, T. z& C* F5 y9 F8 I
  211. BUTTON_INC = $81    ;关卡增加按键
    ( |5 b3 }1 L) O2 l, Z- Z8 E4 S# v
  212. NUMBER_A = $06    ;数字A距离STAGE偏移量
    & W& }( s( |2 D, d, p- {7 x
  213. NUMBER_B = $08    ;数字B距离STAGE偏移量
    : [* k( S( _5 |: R( N
  214. PPU_ADDR_H = $23    ;STAGE写入地址高位0 P. }, x0 x& |+ `
  215. PPU_ADDR_L = $8C    ;STAGE写入地址低位
    * d+ L$ f0 i1 x+ t( W3 E. r
  216. CHAR_S = $A2    ;字符'S'
    7 ~& _# I1 u3 T  ^( l  y* ^
  217. CHAR_T = $A3    ;字符'T'5 r$ B8 W7 f( Z% C! r0 K4 X
  218. CHAR_A = $90    ;字符'A'
    . K# M6 F  [  Y, ]& j
  219. CHAR_G = $96    ;字符'G'8 b  Y# {* Y  t' {/ e3 y
  220. CHAR_E = $94    ;字符'E'* i# U; x" u5 T* M; H
  221. CHAR_SPA = $00    ;字符空格
    ; X. ^) b4 f- o4 q0 P" E4 J
  222. CHAR_LIN = $AE    ;字符'-'
    % a  z( X; ]2 I0 J* Y# D* _: v
  223. CHAR_O = $9E    ;字符'o'
    5 L. q! ]3 n9 v" e1 L. N
  224. NUM_1 = $81    ;数字'1'. l' t% m3 c7 D7 m1 y$ F7 T
  225. NUM_2 = $82    ;数字'2': M( h/ \8 m; _- j
  226. NUM_3 = $83    ;数字'3'
    # @; E+ N8 x8 N0 _
  227. NUM_4 = $84    ;数字'4'% ~1 U% B+ Y; v# m* h8 j! ]) g5 G
  228. NUM_5 = $85    ;数字'5'
    3 p) c6 [: p! T6 i# y  [) w& K; o
  229. NUM_6 = $86    ;数字'6'
    3 t# d& ]0 y0 H* B6 V& Z
  230. NUM_7 = $87    ;数字'7') o7 @; M( q, d# q0 a. H
  231. NUM_8 = $88    ;数字'8'
    ' _  d" u; o$ R0 T& H  M
  232. NUM_9 = $89    ;数字'9'8 U3 S2 H, S6 t/ \  M
  233. NUM_0 = $80    ;数字'0'+ H$ Y; f6 k. V. p
  234. ( S* ?* X/ @. o/ |1 Q$ H
  235. .ORG $F82A
    9 o4 r) [+ i0 c7 p( p
  236. JSR $E700' I1 D1 `1 K2 H$ q
  237. , W6 o3 [6 `8 Q

  238. 8 C( w$ t* q0 e( `) S
  239. .ORG $E700
    7 [9 w+ A+ O' s% Q" N3 T3 B
  240.   
    ' Z$ |5 C# h  w( e
  241. STY $4014    ;补上覆盖的精灵写入指令
    + L9 K, n5 D( Z
  242. PROTECT_DATA:    ;数据保护
    ) g- n9 I  p- J& u! p, N3 R, O
  243. PHA    ;数据保护开始4 D6 \& U* S* M+ h. Y" B/ |/ M1 v$ A! K( I
  244. TXA
    ' n3 C' U/ i9 r) ^7 B9 w
  245. PHA& j  I7 M; y/ ?0 w2 @0 D4 E7 o
  246. TYA9 x" J+ w" \; z
  247. PHA    ;数据保护结束
    * v) I/ B& k1 _! \2 |2 n
  248. LDA TITLE_A8 s8 l/ A* u5 E4 v
  249. CMP #TITLE_A_ON    ;比较是否为标题画面) n/ u( e9 E- l& f& P6 J" _- M7 E
  250. BNE RET
    $ t7 `' x0 I/ X
  251. LDA TITLE_B
    ! f$ J3 f( I0 I7 o. ~0 w- I- r
  252. CMP #TITLE_B_ON    ;比较是否为标题画面
    4 o. z" y' p" ?7 w+ ?! U
  253. BEQ PPU_STAGE
    / ^* c* {3 F) |* A" k$ \& E7 A
  254. RET:    ;恢复数据5 m# n1 O* h7 R: Q7 v6 C
  255. PLA    ;恢复数据开始
    ; y! I! `2 T, b$ [2 p
  256. TAY
    9 t  |3 C( s  a0 l3 Z6 u6 q
  257. PLA3 @% r0 b  {! \0 ?; a  T4 C
  258. TAX
    0 x# N1 ?1 r2 B" Y" a
  259. PLA    ;恢复数据结束
    1 E$ {, B' v  |' Z8 D0 Q
  260. RTS    ;返回- |# O  D7 E1 W% ^. B5 p8 ]) p
  261. PPU_STAGE:    ;字符STAGE写入程序4 F) [4 _' v+ z" o. S
  262. LDA #PPU_ADDR_H % T$ C5 D3 S( L; b9 Y) ?5 f
  263. STA $2006    ;设置PPU字符写入高位地址6 O& }! n  O# A  M5 c4 r. u- n
  264. LDA #PPU_ADDR_L3 J0 Q6 k3 m3 X+ T% r  L. N
  265. STA $2006    ;设置PPU字符写入低位地址
    5 C) {3 p; I6 O- _6 f6 _
  266. LDX #$00
    . `" }' w: R9 G! b1 s  f/ I
  267. PPU_STAGE_WROTE:    ;写入STAGE字模
    6 ~. |6 h9 C8 b0 C( U' s
  268. LDA STAGE_DATA,X
    4 {( x% `5 Z3 f# P1 h: z
  269. CMP #PPU_END    ;判断是否写入结束# \! l  Q; ~* c" @1 u$ b
  270. BEQ STAGE_CMP$ V8 |+ Y$ O3 b* ~& {& g
  271. STA $2007: z! k5 ^' {) h$ S
  272. INX$ |9 k# A- k2 _+ }# d( g' p
  273. BCC PPU_STAGE_WROTE
    0 n! e# N+ r2 |# i3 p! R
  274. STAGE_CMP:    ;选关操作
    3 m3 y* t% G. V. X5 v+ k
  275. LDA STAGE_TEMP
    4 r+ y: m- I9 l
  276. CMP #$FF    ;关卡数据初始化条件判断
    " K9 `( j, D5 w/ d
  277. BNE KEY_B7 F1 P/ N% X4 K7 J
  278. LDA #$00' C; ?' F' g+ t. Z* p1 I* E$ x
  279. STA STAGE_TEMP    ;关卡数据初始化
    1 L$ C8 s- V  J3 |2 J* S
  280. KEY_B:    ;关卡减少
    & a$ r2 Y2 S! a) T
  281. LDA KEY_ADDR& K3 c, \$ J5 N4 w: E8 v2 Q5 j
  282. AND #BUTTON_DEC    ;按键B或左减关
    ; C: U2 q; |) h/ U: t3 i
  283. BEQ KEY_A- X$ b; h* q4 u) [2 {9 b1 U
  284. LDA #$FF2 ~) Q: V9 x: R5 Q0 G1 O
  285. STA TIME_LAY    ;重设标题延时
    4 ?2 w0 a' L9 B2 c8 Q  Z
  286. LDA STAGE_TEMP
    6 j6 F% n0 \2 p1 E. `' Y: Q2 O- W
  287. CMP #$00    ;关卡比较( m. r2 T. V7 n/ x4 |1 o
  288. BEQ KEY_A
    5 C8 {' L3 b. Y1 m' w, @1 f
  289. DEC STAGE_TEMP   ;减关$ ]( X+ C& {& j+ |
  290. JSR MUSIC    ;按键音效
      j, E$ j1 W- C) F
  291. KEY_A:    ;关卡增加: x. f( K9 {! e9 p$ l
  292. LDA KEY_ADDR7 r; ~! \* V7 R- @
  293. AND #BUTTON_INC    ;按键A或右加关
    7 {3 D/ w* X" N7 a: |
  294. BEQ PPU_NUM_WRITE+ Z$ }0 g5 N! l6 ~
  295. LDA #$FF0 E) n2 W" h' C9 l& j- `, Q
  296. STA TIME_LAY    ;重设标题延时0 h% Q4 d  \: e  k* w
  297. LDA STAGE_TEMP
    , `4 t  Q! I& ~
  298. CMP #STAGE_MAX    ;关卡比较, A% @. R+ c5 A( p
  299. BEQ PPU_NUM_WRITE! s* B! `) W& p) ~) Q( Y
  300. INC STAGE_TEMP    ;加关
    . I" S% s' ^/ c+ G1 B
  301. JSR MUSIC    ;按键音效
    : f: q9 x; N( W9 y  C0 V" c
  302. PPU_NUM_WRITE:    ;关卡数字写入地址
    / A; p, ?% M  f
  303. LDA #PPU_ADDR_H9 i# L$ r2 e6 @- t( e4 B
  304. STA $2006    ;设置PPU数字写入高位地址5 _/ Y$ ?8 ~( E$ X. l' b
  305. LDA #PPU_ADDR_L; g. X$ {  |  ^1 z) q) x9 F. Q+ h; Z
  306. CLC
    - z, l" k8 {4 G% `5 p' Q. Z
  307. ADC #NUMBER_A5 A% ]: s; V2 g" e" z7 N! E
  308. STA $2006    ;设置PPU字符写入低位地址
    ( `) U7 N- N+ ], r
  309. LDA STAGE_TEMP2 O& |/ v+ f3 k2 G; A% Q# E
  310. TAX. W) R' l3 u' n& ?/ F
  311. LDA STAGE_D1,X    ;写入数字0 L0 [) u: K( A+ x3 ?& b. F
  312. STA $2007
      [8 [' i7 `) }0 Y% i
  313. LDA #PPU_ADDR_H
    4 Z- M0 h; a" P- H, p
  314. STA $2006    ;设置PPU数字写入高位地址& [7 O8 G, a4 X$ o. a; V6 _/ G
  315. LDA #PPU_ADDR_L
    2 t+ `; p* Z8 C  Y. |  h4 q4 R
  316. CLC# _+ `4 J1 n; E3 E
  317. ADC #NUMBER_B+ |: e0 C2 f+ E, G
  318. STA $2006    ;设置PPU字符写入低位地址' p- r) Z7 h* h+ v
  319. LDA STAGE_TEMP* a2 j5 j' `, J' |; M
  320. TAX1 @' m0 P5 s4 ^2 B6 W) ?9 C
  321. LDA STAGE_D2,X    ;写入数字
    : D% X2 w3 M, P" Z/ }$ x* Q
  322. STA $2007
    , ^, `* u2 L3 m* e2 ~
  323. STAHE_WRITE:4 N: a9 m) j+ Y4 W- G7 G5 u6 g- x
  324. LDA STAGE_TEMP+ ]! F. e/ M/ O  S$ g8 v* w
  325. STA $2D   ;初始关卡写入3 ~7 ^( u: T5 N, t6 T& k# c
  326. PPU_RTS:    ;恢复数据/ M' f8 ?4 y( C! Z5 l: K6 [
  327. PLA0 d  J9 R1 r: L' k/ w, j  G
  328. TAY
    / g, o0 w/ Z$ a% \1 q  y
  329. PLA) R6 t( @* d, s4 r9 `
  330. TAX2 H' ~/ M" `7 H$ y$ X2 L
  331. PLA
    4 y3 v& j( e  m3 I4 |+ P- c0 m
  332. RTS
    ! R" \0 ^0 n* l
  333. 7 C7 T* i% Y6 f) Y* u& i5 M
  334. STAGE_DATA:    ;关卡文字S,T,A,G,E,X,-,X字模数据
    0 C  S. p3 L& p! C
  335. .BYTE CHAR_S,CHAR_T,CHAR_A,CHAR_G,CHAR_E,CHAR_SPA,CHAR_SPA,CHAR_LIN,CHAR_SPA,CHAR_SPA,PPU_END
    4 k4 s/ I$ ~5 C' V0 [( P. C+ u

  336. . h2 G: i. F( x8 `) h
  337. STAGE_D1:   ;关卡数字' h% @7 N$ B/ n! ^# |
  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. }9 F9 e4 d* [. s
  339. 4 @! ~2 A6 N( |, ~0 |; E
  340. STAGE_D2:   ;场景数字6 M' T7 k9 U6 J9 T
  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_3+ n7 f7 h0 t  {0 K
  342. . z) x  l# L6 E: o

  343. $ c7 G9 ^+ z0 ~5 p! l, e
  344. MUSIC:    ;按键音效
    2 `0 S+ Y' t' m& U' c6 g. z0 I; b+ @
  345. LDA #$3B    ;音乐号
    ( B% C6 f3 u7 z3 W6 P! r
  346. JSR $919E    ;系统音乐调用$ Y  b/ r& D/ \! j+ L
  347. RTS
复制代码
4.无敌锁定:   暂停后,按上键切换;
1 @& x9 r4 \& P    5.生命加满:   暂停后,按下键切换;
; C6 W; U* O' B0 ]8 `5 f- q    6.血量锁满:   暂停后,按右键切换;
+ L8 R; Y; A  p5 \0 C
0 l6 n3 k  c8 _7 L4 ^' n9 o5 j
. F& p& `, @: p3 M, E' Z$ {, D' a* i
5 n6 S. l9 }: q& }, I& v( C; u5 d+ ~, J
* {# K& K. M  M; }: r: u* S+ p4 w3 ?8 E; e* e& ~
FlameCyclone.ys168.com' ~4 _+ R9 Q$ ~; `* D* F( P  H/ ]
www.nesbbs.com  ]$ F/ G) D0 X6 {. z* Z- _( T" |
游客,如果您要查看本帖隐藏内容请回复

: l9 p  o- Q7 g. E  Y6 h- e& E* ^+ m

本帖子中包含更多资源

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

x

评分

1

查看全部评分

签到天数: 184 天

[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人版的还要简便

签到天数: 2178 天

[LV.Master]伴坛终老

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

签到天数: 71 天

[LV.6]常住居民II

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

签到天数: 1058 天

[LV.10]以坛为家III

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

该用户从未签到

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

签到天数: 1725 天

[LV.Master]伴坛终老

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

签到天数: 2685 天

[LV.Master]伴坛终老

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

签到天数: 1804 天

[LV.Master]伴坛终老

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

签到天数: 1551 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2017-4-1 11:35:44 | 显示全部楼层
老规矩,先回后下!!!!!!!
$ q% B7 a1 ?: Z# o/ i- _& L7 H

签到天数: 179 天

[LV.7]常住居民III

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

签到天数: 1365 天

[LV.10]以坛为家III

发表于 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, 2024-4-17 06:40 , Processed in 1.125000 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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