数码之家

 找回密码
 立即注册
搜索
查看: 10521|回复: 43

[硬件] 自制ASMedia ASM1061最新4.27固件的PATA/IDE模式补丁固件你见过不?图文+下载

  [复制链接]
发表于 2021-9-13 22:24:42 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

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

x
本帖最后由 windows9650 于 2021-9-13 23:23 编辑

I have a card~

ASMedia 1061 NGFF SATA.jpg
It works so fast~

Micron M600 MTFDDAV256MBF 256.0 GB@ASM1061.png

But i just need it to be special dart~

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------


好几年前,俺迷上了中塔机箱,特别是能塞好几块硬盘的那种,后来主板上的硬盘接口不够用了,我又学会了使用SATA扩展卡。
ASM1061、88SE9215、JMB585,每个来几张。
用过的卡我都刷过固件,要么为了纯粹的版本升级,要么为了改进兼容性,要么为了一些特别的小功能。
我有个使用环境很复杂的NAS机群,从XP到Win7都有,不喜欢群辉之类的成品和山寨NAS,因为他们没有我需要的东西,比如Winny、Share、PerfectDark等等。
这个故事发生在我的XP-NAS上。
这台NAS我是实机安装的XP系统,平台是ASRock QC5000M,处理器是AMD A4-5000,板上只有两个SATA3,但是它有三条PCI-E,所以我可以插三张SATA扩展卡。
在这台NAS上我装的是两张ASMedia ASM1061,淘宝最常见的红色M.2+SATA款式,包邮49的那个(最上面的那张图的那种)。
起初我用起来都挺好的,该有的都有,就是安装官方驱动后接在里面的硬盘无法休眠。
到处询问并测试了很多方法,全都没用,直到我刷入0.951版本的PATA/IDE固件并无意间卸载了官方驱动后,问题解决。
我不知道这些厂商为什么不愿意提供PATA/IDE固件,但是在这台XP-NAS上,ASMedia ASM1061必须运行在PATA/IDE模式下,否则我的强迫症是绝对治不好的。
况且我也确实需要一个免驱的PATA/IDE模式的SATA扩展卡以备不时之需,万一哪天用得上呢?
折腾过ASM1061的可能都知道,在很早以前,特别是固件版本0.XX到3.XX时代的时候,很多同芯片产品的随机驱动光盘还是有送PATA/IDE固件的,虽然那时候刷新程序非常古老得进DOS才能运行,不过后来新出的4.XX倒是支持Win下直接刷入固件修改工作模式,很可惜的是对应的PATA/IDE固件根本没提供。
我找过很多地方,问过很多人,得到的答案都是:AHCI比较先进,为什么不用AHCI而非要去用那么落后的PATA/IDE模式?
可我就是想要这种卡啊?
大不了我自己来呗~


打开Google,搜一下ASMedia ASM1061,发现https://www.station-drivers.com/里的驱动和固件工具是真TND齐全,国内OEM渠道基本全灭,于是就在这站里把每个版本都下下来备用。
当时发现一个奇怪的情况,除了4.27以及后期版本的固件以外,其他版本都是通过106spi.exe这个古老的程序刷写固件的,这鬼东西是2010年的古董,全名ASM106X SPI Flash ROM Write,用任意文本编辑工具打开,翻到底下,都会看到SPI芯片支持列表,比如下面红框里的这些。

SPI Support.png

这些SPI芯片容量都是512Kbit,也就是64KB的。
换句话说,刷入的固件体积绝对不能超过64KB。
挨个测试过去后整理出0.89、0.951、3.02、3.70、4.27这几个确认正常运行的版本。
然后打开HEX编辑器,开始比对AHCI和PATA/IDE固件之间的差异。

在比对过程中发现,0.89、0.951、3.02这三个版本固件之中都只修改了一处,而且是修改的同一处,位置在0x00000018,AHCI模式下原始值为06,PATA/IDE模式下为01,如下图。

0.89 diff.png


而3.70比较奇特,模式切换的变量位于0x00000020,不过AHCI模式原始值也是06,PATA/IDE模式原始值也还是01,如下图。

3.70 diff.png


由于4.27是最新固件,官方也没有提供对应版本的PATA/IDE固件,所以就没有进行对比,而是将其作为一会用于修改的基础固件。

4.27 orig.png

目前唯一知道的是ASMedia ASM1061的固件可以通过修改某个变量上的HEX值实现模式切换,AHCI为06,PATA/IDE为01,64KB ROM的最新固件版本号4.27,38144字节,约37.2KB,CRC值为5665828f。
因为前面几个版本这个模式开关都处于一个很明显的HEX值00 EC 00之后,我在4.27官方AHCI固件的0x00000020找到了06这个数值,把它改成01,保存,刷入SPI,开机的时候显示运行在PATA/IDE模式下,以为没问题了,接入一个固态安装XP系统的时候又爆出那个经典的0x0000007b蓝屏。

