fix a bug in fat. fix bsd boot in the grub shell.
This commit is contained in:
parent
83b3d5eee0
commit
69be37a233
3 changed files with 28 additions and 1 deletions
12
ChangeLog
12
ChangeLog
|
@ -1,3 +1,15 @@
|
|||
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>:
|
||||
|
|
|
@ -523,6 +523,17 @@ load_initrd (char *initrd)
|
|||
}
|
||||
|
||||
|
||||
#ifdef GRUB_UTIL
|
||||
/* Dummy function to fake the *BSD boot. */
|
||||
static void
|
||||
bsd_boot_entry (int flags, int bootdev, int sym_start, int sym_end,
|
||||
int mem_upper, int mem_lower)
|
||||
{
|
||||
stop ();
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* All "*_boot" commands depend on the images being loaded into memory
|
||||
* correctly, the variables in this file being set up correctly, and
|
||||
|
@ -538,7 +549,11 @@ bsd_boot (int type, int bootdev, char *arg)
|
|||
int clval = 0, i;
|
||||
struct bootinfo bi;
|
||||
|
||||
#ifdef GRUB_UTIL
|
||||
entry_addr = (entry_func) bsd_boot_entry;
|
||||
#else
|
||||
stop_floppy ();
|
||||
#endif
|
||||
|
||||
while (*(++arg) && *arg != ' ');
|
||||
str = arg;
|
||||
|
|
|
@ -124,7 +124,7 @@ fat_create_blocklist (int first_fat_entry)
|
|||
}
|
||||
|
||||
first_fat_entry
|
||||
= *((unsigned long *) (FAT_BUF + (new_mapblock - mapblock)));
|
||||
= *((unsigned short *) (FAT_BUF + (new_mapblock - mapblock)));
|
||||
|
||||
if (fat_size == 3)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue