无忧启动论坛

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

GRUB4DOS更新建议、bug反馈专帖

    [复制链接]
2041#
发表于 2011-12-25 19:55:57 | 只看该作者
@chenall

c大  menu_box_x  这个值有限制吗  vbe模式下试过0 1 2可以成功  改到3虚拟机就花屏了  实机没测试

还有  disp_vert   disp_horiz 这两个现在代表什么  默认是0x0e0f  试着改成其他的没看出什么效果


struct border {
         unsigned char disp_ul;
         unsigned char disp_ur;
         unsigned char disp_ll;
         unsigned char disp_lr;
         unsigned char disp_horiz;
         unsigned char disp_vert;
         unsigned char menu_box_x; /* line start */
         unsigned char menu_box_w; /* line width */
         unsigned char menu_box_y; /* first line number */
         unsigned char menu_box_h;
         unsigned char menu_box_b;
         unsigned char border_w;
} __attribute__ ((packed));

[ 本帖最后由 sratlf 于 2011-12-25 19:58 编辑 ]
回复

使用道具 举报

2042#
发表于 2011-12-25 20:22:38 | 只看该作者

回复 #2045 sratlf 的帖子

修改了X一般需要同时修改W,否则可能超出一行的范围。你必须保证不能超出显示范围。否则肯定会错误。
前面的六个定义了边框字符,一般不要去修改,具体的可以找一下MENUSET命令的原贴。
后面的是边框位置,宽带等信息。
最后一个是边框宽度(VBE模式)。
回复

使用道具 举报

2043#
发表于 2011-12-25 20:36:50 | 只看该作者

回复 #2046 chenall 的帖子

可以了  确实是只修改了X值  W值保持了默认

vbe模式下前六个试过手动改成其他字符的ascii码  但是失效
回复

使用道具 举报

2044#
发表于 2011-12-25 20:48:48 | 只看该作者
http://bbs.znpc.net/viewthread.php?tid=6176&page=3#pid49492

0.JPG (59.22 KB, 下载次数: 118)

0.JPG
回复

使用道具 举报

2045#
发表于 2011-12-25 20:58:31 | 只看该作者

回复 #2047 sratlf 的帖子

进入VBE模式会自动恢复的。

你可以试试启动VBE模式之后再改。
回复

使用道具 举报

2046#
发表于 2011-12-25 21:37:52 | 只看该作者

回复 #2042 chenall 的帖子

下载测试了一下,ZIP盘,还是有点问题。在命令行下,find, (fd0),倒是可以出来了,但(fd0,0)即可见区却怎么也用find找不到。
  即使map --floppies=1,2。也找不到了。只是find找不到。如果root (fd0,0),再find却可以出来了。
 

  而非测试版(12.6),只要map --floppies=1,后,再find,却正常了。(ud),(fd0),(fd0,0),(hd0,X)都出来了。

[ 本帖最后由 幸运的草 于 2011-12-25 21:39 编辑 ]
回复

使用道具 举报

2047#
发表于 2011-12-25 21:42:14 | 只看该作者

回复 #2042 chenall 的帖子

还是不行,较以前不同的是find命令后,列表中已经有(fd0),用find --set-root /memu.lst还是找不到。另外我认为默认菜单中
        if "%@root:~1,2%"=="fd" find --set-root --ignore-cd /menu.lst && configfile /menu.lst
应该在其他find语句之前,因为如果@root值为fd应该基本上代表从软盘启动,那么应该要先找软盘中的菜单。

[ 本帖最后由 hhh333 于 2011-12-25 21:43 编辑 ]
回复

使用道具 举报

2048#
发表于 2011-12-25 21:51:07 | 只看该作者

回复 #2049 chenall 的帖子

还是不行  一直在vbe模式下  改了 disp_ul disp_ur disp_ll disp_lr 这四个不见效果

换成vga模式倒是见效果了  感觉重写了边框的函数后就这样了
回复

使用道具 举报

2049#
发表于 2011-12-25 21:51:20 | 只看该作者
我现在的菜单是这样的:
...........
title find /menu.lst, /boot/grub/menu.lst, /grub/menu.lst
errorcheck off
configfile /menu.lst || configfile /MENU.LST
configfile /boot/grub/menu.lst || configfile /BOOT/GRUB/MENU.LST
configfile /grub/menu.lst || configfile /GRUB/MENU.LST
if "%@root:~1,2%"=="fd" find --set-root --ignore-cd /menu.lst && configfile /menu.lst
if %?_BOOT%==(ud) if exist (fd0,0)/menu.lst configfile (fd0,0)/menu.lst
find --set-root --ignore-floppies --ignore-cd /menu.lst && configfile /menu.lst
find --set-root --ignore-floppies --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst
find --set-root --ignore-floppies --ignore-cd /grub/menu.lst && configfile /grub/menu.lst
errorcheck on
commandline
..............
回复

