*BSD News Article 16171


Return to BSD News archive

Xref: sserve comp.os.386bsd.announce:54 comp.os.386bsd.questions:2490
Path: sserve!newshost.anu.edu.au!munnari.oz.au!spool.mu.edu!uwm.edu!cs.utexas.edu!sun-barr!ames!agate!agate!usenet
From: burgess@hrd769.brooks.af.mil (Dave Burgess)
Newsgroups: comp.os.386bsd.announce,comp.os.386bsd.questions
Subject: 386bsd/NetBSD FAQ Section 2
Followup-To: comp.os.386bsd.questions
Date: 15 May 1993 22:12:10 -0700
Organization: University of California, Berkeley
Lines: 806
Sender: cgd@agate.berkeley.edu
Approved: 386bsd-announce-request@agate.berkeley.edu
Message-ID: <9305131743.AA13414@hrd769.brooks.af.mil>
NNTP-Posting-Host: agate.berkeley.edu



Section 2.	(Common installation questions)

Table of Contents:  Section 2.

	2.0	Install process
	2.0.1	Tiny boot disk (versions and media formats)
	2.0.1.1	Where does extract go when I reboot?
	2.0.1.2	I put the floppy in and try to boot, and nothing happens.  
		What now?
	2.0.1.3a	The floppy booted, but now the hard disk won't boot?
	2.0.1.3b	I am trying to reinstall.  I run install and it 
		loops asking me if I want to use the whole disk?
	2.0.1.4	There are a bunch of flashing colored things on the screen.  
		Now what?
	2.0.2	Fix-it boot disk 
	2.1	Binary distribution
	2.2	Source distribution
	2.3	Additional software distribution
	2.4	Patch-kit
	2.5	Configuration
	2.5.1	Partitions
	2.5.2	Common Disk Label Problems.
	2.5.2.1	Swap space.
	2.5.2.2	Increasing the 386bsd partition size.
	2.5.3	Dual boot possibilities
	2.6	Common installation problems.
	2.6.1	Swap space not identified correctly.
	2.6.2	Endless reboot cycles.
	2.6.3	The computer just sits there, or 'that isn't right'.
	2.6.3.1	The boot disk works all right on one computer but not another. 
	2.6.3.2 The screen has "flashing multicolored characters and 
		ptdi81061 prompt" error?
	2.6.3.3a	I get the error "isr 15 and error: isr 17" on an 
		NE2000 card.
	2.6.3.3b	I have some card on IRQ2 and it doesn't work; why?
	2.6.3.4	Some of my SCSI devices (like a tape) don't work; why?
	2.6.3.5	I try to run 'ps' or 'w' and get ': cannot get namelist'
	2.6.3.6	Why don't the man pages for "magic" and "file" work?
	2.6.3.7	Why is apropos broke?
	2.6.3.8 I get a 'Floating point constant out of range' when I try to 
		compile package 'n'.  What is broke?

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	
2.0	Install process
	
	The bsd386 system is distributed in many ways.  One of the most 
	common is via DOS diskettes, (either 3 1/2 or 5 1/4, both high 
	density) with the actual distribution being a 'cpio archive' broken 
	into 240K pieces.  This allows the distribution to fit onto a 
	minimum number of floppies. 
	
	Once the files are on floppies, thoughts usually turn to questions 
	about how to install the boot image on a floppy.  The rawrite 
	program (for DOS) is used to write the bootable images (dist.fs and 
	fixit.fs) onto floppies.  The same image can used for 3 1/2 and 
	5 1/4 high density diskettes.  Low density diskettes are not 
	supported in this version of 386bsd.
	
	Once the bootable images are written onto the floppies, insert 
	the dist.fs disk into the A: drive and reboot.  If the system does 
	not boot, see section 2.5 below for more information.
	
	If the disk boots, type install and proceed to use the 
	INSTALL.NOTES to get more information.
	
	Problems with the install are either related to hardware (i.e. Do 
	you want to install on your T.V.?) or software.  Of the hardware 
	issues, the most common FAQs are usually straight out of the 
	installation notes.  Of the software issues, there are only two 
	that really concern us.  The first is bad files.
	
	On some systems, files that are loaded from floppy appear to 
	'go bad' when they arrive on the hard disk.  Try some of these 
	solutions:

	- You forgot binary.  Don't get insulted.  Those of us that FTP 
	for a living forget sometimes.  If so, the distribution will come 
	out with all different sizes and install will complain about every 
	disk.
	
	- One or two of the files are no good.  Try getting them again.  
	As a  precaution, rename the bad files on your hard drive to names 
	like foo.1 and bob.23.  Copy the files again from floppy.  If they 
	are still bad, rename the file, and the one immediately before the 
	first bad file (bin01.23 if bin02.24 is bad) and copy them again.  
	If they are still bad, download those files again from the 
	distribution site (including the one before and after the bad one) 
	and try again.  
	    The reason for renaming the files is that sometimes, especially 
	with drive that do not auto-magically record bad sectors, you could 
	copy a distribution file onto a bad spot on the disk.  If this 
	happens, you want to isolate the bad spot.  The easiest way to do 
	that is just leave the bad file on it.
	
	- Keep trying, these same files have been used by literally 
	thousands of people to install 386bsd.
	

