A9VG电玩部落论坛

 找回密码
 注册
搜索
查看: 14838|回复: 28

[原创]超任博士系列磁碟机金手指代码转换工具GFConverter(重新上传附件)

[复制链接]

精华
0
帖子
478
威望
0 点
积分
629 点
种子
12 点
注册时间
2008-3-13
最后登录
2024-8-5
 楼主| 发表于 2012-5-28 22:28  ·  吉林 | 显示全部楼层 |阅读模式
本帖最后由 ly63 于 2016-6-19 23:44 编辑

这贴我是最初发到PPXCLUB上的,论坛设定超过一定时间的帖子自动锁定,所以也就无法收到用户的BUG反馈,所以我又把这贴搬到这里来,也许会有人需要它。
程序最后更新:2012-02-02


正文:


还有人用磁碟机玩超任游戏么?我就是,虽然模拟器已经比较完善了,但在电脑上玩感觉就是不同。

在模拟器中修改数据简单得很,但是到磁碟机上就不是那么回事了,只能利用金手指功能修改ROM。
但制作金手指需要掌握65816指令集,以及知道如何调试SNES程序,这对于普通玩家来说几乎是不可能的事,只能利用很久以前各种杂志发布的金手指码。比较遗憾的是数量不是很多,有些游戏根本没人写过金手指码,在网上可搜索到一些PAR格式的金手指码,无奈博士磁碟机并不支持...或者知道一个金手指码却无法使其在模拟器上工作。
最近我用了几天时间弄清楚了金手指码的原理及算法,又花了几天时间写了个程序转换这些Code,希望能有所帮助。


注意本文、本程序所指的金手指代码是博士系列磁碟机专用的金手指,有些磁碟机也支持金手指功能,但是实现的不完善,有些金手指不完全通用(基本上都是HIROM类型的游戏)


程序功能:
实现金手指码、PAR、RAW(ROM文件地址)之间的互转。
关于金手指的原理及算法,请参阅https://bbs.a9vg.com/thread-2256860-1-1.html
注意:所有7E、7F开头的PAR码从原理上就不可能转换为金手指码,原因请参阅上面链接。

程序需求:
OS:Windows XP SP2 及以上
附加DLL:如果提示缺少MFC100U.dll 或MSVCR100.dll,请下载VC++2010Runtime,最下面有微软官方链接。

程序界面:


需要的参数解释:
右边的文本框:输入或输出的金手指码
左边的文本框:输入或输出的PAR金手指或者是ROM文件地址
RomType:设定目标游戏是何种ROM,目前本程序支持HIROM和LOROM(最大游戏为32M)
RomSize:设定游戏ROM大小,由于博士机的金手指对待不同大小的ROM算法不同,所以也需要指定。
In/Output Type: 指定输入、输出的右边文本框的Code的类型

输入、输出各式说明:

输入:
金手指码:
一共16位,最后2位指定Slot Code(关于什么是Slot Code,参阅https://bbs.a9vg.com/thread-2256860-1-1.html
AAAAA DDDDDD CC F @S
A=地址 D=数据 C=校验和 F=功能代码 S=Slot Code(分区码)
不输入Slot code 也可以转换成功,但是此时假定Slot code=A(A区)
PAR、Raw:
AAAAAA DD[,DD,DD]
A=地址 D=数据 []中的内容为可选,最多3字节数据,可以用","隔开,也可以不用,但是每个数据必须是2个字符,否则出错。

输出:
Par、Raw:
如果输出的PAR、RAW码带有3个数据,当输入模拟器的时候需要拆分成3个Code,从第2个数据开始,地址依次+1.
比如C0FF70 A9,3A,8D 需要拆分成
C0FF70 A9
C0FF71 3A
C0FF72 8D
这样模拟器才会接受.

功能按钮:
==> :将左侧文本框中的金手指码转为PAR、RAW代码,并输出到右边文本框。
<== :将右侧文本框中的PAR\RAW码转为金手指码,并输出到左边文本框。
Exit :退出程序

版本历史:

Ver 1.0.0.X

初始版本,可转换为Rom File Address(没有发布)

Ver 1.0.1.175

添加PAR Code 输出选项;
BUG Fix;
添加额外的PAR Code 代码有效性检查;
添加特殊地址映射的PAR code 处理算法(类似00E000 00的HiROM代码)
Code Clean;

Ver 1.0.1.176
BUG fix:更正特殊地址PAR Code 代码有效性检查模块中的BUG



如何知道ROM属于HIROM还是LOROM?
用模拟器或ROM工具(比如NSRT、Ucon64)来查看
例:
Ucon64.exe d:\rom\example.sfc
NSRT.exe d:\rom\example.sfc
以上命令会输出ROM信息,包括ROM类型。


如果发现BUG,请回复输入和输出、游戏名称



下载:
主程序:Ver 1.0.1.176 最新版
VC++2010 运行时Dll:http://www.microsoft.com/downloa ... 4&displaylang=zh-cn

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
该用户已被禁言

流放者(禁止发言)

♥ 正義聯盟 ♥

精华
1
帖子
40947
威望
2 点
积分
42917 点
种子
0 点
注册时间
2008-11-16
最后登录
2012-12-25
发表于 2012-5-29 00:40  ·  辽宁 | 显示全部楼层
   当年我要是有这么个软件的话~~~
   无敌了啊~~~!!!!
该用户已被禁言

流放者(禁止发言)

♥ 正義聯盟 ♥

精华
1
帖子
40947
威望
2 点
积分
42917 点
种子
0 点
注册时间
2008-11-16
最后登录
2012-12-25
发表于 2012-5-29 00:41  ·  辽宁 | 显示全部楼层
   可惜结婚以后把很多收藏都处理了~~~~
   

精华
0
帖子
4184
威望
0 点
积分
4270 点
种子
118 点
注册时间
2006-5-21
最后登录
2024-11-22
发表于 2012-5-29 09:32  ·  上海 | 显示全部楼层
这个可真是好东西啊~~~~

精华
0
帖子
749
威望
0 点
积分
796 点
种子
17 点
注册时间
2004-9-11
最后登录
2024-8-4
发表于 2012-5-29 09:36  ·  浙江 | 显示全部楼层
嗯,不错,只是发错了年代。

精华
0
帖子
478
威望
0 点
积分
629 点
种子
12 点
注册时间
2008-3-13
最后登录
2024-8-5
 楼主| 发表于 2012-5-29 09:56  ·  吉林 | 显示全部楼层
super.man 发表于 2012-5-29 00:41
可惜结婚以后把很多收藏都处理了~~~~

都处理了?多可惜啊?都是童年的回忆呀。

精华
0
帖子
478
威望
0 点
积分
629 点
种子
12 点
注册时间
2008-3-13
最后登录
2024-8-5
 楼主| 发表于 2012-5-29 10:07  ·  吉林 | 显示全部楼层
fjop 发表于 2012-5-29 09:36
嗯,不错,只是发错了年代。

嗯...确实迟到了10多年,现在用磁碟机的估计是凤毛麟角了。
10几年我还是个小P孩,只知道瞎玩,没有能力分析算法,更没有能力将算法实现为程序。
现在还是喜欢玩老游戏,喜欢鼓捣老东西,枪车球这类当代流行的游戏根本毫无兴趣,一直没有跟上时代的脚步。。
ryb

挂版VIP

課金薄いぞ!なにやってんの

精华
19
帖子
30551
威望
47 点
积分
33741 点
种子
84 点
注册时间
2009-4-24
最后登录
2024-9-10
发表于 2012-5-29 10:15  ·  新西兰 | 显示全部楼层
如此神器今日才來..................嗚嗚嗚

精华
0
帖子
1660
威望
0 点
积分
1802 点
种子
5 点
注册时间
2008-9-14
最后登录
2020-2-3
发表于 2012-5-29 11:52  ·  浙江 | 显示全部楼层
虽然当前用不上,还是顶一个支持,这是真爱啊

精华
0
帖子
1660
威望
0 点
积分
1802 点
种子
5 点
注册时间
2008-9-14
最后登录
2020-2-3
发表于 2012-5-29 11:56  ·  浙江 | 显示全部楼层
LZ要不要考虑在程序中整合HIROM和LOROM的检测功能?即使不能嵌套进去直接判断选定,也能一定程度上整合一下,让用户可以实现譬如拖放Rom文件,显示当前Rom文件到底是属于HIROM还是LOROM啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|A9VG电玩部落 川公网安备 51019002005286号

GMT+8, 2024-11-24 06:08 , Processed in 0.187346 second(s), 15 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

返回顶部