⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme

📁 从linux移植到dos下的grub
💻
字号:
Project Name:	GRUB for DOS
Definition:	A GRUB build for DOS with extensions for disk drive emulation.
Current Version:	0.1.4
			(NOTE: 0.1.x is a development series, i.e., unstable,
			So be careful to use it)
Author:		Tinybit(tinybit@163.net)

File Format:	DOS EXE executable

Purpose:	Launch GRUB boot loader from within DOS

Circumstanced Use:	in CONFIG.SYS or AUTOEXEC.BAT

Ability:	Boot any installed operating system on your PC

Limitations:	GRUB.EXE only runs in real mode DOS. It cannot run from a DOS
			BOX inside Windows.

		Currently runs on MS-DOS 3.30, 4.0, 5.0, 6.0, 6.20. 6.21, 6.22,
			7.0(Win95), 7.10(Win98), 8.0(WinME/NT/2000/XP), and
			FreeDOS(build 2029 and hopefully more future builds).

		Currently could not return to DOS after GRUB.EXE was started.

Copyright(C):	Tinybit(tinybit@163.net)

License:	GNU GPL(see file COPYING)

		source available as a diff patch to the grub-0.93 release.
		Compile the patched grub-0.93 on Linux, and the grub.exe
		file will be created.

WARRANTY:	NO WARRANTY(see file COPYING)
		
TO DO:		Build for running on other DOS versions.

Usage:
		GRUB --config-file=FILE
		
		The FILE, for example, can be (hd0,0)/boot/grub/menu.lst
		
		In CONFIG.SYS, you cannot use the "--config-file=" option,
		because DOS turn the command line to upper case before it
		transfers arguments to CONFIG.SYS commands.
		
		GRUB
		
		In CONFIG.SYS, you have to use this format, i.e., no options.
		
		In CONFIG.SYS, the line looks like:
		
			install=grub.exe
			install=c:\some\where\grub.exe
		
		if no options present, it simply uses
		
			(hd0,0)/boot/grub/menu.lst
		
		as the configure file, if it exists.
		
		The partition (hd0,0) can be a Windows partition or a Linux
		partition, or any other partition type supported by GRUB.

Important Note: Since FreeDOS build 2030/2031 saved a wrong BIOS interrupt
		vector table, they cannot be supported by GRUB.EXE :-(

		Hope this be fixed soon by FreeDOS maintainers. BUG details:
		

		FreeDOS build 2030/2031 destroyed two hardware interrupt
		vectors. FreeDOS build 2030/2031 tried to save the original
		BIOS int 0x08 - int 0x0F vectors at 0000:08BE, but the FreeDOS
		startup code overwrote the region. On my machine, this region
		should look like as follows:


		0000:08B0  .. .. .. .. .. .. .. ..-.. .. .. .. .. .. A5 FE

		0000:08C0  00 F0 87 E9 00 F0 6F EF-00 F0 6F EF 00 F0 6F EF

		0000:08D0  00 F0 6F EF 00 F0 57 EF-00 F0 6F EF 00 F0 .. ..

		0000:08E0  .. .. .. .. .. .. .. ..-.. .. .. .. .. .. .. ..

		0000:08F0  .. .. .. .. .. .. .. ..-.. .. .. .. .. ..


		But on FreeDOS build 2030/2031 it is something like this:


		0000:08B0  .. .. .. .. .. .. .. ..-.. .. .. .. .. .. A5 FE

		0000:08C0  00 F0 87 E9 00 F0 6F EF-00 F0 6F EF(C6 5B 00 9A)

		0000:08D0  00 F0 6F EF 00 F0 57 EF-00 F0 6F EF 00 F0 .. ..

		0000:08E0  .. .. .. .. .. .. .. ..-.. .. .. .. .. .. .. ..

		0000:08F0  .. .. .. .. .. .. .. ..-.. .. .. .. .. ..


		Note that the above 4 bytes in parenthesis are wrong. These 4
		bytes destroyed 2 interrupt entry points:


		6F EF C6 5B  should be  6F EF 00 F0, corresponds to int 0x0B;

		00 9A 00 F0  should be  6F EF 00 F0, corresponds to int 0x0C.


		The addresses 5BC6:EF6F and F000:9A00 are invalid interrupt
		service entries.

		(These are on my machine; should differ slightly on yours)

--------------------------------------------------------

Update:		It seems that Bart has just fixed the bug. Thanks!
		
		So 0.1.3 released. Hopefully 0.1.3 can be launched by any
		
		future FreeDOS builds.

FTP site:	(temporarily) ftp://ftp.cosoft.org.cn/incoming/

Web site:	(English) http://newdos.yginfo.net/grubdos.htm
		built by Wengier. Thanks!

Update:		Silly code, 0.1.3 cannot run off FreeDOS. So 0.1.4 released.

		Hopefully 0.1.4 works on any future FreeDOS versions.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -