无忧启动论坛

标题: TF卡应该怎么在bootice 0.9选择优先驱动器或分区号 [打印本页]

作者: redbee    时间: 2012-1-28 19:21
标题: TF卡应该怎么在bootice 0.9选择优先驱动器或分区号
硬件:SSK 多功能读卡器,8G金士顿TF卡
软件:bootice 0.9,grub4dos  0.4.4

我用 bootice 0.9 把TF做成了启动盘。
选择的是写入mbr,类型用grub4dos 0.4.5b mbr。
配置grub for dos里,选择的是:
禁止搜索软盘上的grldr。
禁止引导分区表无效的原主引导记录(通常是一个操作系统的引导扇区)
然后把grub4dos 0.4.4的两个文件:
grldr
menu.lst
复制到TF卡根目录下。

做完后,启动出错,错误如下:
try (hd0,0): ntfs5: ntfs5
try (hd0,1): extended:
try (hd0,2): invalid or null
try (hd0,3): invalid or null
try (hd0,4): fat32:
try (fd0): non-ms:skip

try (hd0,0): ntfs5: no grldr
try (hd0,1): extended:
try (hd0,2): invalid or null
try (hd0,3): invalid or null
try (hd0,4): fat32: no grldr
try (fd0): non-ms:skip
cannot find grldr in all drives. press ctrl+alt+del to restart.

我晕啊,怎么找不到TF卡。
我接下来把grub4dos的两个文件复制到硬盘的c盘,可以正常启动到grub4dos的菜单了。

我晕啊,看来是配置grub for dos 时
要加上以上两项:
优先引导的驱动器
优先引导的分区

可是这两项的值默认都是255,这我就不明白该怎么改了。

怎么查看自己的读卡器在启动时应该是那个驱动器?值应该是多少?

我安装linux时,看到自己的读卡器在设备中是SDC4,u盘在设备中是SDB4,这个有帮助吗?
作者: sratlf    时间: 2012-1-28 19:34
标题: 回复 #1 redbee 的帖子
换0.4.5c新版测试后再来提问
作者: xianglang    时间: 2012-1-28 19:39
可能是你的TF卡被识别成软盘了,因此做U盘时不要勾选禁止搜索软驱这一项。还有,G4D还是用最新版比较好,0.4.4太古老了。
作者: redbee    时间: 2012-1-28 21:11
已经试过最新版的G4d,版本到0.4.5c,还是一样的错误,已经没有勾选禁止搜索软驱这一项,还是不行。我在配置时什么选项都不打√,还是一样的错误提示,可能是要手动指定搜索驱动器,但是(hd3,4)这个值在bootice 0.9怎么设置。
作者: sratlf    时间: 2012-1-28 21:38
标题: 回复 #4 redbee 的帖子
换读卡器把  找个启动兼容性好点的读卡器

最好是U盘  非常不推荐读卡器
作者: redbee    时间: 2012-1-28 21:47
这个没办法,我是一台平板电脑,用的是平板电脑上的读卡器。

平板电脑:
优派的97i,有一个TF读卡器,我准备安装一个linux到卡上,这样想用的时候,从卡上启动就好,可是一直没办法配置好g4d,必须有一些文件要放在C盘上。C盘上是win7。

我想把这两个系统完全独立开来,这样不影响我使用。这个平板一家人都玩,所以麻烦点。
作者: 不点    时间: 2012-1-28 21:53
你已经通过硬盘上的 GRLDR 进入了 grub 环境,很好。

进入 grub 环境后,你自己先在命令行下找找你的 TF 卡,看看能否找到 TF 卡上的文件。

应该可以找到的,如果找不到,那可能是 TF 卡上的文件系统不是 FAT/NTFS/Linux ext2,或者有其它问题,比如 CHS 问题。如果那样的话,安装 fbinst 是一个理所当然的选择。如果也失败,那就安装微软的 DOS 或者 NTLDR,如果还是失败,安装 wee。如果也失败,安装 syslinux 吧。

