无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: rgy
打印 上一主题 下一主题

[教程] [20190106]慧荣主控”免量产“自由划分多个驱动器(最多7个)

    [复制链接]
315#
发表于 2023-1-24 10:41:53 来自手机 | 只看该作者
2011yaya2007777 发表于 2023-1-24 09:11
感谢wuwuzz详尽的解释。
315#的启动U盘,有5个LUN?分别是:usb-hdd,usb-cdrom,usb-zip,usb-zip,usb-k ...

key是BIOS自己搞出来的名称,泛指U盘。
事实上,U启规范只粗略定义了磁盘类、
光驱类设备。fdd/zip/hdd/key/ls120都是
BIOS开发者自定义出来细分的东西,
不同厂家算法不同。只有1.44M软驱这个
特例,是不同BIOS厂家算法趋同。

在phoenix下,key可以看成ZIP的条件
宽松版,可以Removeable/Fixed双选。
ZIP要求的固件参数符合条件更多。

~~~~~~~~~~~~~~~~~~
F10键是很早就开始多次按(要不然可能
很快跳过)。但BIOS确实是不管你怎么
想/干,只要磁盘类设备被确认,自动、
直接就会读LBA0。数据长度都是1个
block(512字节)。

出现USB~HDD菜单再选时,会进入
读PBR动作。数据长度还是1个
block(512字节)。
~~~~~~~

ventoy情况有所不同,在PBR读之后,
还有后续又读了几次,长度不等。

因上午我要面见一位老师,回复可能
不及时。下午我回来后再继续。
回复

使用道具 举报

314#
发表于 2023-1-24 09:11:25 | 只看该作者
本帖最后由 2011yaya2007777 于 2023-1-24 10:08 编辑

感谢wuwuzz详尽的解释。
315#的启动U盘,有5个LUN?分别是:usb-hdd,usb-cdrom,usb-zip,usb-zip,usb-key,usb-key?(key是软盘?key的英文还有这一层意义?)

第1.843秒、第1.849秒,BIOS读U盘MBR(0),此时你还没有按F10键。
按了F10键。出现303#菜单,你选择第一项usb-hdd,回车。按理说这时应当首先读usb-hdd的0扇区,怎么没有这个过程?可能是先前读过有记录了?UD分区的代码是这样:CHS读0-1-1,获得每磁道扇区数,再读1-0-1,获得磁头数。然后读某固定扇区,开始他的正常启动代码,即读隐藏分区的目录及文件。这些过程没有反映出来。分析仪可以看到读哪个扇区,还应当看到读了多少扇区。你以后描述读过程,把读扇区数表述出来。

从你的描述,似乎BIOS没有把控制权交给UD的逻辑0扇区,而是自作聪明地把控制权交给分区表里唯一的一个扇区,即UD的可见分区?也可能求道者的启动镜像放在这个分区?

点评

key是BIOS自己搞出来的名称,泛指U盘。 事实上,U启规范只粗略定义了磁盘类、 光驱类设备。fdd/zip/hdd/key/ls120都是 BIOS开发者自定义出来细分的东西, 不同厂家算法不同。只有1.44M软驱这个 特例,是不同BIO  详情 回复 发表于 2023-1-24 10:41
回复

使用道具 举报

313#
发表于 2023-1-24 08:56:29 | 只看该作者
大佬腻害呀
回复

使用道具 举报

312#
发表于 2023-1-24 08:51:29 | 只看该作者
求道者 发表于 2023-1-23 21:28
那你干脆把ventoy的分区格成FAT32.
分区没限制。

我试了一下格式成FAT32,有进展。
这次BIOS不直接跳过了,而是提示未找到操作系统,拔掉未包含操作系统的盘。

从分析仪监听结果看,流程跟以前差不多。读了2次MBR(LBA=0)
然后读了LAB=0x800、0x80c、0x4800等处,应该是读了PBR并跳转。


回复

使用道具 举报

311#
发表于 2023-1-24 07:40:14 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-24 07:42 编辑
求道者 发表于 2023-1-23 21:25
现在问题还是来到了读了MBR发生了什么。

开机后,BIOS启动前后完整过程:



