[重发]双截龙3日版扩容+按键HACK
原帖丢失了,重发一份。修改内容:
1.P ROM由128KB扩容到256KB
2.按START+B武器数量为99
3.按START+A补血
这个HACK ROM本来以前答应某人做个例子给参考一下,因工作忙以及以前用的切BANK方法不完善的关系所以没放出来
从原单位滚蛋后就有时间来弄一下
关于如何扩容:在文件头后面或驻留体前面添加一大量0xFF或0x00,有可能或在程式中间添加,在哪里视游戏而定吧,有何规律我也不清楚
关于如何切BANK:请看相关mapper资料吧
说说我双截龙3 MPPPER 04如何切BANK:
$xxxx
LDA #$07
STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
LDA #$0E
STA $8001 ;把0x0E写入8001端口,把ROM的$1C010-$1E00F地址内容写入内存地址$A000-$BFFF
JMP $A000 ;跳转到$A000执行
$A000:
.
.
.
.
JMP $xxxx ;执行完自写的程式后跳回去
$xxxx:
LDA #$07
STA $8000 ;把0x07写入8000端口,选择要切BANK内存地址$A000-$BFFF
LDA #$0D
STA $8001 ;把0x0D写入8001端口,把ROM的$1A010-$1C00F地址内容写回内存地址$A000-$BFFF
切BANK前建议做压栈操作保护寄存器数据,当切换完BANK后出栈还原寄存器数据,这只是建议
关于什么时候切BANK:用NMI中断来切BANK吧(在NMI中断程式中插入切换BANK程式)
附:ROM 16KB BANK编号
ROMf地址 BANK编号
00010-0200F0
02010-0400F1
04010-0600F2
06010-0800F3
08010-0A00F4
0A010-0C00F5
0C010-0E00F6
0E010-1000F7
10010-1200F8
12010-1400F9
14010-1600FA
16010-1800FB
18010-1A00FC
1A010-1C00FD
1C010-1E00FE
1E010-2000FF
.
.
.
解释一下我为什么把P ROM 128KB扩容到256KB,不扩容到144KB?
因为扩到144KB的话有的模拟器是不认,无法运行
为了全FC模拟器能兼容,所以只好扩容到256KB
补充:扩容后记得修改ROM文件头P ROM 16KB数目(地址:0x4),不然有可能引致载入ROM失败或死机
{:4_98:}沙发支持,顺便下载! 这个。。。只能膜拜了。 支持了 如果能把圣火徽章外传日版扩容就可以中文汉化了吧 这是大功一件哦 先谢谢了 圣火徽章外传……唉,外星汉化那个玩起来看得蛋好疼 话说这个我一直都没搞懂{:4_106:} 感谢up分享 谢谢楼主的分享,支持一下!
页:
[1]