2.0.1	Tiny boot disk  (versions and media formats)
	
	There is currently one official boot disk, referred to as the 
	"Tiny" boot disk.  In addition, there is at least one patched 
	unofficial boot disk available from agate and its mirror sites.

	There are a few FAQs from the boot/install disk.


2.0.1.1	Where does extract go when I reboot?
	
	It was in /tmp, which is cleaned the first time you reboot the 
	system.  If you have just booted from the hard drive for the second 
	time, chances are you just wiped out extract.  It is not really 
	needed, since the instructions for building your own install are 
	included in section 2.5.2 of the FAQ, under custom installation.

	
2.0.1.2	I put the floppy in and try to boot, and nothing happens.  What now?

	This is usually referred to as the Compaq boot problem.  The easiest 
	solution is to get a patched boot disk.  The normal source for this 
	disk is agate (also known by its real name agate.berkeley.edu) in 
	the directory /pub/386BSD/386bsd-0.1/unofficial/patchkit.


2.0.1.3a	The floppy booted, but now the hard disk won't boot?
2.0.1.3b	I am trying to reinstall.  I run install and it loops asking
	          me if I want to use the whole disk?
	
	The most likely culprit is your hard disk controller.  It is 
	probably doing some type of disk translation for you.  If this is 
	the case (assume it is) then you will need to find out the real 
	disk controller geometry, and rewrite your disk label.  See section 
	2.6.2, but before doing that get the program pfdisk.exe from agate 
	(It is out there, somewhere in the ~unofficial/ref-tfs stuff).  
	This program will tell you what the controller geometry is (right 
	before it reboots your computer).  Make the disklabel agree with 
	this program and your system should boot.  You may have to 
	reinstall, but at least your disklabel will be right.


2.0.1.4	There are a bunch of flashing colored things on the screen.  Now what?
	
	See section 2.6.3 below.  It gives a rather detailed description of 
	the cause and solution.

	
2.0.2	Fix-it boot disk 
	
	The fix-it disk contains a series of programs that are 
	particularly handy for 'fixing' your disk in case you can't get 
	logged in.  It includes the disklabel program and other utilities 
	for system maintenance.


2.1	Binary distribution

	The binary distribution consists of virtually all of the programs 
	that a typical Unix system would be expected to have.  The list 
	includes mail, uucp, GCC version 1.39, and others.
	
	Known problems with the binary distribution include the following:
	
	1.  Mtools as shipped in the bindist does not always work.  The 
	ones on the install disk seem to work fine.
	
	2.  The install script built into the binary distribution does 
	not correctly install all of the files and symbolic links that it 
	should.  For example,  some of the symbolic links to the 
	/usr/include directory are botched up.
	
	3.  'tip', the modem control program, does not always work right 
	out of the box.
	
	4.  Any program that relies on a valid symbol table in the kernel 
	(e.g. ps) will not work because the kernel is stripped so that it 
	will fit onto the bootable disk.


