无忧启动论坛

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

DOS下查找磁盘里的grub.exe并运行,增加一个刷入BIOS的img

  [复制链接]
271#
 楼主| 发表于 2015-3-9 18:39:24 | 只看该作者
本帖最后由 2013abcdefg 于 2015-3-9 19:05 编辑

TajuraTong能否发一份不修改成a盘的整合版kernel.sys?或者说说合并的方法

想把蛙哥的1JF9引导也加上去(才几K)

1JF9k V6.9.rar

29.63 KB, 下载次数: 6, 下载积分: 无忧币 -2

点评

基本上,程式没有对KERNEL.SYS作任何改动,唯一的破坏可能是由mbr传来的暂存器值, 有些系统级别的程式如KERNEL.SYS或者io.sys之类,可能会取用这些暂存器。 暂时保留BX试试看吧....  详情 回复 发表于 2015-3-10 11:15
回复

使用道具 举报

272#
 楼主| 发表于 2015-3-9 20:24:00 | 只看该作者
本帖最后由 2013abcdefg 于 2015-3-9 22:58 编辑

再发一个更小的KERNEL.SYS(36K)和更小的DOS(不知道有没有用)


还想问个问题

KERNEL.SYS
search Grldr

这个菜单在那里修改,想把KERNEL.SYS改成freeDOS

mini.zip

43.03 KB, 下载次数: 6, 下载积分: 无忧币 -2

点评

你用winhex载入KERNEL.SYS,跳到最后,再往上一个page 会找到Kernel[空白][空白]Search Grldr[00] Kernel.sys[空白][空白]是第一列文字,可任意修改,但不能超过 Search Grldr是第二列文字,可任意修改,但不能覆  详情 回复 发表于 2015-3-10 11:24
回复

使用道具 举报

273#
发表于 2015-3-10 11:15:41 | 只看该作者
2013abcdefg 发表于 2015-3-9 18:39
TajuraTong能否发一份不修改成a盘的整合版kernel.sys?或者说说合并的方法