安装别的引导程序,启动成功后,grub4dos 作为第二级的启动软件,照样可以进入 grub 环境。假定你是知道这些技巧的。

[ 本帖最后由 不点 于 2012-1-28 21:56 编辑 ]
作者: sratlf    时间: 2012-1-28 21:53
标题: 回复 #6 redbee 的帖子
那种读卡器应该不能做启动把  至少我没见过启动成功的
作者: 不点    时间: 2012-1-28 21:58
标题: 回复 #8 sratlf 的帖子
显示 try .... 就表示它能够启动 grub4dos,只是由于 CHS 或者文件系统的错误,未能成功罢了。启动硬盘上的 grldr 成功,则是最有力的证明。
作者: redbee    时间: 2012-1-28 23:38
grub4dos确实是启动成功,把配置文件grldr和menu.lst放在硬盘上是启动成功的。

我是想要把这两个配置文件放在TF卡上,这个想法没成功。

因为是用bootice 0.9做的,不知道有没有关系。

fbinst 我试过了,在我台式电脑上完全没反应,启动不了。

我的目的是配置两套系统,平板电脑硬盘上是win7,读卡器里用TF卡启动LINUX,在文件上完全不相关,互不读盘。

要用Linux时插上TF卡就可以用,平时拔出TF卡,win7不受影响。

[ 本帖最后由 redbee 于 2012-1-28 23:39 编辑 ]
作者: 不点    时间: 2012-1-29 03:57
这个主板对 grub4dos 以及 fbinst 都不支持,这就怀疑(根据多年来的实践,实际上是断定)它是故意与开源为敌。

因此,你还得麻烦一下,用微软的 DOS 或者 BOOTMGR 来做 TF 卡的第一启动,而用 grub.exe 或者 wee63.mbr 做第二启动。因为你没有尝试这个方案,所以,有理由相信,这个方案是基本可行的。

补充说明:

我很重视这个报告。这是一个非同一般的大事。希望报告者有决心把问题弄清楚。

[ 本帖最后由 不点 于 2012-1-29 11:27 编辑 ]
作者: redbee    时间: 2012-1-29 14:31
首先谢谢不点大神的关注。给不点大神拜个年。

我以前讲得太急了,有些地方没讲清楚。

我的电脑硬件和软件环境:

台式机:技嘉GA-MA78G-DS3H ,AWARD BIOS 版本 F4
系统:xpsp2+卡巴斯基2012安全部队

读卡器:SSK 奔腾一代多功能读卡器

TF:金士顿8G C4 ,未分区,FAT32。

平板电脑:优派97i ,ami bios 版本 08.00.16
系统:win7

平板电脑读卡器:查不到型号,bios里只有“usb2.0 cardreader combo0” 字样。

平板电脑bios里有关设置如下:

第一启动设备:
usb:usb2.0 cardreader combo0
第二启动设备:
sata:sm-kingspec ksm-smp.5-032m

usb设置菜单里有关选项如下:
emulation type (这个应该是模拟成什么设备):【auto】
选项有:auto , floppy , forced fdd , hard disk , cdrom

制作流程如下:
1、在台式机上用bootice 0.9+grub4dos 0.4.5c 对 ssk + TF 8G 做启动配置,配置写入mbr。
(不敢在平板电脑上直接配置TF卡,万一读卡器不适应烧了,我的平板电脑就没有读卡器用了,三天前在台式机上自己测试时,已经烧了一个读卡器,只好来求助了。)

2、把TF卡插入平板电脑的读卡器卡槽,启动。

出现错误如1楼。

3、个人判断是可以启动,把两个配置文件复制到平板电脑硬盘,TF卡可以启动了,进入grub4dos 0.4.5c 的菜单。

(觉得是这里不对,因为grub4dos没有找到TF卡上的分区,没能加载TF卡上的配置文件。)

然后在台式机上试用fbinst 来做启动配置,不知道什么原因,fbinst 不能启动程序,没有任何反应。

4、dos系统试用过论坛里的hp纯dos配置程序,不能启动,在黑屏下左上角只显示一个小写字母“j” 。

