无忧启动论坛

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

[发布] grub4dos支持VBE 显示模式的外部命令(阶段性完美版)

[复制链接]
跳转到指定楼层
1#
发表于 2011-10-14 00:24:36 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
下载最新版本附件。

直接在GRUB4DOS下作为外部命令运行即可。。

支持带字库参数(为了方便编程测试只支持VTEDIT生成的字库)。比如

vbe vfont=/vt.exe

效果图看附件。

执行之后会进入VBE 0x101 640*480*8的模式.

使用terminal console命令退出。

执行VESA之后不可以使用FONT/UNIFONT/SPLASHIMAGE/GFXMENU等图形界面的命令,可能会导致死机。

代码修改自这里

http://bbs.znpc.net/viewthread.php?tid=6136&extra=page%3D1

这边也有一个测试的版本
http://bbs.znpc.net/viewthread.php?tid=6139&page=2#pid48977

要使用VFONT字体需要加VFONT参数

例子:

vbe vfont=/vt.exe

为了便于测试,支持指定模式比如

vbe mode=0x101 (默认)640x480x8
vbe mode=0x103 800x600x8
vbe mode=0x107 1280x1024x8

具体的可以自己使用vbeprobe命令查看。

最新版本的参数介绍
vbe mode=[mode] vfont=[vfont] demo

1.vbe demo(vbe界面演示)
2.vbe mode=[mode] 进入指定的vbe 模式,配合vfont参数可以显示中文。

使用以下命令返回。
terminal console

最新版本可以使用color命令设置颜色。
color NORMAL [HIGHLIGHT [HELPTEXT [HEADING]]]

和console模式中的一样可以指定不同的地方显示不同的颜色。
例子:
color 0xff00 0xffffff 0xff00ff 0xffff00

颜色代码格式:0xRRGGBB
注:颜色代码是一个32位的数值(只有后面24位有效)。

另外还可以使用color 设置光标颜色和背景色
color -1 背景色 光标色
color -1 0 0xff0000

注:背景色只有x8(256色)的模式下有效。

2011-11-05  自动检测并使用800X600X32/24模式.
配合最新版GRUB4DOS使用2011-11-04以上的版本.
支持调用用GRUB4DOS的FONT命令加载的字库.
例子,如下两行就可以了.
font /unifont.hex
vbe

可以使用这里的工具生成小字库.
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=180142&page=151#pid2332577


2011-10-17
阶段性完美版。修复所有已知的BUG,支持显示一个启动图片。
例子:
vbe bmp=/test.bmp (效果看附件)

注:这个图片必需是BMP格式,24位色,并且是系统所支持的分辨率才可以使用。
比如800x600x24或1024x768x24等.

2011-10-16 更新
进入实用性阶段。支持设置颜色(包括光标的颜色)

2011-10-14 晚上11点更新
基本上可以作为日常使用了,尝试支持所有支持的模式,支持滚屏等。

注:如果发现执行之后是一片黑屏这时是没有死机的,可能是颜色不对。
输入以下命令回车后就可以返回了(盲打),一次不行就再输几次一般都可以正常退出的。
terminal console

[ 本帖最后由 chenall 于 2011-11-5 21:44 编辑 ]

20111014.png (3.91 KB, 下载次数: 353)

20111014.png

20111016170643289.png (13.86 KB, 下载次数: 272)

800x600x24 的效果图

800x600x24 的效果图

20111017222051352.jpg (84.37 KB, 下载次数: 266)

20111017222051352.jpg

vesa.rar

4.11 KB, 下载次数: 181, 下载积分: 无忧币 -2

vesa-2011-10-14.zip

5.17 KB, 下载次数: 121, 下载积分: 无忧币 -2

vbe-2011-10-16.zip

4.84 KB, 下载次数: 106, 下载积分: 无忧币 -2

vbe-2011-10-17.zip

5.46 KB, 下载次数: 79, 下载积分: 无忧币 -2

vbe-2011-10-19.zip

3.76 KB, 下载次数: 86, 下载积分: 无忧币 -2

vbe-2011-11-05.zip

4.39 KB, 下载次数: 251, 下载积分: 无忧币 -2

必须配合2011-11-04以上的版本使用.

181#
 楼主| 发表于 2011-12-7 14:12:42 | 只看该作者
本贴已经终结。VBE外部命令也已经过时。关于外部命令VBE的问题不再回复。
回复

使用道具 举报

180#
发表于 2011-12-7 14:06:47 | 只看该作者
我的VBE背景分辨率是1024X768
用的是夜天版主的RUN
菜单是这样:
title   --加载 IMA、IMG 工具
set font=font (ud)/BOOT/GRUB/UNIFONT.HEX
command RUN --automenu --show.IMA.IMG.LST (ud)/BOOT/IMGS/
中间会有一个黑条,返回主菜单会消失

800X600分辨率就没问题
回复

使用道具 举报

179#
发表于 2011-12-7 13:19:36 | 只看该作者
回复

使用道具 举报

178#
发表于 2011-12-4 12:19:52 | 只看该作者
怎样将24位图片转为32位啊?
我用PS转完以后发现保存选项没有BMP格式
回复

使用道具 举报

177#
发表于 2011-11-19 17:03:25 | 只看该作者
原帖由 zhaohj 于 2011-11-19 16:38 发表
菜单快捷键setkey不点大想取消呢!尽量不要用吧,目前只支持0~9的菜单数目,包括空的。



我说的不是这种映射关系。
像isolinux中一样,在菜单项里出现^,其后紧跟的数字或者字母即为快捷键。我想可以检测按下的键是否是菜单中^之后被定义的快捷键,是的话就跳到相应的行号上。这种操作应该没有任何危险,只是稍用了点资源。
回复

使用道具 举报

176#
发表于 2011-11-19 16:38:41 | 只看该作者
菜单快捷键setkey不点大想取消呢!尽量不要用吧,目前只支持0~9的菜单数目,包括空的。
回复

使用道具 举报

175#
发表于 2011-11-19 15:58:12 | 只看该作者
原帖由 zhaohj 于 2011-11-18 13:35 发表


你的要求已经实现了!

哦,刚刚测试新版,很完美。
那个菜单快捷键也实现了吗?怎么设置?
回复

使用道具 举报

174#
发表于 2011-11-19 09:04:05 | 只看该作者

回复 #167 快雪时晴 的帖子

早就想更新了  但是原文件现在没在手里。。。
回复

使用道具 举报

173#
发表于 2011-11-19 08:37:34 | 只看该作者
原帖由 liuzhaoyzz 于 2011-11-18 18:42 发表
看了很多相关资料,零零碎碎懵懵懂懂的。
chenall如果能在一楼注明146楼的说明就好了。
现在简单通用地进入vbe bios模式就是
graphicsmode -1
font /unifont.hex
menu.lst以后推荐采用utf-8编码。如果以后 ...


不建议ansi、utf-8  通吃,希望只保留utf-8
回复

使用道具 举报

172#
发表于 2011-11-18 19:24:12 | 只看该作者
grub相对稳定下来后,zhaohj 分享一下你的的这些合集pe吧,都是网络启动的,看着就挺好。
回复

使用道具 举报

171#
发表于 2011-11-18 18:42:24 | 只看该作者
看了很多相关资料,零零碎碎懵懵懂懂的。
chenall如果能在一楼注明146楼的说明就好了。
现在简单通用地进入vbe bios模式就是
graphicsmode -1
font /unifont.hex
menu.lst以后推荐采用utf-8编码。如果以后ansi和usf-8通吃就好了。
兼容以前的color语句。
font取代了中文grldr里面的fontfile,取代了英文grldr里面的unifont。
加载字体可以用chenall的mkfon程序来简化unifont.hex的大小。
回复

使用道具 举报

170#
发表于 2011-11-18 14:00:23 | 只看该作者
试试看一看
加油!!!  
回复

使用道具 举报

169#
发表于 2011-11-18 13:35:44 | 只看该作者
原帖由 lafter 于 2011-11-13 22:31 发表
另外,菜单项的高亮条可否自定义高度范围?或者只在文字处高亮?从最左一直亮到最右不是不可以,但如果支持背景后还这样,那菜单美化效果会打折扣的。

最后,强烈要求支持字母快捷键.菜单便捷易用还是很重要的


你的要求已经实现了!

Snap1.jpg (53.69 KB, 下载次数: 170)

Snap1.jpg
回复

使用道具 举报

168#
发表于 2011-11-18 13:15:21 | 只看该作者
谢谢,太强大了。。。
回复

使用道具 举报

167#
发表于 2011-11-13 22:47:41 | 只看该作者

回复 #156 不点 的帖子

等vbe正式版出来,sratif也该更新help.chm了,最近新东西太多了
回复

使用道具 举报

166#
发表于 2011-11-13 22:31:50 | 只看该作者
另外,菜单项的高亮条可否自定义高度范围?或者只在文字处高亮?从最左一直亮到最右不是不可以,但如果支持背景后还这样,那菜单美化效果会打折扣的。

最后,强烈要求支持字母快捷键.菜单便捷易用还是很重要的
回复

使用道具 举报

