Archive-name: 3b1-faq/part2
Version: $Id: 3b1-faq-part2,v 2.5 2000/09/05 19:17:48 jbunch




----------------------------------------------------------------------
| Answers to some frequently asked questions about the AT&T UNIX PC, |
|     as well as some frequent problems, hints, and solutions.	     |
----------------------------------------------------------------------
| Make a Hard Copy on the FAQ *NOW*, it probably wont be readable if |
|           it is on your machine when you *NEED* it.                |
----------------------------------------------------------------------
[$Revision: 2.5 $ $Date: 00/09/05 19:17:48 $]
Send updates to 3b1-faq@nyx.cs.du.edu.

		Part 2 of 2

------------------------------

Subject: 0.2. Table of Contents for part 2 of the faq.

	 0.2.  Table of Contents for part 2 of the faq.
	 5.0.  Upgrading continued.
	 5.3.  Can I really get 4MB of memory, even with a 1.5MB combo 
               card, 512K RAM card, and 2MB of RAM on the motherboard?
	 5.4.  What dynamic memory chips can be used to upgrade a
	       3b1/7300?
	 5.4.  Can I hook up a 3.5" 720K floppy drive to my UNIX PC?  How 
               about a 1.2MB or 1.44MB floppy drive?   Can I run both the 
               3.5" drive and the 5.25" drive on my machine somehow?
	 5.5.  Can I put a larger hard disk drive in the UNIX PC?
	 6.0.  Maintenance
	 6.1.  How do I park the hard disk heads before moving the machine?
	 6.2.  How do I open the case and get to the motherboard?
	 6.3.  Why does my fan sometimes speed up and slow down?  Should I
               replace it?
         6.4.  Why has my clock stopped?
	 7.0.  Failures
	 7.1.  What can I do when I turn on my UNIX PC and all I see is
               a "green screen"?
	 7.2.  What can I do when I turn on my UNIX PC and I have no 
               video?
	 7.3.  What can I do when I get lots of FDERRs when
               writing/formatting a floppy?
	 7.4.  Why does rn fail with "Can't open /dev/tty" from the
               built-in modem?
	 7.5.  Can I connect my Starlan board to an Ethernet?
	 7.6.  Can I run SLIP (Serial Line Internet Protocol) on my UNIX 
               PC?
	 7.7.  What are the consequences of "fsck -s" (salvaging the 
               freelist)?
	 7.8.  What does the "-s" option to dismount do?
	 7.9.  How do I identify what motherboard revision I have?
	 7.10. How can the monitor fail?
	 8.0.  Mysteries
	 8.1.  What are the LED's left side of the machine for?
	 8.2.  What's /etc/update?  What does it do? 
	 8.3.  Why did the time display at the top of the screen go away?
	 8.4.  How do I stop that darn double-ESC mode on console windows?
	 8.5.  What do I do when the machine hangs at the boot message?
	 8.6.  How can the UNIX PC be made more secure?
	 8.7.  How do I access the expert menus in the diagnostics?
	 9.0.  Credits

------------------------------

Subject: 5.0. Upgrading continued.

This is a continuation of the upgrading section from part 1 of the faq.

------------------------------

Subject: 5.3. Can I really get 4MB of memory, even with a 1.5MB combo 
         card, 512K RAM card, and 2MB of RAM on the motherboard?

	The answer is yes.  It does require a simple pin-ectomy.  You
need to fool the hardware to think the 512K RAM card is in a slot that
doesn't physically exist on the UNIX PC.  For more information on how
to do this, grab John Milton's HwNote06 from the archive sites.

------------------------------

Subject: 5.4. What dynamic memory chips can be used to upgrade a 
         3b1/7300?

	 The following is a cross-reference list of 256 by 1-bit dynamic
memory chips that are usable for 3b1/7300 memory upgrades:

  AM90C256-xx   AMD  Advanced Micro Devices
   MB81256-xx   FUJ  Fujitsu
   HM50256-xx   HIT  Hitatchi
  HY53C256-xx    -   Hyundai
    P21256-xx    -   Intel
  M5M4256P-xx   MIT  Mitsubishi
   MCM6256-xx   MOT  Motorola
  UPD41256-xx   NEC  NEC Technologies
  MSM41256-xx   OKI  Okidata
   KM41256-xx    -   Samsung
   TMS4256-xx   TI   Texas Instruments
  TMM4256C-xx  TOSH  Toshiba

The digits in xx are speed designations--common values are:
xx=10 for 100ns; xx=12 for 120ns and xx=15 for 150ns.

Since it is now economically advantageous to obtain chips from
third parties (private sales, auctions or hamfests), the
manufacture's LOGO and identification stamped on the chip may
be the only clues one has for a scavenger hunt.  If the
experimentalist is not familiar with the Manufacture's LOGOs,
a perusal of a computer magazine (PC World, etc.) should
help one to become familiar with most of them.  Good hunting!

------------------------------

Subject: 5.5. Can I hook up a 3.5" 720K floppy drive to my UNIX PC?  How
         about a 1.2MB or 1.44MB floppy drive?   Can I run both the 3.5" 
         drive and the 5.25" drive on my machine somehow?

	Yes, to the 720K.  No, to the 1.2MB and 1.44MB.

	Putting a 720K 3.5" floppy drive is rather simple if you are
just replacing the existing 360K 5.25" drive completely.  In most
cases it's a one-to-one swap, providing you can get the jumper setting
set correctly on the 3.5" drive.

	You can run both drives, provided you make a mechanical switch
