FC按键修改教程之一键开关

FC按键修改教程之一键开关

.需要具备的知识:6502汇编,不需要精通,至少使用比较指令,传送指令,逻辑运算,跳转指令.

.需要用到的工具: FCEUX 2.2.1.2807汉化绿色版(非常好用的FC模拟器及调试器及编辑器),Hxd 1.7.7.0(好用的十六进制编辑器),ROM实验品一个,对应作弊码.

.修改教程:

魂斗罗一代日语版为例,

其作弊码如下:

生命:1P:0032,2P:0033

无敌:1P:00B0,2P:00B1

子弹:1P:00AA,2P:00AB

先用FCEUX打开游戏:

 

先进行按键修改,打开工具>作弊,点击重设,不按任何游戏按键,已知值0x 00,回到游戏,按住任意一个按键,点击搜索作弊窗口的[>]数据,再回到游戏, 多按住一个按键, 再点击搜索作弊窗口的[>]数据,然后不按任何游戏按键,[<]小于的数据, 再搜已知值0x 00,搜出来地址为00F100F9.

好的,可以进行按键修改了,打开调试>调试器,

点击添加按钮,勾上[]如下,确定:

,

窗口变化了,如下:

 

就从这里写按键修改的跳转指令:

C1F1:94 F1     STY $F1,X @ $00F1 = #$00

C1F3:94 F9     STY $F9,X @ $00F9 = #$00

打开Hxd, 新建文件:

 

上如下指令94 F1 94 F9 48 68 4C F5 C1:

 

回到游戏,打开调试>十六进制编辑器:

 

下拉滚动条到最后,慢慢上拉找大片的FF FF FF FF FF FF FFFF FF FF FFFF

 

在FB60有大片的空白空间FF FF点击FF,再点右键,单击转到ROM文件对应位置:

 

 

把Hxd的数据全部复制过来粘贴在这里:

 

回到调试器窗口,点击断点地址,右击复制地址:

 

回到十六进制编辑器,点击查看>点击NES内存:

 

按Ctrl+A或点击文件>转到地址:

 

把地址粘贴进去,点击确定

 

 

由于FB60是按键跳转后的程序,所以必须把94 F1 94 F9改为4C 60 FB EA(最后的F9可以不改)

 

 

回到调试器窗口,双击断点,点击运行:

 

游戏能正常运行,说明按键跳转修改成功.

接下来先做一个暂停时按键换子弹的程序

先要游戏暂停地址,现在讲简略些,依照前面的方法,暂停时搜1,非暂停时搜0,找到地址是0025,为了后面按键修改的一键开关,需要0000-07FF地址之间找一个一直地址,我找到是07AA

修改原理:07AA作为暂停时操作判断地址,暂停时按选择键地址若为1执行其他程序……非暂停时不执行只跳过,07A0作为其他功能的判断地址,判断07A08个位元中哪个1就去执行某个程序,本篇以无敌为.

打开Hxd新建文件,下面是对判断地址的操作及无敌的操作:

当暂停时,按一次选择键后,按上键可开启无敌,再按关闭无敌

 

将其写到游戏中:

 

游戏正常运行并按照操作开关无敌,好了,本来想加个暂停时按选择键时方向键换子弹的,空间太小不够写,要扩容有点麻烦,所以就写这些了.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值