NES修改教程
- 格式:doc
- 大小:435.00 KB
- 文档页数:10
GBA游戏修改教程debugger篇!GBA游戏修改教程debugger篇!GBA游戏修改教程debugger篇!此教程不是图文教程,需要有点耐心看————未经同意禁止以任何形式转载所需工具:no$gba1.4c ; vba1.70 ; emucheat ; winhex(或者ultraedit)首先讲解下血不减,命不减之类的简单修改(就是传说中是XX不减)。
这类修改一般会遇到两种情况:一种是敌我分开的两条指令,一种是敌我共用一条指令。
1.敌我分开的指令,这个就比较简单了,只要直接下断把SUB指令改成NOP就可以了。
2.敌我共用一条指令,直接按上面那样修改的话会使敌我都不减血。
第1种情况:假设改生命无限,假设生命内存地址为02001234,那么就打开no$gba1.4c载入游戏后等到可以控制人物的时候点一下左边指令窗口,然后按Ctrl+B弹出Breakpoints输入窗口,然后输入[02001234]! 回车。
关于断点格式和效果:[02000100]! stops on any byte/halfword/word write to [2000100h] 任何对该地址写入数据就会停[02000100]? stops only when writing new/changed data 对该地址写入新值就会停然后点游戏窗口运行游戏去死一命,然后游戏就会停止运行,这个时候看断点处前一条指令,一般是SUB(减法)指令,直接在调试器里对着指令输入NOP,回车就可以了,记下当前指令地址,然后测试,如果有效就用16进制编辑器打开ROM直接把刚才地址减去08000000就是ROM地址,NOP的机器码在调试器下面的内存窗口就可以看到,写到ROM里保存下就可以了。
第2中情况:如果敌我公用一条减血指令,那么直接NOP就会使敌我都不减血了,所以就要跳转出去写指令来处理了。
首先,写程序一定要去熟悉下ARM汇编语言了,不过没必要深入研究,看懂一些基础指令就可以了。
[FC][按键开关][修改教程]时间:2017.5.18作者:FlameCyclone工具:FCEUX 2.2.3,Hxd 1.7.7ROM一个:魂斗罗(J)_Mapper4.nes修改思路:1.先在$C000-$FFFF之间找到一段足够写程序的空白空间,通常是一段连续的FF或者00,是在找不到可以切页(切有空间的bank,注意用完切回原bank)或者扩容后再切页。
2.再查找一个系统里没有进行读写的内存地址作为开关,一般在$0000-$07FF之间查找。
3.查找暂停地址,一般暂停和运行时内存中有一个地址会变化。
4.查找按键地址,找到单次按键,就是按一次变化一次的按键地址,按键一般有连续按键和单次按键。
(如果没有单次可以自己想办法添加)。
5.写按键开关程序,程序思路:当暂停时执行开关程序,非暂停时读取开关的状态,开启就干嘛干嘛,关闭就干嘛干嘛。
6.写跳转,将按键程序跳转到按键开关程序。
程序流程图(假设暂停后,按上键切换无敌锁定的开关):接下来开始修改:用FCEUX打开rom:然后查找修改中需要的地址空间:这里我就不慢慢找了,直接给出:空白空间:$FB30-$FBFF开关地址:$07A0:暂停地址:$0025;单次按键地址:$00F5,X(X=0是为P1的$00F5,X=1是为P2的$00F6);按键程序断点:打开调试器,设置写断点$00F5:然后程序暂停了:由此知道按键程序断点在$C1EF;然后开始编写程序:推荐使用6502 Simulator编写,由于本篇教程需要的程序不算复杂,我就直接写机器码了:打开Hxd,新建一个文件:然后开始写程序:95 F5 94 F1 48 A5 25 C9 01 D0 1F B5 F5 C9 08 D0 19 BD A0 07 29 08 D0 0A BD A0 07 09 08 9D A0 07 D0 08 BD A0 07 29 F7 9D A0 07 BD A0 07 29 08 F0 04 A9 03 95 B0 68 60反编译解释:95 F5 STA $F5,X 送入单次按键94 F1 STY $F1,X 送入连续按键48 PHA 累加器A入栈A5 25 LDA $25 读取暂停状态C9 01 CMP #$01 与暂停值#$01比较D0 1F BNE 不同则跳转到开关读取读取按键值:B5 F5 LDA $F5,X 读取单次按键键值C9 08 CMP #$08 与上键键值比较D0 19 BNE不同则跳转到开关读取读取开关当前状态:BD A0 07 LDA $07A0 读取开关数据29 08 AND #$08 判断D4位是否设置D0 0A BNE 不同则跳转到清除开关的D4位设置开关的D4位:BD A0 07 LDA $07A0,X 读取开关数据09 08 ORA #$08 设置D4位9D A0 07 STA $07A0,X 送入开关D0 08 BNE 不同则跳转到开关读取清除开关的D4位:BD A0 07 LDA $07A0,X 读取开关数据29 F7 AND #$F7 清除D4位9D A0 07 STA $07A0,X 送入开关开关读取:BD A0 07 LDA $07A0,X 读取开关数据29 08 AND #$08 判断D4位是否设置F0 04 BEQ 如果未设置则跳转到出栈并返回无敌锁定:A9 03 LDA #$05 取一个立即数#$0395 B0 STA $B0,X 送入无敌地址出栈并返回:68 PLA 累加器A出栈60 RTS 子程序返回然后把程序粘贴到NES内存$FB50对应的ROM地址:单击右键:收收然后跳转到按键程序地址$C1EF对应的ROM地址:Ctrl+A:单击右键:把源指令修改为20 50 FB EAJSR $FB50 跳转到$FB50NOP 无动作注:如果不修改最后的F1,那么系统会把F1当做操作码来执行,后果不可预知,所以改为NOP才正确。
第一步:将WIN32.KEYGEN.EXE文件复制到硬盘的一个文件夹下,因为是镜像安装,就必须复制出来.
第二步:运行复制出来的WIN32.KEYGEN.EXE文件(我在D盘下建了一个ICEM文件夹,所以就复制到里面的)将得到一个license.dat文件.
第三步:用记事本打开license.dat文件将里面的CHANGE_ME文字改为自己的计算机名,保存.
第四步:准备工作做完了,下面开始装程序了,将里面的都打上勾,点下一步.
第五步:修改主程序的安装路径,我把他放到D:\ICEM\下的也就是我建的那个文件夹,然后点下一步.
出现这个对话框就直接点YES,
直接点OK
主程序安装完了...
第六步:就是注册了...找到C:\icem\flexlm-9.2\windows下的flexlm.cpl文件,运行他
对应修改,注意Licenes这项里面的路径,就是你生成LICENSE.DAT的路径了.注意打勾的两个地方必须打上勾.然后点应用.
点一下Start 就OK了确定.注册好了,....
最后一步就是新建变量了,变量名icem_license_file变量值17000@zhongwen.Zhongwen是我的计算机名,将他改为你的计算机名就行了,,,,,
我的ICEM启动好了,CTRL+N新建...就OK了.下面的靠自己了```。
目录SIGMANEST快速参考手册SIGMANES的操作可以分为五个基本步骤:图形创建→零件创建→套料任务创建→生成NC路径→输出代码一、图形创建选择文件→导入→DXF或者DWG,选择导入的文件路径,就可以导入相对应的格式文件。
在读入图形的时候,可以看到图形预览,如果自动创建零件选项选中,即可立即将图形创建为零件。
当零件在CAD绘图时分层绘制,包含了尺寸、标注等信息图层,导入时需要设置在不需要加工的层前面去掉勾号,每一个图层都可以选择切割类型,如图中的marking就做标志,点击鼠标右键在选项中选为“标志”。
左下角自动创建零件打勾,点击确认之后,就完成了图形导入这一部分,可以创建零件了。
SIGMANEST还有CAD画图功能以及图形库,用户可以点击“创建”进行画图及图形库导入。
当进行图形库操作时,用户可以选中库中的图形进行尺寸参数修改,得到所需要的尺寸。
左下角的“自动创建零件”选项选中之后点击“确认”即可得到零件。
二、零件创建从图形创建好零件之后得到如零件参数设置界面点击右下的“图形”按钮,可以进入零件的几何编辑界面,在这个界面中可以修改零件的几何形状,功能与AUTOCAD相似,还可以设置切割属性为切割还是标记,如下图所示在图形模式下修改好之后,点击“文件”→“关闭”会出现提示框“是否重新产生零件?”,选择“Yes”零件出现替换,并且切割属性得到修改,如下图所示零件图形已经有了改动,并且中间的圆属性为“标志”,颜色教切割的内轮廓浅。
零件参数分为零件数据、引入引出、成本、纹理四部分。
零件数据为零件名称、材料、厚度等基本参数,用户还可以自定义其他零件参数方便保存和寻找。
引入引出可以设置零件切割的引入引出位置、方式及长度,用户可以根据需要进行修改,如果零件存进零件库的话这些参数也会一起保存,下次导入零件的时候就不需要再次设置。
成本和生成的报表有关系。
纹理为零件的套料参数设置,包括镜像切割、套料旋转角度及共边切割。
这RAM和我们用的UE差不多,不同的是它范围只有$0000-$FFFF,也就是FC机CPU:6502的访问(寻址)其中$0000-$07FF作为可读写内存$0800-$1FFF是前面的镜像(不理解无所谓,这块区域不能用就是了)$2000-$2007留给显示处理器(PPU)与CPU通信用→(做汉化的就要了解其作用了,现在我们用不上)$3F00-$3F0F 背景调色板(就是地图的调色板),共4个→(现在我们用不上)$3F10-$3F1F 精灵调色板(就是人物的调色板),共4个→(现在我们用不上)$4000-$4015 留给声音处理器(APU) 与CPU通信用→(现在我们用不上)$4016-$4017 分别是1P和2P手柄与CPU通信的地址(端口)$4018-$5FFF 扩展内存→(其中$5000-$5FFF在吞2中可以读写)$6000-$7FFF 卡带的SRAM(需要有电池支持,吞2很多重要数据都放在这区域)$8000-$FFFF 我们平时用UE打开ROM看到数据,都在这区域,如右下图嗯,这里我们了解一下吞2的解码器(MAPPER 4)工作原理:大于32KB的FC游戏都自带一个解码器,其最主要功能是扩容和加密。
老任自己开了四五个,整体功能很强……其他FC开发商也陆陆续续独自开发了不少,已知的有200多个。
吞2的解码器编号是04 ,下面切图好,让我来讲讲MAPPER 4如何把这640KB的数据装进$8000-$FFFF的。
1.开机时,MAPPER 4先把ROM的$000010-$00400F装进RAM的$8000-$BFFF2.ROM最后16KB($09C010-$0A000F)装进RAM的$C000-$FFFF中间那些,MAPPRE 4把它们按8KB为一块来划分,即640KB划分成256块8KB编号00:$000010-$00200F 编号01:$002010-$00400F编号02:$004010-$00600F 编号03:$006010-$00800F编号04:$008010-$00A00F 编号05:$00A010-$00C00F以下请大家用计算器算,记得切换到16进模式下哦公式:$2000*编号+$0010算到最后,发现在MAPPER 4竟然能装2MB的容量(当然这里指在模拟器里)[RMA和MAPPRE认识告一断落,现在不理解无所谓,以后扩容再回来看]呃…………我们这里研究吞2敌方最大兵力是否可以超过65535,请备好以下工具1.任意FC带DEBUG模拟器一个,我用的国人张晓波改的VirtuaNES 0.67版。
NEOscavenger修改方法没名版本:1.0前言吧里早有人发开局全套装备的修改方法,可是这个方法有个问题,就是只能修改一次,况且一次还不能改多(亲测改太多有些不会出来,当时的高斯枪不出来的原因应该也是这个)本方法乃楼主下午放弃睡午觉的机会摸索3小时摸索出来,效果一级NB废话不多说,现在讲方法!1.用记事本打开游戏目录下的neogame.xmlPS:楼主曾经自学编程的缘故,这里用的是VS2013,不建议大家只为了这个游戏装这个软件,因为它太大了,而且浏览xml文件不是它的主要功能2.搜索“<column name="strName">cryo lighting recipe</column>”引号不保留搜索结果是这样的PS:上面的绿色汉字是我加的注释,原版没有图中选中部分就是我们要修改的代码位置这个代码是什么呢?答:这个就是用电工技能查看电路板的代码(未修复时),他的特殊之处就在于可以重复刷那么多修改哪个呢?答:第四行的9.30x1.0x1才是我们修改的地方9.30x1.0x1其实就是物品代码,这个代码指示的物品就是a piece of paper(一张纸)如果加物品,就在后面加上说要加的物品代码,格式为 XX.XXxX.XxX-X 至于后面的-X好像是数量,不过我也不确定,没有的话默认一个,由于本修改是可以重复用的,所以不用加举例:加入超级背包注意:1.这里的所有字符必须是英文字符2.如要表示所加物品是“和”的关系,就请和图片中一样,在物品代码中间使用“,”(英文标点),如果是“或”的关系,就请用“|”分隔开。
3.至于代码如何得出,有吧友发过,就不赘述了,这里推荐使用吧友做的修改器,可以快速检索物品常用物品代码:罐头:32.1x1.0x1汤锅:32.0x1.0x1带挂绳的望远镜:100.2x1.0x1蓝腐病抗体:44.0x1.0x1肩挎包:5.1x1.0x1购物车:3.4x1.0x1育空大背包:5.5x1.0x1纳米医疗包:94.0x1.0x1纳米医疗器:94.1x1.0x1守卫全套:头盔:102.5x1.0x1防毒面具:102.6x1.0x1 滤芯:40.0x1.0x1黑衬衫:78.1x1.0x1防弹衣:78.2x1.0x1裤子:95.3x1.0x1JB黑靴子:50.3x1.0x1 右 50.2x1.0x1 左武器:实在太多,这里就写一个高斯步枪全改装版:60.13x1.0x1高斯步枪子弹:10.13x1.0x1 (这样只有一个,不知道怎么改数量)电荷:10.3x1.0x1(同上只有一个)。
FC游戏编程教程作者:维京猎人FC就是任天堂出产的红白机的别称。
在欧美的机型是灰白两色的,所以欧美称之为灰机或NES。
本教程目标:弄明白FC编程的基础。
弄明白学FC编程的步骤,参考书有哪些。
弄明白FC编程用什么编程语言和工具。
弄明白FC游戏有什么要素。
弄明白FC游戏的流程如何。
弄明白一些简单的FC游戏是如何运行的。
弄明白一些简单的FC游戏是如何构成的。
第一关,数制,进制:对于半路出家的人来说,电脑编程基本会了,进制当然也是早就会了,可以跳过,学下面的。
对于纯正的菜鸟,只会用QQ聊天,只会打字,或者会搞点图片这些与编程无关的功夫,进制是必修的。
要学哪几种进制呢?电脑编程就用到了2进制和16进制。
在分析程序,分析端口的时候就会用到2进制。
其实可以全部用2进制,但是非常麻烦,于是在编程上我们用更容易明白,更方便的16进制。
每4位2进制码就是1位16进制码。
等于是缩短版。
参考书:这个太好找了,到处都有,自己找吧。
《数字逻辑》(第一章基础知识),欧阳星明著,华中科技大学出版社。
《数字电子技术》(第一章数制与编码),江晓安著,西安电子科技大学出版社。
名词,概念2进制码,16进制码第二关,简单的电脑编程:现在,很多中学开始教学生BASIC了。
甚至小学也会让优秀的学生学BASIC。
我中学时,学校让优秀的学生去学电脑,当时学的是LOGO和BASIC(我猜的)。
我不是优秀学生,不能去学。
不管学什么编程语言,只要知道三个类型的命令就行了。
1赋值,即”=”;2判断条件,即”if”;3跳转,即”goto”或”return”这个要会变通的,会活学活用。
不同的编程语言,文字上会有不同,现有的程序语言都是用这3种方式组合而成的。
初学者我建议用在电脑的DOS模式下编程,原因是这样比较纯粹。
DOS(或者说MSDOS)我推荐用Q-Basic。
参考书《跟我学Quick BASIC》陈宗周,刘秉刚著,云南大学出版社。
名词,概念编程,命令,赋值,判断条件,跳转学会了编程的朋友,我建议大家多用子程序,不要用goto。
SIGMANEST使用手册SIGMANES的操作可以分为六个基本步骤:图形创建→零件创建→套料任务创建→铣切路径→输出代码→报表一、图形创建选择文件→导入→DXF或者DWG,选择导入的文件路径,就可以导入相对应的格式文件。
在读入图形的时候,可以看到图形预览,如果自动创建零件选项选中,即可立即将图形创建为零件。
当零件在CAD绘图时分层绘制,包含了尺寸、标注等信息图层,导入时需要设置在不需要加工的层前面去掉勾号,每一个图层都可以选择切割类型,如图中的marking 就做标志,点击鼠标右键在选项中选为“标志”。
点击确认之后,就完成了图形导入这一部分,可以创建零件了。
SIGMANEST还有CAD画图功能以及图形库,用户可以点击“创建”进行画图及图形库导入。
当进行图形库操作时,用户可以选中库中的图形进行尺寸参数修改,得到所需要的尺寸。
左下角的“自动创建零件”选项选中之后点击“确认”即可得到零件。
二、零件创建从图形创建好零件之后得到如零件参数设置界面点击右下的“图形”按钮,可以进入零件的几何编辑界面,在这个界面中可以修改零件的几何形状,功能与AUTOCAD相似,还可以设置切割属性为切割还是标记,如下图所示在图形模式下修改好之后,点击“文件”→“关闭”会出现提示框“是否重新产生零件?”,选择“Yes”零件出现替换,并且切割属性得到修改,如下图所示零件图形已经有了改动,并且中间的圆属性为“标志”,颜色教切割的内轮廓浅。
零件参数分为零件数据、引入引出、成本、纹理四部分。
零件数据为零件名称、材料、厚度等基本参数,用户还可以自定义其他零件参数方便保存和寻找。
引入引出可以设置零件切割的引入引出位置、方式及长度,用户可以根据需要进行修改,如果零件存进零件库的话这些参数也会一起保存,下次导入零件的时候就不需要再次设置。
纹理为零件的套料参数设置,包括镜像切割、套料旋转角度及共边切割。
旋转角度为自动套料时的零件可旋转角度零件参数设置完成之后,可以进入“零件模式”进行查看,编辑及保存。
一.准备工作修改工具必不可少,修改ROM必备DEBUG工具。
本人文中使用的是NO$GBA 1.4C破解版,UltraEdit(后文简说明:NO$GBA是针对GBA ROM进行调试的DEBUG工具,UE是对ROM进行修改的十六位编辑器,VBA 结果用于NO$GBA的断点设置。
有时候手头有现成的EC码,就可以省略查找这一步骤。
二.修改开始本人将为大家进行修改的分类讲解。
1.直接搜索型。
能力值之类的数据按照简单的规律排列,并存放于ROM之中。
只要将数据转化成为十六进制,并按照一定的顺进行搜索即可找到相应位置进行修改。
例子1:机战系列。
机战系列是最容易修改的一个系列之一。
数据内容看似多且乱,其实每一代的存放规律基本差不多,机体能力基似的顺序存放,有时可能有少许的变动。
具体修改参见修改之神PLUTO_SHI的《机战OG静态修改》,西连帝战R静态修改》,以及我写的《机战D静态修改》教程(此文在NW金手指区置顶索引里)。
例子2:《铸剑物语》的武器数值修改。
在《铸剑物语》中以主人公初始武器为例子,主人公初始武器能力并不强,能力值转换成十六进制的代码05 05 00 32,然后运行UE打开ROM进行搜索,找到地址后即可以进行修改图中地址即为武器能力值地址全改为FF。
要注意的是速度值最高为127,即十六位的7F,如果过头的话会变成减速度能力值的数据。
开VB,修改成功。
例子3:《波斯王子》的能力值升级修改。
这个游戏有升级系统,但是并非能像传统RPG那样进行普通的练级,王子初期能力值太低很让人不爽。
如果仅序里设定的原始2级能力值,所以就要把全部30级的能力都改到最高,这样升级也不怕了数据恢复了。
1级能力值如图,搜索3C 0A 06此图中鼠标拉出的部分就是升级后每一级的能力值,我们要对它们进行修改遊侠deyb。
Top第1楼·修改·删除·引用·举报该贴发表于2008-05-13 13:43:42热点:17173论坛20∙∙[更换头像] [用户信息]∙17173平民∙等级∙发贴 542∙积分 6901∙性别∙加入 2008-02-6。
任天堂红白机(FC/NES)游戏修改教程
任天堂红白机(FC/NES修改
很多新手看到FC HACK,都会有兴趣吧,我也一样,看到了有HACK ROM,也会想要是自己会做HACK 多好。
摸索了一阵,偶也学会了一点点简单HACK。
当然HACK这东西,是需要很大耐心的,更要自己多尝试!
与其在一边大喊:“HACK好难啊,HACK好复杂啊,教程看了头晕啊”,还不如自己多动动手。
今天我就来写一个最最最简单的基础HACK教程,相信你如果有耐心看完,一定能学会的。
编程方面的东西我懂的不是太多,我只用最通俗易懂的方式,让大家能学会。
如果有专业术语等的语言错误,也请大家纠正。
首先我们需要一些工具
[带有DEBUG调试功能的FC模拟器] fcdebug 或者FCEU-0.98.13-pre-Debug(貌似这两个一样的,只是版本问题)
[6502(FC汇编语言)] 6502汇编大奥秘(用于查看指令,便于修改,本次教程几乎用不到,有兴趣研究指令和代码的可以多看看。
但是这还是必备工具哦))
最后用于修改ROM内部的工具UltraEdit32,这是必须品哦
----------------------------------------------------------------------
首先,我们打开FCE,FCE也是FC模拟器的一种。
当然我们用的是带DEBUG(调试)功能的FCE
使用VNES的DEBUG调试时,机器配置不好的就狂卡,偶的机子也卡。
所以在某人要求之下。
我换一种调试器给大家讲解。
我用魂斗罗1来做一个命不减的HACK教程教大家
我们先去EC里找该游戏作弊码,EC里的作弊码是这样的
[P1 生命数]
ON=0032,200
这样我们就知道魂1的生命的地址是32,就可以使用它来当“断点”。
FCE的调试器和VNES不一样,不需要用“[0032]”这样的标准格式,直接把“32”输入当断点就可以了,具体怎么弄?别急,慢慢往下看~
首先我们打开FCE,使用“OPEN”打开游戏ROM,就象你玩游戏那样~~ 游戏运行后,先开始游戏,这时候先暂停游戏。
我们点“NES”→“Debugger...”
出来一个大窗口,请看右下角,看到这个框吗。
先在我这个位置输入“32”,这样“32”就做为一个“中断处”,也就是这个地址有所变化时,程序中止,这样我们就能找到该指令了。
之后在Write上打个勾,为什么这么做呢?因为我们要做命不减嘛,打个比方,你死了一条命,命数就减了1
这就表明程序对“命数”做了一个“写操作”(Write的意思就是“写”嘛),这样说应该能明白吧。
我们这样一设置,在你的游戏人物死了一次后,也就是说被写入了一次操作后,程序会自己中断。
之后就好办事了
按一下“Add”,之后左边就出现这样的字符,不必管它。
这时我们可以切换窗口,继续进行游戏了。
进入游戏,让你的人去死一次...
这时候程序就会停止,游戏中断了。
出来了这么个窗口。
一下子看了眼晕吧。
别心急哦,慢慢来。
先看看最上面一行。
第1行这样显示
看到了吗?是“32”哦,说明我们指令找对了。
32就是我们之前输入的生命数的地址嘛
想知道D6这条命令的意思,可以去看看6502汇编大全,就知道了~
关于该指令的详细说明和意思,不知道也可以。
因为我们这是简单HACK,不懂也不要紧
我们只需要知道,人死了后,就会执行这条指令,也就是让游戏里的命减了一条,对吧?
修改原理也很简单,只要让这条指令不执行就好了嘛!
现在进入正轨~~
最前面的“d939”就是这条指令在RAM中的具体位置了,我们要去RAM中找到这个位置。
点一下“Memory...”
出来的窗口就是RAM窗口了,根据“d939”这位置,我们找到了~!
看第一行,就是这里了,我选中的就是我们最初找到的指令D6 32
我们把这一整行通通选中,然后复制一下。
这样好方便我们寻找到这个“D6 32”打开UltraEdit32这个软件,用这个软件来打开你的游戏ROM
就象这样,游戏ROM打开了。
之后我们用CTRL+F,搜索一下,把刚才复制的那一串数字粘贴进去,然后查找一下~
找到了,被我用深蓝色选中的这行
看到了吗,D6 32 我们准备动手来改这条指令
改之前,还是老规矩,先按一下键盘上的INSERT,把插入方式改为“覆盖”
如图
接下来我们就把D6 32 改为EA EA(记得要大写哦)
请大家把EA 这条指令牢记,EA是NOP指令,意思是不执行任何操作。
也许有人问,为什么是把D6 32 通通改为EA EA呢,而不是单单把D6这个指令改为EA?32只是地址不是命令,干吗也要一起改?
呵呵~因为嘛,D6 32 是一条完整指令嘛,换句话说就是一句完整的话,要改他,当然也要完整得改拉~~
当然除了EA指令,还有别的改法,我这里就只告诉大家这最简单的了。
改别的游戏,EA指令也是很实用的。
大家自己可以去试试。
注意:修改的时候,往往会碰到一个问题,那就是不能修改。
那是因为你的游戏ROM的属性可能是“只读”。
如果碰到不能修改,请对游戏ROM(比如魂斗罗1)点右键→“属性”,把“只读”的勾去掉,这样就能修改了。
最后一步,修改好后,点“文件”→“另存为”,保存你修改好的游戏ROM,名字随便,比如“魂斗罗命不减XXXXX”
之后就是测试ROM了,我习惯性得打开我常用的模拟器VNES来运行游戏,当然你用FCE 直接重新打开游戏ROM也可以。
只是我喜欢用VNES来玩游戏。
我试着去死了几次,命一直都没减。
哈哈~HACK成功了~!
魂斗罗1P和2P生命使用同一指令的,所以你改好后,1P和2P都是无限命了。
怎么样,你学会了吗?
不如自己也试试吧,改改看魂斗罗2代
魂2的生命数地址经查EC得知是53
用我说的方法试试看吧,祝你成功
注:此教程中,我使用魂斗罗1的生命数地址“32”来做断点。
并不代表其他游戏都是用32做断点。
每个游戏数据都不同。
前面我已经提到过,可以先到EC里找到想改的游戏的作弊码,这里面有相应的地址。
如果EC里没有,也可以自己用EC的搜索功能或者用金山游侠来搜索。
以上均为最基础最简单HACK,如果想学习中级和高级HACK,要靠自己钻研了~多看看6502汇编大奥秘吧,只有理解了指令的含义,才能学习更高级的HACK。
本文内容转载自模拟999
--Writted by 小粽子
基拉照做了下..的确HACK出了无限命的魂1↖(^ω^)↗
像我成绩差..搞了半天想学的朋友就不要半途而废,认真仔细的研究``
作弊码可以用EC找到(附上),UltraEdit32这个东西有点大,去百度搜下就有得下了``这里不传了
下面发上收集到的工具若干..
带有DEBUG调试功能的FC模拟器FCEU-0.98.13-pre-Debug.zip(大小319k)
FC6502汇编指令查找器.rar(大小132k)
EC.part1.rar(大小1458k)
EC.part2.rar(大小1458k)
EC.part3.rar(大小1458k)
EC.part4.rar(大小1458k)
EC.part5.rar(大小309k)。