1 MONITOR(1M) Maintenance Commands MONITOR(1M) 2 3 4 5 NAME 6 monitor - SPARC system PROM monitor 7 8 SYNOPSIS 9 STOP-A 10 11 12 BREAK 13 14 15 initial system power-on 16 17 18 exit from a client program, e.g., the Operating System 19 20 21 DESCRIPTION 22 The CPU board of a workstation contains one or more EPROMs or EEPROMs. 23 The program which executes from the PROMs is referred to as "the 24 monitor". Among other things, the monitor performs system 25 initialization at power-on and provides a user interface. 26 27 Monitor Prompt 28 The monitor of earlier workstations was known as the SunMON monitor and 29 displayed the > for its prompt. See the SunMON MONITOR USAGE section 30 for further details. 31 32 33 Existing workstations use a monitor which is known as the OpenBoot 34 monitor. The OpenBoot monitor typically displays ok as its prompt, but 35 it may also display the > prompt under certain circumstances. 36 37 38 If the 'auto-boot?' NVRAM parameter is set to 'false' when the 39 workstation is powered on, the system does not attempt to boot and the 40 monitor issues its prompt. If 'auto-boot' is set to 'true', the system 41 initiates the boot sequence. The boot sequence can be aborted by 42 simultaneously pressing two keys on the system's keyboard: L1 and A (on 43 older keyboards), or Stop and A (on newer keyboards). Either a lower 44 case a or an upper case A works for the keyboard abort sequence. If a 45 console has been attached by way of one of the system's serial ports 46 then the abort sequence can be accomplished by sending a BREAK. See 47 tip(1). 48 49 50 When the NVRAM 'security-mode' parameter has been turned on, or when 51 the value of the 'sunmon-compat?' parameter is true, then the OpenBoot 52 monitor displays the message: Type b (boot), c (continue), or n (new 53 command mode) 54 55 56 and the > prompt appears. 57 58 OPENBOOT PROM USAGE 59 Some of the more useful commands that can be issued from OpenBoot's ok 60 prompt are described here. Refer to the book for a complete list of 61 commands. 62 63 Help 64 Help for various functional areas of the OpenBoot monitor can be 65 obtained by typing help. The help listing provides a number of other 66 key words which can then be used in the help command to provide further 67 details. 68 69 NVRAM Parameters 70 Each workstation contains one or more NVRAM devices which contains 71 unique system ID information, as well as a set of user-configurable 72 parameters. The NVRAM parameters allow the user a certain level of 73 flexibility in configuring the system to act in a given manner under a 74 specific set of circumstances. 75 76 77 See eeprom(1M) for a description of the parameters and information 78 regarding setting the parameters from the OS level. 79 80 81 The following commands can be used at the OpenBoot monitor to access 82 the NVRAM parameters. 83 84 printenv 85 Used to list the NVRAM parameters, along with their 86 default values and current values. 87 88 89 setenv pn pv 90 Used to set or modify a parameter. The pn represents 91 the parameter name, and pv represents the parameter 92 value. 93 94 95 set-default pn 96 Used to set an individual parameter back to its 97 default value. 98 99 100 set-defaults 101 Used to reset all parameters to their default values. 102 (Note that 'set-defaults' only affects parameters 103 that have assigned default values.) 104 105 106 Security Parameters 107 Newer OpenBoot monitors contain user interfaces that support the 108 storage and listing of keys for later use by client programs. 109 110 list-security-keys 111 112 Lists the names of keys currently stored on a machine. 113 114 115 set-security-key keyname [ keydata ] 116 117 Stores key data keydata in a key named keyname. Actual key data can 118 be up to 32 bytes in length. The maximum length of keyname is 64 119 bytes, which allows for the hex-formatted ASCII used to present the 120 key data. If keydata is not present, keyname and its corresponding 121 data is deleted. 122 123 124 Hardware Checks and Diagnostics 125 The following commands are available for testing or checking the 126 system's hardware. If the 'diag-switch?' NVRAM parameter is set to 127 true when the system is powered on, then a Power-On Self Test (POST) 128 diagnostic is run, if present, sending its results messages to the 129 system's serial port A. Not all of the commands shown are available on 130 all workstations. 131 132 test-all 133 Run the diagnostic tests on each device which has 134 provided a self-test. 135 136 137 test floppy 138 Run diagnostics on the system's floppy device. 139 140 141 test /memory 142 Run the main memory tests. If the NVRAM parameter 143 'diag-switch?' is set to true, then all of main memory 144 is tested. If the parameter is false then only the 145 amount of memory specified in the 'selftest-#megs' 146 NVRAM parameter is tested. 147 148 149 test net 150 Test the network connection for the on-board network 151 controller. 152 153 154 watch-net 155 Monitor the network attached to the on-board net 156 controller. 157 158 159 watch-net-all 160 Monitor the network attached to the on-board net 161 controller, as well as the network controllers 162 installed in SBus slots. 163 164 165 watch-clock 166 Test the system's clock function. 167 168 169 System Information 170 The following commands are available for displaying information about 171 the system. Not all commands are available on all workstations. 172 173 banner 174 Display the power-on banner. 175 176 177 .enet-addr 178 Display the system's Ethernet address. 179 180 181 .idprom 182 Display the formatted contents of the IDPROM. 183 184 185 module-info 186 Display information about the system's processor(s). 187 188 189 probe-scsi 190 Identify the devices attached to the on-board SCSI 191 controller. 192 193 194 probe-scsi-all 195 Identify the devices attached to the on-board SCSI 196 controller as well as those devices which are 197 attached to SBus SCSI controllers. 198 199 200 show-disks 201 Display a list of the device paths for installed SCSI 202 disk controllers. 203 204 205 show-displays 206 Display a list of the device paths for installed 207 display devices. 208 209 210 show-nets 211 Display a list of the device paths for installed 212 Ethernet controllers. 213 214 215 show-sbus 216 Display list of installed SBus devices. 217 218 219 show-tapes 220 Display a list of the device paths for installed SCSI 221 tape controllers. 222 223 224 show-ttys 225 Display a list of the device paths for tty devices. 226 227 228 .traps 229 Display a list of the SPARC trap types. 230 231 232 .version 233 Display the version and date of the OpenBoot PROM. 234 235 236 Emergency Commands 237 These commands must be typed from the keyboard, they do not work from a 238 console which is attached by way of the serial ports. With the 239 exception of the Stop-A command, these commands are issued by pressing 240 and holding down the indicated keys on the keyboard immediately after 241 the system has been powered on. The keys must be held down until the 242 monitor has checked their status. The Stop-A command can be issued at 243 any time after the console display begins, and the keys do not need to 244 be held down once they've been pressed. The Stop-D, Stop-F and Stop-N 245 commands are not allowed when one of the security modes has been set. 246 Not all commands are available on all workstations. 247 248 Stop (L1) 249 Bypass the Power-On Self Test (POST). This is only 250 effective if the system has been placed into the 251 diagnostic mode. 252 253 254 Stop-A (L1-A) 255 Abort the current operation and return to the 256 monitor's default prompt. 257 258 259 Stop-D (L1-D) 260 Set the system's 'diag-switch?' NVRAM parameter to 261 'true', which places the system in diagnostic mode. 262 POST diagnostics, if present, are run, and the 263 messages are displayed by way of the system's serial 264 port A. 265 266 267 Stop-F (L1-F) 268 Enter the OpenBoot monitor before the monitor has 269 probed the system for devices. Issue the 'fexit' 270 command to continue with system initialization. 271 272 273 Stop-N (L1-N) 274 Causes the NVRAM parameters to be reset to their 275 default values. Note that not all parameters have 276 default values. 277 278 279 Line Editor Commands 280 The following commands can be used while the monitor is displaying the 281 ok prompt. Not all of these editing commands are available on all 282 workstations. 283 284 CTRL-A 285 Place the cursor at the start of line. 286 287 288 CTRL-B 289 Move the cursor backward one character. 290 291 292 ESC-B 293 Move the cursor backward one word. 294 295 296 CTRL-D 297 Erase the character that the cursor is currently 298 highlighting. 299 300 301 ESC-D 302 Erase the portion of word from the cursor's present position 303 to the end of the word. 304 305 306 CTRL-E 307 Place the cursor at the end of line. 308 309 310 CTRL-F 311 Move the cursor forward one character. 312 313 314 ESC-F 315 Move the cursor forward one word. 316 317 318 CTRL-H 319 Erase the character preceding the cursor (also use Delete or 320 Back Space) 321 322 323 ESC-H 324 Erase the portion of the word which precedes the cursor (use 325 also CTRL-W) 326 327 328 CTRL-K 329 Erase from the cursor's present position to the end of the 330 line. 331 332 333 CTRL-L 334 Show the command history list. 335 336 337 CTRL-N 338 Recall the next command from the command history list 339 340 341 CTRL-P 342 Recall a previous command from the command history list. 343 344 345 CTRL-Q 346 Quote the next character (used to type a control character). 347 348 349 CTRL-R 350 Retype the current line. 351 352 353 CTRL-U 354 Erase from the cursor's present position to the beginning of 355 the line. 356 357 358 CTRL-Y 359 Insert the contents of the memory buffer into the line, in 360 front (to the left) of the cursor. 361 362 363 nvramrc 364 The nvramrc is an area of the system's NVRAM where users may store 365 Forth programs. The programs which are stored in the nvramrc are 366 executed each time the system is reset, provided that the 'use- 367 nvramrc?' NVRAM parameter has been set to 'true'. Refer to the book for 368 information on how to edit and use the nvramrc. 369 370 Restricted Monitor 371 The command 'old-mode' is used to move OpenBoot into a restricted 372 monitor mode, causing the > prompt to be displayed. Only three 373 commands are allowed while in the restricted monitor; the 'go' command 374 (to resume a program which was interrupted with the Stop-A command), 375 the 'n' command (to return to the normal OpenBoot monitor), and boot 376 commands. The restricted monitor's boot commands approximate the older 377 SunMON monitor's boot command syntax. If a 'security-mode' has been 378 turned on then the restricted monitor becomes the default monitor 379 environment. The restricted monitor may also become the default 380 environment if the 'sunmon-compat?' NVRAM parameter is set to true. 381 Not all workstations have the 'sunmon-compat?' parameter. 382 383 SUNMON PROM USAGE 384 The following commands are available systems with older SunMON-based 385 PROM: 386 387 +|- 388 389 Increment or decrement the current address and display the contents 390 of the new location. 391 392 393 ^C source destination n 394 395 (caret-C) Copy, byte-by-byte, a block of length n from the source 396 address to the destination address. 397 398 399 ^I program 400 401 (caret-I) Display the compilation date and location of program. 402 403 404 ^T virtual_address 405 406 (caret-T) Display the physical address to which virtual_address is 407 mapped. 408 409 410 b [ ! ] [ device [ (c,u,p) ] ] [ pathname ] [ arguments_list ] 411 412 413 414 415 b[?] 416 417 Reset appropriate parts of the system and bootstrap a program. A 418 `!' (preceding the device argument) prevents the system reset from 419 occurring. Programs can be loaded from various devices (such as a 420 disk, tape, or Ethernet). `b' with no arguments causes a default 421 boot, either from a disk, or from an Ethernet controller. `b?' 422 displays all boot devices and their devices. 423 424 device 425 one of 426 427 le 428 Lance Ethernet 429 430 431 ie 432 Intel Ethernet 433 434 435 sd 436 SCSI disk, CDROM 437 438 439 st 440 SCSI 1/4" or 1/2" tape 441 442 443 fd 444 Diskette 445 446 447 id 448 IPI disk 449 450 451 mt 452 Tape Master 9-track 1/2" tape 453 454 455 xd 456 Xylogics 7053 disk 457 458 459 xt 460 Xylogics 1/2" tape 461 462 463 xy 464 Xylogics 440/450 disk 465 466 467 468 c 469 A controller number (0 if only one controller), 470 471 472 u 473 A unit number (0 if only one driver), and 474 475 476 p 477 A partition. 478 479 480 pathname 481 A pathname for a program such as /stand/diag. 482 483 484 arguments_list 485 A list of up to seven arguments to pass to the 486 program being booted. 487 488 489 490 c [virtual_address] 491 492 Resume execution of a program. When given, virtual_address is the 493 address at which execution resumes. The default is the current PC. 494 Registers are restored to the values shown by the d, and r 495 commands. 496 497 498 d [window_number] 499 500 Display (dump) the state of the processor. The processor state is 501 observable only after: 502 503 o An unexpected trap was encountered. 504 505 o A user program dropped into the monitor (by calling 506 abortent). 507 508 o The user manually entered the monitor by typing L1-A or 509 BREAK. 510 The display consists of the following: 511 512 o The special registers: PSR, PC, nPC, TBR, WIM, and Y 513 514 o Eight global registers 515 516 o 24 window registers (8 in, 8 local, and 8 out), 517 corresponding to one of the 7 available windows. If a 518 Floating-Point Unit is on board, its status register 519 along with 32 floating-point registers are also shown. 520 521 window_number 522 Display the indicated window_number, which can be 523 any value between 0 and 6, inclusive. If no 524 window is specified and the PSR's current window 525 pointer contains a valid window number, registers 526 from the window that was active just prior to 527 entry into the monitor are displayed. Otherwise, 528 registers from window 0 are displayed. 529 530 531 532 e [virtual_address][action] ... 533 534 Open the 16-bit word at virtual_address (default zero). The 535 address is interpreted in the address space defined by the s 536 command. See the a command for a description of action. 537 538 539 f virtual_address1 virtual_address2 pattern [size] 540 541 Fill the bytes, words, or long words from virtual_address1 (lower) 542 to virtual_address2 (higher) with the constant, pattern. The size 543 argument can take one of the following values: 544 545 b 546 byte format (the default) 547 548 549 w 550 word format 551 552 553 l 554 long word format 555 556 For example, the following command fills the address block from 557 0x1000 to 0x2000 with the word pattern, 0xABCD: 558 559 f 1000 2000 ABCD W 560 561 562 g [vector] [argument] 563 g [virtual_address] [argument] 564 565 Goto (jump to) a predetermined or default routine (first form), or 566 to a user-specified routine (second form). The value of argument 567 is passed to the routine. If the vector or virtual_address 568 argument is omitted, the value in the PC is used as the address to 569 jump to. 570 571 To set up a predetermined routine to jump to, a user program must, 572 prior to executing the monitor's g command, set the variable 573 *romp->v_vector_cmd to be equal to the virtual address of the 574 desired routine. Predetermined routines need not necessarily return 575 control to the monitor. 576 577 The default routine, defined by the monitor, prints the user- 578 supplied vector according to the format supplied in argument. This 579 format can be one of: 580 581 %x 582 hexadecimal 583 584 585 %d 586 decimal 587 588 589 590 g0 591 592 Force a panic and produce a crash dump when the monitor is running 593 as a result of the system being interrupted, 594 595 596 g4 597 598 (Sun-4 systems only) Force a kernel stack trace when the monitor 599 is running as a result of the system being interrupted, 600 601 602 h 603 604 Display the help menu for monitor commands and their descriptions. 605 To return to the monitor's basic command level, press ESCAPE or q 606 before pressing RETURN. 607 608 609 i [cache_data_offset] [action]... 610 611 Modify cache data RAM command. Display and/or modify one or more 612 of the cache data addresses. See the a command for a description 613 of action. 614 615 616 j [cache_tag_offset] [action]... 617 618 Modify cache tag RAM command. Display and/or modify the contents 619 of one or more of the cache tag addresses. See the a command for a 620 description of action. 621 622 623 k [reset_level] 624 625 Reset the system, where reset_level is: 626 627 0 628 Reset VMEbus, interrupt registers, video monitor (Sun-4 629 systems). This is the default. 630 631 632 1 633 Software reset. 634 635 636 2 637 Power-on reset. Resets and clears the memory. Runs the EPROM- 638 based diagnostic self test, which can take several minutes, 639 depending upon how much memory is being tested. 640 641 642 643 kb 644 645 Display the system banner. 646 647 648 l [virtual_address][action]... 649 650 Open the long word (32 bit) at memory address virtual_address 651 (default zero). The address is interpreted in the address space 652 defined by the s command (below). See the a command for a 653 description of action. 654 655 656 m [virtual_address][action]... 657 658 Open the segment map entry that maps virtual_address (default 659 zero). The address is interpreted in the address space defined by 660 the s command. See the a command for a description of action. 661 662 663 ne 664 665 666 667 668 ni 669 670 Disable, enable, or invalidate the cache, respectively. 671 672 673 o [virtual_address][action]... 674 675 Open the byte location specified by virtual_address (default 676 zero). The address is interpreted in the address space defined by 677 the s command. See the a command for a description of action. 678 679 680 p [virtual_address][action]... 681 682 Open the page map entry that maps virtual_address (default zero) in 683 the address space defined by the s command. See the a command for a 684 description of action. 685 686 687 q [eeprom_offset][action]... 688 689 Open the EEPROM eeprom_offset (default zero) in the EEPROM address 690 space. All addresses are referenced from the beginning or base of 691 the EEPROM in physical address space, and a limit check is 692 performed to insure that no address beyond the EEPROM physical 693 space is accessed. This command is used to display or modify 694 configuration parameters, such as: the amount of memory to test 695 during self test, whether to display a standard or custom banner, 696 if a serial port (A or B) is to be the system console, etc. See the 697 a command for a description of action. 698 699 700 r [register_number] 701 r [register_type] 702 r [w window_number] 703 704 Display and/or modify one or more of the IU or FPU registers. A 705 hexadecimal register_number can be one of: 706 707 0x00-0x0f 708 window(0,i0)-window(0,i7), 709 window(0,i0)--window(0,i7) 710 711 712 0x16-0x1f 713 window(1,i0)-window(1,i7), 714 window(1,i0)--window(1,i7) 715 716 717 0x20-0x2f 718 window(2,i0)-window(2,i7), 719 window(2,i0)--window(2,i7) 720 721 722 0x30-0x3f 723 window(3,i0)-window(3,i7), 724 window(3,i0)--window(3,i7) 725 726 727 0x40-0x4f 728 window(4,i0)-window(4,i7), 729 window(4,i0)--window(4,i7) 730 731 732 0x50-0x5f 733 window(5,i0)-window(5,i7), 734 window(5,i0)--window(5,i7) 735 736 737 0x60-0x6f 738 window(6,i0)-window(6,i7), 739 window(6,i0)--window(6,i7) 740 741 742 0x70-0x77 743 g0, g1, g2, g3, g4, g5, g6, g7 744 745 746 0x78-0x7d 747 PSR, PC, nPC, WIM, TBR, Y. 748 749 750 0x7e-0x9e 751 FSR, f0-f31 752 753 Register numbers can only be displayed after an unexpected trap, a 754 user program has entered the monitor using the abortent function, 755 or the user has entered the monitor by manually typing L1-A or 756 BREAK. 757 758 If a register_type is given, the first register of the indicated 759 type is displayed. register_type can be one of: 760 761 f 762 floating-point 763 764 765 g 766 global 767 768 769 s 770 special 771 772 If w and a window_number (0--6) are given, the first in-register 773 within the indicated window is displayed. If window_number is 774 omitted, the window that was active just prior to entering the 775 monitor is used. If the PSR's current window pointer is invalid, 776 window 0 is used. 777 778 779 s [asi]) 780 781 Set or display the Address Space Identifier. With no argument, s 782 displays the current Address Space Identifier. The asi value can 783 be one of: 784 785 0x2 786 control space 787 788 789 0x3 790 segment table 791 792 793 0x4 794 Page table 795 796 797 0x8 798 user instruction 799 800 801 0x9 802 supervisor instruction 803 804 805 0xa 806 user data 807 808 809 0xb 810 supervisor data 811 812 813 0xc 814 flush segment 815 816 817 0xd 818 flush page 819 820 821 0xe 822 flush context 823 824 825 0xf 826 cache data 827 828 829 830 u [ echo ] 831 832 833 834 835 u [ port ] [ options ] [ baud_rate ] 836 837 838 839 840 u [ u ] [ virtual_address ] 841 842 With no arguments, display the current I/O device characteristics 843 including: current input device, current output device, baud rates 844 for serial ports A and B, an input-to-output echo indicator, and 845 virtual addresses of mapped UART devices. With arguments, set or 846 configure the current I/O device. With the u argument (uu...), set 847 the I/O device to be the virtual_address of a UART device currently 848 mapped. 849 850 echo 851 Can be either e to enable input to be echoed to the 852 output device, or ne, to indicate that input is not 853 echoed. 854 855 856 port 857 Assign the indicated port to be the current I/O 858 device. port can be one of: 859 860 a 861 serial port A 862 863 864 b 865 serial port B 866 867 868 k 869 the workstation keyboard 870 871 872 s 873 the workstation screen 874 875 876 877 baud_rate 878 Any legal baud rate. 879 880 881 options 882 can be any combination of: 883 884 i 885 input 886 887 888 o 889 output 890 891 892 u 893 UART 894 895 896 e 897 echo input to output 898 899 900 ne 901 do not echo input 902 903 904 r 905 reset indicated serial port (a and b ports only) 906 907 If either a or b is supplied, and no options are given, 908 the serial port is assigned for both input and output. 909 If k is supplied with no options, it is assigned for 910 input only. If s is supplied with no options, it is 911 assigned for output only. 912 913 914 915 v virtual_address1 virtual_address2 [size] 916 917 Display the contents of virtual_address1 (lower) virtual_address2 918 (higher) in the format specified by size: 919 920 b 921 byte format (the default) 922 923 924 w 925 word format 926 927 928 l 929 long word format 930 931 Enter return to pause for viewing; enter another return character 932 to resume the display. To terminate the display at any time, press 933 the space bar. 934 935 For example, the following command displays the contents of virtual 936 address space from address 0x1000 to 0x2000 in word format: 937 938 v 1000 2000 W 939 940 941 w [virtual_address][argument] 942 943 Set the execution vector to a predetermined or default routine. 944 Pass virtual_address and argument to that routine. 945 946 To set up a predetermined routine to jump to, a user program must, 947 prior to executing the monitor's w command, set the variable 948 *romp->v_vector_cmd to be equal to the virtual address of the 949 desired routine. Predetermined routines need not necessarily return 950 control to the monitor. 951 952 The default routine, defined by the monitor, prints the user- 953 supplied vector according to the format supplied in argument. This 954 format can be one of: 955 956 %x 957 hexadecimal 958 959 960 %d 961 decimal 962 963 964 965 x 966 967 Display a menu of extended tests. These diagnostics permit 968 additional testing of such things as the I/O port connectors, video 969 memory, workstation memory and keyboard, and boot device paths. 970 971 972 yc context_number 973 974 975 976 977 yp|s context_number virtual_address 978 979 Flush the indicated context, context page, or context segment. 980 981 c 982 flush context context_number 983 984 985 p 986 flush the page beginning at virtual_address within context 987 context_number 988 989 990 s 991 flush the segment beginning at virtual_address within context 992 context_number 993 994 995 996 ATTRIBUTES 997 See attributes(5) for descriptions of the following attributes: 998 999 1000 1001 1002 +---------------+-----------------+ 1003 |ATTRIBUTE TYPE | ATTRIBUTE VALUE | 1004 +---------------+-----------------+ 1005 |Architecture | SPARC | 1006 +---------------+-----------------+ 1007 1008 SEE ALSO 1009 tip(1), boot(1M), eeprom(1M), attributes(5) 1010 1011 1012 1013 July 24, 2003 MONITOR(1M)