cc/td/doc/product/access/acs_fix/827
hometocprevnextglossaryfeedbacksearchhelp
PDF

Table of Contents

ROM Monitor

ROM Monitor

This appendix describes the Cisco 827 routers ROM monitor (also called the bootstrap program). The ROM monitor firmware runs when the router is powered up or reset and helps to initialize the processor hardware and boot the operating system software. You can perform certain configuration tasks such as recovering a lost password or downloading software over the console port by using ROM monitor. If there is no Cisco IOS software image loaded on the router, the ROM monitor runs the router.

This appendix contains the following sections:

Entering the ROM Monitor

To use the ROM monitor, you must be using a terminal or PC that is connected to the router over the console port. Refer to the installation chapter in the Cisco 827 Routers Hardware Installation Guide that came with the router to connect the router to a PC or terminal.

Take these steps to configure the router to boot up in ROM monitor mode the next time it is rebooted:

Step Task Router Prompt Command

1 . 

If there is an enable password configured, enter the enable command and the enable password to enter privileged EXEC mode.

820>

enable

2 . 

Enter global configuration mode.

820 #

configure terminal

3 . 

Reset the configuration register.

820(config)#

config-reg 0x0

4 . 

Exit global configuration mode.

820(config)#

exit

5 . 

Reboot the router with the new configuration register value. The router remains in ROM monitor and does not boot the Cisco IOS software.

As long as the configuration value is 0x0, you must manually boot the operating system from the console. Refer to the boot command in the "Command Descriptions" section later in this appendix.

820 #

reload

6 . 

After the router reboots, it is in ROM monitor mode. The number in the prompt increments with each new line.

rommon 1>

TimeSaver Break (system interrupt) is always enabled for 60 seconds after the router reboots, regardless of whether it is set to on or off in the configuration register. During this 60-second window, you can break to the ROM monitor prompt by pressing the Break key.

ROM Monitor Commands

Enter ? or help at the ROM monitor prompt to display a list of available commands and options, as follows:

rommon 1 > ?
alias               set and display aliases command
boot                boot up an external process
break               set/show/clear the breakpoint
confreg             configuration register utility
cont                continue executing a downloaded image
context             display the context of a loaded image
cookie              display contents of cookie PROM in hex
dev                 list the device table
dir                 list files in file system
dis                 display instruction stream
dnld                serial download a program module
frame               print out a selected stack frame
help                monitor builtin command help
history             monitor command history
meminfo             main memory information
repeat              repeat a monitor command
reset               system reset
set                 display the monitor variables
stack               produce a stack trace
sync                write monitor environment to NVRAM
sysret              print out info from last system return
tftpdnld            tftp image download
unalias             unset an alias
unset               unset a monitor variable
xmodem              x/ymodem image download
 

Commands are case sensitive. You can halt any command by pressing the Break key on a terminal. If you are using a PC, most terminal emulation programs halt a command when you press the Ctrl and the Break keys at the same time. If you are using another type of terminal emulator or terminal emulation software, refer to the documentation for that product for information on how to send a Break command.

Command Descriptions

This section describes the most commonly used ROM monitor commands:


Table B-1:
Command Description

help or ?

Displays a summary of all available ROM monitor commands.

-?

Displays information about command syntax; for example:

rommon 16 > dis -?

usage : dis [addr] [length]

The output for this command is slightly different for the xmodem download command:

rommon 11 > xmodem -?

xmodem: illegal option -- ?

usage: xmodem [-cyrx] <destination filename>

-c CRC-16

-y ymodem-batch protocol

-r copy image to dram for launch

-x do not launch on download completion

reset or i

Resets and initializes the router, similar to a power up.

dev

Lists boot device identifications on the router; for example:

rommon 10> dev

Devices in device table:

id name

flash: flash

eprom: eprom

dir device:

Lists the files on the named device; flash, for example:

rommon 11> dir flash:

File size Checksum File name

2260792 bytes (0x227f38) 0xa326 c827-y6-mz

Boot Commands

For more information about the ROM monitor boot commands, see the Cisco IOS Configuration Guide and Cisco IOS Command Reference publications.

b

Boots the first image in Flash memory.

b flash: [filename]

Attempts to boot the image directly from the first partition of Flash memory. If you do not enter a filename, this command will boot this first image in Flash.

b flash:2: [filename]

Attempts to boot the image directly from the second partition of Flash memory. If you do not enter a filename, this command will boot this first image in the second partition of Flash memory.

Most Commonly Used ROM Monitor Commands

Disaster Recovery with TFTP Download

The standard way to load new software on your router is using the copy tftp flash privileged EXEC command from the Cisco IOS software command-line interface (CLI). However, if the router is unable to boot the Cisco IOS software, you can load new software while in ROM monitor mode.

