diff options
author | nyan <nyan@FreeBSD.org> | 2000-08-12 14:20:31 +0000 |
---|---|---|
committer | nyan <nyan@FreeBSD.org> | 2000-08-12 14:20:31 +0000 |
commit | 784618782ee6136ae55c487d6cd37057e7713394 (patch) | |
tree | 595442ab24ee1b8cd5cde2487f8a5d440ec1864d /lib/libdisk/write_disk.c | |
parent | 0f9d7e675d007edbbc28ad5299e578b24acae95f (diff) | |
download | FreeBSD-src-784618782ee6136ae55c487d6cd37057e7713394.zip FreeBSD-src-784618782ee6136ae55c487d6cd37057e7713394.tar.gz |
- Added support for installing boot0 and boot0.5 for PC-98.
- Cosmetic changes.
Diffstat (limited to 'lib/libdisk/write_disk.c')
-rw-r--r-- | lib/libdisk/write_disk.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/libdisk/write_disk.c b/lib/libdisk/write_disk.c index 83c17b1..54025b2 100644 --- a/lib/libdisk/write_disk.c +++ b/lib/libdisk/write_disk.c @@ -339,6 +339,9 @@ Write_Disk(struct disk *d1) #endif #ifdef PC98 + if (d1->bootipl) + write_block(fd,WHERE(0,d1),d1->bootipl); + mbr = read_block(fd,WHERE(1,d1)); memcpy(mbr+DOSPARTOFF,dp,sizeof *dp * NDOSPART); /* XXX - for entire FreeBSD(98) */ @@ -348,6 +351,10 @@ Write_Disk(struct disk *d1) PC98_EntireDisk = 1; if (PC98_EntireDisk == 0) write_block(fd,WHERE(1,d1),mbr); + + if (d1->bootmenu) + for (i = 0; i * 512 < d1->bootmenu_size; i++) + write_block(fd,WHERE(2+i,d1),&d1->bootmenu[i * 512]); #else mbr = read_block(fd,WHERE(0,d1)); if (d1->bootmgr) |