Sun Logo


OpenBoot 4.x Command Reference Manual

816-1177-10



Contents

Preface

1. Overview

Features of OpenBoot Firmware

Plug-in Device Drivers

FCode Interpreter

Device Tree

Programmable User Interface

User Interface

Device Tree

Device Path Names, Addresses, and Arguments

Device Aliases

Displaying the Device Tree

Getting Help

A Caution About Using Some OpenBoot Commands

2. Booting and Testing Your System

Booting Your System

Booting for the Casual User

Booting for the Expert User

Booting Over the Network

Arguments Supported by Network Boot

Running Diagnostics

Testing the SCSI Bus

Testing Installed Devices

Testing Removable Media Drives

Diskette Drive

CD-ROM Drive

Tape Drive

Testing Memory

Testing the Clock

Testing the Network Controller

Monitoring the Network

Displaying System Information

Resetting the System

3. Setting Configuration Variables

System Configuration Variables

Displaying and Changing Variable Settings

Setting Security Variables

Command Security

Full Security

Changing the Power-On Banner

Input and Output Control

Selecting Input and Output Device Options

Serial Port Characteristics

Selecting Boot Options

Controlling Power-On Self-Test (POST)

Using nvramrc

Editing the Contents of the Script

Activating the Script

Example Script

4. Using Forth Tools

Forth Commands

Data Types

Using Numbers

Forth Stack

Displaying Stack Contents

Stack Diagram

Manipulating the Stack

Creating Custom Definitions

Using Arithmetic Functions

Single-Precision Integer Arithmetic

Double Number Arithmetic

Data Type Conversion

Address Arithmetic

Accessing Memory

Virtual Memory

Device Registers

Using Defining Words

Searching the Dictionary

Compiling Data Into the Dictionary

Displaying Numbers

Changing the Number Base

Controlling Text Input and Output

Redirecting Input and Output

Command-Line Editor

Conditional Flags

Control Commands

The if-else-then Structure

The case Statement

The begin Loop

The do Loop

Additional Control Commands

5. Loading and Executing Programs

Using boot

Using dl to Load Forth Text Files Over Serial Port A

Using load

Using dlbin to Load FCode or Binary Executables Over Serial Port A

Using dload to Load From Ethernet

Forth Programs

FCode Programs

Binary Executables

Using ?go

6. Debugging

Using the Forth Language Decompiler

Using the Disassembler

Displaying Registers

SPARC Registers

Breakpoints

Forth Source-Level Debugger

Using patch and (patch)

Using ftrace

A. Setting Up a TIP Connection

Common Problems With TIP

B. Building a Bootable Floppy Disk

C. Troubleshooting Guide

Power-On Initialization Sequence

Emergency Procedures

Emergency Procedures for Systems with Standard (non-USB) Keyboards

Emergency Procedures for Systems with USB Keyboards

Stop-A

Stop-N Equivalent

Stop-F Functionality

Stop-D Functionality

Preserving Data After a System Crash

Common Failures

Blank Screen --No Output

System Boots From the Wrong Device

System Will Not Boot From Ethernet

System Will Not Boot From Disk

SCSI Problems

Setting the Console to a Specific Monitor

D. Forth Word Reference

Stack Item Notation

Commands for Browsing the Device Tree

Common Options for the boot Command

System Information Display Commands

Configuration Variables

nvramrc Editor Commands

NVRAM Script Editor Keystroke Commands

Stack Manipulation Commands

Single-Precision Arithmetic Functions

Bit-wise Logical Operators

Double Number Arithmetic Functions

32-Bit Data Type Conversion Functions

64-Bit Data Type Conversion Functions

Address Arithmetic Functions

64-Bit Address Arithmetic Functions

Memory Access Commands

64-Bit Memory Access Functions

Memory Mapping Commands

Defining Words

Dictionary Searching Commands

Dictionary Compilation Commands

Assembly Language Programming

Basic Number Display

Changing the Number Base

Numeric Output Word Primitives

Controlling Text Input

Displaying Text Output

Formatted Output

Manipulating Text Strings

I/O Redirection Commands

ASCII Constants

Command Line Editor Keystroke Commands

Command Completion Keystroke Commands

Comparison Commands

if-else-then Commands

case Statement Commands

begin (Conditional) Loop Commands

do (Counted) Loop Commands

Program Execution Control Commands

File Loading Commands

Disassembler Commands

Breakpoint Commands

Forth Source-level Debugger Commands

Time Utilities

Miscellaneous Operations

Multiprocessor Commands

Memory Mapping Commands

Memory Mapping Primitives

Cache Manipulation Commands

Reading/Writing Machine Registers in Sun-4u Machines

Alternate Address Space Access Commands

SPARC Register Commands

SPARC V9 Register Commands

Emergency Keyboard Commands

Diagnostic Test Commands