2.2	Source distribution

	The source distribution contains all of the source code for every 
	program in the bindist.  Known problems (which are fixed in the 
	patchkit) include the following:
	
	1.  There is an error message during install about install.src01 
	not being found.  It is not an error, there isn't an install.src01.  
	Think of it as Bill and Lynne's idea of a practical joke.
	
	2.  There are several symbolic links that are not made correctly.  
	In addition, there are several files that should have been deleted 
	(to ensure clean 'make's) before the files were packed.  This is 
	fixed by the patchkit, as of 0.2.3.
	  
	3.  The /usr/src tree does not compile cleanly.  This is fixed by 
	the patchkit, as of 0.2.3.
	

2.3	Additional software distribution

	The etc distribution contains source trees for many programs that 
	are of interest to 386bsd users.  The complete ISO software 
	development environment, as well as many additional software 
	packages (and all of the games) are included in this distribution.

	The most common problem with the etc distribution is the error 
	"too many files open".  Followed closely by "install.etc01 not 
	found".  The latter is a annoyance (see above) but the former can 
	be easily overcome in a couple of ways.
	
	The "too many files open" is a result of the "cat" command leaving 
	files open after it has read a file.   Dwight E. Cass (his email 
	address is dec@lazarus.nrtc.northrop.com) has provided us with this 
	anecdotal work around for his own experiences:
	
	--------------------------------------------------------------------
	So - back to installation.  This time, when I get to the etc01 
	partition, I am a bit more awake, so I run it from csh (with the 
	open file limit at 256).  Works pretty well - but complains at the 
	end that it could not do the final configuration because it could 
	not find the configuration file - I checked the MANIFEST and the 
	file is not there, so I finally decided to ignore the message (but 
	it was bothersome!)  Once etc01 was done - source was easy ... and 
	I am now up and running, and quite impressed!!!
	--------------------------------------------------------------------
	
	Another method is to use a loop construct in the Bourne shell.  For 
	example:
	
	for i in (etc01.*)
	do
	  cat $i
	done | compress -d | cpio -idalmu
	
	will also solve the problem handily.  This solution solves the problem
	by running cat multiple times, with one file each.  Since cat now only
	has one file, there are no limits on the number of files that can be
	used for the distibution set.
	
2.4	Patch-kit
	
	Rod Grimes is the patchkit coordinator.  It is his job to ensure 
	that patches suggested by the 386bsd user community integrate into 
	the current patchkit and do not cause new problems.  His cadre of 
	dedicated and professional patch writers and testers work at a 
	fever pitch preparing and disseminating patches.

	There are two mailing lists dedicated to the patchkit.  They are as 
	follows:

	386bsd-patchkit@cs.montana.edu,  which is primarily for discussion of
		up-coming patches and patchkit philosophy.
	
	patches@cs.montana.edu, which is dedicated to disseminating new, 
		untested patches.
	
	The current version of the patchkit is 0.2.3, which has absolutely 
	no relationship with the new version of 386bsd.  The next version 
	of the patchkit (0.2.4) is in alpha testing and will be released 
	when it is fully tested.


2.5	Configuration

	By far, the most common configuration questions are partitioning, 
	followed closely by all of the other software in the system.  
	Sendmail and named are also problems occasionally, but the 
	documentation that comes with them usually gets you through.  If 
	you run into a problem, post a question to comp.os.386bsd.questions.  

	A less frequently asked question is "Where can I get info on how 
	to configure a kernel?"  The answer to this question has been 
	provided by Richard Murphey (email address rich@Rice.edu).  
	
	--------------------------------------------------------------------
	Ready-to-print PostScript files for each section of the net2 system 
	maintainer's manual are on nova.cc.purdue.edu in 
	pub/386bsd/submissions/bsd.manuals.
	
	smm.02.config.ps.Z describes kernel configuration for the vax, 
	however some of it is relevant to 386BSD.  There is no freely 
	available rewrite for 386BSD that I know of.  
	--------------------------------------------------------------------