165#
发表于 2011-11-13 21:35:44 | 只看该作者
原帖由 zhaohj 于 2011-11-13 15:34 发表 因为目前font只支持vbe下显示文字。在文本模式下还没处理。---------------不点大,图形模式graphicemode -1的探测有时会卡几秒。
在联想启天M4390上,graphicsmode -1 启动后提示超出信号处理范围。graphicsmode 0x115时显示中文正常,按键后菜单向下拷贝刷屏(如按3,则第3title的菜单项会显示多行.无论显示如何,盲操作均可进入PE或启动IMG.以上操作虚拟机上都正常。无网,无相机,只好罗嗦几句
回复

使用道具 举报

164#
发表于 2011-11-13 15:34:35 | 只看该作者
原帖由 tingyue-wu 于 2011-11-13 15:19 发表
我知道 但是如果没有这种模式 也应该提示模式错误,和字体应该没有关系吧。


因为目前font只支持vbe下显示文字。在文本模式下还没处理。
---------------
不点大,图形模式graphicemode -1的探测有时会卡几秒。
回复

使用道具 举报

163#
发表于 2011-11-13 15:19:04 | 只看该作者

回复 #159 zhaohj 的帖子

我知道 但是如果没有这种模式 也应该提示模式错误,和字体应该没有关系吧。
回复

使用道具 举报

162#
发表于 2011-11-13 13:44:49 | 只看该作者

回复 #161 不点 的帖子

不点大大,什么时候内置vbe支持图片?
回复

使用道具 举报

161#
发表于 2011-11-13 13:07:32 | 只看该作者
@2011Tduy09

The unifont page is here: http://unifoundry.com/unifont.html

You should down load this one: http://unifoundry.com/unifont-5.1.20080820.hex
回复

使用道具 举报

160#
发表于 2011-11-13 12:22:05 | 只看该作者
I want UNIFONT.HEX for multi lang! ? How create UNIFONT.HEX from font .ttf
回复

使用道具 举报

159#
发表于 2011-11-13 11:57:52 | 只看该作者
原帖由 tingyue-wu 于 2011-11-13 11:49 发表
新版设置为graphicsmode -1 800 500 24或graphicsmode -1 800 500 32都会显示中文乱码。
照理要么不能显示,怎么会乱码呢?


说明没有进入图形模式,你的参数不对。
用vbeprobe查看一下有这种模式吗?
简单点,让它自动匹配 graphicsmode -1 800
回复

使用道具 举报

158#
发表于 2011-11-13 11:49:50 | 只看该作者
新版设置为graphicsmode -1 800 500 24或graphicsmode -1 800 500 32都会显示中文乱码。
照理要么不能显示,怎么会乱码呢?
回复

使用道具 举报

157#
发表于 2011-11-13 11:21:02 | 只看该作者
不点大看来已经解决了显示输出问题,明显感到换屏换行上移的速度的提升。
回复

使用道具 举报

156#
发表于 2011-11-13 09:26:18 | 只看该作者
现在的 color 命令使用 64 位的颜色数值:低 32 位表示前景色,高 32 位表示背景色。

你的 color 命令中,高 32 位是 0,就是说,背景为黑色:
color 0xC9C9C9 0xFF4A4A 0xFF4AFF 0x00366D

64位颜色格式:0xFFRRGGBBffrrggbb

建议最高的字节设置为 FF,以免被系统当作旧的 16 色来处理了。
回复

使用道具 举报

155#
 楼主| 发表于 2011-11-13 09:23:05 | 只看该作者

回复 #154 thttht 的帖子

1.请使用最新的测试版本

http://bbs.znpc.net/viewthread.p ... fromuid=29#pid49253

2.你可以自己default 1呀.

3.背景色也可以这样设置 0xAARRGGBBAARRGGBB
或color FG/BG
回复

使用道具 举报

154#
发表于 2011-11-13 09:04:43 | 只看该作者
请问新版的grub4dos-0.4.5b-2011-11-10这样设置的方法如何定义屏幕背景颜色啊?这样我试一直背景是黑色!

color 0xC9C9C9 0xFF4A4A 0xFF4AFF 0x00366D
font /BOOT/GRUB/UNIFONT.HEX
graphicsmode 0x115

非得这样才能设置背景色吗?
color white/blue blue/yellow light-red/blue 10

还有新版的在菜单是如下是,刚进入菜单时这条为选择状态:
title --------------------------------- Windows 系统启动功能菜单 ---------------------------------------
clear


进行手动选择后这样的条目就不能选择上了!能否解决刚进入菜单时,菜单设置相default 0 为选择状态,或不让最前面title clear 空目录相为选择状态啊?能改成刚进入菜单时就如下图这样吗?



菜单如下:

default 0
timeout 10
color 0xC9C9C9 0xFF4A4A 0xFF4AFF 0x00366D
if exist ()/BOOT/GRUB/UNIFONT.HEX || find --set-root /BOOT/GRUB/UNIFONT.HEX
font /BOOT/GRUB/UNIFONT.HEX
graphicsmode 0x115

title --------------------------------- Windows 系统启动功能菜单 ---------------------------------------
clear

title 0 .启动硬盘系统
。。。。。。。
。。。。。

[ 本帖最后由 thttht 于 2011-11-13 09:13 编辑 ]

20111113091028140.png (6.01 KB, 下载次数: 158)

20111113091028140.png

20111113091106328.png (5.48 KB, 下载次数: 145)

20111113091106328.png
回复

使用道具 举报

153#
发表于 2011-11-12 21:25:03 | 只看该作者

回复 #152 hotdll 的帖子

qemu:
graphicsmode 0x143
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-1 12:52

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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