5、用ultraISO 9.3.3.2685 写入usb-HDD+ 和 usb-ZIP+ ,然后用HP纯dos配置,还是不能启动,同上一条,在黑屏下左上角只显示一个小写字母“j” 。

6、bios里设置针对第5条改动并测试,测试如下:

bios 里hard disk 和 auto 对 usb-HDD+模式 共测两次,不行,同1楼结果。

bios 里 forced fdd 和 auto 对 usb-ZIP+ 模式 共测两次,不行,同1楼结果。

晕,看来优派的主板不怎么样啊。

我现在试试,在台式机上用win7的usb安装程序写入一个win7镜像的iso到Tf卡上,来测试一下bootmgr能不能启动系统。


加一句:在grub 命令行下用什么指令查看 TF 卡?root吗?

[ 本帖最后由 redbee 于 2012-1-29 14:42 编辑 ]
作者: 不点    时间: 2012-1-29 16:29
照你这么说,连 DOS 都不能启动,我倒是觉得真是太不可思议了。你所描述的 DOS,似乎不是微软最好的 DOS。觉得你那个 DOS,是别人做过 “ 手脚 ” 的 DOS,不排除 “ 流氓 DOS ” 的可能性(显示 j 是很奇怪的,似乎从未听说 DOS 显示 j)。你试过微软 win98 的 DOS 以及 XP 的 DOS 吗?XP 创建启动软盘,所制作的 DOS,其实就是 WinMe 的 DOS。

grub 命令行下,用 ls 之类的命令,或者用 tab 补全方法,都可以查看 fd0 等设备。

map --status 可以列出有多少个软盘和硬盘。

root 命令可以显示当前的设备。

geometry 命令可以显示设备的 CHS 信息。

另外,假如你怀疑 TF 卡被识别为软盘,你可以用

cat --hex (fd0)+1

来显示软盘第一扇区,看看这个第一扇区有没有分区表,有没有 BPB 表,有没有结束标志 55 AA。

[ 本帖最后由 不点 于 2012-1-29 16:34 编辑 ]
作者: redbee    时间: 2012-1-29 18:05
那我晚上再试试别的dos看看,我用的是这个dos。

bios之家论坛的HP优盘格式化工具

论坛 › 品牌BIOS技术论坛 › 笔记本 BIOS技术部 › HP优盘格式化工具(破解版)-进纯DOS刷BIOS必备!

因为以前平板电脑升级bios时,要用纯dos环境,用过这个工具,不过那时是用u盘启动,不是用tf卡。

说来也怪,为什么u盘可以启动,但是tf卡不能,多了个硬件,就麻烦了许多,不过也学到了不少新知识。
作者: 不点    时间: 2012-1-29 18:21
自己动手,丰衣足食,不要用别人的 DOS。

DOS 谁也生产不了,只有微软能生产。别人生产的 DOS,都不是标准的 DOS。

微软有 DOS,何必用别人的?

只有当微软的 DOS 也不行的时候,才考虑别人的。

自己很容易办到的事,不要求助于别人。别人给的,不一定是好的。

相信自己。如果连自己都不相信,那是舍本逐末。

你不是已经试验 bootmgr 了吗?难道也失败了?

记住把 13 楼的命令输出结果贴出来。

[ 本帖最后由 不点 于 2012-1-29 18:24 编辑 ]
作者: redbee    时间: 2012-1-29 21:30
已经用微软官方的Windows 7 USB DVD Download Tool制作了tf卡的启动盘,tf卡被程序自动格式化ntfs,经平板电脑测试不能启动。

故障表现为:

系统未死机,键盘灯可以开关,但一直黑屏无显示,左上角有光标闪烁。


按不点大神指点,把配置grub4dos两个配置文件复制到平板电脑硬盘,可以正常启动grub4dos菜单,在命令行下测试以下命令:

map --status 可以列出有多少个软盘和硬盘。
结果:
floppies_orig=1, harddrives_orig=1,floppies_curr=1,harddrives_curr=1
Number of ATAPI CD-ROMs: 0
ram_drive=0x7f, rd_base=0*0, rd_size=0*100000000

