Try to impreve DD mode.

Try to make 4Mb floppies work again.
This commit is contained in:
Poul-Henning Kamp 1996-11-27 22:52:34 +00:00
parent 9009c7d68d
commit f8d8dfe86e
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=19992
9 changed files with 85 additions and 88 deletions

View File

@ -1,4 +1,4 @@
# $Id: Makefile,v 1.257 1996/11/15 22:16:09 jkh Exp $
# $Id: Makefile,v 1.258 1996/11/16 22:40:59 joerg Exp $
#
# How to roll a release:
#
@ -44,8 +44,9 @@ ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
# Upper size for the mfs in the boot.flp kernel.
# These are adjusted down to the minimum needed by doFS.sh.
BOOTMFSSIZE= 1400
MFSINODE= 42000
BOOTMFSSIZE4= 1100
BOOTMFSSIZE= 1200
MFSINODE= 120000
FIXITINODE= 28000
# Things which will get you into trouble if you change them
@ -369,7 +370,8 @@ release.8: write_mfs_in_kernel dumpnlist
rm -rf ${RD}/mfsfd
mkdir ${RD}/mfsfd
cd ${RD}/mfsfd && \
mkdir -p dev mnt stand/help
mkdir -p etc dev mnt stand/help && \
ln -s 'AH<<<<' etc/malloc.conf
@cd ${.CURDIR} && $(MAKE) installCRUNCH CRUNCH=boot \
DIR=${RD}/mfsfd/stand ZIP=false
( cd ${RD}/trees/bin/dev && \
@ -388,7 +390,7 @@ release.8: write_mfs_in_kernel dumpnlist
-test -f ${.CURDIR}/install.cfg && cp ${.CURDIR}/install.cfg ${RD}/mfsfd
# make the small bootfd
@echo "Making the small 4MB boot floppy."
sh -e ${.CURDIR}/doFS.sh ${RD} ${MNT} ${BOOTMFSSIZE} ${RD}/mfsfd \
sh -e ${.CURDIR}/doFS.sh ${RD} ${MNT} ${BOOTMFSSIZE4} ${RD}/mfsfd \
${MFSINODE} minimum
mv fs-image fs-image.4
mv fs-image.size fs-image.4.size
@ -577,6 +579,26 @@ doMFSKERN:
@cd ${.CURDIR} && $(MAKE) ckRELEASEDIR
@rm -f ${RD}/kernels/BOOTMFS.${FSIMAGE}
@rm -f /sys/compile/BOOTMFS/mfs_vfsops.o
.if defined(FSIMAGE) && (${FSIMAGE} == "4")
@cd ${.CURDIR}/../sys/i386/conf && \
sed -e '/SYSV/d' \
-e '/pty/d' \
-e '/I[56]86_CPU/d' \
-e '/[ ]pci0/d' \
-e '/ncr0/d' \
-e '/BOUNCE_BUFFERS/d' \
-e '/VISUAL_USERCONFIG/d' \
-e '/device[ ]*de0/d' \
-e '/device[ ]*fxp0/d' \
-e '/PROCFS/d' \
-e '/KTRACE/d' \
-e 's/GENERIC/BOOTMFS/g' \
-e '/maxusers/s/10/4/' < GENERIC > BOOTMFS && \
echo "options MFS" >> BOOTMFS && \
echo "options NFS_NOSERVER" >> BOOTMFS && \
echo 'options "MAXCONS=4"' >> BOOTMFS && \
echo "options USERCONFIG_BOOT" >> BOOTMFS
.else
@cd ${.CURDIR}/../sys/i386/conf && \
sed -e '/SYSV/d' \
-e '/pty/d' \
@ -588,6 +610,7 @@ doMFSKERN:
echo "options NFS_NOSERVER" >> BOOTMFS && \
echo 'options "MAXCONS=4"' >> BOOTMFS && \
echo "options USERCONFIG_BOOT" >> BOOTMFS
.endif
@echo "options \"MFS_ROOT=`cat fs-image.${FSIMAGE}.size`\"" >> \
${.CURDIR}/../sys/i386/conf/BOOTMFS
cd ${.CURDIR} && ${MAKE} doKERNEL KERNEL=BOOTMFS

View File

@ -46,7 +46,9 @@ do
( set -e && cd ${FSPROTO} && find . -print | cpio -dump ${MNT} )
set `df -i /mnt | tail -1`
df -ki /mnt
set `df -ki /mnt | tail -1`
umount ${MNT}

View File

@ -46,7 +46,9 @@ do
( set -e && cd ${FSPROTO} && find . -print | cpio -dump ${MNT} )
set `df -i /mnt | tail -1`
df -ki /mnt
set `df -ki /mnt | tail -1`
umount ${MNT}

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: config.c,v 1.58 1996/11/09 18:12:12 jkh Exp $
* $Id: config.c,v 1.59 1996/11/09 19:25:59 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -379,12 +379,6 @@ configResolv(void)
if (!RunningAsInit || file_readable("/etc/resolv.conf"))
return;
if (Mkdir("/etc")) {
msgConfirm("Unable to create /etc directory. Network configuration\n"
"files will therefore not be written!");
return;
}
cp = variable_get(VAR_NAMESERVER);
if (!cp || !*cp)
goto skip;

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: disks.c,v 1.71 1996/11/05 19:53:20 phk Exp $
* $Id: disks.c,v 1.72 1996/11/07 16:40:10 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -77,20 +77,15 @@ print_chunks(Disk *d)
for (i = Total = 0; chunk_info[i]; i++)
Total += chunk_info[i]->size;
if (d->bios_hd <= 1 && d->bios_sect <= 1) {
All_FreeBSD(d, TRUE);
d->bios_hd = d->bios_sect = d->bios_cyl = 1;
}
else if (d->bios_cyl > 65536 || d->bios_hd > 256 || d->bios_sect >= 64) {
if (d->bios_cyl > 65536 || d->bios_hd > 256 || d->bios_sect >= 64) {
dialog_clear_norefresh();
msgConfirm("WARNING: A geometry of %d/%d/%d for %s is incorrect. Using\n"
"a default geometry of 64 heads and 32 sectors. If this geometry\n"
"is incorrect or you are unsure as to whether or not it's correct,\n"
"please consult the Hardware Guide in the Documentation submenu\n"
"or use the (G)eometry command to change it now.", d->bios_cyl, d->bios_hd, d->bios_sect, d->name);
d->bios_hd = 64;
d->bios_sect = 32;
d->bios_cyl = Total / ONE_MEG;
"a more likely geometry. If this geometry is incorrect or you\n"
"are unsure as to whether or not it's correct, please consult\n"
"the Hardware Guide in the Documentation submenu or use the\n"
" (G)eometry command to change it now.",
d->bios_cyl, d->bios_hd, d->bios_sect, d->name);
Sanitize_Bios_Geom(d);
}
attrset(A_NORMAL);
mvaddstr(0, 0, "Disk name:\t");
@ -98,8 +93,9 @@ print_chunks(Disk *d)
attrset(A_REVERSE); addstr(d->name); attrset(A_NORMAL);
attrset(A_REVERSE); mvaddstr(0, 55, "FDISK Partition Editor"); attrset(A_NORMAL);
mvprintw(1, 0,
"DISK Geometry:\t%lu cyls/%lu heads/%lu sectors",
d->bios_cyl, d->bios_hd, d->bios_sect);
"DISK Geometry:\t%lu cyls/%lu heads/%lu sectors = %lu sectors",
d->bios_cyl, d->bios_hd, d->bios_sect,
d->bios_cyl * d->bios_hd * d->bios_sect);
mvprintw(3, 1, "%10s %10s %10s %8s %8s %8s %8s %8s",
"Offset", "Size", "End", "Name", "PType", "Desc",
"Subtype", "Flags");
@ -263,8 +259,6 @@ diskPartition(Device *dev, Disk *d)
if (rv == -1)
rv = 0;
All_FreeBSD(d, rv);
if (rv)
d->bios_hd = d->bios_sect = d->bios_cyl = 1;
variable_set2(DISK_PARTITIONED, "yes");
record_chunks(d);
clear();
@ -341,9 +335,11 @@ diskPartition(Device *dev, Disk *d)
"Don't forget to use the two slash (/) separator characters!\n"
"It's not possible to parse the field without them.");
if (val) {
d->bios_cyl = strtol(val, &val, 0);
d->bios_hd = strtol(val + 1, &val, 0);
d->bios_sect = strtol(val + 1, 0, 0);
long nc, nh, ns;
nc = strtol(val, &val, 0);
nh = strtol(val + 1, &val, 0);
ns = strtol(val + 1, 0, 0);
Set_Bios_Geom(d, nc, nh, ns);
}
clear();
break;

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: config.c,v 1.58 1996/11/09 18:12:12 jkh Exp $
* $Id: config.c,v 1.59 1996/11/09 19:25:59 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -379,12 +379,6 @@ configResolv(void)
if (!RunningAsInit || file_readable("/etc/resolv.conf"))
return;
if (Mkdir("/etc")) {
msgConfirm("Unable to create /etc directory. Network configuration\n"
"files will therefore not be written!");
return;
}
cp = variable_get(VAR_NAMESERVER);
if (!cp || !*cp)
goto skip;

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: disks.c,v 1.71 1996/11/05 19:53:20 phk Exp $
* $Id: disks.c,v 1.72 1996/11/07 16:40:10 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -77,20 +77,15 @@ print_chunks(Disk *d)
for (i = Total = 0; chunk_info[i]; i++)
Total += chunk_info[i]->size;
if (d->bios_hd <= 1 && d->bios_sect <= 1) {
All_FreeBSD(d, TRUE);
d->bios_hd = d->bios_sect = d->bios_cyl = 1;
}
else if (d->bios_cyl > 65536 || d->bios_hd > 256 || d->bios_sect >= 64) {
if (d->bios_cyl > 65536 || d->bios_hd > 256 || d->bios_sect >= 64) {
dialog_clear_norefresh();
msgConfirm("WARNING: A geometry of %d/%d/%d for %s is incorrect. Using\n"
"a default geometry of 64 heads and 32 sectors. If this geometry\n"
"is incorrect or you are unsure as to whether or not it's correct,\n"
"please consult the Hardware Guide in the Documentation submenu\n"
"or use the (G)eometry command to change it now.", d->bios_cyl, d->bios_hd, d->bios_sect, d->name);
d->bios_hd = 64;
d->bios_sect = 32;
d->bios_cyl = Total / ONE_MEG;
"a more likely geometry. If this geometry is incorrect or you\n"
"are unsure as to whether or not it's correct, please consult\n"
"the Hardware Guide in the Documentation submenu or use the\n"
" (G)eometry command to change it now.",
d->bios_cyl, d->bios_hd, d->bios_sect, d->name);
Sanitize_Bios_Geom(d);
}
attrset(A_NORMAL);
mvaddstr(0, 0, "Disk name:\t");
@ -98,8 +93,9 @@ print_chunks(Disk *d)
attrset(A_REVERSE); addstr(d->name); attrset(A_NORMAL);
attrset(A_REVERSE); mvaddstr(0, 55, "FDISK Partition Editor"); attrset(A_NORMAL);
mvprintw(1, 0,
"DISK Geometry:\t%lu cyls/%lu heads/%lu sectors",
d->bios_cyl, d->bios_hd, d->bios_sect);
"DISK Geometry:\t%lu cyls/%lu heads/%lu sectors = %lu sectors",
d->bios_cyl, d->bios_hd, d->bios_sect,
d->bios_cyl * d->bios_hd * d->bios_sect);
mvprintw(3, 1, "%10s %10s %10s %8s %8s %8s %8s %8s",
"Offset", "Size", "End", "Name", "PType", "Desc",
"Subtype", "Flags");
@ -263,8 +259,6 @@ diskPartition(Device *dev, Disk *d)
if (rv == -1)
rv = 0;
All_FreeBSD(d, rv);
if (rv)
d->bios_hd = d->bios_sect = d->bios_cyl = 1;
variable_set2(DISK_PARTITIONED, "yes");
record_chunks(d);
clear();
@ -341,9 +335,11 @@ diskPartition(Device *dev, Disk *d)
"Don't forget to use the two slash (/) separator characters!\n"
"It's not possible to parse the field without them.");
if (val) {
d->bios_cyl = strtol(val, &val, 0);
d->bios_hd = strtol(val + 1, &val, 0);
d->bios_sect = strtol(val + 1, 0, 0);
long nc, nh, ns;
nc = strtol(val, &val, 0);
nh = strtol(val + 1, &val, 0);
ns = strtol(val + 1, 0, 0);
Set_Bios_Geom(d, nc, nh, ns);
}
clear();
break;

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: config.c,v 1.58 1996/11/09 18:12:12 jkh Exp $
* $Id: config.c,v 1.59 1996/11/09 19:25:59 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -379,12 +379,6 @@ configResolv(void)
if (!RunningAsInit || file_readable("/etc/resolv.conf"))
return;
if (Mkdir("/etc")) {
msgConfirm("Unable to create /etc directory. Network configuration\n"
"files will therefore not be written!");
return;
}
cp = variable_get(VAR_NAMESERVER);
if (!cp || !*cp)
goto skip;

