|
原帖由 dvd008 于 2011-5-10 19:04 发表
这个5.09版的GRLDR,能否直接替换2010.06.03的版本(带DOS的版本)
我打算将两个版本做到一个菜单,但是,这两个菜单不同,能否统一
特别是:对无DOS版有什么影响?
calc *0x60200=*0x82a0
calc *0x60300=*0x829c ...
差不多就是这个样子。
我在合盘中就是集成了这两个版本。
terminal console
command --set-path=(bd)/BOOT/GRUB/
color white/black light-green/dark-gray light-green/black 10
debug off
clear
default 0
title 00 SRS_F6 (DOS) \n auto back boot menu
calc *0x60200=*0x82a0
calc *0x60300=*0x829c
configfile /SRS/SRS_F6.LST
boot
title 01 SRSF6 \n auto back boot menu without DOS
configfile/SRS/SRSF6.LST
boot
相应的,同目录下的用户自定义菜单MENU(DOS)文件中内容也要有所改变:
terminal console
color white/blue blue/yellow light-red/blue 10
calc *0x8280=*0x82a0 && calc *0x8208=*0x829c && root (bd)
checkrange 0x21 read 0x82a0 && pxe basedir /
default 0
timeout 50
title [0] Return WUYOU PEs GRUB4DOS Main Menu \n Return WUYOU PEs boot menu
#返回网启菜单:
checkrange 1 read 0x60100 && configfile (pd)/BOOT/GRUB/MENU/PXEGRUB.5U
#返回硬盘启动菜单:
checkrange 2 read 0x60100 && rootnoverify (hd0,0) && chainloader (hd0)+1 && boot
#返回软盘启动菜单:
checkrange 2 read 0x60100 && rootnoverify (fd0) && chainloader (fd0)+1 && boot
#返回光盘启动菜单:
checkrange 0x9f:0xff read 0x8280 && chainloader (cd) && boot
#非光启时返回原主菜单
checkrange 1:2 read 0x60100 || configfile ()/BOOT/GRUB/MENU/MAIN.5U && boot
checkrange 1:2 read 0x60100 || find --set-root /BOOT/GRUB/MENU/MAIN.5U && configfile ()/BOOT/GRUB/MENU/MAIN.5U && boot
checkrange 1:2 read 0x60100 || chainloader ()/wuyou || find --set-root /wuyou && chainloader ()/wuyou && boot
boot
#返回SRS_F6/SRSF6主菜单(/SRS/DEFAULT),启动类型判断同上。
title [1] Return SRSF6 Boot Menu \n Return SRSF6 default menu
checkrange 1 read 0x60100 && configfile (pd)/SRS/DEFAULT
checkrange 2 read 0x60100 && rootnoverify (hd0,0) && chainloader (hd0)+1 && boot
checkrange 2 read 0x60100 && rootnoverify (fd0) && chainloader (fd0)+1 && boot
checkrange 1:2 read 0x60100 || configfile ()/SRS/DEFAULT && boot
checkrange 1:2 read 0x60100 || find --set-root /SRS/DEFAULT && configfile ()/SRS/DEFAULT && boot
checkrange 1:2 read 0x60100 || chainloader ()/SRS/SRSF6.0 || find --set-root /SRS/SRSF6.0 && chainloader ()/SRS/SRSF6.0
checkrange 0x9f:0xff read 0x8280 && chainloader (cd) && boot
无DOS的模块中,内部也有要改的地方,在SRSF6.IMG中的MENU.LST中可以加上菜单:
title [0] Return WUYOU PEs GRUB4DOS Main Menu \n Return WUYOU PEs Boot Menu
clear
checkrange 0x21 read 0x8280 && configfile (pd)/BOOT/GRUB/MENU/PXEGRUB.5U
checkrange 0x23 read 0x8280 && rootnoverify (hd0,0) && chainloader (hd0)+1 && boot
checkrange 0x23 read 0x8280 && rootnoverify (fd0) && chainloader (fd0)+1 && boot
checkrange 0x9f read 0x8280 && chainloader (cd) && boot
configfile ()/BOOT/GRUB/MENU/MAIN.5U && boot
find --set-root /BOOT/GRUB/MENU/MAIN.5U && configfile ()/BOOT/GRUB/MENU/MAIN.5U && boot
chainloader ()/wuyou || find --set-root /wuyou && chainloader ()/wuyou
boot
title [1] Return SRSF6 Boot Menu \n Return SRSF6 default menu
clear
checkrange 0x21 read 0x8280 && configfile (pd)/SRS/DEFAULT
configfile (md)4+8
我两个模块都弄到SRS目录下了,目前看工作是正常的。
合一后的主菜单重命名为DEFAULT,目的是从pxelinux网启时调用SRSF6.0可以网启这个合一后的菜单。SRSF6.0为grub或者pxelinux菜单中要加载的对象。
D大要做的工作大致类似,可参考我合盘的0315patch补丁包中相关文件:
http://u.115.com/file/f3ae5878a9 |
|