中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] ... [19] »
作者:
标题: GRUB 伤脑筋的问题, 大家会诊一下 上一主题 | 下一主题
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 76 楼』:  

旧的版本根据 0000:05dc - 0000:05fb 这个范围内的值来恢复 BIOS 中断 int70 - int77 的向量。由于这一内存区域看来像一个堆栈,有时候会被覆盖掉,所以,新版的 t12 不再根据这一区域的值来恢复中断向量了。这样,新版就解决了 GRUB.EXE 不可重入的老问题。

t12 采用的方法是探测 0000:01c0 - 0000:01df 这个范围的中断向量所指向的 MS-DOS 的中断服务程序,从中找到原始的 int70 -int77 的 BIOS 中断向量。

VIDE-CDD.SYS 加载之后,可能修改了 0000:01c0 - 0000:01df 这个范围的中断向量,这就使得这种探测失败了。

解决的办法是先用旧的探测方法,失败时再用新的探测方法。

请您用 debug 列出  0000:01c0 - 0000:01df 这个范围的值,我需要看看哪些向量被修改了,哪些向量没有改动。





因为我们亲手创建,这个世界更加美丽。
2004-1-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 77 楼』:  

grub_t13 已经上载,应当解决了上述问题。

  【1 月 12 日更新】 修复了 grub_t12 不能启动的故障。正式版的推出日期基本上完全取决于英文文档的完成日期,希望有人能够帮助【可以参照本文结尾的中文文档,从而贡献一篇英文的说明文档】。我写作英文比较吃力,所以,如果由我来写 0.2.0 的英文说明,可能就太过于简化了。

  仍然可以在 Wengier 的 新 DOS 论坛 之“启动盘室”报告 BUG。

  下载第三个(也许是最后一个)公开测试版本,在这里:

ftp://ftp.cosoft.org.cn/incoming/grub_t13.exe

  注记:改进算法使得由 grub.exe 启动 MS-DOS 7+ 之后,还可以再次运行 grub.exe。但是,多次重入会导致访问硬盘时死机,原因不明【不打算解决这个问题】。如果只是重入一次,似乎一切正常。另外,在 DOS 下并非出现其它危险(例如破坏掉某个扇区),最多仅仅是死机而已。

中文说明文档暂时放在以下网页的结尾处:
http://www.linuxeden.com/edu/doctext.php?docid=3006





因为我们亲手创建,这个世界更加美丽。
2004-1-12 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 78 楼』:  

不点:您说要撰写英文文档,不知有没有现成的待翻译的一部分中文原文?另外格式和字数等有没有更具体的要求?

关于GRUB本身,我发现如果在DOS下启动了UCDOS,CCDOS97等汉字系统,进入了中文方式(此时屏幕为图形模式)后再运行GRUB.EXE的T11,T13等版本的话,系统会立即死机.但如果用Ctrl+F7键切换到英文方式(此时屏幕为文本模式)后再运行GRUB则不会死机.不过这样用GRUB重启硬盘上的DOS后UMBPCI加载时会提示指定的内存的参数范围错误.

[此贴子已经被作者于2004-1-12 2:02:06编辑过]






Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-1-12 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 79 楼』:  

关于英文文档, 我目前还根本就没有时间动手去做, 只能依赖援助了. 我初步打算把英文文档放在 README 文件中[如果最后必须由我来写的话, 由于写的很少, 所以就放在 README 文件中], 但也可以另外单独放置, 而在 README 文件中指出该说明文档的位置. 关于字数, 格式等, 都没有任何限制的, 由写作的人自行决定. 例如, 文本格式也行, man 手册格式也行, html 格式也行. 由于是撰写, 所以, 不必严格翻译中文文档. 中文文档只作为参考, 完全可以大幅删减或增加, 也可以打乱次序. 总之, 是重新写作. 怎么样写都行.

热切期望 Wengier 兄再次帮助, 这里先谢谢了. 我最近身体不好, 在住院治疗, 有些事情实在照顾不过来了. wengier 兄能够帮助的话, 真是太感谢了!

==========

关于您所提到 BUG, 我初步猜测是因为运行了 int13/AX=4b00 的缘故. 这是退出光盘启动的磁盘仿真的方法, 没有太大的用处. 下一个版本将它去掉试试, 看看还有无问题.