想把蛙哥的1JF9引导也加上去( ...

基本上,程式没有对KERNEL.SYS作任何改动,唯一的破坏可能是由mbr传来的暂存器值,
有些系统级别的程式如KERNEL.SYS或者io.sys之类,可能会取用这些暂存器。
暂时保留BX试试看吧....

fix-bx-KERNEL.rar (45.16 KB, 下载次数: 3)
回复

使用道具 举报

274#
发表于 2015-3-10 11:18:45 | 只看该作者
cchessbd 发表于 2015-3-9 18:34
好像是来自dr-dos,记不太清了。传个镜像给你吧,command.com是freedos的,不需要额外加载doskey。

...

你这个img的mbr是专为io.sys之类的dos系统而设计,mbr可以由UltraISO读取或写入
方法是UltraISO上方的B项(可开机),[载入开机档案] 和 [储存开机档案]。

载入开机档案:读取盘上的xxx.BSF,取代原有的BSF (BSF大概是Boot system file的意思, 即MBR)。
储存开机档案:储存原有iso或img等镜像的BSF。

现在这个WY1.img的镜像里,io.bsf是原来的BSF (只是备份,可以随意删除)
kk.bsf是载入KERNEL.SYS的BSF (也是备份,可以随意删除)

WY1.img的改动是:由其他freedos的img里抽取bsf(载入KERNEL.SYS的mbr),即kk.bsf
写入原来的镜像(由UltraISO去做),这样启动时,会先载入KERNEL.SYS

新的KERNEL.SYS内置了io.bsf (512bytes),若使用者选取load io.sys时,会把
io.bsf写回系统启动位置,再跳回去,这样相当于载入io.sys的mbr(io.bsf)再次启动而己


说了这么多,其实只要注意:

1.新的KERNEL.SYS必项存在
2.io.sys必须存在 (这个档案没作任何改动)
3.镜像的bsf必须是启动KERNEL.SYS的bsf

WY1只是个范例,使用者可以自由组合img的东西并保留上面三项基本要素。
请测试一下并回报错误!


WY1.rar (178.39 KB, 下载次数: 8)

点评

这样越来越复杂了。我在上传个镜像给你研究吧,我还是不懂汇编。  详情 回复 发表于 2015-3-10 13:37
回复

使用道具 举报

275#
发表于 2015-3-10 11:24:01 | 只看该作者
2013abcdefg 发表于 2015-3-9 20:24
再发一个更小的KERNEL.SYS(36K)和更小的DOS(不知道有没有用)

你用winhex载入KERNEL.SYS,跳到最后,再往上一个page
会找到Kernel[空白][空白]Search Grldr[00]

Kernel.sys[空白][空白]是第一列文字,可任意修改,但不能超过
Search Grldr是第二列文字,可任意修改,但不能覆盖之后的那个00

点评

谢谢TajuraTong的帮助! rom版本的img已经算是比较完美了!  详情 回复 发表于 2015-3-10 11:35
回复

使用道具 举报

276#
 楼主| 发表于 2015-3-10 11:35:10 | 只看该作者
TajuraTong 发表于 2015-3-10 11:24
你用winhex载入KERNEL.SYS,跳到最后,再往上一个page
会找到Kernel[空白][空白]Search Grldr[00]

谢谢TajuraTong的帮助! rom版本的img已经算是比较完美了!
回复

使用道具 举报

277#
发表于 2015-3-10 13:37:40 | 只看该作者
本帖最后由 cchessbd 于 2015-3-10 13:40 编辑
TajuraTong 发表于 2015-3-10 11:18
你这个img的mbr是专为io.sys之类的dos系统而设计,mbr可以由UltraISO读取或写入
方法是UltraISO上方的B ...


这样越来越复杂了。我在上传个镜像给你研究吧,我还是不懂汇编。

这个镜像可以启动多种dos系统。但是我只需要两到三种就够了。

提示信息也不要那么长,只需要出来按键+约12个字符的说明就够了。

metakern.rar

12.65 KB, 下载次数: 9, 下载积分: 无忧币 -2

combootf.7z

1.41 MB, 下载次数: 29, 下载积分: 无忧币 -2

点评

不须汇编,你运行一下wy1.img就是  详情 回复 发表于 2015-3-10 14:32
回复

使用道具 举报

278#
 楼主| 发表于 2015-3-10 14:30:15 | 只看该作者
TajuraTong是否可以改造一下这个metakern,使它变成选单,再由它载入DOS核心

点评

嗯,我回头看看  详情 回复 发表于 2015-3-10 15:51
回复

使用道具 举报

279#
发表于 2015-3-10 14:32:44 | 只看该作者
cchessbd 发表于 2015-3-10 13:37
这样越来越复杂了。我在上传个镜像给你研究吧,我还是不懂汇编。

这个镜像可以启动多种dos系统。但 ...

不须汇编,你运行一下wy1.img就是

点评

谢谢了,这样也不错。  详情 回复 发表于 2015-3-10 15:36
回复

使用道具 举报

280#
发表于 2015-3-10 15:36:43 | 只看该作者

刚好

TajuraTong 发表于 2015-3-10 14:32
不须汇编,你运行一下wy1.img就是


谢谢了,这样也不错。刚好也可以达到我的功能。
回复

使用道具 举报

281#
发表于 2015-3-10 15:51:17 | 只看该作者
2013abcdefg 发表于 2015-3-10 14:30
TajuraTong是否可以改造一下这个metakern,使它变成选单,再由它载入DOS核心

嗯,我回头看看
回复

使用道具 举报

282#
发表于 2015-3-10 15:59:45 | 只看该作者
如果软盘镜像大小改变的话,kernel.sys还能使用吗?

点评

只要bsf没改,kernel.sys还在,怎么改也可以  详情 回复 发表于 2015-3-10 16:06
回复

使用道具 举报

283#
发表于 2015-3-10 16:06:26 | 只看该作者
本帖最后由 TajuraTong 于 2015-3-11 18:18 编辑
cchessbd 发表于 2015-3-10 15:59
如果软盘镜像大小改变的话,kernel.sys还能使用吗?


不一定能运行,你可以自行测试一下
回复

使用道具 举报

284#
 楼主| 发表于 2015-3-10 23:12:35 | 只看该作者
本帖最后由 2013abcdefg 于 2015-3-10 23:51 编辑

关注一下TajuraTong的进展.!
metakern.sys应该是和IMG的MBR关联的,可以改成作为freedos和search Grldr 及其它的引导菜单.最好是可选择的方式。这样KERNEL.SYS和Grldr.mbr可以不合并都行。
不知可行不?
回复

使用道具 举报

285#
发表于 2015-3-11 17:42:18 | 只看该作者
本帖最后由 TajuraTong 于 2015-3-11 18:07 编辑

其实metakern.sys只是干着我在277楼做的事,或者换个说法,
我重复了metakern.sys许多年前干过的工作,可惜之前我没见过metakern.sys,
不然我大概可以省点气力,英雄所见略同就是这个意思吧。

不管metakern.sys也好,我的选单程式也好,都是把不同OS的MBR写入启动区,
但因为启动IMG的方式五花八门,img,iso,ima等等,而且镜像大小又各异,所以同一套
方法不能适应各种环境,大家可以把metakern那个镜像用UltraISO扩大或缩小容量,
包管十之八九不能运行。


下面是独立了的,含grldr选单的镜像。

GR_Kernel.rar: 是grldr和KERNEL.SYS的组合,BOOTMENU.SYS(7k)内含了grldr.mbr,不可更换,
KERNEL.SYS可以随便更换不同版本的KERNEL.SYS,扩大或缩小容量,或把
BOOTMENU.SYS和KERNEL.SYS覆制到别的镜像,不保证能正常运行!
GR_Kernel.rar (56.45 KB, 下载次数: 7)

WY3.rar: 是grldr和io.,sys的组合,KERNEL.SYS(7k)内含了grldr.mbr,不可更换,
io.sy应该可以换不同版本的io.sys,扩大或缩小容量,
或把KERNEL.SYS和io.sys覆制到别的镜像,不保证能正常运行!

WY3.rar (133.82 KB, 下载次数: 5)



265楼的程式,内置了grldr和KERNEL.SYS(size当然挺大),并不涉及各种mbr环境,
反而可以移植到不同的镜像。

暂时没空研究万用的mbr载入方式,暂时就这样。
回复

使用道具 举报

286#
 楼主| 发表于 2015-3-11 19:37:48 | 只看该作者
本帖最后由 2013abcdefg 于 2015-3-11 21:03 编辑

测试GR_Kernel.rar 改了大小就失败了。可以做一个ROM64kb.img版本的吗?
还有改默认现在如何改了?
看来通用性还是原来的kernel.sys通用一点

ROMD64KB.zip

55.67 KB, 下载次数: 7, 下载积分: 无忧币 -2

回复

使用道具 举报

287#
发表于 2015-3-12 14:47:33 | 只看该作者
压缩包里一个是64k,一个是1.2m

这版的GrLdr 载入器,名称是:kernel.sys,内含Grldr.mbr和选单程式。
原来的kernel.sys改名为kern00.sys

两个img里的free dos(kern00.sys)可以是任何版本,只要改名为kern00.sys,再配合kernel.sys就是
两个img里的kernel.sys(grldr载入器)有些不同,因为img的size不一样,所以要做调整,二者并不能交换

要做出一个通杀的kernel.sys已有些眉目,找空再看看...

kk-rom.rar (109.2 KB, 下载次数: 4)

点评

kk-rom版本的kernel.sys(内含grldr.mbr和选单程式),有问题。提示找不到grldr 而265楼grldr.mbr和dernel.sys的整合版本无此问题。正常!  详情 回复 发表于 2015-3-12 16:03
回复

使用道具 举报

288#
 楼主| 发表于 2015-3-12 16:03:26 | 只看该作者
TajuraTong 发表于 2015-3-12 14:47
压缩包里一个是64k,一个是1.2m

这版的GrLdr 载入器,名称是:kernel.sys,内含Grldr.mbr和选单程式。

kk-rom版本的kernel.sys(内含grldr.mbr和选单程式),有问题。提示找不到grldr

而265楼grldr.mbr和dernel.sys的整合版本无此问题。正常!
回复

使用道具 举报

289#
发表于 2015-3-12 16:29:10 | 只看该作者
试试这个,不过仍没有详细测试 grldr + freedos

这个kernel.sys牺牲了size,程式大了1k
把kernel.sys放进任何的freedos镜像(size任意),原来的的kernel.sys改名为kern00.sys

就这样,什么也不用做,运行一下再回报吧!
freedos_grldr.rar (6.43 KB, 下载次数: 10)

点评

实机测试测试grldr可以正常找到! 测试放在1.44M和2.8M的freeDOS的IMG中都正常!  详情 回复 发表于 2015-3-12 17:30
回复

使用道具 举报

290#
 楼主| 发表于 2015-3-12 17:30:25 | 只看该作者
TajuraTong 发表于 2015-3-12 16:29
试试这个,不过仍没有详细测试 grldr + freedos

这个kernel.sys牺牲了size,程式大了1k

实机测试测试grldr可以正常找到!
测试放在1.44M和2.8M的freeDOS的IMG中都正常!
回复

使用道具 举报

291#
发表于 2015-3-12 17:38:49 | 只看该作者
嗯,若再没问题,我回头给它压一下,今天到止为止,下班了!

点评

能够压一下更好,谢谢! 已经在用!  详情 回复 发表于 2015-3-12 22:49
回复

使用道具 举报

292#
 楼主| 发表于 2015-3-12 22:49:08 | 只看该作者
TajuraTong 发表于 2015-3-12 17:38
嗯,若再没问题,我回头给它压一下,今天到止为止,下班了!

能够压一下更好,谢谢! 已经在用!
回复

使用道具 举报

293#
发表于 2015-3-13 15:44:46 | 只看该作者
这个是压缩了的freedos + GrLDR 载入器,6k多一点
可以配合任何的freedos镜像(size任意),原来的的kernel.sys改名为kern00.sys

请测试并回报...
GrLdr_freedos_6k.rar (6.65 KB, 下载次数: 9)

点评

谢谢,马上测试~  详情 回复 发表于 2015-3-13 16:17
回复

使用道具 举报

294#
 楼主| 发表于 2015-3-13 16:17:57 | 只看该作者
本帖最后由 2013abcdefg 于 2015-3-13 17:32 编辑
TajuraTong 发表于 2015-3-13 15:44
这个是压缩了的freedos + GrLDR 载入器,6k多一点
可以配合任何的freedos镜像(size任意),原来的的kernel. ...


谢谢,马上测试~

十分感谢!测试可用。谢谢
回复

使用道具 举报

295#
发表于 2015-3-13 18:03:38 | 只看该作者
这个是io.sys + GrLDR 载入器,也叫Kernel.sys,选单是io.sys 和 search GrLDR
和之前的版本分别是可以配合任何的freedos镜像(size任意),io.sys的版本也不区分
不要用载入io.sys的镜像,否则没法载入Kernel.sys。
使用方法是找一个freedos镜像,移走原来的file,搬进Kernel.sys,io.sys和其他相关档案,save即可。


METAKERN.SYS的那个年代可能还未有任意扩容的技术,没有考虑到img的大小,
一旦镜像size不同就会死得很惨。

这个Kernel.sys没有压缩,因为要用io.sys的镜像size通常都不会太小,压缩的意义不大,
况且压这种Kernel.sys不是普通的简单,挺烦的!

有用的拿去用吧,若有错误请回报!

FreeDos_IOsys.rar (6.5 KB, 下载次数: 10)

点评

谢谢了。这个还是很不错的!感谢您的辛苦劳动和无私的付出。 干脆还出个支持任意镜像大小综合版的吧,即io.sys+freedos+grldr的。  详情 回复 发表于 2015-3-14 07:45
回复

使用道具 举报

296#
发表于 2015-3-14 07:45:14 | 只看该作者
TajuraTong 发表于 2015-3-13 18:03
这个是io.sys + GrLDR 载入器,也叫Kernel.sys,选单是io.sys 和 search GrLDR
和之前的版本分别是可以配 ...

谢谢了。这个还是很不错的!感谢您的辛苦劳动和无私的付出。
干脆还出个支持任意镜像大小综合版的吧,即io.sys+freedos+grldr的。
回复

使用道具 举报

297#
发表于 2015-3-14 11:56:28 | 只看该作者
文件夹挤了一堆file,搞不好我也记不清哪个跟哪个了。

这个是 Freedos + io.sy + GrLDR 载入器。
未压缩的未到10k,压缩的7k多些,若都正常就随便哪个都可以。

主file是kernel.sys,可以配合任何的freedos镜像(size任意),
io.sys的版本不区分,原来的kernel.sys改名成kern00.sys,freedos版本也是任意的。

使用方法是找一个freedos镜像,移走原来的file,
搬进新的Kernel.sys、io.sys、kern00.sys和其他相关档案,save即可。


GrLdr_freedos_Iosys.rar (14.72 KB, 下载次数: 7)


这个是压缩了的io.sys + GrLDR 载入器,不到7k,使用方法看楼上。

GrLdr_iosys.rar (7.09 KB, 下载次数: 4)

有错误请回报!


GrLDR载入器配合其他系统的技术好像也差不多了!
改天我再把源码和方法释出。



点评

将三个压缩版本测试,加载freedos和io.sys都正常,grldr也出来了搜索不到的提示(虚拟机无硬盘)。 又将2.88m改为1.44M和720k的测试了下也正常。 特上传一个集合包吧,感谢TajuraTong! 希望能增加如何修改  详情 回复 发表于 2015-3-14 14:08
回复

使用道具 举报

298#
发表于 2015-3-14 14:08:42 | 只看该作者
TajuraTong 发表于 2015-3-14 11:56
文件夹挤了一堆file,搞不好我也记不清哪个跟哪个了。

这个是 Freedos + io.sy + GrLDR 载入器。


将三个压缩版本测试,加载freedos和io.sys都正常,grldr也出来了搜索不到的提示(虚拟机无硬盘)。

又将2.88m改为1.44M和720k的测试了下也正常。

特上传一个集合包吧,感谢TajuraTong!

希望能增加如何修改kernel.sys默认选项与等待时间的文字说明。

TajuraTong.zip

93.59 KB, 下载次数: 26, 下载积分: 无忧币 -2

回复

使用道具 举报

299#
发表于 2015-3-14 14:22:13 | 只看该作者
本帖最后由 TajuraTong 于 2015-3-16 18:54 编辑

其实265楼已有说明:


用winhex或任何编辑器,载入KERNEL.SYS,移到档案最末4个bytes,即
#17 00 0A

#号之后,第一个值是列号,17是十六进制的23,即第23列显示选单,此值可以是0-17,
(即10进制的0-23),大于17均视为17(即第23列)
要注意的是,若选单只有2项,范围是0-17(即10进制的0-23)
若选单有3项,范围是0-16(即10进制的0-22)

#号之后,第二个值00 表示KERNEL.SYS是预设启动,01或任何非00的值,则
Search Grldr是预设。若表单有三项的话,这个值可以是0,1,2

#号之后,第三个值表示倒数,0A是10秒(0A是十六进制,即10),这个值可以是01-0A,
大于0A则不倒数,直接跳到预设启动。若设为0则不倒数,只等使用者按上下,Enter

例子:
#16 01 05
表示22列显示选单,预设Search Grldr启动,倒数5秒,不选择则自动Search Grldr
回复

使用道具 举报

300#
 楼主| 发表于 2015-3-14 18:39:55 | 只看该作者
本帖最后由 2013abcdefg 于 2015-3-15 08:54 编辑

现在的方案应该是最好的了(可用DOS又可查硬盘上的grldr)! 是否反白效果的选单比较易看一点?谢谢
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-25 18:15

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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