Commit Graph
98 Commits
Author SHA1 Message Date
okuji dc8bf1d248 2004-05-14 Yoshinori K. Okuji <okuji@enbug.org>
From Sergey Matveychuk <sem@ciam.ru>:
	* stage2/size_test: Added a check for ufs2_stage1_5.

	* stage2/shared.h (STAGE2_ID_UFS2_STAGE1_5): New macro.
	[FSYS_UFS2] (STAGE2_ID): Set to STAGE2_ID_UFS2_STAGE1_5.

	* stage2/filesys.h (FSYS_UFS2_NUM): New macro.
	[FSYS_UFS2] (ufs2_mount): New prototype.
	[FSYS_UFS2] (ufs2_read): Likewise.
	[FSYS_UFS2] (ufs2_dir): Likewise.
	[FSYS_UFS2] (ufs2_embed): Likewise.
	(NUM_FSYS): Added FSYS_UFS2_NUM.

	* stage2/disk_io.c (fsys_table): Added an ufs2 entry.

	* stage2/builtins.c (setup_func): Added ufs2 into the
	STAGE1_5_MAP.

	* stage2/Makefile.am (libgrub_a_SOURCES): Added fsys_ufs2.c.
	(libgrub_a_CFLAGS): Added -DFSYS_UFS2=1.
	(pkgdata_DATA): Added ufs2_stage1_5.
	(noinst_PROGRAMS): Added ufs2_stage1_5.exec.
	(ufs2_stage1_5_exec_SOURCES): New variable.
	(ufs2_stage1_5_exec_CFLAGS): Likewise.
	(ufs2_stage1_5_exec_CCASFLAGS): Likewise.
	(ufs2_stage1_5_exec_LDFLAGS): Likewise.

	* grub/Makefile.am (AM_CPPFLAGS): Added -DFSYS_ISO9660=1,
	-DFSYS_JFS=1, -DFSYS_REISERFS=1, -DFSYS_UFS2=1, -DFSYS_VSTAFS=1,
	-DFSYS_XFS=1, and -DUSE_MD5_PASSWORDS=1.

	* configure.ac (--disable-ufs2): New option.

	* stage2/fsys_ufs2.c: New file.
	* stage2/ufs2.h: Likewise.
