----------------------------------------------------------------------
| Answers to some frequently asked questions about the AT&T UNIX PC, |
| as well as some frequent problems, hints, and solutions. |
----------------------------------------------------------------------
[$Revision: 3 $ $Date: 95/06/06 11:17:48 $]
Send updates to 3b1-faq@nyx.cs.du.edu.
1.0. General
1.1. What exactly are the AT&T UNIX PC, PC7300, and 3B1?
1.2. What is the operating system? Its origins?
1.3. What are the "OSU Archives"?
1.4. Who supports these machines? Are there any user groups?
1.5. Where can I get my machine serviced or fixed?
2.0. Software
2.1. How do I get my free Personal Calendar program?
2.2. What is "THE STORE!" and how can I access it?
2.3. Is there any GNU software available?
2.4. Is the X Window system available for the UNIX PC?
2.5. What's MGR?
2.6. How can I get a full 360kB when I format a MS-DOS floppy
on the UNIX PC?
2.7. Are there any other utilities for fiddling with MS-DOS
floppies?
2.8. What commercial software was available for the UNIX PC?
3.0. Software Development
3.1. Can I use the GNU C compiler in place of the hard-to-find
development set?
3.2. What do I with old object-file archives?
4.0. Administration
4.1. How do I restore from a backup when one of the floppies
is bad?
4.2. How can I make a floppy-disk-based UNIX for fsck'ing the
hard drive?
4.3. How can I get the machine to ask the device and program to
boot from?
4.4. How do I get multiple login windows?
4.5. What the heck is a +IN suffix on a file?
4.6. What do the HDERR (FDERR, or TPERR) messages in
/usr/adm/unix.log mean?
4.7. Why are the header files missing after an install of the
Development Set?
4.8. Why is the machine is booting over and over?
4.9. Is HoneyDanBer UUCP available to replace the stock uucp
software?
4.10. Why doesn't the On-Board Modem (OBM) work with some other
modems?
4.11. How do I get my on-board modem to be a dial-out-only modem?
4.12. Does the on-board modem support 2400 bps?
4.13. Why aren't the lpadmin, accept, and reject commands working
right?
4.14. Why are all the jobs on the printer always followed by a
formfeed?
4.15. Why can't I send bitmapped images to the printer correctly?
4.16. How do I configure a Hayes compatible external modem on the
UNIX PC?
4.17. Any tips on building Cnews?
4.18. What are lipc and nipc, and how can I use nipc instead of
lipc?
5.0. Upgrading
5.1. What third-party hardware is available?
5.2. Can I put a 68881 math coprocessor in my machine?
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: 1.0. General
This section contains general questions about the Unix-PC.
------------------------------
Subject: 1.1. What exactly are the AT&T UNIX PC, PC7300, and 3B1?
The name "UNIX PC" is a catch-all name for a set of machines
developed by Convergent Technologies (now part of Unisys) and sold by
AT&T in the mid to late 80's, all having the same basic configuration:
o 10MHz 68010 with custom MMU
o demand paged, virtual memory UNIX (max. process size 2.5M)
o 10/20/40/67MB disk
o 512k/1M/2MB RAM
o monochrome, quasi-Hercules display
As marketing strategies changed and basic features were added,
the original offering (the PC7300) became known as the 3B1. The 7300
machines featured 512k RAM on the motherboard with a 10 or 20MB disk.
The later 3B1 machines had 1M or 2M on the motherboard, and came with
a 40 or 67MB disk. Accommodating the larger, full-height drives in the
3B1 required that a hump be added to the sloping, wedge-shaped case
top. The 3B1 also has a heftier power supply.
------------------------------
Subject: 1.2. What is the operating system? Its origins?
The operating system is based on UNIX System V Release 2, with
extensions from BSD 4.1, BSD 4.2, System V Release 3 and Convergent
Technologies. The most recent version is 3.51, with a 3.51m FIXDISK
(2.0) available. The FIXDISK was available from AT&T directly, but is
now only available on the OSU Archives as FIXDISK2.0+IN.
------------------------------
Subject: 1.3. What are the "OSU Archives"?
OSU-CIS is an Ohio State University computer system which
holds a very large selection of UNIX-PC-related programs and files.
David Brierley (dave@galaxia.network23.com) is the current maintainer
of the archives. Ohio State graciously allows both anonymous FTP and
UUCP access to this archive. For FTP from the Internet, access is via
the machine archive.cis.ohio-state.edu (IP address: 128.146.8.52).
This is the URL for the OSU archives ftp access.
Dave Brierley has also now added www access to the UNIX-PC archives with
this URL.
They recommend the following L.sys (Systems) entries:
#
# Direct Trailblazer
# dead, dead, dead...sigh. for the 3rd time in as many months.
#
#osu-cis Any ACU 19200 1-614-292-5112 in:--in:--in: Uanon
#
# Direct V.32 (MNP 4)
# dead, dead, dead...sigh.
#
#osu-cis Any ACU 9600 1-614-292-1153 in:--in:--in: Uanon
#
# Micom port selector, at 1200, 2400, or 9600 bps.
# Replace ##'s below with 12, 24, or 96 (both speed and phone number).
# Can't use MNP with V.32 on -3196
#
osu-cis Any ACU ##00 1-614-292-31## "" \r\c Name? osu-cis nected \c GO \d\r\d\r\d\r\d\r\d\r\d\r\d\r in:--in:--in: Uanon
The file ~/att7300/README.Z contains a detailed list of the
archive's contents and should be the first thing to get.
Another source of software for Internet-connected sites is the
anonymous FTP area on ftp.cs.caltech.edu. Andy Fyfe
(andy@cs.caltech.edu) maintains new versions of TeX and GNU utilities
in the pub/3b1 directory.
[Ed. Note: As far as I know the archive at ftp.cs.caltech.edu for the
3b1 has been shut down, everything in the caltech archives
is mirrored in the OSU archives in ~/pub/att7300/csvax ]
------------------------------
Subject: 1.4. Who supports these machines? Are there any user groups?
The primary support for the machine is the Usenet newsgroup
comp.sys.3b1. There are a lot of dedicated people who enjoy these
machines and post a wealth of information to the network.
If you are in the Silicon Valley area, contact Thad Floryan
(thad@btr.com) for information on how to go to the "AT&T UNIX User's
Group" meeting on the fourth Wednesday of every month. Although it's
a generic AT&T UNIX group, a large number of the members (including
Thad) own UNIX PC's.
------------------------------
Subject: 1.5. Where can I get my machine serviced or fixed?
This is difficult, since AT&T no longer supports the machine.
The only remaining possibility appears to be ``A Small Computer Repair
Company'' (ASCRC). They will diagnose your problem, and repair or
replace the part that is broken. They will try their hardest to
repair the item first. You need to send the computer (or just the
component in question) to them. They will repair/replace it and ship
it back. Their turn-around time is usually 48-72 hours. They repair
AT&T's 6300, 6300+, 7300, 3B1 and UNIX PC computers. For more
information and/or to arrange servicing, contact:
A Small Computer Repair Company
5762 Dichondra Place
Newark, CA 94560
(510) 430-9226 or (510) 793-6980
------------------------------
Subject: 2.0. Software
This section describes some of the software available.
------------------------------
Subject: 2.1. How do I get my free Personal Calendar program?
Enclosed with the documentation of many or all UNIX PC's was a
card which you could send in to receive a free copy of the Personal
Calendar program. The machine is discontinued, so sending in the card
now won't accomplish anything, but that doesn't mean that you're out
of luck. Many machines were shipped with the calendar program in
/etc/fixes. Install it as follows (the name of the program is
"pcal"):
Append this to your /usr/lib/ua/Office file:
Name=Calendar
Default = Open
Open=EXEC -d /usr/bin/pcal -c
Help=EXEC -d /usr/bin/uahelp -h /usr/lib/ua/ua.hlp -t Calendar
Append this to your /usr/lib/ua/Preferences file:
Name=Calendar
Default = Open
Open=EXEC -d /usr/bin/pcal -p
Help=EXEC -d /usr/bin/uahelp -h /usr/lib/ua/ua.hlp -t Calendar
If you are using the pcal that is located in /etc/fixes:
$ su
Password:
# mv /etc/fixes/pcal /usr/bin
# mv /etc/fixes/pcal.hlp /usr/lib/ua
# chown bin /usr/bin/pcal /usr/lib/ua/pcal.hlp
# chgrp bin /usr/bin/pcal /usr/lib/ua/pcal.hlp
# chmod 755 /usr/bin/pcal
# chmod 644 /usr/lib/ua/pcal.hlp
------------------------------
Subject: 2.2. What is "THE STORE!" and how can I access it?
THE STORE! was owned and operated by AT&T, but is no longer
available for dialup uucp. All publicly accessible software that was
formerly available there has been moved and archived on the OSU
archives (see above).
------------------------------
Subject: 2.3. Is there any GNU software available?
There are fairly recent versions of gcc, g++, gas, gdb, and
emacs as binary-only cpio archives on OSU as well at CalTech (see
above).
------------------------------
Subject: 2.4. Is the X Window system available for the UNIX PC?
No, X has not been ported, and probably won't ever be ported
to the UNIX PC. X is quite large, and there have been several
discussions about porting it in comp.sys.3b1, but it's probably not
worth the effort.
------------------------------
Subject: 2.5. What's MGR?
MGR is an alternative windowing environment developed by Steve
Uhler at Bellcore and ported to the UNIX PC by Brad Bosch and Brian
Botton. The MGR windowing environment can replace the standard
/dev/window environment on the UNIX PC quite nicely (it does prevent
some UNIX PC specific programs from being run since the wind.o
loadable device driver is not loaded). MGR's user interface is quite
similar to a SunWindows environment, and raster operations are quite
fast. MGR is a user program, not a driver (besides the pty driver),
so it doesn't take up precious kernel space. It does require a
hardware modification called the VIDPAL. The VIDPAL (developed by
Brian Botton [...!att!iexist!botton]) is a daughterboard that sits
sandwiched between the 68010 CPU and the motherboard and allows direct
access to video memory from a user process.
At one time, Brian had provided VIDPAL kits but no longer does
so. If you want to try out MGR, but can't get a VIDPAL board, you may
want to try out John Milton's VIDPAL emulator -- a software-only
solution to video memory access. It is certainly slower than a real
VIDPAL, but is interesting none the less. The VIDPAL emulator was
posted to comp.sources.3b1 and so should be archived at standard
archive sites like uunet.uu.net.
A beta source distribution of MGR is on OSU, and can also be
gotten via anonymous ftp from max.physics.sunysb.edu (129.49.21.100).
------------------------------
Subject: 2.6. How can I get a full 360kB when I format a MS-DOS floppy
on the UNIX PC?
The md_format program defaults to formatting floppies with 8
tracks per sector (320kB). Use the "-9" option to get 9 tracks per
sector (360kB).
A further suggestion is to get windy ("windy.cpio.Z" at OSU)
and use it to run the md_format program, since md_format is one of
those which tends to turn your full-screen UNIX window into a little,
horrible-looking window. Windy fixes this by running the command in
its own window.
------------------------------
Subject: 2.7. Are there any other utilities for fiddling with MS-DOS
floppies?
The best of the bunch is Emmet P. Gray's Mtools package, which
is available on OSU. The utilities in this package allow one to copy
files, delete files, rename files, make directories, format disks,
etc. The 2.0 version of Mtools also supports the C:, D:, etc. drive
partitions of the DOS-73 emulator.
------------------------------
Subject: 2.8. What commercial software was available for the UNIX PC?
What follows is a list Steve Urich (beyo@beyonet.UUCP) typed
in from an old TRC catalog listing UNIX PC commercial software. At
the end of this list are a few more products seen by other folks on
Usenet.
UNIX PC SOFTWARE
Model Description
AT&T650002 GSS Terminal. Access to host graphics; Tektronix 4014 EGM
AT&T650005 3270+ Emulator. For SNA networks through dial-up or dedicated
lines
AT&T650007 AT&T Electronic Mail. menu driven with lots of options for
sending notes & files
AT&T650008 TCP/IP Ethernet, includes ICMP, UDP, NVT, PTP, SMPT, TFTP &
remote cmnds
AT&T650101 Voice Mail Software. Send and receive text and vioce mail
AT&T650S01 UNIX PC Network. Starlan messaging, file transfer and e-mail
AT&T650S02 UNIX PC Server. Starlan file server for MS-DOS networks.
AT&T651002 GSS Drivers+ VDI based software for printers
AT&T651003 UNIX System V Release 3.51
AT&T651004 GSS Toolkit. Graphics programming including metafile, plotting
& windows.
AT&T651005 GSS Metafile Interpreter. Library of functions for VDM standard
AT&T651006 GSS GKS. C tool implements the GKS standard
AT&T651007 GSS Plotting System. Chart building capabilities.
AT&T651008 GSS Window Manager for C language windowing.
AT&T651010 Informix C-ISAM. Tool for ISAM without a full RDBMS.
AT&T651018 Development Tools. Commercial and scientific ISAM sort/merge
AT&T651021 UNIX Utilities 3.51.
AT&T651201 MS Basic. Basic with over 120 commands from Microsoft.
AT&T651202 SMC Basic. Business Basic III compatability.
AT&T651203 SMC Run Time. Executable only; non-development version.
AT&T651204 RM Cobol. 1974 ANSI standard; certified by GSA.
AT&T651205 RM Cobol Run Time. Executable only; non-development version.
AT&T651209 LPI Fortran. Fortran 77 meeting ANSI X3.9-1978
AT&T651210 LPI Pascal. ANSI/IEEE standard supported by LPI Debug.
AT&T651211 LPI C Full implementation with LPI's modular component
architecture.
AT&T651216 LPI Debug. Interactive source level debugger works with all
LPI products.
AT&T651219 RM Fortran. High preformance implementation of F77 and ANSI
3.9-78.
AT&T651221 Animator. Integrated with MF Level II Cobol.
AT&T651223 Cobol LVL II. ANSI-74, ISAM tools, source compatible with
compact Cobol II
AT&T651224 Forms II. Visual programming tool for screen based forms
generation.
AT&T651226 Cobol LVL II Run Time. Executable only; non-development version
AT&T651227 SVS Fortran. ANSI-77 including Symbolic Debugger.
AT&T651229 SVS Pascal. Combines ISO and UCSD standards
AT&T651232 AT&T BASIC Interpreter. Standard Basic with many extensions
AT&T651233 AT&T BASIC Compiler. Full implementation of ANSI X3.60-78 with
extensions.
AT&T651237 UNIFY. Multi-user RDBMS.
AT&T651702 dBASE III. Ashton-Tate and AT&T
AT&T651706 QUICKCODE III. Automate dBASE III programming.
AT&T651707 dUTIL. Toolkit for dBASE III programmers.
AT&T651713 FILE-IT. Easy to use personal DBMS which builds informix files
thru menus.
AT&T651713 INFORMIX. The most flexible true relational multi-user
programming language.
AT&T651714 INFORMIX Run Time. Executable versions of Informix programs.
AT&T651715 SMART DBMS. Powerful relational database integrated with the
Smart package.
AT&T651L60 BASIC ORACLE. Fully compatible with IBM's SQL/DS and DB2
AT&T651L61 TURBO ORACLE. ANSI Standard SQL; C language precompiler.
AT&T652004 Multiplan. Microsoft's spreadsheet solution.
AT&T652009 GSS CHART. Interactive standalone package for mainframe quality
graphics.
AT&T652010 GSS Sound Pres. Fully featured interactive graphics on a wide
variety of devices.
AT&T652016 AT&T SUPERCOMP 20. The multiuser standard of spreadsheets.
AT&T652017 BUSINESS GRAPHICS. Turn your 20/20 data into charts.
(Requires Supercomp 20).
AT&T652022 PAINT POWER. Sophisticated but easy to use drawing package.
AT&T652026 SMART SFTWR SYS. Database-Spreadsheet-Wordprocessor.
AT&T652029 TEAM POWER. Office work groups for 2 to 5 users sharing all
resources.
AT&T652202 MS WORD. Microsoft's professional word processor for UNIX.
AT&T652204 AT&T Word Processor. Easy to use word processor.
AT&T652208 Crystalwriter. Powerful word processing with English language
commands.
AT&T652209 Wordstar 2000. MicroPro's best selling word processor.
AT&T652210 SMART WORD PROCESSOR. Professional word processor which works
with Smart.
AT&T653001 BUSINESS ACCTING. Complete business accounting system.
AT&T653002 OC/INV. Complete package for managing incoming orders and
product control.
AT&T653003 PAYROLL. Complete payroll and personnel management.
AT&T653004 A/P. Comprehensive control system-can be integrated with G/L.
AT&T653005 A/R. Maintains customer profiles and accounts-can be integrated
with G/L.
AT&T653006 GENERAL LEDGER. Fully automated package for maintaining
business records.
AT&T?????? Wordmarc Composer. Word processing package.
AT&T?????? Pegasys. Computer-aided design.
AT&T?????? Image Director
AT&T?????? Samna. Word processor.
AT&T?????? Q-Office. Office integration
AT&T?????? User Agent Design Tool.
------------------------------
Subject: 2.0. Software Development
This section give a little info on what is necessary for software
development
------------------------------
Subject: 3.1. Can I use the GNU C compiler in place of the hard-to-find
development set?
In theory, anyway, most of what you need from the Development
Set can be obtained elsewhere. There are at least five things that
you need to do C programming on the UNIX PC:
o a C compiler
Use GCC (binary available in languages/gcc-gas.tar.Z
on OSU-CIS)
o an assembler
Use GAS (binary available in languages/gcc-gas.tar.Z
on OSU-CIS)
o a linker/loader (/bin/ld)
This is included in the Foundation Set.
o system header files
Alex Crain (alex@umbc3.umbc.edu) has created a set of
ANSI header files which appeared in Volume 1, Issue 49
of comp.sources.3b1, with one patch.
o libraries
This is the tough one. There are a bunch of libraries
that come the Development Set which would be difficult
to replace. One of the most important (/lib/libc.a)
is on the Encryption Set disks in the Foundation Set.
Supposedly FIXDISK2.0 contains one or more updated
libraries. The network and OSU remain good sources
for strings, POSIX, dirent, etc. libraries. Of
course, there are other libraries like /lib/libm.a
(math) and /lib/libld.a (COFF access) which might be
more difficult to replace.
This writer hasn't actually heard of anyone actually pulling
this feat off, but sometimes he has trouble paying attention. ("Eh?")
(Thanks to Glenn Thobe for providing up-to-date information.)
------------------------------
Subject: 3.2. What do I with old object-file archives?
The object-file archive format was changed from release 3.0 to
3.5 of the operating system. There is a utility to convert these
archives to the new format.
# convert oldarchive.a newarchive.a
Or you can run:
# arconvert
# file oldarchive.a newarchive.a
oldarchive.a: 5.0 archive
newarchive.a: 5.2 archive
That will convert all the archives in /usr/lib and /lib that
are in the old 5.0 archive format to the new 5.2 archive format.
------------------------------
Subject: 4.0. Administration
This section contains info on how to administer the 3b1 and some of the
available packages for the 3b1
------------------------------
Subject: 4.1. How do I restore from a backup when one of the floppies
is bad?
Get the public domain program called "afio". It's available
in the OSU archives. It supports reading the floppy disk backup set,
and will ignore errors and recover when it finds the next cpio ASCII
header if you use the "-k" option. The backup set must be written
using cpio and the "-c" option must have been used during the writing
of the diskettes.
The syntax for afio to restore is:
# cd /
# afio -ivk /dev/rfp021
^ use the k option to allow dealing with
corrupted archives
------------------------------
Subject: 4.2. How can I make a floppy-disk-based UNIX for fsck'ing the
hard drive?
Make a copy of the "Floppy Filesystem Disk" (Disk 3 of ##) of
the Foundation Set as follows. Insert the original floppy filesystem
diskette, and have a formatted, 10 sectors/track diskette ready. Type
the "fpcp" command and copy it.
Now that you have a copy, place a copy of /etc/fsck on it.
While you're at it, save your /etc/inittab in case it gets destroyed
in the future and you can't get the machine to boot.
# mount /dev/fp021 /mnt
# cp /etc/fsck /mnt/etc/fsck
# cp /etc/inittab /mnt/etc/inittab.save
# sync
# umount /dev/fp021
Now you have a disk that will help you do a standalone
filesystem check.
To use this, first boot the system using the "Floppy Boot
Disk" (Disk 2 of ##). It will stop and ask you to insert the Floppy
Filesystem Disk. Insert your copy instead. When it comes to the
first question, interrupt the script with to get a "#" prompt.
The disk is already mounted as /mnt, so unmount it:
# umount /dev/fp002
warning: /dev/fp002 not in mount table
Do your filesystem check:
# /etc/fsck -D -S /dev/rfp002
Reboot the system:
# sync
# sync
# reboot
NOTE: the root filesystem is the floppy filesystem, so the
"-s" option to fsck salvages the floppy root filesystem, not the root
filesystem on the hard drive. This is why "-s" is not used above.
*** THE FOLLOWING IS NOT FOR THE UNINHIBITED OR CASUAL USER ***
For the real UNIX hacker out there (who is fortunate enough to
have a tape drive on your machine) you could grab the fp_unix.sh.Z,
conf.sh.Z and kern.cpio.Z files from the OSU Archives. This is a set
of tools, along with the kernel object files for 3.51m, that will let
you link in the tape driver (tp.o) to your floppy UNIX kernel and give
you full control of the tape device from the floppy UNIX. This is
very handy for doing full backups or restores from the floppy!
------------------------------
Subject: 4.3. How can I get the machine to ask the device and program
to boot from?
By default the UNIX PC is set up with the non-verbose system
loader. This can be changed to the "verbose" loader which will ask
what program and device to load from.
*** WARNING *** Any time you write to the disk device like the
following, be extra careful that you type the correct device name. A
backup is always recommended.
Insert a blank diskette in the floppy drive.
# fdfmt.vl
# /etc/ldrcpy /dev/rfp020 /dev/rfp000
Reboot your machine and you'll be able to load from the floppy
or the hard disk whatever program you desire (not that there is too
much you can load). It may be useful to copy the several diagnostic
utilities to the hard disk (for easy retrieval).
Insert your diagnostic disk ...
# mount /dev/fp021 /mnt -r
# mkdir /dgn
# cp /mnt/s4diag /dgn/s4diag
# umount /dev/fp021
This can be repeated for diagnostics like, STARLAN, Voice
Power, DOS-73, Floppy Tape, etc. Name the diagnostic programs
something unique (slndiag, vpdiag, dosdiag, etc.) Now you can load
from the hard disk /dgn/s4diag, /dgn/vpdiag, etc.. and have that
diagnostic utility handy when needed.
NOTE: After you do this procedure your system will not reboot
automatically (after power failures) without some user input.
------------------------------
Subject: 4.4. How do I get multiple login windows?
It is fairly easy to start up several windows with logins on
them: all you need to do is add additional getty commands to the
/etc/inittab file. Don't be afraid to edit your /etc/inittab, even
though there is a big warning at the top of the file -- nothing will
happen if you are careful.
vid:2:respawn:/etc/getty window 9600
vd2:2:respawn:/etc/getty window 9600
vd3:2:respawn:/etc/getty window 9600
^ NOTE: in all cases there is a space character there.
This will start up 3 windows with logins. Using the
key, you can cycle through all of them.
Another option is to get the Boyd Ostroff's "wlogin" package,
posted to comp.sources.3b1 and available from the archives. This
program can either replace or work with /etc/getty on the console and
lets you have multiple overlapping 24 line x 80 character windows
using a smaller font. It will work with or without wmgr, smgr, ph and
ua. The number of windows and their position is fully configurable by
the user. If desired, it can provide a simple alternative windowing
environment to the UA, allowing you to remove ua and all its
associated files, thus freeing up over 1 MB of disk space.
------------------------------
Subject: 4.5. What the heck is a +IN suffix on a file?
On the UNIX PC, "+IN" denotes an "Installable File". If you
were to use the UA it would show that it's an Installable File. The
Installable format is just a normal cpio archive. The file can be
installed by hand by doing:
# mkdir /tmp/install
# mv FILE+IN /tmp
# cd /tmp/install
# cpio -icduvmB < ../FILE+IN
[...]
# ./Install
A list of other Suffixes appears in the file
/usr/lib/ua/Suffixes.
------------------------------
Subject: 4.6. What do the HDERR (FDERR, or TPERR) messages in
/usr/adm/unix.log mean?
There are several possible causes for these. One of course is
a bad disk, or a disk that has gone bad. But one should check the
other options before determining the disk is really bad.
Dirty power supply contacts have been known to cause these
problems. Open the machine and clean the power supply contacts on the
ribbon-type cable that goes from the supply to the motherboard.
A weak or faulty power supply could also be your problem.
Test the power supply voltages (with the hard drive and motherboard
connected as a load), using some sort of Y-connector off the power
cable to the hard drive. Test the +12VDC and +5VDC supplies with a
meter, and make sure they are within acceptable tolerances. If they
are too low, intermittent HDERRs will occur. There are several
adjustment screws on the power supply (marked +5, +12, -12) that can
adjust these values. Turning clockwise will increase the value, and
counterclockwise will decrease it. Faulty power can make a good hard
disk or motherboard appear to be bad.
More commonly you'll find FDERRs in your /usr/adm/unix.log
file. Every time you format a new floppy disk, you'll get at least
one. Floppy disks are prone to more errors, especially if you get
those bargain basement brand types.
TPERRs might appear if you have a bad or defective cartridge
tape block. If you start seeing a lot of these during your backup or
verify phases, it would be a good idea to re-format the tape and run
another surface check (to check for possibly bad streams, or good
streams that have gone bad).
------------------------------
Subject: 4.7. Why are the header files missing after an install of
the Development Set?
One of the packages' Install scripts (apparently that of
"Curses/Terminfo Programmers Package"), copies curses.h to
/usr/include anticipating that the directory has already been created
by a previous package's Install script. If /usr/include doesn't exist
yet because the packages weren't installed in the right order, the
Install script will make a *file* called /usr/include, which is really
curses.h.
To prevent this from happening, install the packages in this
order:
Curses/Terminfo End User Package
Development Set 3.5x
Curses/Terminfo Programmers Package
------------------------------
Subject: 4.8. Why is the machine is booting over and over?
The stock /etc/rc that called when the machine boots up writes
the output of the fsck(1M) to the hard disk (/etc/.lastfsck). This is
definitely a problem. Many people prefer having control over what
fsck does rather than running fsck with the "-y" option and having it
do all the work. A lot of times fsck will delete files or clear them
and you have no control over what it's doing.
Check out the fsokay.cpio.Z package on OSU, it contains some
enhanced /etc/rc scripts and tools to make the booting phase of the
UNIX PC a lot cleaner and more reliable.
------------------------------
Subject: 4.9. Is HoneyDanBer UUCP available to replace the stock uucp
software?
HDB binaries and documentation are available on OSU as the
following files:
~/att7300/STORE/HDB3.5+IN.Z
~/att7300/STORE/HONEYDOCS+IN.Z
------------------------------
Subject: 4.10. Why doesn't the On-Board Modem (OBM) work with some
other modems?
One problem is that the OBM seems to create answerback tones
which identifies itself (for some reason) as an MNP reliable modem
(!). This confuses some MNP modems and the Telebit Trailblazer (only
if set in MNP reliable mode). These cannot be altered in the OBM, but
often a system which cannot call the UNIX PC OBM can be called by the
UNIX PC OBM.
Another problem is that the OBM has trouble establishing a
UUCP connection when calling Telebits configured in locked-speed mode.
Chris Lewis (clewis@ferret.ocunix.on.ca) has written a program called
phfix which can be invoked from /etc/rc to correct this particular
problem using the (undocumented?) PIOCOVSPD setting on the OBM. The
result is that the OBM can successfully connect with locked-speed
Telebits, and they can connect back. The program is not on OSU or in
any comp.sources.3b1 archives, so it is presented here:
/* Sample program for bashing the OBM into tone dial and
setting PIOCOVSPD to permit talking to certain modems
(particularly telebits).
The documentation mentions 2.3% speed change for PIOCOVSPD.
That's all I know.
You are free to do whatever you wish with this code, but
please leave this comment in.
Chris Lewis, clewis@ecicrl.uucp, Jan 2 1991.
*/
#include
#include
#include
main(argc, argv)
int argc; char **argv; {
int f;
struct updata upd;
f = open("/dev/ph1", O_RDWR | O_NDELAY, 0);
if (f < 0) {
perror("/dev/ph1");
exit(1);
}
ioctl(f, PIOCGETP, &upd); /* retrieve Phone parameters */
#ifdef NEVER
/* if you want to play with these go ahead - for some reason my
3b1 always comes up in PULSE */
upd.c_lineparam &= ~PULSE; /* reverse the sense to set to pulse dial */
upd.c_lineparam |= DTMF; /* reverse the sense to set to pulse dial */
upd.c_feedback |= SPEAKERON;
upd.c_feedback |= LOUDSPK;
ioctl(f, PIOCDISC, &upd); /* apply PIOCOVSPD for talking to some modems*/
#endif
ioctl(f, PIOCOVSPD, &upd); /* apply PIOCOVSPD for talking to some modems,
eg: Telebits */
ioctl(f, PIOCSETP, &upd); /* set phone parameters */
}
------------------------------
Subject: 4.11. How do I get my on-board modem to be a dial-out-only
modem?
The easiest way to do this is to edit (with your favorite
editor) the /etc/inittab file. Change the line:
ph0:2:respawn:/etc/getty ph0 1200
to:
ph0:2:off:/etc/getty ph0 1200
^
NOTE: There is a space character in front of the first "ph0"
in the lines above. ph0 may be ph1 if you are using line 2 for the
on-board modem.
------------------------------
Subject: 4.12. Does the on-board modem support 2400 bps?
In what Convergent considered future releases of the UNIX PC
(P6), there was to be a 2400 bps modem. This machine was never fully
developed to production levels, and therefore there is no 2400 bps
modem. As the existing OBM is a proprietary AT&T chip, the likelihood
of there being a drop-in upgrade is remote at best.
Interesting trivia: The P6 machine was to have a color video,
60MB QIC tape, as well as a 68020 CPU paired with a 68881 FPU.
------------------------------
Subject: 4.13. Why aren't the lpadmin, accept, and reject commands
working right?
The lpadmin(1M), accept(1M), and reject(1M) commands require
the user to be logged in as (or su'd to) user "lp". Being root will
not work.
# su lp
$ disable lp1
$ /usr/lib/lpadmin -plp1 -mdumb -v/dev/lp
$ enable lp1
------------------------------
Subject: 4.14. Why are all the jobs on the printer always followed by
a formfeed?
The line printer driver follows each close(2) of /dev/lp with
a formfeed. There is no way to disable this, except by avoiding the
driver altogether and going straight to the raw printer device.
# su lp
$ /usr/lib/lpadmin -plp1 -mdumb -v/dev/rawlp
------------------------------
Subject: 4.15. Why can't I send bitmapped images to the printer correctly?
8-bit, bitmapped images need to go to the raw printer device,
/dev/rawlp.
------------------------------
Subject: 4.16. How do I configure a Hayes compatible external modem
on the UNIX PC?
Thanks to Jim Adams, included in the OSU Archives is an
informational posting (posted to unix-pc.uucp and comp.sys.att) on how
to set up your external modem under HDB uucp. The file is named
HDB_Modem.Z.
The file uses the "hayes" modem as the example, although
information could probably be extracted for uses with other modems.
If you want information on how to set up your Telebit Trailblazer
modem, get the file tb-setup.sh.Z on OSU.
This posting was too large to include in its entirety here, so
a completely separate posting was made. He goes into how to set up
the modem, proper cabling, proper Devices and Dialers entries, and a
discussion on HFC (hardware flow control).
Additionally, the "modemon" package by Boyd Ostroff provides a
simple way to configure external modems. It consists of a small
program executed via inittab which can reset your modem and execute
any desired AT commands each time a getty is spawned on the serial
port. This allows you to configure the modem differently for incoming
and outgoing calls and is especially handy if your modem doesn't have
nonvolatile parameter RAM. The package includes complete
documentation and examples of how to set up an external modem. It was
posted to comp.sources.3b1 and is available in the archives.
------------------------------
Subject: 4.17. Any tips on building Cnews?
A sample build.def from Jan Isley (jan@bagend.uucp) follows
with the following interesting characteristics noted:
- news account is uid=20, gid=20
- bin owns the executables
- using Doug Gwyn's dirent library (available on OSU)
- using a mailer that understands @ addressing (like smail 2.5)
- UNIX PC kernel does not support setuid(geteuid())
- other site-specific stuff (machine name and organization)
newsuid="news"
newsgid="news"
binuid="bin"
bingid="bin"
binsrc="no"
mess="no"
unmess="no"
newsarts="/usr/spool/news"
newsctl="/usr/lib/news"
newsbin="/usr/lib/newsbin"
newsumask="002"
newsmaster="usenet"
newsconfig="/usr/lib/news/bin/config"
chown="/bin/chown"
chboth="yes"
chgrp="/bin/chgrp"
unixkind="usg"
addrsize="big"
dbmopt=""
faststdio="no"
storeval="yes"
faststrchr="yes"
sete="no"
ranlib="no"
symdef="yes"
cc="ccc"
copts="-O"
ldopts="-s"
postlibs="-ldirent"
hostname="no"
uname="yes"
uucptype="hdb"
dftype="ustat"
dfdirs="no"
archive="yes"
spacelow="yes"
nfsgroup="no"
server="newsie"
manpages="/usr/man"
manmess="no"
rbin="/usr/bin"
doui="no"
bin="/usr/bin"
atok="yes"
postdefltdist=""
paranoid="no"
whoami="bagend"
mailname="bagend.uucp"
organization="1 Bagshot Row, the Shire"
postdefltgroup=""
newspath="/bin:/usr/bin:/usr/local/bin"
fake=" fsync.o mkdir.o symlink.o strerror.o"
fakehdrs=" ../include/string.h ../include/sys/timeb.h"
immediate="no"
inputstall="yes"
defsub=""
mustsub=""
------------------------------
Subject: 4.18. What are lipc and nipc, and how can I use nipc instead
of lipc?
/etc/lddrv/lipc is the loadable device driver that implements
System V inter-process communications on the UNIX PC (semget(), etc.).
/etc/lddrv/nipc is a newer implementation of this driver which fixes
an IPC bug, but was never fully tested. The default driver loaded by
/etc/lddrv/drivers is lipc, and in fact, this is the driver which the
program ipcs looks for when it reports on IPC usage. No bugs with nipc
have been uncovered since it was made available (87?), and many people
would rather run the "better" driver than stick with the old lipc.
There are two approaches for replacing lipc with nipc. The
most obvious way is to edit /etc/lddrv/drivers to replace lipc with
nipc for when the system is next booted, then replacing the in-core
lipc with nipc with the following sequence:
# cd /etc/lddrv
# ./lddrv -dv lipc
# ./lddrv -av nipc
Unfortunately, ipcs will not find the lipc driver, and so
won't give any IPC status. This can be overcome by wielding a binary
editor in the general direction of /usr/bin/ipcs, replacing the
hard-coded instances of "lipc" with "nipc".
Another method is to remove lipc from core (./lddrv -dv lipc),
rename its files to something benign (lipc -> lipc.old, lipc.o ->
lipc.o.old, ifile.lipc -> ifile.lipc.old), rename the nipc files to be
lipc (nipc -> lipc, nipc.o -> lipc.o, ifile.nipc -> ifile.lipc), and
finally reload the new lipc (./lddrv -av lipc).
------------------------------
Subject: 5.0. Upgrading
This secion contains info on upgrading your unix-pc.
------------------------------
Subject: 5.1. What third-party hardware is available?
Presently there are no known distributors that have a
selection of UNIX PC hardware. The best source for hardware is the
network, reading comp.sys.3b1 and misc.forsale. There is always
someone selling UNIX PCs and the appropriate hardware expansion.
------------------------------
Subject: 5.2. Can I put a 68881 math coprocessor in my machine?
AT&T had listed a 68881 feature as being available for the
UNIX PC, but it was never fully developed.
------------------------------
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 <...!cis.ohio-state.edu!n8emr!uncle!jbm> 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.
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.
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
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 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
Brad Bosch
Brian Botton
David Brierley
Brant Cheikes
Alex S. Crain
Mark Dapoz <...!cs.utoronto.edu!hybrid!mdapoz>
Mike "Ford" Ditto
Roger Florkowski <...!cs.utexas.edu!taliesin!roger>
Thad Floryan
Darren Friedlien
Mark Galassi
Robert Granvin
Emmet P. Gray <...!uunet!uiucuxc!fthood!egray>
Jan Isley <...!gatech!bagend!jan>
Karl Kleinpaste
Gil Kloepfer, Jr
Jon H. LaBadie <...!princeton!jonlab!jon>
John McMillan
Perry Miller
John Milton <...!cis.ohio-state.edu!n8emr!uncle!jcm>
Scott H. Mueller
Boyd Ostroff
Arnold Robbins
Gary W. Sanders <...!osu-cis!n8emr!gws>
Rob Stampfli <...!osu-cis!n8emr!kd8wk!res>
Lenny Tropiano
Craig Votava
Norman Yarvin
Chris Lewis
--