root 命令可以显示当前的设备。
结果:
(hd0,0)filesystem type is ntfs, partition type 0*07

geometry 命令可以显示设备的 CHS 信息。
结果:
drive 0*80(LBA): c/h/s=3892/255/63, sector count/size=62524980/512
    partition num: 0, active, filesystem type is ntfs, partition type 0*07
    partition num: 4, filesystem type is fat, partition type 0*0B

(我的平板电脑硬盘是分成两个区,主分区是ntfs,装了win7,逻辑分区是fat32,资料盘)

cat --hex (fd0)+1 (测试TF卡是否被认为成软驱)
结果:
Error 1: Filename must be either an absolute pathname or blocklist


怎么感觉好像没有TF卡的?

[ 本帖最后由 redbee 于 2012-1-30 00:44 编辑 ]
作者: redbee    时间: 2012-1-30 00:54
已经用“简易启动测试器” 4.0 beta6 测试。

结果:
在台式机上,ssk+TF 启动正常。

在平板电脑上,win7环境,启动正常。

顶不住了,明天晚上再来测试。


[ 本帖最后由 redbee 于 2012-1-30 00:58 编辑 ]
作者: 不点    时间: 2012-1-30 09:24
floppies_orig=1, harddrives_orig=1

意思是,ROM BIOS 认定有一个软盘,一个硬盘。

既然你知道 (hd0) 是你的本机硬盘,那么也就能够肯定,(fd0) 是你的 TF 卡了。

cat --hex (fd0)+1 (测试TF卡是否被认为成软驱)
结果:
Error 1: Filename must be either an absolute pathname or blocklist

很遗憾地,你肯定发生了语法错误,才导致这条出错信息。有可能少了空格,或者多了空格。

既然已经知道 TF 卡是软盘,接下来用

geometry    (fd0)
ls     (fd0)/
root      (fd0)
cat     --hex      (fd0)+1

看看有什么结果?

你这个情况不是 “ 死马当活马医 ”,而是 “ 本来就是活马,但是冰冻起来了,只需解冻 ”。
作者: redbee    时间: 2012-1-30 10:51
指令测试结果:
geometry    (fd0)
drive 0*00(LBA): c/h/s=1024/255/63, sector count/size=16450560/512

ls     (fd0)/
error 17: cannot mount selected partition

root      (fd0)
error 17: cannot mount selected partition

cat     --hex      (fd0)+1
这个分区表和bpb表不会看,但是结尾有55 aa。
分区表和bpb表等会上图。
作者: 不点    时间: 2012-1-30 10:59
很恐怖,fd0 竟然支持 LBA,却又未能识别。这里面一定有秘密,等着瞧。
作者: redbee    时间: 2012-1-30 11:28



作者: 不点    时间: 2012-1-30 11:56
非常好。

看到了,你贴出的,是软盘第一扇区。这个扇区,其实是软盘的 MBR 扇区。这个软盘是带有分区表的。它只有一个分区,起始于扇区 0x40。因为前面你已经说过,软盘上的文件系统是 FAT32,因此,你可以在 BOOTICE 安装的时候,选择 “ 复制 BPB ” 之类的选项,将 MBR 上的 BPB 填充。目前,你的 MBR 上的 BPB 是空的。如果 BPB 是空的,那么整个软盘就不可能成为一个合法的 FAT 格式,只有软盘的分区 (fd0,0) 才是合法的 FAT 格式。因此,现在你用

ls     (fd0,0)/

应该可以访问软盘上的文件了。

如果你把 BPB 填充之后,就可以用

ls     (fd0)/

来访问软盘上的文件了。

先说这么多,下午接着分析。

[ 本帖最后由 不点 于 2012-1-30 11:58 编辑 ]
作者: redbee    时间: 2012-1-30 13:11
测试结果:

重新配置了TF卡,在“配置grub for dos”界面已选取“复制第一个fat主分区的bpb到mbr”。

启动还是不行。

把配置文件复制到硬盘,再开机可以启动,进入命令行。

ls     (fd0,0)/

可以访问软盘上的文件了。

ls     (fd0)/

不能访问软盘上的文件。

显示错误:
Error 17: Cannot mount selected partition

晕,看来BPB没有填充进去。

怎么才能填充BPB?

用cat     --hex      (fd0)+1 命令查看比对,和以前一样,没有变化。

BPB填充成功的话,那几行数据会发生变化?

下午会很忙,要等到晚上才能再测试了。

[ 本帖最后由 redbee 于 2012-1-30 13:15 编辑 ]
作者: redbee    时间: 2012-1-30 13:30
网上找了下资料,看到个图。


BPB就是指红框内的内容吧。

有关BPB的解释:
BIOS参数记录块BPB(BIOS Parameter Block)表,它的主要作用是:记录了磁盘容量的大小、FAT(文件分配表)的位置和大小、FDT(文件目录表)的位置和大小。

学得有点晕,那我这个8G的TF卡应该怎么整,请不点大神指点。


[ 本帖最后由 redbee 于 2012-1-30 13:35 编辑 ]
作者: 不点    时间: 2012-1-30 13:36
已经都是小菜了,没有什么秘密,全都是因为 BPB 表未填充造成的。

看来 BOOTICE 有 bug,竟然不能填充 BPB 表。你可以向 BOOTICE 的开发者报告 bug。

眼下那你就只好自己手动填充 BPB 表吧。先学 FAT 结构的有关知识,然后就知道怎么填了。

或者你也可以用 grub4dos 自己的 bootlace.com 程序。总之,你自己想办法即可。

BPB 表位于偏移 0x0B 至 偏移 0x59。有时候也说成是从偏移 0x03 到 0x59。我们目前暂且就以 0x0B - 0x59 为准吧。因为目前版本的 grldr.mbr 在偏移 0x02 处有 6 个字节是控制字节,被占用了,不能被 BPB 表覆盖。将来在 grub4dos 0.4.6 中,我们会彻底解决这个问题。

有些失望,因为没有发现任何秘密。

另外,这个主板对软盘也支持 LBA,是一个很不错的主板。应该说是不多见的。

如果所有的主板都这样就好了,那么无论启动 grub4dos,还是启动 wee,就都没有任何障碍了。

顺便说,由于这个主板支持 LBA,你安装 wee 到这个 TF 卡,一样会成功启动的。启动之后,用 (fd0,0) 就可以访问 TF 卡上的文件,这点与 grub4dos 完全一样。

有很多 hex 编辑器也能帮助你填充 BPB 表。试试 winhex 之类的工具也可。



建议你安装 wee63.mbr 吧,BPB 表填充与否,都没关系。无非就是,启动 wee 之后,你用 (fd0,0) 访问你的 TF 卡即可。

用 wee 的命令:

(fd0,0)/grldr

即可启动 TF 卡上的 grub4dos 了。

这样,你就不至于束手无策了,因为进入了 wee 之后,你就不会面对一台死机了,你总是可以在 wee 的命令行下操作。



抱歉,已经解决了的问题,我有可能不再来这个帖子中了。

谢谢你提供详细的资料。我想,这对于其他人,是一个很好的材料。

[ 本帖最后由 不点 于 2012-1-30 14:05 编辑 ]
作者: 快雪时晴    时间: 2012-1-30 16:36
标记:BOOTICE09没有填充BPB
作者: redbee    时间: 2012-1-30 18:13
谢谢不点大神的指点,现在安装了wee,可以启动了。

下面的学习是好好研究一下Wee的配置。
作者: 不点    时间: 2012-1-30 19:52
再补充说几句吧。

USB 盘或者 TF 卡,或者任何别的新型设备,只要主板 BIOS 支持 LBA,一切都迎刃而解。安装 grub4dos 没问题,安装 wee 没问题,安装 DOS 没问题,安装任何软件都没问题。