2004-05-14 20:16:55 +00:00
okuji 4f29a8af45 2004-03-27 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/char_io.c [!GRUB_UTIL] (memcpy): New function. It is
	defined as an alias of grub_memmove. This is copied from GRUB 2.

	* stage2/disk_io.c (print_completions): Simplified conditionals
	to make it easier to edit the file with Emacs.
	Added support for (cd).
	(set_device): Likewise.

	* stage2/common.c (init_bios_info): Check if BOOT_DRIVE is a
	CDROM drive. If it is true, set CDROM_DRIVE to BOOT_DRIVE.
	(cdrom_drive): New variable.

	From Leonid Lisovskiy <lly@pisem.net>:
	* stage2/start_eltorito.S: New file.

	* stage2/stage2.c (run_menu): Use GRUB_INVALID_DRIVE instead of
	0xFF.

	* stage2/shared.h (STAGE2_ID_ISO9660_STAGE1_5): New macro.
	[FSYS_ISO9660] (STAGE2_ID): Set to STAGE2_ID_ISO9660_STAGE1_5.
	(struct geometry): Added a new member ``sector_size''.
	(BIOSDISK_FLAG_CDROM): New macro.
	(cdrom_drive): Declared.

	* stage2/fsys_iso9660.c: New file.
	* stage2/iso9660.h: Likewise.

	* stage2/filesys.h (FSYS_ISO9660_NUM): New macro.
	[FSYS_ISO9660] (iso9660_mount): Declared.
	[FSYS_ISO9660] (iso9660_read): Likewise.
	[FSYS_ISO9660] (iso9660_dir): Likewise.
	(NUM_FSYS): Added FSYS_ISO9660_NUM.

	* stage2/disk_io.c (fsys_table) [FSYS_ISO9660]: Added iso9660.
	(current_drive): Use GRUB_INVALID_DRIVE.
	(log2): New function.
	(rawread): Use BUF_GEOM.SECTOR_SIZE instead of SECTOR_SIZE.
	Change the type of BUFADDR from int to char *.
	Use a virtual track to make sure that one track fits in the
	buffer.
	(sane_partition): Allow CURRENT_DRIVE to be CDROM_DRIVE, because
	a bios drive for a CD-ROM is often assigned to greater than
	0x88.
	(set_device): Use GRUB_INVALID_DRIVE instead of 0xFF.
	(setup_part): Likewise.

	* stage2/cmdline.c (init_cmdline): Use GRUB_INVALID_DRIVE.

	* stage2/builtins.c (install_func): Use GRUB_INVALID_DRIVE.
	(setup_func): Added iso9660_stage1_5.

	* stage2/bios.c (biosdisk): Don't fall back to the CHS mode
	if the drive is a CDROM.
	(get_cdinfo): New function.
	(get_diskinfo): Call get_cdinfo if the drive is greater than or
	equal to 0x88 or the drive supports LBA.
	Set the sector size to SECTOR_SIZE if it is not a CD-ROM.

	* stage2/asm.S (biosdisk_int13_extensions): Take a word
	argument AX instead of a byte argument AH.
	(get_diskinfo_int13_extensions): Removed.

	* stage2/Makefile.am (noinst_HEADERS): Added iso9660.h.
	(libgrub_a_SOURCES): Added fsys_iso9660.c.
	(libgrub_a_CFLAGS): Added -DFSYS_ISO9660=1.
	(pkgdata_DATA): Added iso9660_stage1_5 and stage2_eltorito.
	(noinst_PROGRAMS): Added iso9660_stage1_5.exec and
	start_eltorito.exec.
	(noinst_DATA): Added start_eltorito.
	(pre_stage2_exec_SOURCES): Added fsys_iso9660.c.
	(START_ELTORITO_LINK): New variable.
	(start_eltorito_exec_SOURCES): Likewise.
	(start_eltorito_exec_CCASFLAGS): Likewise.
	(start_eltorito_exec_LDFLAGS): Likewise.
	(start_eltorito_exec-start.$(OBJEXT)): New dependency.
	(stage2_eltorito): New target.
	(iso9660_stage1_5_exec_SOURCES): New variable.
	(iso9660_stage1_5_exec_CFLAGS): Likewise.
	(iso9660_stage1_5_exec_CCASFLAGS): Likewise.
	(iso9660_stage1_5_exec_LDFLAGS): Likewise.

	* stage1/stage1.h (GRUB_INVALID_DRIVE): New macro.

	* stage1/stage1.S (boot_drive): Use the macro GRUB_INVALID_DRIVE.
	(real_start): Likewise.

	* lib/device.c (get_drive_geometry): Set GEOM->SECTOR_SIZE to
	SECTOR_SIZE by default.

	* configure.ac (--disable-iso9660): New option.
2004-03-27 17:02:54 +00:00
okuji 2269fa15f8 2004-01-11 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/terminfo.c (ti_set_term): Use a pointer to struct
	terminfo instead to avoid GCC's bug, which inserts a reference
	to memcpy implicitly.
	(ti_get_term): Likewise.
	All callers are fixed.

	* stage2/terminfo.h (ti_set_term): Updated.
	(ti_get_term): Likewise.

	* stage2/shared.h (struct linux_kernel_header): New member,
	initrd_max_address. Defined in the boot protocol 2.03 or higher.

	* stage2/boot.c (load_initrd): If the boot protocol is greater
	than or equal to 2.03, use the field ``initrd_max_address''
	instead of LINUX_INITRD_MAX_ADDRESS.
2004-01-11 09:38:04 +00:00
okuji 36ccd040ac Revert all changes made by Rick van Rein. His patch is not approved at all, and the reason why he checked them in was a bug in Savannah. *sigh* 2004-01-11 09:35:15 +00:00
vanrein 6e7a81f3aa Added support for remote booting: commands "expires" and "fallback" 2004-01-05 18:03:11 +00:00
okuji 5eebfaf282 2003-03-19 Yoshinori K. Okuji <okuji@enbug.org>
From Adam Lackorzynski <adam@os.inf.tu-dresden.de>:
	* stage2/shared.h (KEY_NPAGE): Changed to 0x5100.
	(KEY_PPAGE): Changed to 0x4900.