使用道具 举报

2050#
发表于 2011-12-25 21:51:59 | 只看该作者
试试这个。。。。。。。。。。。

grldr.rar

135.7 KB, 下载次数: 41, 下载积分: 无忧币 -2

回复

使用道具 举报

2051#
发表于 2011-12-25 22:26:43 | 只看该作者

回复 #2054 chenall 的帖子

可以找到了,find列表中多了fd0,0这一行,find也可以找到了,但默认菜单可能还得动一下,我加了一行

        if "%@root:~1,2%"=="ud" find --set-root --ignore-cd /menu.lst && configfile /menu.lst

就可以找到菜单,否则不能找到。
回复

使用道具 举报

2052#
发表于 2011-12-25 22:32:02 | 只看该作者

回复 #2055 hhh333 的帖子

这样子很容易造成启动卡住。因为没有确定U盘是软盘还是硬盘。

下个版本我再改下。
回复

使用道具 举报

2053#
发表于 2011-12-25 22:40:01 | 只看该作者

回复 #2056 chenall 的帖子

好的,我就等新版出来再试。我觉得鉴于现在基本不用软驱了,一旦出现软驱,应该基本上是U盘识别而来的。
回复

使用道具 举报

2054#
发表于 2011-12-25 23:02:34 | 只看该作者

回复 #2057 hhh333 的帖子

你可以先试试修改内置菜单如下。看看行不行。
        errorcheck off
        configfile /menu.lst
        configfile /boot/grub/menu.lst
        configfile /grub/menu.lst
        if "%@root%"=="(ud)" && calc *0x82A0=*0x82b9&0xff
        if "%@root:~1,1%"=="f" && find --set-root --devices=f /menu.lst && configfile /menu.lst
        find --set-root --ignore-floppies --ignore-cd /menu.lst && configfile /menu.lst
        find --set-root --ignore-floppies --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst
        find --set-root --ignore-floppies --ignore-cd /grub/menu.lst && configfile /grub/menu.lst
        errorcheck on
        commandline
如果正常的话,下个版本就这样子改了。

解说。
1.先判断当前ROOT是否UD,如果是的话把UD所在的磁盘设为ROOT。
2.如果当前ROOT是软盘先查找软盘
回复

使用道具 举报

2055#
发表于 2011-12-26 14:52:29 | 只看该作者
C大:
   目前VBE模式已经很成熟了,加上S版写的MINI_MENUSET的批处理,splashimg加载图片,基本上可以和message相媲美。但就是最上面那个版本显示信息影响美观,是否可以加一个开关屏蔽输出?或者执行了splashimg加载图片时,默认屏蔽版本信息以使更美观?
 另外,显示菜单的数字序号的显示位置是否可以自定或者屏蔽输出,我个人倾向于输出,但目前的位置不是很合适。另外:最下面的注释栏好像没有到换行的位置就换行了。



[ 本帖最后由 幸运的草 于 2011-12-26 14:54 编辑 ]
回复

使用道具 举报

2056#
发表于 2011-12-26 15:17:10 | 只看该作者
你还在使用12-06的版本,可能后面的版本有改的吧。先试试最新的版本再说。
回复

使用道具 举报

2057#
发表于 2011-12-26 16:25:46 | 只看该作者
回复 #2060 chenall 的帖子
我用12.25版也是这样。

回复

使用道具 举报

2058#
发表于 2011-12-26 17:20:45 | 只看该作者

回复 #2061 幸运的草 的帖子

下面的帮助信息。。。
回复

使用道具 举报

2059#
发表于 2011-12-26 18:24:59 | 只看该作者
宏碁上网本上
C盘装XP,NTFS分区,
GRLDR放在根目录,
背景和字体都放在C:\Boot\GRUB
启动后无法显示VBE背景,字体乱码。

U盘的文件目录跟硬盘相同
同一个U盘,在台式机上一切正常
到了宏碁上网本上
启动后同样无法显示VBE背景,字体乱码。

如果用message背景和UNIFONT字体就能正常显示菜单。

[ 本帖最后由 tulongwa 于 2011-12-26 18:30 编辑 ]
回复

使用道具 举报

2060#
发表于 2011-12-26 18:47:08 | 只看该作者

回复 #2058 chenall 的帖子

用新的默认菜单没有问题了!
回复

使用道具 举报

2061#
发表于 2011-12-26 18:48:59 | 只看该作者
回复

使用道具 举报

2062#
发表于 2011-12-26 19:46:27 | 只看该作者

回复 #2063 tulongwa 的帖子

你已经报告两次了,可是仍然猜不透究竟是从何时开始出现的问题?浪费帖子啊!究竟是最近两天出现的新问题呢?还是所有的 VBE 版本都有同样的问题?

你能不能说清楚?报告问题就应该清楚,不应该 “ 朦朦胧胧 ” 的,像 “ 捉迷藏 ” ,让人想答复,却没办法答复。

