Using The ROM

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

Using the ROM Monitor

Entering the ROM Monitor Mode

Verifying That You Are in ROM Monitor Mode

ROM Monitor Commands


ROM Monitor Syntax Conventions
Command Descriptions

Debugging Commands
Configuration Register Commands

Procedures for Recovering Boot and System Images

Using the xmodem Command


Using the tftpdnld Command

Using the ROM Monitor


This appendix describes using the ROM monitor (also called the bootstrap program),
which is the firmware that runs when you power on or restart a Cisco 2600 series router.
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 encountered when installing your
router.
• Recover your router's Cisco IOS image if the image becomes corrupted.

This appendix contains the following sections:

• Entering the ROM Monitor Mode


• ROM Monitor Commands
• ROM Monitor Syntax Conventions
• Command Descriptions
• Procedures for Recovering Boot and System Images

Entering the ROM Monitor Mode


To use the ROM monitor, you must have access to the console port. Refer to the
Cisco 2600 Series Cabling and Setup quick start guide for information on connecting the
console cable.

To enter ROM monitor mode:

Command or Action Purpose


Table C-1:
Entering ROM
Monitor Mode
Step

1 2600> reload Restart the router.

2 Press the Break key during Forces the router to stop


the first 60 seconds while booting and enter the
the system is starting up ROM monitor mode.

Verifying That You Are in ROM Monitor Mode

To verify that you are in the ROM monitor mode, check that the prompt displayed on
your screen is the ROM monitor mode prompt:

rommon # >

The # is the line number and increases incrementally at each prompt.

From the Cisco IOS software, you can configure the router to automatically enter ROM
monitor mode the next time the router boots by setting virtual configuration register bits
3, 2, 1, and 0 to zero. From the console, enter the following configuration command:

configuration-register 0x0

The new configuration register value, 0x0, is effective after the router is rebooted with
the reload command. The router remains in the ROM monitor and does not boot the
operating system.

As long as the configuration register value remains 0x0, you must manually boot the
operating system from the console. Refer to the boot command in the "Command
Descriptions" section.
ROM Monitor Commands
Enter ? or help at the ROM monitor mode prompt to see a list of available commands.
For example:

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 the 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
rommon 2 >

Note You can end any command by pressing the Break key at the console.

ROM Monitor Syntax Conventions


The ROM monitor syntax in this appendix uses the following conventions:

• Square brackets [ ] denote an optional element. In the following example, the


element abc is not required, but you can specify it if you choose:

command [abc]

• If a minus option is followed by a colon (for example, [-s:]) you must provide an
argument for the option.
• A term in italics means that you must fill in the appropriate information. In the
following example, you replace the term in italics with the interface type you are
using:
command type interface

Command Descriptions
This section lists some useful ROM monitor commands. Refer to the Cisco IOS
configuration guides and command references for more information on ROM monitor
commands.

• boot or b--Boot an image.


o b boots the first image in Flash memory.
o b flash:[name] boots the Cisco IOS software from the Flash memory.
o b filename tftpserver boots from the specified file over the network from
the specified Trivial File Transfer Protocol (TFTP) server. For example:

boot c2600-i-mz 172.15.19.11

o b filename boots from the boothelper image because it does not recognize
the device ID. This form of the command is used to netboot the image
named filename.

Cisco 2600 series routers do not have a dedicated boothelper image ([rx]boot) as
used by some other Cisco routers. With Cisco 2600 series routers, the first image
in Flash memory is invoked as the default boothelper image anytime the ROM
monitor does not recognize the device ID in the boot command.
You can override the default boothelper image setting by setting the BOOTLDR
monitor environment variable to point to another image. Any system image can
be used for this purpose.
Options to the boot command are -x, load image but do not execute, and -v,
verbose.
Use the Cisco IOS commands show version and show hardware to see the
source of the currently running image.

• dir device:[partition:]--List the files on the named device. For example:

rommon 8 > dir flash:


File size Checksum File name
2229799 bytes (0x220627) 0x469e C2600-j-m2.113-4T

• help--View a summary of ROM monitor commands (equivalent to ?).


• meminfo--Display size in bytes, starting address, available range of main
memory, the starting point and size of packet memory, and size of nonvolatile
memory (NVRAM). The following example shows the meminfo command:

rommon 9 > meminfo

Main memory size: 32 MB.


Available main memory starts at 0xa000e000, size 32704KB
IO (packet) memory size: 25 percent of main memory.
NVRAM size: 32KB

• meminfo [-l]--The meminfo command with the -l option shows supported


DRAM configurations. The following example shows an example of the
meminfo -l command:

rommon 10 > meminfo -l

Supported memory configurations:

DIMM 0 DIMM 1
-------------------
4M
8M-DUAL
16M
32M-DUAL
4M
4M 4M
4M 8M-DUAL
4M 16M
4M 32M-DUAL
8M-DUAL
8M-DUAL 4M
8M-DUAL 8M-DUAL
8M-DUAL 16M
8M-DUAL 32M-DUAL
16M
16M 4M
16M 8M-DUAL
16M 16M
16M 32M-DUAL
32M-DUAL
32M-DUAL 4M
32M-DUAL 8M-DUAL
32M-DUAL 16M
32M-DUAL 32M-DUAL

• reset or i--Reset and initialize the router, similar to power on.


• tftpdnld--Download an image using TFTP from a remote server.

Debugging Commands

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

"xxx: kernel context state is invalid, cannot proceed."


• stack or k--Produce a stack trace.
• context--View processor context.
• frame--View an individual stack frame.
• sysret--View 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: a SegV exception
pc:0x802b1040, error address: 0x802b1040
Stack Trace:
FP: 0x80908398, PC: 0x802b102c
FP: 0x809083b0, PC: 0x802b0b88
FP: 0x809083d8, PC: 0x8017039c
FP: 0x809083e8, PC: 0x8016f764

Configuration Register Commands

The virtual configuration register resides in NVRAM. 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.

• confreg [hexnum]--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
prompts you 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 is not effective until you reset or power cycle the router.
The following display shows an example of the confreg command:
rommon 7 > confreg

Configuration Summary
enabled are:
break/abort has effect
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]:
disable "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
break/abort has effect
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

Procedures for Recovering Boot and System Images


If your Cisco 2600 series 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 command if the computer attached to your console has a


terminal emulator that has Xmodem capability.
• tftpdnld--Use this command if you have a TFTP server directly connected to the
Ethernet 0 port or Token Ring 0 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 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 dynamic random-access memory (DRAM) for launch
• x--Do not launch image on completion of download
Using the tftpdnld Command

The tftpdnld command downloads a Cisco IOS software image from a remote server
accessible from an Ethernet or Token Ring network interface on a Cisco 2600 series
router. The tftpdnld command downloads the Cisco IOS software image into Flash
memory using TFTP.

The following software restrictions apply when using the tftpdnld command:

• Ethernet platform--Only accepts and sends Ethernet V2.0 data packets.


• Token Ring platform--Only accepts and sends Token Ring frames with
IEEE802.3 SNAP frames. Does not support any frames with routing information
fields (RIFs), limiting all use of the tftpdnld command to a TFTP server on the
local ring. If the TFTP server resides off the local ring, you must establish a path
to the server through a router or transparent bridge from the local ring.

tftpdnld [-h] [-r]--Begins the TFTP copy procedure.

Options include the following:

• h--Displays the tftpdnld command help screen.


• r--Loads the Cisco IOS software image only to DRAM and launches the image
without writing the image into Flash memory.

The tftpdnld command requires that you specify certain variables when you issue the
command. The syntax for specifying the variables is:

VARIABLE_NAME=value

The variables that you must specify include the following:

• IP_ADDRESS--IP address for the router you are using.


• IP_SUBNET_MASK--Subnet mask for the router you are using.
• DEFAULT_GATEWAY--Default gateway for the router you are using.
• TFTP_SERVER--IP address of the server from which you want to download the
image file.
• TFTP_FILE--Name of the file that you want to download.

The following tftpdnld command variables are optional:

• TFTP_VERBOSE--Print setting. The default is 1.


o 0=quiet--After you enter the tftpdnld command, the prompt

Do you wish to continue? y/n:


is the only information that displays until the command completes successfully or
fails.
o 1=progress--Displays the state of the required tftpdnld command
variables. Also displays progress characters to indicate successful and lost
packet transmissions.
o 2=verbose--Displays all progress print setting messages, along with error
information. The information provided by this print setting may be useful
when debugging interface link and configuration problems that may
prevent connecting to the TFTP server.
• TFTP_RETRY_COUNT--Number of times from 1 to 65535 that the ROM
monitor will retry ARP and ACK. The default is 7 retries.
• TFTP_TIMEOUT--Overall timeout of the download operation in seconds. The
range is from 1 to 65535 seconds. The default is 7200 seconds.
• TFTP_CHECKSUM--Performs a checksum test on the image. 0=checksum off,
1=checksum on. The default is 1.
• FE_SPEED_MODE--Sets the Fast Ethernet speed and duplex mode. 0=10 Mbps
half-duplex mode, 1=10 Mbps full-duplex mode, 2=100 Mbps half-duplex mode,
3=100 Mbps full-duplex mode, 4=auto-negotiation. The default is 4.

Note Specify the FE_SPEED_MODE variable only for routers with a Fast
Ethernet network interface.

• TR_SPEED_MODE--Sets the Token Ring speed and duplex mode. 0=4 Mbps
half-duplex mode, 1=4 Mbps full-duplex mode, 2=16 Mbps half-duplex mode,
3=16 Mbps full-duplex mode. The default is 2.

Note Specify the TR_SPEED_MODE variable only for routers with a Token
Ring network interface; or for routers with both an Ethernet and a Token Ring
port, those routers that are set to use the Token Ring port with the tftpdnld
command.

• TR_1E1R_PORT--Sets the port to be used with the tftpdnld command. 0=Use


Ethernet port, 1=Use Token Ring port. The default is 0.

Note Specify the TR_1E1R_PORT variable only for those routers with both
an Ethernet and a Token Ring port.

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

rommon 1 > IP_ADDRESS=172.15.19.11


rommon 2 > IP_SUBNET_MASK=255.255.255.0
rommon 3 > DEFAULT_GATEWAY=172.16.19.1
rommon 4 > TFTP_SERVER=172.15.20.10
rommon 5 > TFTP_FILE=/tftpboot/c2600-i-mz
rommon 6 > tftpdnld

IP_ADDRESS=172.15.19.11
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=172.16.19.1
TFTP_SERVER=172.15.20.10
TFTP_FILE=/tftpboot/2600-i-mz

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]:

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

Posted: Tue Aug 1 15:35:29 PDT 2000


Copyright 1989-2000©Cisco Systems Inc.

You might also like