View File

@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
* $Id: disks.c,v 1.71 1996/11/05 19:53:20 phk Exp $
* $Id: disks.c,v 1.72 1996/11/07 16:40:10 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@ -77,20 +77,15 @@ print_chunks(Disk *d)
for (i = Total = 0; chunk_info[i]; i++)
Total += chunk_info[i]->size;
if (d->bios_hd <= 1 && d->bios_sect <= 1) {
All_FreeBSD(d, TRUE);
d->bios_hd = d->bios_sect = d->bios_cyl = 1;
}
else if (d->bios_cyl > 65536 || d->bios_hd > 256 || d->bios_sect >= 64) {
if (d->bios_cyl > 65536 || d->bios_hd > 256 || d->bios_sect >= 64) {
dialog_clear_norefresh();
msgConfirm("WARNING: A geometry of %d/%d/%d for %s is incorrect. Using\n"
"a default geometry of 64 heads and 32 sectors. If this geometry\n"
"is incorrect or you are unsure as to whether or not it's correct,\n"
"please consult the Hardware Guide in the Documentation submenu\n"
"or use the (G)eometry command to change it now.", d->bios_cyl, d->bios_hd, d->bios_sect, d->name);
d->bios_hd = 64;
d->bios_sect = 32;
d->bios_cyl = Total / ONE_MEG;
"a more likely geometry. If this geometry is incorrect or you\n"
"are unsure as to whether or not it's correct, please consult\n"
"the Hardware Guide in the Documentation submenu or use the\n"
" (G)eometry command to change it now.",
d->bios_cyl, d->bios_hd, d->bios_sect, d->name);
Sanitize_Bios_Geom(d);
}
attrset(A_NORMAL);
mvaddstr(0, 0, "Disk name:\t");
@ -98,8 +93,9 @@ print_chunks(Disk *d)
attrset(A_REVERSE); addstr(d->name); attrset(A_NORMAL);
attrset(A_REVERSE); mvaddstr(0, 55, "FDISK Partition Editor"); attrset(A_NORMAL);
mvprintw(1, 0,
"DISK Geometry:\t%lu cyls/%lu heads/%lu sectors",
d->bios_cyl, d->bios_hd, d->bios_sect);
"DISK Geometry:\t%lu cyls/%lu heads/%lu sectors = %lu sectors",
d->bios_cyl, d->bios_hd, d->bios_sect,
d->bios_cyl * d->bios_hd * d->bios_sect);
mvprintw(3, 1, "%10s %10s %10s %8s %8s %8s %8s %8s",
"Offset", "Size", "End", "Name", "PType", "Desc",
"Subtype", "Flags");
@ -263,8 +259,6 @@ diskPartition(Device *dev, Disk *d)
if (rv == -1)
rv = 0;
All_FreeBSD(d, rv);
if (rv)
d->bios_hd = d->bios_sect = d->bios_cyl = 1;
variable_set2(DISK_PARTITIONED, "yes");
record_chunks(d);
clear();
@ -341,9 +335,11 @@ diskPartition(Device *dev, Disk *d)
"Don't forget to use the two slash (/) separator characters!\n"
"It's not possible to parse the field without them.");
if (val) {
d->bios_cyl = strtol(val, &val, 0);
d->bios_hd = strtol(val + 1, &val, 0);
d->bios_sect = strtol(val + 1, 0, 0);
long nc, nh, ns;
nc = strtol(val, &val, 0);
nh = strtol(val + 1, &val, 0);
ns = strtol(val + 1, 0, 0);
Set_Bios_Geom(d, nc, nh, ns);
}
clear();
break;