别给开发者 “ 吊胃口 ”,如果你给开发者 “ 吊胃口 ”,开发者也给你 “ 吊胃口 ”,可能根本不接你的帖子。

进入命令行试验了吗?命令行下,你能找到你的背景以及字体吗?手动加载,起作用吗?说清楚啊!好让我们知道究竟在你那里发生什么事了!

上次我说你在说 “ 半截话 ”,就是这个意思。关键问题你不说,让开发人员一头雾水,范围太大,不知道究竟如何缩小范围。不知道究竟是你的问题,还是软件的问题,或者是主板 BIOS 的问题。

如果是你的问题,那根本就不算是问题。

如果是 grub4dos 的问题,那也好办,找出问题,排除 bug。

如果是主板 BIOS 的问题,那有可能根本无法解决。

所以,不同的问题,有不同的性质。

你别再 “ 吊胃口 ”,好不好?

当你实在讲不明白的时候,我们默认第一种情况,即,那是你自己的问题。因此,忽略你的问题。

[ 本帖最后由 不点 于 2011-12-26 21:19 编辑 ]
回复

使用道具 举报

2063#
发表于 2011-12-26 19:52:56 | 只看该作者

回复 #2066 不点 的帖子

用yaya 更改的grldr_cd.bin设置为ISO的引导文件,在VPC2007虚拟机上测试,可以找到grldr,没发现问题。。。

通过grub4dos菜单启动Win7PE的BCD菜单(bcd有添加返回grub4dos菜单,通过grldr_cd.bin返回),返回Grub4dos菜单成功

通过isolinux v4.05引导grldr_cd.bin也成功切换回grub4dos菜单

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

因为我自己没用MS的BCD菜单,就没有在实际机子测试。。。

[ 本帖最后由 zhs509 于 2011-12-26 20:02 编辑 ]
回复

使用道具 举报

2064#
发表于 2011-12-26 20:04:24 | 只看该作者

回复 #2067 zhs509 的帖子

yaya 的改造动作很大,所以,我认为,为了稳妥,在 0.4.5 中暂不正式采用。

但下一个版本可以采用。如果测试的进展顺利,有可能加快 0.4.6 的到来,也许 0.4.5 和 0.4.6 都在明年发布。
回复

使用道具 举报

2065#
发表于 2011-12-26 20:20:16 | 只看该作者
我找到了原因,是因为VBE背景分辨率超过屏幕分辨率,另外用夜版的mini_menuset的话,如果遇到像上网本这样的小屏幕,行数超过屏幕能显示的数量,背景图会上移,形成一条条的块块,VBE模式完全破坏了。
回复

使用道具 举报

2066#
发表于 2011-12-26 20:34:04 | 只看该作者
超过屏幕分辨率,也不该出错。我是说,grub4dos 应该具有健壮性、应该可以 “ 容错 ”。

如果是 grub4dos 内核之外的工具软件出错,那倒是可以理解的。

问题是 grub4dos 内核,一定要健壮,一定不可以出错。

一旦发现 grub4dos 内核有错,你就有责任详细报告。否则,在正式版中留下遗憾,那也是测试者们的责任。
回复

使用道具 举报

2067#
发表于 2011-12-26 20:50:23 | 只看该作者

回复 #2061 幸运的草 的帖子

debug off
...........................
回复

使用道具 举报

2068#
发表于 2011-12-26 20:52:17 | 只看该作者

回复 #2069 tulongwa 的帖子

GRUB4DOS根本不使用背景分辨率,所以根本就没有你说的问题。

不要胡乱猜测,建议拿一些证据出来。。。。

使用的版本,如何用的,什么情况都没有说清楚。我对于这些贴子是全部忽略的。看到前面不点回了,我也顺便回一下。

[ 本帖最后由 chenall 于 2011-12-26 20:53 编辑 ]
回复

使用道具 举报

2069#
发表于 2011-12-26 21:56:06 | 只看该作者
新的版本已经上传,请测试。

1.解决前面的软驱问题。
2.改善自动菜单。

具体参考
http://code.google.com/p/grub4dos-chenall/issues/detail?id=62
回复

使用道具 举报

2070#
发表于 2011-12-26 22:38:49 | 只看该作者
原帖由 chenall 于 2011-12-26 20:52 发表 GRUB4DOS根本不使用背景分辨率,所以根本就没有你说的问题。不要胡乱猜测,建议拿一些证据出来。。。。使用的版本,如何用的,什么情况都没有说清楚。我对于这些贴子是全部忽略的。看到前面不点回了,我 ...
那为什么我把背景图片换成800X600的就一切正常?用1024X768的就黑屏乱码,本子的屏幕是1024X600。grldr是12-24的,而同样的文件和菜单在台式机上都正常,

[ 本帖最后由 tulongwa 于 2011-12-26 22:41 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-9-27 17:32

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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