2.5.1	Partitions

	This section describes many of the questions that people ask about 
	hard disk partitioning.
	
	The first is a brief explanation of the BSD system disk partitions.
	
	It important to understand how the BSD partitions the disk.  There 
	are two partition tables on the disk.  The first is the DOS partition 
	table, with it's four partitions and obscure partition types.  These 
	partitions are fixed at specific locations on the disk and are 
	maintained by the DOS program, fdisk, and its Unix relatives.  This 
	partition has four numbered partitions, with the bootable DOS 
	partition being partition 1, etc.  These are also the partitions 
	with the partition types like 0xA5.

	The BSD partition table supplements the DOS partition table.  The 
	entries in this table are meaningful to BSD.  There are eight 
	partitions in the BSD partition table, and they are normally 
	lettered from a: to h:.  This partition table is not only usable 
	by BSD, but it is also the only one that BSD uses.

	The two different partition tables can happily coexist on the disk 
	drive.  An example might help explain it.
	
	A DOS partition table has four partitions:
	1:  DOS
	2:  DOS-extended
	3:  Linux
	4:  386bsd
	
	Within partition 4:, there are eight BSD partitions:
	a:	/
	b:	swap
	c:	Describes the same area as 4: (above)
	d:	Describes the WHOLE DISK, including the other partition areas.
	e:	/usr
	f:	/something
	g:	/something-else
	h:	/some_third_thing
	
	If the disk is a 100Meg Disk, and is divided equally among the 4 DOS 
	partitions, That means that 25Meg is available for 386bsd.  Let's 
	look at an extended example:
	
	DOS occupies tracks 0-24
	DOS-extended occupies tracks 25-49
	Linux occupies tracks 50-74
	386bsd occupies tracks 75-99
	
	In the BSD partition table, a: will start at track 75, as will c:.  
	The a: partition is generally considered to be the root (/) 
	partition, and is usually the first physical partition.  The d: 
	partition will start at track 0 (since that is where the disk 
	starts) and the other bsd partitions will start between 75 and 99.
	
	Cgd posted a description of how to manually install 386bsd and 
	create 'real' BSD partitions.  It is excerpted below:
	
	--------------------------------------------------------------------
	HOW TO GET 386bsd 0.1 INSTALLED WITH "REAL" PARTITIONING:
	
	(remember, if things don't work, they might be in places that aren't 
	normally looked in... things should work as below, but you might 
	have to use explicit paths occasionally... the 'better' stuff -- 
	mount, umount, cp, etc... is in /usr/distbin on the fixit floppy...  
	even mknod is there, if the devices you need aren't on the fixit 
	floppy...) 

	(1) boot the fixit floppy
	(2) disklabel the disk as appropriate
	(3) newfs the partitions
	(4) mount the new root partition under /mnt
	(5) mkdir /mnt/usr
	(6) mount the new /usr partition under /mnt/usr
	(7) cpio directory-by-directory (recursively -- by hand!) the entire
		contents of the fixit floppy to the hard drive
	
		you'll do something like:
	
		cd /
		ls | cpio -pdalmu /mnt
		cd /sbin
		ls | cpio -pdalmu /mnt/sbin
		cd /usr
		ls | cpio -pdalmu /mnt/usr
		cd /usr/bin
		ls | cpio -pdalmu /mnt/usr/bin
	
		etc.  yes, it's tiring.
	
	(8) copy /usr/distbin/mount and /usr/distbin/umount to /mnt (so that
		they'll be in the new root partition, so you can mount the
		new /usr partition...)
	(9) shutdown
		and the eject the floppy.
	(10) reboot off the hard drive, the fsck -p <root raw device>
		If there are any errors, after the fsck is done, hit
		ctl-alt-delete, and repeat this step.
	(11) fsck -p <usr raw device>
	(12) mount -u <root device> /
	(13) mount <usr device> /usr
	(14) insert 0.1 boot/install floppy (dist.fs) into floppy drive
		and "mount /dev/fd0a /mnt"
	(15) cd /mnt
		and then
		usr/bin/zcat etc/baselist.Z | usr/bin/cpio -pdalmu /
	(16) cd /
		and then
	/mnt/usr/bin/zcat /mnt/etc/baseutils.cpio.Z | /mnt/usr/bin/cpio -idalmu
	(17) umount /mnt	then eject the floppy
	(18) umount /usr
	(19) shutdown
	(20) reboot off the hard drive, and get all of the various files (the
		bindist files, srcdist files, etc...).
		I put them into /usr/tmp, because there wasn't enough space
		in /tmp (because it was on a small root partition...).
	(21) cd / ; cat <all the binary files> | uncompress | cpio -idalmu
	(22) rm <all the binary files>
	(23) put your hostname into "/etc/myname" and put your ip addr/hostname
		into /etc/hosts.
	(24) make an fstab for yourself.  specifically, you want something like:
		<root device name>	/	ufs rw 1 1
		<usr device name>	/usr	ufs rw 1 2
	
	congratulations!  you now have a working system!
	
	you can repeat step 21 for the srcdist and etcdist files, as well, 
	if you wish...