2003-03-18 23:51:59 +00:00
okuji cd23d85031 2003-02-17 Yoshinori K. Okuji <okuji@enbug.org>
* lib/device.c (check_device): If DEVICE is empty, just return
	1.
	(get_scsi_disk_name) [__QNXNTO__]: Make NAME empty, because SCSI
	disks are detected as IDE disks on QNX RTP.

	From Taketo Kabe <kabe@sra-tohoku.co.jp>:
	* lib/device.c (get_ide_disk_name) [__QNXNTO__]: Set NAME to
	"/dev/hdX".
	(get_floppy_disk_name) [__QNXNTO__]: Set NAME to "/dev/fdX".
	* stage2/mb_info.h (struct AddrRangeDesc): Specified with the
	attribute packed.
	* stage2/shared.h (struct mmar_desc): Likewise.
2003-02-17 12:35:30 +00:00
okuji 47bd75581e 2003-01-16 Yoshinori K. Okuji <okuji@enbug.org>
From H.J. Lu <hjl@gnu.org>:
	* stage2/disk_io.c (part_start): Use unsigned long to support
	large disks.
	(part_length): Likewise.
	* stage2/shared.h (part_start): Likewise.
	(part_length): Likewise.
2003-01-15 21:44:19 +00:00
okuji c18257ea65 2002-12-03 Yoshinori K. Okuji <okuji@enbug.org>
Change the terminal structure a bit, to turn the cursor state
	explicitly. Suggested by Pavel Roskin.

	* stage2/term.h (struct term_entry): Remove the member
	`nocursor' and add `setcursor'.
	[!STAGE1_5] (console_setcursor): New prototype.
	[SUPPORT_HERCULES] (hercules_setcursor): Likewise.
	[!STAGE1_5] (console_nocursor): Removed.
	[SUPPORT_HERCULES] (hercules_nocursor): Likewise.

	* stage2/stage2.c (run_menu): Call setcursor instead of
	nocursor.
	Call setcursor with 1 before starting a boot entry.

	* stage2/shared.h (nocursor): Removed.
	(setcursor): New prototype.

	* stage2/hercules.c (herc_cursor_state): New variable.
	(herc_turn_cursor): Removed.
	(hercules_nocursor): Likewise.
	(hercules_setcursor): New function.

	* stage2/char_io.c (get_cmdline): Turn on the cursor at the
	beginning, and restore it before returning.
	(nocursor): Removed.
	(setcursor): New function.

	* stage2/asm.S (console_cursor_state): New variable.
	(console_cursor_shape): Likewise.
	(console_setcursor): New function.
	(console_nocursor): Removed.

	* grub/asmstub.c (console_setcursor): New function.
	(hercules_setcursor): Likewise.
	(console_nocursor): Removed.
	(hercules_nocursor): Likewise.
2002-12-03 00:02:53 +00:00
okuji bf88d91883 2002-11-30 Yoshinori K. Okuji <okuji@enbug.org>
* docs/Makefile.am (man_MANS): Added grub-terminfo.8.
	($(srcdir)/grub_terminfo.8): New target.
	* utils/grub-terminfo.in: New file.
	* util/Makefile.am (sbin_SCRIPTS): Added grub-terminfo.
	* configure.in (AC_OUTPUT): Added util/grub-terminfo.

	* docs/grub.texi (terminfo): New subsection.
	(Invoking grub-terminfo): New chapter.

	From Tilmann Bubeck <t.bubeck@reinform.de>:
	* stage2/Makefile.am (noinst_HEADERS): Added terminfo.h and
	tparm.h.
	(libgrub_a_SOURCES): Added terminfo.c and tparm.c.
	(pre_stage2_exe_SOURCES): Likewise.
	* stage2/terminfo.c: New file.
	* stage2/terminfo.h: Likewise.
	* stage2/tparm.c: Likewise.
	* stage2/tparm.h: Likewise.
	* stage2/stage2.c (get_line_from_config): Fix handling of
	backslashes.
	* stage2/char_io.c (grub_putstr): New function.
	(grub_printf): Use grub_putstr.
	(substring): Add const into both arguments.
	* stage2/builtins.c [SUPPORT_SERIAL]: Include terminfo.h.
	[SUPPORT_SERIAL] (terminfo_func): New function.
	[SUPPORT_SERIAL] (builtin_terminfo): New variable.
	 (builtin_table) [SUPPORT_SERIAL]: Added a pointer to
	BUILTIN_TERMINFO.
	* stage2/serial.c (serial_gotoxy): Use ti_cursor_address.
	(serial_cls): Use ti_clear_screen.
	(serial_highlight): use ti_enter_standout_mode and
	ti_exit_standout_mode.
