Cisco IAD2430 Series Integrated Access Devices Software Configuration Guide
Appendix C: Using the ROM Monitor
Downloads: This chapterpdf (PDF - 178.0 KB) The complete bookPDF (PDF - 3.34 MB) | Feedback

Using the ROM Monitor

Table Of Contents

Using the ROM Monitor

Entering the ROM Monitor Mode

ROM Monitor Commands

Command Descriptions

Recovering Boot and System Images

Using the xmodem Command

Using the tftpdnld -r Command

Configuration Register

Changing the Configuration Register Manually

Changing the Configuration Register Using Prompts

Console Download

Command Description

Error Reporting

Debug Commands

Exiting the ROM Monitor

Using the ROM Monitor

This appendix describes the ROM monitor (also called the bootstrap program), which is the firmware that runs when you power on or restart the Cisco IAD2430 series integrated access device (IAD). During normal operation, the ROM monitor helps to initialize the processor hardware and boot the operating system software. You can also use the ROM monitor to help you isolate or rule out hardware problems that you encounter while installing your router.

This appendix contains the following sections:

Entering the ROM Monitor Mode

ROM Monitor Commands

Command Descriptions

Configuration Register

Console Download

Debug Commands

Exiting the ROM Monitor

Entering the ROM Monitor Mode

To use the ROM monitor, you must be using a terminal or PC that is connected to the router over the console port.

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


1. enable

2. configure terminal

3. config-register value

4. exit

5. reload


Command or Action

Step 1 



VG# enable

Enters privileged EXEC mode.

Step 2 

configure terminal


VG# configure terminal

Enters global configuration mode.

Step 3 

config-register value


VG(config)# config-register 0x2102

Resets the configuration register settings.

Step 4 



VG(config)# exit

Exits to global configuration mode.

Step 5 



VG# reload

Reboots the voice gateway with the new configuration register value. The voice gateway 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. See the boot command in the "Command Descriptions" section in this appendix.

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

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
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 directories-dir <directory>
dis					display instruction stream
frame					print out a selected stack frame
help					monitor builtin command help
history					monitor command history
iomemset					Set IO memory percent
meminfo					main memory information
repeat					repeat a monitor command
reset					system reset
rommon-pref					Select ROMMON
set					display the monitor variables
showmon					Display currently selected ROM monitor
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
rommon 1 >

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, see the documentation for that product for information on how to send a Break command.

Command Descriptions

Table C-1 describes the most commonly used ROM monitor commands.

Table C-1 Commonly Used ROM Monitor Commands 


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 [-cyrxu] <destination filename>
-c  CRC-16
-y  ymodem-batch protocol
-r  copy image to dram for launch
-x  do not launch on download completion
-u  upgrade ROMMON, System will reboot after upgrade

reset or i

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

dir device:

Lists the files on the named device; for example:

rommon 5 > dir flash:
Directory of flash:

2 1343152 -rw- 
rommon 6 >


Lists the main memory information; for example:

rommon 6 > meminfo:

Main memory size: 256 MB. 
Available main memory starts at 0x80018000, size 262048 KB 
IO (packet) memory size: 5 percent of main memory 
NVRAM size: 256 KB 
boot commands

For more information about the ROM monitor boot commands, see the Cisco IOS Configuration Fundamentals and Network Management Guide.


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 memory.

Recovering Boot and System Images

If your router experiences difficulties and no longer contains a valid Cisco IOS software image in flash memory, you can recover the Cisco IOS image using one of the following ROM monitor commands:

xmodem—Use this if the computer attached to your console has a terminal emulator that has xmodem capability.

tftpdnld -r—Use this if you have a TFTP server directly connected to a Fast Ethernet port.

Using the xmodem Command

The xmodem command establishes a connection between a console and the router console port for disaster recovery if both the boot and system images are erased from flash memory.

xmodem [filename]—Establishes an xmodem connection between the console and the router. The optional parameter argument filename specifies the source file containing the Cisco IOS image.

Other options include the following:

-c—Use cyclic redundancy check (CRC-16).

-y—Use Ymodem transfer protocol.

-r—Copy the image to DRAM for launch.

