无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
123
返回列表 发新帖
楼主: pseudo

F6模块0PE_SRS&通用合盘模板(双语)示例教程(F6 Module & Multi-Language Menu)

    [复制链接]
发表于 2010-4-19 00:14:25 | 显示全部楼层
刚刚想起一个小问题,请教P大,您的这个双语菜单应该还是用的G4D的英文版吧?

点评

高  发表于 2022-6-1 16:07
回复

使用道具 举报

 楼主| 发表于 2010-4-19 00:32:55 | 显示全部楼层

回复 #61 guoqqqqqq 的帖子

嗯,英文grldr。
它比中文版兼容性要好些。

点评

高  发表于 2022-6-1 16:07
回复

使用道具 举报

发表于 2010-4-19 00:53:14 | 显示全部楼层

回复 #62 pseudo 的帖子

如果这样的话,和其他PE一起做大合盘的时候,可以考虑索性统一成全英文G4D。再仿照双语菜单模式加载中文字库。

点评

中文  发表于 2022-6-1 16:07
回复

使用道具 举报

发表于 2010-4-21 13:37:56 | 显示全部楼层
楼主你好,我用gfxboot做的光盘引导,和你的srs合盘,我在gfx的menu.lst使用configfile \BOOT\GRUB\menu.lst后可以调用,但是中文乱码,换了几个版本的grldr不是gfx菜单乱码就是srs菜单乱码,请问怎么解决?

谢谢
回复

使用道具 举报

 楼主| 发表于 2010-4-21 15:42:58 | 显示全部楼层

回复 #64 wjgyz740526 的帖子

4.20版的GRLDR、UNIFONT据称专门解决了有时出现半个汉字的问题,可以试试。

必要时0PE_SRS.GZ里的grub.exe也换新版。但grub.exe至多只影响启动功能,跟乱码没多少联系,所以可以先不换。
=======
对了,本帖提供的就是合盘菜单示例。你应该在此基础上修改menu.lst作为你的合盘菜单。没必要再自己弄菜单来调用这里的menu.lst。
你把unfont那里换成gfxmenu不就成了你的gfxmenu菜单吗?这是个供DIY的示例,不是作为一个成品提供的。

[ 本帖最后由 pseudo 于 2010-4-21 15:53 编辑 ]

点评

必要  发表于 2022-6-1 16:08
回复

使用道具 举报

发表于 2010-4-30 13:31:50 | 显示全部楼层
通用模板,P大就是强啊!谢谢P大。下载测试

点评

通用  发表于 2022-6-1 16:08
回复

使用道具 举报

发表于 2010-5-1 23:46:40 | 显示全部楼层
先留名,有空再研究。

点评

研究  发表于 2022-6-1 16:08
回复

使用道具 举报

发表于 2010-9-19 10:47:44 | 显示全部楼层
P大:
checkrange 0x21 read 0x8280 && pxe detect NotExist
这句是啥意思?(就是加这句的目的)

[ 本帖最后由 2010visi 于 2010-9-19 10:50 编辑 ]

点评

意思  发表于 2022-6-1 16:08
回复

使用道具 举报

 楼主| 发表于 2010-9-19 12:20:01 | 显示全部楼层

回复 #68 2010visi 的帖子

0PE的grldr内置菜单要实现一个菜单应对各种启动环境,例如从光盘、ud、硬盘启动,还有pxe网启等。
还有要应对iso文件解开、不解开等情形。

checkrange 0x21 read 0x8280用来判断是否PXE网启,若是,则执行pxe detect NotExist初始化pxe环境。
参见
http://bbs.wuyou.net/forum.php?m ... p;page=1#pid1767713

点评

内置  发表于 2022-6-1 16:09
回复

使用道具 举报

发表于 2010-9-20 20:57:44 | 显示全部楼层
谢谢P大回复,P大既强又好耐心。不好意思再问一句:
那为什么grldr内置菜单要这句,而合盘时调0PE时的(/boot/grub/menu.ope)中不要这句了?

点评

耐心  发表于 2022-6-1 16:09
回复

使用道具 举报

 楼主| 发表于 2010-9-20 22:26:13 | 显示全部楼层

回复 #70 2010visi 的帖子

以前只提供grldr。后来为了方便用户才提供menu.0pe,两者基本相同(只有一两行差异)。

内置菜单的grldr,多作为第一启动,当然要初始化pxe环境。

menu.0pe,多用于合盘场合。合盘时,初始化pxe环境的工作应该由用户的主菜单负责。

如果主菜单初始化了(要自动判断是否已经初始化过了,有点麻烦),此时menu.0pe仍做初始化,就重复了,可能导致严重错误,并且用户会归咎于0pe。
如果menu.0pe不做初始化,主菜单也没做初始化,大不了网启不成,那只能怪合盘没弄好。因为不合盘,直接使用0pe的grldr是没问题的。

点评

初始化  发表于 2022-6-1 16:09
回复

使用道具 举报

发表于 2010-9-21 09:38:26 | 显示全部楼层
0PE精巧的地方就是多,谢谢P大。
再问一个问题:新版的0PE(2010.09.16)是不是合盘做中文菜单只能用gfxmenu了?真不好意思这些小小的问题都要问您大,但不问自己还真玩不了。

点评

精巧  发表于 2022-6-1 16:09
回复

使用道具 举报

 楼主| 发表于 2010-9-21 12:32:43 | 显示全部楼层
0pe的外置菜单menu.0pe或内置于grldr的菜单是一种复杂特殊的程式菜单,一般不要试图修改它,而应该调用它。
无论是调用整个菜单,还是其中某个菜单项都是非常简单的。