This section describes how to load a Cisco IOS software image from a remote TFTP server to the router Flash memory. Use the tftpdnld command only for disaster recovery because it erases all existing data in Flash memory before downloading a new software image to the router.

TFTP Download Command Variables

This section describes the system variables that can be set in ROM monitor mode and that are used during the TFTP download process. There are required and optional variables.


Note The commands described in this section are case-sensitive and must be entered exactly as shown in the tables.

Required Variables

These variables must be set with these commands before using the tftpdnld command:

Variable Command

IP address of the router.

IP_ADDRESS= ip_address

Subnet mask of the router.

IP_SUBNET_MASK= ip_address

IP address of the default gateway of the router.

DEFAULT_GATEWAY= ip_address

IP address of the TFTP server from which the software will be downloaded.

TFTP_SERVER= ip_address

The name of the file that will be downloaded to the router.

TFTP_FILE= filename

Optional Variables

These variables can be set with these commands before using the tftpdnld command:

Variable Command

Configures how the router displays file download progress.

0---No progress is displayed.

1---Exclamation points (!!!) are displayed to indicate file download progress. This is the default setting.

2---Detailed progress is displayed during the file download process; for example:

Initializing interface.

Interface link state up.

ARPing for 1.4.0.1

ARP reply for 1.4.0.1 received. MAC address 00:00:0c:07:ac:01

TFTP_VERBOSE= setting

Number of times the router attempts ARP and TFTP download. The default is 7.

TFTP_RETRY_COUNT= retry_times

Amount of time, in seconds, before the download process times out. The default is 2, 400 seconds (40 minutes).

TFTP_TIMEOUT= time

Whether or not the router performs a checksum test on the downloaded image:

1---Checksum test is performed.

0---No checksum test is performed.

TFTP_CHECKSUM=setting

Using the TFTP Download Command

The steps described in this section should be performed while in ROM monitor mode.

Step 1 Use the appropriate commands to enter all the required variables and any optional variables described earlier in this section.

Step 2 Enter the tftpdnld command as follows:

rommon 1 > tftpdnld -r 

You will see output similar to the following:

IP_ADDRESS: 1.3.6.7
      IP_SUBNET_MASK: 255.255.0.0
     DEFAULT_GATEWAY: 1.3.0.1
         TFTP_SERVER: 223.255.254.254
           TFTP_FILE: c827-bnr2sy-mz.070298
Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!
Do you wish to continue? y/n:  [n]:
 

Step 3 If you are sure that you want to continue, enter y in response to the question in the output:

Do you wish to continue? y/n:  [n]:y
 

The router begins to download the new file.

Entering Ctrl-C or Break stops the transfer before the Flash memory is erased.

Configuration Register

The virtual configuration register is in nonvolatile RAM (NVRAM) and has the same functionality as other Cisco routers. You can view or modify the virtual configuration register from either the ROM monitor or the operating system software.

To change the virtual configuration register from the ROM monitor, enter confreg or enter the new value of the register in hexadecimal.

The value is always interpreted as hexadecimal. Entering confreg without an argument displays the contents of the virtual configuration register and a prompt to alter the contents by describing the meaning of each bit.

In either case, the new virtual configuration register value is written into NVRAM but does not take effect until you reset or reboot the router.

The following display shows an example of entering the confreg command:

rommon 7> confreg
 
     Configuration Summary
enabled are:
console baud: 9600
boot: the ROM Monitor
 
do you wish to change the configuration? y/n  [n]:  y
enable  "diagnostic mode"? y/n  [n]:  y
enable  "use net in IP bcast address"? y/n  [n]:  
enable  "load rom after netboot fails"? y/n  [n]:  
enable  "use all zero broadcast"? y/n  [n]:  
enable  "break/abort has effect"? y/n  [n]:  
enable  "ignore system config info"? y/n  [n]:  
change console baud rate? y/n  [n]:  y
enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400  [0]:  0
change the boot characteristics? y/n  [n]:  y
enter to boot:
 0 = ROM Monitor
 1 = the boot helper image
 2-15 = boot system
    [0]:  0
 
Configuration Summary
enabled are:
diagnostic mode
console baud: 9600
boot: the ROM Monitor
 
do you wish to change the configuration? y/n  [n]:  
 
 
You must reset or power cycle for new config to take effect

Console Download

You can use console download, a ROM monitor function, to download over the router console port either a software image or a configuration file. After download, the file is either saved to the mini-Flash memory module or to main memory for execution (image files only).

Use console download when you do not have access to a Trivial File Transfer Protocol (TFTP) server.


Note If you want to download a software image or a configuration file to the router over the console port, you must use the ROM monitor command.