一、第1.843秒、第1.849秒,屏幕还没出现BIOS菜单,BIOS就读U盘MBR(位置LBA=0,2次read10,内容相同,FB的引导扇)

二、第1.856秒,BIOS发了request sense(这个是判断上面读指令返回码,是否read成功,不影响我们的启动)

三、第43.137秒、第43.326秒,这是我按F10键,选择了BIOS的USB-HDD菜单后,
BIOS读了2次U盘的2G处(位置LBA=0X400000,2次read10,内容相同,应该是FB的PBR)

四、第1m1s,进入本机硬盘WINXP USB驱动


点评

结合前面格式化成FAT32的过程我理解了。 在你按下BootMenu选单前的BIOS应该是在读取分区表,然后找PBR的位置。 从你按下BootMenu并选择项目之后,PBR被读取并执行了。 我用BOOTICE看了一下fbinst方案下的PBR。 f  详情 回复 发表于 2023-1-24 17:47
回复

使用道具 举报

310#
发表于 2023-1-23 23:41:06 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-24 07:09 编辑
2011yaya2007777 发表于 2023-1-23 21:48
我需要那两个U盘的MBR和PBR,请发上来,继续瞎猜。

8G盘和128G盘的MBR/PBR。WINHEX截取的。
mbrpbr.zip (2.38 KB, 下载次数: 2)
回复

使用道具 举报

309#
发表于 2023-1-23 23:37:31 | 只看该作者

8G盘的:





128G盘的:


回复

使用道具 举报

308#
发表于 2023-1-23 22:32:24 | 只看该作者
2011yaya2007777 发表于 2023-1-23 22:09
那这个启动盘没有菜单?还是菜单的等待时间为0?可否调大一些,让人看到,或者进入命令行。起码可以分析 ...

fba包是LZ提供的,我不太清楚他的菜单时间设定是怎样的。
实机测试时,没出现fbinst菜单。只是分析仪捕获到了BIOS的命令。
回复

使用道具 举报

307#
发表于 2023-1-23 22:30:24 | 只看该作者
2011yaya2007777 发表于 2023-1-23 21:48
我需要那两个U盘的MBR和PBR,请发上来,继续瞎猜。

请稍等

点评

8G盘的: [attachimg]518255[/attachimg] 128G盘的: [attachimg]518256[/attachimg]  详情 回复 发表于 2023-1-23 23:37
回复

使用道具 举报

306#
发表于 2023-1-23 22:29:53 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-24 07:09 编辑
2011yaya2007777 发表于 2023-1-23 21:40
多年前调试usb启动代码,硬件USB协议分析仪很贵,单位没有,我买不起,也没有必要买他。使用软件,我确实看 ...

内容比较多,我一项一项来。

这里大致解释,BIOS把U盘识别为removeable移动盘(盘号00)/fixed固定盘(盘号80)的算法
细节记不太清了,得回去重新看代码。

不同的BIOS算法不同。
最关键的参数还是U盘容量(总扇区数)。这个参数由主机端(UEFI/BIOS)发出命令请求,客户端(U盘固件)回答。
===================================================================
AMI的算法有2种:
1.移动介质位不作为编译选项(常见)。则以528MB(按扇区数表达)为界限,大于的算固定盘,小于的算移动盘。
2.移动介质位(RMB)作为编译选项(不常见),如果开启此编译选项,则生成的BIOS可执行码就以此为主要标准之一,
是移动介质的,算移动盘;否则,固定介质算固定盘。

其他辅助:
3.MBR/PBR作为辅助判断标准,就是看有没有分区之类,有分区则倾向固定盘。
4.有些老版本的AMI BIOS提供Force FDD选项,这个就是不管不顾,强行设定为removeable。
====================================================================

Phoenix的算法:
设置一个字节结果判别fixed/removeable,这个字节有8个位。
其中有几条运算规则,这些规则分别影响那8个不同位的0/1变化。
1.是容量(扇区数)
2.ZIP驱动器专用指令执行结果

如果两条有互斥关系的规则指令都执行成功,字节结果无法断定R/F,则把选择留给用户,按F键选FIXED,
按R键选removeable。注意我在299#给的图,ZIP/KEY后面都有R/F标志,这说明运算结果不确定,
可以两选。