2002-11-29 20:39:24 +00:00
okuji 51955d52d8 2002-07-12 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/boot.c (load_image): Rewrite the Linux booting support
	radically. Now it should work even on a machine having, say,
	only 128KB, theoretically. Of course, GRUB itself doesn't work
	on such a system, though.
	(load_initrd): Initialize LH based on CUR_ADDR, because the
	location becomes dynamic.
	* stage2/shared.h (LINUX_MAX_SETUP_SECTS): Set to 64.
	(LINUX_HEAP_END_OFFSET): Set to (0x9000 - 0x200).
	(LINUX_STAGING_AREA): Removed.
	(LINUX_SETUP): Likewise.
	(LINUX_KERNEL): Likewise.
	(LINUX_KERNEL_MAXLEN): Likewise.
	(LINUX_SETUP_SEG): Likewise.
	(LINUX_INIT_SEG): Likewise.
	(LINUX_SETUP_STACK): Set to 0x9000.
	(LINUX_BZIMAGE_ADDR): New macro.
	(LINUX_ZIMAGE_ADDR): Likewise.
	(LINUX_OLD_REAL_MODE_ADDR): Likewise.
	(CL_MY_LOCATION): Removed.
	(CL_MY_END_ADDR): Likewise.
	(CL_BASE_ADDR): Likewise.
	(CL_MAGIC): Renamed to ...
	(LINUX_CL_MAGIC): ... this.
	(LINUX_CL_OFFSET): New macro.
	(LINUX_CL_END_OFFSET): Likewise.
	(LINUX_SETUP_MOVE_SIZE): Likewise.
	(struct linux_kernel_header): Change the type of the member
	"cmd_line_ptr" to char *.
	(linux_data_tmp_addr): Declared.
	(linux_data_real_addr): Likewise.
	* stage2/asm.S [!STAGE1_5] (linux_data_tmp_addr): New variable.
	[!STAGE1_5] (linux_data_real_addr): Likewise.
	[!STAGE1_5] (big_linux_boot): Copy the real mode part from
	LINUX_DATA_TMP_ADDR to LINUX_DATA_REAL_ADDR.
	* grub/asmstub.c (linux_data_tmp_addr): New variable.
	(linux_data_real_addr): Likewise.
2002-07-12 09:55:55 +00:00
okuji 80d0f93b30 2002-07-06 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/shared.h (boot_part_offset): Removed.

	* stage2/disk_io.c (set_bootdev): Copy the partition information
	here. Now this function can call rawread, so it can fail.
	(boot_part_offset): Removed.

	* stage2/builtins.c (boot_func): Don't copy the partition
	information here.
	(real_root_func): Check ERRNUM after calling set_bootdev.
2002-07-05 22:15:57 +00:00
okuji 2369202e83 2002-06-12 Yoshinori K. Okuji <okuji@enbug.org>
The terminal handling code is rewritten radically.

	* stage2/console.c: New file.
	* stage2/term.h: Likewise.

	* stage2/Makefile.am (noinst_HEADERS): Added term.h.
	(libgrub_a_SOURCES): Added serial.c.
	(pre_stage2_exec_SOURCES): Added console.c.

	* stage2/asm.S (console_putchar): Rewritten from scratch.
	[!STAGE1_5] (translation_table): New variable.
	[!STAGE1_5] (translate_keycode): New function.
	[!STAGE1_5] (console_getkey): Call translate_keycode.
	[!STAGE1_5] (console_checkkey): Likewise.
	[!STAGE1_5] (nocursor): Renamed to ...
	[!STAGE1_5] (console_nocursor): ... this.
	[!STAGE1_5] (console_set_attrib): Removed.

	* stage2/builtins.c: Include term.h.
	(terminal): Removed.
	(normal_color): Likewise.
	(highlight_color): Likewise.
	(cat_func): Display a question mark when a non-printable
	character was read.
	(terminal_func): Rewritten almost from scratch.

	* stage2/char_io.c: Include term.h.
	[!STAGE1_5] (auto_fill): Removed.
	[!STAGE1_5] (term_table): New variable.
	[!STAGE1_5] (current_term): Likewise.
	[!STAGE1_5] (real_get_cmdline): New function. The code was
	stolen from the previous version of get_cmdline.
	[!STAGE1_5] (get_cmdline): Rewritten from scratch.
	[!STAGE1_5] (translate_keycode): Removed.
	[!STAGE1_5] (getkey): Rewritten from scratch.
	[!STAGE1_5] (checkkey): Likewise.
	(grub_putchar): Likewise.
	[!STAGE1_5] (gotoxy): Likewise.
	[!STAGE1_5] (getxy): Likewise.
	[!STAGE1_5] (cls): Likewise.
	[!STAGE1_5] (nocursor): New function.
	[SUPPORT_SERIAL] (serial_getxy): Removed.
	[SUPPORT_SERIAL] (serial_gotoxy): Likewise.
	[SUPPORT_SERIAL] (serial_cls): Likewise.
	[SUPPORT_SERIAL] (serial_getxy): Likewise.
	[!STAGE1_5] (set_attrib): Likewise.

	* stage2/cmdline.c (init_cmdline): Set COUNT_LINES to -1.

	* stage2/common.c [!STAGE1_5] (err_list): Removed
	ERR_NEED_SERIAL and added ERR_DEV_NEED_INIT.

	* stage2/hercules.c: Rewritten almost from scratch.
	* stage2/hercules.h (herc_putchar): Removed.
	(herc_cls): Likewise.
	(herc_getxy): Likewise.
	(herc_gotoxy): Likewise.
	(herc_set_attrib): Likewise.

	* stage2/serial.c: Rewritten almost from scratch.
	* stage2/serial.h: Likewise.

	* stage2/shared.h [GRUB_UTIL] (DISP_UL): Set to the same value
	as VGA's.
	[GRUB_UTIL] (DISP_UR): Likewise.
	[GRUB_UTIL] (DISP_LL): Likewise.
	[GRUB_UTIL] (DISP_LR): Likewise.
	[GRUB_UTIL] (DISP_HORIZ): Likewise.
	[GRUB_UTIL] (DISP_VERT): Likewise.
	[GRUB_UTIL] (DISP_LEFT): Likewise.
	[GRUB_UTIL] (DISP_RIGHT): Likewise.
	[GRUB_UTIL] (DISP_UP): Likewise.
	[GRUB_UTIL] (DISP_DOWN): Likewise.
	(grub_error_t): Removed ERR_NEED_SERIAL.
	Added ERR_DEV_NEED_INIT.
	(normal_color): Removed.
	(highlight_color): Likewise.
	(console_cls): Removed, because this is declared in term.h.
	(console_getxy): Likewise.
	(console_gotoxy): Likewise.
	(console_putchar): Likewise.
	(console_getkey): Likewise.
	(console_checkkey): Likewise.
	(console_set_attrib): Removed.
	(set_attrib): Likewise.
	[GRUB_UTIL] (nocursor): Declared.
	(auto_fill): Removed.
	(terminal): Likewise.
	(TERMINAL_CONSOLE): Likewise.
	(TERMINAL_SERIAL): Likewise.
	(TERMINAL_HERCULES): Likewise.
	(TERMINAL_DUMB): Likewise.
	(translate_keycode): Likewise.

	* stage2/stage2.c: Include term.h.
	(print_entry): Rewritten from scratch.
	(print_entries): Likewise.
	(print_border): Likewise.
	(set_line): Removed.
	(set_line_normal): Likewise.
	(set_line_highlight): Likewise.

	* grub/Makefile.am (AM_CFLAGS): Added -DSUPPORT_HERCULES=1.

	* grub/asmstub.c: Don't include hercules.h. Include term.h.
	(console_current_color): New variable.
	(console_translate_key): New function.
	(console_checkkey): Rewritten from scratch.
	(console_getkey): Likewise.
	(console_putchar): Likewise.
	(console_set_attrib): Removed.
	(console_highlight): New function.
	(console_setcolor): Likewise.
	(console_nocursor): Likewise.
	(serial_getkey): Removed.
	(serial_checkkey): Likewise.
	(serial_putchar): Likewise.
	(serial_exists): Likewise.
	(serial_get_port): Likewise.
	(serial_init): Likewise.
	(serial_hw_fetch): New function.
	(serial_hw_put): Likewise.
	(serial_hw_delay): Likewise.
	(serial_hw_get_port): Likewise.
	(serial_hw_init): Likewise.
	(set_serial_device): Renamed to ...
	(serial_set_device): ... this.
	(herc_putchar): Renamed to ...
	(hercules_putchar): ... this.
	(herc_cls): Renamed to ...
	(hercules_cls): ... this.
	(herc_getxy): Renamed to ...
	(hercules_getxy): ... this.
	(herc_gotoxy): Renamed to ...
	(hercules_gotoxy): ... this.
	(hercules_highlight): New function.
	(hercules_setcolor): Likewise.
	(hercules_nocursor): Likewise.
	(herc_set_attrib): Removed.

	* grub/main.c: Include term.h.
	(main): If USE_CURSES is false, set CURRENT_TERM->FLAGS to
	TERM_NO_EDIT | TERM_DUMB. TERMINAL is not used any longer.
2002-06-11 16:36:54 +00:00
okuji 30ec0405c4 2002-03-26 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/boot.c (linux_mem_size): New variable.
	(load_image): Check a mem= option and set LINUX_MEM_SIZE to the
	specified memory size, if any. Otherwise, to zero. When an
	overflow is detected, use LINUX_INITRD_MAX_ADDRESS instead.
	(load_initrd): If LINUX_MEM_SIZE is non-zero, use it instead of
	the actual memory size.
	* stage2/char_io.c (safe_parse_maxint): Use ERR_NUMBER_OVERFLOW
	instead of ERR_NUMBER_PARSING, when an overflow occurs.
	* stage2/common.c [!STAGE1_5] (err_list): Added
	ERR_NUMBER_OVERFLOW.
	* stage2/shared.h (ERR_NUMBER_OVERFLOW): New constant.
2002-03-25 21:43:55 +00:00
okuji b0c95fd0d4 2002-02-08 Yoshinori K. Okuji <okuji@enbug.org>
An internal pager is implemented.

	* stage2/builtins.c (pager_func): New function.
	(builtin_pager): New variable.
	(terminal_func): New option, "--lines=LINES" is added. If this
	option is specified, set MAX_LINES to the value. Otherwise, set
	MAX_LINES to 24.
	(vbeprobe_func): Remove the pager code specific to this
	function.
	(builtin_table): Added a pointer to BUILTIN_PAGER.
	* stage2/char_io.c (max_lines) [!STAGE1_5]: New variable.
	(count_lines) [!STAGE1_5]: Likewise.
	(use_pager) [!STAGE1_5]: Likewise.
	(grub_putchar) [!STAGE1_5]: if C is a newline and COUNT_LINES is
	not -1, count up the number of lines. If it exceeds the maximum
	number of lines minus 2, show a message and wait for input of
	return key. "minus 2" is to reserve space for the message
	printed by this internal pager.
	* stage2/cmdline.c (enter_cmdline): If USE_PAGER is true, set
	COUNT_LINES to zero, before running a command, and reset
	COUNT_LINES to -1 after that.
	* stage2/shared.h (max_lines) [!STAGE1_5]: Declared.
	(count_lines) [!STAGE1_5]: Likewise.
	(use_pager) [!STAGE1_5]: Likewise.