因为我们亲手创建,这个世界更加美丽。
2004-1-12 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 80 楼』:  

grub_t14 上载,先判断 bootable CDROM 是否仿真了软盘或硬盘。如果没有仿真,就不运行 int13/AX=4b00。看看这样的话,问题是否得到解决。

ftp://ftp.cosoft.org.cn/incoming/grub_t14.exe





因为我们亲手创建,这个世界更加美丽。
2004-1-12 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 81 楼』:  

不点:原来您最近在医院呀?希望没有什么大的问题吧。祝身体键康,可不要累坏了。

您的精神确实令人感动。可惜这几天我的那台经常用的新电脑坏了(硬件故障),现在只好用一台公用的旧电脑了,不仅速度慢,而且上机时间也有了许多限制。而且由于这台电脑上没有虚拟机而且也不能安装(机器配置低而且是公用的),所以最近测试GRUB都是在真实电脑中进行的。我非常希望我能帮忙,可惜。。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-1-12 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 82 楼』:  

不太要紧,谢谢关心。我是半住院,时常跑出来。您这次不能帮忙也不要紧,能测试也是最大的帮助了。希望您的测试是安全的。希望及时报告 BUG。看看这 t14 行不行。



因为我们亲手创建,这个世界更加美丽。
2004-1-12 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 83 楼』:  

不点:我刚才试了一下这个T14版,不过在加载了UCDOS等汉字系统,当系统自动进入中文DOS命令行方式时,输入GRUB想进入GRUB还是死机。我想是不是GRUB目前还没有恢复显示模式的功能的原因?

另外,能不能让GRUB支持批处理脚本方式,例如可以自动运行以下的boothd.cmd文件,以免必须手工输入?而现有的menu.lst方式必须有菜单才行,否则根本无法被GRUB执行,希望能改进一下GRUB使之直接支持批处理脚本方式就好了。例如:

root (hd0)
chainloader +1
boot



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-1-15 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 84 楼』:  

第一个问题: 在加载了UCDOS等汉字系统,当系统自动进入中文DOS命令行方式时,输入GRUB想进入GRUB还是死机。我想是不是GRUB目前还没有恢复显示模式的功能的原因?

首先, 我不知道是 GRUB 一直都存在这个问题呢, 还是后续的版本引来的新问题. 这很重要. 因为新版本 0.2.0 并无特别的不同之处, 如果是以前一直存在这个问题, 那就可能是您说的原因, 显示模式没有恢复到文本模式. 可以用恢复显示模式来解决, 也可能解决不了. 如果是新版本引来的新问题, 则是一个 BUG, 需要纠正, 应当是能够纠正的.

-------

我感觉第二个问题似乎能够有办法处理的. menu.lst 似乎够用了. 把 timeout 设置为 0 就不出现菜单了, 直接从默认的 title 启动操作系统.

GRUB 有一条命令 configfile 可以用来运行 menu.lst 文件(或者指定的任何菜单文件), 相当于运行 DOS 的 BAT 文件. 要想使菜单不出现, 可以把 timeout 设置为 0. 这样就自动运行 default 项目里面的命令了.

不过, 菜单会自动在尾部增加一条 boot 命令, 这是比较难受的. 如果不想要这个 boot 命令, 可能就比较麻烦了. 这也许是当初设计 GRUB 的人没有考虑到的问题.




因为我们亲手创建,这个世界更加美丽。
2004-1-15 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 85 楼』:  

不点:

关于第一个问题,应该是GRUB for DOS一直都存在的问题。我刚才做了个试验,先在DOS下用MODE CO40命令将DOS的显示模式切换到40列(而通常是80列),结果用GRUB命令运行GRUB for DOS发现它并没有恢复显示模式,仍然使用40列的显示模式。可见GRUB for DOS目前确实缺少了恢复显示模式的功能,造成从图形命令行方式进入GRUB for DOS时会死机。

关于第二个问题,您说的timeout设置为0我以前曾试过,但好像并非不出现菜单,而是菜单一闪而过(有时甚至更长;我还曾试图color命令来消隐菜单,但效果还是不太理想),再加上尾部确实总是自动增加一条boot命令,似乎已严重影响了操作效果(我是当时准备把GRUB for DOS加入到超级DOS启动盘中用于引导多启动时发现这些问题的)。不知有没有办法解决?



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2004-1-15 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 86 楼』:  

我用 “超级通用MS-DOS 7.10启动盘” 启动实模式的 DOS,然后运行 XZL 中文系统,之后再敲入 grub ,结果,屏幕上没有任何反应了。但是,这不是死机,仅仅是显示不出东西了。从键盘上敲入 grub 的 “reboot” 命令,照样可以重启动机器。

可以考虑用 grub 的模式转换命令,如果 GRUB 有这样的命令的话。

再研究研究吧。

========

关于 GRUB 批处理,可以尝试加入一条叫做 “exit-to-command-line” 的命令。把这条命令放在菜单中的最后一行,这样,在菜单中就可以避免执行最后的 boot 命令了。

或者用 map --exit-to-command-line 的方式来实现。

菜单闪过的问题, 应当也可以解决的。




因为我们亲手创建,这个世界更加美丽。
2004-1-16 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xiaojun
银牌会员





积分 2202
发帖 499
注册 2003-6-12
状态 离线
『第 87 楼』:  

用放于MBR里的GRUB(在Boot.ini里),来启动img,boot命令之后要么只剩光标在左下角闪动,要么花屏,但在dos执行硬盘上的guru后启动IMG正常。有没有Grub的中文命令HLP啊?


[此贴子已经被作者于2004-1-16 10:42:04编辑过]






一年四季,枫叶红了又红;人生四季,失去的,还能再来吗?—— !
2004-1-16 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 88 楼』:  

谢谢.

您报告的是一个奇怪的情况. 根据您的报告, 似乎 NTLDR 在引导 512 字节的启动扇区之前, 还修改了某些 BIOS 中断向量或者别的什么. 按道理不应当发生这种情况.

希望更多的人测试研究这一情况.

GRUB 命令详细的中文帮助可能不多见(我也没有注意过), 在 google 中找吧.

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

另外补充一下, 有些 BUG 是 GNU GRUB 的 BUG, 不仅仅是 GRUB FOR DOS 的, 或者换句话说, 与 GRUB FOR DOS 的补丁本身没有任何关系. 对于这类 BUG, 最好直接向 GNU GRUB 的 BUG 报告邮件列表报告.网页如下, 也可以查看以前别人是否报告了相同的 BUG:

GNU GRUB 主页: http://www.gnu.org/software/grub/
BUG GRUB 信息页: http://mail.gnu.org/mailman/listinfo/bug-grub
查看以前全部的 BUG 报告信息: http://mail.gnu.org/archive/html/bug-grub/

对于 GNU GRUB 的 BUG, 即使我们发现了, 也可能不容易解决. 我们只可能解决其中一些容易解决的 BUG. 绝大多数 BUG 都留待 GNU GRUB 项目组去解决.

我们只能着重解决 GRUB FOR DOS 特有的 BUG, 也就是对于 GNU GRUB 的扩充部分:

1. 由 DOS 启动代码部分而导致的 BUG.

2. 由磁盘仿真代码部分而引起的 BUG.


[此贴子已经被作者于2004-1-16 14:18:42编辑过]






因为我们亲手创建,这个世界更加美丽。
2004-1-16 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
《电脑爱好
高级用户

科学家


积分 693
发帖 270
注册 2003-7-21
状态 离线
『第 89 楼』:  

GRUB双启动,只要WINDOWS盘格式化后就文件损坏。MBR



点击这里给我发消息
2004-1-16 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (105681641)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 90 楼』:  

《电脑爱好者》 兄说详细一些吧, 我没有看太明白.

用了磁盘仿真命令没有?

格式化谁? 损坏的是谁?

网页上关于 grub for dos 0.2.0 磁盘仿真有详细的说明, 尤其是有关格式化的功能, 有说明. 看看吧:

中文说明文档暂时放在以下网页的结尾处:
http://www.linuxeden.com/edu/doctext.php?docid=3006





因为我们亲手创建,这个世界更加美丽。
2004-1-16 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] ... [19] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: