EMU618社区

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

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

  [复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-3-31 14:40:49 | 显示全部楼层 |阅读模式
本帖最后由 yandagui 于 2017-4-2 13:23 编辑 / u4 `# v1 z# ^  Q
$ s( C- ~. ^" @) l% U4 A6 }
[FC][忍者神龟3][END选关]
+ k+ C8 D7 f/ B* N4 x( H1 U' _5 k7 ~
5 t6 u8 K0 W8 `* v时间:2017.3.30) @% a# Z0 z2 l* x! r0 |
作者:FlameCyclone
2 Y# c. I. f4 m内容:9 f8 I* }% e# X9 y0 l1 _# x- S
    1.关卡选择:   标题时,左或B减,右或A加;
0 r, z4 _/ {; z0 {    2.全屏击杀:   暂停后,按A键切换;* P0 i: l' b" s' k5 [) L4 B
    3.一击必杀:   暂停后,按B键切换;
  1. .ORG $FEA0
    1 V# l5 o) @$ }" j1 R2 Z. \
  2. ora_data:
    4 I# @" k1 c& ?
  3. .BYTE $08,$04,$02,$01,$80,$40,$20,$10
    ! M$ c+ J( G& s0 c1 ]( _6 N) P
  4. and_data:
    $ c9 T0 F" A9 m$ i3 m( I
  5. .BYTE $F7,$FB,$FD,$FE,$7F,$BF,$DF,$EF
    6 n; \( p8 P1 `' A  V

  6. ' C: o& l% r& U/ z% z
  7. button = $F8
    $ _# V& e) V/ g
  8. flag = $6000
    - c* L9 t! z' ]& W% G
  9. pause = $0045
    + N  |# }/ d* n( Y4 p
  10.   C( Q" d( b9 v6 N
  11. . z9 U5 J  q0 j, y2 Z! ^
  12. .ORG $F90D6 S7 i  o) P, q5 E2 K
  13. JSR $FEC0# ?9 L7 z8 _$ @) E
  14. - T: D; k; o/ s3 a
  15. .ORG $FEC0' C& U% q" @( A" W
  16. STA $54,X
    ) V4 m& [5 g+ N# |' l% k- f
  17. STY $FA,X/ `# O0 G* e5 y
  18. PHA
    / M) q4 _, S4 ~& Z2 `! n; H
  19. TXA9 r* e( a; y1 U# e/ a9 a
  20. PHA- t/ b6 }+ Q/ _. p" U* \/ E
  21. TYA7 d9 _$ k+ H% O! {% m
  22. PHA4 _) i1 k9 o% L3 j
  23. JSR KEY_OPERATE
    / T) [; Z. }" q; R, }+ q
  24. JSR INV
    ; z0 v' U1 w- l0 ?+ @# O+ H- K
  25. JSR LIFE
    ; g: s" H$ y7 W" {
  26. JSR BLOOD
    ! ?( r' i# {0 ^( E9 T
  27. PLA) l6 d1 L1 o' ^+ j. b' Q
  28. TAY
    " J9 w% Y+ P& V- g- a
  29. PLA
    0 w3 i& P' \! b/ R7 X  O3 [0 L) q
  30. TAX
    & a$ |( j! u1 o  `- y, S
  31. PLA
    * [+ `$ j+ B4 L9 z
  32. RTS
    5 l1 k5 B6 s3 T/ X7 O
  33. KEY_OPERATE:
    0 a  i# z. }4 X
  34. data_protect:
    8 s& K* g% }3 b4 S
  35. PHA+ |" K( t+ [: z8 u8 X8 z  n5 l
  36. TXA
    , \4 @. L1 {- }# e
  37. PHA( N) g8 d! D" a7 m1 E$ b
  38. TYA
    $ e5 E3 ~8 u+ ~; J6 e
  39. PHA
    + n! s* w1 s5 ^- d; x) C

  40. : K5 e0 S' K  ~( V  K+ c. A, s* f
  41. FLAG_CMP:
    ; T8 T( K1 }# R$ p1 ]$ u! C
  42. LDA $600F, W* E" U; [  }- ]
  43. CMP #$7F    ;标志数据初始化条件判断
    6 y! T  ?8 s8 ]7 r7 I
  44. BEQ pause_cmp: n/ ^( Z7 f! r+ Q" E
  45. LDA #$80
    2 ]& @: y8 ^6 [
  46. STA $A001    ;6000-7FFF写入启用
    1 L6 v+ S  M. c* j
  47. LDA #$003 U% C9 |9 `8 |+ T1 \
  48. STA $6000    ;数据初始化5 ?+ a( ^9 E$ ?9 A* f' ~
  49. STA $6001    ;数据初始化2 t$ s) a0 C) K' Z
  50. LDA #$7F
    ' Y+ y' ?3 D' K8 n4 d1 G
  51. STA $600F
    6 S0 z3 d' l8 z: l5 N: u4 }
  52. pause_cmp:
    % }/ X' U, S2 `
  53. LDA pause
    * K! {# v5 ]& l- F+ c
  54. CMP #$01( n$ b: x& }. H# v& x; `: T% l
  55. BEQ button_press
    $ l  w- d+ e0 s& l! x+ W
  56. PLA/ u( q2 d9 U3 ?
  57. TAY
    ' \+ H& p) {* @) {6 v3 C" h3 F
  58. PLA! F5 P3 U" E* c! i0 J
  59. TAX
    7 ^; y4 A/ A! [: x; K  C$ e
  60. PLA7 W0 R, q3 p2 s6 F3 U0 P$ k$ `
  61. RTS- z0 n$ n& e1 S5 P) Z
  62. ( [8 X6 t  Y; n1 v: Y
  63. button_press:
    4 y; g* U4 {  \& M
  64. ini_Y:
    * r5 }9 |5 V* B5 U
  65. LDY #$004 y2 _9 x. E) t' M4 f& y# X) ~7 F
  66. button_cmp:6 A/ {' Y; [3 W  |1 }
  67. LDA button,X
    ' w8 M& m6 A$ x+ k, w' n
  68. CMP ora_data,Y3 _* F6 x$ S2 y, H& k+ v
  69. BNE count_Y_cmp2 j. }% p* Z) ^% B8 I, F) u1 N
  70. flag_cmp:
    ! c) S3 H$ H4 Z0 Z7 A4 N$ s
  71. LDA flag,X
    # n- V3 \5 Y* I! I( w+ w
  72. AND ora_data,Y" W3 w) g2 ^9 l+ O) V  J
  73. BNE flag_and) S$ P: E3 P( a& K
  74. flag_ora:
    2 [+ H2 }3 e; _# [0 B& o
  75. LDA flag,X, d+ k1 t- O2 A. @
  76. ORA ora_data,Y" J+ Y  |4 G+ J# H
  77. STA flag,X7 z/ Z* S$ u( x! _7 \9 k
  78. BNE count_Y_cmp
    / _" z/ T' S7 @  Z: d- R# Q+ |
  79. flag_and:+ G- t8 Y" y( |! M
  80. LDA flag,X: b5 T8 Q# g' X+ b, J7 R
  81. AND and_data,Y
    " M8 x3 S- M7 W4 I
  82. STA flag,X( X8 g  K1 x/ p3 m% Y2 i- [
  83. count_Y_cmp:# ~2 E( w4 a7 f( o
  84. INY
    ; R0 g3 U/ P% I# D2 E
  85. CPY #$08
    - `* a7 Y* k/ y( Y6 O+ H
  86. BCC button_cmp
    ; }  l/ c: \: ?& A1 L9 z; ^
  87. : P) m. e1 x6 ?; |; q1 O
  88. data_extract:7 f2 r' V' M7 D1 Y* e
  89. PLA
    7 S# `  m) r9 j  b
  90. TAY
    ; n' b  r! i; `2 V" e
  91. PLA
    5 \9 B5 ?8 o) j" L1 f2 R; y, c2 A
  92. TAX
    0 g2 G$ f, F( Q
  93. PLA
    # u$ }0 N4 U; b9 L

  94. * L+ B+ w1 m8 [4 g$ l+ P
  95. return:: e6 P  |+ Z7 V+ `" V5 P, d4 \
  96. RTS
    " `1 z2 u, q, g1 ]+ y+ j' l' c
  97. ) Y! F2 f# e9 N/ `2 t2 G
  98. " I, x0 G) ?$ C' y& g& \& h( Z2 H
  99. INV:    ;无敌
    1 c$ o) }0 x7 G0 ~" ]
  100. LDA $6000,X
    ( R- s6 b3 x/ k3 r  x. [+ ~8 q5 P: X
  101. AND #$08. ]. J8 V' U! G" D; L
  102. BEQ INV_RTS
    ! w  R2 u- M  l# R. g
  103. LDA #$05
    , x  [" B7 J+ r4 K3 v. A5 N
  104. STA $04FF,X
    & T! i; j1 M3 c, x
  105. INV_RTS:
    * q, E5 I; j* Z3 z% I* |. _
  106. RTS7 \' h& f8 N% [+ _: C+ `- ^+ b

  107. 3 {( m5 y- {/ j; v' u- O% Y

  108. 1 t2 |, @5 r- R  F9 H/ R
  109. LIFE:    ;生命& i, w. P+ ?! a1 `
  110. LDA $6000,X
    / y  n5 V" s1 i) T$ ]1 i/ K
  111. AND #$04
    ) t$ k) Z5 g  J# \, C
  112. BEQ LIFE_RTS
    * M, |/ o3 t8 [% W' i
  113. LDA #$09) F: n. ^' K2 F; G) D
  114. STA $6A,X, {7 M1 @9 A0 y2 u& |
  115. LIFE_RTS:
    $ [, J6 @* g4 V& e0 s
  116. RTS' I! }: \# [8 Q4 k' X' |- v. j7 o
  117. & ~9 o- b6 H1 G$ g) }

  118. ( t4 p$ V, B" F- z9 e- B- T+ @
  119. BLOOD:    ;血量3 R- ]* W& F) g: ?0 o5 q9 X
  120. LDA $6000,X
    6 E! r0 n0 Y2 o0 e" j
  121. AND #$01% v& Q3 n3 y3 r" x: n
  122. BEQ BLOOD_RTS1 E; O" r' S0 L/ W
  123. LDA #$7F. @+ z0 h5 W7 P+ `7 |, A
  124. STA $04F1,X3 O# A$ ]! h5 z& f4 U0 e
  125. BLOOD_RTS:! Z/ x8 b, D: g* E9 I, B
  126. RTS: ?0 a' i1 a7 ~/ J! o, ]2 D  o0 \
  127. : r) j  \6 R& A' b

  128. 7 g  c# L6 L) N" r1 h1 t
  129. 4 Y' Q2 o, D6 }' P4 }

  130. 6 K# U! L% x' H4 G
  131. .ORG $D29F5 j3 @) {0 S% A' b" E- Q
  132. JSR $FF80% C, i% z" {' O  g: v, b' d
  133. 7 T9 ~3 E4 y# Y1 Q- R2 }# Q! j
  134. .ORG $FF808 H  ]8 N) ?. G! T/ E
  135. KILLBOSS_BY_ONE    ;BOSS一击必杀2 m* V9 S9 l* B9 A% [
  136. STA $06287 @$ Y5 r$ e+ e! T% W7 h1 i
  137. PHA
    8 n; G, [1 s- y$ R$ o( C" b
  138. LDA $6000
    2 v& u! Y/ O8 `( @3 e" i6 H6 R
  139. AND #$406 N/ H; L% M) i, M. M) L( O8 J
  140. BEQ ADDRFF8E
    3 a& _/ s' }/ h8 M
  141. PLA3 r  k9 W  D2 M$ u* V
  142. CLC   ;敌方死亡状态判定
    # d. k. e6 ~. s7 A. b2 L% [
  143. RTS
    . d2 ?* Z: z# }
  144. ADDRFF8E:
    3 @: c( U' v: O, Z/ r2 B
  145. PLA
    ; G8 h! x" e2 ~2 S% S1 ?- m
  146. RTS' h3 J" o0 ?3 o# i

  147. 5 m, K% r9 i$ F# P- f+ l: `$ Q& J; z

  148. & O' h- J; Q4 d! L8 c
  149. .ORG $D151
      M5 w. g4 m$ B9 I+ D* \/ a' ]/ I
  150. JMP $FFA0/ v2 Z, y* N! v% {& e& }7 q
  151.   U* A4 P) ~, r$ C- X+ ^
  152. .ORG $FFA0( P: i% y  M3 C
  153. KILL_BY_ONE:    ;杂兵一击必杀
    0 O, x' K6 n( w5 p
  154. STA $0621,X$ N' ]3 x9 q& K
  155. LDA $6000
    2 b$ o$ n9 X0 }( a: w2 y' i$ W
  156. AND #$40
    ' o1 i7 {3 ~( S# M0 r6 }
  157. BEQ ADDRFFAD
    0 K- S3 {0 e- U
  158. JMP $D19A   ;敌方死亡程序跳转, X, c2 r9 n, J! D$ b: c3 p
  159. ADDRFFAD:: y# Z9 C1 G( F; C! X
  160. JMP $D154' W9 [  _& m, X
  161. 5 d, q# S, Q; @* I/ A

  162. " ]! v9 ~! R7 v
  163. .ORG $A7F6
    9 z/ k( J. s& a$ j
  164. JSR $FFB0
    & X% O. A1 N8 w" J" s$ d8 ^  O

  165. / x$ P: Q' [* q) o, B0 F. I
  166. .ORG $FFB0    ;全屏攻击
    6 u6 z/ l9 p6 K2 F) ]
  167. PHA& E5 A$ B8 {& v( i5 _7 i1 V3 g
  168. LDA $6000
    ' H; n5 s, h% H4 P4 o* h& \: ?
  169. AND #$808 N* a5 J( L6 I0 x# @7 e$ {
  170. BNE ADDRFFBD6 X2 w1 C. R- @# D+ y# U6 Z
  171. PLA9 ], k0 L/ b- S. F+ h& S4 d( R- b+ Q
  172. LDA $0015/ |2 i, q5 M# X4 m5 Q
  173. SEC
    , {7 V5 i: b; ~& }1 `
  174. RTS
    & m4 ^/ }1 o7 r0 z' h
  175. ADDRFFBD:7 S; e* t  ^- {- E
  176. PLA
    2 E5 e! o+ u3 Z5 y
  177. JMP $A826
    0 _& e& m! x) ~

  178.   W$ t6 k8 ]* o: ]! Z* }/ [
  179. * ]9 ?$ l( I0 D* ~, i2 d
  180. % G$ a4 y  N. ?& L2 g  B* g/ [
  181. .ORG $AA6A$ q. k4 g" q# v7 g; {
  182. JMP $FFD0
    / Q4 @7 T; m5 E4 V
  183.   ~8 t# r% p, L2 c% P4 D3 C
  184. .ORG $FFD0    ;敌兵动作忽略8 M  |: Z9 h( B/ f- d
  185. PHA
    " P4 f1 h) b' d- f
  186. LDA $6000
    5 C6 h* U3 l! E3 y+ X; B: B
  187. AND #$80
    5 z/ G1 _* ~6 Q
  188. BEQ ADDRFFDC
    4 u+ ?" `: m$ W
  189. PLA' ^( @8 W7 a' r9 Q- ?# F4 e
  190. JMP $AA72
    ! W4 C4 _' X, L6 F* j8 }& D
  191. ADDRFFDC:
    & ?. m  \6 C6 w7 O5 W
  192. PLA# t; m, X0 v4 I/ h# h" G4 ^2 _, d
  193. LDA $0629,X3 W4 l& h4 c2 A- D
  194. JMP $AA6D) y- _- `7 N) A3 n

  195. + z+ G/ u* E4 K: h7 z5 t- r: L) i
  196. ;[FC][忍者神龟3代标题选关程序]
    3 u0 B/ }4 g. z0 K0 c
  197. ;作者:FlameCyclone 2017.4.1% x; b& h; Q8 f3 R
  198. - v! b! i, @4 S# b) h5 Q+ t
  199. ! x( f& E. `" ~3 c9 y2 D
  200. ;配置数据4 _. Y/ t' o) h* {" _' r! x2 @) N
  201. KEY_ADDR = $F8    ;按键地址3 K4 }) n& [" s! L
  202. STAGE_TEMP = $6010    ;关卡临时地址
    % i. j9 r4 F8 u  G3 f
  203. STAGE_MAX = $0E    ;最大关卡数+ t: I' l# c2 k( m+ H1 L% c7 \- z
  204. TITLE_A = $20    ;标题条件A' K9 [: D/ f. d4 E4 X, X
  205. TITLE_A_ON = $02    ;标题条件A有效状态判定/ ]" `0 }( h- H3 t2 C) Y5 K6 D
  206. TITLE_B = $21    ;标题条件B
    ) [, w+ B6 b( z8 p/ C/ ^" R
  207. TITLE_B_ON = $03    ;标题条件B有效状态判定# ]0 m4 }- r1 w" n
  208. PPU_END = $FF    ;PPU结束符+ \( Q, I: D: j/ O$ m; X
  209. TIME_LAY = $4A    ;标题显示延时地址
    " t9 B, Q3 ?/ h
  210. BUTTON_DEC = $42    ;关卡减少按键; r7 g+ j4 P4 s* B) f, m$ a$ u
  211. BUTTON_INC = $81    ;关卡增加按键  O# |, V+ t3 T9 U
  212. NUMBER_A = $06    ;数字A距离STAGE偏移量# N5 M' j8 ?- J5 T
  213. NUMBER_B = $08    ;数字B距离STAGE偏移量
    ; ?( V, T6 i: P4 C+ A8 \+ Q( W
  214. PPU_ADDR_H = $23    ;STAGE写入地址高位8 F0 |* ~+ U/ F4 _  b
  215. PPU_ADDR_L = $8C    ;STAGE写入地址低位
    ! m* }5 S' K" Y- K4 H* k* f# H
  216. CHAR_S = $A2    ;字符'S'- I9 B& c0 A0 C
  217. CHAR_T = $A3    ;字符'T'
    + `0 d0 L0 w- Z. N
  218. CHAR_A = $90    ;字符'A'
      N' c7 `- Z( @% _2 S! q1 k( l
  219. CHAR_G = $96    ;字符'G'+ g) h- ]8 d: `; u
  220. CHAR_E = $94    ;字符'E'
    7 S( s$ l/ I( a6 N; w8 {2 t
  221. CHAR_SPA = $00    ;字符空格% c' t2 b9 k+ _
  222. CHAR_LIN = $AE    ;字符'-'
    2 i$ o3 M+ }2 j* E
  223. CHAR_O = $9E    ;字符'o'
    ) p9 {6 \- Q8 q2 S$ r! O1 c
  224. NUM_1 = $81    ;数字'1'
    . t+ s9 N$ X7 E7 `; r6 ~) t
  225. NUM_2 = $82    ;数字'2'
    0 `1 j" N. E* I- H8 T( b
  226. NUM_3 = $83    ;数字'3'. `- R) Z5 ?. X5 K
  227. NUM_4 = $84    ;数字'4'
    : t, p% A. J# b3 k# X
  228. NUM_5 = $85    ;数字'5'
    " ^/ J3 g* B) M9 o1 B' u, m+ Q
  229. NUM_6 = $86    ;数字'6'
    8 T" ^5 V/ p. \
  230. NUM_7 = $87    ;数字'7'$ H: z7 `3 c! u' i, C1 z7 Z) B
  231. NUM_8 = $88    ;数字'8'
    $ P) g% e  \2 D7 W$ I
  232. NUM_9 = $89    ;数字'9'- O. H0 f+ H, o: y( c
  233. NUM_0 = $80    ;数字'0'
    + b& Z- f% B) g7 o6 {

  234. # s: @2 j; F/ ?
  235. .ORG $F82A7 }& _# J) ~, k- o* I! L
  236. JSR $E700
    $ q  L4 |3 j2 r- r% x3 E

  237. / L& d4 P# g: @& ~

  238. 9 U& r8 v7 z! ?" X' r3 H
  239. .ORG $E700
    $ B$ ]3 Y- {2 X
  240.   : I! j* j5 @$ `
  241. STY $4014    ;补上覆盖的精灵写入指令0 J4 y- R3 ?9 i
  242. PROTECT_DATA:    ;数据保护) L* o# y  q0 v) B, I) i
  243. PHA    ;数据保护开始, b* e; f1 o! ^2 o8 \8 s
  244. TXA
    1 T. _; t" |% K  Y% G+ P' ?: F
  245. PHA6 x# r) a& `; a
  246. TYA1 z+ J/ i  H& R+ o0 i
  247. PHA    ;数据保护结束/ u4 r7 I! z$ I3 w8 H
  248. LDA TITLE_A
      @4 ^3 n9 b+ P3 ]% A  G) E/ {7 z
  249. CMP #TITLE_A_ON    ;比较是否为标题画面
    . e7 @; j2 l& w, L
  250. BNE RET- t; n+ |, y5 P( E( \% X
  251. LDA TITLE_B
    + ?: |" d3 l6 |! X6 L
  252. CMP #TITLE_B_ON    ;比较是否为标题画面  e4 L$ ^/ ~7 z9 P
  253. BEQ PPU_STAGE
    $ ?& E, u/ H  O4 C- ]
  254. RET:    ;恢复数据
    , Q8 h( i# }/ ?; b- i# ~- B' |
  255. PLA    ;恢复数据开始: U* d7 l$ S2 s. d# P+ }6 f
  256. TAY. b% A* B6 d( T& \3 W; I
  257. PLA
    7 r. i2 M8 g" G6 w8 s
  258. TAX
    7 Q. f, {1 N( _, u+ r
  259. PLA    ;恢复数据结束& P( t# p- z: a
  260. RTS    ;返回
    : K: R9 N6 D8 P0 ]
  261. PPU_STAGE:    ;字符STAGE写入程序
    9 V& ]$ n! ]8 G! p' {8 a
  262. LDA #PPU_ADDR_H
    % }" ^- f" a1 L; ^# i  O
  263. STA $2006    ;设置PPU字符写入高位地址' s0 {: q' T; Z& r& v
  264. LDA #PPU_ADDR_L5 I  y; C: O- B' {2 m" {2 h( A! L6 t
  265. STA $2006    ;设置PPU字符写入低位地址
    6 j# l1 P) C' p: T$ z8 n( F7 O8 ^
  266. LDX #$00
    1 j+ ?. F, U# d( w4 g
  267. PPU_STAGE_WROTE:    ;写入STAGE字模
    & e. G2 N. x& Q$ p$ V
  268. LDA STAGE_DATA,X! A2 i$ p# v) r. M* x
  269. CMP #PPU_END    ;判断是否写入结束
    : N/ d0 H5 {7 c" r% a7 A/ p
  270. BEQ STAGE_CMP- V# G8 b3 `1 ^# b
  271. STA $2007+ Z1 ^! q: ]7 p0 F9 |, l
  272. INX
    4 H( ?  F* T' \$ L: y) H7 t
  273. BCC PPU_STAGE_WROTE3 V# q( a2 G/ }
  274. STAGE_CMP:    ;选关操作' o1 _' i. `# T! i- n9 d' A
  275. LDA STAGE_TEMP' _! a6 G" n5 P& W7 d! @
  276. CMP #$FF    ;关卡数据初始化条件判断
    - N! }; l7 W7 A. I+ S' o( y4 T
  277. BNE KEY_B1 ]+ x/ s* f! u/ U& A
  278. LDA #$00
    4 x  W. u7 P7 I9 i
  279. STA STAGE_TEMP    ;关卡数据初始化5 W2 t+ [- y& b- C6 v
  280. KEY_B:    ;关卡减少( q/ }6 q# v6 a, G* A, g) h
  281. LDA KEY_ADDR5 e: V+ z$ H+ Y" T4 U
  282. AND #BUTTON_DEC    ;按键B或左减关5 N0 ]' _7 N  T5 B  G
  283. BEQ KEY_A, L; A6 w) y( `* X% ~1 ]. N$ c
  284. LDA #$FF
    5 y/ v7 r8 c$ n# Z) n
  285. STA TIME_LAY    ;重设标题延时
      `0 n- B9 E% s: C/ ]" T
  286. LDA STAGE_TEMP
    % l# v! D; l  i" k0 j" f' y
  287. CMP #$00    ;关卡比较: X, R. h6 u* n$ w* Y% U- D: J
  288. BEQ KEY_A
    7 Q% N) k; G6 e( U; m% j  ?6 c$ C, D! }
  289. DEC STAGE_TEMP   ;减关
    % f2 N* m* p# N6 a* a2 m8 O; [: U
  290. JSR MUSIC    ;按键音效8 u8 t+ I) I: e& j6 @
  291. KEY_A:    ;关卡增加9 I: T, ^8 d* T
  292. LDA KEY_ADDR* X$ e2 }! W, [0 @! C- X; d; v
  293. AND #BUTTON_INC    ;按键A或右加关& Y* H% P4 z- x; Y7 \' X+ G9 |, ]
  294. BEQ PPU_NUM_WRITE
      l6 Q- B1 H7 a6 b& w. c1 ]' ?
  295. LDA #$FF
      w( h9 q& X7 \' g8 e; {6 j( j
  296. STA TIME_LAY    ;重设标题延时8 H7 W% b, c% H- ^& `# G
  297. LDA STAGE_TEMP
    6 x) O8 O. ~  C* j7 f
  298. CMP #STAGE_MAX    ;关卡比较
    * l) a. u% Z& E7 i# M# H/ ?! O8 M6 C
  299. BEQ PPU_NUM_WRITE' A! Z; |% Y+ u) `/ H  l
  300. INC STAGE_TEMP    ;加关; Q6 q- l4 C7 G4 p
  301. JSR MUSIC    ;按键音效# P+ h6 f6 H0 T+ E
  302. PPU_NUM_WRITE:    ;关卡数字写入地址
    2 d( N$ j! w! G# R$ \' W+ Y! C, ~
  303. LDA #PPU_ADDR_H
    ! K6 a2 [0 ~& V
  304. STA $2006    ;设置PPU数字写入高位地址- n5 w  E/ X0 G& i8 O1 G
  305. LDA #PPU_ADDR_L; \* n0 w2 Q. z+ h3 {
  306. CLC9 W. g  r0 ]1 g. R
  307. ADC #NUMBER_A, t% ?1 o  G8 a( I. h7 v
  308. STA $2006    ;设置PPU字符写入低位地址
    + h. J3 j" L4 K! Q9 Z
  309. LDA STAGE_TEMP
    ; ^  N% p" t( e# X7 Q* u6 M
  310. TAX* b6 @% l; {" }$ h2 i2 ^
  311. LDA STAGE_D1,X    ;写入数字- j1 I( B0 [6 _) g0 j
  312. STA $2007
    % y) ]' T) {, a
  313. LDA #PPU_ADDR_H
    4 _, C" b2 G& E' r4 \: O- M) T& C
  314. STA $2006    ;设置PPU数字写入高位地址
    3 V3 p) @# W' @$ H8 y
  315. LDA #PPU_ADDR_L
    0 [# I/ }  E1 z% g( @& \; `
  316. CLC
    ) ]: w+ B5 y% T* N; G4 D
  317. ADC #NUMBER_B) Y0 M+ u- X8 {( F4 G
  318. STA $2006    ;设置PPU字符写入低位地址$ |: [+ T# i7 v  Q) X- j$ `
  319. LDA STAGE_TEMP: o' N7 M- G3 A) {1 n# Z, ?4 q
  320. TAX% ?& L1 H, G3 r5 J/ g
  321. LDA STAGE_D2,X    ;写入数字
    9 ?! m/ H2 H2 `" f( k
  322. STA $2007
    , O1 s: }3 o7 ^3 W- }5 C, y5 m
  323. STAHE_WRITE:
    ! _. G0 `, c1 j
  324. LDA STAGE_TEMP) I- A, V; l6 d" v% J
  325. STA $2D   ;初始关卡写入3 ?) `5 p* q( l: |: |3 p* s
  326. PPU_RTS:    ;恢复数据1 x6 J$ C3 B9 D7 |! U
  327. PLA" N1 C! ?0 M4 v! b) o  O
  328. TAY
    . U% {( B+ {& p  i5 D7 y( n" X
  329. PLA* u5 ^' P# [, w2 a; C: T, O
  330. TAX* J- @' {5 r- Q7 Y2 G- A
  331. PLA' w( A/ U9 j5 f; l0 j4 T
  332. RTS
    1 Z2 K. X" q. `6 p$ L( Z

  333. 4 q$ Z' L: Q8 k! b1 l4 ?% M
  334. STAGE_DATA:    ;关卡文字S,T,A,G,E,X,-,X字模数据) a. r6 t- Y) w8 ?3 C& L7 ]
  335. .BYTE CHAR_S,CHAR_T,CHAR_A,CHAR_G,CHAR_E,CHAR_SPA,CHAR_SPA,CHAR_LIN,CHAR_SPA,CHAR_SPA,PPU_END
    - `( F" J7 ]2 ^7 B1 I
  336. , O2 f4 Y" O) V+ [
  337. STAGE_D1:   ;关卡数字
    5 P( A* w  r- h5 C' l! ]/ t
  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_82 W4 A) b$ r* p/ p" S" ?! Q7 G
  339. $ @; s; ?0 l: n4 V- @/ {3 t
  340. STAGE_D2:   ;场景数字3 s) _0 O3 y) T) r
  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
    % j. M. R# ~" `6 S' I& P* Q; U

  342. 5 C; w6 R: ^: q0 f  h+ R+ B

  343. 9 T( n8 j/ O/ v1 C( w+ C
  344. MUSIC:    ;按键音效
    2 h0 a3 K, w; I2 F: n% Y5 Q
  345. LDA #$3B    ;音乐号
    / @8 U! n% |$ P/ n  M3 b8 l# z0 w
  346. JSR $919E    ;系统音乐调用
    & D9 P% V: _7 F& q( U
  347. RTS
复制代码
4.无敌锁定:   暂停后,按上键切换;3 B2 p: }: f, t$ ]+ U! N5 \( N
    5.生命加满:   暂停后,按下键切换;% K. K) V& b& I! M0 K/ g
    6.血量锁满:   暂停后,按右键切换;: S6 G8 U. u) }; @! i6 ]
