|
越来越接近真相了,我说怎么fbinst制作的U盘的占用(fd0)处理怎么这么麻烦(都想放弃用FBINST制作的启动盘了),map交换软驱后总有问题。明明交换成功,DOS启动文件已经在(fd0),却总是启动有点问题或无法启动。不过,我上次提到的map 交换软驱后,(fd1)丢失的机器还没有机会再去测试,确定问题在哪里。
我曾经试过下面的代码:
map (fd0) (hd0)
map --hook
发现是(fd0,0)映射到了(hd0,0),而(fd0)是UD区内容
再接着
map --mem (hd0)/dos.img (fd0)
map --hook
好像是出现问题了(有点记不清了),(hd0,0)好像就不能访问了。
考虑到原(fd0)是UD区,可能有问题,再用下面的代码测试:
map (fd0) (hd0)
map (fd0) (fd1)
map --hook
发现是(fd0,0)映射到了(hd0,0)和(fd1,0),(fd0)和(fd1)均是UD区内容。发现(fd0)与(fd0,0)在map时有联动效果。
再接着
map --mem (hd0,0)/dos.img (fd0)
map --hook
可以发现(fd0)内容为DOS映像内容,但再使用chainloader (fd0)/io.sys启动,却无法成功启动DOS(可能就是C大说的C、H、S参数不正确的原因,也就是交换后(fd0)的C、H、S参数不是dos.img的C、H、S参数)。
最后没办法只能用下面的代码启动DOS。
map --mem (fd0,0)/dos.img (fd1)
map --hook
map (fd0) (fd1)
map (fd1) (fd0)
chainloader (fd0)/io.sys
难道这样(fd0)的C、H、S参数才会正确???
不过那台有问题的电脑就是在这个过程中出现了(fd1)丢失现象。
[ 本帖最后由 mygamexxx 于 2011-10-27 21:10 编辑 ] |
|