yandagui 发表于 2017-5-20 21:24:33

[FC][最终任务转mapper4程序]

;[最终任务mapper1切页程序]
.ORG $CD9B
BANK_START:
STA $70
TXA
ASL
TAX
PORT_SET:
LDA BANK_DATA,X
STA $6E
LDA $CDB8,X
STA $6F
LDY #$00
LDX #$05
LDA $70
PORT_WRITE:
STA ($6E),Y
LSR
DEX
BNE PORT_WRITE
RTS


BANK_DATA:
.BYTE $00,$80,$FF,$BF,$00,$C0,$FF,$FF


;[最终任务mapper1转mapper4切页程序]
.ORG $BFD2   ;初始化跳转
JSR $FFC0


.ORG $FFC0    ;切页
LDA #$06
STA $8000
LDA #$0E
STA $8001
JSR $8000
RTS

.ORG $8000    ;数据复制
LDA #$80
STA $A001    ;启用SRAM
PHA
TXA
PHA
LDX #$00
DATACOPY:   ;数据复制
LDA $8100,X
STA $7200,X
INX
CPX #$00
BNE DATACOPY
PLA
TAX
PLA
RTS

.ORG $CD9B    ;跳转到转换的切页程序
STA $70
JSR $7200
RTS

.ORG $7300
M1_TO_M4:    ;切页程序
CPX #$00
BEQ REG_SET
CPX #$01
BEQ PPU_BANK_0000
CPX #$02
BEQ PPU_BANK_1000
CPX #$03
BEQ PRG_BANK
REG_SET:
STA $A000
RTS
.ORG $7320
PRG_BANK:    ;PRG切页
PHA
LDA #$06
STA $8000
PLA
ASL
STA $8001
ORA #$01
PHA
LDA #$07
STA $8000
PLA
STA $8001
RTS
.ORG $7340
PPU_BANK_0000:    ;精灵切页
PHA
ASL
ASL
PHA
LDA #$00
STA $8000
PLA
STA $8001
ADC #$02
PHA
LDA #$01
STA $8000
PLA
STA $8001
PLA
RTS

.ORG $7360
PPU_BANK_1000:    ;背景切页
PHA
ASL
ASL
PHA
LDA #$02
STA $8000
PLA
STA $8001
ADC #$01
PHA
LDA #$03
STA $8000
PLA
STA $8001
ADC #$01
PHA
LDA #$04
STA $8000
PLA
STA $8001
ADC #$01
PHA
LDA #$05
STA $8000
PLA
STA $8001
PLA
RTS

**** Hidden Message *****

liujunbtx 发表于 2017-5-21 00:33:58

完全看不懂啊、、、、

来了来 发表于 2017-5-21 19:03:19

看一下是什么。

afti 发表于 2017-5-22 11:08:33

感谢楼主分享!

shilinnnn 发表于 2017-6-23 09:38:34

谢谢。。。。。。。。。。。。。。。。。。

ey136 发表于 2017-7-27 23:16:20

学一下rom扩容的方法,谢谢

huashao1268 发表于 2017-8-4 13:28:48

看天书啊。。。
页: [1]
查看完整版本: [FC][最终任务转mapper4程序]