lincutt
FE & TO Fans
级别: 火花会员
编号: 20280
精华: 1
发帖: 456
威望: 0 点
配偶: 单身
火 花 币: 18274 HHB
注册时间:2004-06-30
最后登陆:2018-12-12
|
[小技巧]SFC靜態修改<->PAR code金手指
等FE1R ROM等的发慌了 给大家发点小技巧, 已经会的别批我阿
有研究静态修改的应该都知道 静态修改是直接更改ROM中的数据, 基本上属于不可逆的修改 刚入门的新手常常改着改着, 就把ROM给改烂了 若刚好又忘记备份, 实在是满麻烦的 在这里要说的小技巧, 就刚好可以解决这问题
先从简单的原理开始说 模拟器在执行游戏时, 会先将整个ROM载入到内存中 这时若利用金手指去修改内存中的ROM映像 就可以达到静态修改的效果, 而又不需破坏原始ROM的数据内容 若修改结果不合要求, 直接将该金手指码删去, 再重启模拟器就好了 在测试时挺方便的
好了, 说了那么多, 开始进正题 以系谱为例, 要如何将静态修改地址转为PAR金手指呢? 首先要知道ROM的类型, 系谱属于HiROM 将ROM中地址转为内存地址(也就是PAR金手指), 具体公式为
ROM地址+C00000=内存地址 要注意的是, ROM有没header, 有header的话要减去header长度200, 如下
有header: ROM地址+C00000-200=内存地址 无header: ROM地址+C00000=内存地址 一般.smc的ROM是有header的, 而.sfc, .fig是没header的 而算出来的内存地址加上值, 就是PAR code金手指了
用小塞登场指挥星数来做例子, 有header的ROM地址为4857F
4857F+C00000-200=C4837F 而值为0~5 所以控制小塞登场指挥星数的PAR金手指为 C4837Fxx ;xx=00~05
以上就是系谱HiROM类型的转换方法
但ROM不只有HiROM阿, 还有LoROM, ExHiROM, ExLoROM等各种类型 转换公式也都不同, 要背一堆公式似乎很麻烦 不过不要紧, 因为已经有人做好现成的转换器了~~~
Lunar Address
下载地址: FuSoYa's Niche
有了这个工具, 就可以很方便的转换各式ROM地址为PAR金手指了~ [s:1] 当然, 从金手指转回ROM地址也是可以的~
[ 此贴被lincutt在2008-08-04 12:26重新编辑 ]
|
|
[楼 主]
|
Posted:2008-08-15 15:05| |
顶端
| |