monitor(1M)




NAME

     monitor - SPARC system PROM monitor


SYNOPSIS

     STOP-A

     BREAK

     initial system power-on

     exit from a client program, e.g., the Operating System


DESCRIPTION

     The CPU board of a workstation contains one or  more  EPROMs
     or  EEPROMs.  The  program  which executes from the PROMs is
     referred to as "the monitor". Among other things, the  moni-
     tor  performs system initialization at power-on and provides
     a user interface.

  Monitor Prompt
     The monitor of earlier workstations was known as the  SunMON
     monitor  and  displayed the > for its prompt. See the SunMON
     MONITOR USAGE section for further details.

     Existing workstations use a monitor which is  known  as  the
     OpenBoot  monitor.   The OpenBoot monitor typically displays
     ok as its prompt, but it may also display the > prompt under
     certain circumstances.

     If the 'auto-boot?' NVRAM parameter is set to  'false'  when
     the  workstation  is powered on, the system does not attempt
     to boot and the monitor issues its prompt. If 'auto-boot' is
     set  to  'true', the system initiates the boot sequence. The
     boot sequence can be aborted by simultaneously pressing  two
     keys  on  the  system's  keyboard:  L1  and A (on older key-
     boards), or Stop and A (on newer keyboards).  Either a lower
     case  a  or  an  upper  case  A works for the keyboard abort
     sequence.  If a console has been attached by way of  one  of
     the  system's  serial  ports  then the abort sequence can be
     accomplished by sending a BREAK. See tip(1).

     When the NVRAM 'security-mode' parameter has been turned on,
     or when the value of the 'sunmon-compat?' parameter is true,
     then the OpenBoot  monitor  displays  the  message:  Type  b
     (boot), c (continue), or n (new command mode)

     and the > prompt appears.


OPENBOOT PROM USAGE

     Some of the more useful commands that  can  be  issued  from
     OpenBoot's  ok   prompt  are  described  here.  Refer to the
     OpenBoot 2.x Command Reference Manual  book for  a  complete
     list of commands.

  Help
     Help for various functional areas of  the  OpenBoot  monitor
     can  be obtained by typing help. The help listing provides a
     number of other key words which can then be used in the help
     command to provide further details.

  NVRAM Parameters
     Each workstation contains one or more  NVRAM  devices  which
     contains  unique  system ID information, as well as a set of
     user-configurable parameters.  The  NVRAM  parameters  allow
     the  user  a certain level of flexibility in configuring the
     system to act in a given manner under a specific set of cir-
     cumstances.

     See eeprom(1M) for  a  description  of  the  parameters  and
     information  regarding  setting  the  parameters from the OS
     level.

     The following commands can be used at the  OpenBoot  monitor
     to access the NVRAM parameters.

     printenv
           Used to list the NVRAM parameters,  along  with  their
           default values and current values.

     setenv pn pv
           Used to set or modify a parameter.  The pn  represents
           the  parameter  name,  and pv represents the parameter
           value.

     set-default pn
           Used to  set  an  individual  parameter  back  to  its
           default value.

     set-defaults
           Used to reset all parameters to their default  values.
           (Note that 'set-defaults' only affects parameters that
           have assigned default values.)

  Security Parameters
     Newer OpenBoot monitors contain user interfaces that support
     the storage and listing of keys for later use by client pro-
     grams.

     list-security-keys
           Lists the names of keys currently stored on a machine.

     set-security-key keyname [ keydata ]
           Stores key data keydata in a key named keyname. Actual
           key data can be up to 32 bytes in length.  The maximum
           length of keyname is 64 bytes, which  allows  for  the
           hex-formatted  ASCII  used to present the key data. If
           keydata is not present, keyname and its  corresponding
           data is deleted.

  Hardware Checks and Diagnostics
     The following commands are available for testing or checking
     the  system's hardware.  If the 'diag-switch?' NVRAM parame-
     ter is set to true when the system is  powered  on,  then  a
     Power-On  Self  Test  (POST)  diagnostic is run, if present,
     sending its results messages to the system's serial port  A.
     Not  all of the commands shown are available on all worksta-
     tions.

     test-all
           Run the diagnostic tests on each device which has pro-
           vided a self-test.

     test floppy
           Run diagnostics on the system's floppy device.

     test /memory
           Run the main memory tests.   If  the  NVRAM  parameter
           'diag-switch?' is set to true, then all of main memory
           is tested.  If the parameter is false  then  only  the
           amount  of  memory  specified  in the 'selftest-#megs'
           NVRAM parameter is tested.

     test net
           Test the network connection for the  on-board  network
           controller.

     watch-net
           Monitor the network attached to the on-board net  con-
           troller.

     watch-net-all
           Monitor the network attached to the on-board net  con-
           troller,  as well as the network controllers installed
           in SBus slots.

     watch-clock
           Test the system's clock function.

  System Information
     The following commands are available for displaying informa-
     tion  about  the  system.  Not all commands are available on
     all workstations.

     banner
           Display the power-on banner.

     .enet-addr
           Display the system's Ethernet address.

     .idprom
           Display the formatted contents of the IDPROM.

     module-info
           Display information about the system's processor(s).

     probe-scsi
           Identify the devices attached  to  the  on-board  SCSI
           controller.

     probe-scsi-all
           Identify the devices attached  to  the  on-board  SCSI
           controller as well as those devices which are attached
           to SBus SCSI controllers.

     show-disks
           Display a list of the device paths for installed  SCSI
           disk controllers.

     show-displays
           Display a list  of  the  device  paths  for  installed
           display devices.

     show-nets
           Display a list of the device paths for installed  Eth-
           ernet controllers.

     show-sbus
           Display list of installed SBus devices.

     show-tapes
           Display a list of the device paths for installed  SCSI
           tape controllers.

     show-ttys
           Display a list of the device paths for tty devices.

     .traps
           Display a list of the SPARC trap types.

     .version
           Display the version and date of the OpenBoot PROM.

  Emergency Commands
     These commands must be typed from the keyboard, they do  not
     work  from  a console which is attached by way of the serial
     ports.  With the exception of the Stop-A command, these com-
     mands  are issued by pressing and holding down the indicated
     keys on the keyboard immediately after the system  has  been
     powered  on.   The  keys must be held down until the monitor
     has checked their status.  The Stop-A command can be  issued
     at  any  time after the console display begins, and the keys
     do not need to be held down once they've been  pressed.  The
     Stop-D,  Stop-F and Stop-N commands are not allowed when one
     of the security modes has been set.  Not  all  commands  are
     available on all workstations.

     Stop (L1)
           Bypass the Power-On Self Test (POST).   This  is  only
           effective if the system has been placed into the diag-
           nostic mode.

     Stop-A (L1-A)
           Abort  the  current  operation  and  return   to   the
           monitor's default prompt.

     Stop-D (L1-D)
           Set the system's  'diag-switch?'  NVRAM  parameter  to
           'true',  which  places  the system in diagnostic mode.
           POST diagnostics, if present, are run,  and  the  mes-
           sages are displayed by way of the system's serial port
           A.

     Stop-F (L1-F)
           Enter the OpenBoot  monitor  before  the  monitor  has
           probed the system for devices.  Issue the 'fexit' com-
           mand to continue with system initialization.

     Stop-N (L1-N)
           Causes the NVRAM  parameters  to  be  reset  to  their
           default  values.   Note  that  not all parameters have
           default values.

  Line Editor Commands
     The following commands can be  used  while  the  monitor  is
     displaying the ok prompt.  Not all of these editing commands
     are available on all workstations.

     CTRL-A
           Place the cursor at the start of line.

     CTRL-B
           Move the cursor backward one character.

     ESC-B Move the cursor backward one word.

     CTRL-D
           Erase the  character  that  the  cursor  is  currently
           highlighting.

     ESC-D Erase the portion of word from  the  cursor's  present
           position to the end of the word.

     CTRL-E
           Place the cursor at the end of line.

     CTRL-F
           Move the cursor forward one character.

     ESC-F Move the cursor forward one word.

     CTRL-H
           Erase the character preceding  the  cursor  (also  use
           Delete or Back Space)

     ESC-H Erase the portion of the word which precedes the  cur-
           sor (use also CTRL-W)

     CTRL-K
           Erase from the cursor's present position to the end of
           the line.

     CTRL-L
           Show the command history list.

     CTRL-N
           Recall the next command from the command history list

     CTRL-P
           Recall a previous command  from  the  command  history
           list.

     CTRL-Q
           Quote the next character (used to type a control char-
           acter).

     CTRL-R
           Retype the current line.

     CTRL-U
           Erase from the cursor's present position to the begin-
           ning of the line.

     CTRL-Y
           Insert the contents of  the  memory  buffer  into  the
           line, in front (to the left) of the cursor.

  nvramrc
     The nvramrc is an area of the system's NVRAM where users may
     store  Forth  programs. The programs which are stored in the
     nvramrc are executed each time the system is reset, provided
     that  the  'use-nvramrc?'  NVRAM  parameter  has been set to
     'true'. Refer to the OpenBoot 2.x Command  Reference  Manual
     book for information on how to edit and use the nvramrc.

  Restricted Monitor
     The command 'old-mode' is used to move OpenBoot into a  res-
     tricted monitor mode, causing the >  prompt to be displayed.
     Only three commands are allowed while in the restricted mon-
     itor; the 'go' command (to resume a program which was inter-
     rupted with the Stop-A command), the 'n' command (to  return
     to  the  normal  OpenBoot  monitor), and boot commands.  The
     restricted monitor's boot  commands  approximate  the  older
     SunMON  monitor's  boot command syntax. If a 'security-mode'
     has been turned on then the restricted monitor  becomes  the
     default  monitor  environment.   The  restricted monitor may
     also become the default environment if the  'sunmon-compat?'
     NVRAM  parameter  is set to true.  Not all workstations have
     the 'sunmon-compat?' parameter.


SunMON PROM USAGE

     The following commands  are  available  systems  with  older
     SunMON-based PROM:

     +|-   Increment or decrement the current address and display
           the contents of the new location.

     ^C source destination n
           (caret-C) Copy, byte-by-byte, a block of length n from
           the source address to the destination address.

     ^I program
           (caret-I) Display the compilation date and location of
           program.

     ^T virtual_address
           (caret-T)  Display  the  physical  address  to   which
           virtual_address is mapped.

     b [ ! ] [ device [ (c,u,p)  ] ] [ pathname ] [ arguments_list ]

     b[?]  Reset appropriate parts of the system and bootstrap  a
           program.    A  `!'  (preceding  the  device  argument)
           prevents the system reset from occurring. Programs can
           be  loaded from various devices (such as a disk, tape,
           or Ethernet). `b' with no arguments causes  a  default
           boot,  either  from  a  disk, or from an Ethernet con-
           troller. `b?' displays all boot devices and their dev-
           ices.

           device
                 one of

                 le    Lance Ethernet

                 ie    Intel Ethernet

                 sd    SCSI disk, CDROM

                 st    SCSI 1/4" or 1/2" tape

                 fd    Diskette

                 id    IPI disk

                 mt    Tape Master 9-track 1/2" tape

                 xd    Xylogics 7053 disk

                 xt    Xylogics 1/2" tape

                 xy    Xylogics 440/450 disk

           c     A controller number (0 if only one controller),

           u     A unit number (0 if only one driver), and

           p     A partition.

           pathname
                 A pathname for a program such as /stand/diag.

           arguments_list
                 A list of up to seven arguments to pass  to  the
                 program being booted.

     c [virtual_address]
           Resume   execution   of   a   program.   When   given,
           virtual_address  is  the  address  at  which execution
           resumes. The default is the current PC. Registers  are
           restored to the values shown by the d, and r commands.

     d [window_number]
           Display (dump) the state of the processor. The proces-
           sor state is observable only after:

              o  An unexpected trap was encountered.

              o  A user program dropped into the monitor (by cal-
                 ling abortent).

              o  The user manually entered the monitor by  typing
                 L1-A or BREAK.

           The display consists of the following:
                   o  The special registers: PSR, PC,  nPC,  TBR,
                      WIM, and Y

                   o  Eight global registers

                   o  24 window registers (8 in, 8 local,  and  8
                      out),  corresponding to one of the 7 avail-
                      able windows.  If a Floating-Point Unit  is
                      on board, its status register along with 32
                      floating-point registers are also shown.

                window_number
                      Display the indicated window_number,  which
                      can   be   any   value  between  0  and  6,
                      inclusive.  If no window is  specified  and
                      the PSR's current window pointer contains a
                      valid window  number,  registers  from  the
                      window  that was active just prior to entry
                      into the monitor are displayed.  Otherwise,
                      registers from window 0 are displayed.

     e [virtual_address][action] ...
           Open  the  16-bit  word  at  virtual_address  (default
           zero).   The  address  is  interpreted  in the address
           space defined by the s command. See the a command  for
           a description of action.

     f virtual_address1 virtual_address2 pattern  [size]
           Fill  the   bytes,   words,   or   long   words   from
           virtual_address1  (lower) to virtual_address2 (higher)
           with the constant, pattern. The size argument can take
           one of the following values:

     b     byte format (the default)

     w     word format

     l     long word format

     For example, the following command fills the  address  block
     from 0x1000 to 0x2000 with the word pattern, 0xABCD:

          f 1000 2000 ABCD W

     g [vector] [argument]

     g [virtual_address] [argument]
           Goto (jump to)  a  predetermined  or  default  routine
           (first  form),  or to a user-specified routine (second
           form).  The value of argument is passed  to  the  rou-
           tine.   If  the  vector or virtual_address argument is
           omitted, the value in the PC is used as the address to
           jump to.

           To set up a predetermined routine to jump to,  a  user
           program  must, prior to executing the monitor's g com-
           mand, set the variable *romp->v_vector_cmd to be equal
           to   the  virtual  address  of  the  desired  routine.
           Predetermined routines  need  not  necessarily  return
           control to the monitor.

           The default routine, defined by  the  monitor,  prints
           the  user-supplied vector according to the format sup-
           plied in argument. This format can be one of:

           %x    hexadecimal

           %d    decimal

     g0    Force a panic and produce a crash dump  when the moni-
           tor  is running as a result of the system being inter-
           rupted,

     g4    (Sun-4 systems only) Force a kernel stack trace   when
           the monitor is running as a result of the system being
           interrupted,

     h     Display the help menu for monitor commands  and  their
           descriptions. To return to the monitor's basic command
           level, press ESCAPE or q before pressing RETURN.

     i [cache_data_offset] [action]...
           Modify cache data RAM command.  Display and/or  modify
           one  or  more  of the cache data addresses.  See the a
           command for a description of action.

     j [cache_tag_offset] [action]...
           Modify cache tag RAM command.  Display  and/or  modify
           the   contents  of  one  or  more  of  the  cache  tag
           addresses.  See the a command  for  a  description  of
           action.

     k [reset_level]
           Reset the system, where reset_level is:

           0     Reset VMEbus, interrupt registers, video monitor
                 (Sun-4 systems). This is the default.

           1     Software reset.
           2     Power-on reset. Resets and  clears  the  memory.
                 Runs the EPROM-based diagnostic self test, which
                 can take several  minutes,  depending  upon  how
                 much memory is being tested.

     kb    Display the system banner.

     l [virtual_address][action]...
           Open  the  long  word  (32  bit)  at  memory   address
           virtual_address (default zero).  The address is inter-
           preted in the address space defined by the  s  command
           (below).   See  the  a  command  for  a description of
           action.

     m [virtual_address][action]...
           Open the segment map entry that  maps  virtual_address
           (default  zero).  The  address  is  interpreted in the
           address space defined by the s command. See the a com-
           mand for a description of action.

     ne

     ni    Disable, enable,  or  invalidate  the  cache,  respec-
           tively.

     o [virtual_address][action]...
           Open the byte location specified   by  virtual_address
           (default  zero).   The  address  is interpreted in the
           address space defined by the s command. See the a com-
           mand for a description of action.

     p [virtual_address][action]...
           Open the page  map  entry  that  maps  virtual_address
           (default  zero)  in the address space defined by the s
           command. See  the  a  command  for  a  description  of
           action.

     q [eeprom_offset][action]...
           Open the EEPROM eeprom_offset (default  zero)  in  the
           EEPROM  address  space.  All  addresses are referenced
           from the beginning or base of the EEPROM  in  physical
           address  space,  and  a  limit  check  is performed to
           insure that no  address  beyond  the  EEPROM  physical
           space  is accessed. This command is used to display or
           modify configuration parameters, such as:  the  amount
           of memory to test during self test, whether to display
           a standard or custom banner, if a serial port (A or B)
           is  to  be  the system console, etc. See the a command
           for a description of action.

     r [register_number]
     r [register_type]

     r [w window_number]
           Display and/or modify one or more of  the  IU  or  FPU
           registers.  A  hexadecimal  register_number can be one
           of:

     0x00-0x0f
           window(0,i0)-window(0,i7), window(0,i0)-window(0,i7)

     0x16-0x1f
           window(1,i0)-window(1,i7), window(1,i0)-window(1,i7)

     0x20-0x2f
           window(2,i0)-window(2,i7), window(2,i0)-window(2,i7)

     0x30-0x3f
           window(3,i0)-window(3,i7), window(3,i0)-window(3,i7)

     0x40-0x4f
           window(4,i0)-window(4,i7), window(4,i0)-window(4,i7)

     0x50-0x5f
           window(5,i0)-window(5,i7), window(5,i0)-window(5,i7)

     0x60-0x6f
           window(6,i0)-window(6,i7), window(6,i0)-window(6,i7)

     0x70-0x77
           g0, g1, g2, g3, g4, g5, g6, g7

     0x78-0x7d
           PSR, PC, nPC, WIM, TBR, Y.

     0x7e-0x9e
           FSR, f0-f31

     Register numbers can only be displayed after  an  unexpected
     trap, a user program has entered the monitor using the abor-
     tent function, or the user has entered the monitor by  manu-
     ally typing L1-A or BREAK.

     If a register_type is given, the first register of the indi-
     cated type is displayed. register_type can be one of:

     f     floating-point

     g     global

     s     special

     If w and a window_number (0-6)  are  given,  the  first  in-
     register  within  the  indicated  window  is  displayed.  If
     window_number is omitted, the window that  was  active  just
     prior to entering the monitor is used.  If the PSR's current
     window pointer is invalid, window 0 is used.

     s [asi])
           Set or display the Address Space Identifier.  With  no
           argument,  s  displays the current Address Space Iden-
           tifier.  The asi value can be one of:

           0x2   control space

           0x3   segment table

           0x4   Page table

           0x8   user instruction

           0x9   supervisor instruction

           0xa   user data

           0xb   supervisor data

           0xc   flush segment

           0xd   flush page

           0xe   flush context

           0xf   cache data

     u [ echo ]

     u [ port ] [ options ] [ baud_rate ]

     u [ u ] [ virtual_address ]
           With no arguments,  display  the  current  I/O  device
           characteristics   including:   current  input  device,
           current output device, baud rates for serial  ports  A
           and  B, an input-to-output echo indicator, and virtual
           addresses of mapped UART devices. With arguments,  set
           or configure the current I/O device.  With the u argu-
           ment  (uu...),  set  the  I/O   device   to   be   the
           virtual_address of a UART device currently mapped.

           echo   Can be either e to enable input to be echoed to
                 the output device, or ne, to indicate that input
                 is not echoed.

           port  Assign the indicated port to be the current  I/O
                 device. port can be one of:

                 a     serial port A

                 b     serial port B

                 k     the workstation keyboard

                 s     the workstation screen

           baud_rate
                 Any legal baud rate.

           options
                 can be any combination of:

                 i     input

                 o     output

                 u     UART

                 e     echo input to output

                 ne    do not echo input

                 r     reset indicated serial port (a and b ports
                       only)

                 If either a or b is supplied, and no options are
                 given,  the  serial  port  is  assigned for both
                 input and output.  If  k  is  supplied  with  no
                 options, it is assigned for input only.  If s is
                 supplied with no options,  it  is  assigned  for
                 output only.

     v virtual_address1 virtual_address2  [size]
           Display  the  contents  of  virtual_address1   (lower)
           virtual_address2  (higher)  in the format specified by
           size:

     b     byte format (the default)

     w     word format

     l     long word format
     Enter return to pause  for  viewing;  enter  another  return
     character  to  resume the display.  To terminate the display
     at any time, press the space bar.

     For example, the following command displays the contents  of
     virtual  address  space  from  address  0x1000 to  0x2000 in
     word format:

          v 1000 2000 W

     w [virtual_address][argument]
           Set the execution vector to a predetermined or default
           routine.  Pass  virtual_address  and  argument to that
           routine.

           To set up a predetermined routine to jump to,  a  user
           program  must, prior to executing the monitor's w com-
           mand, set the variable *romp->v_vector_cmd to be equal
           to   the  virtual  address  of  the  desired  routine.
           Predetermined routines  need  not  necessarily  return
           control to the monitor.

           The default routine, defined by  the  monitor,  prints
           the  user-supplied vector according to the format sup-
           plied in argument. This format can be one of:

           %x    hexadecimal

           %d    decimal

     x     Display a menu of extended  tests.  These  diagnostics
           permit  additional  testing  of such things as the I/O
           port connectors, video memory, workstation memory  and
           keyboard, and boot device paths.

     yc context_number

     yp|s context_number virtual_address
           Flush the indicated context, context page, or  context
           segment.

           c     flush context context_number

           p     flush  the  page  beginning  at  virtual_address
                 within context context_number

           s     flush the segment beginning  at  virtual_address
                 within context context_number


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Architecture                | SPARC                       |
    |_____________________________|_____________________________|


SEE ALSO

     tip(1), boot(1M), eeprom(1M), attributes(5)

     OpenBoot 2.x Command Reference Manual


Man(1) output converted with man2html