无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: zhaohj
打印 上一主题 下一主题

GRUB4DOS更新建议、bug反馈专帖

    [复制链接]
1891#
 楼主| 发表于 2011-12-6 16:29:26 | 只看该作者
grldr启动过程,内核使用了0x40000的区域吗?

Snap1.jpg (101.05 KB, 下载次数: 145)

Snap1.jpg
回复

使用道具 举报

1892#
发表于 2011-12-6 16:44:20 | 只看该作者
你只要 “多一个心眼” 就可以想到为什么了。

GRLDR 的体积有多大,知道吧?300K。

而常规内存总量有多大?640K。

GRLDR 加载在何处?通常在 0x10000 或者 0x20000。

那么,此处被 GRLDR 覆盖了 300K 以后,你算算 0x40000 是不是也该被覆盖了。
回复

使用道具 举报

1893#
 楼主| 发表于 2011-12-6 16:59:00 | 只看该作者
覆盖没关系,我所关心的是0x40000~0x44FFF区域的20K空间是否还是用户使用区域?
回复

使用道具 举报

1894#
发表于 2011-12-6 17:04:39 | 只看该作者
何时声明 grub4dos 要收回这些空间了?

已经声明给用户使用的空间,grub4dos 的内核是不会再使用的。除非迫不得已,才会制造少量的此类不兼容问题。那样也会公开声明的。

如果内核 “偷偷地” 使用了本来属于用户的空间,造成用户程序莫名其妙的故障,那当然是 bug,你可以报告 bug。

----------

grldr 被引导扇区加载在实模式的 640K 空间以内。这里的空间是非常拥挤的,根本不够用,“踢腾不开”。因此,我们在 0.4.5 的版本中,开始 “另辟蹊径”,把大量的 32 位保护模式代码移动到位于扩展内存的 3M 以上的地址空间中。这样从根本上缓解了 “常规内存空间不够” 的问题。在常规内存中,用于 BIOS 处理的那些代码,只占据 0x8200 - 0xFFFF 这 31.5K 的空间。因此,腾出了很多常规内存空间。这些内存空间的用途已经做了划分,不会搞错的。

你看到的那些 GRLDR 的残留代码,都是已经挪走了的,早已经被复制到了 3M 以上的空间,并且在 3M 以上运行。在常规内存中遗留的这些代码,都是无用的。

[ 本帖最后由 不点 于 2011-12-6 17:46 编辑 ]
回复

使用道具 举报

1895#
发表于 2011-12-6 17:40:57 | 只看该作者
今天的版本已经上传,暂时保留中文版,下个版本可能考虑取消。。

请还在使用中文版的朋友尽快转到VBE模式来显示中文。
回复

使用道具 举报

1896#
发表于 2011-12-7 12:03:31 | 只看该作者
上传一个让喜欢折腾的朋友测试。。。

这个版本的修改。

1.菜单自动编号(从0开始)如果菜单标题为空则不显示该编号。(暂时没有控制是否显示编号)

2.进入编辑菜单模式时禁止变量自动扩展。

本来以为增加这个自动编号应该很简单的。没想到之前菜单的设计方案没有办法直接获取(比较麻烦)。

我修改了菜单的显示方法,简化了部份一些代码。看起来是比较清析了。

不知有没有BUG。先放着测测看。。

grldr.zip

145.42 KB, 下载次数: 18, 下载积分: 无忧币 -2

回复

使用道具 举报

1897#
发表于 2011-12-7 12:15:30 | 只看该作者

回复 #1900 chenall 的帖子

请教:
1.command_path、debug status等记录在什么位置?
2.无参数的color,输出的信息,如:

红框中的AAAAAA代表什么?
回复

使用道具 举报

1898#
发表于 2011-12-7 12:19:47 | 只看该作者
回复 #1900 chenall 的帖子
title \n
这样的也建议处理一下。
==============================
建议检测有无敏感命令(如按上下箭头选择菜单条的一样)来自动编号。

[ 本帖最后由 zxw 于 2011-12-7 13:15 编辑 ]
回复

使用道具 举报

1899#
发表于 2011-12-7 13:14:21 | 只看该作者
这个版本的修改。

1.菜单自动编号(从0开始)如果菜单标题为空则不显示该编号。(暂时没有控制是否显示编号)

2.进入编辑菜单模式时禁止变量自动扩展。