目前grub4dos相关的中文菜单,主要有gfxmenu和unifont两种,前者就不说了,后者例如:
http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
此外,还有使用中文版grldr/grub.exe的,但不如unifont。

注意,对9.16的0PE,应该使用9.16的grub4dos,尤其是合盘时。
如果grub4dos旧了(哪怕是早一天的版本),缺0PE要用到的新功能,或者有bug(9.16的修正了一个重要bug)。
如果grub4dos新了,一般来说,新的比旧的好。但可能有了变化(例如如9.19的在显示分辨率方面有变动),这种变化是否兼容旧版尚不清楚,因而有可能不能直接用于9.16的0pe。

点评

清酒  发表于 2022-6-1 16:10
回复

使用道具 举报

发表于 2010-9-21 16:19:18 | 显示全部楼层
9.16的0PE用unifont方法不行呀,合盘菜单是能现中文,到0PE菜单就乱了

点评

不行  发表于 2022-6-1 16:10
回复

使用道具 举报

 楼主| 发表于 2010-9-21 16:23:08 | 显示全部楼层

回复 #74 2010visi 的帖子

调用menu.0pe前,要先卸载unifont。找找这方面资料。

点评

调用  发表于 2022-6-1 16:10
回复

使用道具 举报

发表于 2010-9-21 18:40:05 | 显示全部楼层
grub4dos 显示多国语言菜单.

[说明]

2010-04-20更新
添加了简单的帮助信息
解决有时只显示半个字符的问题。
http://bbs.wuyou.net/forum.php?m ... page%3D1&page=4
1.GRUB4DOS 必须是grub4dos-0.4.5a-2010-03-11 以后的版本.
2.使用外部命令UNIFONT实现.
3.需要使用UNIFONT加载一个字库才能正常显示.
使用方法:
UNIFONT 字库路径
例子
UNIFONT /GRUB/U16.BIN
卸载(释放程序和字体占用内存):
UNIFONT –unload

chenall blog中找到了。

P大你是不是在9.16 0PE 中用了更新的显中文方法了,并且这种新方法与UNIFONT的方法有冲突,
能否告诉我,在合盘菜单中直接用新的显中文方法

点评

字库  发表于 2022-6-1 16:11
回复

使用道具 举报

 楼主| 发表于 2010-9-21 20:12:02 | 显示全部楼层
嗯,这个要自己研究了。

点评

自己  发表于 2022-6-1 16:11
回复

使用道具 举报

发表于 2010-9-21 21:58:18 | 显示全部楼层
用了unifont  unload也还是不行的

[ 本帖最后由 2010visi 于 2010-9-21 22:00 编辑 ]

点评

不行  发表于 2022-6-1 16:11
回复

使用道具 举报

发表于 2010-9-22 11:25:07 | 显示全部楼层
P大,卸载unifont后,0PE是能启动了,但菜单还是乱的(就剩一点一点的),不卸载unifont,0PE就不会启动

点评

卸载  发表于 2022-6-1 16:12
回复

使用道具 举报

发表于 2010-9-22 16:28:08 | 显示全部楼层
P大,有点搞懂你的中文显示了,是用外部命令FONTFILE和小字库,封得有点深,在0PE.GZ里,难怪每次显菜单都要先把0PE.GZ调进内存,为啥要这样处理?我猜也许是为了推广程式菜单和0PE的原则

点评

扩展  发表于 2022-6-1 16:12
回复

使用道具 举报

发表于 2010-9-23 19:22:05 | 显示全部楼层
谢谢分享!!!!!!!!

点评

分享  发表于 2022-6-1 16:12
回复

使用道具 举报

 楼主| 发表于 2010-9-23 21:33:58 | 显示全部楼层

设计原则

回复 #80 2010visi 的帖子
0PE的内核、外置工具不搞单一的文件,而是散开的多个文件,是为了组件化,方便剪裁。

为了文件目录清爽、方便剪裁,0PE采用这样的设计原则:
一个文件如果单独外置,那么意味着它是具有面向用户意义的、可删除的组件。否则应该封装起来不碍用户观瞻。

举个例子,ntdetect.com文件虽然是系统需要的,但没有面向用户的意义,这类文件就应该封装起来不让用户看到。就像在餐馆里,烤鸭可以上桌,鸭毛、菜刀就免了。

此外,如果用户看到ntdetect.com文件,那么他有可能将它剪裁掉,pe对此有思想准备吗?没有这个文件是不是整个pe全废了?
可剪裁的一个意思,就是剪裁后,剩下的仍有用处。

按设计原则,就不难理解为什么0PE要将菜单、字体文件、grub4dos外部命令等封装起来,使所有启动相关文件只有单一文件grldr。

回复 #79 2010visi 的帖子
本帖应该是坛里最早给出unifont菜单实例模板的,此前只有chenall大的例子。
但我迄今也就用过一回unifont,以后不再研究了。楼上要是遇到问题,自行搞定吧。
只要版本适当、操作正确,应该可以搞定的,否则就是grub4dos有bug了。

我9.16提供了一个16MB的ghostpe,可作合盘模板,用的是gfxmenu,中文显示没遇到问题。

点评

原则  发表于 2022-6-1 16:12
回复

使用道具 举报

发表于 2011-4-25 13:07:15 | 显示全部楼层
先留名,有空再研究。

点评

无名  发表于 2022-6-1 16:13
回复

使用道具 举报

发表于 2011-4-25 13:18:54 | 显示全部楼层
再次来学习学习P大的

点评

学习  发表于 2022-6-1 16:13
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 09:10

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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