Note  If you are using a PC to download a Cisco IOS image over the router console port at 115,200 bps, ensure that the PC serial port is using a 16550 universal asynchronous transmitter/receiver (UART). If the PC serial port is not using a 16550 UART, we recommend using a speed of 38,400 or less when downloading a Cisco IOS image over the console port.

Command Description

Following is the syntax and descriptions for the xmodem console download command:

xmodem [-cyrx] destination_file_name
 

c

(Optional) Performs the download using 16-bit cyclic redundancy check (CRC-16) error checking to validate packets. Default is 8-bit CRC.

y

(Optional) Sets the router to perform the download using Ymodem protocol. Default is Xmodem protocol. The protocols differ as follows:

  • Xmodem supports a 128-block transfer size. Ymodem supports a 1024-block transfer size.

  • Ymodem uses (CRC)-16 error checking to validate each packet. Depending on the device that the software is being downloaded from, this function might not be supported by Xmodem.

r

(Optional) Image is loaded into DRAM for execution. Default is to load the image into Flash memory.

x

(Optional) Image is loaded into DRAM without being executed.

destination_file_name

The name of the system image file or the system configuration file. In order for the router to recognize it, the name of the configuration file must be router_confg.

Follow the steps below to run Xmodem:

    1. Move the image file to the local drive where the Xmodem will execute.

    2. Enter the xmodem command.

Error Reporting

Because the ROM monitor console download uses the console to perform the data transfer, error messages are only displayed on the console when the data transfer is terminated.

If an error does occur during a data transfer, the transfer is terminated, and an error message is displayed. If you have changed the baud rate from the default rate, the error message is followed by a message telling you to restore the terminal to the baud rate specified in the configuration register.

Debug Commands

Most ROM monitor debugging commands are functional only when Cisco IOS software has crashed or is halted. If you enter a debugging command and Cisco IOS crash information is not available, you see the following error message:

"xxx: kernel context state is invalid, can not proceed."
 

The following are ROM monitor debugging commands:

rommon 6> stack
Stack trace:
PC = 0x801111b0
Frame 00: FP = 0x80005ea8    PC = 0x801111b0
Frame 01: FP = 0x80005eb4    PC = 0x80113694
Frame 02: FP = 0x80005f74    PC = 0x8010eb44
Frame 03: FP = 0x80005f9c    PC = 0x80008118
Frame 04: FP = 0x80005fac    PC = 0x80008064
Frame 05: FP = 0x80005fc4    PC = 0xfff03d70
 
rommon 7> context
CPU context of the most recent exception:
PC  = 0x801111b0  MSR = 0x00009032  CR  = 0x53000035  LR    = 0x80113694
CTR = 0x801065e4  XER = 0xa0006d36  DAR = 0xffffffff  DSISR = 0xffffffff
DEC = 0xffffffff  TBU = 0xffffffff  TBL = 0xffffffff  IMMR  = 0xffffffff
R0  = 0x00000000  R1  = 0x80005ea8  R2  = 0xffffffff  R3    = 0x00000000
R4  = 0x8fab0d76  R5  = 0x80657d00  R6  = 0x80570000  R7    = 0x80570000
R8  = 0x00000000  R9  = 0x80570000  R10 = 0x0000954c  R11   = 0x00000000
R12 = 0x00000080  R13 = 0xffffffff  R14 = 0xffffffff  R15   = 0xffffffff
R16 = 0xffffffff  R17 = 0xffffffff  R18 = 0xffffffff  R19   = 0xffffffff
R20 = 0xffffffff  R21 = 0xffffffff  R22 = 0xffffffff  R23   = 0xffffffff
R24 = 0xffffffff  R25 = 0xffffffff  R26 = 0xffffffff  R27   = 0xffffffff
R28 = 0xffffffff  R29 = 0xffffffff  R30 = 0xffffffff  R31   = 0xffffffff
 
rommon 8> sysret
System Return Info:
count: 19,  reason: user break
pc:0x801111b0,  error address: 0x801111b0
Stack Trace:
FP: 0x80005ea8, PC: 0x801111b0
FP: 0x80005eb4, PC: 0x80113694
FP: 0x80005f74, PC: 0x8010eb44
FP: 0x80005f9c, PC: 0x80008118
FP: 0x80005fac, PC: 0x80008064
FP: 0x80005fc4, PC: 0xfff03d70
FP: 0x80005ffc, PC: 0x00000000
FP: 0x00000000, PC: 0x00000000
 
rommon 9> meminfo
 
Main memory size: 40 MB.
Available main memory starts at 0x10000, size 40896KB
IO (packet) memory size: 5 percent of main memory.
NVRAM size: 32KB


hometocprevnextglossaryfeedbacksearchhelp
Posted: Fri Apr 7 14:57:55 PDT 2000
Copyright 1989 - 2000©Cisco Systems Inc.