File: NICSETUP.TXT 		Date code: 091994	Page 1 of 6

Note: NICSETUP now allows changing EtherWORKS 3 settings via command line
      switches.  This file contains a full description of the switches. 
      Please note:  In order to execute command line switches, you must 
      include /CMD as one of the switches.

General Guidelines
------------------

   1. The NICSETUP command line feature supports configuring only a single 
      EtherWORKS 3 board at a time.

   2. Command line switches are not case sensitive and do not have to appear 
      in any particular order.  Spaces between switches will be ignored. 
      All switch fields must appear exactly as shown in the COMMAND FORMAT 
      section. No spaces are allowed before or after the '=' sign. Truncation 
      of switch names is not allowed.

   3. If the /iobase=EISA switch is used to change the EtherWORKS 3 board to 
      EISA mode, or the EtherWORKS 3 card is hard strapped, the iobase address
      stored permanently in EEPROM will be changed. However the currently 
      selected (temporary) iobase address will not be changed. 
      If the /temporary switch is present, NICSETUP will return an 
      'invalid iobase' error.

   4. If the board is 'busy' (or 'active') due to a EtherWORKS 3 device driver 
      being loaded, the user specified settings will affect ONLY the 
      permanently stored EEPROM settings, unless the /override switch is used. 
      If the /temporary switch is present without also providing the /override 
      switch, NICSETUP will return a 'board is busy' error.

   5. If the /temporary switch is present, any unspecified parameter values 
      will be read from the EtherWORKS 3 current (temporary) settings, 
      otherwise,  the parameter values will be read from the EEPROM.

   6. EtherWORKS 3 (temporary) settings and/or EEPROM permanent settings will 
      be updated only if no errors are detected by NICSETUP.


File: NICSETUP.TXT 						Page 2 of 6

Command Format
---------------

   NICSETUP [/?, /HELP] [/cmd [/iobase=www] [/membase=xxxx] [/memmode=yy] 
            [/irq=zz] [/display] [/temporary] [/override] [/default]  
            [/remote=(enable,disable)] [/protocol=(mop,rpl)] 
            [/run_diag, [loopback]]]

   If you execute the NICSETUP utility WITHOUT including the /cmd or /help
   switches, all switches will be ignored, and NICSETUP will execute its normal 
   menu screen.

Command Line Switches
---------------------

   /? or /help

   When the /? or /help switch is included in the command line, NICSETUP 
   will display simple help text, and all other switches will be 
   ignored. No parameters will be modified.

   /cmd

   This switch is required. It tells NICSETUP to run in "command line mode".
   NICSETUP will then parse all other switches.  If /cmd is not present,
   all switches except /help and /? are ignored and NICSETUP will run in the 
   normal "menu mode".  When /cmd is recognized, NICSETUP becomes an EEPROM/
   register service utility only. There is no menu interface, no graphics 
   display and no multi-EtherWORKS 3 support. NICSETUP then scans for the 
   EtherWORKS 3 board.

   /iobase=www

   'www' must be a HEX value between 100 to 3C0, aligned to an increment of 20,
    or 'EISA'.

   This switch is optional and only accepted when the /cmd switch is
   entered. When the /iobase switch is included in the command line, 
   NICSETUP will change the EtherWORKS 3 permanent EEPROM and current settings
   to the specified iobase value.

   /membase=xxxx

   'xxxx' is a valid HEX format segment address in Extended Memory ranging from
   A000 to FF80. This setting must comply with the memory mode(2K, 32K, 64K ) 
   setting.

   This switch is optional and only accepted when the /cmd switch is 
   present. When the /membase switch is included in the command line, 
   NICSETUP will change the EtherWORKS 3 EEPROM/register MEMBASE field to the 
   specified value.


File: NICSETUP.TXT 						Page 3 of 6


   /memmode=yy

   'yy' is a decimal value, only 0, 2, 32 and 64 are valid. 0 will set the
   EtherWORKS 3 to IO only mode. The memory base address will then be set to
   0.  Any of the other remaining values will not affect the memory base, but 
   both the memory base and memory mode settings will be checked so see if
   they will be compatible with each other (e.g. the memory base address D0800h
   is not compatible with the memory mode 64K)

   This switch is optional and only accepted when the /cmd switch is 
   present. When the /memmode switch is included in the command line, 
   NICSETUP will change the EtherWORKS 3 permanent EEPROM and current register 
   settings to reflect the specified memory mode. The /memmode switch by 
   itself does not change the memory address of the EtherWORKS 3 card. 
   
   /irq=zz

   'zz' is a decimal value: 5, 10, 11 or 15

   This switch is optional and only accepted when the /cmd switch is 
   present. When the the /irq switch is included in the command line, 
   NICSETUP will change the EtherWORKS 3 permanent EEPROM and current register
   settings to the specified IRQ value.

   /nodisplay

   This switch is optional and only accepted when the /cmd switch is
   present. When the /nodisplay switch is not included on the command line, 
   NICSETUP will output any error codes, error messages or current settings to 
   the standard output device. When /nodisplay is included on the command line, 
   NICSETUP will execute commands without displaying any message.

   /temporary

   This switch is optional and only accepted when the /cmd switch is 
   present. When the /temporary switch is not included on the command line,
   NICSETUP will update both the permanent EEPROM and current register 
   settings according to the user specified values.  When /temporary is 
   included on the command line, the user specified switches will affect 
   ONLY the current EtherWORKS 3 register settings.  If your PC is cold 
   booted or RESET, the register value will be reset to the non-volatile 
   values stored in EEPROM.


   /override

   This switch is optional and only accepted when the /cmd switch is
   present. When the /override switch is not included on the command line, 
   NICSETUP will not change the registers if the board is detected as 'busy'. 
   When the /override switch is included on the command line, the 'busy' 
   status will be ignored, and the registers will be changed to the value(s)
   specified.



File: NICSETUP.TXT 						Page 4 of 6


   /default

   This switch is optional and only accepted when the /cmd switch is
   present. When the /default switch is included in the command line, 
   NICSETUP will write the following values to the EtherWORKS 3 EEPROM:

       iobase=300
       memmode=2k
       membase=d000
       irq=5       

   /remote=(enable, disable)

   This switch is optional and only accepted when the /cmd switch is 
   present.  When the /remote switch is included on the command line, 
   NICSETUP will change the EtherWORKS 3 remote boot setting to 
   ENABLE or DISABLE according to the value specified by the user.



   /protocol=(mop,rpl...)

   This switch is optional and only accepted when the /cmd switch is 
   present. When the /protocol switch is included in the command line, 
   NICSETUP will modify the remote boot protocol to the user specified value.

   /run_diag

   This switch is optional and only accepted when the /cmd switch is 
   present. When the /run_diag switch is included in the command line, 
   NICSETUP will execute diagnostics and display the results.

   /loopback

   This switch is optional and only accepted when the /cmd and /run_diag 
   switches are present. When the /loopback switch is included in the 
   command line NICSETUP will prompt the NICSETUP diagnostic utility to 
   perform the external loopback test.  Make sure the proper loopback 
   terminator is installed.



File: NICSETUP.TXT 						Page 5 of 6

Error Messages
--------------

   NICSETUP error codes are returned to 'errorlevel' to comply with MS-DOS 
   batch processing.  The errors are represented by the related bit position 
   of the error code.  More than 1 error may be returned in the same execution.

   0 = Success.

   1 (xxxxxxx1) = No EtherWORKS 3 board or too many EtherWORKS 3 boards.

     - NICSETUP command line mode supports only one EtherWORKS 3 board, 
       please make sure that the system has one and only one EtherWORKS 3 board 
       installed.

   2 (xxxxxx1x) = The EtherWORKS 3 board is busy or hard strapped.

     - If the EtherWORKS 3 driver loaded, NICSETUP will flag the board as 
       'busy' and prevent possible corruption during current network 
       activities. This error occurs only when the user specifies the 
       /temporary switch to modify current settings. Users can add the 
       /override switch to modify permanent EEPROM settings as well 
       if the user is not concerned with disrupting any current network 
       activity.

     - If the EtherWORKS 3 is hard strapped, the current IO base setting is 
       not changed.  Combining the switches /iobase and /temporary will 
       return this error.  The /iobase switch will update the permanent 
       EEPROM settings only.

   4 (xxxxx1xx) = EEPROM checksum error.

     - NICSETUP encountered an EEPROM checksum error. Please invoke the 
       NICSETUP menu mode to recover the EEPROM pattern.

   8 (xxxx1xxx) = Invalid parameter.

     - Check the commands and make sure there are no format errors.

   16 (xxx1xxxx) = Invalid IOBASE field.

     - Make sure the iobase address is a value between 100 to 3E0 hex. Values
       between 100 and 3E0 are in increments of 0x20 hex.

     - If the iobase address is 'EISA', do not use the /temporary switch. 
       The NICSETUP utility will not change the EtherWORKS 3 current settings
       to EISA mode. Only the permanent EEPROM settings will be updated to 
       EISA mode.

   32 (xx1xxxxx) = Invalid MEMBASE field.

     - The valid memory base is A000 to FF80 HEX value, the alignment depends
       on the memory mode. 2K mode must be in increments of 2K. 32K values
       are chosen in increments of 32K. 64K values should be chosen in
       increments of 64K. Make sure the membase address complies with these
       rules.  If you are unsure of valid values enter NICSETUP for a complete
       listing of valid memory values for the particular memory mode that you
       are using.



File: NICSETUP.TXT 						Page 6 of 6


   64 (x1xxxxxx) = Invalid MEMMODE field.

      - Valid memory modes are decimal 0, 2, 32 and 64. 

      - The current memory mode and memory base settings are not compatible
        with each other.

   128 (1xxxxxx) = Invalid IRQ field.

      - Only 5, 10, 11 and 15 are acceptable.

   256 (xxxxxxx1 xxxxxxx) = Diagnostic failed.

      - This error is from EtherWORKS 3 diagnostics. The EEPROM permanent
        settings will not be changed. 