" Q9 F" [- Y! b' ^5 V
. f. e3 N2 ~( e: M+ _+ m
5 n& W; w2 A( u7 e2 Y; J8 ^. K
$ \7 P- |/ Y# Z) m' u
- ^9 o  P7 b4 X4 a" \# |' U
FlameCyclone.ys168.com& T$ p$ F2 f) j6 V( G, Y: O  `4 N, C
www.nesbbs.com
: @; V6 {# y. ~. d- X& ~
游客,如果您要查看本帖隐藏内容请回复
' _+ |" I0 }+ {2 q; b' H8 o9 h3 C

本帖子中包含更多资源

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

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

签到天数: 2369 天

[LV.Master]伴坛终老

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

签到天数: 71 天

[LV.6]常住居民II

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

签到天数: 1269 天

[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 个 . 幸运榜 / 衰神榜

签到天数: 2931 天

[LV.Master]伴坛终老

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

签到天数: 2053 天

[LV.Master]伴坛终老

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

签到天数: 1806 天

[LV.Master]伴坛终老

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

签到天数: 135 天

[LV.7]常住居民III

发表于 2017-4-1 11:35:44 | 显示全部楼层
老规矩,先回后下!!!!!!!
% v6 Z7 l" _! c  W- E

签到天数: 179 天

[LV.7]常住居民III

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

签到天数: 1521 天

[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, 2024-12-28 02:57 , Processed in 1.091797 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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