由于 DOS 不能够识别软盘上的分区表(对于 DOS 来说,软盘没有 MBR,即使有 MBR,DOS 也不认),所以,安装 DOS 的时候,更需要在 MBR 上放置一个 BPB 表。前面你安装 DOS、bootmgr 等失败,皆是因为软盘第一扇区没有 BPB 表所导致。

如果所有的主板都这样(支持 LBA),那么,启动失败的现象将彻底解决,再也不会有 “ 启动失败 ” 这样的事情了。
作者: 快雪时晴    时间: 2012-1-31 11:23
chenall在其博客上提到了:卡碟机
启动更简单了,估计兼容性更棒
作者: wuwuzz    时间: 2012-2-8 19:13
看了不点在时空的帖子,追踪到这里来看原帖。LZ这个例子还有更多的研究价值。
-----------------------------------------------------------------------------------
所不同的是,我关心的不是BPB,而是对AMI BIOS的表现感到困惑。
一般情况下,有“8G容量、仿真类型AUTO、看似正常的分区表”这几个条件,AMI BIOS
不该识别成FD。还有秘密未被解开。
-----------------------------------------------------------------------------------

需要LZ进一步提供资料:

1、确认BIOS SETUP中的选项确实不是floppy或Force floppy
2、用ubootchk对“总扇区数”重新检查。

ubootchk的winXP版,因捆绑了linux小工具,杀毒软件可能误报,应忽略该误报
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=191265;

如果不放心,可换用ubootchk的tinycore Linux版检查
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=204820

g4d的geometry数据“c/h/s=1024/255/63, sector count/size=16450560/512”,我表示怀疑。
因为标称8G的卡,按1024计,一般应在7G多,而geometry提供的数据太足量了,不太可能。
作者: Plantsoot    时间: 2012-2-8 19:33
标题: 回复 #30 wuwuzz 的帖子
“c/h/s=1024/255/63, sector count/size=16450560/512”

w大,16450560个扇区(512),不刚好是7G吗?

16450560 >> 21 = 7
作者: wuwuzz    时间: 2012-2-8 20:03
原帖由 Plantsoot 于 2012-2-8 19:33 发表
“c/h/s=1024/255/63, sector count/size=16450560/512”
16450560个扇区(512),不刚好是7G吗?
16450560 >> 21 = 7


16450560*512/1024/1024=8032.5MiB

1024/255/63 也很奇怪,这种CHS对USB存储设备而言,得恰好是8032.5MiB/8.4GB,
传统INT13的极限才出现,可能性不大啊~

[ 本帖最后由 wuwuzz 于 2012-2-8 20:17 编辑 ]
作者: wuwuzz    时间: 2012-2-10 07:19
geometry命令结果不是重点,只是线索。我的目的不是质疑geometry,而是想尽快查明是否有“扇区越界”现象。如果读卡器固件返回的TF卡扇区数 <  MBR分区表中提供的扇区数字,则AMI BIOS会认为MBR非法,这时有可能会把大容量TF卡当FD处理;

如果不是扇区越界,则需要检查其他疑点,如:LZ该版本的AMI BIOS如何处理移动盘、固定盘属性。

总之,是要检查:该版本AMI BIOS为什么会把如此大容量的USB存储设备当FD处理。

这需要LZ提供资料、配合测试。
作者: Plantsoot    时间: 2012-2-10 08:55
标题: 回复 #32 wuwuzz 的帖子
明白W大的意思了。。。
作者: redbee    时间: 2012-2-12 14:05
晕,我以为没有人注意这个贴了,几天没来看了。

实验结果:

ubootchk提示错误,共生成三个文件,打包。


ubootchk生成的文件.rar (1.44 KB, 下载次数: 32)


bios里设置如下(是bios自动识别的):





[ 本帖最后由 redbee 于 2012-2-12 16:25 编辑 ]
作者: wuwuzz    时间: 2012-2-12 21:55
#21(MBR分区表)、#35(固件检测)的数据都已经指明了:
TF卡的实际总扇区数为15548416。换算容量为7592MiB。

#35的图3也已经说明,该版本AMI BIOS,AUTO仿真类型,
超过530MB的容量就应该为HD的。

