From: wizard@teal.csn.org (Michael Willett)
Subject: FAQ, Technical Tips for Coherent 4.0
Organization: Colorado SuperNet, Inc.
Date: Mon, 4 Jan 1993 15:57:18 GMT




          T E C H N I C A L  T I P S  F O R  C O H E R E N T  4.X

                 Technical Tips FAQ for Rev 4.X of Coherent

                                  Rev 2.2





                          Help With Installation:
               4.0 Binary compatability with other software:
                            Compiling programs:
                   Help with serial ports and terminals:






NOTE: I have had very few problems with Coherent 4.X, so I was at a
      loss to help in the FAQ.  I asked Bob Hemedinger to help
      me in this area, and he was kind enough to put together the
      help areas including Installation, Binary (COFF) Compatibility,
      and a few tips on compiling programs.  This is one of the many
      reasons I have stayed with Coherent.  Thanks, Bob!


Help With Installation:     From: Bob Hemedinger <support@mwc.com>
-----------------------

1) I'm updating from version 3.x to 4.x and am being asked for
   a serial number from a registration card. I don't have one.

        - updating users do not need new serial numbers. Use
          the number supplied with your 3.x version. If you don't
          know what it is, read the file /etc/serialno.

2) I'm seeing various characters in the upper right hand corner of
   my screen when Coherent boots.

        - These are used by MWC for debugging some installation
          problems. If installation fails to boot, the last character(s)
          displayed in the corner of the screen will give a significant
          clue as to where the failure occurred.

3) I get a core dump during the installation. The last digits of the
   eip register are 2EF.

        - Call MWC for a new set of installation diskettes.

4) I see a prepare_gift() message when Coherent boots.

        - The tertiary boot program, /tboot, is attempting to read your
          CMOS to get your hard drive parameters and other information.
          This process met with an unexpected error, usually related to
          the initialization of cache memory. If Coherent continues to boot
          and run, ignore the message. If the boot fails, try this:

                - hit <space> when prompted by tboot to abort the
                  boot process. Type 'info' at the first '?' prompt.
                  Ignore the returned data. At the next '?' prompt,
                  type 'update' or 'begin' if updating or installing,
                  or enter the name of the kernel to boot. Follow
                  this procedure exactly. Do NOT try the 'info' command
                  more than once.

5) When booting the installation, I come to a # prompt with a message
   displayed that I didn't boot properly and need to reboot.

        - tboot failed to pass what you typed at the '?' prompt
          to the installation program. A prepare_gift() message
          was probably displayed before this, sometimes too quickly
          to be seen unless one is looking for it specifically.
          One can either reboot and use the procedure from item #4
          (above), or type 'build' at the # prompt to install, or
          type 'build -u' at the # prompt to update from 3.x.

6) During boot, I see a message about not being able to brelease a
   modified buffer.

        - In most cases, Coherent will continue to boot normally. In some,
          the message will scroll endlessly. This is an indication of an
          incompatible bios and is a very rare case. The Epson bios set
          has sometimes produced this problem. If at all possible, update
          the bios chips in the computer. Phoenix is the bios chipset
          MWC recommends.

7) After installing disk #1, I reboot Coherent from the hard drive, but
   am never prompted to enter a diskette -or-, I reboot Coherent from the
   hard drive, and the system hangs with a Coherent banner message on the
   screen.

        - Thou hast most likely chosen to use either virtual consoles,
          or no virtual consoles but did select a loadable keyboard
          table. Coherent is hanging at the point where keyboard initialization
          takes place, indicating that the keyboard does not properly support
          IBM scan code 3. This is a different keyboard mode than DOS
          uses, and probably a good 10% of keyboards of Asian origin will
          have problems with this. Reinstallation without virtual consoles
          nor loadable keyboard tables should resolve this.

8) All diskettes install without a hitch, but after rebooting, fsck finds
   all sorts of DUP blocks and bad i-nodes.

        - This is rare, but is usually the result of installing onto a
          large partition. This is possibly related to sector translation
          firmware and/or the manner in which the firmware deals with
          bad blocks... we don't know yet. Break the large partition into
          smaller partitions and try installation again. If this is an ESDI
          drive, and the controller is doing sector translation, try switching
          it to native mode.


4.0 Binary compatability with other software:
--------------------------------------------

Coherent 4.x compiles and runs COFF executables. Third party COFF software
will most likely run if the following conditions are true:

        - does NOT use shared memory nor shared libraries. We plan to
          implement these in the next release of Coherent. Coherent
          4.0 shared memory is not System V compliant.

        - does NOT rely on sockets nor streams. Again, we plan to have
          have at least one of these in the next release.

        - does NOT use graphics. Coherent 4.0 is strictly a text-based
          system. Again, we plan to have some form of graphics support
          in the future.

Some examples of 3rd party software running under Coherent 4.x:
        ACUCOBOL
        Xtree
        BASIS International BBX/Progression 3 (BASIC)
        FilePro

        - For more info, please contact MWC, or email sales@mwc.com.


Compiling programs:
-------------------

1) The compiler is complaining about not enough memory.

        - You may have a significant amount of memory, say 2 or 4 Megabytes,
          but one must also account for other running processes. The compiler
          by default tries to do all of its work in core (memory). If it
          aborts due to not enough memory, then add a -T0 to your cc command
          line. This will force the compiler to use temporary files on
          the hard drive, rather than in core.

2) I'm trying to port software from a bbs or the net. Is Coherent closer to
   System V or BSD?

        - You should select System V wherever possible. We tend to
          avoid BSDisms.

3) When compiling a package, the linker complains that getwd() doesn't
   exist. This worked under 3.x. What happened?

        - With Coherent 4.0, we have gone to getcwd() in place of
          getwd(). We have supplied _getwd() for people that need
          getwd(), but we are planning on dropping this in the
          future.


Help with serial ports and terminals:
-------------------------------------
                 d10590@tanus.oz.au (Robert Chalmers) Coherent V4.0/4.01.
                        Thanks, Robert!

If you follow the installation instructions, and choose their defaults,
you will end up with a ttys file very similar to the following.

        0lPcom1l <--|
        0lPcom2l    | -- The four standard COM1, COM2,
        0lPcom3l    |    COM3 & COM4 ports. NOT CONFIGURED.
        0lPcom4l <--|    See the notes below for configuration.
        1lPmono0 <--|
        1lPmono1    | -- The terminal virtual consoles.
        1lPmono2    |    These REPLACE the V3.x's 1Pconsole
        1lPmono3 <--|     entry in that versions ttys file.
                          You dont have to touch these.

For  example, on  my system  I have the  following hardware.   One standard
HDD/FDD Controller  (IDE) with COM1,  COM2 and LPT1 on  board, and enabled.
These live at 3F8 - IRQ4, and 2F8 - IRQ3.  LPT1 uses 378 and IRQ7.

One standard Taiwan Multi I/O card  with 2 COM ports, one printer port, and
one game port.  This card can be configured as  COM1/2  or COM3/4, and LPT1
or LPT2. I  have the jumpers set for the  following. COM3 at 3E8 - IRQ4 and
COM4 at 2E8 - IRQ3, with the second printer, LPT2 at 278 - IRQ5.

Now, setting them up, as applied to this type of 2 board setup.  If you are
not sure  if your installation configured the  ports correctly, then follow
the instructions  in the Release  Notes and Installation  Guide under 'Asy'
exactly as  they appear, regarding the making of  the devices.  Dont change
anything. yet.  Now, the thing to  note is the rule on IRQs and Polling. If
you are using COM2 as your  modem port, (seems to be the most used option),
and COM1 as a terminal connection,  and both are using IRQs, then the other
two  must be  Polled. COM3  and COM4  must be  Polled. Observe  my settings
listed,

        0lPcom1l <--- Serial terminal on COM1. IRQ4
        1rLcom2r <--- Modem, incoming, on COM2. IRQ3
        0lLcom2l <--- Modem, outgoing (the same modem) on COM2. IRQ3
        0lPcom3pl <--- Serial terminal on COM3. Polled
        0lPcom4pl <--- Serial terminal on COM4. Polled
        1lPmono0 <-|
        1lPmono1   |
        1lPmono2   | --virtual screens.
        1lPmono3 <-|

The Serial terminals are shown as 'disabled' in the above listing, but when
they are connected, you simply type  'enable com3pl' and presto!, you get a
login prompt on that terminal.

In SUMMARY:
Install with all defaults.
Run the three configuration commands in the Asy entry.
The asyxxx entries in your /dev directory are the prototypes for
the comxx devices, so you can ignore them for the purposes of this.
Decide which lines you will use, and check your IRQ/Poll combination.
Check your physical wiring.

For terminals, you only need three wires:

D25 connectors. TXD to RXD, RXD to TXD, Common Ground.
        2 --> 3
        3 <-- 2
        7 <-> 7
D9 connector. TXD to RXD, RXD to TXD, Common Ground.
        2 --> 3
        3 <-- 2
        5 <-> 5

In the above setting, to call out on the modem, you MUST type
 'disable com2r' before  you can call out on com2l.  When you are finished,
type 'enable com2r' to put your modem back on line.

Other  things  of  note: Old  Xt's  with  a com  port  and  any version  of
TELIX/PROCOMM/etc etc  make good cheap terminals, as  do old terminals that
businesses throw away as obsolete.

Windows  3.1's Terminal  will emulate  a  vt100. If  you have  a second  PC
connected  to  a Coherent  serial  port, its  'almost!'  like having  Xterm
running Coherent in a Term window.  You can even cut and paste between Word
for Windows etc and vi. So who needs X I ask?












-- 
Michael Willett, mike@array.com    uupsi!monarch!mike   uunet!csn!monarch!mike
                So much fun, so little time to enjoy it...