设为首页收藏本站

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

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

 火.. [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-31 14:40:49 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-2 13:23 编辑 : F: H, g- x9 n( R% s1 z, j' U. [

7 U; E% B/ Z0 w0 M, x/ F[FC][忍者神龟3][END选关]
, Y8 K9 l2 }9 n" r
- D7 Y6 k7 ]& V% U/ Y& ~( h+ N: T& ~时间:2017.3.30
$ Q. m% n! X  U作者:FlameCyclone' A# p! Q' f$ y
内容:$ o) J* x- k$ L0 V- Z
    1.关卡选择:   标题时,左或B减,右或A加;( p7 j5 b, D8 d1 c& z
    2.全屏击杀:   暂停后,按A键切换;
1 ~' b  e) s8 ?- s    3.一击必杀:   暂停后,按B键切换;
  1. .ORG $FEA0
    - [3 _0 o: b( Y4 b6 ?) H
  2. ora_data:
    3 ?6 m/ }0 C0 c1 ~$ G! K
  3. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    ' F9 P/ ?+ y5 N9 A* [
  4. and_data:7 N2 I  t" h5 m# B% ?* L% m, M. T
  5. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    ! U- Z( {. o1 p) c
  6. 2 j$ \  x: \  s0 Y4 A
  7. button = $F8
    + m6 i+ E& w" c, O, N7 L: U
  8. flag = $6000/ `$ L$ ^5 G/ F( G
  9. pause = $0045
    8 a" n& L* L, \! x. W, o

  10. . R% h! G: G' v; g6 }7 v3 n
  11. 3 V7 @; R4 E5 t
  12. .ORG $F90D% ?% _% g" K$ A& ]0 }( V
  13. JSR $FEC0# x3 O6 Z" {2 P
  14. 6 d' g0 {0 i, R  V% O8 P# G
  15. .ORG $FEC0
    + B* c3 y8 q( Y1 F+ l. ~4 N! k
  16. STA $54,X
    0 d9 m: `3 w. E
  17. STY $FA,X
    9 H& v" z# u: F
  18. PHA
    6 d& j& X* m- q7 Y! k% R+ O: {. ?
  19. TXA2 ~# v8 m$ i6 \
  20. PHA$ O# L. }$ b$ W; |
  21. TYA! y3 [3 F$ r/ O$ C! m3 r0 Y
  22. PHA! \- l1 Y+ h- I* j
  23. JSR KEY_OPERATE
    * h' F. T; g; B4 g/ X( y% r, S
  24. JSR INV
    - m* A! u- u/ `! Q0 \- O: {
  25. JSR LIFE
    ' R/ L! Z. N& ^
  26. JSR BLOOD- f7 g3 {- X& ^) k
  27. PLA
    ! K# Q; a; e" W  w/ P  l
  28. TAY( Z1 ^8 N# n6 L; _, z
  29. PLA
    $ D. }! H; d; y" M" e. ]8 U
  30. TAX
    # M" L1 e+ k, s
  31. PLA
    # {; V1 a9 e3 n/ d
  32. RTS
    & T* I: J' ]" J9 ^) E, s( k: a  c9 @
  33. KEY_OPERATE:* d' h4 o* s1 m5 \! f( @* h( e* j
  34. data_protect:; V6 H3 m+ C: i' h+ f7 N- a1 z8 q
  35. PHA
    # z; n/ }# t& \" t* \) i$ Y  V
  36. TXA; Y7 u. }. O1 }) Y" M7 q, e, d3 J
  37. PHA( V" i5 l3 U) X/ p0 I/ F: ^; _
  38. TYA7 b! f0 b$ V2 \/ `
  39. PHA
    $ P0 \+ m- r5 x  f6 f- E
  40. " p( j4 p9 ^1 D' j  M/ c
  41. FLAG_CMP:5 v7 d, D. u7 z5 i+ q! b( e, X
  42. LDA $600F9 R) m/ o4 _" L. |# e8 I
  43. CMP #$7F    ;标志数据初始化条件判断
    ' K5 p: F4 ~8 t2 c8 x( o
  44. BEQ pause_cmp
    & B4 H; }, v  V$ l$ a7 x  R
  45. LDA #$80: B% @, v$ x  U+ J
  46. STA $A001    ;6000-7FFF写入启用
    " h! Y* D+ a* P8 [" K2 h5 V
  47. LDA #$00
    3 |; s6 X' R0 T: r
  48. STA $6000    ;数据初始化
    , f- z) i# E/ f( `; ?! V
  49. STA $6001    ;数据初始化
    " P1 p/ u. M; u; u1 T/ w1 e7 s$ R
  50. LDA #$7F, P: a$ G- t( ^0 z9 h8 I5 ~6 H* R
  51. STA $600F! r# }  m( T( H
  52. pause_cmp:: S; {2 m* I/ ^  M2 v5 S% ~
  53. LDA pause
    . h! B6 C. t7 G5 _4 y" b  a
  54. CMP #$01
    5 y+ A% o# ~; S; X; b. L9 _
  55. BEQ button_press7 E0 {% [# G+ R/ T, Z2 A
  56. PLA7 A7 s: d6 V) u* w' S  T  c6 J
  57. TAY
    $ i: w; C! R- ]3 l4 q
  58. PLA! w4 ~4 K; ^; f
  59. TAX
    8 t2 |( O7 ~/ Q, R9 Z* Z$ Y
  60. PLA: g2 j! }* T: e, X! [) i
  61. RTS) k0 x0 u/ r  R0 c
  62. 7 ~, v) Q0 q5 r' W! M' A$ H# [9 ?) v
  63. button_press:
    ; L; W* A/ c/ g1 M% H' B! {
  64. ini_Y:
      ?/ ~& C. C% d: D, O& ?6 l3 y  w% F
  65. LDY #$00% g+ c. Y5 ^2 j2 I* C
  66. button_cmp:
    & q' B2 e: \& ~8 F6 K: r
  67. LDA button,X. ?- h' t% J8 B* d& `
  68. CMP ora_data,Y
    ! D- r% g8 C4 b0 h; n8 z9 e- O
  69. BNE count_Y_cmp( k, D6 W& p0 P
  70. flag_cmp:
    0 \* E& Y+ z  Y! @
  71. LDA flag,X4 P# s' B+ \4 c. J3 J; h
  72. AND ora_data,Y
    + z; z3 k" H" `/ L% ]- G0 {: w  _
  73. BNE flag_and
    8 P$ k$ q4 e$ l, d1 Y* X/ @$ g
  74. flag_ora:
    . M. u  _9 ^5 N  r- T1 w
  75. LDA flag,X' \( x$ {9 r, J! O# J% Z
  76. ORA ora_data,Y, I" d9 `7 I0 a8 A
  77. STA flag,X
    * m- |5 l4 A; {' k
  78. BNE count_Y_cmp
    6 O3 |/ \7 e8 H1 q. r! I
  79. flag_and:
    3 G( Y# U) C) {" j2 x$ }3 K
  80. LDA flag,X- L5 @& K* {; }0 @- O; s
  81. AND and_data,Y! x( ~2 j1 k' R, g3 B
  82. STA flag,X
    0 w" V1 A/ _& D4 {+ z1 G1 }( t! \6 a1 s
  83. count_Y_cmp:
    ( B7 E8 e! x+ E" l- P
  84. INY
    , j) y1 L1 w; ^( P1 c
  85. CPY #$08( V9 x9 O: s4 _7 i
  86. BCC button_cmp
    ! Z+ G# a0 N% l  q+ O" v
  87. " j6 i9 `" q7 E5 ]) h" p
  88. data_extract:
    & l0 Q, x: e: y3 ~2 v
  89. PLA& W- {: E' |9 o1 i. n4 b5 Q* `
  90. TAY
    $ o  \4 y+ i& _5 M: V
  91. PLA" M  U# @6 A5 u2 h: h3 i
  92. TAX4 H5 {* e6 L. _& C
  93. PLA
    9 [2 f/ t3 K% d: n1 |* E
  94. 5 ^, @. K0 g- ?5 G  _
  95. return:) e' K8 w' n/ ]. l* z6 i/ K7 a/ @  u
  96. RTS8 Z: r3 d' {8 G9 S

  97. / N9 h7 `- S3 B' w
  98. ) L! C$ \* x9 |+ y8 w1 m
  99. INV:    ;无敌! [( L$ A" Y7 ?( H8 P" A  r
  100. LDA $6000,X. x4 W3 \& T. g/ a
  101. AND #$08
    " t& ^: l' U3 a2 Z0 Z2 q
  102. BEQ INV_RTS
    - b5 Y% C! y- Q% C# W; u
  103. LDA #$05) b: ^0 x% {; [
  104. STA $04FF,X
    2 X3 b/ T; Q7 z- Z6 g
  105. INV_RTS:7 U5 {( s* H$ f& ^7 o
  106. RTS
    0 A5 w3 v: j0 D$ s( d6 s

  107. 3 O  K) E& z' y

  108. - Y6 V/ b- u+ J6 v1 T# t
  109. LIFE:    ;生命" r7 ~" q: n7 N" m
  110. LDA $6000,X
    6 B' _7 ~- o- d& [, P/ E, w
  111. AND #$040 `; D4 U' y" _  q- X
  112. BEQ LIFE_RTS
    1 x! x7 ^9 d0 H* Z$ x6 q
  113. LDA #$091 [8 U; B0 D$ c# ?
  114. STA $6A,X
      J  O) l$ p$ K
  115. LIFE_RTS:9 l. ]( d: ]8 g8 W1 p, a0 a
  116. RTS
    1 a( s! n/ ]3 d! E. A8 F4 c: D
  117. ! I% e1 }: _; ~9 O

  118. / {( Y  t+ r* g' J" Q0 |% P
  119. BLOOD:    ;血量+ h( ~7 ?$ K8 L' [& J- e
  120. LDA $6000,X4 a4 B7 Q# w$ F' K) q5 }
  121. AND #$01& ~1 E" M9 ~+ V8 U4 F! `
  122. BEQ BLOOD_RTS9 V, E0 W- T4 y) W* Q: D: Q8 X. U
  123. LDA #$7F. D" l- i+ p2 n5 {: O% o8 g) c
  124. STA $04F1,X% C7 y, Y5 _* q4 L2 H# h) Y, b
  125. BLOOD_RTS:
    5 y( @8 D3 J- a7 z$ E4 r. d6 N
  126. RTS7 \# A3 r1 b% j, x$ X- x

  127. ; E6 H  `+ o! F6 X; z$ b; L* [# T
  128. 1 T5 N! F5 o, J3 R$ v) \  Q! A

  129. % N7 {* I$ E- j% P/ p- k

  130. 4 \& \  m9 g2 A) `0 n0 r5 o' W+ Q
  131. .ORG $D29F+ M* @3 D& ?, Z/ R
  132. JSR $FF80# F; D9 h7 N; J2 u* M

  133. " U: j; H2 Y" m8 C/ F+ n6 a
  134. .ORG $FF80
    9 Q& |0 {. c/ `: f: s+ s
  135. KILLBOSS_BY_ONE    ;BOSS一击必杀
    " L# Z! o6 M' A/ Z6 g: @
  136. STA $0628+ Z+ A4 Z" I2 _9 I% L4 {& o
  137. PHA
    - c' b' _, f, l8 A/ r0 M. I
  138. LDA $6000  e8 ?, F) }" y8 a  k, A
  139. AND #$40
    * f/ x! x! C. w1 A
  140. BEQ ADDRFF8E
    5 d  ^8 d, T3 r5 e+ {. @/ `
  141. PLA
    0 ~. X8 }) L. f" Z: I5 C4 p2 M
  142. CLC   ;敌方死亡状态判定
      i( M  N/ D3 {: ]1 l' Y
  143. RTS
    # D  c! H5 j" ]0 M1 _# K7 s$ u
  144. ADDRFF8E:
    $ |, B6 z$ Z. c: g* ^
  145. PLA
    * O9 u; ^4 k. z
  146. RTS
    5 G3 z/ a7 m( y" c) [

  147. 1 z5 g, X" n! Z' s2 u# y( S: {9 ]% `6 L

  148. 4 H/ F" I0 H" ^& e7 N  x
  149. .ORG $D151
    8 Z8 X0 r1 {$ S5 H
  150. JMP $FFA0! X  X2 a9 `, E/ i: D

  151. 2 }  L* ~, o4 i; p  C
  152. .ORG $FFA06 C7 N2 D  U  C6 Z; i' C7 k" z
  153. KILL_BY_ONE:    ;杂兵一击必杀5 S0 R; ~3 s4 c) J: T9 U
  154. STA $0621,X
    7 h- Z+ J2 V+ Z+ ?# T3 `8 W
  155. LDA $6000$ Y5 g3 e+ {. Q+ ]1 X% f
  156. AND #$40
    7 o+ d/ `- V0 n6 o4 S+ r0 i0 _
  157. BEQ ADDRFFAD6 e; W9 h+ L& z" F: U- m8 U& w# N( W
  158. JMP $D19A   ;敌方死亡程序跳转: h2 r: \- q0 E$ t. C
  159. ADDRFFAD:
    * b) K' m: X. P" H% g5 `
  160. JMP $D154
    5 q& ]5 Q( X. S3 l; m

  161. 2 I) L$ z! a3 o8 n

  162. % Z2 s5 s3 Q; x$ z
  163. .ORG $A7F6
    5 m7 }3 d7 p6 T( l! X
  164. JSR $FFB07 M/ v9 S) u2 t
  165. 5 ?1 l# O, S: J+ r8 b4 b6 a/ r
  166. .ORG $FFB0    ;全屏攻击
      b! R) u1 H; f6 c
  167. PHA
    % Z7 H3 d) ~# T
  168. LDA $6000
    ; j% l! Z, B" m$ Y; M3 }: R
  169. AND #$80
    % z9 A$ V) q; |) R8 l6 t4 E
  170. BNE ADDRFFBD
    $ k8 \; }' ?  O& V* O
  171. PLA
    : u7 G  j1 Y! r$ C; }& _
  172. LDA $00152 T" m4 G$ ?4 k5 b: \7 z" @
  173. SEC, Q/ p# ^' R0 S5 q4 [8 P
  174. RTS/ r% ?4 @6 k% `$ s
  175. ADDRFFBD:
    * M, c' u) u( D! @. V/ r$ b
  176. PLA& y  y7 P7 w  X( Y  w# U
  177. JMP $A826
    / q0 E. `; F8 g" r5 T2 C* X3 r! P

  178. 2 S! M/ M6 t1 P+ x) b7 k
  179. 8 T" S: T/ J% n; B, D- D7 T
  180. . k6 `* j, t; |7 h2 |6 s2 m* u1 `2 v
  181. .ORG $AA6A
    5 s' u6 E4 N3 n, v0 Z
  182. JMP $FFD0) U, Q; n' l& r) T$ h! `

  183. 2 A) f% v5 y( v+ h" @, M+ o& |
  184. .ORG $FFD0    ;敌兵动作忽略
    3 @: n8 f+ t+ K5 L7 F
  185. PHA
    4 `1 P- _% F: _' [" c
  186. LDA $6000, c; c) S& j; ]; }) }
  187. AND #$80/ ^  m+ C: l4 {! k8 Q3 |" `5 _3 Q
  188. BEQ ADDRFFDC
    ; |' D3 L: j" d3 P
  189. PLA
    7 c" e# O0 \* W% ]5 x' F
  190. JMP $AA72
    + ]+ ?, w/ ^6 z* `+ q
  191. ADDRFFDC:
      p' Q8 D, ]9 r" C
  192. PLA
    ) I& v. Y4 U. l
  193. LDA $0629,X
    ) _( W* e* S" b! ?
  194. JMP $AA6D
    ! Q2 `, k$ W. _
  195. 8 R8 q% s$ Z* e+ F5 S3 \) b
  196. ;[FC][忍者神龟3代标题选关程序]
    ' Z7 P: n1 W; p5 }# V
  197. ;作者:FlameCyclone 2017.4.1; P: p" _1 U0 ~( K
  198. 0 N6 ~0 `' J/ x' _" u* ~
  199. 0 x( R( J" E6 k  A
  200. ;配置数据
    : B$ ?, l0 ?: ]5 ?3 x$ t* B& m! x
  201. KEY_ADDR = $F8    ;按键地址
    2 ]# o  P: ]+ m! h" V
  202. STAGE_TEMP = $6010    ;关卡临时地址
      q5 e6 \3 u1 |2 B! t6 I+ a- u/ o1 N
  203. STAGE_MAX = $0E    ;最大关卡数2 Q3 j0 t8 K3 X. s$ Z
  204. TITLE_A = $20    ;标题条件A4 U( w9 |6 r' ?! _+ r; E! V
  205. TITLE_A_ON = $02    ;标题条件A有效状态判定0 B+ `9 u+ J5 c+ j3 h5 p0 @
  206. TITLE_B = $21    ;标题条件B: R5 ]# I# m0 s8 i* c+ y% Y
  207. TITLE_B_ON = $03    ;标题条件B有效状态判定
      j7 v6 V% q# i8 L4 w% Q
  208. PPU_END = $FF    ;PPU结束符4 j# F( \: m% I1 u
  209. TIME_LAY = $4A    ;标题显示延时地址
    ( o7 M, j9 v& \$ J
  210. BUTTON_DEC = $42    ;关卡减少按键8 z- k$ O3 r- O" \
  211. BUTTON_INC = $81    ;关卡增加按键
    4 N7 U; Q% H. U( x! i
  212. NUMBER_A = $06    ;数字A距离STAGE偏移量( S2 M; }+ `; P8 P( b$ v
  213. NUMBER_B = $08    ;数字B距离STAGE偏移量# @3 [% M. T9 U
  214. PPU_ADDR_H = $23    ;STAGE写入地址高位
    " U7 D5 ^6 q/ g' y: F  b5 U% p8 Q* u
  215. PPU_ADDR_L = $8C    ;STAGE写入地址低位
    9 b6 v& \" m  s  |- H3 Q, F
  216. CHAR_S = $A2    ;字符'S'
    7 E) |' V5 ?$ H  d5 p( c  T
  217. CHAR_T = $A3    ;字符'T'- i/ x% r) G% K: n) i. u4 ^
  218. CHAR_A = $90    ;字符'A'7 d' U  U0 r+ i
  219. CHAR_G = $96    ;字符'G'
    - S; y1 ^4 m" X* F
  220. CHAR_E = $94    ;字符'E'
    4 g( g7 C/ w/ Y* s. U# n" D  N" c
  221. CHAR_SPA = $00    ;字符空格! M& e" N! u% t8 ?
  222. CHAR_LIN = $AE    ;字符'-'/ Q5 \. F! ], Q
  223. CHAR_O = $9E    ;字符'o'9 h* {# ^- D; n+ K: `
  224. NUM_1 = $81    ;数字'1'
    , C. h! I6 ]9 F* S: ~3 T7 F. U
  225. NUM_2 = $82    ;数字'2'
    1 p! h& h7 J! @7 y( T2 p
  226. NUM_3 = $83    ;数字'3'
    ' |# z' d" i* P2 s3 T( m% s) d* K
  227. NUM_4 = $84    ;数字'4'
    $ `' N/ n8 \& L+ g$ o2 Z
  228. NUM_5 = $85    ;数字'5'& {# C  }" L" v4 @+ e
  229. NUM_6 = $86    ;数字'6'. Z( P- Y2 g# V6 V* V5 i" [# t
  230. NUM_7 = $87    ;数字'7'
    8 ?) c# E' f- t0 S  i/ x1 ]$ g) v
  231. NUM_8 = $88    ;数字'8'
    8 `: x% x. k+ M# G2 m2 e
  232. NUM_9 = $89    ;数字'9'
    5 Y( v. k6 p+ s  o! Q, a; g
  233. NUM_0 = $80    ;数字'0'
    # d: U, [( S0 ]. g, T
  234. 3 K7 ^7 p- u8 P0 Y' x
  235. .ORG $F82A
    5 W3 K, ^! E4 \
  236. JSR $E700
    , o# z! |# b0 u
  237. ! Y' X/ J/ a- F0 k% S
  238. , }1 m! N$ e3 q0 b9 T7 j1 F1 n
  239. .ORG $E700
    ' E! P8 s; o6 P) ]: K
  240.   
    9 n- A  ~) z& B# B
  241. STY $4014    ;补上覆盖的精灵写入指令  B2 C& M: U; U  S
  242. PROTECT_DATA:    ;数据保护
    , z7 C; C* y: h; W
  243. PHA    ;数据保护开始# I& r' ~: J  h! E# p$ p
  244. TXA
    # s  F) R0 b, A; h
  245. PHA/ W1 {9 z$ z! f' q
  246. TYA
    2 D0 y- V# K+ t1 [8 C6 A2 z8 H
  247. PHA    ;数据保护结束, K8 Q$ O" Q7 K+ U+ [, R' w: h9 B
  248. LDA TITLE_A: F0 T" ?; t; Q& R
  249. CMP #TITLE_A_ON    ;比较是否为标题画面0 a  S2 I+ C" [* g/ L
  250. BNE RET
    % t) C2 Y' g  g( q3 w3 Y0 U
  251. LDA TITLE_B, z* A5 E# y2 F+ K
  252. CMP #TITLE_B_ON    ;比较是否为标题画面
    ' Z. D. {& M. c+ j. h8 _6 a5 U8 q
  253. BEQ PPU_STAGE8 s- ]8 O0 A* n' Z  d! v
  254. RET:    ;恢复数据
    $ |4 ]9 I0 h# H7 r
  255. PLA    ;恢复数据开始+ X  M" _, j; [. J0 t9 T
  256. TAY% X5 E+ r! ^; A$ d# P; ~
  257. PLA5 ~: ]4 w" g  E( U% _- x
  258. TAX" E3 j- O0 D8 k& q# E# j" [
  259. PLA    ;恢复数据结束' D$ P3 w' D4 T$ @- ~4 j+ s& R  K7 D
  260. RTS    ;返回
    $ A1 U$ o+ c0 m+ Q2 H
  261. PPU_STAGE:    ;字符STAGE写入程序" a( ]1 l9 d7 t! Y
  262. LDA #PPU_ADDR_H
    0 A. I$ s$ v2 k; P. _$ P
  263. STA $2006    ;设置PPU字符写入高位地址
    . d- U3 Y6 c6 q+ D# V
  264. LDA #PPU_ADDR_L+ S# n% V$ u* _7 T9 q: P
  265. STA $2006    ;设置PPU字符写入低位地址8 I6 O  Q, v! X& A
  266. LDX #$008 A0 D( S( C: o0 @( {/ E+ R
  267. PPU_STAGE_WROTE:    ;写入STAGE字模
    - s7 x) g6 y: t! }* M! p' y
  268. LDA STAGE_DATA,X
    5 I- u# ?: c" ]+ I* X
  269. CMP #PPU_END    ;判断是否写入结束
      G: J! k3 m  w9 H8 K
  270. BEQ STAGE_CMP
      m( E5 G+ B9 f# u* e
  271. STA $20073 m- M6 d2 T" P% K
  272. INX# C2 p: T$ d# t; i! ?/ g" T& s
  273. BCC PPU_STAGE_WROTE
    2 z7 n  g2 M, A$ s9 T; u1 \
  274. STAGE_CMP:    ;选关操作! x8 s3 G' e$ `1 I
  275. LDA STAGE_TEMP
    1 o: E& i" v% {/ m7 O) u: E
  276. CMP #$FF    ;关卡数据初始化条件判断
    " j, q, a& y8 Y' b& e1 i
  277. BNE KEY_B
    / F0 A/ a, o7 G6 |) _
  278. LDA #$00! C2 N6 b3 P( ?. _& ~
  279. STA STAGE_TEMP    ;关卡数据初始化
    " v* U' y. O& {: z% i1 x
  280. KEY_B:    ;关卡减少
    / F) h+ ~1 a' T& ~( x+ f3 r* a
  281. LDA KEY_ADDR
    $ D: D5 j9 \! G- H8 g$ t0 G! H
  282. AND #BUTTON_DEC    ;按键B或左减关- t7 L- d9 b! [5 \4 h
  283. BEQ KEY_A
    : @* L' r4 f4 `5 n, V
  284. LDA #$FF, u- c1 M; s' a- r$ o
  285. STA TIME_LAY    ;重设标题延时& U; L' E3 _- B; @- y" ]
  286. LDA STAGE_TEMP
    9 Y' W9 s* {6 _( k+ Q% p
  287. CMP #$00    ;关卡比较7 n+ _9 L! N. c! f) r
  288. BEQ KEY_A
    1 n. B5 q$ n' k3 `: n# ~6 E
  289. DEC STAGE_TEMP   ;减关) p; {, X& W& ]. c/ m( l% P2 g3 t6 ^
  290. JSR MUSIC    ;按键音效0 Y- ]6 k3 s, y  J% {4 f1 q) ^( N
  291. KEY_A:    ;关卡增加" c$ R$ |  `3 V7 j1 S" R. o
  292. LDA KEY_ADDR
    " C# O% {/ O/ o  B/ r& }* }
  293. AND #BUTTON_INC    ;按键A或右加关/ W1 L6 N  a  [4 a
  294. BEQ PPU_NUM_WRITE9 Z* ?( Q/ i* p+ ~! z
  295. LDA #$FF
    ; X8 m& r) ~1 |0 I1 Y' l
  296. STA TIME_LAY    ;重设标题延时
    2 b5 ^4 v( ?/ a7 l! z! P! _
  297. LDA STAGE_TEMP1 b$ Z& i3 W/ d5 U, F
  298. CMP #STAGE_MAX    ;关卡比较0 ~4 R  e% y. B- p6 J
  299. BEQ PPU_NUM_WRITE
    % b0 R: D* ?. [+ v9 e% z
  300. INC STAGE_TEMP    ;加关' j  ~: E1 L: H9 F! X
  301. JSR MUSIC    ;按键音效
    7 W5 K/ _  }: o$ h  e
  302. PPU_NUM_WRITE:    ;关卡数字写入地址' W: y2 ]! Z; U. D8 ^* A+ C
  303. LDA #PPU_ADDR_H2 }7 |/ f3 p% n( H- y) U
  304. STA $2006    ;设置PPU数字写入高位地址8 C" b2 T. k+ p" C3 H. |
  305. LDA #PPU_ADDR_L* X2 c3 u9 x( h: p+ v  Q* H
  306. CLC7 S/ |  X, T7 j: b
  307. ADC #NUMBER_A
    ! j0 Z! D6 i9 Q# L
  308. STA $2006    ;设置PPU字符写入低位地址/ V0 E8 s) G! C( i! W
  309. LDA STAGE_TEMP
    * X3 V: ]) d& Z
  310. TAX% V3 ?" Q1 z% ]* m( P
  311. LDA STAGE_D1,X    ;写入数字
    # b# ?( l! Q& Y$ l( h0 ]
  312. STA $2007
    " Y% B  X1 D5 R1 |' R
  313. LDA #PPU_ADDR_H7 v( T2 v/ Q; s9 u6 w5 `& b
  314. STA $2006    ;设置PPU数字写入高位地址9 J' G/ x+ V4 M
  315. LDA #PPU_ADDR_L9 c9 C* Q" R1 j1 T9 j
  316. CLC& D- u4 p9 C% v
  317. ADC #NUMBER_B. |* Q* l: ?; y' \+ H5 w; Y4 i7 R& D
  318. STA $2006    ;设置PPU字符写入低位地址
    , G4 H, }, y/ @) Y
  319. LDA STAGE_TEMP
    % o7 P2 S; L7 j% {$ d+ S
  320. TAX
    " X& `5 H- i+ k# Y, n# J
  321. LDA STAGE_D2,X    ;写入数字/ o' C0 B; o+ J
  322. STA $2007
    ) \$ @$ `9 W. P+ a
  323. STAHE_WRITE:
    0 \2 }/ j; m( k
  324. LDA STAGE_TEMP( R' y% Z4 B  O: \
  325. STA $2D   ;初始关卡写入
    0 T! u7 {+ f1 |/ n
  326. PPU_RTS:    ;恢复数据
    0 j, s& Q& \  g8 ], {
  327. PLA6 g9 T# V' b. s: |! f
  328. TAY6 E8 `* V0 M1 |& m% ]# T' y
  329. PLA" ?  s' w+ B* Q3 Y$ t2 P: b
  330. TAX
    / @1 y0 {9 Z6 f* T: _
  331. PLA
    # m/ F5 k7 o3 c! {+ \& B9 u
  332. RTS
    % ?7 l# ~: A( b* L  x

  333. 1 X- D) k- j8 ^6 E) H; }) u" E* v
  334. STAGE_DATA:    ;关卡文字S,T,A,G,E,X,-,X字模数据% v% Y& N: I+ j
  335. .BYTE CHAR_S,CHAR_T,CHAR_A,CHAR_G,CHAR_E,CHAR_SPA,CHAR_SPA,CHAR_LIN,CHAR_SPA,CHAR_SPA,PPU_END
    / G& A. w6 H$ u8 B

  336. + Q; f* L& b' {( ]! X9 M) |
  337. STAGE_D1:   ;关卡数字
    , q; Q! f2 f% p6 z
  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  O+ i$ w7 G9 u8 E7 Z' h; y
  339. 5 q6 I' y5 Y( E% Z
  340. STAGE_D2:   ;场景数字
    ; }+ ]) u* q" X  f$ c/ ?+ s
  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. N# e7 H3 S1 z9 [, |
  342. : @1 O& h. O% o( j( q

  343. ( p* g1 u/ A8 F
  344. MUSIC:    ;按键音效: |, I$ V$ N$ `7 }3 ^& N
  345. LDA #$3B    ;音乐号
    ' ]+ ~: P' R! Y. j  L0 a- o' [
  346. JSR $919E    ;系统音乐调用: i6 s. L% ~; k' e- b
  347. RTS
复制代码
4.无敌锁定:   暂停后,按上键切换;
6 u* T' K* ?  r" w2 @! X' S* v: l    5.生命加满:   暂停后,按下键切换;$ ?7 ?) P6 p0 l/ `
    6.血量锁满:   暂停后,按右键切换;
3 s. O$ |: [3 U: }- t  ]2 e( Y
6 w! a- r$ v* n6 w( o, _$ v$ l  L' V* ^
) q- ^9 C; b5 i: x% Y- z# ~1 C) J( ~7 b% g  ^, V$ T
, j9 l; A* P) v% C. j, s

4 w2 X" s" C) HFlameCyclone.ys168.com2 _, C9 R% ^6 Y7 T' v
www.nesbbs.com
/ F" _8 _7 K' c2 d5 f8 a
游客,如果您要查看本帖隐藏内容请回复
: ^# U* `- q$ E1 i* Q8 k0 B

本帖子中包含更多资源

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

×

评分

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

使用道具 举报

签到天数: 2435 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 71 天

[LV.6]常住居民II

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

使用道具 举报

签到天数: 1342 天

[LV.10]以坛为家III

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

使用道具 举报

该用户从未签到

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

使用道具 举报

签到天数: 1767 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 3008 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 2138 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 1891 天

[LV.Master]伴坛终老

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

使用道具 举报

签到天数: 135 天

[LV.7]常住居民III

发表于 2017-4-1 11:35:44 | 显示全部楼层
老规矩,先回后下!!!!!!!
+ J2 z3 t3 m( T
回复

使用道具 举报

签到天数: 179 天

[LV.7]常住居民III

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

使用道具 举报

签到天数: 1579 天

[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, 2026-3-17 01:09

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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