This appendix describes the Cisco router ROMmonitor(alsocalledthebootstrap
program). The ROM monitor firmware runs when the router is powered up or
reset. The firmware 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 the 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
•ROM Monitor Commands
•Command Descriptions
•Disaster Recovery with TFTP Download
•Configuration Register
•Console Download
Entering the ROM Monitor
To use the ROM monitor,you must be using a terminal or PC that is connected to
the router by means of the console port. Refer to the installation chapter in the
Hardware InstallationGuidefor your router, for information about connecting the
router to a PC or terminal.
Cisco 1700 Series Router Software Configuration Guide
78-5407-03
B-1
Page 2
Entering the ROM Monitor
Follow these steps to configure the router to boot up in ROM monitor mode the
next time it is rebooted.
CommandRouter PromptTask
Appendix B ROM Monitor
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
enable
configure terminal
config-reg 0x0
exit
reload
Router>
Router#
Router(config)#
Router(config)#
Router#
rommon 1>
If there is an enable password configured, enter
the enable command and the enable password to
enter privileged EXEC mode.
Enter global configuration mode.
Reset the configuration register.
Exit global configuration mode.
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. See the boot command in the
“Command Descriptions” section on page B-4.
After the router reboots, it is in ROM monitor
mode. The number in the prompt increments
with each new line.
TimesaverA break (system interrupt) is always enabled for 60 seconds after the router
reboots, regardless of its setting (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.
Cisco 1700 Series Router Software Configuration Guide
B-2
78-5407-03
Page 3
Appendix B ROM Monitor
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
ROM Monitor Commands
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.
78-5407-03
Cisco 1700 Series Router Software Configuration Guide
B-3
Page 4
Appendix B ROM Monitor
Command Descriptions
Command Descriptions
Table B-1 describes commonly used ROM monitor commands.
Table B-1Common ROM Monitor Commands
CommandDescription
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:
reset or iResets and initializes the router, similar to a power-up.
devLists boot device identifications on the router. For example:
rommon 2> dev
Devices in device table:
id name
flash: flash
eprom: eprom
dir device:Lists the files on the named device (Flash, for example):
rommon 1> dir flash:
File size Checksum File name
7729736 bytes (0x75f248) 0xb86d
c1700-bk9no3r2sy7-mz.0412
Cisco 1700 Series Router Software Configuration Guide
B-4
78-5407-03
Page 5
Appendix B ROM Monitor
Disaster Recovery with TFTP Download
Table B-2 describes the ROM monitor boot commands. For more information
about the ROM monitor boot commands, refer to the Cisco IOS ConfigurationGuide and Cisco IOS Command Reference publications.
Table B-2Boot Commands
CommandDescription
bBoots 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 the
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 the first image in the second partition of Flash memory.
Disaster Recovery with TFTP Download
The standard way to load new software on your router is using the copy tftp flash
privilegedEXEC 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 tells how, in ROM monitor mode, to download 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.
NoteA 10BASE-T Ethernet Port is not active in ROM monitor mode and, thus,
cannot be used for TFTP download.
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.
78-5407-03
Cisco 1700 Series Router Software Configuration Guide
B-5
Page 6
Disaster Recovery with TFTP Download
NoteThe commands described in this section are case sensitive and must be entered
exactly as shown in the lists.
Required Variables
The following variables must be set with the commands shown before using the
tftpdnld command:
VariableCommand
IP address of the router.IP_ADDRESS= ip_address
Subnet mask of the router.IP_SUBNET_MASK= ip_address
Appendix B ROM Monitor
Optional Variables
IP address of the defaultgatewayof the
DEFAULT_GATEWAY= ip_address
router.
IP address of the TFTP server from
TFTP_SERVER= ip_address
which the software will be
downloaded.
The name of the file that will be
TFTP_FILE= filename
downloaded to the router.
The following variables can be set with the commands shown before using the
tftpdnld command:
VariableCommand
Whether or not the router performs a
TFTP_CHECKSUM=setting
checksum test on the downloaded
image:
1—Checksum test is performed.
0—No checksum test is performed.
Cisco 1700 Series Router Software Configuration Guide
B-6
78-5407-03
Page 7
Appendix B ROM Monitor
Disaster Recovery with TFTP Download
VariableCommand
Number of times the router attempts
ARP and TFTP download. The default
is 7.
Amount of time, in seconds, before the
download process times out. The
default is 2400 seconds (40 minutes).
Configureshow 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.
TFTP_RETRY_COUNT=
retry_times
TFTP_TIMEOUT= time
TFTP_VERBOSE= setting
ARPing for 1.4.0.1
ARP reply for 1.4.0.1 received.
MAC address 00:00:0c:07:ac:01
Using the TFTP Download Command
The steps described in this section should be performed while in ROM monitor
mode.
Step 1Use the appropriate commands to enter all the required variables and any optional
variables.
Step 2Enter the tftpdnld command as follows:
rommon 1 > tftpdnld [ -r ]
Cisco 1700 Series Router Software Configuration Guide
78-5407-03
B-7
Page 8
Configuration Register
Appendix B ROM Monitor
NoteThe-r variable is optional. Entering this variabledownloadsand boots
the new software but does not save the software to Flash. You can then
use the image that is in Flash the next time you enter the reload
command in the Cisco IOS software CLI.
You will see output similar to the following:
IP_ADDRESS: 10.0.0.1
IP_SUBNET_MASK: 255.255.0.0
DEFAULT_GATEWAY: 1.3.0.1
TFTP_SERVER: 223.255.254.254
TFTP_FILE: c1700-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 3If 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 will begin to download the new file.
Pressing Ctrl-C or Break stops the transfer before the Flash memory is erased.
Configuration Register
The virtual configuration register is in 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
by itself for menu mode, or enter the new value of the register in hexadecimal. For
example:
confreg [
hexnum
]
Cisco 1700 Series Router Software Configuration Guide
B-8
78-5407-03
Page 9
Appendix B ROM Monitor
Configuration Register
This will change the virtual configuration register to the value specified. 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.
Whether or not an argument is provided, the new virtual configuration register
value is written into NVRAM, but it does not take effect until you reset or
power-cycle the router.
The following display shows an example of menu mode:
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
4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [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
78-5407-03
Cisco 1700 Series Router Software Configuration Guide
B-9
Page 10
Console Download
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
downloading, the file is saved either to Flash memory or to main memory for
execution (image files only).
Use console download when you do not have access to a TFTP server.
NoteIf 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.
NoteIf 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 receiver/transmitter (UART).If the PC serial port is not using a
16550 UART, we recommend using a speed of 38,400 or lower when
downloading a Cisco IOS image over the console port.
Appendix B ROM Monitor
Command Description
The following are the syntax and argument descriptions for the xmodem console
download command.
The syntax is as follows:
xmodem [-cyrx]
The argument descriptions are as follows:
ArgumentDescription
cOptional. Performs the download using 16-bit cyclic
Cisco 1700 Series Router Software Configuration Guide
B-10
destination_file_name
redundancy check (CRC) error checking to validate
packets. Default is 8-bit CRC.
78-5407-03
Page 11
Appendix B ROM Monitor
Console Download
ArgumentDescription
yOptional. Sets the router to perform the download
using ymodem protocol. Default is xmodem protocol.
The protocols differ as follows:
•The xmodem protocol supports a 128-block
transfer size, whereas the ymodem protocol
supports a 1024-block transfer size.
•The ymodem protocol uses 16-bit CRC error
checking to validate each packet. Depending on
the device that the software is being downloaded
from, this function might not be supported by the
xmodem protocol.
rOptional. Image is loaded into DRAM for execution.
Default is to load the image into Flash memory.
xOptional. Image is loaded into DRAM without being
destination_file_nameThe name of the system image file or the system
Error Reporting
Because the ROM monitor console download uses the console to perform the data
transfer, error messages are displayed on the console only 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.
executed.
configurationfile. In order for the router to recognize
it, the name of the configuration file must be
router_confg.
78-5407-03
Cisco 1700 Series Router Software Configuration Guide
B-11
Page 12
Debug Commands
Debug Commands
Most ROM monitor debugging commands are functional only when Cisco IOS
software has crashed or stopped. 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—Produce 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
•sysret—Display 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: