无忧启动论坛

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

[分享] 随机背景

[复制链接]
跳转到指定楼层
1#
发表于 2011-7-12 17:29:56 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
自己做的随机背景批处理,让大家见笑了,没什么水平,主要是想多做几个背景都能用得上,用到wenv命令,wenv命令需要支持随机数,批处理如下

!BAT:参数1为wenv命令地址,参数2为图片路径(完整路径减去图片后面的数字),参数3为图片数量(0开始,1,2.....),例如 /grub/Ransplash.bat /grub/drive/wenv /grub/splash/message 128

##:begin
%1 set messstr=%2
%1 set num=%3
%1 ${@RANDOM}
%1 set ran=${@RANDOM}
%1 calc res=${ran}/${num}*${num}
%1 calc res=${ran}-${res}
:: if not exist ${messstr}${res} && goto :begin ::这里判断文件存在有问题
%1 echo now Loading ${messstr}${res}
%1 call gfxmenu ${messstr}${res}

在lst文件中加上/grub/Ransplash.bat /grub/drive/wenv /grub/splash/message 128
/grub/Ransplash.bat是上面批处理文件名和位置.

需要在第二个参数的路径下准备随机的背景图片如下命令(为了看清楚,我写完整路径)
/grub/splash/message0
/grub/splash/message1
/grub/splash/message2

这样,还可以更多,如果是这样,第三个参数应该是3,因为一共是三个嘛,但应该可以自动判断以/grub/splash/message类的文件个数,不用最后一个参数,我是菜鸟不会写

经实验第一个${@RANDOM} 经常是8209这个固定值(至少绝大多数是这个)
所以先去掉第一次调用的${@RANDOM},用下面的代替(::begin后面的第三行)(但有的版本grub不支持这种写法,有的版本支持)
%1 ${@RANDOM}

这里有几个问题没解决,希望看到此帖的高手请教:
1.怎么不显示wenv的屏幕显示信息,例如set后面的都显示出来了
2.${@RANDOM}如何让第一次不显示8209
3.如何判断带有变量的文件是否存在,如上面的有问题的那句if not exist ${messstr}${res} && goto :begin

[ 本帖最后由 ducs 于 2011-7-14 16:59 编辑 ]
40#
发表于 2011-8-26 15:01:08 | 只看该作者
顶到有高人出现为止。
回复

使用道具 举报

39#
发表于 2011-8-23 08:00:02 | 只看该作者
原帖由 husiqin 于 2011-8-22 23:19 发表
谁有弄好的,传个完整的上来看看,弄半天没搞定。晕死。

同感,能分享一个成功的看看吗??
回复

使用道具 举报

38#
发表于 2011-8-22 23:19:19 | 只看该作者
谁有弄好的,传个完整的上来看看,弄半天没搞定。晕死。
回复

使用道具 举报

37#
发表于 2011-8-18 23:45:28 | 只看该作者
不错啊 楼主  学习了  辛苦了您
回复

使用道具 举报

36#
发表于 2011-8-18 16:59:11 | 只看该作者
期待chenall 大侠写一个XPM.GZ格式的随机背景批处理!
回复

使用道具 举报

35#
发表于 2011-7-20 21:39:28 | 只看该作者
坐等楼上的message。嘎嘎
回复

使用道具 举报

34#
发表于 2011-7-20 19:10:34 | 只看该作者
看了各位的帖子,我终于弄好了!!激动人心!刚开始我把c大的批处理保存的编码不对,耽误的几十分钟!我用ud启动感觉很棒!!随机背景加载并不慢!!!我弄了20个message感觉很爽!(用百草霜的工具做了36个,无奈只有20个可用)手机没流量了,电脑没连网,有机会在再共享。呼吁大家多多制作message!!!!!!!!!向楼主致敬!!!!!!!!!!!!!!很有创意!!!还有c大!!

[ 本帖最后由 2010hb_711 于 2011-7-20 20:59 编辑 ]
回复

使用道具 举报

33#
发表于 2011-7-20 10:48:17 | 只看该作者
原帖由 ducs 于 2011-7-18 20:45 发表
我用哪个版本都可以随机图片,估计是你们的文件位置及调用方式有问题




我当初感觉本人的电脑所用的ASUS主板不相容,但我用另一台电脑技嘉主板,情况仍然一样,请将你的文件位置及调用方式上传,以供叁考,谢谢。
回复

使用道具 举报

32#
发表于 2011-7-20 09:06:40 | 只看该作者
各位能不能将自己的message一起传上来大家分享一下啊,最好去除个人的信息。
回复

使用道具 举报

31#
发表于 2011-7-19 18:15:45 | 只看该作者
原帖由 jeremy 于 2011-7-19 10:58 发表

你是XORLDR引导吧!





是G4D引导的
回复

使用道具 举报

30#
发表于 2011-7-19 10:58:10 | 只看该作者
原帖由 wama 于 2011-7-19 10:45 发表
回复 #27 chenall  的帖子

增加了一行後,不但没有显示message0画面,连进入菜单画面都不能,便从新开机,就是这样不能进入xp了。
C大可否写个bat文件,在进入G4D菜单前,可选择0~5...的message画面吗?我较 ...

你是XORLDR引导吧!
回复

使用道具 举报

29#
发表于 2011-7-19 10:45:29 | 只看该作者
回复 #27 chenall  的帖子

