home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / answers / sco / xenix < prev    next >
Text File  |  1993-09-29  |  67KB  |  1,556 lines

  1. Newsgroups: comp.unix.xenix.sco,news.answers
  2. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!news.kei.com!sol.ctr.columbia.edu!usc!cs.utexas.edu!chinacat!chip
  3. From: chip@chinacat.unicom.com (Chip Rosenthal)
  4. Subject: Welcome to comp.unix.xenix.sco [monthly FAQ posting]
  5. Expires: Sun, 28 Nov 1993 04:23:53 GMT
  6. Organization: Unicom Systems Development, Austin, TX
  7. Date: Wed, 29 Sep 1993 04:23:52 GMT
  8. Approved: news-answers-request@MIT.Edu
  9. Message-ID: <sco-xenix-930928@chinacat.unicom.com>
  10. Followup-To: comp.unix.xenix.sco
  11. Summary: answers to frequently asked questions
  12. Supersedes: <sco-xenix-930610@chinacat.unicom.com>
  13. Lines: 1540
  14. Xref: senator-bedfellow.mit.edu comp.unix.xenix.sco:8915 news.answers:12953
  15.  
  16. Archive-name: sco-xenix
  17. News-answers-archive-name: sco/xenix
  18. Posting-frequency: monthly
  19. Version: 1.47
  20.  
  21. @(#) sco-xenix 1.47 93/09/28 23:07:56
  22.  
  23. Welcome to comp.unix.xenix.sco.  This newsgroup is about the Xenix
  24. operating system from the Santa Cruz Operation (SCO).  If you have an
  25. SCO Xenix question, then you've come to the right place.
  26.  
  27. This is NOT the newsgroup for SCO Unix or Open Desktop questions.  If
  28. you want to talk about other SCO operating systems, please show some
  29. courtesy and use an appropriate newsgroup, such as comp.unix.pc-clone.32bit.
  30. (Hey!  Don't blame me.  I voted against that silly name.)  This is also
  31. NOT the right place for questions about Xenix implementations from
  32. other vendors.  Use comp.unix.xenix.misc.
  33.  
  34. Certain questions are asked frequently on the net.  Frequently asked
  35. questions (FAQs) get old and boring after a while.  We can stamp out
  36. FAQs in your lifetime!  Please review this message before posting your
  37. question to comp.unix.xenix.sco.
  38.  
  39. If you haven't already done so, please read the periodic postings in
  40. news.announce.newusers entitled "A Primer on How to Work With the Usenet
  41. Community", "Answers to Frequently Asked Questions about Usenet" and
  42. "Hints on writing style for Usenet".  You should also review the
  43. comp.unix.questions FAQ postings.  These answer general questions,
  44. such as `How do I delete a file with funny characters in the name?'
  45. and `How can I change my shell prompt?'  C programmers should check
  46. out the FAQ in comp.lang.c.
  47.  
  48. Whenever we talk about Xenix here, we really mean SCO Xenix System V.
  49. Our comments often won't apply to the other kinds of Xenix.  Also, be
  50. particularly careful if you use Xenix/286.  It's been ages since we've
  51. used it and some of our suggestions might not apply.
  52.  
  53. This message is maintained and posted monthly by Chip Rosenthal.  Your
  54. corrections, additions, and comments are encouraged.  Please mail them
  55. to chip@chinacat.unicom.com.  These questions and answers were written
  56. by Chip Rosenthal, Jeff Liebermann, Ronald Florence, Chip Salzenberg,
  57. Ronald Khoo, Vic Michael, and Stephen Bleazard.  Helpful contributions
  58. and comments have been provided by Andrew Phillips, Peter Funk, Paul
  59. Warren, and Lawrence Kirby.
  60.  
  61. Please examine the date near the top of this message.  This message
  62. is updated frequently, and any version older than 90 days is possibly
  63. obsolete.  The latest copy of this message is always available via
  64. anonymous FTP to rftm.mit.edu in the "/pub/usenet/comp/unix/xenix/sco"
  65. directory.  It may also be retrieved via e-mail.  Send a message to
  66. "mail-server@rtfm.mit.edu" that says "send usenet/news/answers/sco/xenix".
  67.  
  68.  
  69. ******************************************************************************
  70. ****************************  Questions Answered  ****************************
  71. ******************************************************************************
  72.  
  73.  
  74. ===> Product Questions:
  75.  
  76.     QA1.  What is the difference between Unix and Xenix?
  77.     QA2.  What is the minimum system required to run Xenix?
  78.     QA3.  Should I buy Unix or Xenix?
  79.     QA4.  What are the current Xenix versions?
  80.     QA5.  Where can I get Xenix fixes?
  81.     QA6.  I'm using an older Xenix/386 version.  What fixes do I need?
  82.     QA7.  Does SCO have a BBS?
  83.  
  84.  
  85. ===> General Xenix Questions:
  86.  
  87.     QB1.  Can't boot.  My system used to work.
  88.     QB2.  Configure(ADM) fails when I modify my system name.
  89.     QB3.  The system is crashing with `parity error' panics.
  90.     QB4.  Login fails without prompting for password.
  91.     QB5.  Can I use `gcc' instead of buying the SCO Development System?
  92.     QB6.  Program `foobar' dumps core with a stack overflow. [Xenix 286]
  93.     QB7.  Spell cannot initialize hash table.
  94.     QB8.  Will my laser printer work with the Text Processing Package?
  95.     QB9.  Where is crypt?
  96.     QB10. How can email handle `internet' addresses or use a `smart host'?
  97.     QB11. Where can I find freely available software for Xenix?
  98.     QB12. Why don't my arrow keys work in `vi'?
  99.  
  100.  
  101. ===> Disk and Filesystem Questions:
  102.  
  103.     QC1.  Can I use a disk bigger than 1024 cylinders?
  104.     QC2.  Why won't Xenix recognize my SCSI disk?
  105.     QC3.  Where is the `/u' filesystem I created?
  106.     QC4.  `WARNING!! - mounting: <usr> as <news>' message when booting.
  107.     QC5.  `POSSIBLE FILE SIZE ERROR' when running `fsck'.
  108.     QC6.  Is disk fragmentation curable?
  109.     QC7.  Can I put a CD-ROM drive on my Xenix system?
  110.  
  111.  
  112. ===> Communications Questions:
  113.  
  114.     QD1.  How do I add more than 2 COM ports?
  115.     QD2.  How do I set a 19,200 baud rate?
  116.     QD3.  How can I have more mscreen(C) sessions?
  117.     QD4.  Upgraded to 2.3.4 and flow control broke with mscreen(C).
  118.     QD5.  Terminals act funny, modems drop characters, help!!
  119.     QD6.  Does Xenix support 16550A UARTs?
  120.     QD7.  How do I increase the number of `clists'?
  121.     QD8.  How do I change the 16550A trigger level?
  122.     QD9.  How do I adjust the `ttyhog' value?
  123.     QD10. BSD based uucp can't connect to my machine.
  124.     QD11. uucp truncates my system name to seven characters!
  125.     QD12. What is the uucp `windows' patch?
  126.     QD13. uucp gives `alarm' messages, eventually dies.
  127.  
  128.  
  129. ===> Display and Graphics Questions:
  130.  
  131.     QE1.  How come Xenix won't recognize my VGA display?
  132.     QE2.  How can I do a printscreen under Xenix?
  133.     QE3.  How can I blank the console display when it is idle?
  134.     QE4.  How can I do graphics under Xenix?  What programs are available?
  135.     QE5.  CGI graphics mangles grey scale on a mono VGA.
  136.     QE6.  CGI graphics fail on a LaserJet in landscape mode.
  137.  
  138.  
  139. ===> Networking Questions:
  140.  
  141.     QF1.  What do I need to run TCP/IP?
  142.     QF2.  What do I need to run NFS?
  143.     QF3.  How can I run uucp over TCP/IP?
  144.     QF4.  What does "NOTICE: tcp sum: src C06C6901, sum 0000B004" mean?
  145.  
  146.  
  147. ===> Xenix and MS-DOS Interoperability Questions:
  148.  
  149.     QX1.  Can Xenix share a hard disk with MS-DOS?
  150.     QX2.  Can Xenix access MS-DOS disks?
  151.     QX3.  Can Xenix execute MS-DOS programs?
  152.     QX4.  Can MS-DOS execute Xenix programs?
  153.  
  154.  
  155. ===> The (in)Famous Xenix Cheat-Sheet:
  156.  
  157.     QZ1.  What the $%*&! is happening?
  158.  
  159.  
  160. ******************************************************************************
  161. ****************************  Product Questions  *****************************
  162. ******************************************************************************
  163.  
  164.  
  165. QA1.  What is the difference between Unix and Xenix?
  166.  
  167.     Xenix is Unix -- or at least one flavor of it.  In the late 70's,
  168.     Microsoft licensed the Unix sources from AT&T and ported them to
  169.     a number of platforms.  In those days, AT&T would license the Unix
  170.     software but not the Unix name, thus each company had to invent
  171.     their own name.  Microsoft picked Xenix.  Microsoft did not sell
  172.     Xenix to end users.  Instead, they licensed the software to OEMs
  173.     (Intel, Tandy, Altos, SCO, etc.) who provided a finished end-user
  174.     package.  Microsoft no longer supports Xenix, and in fact never
  175.     even offered a 286 or 386 version.
  176.  
  177.     Several Unix implementations for the PC architecture have been
  178.     tried with varying levels of success.  SCO Xenix for the PC/XT
  179.     was one.  Nearly all of the PC/XT implementations were clunkers,
  180.     because the machine lacked the hardware necessary for robust Unix
  181.     operations.  The PC/AT offered hardware memory protection, and
  182.     SCO Xenix/286 took advantage of it.  SCO Xenix/386 added demand
  183.     paged virtual memory.  These added features made multiuser PCs
  184.     viable, and SCO Xenix popular.
  185.  
  186.     SCO Xenix starts with a Unix System III base, throws in several
  187.     Berkeley enhancements, and adds features to obtain conformance to
  188.     the System V Interface Definition (SVID).  Today, the bulk of the
  189.     code is from System V.  Xenix/386 even has capabilities to execute
  190.     Unix programs.  It differs, however, in many of the SVID `optional'
  191.     areas people tend to expect of a full System V.  SCO Xenix lacks
  192.     a real `inittab', for example.  You need to go to a real System V,
  193.     such as SCO Unix, for all these features.
  194.  
  195.  
  196. QA2.  What is the minimum system required to run Xenix?
  197.  
  198.     You can build a minimal, single-user Xenix system with an 80386SX
  199.     computer, 2MB to 4MB RAM, and 40MB hard disk.  A pretty spiffy
  200.     system, suitible for development, would be an 80386DX computer
  201.     with 4MB RAM and 80MB hard disk.  Additional resources (more speed,
  202.     more RAM, more disk) will be required to support additional users,
  203.     large applications, networking, or X windows.  Xenix/286 will run
  204.     on a PC/AT, but you will quickly become frustrated with its
  205.     limitations, especially if you are a programmer.
  206.  
  207.  
  208. QA3.  Should I buy Unix or Xenix?
  209.  
  210.     If you are happy running Xenix now, don't rush to throw it away.
  211.     Xenix will be around for some time.  If, however, you are new to
  212.     multi-user computing, you should consider Unix System V Release
  213.     3.2 or Release 4.X.
  214.  
  215.     There are a number of reasons why Xenix is slowly fading.  It is
  216.     a mature product.  There will be few future enhancements.  Fewer
  217.     and fewer vendors are supporting it.  Nearly every program written
  218.     for Xenix will run under Unix too.  Unix offers a lot more goodies
  219.     and better performance than Xenix.
  220.  
  221.     One advantage to Xenix is that it requires less memory and disk
  222.     space.  At today's hardware prices that usually isn't a big deal.
  223.     There are certain applications, however, where this is attractive.
  224.  
  225.     Although Unix has a lot more to offer, a number of Xenix enthusiasts
  226.     wouldn't switch if you gave them a free copy of Unix.  They would
  227.     gladly forego the new features to avoid the bloat of System V.
  228.  
  229.  
  230. QA4.  What are the current Xenix versions?
  231.  
  232.         Package                 Version         `perms' file
  233.         ----------------------  --------------  ---------------------------
  234.         Xenix Runtime System    2.3.4           inst, dsmd, tpmd, rts, ext
  235.         Xenix Runtime (286)     2.3.2           inst, dsmd, tpmd, rts, ext
  236.         Development System(386) 2.3.1           soft
  237.         Development System(286) 2.2.1           soft
  238.         CGI                     1.1.0           cgi
  239.         Text Processing         2.3.0           text
  240.         Manual Pages            2.3.0           man
  241.         VP/ix                   1.2.0           vpix
  242.         TCP/IP Runtime          1.2.0           tcprt
  243.         TCP/IP Development      1.0.1           tcpdev
  244.         Streams Runtime         1.0.0           streamsrt
  245.         Streams Toolkit         1.0.0           streamstk
  246.         Int'l Supplement(386)   2.1.0           sup.os
  247.         Int'l Supplement(286)   2.0.0           sup.os
  248.  
  249.     The perms column lists files found in the /etc/perms directory.
  250.     The `#rel=' line in these files will tell you what version you
  251.     have.
  252.  
  253.  
  254. QA5.  Where can I get Xenix fixes?
  255.  
  256.     SCO provides Support Level Supplements (SLS) at no charge.  There
  257.     are several places that make them available through anonymous uucp
  258.     and anonymous ftp.
  259.  
  260.     Internet users may retrieve SLSs by anonymous ftp from `ftp.sco.com'
  261.     (see /SLS/info) and `ftp.uu.net' (see /vendor/sco/SLS/info).
  262.  
  263.     SLSs may be downloaded with anonymous uucp from SCO's `sosco'
  264.     machine.  To retrieve a shopping list of available SLSs, add one
  265.     of the following to your `/usr/lib/uucp/Systems' file:
  266.  
  267.         # Telebit (PEP) modem
  268.         sosco Any ACU 19200 14084291786u gin:-BREAK-gin:-BREAK-gin: uusls
  269.         # Hayes V-Series modem
  270.         sosco Any ACU 19200 14084274470 gin:-BREAK-gin:-BREAK-gin: uusls
  271.         # 1200 or 2400 bps modem
  272.         sosco Any ACU 300-2400 14084253502 gin:-BREAK-gin:-BREAK-gin: uusls
  273.  
  274.     European folks might prefer to use `scolon' instead.  From within
  275.     the UK, try:
  276.  
  277.         scolon Any ACU 300-19200 0923210911u \
  278.                 gin:-BREAK-gin:-BREAK-gin: uusls word: bbsuucp
  279.  
  280.     Outside the UK, replace the leading zero with the country code.
  281.     A 9600bps Trailblazer answers this line.  Delete the `u' at the
  282.     end of the phone number if you aren't using a Telebit modem.
  283.     Files are as on `sosco' but tend to be a week or so behind.  Also,
  284.     replace `sosco' with `scolon' `sosffm' in the examples below.
  285.  
  286.     In Germany, you can use:
  287.  
  288.         sosffm Any ACU 300-9600 069-50910736 \
  289.                 "" \r ogin:-BREAK-ogin: uusls sword: bbsuucp
  290.  
  291.     This modem supports V.32 transfers, but not PEP.  We've been told
  292.     this system is often behind the other sites.
  293.  
  294.     Add to your `/usr/lib/uucp/Permissions' file:
  295.  
  296.         # REQUEST files only - i.e. cannot send to sosco.
  297.         # rmail required to get bounced mail and error messages.
  298.         MACHINE=sosco SENDFILES=yes REQUEST=no COMMANDS=rmail:uucp \
  299.                 WRITE=/usr/spool/uucppublic:/tmp
  300.  
  301.     To retrieve an SLS listing to your machine as /tmp/info:
  302.  
  303.         uucp sosco\!/usr/spool/uucppublic/SLS/info /tmp/info
  304.  
  305.     This file also provides directions on retrieving, unarchiving,
  306.     and uncompressing the SLSs.  There is also a `descriptions' file
  307.     with additional details on the available SLSs.
  308.  
  309.     SLSs are also available on `uunet'.  For example, to get the `info'
  310.     file, run:
  311.  
  312.         uucp uunet\!~/vendor/sco/SLS/info /tmp/info
  313.  
  314.     Most of these machines also have Enhanced Feature Supplements (EFSs),
  315.     games and graphics programs, and new termcap and terminfo terminal
  316.     definitions in addition to SLS.  Look for an `info' or `README' file
  317.     one directory up from the `SLS' directory for more info.
  318.  
  319.  
  320. QA6.  I'm using an older Xenix/386 version.  What fixes do I need?
  321.  
  322.     Development System
  323.  
  324.     - 2.2.X or older    An upgrade to 2.3.1 must be purchased from SCO.
  325.  
  326.     - 2.3.1             Install `lng244'.
  327.  
  328.     Operating System
  329.  
  330.     - 2.2.X or older    An upgrade to 2.3.4 must be purchased from SCO.
  331.  
  332.     - 2.3.0 or 2.3.1    SCO would like you to purchase a 2.3.4 upgrade.
  333.                         The `xnx137' fix would get you to 2.3.2, but SCO
  334.                         does not provide it any longer.
  335.  
  336.     - 2.3.2             Install `xnx296a' to get to version 2.3.3.
  337.  
  338.     If you have VP/ix and installed update UFJ, then your kernel is
  339.     already at 2.3.3.  None the less, you still want `xnx296a'.  The
  340.     `xnx296a' update is also known as UFN, and replaces UFJ and UFM.
  341.     UFM was also known as the `xnx155b' update.
  342.  
  343.     You must install the development system before `xnx296a'.
  344.  
  345.     `xnx296a' provides you with most of the important fixes in 2.3.4.
  346.     You will lack some of the nice enhancements such as updated man
  347.     pages and the Korn shell.
  348.  
  349.     SCO preconfigures the kernel for a very minimal system.  You should
  350.     tune the kernel for your exact system configuration.  See the
  351.     "Tuning Kernel Parameters" chapter in the System Administrator's
  352.     Guide.
  353.  
  354.  
  355. QA7.  Does SCO have a BBS?
  356.  
  357.     Yes.  The SOS Support BBS is $95/year.  This is a good deal.  You
  358.     can:
  359.  
  360.         - download fixes, suggestions, and hints.
  361.         - keyword access to the support problems database.
  362.         - retrieve product info, release status, and hardware compatibility.
  363.         - get support via email.
  364.         - subscription to quarterly Discover newsletter.
  365.  
  366.     You can dial-in with a terminal program such as `cu' -- uucp is
  367.     not required.  Access is read-only, but most questions can be
  368.     answered by the support database.  SCO currently doesn't provide
  369.     SOS access to most overseas users.
  370.  
  371.     You might also consider joining the `SCO Developer Alliance Associates
  372.     Program.'  This costs $100/year, and also provides access to the BBS.
  373.     Contact devrel@sco.com for additional information.
  374.  
  375.  
  376. ******************************************************************************
  377. *************************  General Xenix Questions  **************************
  378. ******************************************************************************
  379.  
  380.  
  381. QB1.  Can't boot.  My system used to work.
  382.  
  383.     Check the A: drive.  If there is a floppy in there your system
  384.     might spew garbage on the monitor or hang during boot.  If this
  385.     problem occurs right after rebuilding a new kernel, go read the
  386.     FAQ on disks bigger than 1024 cylinder.
  387.  
  388.  
  389. QB2.  Configure(ADM) fails when I modify my system name.
  390.  
  391.     If you select a site name of two, three, or four characters,
  392.     `configure' will fail with an error message:
  393.  
  394.         space.asm(XXX): error A2050: Value out of range
  395.  
  396.     If the development system is installed, there is a workaround.
  397.     Do the following:
  398.  
  399.         - cd /usr/sys/conf
  400.  
  401.         - Edit `xenixconf'.  Search for the `nodename' line and enter
  402.           the desired system name between the double quotes.  For
  403.           example, for machine name = `foo' this line should read:
  404.  
  405.               nodename             "foo"
  406.  
  407.         - Similarly, edit the `master' file and correct the `nodename'
  408.           line.  For machine name = `foo' it should read:
  409.  
  410.               nodename  NODE      "foo"
  411.  
  412.         - Run `make'.  This will rebuild the kernel data files and
  413.           then link a new kernel.
  414.  
  415.         - Run `./hdinstall' to install the new kernel.
  416.  
  417.     Reboot the system, and the new node name should be in effect.  To
  418.     verify this, run `uname -a' after rebooting.
  419.  
  420.     This bug has been fixed in 2.3.4.
  421.  
  422.  
  423. QB3.  The system is crashing with `parity error' panics.
  424.  
  425.     Everybody knows there are eight bits to a byte.  Why, then, do
  426.     PCs use 9-bit wide memory?  That last bit is a parity check bit.
  427.     It lets the system detect when data get corrupted while sitting
  428.     in memory or in transit to the CPU.
  429.  
  430.     Prior to Xenix 2.3.3, parity errors were silently ignored.  In
  431.     these releases the system would continue to run -- for a while
  432.     anyway.  These days, if a parity error is detected the system
  433.     will panic immediately and say:
  434.  
  435.         PANIC: memory failure - parity error
  436.  
  437.     Like the message says, this is almost always caused by memory
  438.     problems.  If it happens, run a good memory diagnostic overnight
  439.     to try to locate the problem.  Keep the cover on the computer
  440.     while running diagnostics; heat tends to push a marginal memory
  441.     chip into failure.  Similarly, running the system with the cover
  442.     off might make the problem go away.  If it does, possible causes
  443.     are marginal chips or bad ventilation.
  444.  
  445.     This problem can also be caused by a marginal power supply.  Xenix
  446.     boxes often have more power hungry peripherals than your run of
  447.     the mill MS-DOS PC.  For example, suspect the power supply if the
  448.     panics occur as soon as the tape drive starts spinning.
  449.  
  450.  
  451. QB4.  Login fails without prompting for password.
  452.  
  453.     If /dev/tty is missing or incorrect, you will get a `Login incorrect'
  454.     message without ever being prompted for a password.  For security
  455.     reasons, the `login' program goes directly to /dev/tty to ensure
  456.     the password comes from the keyboard.  Your `tty' device should
  457.     look something like:
  458.  
  459.         crw-rw-rw-   2 bin      bin        3,  0 Oct 24 04:09 /dev/tty
  460.  
  461.     If necessary, use the `mknod' command to recreate it.
  462.  
  463.  
  464. QB5.  Can I use `gcc' instead of buying the SCO Development System?
  465.  
  466.     Yes, but the task is bigger than you think.  A compiler alone
  467.     doesn't do any good if you lack header files, libraries, linker,
  468.     etc.  Don't forget about make, yacc, lex, etc.  Fortunately, the
  469.     repertoire of GNU software has grown to the point where you can
  470.     fill in all these pieces.  Many folks, particularly Steve Bleazard
  471.     and Ronald Khoo have done a lot of work getting `gcc' and the GNU
  472.     utilities running on Xenix.  So, with anonymous FTP access and a
  473.     little elbow grease, you can do it.
  474.  
  475.     First, you need to get a copy of gcc-1.40 from unix.secs.oakland.edu.
  476.     This is a custom(C) distribution of `gcc' that contains most of
  477.     the tools required to complete the free development system.  This
  478.     includes make, m4, indent, ctags, patch, ranlib, ar, strings, gcc,
  479.     flex, gdb, mprof, byacc, bison and rcs.
  480.  
  481.     Next, an alpha test version of a `libc' for Xenix is available
  482.     from kate.ibmpcug.co.uk (in /ftp/pub/xenix/libc) and unix.secs.oakland.edu
  483.     (in /pub/xenix); files XLIBC.README.Z and xlibc.shar.Z.  It is
  484.     based on the Berkeley Networking Release 2 tape.  The library is
  485.     distributed as a modification set and assumes that the aforementioned
  486.     gcc distribution has already been installed.
  487.  
  488.  
  489. QB6.  Program `foobar' dumps core with a stack overflow. [Xenix 286]
  490.  
  491.     Xenix/286 programs request a fixed amount of space for the stack
  492.     in the executable file header.  A program that exceeds this limit
  493.     will crash with a core dump.  To fix, change the header to ask
  494.     for more stack space.  You can recompile your programs with the
  495.     `-F' flag to increase the stack size.  You can change the stack
  496.     size of existing programs by running `fixhdr' with the `-F' flag.
  497.     This is not a problem on 80386 binaries that use a variable stack.
  498.  
  499.  
  500. QB7.  Spell cannot initialize hash table.
  501.  
  502.     The `spell' script (included in the optional Text Processing
  503.     package) uses an 8086 binary.  It needs to stuff a bunch of data
  504.     into a single 64K segment.  If you exceed this limit, you will
  505.     get an error saying something like:
  506.  
  507.         table = malloc(0xc848) fails
  508.         sbrk(0) = 0x3868
  509.         spell: cannot initialize hash table
  510.  
  511.     You can usually get enough space for `spell' to run by clearing
  512.     out your environment first.  To do this, add the following line
  513.     near the top of the `/usr/bin/spell' script:
  514.  
  515.         unset `env | sed -e '/^PATH=/d' -e '/^PS1=/d' -e 's/=.*//'`
  516.  
  517.  
  518. QB8.  Will my laser printer work with the Text Processing Package?
  519.  
  520.     Xenix `troff' is based on a version written long before the advent
  521.     of laser printers.  The only thing old troff understands is C/A/T
  522.     typesetters.  Chris Lewis's `psroff' allows old troff to work with
  523.     various devices, including Postscript and LaserJet printers.
  524.     Version 3.0 is available from the comp.sources.unix archives.
  525.     Another alternative is Rick Richardson's `jetroff', available in
  526.     the comp.sources.misc archives.
  527.  
  528.     For production work, consider purchasing a device independent
  529.     troff.  Some of the suppliers of `ditroff' are Elan, Image Network,
  530.     Leverage, and SoftQuad.
  531.  
  532.     Another alternative is the `groff' package by the Free Software
  533.     Foundation.  You can find it in any of the FSF archives -- but
  534.     you will need `g++' to compile it.  You will still need a backend
  535.     program to use a LaserJet with `groff'.  Some possibilities are
  536.     `psroff', `jetroff', and `dvi2xx' on ftp.wu-wien.ac.at.
  537.  
  538.  
  539. QB9.  Where is crypt?
  540.  
  541.     The DES encryption algorithm, the basis for `crypt', is categorized
  542.     by the US Government as munitions.  (Three cheers for the cold
  543.     war!)  SCO removes the crypt(S) procedure and crypt(C) command
  544.     from Xenix so it may be exported.  US domestic customers may
  545.     contact SCO to obtain SLS LNG190B.  If you simply need a crypt(S)
  546.     procedure to compile programs that do password checking, you may
  547.     get the SLS LNG255B `International Crypt SLS' from any of the
  548.     aforementioned archive sites.  This provides a crypt(S) procedure
  549.     that supports encryption but not decryption, and it does not
  550.     include the crypt(C) command.  A number of non-domestic archive
  551.     sites, for example the European GNU mirror sites, carry `crypt'
  552.     replacements that were developed outside the US to avoid this
  553.     export silliness.
  554.  
  555.  
  556. QB10. How can email handle `internet' addresses or use a `smart host'?
  557.  
  558.     Neither the SCO Xenix mail transport (/usr/lib/mail/execmail) nor
  559.     the mail program (/usr/bin/mail) can handle so-called `internet'
  560.     addresses (e.g. joe@acme.com).  Nor can they use a `smart host'
  561.     system to route your email to its final destination.  If you want
  562.     to add these features, you need to install a replacement transport
  563.     and reconfigure the mailer to use this transport.  For simple uucp
  564.     connectivity, we recommend smail2.5 (archive name `smail3' published
  565.     in comp.sources.unix volume 11).  If you also need network
  566.     connectivity (e.g. SMTP mail) then you'll need a more full-featured
  567.     mailer such as smail3.1, sendmail, or MMDF.
  568.  
  569.     Although smail2.5 fits right into the SCO mail system, some
  570.     modifications and installation tricks are required.  Both Chip
  571.     Salzenberg (see the comp.sources.misc archives) and Chip Rosenthal
  572.     (contact chip@chinacat.unicom.com) have provided solutions.
  573.  
  574.     Whatever approach you use, you must tell /usr/bin/mail to pass
  575.     messages off to execmail for delivery rather than handling them
  576.     itself.  Do this by adding a line which says `set execmail' to
  577.     the /usr/lib/mail/mailrc file.  You might also think about adding
  578.     a nice, full-screen mailer program such as Elm or Mush.
  579.  
  580.  
  581. QB11. Where can I find freely available software for Xenix?
  582.  
  583.     Many of the freely available programs on archive sites and published
  584.     on Usenet will run under Xenix with little or no modification.  Assuming
  585.     you have the Xenix Development System to compile it!  See news.answers
  586.     and comp.archives for information on archive sites.
  587.  
  588.     The following systems maintain software archives that specialize in Xenix.
  589.  
  590.     anomaly
  591.  
  592.        Administrator:   Michael P. Deignan <mpd@anomaly.sbs.COM>
  593.        Description:     Source code for SCO Xenix, Unix, and ODT
  594.        FTP Access:      anomaly.sbs.risc.net [155.212.2.2], login=anonymous
  595.                           information in /SOFTLIST
  596.        UUCP Access:     1-401-455-0347 (PEP), 331-3706 (V.32bis)
  597.                           login=xxcp, passwd=xenix, information in ~/SOFTLIST
  598.        Mail Server:     send email to "snarf@anomaly.sbs.com" with a Subject 
  599.                           of "snarf" and the lines "snarf address <addr>"
  600.                           (replace <addr> with your email address) and "snarf
  601.                           help" to receive more information
  602.        Comments         ftp is via serial connection so be patient, number of
  603.                           connections limited to prevent congestion
  604.  
  605.     oakland.edu
  606.  
  607.       Administrator:    Ron Srodawa <srodawa@vela.acs.oakland.edu>
  608.       Description:      SCO Xenix ports, particularly GNU software
  609.       FTP Access:       unix.secs.oakland.edu [141.210.180.2],
  610.                             login=anonymous, files in /pub/xenix
  611.  
  612.     wimsey
  613.  
  614.       Administrator:    Stuart Lynne <sl@wimsey.com>
  615.       Description:      SLSs, SCO Unix (not Xenix) software in `custom' format
  616.       FTP Access:       ftp.wimsey.bc.ca [192.48.234.1], login=anonymous,
  617.                             information in /READ.ME.FIRST, /ls-lR.Z
  618.       UUCP Access:      1-604-939-4782 (PEP), 1-604-937-7411 (V.32bis),
  619.                             1-604-939-4756 (2400bps), login=nuucp, passwd=nuucp,
  620.                             information in ~ftp/READ.ME.FIRST, ~ftp/ls-lR.Z
  621.       Guest Access:     same phone numbers, login=guest, passwd=guest
  622.       Comments:         ftp is via serial connection so be patient, mostly
  623.                             Unix oriented but some of it might work with Xenix
  624.  
  625.  
  626. QB12. Why don't my arrow keys work in `vi'?
  627.  
  628.     For versions 2.3.3 and prior, probably because your `termcap'
  629.     entry does not have then defined properly.  For version 2.3.4,
  630.     it's because `vi' is broke.  If you have an older version of Xenix
  631.     laying around, you might consider grabbing `vi' off of it instead.
  632.     Note, however, that 2.3.4 `vi' gets its terminal information from
  633.     the `terminfo' database, while prior versions use `termcap'.
  634.  
  635.  
  636. ******************************************************************************
  637. **********************  Disk and Filesystem Questions  ***********************
  638. ******************************************************************************
  639.  
  640.  
  641. QC1.  Can I use a disk bigger than 1024 cylinders?
  642.  
  643.     Yes.  However, your root filesystem cannot extend beyond the 1024th
  644.     cylinder, because that's as far as the BIOS can reach when booting
  645.     the system.  The BIOS is bypassed after Xenix boots, so cylinders
  646.     beyond 1024 can be accessed once Xenix is running.  It is not
  647.     necessary to use a sector translation mode controller to reduce
  648.     the number of cylinders.  The translation mode is very slow.
  649.  
  650.  
  651. QC2.  Why won't Xenix recognize my SCSI disk?
  652.  
  653.     Not all versions of Xenix support SCSI.  Those that do only support
  654.     certain SCSI adapters.  First, verify your N1 floppy says `Type:
  655.     386GT' and not `Type: 386AT'.  The AT version of Xenix (now
  656.     obsolete) does not include any SCSI support.
  657.  
  658.     The GT version supports a limited number of SCSI host adapters.
  659.     The Adaptec AHA-154x is supported.  We've also used compatibles
  660.     such as the Buslogic BT-542B.  2.3.4 added support for the
  661.     WD-7000-FASST2.  If you've got something different, you have to
  662.     get a driver from the board vendor.  The `SCO Hardware Compatibility
  663.     Guide' (contact SCO sales for one) should be consulted whenever
  664.     you have any hardware compatibility questions.
  665.  
  666.     Some typical installation mistakes are:
  667.  
  668.     - SCSI ID jumper for the root (boot) hard disk must be ID=0.
  669.     - The BIOS must be set for drive C:=NONE in the CMOS setup program.
  670.     - I/O port, memory address, or interrupt misconfiguration/conflict.
  671.     - Terminating resistors installed only at ends of ribbon cable.
  672.     - The parity jumper should be enabled on all drives and controllers.
  673.  
  674.     A word on terminating resistors:  Terminators must be installed on
  675.     the two devices at the end of the SCSI chain.  If you have no external
  676.     devices then one end of the chain will be the SCSI adapter -- so it
  677.     gets terminators.  The last device on the ribbon cable also needs
  678.     terminators.  The terminators must be removed from everything else on
  679.     the SCSI chain.
  680.  
  681.     Note that some SCSI disk controllers mimic the standard ST-506
  682.     interface.  No special support is required for them; Xenix boots
  683.     thinking you've got a plain old disk controller.  See the instructions
  684.     that came with your controller for details on cabling, strapping,
  685.     terminating, etc.
  686.  
  687.     Note:  If you are using Xenix 386GT 2.3.1-2.3.3 you should install
  688.     xnx252b for ISA or xnx150 for MCA.  This is an improved SCSI driver
  689.     that yields a significant performance improvement.
  690.  
  691.  
  692. QC3.  Where is the `/u' filesystem I created?
  693.  
  694.     When you create filesystems during the install procedure or with
  695.     `mkdev hd', the filesystem is initialized but it isn't configured
  696.     into the system.  To perform that final step you need to run `mkdev
  697.     fs'.  For example, if you created a `/u' filesystem, run:
  698.  
  699.         mkdev fs /dev/u /u
  700.  
  701.  
  702. QC4.  `WARNING!! - mounting: <usr> as <news>' message when booting.
  703.  
  704.     Due to a bug in the `mkdev fs' program, filesystems mounted below
  705.     the root directory are labeled wrong.  For example, if you mount
  706.     a device `/dev/news' onto directory `/usr/spool/news', then you
  707.     will get a warning message when going into multi-user mode.  That's
  708.     because `mkdev fs' labels the filesystem with the first component
  709.     in the pathname (`usr' in this example) when it really should be
  710.     the last component in the pathname (`news' in this example).
  711.  
  712.     This message is merely an annoyance and will not hamper system
  713.     operation.  To eliminate the warning, relabel the filesystem with
  714.     the last component of the mount directory.  For the above example,
  715.     you may change the label from `usr' to `news' by running the command:
  716.  
  717.         fsname -s news /dev/news
  718.  
  719.  
  720. QC5.  `POSSIBLE FILE SIZE ERROR' when running `fsck'.
  721.  
  722.     If `fsck' says `POSSIBLE FILE SIZE ERROR I=nnnn' don't panic.  It
  723.     almost always means `fsck' found a `sparse file', not a true
  724.     filesystem error.  A sparse file has holes in it.  They are created
  725.     when a program skips over sections of a file it is writing.  The
  726.     Xenix filesystem fills in those sections with zeros.  The Xenix
  727.     filesystem doesn't even both allocating disk blocks for the sections
  728.     full of zeros, thus creating a sparse file.  The complaint occurs
  729.     because `fsck' calculates the number of disk blocks needed to
  730.     store the file, counts up the number of disk blocks actually used
  731.     by the file, and complains that the two don't match.
  732.  
  733.     When you get a file size error from `fsck' you should note both
  734.     the `I=nnnn' inode number logged in the message and the filesystem
  735.     which was being checked.  You can see what the file is by running
  736.     the following command:
  737.  
  738.         ncheck -i <nnnn> <fsname>
  739.  
  740.     where <nnnn> is the number logged in the error message and <fsname>
  741.     is the pathname of the filesystem device, e.g. `/dev/u'.  Chances
  742.     are the file will either be a dbm(S) database file (in which case
  743.     ignore the complaint, it's expected) or a `core' dump (in which
  744.     case delete the `core' file).
  745.  
  746.  
  747. QC6.  Is disk fragmentation curable?
  748.  
  749.     Not easily.  However, the steps to slow down fragmentation are
  750.     pretty simple.
  751.  
  752.     Xenix maintains a list of available disk blocks.  As files are
  753.     deleted, the released blocks are appended to this free list.
  754.     Ideally, adjacent disk blocks would be used to create and grow
  755.     files so that all the parts of the file sit together on the disk.
  756.     Disk blocks, unfortunately, are allocated to files in the order
  757.     they appear on the free list and without regard for location.
  758.     Eventually, new files will be created with their data blocks
  759.     scattered all around the disk.  This fragmentation is undesirable
  760.     because it slows down disk accesses.
  761.  
  762.     To slow down the tendency towards fragmentation, periodically
  763.     reorder the blocks in the free list.  To do this, dismount the
  764.     filesystem (with `/etc/umount') and run `fsck -S'.  You will get
  765.     a message saying:
  766.  
  767.         FILE SYSTEM NOT MODIFIED, STILL DIRTY.
  768.  
  769.     Don't worry -- ignore that message.
  770.  
  771.     To determine how badly your filesystems are fragmented, run
  772.     `fsanalyze' by Michael J. Young, from comp.sources.misc.  You will
  773.     need patchlevel 3 to analyze Xenix filesystems.
  774.  
  775.     The conventional cure for filesystem fragmentation is:
  776.  
  777.     - Make a full backup of the filesystem.  Use `cpio' (or `afio' if
  778.       you've got it).  Do NOT use `tar'.  It doesn't backup device
  779.       nodes, pipes, or directories.  You could use `dump', but we find
  780.       it awkward.  (n.b.  Earlier versions of this FAQ claimed that
  781.       `dump' would restore in a fragmented manner.  That is incorrect.
  782.       Sorry for the misinformation.)
  783.  
  784.     - Recreate an empty filesystem with `divvy' or `mkfs'.  `divvy'
  785.       is easier to use -- simply select the `create' option.  However,
  786.       `mkfs' will be required if you want a non-default number of
  787.       inodes.  Invoke `divvy' with:
  788.  
  789.         /etc/divvy -c 1 -b 1            # for 1st physical disk
  790.         /etc/divvy -c 1 -b 1 -p 1       # for 2nd physical disk
  791.  
  792.     - Reload the filesystem from the backup.
  793.  
  794.     - Regenerate the `lost+found' directory.  Run:
  795.  
  796.         # Substitute appropriate name for `foo'.
  797.         /etc/fsck /dev/foo
  798.         /etc/mount /dev/foo /foo
  799.         mkdir /foo/lost+found
  800.         for i in 1 2 3 4 5 6 7 8 ; do
  801.             for j in 1 2 3 4 5 6 7 8 ; do
  802.                 touch /foo/lost+found/x$i$j
  803.             done
  804.         done
  805.         rm /foo/lost+found/x??
  806.         /etc/umount /dev/foo
  807.  
  808.     Be very careful with this procedure.  We suggest you verify your
  809.     backup is readable before zapping the filesystem.  One mistake
  810.     (especially when running `mkfs' or `divvy') will trash everything.
  811.     The filesystem you trash may be your own.
  812.  
  813.  
  814. QC7.  Can I put a CD-ROM drive on my Xenix system?
  815.  
  816.     No.  Sure, it would be easy for somebody to write a device driver
  817.     to talk to a CD-ROM drive.  But that's not the whole story.  If
  818.     you want to use a CD-ROM, you need to be able to mount it as an
  819.     ISO-9660/High Sierra filesystem.  That's not so easy.  See the
  820.     FAQ on NFS for additional info.
  821.  
  822.  
  823. ******************************************************************************
  824. *************************  Communications Questions  *************************
  825. ******************************************************************************
  826.  
  827.  
  828. QD1.  How do I add more than 2 COM ports?
  829.  
  830.     Dumb serial cards (and internal modems) may be configured for Xenix
  831.     as COM3 and COM4 -- with one big caveat.  Each COM port requires its
  832.     own interrupt number.  If you have an unused IRQ and the Development
  833.     System, you may build additional COM ports into the kernel.  To
  834.     illustrate the procedure, we will add a COM3 configured as follows:
  835.  
  836.         I/O Addr: 0x3E8
  837.         IRQ:      5
  838.         device:   /dev/tty3a    Major=5, Minor=16
  839.                   /dev/tty3A    Major=5, Minor=144
  840.  
  841.     1.  Edit `/usr/sys/io/sioconf.c'.
  842.  
  843.         The two lines in this file that describe COM1 and COM2 are:
  844.  
  845.             {0,IBM_BOARD,  1,4,0,  (sd)0x3f8,0,     0,MCRBIT3}, /*ibm COM1*/
  846.             {1,IBM_BOARD,  1,3,8,  (sd)0x2f8,0,     0,MCRBIT3}, /*ibm COM2*/
  847.  
  848.         Add a line that says:
  849.  
  850.             {2,IBM_BOARD,  1,5,16, (sd)0x3e8,0,     0,MCRBIT3}, /*ibm COM3*/
  851.  
  852.         See `/usr/sys/io/sioconf.h' for details.
  853.  
  854.     2.  Edit `/usr/sys/conf/master'.
  855.  
  856.         The serial ports are defined by the line:
  857.  
  858.             sio     4    0577 104     sio   0   0   5   1   7   3   4  33  34
  859.  
  860.         The last four fields define the interrupt numbers used.  Change
  861.         the `33' to a `5' since COM3 will be on IRQ5.  For reference,
  862.         here is the mapping between IRQ lines and the master file
  863.         `magic numbers':
  864.  
  865.             IRQ0  0       IRQ4  4       IRQ8  30      IRQ12  34
  866.             IRQ1  1       IRQ5  5       IRQ9  31      IRQ13  35
  867.             IRQ2  31      IRQ6  6       IRQ10 32      IRQ14  36
  868.             IRQ3  3       IRQ7  7       IRQ11 33      IRQ15  37
  869.  
  870.     3.  Rebuild the kernel.  Run:
  871.  
  872.             cd /usr/sys/conf
  873.             make
  874.  
  875.         Do not use `link_xenix' here.  You need to run `make' to get
  876.         `sioconf.o' and the kernel data files rebuilt.
  877.  
  878.     4.  Install the new kernel.  Run:
  879.  
  880.             /usr/sys/conf/hdinstall
  881.  
  882.         This will make a backup of your current kernel to `/xenix.old'.
  883.  
  884.     5.  Create the device nodes.  Run:
  885.  
  886.             mknod /dev/tty3a c 5 16
  887.             mknod /dev/tty3A c 5 144
  888.  
  889.     Reboot your system, and the new serial port should be there.
  890.  
  891.  
  892. QD2.  How do I set a 19,200 baud rate?
  893.  
  894.     For historical reasons, terminal speeds of 19200 and 38400 are
  895.     called `EXTA' and `EXTB'.  So, in the `/etc/gettydefs' file you
  896.     need to say `EXTA' and `EXTB', not 19200 and 38400.  These speeds
  897.     are already available there as entries `n' and `o', respectively.
  898.  
  899.     Similarly, with the `stty' command you need to say:
  900.  
  901.         stty 9600       # set to 9600
  902.         stty exta       # set to 19200
  903.         stty extb       # set to 39400
  904.  
  905.     A smart serial card is recommended for these two highest speeds.
  906.  
  907.  
  908. QD3.  How can I have more mscreen(C) sessions?
  909.  
  910.     The mscreen(C) facility provides multiple sessions from a serial terminal
  911.     by `multiplexing' your terminal (tty) line onto several pseudo-terminal
  912.     (pty) lines.  Xenix is shipped with eight ptys enabled, that provides
  913.     a system-wide limit of eight sessions through the mscreen(C) command.
  914.  
  915.     First off, you need to determine whether you are allocating mscreen(C)
  916.     sessions wisely.  For example, SCO ships an `/etc/mscreencap' file
  917.     that runs six sessions on a WY-60 terminal.  If you edit `mscreencap'
  918.     and cut this down to three you immediately double the number of people
  919.     who can run mscreen(C).
  920.  
  921.     You cannot increase this number beyond eight if you are running TCP/IP.
  922.     (More about this in a moment.)  If you are not running TCP/IP, then
  923.     you can increase the number of possible mscreen(C) sessions by:  first
  924.     creating more ptys in the kernel, second creating the device nodes
  925.     for the new ptys, and finally placing a `getty' upon each of these
  926.     new ptys.
  927.  
  928.     To create more ptys in the kernel, increase the `nspttys' kernel
  929.     parameter.  With Xenix 2.3.4, run the `configure' command interactively
  930.     and select the `Multiscreens' option.  For older versions of Xenix,
  931.     run `configure' manually.  For example, to provide sixteen ptys, run:
  932.  
  933.         cd /usr/sys/conf
  934.         ./configure nspttys=16
  935.  
  936.     Once `nspttys' is set, run `link_xenix' and `hdinstall' to build and
  937.     install a new kernel.
  938.  
  939.     Next, you need to create the device nodes in the /dev directory for
  940.     these additional ptys.  Unfortunately, mscreen(C) uses a very poor
  941.     naming strategy for ptys beyond the 8th.  Once you go beyond the
  942.     /dev/ttyp7 in the base Xenix distribution, mscreen(C) next looks for
  943.     not /dev/ttyp8, but rather /dev/ttyp01.  Therefore you should create
  944.     the eighth pty with the commands:
  945.  
  946.         cd /dev
  947.         mknod ttyp01 c 54 8
  948.         mknod ptyp01 c 55 8
  949.         chmod 666 ptyp01
  950.         chmod 644 ttyp01
  951.  
  952.     You might notice that these names are the same ones used by `rlogind'
  953.     and `telnetd' under SCO TCP/IP.  Unfortunately, to use these ptys for
  954.     mscreen(C) you need to place a `getty' on them -- but if you do then
  955.     rlogin/telnet will break.  Those running TCP/IP (and not weak of heart)
  956.     can try editing the `/dev/ttyp' string in the `mscreen' binary and
  957.     totally rename the pty devices.
  958.  
  959.     Finally, edit `/etc/ttys' (and `/etc/ttytype') to tell them about
  960.     the new pty lines, and run `enable' upon each of the lines.
  961.  
  962.  
  963. QD4.  Upgraded to 2.3.4 and flow control broke with mscreen(C).
  964.  
  965.     The 2.3.4 version of mscreen(C) was changed to run the tty line
  966.     totally raw.  This is required so that the ^S and ^Q keys are
  967.     passed on to programs that need them, such as `emacs' and Foxbase.
  968.     An unfortunate side effect of handling flow control on the other
  969.     side of the session rather than directly by the tty is that response
  970.     to flow control is a lot more sluggish.  Now, when you hit ^S you
  971.     might get another screenful of data before the display actually
  972.     freezes.
  973.  
  974.     If you never run any applications that require full 8-bit transparency,
  975.     one way to make flow control more responsive is to rename `mscreen'
  976.     to `/usr/bin/mscreen.sco' and install the following script in its
  977.     place:
  978.  
  979.         :
  980.         tty=`tty`
  981.         ( sleep 5 ; stty ixon <$tty ) &
  982.         exec mscreen.sco
  983.  
  984.  
  985. QD5.  Terminals act funny, modems drop characters, help!!
  986.  
  987.     If you are losing characters on your serial lines, consider the
  988.     following steps:
  989.  
  990.     * Ensure that flow control is working right.
  991.  
  992.     * If you are running dumb COM ports, either upgrade the UART chips
  993.       to 16550As or switch to a smart serial card.
  994.  
  995.     * If you have a lot of users or lots of high speed data lines,
  996.       increase the number of `clist' buffers in the kernel.
  997.  
  998.     * If you upgraded to 16550A UARTs and this helped but did not
  999.       solve the problem, then adjust the FIFO trigger level.
  1000.  
  1001.     * If you are running high speed lines on a loaded system, adjust
  1002.       the `ttyhog' value.
  1003.  
  1004.     When diagnosing serial problems, start at the top of this list
  1005.     and work down.  If your flow control is broke, it will do no good
  1006.     to go poking around inside your Xenix kernel.
  1007.  
  1008.  
  1009. QD6.  Does Xenix support 16550A UARTs?
  1010.  
  1011.     The guts of a standard COM port is a UART (universal asynchronous
  1012.     receiver/transmitter) chip.  Most serial ports use the 16450 or
  1013.     an equivalent chip.  The 16550A is a pin-compatible, drop in
  1014.     replacement which adds 16-characters of on-chip FIFO buffering.
  1015.     The FIFOs reduce system loading and increase performance.
  1016.  
  1017.     Starting with 2.3.4, the `sio' driver recognizes 16550A UARTs and
  1018.     enables the on-chip FIFOs.  Older versions of Xenix merely treat
  1019.     this chip as an expensive 16450.  You can get 16550A support with
  1020.     any version of Xenix by installing the FAS driver written by Uwe
  1021.     Doering and based upon Jim Murray's `asy' driver.  FAS was published
  1022.     in alt.sources, and is available at most reputable archive sites.
  1023.  
  1024.     We recommend sticking with the National Semiconductor NS16550A.
  1025.     Many manufactures make usable 16450 clones, but some of the 16550
  1026.     compatible chips aren't so compatible.  Also, older versions of
  1027.     the 16550 are known to be broken.  Ensure yours have an `A' suffix.
  1028.  
  1029.  
  1030. QD7.  How do I increase the number of `clists'?
  1031.  
  1032.     Xenix buffers terminal characters in data structures called
  1033.     `clists'.  There is a fixed pool of clists on the system, and when
  1034.     that supply is exhausted incoming characters are dropped.  Therefore,
  1035.     the more active users you have on your system, the larger this
  1036.     pool of clists should be.  The default configuration is 100 clists.
  1037.     Each terminal line requires an average of 5 to 10 clists.  High
  1038.     speed modems need more.  A conservative strategy would be to
  1039.     allocate 15 clists per active terminal.  For example, if you have
  1040.     16 serial ports and 4 console screens active at once, allocate
  1041.     (16+4)*15 or 300 clists.
  1042.  
  1043.     To see the number of clists on your system, login as root and run:
  1044.  
  1045.         cd /usr/sys/conf
  1046.         ./configure -y NCLIST
  1047.  
  1048.     To change the number of clists, say to 300, login as root and run:
  1049.  
  1050.         cd /usr/sys/conf
  1051.         ./configure NCLIST=300
  1052.  
  1053.     then rebuild and install a new kernel and reboot.
  1054.  
  1055.  
  1056. QD8.  How do I change the 16550A trigger level?
  1057.  
  1058.     If installing a 16550A UART helped but didn't totally fix a lost
  1059.     character problem, and your system is heavily loaded, then there
  1060.     is something else you can try.  If you installed a 16550A and
  1061.     there was no effect at all, then skip this -- it won't help.
  1062.  
  1063.     The Xenix `sio' driver initializes the 16550A with a trigger level
  1064.     of 14.  This means that under continual data streams the UART will
  1065.     wait until 14 characters accumulate before telling Xenix to come
  1066.     get them.  This gives the system two character times to get in
  1067.     and service the COM port.  If Xenix does not service the port in
  1068.     that time the 16-character buffer will overflow and and characters
  1069.     will be dropped.  This might happen on a heavily loaded system.
  1070.  
  1071.     The trigger level is initialized at boot time from the 16-byte
  1072.     `sio_fifoctl[]' array.  This array specifies the UART control
  1073.     register initialization values for device minor numbers 0 through
  1074.     15.  Or more exactly, the minor number is ANDed with 0x0F to get
  1075.     the index into this array.  For example, the initialization for
  1076.     /dev/tty2a (minor=8) is in `sio_fifoctl[8]'.  The possible values
  1077.     are as follows:
  1078.  
  1079.         sio_fifoctl:    0xCF    0x8F    0x4F    0x0F
  1080.         trigger level:   14      8       4       1
  1081.  
  1082.     The standard value is 0xCF.  A smaller value will notify the system
  1083.     earlier that characters are waiting, thus providing the system
  1084.     more time to service the port, but increasing the number of
  1085.     interrupts generated by the port.
  1086.  
  1087.     As an example, here is how to change the trigger level for /dev/tty2a
  1088.     (and /dev/tty2A) to 8 characters (code=0x8F):
  1089.  
  1090.         cp /xenix /xenix.save           # make a backup!
  1091.         adb -w /xenix                   # use "/etc/_fst" if no "adb"
  1092.         * sio_fifoctl+8/x
  1093.         sio_fifoctl+0x8:        0xcfcf
  1094.                                   | | 
  1095.                                   | `---- This is the 8-bit value for the
  1096.                                   |          port we want (minor=8).
  1097.                                   |
  1098.                                   `------ This is the 8-bit value for the
  1099.                                           next port (minor=9).
  1100.         * sio_fifoctl+0x8/w 0xcf8f
  1101.         sio_fifoctl+0x8:        0xcfcf= 0xcf8f
  1102.         * $q
  1103.  
  1104.  
  1105. QD9.  How do I adjust the `ttyhog' value?
  1106.  
  1107.     Since Xenix has a fixed pool of clists, the kernel tries to prevent
  1108.     one tty from hogging all of them.  The limit is defined by `ttyhog',
  1109.     and defaults to 256 (0x100 hex).  This limit might be too low if
  1110.     you've got some particularly fast devices on a particularly slow
  1111.     system.  To change the `ttyhog' value you must patch the kernel
  1112.     image.  The following increases `ttyhog' to 512 (0x200 hex).
  1113.  
  1114.         cp /xenix /xenix.save           # make a backup!
  1115.         adb -w /xenix                   # use "/etc/_fst" if no "adb"
  1116.         * ttyhog/x
  1117.         _ttyhog:        0x100
  1118.         * ttyhog/w 0x200
  1119.         _ttyhog:        0x100=  0x200
  1120.         * $q
  1121.  
  1122.  
  1123. QD10.  BSD based uucp can't connect to my machine.
  1124.  
  1125.     BSD based uucp sends even parity.  Xenix uucp expects no parity.
  1126.     Add:
  1127.  
  1128.         "" P_ZERO
  1129.  
  1130.     to the chat script in their (not your) `Systems' or `L.sys' file.
  1131.     For example, the following works on a Sun 3:
  1132.  
  1133.         xnxbox Any uucp 19200 5553333 "" P_ZERO "" \r in:--in: nuucp
  1134.  
  1135.  
  1136. QD11.  uucp truncates my system name to seven characters!
  1137.  
  1138.     This misfeature was introduced in the xnx155b supplement.  The
  1139.     story we hear is that SCO broke their `uucp' to cater to systems
  1140.     that choke on long system names.  There is a workaround.  For
  1141.     system name = `verylongname', add to every record in the
  1142.     /usr/lib/uucp/Permissions file:
  1143.  
  1144.         MYNAME=verylongname
  1145.  
  1146.     Next, rename /usr/bin/uuname to /usr/bin/uuname.sco.  Replace
  1147.     /usr/bin/uuname with:
  1148.  
  1149.         :
  1150.         if [ $# -ne 1 -o "X$1" != "X-l" ] ; then
  1151.             exec /usr/bin/uuname.sco $@
  1152.             exit 1
  1153.         fi
  1154.         head -1 /etc/systemid
  1155.         exit $?
  1156.  
  1157.     This allows programs using `uuname' to receive the correct,
  1158.     untruncated name.
  1159.  
  1160.  
  1161. QD12.  What is the uucp `windows' patch?
  1162.  
  1163.     uucp transmits data in packets, usually 64 bytes apiece.  An
  1164.     acknowledgment is required for every packet sent -- but not
  1165.     immediately.  A window of unacknowledged packets is allowed.  The
  1166.     default window size is three, that means `uucico' won't stop
  1167.     sending unless it falls more than three packets behind.  A three
  1168.     packet window isn't big enough for very fast media and long delay
  1169.     media.  The `uucico' binary can be patched to increase the window
  1170.     size by the following manual procedure:
  1171.  
  1172.         cd /usr/lib/uucp
  1173.         cp uucico uucico.old            # make a backup copy!!
  1174.         adb -w uucico
  1175.         * windows/x                     # display windows value
  1176.         _windows:       0x3
  1177.         * windows/w 7                   # change it to seven
  1178.         _windows:       0x3=    0x7
  1179.         * $q                            # done
  1180.  
  1181.     If you have Xenix 2.3.4 but not the Development System, use
  1182.     `/etc/_fst' instead of `adb'.  If you can't find adb on your
  1183.     system, look on the N02 disk.
  1184.  
  1185.     This change increases the window size to seven -- the maximum
  1186.     possible.  A similar change must be performed on the remote system's
  1187.     uucico because the actual window size is negotiated as part of
  1188.     the protocol startup.
  1189.  
  1190.  
  1191. QD13.  uucp gives `alarm' messages, eventually dies.
  1192.  
  1193.     If you run uucp in debugging mode (`uutry -x9') and see it get
  1194.     stuck like:
  1195.  
  1196.         alarm 1
  1197.         send 37777777621
  1198.         alarm 2
  1199.         send 37777777621
  1200.         alarm 3
  1201.         send 37777777621
  1202.         alarm 4
  1203.         send 37777777621
  1204.  
  1205.     and eventually die, this means your system got jammed waiting for
  1206.     a response that never came.  The most common cause of this problem
  1207.     running uucp across a modem with XON/XOFF flow control enabled
  1208.     (e.g. a Telebit modem with S58=3).  You can't do that; you must
  1209.     run with no flow control or RTS/CTS handshaking (on a Telebit that
  1210.     would be S58=0 or S58=2, respectively).  Other possible causes of
  1211.     this problem are serial cards with broken handshaking or running
  1212.     out of clists.
  1213.  
  1214.  
  1215. ******************************************************************************
  1216. **********************  Display and Graphics Questions  **********************
  1217. ******************************************************************************
  1218.  
  1219.  
  1220. QE1.  How come Xenix won't recognize my VGA display?
  1221.  
  1222.     Probably because you are running a very old version of Xenix.
  1223.     VGA support was introduced in release 2.3.0.
  1224.  
  1225.  
  1226. QE2.  How can I do a printscreen under Xenix?
  1227.  
  1228.     MS-DOS users can produce a screen printout with one keystroke.
  1229.     Xenix does not offer this builtin capability.  SCO's MultiView
  1230.     product provides this.  Also, it can be simulated with the following
  1231.     script:
  1232.  
  1233.         :
  1234.         # @(#) prtscrn     Print Screen
  1235.         # execute from cu as ~!prtscrn
  1236.         oldstty=`stty -g`               # save stty
  1237.         stty -echo ixon ixoff -ixany    # no echo
  1238.         /bin/echo '\033[2i\c'           # send screen to host
  1239.         # grab 24 lines, clean up trailing blanks, print it
  1240.         sed -e 's/ *$//' -e 24q | lp
  1241.         stty $oldstty                   # put stty back when done.
  1242.  
  1243.     Another approach is the `prtscrn2' program by Chip Rosenthal.  It
  1244.     grabs the contents of any console screen and sends it to standard
  1245.     output.  See comp.sources.misc.
  1246.  
  1247.  
  1248. QE3.  How can I blank the console display when it is idle?
  1249.  
  1250.     A screen blanker is built into the new console driver, provided
  1251.     by 2.3.4 or 2.3.3 via SLS xnx296a.  It is finicky about the hardware
  1252.     it likes.  Anything less than a VGA display will not work.  To
  1253.     enable the blanker, as root:
  1254.  
  1255.         cd /usr/sys/conf
  1256.         ./configure
  1257.  
  1258.     Select option 6 (MultiScreens) and enter a non-zero value for TBLINK.
  1259.     (The manual incorrectly calls this TBLNK.)  Then ./link_xenix and
  1260.     ./hdinstall.
  1261.  
  1262.     If the built-in blanker doesn't like your video adapter or you
  1263.     have an older version of Xenix, save the following script to a
  1264.     file and run it out of cron every fifteen minutes or so.  It will
  1265.     check if all console multiscreens have been idle for ten minutes
  1266.     or more, and if so switch the display to an unused screen (as
  1267.     configured by SCRN).
  1268.  
  1269.         :
  1270.         who -u | awk '
  1271.                 $2 !~ /^tty[01][0-9]$/  {next}    # Not a console screen.
  1272.                 $6 == "."               {exit(1)} # Screen in use.
  1273.                 $6 ~ /^0:0/             {exit(1)} # Not idle long enough.
  1274.         ' >/dev/null 2>&1
  1275.         if [ $? -eq 0 ] ; then
  1276.                 # Leading "\0" aborts any pending escape sequence.
  1277.                 SCRN=10
  1278.                 echo "\0\033[${SCRN}z\c" >/dev/tty01
  1279.         fi
  1280.  
  1281.  
  1282. QE4.  How can I do graphics under Xenix?  What programs are available?
  1283.  
  1284.     There are two approaches to graphics programming.  At the very
  1285.     lowest level, the screen(HW) manual page describes ioctl() codes
  1286.     to access the video display memory and controller.  Device-independent
  1287.     graphics is provided by the Computer Graphics Interface (CGI)
  1288.     package included with the Xenix Development System.  CGI drivers
  1289.     are provided for VGA, EGA, and Hercules displays; Epson, LaserJet,
  1290.     and Postscript printers; and HP plotters.  Several programs have
  1291.     been posted to the net that run under CGI, such as gnuplot,
  1292.     starchart, and gif.  See comp.sources.misc.
  1293.  
  1294.  
  1295. QE5.  CGI graphics mangles grey scale on a mono VGA.
  1296.  
  1297.     SCO fixed their monochrome VGA driver in version 2.3.3.   The
  1298.     default color mapping in CGI maps many colors with the identical
  1299.     total intensity. They appear as the same shade grey-scale display.
  1300.     Try using the CGI functions vs_color() and/or vsc_table() to create
  1301.     a color map that works with your display.  Try vsf_style() to
  1302.     create hatching or other fill-patterns in place of colors.
  1303.  
  1304.  
  1305. QE6.  CGI graphics fail on a LaserJet in landscape mode.
  1306.  
  1307.     A bug in the CGI 1.1.0 LaserJet driver causes all output to
  1308.     appear on a single line.  In landscape mode the driver puts out
  1309.     a spurious escape sequence `\033&a864V' that forces all output
  1310.     to the same position on the page.  You can either remove the
  1311.     offending escape sequence from the driver with a binary editor
  1312.     (keep a backup copy), or use a filter to clobber that sequence
  1313.     from the output.
  1314.  
  1315.  
  1316. ******************************************************************************
  1317. ***************************  Networking Questions  ***************************
  1318. ******************************************************************************
  1319.  
  1320.  
  1321. QF1.  What do I need to run TCP/IP?
  1322.  
  1323.     The SCO TCP/IP Run-Time includes *almost* everything you need to
  1324.     connect a Xenix system to a TCP/IP network.  You get the drivers
  1325.     for several popular network interface cards (NICs), the protocol
  1326.     stacks, and most of the familiar programs like `telnet' and `rcp'.
  1327.     We say `almost' because the TCP/IP package requires Streams, and
  1328.     that's an extra-cost option.  You need to buy and install the
  1329.     Streams Run-Time before you can load TCP/IP.  Furthermore, if you
  1330.     want to develop or compile network programs, you will need the
  1331.     TCP/IP Development System too.
  1332.  
  1333.  
  1334. QF2.  What do I need to run NFS?
  1335.  
  1336.     Unix. :-)
  1337.  
  1338.     Nobody offers an NFS for Xenix, and don't hold your breath waiting
  1339.     for one.  It is very difficult adding new filesystem types to
  1340.     Xenix.  The `FS' in NFS does stand for `File System' after all.
  1341.  
  1342.     Newer versions of Unix provide mechanisms that allow new filesystem
  1343.     types to be added easily (the `vnode' mechanism in BSD Unix and
  1344.     the `filesystem switch' in System V 3.2 and beyond).  With Xenix,
  1345.     the filesystem support must be coded right into the kernel.  The
  1346.     task of merging NFS code with VP/ix hacks, Xenix-net hacks, etc.
  1347.     is more than can be justified.  And because it requires kernel
  1348.     source, it is unlikely a third party would do this.
  1349.  
  1350.  
  1351. QF3.  How can I run uucp over TCP/IP?
  1352.  
  1353.     The Xenix `uucico' doesn't know about networking, and the Xenix
  1354.     TCP/IP package doesn't do anything to solve that problem.  Chip
  1355.     Rosenthal <chip@chinacat.unicom.com> has published a program called
  1356.     `uucpm' that works around this problem to allow an SCO Xenix system
  1357.     perform uucp transfers across the network.  Contact him if you
  1358.     need a copy.
  1359.  
  1360.  
  1361. QF4.  What does "NOTICE: tcp sum: src C06C6901, sum 0000B004" mean?
  1362.  
  1363.     That a bad TCP segment was received.  One possible reason for this
  1364.     is a buffer overrun caused by a slow system, a lousy network card,
  1365.     or a heavy network load.  Most TCP/IP implementations silently
  1366.     detect these errors and ask the remote system to re-transmit.
  1367.     SCO's TCP/IP decides to whine to the console as well.
  1368.  
  1369.     You can tell what the other system is by getting out your hex
  1370.     calculator (c.f. the bc(C) command) and plugging in the `src'
  1371.     address.  In the above example, 0xC0=192, 0x6C=108, 0x69=105, and
  1372.     0x01=1.  So the sending machine was 192.108.105.1.
  1373.  
  1374.     If you get these messages on occasion or only under heavy network
  1375.     load, don't worry too much.  If they are frequent then consider a
  1376.     faster network card with more buffering, a faster computer, or
  1377.     go looking for cabling problems.
  1378.  
  1379.     If you get tired of seeing these messages, you can shut them off:
  1380.  
  1381.         cp /xenix /xenix.save           # make a backup!
  1382.         adb -w /xenix                   # use "/etc/_fst" if no "adb"
  1383.         * tcpprintfs/d
  1384.         _tcpprintfs:    1               # currently "1" -> enabled
  1385.         * tcpprintfs/w 0                # set to "0" -> disabled
  1386.         _tcpprintfs:    0x1=    0x0
  1387.         * $q
  1388.  
  1389.  
  1390. ******************************************************************************
  1391. ***************  Xenix and MS-DOS Interoperability Questions  ****************
  1392. ******************************************************************************
  1393.  
  1394.  
  1395. QX1.  Can Xenix share a hard disk with MS-DOS?
  1396.  
  1397.     Yes.  SCO directly supports an MS-DOS 3.2 partition on the same disk as
  1398.     your Xenix partition.  You must:
  1399.  
  1400.         - Install MS-DOS 3.2 bootable partition as the FIRST partition.
  1401.  
  1402.         - Install Xenix bootable as the next partition.
  1403.  
  1404.         - Select Xenix as the `active' partition.
  1405.  
  1406.     At the
  1407.  
  1408.         Boot
  1409.         :
  1410.  
  1411.     prompt either type `dos' for MS-DOS boot or press ENTER for Xenix.
  1412.  
  1413.     If you create any other type of partition (e.g. one of the new,
  1414.     larger sized MS-DOS 5.0 partitions) or forget to create the MS-DOS
  1415.     partition before loading Xenix, then you can still access it by
  1416.     booting from a floppy disk.
  1417.  
  1418.     It is possible to provide `dual boot' capability for other partition
  1419.     types, for example MS-DOS 5.0 large partitions, by making a modified
  1420.     version of the /dos program.  The following instructions, based
  1421.     upon a procedure by Vic Michael <victor@alchemy.UUCP>, show how.
  1422.  
  1423.         su                              # become superuser
  1424.         cp /dos /dos5                   # make a new version of dos5 program
  1425.         adb -w /dos5                    # use "/etc/_fst" if no "adb"
  1426.         * 0x3f:0x61?i                   # examine instruction at 0x61
  1427.         0x3f:0x61:      add     al,0x4
  1428.         * 0x61?w 0x604                  # change '0x4' to '0x6'
  1429.         0x3f:0x61:      0x404=  0x604
  1430.         * 0x61?i                        # verify change
  1431.         0x3f:0x61:      add     al,0x6
  1432.         * $q
  1433.  
  1434.     Now, you can say `dos5' at the `Boot' prompt to start MS-DOS.  You
  1435.     will NOT, however, be able to use the `dos(C)' tools to access this
  1436.     partition from Xenix.
  1437.  
  1438.  
  1439. QX2.  Can Xenix access MS-DOS disks?
  1440.  
  1441.     Yes, with limitations.  The commands on the `dos(C)' manual page
  1442.     provide access to MS-DOS disks (floppy and fixed) under Xenix.
  1443.     The limitation is that only conventional MS-DOS 3.2 hard disk
  1444.     partitions can be recognized.  Extended MS-DOS 3.2, old MS-DOS
  1445.     1.0, and large MS-DOS 4.0/5.0 partitions cannot be accessed with
  1446.     the existing tools.
  1447.  
  1448.     If you run into problems with the dos(C) commands, check that
  1449.     `/etc/default/msdos' provides proper aliases for the A:, B:, etc.
  1450.     devices.  Also, if root can access the MS-DOS fixed disk but users
  1451.     can't, check the permissions on /dev/hd0d (the Xenix name of the
  1452.     MS-DOS partition on the first fixed disk).
  1453.  
  1454.     The `mtools' package by Emmet Gray in comp.sources.misc provides
  1455.     better handling of MS-DOS devices under Xenix.  Modify the
  1456.     `devices.c' file to understand Xenix device naming.
  1457.  
  1458.         #ifdef M_XENIX
  1459.         struct device devices[] = {
  1460.             {'A', "/dev/install",  0L, 12, 0, (int (*) ()) 0, 0, 0, 0},
  1461.             {'B', "/dev/install1", 0L, 12, 0, (int (*) ()) 0, 0, 0, 0},
  1462.             {'C', "/dev/hd0d",     0L, 16, 0, (int (*) ()) 0, 0, 0, 0},
  1463.             {'D', "/dev/hd1d",     0L, 16, 0, (int (*) ()) 0, 0, 0, 0},
  1464.             {'\0', (char *) NULL,  0L,  0, 0, (int (*) ()) 0, 0, 0, 0}
  1465.         };
  1466.         #endif /* M_XENIX */
  1467.  
  1468.     If you assign `/dev/install' to the `A' drive, you don't need to
  1469.     worry about disk density when reading and writing.  However, you
  1470.     need to specify the full device name when formatting.  For example,
  1471.     to format a high-density disk in drive A: you must specify the
  1472.     full device name:
  1473.  
  1474.         dosformat /dev/fd096ds15
  1475.  
  1476.  
  1477. QX3.  Can Xenix execute MS-DOS programs?
  1478.  
  1479.     Yes.  You must purchase SCO VP/ix.  VP/ix emulates an 8086 PC/XT
  1480.     running MS-DOS.  The compatibility provided by VP/ix is fair with
  1481.     a significant performance penalty.  VP/ix will not run programs
  1482.     that use 80286 or 80386 instruction codes.  VP/ix is not available
  1483.     for Xenix/286.
  1484.  
  1485.  
  1486. QX4.  Can MS-DOS execute Xenix programs?
  1487.  
  1488.     No.  With the Xenix Development System, you can compile programs
  1489.     to execute under MS-DOS with the `-dos' command line switch.
  1490.  
  1491.  
  1492. ******************************************************************************
  1493. *********************  The (in)Famous Xenix Cheat-Sheet  *********************
  1494. ******************************************************************************
  1495.  
  1496.  
  1497. QZ1.  What the $%*&! is happening?
  1498.  
  1499.     Who am I?                           /usr/bin/who am i
  1500.     Where am I?                         /bin/pwd
  1501.     What am I doing?                    /bin/ps -f
  1502.     Am I having fun yet?                /usr/games/worms -R
  1503.     What's my user/group id?            /usr/bin/id
  1504.     Who did I login as?                 /usr/bin/logname
  1505.     What's my terminal?                 /bin/tty
  1506.     What are my terminal parameters?    /bin/stty -a
  1507.     Is terminal flow control working?   /usr/games/stars
  1508.     What is my current crontab file?    /usr/bin/crontab -l
  1509.     Do I have uucp jobs queued?         /usr/bin/uustat
  1510.     What is the system doing?           /usr/bin/w
  1511.     How is the system running?          /usr/bin/vmstat 10
  1512.     Has the system been swapping?       /usr/bin/vmstat -s
  1513.     Open files, inodes, processes?      /bin/pstat | grep '^[0-9]'
  1514.     What are the kernel parameters?     /usr/sys/conf/configure -x
  1515.     What versions are installed?        egrep "#prd|#set|#rel" /etc/perms/*
  1516.     What are the hardware settings?     /etc/hwconfig -h
  1517.     Is /etc/passwd correct?             /etc/pwcheck
  1518.     Is /etc/group correct?              /etc/grpcheck
  1519.     Is /etc/gettydefs correct?          /etc/getty -c /etc/gettydefs
  1520.     Do all files have owners?           /usr/bin/quot
  1521.     Who is using all the disk space?    /usr/bin/quot
  1522.     When did joe last login?            /usr/bin/last joe
  1523.     What files are owned by UID=944?    find / -user 944 -exec l -d {} \;
  1524.     Are file perms/owners set OK?       cd / ;
  1525.                                           /etc/fixperm -n /etc/perms/rts
  1526.     How about perms on uucp files?      cd / ;
  1527.                                           /etc/fixperm -nd UUCP /etc/perms/rts
  1528.     Check uucp file consistency.        /usr/lib/uucp/uucheck
  1529.     What are uucp access permissions?   /usr/lib/uucp/uucheck -v
  1530.     What is the print spooler doing?    /usr/bin/lpstat -t
  1531.     Stop the scheduler.                 /usr/lib/lpshut
  1532.     Restart a printer.                  /usr/lib/accept printer_name ;
  1533.                                           /usr/bin/enable printer_name
  1534.  
  1535.     [Following apply only if TCP/IP is installed.]
  1536.  
  1537.     Where am I?                         /usr/bin/hostname
  1538.     Is system foo alive?                /usr/bin/ping foo
  1539.     What machines are connected?        /usr/bin/netstat
  1540.     How is the network doing?           /usr/bin/netstat 10
  1541.     Where are the packets going?        /usr/bin/netstat -r
  1542.     Network not work?                   /usr/bin/netstat -s
  1543.  
  1544.     [Thanks to Jeff Liebermann.]
  1545.  
  1546.  
  1547. This collection is Copyright 1992-1993, Unicom Systems Development, Inc.
  1548. All rights reserved.  Permission granted to reproduce and distribute this
  1549. document provided this notice remains intact and any changes to the document
  1550. are clearly marked.  We have tried to review all information, but cannot
  1551. guarantee it for any particular purpose.  We do not offer any warranties or
  1552. representations, nor do we accept any liability for any damage resulting
  1553. from the use or misuse of information or procedures in this document.
  1554.  
  1555. [ end of sco-xenix 1.47 ]
  1556.