EMU618社区

 找回密码
 立即注册
搜索
查看: 2652|回复: 57

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-31 14:40:49 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-2 13:23 编辑
$ y' I) D( x$ e) p2 t4 @; Z$ O) _) A; J3 Z& D3 K  g
[FC][忍者神龟3][END选关]7 h* ^' U0 F  I1 m) v" w

" F/ j# g0 |! Z6 ]/ c2 C$ c时间:2017.3.30
" u' y% @; Q! t. G; P) e* |作者:FlameCyclone- \4 P! F2 r4 H, N2 }' a# z
内容:
8 G/ h# {5 v- z8 U    1.关卡选择:   标题时,左或B减,右或A加;, k6 s& n' z, t0 Q( U1 \
    2.全屏击杀:   暂停后,按A键切换;( A8 Y: d% C/ S4 I+ H& K
    3.一击必杀:   暂停后,按B键切换;
  1. .ORG $FEA0
    6 v* n7 b% u3 r0 M2 U
  2. ora_data:: ~/ T) g) v% O; Q0 c
  3. .BYTE $08,$04,$02,$01,$80,$40,$20,$107 [4 [' T, e6 E* v% u
  4. and_data:
    ; B3 K1 q% J/ J& E: G- o
  5. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF8 Y( s  t- L( C0 w

  6. " g" E( t" S) v+ w; O
  7. button = $F8+ f6 [5 S2 M( t
  8. flag = $60000 h1 _% o/ Q% C+ W
  9. pause = $00459 o$ N. t! h, Y

  10. 2 [2 [% ~% B6 X6 l. a
  11. ' ]8 b7 I7 K5 W# |0 f
  12. .ORG $F90D' P, n4 W3 E4 ~5 y1 O7 q" O
  13. JSR $FEC06 W0 e# E9 L4 d
  14. ( e! f- U' Z% z0 C* |4 Z: L
  15. .ORG $FEC0
    , V* C6 p# |9 `! Z7 A
  16. STA $54,X( Z0 c( O2 k, o! p: m' [
  17. STY $FA,X
    , z7 s3 @/ H0 H9 ]5 ?2 m
  18. PHA/ T+ q& z! @5 ^' v3 K; e' j3 C- h
  19. TXA
    3 ^/ q* j" ]/ j' G
  20. PHA* w  _9 T% @/ l% [5 l
  21. TYA" x) Y, s' R7 Y4 y6 u1 G
  22. PHA
    5 U$ X8 r! O$ j8 c$ S6 d# l' ]
  23. JSR KEY_OPERATE7 p  e8 v- k' H( ]# ~" R# P
  24. JSR INV2 c* t4 e4 ?/ l+ U
  25. JSR LIFE/ X/ {+ B- A0 ?% t# Z, S6 ]6 {4 q" C
  26. JSR BLOOD& G( Y; D  |9 q+ H
  27. PLA% p1 U8 C# K/ F1 M
  28. TAY5 S+ U; u1 F) L. u
  29. PLA
    % z1 b- t5 V+ a0 J2 U
  30. TAX
    - J8 s+ u6 B8 @4 L
  31. PLA
    8 n" |0 n- b; @
  32. RTS" {1 A. L& k) L1 ?
  33. KEY_OPERATE:
    7 u4 Q) d8 U2 a1 B4 K3 q1 a
  34. data_protect:0 O& i3 K$ u  L. g# i7 o+ F
  35. PHA
    * G: x# h: ]1 M
  36. TXA
    1 c+ N4 w+ L# u
  37. PHA6 I, ~4 J# X0 i2 n7 {
  38. TYA
    : z3 M  [  l! ]2 l
  39. PHA
    1 m* Y3 U" s. V" r
  40. ) _) `: t/ V0 ?) `7 z$ Q, P, r1 U. G
  41. FLAG_CMP:+ g  {4 o% V  m1 y5 u& ^8 J- y
  42. LDA $600F
    & h. L+ m* G: C/ I0 ^: n8 F
  43. CMP #$7F    ;标志数据初始化条件判断& _- F4 \. G7 V# c, U5 J
  44. BEQ pause_cmp8 x4 l! W" y) b) m  z9 E
  45. LDA #$80: D. B5 X8 u. t+ Y" w* U
  46. STA $A001    ;6000-7FFF写入启用$ l$ @6 e4 k, @2 Z2 r% A& M
  47. LDA #$000 S/ c! n# [6 X2 O, d) W7 e
  48. STA $6000    ;数据初始化
    7 ?+ ~- r1 H- `
  49. STA $6001    ;数据初始化; o' ]3 o! ~! x- R
  50. LDA #$7F
    ( C# Z" ~) \( {! [0 Z0 U/ a4 q
  51. STA $600F" o3 r/ ?& ~( K; b
  52. pause_cmp:
    1 G, i( }- @3 R" X4 j  l/ ^" L/ f
  53. LDA pause
    4 D- I; _2 C2 F# ^$ f3 C
  54. CMP #$01
    7 ]; A. w) c  f0 ^! W: g1 G
  55. BEQ button_press% h0 D8 S) K7 f" |  E
  56. PLA
    ' G* |9 K% Q- G- p( R
  57. TAY2 K: T1 l+ f. O" g+ V5 _) s: b
  58. PLA2 d* k; ^- q& [' n  l
  59. TAX# {2 k" ]% r/ H2 B9 E5 }, g/ X5 v
  60. PLA, R$ \  X! ?- _3 r
  61. RTS: X* P; Y- O3 ^* X) b

  62. ) z) ?# ~, i& B; Q
  63. button_press:- g# }/ G5 g/ r9 r7 m
  64. ini_Y:
    # M. ?6 x; U3 K: i4 I+ H
  65. LDY #$00$ J3 E' p% q) X4 @
  66. button_cmp:
    0 `  r* j1 U2 @) l* Q! c2 O: W
  67. LDA button,X9 N; k/ y0 X. J# W8 S9 b2 V
  68. CMP ora_data,Y$ D' \. }+ d7 W7 T9 B! j  W' K0 x
  69. BNE count_Y_cmp
    9 B6 g; L% W, T0 p: |; u
  70. flag_cmp:
    - Z+ @; }( Y5 @, }8 j0 L3 N
  71. LDA flag,X
    ) U5 G$ }' s7 x5 i" Y
  72. AND ora_data,Y
    6 }7 `' p# n( R* ]4 N6 l
  73. BNE flag_and' b8 X6 d. z$ d8 d
  74. flag_ora:% A3 q  `, j" \! k
  75. LDA flag,X
    / |2 y+ v4 O6 h
  76. ORA ora_data,Y
    * c# A5 d0 U4 J  F5 |
  77. STA flag,X1 {- v: }" p1 i! N; m
  78. BNE count_Y_cmp8 ~$ J1 C: @5 r; Z
  79. flag_and:$ Z: j; `3 \0 d
  80. LDA flag,X  z6 o$ |; Q) b5 B" f- |+ E( W6 h
  81. AND and_data,Y0 f$ k; [* J) t+ V
  82. STA flag,X* D- q3 e) k9 h  \& U
  83. count_Y_cmp:' ~$ k) d3 K6 j' f% z  u" \
  84. INY
    - v, ~* U  ?; S! N% l. k
  85. CPY #$089 I! N. u2 Q) Q8 O9 I
  86. BCC button_cmp& @1 A' ?! v" p0 g. @2 C2 ]' R

  87. ) D! @! j+ G* t! Y
  88. data_extract:4 W  f+ F8 I5 N8 b, V
  89. PLA" u+ K* g' s) z  {
  90. TAY
    0 C8 p, H) A- g) k/ c6 h: X
  91. PLA
    # G( ?7 L9 L, y
  92. TAX7 F+ O& ?" @* {7 L( a- N* v
  93. PLA
    $ V5 U+ {  G& `

  94. % c& k* J4 s" a3 `0 V1 w6 q, L  ]
  95. return:
    , J6 W' s2 S, R  P3 F- V8 \- D& S
  96. RTS
    / v/ r! o2 E6 ^; Y# e
  97. ' ^+ z% D' A/ x; s# S* g

  98. 6 o. i$ ~. [8 p; q/ c
  99. INV:    ;无敌1 Q* ~" N0 ^. K$ i
  100. LDA $6000,X8 f' [, l0 y5 j% A1 p
  101. AND #$08  X0 I0 {' k" P( @7 F
  102. BEQ INV_RTS9 n$ v7 W9 C: G# w# |! f
  103. LDA #$050 e& h8 T8 ?. N8 n" p
  104. STA $04FF,X) i' N# y  o2 \: Z- K
  105. INV_RTS:
    & t$ y0 w2 J3 H
  106. RTS4 o$ O4 k. `7 A4 p3 q" g2 }

  107. . b% y7 v7 f$ s* X2 E1 Q

  108. 1 c6 W# g9 e! g& b- T4 A
  109. LIFE:    ;生命% c2 U# n* j* p, @; _
  110. LDA $6000,X3 `* E1 b! _$ q- |. k# [
  111. AND #$049 `) o6 h  B0 C, }0 V$ u1 ?) H  T
  112. BEQ LIFE_RTS
    " G' {+ o, A( @% d$ D* b
  113. LDA #$09
    / g8 \: i* q( A
  114. STA $6A,X
    . u. h- V+ s1 T3 X1 z3 @
  115. LIFE_RTS:8 r' k7 T8 H: r0 D+ g; P
  116. RTS
    9 Z1 p  y. e9 U6 q- j
  117. $ B  D+ N  E5 z( G5 B# Q

  118. / I8 M: O. B; N
  119. BLOOD:    ;血量
    . Q; \0 R3 S  ~* n
  120. LDA $6000,X% e; h' V0 B, |# r7 h6 E
  121. AND #$01
    ; k6 u. D  S2 N% A2 O
  122. BEQ BLOOD_RTS
    , }3 \8 J5 ?+ \6 ~$ I' e, W- v$ m0 C
  123. LDA #$7F
    , S4 z; U1 r! n' R
  124. STA $04F1,X
    . \3 }7 O0 S" W/ W0 v2 ~  n# \
  125. BLOOD_RTS:  I) J2 x5 I5 N# S% u% K
  126. RTS
    9 W' M; O. x1 f. T0 n
  127. 9 i  t# e; w  i4 @# z" W3 b

  128. : N+ H, d7 n5 t

  129.   Y% \/ Z( r! ]% W
  130. , O8 c) }) B# ?  l; e
  131. .ORG $D29F4 e8 G7 T& y3 R0 S
  132. JSR $FF80  q1 ~& M1 n1 f7 ]' J3 E; w

  133. , i) W1 W2 j# ]' j0 s
  134. .ORG $FF80
    $ M& S; P: N3 o6 E- {% c7 L$ o0 E: `
  135. KILLBOSS_BY_ONE    ;BOSS一击必杀
    - U4 b3 N$ T" @3 v4 G
  136. STA $06287 `0 D4 H: A8 t
  137. PHA7 k' Y# u7 e1 C; O* a9 R
  138. LDA $60003 d0 ^. l; z1 X; G
  139. AND #$40
    ' {1 _: Y# |. Y) |7 o
  140. BEQ ADDRFF8E0 U: i/ w2 ^' o$ p6 |" l
  141. PLA
    * q) R+ T( G6 e
  142. CLC   ;敌方死亡状态判定/ Y8 _$ I. X: E, m" y
  143. RTS* T; Q, K( B! }$ h" F& o
  144. ADDRFF8E:; }/ |1 t+ F$ V8 }
  145. PLA& z* y6 b9 a2 I* b! i/ h
  146. RTS
    $ q+ w! ?* u0 q7 O9 Q0 u( h
  147. ( ]4 n/ o+ t: y/ z" i+ q
  148. & H  h5 B- V, [/ s, c& j( O& @$ S
  149. .ORG $D1516 q! K0 v5 [  Y
  150. JMP $FFA0" o, E/ q1 R6 G3 ~- `3 Q

  151. 5 F/ `6 ?, C' F% T9 s
  152. .ORG $FFA0
    $ A# G8 H; f( c; V9 L
  153. KILL_BY_ONE:    ;杂兵一击必杀4 v% `' \' h: Z' o  ?! X
  154. STA $0621,X
    ! g- D6 B& L5 V. |) C& t" t
  155. LDA $6000
    - B% j5 c! l* c) G* a" o, g
  156. AND #$40
    ( f% ?$ r* r& L
  157. BEQ ADDRFFAD4 x* ?8 m4 M6 v& M9 K) K
  158. JMP $D19A   ;敌方死亡程序跳转
    & t" E2 M6 x* M/ }, X3 M
  159. ADDRFFAD:8 @* m8 g' N# f& ?+ D: P! Y
  160. JMP $D154
    6 d  ^3 v" g3 b7 ]- g0 S; s1 w- Q1 j" m
  161. ( U, f3 r9 {9 O3 Y9 w
  162. 3 i3 Q4 ?  @. ~* C' s
  163. .ORG $A7F6
    2 [7 a$ ~2 ]( U% q9 Z
  164. JSR $FFB0
    3 {( y$ T7 B; U2 q
  165. ' z. f6 q2 {" y$ x- d3 D, a! k$ Z! k5 C
  166. .ORG $FFB0    ;全屏攻击+ s( ?6 g5 ~2 \9 C9 W7 E/ c5 f
  167. PHA$ ~' ]& U8 ?+ g" K6 W/ H
  168. LDA $6000
    ' P% E! I$ F& |* Q0 }1 e: P+ z2 v
  169. AND #$80
    1 b  C& z' a/ P
  170. BNE ADDRFFBD, j3 k. i( u9 k* O
  171. PLA+ d  u* J& Q. M" o$ ]/ r' `/ D
  172. LDA $0015% s, y5 v7 {2 v
  173. SEC
    5 _" ^" g. }( a1 `* z
  174. RTS
    2 j( I4 R' e7 z) U8 D9 B/ @
  175. ADDRFFBD:
    7 Y, _% I& u6 u8 P9 |) T
  176. PLA8 d6 _; o* f7 ?, h7 b
  177. JMP $A826
    2 F  A$ g" F/ h' P

  178. ) \8 `+ B: \3 Z6 I8 {

  179. 6 g: r( N" U' D7 B* r- o& }, w7 x
  180. : d6 A9 J* x9 V- v# H
  181. .ORG $AA6A
    5 C7 Y8 L" M! t) p8 X8 R4 U% K6 N! k
  182. JMP $FFD0
    $ b& y5 P  \2 y$ c  n6 l5 o& w) R1 f5 M
  183. ( e- r* \# {+ K% D& d* U
  184. .ORG $FFD0    ;敌兵动作忽略; X9 b  v# M3 W( @
  185. PHA  n6 o, z+ g% r
  186. LDA $6000
    ( t4 p$ l9 W+ N9 F; f
  187. AND #$803 I: c& S6 H. J* ]
  188. BEQ ADDRFFDC
    7 W! d! x7 H: ?) {" y# f1 z
  189. PLA/ h, l' D: E5 w, u
  190. JMP $AA726 \3 H5 t- `3 f% f
  191. ADDRFFDC:4 ?. h+ b4 u5 S( i, z* c2 J" s! S
  192. PLA
    1 @; Y0 D/ j9 R4 ?
  193. LDA $0629,X5 ~; z7 M7 C0 e( C7 z& N1 X7 M
  194. JMP $AA6D
    , w" h2 s: B* t9 d  ]8 ~
  195. 3 p" z; t& ?( z9 G$ [/ o
  196. ;[FC][忍者神龟3代标题选关程序]
    . c3 M& ~, w1 p) d; C' w
  197. ;作者:FlameCyclone 2017.4.1
      J5 \4 n4 F0 `  R" y$ N

  198.   D# y5 {9 [9 k- \7 ^: p

  199. . }7 S  ~- z4 q- M
  200. ;配置数据
    6 w* h. c. U# T) a; p  P
  201. KEY_ADDR = $F8    ;按键地址
    $ w4 N2 P/ u4 \# _, `+ U) m
  202. STAGE_TEMP = $6010    ;关卡临时地址
    # p" X; \7 g8 g2 H+ }4 a
  203. STAGE_MAX = $0E    ;最大关卡数
    8 h9 C+ b$ v% t0 O: r0 ~  Y" {% t1 Z
  204. TITLE_A = $20    ;标题条件A
    9 z& U: }5 J$ x
  205. TITLE_A_ON = $02    ;标题条件A有效状态判定
    % ]$ p9 O/ O( d& Q( Q0 b8 M
  206. TITLE_B = $21    ;标题条件B
    7 K- P$ Z% {, I5 {9 }) ^  G
  207. TITLE_B_ON = $03    ;标题条件B有效状态判定
    ; x( T! u- d1 x2 F
  208. PPU_END = $FF    ;PPU结束符- i& C4 g7 `$ `- s
  209. TIME_LAY = $4A    ;标题显示延时地址: r7 b2 {, _  A4 c& `5 u/ z
  210. BUTTON_DEC = $42    ;关卡减少按键
    + T1 Y5 a  s+ [7 R) p  @
  211. BUTTON_INC = $81    ;关卡增加按键# L- h3 p0 Q4 T4 U3 o7 k4 ~
  212. NUMBER_A = $06    ;数字A距离STAGE偏移量
    1 s7 E- b  [" {- v( [
  213. NUMBER_B = $08    ;数字B距离STAGE偏移量$ P1 ^! \0 Z5 I& `
  214. PPU_ADDR_H = $23    ;STAGE写入地址高位
    ' X/ N  o) C% l
  215. PPU_ADDR_L = $8C    ;STAGE写入地址低位
    , ^( A5 m% c" p
  216. CHAR_S = $A2    ;字符'S') w. m% [+ e1 w( o0 z
  217. CHAR_T = $A3    ;字符'T', {- e- N0 L$ ]/ T: ^- k
  218. CHAR_A = $90    ;字符'A'* e1 W$ l: d4 W" s% w& O$ D& e
  219. CHAR_G = $96    ;字符'G'
    " ?3 r- c$ \6 t$ J/ y; C+ m
  220. CHAR_E = $94    ;字符'E'
    + y8 c/ ]: C& g* }
  221. CHAR_SPA = $00    ;字符空格/ S1 X" T' f7 V' x! ^+ l
  222. CHAR_LIN = $AE    ;字符'-'
    : M6 i3 x+ m+ [/ U" I  `* h5 j
  223. CHAR_O = $9E    ;字符'o'  |: O  G9 V% {5 k6 @
  224. NUM_1 = $81    ;数字'1'$ `" W+ f; ?2 `7 }8 g" u
  225. NUM_2 = $82    ;数字'2'( A( I" J& V# z1 G/ [
  226. NUM_3 = $83    ;数字'3'6 s. S; J, p: r+ x
  227. NUM_4 = $84    ;数字'4'
    3 e8 A: B! ~- R: |& ^% `) G4 [$ }
  228. NUM_5 = $85    ;数字'5'5 S2 J- t; u2 p3 r+ g# k
  229. NUM_6 = $86    ;数字'6'2 w2 B! L: l  t
  230. NUM_7 = $87    ;数字'7'% J, c4 Z# z2 \3 R  V6 j/ C; E
  231. NUM_8 = $88    ;数字'8'
    ( z( m2 V" x" I$ m! s- T$ R
  232. NUM_9 = $89    ;数字'9'/ R/ B, K0 q: F0 g) ?+ {3 q9 H( z
  233. NUM_0 = $80    ;数字'0'
    2 S: ^( `0 R# F! N
  234. - a; R  z8 j+ E0 F
  235. .ORG $F82A
    $ \  R4 a% _) _  r" h
  236. JSR $E700! E& d( W& e8 T9 D! R: N0 R+ j
  237. 6 u* x. A- |* v( Z

  238. ! _! U# C# N4 E! h
  239. .ORG $E7006 U% W3 i$ t, E- t. ?+ Z% k) T" U
  240.   & R. Q% P* D) K4 G
  241. STY $4014    ;补上覆盖的精灵写入指令
    8 Y0 U- F8 d1 r
  242. PROTECT_DATA:    ;数据保护. z' E/ j" L6 q- w6 Y' O/ ~
  243. PHA    ;数据保护开始; o, \4 X+ z+ E2 U) s8 y
  244. TXA8 Z  C9 G' q  z6 K$ @
  245. PHA
    8 H1 [# E1 J. B* F$ ?
  246. TYA" B. N& M6 Q( Z  S
  247. PHA    ;数据保护结束
    % O. g, t) h& V. S
  248. LDA TITLE_A
    & \: W0 ?$ B/ g5 H
  249. CMP #TITLE_A_ON    ;比较是否为标题画面5 v( H2 _, L; @9 P! E2 t
  250. BNE RET
    ! V2 I6 c) s+ c2 \$ c. c' ]/ T
  251. LDA TITLE_B" [$ \: b! K* R6 e1 o- s* r
  252. CMP #TITLE_B_ON    ;比较是否为标题画面
      ~$ ~# V' o& V2 ^: x
  253. BEQ PPU_STAGE- ^2 [9 v; I' M; M9 I
  254. RET:    ;恢复数据; I+ b& R: v% {# b
  255. PLA    ;恢复数据开始
    ! i/ Q0 d! Q3 ^5 z
  256. TAY7 O. O% f( b6 [) s
  257. PLA3 o1 R+ r3 n  M) X
  258. TAX
    0 f0 t9 I: A0 O% D' Z
  259. PLA    ;恢复数据结束
    3 \, B: C* u9 c6 l2 Y$ O
  260. RTS    ;返回
    8 S5 v7 f% l' ]5 f1 Q: F
  261. PPU_STAGE:    ;字符STAGE写入程序
    & c0 \2 X9 |, F1 K; `$ C
  262. LDA #PPU_ADDR_H
    . t8 Q+ i: \3 e/ k2 e% v. U
  263. STA $2006    ;设置PPU字符写入高位地址
    # A' ~( z4 J8 B. r( K5 @
  264. LDA #PPU_ADDR_L6 b- J* b3 e4 @8 m, K) S+ C3 v
  265. STA $2006    ;设置PPU字符写入低位地址
    4 ^3 q" l% W( U4 y! I' q
  266. LDX #$00$ f* _" ^$ g. ?# `: y: l5 w
  267. PPU_STAGE_WROTE:    ;写入STAGE字模+ b1 z8 Q) G. R/ `
  268. LDA STAGE_DATA,X
    + |8 B. @% r+ w  O1 T# ]" ?
  269. CMP #PPU_END    ;判断是否写入结束
    7 {& W( P/ ]) W8 c
  270. BEQ STAGE_CMP, A2 }" J9 R5 `9 U' y# A
  271. STA $2007
    1 x$ ]" \( b) k+ h( v7 c
  272. INX( S; T- h" D) H4 t+ V2 _
  273. BCC PPU_STAGE_WROTE& v1 h: e7 Q& G0 o7 Q2 ?
  274. STAGE_CMP:    ;选关操作
    ( A' f4 p. E$ i1 {) Z6 y- Z, Y6 Z; b; D
  275. LDA STAGE_TEMP
    ! M1 O7 D; c0 G; d+ b* ^3 }1 K- u1 y
  276. CMP #$FF    ;关卡数据初始化条件判断
    / o8 g6 O$ c! Y$ o) l6 _( S+ ~+ Y, M
  277. BNE KEY_B
    5 @8 _+ |! Y" s+ o8 J8 C/ i
  278. LDA #$003 t7 a% o& D# E+ D+ z3 M* \: {) ~' ?
  279. STA STAGE_TEMP    ;关卡数据初始化3 N, a' R. X  Q7 d9 P4 s" I
  280. KEY_B:    ;关卡减少; Q1 F2 X' A1 e, t- Q) ]. |
  281. LDA KEY_ADDR
    # @- X2 U, v) t$ O
  282. AND #BUTTON_DEC    ;按键B或左减关
    + y# X! N, x7 `# \" ^& I9 ]
  283. BEQ KEY_A
      A2 ~" g' A) J5 b3 A
  284. LDA #$FF
    8 ]9 |: l! X3 j$ i: X4 x) S
  285. STA TIME_LAY    ;重设标题延时
    ! y1 S  I  ]2 P* `- Q' N
  286. LDA STAGE_TEMP
    / }+ t& Q5 O+ h$ P. l( w
  287. CMP #$00    ;关卡比较
    , r% k% [* m* o' y) D' T6 v2 o
  288. BEQ KEY_A3 E) B+ s8 [4 a/ ^9 C
  289. DEC STAGE_TEMP   ;减关
      c# @: N# |4 }  P! B4 b7 I; S0 R
  290. JSR MUSIC    ;按键音效
    * o4 G2 i4 G1 T" m
  291. KEY_A:    ;关卡增加
    9 S- _. S7 k. ?5 B" w+ y
  292. LDA KEY_ADDR$ }/ }! H7 z8 [! g. I% z. A& |. D3 _
  293. AND #BUTTON_INC    ;按键A或右加关$ {( B4 R. c& @) V& G5 b3 S
  294. BEQ PPU_NUM_WRITE
    8 n+ n- {4 @9 J% F
  295. LDA #$FF
    / ^7 p; {9 E) `  G" w
  296. STA TIME_LAY    ;重设标题延时' V, }) ~( D$ }4 w. P! p' Q+ K
  297. LDA STAGE_TEMP; ?% u* }+ U% p
  298. CMP #STAGE_MAX    ;关卡比较
    : s+ H- i( J3 @( m; i/ c3 z
  299. BEQ PPU_NUM_WRITE" X+ K* x) a& e1 Y* b
  300. INC STAGE_TEMP    ;加关
    , W: V6 g/ k% I6 S' N7 h
  301. JSR MUSIC    ;按键音效8 X5 ~5 C  S/ J
  302. PPU_NUM_WRITE:    ;关卡数字写入地址
    0 ^# V' `, j1 Q; }3 m2 L0 `
  303. LDA #PPU_ADDR_H
    " ]" P- Y3 ]  W: V" U
  304. STA $2006    ;设置PPU数字写入高位地址
    * v" e* z# r5 R  h" }
  305. LDA #PPU_ADDR_L
    5 z/ X0 ~1 K( Y# P- Q( f2 Y
  306. CLC$ q% s5 s$ S8 ?( E* X4 w
  307. ADC #NUMBER_A
    2 r7 C; w1 q$ U! N# X
  308. STA $2006    ;设置PPU字符写入低位地址
    % d! u: b. X7 _" h; q
  309. LDA STAGE_TEMP3 N/ y& r, b' V$ u( J- j
  310. TAX
    ' ]4 w! e& f  y5 b
  311. LDA STAGE_D1,X    ;写入数字7 U  z# _$ y# Q/ [3 n
  312. STA $2007* r9 p* g4 ]5 z) v9 Q9 K+ [
  313. LDA #PPU_ADDR_H4 v. m% d8 D3 }4 N
  314. STA $2006    ;设置PPU数字写入高位地址7 j) ]& O, L$ L, ~% ]4 Q
  315. LDA #PPU_ADDR_L
    / g* B. o; J+ \
  316. CLC
    8 F1 G+ e3 R* ~/ S3 ]
  317. ADC #NUMBER_B$ Q, T  m! c; j( `  p( a
  318. STA $2006    ;设置PPU字符写入低位地址
    $ ?9 P# R! n6 A- ]4 I
  319. LDA STAGE_TEMP
    ) d1 h3 {1 O: ?7 A( g$ h: y
  320. TAX. T, v" D0 J) Q; U
  321. LDA STAGE_D2,X    ;写入数字0 C0 Y0 `* s1 S
  322. STA $2007
    " h/ D$ r0 R" s' C' H# {! C: ^! T
  323. STAHE_WRITE:
    # D2 o2 I( W) Y" L
  324. LDA STAGE_TEMP9 u! ^, c5 v* R- l
  325. STA $2D   ;初始关卡写入' a: k0 O3 Q0 p9 j4 m
  326. PPU_RTS:    ;恢复数据$ \& r! Q* Q) E% }. s; S
  327. PLA+ c3 r6 u4 Y  p1 X" t) Y6 {& y
  328. TAY+ v- k* R- r& x& {
  329. PLA3 b; T9 H0 x* p+ m
  330. TAX
    ; p5 e3 w0 ~& [: q8 Z
  331. PLA9 z0 o4 u& C/ e; ]' N" A
  332. RTS) m) f% G5 X' T

  333. 7 _* E% u( h3 b9 A5 ^- n
  334. STAGE_DATA:    ;关卡文字S,T,A,G,E,X,-,X字模数据
    # K3 `( f  S$ y: W  N  v' X
  335. .BYTE CHAR_S,CHAR_T,CHAR_A,CHAR_G,CHAR_E,CHAR_SPA,CHAR_SPA,CHAR_LIN,CHAR_SPA,CHAR_SPA,PPU_END
    7 m8 K/ `3 x8 A; U; j5 a( i( |8 m

  336. / u! _: ^: k' O1 e0 q2 e
  337. STAGE_D1:   ;关卡数字
    1 ]7 R. I  m6 r# O6 S1 o
  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
    0 `9 p8 l2 j/ J& V/ B

  339. * A- ?$ p9 f: U7 |! n
  340. STAGE_D2:   ;场景数字* Z' L" c" O$ c( {
  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
    2 }  ?: Z& r3 u+ X7 k
  342. 1 b7 P5 @+ V6 H0 q% h& ^

  343. + H, \7 R" [+ Y4 q$ w  ~6 j( h$ B
  344. MUSIC:    ;按键音效7 d/ U% X7 S+ ]: y  C$ |
  345. LDA #$3B    ;音乐号
    * {" h9 K5 T8 L4 \
  346. JSR $919E    ;系统音乐调用
    ) C4 s2 R  e+ d! s; a) w
  347. RTS
复制代码
4.无敌锁定:   暂停后,按上键切换;9 F4 S8 ~/ W! w( M0 x  t9 p: W
    5.生命加满:   暂停后,按下键切换;- R/ s1 B! \- l) R& ^
    6.血量锁满:   暂停后,按右键切换;( ?3 l; |: _* Z3 ?
" ]: i: O" L" I  u) r" l" ?

3 D6 J& V& [$ ?% ~
$ S- G, v6 H$ h
! w5 H  j% K3 S2 W0 F! D9 k  a* z9 b: z* D+ d3 ~1 Y0 ~3 F6 c# I- R$ D: U
FlameCyclone.ys168.com
& h6 j; v, ~6 k/ f& S% a$ fwww.nesbbs.com
% j7 c' O+ v4 ^7 G0 p2 H" R
游客,如果您要查看本帖隐藏内容请回复

" k5 @& H# H, B8 ^5 \. X& k

本帖子中包含更多资源

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

x

评分

1

查看全部评分

签到天数: 186 天

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

签到天数: 2384 天

[LV.Master]伴坛终老

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

签到天数: 71 天

[LV.6]常住居民II

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

签到天数: 1288 天

[LV.10]以坛为家III

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

该用户从未签到

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

签到天数: 1750 天

[LV.Master]伴坛终老

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

签到天数: 2953 天

[LV.Master]伴坛终老

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

签到天数: 2075 天

[LV.Master]伴坛终老

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

签到天数: 1829 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2017-4-1 11:35:44 | 显示全部楼层
老规矩,先回后下!!!!!!!
& x! u' Y% x0 }& t

签到天数: 179 天

[LV.7]常住居民III

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

签到天数: 1540 天

[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-1-19 11:49 , Processed in 1.109375 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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