summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Downs <downsj@cvs.openbsd.org>1996-09-28 08:30:46 +0000
committerJason Downs <downsj@cvs.openbsd.org>1996-09-28 08:30:46 +0000
commit19e442a3018236e6005c9543ffad18fc6824128a (patch)
treeceec2103598a5963226e35fc631586b03bda10d9
parent8c75d47ac0c29ec752fe3697c194072cb377f2a8 (diff)
Allow booting from 2.88mb floppies (in 1.44mb mode), and remove the
floppy "wait for filesystem" goop.
-rw-r--r--sys/arch/i386/boot/boot.c4
-rw-r--r--sys/arch/i386/boot/disk.c8
2 files changed, 7 insertions, 5 deletions
diff --git a/sys/arch/i386/boot/boot.c b/sys/arch/i386/boot/boot.c
index 77b91bbe05e..648535dfa41 100644
--- a/sys/arch/i386/boot/boot.c
+++ b/sys/arch/i386/boot/boot.c
@@ -272,10 +272,6 @@ nosyms:
* arg7 = conventional memory size (640)
* arg8 = extended memory size (8196)
*/
- if (maj == 2) {
- printf("\n\nInsert file system floppy\n");
- getc();
- }
startaddr &= 0xffffff;
argv[1] = howto;
diff --git a/sys/arch/i386/boot/disk.c b/sys/arch/i386/boot/disk.c
index e92bb57e771..2769b1cf7fa 100644
--- a/sys/arch/i386/boot/disk.c
+++ b/sys/arch/i386/boot/disk.c
@@ -69,7 +69,13 @@ devopen()
int i, sector, di;
di = get_diskinfo(dosdev);
- spc = (spt = SPT(di)) * HEADS(di);
+ spt = SPT(di);
+
+ /* Hack for 2.88MB floppy drives. */
+ if (!(dosdev & 0x80) && (spt == 36))
+ spt = 18;
+
+ spc = spt * HEADS(di);
if (dosdev == 2) {
boff = 0;
part = (spt == 15 ? 3 : 1);