2.5.2	Common Disk Label Problems.
2.5.2.1	Swap space.

	Nate Williams provides a short tutorial on swap space in 386bsd, 
	excerpted below:
	
	To be able to use additional swap partitions, you need to specify 
	them in the config (/sys/i386/conf/WHATEVER) file.
	
	Ex:
	
	config          "386bsd"        root on sd0 swap on sd0 and sd1
	
	Allows swap on sd0 and sd1
	
	config          "386bsd"        root on wd0 swap on wd0 and sd0
	
	This would allow swap on both wd0 and sd0 OR whichever (both/either) 
	of the two had a valid disklabel.  Note, you can really screw 
	yourself up with this, if you should happen to not want to swap to 
	this partition, and it happens to be the first one found...
	
	The problem of not being able to swap was from the config file not 
	having wd1 in it.
	
	controller      wd0     at isa? port "IO_WD1" bio irq 14 vector wdintr
	disk            wd0     at wd0 drive 0
	disk            wd0     at wd0 drive 1
	                ^^^                  
	This should have been wd1, and that's why it didn't get added by 
	default.  I may be wrong, but I have swapped to two different 
	partitions w/out any problems since patchkit 0.1, and there aren't 
	any patches to swap386bsd.c
	   
	Once the install is complete, swapping will not be enabled on the 
	second drive.  The following steps can be used to make sure that it 
	is enabled correctly.
	
	If there is a 'b' partition in your root disk 386bsd partition, it 
	will be used automatically (MAKE SURE B is not the start of the 
	disk, and MAKE SURE b doesn't contain any data you wish to keep).  
	If b starts at disk offset 0, it will promptly wipe out your boot 
	sectors and other important disk stuff. 
	
	If you want an additional partition, put an entry similar to this 
	in /etc/fstab:
	
	/dev/sd1b                       none                    swap    sw
	
	I'm swapping on sd0b and sd1b, and 'swapon' is run on this partition 
	on bootup.
	
	Swapping to a file is still not implemented.  Rumor has it 0.2 will 
	have such things.  If someone wanted to add it, the vnops_* files 
	would have to be radically modified to get it to work correctly.

2.5.2.2	Increasing the 386bsd partition size.

	Once the install is finished, the system has it's 386bsd partition.
	This includes a 5Meg swap partition, which is altogether too small.  
	There is no easy way to increase this swap partition without 
	relabeling the drive.   Unfortunately, relabeling usually involves 
	reinstalling.  That involves redoing just about everything you have 
	just finished doing.  The good news is that if all you have done is 
	the base installation, you don't have a lot of time and energy 
	invested in the system.  Take the time, and make sure that your swap 
	space is at least as big as your memory; many people recommend even
	larger.  There is no real limit to the size that this space can
	take.  If you have two disk drives, you can have space space on both.
	Simply follow the instructions above, and you will be all set.


2.5.3	Dual boot possibilities
	
	There are many people that wish to be able to boot DOS or 386bsd 
	at will.  There are several programs that allow this.  os-bs is 
	one such program, and there are three or four others.  There are 
	problems in some configurations using the os/2 boot manager for 
	this, so beware.  
	
	In addition to being able to boot from either of two partitions, 
	some people want to operate more than one disk drive (and perhaps 
	boot from either as well).  Christoph Robitschko provided one 
	description of this.  Since there are virtually limitless 
	possibilities for configurations for BSD systems, it will be 
	impossible to answer all of the possible questions about these 
	features.  Many people operate with multiple disk drives on one 
	or more controllers.  
	
2.6	Common installation problems.

	There are many common installation problems.  This section covers
	the most basic and common of these problems.  In addition to this
	section, you should also read through the other sections of the
	FAQ, since many of the less common questions are answered in other
	places in the doc.

2.6.1	Swap space not identified correctly.
	
	There are several levels of problems associated with swap space.  
	The first is that the swap space on a second disk will not get 
	used if it is not in your /etc/fstab file.  Your /etc/fstab should 
	have the swap space identified.  The following is a representative 
	fstab:
	
	/dev/wd0a		/		ufs  rw 1 1
	/dev/wd1b		swap		swap sw 0 0
	 
	Another common question is that the install program installs the
	swap partition in the 'b' partition, but does not mark it correctly
	as a swap partition.  The swapping software will use the swap 
	partition regardless of what it is called, but it should still be
	identified in the disklabel as the swap partition.  Use 'disklabel'
	to change the partition type from 'unusued' to 'swap'.

2.6.2	Endless reboot cycles.
	
	Endless reboot cycles are the single most vexing aspect of 386bsd.  
	Part of the problem is that the 0.1 distribution boot routines 
	were never checked against many types of computers and have bugs.  
	Most of the bugs are fixed in the patchkit, but that doesn't do 
	the average novice user any good.
	
	In general, this will show up as a "bad disk label" error, and 
	can result in in not booting from the hard drive "most of the time".  
	You may be able to partially (or even completely) work around this 
	problem by making your machine run at a lower clock rate.

	This problem is the result of the kernel reading the wrong register 
	waiting for the drive controller to come ready.  On some 
	controllers, this isn't a problem; on others, it's fatal.

	The correct solution is to use a patched "dist.fs" or "fixit.fs" 
	boot disk.  These have been provided by the patchkit maintainers 
	and are located on the machine agate.berkeley.edu in the directory 
	pub/386BSD/386bsd-0.1/unofficial/patchkit. 

	Another incarnation of this symptom is that the disk geometry on 
	your disk label (as installed by install) is different than the 
	geometry that your hard drive controller thinks it is using.  This 
	will most often manifest itself on controllers that insist on 
	operating in some type of translation mode.  Normally the fix is to 
	find out what the controller geometry is and make the disk label 
	agree.  There are programs available to help with this problem.  

	Julian's new boot blocks may also solve this problem.  They are 
	available where fine precompiled kernels may be found.


2.6.3	The computer just sits there, or 'that isn't right'.
	
	This class of problems is sometimes caused by an incorrect FTP of 
	the boot disk.  Make sure that the files were grabbed in 'binary' 
	mode and that the size reported back is 1244000 bytes.  Use the 
	Unix program 'dd' or the DOS program RAWRITE to put these files 
	onto the diskette.  In addition, this is the 'miscellaneous' 
	section of the FAQ.  These problems are included here because they
	are usually preceded by 'I just finished installing...'


2.6.3.1	The boot disk works all right on one computer but not another. 

	This could be a problem with many different pieces, some of which are: 

	- Misconfigured hardware.  The iomem, IRQ, and other board settings 
	must match the ones listed in the INSTALL.NOTES.  Unfortunately, the 
	INSTALL.NOTES are on the disk that will not boot.  You can grab them 
	via FTP from /pub/386BSD/386bsd-0.1/filesystem.

	- Unsupported hardware.  There are several SCSI controllers on the 
	market that are not fully supported by 386bsd.  The Ultrastore 24F 
	(when not running in ISA emulation mode) is a good example of this.  
	There are also some network cards that are not directly supported 
	in 386bsd.  If you get into a real bind, you can post a question 
	to comp.os.386bsd.questions, and one of the many experienced 386bsd 
	gurus that reads that group will probably try to help you.

	
2.6.3.2 The screen has "flashing multicolored characters and ptdi81061 
	prompt" error?
	
	The problem is that the code checking the return from the read of 
	the CMOS RAM value falls through in the case of an invalid value.  
	What really is needed is the non-existence "else" case for a bad 
	CMOS setup, which goes and probes memory to see it's size.  What 
	currently happens is that the code falls through, the Maxmem is 
	set to zero, and the maxmem and physmem are set to -1 (this is a 
	bad thing).
	
	To solve this, Terry Lambert wrote a program in (forgive him!) 
	Turbo C to read and write CMOS values, so that he could force the 
	memory count to the correct value.  For a machine with a base 
	memory of 640K, the expected value in CMOS is 0280 (in bytes 
	0x16 and 0x15, respectively).  What the AT&T boxes and the HP 
	Vectra have is 027f, so it falls through to the default case and 
	blows up.
	
	The quick and dirty workaround:  If you download the new patchkit 
	bootables from agate.berkeley.edu they have fixed these problems.  
	You can use uzap (available for anon ftp from wuarchive.wustl.edu, 
	located at mirrors2/unix-c/editors/uzap.tar-z) to binary edit the 
	dist.fs at byte offset 946834; it should be changed from 81FE8002 
	to 81FE7F02.  This is the compare for 640K in the bogus code.  You 
	can look for the pattern 81FE8002 in the other *.fs files, 
	including fixit.fs, and change it there, if you MUST use one of 
	them instead.
	
	It should be noted that, if you download uzap, you should "touch" 
	uzap.c, as otherwise, make will try to use lex to create it, and
	will probably fail.  This is due to the tar extraction order from
	the uzap tar archive.


2.6.3.3a	I get the error "isr 15 and error: isr 17" on an NE2000 card.
2.6.3.3b	I have some card on IRQ2 and it doesn't work; why?
	
	The description of this problem is that one of the cards in your 
	system; most likely the VGA card, is either generating interrupts 
	or is causing the IRQ 2 to be actively disabled.

	One solution would be to plan on not using your ethernet card until 
	you have rebuilt the kernel so that it expects it at an interrupt 
	other than IRQ 2 or 9, rejumper or reconfigure the card to match the 
	IRQ you have selected, and enable it.  
	
	James Van Artsdalen (email at james@bigtex.cactus.org) has given us 
	another answer:
	
	--------------------------------------------------------------------
	Some VGA cards use IRQ 2 for a vertical retrace interrupt.  Even 
	when the interrupt is not enabled in the VGA, some cards drive 
	IRQ 2 inactive instead of leaving the signal tristate.

	If this is the problem, you can use Scotch tape to cover the IRQ 2 
	signal on the VGA's ISA connector.
	--------------------------------------------------------------------
	
	There has been some discussion as to whether scotch tape is really 
	appropriate inside a card slot.  My answer would be "yes".  This is 
	because the alternate solution of cutting the trace on the video 
	board seems, to my mind, to reduce the value of the board.  It is 
	possible that, in the future, with a bi-partite driver, you would 
	want to catch the retrace interrupt to get rid of "sparklies" or to 
	implement a driver for a very high resolution monitor for X.  In 
	this happens, given a choice between alcohol and solder, I vote for 
	alcohol.
	

2.6.3.4	Some of my SCSI devices (like a tape) don't work; why?
	
	That is because the original SCSI driver's didn't recognize any 
	devices past the first two (ID 0 and ID 1).  Also, there was a bug 
	in the distribution floppy regarding the devices at ID 6.  The 
	'dev' files for that id need to be remade.  Use MAKEDEV to do that.

	The disks and tapes will be recognized and configured when they 
	are first accessed. 
	
	A new and improved SCSI driver has been written by Julian Elischer 
	and is available from many sources.  It includes support for many 
	new types of SCSI controllers and many devices that are thereby 
	attached.  This driver is included in the patchkit.


2.6.3.5	I try to run 'ps' or 'w' and get ': cannot get namelist'
	from the TinyBSD kernel.  What did I do wrong?

	Nothing.  There is a class of programs that interact directly with 
	the current kernel.  These programs include 'ps', 'w', 'uptime', and 
	others.  The shell on the TinyBSD disk is not capable of supporting 
	these programs because the symbol table that these programs use has 
	been stripped out of the kernel to save space.  The easiest way to 
	fix this is to get a  different kernel (build it yourself, or from 
	agate.berkeley.edu or one of the other FTP sites).  Of course, you 
	can have a fully functional system with these programs, but they are 
	nice to have.  

2.6.3.6	Why don't the man pages for "magic" and "file" work?

	James Jegers (jimj@miller.cs.uwm.edu) enlightens us:

	--------------------------------------------------------------------
	The manual page for magic and file all have two dots before the 
	commands,  eg. "..SH" it should be ".SH" just delete one of the 
	double dots in the whole file and then it will work.
	--------------------------------------------------------------------


2.6.3.7	Why is apropos broke?

	Also from James Jegers:

	--------------------------------------------------------------------
	The Makefile in /usr/othersrc/share/man/Makefile creates the 
	whatis.db.  The problem is that it doesn't strip the backspaces in 
	the title and apropos can't handle that.  So add a "col -b" to strip 
	those.

	exerpt from the makefile.

	makedb:
	   for file in `find /usr/share/man -type f -name '*.0' -print`; do \
		sed -n -f /usr/share/man/makewhatis.sed $$file; \
	   done | col -b | sort -u > whatis.db
	   install -o ${BINOWN} -g ${BINGRP} -m 444 whatis.db \
	              ${DESTDIR}/usr/share/man
	--------------------------------------------------------------------

	This problem is solved in the patchkit.

	Also, if the Makefile is moved to the /usr/share/man directory, the 
	whatis.db will reside where it needs to eventually reside, and the 
	install will wipe it out.  An easy fix for that problem is to change 
	the two references of whatis.db in the exerpt above to 
	/tmp/whatis.db.  This will ensure the file is correctly built and 
	installed.


2.6.3.8 I get a 'Floating point constant out of range' when I try to compile
	package 'n'.  What is broke?

	This problem was encountered during many package compilations, 
	including compiling gcc-2.3.3 under NetBSD.  

	The problem is not a floating constant out of range. The problem is 
	a floating point stack overflow. To get passed this, manually 
	compile fold-const.c using -S in place of -c. Edit fold-const.s 
	and replace "fsts" with "fstps" in _real_value_truncate. Then 
	assemble (as -o fold-const.o fold-const.s). 
 
	There is also a circular dependancy for protoize.o/unprotoize.o 
	in the Makefile. Add the lines
 
	      touch protoize.o
	      touch unprotoize.o
 
	after the line:

	      touch stamp-proto
 
	After this "make bootstrap" will run to completion.

	gas apparently has bugs too.  It should produce +Infinity.  I 
	think it is OK internally but it may be trusting the library 
	too much.  gcc can easily be changed to avoid printf for output, 
	but input is harder.
 
 	One of the problems is that various pieces of code rely on the
 	value of DBL_MAX.  A kludge to fix it is to change the line
 	below:

	#define DBL_MAX         1.7976931348623157E+308

	One value that works is
 
 	#define DBL_MAX         1.7976931348623147E+308
	                                        ^ was 5

	This is a kluge, but it does mostly work.



	The problem is entirely in printf() (really in cvt()), NOT in
	atof().  I have inspected the output of atof() bit by bit, and 
	it is well within IEEE specification.

	The digits `157' are the `best' approximation.

	The code for printf() generates a representation which is not even 
	in the range of doubles.  Below are the details:

	atof("1.7976931348623157e+308") returns 
	
	 	0x7fefffffffffffff

	which is the maximum double value and is correct.  However, 
	printf() of the previous yields `1.7976931348623168e+308', which 
	isn't even within the floating point range.  It is clearly printf() 
	that is broken, and a quick inspection of the code is enough to 
	determine that it uses a pessimal algorithm.

	atof() has been tested with many other values, and it has never 
	been off by more than is allowed by IEEE 754 (though it is not 
	optimal).
--
Please send submissions for comp.os.386bsd.announce to:
					386bsd-announce@agate.berkeley.edu