2002-02-08 01:14:01 +00:00
okuji 2a06ebce5c 2002-02-05 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/shared.h (BUILTIN_HELP_LIST): New macro. Used for
	commands whose help messages are listed when no argument is
	specified to the command "help".
	* stage2/builtins.c (builtin_blocklist): Added the attribute
	BUILTIN_HELP_LIST.
	(builtin_boot): Likewise.
	(builtin_bootp): Likewise.
	(builtin_cat): Likewise.
	(builtin_chainloader): Likewise.
	(builtin_color): Likewise.
	(builtin_configfile): Likewise.
	(builtin_device): Likewise.
	(builtin_dhcp): Likewise.
	(builtin_displayapm): Likewise.
	(builtin_displaymem): Likewise.
	(builtin_find): Likewise.
	(builtin_geometry): Likewise.
	(builtin_halt): Likewise.
	(builtin_help): Likewise.
	(builtin_hide): Likewise.
	(builtin_ifconfig): Likewise.
	(builtin_initrd): Likewise.
	(builtin_kernel): Likewise.
	(builtin_makeactive): Likewise.
	(builtin_map): Likewise.
	(builtin_md5crypt): Likewise.
	(builtin_module): Likewise.
	(builtin_modulenounzip): Likewise.
	(builtin_partnew): Likewise.
	(builtin_parttype): Likewise.
	(builtin_quit): Likewise.
	(builtin_rarp): Likewise.
	(builtin_reboot): Likewise.
	(builtin_root): Likewise.
	(builtin_rootnoverify): Likewise.
	(builtin_serial): Likewise.
	(builtin_setkey): Likewise.
	(builtin_setup): Likewise.
	(builtin_terminal): Likewise.
	(builtin_testvbe): Likewise.
	(builtin_tftpserver): Likewise.
	(builtin_unhide): Likewise.
	(builtin_uppermem): Likewise.
	(builtin_vbeprobe): Likewise.

	(help_func): When no argument is specified, if the last entry
	was at the left column, print an extra newline.
2002-02-05 04:56:42 +00:00
okuji bff4f998b4 2002-02-05 Yoshinori K. Okuji <okuji@enbug.org>
* stage2/shared.h (BUILTIN_HIDDEN): Renamed to ...
	(BUILTIN_NO_ECHO): ... this. The old name was too difficult to
	see _what_ was hidden.
2002-02-05 04:15:22 +00:00
okuji 4ea83d7811 2002-01-08 Yoshinori K. Okuji <okuji@gnu.org>
* grub/main.c (use_preset_menu): New variable.
	(OPT_PRESET_MENU): New macro.
	(longopts): Added an entry for "--preset-menu".
	(usage): Added a description for "--preset-menu". Also, change
	the first character of the description for "--device-map" to
	lower case for consistency.
	(main): Set USE_PRESET_MENU to 1 in the case of OPT_PRESET_MENU.
	* stage2/shared.h (use_preset_menu): Declared.
	* stage2/stage2.c [PRESET_MENU_STRING || SUPPORT_DISKLESS]
	(open_preset_menu) [GRUB_UTIL]: If USE_PRESET_MENU is false,
	return zero immediately.