-x—Do not launch image on completion of download.

Note The IAD2435 IAD ROMMON supports only -c and -y.

Using the tftpdnld -r Command

The tftpdnld -r command downloads a Cisco IOS software image from a remote server into flash memory using TFTP.

tftpdnld -r—Begins the TFTP copy command.

The following variables are required:

IP_ADDRESS—The IP address for the router you are using.

IP_SUBNET_MASK—The subnet mask for the router you are using.

DEFAULT_GATEWAY—The default gateway for the router you are using.

TFTP_SERVER—The IP address of the server from which you want to download the image file.

TFTP_FILE—The name of the file that you want to download.

The following variables are optional:

TFTP_VERBOSE—Print setting. 0=quiet, 1=progress, 2=verbose. The default is 1.

TFTP_RETRY_COUNT—Retry count for ARP and TFTP. The default is 7.

TFTP_TIMEOUT—Overall timeout of the download operation in seconds. The default is 2400 seconds.

TFTP_CHECKSUM—Performs a checksum test on the image. 0=no, 1=yes. The default is 1.

FE_PORT—Selects the FE Port for tftpdnld download. 0=FE 0,1=FE 1. If FE_PORT variable is not mentioned then FE 0 will be used as default.

The syntax for specifying the variables is:


After you specify the variables, you must reenter the tftpdnld -r command. For example:

rommon 2 > IP_ADDRESS=
rommon 3 > IP_SUBNET_MASK=
rommon 5 > TFTP_SERVER=
rommon 6 > TFTP_FILE=/tftpboot/c2430-i-mz
rommon 7 > TFTP_VERBOSE=1
rommon 8 > tftpdnld -r


Invoke this command for disaster recovery only.
Do you wish to continue? y/n: [n]:

Enter y to begin downloading the Cisco IOS software image. When the process is complete, the ROM monitor mode prompt appears on your screen.

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. Within the ROM monitor, you can change the configuration register by entering the register value in hexadecimal format, or by allowing the ROM monitor to prompt you for the setting of each bit.

Changing the Configuration Register Manually

To change the virtual configuration register from the ROM monitor manually, enter the confreg command followed by the new value of the register in hexadecimal format, as shown in the following example:

rommon 1 > confreg 0x2101

You must reset or power cycle for new config to take effect
rommon 2 >

The value is always interpreted as hexadecimal. The new virtual configuration register value is written into NVRAM but does not take effect until you reset or reboot the router.

Changing the Configuration Register Using Prompts

Entering the confreg command 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, which is a ROM monitor function, to download either a software image or a configuration file over the router console port. 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 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 dnld 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 bps or less when downloading a Cisco IOS image over the console port.

Command Description

The following are the syntax and descriptions for the xmodem console download command:

xmodem [-cyrx] destination_file_name


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

Note The IAD2435 IAD only supports c and y.


Optional. Sets the router to perform the download using Ymodem protocol. The 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.

Note The IAD2435 IAD only supports c and y.


Optional. Image is loaded into DRAM for execution. The default is to load the image into flash memory.


Optional. Image is loaded into DRAM without being executed.


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 these steps to run Xmodem:

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

Step 2 Enter the xmodem command.

Error Reporting

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

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:

stack or k—Produces a stack trace; for example:

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

context—Displays processor context; for example:

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

frame—Displays an individual stack frame.

sysret—Displays return information from the last booted system image. This information includes the reason for terminating the image, a stack dump of up to eight frames, and, if an exception is involved, the address where the exception occurred; for example:

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

meminfo—Displays size in bytes, starting address, available range of main memory, the starting point and size of packet memory, and size of NVRAM; for example:

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

Exiting the ROM Monitor

You must set the configuration register to a value from 0x2 to 0xF for the router to boot a Cisco IOS image from flash memory upon startup or reloading.

The following example shows how to reset the configuration register and cause the router to boot a Cisco IOS image stored in flash memory:

rommon 1 > confreg 0x2101

You must reset or power cycle for new config to take effect:

rommon 2 > boot

The router will boot the Cisco IOS image in flash memory. The configuration register will change to 0x2101 the next time the router is reset or power cycled.