EMU618社区

 找回密码
 立即注册
搜索
查看: 644|回复: 6

[原创HACK教程] [FC][最终任务转mapper4程序]

[复制链接]

签到天数: 39 天

[LV.5]常住居民I

发表于 2017-5-20 21:24:33 | 显示全部楼层 |阅读模式
;[FC][最终任务mapper1切页程序]0 P. ~' f  j" l
.ORG $CD9B
* P. Y: S) W' dBANK_START:
$ j3 k) ^7 }1 |$ g" H% u7 V STA $70
. Z' Z% [9 z+ k* b3 e- C1 G TXA
6 x5 y0 U6 b1 k# D* L8 L2 S  f ASL' a+ b' H2 r7 ^" L0 o3 H
TAX
# t/ B% ^" ]8 l% ^- n/ kPORT_SET:  f! h5 n7 C) q1 F! |6 w4 q: T
LDA BANK_DATA,X  X  A1 i0 O; a: q0 a% E7 h
STA $6E
! q* h1 i- ]! s LDA $CDB8,X; w2 H9 E# Z/ f) V
STA $6F) q/ Y3 C8 g/ }& W# S
LDY #$00/ G7 C  a. t! C7 n
LDX #$059 {" z/ Y0 T* v1 G' [
LDA $70
& Q4 F- h% X( K: u8 V, a( dPORT_WRITE:0 L6 L$ B4 ?1 r
STA ($6E),Y
# B/ |& P! @* c$ c( r6 E1 {* y' U LSR
1 q7 a: }- i4 p- j! O) S DEX
' B% p% C( w" m4 w+ q) ] BNE PORT_WRITE
  L  E# y+ C$ Z. F* v* Y9 Z! l RTS