增加了一行後,不但没有显示message0画面,连进入菜单画面都不能,便从新开机,就是这样不能进入xp了。
C大可否写个bat文件,在进入G4D菜单前,可选择0~5...的message画面吗?我较喜欢这样的操作。谢谢!
回复

使用道具 举报

28#
发表于 2011-7-19 00:33:34 | 只看该作者
成功了,\(^o^)/~

就是加载有点慢,~~o(>﹏<)o
回复

使用道具 举报

27#
发表于 2011-7-18 20:58:23 | 只看该作者
#25,#26
你们用新的代码再试一下。前面的贴子,代码已经修改,增加了一行,初始化num的值。

还是不行的话应该就是你们使用的问题了。
回复

使用道具 举报

26#
 楼主| 发表于 2011-7-18 20:45:27 | 只看该作者
我用哪个版本都可以随机图片,估计是你们的文件位置及调用方式有问题
回复

使用道具 举报

25#
发表于 2011-7-18 18:49:47 | 只看该作者
原帖由 wama 于 2011-7-18 18:30 发表
回复 #23 chenall  的帖子

已更换了#23的grldr,但情况依然,当进入菜单前显示以下讯息:

"Initialize Variable Space...
Starting cmain〔〕... No PXE stack
Now Loading (hd0,3) /Boot/Splash/messa ...

是的,我的也是。不行
回复

使用道具 举报

24#
发表于 2011-7-18 18:30:52 | 只看该作者
回复 #23 chenall  的帖子

已更换了#23的grldr,但情况依然,当进入菜单前显示以下讯息:

"Initialize Variable Space...
Starting cmain〔〕... No PXE stack
Now Loading (hd0,3) /Boot/Splash/message0
Initializing gfx code..."

因此都是显示message0画面。
回复

使用道具 举报

23#
发表于 2011-7-18 16:42:24 | 只看该作者
抱歉,麻烦试试这个GRLDR

grldr.rar

129.77 KB, 下载次数: 55, 下载积分: 无忧币 -2

回复

使用道具 举报

22#
发表于 2011-7-18 10:50:17 | 只看该作者
原帖由 wama 于 2011-7-18 09:57 发表
回复 #14 ducs 的帖子

我已是使用9楼的grldr来引导的,但情况就如#18所述情况一样,启动时永远都是显示message0画面。

我的也是显示message0画面,9楼的grldr来引导
回复

使用道具 举报

21#
发表于 2011-7-18 09:57:03 | 只看该作者
回复 #14 ducs 的帖子

我已是使用9楼的grldr来引导的,但情况就如#18所述情况一样,启动时永远都是显示message0画面。
回复

使用道具 举报

20#
 楼主| 发表于 2011-7-17 20:02:24 | 只看该作者

回复 #19 wama 的帖子

使用9楼的grldr来引导,chenall已经修改了随机变量的取值方法
回复

使用道具 举报

19#
发表于 2011-7-17 19:14:15 | 只看该作者
回复 #18 chenall 的帖子

我将输入的路径改变,如
(hd0,0)/boot/grub/randomgfx  (hd0,0)/boot/splash/message
便能正常启动G4D菜单,改debug 3则在进入菜单前续行显示,而debug off则直接显示菜单画面,但无论debug 3或debug off都总是显示message0画面,并没有随机显示message1-5.....,请问可否在进入菜单画面前,让使用者选择message1-5....呢?
感谢你的回应及指点。
回复

使用道具 举报

18#
发表于 2011-7-17 00:09:13 | 只看该作者

回复 #15 wama 的帖子

debug 3
然后再试一下。我用手机上。

如果其他人没问题,那就是你自己的问题。
回复

使用道具 举报

17#
发表于 2011-7-17 00:06:31 | 只看该作者

回复 #16 zxw 的帖子

google 0x46c或0040:006c
回复

使用道具 举报

16#
发表于 2011-7-16 19:19:23 | 只看该作者

回复 #11 chenall 的帖子

通过 0x46c获取时间:
貌似:小时是 calc *0x46c>>16&0xff
分秒是如何获取的?
回复

使用道具 举报

15#
发表于 2011-7-16 18:35:45 | 只看该作者
回复 #14 ducs 的帖子

我已输入完整的路径,如
/boot/randomgfx  (hd0,0)/boot/splash/message 或
(hd0,0)/boot/randomgfx  (hd0,0)/boot/splash/message
都是同样与#12所述情况。
回复

使用道具 举报

14#
 楼主| 发表于 2011-7-16 17:51:44 | 只看该作者

回复 #12 wama 的帖子

将randomgfx放在grub4dos默认的path变量路径中,或者输入完整的路径
回复

使用道具 举报

13#
发表于 2011-7-16 17:41:23 | 只看该作者
原帖由 chenall 于 2011-7-16 10:00 发表
可以直接用内存地址0x46c处的值,这个和时间有关。
新版就是用这个和日期计算的。


OK,改天折腾折腾,正在制作一系列的背景图。
回复

使用道具 举报

12#
发表于 2011-7-16 15:07:55 | 只看该作者
回复 #2 chenall 的帖子

我用randomgfx  /boot/splash/message 或 /boot/randomgfx  /boot/splash/message 的命令来调用,但在Dos下显示滚动的字句 'No such command,  /boot/splash/message '一直在滚动,不能进入Menu.....
请指教。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-17 12:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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