(SPDT) to change the drive select between the 5.25" 360K internal
drive and the 3.5" 720K (run externally).  You need to make a cable to
switch the pin 10 (FDRIVE0*) from one drive to the other.  Drilling a
hole in the case above the left fan grate is a suitable spot.

	When you use the 720K drive, all you need to do is create an
iv description file that has 80 cylinders instead of 40, and you get
the full 800K (80 tracks, 10 sec/trk).  Makes backups go faster!

------------------------------

Subject: 5.6. Can I put a larger hard disk drive in the UNIX PC?

	Upgrading from a 10MB, 20MB, or 40MB to a 67MB drive requires
a 3B1 power supply and a 3B1 case top (the 40MB and 67MB drive is
full-height).  There are other solutions to this -- you can get
half-height drives that have seek times faster than the 80ms of the
old 10MB and 20MB drives, and which have more disk space.  So long as
the drive has a ST506/MFM interface, has less than or equal to 1024
cylinders and less than or equal to 8 heads, the drive will work
without *any* hardware modifications.

	To upgrade to a disk with more than 8 heads and more than 1024
cylinders there are several approaches one can take.  Gaining more
cylinders is the easiest of upgrades: all you need to do is replace
the WD1010 disk controller (which is socketed on the motherboard at
location 21H) with the pin-for-pin compatible disk controller, WD2010.
The WD2010 comes in several varieties, and all seem to work for the
most part (WD2010A, WD2010B, etc.).  The WD2010 is a very difficult
part to come by -- Intel makes (or made) a pin-compatible version of
the WD2010, the Intel 82064.  There has been some discussion on Usenet
that people haven't been able to get the WD2010 to work in their older
revision motherboard UNIX PC or PC7300.  These machines have a
daughterboard that handles the disk circuitry, instead of the
all-in-one chip that was replaced in the later models.

	The operating system, from at least release 3.0, supported an
unreleased motherboard revision, P5.1.  The P5.1 revision level (like
the P3...P5 that you see during the boot phase) includes some extra
features such as an extra disk head select (expanding to 16 read/write
disk heads) and extra drive select (allowing expansion to two
simultaneous hard disks).  With the appropriate hardware modifications
(all requiring some expertise in soldering and reading schematics),
one could upgrade his motherboard to emulate this undocumented
motherboard revision.  These upgrades weren't released to the public
by either CT or AT&T during the life-cycle of the product, but were
later released and made public by several people in several different
forms.

    o   John Milton <jbm@megalinx.net> has a prebuilt circuit board that 
	offers up to 4 hard disks and 2 floppy drives, but be forewarned 
	that the operating system only supports the two hard disks and 
	one floppy drive.  If the operating system patches could be made, 
	John's hardware would support it.  He's offering a prebuilt and 
	pretested board that can be wired into the motherboard.
        The motherboard wiring (jumpers) and soldering will have to be done 
        as well before you can use John's board (this is not a plug in and
        go situation -- it requires some time to wire).  The board and
        instructions currently cost $75, but contact John for pricing.
	[As far as I know this is no longer available from John]

    o   SSDL/ICUS Hard Disk Upgrade Version 2.0.
	Gil Kloepfer, Jr (gil@limbic.ssdl.com) is currently (10Jan92)
	offering the second version of the popular ICUS do-it-yourself
	hard-disk upgrade kit.  From the announcement, answering the
	question "What is it?" --
	"It is a single-chip upgrade to the 3B1 that allows a second
	hard disk to be added and a 4th head select line to allow
	disks with more than 8 heads to be used.  It is a superset of
	the functionality of the P5.1 PAL (ie. you don't need P5.1 to
	use the V2.0 PAL), and completely emulates all the
	functionality of the earlier ICUS V1.0 upgrade.

	"This upgrade *DOES NOT* extend the number of cylinders
	(>1024).  You must purchase a WD2010 to replace the WD1010
	chip on the motherboard if you wish to do this."

	Full information about availability and pricing can be
	obtained from v2upgrade@limbic.ssdl.com.
	[This is also no longer available from Gil *See Below*]

	[The following was received from Gil]
	Just letting you know that the WWW page with the HD upgrade 
	instructions and the PAL equations is up and operational.  My 
	apologies in advance that the formatting is basic and the 
	diagrams are scanned-in and put up as GIF images.  I'm sure 
	those who need the info will be grateful anyhow.

	The URL is:  http://www.gc2.kloepfer.org/~gil/hdinstr.html

	There is no other pointer anywhere around to this location, so 
	if there is some kind of 3B1 web site, it should likely be 
	referenced there.

	Enjoy!  If you see any glaring mistakes, send an email to
	"Gil Kloepfer Jr." <gil@gc2.kloepfer.org>.

    o   FIELD P5.1 PAL upgrade.  The P5.1 instructions were posted to 
        unix-pc.general a long time ago, and are now archived on OSU in
        the P5.1.Z file.  This requires a preprogrammed PAL chip to be made.

    The largest disk which can be handled by the UNIX PC/3B1 is:

    o   Motherboard revision P3...P5 (WD1010 disk controller)
	8 heads x 1024 cyls x 16 sectors/track x 512 bytes/sector  =  67.1MB

    o   Motherboard revision P3...P5 (WD2010 disk controller)
	8 heads x 1400 cyls x 16 sectors/track x 512 bytes/sector  =  91.7MB

    o   Motherboard revision P5.1 (modified) (WD1010 disk controller) 
	16 heads x 1024 cyls x 16 sectors/track x 512 bytes/sector = 134.2MB

    o   Motherboard revision P5.1 (modified) (WD2010 disk controller)
	16 heads x 1400 cyls x 16 sectors/track x 512 bytes/sector = 183.5MB

	NOTE: 1400 cylinders is the #define HDMAXCYL in