这就证实了我在30#、32#的怀疑。
------------------------------------------------------------------------------
现在需要麻烦LZ做以下针对性测试(不是测TF卡,而是测AMI BIOS USB处理。换U盘来试)

1、要求U盘是>530MB的移动盘  或  <530MB的固定(本地)盘。
>530M的移动盘,一般U盘都易满足这个条件;而< 530M的固定(本地)盘则可能要用量产工具
来做。LZ视情况选择一个即可。当然,2个都做更好,对比看得更清楚。

2、使用HP格式化工具,MS原版IO.SYS、COMMAND.COM,做最简单的DOS启动盘。

看启动后的盘符是A:>还是C:>。
作者: redbee    时间: 2012-2-13 22:35
工具:

hp格式化工具,论坛里的。

金士顿8G。

测试结果:

A:>

在以前的装机测试过程中,试过winpe的恢复盘,启动到dos下也是A:>。

[ 本帖最后由 redbee 于 2012-2-13 22:39 编辑 ]
作者: wuwuzz    时间: 2012-2-14 08:03
OK! 基本上可以下结论了。

情况是这样:

主板/PC厂商从AMI那里拿到BIOS源码后,可以根据自己产品的需要对模块选项进行调整,
重新编译,生成定制版BIOS。
(如果不对选项进行调整,则编译时按默认选项值进行)。

AMI BIOS源码中对USB存储设备FD/HD的判定,一般(默认)情况下,是以扇区数界限
(530MB)为主,以MBR/PBR的合法性
为辅,综合进行。

但是,如果激活了“检查移动介质位(RMB)”编译选项,则判定规则就发生了极大变化。
扇区数界限、
MBR合法性均退居为次要因素,RMB的情况为最优先因素。

在这种情况下,只要是移动(介质)盘,无论扇区数(容量)是多大,均先行设为FD。
反之,如果是固定(介质)盘,则先行
设为HD。很巧,LZ所用版本的AMI BIOS就是这样。
这就是秘密。


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

附:BIOS中相关汇编源码片段摘录

...

USB0042 - USB storage devices classfication depend on RMB bit.
; Set "USB_STORAGE_DEVICE_RMB_CHECK" this token On to enable this
; function. RMB will be used to distinguish hardisk.

....

IF MKF_USB_STORAGE_DEVICE_RMB_CHECK
    test    BYTE  ...        ;Check RMB status
    jnz    deviceRemovable
    mov    wForceEmulationType, (USB_EMU_HDD_ONLY SHL 8) + USB_MASS_DEV_HDD
...

作者: blithewind    时间: 2012-2-14 08:57
原帖由 wuwuzz 于 2012-2-14 08:03 发表 OK! 基本上可以下结论了。情况是这样:主板/PC厂商从AMI那里拿到BIOS源码后,可以根据自己产品的需要对模块选项进行调整,重新编译,生成定制版BIOS。(如果不对选项进行调整,则编译时按默认选项值进 ...
碰到过这种bios,的确很不爽.好在g4d很强大,手动折腾下也能进PE.这个“RMB”太形象了,简直是“人民币”的代称.…
作者: wuwuzz    时间: 2012-2-15 07:46
呵呵,

这种BIOS也不能说不爽。最起码,不点在时空帖子中设想的3个优点,
在这种BIOS环境下,理论上可行。

RMB是USB命令集规范、USB启动规范中的定义,倒也不是AMI BIOS的发明。
----------------------------------------------------------------------------

附带说一下,无论是LZ的读卡器,还是chenall的卡碟机,做DISK启动盘
都是不太合适的(chenall的卡碟机做USB-DVD启动合适)。原因,ubootchk
已经指明了:它们的固件不符合USB启动规范要求,未能正常提供物理
(固件)CHS。这个东西对(引导软件要用的)BIOS INT13读结果影响很大。

[ 本帖最后由 wuwuzz 于 2012-2-15 08:05 编辑 ]
作者: redbee    时间: 2012-2-16 00:20
我也觉得平板电脑上的读卡器不是很好,应该是杂牌的读卡器。




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3