This is intended as a quick intro on how to use Apple's System Disk utility to set up the Open Firmware on your PowerMacintosh computer for use with NetBSD/macppc. You can use this Mac OS utility to do almost everything you could from the Open Firmware command line, except with less effort. There is an older program called Boot Variables that has some additional options. Boot Variables does not, however, include any patches for buggy Open Firmware versions. We encourage you to use System Disk, unless your model does not support System Disk.
You must be running Mac OS 8.0 or higher.
If you don't have Mac OS 8.0 or higher, you can simply download the Disk Tools PPC.img from Apple's site. This is a Mac OS 8.1 boot floppy. You can boot from this and swap floppies to get System Disk, or you can copy the files from this floppy onto a partition on your hard drive. You will need to use Disk Copy 6.3.3 or later to write the Disk Tools image to a floppy (you can use any Mac OS 7.0.1 or later system, including pre-PowerPC (i.e. m68k) Macs). You cannot, however, simply dump the boot floppy image to a disk via dd(8) or rawrite.
Note, for future reference, that any time you boot an older machine (i.e. Open Firmware 1.0.5) into Mac OS, all of its Open Firmware settings (including the nvram) will be set to their default values.
You may need to use StuffIt Expander (or some other utility) to convert that file from MacBinary format into the self-mounting disk image. See Aladdin Systems' help page.
Open the self-mounting image to mount it on your desktop, and locate the System Disk utility on the disk image. Run this program:
When you click the Save button, it installs any necessary nvram patches for your machine, except for a few minor fixes for PowerMacintosh 7300 - 8600 machines related to video timing and sync. There are separate instructions for applying these Open Firmware 1.0.5 patches.
If it doesn't automatically select Power User (Open Firmware), then manually select this. Click on Advanced Options:
Note that if your on-board video supports Open Firmware, System Disk automatically determines which device names to use and selects those for display (even though your machine may otherwise default to using serial ports for Open Firmware).
These settings can manually be entered into Open Firmware by typing at the Open Firmware prompt:
0 > setenv input-device kbd 0 > setenv output-device screen
where screen is the appropriate device name or aliase for your particular model's on-board video or video card.
If your machine has serial ports (not USB serial adaptors), you can enter ttya for both input-device and output-device if you wish to use the modem port on your PowerMacintosh to interact with Open Firmware. Some Performa models have an internal modem, so you'll need to use ttyb (the printer port).
Click on this button to directly interact with Open Firmware each time your machine is rebooted. This would mean you don't have to hold Command-Option-O-F every time you want to use Open Firmware. This is equivalent to typing at the Open Firmware prompt:
0 > setenv auto-boot? false
This entry is, of course, to select which device to boot from. Basically, you're telling Open Firmware where to find the initial bootloader (either the "partition zero" ofwboot or the XCOFF ofwboot.xcf). This is equivalent to typing at the Open Firmware prompt:
0 > setenv boot-device scsi/sd@0:0
Typical values to enter are:
|fd:0||floppy drive with NetBSD install floppy|
|enet:0,\ofwboot.xcf||ethernet on > Open Firmware 3.0 models|
|enet:,\ofwboot.xcf||ethernet on < Open Firmware 3.0 models|
|scsi-int/sd@3:0||fast-narrow internal SCSI on early PCI PowerMacs|
|scsi-ext/sd@3:0||external SCSI on later PowerMacs with more than one SCSI bus|
|scsi/sd@3:0||SCSI (may be ambiguous on machines with more than one SCSI bus)|
|IDE drive with "partition zero" bootloader. It's unclear whether you can boot from slave devices on earlier machines with on-board IDE|
|hd:,\ofwboot.xcf||Internal IDE hard drive on Open Firmware 3 system with ofwboot.xcf located on an HFS partition.|
The 3 is for SCSI entries is the SCSI ID of the device you're going to boot from. Traditionally, SCSI CD-ROMs are ID 3, internal hard drives are ID 0, and SCSI Zip disks are 5 or 6.
The 0 is for IDE entries is the master or slave device (master is 0, slave is 1). It is not clear whether you can boot from slave devices on earlier machines with on-board IDE.
The 0 is the partition you're going to boot from. For disks with NetBSD disklabels (such as one created by the NetBSD install tools or the distributed boot floppy), use 0 to load the "partition zero" bootloader. For disks with an Apple partition map, use the partition number of your NetBSD partition (usually 8 or higher, as the first few are reserved for Mac OS bootloaders).
Note that machines with Open Firmware 3 will not boot from a "partition zero" bootloader, and need to find the bootloader or kernel on an HFS, MS-DOS, or ISO9660 partition or over ethernet.
This entry is for the name of the kernel you'll be booting. You should almost always be using netbsd, the NetBSD/macppc kernel. If you are installing NetBSD, you might be using the RAMdisk-based installation kernel netbsd.ram.gz. This is equivalent to typing at the Open Firmware prompt:
0 > setenv boot-file netbsd.ram.gz
Click OK to accept your Advanced Options changes. Click Save to write all your changes to the Open Firmware settings and to write the NVRAM patches. Reboot.
If your system has Open Firmware 1.0.5, 2.0.x, or 2.4, you need to run the following commands before you boot NetBSD:
0 > setenv real-base F00000 0 > reset-all
These commands set the real-base, then reboots the computer so the settings are permanently stored.
There are some reports that the System Disk patches cause problems on a handful of models. If this is the case, run the following commands from the Open Firmware prompt:
0 > set-default use-nvramrc? 0 > reset-all