2 C3 g/ P. O! |3 f3 o5 G3 @ $ A/ X( A9 z0 w
# I; e- }3 a+ V8 T7 y4 }- C
BANK_DATA:
) G& w* v$ N3 \4 O: z& [ .BYTE $00,$80,$FF,$BF,$00,$C0,$FF,$FF
% i' b  \1 Y0 v# i2 m6 m / z5 V& C5 U5 v) O- \: R+ A6 b  w
9 K9 K4 ?1 L  Y* ]8 x( W
;[FC][最终任务mapper1转mapper4切页程序]
8 p3 j2 {$ i, { .ORG $BFD2   ;初始化跳转
# p8 _/ A% l) E; L$ t, J3 ~4 ` JSR $FFC0  R$ A# @- t% [4 Y* S! d* z; R

, C+ C$ O6 X$ f& D
* m0 v+ C& o) |+ K .ORG $FFC0    ;切页
& A6 W! ^* j; V; ~$ T LDA #$064 V3 j3 z5 Z  l8 h
STA $8000
. r" T2 U* P2 s8 _- n6 R" T% ~% i LDA #$0E- M4 [4 z% V, n+ @; ~4 V9 _
STA $8001
' ~+ M3 p4 U9 }4 i5 J JSR $8000/ N! C! _0 m2 s/ C  t! P3 }% s
RTS
% ~5 T+ z1 ]+ i) z. `( n, L! u
8 \7 w7 \) W3 D- v  D9 o0 q .ORG $8000    ;数据复制% \8 R4 P; \1 ]& P
LDA #$808 {6 M, S$ h- o  X7 G8 z
STA $A001    ;启用SRAM! {* }- Y  x6 g: M+ c2 b% h' A
PHA& e) N" {. T  \. G. W. p
TXA9 A( e: A5 _* S. H+ ~
PHA
' W) m$ m7 |; M1 W LDX #$00
) K1 w- T% Y. g6 `7 rDATACOPY:     ;数据复制
, }  b3 l% T3 I  T+ J1 J LDA $8100,X
( z0 \* K) {* R7 i$ T STA $7200,X2 |! ]- b- ]3 e2 G$ z0 ]
INX4 C/ }  r' V; W" P5 T* D& |* x
CPX #$00. R& R8 E& ~9 _2 E* M, g, M
BNE DATACOPY5 @+ U0 @5 F, _4 {: \9 B" s
PLA( z; M* p% Q$ O) ~* ]) s
TAX! X; L& o9 B) s. P7 {" E7 l
PLA
3 p3 }  J& ]% [, X2 K6 U RTS$ V: U# H* r% U5 w# W' v) Q6 w

4 a3 n- W4 @! ?: z! ? .ORG $CD9B    ;跳转到转换的切页程序: }) d& i$ e* Q* M8 I
STA $70! F0 Z+ s- q5 e7 f8 {5 l
JSR $7200  j( A6 ^' ^  }+ y
RTS+ {' _& {- D# x4 H8 ?6 n

" i; _, @9 @) g  .ORG $73005 u1 i# Q* a; m8 g" C- l& I
M1_TO_M4:    ;切页程序
! w0 G* \% X1 \& B# K  b6 m+ H- K CPX #$00
. a# v/ P3 N8 E4 U' P$ t BEQ REG_SET6 @% E1 [+ R4 Y3 T, V- ]
CPX #$01
: w. c. s6 y, [- p, x- R BEQ PPU_BANK_00003 a  n; T! v7 Z7 D  X7 v, T* r
CPX #$02
8 J! G" a. P+ u" B2 [& B9 L7 r BEQ PPU_BANK_10006 I# r" o( k8 _7 t) f( Z) T+ x: x2 Z
CPX #$032 \! N: r6 J* B
BEQ PRG_BANK7 x9 d. U' q" [" Z" W
REG_SET:
$ G( ]" O3 i9 z) R' ~0 ^! M STA $A000! I# j) H! O8 }4 g% ^) J  t
RTS' i8 T/ i% B1 _+ m
  .ORG $73209 }. I' x; ~8 k$ \
PRG_BANK:    ;PRG切页" C. H* N  o7 Z
PHA: K1 x' h8 E: {! q& Y
LDA #$06! D7 C6 x  h4 m2 o( Z
STA $80007 u' X( d1 @1 s8 e
PLA8 t) v9 b2 w6 T
ASL; H; v3 b+ C7 U& Q
STA $8001+ d8 X/ J" {* T  z
ORA #$01+ a, q" V# L. o# @! a7 \
PHA
: d, n% S: ]7 X. f0 d/ I: \ LDA #$07
: O5 u1 I* ]& M3 Y/ P, R/ g" W STA $8000
, D) Z/ ~0 i( I/ s2 W8 M  t, K PLA7 s7 g" n1 X+ l3 A
STA $8001
# A- V8 `1 |) _  K( r# N% X RTS
7 V$ v" `6 ~8 d3 a+ O1 R$ v: h .ORG $7340
9 K+ t# R, u8 q/ m. Z" `PPU_BANK_0000:    ;精灵切页
/ \3 i4 J- d. Y; l  S& H PHA& T7 i" Y# {4 \
ASL* N3 w! u2 A6 Q8 ]2 k0 R( P
ASL
; J2 e& ~  Y# u  Y$ m- Q PHA
3 b  u4 ^, C" z: K, I LDA #$00
$ _4 H0 h% r# ~% Z: E6 r, j' a STA $8000; T$ B; Q2 ~, m
PLA; d( l( T/ d' L! }: L
STA $8001
; N3 H4 {2 y) W9 @ ADC #$02
& Y2 o* P8 f, B  D" w! z PHA
. a# {" w( ]4 Y% g. f( R/ k LDA #$012 V: b/ q- A  Q* K
STA $8000$ G- o2 b& f) F. C. u4 A
PLA
+ E6 v/ J* S$ G- \1 U3 I3 x STA $8001
% @# \5 w$ B8 G8 b! _% f; G PLA
$ s  g) O+ G$ ^! _8 e9 a RTS. G; i! Q  U1 S5 t, W$ M$ H

+ o4 t& i* t1 c# p4 I  .ORG $7360
. k! k! R5 D7 LPPU_BANK_1000:    ;背景切页
: W( S. `2 y* h, u% X PHA  e% [1 B" ?5 b& r
ASL3 n( P2 l0 n4 B4 O. a
ASL7 I: m3 Z4 Z9 k+ i4 f/ P
PHA
& j/ i9 }) W" w  P LDA #$023 b0 E/ d* E; z8 W" ~$ A$ U
STA $8000
) ~2 [6 M5 u2 B$ Q8 `2 q PLA# e/ e6 ]$ J8 o+ G, g& y7 @% t: g$ I
STA $8001- }# Z) ]  G  g( o* g
ADC #$01
, ]. r9 Z( h( L9 ?9 u PHA4 b/ I5 B( @0 w' Z2 l- ^
LDA #$03' J9 H# Z' d# w! _" h5 t/ ?2 Z/ ?
STA $8000
, Y& d* {- x8 Z1 X* {% Q) V PLA. W4 ^( A0 {0 E5 [$ X) [- z+ Y  Q
STA $8001
- ~3 j) }: B0 a' } ADC #$01
7 r* J) w3 \8 j& Q( ^ PHA: T: Z" X1 [2 Y. N! D' y9 ^2 }2 c0 x4 ~
LDA #$04+ M! R& \- \' [; l& u4 a( ]
STA $8000" _2 `2 e: s; ~1 a) b9 |
PLA$ C) ~1 c/ M3 b" t0 Q
STA $8001) V& j9 R7 u2 y( W6 J2 x- |9 n
ADC #$01
) S( r$ K0 S( _& w4 l PHA3 ^" S9 g0 q8 ^
LDA #$05' ]& a. D  m9 D  w1 ]  q
STA $8000
6 }* ~7 |% [) m9 {( X. r PLA
- }; f1 u( U' V" k" ~9 x STA $8001# c  ?: J! j) g& a2 t" e( ^! O
PLA
5 O6 ~: ]( \* A, Y RTS
4 A/ l- W* @& W# }
6 n( p! C, ?+ h& j
游客,如果您要查看本帖隐藏内容请回复

本帖子中包含更多资源

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

x
[发帖际遇]: 一个袋子砸在了 yandagui 头上,yandagui 赚了 1 个 柠檬. 幸运榜 / 衰神榜

签到天数: 2060 天

[LV.Master]伴坛终老

发表于 2017-5-21 00:33:58 | 显示全部楼层
完全看不懂啊、、、、
[发帖际遇]: liujunbtx 发帖时在路边捡到 2 个 柠檬,偷偷放进了口袋. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 93 天

[LV.6]常住居民II

发表于 2017-5-21 19:03:19 | 显示全部楼层
看一下是什么。
[发帖际遇]: 一个袋子砸在了 来了来 头上,来了来 赚了 3 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

签到天数: 3109 天

[LV.Master]伴坛终老

发表于 2017-5-22 11:08:33 | 显示全部楼层
感谢楼主分享!
回复 支持 反对

使用道具 举报

签到天数: 20 天

[LV.4]偶尔看看III

发表于 2017-6-23 09:38:34 | 显示全部楼层
谢谢。。。。。。。。。。。。。。。。。。
回复 支持 反对

使用道具 举报

签到天数: 30 天

[LV.5]常住居民I

发表于 2017-7-27 23:16:20 | 显示全部楼层
学一下rom扩容的方法,谢谢
回复 支持 反对

使用道具 举报

签到天数: 97 天

[LV.6]常住居民II

发表于 2017-8-4 13:28:48 | 显示全部楼层
看天书啊。。。
[发帖际遇]: 一个袋子砸在了 huashao1268 头上,huashao1268 赚了 5 个 柠檬. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-7-1 06:53 , Processed in 1.077148 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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