QQ截图20210913220759.png

QQ截图20210913220751.png

认得这个代码的都知道,这是XP以及以前系统没有集成SCSI/SATA驱动的时候才会跳的BSOD,在BIOS里修改SATA通道运行模式为IDE就能解决,但毕竟治标不治本。
而且遇到这个问题,很明显说明我修改失败了。
不知道是不是固件有暗桩,我前前后后修改了好几次,数值从00一直换到FF,没有一次成功过。
暗箱操作,无奈。
因为实在是头疼,后来刷回了4.27的AHCI固件后放在XP-NAS上继续服役了一阵子,几乎忘了这件事。

QQ截图20210913220740.png

几个月后,某次维护XP-NAS,突然想起这个事,又翻出来折腾。
不过这次我选择了一条曲线超车的方法——复制3.70的PATA/IDE固件头直接覆盖对应区域。
对比几组固件的HEX后,决定将3.70的PATA/IDE固件头从0x00000000到0x000000FF全部复制并覆盖4.27对应区域。
修改完成后保存,文件大小没变,CRC值变为cec22c1a。

3.70 4.27 diff.png

4.27 diff.png

顶着扩展卡损坏的风险,刷进去,开机,显示运行在PATA/IDE模式下,到XP桌面后打开硬件管理器,识别出来是IDE设备接口,双口都在,还带主从盘设置,这次应该是没问题了。



QQ截图20210913220807.png

QQ截图20210913220814.png

试着在扩展卡里安装XP,从引导到桌面,完全没问题,就跟板载接口在PATA/IDE模式下安装一样,使用也正常,连驱动都不用打。
这张卡到这里终于算是修改成功了。

ASM1061@IDE.PNG

从修改成功的那天(2020.12.22)算起到现在(2021.09.13),这张卡在XP-NAS上正常服役,并没有出现无法识别或者丢盘、卡盘的现象,机械硬盘在扩展卡下的休眠功能也一切正常,有明显的启停动作,到此算是彻底摆脱了官方驱动强行奴役硬盘的问题,反正我接的是机械盘,官方驱动所谓的优化性能在我看来没啥明显改进,吃我硬盘寿命和电费倒是真的。
至于修改模式后的损失嘛,说实话PCI-E 1X的带宽一共就那么点,除去损耗能接近400MB/S就该偷笑了,我反正觉得很满意。
最后奉上修改过的4.27版本PATA/IDE模式固件和Win环境固件刷新程序,打包在一个压缩包里了,省得你们说我赚黑钱~

ASMedia 1061 SATA Host Controller Firmware 4.27.zip (541.6 KB, 下载次数: 62)

打赏

参与人数 11家元 +216 收起 理由
ordman10 + 50
msold5 + 3 厉害厉害!!
643378669 + 3 優秀文章
jf201006 + 20 謝謝分享
liupengge + 20 贵在折腾
moontree + 20 謝謝分享
newnet1234 + 20 優秀文章
zty615 + 20 很喜欢你的文风
aping365 + 20 歡迎探討
ch104517745 + 20

查看全部打赏

本帖被以下淘专辑推荐:

发表于 2021-9-13 23:49:11 | 显示全部楼层
机械硬盘不适合频繁启停,电机容易挂
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-13 23:53:04 | 显示全部楼层
我不是小连 发表于 2021-9-13 23:49
机械硬盘不适合频繁启停,电机容易挂

电机只有被累死的没有被踹死的,在长期不读写的时候让它保持运转只会损耗电力和寿命,从结果来看根本不合适
回复 支持 反对

使用道具 举报

发表于 2021-9-14 00:04:29 | 显示全部楼层
我不是小连 发表于 2021-9-13 23:49
机械硬盘不适合频繁启停,电机容易挂

电机不容易挂,容易挂的是电机驱动芯片,不过做NAS其实起停不算频繁,我4块机械盘,还是4碟的厚盘到现在也没有电机驱动损坏过的
回复 支持 反对

使用道具 举报

发表于 2021-9-14 00:06:08 | 显示全部楼层
以前用XP和2003都做过NAS,现在直接刷openwrt合并做软路由了,下载用局域网其他电脑下就行,回传回去也快,还能减少点硬盘损伤
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 00:12:11 | 显示全部楼层
ww5223017240 发表于 2021-9-14 00:06
以前用XP和2003都做过NAS,现在直接刷openwrt合并做软路由了,下载用局域网其他电脑下就行,回传回去也快, ...

