mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-21 06:49:35 +00:00
1543 lines
55 KiB
Plaintext
1543 lines
55 KiB
Plaintext
1999-09-01 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c (env_for_exit): New variable.
|
|
(grub_stage2): Do a setjmp in doit, and when it returns
|
|
non-zero, set STATUS to 1 if ERRNUM is non-zero.
|
|
(stop): Call longjmp instead of exit.
|
|
|
|
1999-08-31 Pavel Roskin <pavel_roskin@geocities.com>
|
|
|
|
* stage2/boot.c [GRUB_UTIL] (bsd_boot_entry): New function.
|
|
(bsd_boot) [GRUB_UTIL]: Set ENTRY_ADDR to BSD_BOOT_ENTRY to fake
|
|
the *BSD boot.
|
|
|
|
1999-08-31 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/fsys_fat.c (fat_create_blocklist): Cast FAT_BUF to
|
|
unsigned short * instead of unsigned long *. Suggested by Pavel
|
|
Roskin.
|
|
|
|
1999-08-30 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Edward Killips <ekillips@triton.net>:
|
|
* stage2/cmdline.c (commands): Added hide and unhide.
|
|
(enter_cmdline): Likewise.
|
|
* stage2/disk_io.c (unhide_partition): New function.
|
|
(hide_partition): Likewise.
|
|
* stage2/pc_slice.h (PC_SLICE_TYPE_HIDDEN_FLAG): New macro.
|
|
|
|
1999-08-29 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Pavel Roskin <pavel_roskin@geocities.com>:
|
|
* stage2/fsys_minix.c (namelen): New variable.
|
|
(MINIX_NAME_LEN): Deleted.
|
|
(minix_mount): Set NAMELEN to 14 if SUPRTBLOCK->S_MAGIC is
|
|
MINIX_SUPER_MAGIC, and set NAMELEN to 30 if it is
|
|
MINIX_SUPER_MAGIC2.
|
|
(minix_dir): Use NAMELEN instead of MINIX_NAME_LEN.
|
|
|
|
1999-08-29 Pavel Roskin <pavel_roslin@geocities.com>
|
|
|
|
* grub/Makefile.am, stage1/Makefile.am, stage2/Makefile.am:
|
|
Avoid using variables inclosed in '@' because they cannot be
|
|
overridden at the make time.
|
|
|
|
1999-08-29 Pavel Roskin <pavel_roskin@geocities.com>
|
|
|
|
* stage2/fsys_fat.c (fat_create_blocklist): Return 1 for the
|
|
root directory on FAT12 and FAT16.
|
|
|
|
1999-08-27 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/boot.c (load_image): Accept two arguments, KERNEL and
|
|
ARG. And use them instead of CUR_CMDLINE.
|
|
(load_module): Accept two arguments, MODULE and ARG. And use
|
|
them instead of CUR_CMDLINE.
|
|
(load_initrd): Accept one argument, INITRD. And use it instead
|
|
of CUR_CMDLINE.
|
|
(bsd_boot): Accept one additional argument, ARG. And use it
|
|
instead of CUR_CMDLINE.
|
|
* stage2/cmdline.c (enter_cmdline): Use MB_CMDLINE instead of
|
|
HEAP for the Multiboot command-line buffer.
|
|
* stage2/shared.h (MB_CMDLINE_BUF): New macro.
|
|
(MB_CMDLINE_BUFLEN): Likewise.
|
|
|
|
1999-08-26 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* docs/Makefile.am [GRUB_MAINT] (grub.8): The argument for the
|
|
option --name is changed to "the grub shell".
|
|
* docs/grub.8: Regenerated.
|
|
* docs/grub.texi: Do not use the name "the Stage 2 emulator" any
|
|
more. Use the name "the grub shell" instead.
|
|
|
|
1999-08-26 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Klaus Reichl <klaus.reichl@alcatel.at>:
|
|
* stage2/fsys_minix.c: New file.
|
|
* stage2/size_test: Added a check for the size of minix_stage1_5.
|
|
* stage2/Makefile.am (libgrub_a_SOURCES): Added fsys_minix.c.
|
|
(libgrub_a_CFLAGS): Added -DFSYS_MINIX=1.
|
|
(nodist_pkgdata_DATA): Added minix_stage1_5.
|
|
(noinst_PROGRAMS): Added minix_stage1_5.exec.
|
|
(stage2_exec_SOURCES): Added fsys_minix.c.
|
|
(minix_stage1_5_exec_SOURCES): New variable.
|
|
(minix_stage1_5_exec_CFLAGS): Likewise.
|
|
(minix_stage1_5_exec_LDFLAGS): Likewise.
|
|
* stage2/pc_slice.h (PC_SLICE_TYPE_MINIX): New macro.
|
|
* stage2/disk_io.c (fsys_table) [FSYS_MINIX]: Added minix entry.
|
|
* stage2/filesys.h [FSYS_MINIX] (FSYS_MINIX_NUM): Set to 1.
|
|
[!FSYS_MINIX] (FSYS_MINIX_NUM): Set to 0.
|
|
[!NUM_FSYS] (NUM_FSYS): Added FSYS_MINIX_NUM.
|
|
* stage2/shared.h (STAGE2_ID_MINIX_STAGE1_5): New macro.
|
|
[STAGE1_5 && FSYS_MINIX] (STAGE2_ID): Set to
|
|
STAGE2_ID_MINIX_STAGE1_5.
|
|
* grub/Makefile.am (AM_CFLAGS): Added -DFSYS_MINIX=1.
|
|
* configure.in (--disable-minix): New option.
|
|
|
|
1999-08-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Jochen Hoenicke <jochen@gnu.org>:
|
|
* stage2/fat.h (FAT_BPB_FAT_SECTORS_16): New macro.
|
|
(FAT_BPB_FAT_SECTORS_32): Likewise.
|
|
(FAT_BPB_IS_FAT32): Likewise.
|
|
(FAT_BPB_ROOT_DIR_CLUSTER): Likewise.
|
|
(FAT_BPB_FAT_SECTORS): If FAT_BPB_FAT_SECTORS_16 returns
|
|
a non-zero value, return it. Otherwise return
|
|
FAT_BPB_FAT_SECTORS_32.
|
|
(FAT_DIRENTRY_FIRST_CLUSTER): Corrected.
|
|
* stage2/fsys_fat.c (root_dir): New variable.
|
|
(fat_mount): Use the macro IS_PC_SLICE_TYPE_FAT instead of
|
|
checking for each fs types directly.
|
|
Omit the >64 sectors check.
|
|
If the current fs type is FAT32, then set FAT_SIZE to 8 and
|
|
get the root from BPB.
|
|
(fat_create_blocklist): Use the macro SECTOR_SIZE instead of a
|
|
magic number.
|
|
(fat_dir): Set MAP to ROOT_DIR instead of -1.
|
|
* stage2/pc_slice.h (PC_SLICE_TYPE_FAT32): New macro.
|
|
(PC_SLICE_TYPE_FAT32_LBA): Likewise.
|
|
(PC_SLICE_TYPE_FAT16_LBA): Likewise.
|
|
(IS_PC_SLICE_TYPE_FAT): Likewise.
|
|
|
|
1999-08-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/fsys_ffs.c (ffs_mount): Do not shift the fs type
|
|
FS_BSDFFS. Reported by Takehiro Suzuki
|
|
<takehiro@coral.ocn.ne.jp>.
|
|
* stage2/fsys_fat.c (fat_mount): Do not shift the fs type
|
|
FS_MSDOS.
|
|
|
|
1999-08-13 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Pavel Roskin's patch that adds new options to disable arbitrary
|
|
filesystems is heavily modified and applied.
|
|
|
|
* configure.in (--disable-ext2fs): New option.
|
|
(--disable-fat): Likewise.
|
|
(--disable-ffs): Likewise.
|
|
(FSYS_CFLAGS): New variable. Set to filesystems the user choose.
|
|
* grub/Makefile.am (AM_CFLAGS): Added -DFSYS_EXT2FS=1,
|
|
-DFSYS_FAT=1 and -DFSYS_FFS=1.
|
|
* stage2/Makefile.am (libgrub_a_CFLAGS): Likewise.
|
|
(stage2_exec_CFLAGS): Added @FSYS_CFLAGS@.
|
|
* stage2/filesys.h
|
|
[!(FSYS_FFS || FSYS_FAT || FSYS_EXT2FS)] (FSYS_FFS): Deleted.
|
|
[!(FSYS_FFS || FSYS_FAT || FSYS_EXT2FS)] (FSYS_FAT): Likewise.
|
|
[!(FSYS_FFS || FSYS_FAT || FSYS_EXT2FS)] (FSYS_EXT2FS): Likewise.
|
|
* stage2/fsys_ext2fs.c [!FSYS_EXT2FS]: Do not define anything.
|
|
* stage2/fsys_fat.c [!FSYS_FAT]: Likewise.
|
|
* stage2/fsys_ffs.c [!FSYS_FFS]: Likewise.
|
|
|
|
1999-08-12 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage1/stage1_lba.S: Use STAGE1_DRP_ADDR for the address of
|
|
drive parameters instead of DRIVE_PARAMETER.
|
|
(drive_parameter): Deleted.
|
|
* stage1/stage1.h (STAGE1_DRP_ADDR): New macro.
|
|
(STAGE1_DRP_SIZE): Likewise.
|
|
|
|
1999-08-11 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/bios.c (get_diskinfo): In LBA mode, set TOTAL_SECTORS
|
|
to the low 32bits of DRP.TOTAL_SECTORS instead of the multiple
|
|
of CHS.
|
|
* stage2/cmdline.c (enter_cmdline) [GRUB_UTIL]: In the command
|
|
"geometry", print the device file name instead of CHS/LBA
|
|
information.
|
|
* stage2/shared.h (device_map): Declared.
|
|
* grub/asmstub.c (device_map): Defined as a global variable
|
|
instead of a local variable.
|
|
|
|
1999-08-10 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Support the NetBSD and OpenBSD partition slices.
|
|
|
|
* stage2/pc_slice.h (PC_SLICE_TYPE_BSD): Deleted.
|
|
(PC_SLICE_TYPE_FREEBSD): New macro.
|
|
(PC_SLICE_TYPE_OPENBSD): Likewise.
|
|
(PC_SLICE_TYPE_NETBSD): Likewise.
|
|
(IS_PC_SLICE_TYPE_BSD_WITH_FS): Likewise.
|
|
(IS_PC_SLICE_TYPE_BSD): Likewise.
|
|
* stage2/fsys_ffs.c (ffs_mount): Use the macro
|
|
IS_PC_SLICE_TYPE_BSD_WITH_FS instead of checking if
|
|
CURRECT_SLICE is equal to the BSD partition type directly.
|
|
* stage2/fsys_ext2fs.c (ext2fs_mount): Likewise.
|
|
* stage2/fsys_fat.c (fat_mount): Likewise.
|
|
* stage2/disk_io.c (check_BSD_parts): Set the low bits of
|
|
CURRENT_SLICE to PC_SLICE_TYPE_FREEBSD instead of
|
|
PC_SLICE_TYPE_BSD.
|
|
(real_open_partition): Use the macro IS_PC_SLICE_TYPE_BSD instead
|
|
of checking if CURRENT_SLICE is equal to the BSD partition type
|
|
directly.
|
|
|
|
1999-08-09 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/cmdline.c (commands): Added geometry.
|
|
(enter_cmdline): If CUR_HEAP has the string "geometry", print
|
|
out the information about a drive that the argument represents.
|
|
|
|
1999-08-09 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/stage2.c (run_menu): Terminate the string PASSWORD
|
|
before checking if ENTERED is identical to PASSWORD. Reported
|
|
by Mark Lundeberg <aa026@pgfn.bc.ca>.
|
|
|
|
1999-08-08 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/stage2.c (set_line_normal): New function.
|
|
(set_line_highlight): Likewise.
|
|
(run_menu): Do not call the function set_line directly any
|
|
longer, call set_line_normal and set_line_highlight instead.
|
|
|
|
From Pavel Roskin:
|
|
* stage2/stage2.c (run_menu) [GRUB_UTIL]: Quit when pushing the
|
|
key `q'.
|
|
|
|
1999-08-05 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* acinclude.m4 (grub_ASM_PREFIX_REQUIREMENT): New function.
|
|
* configure.in: Call grub_ASM_PREFIX_REQUIREMENT, and define
|
|
ADDR32 and DATA32 based on the result.
|
|
* stage2/asm.S: Replace addr32 and data32 prefixes with ADDR32
|
|
and DATA32 respectively.
|
|
|
|
1999-08-05 Pavel Roskin <pavel_roskin@geocities.com>
|
|
|
|
* stage2/boot.c (load_image): Use RAW_ADDR macro when loading
|
|
an a.out kernel.
|
|
|
|
1999-08-04 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/asm.S: Make each of the addr32 and data32 prefixes
|
|
appear in the same line as it modifies, as the gas manual in
|
|
binutils-2.9.5.0.4 says "it must be in the same line".
|
|
|
|
1999-08-04 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* boot.c (load_image): Fix a strcmp test. Reported by Pavel
|
|
Roskin <pavel_roskin@geocities.com>.
|
|
|
|
1999-08-03 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From "Dan J. Walters" <djw@cs.utexas.edu>:
|
|
* stage2/i386-elf.h (EI_BRAND): New macro.
|
|
* stage2/boot.c (load_image): If the kernel is ELF, check if it
|
|
is a FreeBSD kernel as well as a Multiboot kernel, and if it is
|
|
a FreeBSD kernel, then mask ENTRY_ADDR since FreeBSD requires
|
|
that. Likewise, mask MEMADDR.
|
|
(bsd_boot): Set the bi_symtab and the bi_esymtab members of BI
|
|
only if MBI.FLAGS has the flag MB_INFO_AOUT_SYMS. Otherwise,
|
|
clear them.
|
|
|
|
1999-07-30 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Pavel Roskin <pavel_roskin@geocities.com>:
|
|
* grub/getopt.c: New file. Copied from texinfo-3.12n.
|
|
* grub/getopt1.c: Likewise.
|
|
* grub/getopt.h: Likewise.
|
|
* grub/Makefile.am (grub_SOURCES): Added getopt.c, getopt1.c and
|
|
getopt.h.
|
|
* configure.in: Check for string.h and strings.h.
|
|
* grub/asmstub.c (grub_stage2): Fix a misordering in the output
|
|
format of the inline assembly.
|
|
|
|
1999-07-30 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Pavel Roskin <pavel_roskin@geocities.com>:
|
|
* stage2/asm.S (get_diskinfo_standard): If the number of sectors
|
|
returned is zero, then return an error code, even if non-carrier.
|
|
|
|
1999-07-15 Gordon Matzigkeit <gord@zen.fig.org>
|
|
|
|
* docs/Makefile.am (grub.info): Use an ugly hack to downgrade
|
|
grub.texi so that it works with Debian's version of texinfo.
|
|
|
|
1999-07-26 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/bios.c (get_diskinfo): When DRIVE is a floppy drive,
|
|
try standard probe routine at first. Reported by Peter Astrand
|
|
<altic@lysator.liu.se>.
|
|
|
|
* grub/main.c (main): Call printf instead of grub_printf.
|
|
Reported by Klaus Reichl <a8709182@unet.univie.ac.at>.
|
|
|
|
1999-07-15 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/cmdline.c (skip_to): Don't increase CMDLINE if the
|
|
character to which CMDLINE points is NUL.
|
|
|
|
* stage2/Makefile.am (EXTRA_DIST): Removed smp-imps.c.
|
|
(stage2_exec_SOURCES): Added smp-imps.c.
|
|
* stage2/cmdline.c [!GRUB_UTIL] (IMPS_DEBUG) (KERNEL_PRINT)
|
|
(CMOS_WRITE_BYTE) (CMOS_READ_BYTE) (PHYS_TO_VIRTUAL)
|
|
(VIRTUAL_TO_PHYS) (inb) (outb) (cmos_write_byte)
|
|
(cmos_read_byte): These are now defined in ...
|
|
* stage2/smp-imps.c (IMPS_DEBUG) (KERNEL_PRINT)
|
|
(CMOS_WRITE_BYTE) (CMOS_READ_BYTE) (PHYS_TO_VIRTUAL)
|
|
(VIRTUAL_TO_PHYS) (inb) (outb) (cmos_write_byte)
|
|
(cmos_read_byte): ... here.
|
|
* stage2/cmdline.c [!GRUB_UTIL]: Include apic.h and smp-imps.h.
|
|
|
|
1999-07-14 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
The function ungetch is simulated so that the user can use a
|
|
buggy curses.
|
|
|
|
* grub/asmstub.c [HAVE_LIBCURSES] (save_char): New variable.
|
|
(getkey) [HAVE_LIBCURSES]: If SAVE_CHAR is not ERR, return
|
|
SAVE_CHAR and clear it.
|
|
(checkkey) [HAVE_LIBCURSES]: If SAVE_CHAR is not ERR, return
|
|
SAVE_CHAR. If C is not ERR, set SAVE_CHAR to C.
|
|
|
|
1999-07-14 Pavel Roskin <pavel_roskin@geocities.com>
|
|
|
|
* stage2/char_io.c (get_cmdline) [GRUB_UTIL]: Recognize
|
|
backspace when ncurses fails to do this.
|
|
|
|
* grub/asmstub.c (grub_stage2) [HAVE_LIBCURSES]: Call wtimeout
|
|
instead of nodelay.
|
|
(getkey) [HAVE_LIBCURSES]: Likewise.
|
|
|
|
1999-07-14 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage1/stage1_lba.S (probe_values): New variable. This is not
|
|
used actually, but prevents `install' command from failing
|
|
bogusly.
|
|
|
|
1999-07-14 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
All constants in stage1s are moved to stage1.h and renamed
|
|
appropriately, and include stage1.h instead.
|
|
|
|
* grub/Makefile.am (AM_CFLAGS): Added the include path to stage1.
|
|
* stage2/Makefile.am (INCLUDES): New variable.
|
|
* stage1/Makefile.am (stage1_exec_SOURCES): Added stage1.h
|
|
(stage1_lba_exec_SOURCES): Likewise.
|
|
* stage1/stage1.h: New file.
|
|
* stage1/stage1.S (SIGNATURE): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_SIGNATURE): ... this.
|
|
* stage1/stage1.S (BPBEND): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_BPBEND): ... this.
|
|
* stage1/stage1.S (PARTSTART): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_PARTSTART): ... this.
|
|
* stage1/stage1.S (MINPARMSIZ): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_MINPARMSIZE): ... this.
|
|
* stage1/stage1.S (LISTSIZ): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_LISTSIZE): ... this.
|
|
* stage1/stage1.S (REALSTACK): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_STACKSEG): ... this.
|
|
* stage1/stage1.S (BUFFERSEG): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_BUFFERSEG): ... this.
|
|
* stage1/stage1.S (BIOS_HD_FLAG): Renamed to ...
|
|
* stage1/stage1.h (STAGE1_BIOS_HD_FLAG): ... this.
|
|
* stage1/stage1_lba.S (SIGNATURE): Removed.
|
|
* stage1/stage1_lba.S (BPBEND): Likewise.
|
|
* stage1/stage1_lba.S (PARTSTART): Likewise.
|
|
* stage1/stage1_lba.S (MINPARMSIZ): Likewise.
|
|
* stage1/stage1_lba.S (LISTSIZ): Likewise.
|
|
* stage1/stage1_lba.S (REALSTACK): Likewise.
|
|
* stage1/stage1_lba.S (BUFFERSEG): Likewise.
|
|
* stage1/stage1_lba.S (BIOS_HD_FLAG): Likewise.
|
|
|
|
* stage1/stage1.S (stage1_id): New variable.
|
|
* stage1/stage1_lba.S (stage1_id): Likewise.
|
|
* stage1/stage1.h (COMPAT_VERSION_MINOR): Set to 2.
|
|
(STAGE1_ID_OFFSET): New macro.
|
|
(STAGE1_ID_CHS): Likewise.
|
|
(STAGE1_ID_LBA): Likewise.
|
|
* stage2/cmdline.c (enter_cmdline) [!GRUB_UTIL]: When running
|
|
the command `install' and STAGE1_FILE is stage1_lba, check if
|
|
LBA is supported.
|
|
(enter_cmdline) [GRUB_UTIL]: In the same case above, check only
|
|
if CURRENT_DRIVE is a hard disk and, if so, print a warning
|
|
message, because /sbin/grub cannot detect if LBA is supported or
|
|
not.
|
|
|
|
* stage1/stage1_lba.S: Fix a bug that incorrectly assigns the
|
|
segment of buffer address.
|
|
|
|
1999-07-13 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/boot.c (load_image): When removing "vga=...", memmove
|
|
the length of VGA_END plus one.
|
|
|
|
1999-07-12 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/bios.c (get_diskinfo): In LBA mode, compute
|
|
TOTAL_SECTORS from DRP instead of GEOMETRY.
|
|
Clear GEOMETRY->FLAGS first.
|
|
|
|
* stage2/boot.c (load_image): Fix inverted lines.
|
|
|
|
1999-07-12 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Support Linux video mode selection.
|
|
|
|
* stage2/shared.h (LINUX_VID_MODE_OFFSET): New macro.
|
|
(LINUX_VID_MODE_NORMAL): Likewise.
|
|
(LINUX_VID_MODE_EXTENDED): Likewise.
|
|
(LINUX_VID_MODE_ASK): Likewise.
|
|
[!WITHOUT_LIBC_STUBS] (strlen): Likewise.
|
|
(grub_strlen): Declared.
|
|
* stage2/boot.c (load_image): Added Linux video mode selection.
|
|
* stage2/char_io.c [!STAGE1_5] (grub_strlen): New function.
|
|
|
|
1999-07-12 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/char_io.c (print_error): Print ERRNUM in the format of
|
|
%u instead of %d.
|
|
(convert_to_ascii) [STAGE1_5]: Eliminate the `x' and `d'
|
|
handling code.
|
|
(grub_printf): Declare FORMAT as `const char *'.
|
|
(grub_printf) [STAGE1_5]: Eliminate the `x' and `d' handling
|
|
code.
|
|
(get_based_digit): Removed.
|
|
(safe_parse_maxint): Remove unnecessary `register' prefixes,
|
|
because GCC does better optimization.
|
|
Declare DIGIT as `unsigned int' and calculate the value by more
|
|
compact instructions.
|
|
[!STAGE1_5] (grub_strncat): Declare S2 as `const char *'.
|
|
[!STAGE1_5] (grub_strcmp): Declare S1 and S2 as `const char *'.
|
|
[!STAGE1_5] (grub_strstr): Likewise.
|
|
(grub_memmove): Declare FROM as `const char *'.
|
|
The copy code is replaced with inline assembly code stolen from
|
|
Linux-2.2.2.
|
|
|
|
* stage2/shared.h (grub_printf) : Corrected.
|
|
(grub_strncat): Likewise.
|
|
(grub_memmove): Likewise.
|
|
(grub_strstr): Likewise.
|
|
(grub_strcmp): Likewise.
|
|
|
|
1999-07-11 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage1/stage1.S (sectors): Change the size to long.
|
|
(heads): Likewise.
|
|
(sector_start): New variable.
|
|
(head_start): Likewise.
|
|
(cylinder_start): Likewise.
|
|
(final_init): Set %si to SECTORS first, and use %si for memory
|
|
references.
|
|
Zero %eax so that the high 16 bits are always zero.
|
|
Set %di to FIRSTLIST - LISTSIZ instead of FIRSTLIST.
|
|
(bootloop): Omit the complex CHS recomputation, and always
|
|
compute them from LBA address instead.
|
|
Call 32bits div instructions instead of 16bits div instructions.
|
|
Update the position where to load data from at the end of this
|
|
loop, instead of the beginning.
|
|
|
|
* stage1/stage1_lba.S: New file.
|
|
* stage1/Makefile.am (nodist_pkgdata_DATA): Added stage1_lba.
|
|
(LDFLAGS): New variable.
|
|
(noinst_PROGRAMS): Added stage1_lba.exec.
|
|
(stage1_lba_exec_SOURCES): New variable.
|
|
(%: %.exec): New rule.
|
|
|
|
1999-06-28 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/main.c (main): The third argument for strtoul is changed
|
|
to 0 in the case where an option is OPT_INSTALL_PARTIION.
|
|
Reported by Pavel Roskin <pavel_roskin@geocities.com>.
|
|
|
|
1999-06-27 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/shared.h (STAGE2_STAGE2_ID): New macro.
|
|
(STAGE2_VER_STR_OFFS): Set to 0xd.
|
|
(STAGE2_ID_STAGE2): New macro.
|
|
(STAGE2_ID_FFS_STAGE1_5): Likewise.
|
|
(STAGE2_ID_E2FS_STAGE1_5): Likewise.
|
|
(STAGE2_ID_FAT_STAGE1_5): Likewise.
|
|
(STAGE2_ID) [!STAGE1_5]: Defined as STAGE2_ID_STAGE2.
|
|
(STAGE2_ID) [STAGE1_5] [FSYS_FFS]: Defined as
|
|
STAGE2_ID_FFS_STAGE1_5.
|
|
(STAGE2_ID) [STAGE1_5] [FSYS_EXT2FS]: Defined as
|
|
STAGE2_ID_STAGE1_5.
|
|
(STAGE2_ID) [STAGE1_5] [FSYS_FAT]: Defined as
|
|
STAGE2_ID_FAT_STAGE1_5.
|
|
(COMPAT_VERSION_MINOR): Set to 1.
|
|
* stage2/asm.S (stage2_id): New variable.
|
|
* stage1/stage1.S: Change the minor version to 1.
|
|
|
|
1999-06-27 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* configure.in (CFLAGS): Set to "-g", since only this flag is
|
|
always sharable.
|
|
(STAGE1_CFLAGS): Set to "-O2", and AC_SUBST this.
|
|
(GRUB_CFLAGS): Likewise.
|
|
(saved_CFLAGS): New variable for temporarily saving CFLAGS.
|
|
(STAGE2_CFLAGS): Set to "-Os" if this option is available,
|
|
otherwise set to "-fno-strength-reduce -fno-unroll-loops",
|
|
and then AC_SUBST this.
|
|
* grub/Makefile.am (AM_CFLAGS): Prepended @GRUB_CFLAGS@.
|
|
* stage1/Makefile.am (AM_CFLAGS): Prepended @STAGE1_CFLAGS@.
|
|
* stage2/Makefile.am (libgrub_a_CFLAGS): Prepened @GRUB_CFLAGS@.
|
|
(STAGE2_COMPILE): Prepended @STAGE2_CFLAGS@.
|
|
|
|
* stage2/asm.S (chain_stage2): Pass CURRENT_PARTITION and
|
|
CURRENT_DRIVE, instead of INSTALL_PARTITION and BOOT_DRIVE.
|
|
|
|
1999-06-27 Pavel Roskin <pavel_roskin@geocities.com>
|
|
|
|
* configure.in: set CFLAGS to "-Os -g" for compilers which
|
|
understand "-Os" if CFLAGS is not already set. Use
|
|
"-O2 -fno-strength-reduce -fno-unroll-loops -g" for older gcc
|
|
versions.
|
|
|
|
1999-06-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage2/disk_io.c (attempt_mount) [STAGE1_5]: Set FSYS_TYPE to
|
|
0, and set it to NUM_FSYS if mount fails.
|
|
(real_open_partition): Call rawread in Stage 1.5 as well.
|
|
|
|
1999-06-24 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* Makefile.am (SUBDIRS): Change the order of the directories so
|
|
that a directory will be made after the dependent directories
|
|
are made. `grub' depends on `stage2', and `docs' depends on
|
|
`grub'. Do not make in parallel.
|
|
* docs/help2man: Copied from help2man-1.012, which contains my
|
|
previous change.
|
|
* docs/grub.8: Regenerated.
|
|
|
|
1999-06-24 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Build process is cleaned up. Stage 2 and Stage 1.5's are all
|
|
built in the directory stage2.
|
|
|
|
From Pavel Roskin <pavel_roskin@geocities.com>:
|
|
* Makefile.am (SUBDIRS): e2fs_stage1_5, ffs_stage1_5,
|
|
fat_stage1_5 and shared_src are removed.
|
|
(DISTCLEANFILES): Deleted.
|
|
* configure.in: Call AC_PROG_RANLIB.
|
|
(AC_INIT): Change the argument to stage2/stage2.c.
|
|
(LIBS): Renamed to ...
|
|
(GRUB_LIBS): ... this, and call AC_SUBST for this.
|
|
Our own rules are removed.
|
|
(AC_OUTPUT): e2fs_stage1_5/Makefile, ffs_stage1_5/Makefile,
|
|
fat_stage1_5/Makefile and shared_src/Makefile are removed.
|
|
* docs/Makefile.am (HELP2MAN): The prefix $(srcdir) is removed.
|
|
[GRUB_MAINT]: Prepend $(srcdir) to $(HELP2MAN).
|
|
* e2fs_stage1_5/Makefile.am: Deleted.
|
|
* e2fs_stage1_5/Makefile.in: Likewise.
|
|
* fat_stage1_5/Makefile.am: Likewise.
|
|
* fat_stage1_5/Makefile.in: Likewise.
|
|
* ffs_stage1_5/Makefile.am: Likewise.
|
|
* ffs_stage1_5/Makefile.in: Likewise.
|
|
* grub/Makefile.am (CLEANFILES): Likewise.
|
|
(COMPILE): Likewise.
|
|
(INCLUDES): Likewise.
|
|
(DEP_FILES): Likewise.
|
|
(@SHARED_SRC_RULES@): Likewise.
|
|
(AM_CFLAGS): New variable.
|
|
(grub_LDADD): Set to the library libgrub.a and @GRUB_LIBS@.
|
|
* shared_src/Makefile.am: Deleted.
|
|
* shared_src/Makefile.in: Likewise.
|
|
* shared_src/apic.h: Moved to ...
|
|
* stage2/apic.h: ... here.
|
|
* shared_src/asm.S: Moved to ...
|
|
* stage2/asm.S: ... here.
|
|
* shared_src/bios.c: Moved to ...
|
|
* stage2/bios.c: ... here.
|
|
* shared_src/boot.c: Moved to ...
|
|
* stage2/boot.c: ... here.
|
|
* shared_src/char_io.c: Moved to ...
|
|
* stage2/char_io.c: ... here.
|
|
* shared_src/cmdline.c: Moved to ...
|
|
* stage2/cmdline.c: ... here.
|
|
* shared_src/common.c: Moved to ...
|
|
* stage2/common.c: ... here.
|
|
* shared_src/defs.h: Moved to ...
|
|
* stage2/defs.h: ... here.
|
|
* shared_src/dir.h: Moved to ...
|
|
* stage2/dir.h: ... here.
|
|
* shared_src/disk_inode.h: Moved to ...
|
|
* stage2/disk_inode.h: ... here.
|
|
* shared_src/disk_inode_ffs.h: Moved to ...
|
|
* stage2/disk_inode_ffs.h: ... here.
|
|
* shared_src/disk_io.c: Moved to ...
|
|
* stage2/disk_io.c: ... here.
|
|
* shared_src/fat.h: Moved to ...
|
|
* stage2/fat.h: ... here.
|
|
* shared_src/filesys.h: Moved to ...
|
|
* stage2/filesys.h: ... here.
|
|
* shared_src/freebsd.h: Moved to ...
|
|
* stage2/freebsd.h: ... here.
|
|
* shared_src/fs.h: Moved to ...
|
|
* stage2/fs.h: ... here.
|
|
* shared_src/fsys_ext2fs.c: Moved to ...
|
|
* stage2/fsys_ext2fs.c: ... here.
|
|
* shared_src/fsys_fat.c: Moved to ...
|
|
* stage2/fsys_fat.c: ... here.
|
|
* shared_src/fsys_ffs.c: Moved to ...
|
|
* stage2/fsys_ffs.c: ... here.
|
|
* shared_src/gunzip.c: Moved to ...
|
|
* stage2/gunzip.c: ... here.
|
|
* shared_src/i386-elf.h: Moved to ...
|
|
* stage2/i386-elf.h: ... here.
|
|
* shared_src/imgact_aout.h: Moved to ...
|
|
* stage2/imgact_aout.h: ... here.
|
|
* shared_src/mb_header.h: Moved to ...
|
|
* stage2/mb_header.h: ... here.
|
|
* shared_src/mb_info.h: Moved to ...
|
|
* stage2/mb_info.h: ... here.
|
|
* shared_src/pc_slice.h: Moved to ...
|
|
* stage2/pc_slice.h: ... here.
|
|
* shared_src/shared.h: Moved to ...
|
|
* stage2/shared.h: ... here.
|
|
* shared_src/smp-imps.c: Moved to ...
|
|
* stage2/smp-imps.c: ... here.
|
|
* shared_src/smp-imps.h: Moved to ...
|
|
* stage2/smp-imps.h: ... here.
|
|
* shared_src/stage1_5.c: Moved to ...
|
|
* stage2/stage1_5.c: ... here.
|
|
* shared_src/stage2.c: Moved to ...
|
|
* stage2/stage2.c: ... here.
|
|
* stage1/Makefile.am (pkgdata_DATA): Renamed to ...
|
|
(nodist_pkgdata_DATA): ... this.
|
|
(COMPILE): Deleted.
|
|
(AM_CFLAGS): New variable.
|
|
* stage2/Makefile.am: Completely rewritten from scratch.
|
|
(TESTS): New variable.
|
|
(noinst_SCRIPTS): Likewise.
|
|
(noinst_HEADERS): Likewise.
|
|
(EXTRA_DIST): Set to smp-imps.c and $(noinst_SCRIPTS).
|
|
(noinst_LIBRARIES): New variable.
|
|
(libgrub_a_SOURCES): Likewise.
|
|
(libgrub_a_CFLAGS): Likewise.
|
|
(pkgdata_DATA): Deleted.
|
|
(nodist_pkgdata_DATA): New variable.
|
|
(MOSTLYCLEANFILES): Set to $(noinst_PROGRAMS).
|
|
(COMPILE): Deleted.
|
|
(INCLUDES): Likewise.
|
|
(stage2_exec_LDADD): Likewise.
|
|
(DEP_FILES): Likewise.
|
|
(stage2_exec_SOURCES): Set to the actual source files instead of
|
|
dummy.
|
|
(DISTFILES): Deleted.
|
|
(stage2.exec): Likewise.
|
|
(stage2): Likewise.
|
|
(@SHARED_SRC_RULES@): Likewise.
|
|
(noinst_PROGRAMS): Set to executable formats of Stage 2 and
|
|
Stage 1.5's.
|
|
(STAGE2_LINK): New variable.
|
|
(STAGE2_COMPILE): Likewise.
|
|
(STAGE1_5_LINK): Likewise.
|
|
(STAGE1_5_COMPILE): Likewise.
|
|
(stage2_exec_CFLAGS): Likewise.
|
|
(stage2_exec_LDFLAGS): Likewise.
|
|
(e2fs_stage1_5_exec_SOURCES): Likewise.
|
|
(e2fs_stage1_5_exec_CFLAGS): Likewise.
|
|
(e2fs_stage1_5_exec_LDFLAGS): Likewise.
|
|
(fat_stage1_5_exec_SOURCES): Likewise.
|
|
(fat_stage1_5_exec_CFLAGS): Likewise.
|
|
(fat_stage1_5_exec_LDFLAGS): Likewise.
|
|
(ffs_stage1_5_exec_SOURCES): Likewise.
|
|
(ffs_stage1_5_exec_CFLAGS): Likewise.
|
|
(ffs_stage1_5_exec_LDFLAGS): Likewise.
|
|
(% : %.exec): New rule.
|
|
|
|
* stage2/size_test: New file, for checking for the sizes of
|
|
Stage 2 and Stage 1.5's.
|
|
|
|
1999-06-24 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* stage1/stage1.S: Call testb instead of andb when checking if
|
|
the drive is a floppy.
|
|
|
|
1999-06-23 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c [__linux__]: Include linux/fs.h for BLKFLSBUF.
|
|
(grub_stage2): Call sync before and after calling doit.
|
|
(gurb_stage2) [__linux__]: Invalidate buffer caches by BLKFLSBUF
|
|
ioctl.
|
|
* grub/main.c (main): Call sync first. Suggested by Pavel Roskin
|
|
<pavel_roskin@geocities.com>.
|
|
|
|
* configure.in: Curses libraries are always checked.
|
|
(--enable-sbin-grub): Deleted. Now /sbin/grub is always built.
|
|
(--enable-maintainer-mode): New option.
|
|
* grub/Makefile.am (EXTRA_PROGRAMS): Deleted.
|
|
(sbin_PROGRAMS): Just set to grub.
|
|
* docs/Makefile.am (man_MANS): New variable.
|
|
(HELP2MAN): Likewise.
|
|
(noinst_SCRIPTS): Likewise.
|
|
(EXTRA_DIST): Add $(man_MANS) and $(noinst_SCRIPTS).
|
|
[GRUB_MAINT]: Define the rule for the /sbin/grub manual.
|
|
* docs/help2man: Copied from texinfo-3.12i.
|
|
(--section): New option to specify which section a manual
|
|
belongs to.
|
|
(opt_section): New variable.
|
|
(section): Likewise.
|
|
* docs/grub.8: Produced by help2man automatically.
|
|
|
|
1999-06-22 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/char_io.c (get_cmdline): Add two missing `break's.
|
|
|
|
* shared_src/cmdline.c (commands): Add quit.
|
|
(enter_cmdline): Change the return type to cmdline_t, and return
|
|
CMDLINE_OK if successful, otherwise CMDLINE_ERROR if fail.
|
|
(enter_cmdline) [GRUB_UTIL]: Return CMDLINE_ABORT if CUR_HEAP
|
|
contains "quit".
|
|
[!GRUB_UTIL]: Just print an annotation message.
|
|
* shared_src/shared.h (cmdline_t): New enum type.
|
|
(enter_cmdline): Change the return type to cmdline_t.
|
|
(cmain): Remove ``noreturn'' attribute.
|
|
* shared_src/stage2.c (menu_t): New enum type.
|
|
(run_menu): Change the return type to menu_t.
|
|
If enter_cmdline returns CMDLINE_ABORT, then return MENU_ABORT,
|
|
otherwise return MENU_OK.
|
|
(cmain): If enter_cmdline aborts, then break the command-line
|
|
loop and return. If run_menu aborts, then return.
|
|
|
|
1999-06-22 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/Makefile.am (EXTRA_DIST): Add bios.c. Reported by
|
|
Pavel Roskin <pavel_roskin@geocities.com>.
|
|
|
|
1999-06-21 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* docs/Makefile.am (html): Deleted.
|
|
(txt): Likewise.
|
|
(EXTRA_DIST): $(txt) and $(html) are removed.
|
|
* docs/boot-proposal.html: Removed.
|
|
* docs/errors.html: Likewise.
|
|
* docs/faq.html: Likewise.
|
|
* docs/grub.html: Likewise.
|
|
* docs/install.html: Likewise.
|
|
* docs/mem64mb.html: Likewise.
|
|
* docs/technical.html: Likewise.
|
|
* docs/using.html: Likewise.
|
|
* docs/PC_partitioning.txt: Likewise.
|
|
* docs/bios_mapping.txt: Likewise.
|
|
* docs/commands.txt: Likewise.
|
|
* docs/embedded_data.txt: Likewise.
|
|
* docs/filesystem.txt: Likewise.
|
|
|
|
1999-06-21 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
From Alexander K. Hudek <alexhudek@home.com>:
|
|
* shared_src/disk_io.c (real_open_partition): Check if
|
|
CURRENT_SLICE is equal to PC_SLICE_TYPE_WIN95_EXTENDED as well.
|
|
* shared_src/pc_slice.c (PC_SLICE_TYPE_WIN95_EXTENDED): New
|
|
macro.
|
|
* shared_src/bios.c (biosdisk): Clear the reserved member of DAP.
|
|
|
|
1999-06-08 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Color-menu support based on Peter Astrand
|
|
<altic@lysator.liu.se>'s patch.
|
|
|
|
* shared_src/asm.S (nocursor): New function.
|
|
* shared_src/cmdline.c (normal_color): New variable.
|
|
(highlight_color): Likewise.
|
|
(commands): Added "color" command.
|
|
(enter_cmdline): Handle the color command.
|
|
* shared_src/shared.h (normal_color): Declared.
|
|
(highlight_color): Likewise.
|
|
[!GRUB_UTIL] (nocursor): Likewise.
|
|
* shared_src/stage2.c (print_border) [!GRUB_UTIL]: Color the
|
|
menu.
|
|
(run_menu) [!GRUB_UTIL]: Call nocursor, and call set_line with
|
|
the second argument HIGHLIGHT_COLOR when highlighting a line,
|
|
and NORMAL_COLOR when drawing a normal line.
|
|
(cmain): Initialize normal_color and highlight_color. Handle
|
|
the color command in the same way as the command-line
|
|
interface.
|
|
|
|
1999-06-07 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* e2fs_stage1_5/Makefile.am (IMPORTANT_SIZE_LIMIT): Set to 31744.
|
|
* fat_stage1_5/Makefile.am (IMPORTANT_SIZE_LIMIT): Likewise.
|
|
|
|
1999-06-06 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
The debug version of Stage 2 is removed.
|
|
|
|
* shared_src/cmdline.c: The imps code is now defined if GRUB_UTIL
|
|
is not defined, but not if DEBUG.
|
|
(debug): New global variable.
|
|
(commands): All commands are always enabled, and added "debug".
|
|
(debug_fs_print_func): Defined unconditionally.
|
|
(debug_fs_blocklist_func): If DEBUG is true, then call printf.
|
|
(enter_cmdline): Handle "testload", "read", "fstest",
|
|
"impsprobe" and "displaymem" unconditionally, and added "debug"
|
|
handling.
|
|
[GRUB_UTIL]: If a command is impsprobe, just fails.
|
|
* shared_src/disk_io.c (devread) [!STAGE1_5]: If DEBUG_FS and
|
|
DEBUG are true, then call printf.
|
|
* shared_src/asm.S (patch_code): Defined unconditionally.
|
|
(patch_code_end): Likewise.
|
|
* stage1/stage1.S (firstlist) [!FFS_STAGE1_5]: Increase the
|
|
number of sectors to 90, because Stage 2 is larger than 80
|
|
sectors.
|
|
* configure.in: The option --enable-debug is removed, and do
|
|
not output "stage2_debug/Makefile".
|
|
* Makefile.am (SUBDIRS): stage2_debug is removed.
|
|
* stage2_debug/Makefile.am: Deleted.
|
|
* stage2_debug/Makefile.in: Likewise.
|
|
|
|
1999-06-02 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/main.c (verbose): New variable.
|
|
(read_only): Likewise.
|
|
(OPT_VERBOSE): New macro.
|
|
(OPT_READ_ONLY): Likewise.
|
|
(longopts): Add --read-only and --verbose options.
|
|
(usage): Add the descriptions about --read-only and --verbose.
|
|
(main): Handle OPT_VERBOSE and OPT_READ_ONLY.
|
|
If HOLD and VERBOSE are non-zero, then display the message
|
|
about how to restart /sbin/grub.
|
|
|
|
* shared_src/shared.h (verbose) [GRUB_UTIL]: Declared.
|
|
(read_only) [GRUB_UTIL]: Likewise.
|
|
|
|
* grub/asmstub.c (hex_dump): New function.
|
|
(biosdisk): In the case where SUBFUNC is
|
|
BIOSDISK_WRITE, check for READ_ONLY and call nwrite if
|
|
READ_ONLY is zero. If VERBOSE is non-zero, display what GRUB
|
|
will try to do.
|
|
(get_diskinfo): Open DEVNAME with the mode O_RDWR if READ_ONLY
|
|
is zero, and attempt to open DEVNAME with the mode O_RDONLY
|
|
regardless of ERRNO if READ_ONLY is non-zero. If VERBOSE is
|
|
non-zero, then display the drive DRIVE and the file DEVNAME.
|
|
|
|
* shared_src/disk_io.c (set_device) [STAGE1_5]: Eliminate
|
|
completion code.
|
|
|
|
1999-06-01 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c: Do not use I_AM_VERY_BRAVE any more.
|
|
(grub_stage2): Delete first_scsi_disk and add a variable
|
|
num_hd, which is used for counting how many drives are
|
|
detected.
|
|
Initialize the flags member of each element of disks to -1
|
|
instead of 0, and check if it is equal to -1 instead of 0 when
|
|
close it.
|
|
(get_diskinfo): Treat -1 as non-caching state instead of 0.
|
|
|
|
1999-06-01 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Reported from Klaus Reichl <a8709182@unet.univie.ac.at>:
|
|
* docs/.cvsignore: New file.
|
|
* shared_src/disk_io.c (print_a_completion): New function
|
|
which saves what has been printed to UNIQUE_STRING and printf
|
|
it.
|
|
(unique) [!STAGE1_5]: New variable.
|
|
(unique_string): Likewise.
|
|
(print_completions): Use print_a_completion, and improve the
|
|
completion facility.
|
|
* shared_src/fsys_ext2fs.c (ext2fs_dir) [!STAGE1_5]: Use
|
|
print_a_completion instead of just printf.
|
|
* shared_src/fsys_ffs.c (ffs_dir) [!STAGE1_5]: Likewise.
|
|
* shared_src/fsys_fat.c (fat_dir) [!STAGE1_5]: Likewise.
|
|
* shared_src/shared.h (print_a_completion): Declared.
|
|
* shared_src/cmdline.c (enter_cmdline): Explicitly cast
|
|
int to pointer to char for grub_read.
|
|
* grub/asmstub.c (grub_stage2) [__linux__]: Don't use /dev/fd1.
|
|
Probe 4 IDE drives instead of 2.
|
|
(biosdisk) [__linux__]: Add a prototype for _llseek.
|
|
* shared_src/char_io.c (get_cmdline): Update LPOS and LLEN_OLD
|
|
when the functon print_completion modifies CMDLINE.
|
|
* shared_src/stage2.c (get_line_from_config): Fix LITERAL
|
|
handling.
|
|
|
|
1999-05-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c (grub_stage2): Fix a memory leak that FP is
|
|
not closed.
|
|
|
|
1999-05-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/main.c: Replace OPT_DISABLE_CONFIG_FILE and
|
|
OPT_DISABLE_CURSES with OPT_NO_CONFIG_FILE and OPT_NO_CURSES
|
|
respectively.
|
|
(longopts): Rename from "disable-config-file" to
|
|
"no-config-file", and from "disable-curses" to "no-curses".
|
|
(usage): Use "grub" instead of ARGV[0], read the standards.
|
|
Change the help message according to the changes above.
|
|
(main): Handle OPT_NO_CONFIG_FILE and OPT_NO_CURSES, instead
|
|
of OPT_DISABLE_CONFIG_FILE and OPT_DISABLE_CURSES.
|
|
|
|
1999-05-21 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* docs/TODO: Moved to ...
|
|
* TODO: ... here.
|
|
* docs/BUGS: Moved to ...
|
|
* BUGS: ... here.
|
|
* docs/COPYING: Removed.
|
|
* docs/Makefile.am (EXTRA_DIST): Get rid of BUGS.
|
|
* Makefile.am (EXTRA_DIST): Set to BUGS.
|
|
|
|
1999-05-17 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* acinclude.m4 (grub_ASM_EXT_C): Do not overrun the command
|
|
shift. Reported by Pavel Roskin <pabel_roskin@geocities.com>.
|
|
|
|
1999-05-14 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* docs/Makefile.am (info_TEXINFOS): Added multiboot.texi.
|
|
* docs/multiboot.texi: New file. From Kunihiro Ishiguro.
|
|
|
|
1999-05-12 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c: Include <errno.h>. Reported by Kunihiro
|
|
Ishiguro <kunihiro@zebra.org>.
|
|
|
|
1999-05-11 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Reported by Brian Brunswick <brian@skarpsey.demon.co.uk>:
|
|
* shared_src/asm.S (start) [STAGE1_5]: Jump to 0x0:0x2000.
|
|
* shared_src/cmdline.c (enter_cmdline): Doesn't check for the jump
|
|
address in stage2. We are not paranoid.
|
|
Add a missing RAW_ADDR macro.
|
|
* shared_src/diskio.c (grub_open): Call setup_part even in stage1.5.
|
|
And, include necessary functions that were eliminated incorrectly.
|
|
* shared_src/char_io.c [STAGE1_5]: Eliminate unnecessary functions
|
|
for stage1.5.
|
|
|
|
* grub/asmstub.c (nread): New function. Handle EINTR.
|
|
(nwrite): Likewise.
|
|
(biosdisk) [I_AM_VERY_BRAVE]: When SUBFUNC is BIOSDISK_WRITE, call
|
|
nwrite.
|
|
|
|
Reported by Pavel Roskin <pavel_roskin@geocities.com>:
|
|
* shared_src/fsys_ext2fs.c (off_t): Renamed to ...
|
|
(linux_off_t): ... this.
|
|
* shared_src/defs.h (off_t): Renamed to ...
|
|
(mach_off_t): ... this.
|
|
* shared_src/fs.h (BBOFF): Use mach_off_t instead of off_t.
|
|
(SBOFF): Likewise.
|
|
|
|
* e2fs_stage1_5/Makefile.am (IMPORTANT_SIZE_LIMIT): Set to 81920.
|
|
* fat_stage1_5/Makefile.am (IMPORTANT_SIZE_LIMIT): Likewise.
|
|
* ffs_stage1_5/Makefile.am (IMPORTANT_SIZE_LIMIT): Set to 7168.
|
|
|
|
1999-05-03 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
From Pavel Roskin:
|
|
* shared_src/shared.h: Redeclare.
|
|
|
|
* grub/main.c (main): Use strncpy rather than pointer assignment
|
|
to set the config file name.
|
|
|
|
* grub/asmstub.c: Make config_file a static array, not a pointer.
|
|
Correct the value of VERSION_STRING.
|
|
|
|
1999-04-10 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* debian/rules (build): Install into /lib instead of /share.
|
|
|
|
1999-05-03 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
Preliminary non-interactive use support.
|
|
|
|
* grub/main.c (use_config_file): New variable.
|
|
(use_curses): Likewise.
|
|
(OPT_DISABLE_CONFIG_FILE): New constant.
|
|
(OPT_DISABLE_CURSES): Likewise.
|
|
(OPT_BATCH): Likewise.
|
|
(longopts): Add new options, --disable-config-file, --disable-curses,
|
|
and --batch.
|
|
(usage): Print the help messages about these new options.
|
|
(main): Handle them.
|
|
|
|
* grub/asmstub.c (grub_stage2) [HAVE_LIBCURSES]: If ! USE_CURSES,
|
|
fallback non-curses code.
|
|
(stop) [HAVE_LIBCURSES]: Likewise.
|
|
(cls) [HAVE_LIBCURSES]: Likewise.
|
|
(getxy) [HAVE_LIBCURSES]: Likewise.
|
|
(gotoxy) [HAVE_LIBCURSES]: Likewise.
|
|
(grub_putchar) [HAVE_LIBCURSES]: Likewise.
|
|
(getkey) [HAVE_LIBCURSES]: Likewise.
|
|
(checkkey) [HAVE_LIBCURSES]: Likewise.
|
|
(set_attrib) [HAVE_LIBCURSES]: Likewise.
|
|
|
|
* shared_src/cmdline.c (enter_cmdline): Do not use getc, but use
|
|
getkey.
|
|
|
|
* shared_src/stage2.c (cmain) [GRUB_UTIL]: Check if USE_CONFIG_FILE
|
|
is non-zero or not.
|
|
|
|
* shared_src/shared.h (getc): Removed.
|
|
(use_config_file) [GRUB_UTIL]: Add the declaration.
|
|
(use_curses) [GRUB_UTIL]: Likewise.
|
|
|
|
1999-05-02 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/asm.S (biosdisk_standard): Pop %ebp correctly, reported
|
|
by Pavel Roskin <pavel_roskin@geocities.com>.
|
|
|
|
1999-04-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* docs/menu.lst: Rewritten, so that it contains up-to-date
|
|
information and FAQish configuration examples.
|
|
|
|
1999-04-09 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/asm.S (get_diskinfo_floppy): Correct the number of heads
|
|
and the one of cylinders.
|
|
|
|
1999-04-06 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c (get_diskinfo): Compute the total number of sectors
|
|
for DRIVE.
|
|
|
|
* shared_src/asm.S (get_diskinfo_standard): Clear the data segment
|
|
after calling int 0x13. Restore the base pointer after returning
|
|
to protected mode.
|
|
(get_diskinfo_floppy): Likewise.
|
|
|
|
* shared_src/bios.c (get_diskinfo): Always set the size of DRP to
|
|
the max size of DRP, regardless of the major version of extensions.
|
|
|
|
1999-04-03 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/shared.h (struct geometry): Declare total_sectors as
|
|
unsigned long instead of unsigned long long, because GRUB represents
|
|
a sector number by 4bytes integer, so it doesn't make sense.
|
|
|
|
* shared_src/bios.c (biosdisk) [!NO_INT13_FALLBACK]: Recompute
|
|
TOTAL_SECTORS according to CHS information.
|
|
(get_diskinfo) [DEBUG]: Print the geometry of DRIVE.
|
|
|
|
* shared_src/disk_io.c (real_open_partition): Set PART_LENGTH to
|
|
BUF_GEOM.TOTAL_SECTORS.
|
|
|
|
1999-04-01 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* docs/texinfo.tex: Copied from automake-1.4a.
|
|
|
|
* configure.in (SHARED_SRC_RULES): Add bios into shared sources.
|
|
|
|
* e2fs_stage1_5/Makefile.am (e2fs_stage1_5_exec_LDADD): Added bios.o.
|
|
* fat_stage1_5/Makefile.am (fat_stage1_5_exec_LDADD): Likewise.
|
|
* ffs_stage1_5/Makefile.am (ffs_stage1_5_exec_LDADD): Likewise.
|
|
* stage2/Makefile.am (stage2_exec_LDADD): Likewise.
|
|
* stage2_debug/Makefile.am (stage2_debug_exec_LDADD): Likewise.
|
|
|
|
* shared_src/Makefile.am (EXTRA_DIST): Added bios.c.
|
|
|
|
* shared_src/asm.S (biosdisk): Deleted. Now defined in bios.c.
|
|
(get_diskinfo): Likewise.
|
|
(biosdisk_int13_extensions): New function.
|
|
(biosdisk_standard): Likewise.
|
|
(check_int13_extensions): Likewise.
|
|
(get_diskinfo_int13_extensions): Likewise.
|
|
(get_diskinfo_standard): Likewise.
|
|
(get_diskinfo_floppy): Likewise.
|
|
|
|
* shared_src/bios.c: New file.
|
|
|
|
* shared_src/shared.h (struct geometry): Added new member,
|
|
total_sectors.
|
|
|
|
1999-03-28 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/stage2.c (print_entries): Correctly assign MENU_ENTRIES
|
|
the entries starting from FIRST.
|
|
|
|
1999-03-27 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* Change everything to use memset and memmove instead of bzero and
|
|
bcopy. GNB's Not BSD.
|
|
|
|
* shared_src/shared.h (grub_memset): Adapted from grub_bzero.
|
|
(grub_memmove): Adapted from grub_bcopy.
|
|
|
|
* grub/asmstub.c (checkkey): Fix unterminated comment.
|
|
|
|
* shared_src/char_io.c (grub_printf): Renamed from printf.
|
|
(grub_tolower): Renamed from tolower.
|
|
(grub_isspace): Renamed from isspace.
|
|
(grub_strncat): Renamed from strncat.
|
|
(grub_strstr): Renamed from strstr.
|
|
(grub_bcopy): Renamed from bcopy.
|
|
(grub_bzero): Renamed from bzero.
|
|
|
|
From Bradford Hovinen:
|
|
* shared_src/char_io.c (get_cmdline): Add new argument to hide
|
|
password entry.
|
|
(grub_strcmp): New function.
|
|
* shared_src/shared.h (get_cmdline): Fix declaration.
|
|
(grub_strcmp): Declare.
|
|
* shared_src/stage2.c (run_menu): Use get_cmdline with an
|
|
ECHO_CHAR of `*'. This protects against both brute-force and
|
|
sidelong-glance password cracking attempts.
|
|
|
|
* grub/main.c (usage): Display defaults for stage2 options.
|
|
|
|
* grub/asmstub.c [WITHOUT_LIBC_STUBS]: Renamed from
|
|
NO_REMAPPING_LIBC_FUNCTIONS.
|
|
* grub/main.c: Likewise.
|
|
* shared_src/shared.h: Likewise.
|
|
|
|
1999-03-27 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c (set_attrib): Use inch and addch, instead of
|
|
chgat, because chgat doesn't work as expected.
|
|
|
|
1999-03-26 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* grub/asmstub.c (grub_stage2) [HAVE_LIBCURSES]: Call nodelay.
|
|
(checkkey) [HAVE_LIBCURSES]: If getting an input character, then
|
|
ungetch it, because checkkey shouldn't modify the input queue.
|
|
|
|
Use file descriptors instead of file pointers to support
|
|
>4GB disks in Linux.
|
|
|
|
* grub/asmstub.c (grub_stage2): Call close instead of fclose.
|
|
(get_diskinfo): Call open instead of fopen.
|
|
(biosdisk) [__linux__]: Use _llseek instead of lseek.
|
|
(biosdisk): Call read instead of fread.
|
|
|
|
Add options so that the user can specify the config file.
|
|
|
|
* grub/Makefile.am (CPPFLAGS): Use -fwritable-strings, because
|
|
grub assumes that all strings resides at the data section.
|
|
|
|
* grub/main.c: Define NO_REMAPPING_LIBC_FUNCTIONS before including
|
|
shared.h.
|
|
(OPT_CONFIG_FILE): New macro.
|
|
(OPT_INSTALL_PARTITION): Likewise.
|
|
(OPT_BOOT_DRIVE): Likewise.
|
|
(longopts): Add new options, config-file, install-partition and
|
|
boot-drive.
|
|
(usage): Add the documentation for them.
|
|
(main): Add handling code for OPT_CONFIG_FILE, OPT_INSTALL_PARTITION
|
|
and OPT_BOOT_DRIVE.
|
|
|
|
* grub/asmstub.c: Define NO_REMAPPING_LIBC_FUNCTIONS before including
|
|
shared.h.
|
|
(config_file): Make it char * instead of char [].
|
|
(getrtsecs): Return current time instead of 0xff.
|
|
|
|
* shared_src/shared.h [NO_REMAPPING_LIBC_FUNCTIONS]: Don't define
|
|
libc-API-compatible function names.
|
|
(config_file): Change the prototype from char [] to char *.
|
|
(grub_putchar): Renamed from putchar.
|
|
|
|
1999-03-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* char_io.c (get_cmdline): Call cl_setcpos even if lpos == llen,
|
|
because ncurses won't update the cursor position.
|
|
|
|
* grub/main.c (OPT_HOLD): New macro.
|
|
(longopts): New option --hold.
|
|
(usage): Add the documentation about --hold.
|
|
(main): Set hold if --hold is specified. Wait until cleared.
|
|
|
|
1999-03-22 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/cmdline.c (enter_cmdline): Check the return value of
|
|
set_device in the `root' command.
|
|
|
|
* shared_src/char_io.c (memcheck): Special-case cur_part_desc and
|
|
reenable memory checking.
|
|
|
|
1999-03-21 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/boot.c (load_image): Make sure we use the mapped
|
|
address before actually writing data to memaddr.
|
|
|
|
* shared_src/char_io.c (get_cmdline): Only zero-terminate if there
|
|
were leading blanks. This prevents accidental truncation of
|
|
commands.
|
|
|
|
* grub/asmstub.c (get_diskinfo): Cache device geometries as well
|
|
as file handles.
|
|
Use the Linux HDIO_GETGEO ioctl to make a better guess at hard
|
|
disk geometries.
|
|
|
|
1999-03-16 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/shared.h (geometry_t): Delete typedef, until we
|
|
actually use it.
|
|
|
|
1999-03-16 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
|
|
|
* shared_src/asm.S (biosdisk): Use a structure for geometry
|
|
instead of a integer.
|
|
(get_diskinfo): Take a pointer to a geometry structure as the
|
|
second argument, and fill a geometry in it. Return 1 if an error
|
|
occurs, otherwise return 0.
|
|
* shared_src/boot.c (bsd_boot): Compute BIOS geometries for BSD.
|
|
* shared_src/cmdline.c (enter_cmdline): Declare dest_geom as
|
|
struct geometry.
|
|
* shared_src/disk_io.c (buf_geom): Declare as struct geometry.
|
|
* shared_src/filesys.h (SECTORS): Deleted.
|
|
(HEADS): Likewise.
|
|
(CYLINDERS): Likewise.
|
|
* shared_src/shared.h (BIOSDISK_FLAG_LBA_EXTENSION): New macro.
|
|
(struct geometry): New structure.
|
|
(buf_geom): Correct the prototype.
|
|
(get_diskinfo): Likewise.
|
|
(biosdisk): Likewise.
|
|
|
|
1999-03-15 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* grub/asmstub.c (doit): Nested function to get a clean stack
|
|
frame while in grub_stage2.
|
|
Use different assembler magic. From OKUJI Yoshinori.
|
|
|
|
1999-03-14 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/stage2.c (run_menu): Use A_REVERSE and A_NORMAL
|
|
constants instead of magic numbers.
|
|
|
|
* shared_src/shared.h (A_REVERSE): Renamed from ATTR_INVERSE for
|
|
compatibility with curses.
|
|
(A_NORMAL): Renamed from ATTR_NORMAL.
|
|
|
|
* shared_src/cmdline.c (enter_cmdline): Change prompt to "grub> ".
|
|
(enter_cmdline): Only abort the boot if we are in a script.
|
|
|
|
* shared_src/stage2.c (run_menu): Change prompts to "grub edit> ".
|
|
|
|
* shared_src/char_io.c (memcheck): Use RAW_ADDR to compute memory
|
|
locations.
|
|
(get_cmdline): Change the `goto next line' code to account for
|
|
newlines deleting to end of line under curses.
|
|
|
|
* Innumerable cleanups to fix warnings. There are still too many
|
|
typecasts in the wrong places (int variables used to hold
|
|
pointers, then casted to a pointer type), but things look better.
|
|
|
|
* configure.in (CPPFLAGS): Bump up GCC warnings to -Wall
|
|
-Wmissing-prototypes -Wunused.
|
|
|
|
* shared_src/shared.h: Delete stupid declarations, and totally
|
|
rearrange for clarity.
|
|
(inb, outb): Move to cmdline.c, since it's only used there.
|
|
(print_possibilities, fsmax, fsys_table): Move definitions to
|
|
disk_io.c.
|
|
|
|
* grub/asmstub.c: Fill in more stubs.
|
|
|
|
1999-03-13 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/gunzip.c (border): Rename to bitorder, to resolve
|
|
clash with curses.
|
|
* shared_src/stage2.c (timeout): Rename to grub_timeout.
|
|
|
|
* configure.in: Check for curses libraries for use with
|
|
/sbin/grub.
|
|
|
|
* shared_src/shared.h (KEY_DELETE): Rename to KEY_DC, for
|
|
compatibility with curses.
|
|
(KEY_INSERT): Rename to KEY_IC.
|
|
(KEY_PGDN): Rename to KEY_NPAGE.
|
|
(KEY_PGUP): Rename to KEY_PPAGE.
|
|
|
|
* shared_src/asm.S (asm_getkey): Renamed to getkey.
|
|
|
|
* shared_src/char_io.c (getkey): Delete, because it's useless.
|
|
|
|
* shared_src/shared.h: Resolve name clashes with libc by renaming
|
|
overlapping functions to have grub_ prefixes, then defining
|
|
macros.
|
|
|
|
* grub/asmstub.c (start_stage2): Make some assertions about our
|
|
scratch memory area.
|
|
|
|
* shared_src/shared.h (end): Delete declaration.
|
|
(RAW_ADDR, RAW_SEG): Macros to redirect /sbin/grub memory requests
|
|
through grub_scratch_mem.
|
|
|
|
* grub/asmstub.c (get_mem_map): Implement, simulating 4MB
|
|
contiguous memory.
|
|
(get_code_end): Implement, simulating with a malloced area.
|
|
grub/asmstub.c (start_stage2): Initialize grub_scratch_mem.
|
|
|
|
* shared_src/asm.S (get_mem_map): Some BIOSes expect the high word
|
|
of %eax to be zero.
|
|
(get_code_end): Move this from common.c so that we can stub it out
|
|
in the simulator.
|
|
|
|
* debian/rules: Make sure info files end up in /usr/info, not
|
|
/info.
|
|
|
|
1999-03-10 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/asm.S (biosdisk): Make LBA mode work correctly. From
|
|
OKUJI Yoshinori.
|
|
Unconditionally define NO_INT13_FALLBACK until we release GRUB
|
|
0.6. This will help debug any problems with the LBA support until
|
|
then.
|
|
|
|
1999-03-09 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/asm.S (biosdisk): Compute location of
|
|
disk_address_packet correctly. From OKUJI Yoshinori.
|
|
|
|
1999-03-08 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* docs/grub.texi: New Texinfo documentation.
|
|
|
|
* shared_src/disk_io.c (set_device): First stab at interpreting
|
|
Mach-style partition naming.
|
|
|
|
* shared_src/stage2.c (run_menu): Don't say it was a failure if
|
|
enter_cmdline returns nonzero... just wait for a key.
|
|
|
|
* shared_src/cmdline.c (enter_cmdline): Return nonzero, and avoid
|
|
the fallback command if we did an install.
|
|
|
|
* shared_src/asm.S (_start): New explicit symbol to supress
|
|
warnings.
|
|
|
|
* e2fs_stage1_5/Makefile.am (NO_FANCY_STUFF): Renamed to STAGE1_5,
|
|
since that describes this conditional more accurately.
|
|
* fat_stage1_5/Makefile.am: Likewise.
|
|
* ffs_stage1_5/Makefile.am: Likewise.
|
|
* shared_src/asm.S: Likewise.
|
|
* shared_src/char_io.c: Likewise.
|
|
* shared_src/common.c: Likewise.
|
|
* shared_src/disk_io.c: Likewise.
|
|
* shared_src/fsys_ext2fs.c: Likewise.
|
|
* shared_src/fsys_ffs.c: Likewise.
|
|
* shared_src/shared.h: Likewise.
|
|
|
|
1999-03-07 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* configure.in (SHARED_SRC_RULES): Automatically generate
|
|
Makefile dependencies for files in shared_src.
|
|
e2fs_stage1_5/Makefile.am: Use them.
|
|
fat_stage1_5/Makefile.am: Likewise.
|
|
ffs_stage1_5/Makefile.am: Likewise.
|
|
grub/Makefile.am: Likewise.
|
|
stage2/Makefile.am: Likewise.
|
|
stage2_debug/Makefile.am: Likewise.
|
|
|
|
* shared_src/disk_inode.h: Fix typo: i_ic shouldn't be defined.
|
|
|
|
* shared_src/fsys_ffs.c (block_map): Make static, since this
|
|
function isn't used outside of its defining file.
|
|
|
|
* shared_src/disk_io.c [NO_FANCY_STUFF]: Eliminate a whole bunch
|
|
more functions from the stage1.5. From OKUJI Yoshinori.
|
|
* shared_src/fsys_ffs.c: Likewise.
|
|
* shared_src/char_io.c: Likewise.
|
|
|
|
1999-03-05 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/char_io.c (getkey): Don't set BUF_DRIVE to -1.
|
|
BUF_DRIVE has nothing at all to do with getkey.
|
|
|
|
* shared_src/common.c (err_list): Change description of ERR_GEOM
|
|
to be more informative.
|
|
|
|
* Makefile.am (configure): Depend on debian/changelog.
|
|
|
|
* configure.in (host_cpu): Make all fully i386-compatible CPUs be
|
|
identified as i386.
|
|
(AM_INIT_AUTOMAKE): Fetch values for PACKAGE and VERSION from
|
|
debian/changelog, so that we only have one file to update.
|
|
|
|
* shared_src/asm.S (get_diskinfo): Fix a few bit-twiddling bugs in
|
|
the BIOS extension detection code.
|
|
(biosdisk) [AWARD_INT13_EXTENSIONS]: Preliminary implementation
|
|
of Award's encoding of cylinder bits 10 and 11.
|
|
(biosdisk) [NO_INT13_FALLBACK]: If defined, don't use the standard
|
|
disk interface if the extended interface fails.
|
|
|
|
* configure.in: Make sure $(host_cpu) and $(host_vendor) are
|
|
substituted into the Makefile.
|
|
|
|
* e2fs_stage1_5/Makefile.am (pkgdatadir): Install files in
|
|
$(datadir)/grub/$(host_cpu)-$(host_vendor).
|
|
* fat_stage1_5/Makefile.am: Likewise.
|
|
* ffs_stage1_5/Makefile.am: Likewise.
|
|
* stage1/Makefile.am: Likewise.
|
|
* stage2/Makefile.am: Likewise.
|
|
* stage2_debug/Makefile.am: Likewise.
|
|
|
|
1999-03-03 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/asm.S (biosdisk): Use LBA mode if high nibble of
|
|
GEOMETRY is nonzero.
|
|
(get_diskinfo): Set high nibble of GEOMETRY (0xf0000000) to 1 if
|
|
LBA mode is detected.
|
|
|
|
1999-03-02 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/disk_io.c (make_saved_active): Use BIOSDISK_READ and
|
|
BIOSDISK_WRITE.
|
|
|
|
* shared_src/cmdline.c (enter_cmdline): Use BIOSDISK_WRITE.
|
|
|
|
* shared_src/shared.h (BIOSDISK_SUBFUNC_READ,
|
|
BIOSDISK_SUBFUNC_WRITE): Delete constants.
|
|
|
|
* shared_src/asm.S (biosdisk): Change subfunc argument to be
|
|
read=0, write=1.
|
|
|
|
* configure.in: Drop redundant AC_PROG_INSTALL. From OKUJI
|
|
Yoshinori.
|
|
|
|
1999-03-01 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* debian/rules (binary-arch): Properly install README.debian.
|
|
|
|
* acinclude.m4 (grub_OBJCOPY_ABSOLUTE): Don't forget to move the
|
|
old binary out of the way before reentering the loop.
|
|
(grub_ASM_ADDR32): Delete conftest files after running the test.
|
|
|
|
* debian/rules (binary-arch): Remove empty /sbin directory until
|
|
/sbin/grub is installed. Use $(DESTDIR) instead of $(prefix) to
|
|
install files.
|
|
|
|
* shared_src/asm.S (version_string): Set the version string from
|
|
the VERSION specified in configure.in.
|
|
|
|
* Change all Makefiles into Makefile.ams. Many major build
|
|
environment changes to get Automake/Autoconf working nicely.
|
|
|
|
1999-02-28 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* NEWS: Moved from docs/NEWS.
|
|
|
|
* configure.in, acinclude.m4: New files for Autoconf. From OKUJI
|
|
Yoshinori.
|
|
|
|
* AUTHORS, INSTALL: New files.
|
|
|
|
1999-02-24 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* stage1/stage1.S (after_BPB): Do a hard disk probe first, so that
|
|
we can work with IDE floppies (like the LS-120).
|
|
|
|
* Run GNU Indent on */*.[ch].
|
|
|
|
1999-02-21 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* debian: Add to the distribution, since we maintain the GRUB
|
|
Debian package ourselves.
|
|
|
|
* grub/asmstub.c: New file to implement stubbed assembly functions
|
|
under Unix.
|
|
|
|
* stage1/Makefile: Delete spurious dependencies on Makefile.
|
|
* stage2/Makefile: Likewise.
|
|
* stage2_debug/Makefile: Likewise.
|
|
* grub/Makefile: Likewise.
|
|
|
|
* shared_src/fsys_ext2fs.c (ext2fs_dir): Follow symbolic links
|
|
rather than giving an error.
|
|
|
|
* shared_src/common.c (err_list): Use labeled elements to
|
|
associate messages with error codes.
|
|
* shared_src/shared.h: Make error codes into an enumerated type.
|
|
|
|
* shared_src/common.c (err_list): Add ERR_SYMLINK_LOOP.
|
|
* shared_src/shared.h: Likewise.
|
|
|
|
* shared_src/char_io.c (bcopy): Don't make any assumptions about
|
|
the length of an unsigned long.
|
|
|
|
* grub/Makefile: Treat CFLAGS, CPPFLAGS, LDFLAGS according to
|
|
GNU standards.
|
|
* stage2/Makefile: Likewise.
|
|
* e2fs_stage1_5/Makefile: Likewise.
|
|
* fat_stage1_5/Makefile: Likewise.
|
|
* ffs_stage1_5/Makefile: Likewise.
|
|
|
|
1999-02-20 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* docs/index.html: Rename to grub.html, so that we don't hide
|
|
files in this directory from a web browser.
|
|
|
|
1999-02-15 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* Makefile.end (PROGS): Add grub.
|
|
|
|
* grub/main.c: New file.
|
|
|
|
* grub/Makefile: New directory to contain the stage2 Unix program.
|
|
|
|
* shared_src/cmdline.c: Use substring.
|
|
* shared_src/fsys_ext2fs.c: Likewise.
|
|
* shared_src/fsys_fat.c: Likewise.
|
|
* shared_src/fsys_ffs.c: Likewise.
|
|
* shared_src/stage2.c: Likewise.
|
|
|
|
* shared_src/shared.h: Delete strcmp, declare substring.
|
|
|
|
* shared_src/char_io.c (strcmp): Rename to `substring', because
|
|
this function doesn't behave the same as libc's strcmp.
|
|
|
|
1999-02-14 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/shared.h: (addr32, data32): Delete definitions.
|
|
|
|
* stage1/stage1.S: Modify to use GAS's new .code16 semantics.
|
|
shared_src/asm.S: Likewise.
|
|
|
|
* configure: Test to see if the `addr32' instruction is supported.
|
|
Ian Lance Taylor says that GAS's interpretation of `.code16' has
|
|
changed. Older versions always generated 32-bit code, but
|
|
implicitly inserted addr32 and data32 when .code16 was given.
|
|
Newer versions generate 16-bit code, and require manual addr32 and
|
|
data32 overrides.
|
|
|
|
* shared_src/shared.h: Add some assertions to check that buffer
|
|
addresses are properly defined.
|
|
|
|
1999-02-12 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/stage2.c (run_menu): Pause if we failed to boot both
|
|
the default and fallback entries.
|
|
|
|
* configure: Check to make sure that GAS actually honors .code16
|
|
directives.
|
|
|
|
1999-02-02 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* shared_src/asm.S: Fix typo that called interrupt 0xd (decimal
|
|
13) instead of 0x13.
|
|
|
|
1999-01-31 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* e2fs_stage1_5/Makefile: Avoid gratuitous dependencies on
|
|
Makefile.
|
|
* fat_stage1_5/Makefile: Likewise.
|
|
* ffs_stage1_5/Makefile: Likewise.
|
|
|
|
* Makefile.end (PROGS): Add e2fs_stage1_5, fat_stage1_5, and
|
|
grubinst.
|
|
(distclean): New GNU standard rule.
|
|
|
|
1998-10-23 Gordon Matzigkeit <gord@trick.fig.org>
|
|
|
|
* configure: Accept `--host' as a synonym for `--target', and
|
|
accept a non-optional argument as the target name. Join the
|
|
prefix to the tool name with a hyphen.
|
|
|
|
* shared_src/disk_io.c (print_fsys_type): Always print the
|
|
partition type.
|
|
|
|
* shared_src/stage2.c (run_menu): Check to make sure that the
|
|
fallback entry is nonnegative.
|
|
(run_menu): For consistency, use `e' rather than enter to edit the
|
|
command entry.
|