/usr/include/sys/gdisk.h -- although the WD2010 can support up to 2048
cylinders, the operating system cannot.  Also, with the multiple hard
disk upgrades you can have two disks that can be as large as the above
sizes for the P5.1 modified motherboard revision.

	FINAL NOTE ON THE WD2010: Some folks have reported troubles
with their systems after installing the WD2010, far too many to
discount as due to bad chips.  Thad Floryan was irritated enough by
this to take time away from sheep-herding and solve the problem.  This
problem occurs only on certain versions of the 3b1 motherboard.
Short and sweet, quoting from Thad here:

	"So, in overview, the complete and correct "DRUN patch" modification 
	to a 3B1 motherboard which does function with a WD1010 but does not 
	function with a WD2010 is:
		1. separate and lift [13N] 74123's pins 1 and 2 
		   from the motherboard
		2. run a wire from the lifted [13N] pin 1 
		   to [13M] 74F10 pin 7 (ground)
		3. run a wire from the lifted [13N] pin 2 
		   to [13K] 26LS32 pin 3
		4. replace R63 per:
			original:  6.81K,  1%, 1/4W
			new value: 4.75K, 1%, 1/4W
	Parts list:
		1. new 74123 (reason for this is described below)
		2. 4.75K, 1%, 1/4 W precision resistor
		3. less than one foot of 30ga "wire-wrap" wire 
		   for the two patches"

	And additionally:

	"If your system is one that DOESN'T have the "DRUN Patch"
	then putting the WD2010 in your system will cause you a LOT
	of grief.  From my observations on MANY systems, it's not
	always obvious whether the patch exists on one's system;
	some factory runs implemented the patch along the lines
	of what I described in my posting last December [excerpted
	above], and some runs had the patch integrated into
	(presumably) new motherboard layouts where the legs of the
	74123 chip are NOT sticking up in the air.  If the resistor at
	R63 has the color code bands, then the presence of 4.75K 1%
	means the patch is already applied (the value of 6.81K 1%
	means you have the old data separator circuit which will NOT
	function properly with a WD2010); if the resistor is the RN05
	type (no color bands) then you probably won't be able to read
	the value and you'll either have to remove it (to read the
	value) or forget the whole thing.

	The ABSENCE of a capacitor at C252 is also a good clue one's
	motherboard has the DRUN patch already applied."

------------------------------

Subject: 6.0. Maintenance

This section answers general maintenance questions.

------------------------------

Subject: 6.1. How do I park the hard disk heads before moving the 
         machine?

	The Miniscribe and Hitachi disks used in the 40MB and 67MB
machines parks the heads automatically (and loudly) when the power is
turned off.  (That's that *clunk* sound you hear when you hit the
power switch.)  Also note that many newer drives have auto-parking
mechanisms -- check with your specific manufacturers for more
information.

	If your drive doesn't auto-park (many Seagates don't), or you
want to make extra sure that the heads are in the parked position,
then after the machine is shutdown insert the Diagnostics floppy disk
and boot from it.  Select "Park Disk Heads" from the Diagnostics menu.

	Note that the older 7300 machines have 10 or 20MB disks which
do not auto-park.  If you're buying one used (especially at an auction
or a fair), you may want to bring along a diagnostics diskette to make
sure the disk is okay.

------------------------------

Subject: 6.2. How do I open the case and get to the motherboard?

	[Courtesy of Norman Yarvin:]

	Three sets of screws hold the case together.  The first set