我还是比较喜欢手动操作的感觉,当然主要还是比较烦别人来碰我的设备哈哈
回复 支持 反对

使用道具 举报

发表于 2021-9-14 19:55:58 | 显示全部楼层
这波移花接木的操作很骚:lol:
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2021-9-14 22:02:54 | 显示全部楼层
bboroo 发表于 2021-9-14 19:55
这波移花接木的操作很骚

哈哈刚开始我也没想到居然管用
回复 支持 反对

使用道具 举报

发表于 2021-9-15 08:45:14 | 显示全部楼层
佩服很厉害的手艺:praise:
回复 支持 反对

使用道具 举报

发表于 2021-9-15 14:55:34 | 显示全部楼层
自从没了google搜索,我感觉人都变笨了很多。百度上真正有用的技术内容很少,多是重复的,或者不相干的娱乐信息。
回复 支持 2 反对 0

使用道具 举报

 楼主| 发表于 2021-9-15 16:01:35 | 显示全部楼层
vooko 发表于 2021-9-15 08:45
佩服很厉害的手艺

谢谢哈哈:lol:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-15 16:02:32 | 显示全部楼层
cyxhome 发表于 2021-9-15 14:55
自从没了google搜索,我感觉人都变笨了很多。百度上真正有用的技术内容很少,多是重复的,或者不相干的娱乐 ...

不是我说,百毒上的玩意连Google的牛毛都比不上,都是一些臭鱼烂虾信息,必要的时候真派不上用场
回复 支持 1 反对 0

使用道具 举报

发表于 2021-9-17 12:06:27 | 显示全部楼层
你这个是插m2 stat ssd吗  直接插在pci-e  X1上面 可以当硬盘启动?
回复 支持 反对

使用道具 举报

发表于 2021-9-17 12:08:53 | 显示全部楼层
我的电脑是小机箱 小主板  我的主板上有一个x16 pci-e 3.0的接口  还有2个x1的接口  我现在也是需要插好几个硬盘,我的硬盘都是M2 SATA物理规格的 请问 你这个卡 我可以用吗?
回复 支持 反对

使用道具 举报

发表于 2021-9-17 13:53:41 | 显示全部楼层
谷歌还是不错的……爬墙技术不行,没办法。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-17 17:23:32 | 显示全部楼层
yangg429 发表于 2021-9-17 12:06
你这个是插m2 stat ssd吗  直接插在pci-e  X1上面 可以当硬盘启动?

这个是基于ASM1061的双口扩展卡,不过这个卡有点特殊,直接内置了一个M.2槽位,所以你看到的是M.2+SATA各一个接口,因为ASM1061支持Legacy BIOS启动,所以在上面真的是可以启动系统的:lol:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-17 17:25:46 | 显示全部楼层
yangg429 发表于 2021-9-17 12:08
我的电脑是小机箱 小主板  我的主板上有一个x16 pci-e 3.0的接口  还有2个x1的接口  我现在也是需要插好几 ...

完全可以,不过你这样插好像有点夸张了,我建议去买一个JMB585的扩展卡,那卡有一个版本是双M.2加三个SATA接口,不过是PCI-E 4X的长度所以只能塞一张JMB585,1X那边你可以考虑一下装88SE9215,这个卡是PCI-E 1X转4个SATA的,这样的话你物理SATA接口不算主板就有4+4+3一共11个,M.2扩展口两个,缺点是开机可能慢些,毕竟两个不同卡
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-17 17:26:14 | 显示全部楼层
cj8510 发表于 2021-9-17 13:53
谷歌还是不错的……爬墙技术不行,没办法。

节哀,好多硬核技术和工具还得靠外面,我也是被逼的,百毒真的啥都找不到
回复 支持 反对

使用道具 举报

发表于 2021-9-17 19:47:37 | 显示全部楼层
windows9650 发表于 2021-9-17 17:25
完全可以,不过你这样插好像有点夸张了,我建议去买一个JMB585的扩展卡,那卡有一个版本是双M.2加三个SAT ...

问题是我有M2 2280 SATA协议的硬盘 有3个 都是512G的 不想浪费 所以我在找可以插sata m2的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-17 23:10:17 | 显示全部楼层
yangg429 发表于 2021-9-17 19:47
问题是我有M2 2280 SATA协议的硬盘 有3个 都是512G的 不想浪费 所以我在找可以插sata m2的 ...

那就JMB585一张,ASM1061我这种红卡两张,或者卖掉几个,价格合适的话很快就出手的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-4-20 21:23 , Processed in 0.343200 second(s), 14 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

快速回复 返回顶部 返回列表