diff options
-rw-r--r-- | release/Makefile | 44 | ||||
-rw-r--r-- | release/dumpnlist.c (renamed from release/sysinstall/dumpnlist.c) | 10 | ||||
-rw-r--r-- | release/sysinstall/Makefile | 9 | ||||
-rw-r--r-- | release/sysinstall/install.c | 8 | ||||
-rw-r--r-- | release/sysinstall/uc_main.c | 56 | ||||
-rw-r--r-- | sys/amd64/amd64/locore.S | 12 | ||||
-rw-r--r-- | sys/amd64/amd64/locore.s | 12 | ||||
-rw-r--r-- | sys/amd64/amd64/machdep.c | 6 | ||||
-rw-r--r-- | sys/conf/newvers.sh | 4 | ||||
-rw-r--r-- | sys/conf/options.i386 | 3 | ||||
-rw-r--r-- | sys/i386/conf/options.i386 | 3 | ||||
-rw-r--r-- | sys/i386/i386/locore.s | 12 | ||||
-rw-r--r-- | sys/i386/i386/machdep.c | 6 | ||||
-rw-r--r-- | sys/i386/i386/userconfig.c | 69 | ||||
-rw-r--r-- | usr.sbin/sade/Makefile | 9 | ||||
-rw-r--r-- | usr.sbin/sade/install.c | 8 | ||||
-rw-r--r-- | usr.sbin/sysinstall/Makefile | 9 | ||||
-rw-r--r-- | usr.sbin/sysinstall/install.c | 8 |
18 files changed, 202 insertions, 86 deletions
diff --git a/release/Makefile b/release/Makefile index 8f4ad75..f4ff850 100644 --- a/release/Makefile +++ b/release/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.241 1996/10/05 06:10:58 jkh Exp $ +# $Id: Makefile,v 1.242 1996/10/05 07:46:54 jkh Exp $ # # How to roll a release: # @@ -200,8 +200,7 @@ release.3: # You are not supposed to like this :-) release.4: @cd ${.CURDIR} && $(MAKE) ckRELEASEDIR - cd ${.CURDIR}/sysinstall && make depend all \ - KERNEL_NAME=${RD}/kernels/BOOTMFS.std + cd ${.CURDIR}/sysinstall && make depend all rm -rf ${RD}/crunch mkdir -p ${RD}/crunch for j in ${WHICH_CRUNCH} ; do \ @@ -357,7 +356,7 @@ release.7: # +-----------------------------------------+ # -release.8: write_mfs_in_kernel +release.8: write_mfs_in_kernel dumpnlist @cd ${.CURDIR} && $(MAKE) ckRELEASEDIR rm -rf ${RD}/mfsfd mkdir ${RD}/mfsfd @@ -378,6 +377,7 @@ release.8: write_mfs_in_kernel echo "domain 53/udp nameserver" >> ${RD}/mfsfd/stand/etc/services gzip -c ${.CURDIR}/../COPYRIGHT > ${RD}/mfsfd/stand/help/COPYRIGHT.hlp.gz -test -f ${.CURDIR}/install.cfg && cp ${.CURDIR}/install.cfg ${RD}/mfsfd + ./dumpnlist ${RD}/kernels/BOOTMFS.std > ${RD}/mfsfd/stand/symbols # make the small bootfd @echo "Making the small 4MB boot floppy." sh -e ${.CURDIR}/doFS.sh ${RD} ${MNT} ${BOOTMFSSIZE} ${RD}/mfsfd \ @@ -505,6 +505,9 @@ fixit.flp: write_mfs_in_kernel: ${.CURDIR}/write_mfs_in_kernel.c ${CC} ${CFLAGS} -o write_mfs_in_kernel ${.CURDIR}/write_mfs_in_kernel.c +dumpnlist: ${.CURDIR}/dumpnlist.c + ${CC} ${CFLAGS} -o dumpnlist ${.CURDIR}/dumpnlist.c + ckRELEASEDIR: .if !defined(RELEASEDIR) @echo "To make a release RELEASEDIR must be defined" && false @@ -550,9 +553,9 @@ doKERNEL: # doMFSKERN: @cd ${.CURDIR} && $(MAKE) ckRELEASEDIR - rm -f ${RD}/kernels/BOOTMFS.${FSIMAGE} - rm -f /sys/compile/BOOTMFS/mfs_vfsops.o - cd ${.CURDIR}/../sys/i386/conf && \ + @rm -f ${RD}/kernels/BOOTMFS.${FSIMAGE} + @rm -f /sys/compile/BOOTMFS/mfs_vfsops.o + @cd ${.CURDIR}/../sys/i386/conf && \ sed -e '/SYSV/d' \ -e '/pty/d' \ -e '/PROCFS/d' \ @@ -561,22 +564,29 @@ doMFSKERN: -e '/maxusers/s/10/4/' < GENERIC > BOOTMFS && \ echo "options MFS" >> BOOTMFS && \ echo "options NFS_NOSERVER" >> BOOTMFS && \ - echo 'options "MAXCONS=4"' >> BOOTMFS - echo "options \"MFS_ROOT=`cat fs-image.${FSIMAGE}.size`\"" >> \ + echo 'options "MAXCONS=4"' >> BOOTMFS && \ + echo "options USERCONFIG_BOOT" >> BOOTMFS + @echo "options \"MFS_ROOT=`cat fs-image.${FSIMAGE}.size`\"" >> \ ${.CURDIR}/../sys/i386/conf/BOOTMFS cd ${.CURDIR} && ${MAKE} doKERNEL KERNEL=BOOTMFS - rm -rf ${RD}/boot.${FSIMAGE} - mkdir ${RD}/boot.${FSIMAGE} - mv ${RD}/kernels/BOOTMFS ${RD}/kernels/BOOTMFS.${FSIMAGE} - cp ${RD}/kernels/BOOTMFS.${FSIMAGE} ${RD}/boot.${FSIMAGE}/kernel + @rm -rf ${RD}/boot.${FSIMAGE} + @mkdir ${RD}/boot.${FSIMAGE} + @mv ${RD}/kernels/BOOTMFS ${RD}/kernels/BOOTMFS.${FSIMAGE} + @cp ${RD}/kernels/BOOTMFS.${FSIMAGE} ${RD}/boot.${FSIMAGE}/kernel ./write_mfs_in_kernel ${RD}/boot.${FSIMAGE}/kernel \ fs-image.${FSIMAGE} kzip -v ${RD}/boot.${FSIMAGE}/kernel - mv ${RD}/boot.${FSIMAGE}/kernel ${RD}/kernels/MFSKERNEL.${FSIMAGE} - mv ${RD}/boot.${FSIMAGE}/kernel.kz ${RD}/boot.${FSIMAGE}/kernel - ls -l ${RD}/boot.${FSIMAGE}/kernel - rm -f ${RD}/floppies/boot${FSIMAGE}.flp + @mv ${RD}/boot.${FSIMAGE}/kernel ${RD}/kernels/MFSKERNEL.${FSIMAGE} + @mv ${RD}/boot.${FSIMAGE}/kernel.kz ${RD}/boot.${FSIMAGE}/kernel + @ls -l ${RD}/boot.${FSIMAGE}/kernel + @rm -f ${RD}/floppies/boot${FSIMAGE}.flp cat /usr/mdec/rawboot ${RD}/boot.${FSIMAGE}/kernel | \ dd conv=sync of=${RD}/floppies/boot${FSIMAGE}.flp + @echo 'USERCONFIG' > startup_foo + @echo 'intro' >> startup_foo + @echo 'visual' >> startup_foo + dd if=startup_foo of=${RD}/floppies/boot${FSIMAGE}.flp \ + seek=1 bs=512 count=1 conv=sync + @rm -f startup_foo .include <bsd.prog.mk> diff --git a/release/sysinstall/dumpnlist.c b/release/dumpnlist.c index d78c5c5..31f25c1 100644 --- a/release/sysinstall/dumpnlist.c +++ b/release/dumpnlist.c @@ -4,7 +4,6 @@ #include <stdlib.h> #include <nlist.h> #include <stdio.h> -#include "uc_main.h" struct nlist nl[] = { {"_isa_devtab_bio"}, @@ -35,12 +34,11 @@ main(int ac, char **av) perror("nlist"); return 1; } - fprintf(stdout, "struct nlist nl[] = {\n"); + printf("%d\n", sizeof(nl) / sizeof(struct nlist)); for (i = 0; nl[i].n_name; i++) { - fprintf(stdout, "\t{ \"%s\", %d, %d, %d, %ld },\n", - nl[i].n_name, nl[i].n_type, nl[i].n_other, - nl[i].n_desc, nl[i].n_value); + printf("%s\n", nl[i].n_name); + printf("%d %d %d %ld\n", + nl[i].n_type, nl[i].n_other, nl[i].n_desc, nl[i].n_value); } - fprintf(stdout, "};\n"); return 0; } diff --git a/release/sysinstall/Makefile b/release/sysinstall/Makefile index 3ec6943..7105795 100644 --- a/release/sysinstall/Makefile +++ b/release/sysinstall/Makefile @@ -1,6 +1,6 @@ PROG= sysinstall NOMAN= yes -CLEANFILES+= makedevs.c rtermcap dumpnlist kern-nlist.h +CLEANFILES+= makedevs.c rtermcap dumpnlist .PATH: ${.CURDIR}/../disklabel ${.CURDIR}/../../usr.bin/cksum @@ -22,7 +22,7 @@ DPADD= ${LIBDIALOG} ${LIBNCURSES} ${LIBMYTINFO} ${LIBUTIL} ${LIBDISK} LDADD= -ldialog -lncurses -lmytinfo -lutil -ldisk -makedevs.c: Makefile rtermcap dumpnlist +makedevs.c: Makefile rtermcap rm -f makedevs.tmp echo '#include <sys/types.h>' > makedevs.tmp ./rtermcap cons25 | \ @@ -47,11 +47,6 @@ makedevs.c: Makefile rtermcap dumpnlist file2c 'const char termcap_vt100[] = {' ',0};' \ >> makedevs.tmp mv makedevs.tmp makedevs.c -.if defined(KERNEL_NAME) - dumpnlist ${KERNEL_NAME} > kern-nlist.h -.else - dumpnlist /kernel > kern-nlist.h -.endif rtermcap: ${.CURDIR}/rtermcap.c ${CC} -o rtermcap ${.CURDIR}/rtermcap.c -ltermcap diff --git a/release/sysinstall/install.c b/release/sysinstall/install.c index 83f762f..88ec852 100644 --- a/release/sysinstall/install.c +++ b/release/sysinstall/install.c @@ -4,7 +4,7 @@ * This is probably the last program in the `sysinstall' line - the next * generation being essentially a complete rewrite. * - * $Id: install.c,v 1.127 1996/10/04 13:33:43 jkh Exp $ + * $Id: install.c,v 1.128 1996/10/04 14:53:50 jkh Exp $ * * Copyright (c) 1995 * Jordan Hubbard. All rights reserved. @@ -920,14 +920,12 @@ save_userconfig_to_kernel(char *kern) struct list *c_isa, *c_dev, *b_dev; int i, d; - core = uc_open("-incore"); - if (core < 0) { + if ((core = uc_open("-incore")) == NULL) { msgDebug("Can't read in-core information for kernel.\n"); return; } - boot = uc_open(kern); - if (boot < 0) { + if ((boot = uc_open(kern)) == NULL) { msgDebug("Can't read device information for kernel image %s\n", kern); return; } diff --git a/release/sysinstall/uc_main.c b/release/sysinstall/uc_main.c index 4c8b66c..4ec0810 100644 --- a/release/sysinstall/uc_main.c +++ b/release/sysinstall/uc_main.c @@ -24,7 +24,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * library functions for userconfig library * - * $Id: uc_main.c,v 1.5 1996/10/05 02:12:35 jkh Exp $ + * $Id: uc_main.c,v 1.6 1996/10/05 05:51:12 jkh Exp $ */ #include <sys/types.h> @@ -43,10 +43,7 @@ extern int isDebug(void); extern void msgDebug(char *fmt, ...); -#ifdef KERN_NO_SYMBOLS -#include "kern-nlist.h" -#else -static struct nlist nl[] = { +static struct nlist _nl[] = { {"_isa_devtab_bio"}, {"_isa_devtab_tty"}, {"_isa_devtab_net"}, @@ -63,7 +60,6 @@ static struct nlist nl[] = { {"_scsi_tinit"}, {""}, }; -#endif struct kernel * uc_open(char *name){ @@ -71,12 +67,13 @@ uc_open(char *name){ struct kernel *kern; struct stat sb; char kname[80]; - int i = 0; - + int size, i = 0; + struct nlist *nl = _nl; + if (strcmp(name, "-incore") == 0) incore = 1; else - incore=0; + incore = 0; if (incore || (strcmp(name,"-bootfile") == 0)) strncpy(kname, getbootfile(), 79); @@ -86,11 +83,42 @@ uc_open(char *name){ if (isDebug()) msgDebug("uc_open: kernel name is %s, incore = %d\n", kname, incore); - kern=(struct kernel *)malloc(sizeof(struct kernel)); - + kern = (struct kernel *)malloc(sizeof(struct kernel)); + #ifdef KERN_NO_SYMBOLS if (incore) { - kern->nl = nl; + FILE *fp; + + fp = fopen("/stand/symbols", "r"); + if (!fp) { + msgDebug("Couldn't open /stand/symbols file! Punting.\n"); + free(kern); + return NULL; + } + if (fscanf(fp, "%d\n", &size) != 1) { + msgDebug("Unable to get # of name list entries from symbol file.\n"); + free(kern); + return NULL; + } + nl = (struct nlist *)malloc((size + 1) * sizeof(struct nlist)); + for (i = 0; i < size; i++) { + char name[255]; + + if (fgets(name, 255, fp) == NULL) { + msgDebug("Unable to read symbol name from symbol file.\n"); + free(kern); + return NULL; + } + nl[i].n_name = strdup(name); + if (fscanf(fp, "%d %d %d %ld\n", + &(nl[i].n_type), &(nl[i].n_other), &(nl[i].n_desc), &(nl[i].n_value)) != 4) { + msgDebug("Unable to read symbol detail fields from symbol file, entry = %d\n", i); + free(kern); + return NULL; + } + } + fclose(fp); + kern->nl = nl; i = 0; } else @@ -98,8 +126,8 @@ uc_open(char *name){ i = nlist(kname, nl); if (i == -1) { msgDebug("uc_open: kernel %s does not contain symbols.\n", kname); - kern = (struct kernel *)-5; - return kern; + free(kern); + return NULL; } #ifdef KERN_NO_SYMBOLS if (!incore) { diff --git a/sys/amd64/amd64/locore.S b/sys/amd64/amd64/locore.S index bda25dc..bcf8155 100644 --- a/sys/amd64/amd64/locore.S +++ b/sys/amd64/amd64/locore.S @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)locore.s 7.3 (Berkeley) 5/13/91 - * $Id: locore.s,v 1.72 1996/05/27 06:51:46 phk Exp $ + * $Id: locore.s,v 1.73 1996/07/12 06:48:55 bde Exp $ * * originally from: locore.s, by William F. Jolitz * @@ -45,6 +45,7 @@ #include "apm.h" #include "opt_ddb.h" +#include "opt_userconfig.h" #include <sys/errno.h> #include <sys/syscall.h> @@ -520,6 +521,15 @@ olddiskboot: movl 12(%ebp),%eax movl %eax,R(_bootdev) +#if defined(USERCONFIG_BOOT) && defined(USERCONFIG) + movl $0x10200, %esi + movl $R(_userconfig_from_boot),%edi + movl $512,%ecx + cld + rep + movsb +#endif /* USERCONFIG_BOOT */ + ret diff --git a/sys/amd64/amd64/locore.s b/sys/amd64/amd64/locore.s index bda25dc..bcf8155 100644 --- a/sys/amd64/amd64/locore.s +++ b/sys/amd64/amd64/locore.s @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)locore.s 7.3 (Berkeley) 5/13/91 - * $Id: locore.s,v 1.72 1996/05/27 06:51:46 phk Exp $ + * $Id: locore.s,v 1.73 1996/07/12 06:48:55 bde Exp $ * * originally from: locore.s, by William F. Jolitz * @@ -45,6 +45,7 @@ #include "apm.h" #include "opt_ddb.h" +#include "opt_userconfig.h" #include <sys/errno.h> #include <sys/syscall.h> @@ -520,6 +521,15 @@ olddiskboot: movl 12(%ebp),%eax movl %eax,R(_bootdev) +#if defined(USERCONFIG_BOOT) && defined(USERCONFIG) + movl $0x10200, %esi + movl $R(_userconfig_from_boot),%edi + movl $512,%ecx + cld + rep + movsb +#endif /* USERCONFIG_BOOT */ + ret diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c index b061346..91c33fe 100644 --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $Id: machdep.c,v 1.205 1996/09/27 13:38:02 peter Exp $ + * $Id: machdep.c,v 1.206 1996/09/28 22:37:33 dyson Exp $ */ #include "npx.h" @@ -380,6 +380,10 @@ again: for (i = 1; i < ncallout; i++) callout[i-1].c_next = &callout[i]; +#if defined(USERCONFIG_BOOT) && defined(USERCONFIG) + boothowto |= RB_CONFIG; +#endif + if (boothowto & RB_CONFIG) { #ifdef USERCONFIG userconfig(); diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 5f082c4..e7ffe1c 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -32,12 +32,12 @@ # SUCH DAMAGE. # # @(#)newvers.sh 8.1 (Berkeley) 4/20/94 -# $Id: newvers.sh,v 1.23 1996/07/12 11:21:57 peter Exp $ +# $Id: newvers.sh,v 1.24 1996/08/04 22:34:00 wosch Exp $ TYPE="FreeBSD" REVISION="2.2" BRANCH="CURRENT" -RELEASE="${REVISION}-${BRANCH}" +RELEASE=2.2-961004-SNAP SNAPDATE="" if [ "X${SNAPDATE}" != "X" ]; then RELEASE="${RELEASE}-${SNAPDATE}" diff --git a/sys/conf/options.i386 b/sys/conf/options.i386 index c14fff0..2369dad 100644 --- a/sys/conf/options.i386 +++ b/sys/conf/options.i386 @@ -1,4 +1,4 @@ -# $Id: options.i386,v 1.19 1996/10/01 03:00:36 pst Exp $ +# $Id: options.i386,v 1.20 1996/10/02 03:48:09 pst Exp $ BOUNCEPAGES opt_bounce.h USER_LDT MATH_EMULATE opt_math_emulate.h @@ -41,3 +41,4 @@ ATAPI_STATIC opt_atapi.h USERCONFIG opt_userconfig.h VISUAL_USERCONFIG opt_userconfig.h +USERCONFIG_BOOT opt_userconfig.h diff --git a/sys/i386/conf/options.i386 b/sys/i386/conf/options.i386 index c14fff0..2369dad 100644 --- a/sys/i386/conf/options.i386 +++ b/sys/i386/conf/options.i386 @@ -1,4 +1,4 @@ -# $Id: options.i386,v 1.19 1996/10/01 03:00:36 pst Exp $ +# $Id: options.i386,v 1.20 1996/10/02 03:48:09 pst Exp $ BOUNCEPAGES opt_bounce.h USER_LDT MATH_EMULATE opt_math_emulate.h @@ -41,3 +41,4 @@ ATAPI_STATIC opt_atapi.h USERCONFIG opt_userconfig.h VISUAL_USERCONFIG opt_userconfig.h +USERCONFIG_BOOT opt_userconfig.h diff --git a/sys/i386/i386/locore.s b/sys/i386/i386/locore.s index bda25dc..bcf8155 100644 --- a/sys/i386/i386/locore.s +++ b/sys/i386/i386/locore.s @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)locore.s 7.3 (Berkeley) 5/13/91 - * $Id: locore.s,v 1.72 1996/05/27 06:51:46 phk Exp $ + * $Id: locore.s,v 1.73 1996/07/12 06:48:55 bde Exp $ * * originally from: locore.s, by William F. Jolitz * @@ -45,6 +45,7 @@ #include "apm.h" #include "opt_ddb.h" +#include "opt_userconfig.h" #include <sys/errno.h> #include <sys/syscall.h> @@ -520,6 +521,15 @@ olddiskboot: movl 12(%ebp),%eax movl %eax,R(_bootdev) +#if defined(USERCONFIG_BOOT) && defined(USERCONFIG) + movl $0x10200, %esi + movl $R(_userconfig_from_boot),%edi + movl $512,%ecx + cld + rep + movsb +#endif /* USERCONFIG_BOOT */ + ret diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c index b061346..91c33fe 100644 --- a/sys/i386/i386/machdep.c +++ b/sys/i386/i386/machdep.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $Id: machdep.c,v 1.205 1996/09/27 13:38:02 peter Exp $ + * $Id: machdep.c,v 1.206 1996/09/28 22:37:33 dyson Exp $ */ #include "npx.h" @@ -380,6 +380,10 @@ again: for (i = 1; i < ncallout; i++) callout[i-1].c_next = &callout[i]; +#if defined(USERCONFIG_BOOT) && defined(USERCONFIG) + boothowto |= RB_CONFIG; +#endif + if (boothowto & RB_CONFIG) { #ifdef USERCONFIG userconfig(); diff --git a/sys/i386/i386/userconfig.c b/sys/i386/i386/userconfig.c index c034c41..bb9f8f0 100644 --- a/sys/i386/i386/userconfig.c +++ b/sys/i386/i386/userconfig.c @@ -46,7 +46,7 @@ ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF ** THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ** - ** $Id: userconfig.c,v 1.51 1996/10/03 01:22:22 jkh Exp $ + ** $Id: userconfig.c,v 1.52 1996/10/03 07:51:40 jkh Exp $ **/ /** @@ -121,8 +121,32 @@ static struct isa_device *isa_devlist; /* list read by dset to extract changes */ -#define putchar(x) cnputc(x) + +#ifdef USERCONFIG_BOOT +char userconfig_from_boot[512] = ""; +char *next = userconfig_from_boot; +int +getchar(x) +{ + if (next == userconfig_from_boot) { + if (strncmp(next, "USERCONFIG\n", 11)) { + next++; + strcpy(next, "quit\n"); + } else { + next += 11; + } + } + if (*next) { + return (*next++); + } else { + return cngetc(); + } +} +#else /* !USERCONFIG_BOOT */ #define getchar() cngetc() +#endif /* USERCONFIG_BOOT */ + +#define putchar(x) cnputc(x) #ifdef VISUAL_USERCONFIG static struct isa_device *devtabs[] = { isa_devtab_bio, isa_devtab_tty, isa_devtab_net, @@ -2187,7 +2211,7 @@ visuserconfig(void) * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: userconfig.c,v 1.51 1996/10/03 01:22:22 jkh Exp $ + * $Id: userconfig.c,v 1.52 1996/10/03 07:51:40 jkh Exp $ */ #include "scbus.h" @@ -2241,6 +2265,7 @@ static int set_device_enable(CmdParm *); static int set_device_disable(CmdParm *); static int quitfunc(CmdParm *); static int helpfunc(CmdParm *); +static int introfunc(CmdParm *); static int lineno; @@ -2269,6 +2294,7 @@ static Cmd CmdList[] = { { "ex", quitfunc, NULL }, /* exit (quit) */ { "f", set_device_flags, int_parms }, /* flags dev mask */ { "h", helpfunc, NULL }, /* help */ + { "intro", introfunc, NULL }, /* intro screen */ { "iom", set_device_mem, addr_parms }, /* iomem dev addr */ { "ios", set_device_iosize, int_parms }, /* iosize dev size */ { "ir", set_device_irq, int_parms }, /* irq dev # */ @@ -2292,7 +2318,7 @@ userconfig(void) int rval; Cmd *cmd; - printf("\nFreeBSD Kernel Configuration Utility - Version 1.0\n" + printf("\nFreeBSD Kernel Configuration Utility - Version 1.1\n" " Type \"help\" for help" #ifdef VISUAL_USERCONFIG " or \"visual\" to go to the visual\n" @@ -2527,6 +2553,41 @@ helpfunc(CmdParm *parms) return 0; } +static void +center(int y, char *str) +{ + putxy((80 - strlen(str)) / 2, y, str); +} + +static int +introfunc(CmdParm *parms) +{ + int y = 3; + + clear(); + center(y, "!iKernel Configuration Editor!n"); + y += 2; + putxy(2, y++, "In this next screen, you will be shown a full list of all the device"); + putxy(2, y++, "drivers which are available in this copy of the OS kernel. This is"); + putxy(2, y++, "!inot!n a list of devices which you necessarily have, simply those"); + putxy(2, y++, "which this kernel is capable of supporting."); + ++y; + putxy(2, y++, "You should go through each device category and delete all entries"); + putxy(2, y++, "(using the DELETE key) for devices that you do not have. This is an"); + putxy(2, y++, "important step since it minimizes the chance of conflicts and also"); + putxy(2, y++, "makes the kernel boot faster since there's no time wasted in trying to"); + putxy(2, y++, "detect non-existant hardware. If you see an entry for a device which you"); + putxy(2, y++, "you !ido!n have and it's not a PCI device (which will be auto-configured),"); + putxy(2, y++, "be sure that its configuration parameters match your actual hardware."); + putxy(2, y++, "To edit a device's configuration, simply press ENTER while over it."); + putxy(2, y++, "Once you are satisfied with your device configuration, press Q to"); + putxy(2, y++, "proceed with the booting process."); + ++y; + center(y, "!iPress a key to continue!n"); + cngetc(); + return 0; +} + static int lsdevtab(struct isa_device *dt) { diff --git a/usr.sbin/sade/Makefile b/usr.sbin/sade/Makefile index 3ec6943..7105795 100644 --- a/usr.sbin/sade/Makefile +++ b/usr.sbin/sade/Makefile @@ -1,6 +1,6 @@ PROG= sysinstall NOMAN= yes -CLEANFILES+= makedevs.c rtermcap dumpnlist kern-nlist.h +CLEANFILES+= makedevs.c rtermcap dumpnlist .PATH: ${.CURDIR}/../disklabel ${.CURDIR}/../../usr.bin/cksum @@ -22,7 +22,7 @@ DPADD= ${LIBDIALOG} ${LIBNCURSES} ${LIBMYTINFO} ${LIBUTIL} ${LIBDISK} LDADD= -ldialog -lncurses -lmytinfo -lutil -ldisk -makedevs.c: Makefile rtermcap dumpnlist +makedevs.c: Makefile rtermcap rm -f makedevs.tmp echo '#include <sys/types.h>' > makedevs.tmp ./rtermcap cons25 | \ @@ -47,11 +47,6 @@ makedevs.c: Makefile rtermcap dumpnlist file2c 'const char termcap_vt100[] = {' ',0};' \ >> makedevs.tmp mv makedevs.tmp makedevs.c -.if defined(KERNEL_NAME) - dumpnlist ${KERNEL_NAME} > kern-nlist.h -.else - dumpnlist /kernel > kern-nlist.h -.endif rtermcap: ${.CURDIR}/rtermcap.c ${CC} -o rtermcap ${.CURDIR}/rtermcap.c -ltermcap diff --git a/usr.sbin/sade/install.c b/usr.sbin/sade/install.c index 83f762f..88ec852 100644 --- a/usr.sbin/sade/install.c +++ b/usr.sbin/sade/install.c @@ -4,7 +4,7 @@ * This is probably the last program in the `sysinstall' line - the next * generation being essentially a complete rewrite. * - * $Id: install.c,v 1.127 1996/10/04 13:33:43 jkh Exp $ + * $Id: install.c,v 1.128 1996/10/04 14:53:50 jkh Exp $ * * Copyright (c) 1995 * Jordan Hubbard. All rights reserved. @@ -920,14 +920,12 @@ save_userconfig_to_kernel(char *kern) struct list *c_isa, *c_dev, *b_dev; int i, d; - core = uc_open("-incore"); - if (core < 0) { + if ((core = uc_open("-incore")) == NULL) { msgDebug("Can't read in-core information for kernel.\n"); return; } - boot = uc_open(kern); - if (boot < 0) { + if ((boot = uc_open(kern)) == NULL) { msgDebug("Can't read device information for kernel image %s\n", kern); return; } diff --git a/usr.sbin/sysinstall/Makefile b/usr.sbin/sysinstall/Makefile index 3ec6943..7105795 100644 --- a/usr.sbin/sysinstall/Makefile +++ b/usr.sbin/sysinstall/Makefile @@ -1,6 +1,6 @@ PROG= sysinstall NOMAN= yes -CLEANFILES+= makedevs.c rtermcap dumpnlist kern-nlist.h +CLEANFILES+= makedevs.c rtermcap dumpnlist .PATH: ${.CURDIR}/../disklabel ${.CURDIR}/../../usr.bin/cksum @@ -22,7 +22,7 @@ DPADD= ${LIBDIALOG} ${LIBNCURSES} ${LIBMYTINFO} ${LIBUTIL} ${LIBDISK} LDADD= -ldialog -lncurses -lmytinfo -lutil -ldisk -makedevs.c: Makefile rtermcap dumpnlist +makedevs.c: Makefile rtermcap rm -f makedevs.tmp echo '#include <sys/types.h>' > makedevs.tmp ./rtermcap cons25 | \ @@ -47,11 +47,6 @@ makedevs.c: Makefile rtermcap dumpnlist file2c 'const char termcap_vt100[] = {' ',0};' \ >> makedevs.tmp mv makedevs.tmp makedevs.c -.if defined(KERNEL_NAME) - dumpnlist ${KERNEL_NAME} > kern-nlist.h -.else - dumpnlist /kernel > kern-nlist.h -.endif rtermcap: ${.CURDIR}/rtermcap.c ${CC} -o rtermcap ${.CURDIR}/rtermcap.c -ltermcap diff --git a/usr.sbin/sysinstall/install.c b/usr.sbin/sysinstall/install.c index 83f762f..88ec852 100644 --- a/usr.sbin/sysinstall/install.c +++ b/usr.sbin/sysinstall/install.c @@ -4,7 +4,7 @@ * This is probably the last program in the `sysinstall' line - the next * generation being essentially a complete rewrite. * - * $Id: install.c,v 1.127 1996/10/04 13:33:43 jkh Exp $ + * $Id: install.c,v 1.128 1996/10/04 14:53:50 jkh Exp $ * * Copyright (c) 1995 * Jordan Hubbard. All rights reserved. @@ -920,14 +920,12 @@ save_userconfig_to_kernel(char *kern) struct list *c_isa, *c_dev, *b_dev; int i, d; - core = uc_open("-incore"); - if (core < 0) { + if ((core = uc_open("-incore")) == NULL) { msgDebug("Can't read in-core information for kernel.\n"); return; } - boot = uc_open(kern); - if (boot < 0) { + if ((boot = uc_open(kern)) == NULL) { msgDebug("Can't read device information for kernel image %s\n", kern); return; } |