更进一步的原因解释:ZIP是两栖设备,早期通过跳线,后期通过切换指令,可以设为FDD/HDD。
原始的Iomega ZIP驱动器早就淘汰死了,但其思路影响了BIOS开发者,所以在判定算法中延袭下了F/R
切换思路。(这个是在源码注释中解释了)




回复

使用道具 举报

305#
发表于 2023-1-23 22:09:36 | 只看该作者
LZ的例子,启动时看不到fbinst的菜单。

那这个启动盘没有菜单?还是菜单的等待时间为0?可否调大一些,让人看到,或者进入命令行。起码可以分析,UD启动代码是否执行正确。只要出菜单,或者进入命令行,这个间断的启动过程是成功的。剩下来的是后续的问题。

点评

fba包是LZ提供的,我不太清楚他的菜单时间设定是怎样的。 实机测试时,没出现fbinst菜单。只是分析仪捕获到了BIOS的命令。  详情 回复 发表于 2023-1-23 22:32
回复

使用道具 举报

304#
发表于 2023-1-23 21:48:23 来自手机 | 只看该作者
我需要那两个U盘的MBR和PBR,请发上来,继续瞎猜。

点评

8G盘和128G盘的MBR/PBR。  详情 回复 发表于 2023-1-23 23:41
请稍等  详情 回复 发表于 2023-1-23 22:30
回复

使用道具 举报

303#
发表于 2023-1-23 21:40:58 | 只看该作者
多年前调试usb启动代码,硬件USB协议分析仪很贵,单位没有,我买不起,也没有必要买他。使用软件,我确实看到了U盘的启动过程。现在不讨论他。

现在的BIOS启动管理器很好!截图看到了。多年前我的电脑不行。那这样分成多个盘还是有用的。

UD分区情况比较复杂,在这里不讨论。

识别为软盘后,在G4D命令行,执行root或者vol,看看是支持LBA,还是只支持CHS。

你看了好多固件启动代码,那你说一说,BIOS识别U盘为软盘或者硬盘的条件是什么?我只是瞎猜,你一定知道内在奥秘。

点评

内容比较多,我一项一项来。 这里大致解释,BIOS把U盘识别为removeable移动盘(盘号00)/fixed固定盘(盘号80)的算法 细节记不太清了,得回去重新看代码。 不同的BIOS算法不同。 最关键的参数还是U盘容量(总扇  详情 回复 发表于 2023-1-23 22:29
回复

使用道具 举报

302#
发表于 2023-1-23 21:40:04 | 只看该作者
wuwuzz 发表于 2023-1-23 20:27
欢迎YAYA老大回复,我仔细看了您的段落,在我认知范围内,一一作答:

一、软件USB协议分析,是OS过滤 ...

然后fbinst前64个扇区都是差不多一样的引导记录。
按理说不应该会跳转到PBR。
直接跳转到UD了。
回复

使用道具 举报

301#
发表于 2023-1-23 21:28:03 | 只看该作者
wuwuzz 发表于 2023-1-23 08:32
我做了ventoy盘测试了,跟FB的情况差不多。BIOS读了MBR,PBR,但启动不起来。

ventoy使用了exfat, ...

那你干脆把ventoy的分区格成FAT32.
分区没限制。

点评

我试了一下格式成FAT32,有进展。 这次BIOS不直接跳过了,而是提示未找到操作系统,拔掉未包含操作系统的盘。 从分析仪监听结果看,流程跟以前差不多。读了2次MBR(LBA=0) 然后读了LAB=0x800、0x80c、0x4800等处  详情 回复 发表于 2023-1-24 08:51
回复

使用道具 举报

300#
发表于 2023-1-23 21:25:10 | 只看该作者
本帖最后由 求道者 于 2023-1-23 21:30 编辑

现在问题还是来到了读了MBR发生了什么。

点评

开机后,BIOS启动前后完整过程: [attachimg]518266[/attachimg] 一、第1.843秒、第1.849秒,屏幕还没出现BIOS菜单,BIOS就读U盘MBR(位置LBA=0,2次read10,内容相同,FB的引导扇) 二、第1.856秒,BIOS发了  详情 回复 发表于 2023-1-24 07:40
回复

使用道具 举报

299#
发表于 2023-1-23 20:27:27 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-23 20:44 编辑
2011yaya2007777 发表于 2023-1-23 16:52
G4D现在是无法直接看到UEFI/BIOS----U盘间会话,这是底层的事。你有硬件USB协议分析仪,这不错。我以前使 ...

欢迎YAYA老大回复,我仔细看了您的段落,在我认知范围内,一一作答:

一、软件USB协议分析,是OS过滤驱动。1是有些包抓不到;2是工作在OS环境下。
而在UEFI/BIOS启动环境,只有硬件USB协议分析仪能胜任(不依赖被监视UEFI/BIOS和被监视U盘)。
============================================================

二、Multi-LUN多驱支持。

UEFI/BIOS基本上都支持,很常见啊。一个LUN对应一个驱动器设备,这个设备
可能是磁盘驱动器(HDD\ZIP\FDD\LS120),也可能是光驱(CD\DVD)。哪个LUN作为
启动设备,要看用户选哪个BIOS的LUN菜单项了。比如:我的128G优盘(人为)做了
5个LUN:1HDD+2CD+3ZIP+4KEY+5KEY,选中哪个就从哪个设备启动。
当然,某一时点,只能选1个LUN做为启动设备。下面就是在问题机K470下的
BIOS菜单项



============================================================

三、LZ的例子,启动时看不到fbinst的菜单。但通过分析仪,可以看到BIOS读了MBR,
(随后又读了PBR,这应该是fbinst启动软件的代码在发挥作用,通过BIOS的read PBR动作
展现出来,且这两个read动作均被分析仪捕获)。具体内容可参考我在295#发的截图。
读的MBR/PBR内容解析,我不擅长,您应该一看便知读到的内容含义。

=============================================================
四、是的。8G/128G盘都被识别为盘符A。

这2个盘都被我做成多LUN了。用于测试的都是第一LUN/HDD/固定(介质)位/FAT分区,
容量是这样:
8G的优盘,第一LUN分了7.5G FAT32
128G的U盘,第一LUN分了114G(其中FAT分区16G)。

您是不是想知道,为什么被设定为Removeable、盘号0x00(DOS下A)?而不是Fixed。

因为我学习过流出的phoenix BIOS、AMI BIOS源码,知道其算法大概,也有同系phoenix BIOS
其他版本实体机对比。所以,我能判断主要原因不是上面提到的那些因素。那些因素是“一般、正常”
情况下的情形(尤其是phoenix BIOS,基本不关心MBR/PBR的情况,AMI BIOS则参考MBR/PBR因素)。

我在划分LUN的时候,就考虑到了这些,目的就是想让其成为HDD,也知道通常情况下,会
被设定为0x80(DOS下C)之类。但具体到神舟K470不是这样,而是人为裁减Fixed功能模块
(或修改BIOS时的失误BUG)造成。

点评

然后fbinst前64个扇区都是差不多一样的引导记录。 按理说不应该会跳转到PBR。 直接跳转到UD了。  详情 回复 发表于 2023-1-23 21:40
回复

使用道具 举报

298#
发表于 2023-1-23 16:52:46 | 只看该作者
现在有办法缓解这个状况,杀鸡用牛刀,用硬件USB协议分析仪(抓包器+解析软件)
实现上电---枚举--G4D运行全流程观察。

G4D现在是无法直接看到UEFI/BIOS----U盘间会话,这是底层的事。你有硬件USB协议分析仪,这不错。我以前使用过软件USB协议分析仪。这是一个不得以的办法。除此之外,在MBR或者PBR插入调试显示代码,这更麻烦,还的反编译,修改,再编译。

关于U盘量产为多个LUN,我认为用处不大,不会提高兼容性。
一般BIOS只启动第一个LUN。后面的LUN,启动后要么看不见,即便看得见,此时也只能作为数据盘使用,与启动无关。
要是BOIS的启动管理器特别强大,进入管理器可以显示U盘的USB-CDROM,USB-HDD等等选项,那就有价值了。可惜我没有见过。不知有人遇见过吗?

讨论U盘启动,我认为只要BIOS把控制权交给U盘的MBR代码,就是BIOS成功启动了U盘。这时可以说BIOS识别该U盘。经常看到有人不能启动U盘,就说BIOS不识别该U盘,是不严谨的。至于说为什么启动失败,那原因多了去了。情况太复杂,在这里限定可以启动到DOS,或者启动到G4D的菜单,就是启动成功。下一步启动操作系统失败,其原因不在这里讨论。

如果不能启动到DOS,或者不能启动到G4D的菜单,就需要看UEFI/BIOS----U盘间会话。
没有读MBR,就是真正意义上的BIOS不识别该U盘。
如果读了MBR,之后读的扇区不是PBR,说明是MBR代码的问题。以前有的代码判断分区ID,低版本采用CHS方式读,高版本采用LBA方式读。NT5判断分区尺寸,小于某个值采用CHS方式读,否则采用LBA方式读。采用CHS方式读,问题太多,必须避免。
如果读了MBR,之后读的扇区是PBR,大概率的成功的。

按以上思路,看看楼主启动失败的U盘,是哪种情况。

我感兴趣的是,你有两个U盘,分别是8G和128G,启动都识别为盘符A?
说明一下,有几个分区,分区类型,分区容量,MBR表,PBR的BPB参数。U盘固件的“固定/移动”设置位是什么?

点评

欢迎YAYA老大回复,我仔细看了您的段落,在我认知范围内,一一作答: 一、软件USB协议分析,是OS过滤驱动。1是有些包抓不到;2是工作在OS环境下。 而在UEFI/BIOS启动环境,只有硬件USB协议分析仪能胜任(不依赖被  详情 回复 发表于 2023-1-23 20:27
回复

使用道具 举报

297#
发表于 2023-1-23 08:32:54 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-23 12:10 编辑
求道者 发表于 2023-1-22 20:46
这姑且算是fbinst的兼容性问题了。
Ventoy我也测试过,也是这样。
没法启动。


我做了ventoy盘测试了,跟FB的情况差不多。BIOS读了MBR,PBR,但启动不起来。

ventoy使用了exfat,老旧BIOS不一定
支持这种分区吧。

我看,格式搞的越复杂,越容易存在隐患。
就简简单单地用fat/G4D,可以正常启动
K470。


点评

那你干脆把ventoy的分区格成FAT32. 分区没限制。  详情 回复 发表于 2023-1-23 21:28
回复

使用道具 举报

296#
发表于 2023-1-22 20:46:29 | 只看该作者
wuwuzz 发表于 2023-1-22 17:08
未启动成功,直接跳过进入本机硬盘win。但通过分析仪抓包知道,U盘是有启动动作的,
只不过,不是预期效 ...

这姑且算是fbinst的兼容性问题了。
Ventoy我也测试过,也是这样。
没法启动。
@longpanda

点评

我看了,跟FB的情况差不多。BIOS读了MBR,PBR, 但启动不起来。我看ventoy使用的是exfat,老旧 BIOS不一定支持这种分区吧。 我看,格式搞的越复杂,越容易存在隐患。就简简单单 地用fat/G4D,可以正常启动K470  详情 回复 发表于 2023-1-23 08:32
回复

使用道具 举报

295#
发表于 2023-1-22 17:08:43 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-22 17:51 编辑
求道者 发表于 2023-1-22 15:45
链接: https://pan.baidu.com/s/1dQoFyQA4TQ0UYAE4rp78Qw?pwd=qd1m 提取码: qd1m 复制这段内容后打开百度 ...

未启动成功,直接跳过进入本机硬盘win。但通过分析仪抓包知道,U盘是有启动动作的,
只不过,不是预期效果。情况如下:


一、开机后,BIOS第1秒读取了U盘MBR,LBA=0,内容应该是FB的引导扇。




二、之后我按了F10键BIOS启动项菜单,第43秒选了USB-HDD项,BIOS读取了U盘2GB处,
LBA=0X400000,应该是PBR的内容吧。之后启动软件没有什么动作、分析仪无数据。




三、第1分1秒,进入本机硬盘winXP USB驱动过程。





点评

这姑且算是fbinst的兼容性问题了。 Ventoy我也测试过,也是这样。 没法启动。  详情 回复 发表于 2023-1-22 20:46
回复

使用道具 举报

294#
发表于 2023-1-22 15:45:15 | 只看该作者
wuwuzz 发表于 2023-1-22 14:56
该有10多年没碰过fb了,语法全忘。
需要测试的话,请做个简单的FBA
包发上来,我在U盘上恢复一下试试。

链接: https://pan.baidu.com/s/1dQoFyQA4TQ0UYAE4rp78Qw?pwd=qd1m 提取码: qd1m 复制这段内容后打开百度网盘手机App,操作更方便哦
--来自百度网盘超级会员v2的分享

点评

未启动成功,直接跳过进入本机硬盘win。分析仪抓包情况如下: 一、开机后,BIOS第1秒读取了U盘MBR,LBA=0,内容应该是FB的引导扇。 [attachimg]518145[/attachimg] 二、之后我按了F10键BIOS启动项菜单  详情 回复 发表于 2023-1-22 17:08
回复

使用道具 举报

293#
发表于 2023-1-22 14:56:14 | 只看该作者
求道者 发表于 2023-1-22 13:52
fbinst+G4D能启动吗?
上次IS903测试环境就是这个,启动不了。

该有10多年没碰过fb了,语法全忘。
需要测试的话,请做个简单的FBA
包发上来,我在U盘上恢复一下试试。

点评

链接: https://pan.baidu.com/s/1dQoFyQA4TQ0UYAE4rp78Qw?pwd=qd1m 提取码: qd1m 复制这段内容后打开百度网盘手机App,操作更方便哦 --来自百度网盘超级会员v2的分享  详情 回复 发表于 2023-1-22 15:45
回复

使用道具 举报

292#
发表于 2023-1-22 13:52:08 | 只看该作者
本帖最后由 求道者 于 2023-1-22 13:59 编辑
wuwuzz 发表于 2023-1-22 10:48
您有点急躁了。

这里HDD下做DOS盘只是为了方便测试,验证BIOS-U盘固件层面启动没大阻碍,

fbinst+G4D能启动吗?
上次IS903测试环境就是这个,启动不了。

点评

该有10多年没碰过fb了,语法全忘。 需要测试的话,请做个简单的FBA 包发上来,我在U盘上恢复一下试试。  详情 回复 发表于 2023-1-22 14:56
回复

使用道具 举报

291#
发表于 2023-1-22 10:53:00 | 只看该作者
2011yaya2007777 发表于 2023-1-21 23:53
识别为盘符A:,说明U盘启动成功。如果对后续操作有影响,比如非得是盘符C:,可以试一试加载g4d的usb驱动( ...

YAYA老大来了,欢迎欢迎。机会难得,我汇报3件事:

一、楼上470机您说得对,通过usb --init可以改变drive number为0X81,映射到C。
至于驱动是USB2的,也不遗憾。因为470就是USB2机子,USB3用不上,刚好合适。
当然,USB2驱动加载时,是需要反复试的,470有3个USB2口、1个ESATA/USB2
混合口,不是每个口都能成功。
==================================================

二、我想重点讲第2件事---debug手段的完善。

在fbinst、G4D、G4E开发历史上,有个痛点:无法直接看到UEFI/BIOS----U盘间
会话,调试不得不绕圈子,以间接方式观察。

现在有办法缓解这个状况,杀鸡用牛刀,用硬件USB协议分析仪(抓包器+解析软件)
实现上电---枚举--G4D运行全流程观察。当然,没有INT13、UEFI文件协议这种
封装后的东西,分析仪观察到的是底层USB包,尤其是SCSI命令包。

像前面290#,我怎么知道read10命令读取位置是LBA=0、LBA=0X800、LBA=0X3F
这样的数据,我没能力分析获知呵,是分析仪的功劳啊。

这个话题,不知您有没有兴趣,没兴趣就不耽误时间了,有兴趣我再多说点。

=======================================================
三、在哪个帖子说过fbinst CHS代码似乎可以消除的结论。这是有实际根据支持的。

1.现代U盘固件和UEFI/BIOS情况。已经测试市场常见大量U盘固件,均支持
“获取总扇区数”命令,BIOS准确获得“总扇区数”参数,问题关键就解决了,
再加上现在U盘容量很大,反算(伪造)U盘的HS时,基本可以保证H=255、S=63
唯一性。

2.“获取固件CHS”命令(绝大部分U盘固件不支持),在特殊情况下BIOS会用到,
而现在我们几乎没什么机会触发BIOS内置的特殊情况。所以即使U盘固件不支持,
问题还不算突出。



回复

使用道具 举报

290#
发表于 2023-1-22 10:48:51 | 只看该作者
求道者 发表于 2023-1-21 23:21
我不用DOS做启动盘啊。
没啥用啊。

您有点急躁了。

这里HDD下做DOS盘只是为了方便测试,验证BIOS-U盘固件层面启动没大阻碍,
并非只能用于DOS,当然也可以做G4D启动盘。我试了,用最新G4D 046A 2022-12版
成功。自然,通过G4D进一步启动微PE.ISO也是没问题的。

喜欢用DOS测试,理念有点类似于不点,只关注第1顺序启动控制权移交,
只要能进就OK,至于后续PE启动出问题,那是另一个话题,不太关注。
===========================================
题外话,这次K470有个意外收获,那就是phoenix式的ZIP取得进展。

通过对比发现:
K470 phoenix BIOS是阉割HDD,保留ZIP。
联想F31A同系phoenix BIOS则相反,保留HDD,阉割ZIP。

两种机型都保留了USB-KEY(KEY可以认为是ZIP的判定条件宽松版,而ZIP
则有更多的对固件参数要求。根据phoenix BIOS源码,phoenix式的ZIP
目前我们只能了解100MB/250MB这两种,容量太小了,这没什么实际
使用价值,只是作为学习Phoenix BIOS源码算法验证)




点评

fbinst+G4D能启动吗?  详情 回复 发表于 2023-1-22 13:52
回复

使用道具 举报

289#
发表于 2023-1-21 23:53:50 来自手机 | 只看该作者
识别为盘符A:,说明U盘启动成功。如果对后续操作有影响,比如非得是盘符C:,可以试一试加载g4d的usb驱动(可惜是2.0的),驱动会将盘符A映射到C。

点评

YAYA老大来了,欢迎欢迎。机会难得,我汇报3件事: 一、楼上470机您说得对,通过usb --init可以改变drive number为0X81,映射到C。 至于驱动是USB2的,也不遗憾。因为470就是USB2机子,USB3用不上,刚好合适。  详情 回复 发表于 2023-1-22 10:53
回复

使用道具 举报

288#
发表于 2023-1-21 23:21:47 | 只看该作者
wuwuzz 发表于 2023-1-21 21:49
一、读2次。以我的3257 8G/3267 128G DOS启动盘为例。

第1次均读1个扇区,位置LBA=0;

我不用DOS做启动盘啊。
没啥用啊。

点评

您有点急躁了。 这里HDD下做DOS盘只是为了方便测试,验证BIOS-U盘固件层面启动没大阻碍, 并非只能用于DOS,当然也可以做G4D启动盘。我试了,用最新G4D 046A 2022-12版 成功。自然,通过G4D进一步启动微PE.ISO也  详情 回复 发表于 2023-1-22 10:48
回复

使用道具 举报

287#
发表于 2023-1-21 22:17:34 | 只看该作者
多谢楼主分享!
回复

使用道具 举报

286#
发表于 2023-1-21 21:49:51 | 只看该作者
求道者 发表于 2023-1-21 14:31
然后读软盘的分区PBR,不读MBR了?fbinst能抢救一下吗?

一、读2次。以我的3257 8G/3267 128G DOS启动盘为例。

第1次均读1个扇区,位置LBA=0;
第2次均读1个扇区,3257位置LBA=0X800。3267位置LBA=0X3F。

以上应该还是读MBR、PBR。

二、不需要fbinst抢救,因为成功启动到DOS,只不过盘符是A:。




点评

我不用DOS做启动盘啊。 没啥用啊。  详情 回复 发表于 2023-1-21 23:21
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-6-19 00:05

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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