consists of two screws underneath the keyboard retainer posts, and
three screws in the rear panel.  (The keyboard retainer posts hold the
keyboard to the base -- one is next to the socket for the keyboard
plug.  Note the seam around the top of the retainer posts.  Remove the
covers from the posts, and you'll find a screw inside each.)

	When this set of screws is removed, the top (plastic) part of
the case is attached to the bottom only by some cables, which have
enough slack to let you take the top of the case off, tilt it
backward, and rest it on its rear behind the machine.  However, this
is quite a difficult task.  This is because it is hard to get the very
front of the case up; the plastic is shaped in such a way as to catch
on to the metal bottom somewhere.  A bit of wrestling with the case is
usually necessary here, and some people prefer to take the top part of
the top part off (the next paragraph) before taking off the bottom
part of the top part.

	The second set of screws holds the top part of the case
together.  It consists of six screws, pointing upwards, which are
found under the overhang of the case.  The only time they really need
to be removed is when replacing the fan.  In addition to these screws,
two or three plastic hook-and-tab latches in the front of the machine
need to be released.  The top of the case must be moved outward
slightly (usually with a screwdriver or finger pressure) along the
joint to the right of the floppy drive in order to release the
catches.  [The three plastic catches in the front are in the middle,
and at about the 7th-to-10th louvers from the left and right of the
case.]

	Taking off the top of the case exposes only the floppy drive,
the hard disk (underneath shielding) and the power supply.  To get to
the motherboard, you then have to unscrew the third set of screws --
three screws at the very front of the machine.  The two latches on
either side of the motherboard cover become obvious when one tries to
lift up the panel, and are easily released.  The motherboard cover
pivots at the rear; it can be lifted up.  To lift it up more than an
inch, the power supply cable and the 10-pin video cable must be
unplugged.  After that the metal shielding can be lifted and slid
along the tracks and then flipped up or removed.  This exposes the
motherboard.  If you need to remove the motherboard shielding
completely and the monitor assembly, you need to disconnect the floppy
and hard disk cables from the motherboard (note the direction of the
connectors, and when replacing them be very sure that the 20-pin and
34-pin connectors are seated correctly on the associated pins).  If
you have a PC7300 power supply and motherboard, your floppy drive
power cable might also be connected to the motherboard.  To remove the
whole assembly, in that case, you'll need to remove the power
connector from the back of the floppy drive as well.

	Be careful when putting the top of the Unix PC/3B1 back on; a
common cause for the machine not powering up after the cover is
replaced is the 120VAC connectors (brown and blue wires crimped on)
falling off the power input, or being pulled off by the hard drive as
the case is closed.  The green ground wire has a tendency to get
caught in the fan blades (causing the fan not to start spinning when
the machine is turned on) or caught in the case itself.  Check that
the fan is working after closing the case.

	As always, use your head.  Be careful when exposing any
component of the Unix PC.  There are many static sensitive components;
ground yourself before poking around inside.

------------------------------

Subject: 6.3. Why does my fan sometimes speed up and slow down?  Should
         I replace it?

	The fans have been a problem with the UNIX PC in a lot of
cases.  What happens is the 12VDC fan is connected to a thermal switch
that will run the fan motor faster when the machine is hot, and then
slow it down when the machine cools.  There have been occasions,
however, when a fan goes from fast to slow, and then slows all the way
to a dead stop.  The fan tends to collect a lot of dust and dirt, and
sometimes when switching to the slow speed it goes so slow that it
stops and doesn't have enough "umph" to start up again.

	Gil Kloepfer theorizes the reason for this happening is that
the 12VDC fan is constantly running with too little current due to a
resistor wired in series with the power supply when the thermal switch
is in its normally open position.  When the fan is beginning to
malfunction, it will run subtly slower, but not enough to keep enough
air moving through the machine.  The thermal switch kicks-up the
power, which causes the fan to move faster and cool the machine down
until the switch kicks-out again.  This cycling effect keeps going
until the fan become excessively weak and clogged with dirt to where
it eventually stops working permanently.  But he goes on to add that,
in any case, "I don't think it's just dirt."

	The next stage is the machine overheats, the power supply cuts
out, and the machine powers down, then it powers up, and down, and up.
If you are lucky, you catch this before major damage occurs or you
take preventive measures beforehand.  Most of the time the power
supply gets so hot, it warps the plastic case above it.  This is a
sure sign that a UNIX PC has had a "meltdown" before.

	What can you do?  Well, you can replace the 12VDC fan with a
3" 120VAC fan.  The 120VAC fans are more robust, they produce more air
current (~34CFM normally) and don't draw on the power supply any.  One
drawback is that they are noisier.  Radio Shack has an appropriate
120VAC fan for $16.95, cat. no. 273-242.

	Some people can go years or forever without ever having a
problem, but it just takes that one day that you aren't around and the
machine goes into "meltdown" and then you'll be assured some damage
somewhere.

------------------------------

Subject: 6.4. Why has my clock stopped?

	Your battery is dead.  On the UNIX PC motherboard there is a
3.0 VDC lithium battery which keeps the real-time clock operating.
Unfortunately, the battery is soldered to the motherboard in most
cases.  It's either the round cylindrical canister type, or more
commonly the flat disc-shaped battery.  A suitable replacement can be
purchased at Radio Shack (BR-2325), but you'll need to get the disc
battery holder.  If you desolder the battery from the motherboard,
solder in the holder, future replacement of this battery will be much
simpler.  If you are nervous about touching a soldering iron to your
precious machine, ASCRC will do it for you (see above).

------------------------------

Subject: 7.0. Failures

This section answers question about failures.

------------------------------

Subject: 7.1. What can I do when I turn on my UNIX PC and all I see
         is a "green screen"?

	This symptom crops up in a lot of UNIX PC's.  Generally, the
machine can be revived with only little fuss.  Open the machine down
to the motherboard.  Carefully reseat all the socketed chips,
especially the 68010 CPU.  Blow all of the accumulated dust out of the
machine (vacuuming is not recommended due to the possibility of static
discharge).  7 times out of 10 the machine will boot afterwards.  If
the machine still doesn't boot, it could be something more serious.
Check with the ASCRC on how you can go about getting the machine
repaired.

------------------------------

Subject: 7.2. What can I do when I turn on my UNIX PC and I have no video?

	The first thing you could do is check the brightness control.
After you are sure that it's not that, the problem generally goes away
by replacing the power supply.  If you don't have a spare one, try
asking on Usenet, or deal with ASCRC.

------------------------------

Subject: 7.3. What can I do when I get lots of FDERRs when 
         writing/formatting a floppy?

	Jon H. LaBadie, Boyd Ostroff, and Perry Miller have suggested
that there could be accumulated dust blocking the write protect
apparatus on the floppy drive.  The easiest solution for this is to
get a can of compressed air, or blow real hard into the floppy
aperture several times.  This generally will remove the dust or dirt
from the area, and hopefully will solve the problem.  (With the light
being blocked, the floppy drive is considered permanently write
protected!)

	If the problem persists after you follow the simple solution,
you might have to open the machine, remove the floppy drive, and
perform a closer examination.  If all else fails, a standard TEAC 360K
floppy drive is a one-for-one replacement.

------------------------------

Subject: 7.4. Why does rn fail with "Can't open /dev/tty" from the 
         built-in modem?

	The problem is a line in the term.c file.  The lines that have
to be changed for rn to work are:

	Before change:

		[...]
    		devtty = open("/dev/tty",O_RDONLY);
    		if (devtty < 0) {
			printf(cantopen,"/dev/tty") FLUSH;
			finalize(1);
    		}
    		fcntl(devtty,F_SETFL,O_NDELAY);
		[...]

	After change:

		[...]
    		devtty = open("/dev/tty",O_RDWR);    /* changed for UNIX PC */
    		if (devtty < 0) {
			printf(cantopen,"/dev/tty") FLUSH;
			finalize(1);
    		}
    		/* fcntl(devtty,F_SETFL,O_NDELAY);   /* changed for UNIX PC */
		[...]

	This change is required because the /dev/ph* devices require
DATA connections to be opened with O_RDWR, so changing the O_RDONLY
(or, in some versions of rn, the constant 0) to O_RDWR will solve your
problems.  Note that these changes are also required for rn-derived
programs like trn.

------------------------------

Subject: 7.5. Can I connect my Starlan board to an Ethernet?

	No, you cannot connect Starlan to an Ethernet network, at
least not directly.  Starlan, or in the case of the UNIX PC, Starlan-1
(1BASE5) is a 1Mbps (megabits/sec) network over twisted-pair wire.
The URP protocol is used to communicate over Starlan-1 on the UNIX PC.
The newer Starlan standard is Starlan-10 (10BASE2) and is 10Mbps which
is more *like* Ethernet.  The protocol used is the ISO/OSI standard,
and therefore its interconnectability is increased.  However, this is
not compatible with the UNIX PC version.  There is an expensive item
that AT&T sells, called the Starlan 1:10 Bridge, which connects the
two networks together if this is a necessity, but plan to spend around
$4,500 for the convenience.  (AT&T PEC Code: STARLAN 1:10 BRIDGE
2611-005.) According to AT&T Stargroup documentation, there is
software available to interconnect Starlan-10 hardware to Ethernet
using IEEE 802.3, TCP/IP protocol, this of course in conjunction with
the Bridge could connect Starlan-1 via the Starlan 1:10 Bridge to
Starlan-10, and then to Ethernet, a roundabout way, but presumably
possible.

	If you want to connect your UNIX PC to a *real* Ethernet,
you'll need to hunt down the AT&T UNIX PC Ethernet board.  This board
runs a version of the TCP/IP drivers developed by Wollogong.  The
board will require the proper cables, as well as a transceiver.  This
increases the cost of Ethernet interconnectability.  The Wollogong
TCP/IP drivers are an older version not supported by Wollogong
anymore.  It's generally acknowledged that there are many bugs, and
the throughput of the board is nowhere near what Ethernet should be
getting.  (People report that throughput with the Starlan-1 board was
better than the TCP/IP Ethernet board, which shouldn't be the case.)

	Thanks to the hard work of Roger Florkowski
(cs.utexas.edu!taliesin!roger), UNIX PC Starlan users don't have to be
limited with just uucp'ing and cu'ing over the network.  He has ported
and created a bunch of BSD network utilities (r* commands).  His
package, (bsdslan.cpio.Z on OSU-CIS) allows one to do remote tape
operations, remote copies, and remote shell commands.

------------------------------

Subject: 7.6. Can I run SLIP (Serial Line Internet Protocol) on my UNIX PC?

	So far there hasn't been anyone who has ported a SLIP device
driver. That would be the optimal solution, but in the interim we do
have an answer for those who want to run SLIP.

	There is the KA9Q/W9NK TCP/IP Version 890421.1 available for
the UNIX PC.  Thanks to Phil Karn (the original developer), Gary
Sanders, and Rob Stampfli, the package supports SLIP which in theory,
over a modem or direct serial line (preferably 9600 baud or higher)
one could use to connect to an Internet machine allowing Dialup/Direct
SLIP logins.  With the pseudo-tty driver (pty) you can have multiple
TELNET sessions (even on the UNIX PC side).  Built into the "net"
package is FTP, TELNET, FINGER, SMTP, and others.

	KA9Q is available from OSU-CIS, Gary Sander's BBS or via
anonymous uucp login on Rob's UNIX PC:

		kd8wk Any ACU 2400 16147598597 in:--in: uucp word: anonymous

	To obtain the net source, issue the following uucp command:

		$ uucp kd8wk!~/pub/netsrc.cpio.Z /usr/spool/uucppublic

	To obtain an executable for the AT&T 7300, enter the following:

		$ uucp kd8wk!~/pub/netexe.7300.Z /usr/spool/uucppublic

	System Name: 	N8EMR
	Phone:		614-895-2553 (19.2K Trailblazer, 2400, 1200)
	Login:		hbbs 
	Data Settings:	8 Bits, NO Parity, 1 Stop Bit
	Times: 		24hrs

------------------------------

Subject: 7.7. What are the consequences of "fsck -s" (salvaging the 
         freelist)?

	Jim Adams sent some information regarding the uses (and
dangers) of salvaging the freelist using the fsck(1M) command.

	fsck(1M) provides a method of salvaging and reconstructing the
freelist maintained by the UNIX filesystem.  It is dangerous to
haphazardly do anything with the filesystem, as well as just
reconstructing the freelist.  If the filesystem isn't in a good state,
it's possible that the freelist could be further damaged by just
salvaging it.  fsck(1M) will salvage the freelist when necessary, or
when the question "SALVAGE (Y/N)?" is answered "yes".

	Jim has said that the alternative method, fsck -S, should be
used if you wish to salvage the freelist.  The salvage will only be
done if the filesystem is properly constructed, and nothing damaging
could occur by its reconstruction.  If errors are found during the
fsck phases, other than errors like "POSSIBLE FILE SIZE ERROR I=nnn"
(which occurs from sparse files, also known as files with holes in
them) the salvage will not be done.

	fsck(1M) is designed to be run on a mounted root filesystem,
so long as the block device is used and the system is in a quiet
state.  fsck(1M) can be run on the raw/character device when
the filesystem isn't mounted, and this is generally much faster.
fsck(1M) will automatically reboot the system without sync'ing, if the
"mounted" root filesystem was modified, just as you should (since the
in-core image of the filesystem would be different).  There is no
"re-mount" facility on the UNIX PC, otherwise the root filesystem
could just be remounted.

	Another suggestion made was to run "fsck -D" to check
directories for bad blocks.  This takes longer, but is considered
worth it.  (fsck -D is similar to the MSDOS CHKDSK facility.)

------------------------------

Subject: 7.8. What does the "-s" option to dismount do?

	It should never be used.  It's an historical option (as the
manual notes), used to un-mount the "Syquest" external drive.  This
unfortunately causes the first hard disk to RECAL if you don't have
the second disk upgrade.  With the second disk upgrade it improperly
un-mounts all the filesystems, apparently not handling the /etc/mnttab
file correctly for all the partitions on the second disk.

	In many people's opinions, it's much safer to use multiple
/etc/umount commands to unmount multiple partitions.  This works for
all cases, and there is no second guessing on what the command is
actually doing.  If you want to mimic the operation of dismount, you
can easily issue the "sync" command before the "umount" command.  As
far as clearing the "pulled-flag" as the manual indicates, many have
never had any problem just using the /etc/umount command (on floppies
as well as my other partitions and hard disk)

------------------------------

Subject: 7.9. How do I identify what motherboard revision I have?

	[Courtesy of Thad Floryan:]

	The board "schematic" number (in copper) near the left rear
corner is quite useful when referencing one of the three sets of
schematics in the Reference Manual.  Often the copper number is
obscured by a white sticker bearing a different number.  BOTH sets of
numbers "almost" uniquely identify your machine.  Peel the white
sticker off and reapply it flanking the copper number.

	The copper board number will (usually) be one of 60-00222-00,
60-00225-00 or 60-00230-00.  If yours is 60-00216-00 you have my
sympathy (the connector to the floppy drive may be pin-for-pin
reversed from that found on all other motherboards, and you probably
have the daughterboard above the motherboard).  The white paper
sticker will bear a printed number something like "60-00237".

	The OTHER "number" to write down for future reference is the
"REV.n" value on the white sticker normally found near the volume
control sliding pot; this will be something like "REV.C", "REV.F",
"REV.J", etc.

	The combination of the two sets of reference designators seems
to uniquely identify all 3B1 systems I've seen.  And note that a
"REV.C" on a "225" board is NOT the same as a "REV.C" on a "230"
board.  And, before you ask, I have NOT been able to determine
precisely what each "REV.n" represents and I doubt that information
still exists even at CT (now UNISYS/NCG).

------------------------------

Subject: 7.10. How can the monitor fail?

	[Courtesy of Rob Stampfli:]

	I have witnessed the loss of more than a few Unix-PC monitors
to a phenomenon where the right side of the screen becomes
increasingly compressed (nonlinear), at an exponentially increasing
rate, until the monitor fails completely.  Usually, this occurs over a
period of months, and it usually is observed after the monitor has
been removed from service, stored, then placed back into service.

	[Rob notes a particular case which was diagnosed by his
colleague, Harry Maddox, BEFORE the monitor failed completely.  He
writes, "We believe that an actual failed monitor would take out an
associated transistor and the flyback transformer, unless the monitor
is fused, presenting a much more difficult problem to fix."  The
particulars:]

	A 4.7 uF 25V non-polarizing electrolytic capacitor (C411) is
bad.  C411 develops a high internal resistance and gets quite hot,
which further causes it to deteriorate.  It may explode -- use
caution.  C411 is located between L402 and T401 inside the monitor
proper.  The value and voltage rating of this capacitor is not
critical, "ESR" [equivalent series resistance] is however.

	Replace C411 with a mylar capacitor, 4-6 uF @ 25V or more,
such as AT&T 535GA (4.22 uF @ 100V) or equivalent.  Mount on end with
insulation on top lead.  Dress away from adjacent parts.

	Replace CAP ASAP before further damage is done.  Replace fuse
if blown.  Check TR402 for Collector to Base shorts if set was not
working.  Also D403 for short.

	Procedure:

	1. Remove CRT Cover (2 screws in back).
	2. Remove Speaker Assembly (2 screws).
	3. Remove RF Tape from bottom cover (shield).  One tape is
	   hidden at front of bottom shield.
	4. Remove bottom shield.
	5. A small part (I think a thermal sensor) is found on the
	   bottom of the PC board just under C411.  It is covered with
	   black tape.  Remove the tape and bend sensor out of the
	   way.
	6. Remove C411 and replace with Mylar capacitor, 4-6 uF, 100V.
	7. Replace sensor and tape.
	8. Reassemble monitor.

	Note: the bottom shield is tricky to remove and replace if you
don't unmount the monitor from its swivel mount, but it can be done.
If monitor has failed completely, then check fuse (if present), TR402
(C-B short), and D403 for a short.

------------------------------

Subject: 8.0. Mysteries

This section describes some mysteries of the 3b1/unixpc.

------------------------------

Subject: 8.1. What are the LED's left side of the machine for?

	This is from John Milton's HwNotes series #1.

	0 RED:	  This is the "user LED". It can be turned on and off
		  with the syslocal(2) call. It is not used by any
		  existing applications.
	1 GREEN:  This is the one most people get wrong. This LED
		  toggles every time there is a process context
		  change, and is cleared on the whole second.
	2 YELLOW: This is the idle LED. When it is on, there are no
		  processes in the ready to run state.
	3 RED:    Heart beat LED. This is toggled on the whole second.

	This and other interesting information is available in the
HwNote series 1-15 that are archived on OSU.

------------------------------

Subject: 8.2. What's /etc/update?  What does it do? 

	/etc/update is an antiquated command which is no longer
necessary to be used.  It is not a shell script, but could easily be
one.  The executable basically takes one argument, the number of
seconds to sleep, or defaults to 30 (I believe).  It then sleeps that
interval and then issues a sync(2) system call.  This is a continuous
process -- it detaches itself from the current tty with the setpgrp(2)
call, and closes all file descriptors 0, 1, and 2 (stdin, stdout, and
stderr).  It was to be run by /etc/init, as a boot-time process, and
was to remain there for the duration of the machine's uptime.

------------------------------

Subject: 8.3. Why did the time display at the top of the screen go away?

	The time at the top of the display is provided by the program
/etc/smgr, which combines the functionality of cron, /etc/update, a
time display, plus maybe a few other mysterious things.  Equally
mysterious is its propensity to occasionally die, leaving a stipple
pattern in its place.  

As smgr does its cron processing, it logs what it is doing in
/usr/adm/cron.log.  So that this file does not get too large,
smgr responds to signal 17 (SIGUSR2) by truncating the log file.
Unfortunately, smgr will exit if the log file is missing.

If you want to make sure this does not happen anymore, edit
/etc/cleanup.wk (the script that runs weekly and sends smgr the
clean up signal) and add
	touch /usr/adm/cleanup.wk
before the script sends the signal with "kill -17 $PID"

	Restarting smgr is thankfully unmysterious; become root and
type "/etc/smgr".

------------------------------

Subject: 8.4. How do I stop that darn double-ESC mode on console windows?

	Some programs that use the TAM (Terminal Access Method)
library can leave the keyboard (really the shell window) in a strange
state after leaving.  This state is characterized by each press of the
ESC key injecting two 0x1b characters into the input stream.  This
generally doesn't help anybody -- vi beeps too much, emacs is
unusable, etc.  The fix is to issue the following ioctl from a C program:

		#include <sys/window.h>
		ioctl(0, WIOCSESC, 0);	/* to turn off double-esc mode */

	If you really want it back again, do the following:

		ioctl(0, WIOCSESC, 1);	/* to turn on double-esc mode */

------------------------------

Subject: 8.5. What do I do when the machine hangs at the boot message?

		Version #.##x
		Real memory      = #######
		Available memory = #######
		Main board is ####

	9 times out of 10 the /etc/inittab file is either deleted,
corrupted, or truncated because of some filesystem damage during a
system crash.

	The machine will hang there at that Main board prompt forever
since /etc/init is looking for the inittab file.  This is where it is
handy to have a floppy filesystem disk with saved copy of /etc/inittab
on it.  Boot the system using the "Floppy Boot Disk" (Disk 2 of ##),
then insert your copy when it asks for the Floppy Filesystem Disk.
Interrupt the script with <DEL> to get a "#" prompt when the first
question appears.  On your floppy, if you followed the previous
advice, is /etc/inittab.save, which can be happily copied to the
/mnt/etc/inittab file when the hard disk root filesystem (/dev/fp002)
is mounted from the floppy as /mnt.

		# umount /dev/fp002
		# fsck -s /dev/rfp002
		# mount /dev/fp002 /mnt
		# ls -l /mnt/etc/inittab
	If the file isn't there, or is corrupted:
		# cp /etc/inittab.save /mnt/etc/inittab
		# sync
		# umount /dev/fp002
		# sync
		# sync
		# reboot

	The other one time (out of 10), the /etc/inittab file is okay
but there is a /etc/utmp.lck file on the system.  This happens in very
rare race conditions involving the pututent(3C) routines.  Removing
this file and rebooting will generally recover the system.

------------------------------

Subject: 8.6. How can the UNIX PC be made more secure?

	The best way to not worry about security is to not allow users
on your machine that aren't trusted.  Especially users that have shell
access.

	There are several serious problems with the UNIX PC's
software, specifically the User Agent (UA).  The UA (the windowing
environment, also known as the Office environment) has some serious
security problems.  The best solution, of course, would be to remove
the entire UA system from your machine.  This isn't the easiest
procedure (since there are lots of programs scattered all around the
disk that are tied into the UA) and probably not the most desirable
for some novice users.  What's so wrong with it?  Well, look in your
trusty manuals, in section 4.  The manual UA(4) states (talking about
UA configuration files):

	[...] (page 4)
	EXEC and SH have a number of variations, which are used depending
	on the intelligence of the process being invoked. 
	[...]
	The variations are specified via option characters as follows:

		-n	Run the process without a window
		-w	Run the process without waiting
		-d	Run the process in a dimensionless window
		-p	Run the process with superuser privileges
	[...]

	The "-p" option being the problem.  For a little experiment to
show to a security conscious user (who still likes the UA), start out
in a non-privileged user account.

	First create a file in your home directory called "Office"
with the following lines:

		Name=Super User UNIX
		Default = Run
		Run=EXEC -pwd $SHELL

	Then type:

		$ exec /usr/bin/ua

	Select the new object that you just created ("Super User
UNIX") and then at the "#" prompt type "id" for the effect.

		# id
		uid=0(root) gid=0(root)

	OK, convinced?

	If you really *LOVE* the UA, you can do something about this.
Protect the programs /usr/lib/ua/uasetx and /usr/lib/ua/uasig so they
are not executable by "other" and only executable by a "trusted" group.

    -rwsr-x---  1 root    trusted    4268 Jan  1  1970 /usr/lib/ua/uasetx
    -rwsr-x---  1 root    trusted    2068 Jan  1  1970 /usr/lib/ua/uasig

	Another problem involves UA mail-handling.  Send yourself some
electronic mail.  Nothing elaborate is necessary.

		$ mail myself < /dev/null

	Select the [mailbox] icon when it comes up, and then when
you're in /bin/mail, at the "?" prompt type "! /bin/sh".  Poof!  Root
shell.

		# id
		uid=0(root) gid=0(root)
		# pwd
		/etc/lddrv

	This last problem can easily be corrected with Lenny
Tropiano's "email" program that is archived on OSU as "email.sh.Z".
That program sets the correct user id, group id, and home directory.

	The other things to look for are covered in lots of books on
UNIX security: directories with 777 permissions (world writable),
setuid programs that aren't very security conscious, etc.

------------------------------

Subject: 8.7. How do I access the expert menus in the diagnostics?

	The diagnostic floppy has a mode in it for the more
experienced system tester.  This mode allows the user to skip the
menus and just specify the test to run.  The diagnostic tests can be
run repeatedly for testing intermittent hardware.  The diagnostic
output can be sent to a parallel printer for review later, and also
for unattended testing (since the output can scroll off the screen
rather easily).

	To enter the expert mode, boot the diagnostic disk and type in
"s4test" at the first menu prompt.  The result is the following
prompt:

		expert>

	From there you can type "?" for a "semi-verbose" command
syntax, and a list of many of the tests.  For more detail on what
tests and subtests you can do, grab a nice file by Craig Votava
(cmv@ihlpf.att.com) called "s4test.info.Z" from the OSU Archives.

------------------------------

Subject: 9.0. Credits

    The following are just a few of the folks who made this list possible.
    Apologies to those who may have been missed.

	James Warner Adams	<adams@ucunix.san.uc.edu>
	Brad Bosch		<brad@i88.isc.com>
	Brian Botton		<botton@iexist.att.com>
	David Brierley		<dave@galaxia.network23.com>
	Brant Cheikes		<brant@manta.pha.pa.us>
	Alex S. Crain		<alex@umbc3.umbc.edu>
	Mark Dapoz		<...!cs.utoronto.edu!hybrid!mdapoz>
	Mike "Ford" Ditto	<ford@omnicron.com>
	Roger Florkowski	<...!cs.utexas.edu!taliesin!roger>
	Thad Floryan		<thad@btr.com>
	Darren Friedlien	<darren@bacchus.bacchus.com>
	Mark Galassi		<rosalia@max.physics.sunysb.edu>
	Robert Granvin		<rjg@sialis.com>
	Emmet P. Gray		<...!uunet!uiucuxc!fthood!egray>
	Jan Isley		<...!gatech!bagend!jan>
	Karl Kleinpaste		<karl@cis.ohio-state.edu>
	Gil Kloepfer, Jr	<gil@limbic.ssdl.com>
	Jon H. LaBadie		<...!princeton!jonlab!jon>
	John McMillan		<jcm@pegasus.att.com>
	Perry Miller		<pbm@cup.portal.com>
	John Milton		<jbm@megalinx.net>
	Scott H. Mueller	<scott@zorch.SF-Bay.ORG>
	Boyd Ostroff		<ostroff@oswego.oswego.edu>
	Arnold Robbins		<arnold@skeeve.ATL.GA.US>
	Gary W. Sanders		<gws@n8emr.nitetech.com>
	Rob Stampfli		<res@colnet.cmhnet.org>
	Lenny Tropiano		<lenny@icus.ICUS.COM>
	Craig Votava		<cmv@ihlpf.att.com>
	Norman Yarvin		<yarvin-norman@cs.yale.edu>
	Chris Lewis		<clewis@ferret.ocunix.on.ca>
-- 
John B Bunch              AT&T   I don't want the world, I just want your
9404 N. Church, APT 206  UnixPC           half....     -TMBG
Parma Hgts., OH 44130    IBM PC          jbunch@nyx.net
(440) 887-9310           KB2SIV          jbunch@nyx10.nyx.net
-- 
John B Bunch              AT&T   I don't want the world, I just want your
9404 N. Church, APT 206  UnixPC           half....     -TMBG
Parma Hgts., OH 44130    IBM PC          jbunch@nyx.net
(440) 887-9310           KB2SIV          jbunch@nyx10.nyx.net