本来以为增加这个自动编号应该很简单的。没想到之前菜单的设计方案没有办法直接获取(比较麻烦)。

我修改了菜单的显示方法,简化了部份一些代码。看起来是比较清析了。

不知有没有BUG。先放着测测看。。

chenall可否单开一个帖子,把每次更新后的用法更改注意事项等都安装更新日期写上,要不散落在各个帖子中,当时看看回头忘了,再想找到真难,而软件发布包中的更新日志又太简略。
主要是现在一直在变,而且chm的帮助也很久没有更新了。
回复

使用道具 举报

1900#
发表于 2011-12-7 13:50:32 | 只看该作者

回复 #1901 zxw 的帖子

第一个是16色的表示法,用于控制台或VGA模式。
第二个是32位色的表示法,用于VBE模式。
回复

使用道具 举报

1901#
发表于 2011-12-7 13:51:31 | 只看该作者

回复 #1903 freesoft00 的帖子

ChangeLog_chenall.txt一般都有用法介绍,有一些会有链接。
回复

使用道具 举报

1902#
发表于 2011-12-7 13:57:00 | 只看该作者

回复 #1902 zxw 的帖子

这个太麻烦,而且效果不一定好,不处理。
并且并不是所有的不带启动敏感的菜单都是不需要编号的。

这个由菜单编写者自已去控制。
回复

使用道具 举报

1903#
发表于 2011-12-7 14:14:40 | 只看该作者

回复 #1906 chenall 的帖子

想了一下,这个自动编号功能不添加为好。因为是菜单“初始化”时生成的,用户不好控制,在某些情形恰得其反。
回复

使用道具 举报

1904#
发表于 2011-12-7 15:00:35 | 只看该作者
试了一下,如果有空菜单项的话,10以后的菜单项不能输入10去选择;但是没有空菜单项的时候,正常——或者可能与我原来就写有菜单编号有关。另外,我觉得自动菜单编号的显示位置,放在光标箭头后面比较好看一些。
回复

使用道具 举报

1905#
发表于 2011-12-7 15:12:24 | 只看该作者

回复 #1907 zxw 的帖子

使用动态菜单的时候比较有用。目前总是会显示,以后会自动根据需要来显示。

比如你的菜单中没有任何编号时或通过一个变量来控制。
回复

使用道具 举报

1906#
发表于 2011-12-7 15:13:10 | 只看该作者

回复 #1908 xianglang 的帖子

可以的啊,可能是你有使用了自己的菜单编号。比如
你用如下的菜单,就会冲突。
title 1.xxxxx
title 10.xxxx
回复

使用道具 举报

1907#
发表于 2011-12-7 18:44:17 | 只看该作者

回复 #1909 chenall 的帖子

自动编号很有必要:
1、菜单项多时,增减和移动菜单项很麻烦
2、条件菜单时更是需要。

测试了下自动编号功能,上几个图:






不美观的地方有
1、有clear的也有编号
2、三角符建议放最前面,否则会割断编号与文字,让人觉得有点怪

如解决以上问题,菜单文字前加----应该可以比较美观。

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

使用道具 举报

1908#
发表于 2011-12-7 21:28:27 | 只看该作者

回复 #1911 hhh333 的帖子

仔细看了一下上图,以第2张比较好,干脆自动编号占2个字符位再自动加2个横杠,如“XX--”,菜单可节约好多重复文字,再加上最前面的三角符,总共5个字符位让系统用,不知大家觉得怎么样?有clear的就不加号和杠!

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

使用道具 举报

1909#
发表于 2011-12-7 21:44:56 | 只看该作者
要么步子再大一点干脆再增加一个命令象iftitle 一样或者可以用notitle(或untitle) 如 untitle ----------------XXXX----------------,表示不是菜单而是分隔符,也不用进入编号。用title和clear来处理实在不方便,也不好编程处理。

如下图,分隔一多就更不美观了。


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

使用道具 举报

1910#
发表于 2011-12-8 07:37:18 | 只看该作者
仔细看了一下isolinux的,如下图:

可以发现,滚动条与背景很融洽,有一定的透明效果,希望老大们能够改善一下,菜单就更美观了,也方便实现背景菜单!
另外,能够将自动编号高亮显示就更完美了!

哈哈,总在提非份要求,主要是老大们有这个能力,总给我们惊喜,那就实现它吧!
回复

使用道具 举报

1911#
发表于 2011-12-8 09:31:23 | 只看该作者
无标题,无启动命令的菜单不显示编号。

grldr.zip

145.46 KB, 下载次数: 24, 下载积分: 无忧币 -2

回复

使用道具 举报

1912#
发表于 2011-12-8 09:53:38 | 只看该作者
比较可以了,如下图:

转另一个菜单时有问题了:

可见12项后面的没有清除是上一个菜单的内容;分隔比较难看,希望还是能圆满实现菜单分隔,分隔应不计入编号,也最好能顶格。

[ 本帖最后由 hhh333 于 2011-12-8 10:07 编辑 ]
回复

使用道具 举报

1913#
发表于 2011-12-8 10:07:23 | 只看该作者
因为以前的菜单代码没有考虑这些问题,现在要改不亚于重新编写一个菜单模块。

可以暂时先用着,以后有空慢慢改。

先整一个控制的,暂时由用户自已决定是否显示,
回复

使用道具 举报

1914#
发表于 2011-12-8 10:08:07 | 只看该作者

回复 #1916 hhh333 的帖子

我没看明白????

什么后面没有分隔?
回复

使用道具 举报

1915#
发表于 2011-12-8 10:14:06 | 只看该作者

回复 #1917 chenall 的帖子

现在是好多了,我不用再维护菜单的编号了,辛苦了!
1、希望上面的小bug(configfile后,有上一个菜单内容)
2、能不能将编号后的第一个空格去掉,或者干脆自动加1~2个横杠。(想了一下,还是让用户自定义编号与菜单项之间的分隔符最好,如 def_n_sep_str " -- ")

[ 本帖最后由 hhh333 于 2011-12-8 10:42 编辑 ]
回复

使用道具 举报

1916#
发表于 2011-12-8 10:18:59 | 只看该作者
原帖由 chenall 于 2011-12-8 10:08 发表
我没看明白????

什么后面没有分隔?


可能我没有说清楚,请看图:

g4ddos.PNG (86.65 KB, 下载次数: 131)

g4ddos.PNG
回复

使用道具 举报

1917#
发表于 2011-12-8 10:37:26 | 只看该作者
如果要整控制的话,希望可以自定义菜单编号与菜单项之间的分隔符(默认可以为空格)这样就灵活多了。

g4d2.PNG (146.14 KB, 下载次数: 153)

g4d2.PNG
回复

使用道具 举报

1918#
发表于 2011-12-8 11:22:12 | 只看该作者
C大 你新加入的自动菜单编号及条件菜单功能,想起一个问题,是不是可以给条件菜单加个参数,控制部分菜单项只有按特定的键(可以自定义这个键,再可以设置密码就太好了)才显示出来这部分特殊的菜单项啊?

还有一个问题请教,现在启动到GRUB4DOS得VBE模式下有的机器刷屏很快,有个别机器刷屏较慢,用上下键选择菜单时都能明显感觉到有点反应迟钝!不知道有什么办法啊?这个问题如果需要我提供反应慢的那台机器的什么资料请C大都说一下!我好提供给C大,因为这个我实在不知道那些信息能对C大改进有用!
回复

使用道具 举报

1919#
发表于 2011-12-8 11:49:18 | 只看该作者
再传一个。增加了控制方法

默认不显示自动显示菜单编号。

控制地址 0x8274 默认的值是 0 (不显示)

分隔符地址是 0x8275 默认是0x20. (空格)
菜单和自动编号的分隔符默认是空格。不需要分隔符的设为0即可。

需要的话直接write 0x8274 0x2001即可(使用默认用空格分隔的自动编号)


write --offset=0x74 (md)0x41+1 \1\x20
如下命令可以修改默认分隔符号为-
write --offset=0x75 (md)0x41+1 -

注意:直接write 0x8274 xxxx需要把你的分隔符号转为ASCII编码。再一起写入。比如空格是0X20,要自动编号就写入
write 0x8274 0x2001

下载在这里
http://bbs.wuyou.net/forum.php?m ... page=194#pid2351915

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

使用道具 举报

1920#
发表于 2011-12-8 11:50:45 | 只看该作者

回复 #1922 thttht 的帖子

1.很麻烦。
2.暂时没有什么好的办法。若非必要可以使用低一点的分辨率,比如640X480的。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-15 19:10

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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