无忧启动论坛

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

GRUB4DOS更新建议、bug反馈专帖

    [复制链接]
61#
发表于 2010-12-15 01:04:00 | 显示全部楼层
OK,上传完成.

修改内容.
1.上面的BUG.
2.现在允许在批处理中执行的外部命令调用批处理GOTO/CALL标签.

wenv call goto test
wenv call call test abcd

另外一个改进..外部命令/批处理 执行命令 configfile xxxx
将会在释放内存后再执行.

也就是如果碰到外部命令执行configfile命令时会先退出外部命令再来执行

[ 本帖最后由 chenall 于 2010-12-15 01:07 编辑 ]
回复

使用道具 举报

62#
发表于 2010-12-15 14:06:30 | 显示全部楼层
原帖由 不点 于 2010-12-15 05:56 发表

这个改动不好吧?这已经使用很长时间了,0.4.4 已经公布使用了。已经公布的东西,想改是要慎重的。一般是不能改的。牵涉的面太广,都不知道有多少开发人员已经在使用了。

忽然想起来,是不是必须要改啊?比 ...


这个不是很必要.

嗯,我再仔细查了一下发现还是有许多地方有用到这个的
这个改动对FAT外部命令也会有影响.

还是还原好了.

Sorry. zhaohj,pseudo 又要麻烦你们改一回来了.囧.
回复

使用道具 举报

63#
发表于 2010-12-15 14:16:34 | 显示全部楼层
原帖由 zxw 于 2010-12-15 09:50 发表
@chenall大:

12-14fix、12-14fix2版本清华同方(在办公室)实机测试依旧重启。

按insert键调试信息摘抄如下:

至此重启。


这个我得查一个12号到13号之间的版本..我稍后再上传一个测试版到这里.
回复

使用道具 举报

64#
发表于 2010-12-15 14:50:13 | 显示全部楼层
麻烦zxw先测试一下最新上传的版本,看看是否已经解决
http://grub4dos-chenall.googlecode.com/files/grub4dos-0.4.5b-2010-12-15.zip

如果还是有问题再测试一下附件的test版本.


2010-12-15 还原2010-12-10版对0X82A4变量的改变,文件加载进度条改成统一的形式.

grldr-test.rar

122.97 KB, 下载次数: 21, 下载积分: 无忧币 -2

grldr test for zxw

回复

使用道具 举报

65#
发表于 2010-12-15 16:28:15 | 显示全部楼层
原帖由 zxw 于 2010-12-15 15:52 发表
2010-12-15版本,虚拟机测试通过;清华同方实机测试问题依旧,insert键调试信息同#205,显示Starting cmain()...后重启。
#209 test  版本,虚拟机、清华同方实机测试均启动失败进入命令行,实机测试insert键调 ...


麻烦再试一下这个.

grldr-test.rar

123.11 KB, 下载次数: 17, 下载积分: 无忧币 -2

回复

使用道具 举报

66#
发表于 2010-12-15 18:23:31 | 显示全部楼层
原帖由 zxw 于 2010-12-15 18:07 发表
虚拟机、清华同方实机测试均启动失败进入命令行.


只要不重启能进入命令行就算成功了.因为没有内置菜单.
回复

使用道具 举报

67#
发表于 2010-12-15 18:44:44 | 显示全部楼层
原帖由 zxw 于 2010-12-15 18:25 发表
我已内置了0PE菜单


测试用的版本不支持内置菜单...

已经重新上传完整版..

改成用7z压缩.
回复

使用道具 举报

68#
发表于 2010-12-16 14:33:49 | 显示全部楼层
@zhaohj
#219
也许是WENV的BUG吧,你可以再试试其它命令组合.
比如不write (fd0),而是write (md)0x300+1看看是否正常...

新版GRUB4DOS运行外部命令时分配的内存是从20MB处开始的.

上面的提示好像不是内存冲突,而是来源磁盘的问题.

[ 本帖最后由 chenall 于 2010-12-16 14:37 编辑 ]
回复

使用道具 举报

69#
发表于 2010-12-16 15:27:25 | 显示全部楼层
可能是WENV的问题,原因未知,只要执行过WENV,就会不正常.你可以再试试TUXW版的WENV看看是不是同样的问题.

但是改成如下就可以了.
chainloader --force ()/COOLG/WIM/PXEWIM.0
回复

使用道具 举报

70#
发表于 2010-12-16 16:54:31 | 显示全部楼层
PXE的部份一直都是这样子的.没有变动过.
回复

使用道具 举报

