[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 ***** 完全看不懂啊、、、、 看一下是什么。 感谢楼主分享! 谢谢。。。。。。。。。。。。。。。。。。 学一下rom扩容的方法,谢谢 看天书啊。。。
页:
[1]