2002-01-08 03:19:23 +00:00
okuji f51d8ce561 Change the error message from the command "embed" to "No spare sectors on
the disk".
2001-12-09 21:11:38 +00:00
okuji 3a150c2b37 Reorganize the file `AUTHOR', according to the current status of copyright
assignments received by the FSF.

Jason Thomas was added.
Erich Stefan Boleyn was moved into those who assigned their copyrights.
Gordon Matzigkeit was moved into the others, because he still wasn't listed
in fencepost.gnu.org:/gd/gnuorg/copyright.list.

The remaining problem is that we haven't had copyright assignments of
VaX#8, Heiko Schroeder and Gordon Matzigkeit. As for the first two, Erich
is now trying to contact them by proxy. So I'm just waiting.

As for Gordon.... oh, what are you doing, Gordon?! Hurry up, please!
2001-11-12 06:57:29 +00:00
okuji d619861976 JFS and XFS support is added. 2001-10-27 16:04:25 +00:00
okuji 61928d1323 Ensure that a serial port is set up before used. 2001-10-13 12:02:30 +00:00
okuji 2f97c78528 Add VSTa filesystem support. 2001-06-22 02:32:56 +00:00
proski 7c0ea24c90 * stage2/shared.h (ENTRY): Remove unnecessary `##'. 2001-05-15 03:54:39 +00:00
okuji 1372bfd60a change the check for a Windows partition in chainloader_func, to fix the problem that GRUB cannot be compiled, if FAT support is disabled. 2001-02-27 13:17:40 +00:00
okuji e85272f436 add hercules support. 2001-02-27 12:59:00 +00:00
okuji cf58c5c2a9 lower the maximum address of initrd. 2001-02-03 04:56:13 +00:00
okuji 00865a8027 fix the problem that savedefault doesn't work with Stage 1.5. 2001-02-02 13:31:03 +00:00
okuji ca6efbe093 add a workaround to boot Windows from a logical partition. 2001-01-10 20:48:50 +00:00
jochen 207a82b176 Added EZ-BIOS support.
Cleaned up the write code.
Added support for automatically embedding to file systems in setup_func.
2000-12-17 19:25:50 +00:00
okuji ad50fc1180 VBE support is partially added. 2000-11-04 16:15:26 +00:00
okuji 1f2d29244a add apm support. 2000-10-19 21:10:42 +00:00
jochen 2315cb466c Added MD5 passwords and extended the password command. 2000-10-17 13:37:27 +00:00
okuji 11236082ea change the format of drive info in the Multiboot Specification, implement some of the new features. 2000-10-15 21:18:14 +00:00
okuji b3ccacd20f new partition table scanning engine. 2000-09-29 00:41:42 +00:00
okuji 6ee3c49cc8 add auto fill mode into grub_putchar, to fix the ">80 characters in one line" problem. 2000-09-06 12:31:24 +00:00
okuji 1b38e4d0cf add support for saving a default entry number in your disk. 2000-09-06 03:02:39 +00:00
okuji 36854134df improve the dumb terminal support and fix some bugs related to the support. 2000-09-05 08:44:31 +00:00
okuji 454e26626c add a timeout to --hold for the grub shell, fix a compilation error with gcc-2.7.2.3, and the command-line interface is switched to single-line editing mode. 2000-08-30 07:00:16 +00:00
okuji 16cbb2b422 handle special key codes in a serial terminal, and remove unnecessary push/pop operations in asm.S. 2000-08-25 16:58:44 +00:00
okuji d91146efac add --enable-serial-speed-simulation into configure, fix a bug in setjmp/longjmp, add --speed into the command serial, restart the command-line interface when a serial terminal is enabled. 2000-08-21 06:30:14 +00:00
okuji 2455b65f2e add console emulation into serial terminal support using vt100-compatible escape sequences, add --enable-serial into configure, and fix some bugs in the support. 2000-08-20 12:14:14 +00:00
okuji fbd0ada4bb add a serial device driver. serial console support is not implemented yet. 2000-08-11 20:38:56 +00:00
okuji 952982deb9 fix shadowed variable bugs and undefined cpp macro bugs. 2000-07-28 16:51:16 +00:00
okuji 529a2dc5e0 fix some bugs in the linux boot code. 2000-07-25 12:08:14 +00:00
okuji c786d8603e comply with the linux/i386 boot protocol version 2.02. 2000-07-23 21:21:37 +00:00
okuji 1b9e348ef6 rename console input/output functions to more distinguishable names. 2000-07-12 12:17:47 +00:00
okuji 05581f3233 segreate os-specific helper functions from asmstub.c. 2000-07-11 16:13:46 +00:00
okuji f0ae3c922f add a new option --no-mem-option into the command kernel. 2000-06-23 08:53:27 +00:00
okuji 21236a8556 add a new command hiddenmenu. 2000-06-21 07:35:37 +00:00