71#
发表于 2010-12-16 19:51:20 | 显示全部楼层
前面的那些有可能是GRUB4DOS的BUG,我再查查看...
用insmod之后就不会有问题了.

还有用()/path来代替/path也可以暂时解决
回复

使用道具 举报

72#
发表于 2010-12-17 00:13:14 | 显示全部楼层
原帖由 zhaohj 于 2010-12-16 23:08 发表
我记得你以前说过,加载到内存的外部命令要绝对路径(没盘符的要加())加载,是否有此有关呢?


没关系,我已经找到原因了,只是还没有编译上传.

正在修改批处理执行的函数.

以后可以直接在外部命令中调用批处理的CALL/goto 标签.

之前的版本只能调用GOTO,调用CALL会失败.

这样可以配合WENV的FOR功能
例子:
!BAT
wenv for /l %%i in (1,1,5) do call call :test %%i
goto :eof
:test
echo %1

正在编译,大家明天可以测试一下.

注:在批处理中要使用%,除非明确它是一个参数,否则最好使用%%.虽然目前%a-%z之类的是不会被处理的,但判断也是需要时间的.

但是使用%%来代替%可以加快程序运行的速度.因为不需要程序进行判断.

[ 本帖最后由 chenall 于 2010-12-17 00:38 编辑 ]
回复

使用道具 举报

73#
发表于 2010-12-22 00:51:52 | 显示全部楼层
请测试外部命令打包集的功能是否正常.
使用最新版GRUB4DOS用以下命令加载
insmod grub4dos.mod

注:.mod扩展名是必须是.不可以改变.

makemod用tc写的简易打包程序,只供测试使用,而且必需在当前目录下使用.

grub4dos.mod
包含以下几个外部命令
fat chkpci diskid ghostpwd wenv menuset unifont
使用以下命令生成的grub4dos.mod
makemod fat chkpci diskid ghostpwd wenv menuset unifont
再用gz压缩后改名得到的.



另外求一个非常简单的makemod的GUI程序.

这个.MOD文件格式非常的简单.如下的样子.
struct
{
     char filename[12];//原文件名最长11个字符.
     unsigned long size;//原文件大小4个字节;
     char data[size];//原文件内容;
} mod_file;

mod_file1
mod_file2
...
mod_filen

具体可以看一下grub4dos.mod文件内容(先用GZ解压一下).

[ 本帖最后由 chenall 于 2010-12-28 18:21 编辑 ]

grub4dos_makemod.zip

35.14 KB, 下载次数: 64, 下载积分: 无忧币 -2

回复

使用道具 举报

74#
发表于 2010-12-22 13:29:10 | 显示全部楼层
原帖由 zhaohj 于 2010-12-22 08:33 发表
makemod不支持tuxw的wenv打包


嗯,这个文件太大了,目前MAKEMOD只支持最大40KB的文件.你可以先用GZ压缩一下就可以了.

或者手工制作.
方法
用WINHEX打开这个WENV
在文件最开始处添加16字节.
最前面的处写上WENV最后4个字节是WENV文件的长度.比如是50KB
就是51200=C800

最后4字节的内容就是00 C8 00 00
然后用COPY /B把这个新的文件附加到GRUB4DOS.MOD上就可以了.
回复

使用道具 举报

75#
发表于 2010-12-23 11:42:38 | 显示全部楼层
原帖由 zhaohj 于 2010-12-22 15:29 发表
晕,需要12-21版本的Grub
成了。
还需要把delmod也分离出来,一次性卸载。

-------------------------
测试发现delmod *.* 能卸载所有

那就没问题了。


delmod *
只有一个用法.
不管*后面是什么字符都是删除所有的.
回复

使用道具 举报

76#
发表于 2010-12-24 11:24:56 | 显示全部楼层
这个和UD没有关系,很早的版本就这样了,因为要考虑有带分区的软盘..
回复

使用道具 举报

77#
发表于 2010-12-24 17:00:18 | 显示全部楼层
记得前几天也有人说find没有效果...忘了是谁了...
最终还是不了了之.......

一般的猜测是自己使用的问题,..

就像上面的查找UD
你是否从fbinst启动了?没有从fbinst启动就不会有ud.
(虽然新版GRUB4DOS有全面支持ud类的文件系统,但(ud)设备还是只有从fbinst启动才会出现的)
回复

使用道具 举报

78#
发表于 2010-12-25 08:26:58 | 显示全部楼层
原帖由 <i>sgw888</i> 于 2010-12-24 20:57 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2120266&ptid=180142" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />
可否弄一个跟DOS的DIR一样的外部命令?习惯了DIR,可以不用记住文件全名。
<br />


用WENV的DIR命令试试.支持*和?
回复

使用道具 举报

79#
发表于 2010-12-27 16:07:02 | 显示全部楼层
已经修复了,试试今天的版本.
回复

使用道具 举报

80#
发表于 2010-12-27 17:20:30 | 显示全部楼层
和CMD一样.
%~dpnx

只是目前我们只是简单的处理,没有相对路径的支持.
回复

使用道具 举报

81#
发表于 2010-12-27 18:10:44 | 显示全部楼层
这是你自己脚本的问题,虽然2看起来正常,但实际上第2个会占用越来越多的内存,并且得不到释放.

你可能对批处理不是很理解..
关于call/goto是有很大区别的.具体你可以再找找相关的资料看看.
回复

使用道具 举报

82#
发表于 2010-12-27 18:21:39 | 显示全部楼层
原帖由 zxw 于 2010-12-27 18:14 发表
我本来一直用的第一个。我也知道第二个会比较占内存。
为什么第一个不成功呢?应该没写错啊?我这样写的目的,是为了动态获取“路径”。


我前面已经说过了,
call/goto的应用有问题...

call执行之后还要继续执行后面的语句的.而goto不会.

你用exec虽然可以让它不执行后面的语句,但已经相当于又新执行了一次批处理..

目前我们有最多连续运行十个批处理的限制,所以如果你用第2个,那循环10次之后将会出现失败.
回复

使用道具 举报

83#
发表于 2010-12-28 12:26:44 | 显示全部楼层
应该和这里的变动有关系。
http://bbs.znpc.net/viewthread.p ... fromuid=29#pid46997

我晚上再查一下。也许这个变动涉及到了更多的地方。。
回复

使用道具 举报

84#
发表于 2010-12-28 17:59:09 | 显示全部楼层
GRUB4DOS和FAT新版都已经更新了.新的FAT只能在新版GRUB4DOS中使用,不兼容旧版.
回复

使用道具 举报

85#
发表于 2010-12-29 15:28:40 | 显示全部楼层
原帖由 zhaohj 于 2010-12-29 14:04 发表
再贴个图,目前看来问题较多(12-28版本)
批处理都出问题了


麻烦你再试试用27之前的版本.有空顺便调试一下问题的根源吧,我现在也没有那多么时间进行调试了.

新版本的变动除了FAT命令以外,其它的命令不应该出现问题的.
应该也是外部命令的关系.也许和WENV有关.
回复

使用道具 举报

86#
发表于 2010-12-29 23:20:11 | 显示全部楼层
没有看明白,我自己小测了一下.一切正常.
回复

使用道具 举报

87#
发表于 2010-12-30 02:17:33 | 显示全部楼层
@zhaohj,
这个有空再测试吧,还没有确定是27号的版本引起的.可能很早之前的版本就这样了,
要找问题,可能需要不少时间.


新的GRUB4DOS已经上传,添加了中文的README在CHINESE目录下.
只是初版,一些新的功能都还没有写进去.

直接使用了zw2312914 提供的翻译版本进行修改.
http://bbs.znpc.net/viewthread.php?tid=5587&extra=page%3D2

PS:这些都是苦力活,虽然只是简单的修整,还是花费了我不少的时间.

欢迎大家一起找错误和提供新的资料.
回复

使用道具 举报

88#
发表于 2010-12-30 13:08:12 | 显示全部楼层
原帖由 zhaohj 于 2010-12-30 08:27 发表
12-29版本g4d不支持老版本的FAT(11-05)外部命令?


前面已说过了,新版的因为修改了磁盘读写函数的原型,所以FAT命令会失败。27号之后要的使用新的FAT命令。

其它命令如果有使用了磁盘读写函数也同样会失败,不过我印像中除了FAT命令外都没有用到。
回复

使用道具 举报

89#
发表于 2010-12-30 16:39:43 | 显示全部楼层
晚上我再抽空试一下,应该是哪里有内存冲突或是其它原因..
回复

使用道具 举报

90#
发表于 2010-12-30 21:15:18 | 显示全部楼层
不好意思,应该是我传错了FAT,,,前天上传的版本解压后竟然有3MB,
已经重新上传了。

看来有必要在INSMOD的时候加一点限制,否则一不小心又超限了。

[ 本帖最后由 chenall 于 2010-12-30 21:16 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-26 15:35

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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