Apple Desktop Computer manual Boot ROM Contents

Page 60

C H A P T E R 5

Software

in RAM appears to be a ROM, the ROM-in-RAM approach is completely compatible with all application and system software.

The Mac OS ToolBox image is kept in a file in the System Folder on the specified boot device. In order to avoid problems with internationalizing the name, the file is located by file type instead of by name.

In order for Open Firmware to retrieve the ToolBox image file, it must be able to read the selected boot device. If the ToolBox image file is on a partition that is on a RAID, encrypted, striped, or otherwise non-standard device, Open Firmware must be able to read from these devices in order to boot Mac OS. Two possible solutions to this problem are to have a standard partition available on the device that contains the ToolBox image file, or to provide Open Firmware methods to read the file.

The main incompatibility that ROM-in-RAM approach introduces is that memory is not mapped one-to-one, as it has been for previous PCI-based Macs. Software that assumes the logical and physical addresses are the same will fail, even when Virtual Memory is not on. Well-behaved software—that is, software that calls the LogicalToPhysical or PrepareMemoryForIO functions when it needs a physical memory address—will continue to work.

Boot ROM Contents

The Boot ROM contains the code needed to start up the computer, initialize and examine the hardware, provide a device tree to describe the hardware, provide hardware access services (RTAS), and control to the OS. The Boot ROM can be grouped into the following major pieces.

POST Code

This is the code executed when the computer first boots. This encompasses many of the traditional Mac ROM operations and is based on the hardware initialization code used in the past: setup and initialization of the processor and ASICs, a boot beep, an error beep, diagnostics, and transfer to Open Firmware.

A small debugging Mini-Nub is part of this section. It allows prodding and poking with some MacsBug-like commands. Getting into the Debugger Nub is not possible using standard user interface input, however.

60Boot ROM Contents

Image 60
Contents Apple iMac Computer Page Contents Devices and Ports RAM ExpansionSoftware RtasAppendix Abbreviations Index Rtas NV-RAMFigures and Tables Page Contents of This Note About This Developer NotePowerPC G3 Microprocessor Supplemental Reference DocumentsMac OS ATA DevicesUSB Devices Open FirmwareE F a C E Introduction Features Case and External Features Shows a front view of the computerFront view 2Side view showing I/O bay Compatibility Issues System SoftwareMain RAM Expansion Modules Video RAM Expansion ModulesUSB Ports and Devices Page Architecture Architecture Processor module G3 MicroprocessorBackside Cache Main Logic Board Memory Controller and PCI BridgeController IC USB Controller Video Display SubsystemBuilt-in Modem Infrared Link Module Devices and Ports USB Connectors USB PortsTransfer Types Supported GNDUSB Compatibility Issues ADB CompatibilitySerial Port Compatibility Macintosh-To-Macintosh ConnectionsUSB Storage Devices USB ControllerKeyboard Keyboard LayoutMouse Keyboard and USBHard Disk Drive Video DisplayInfrared Communication Link Sound SystemSound Inputs Sound OutputsBuilt-in Microphone External Sound InputSound Specifications External Sound OutputHeadphone Jacks Total harmonic distortion Ethernet Port Internal ModemPage RAM Expansion Removing the Logic Board Assembly Expansion SlotsPlacing the Computer Face Down Removing the bottom cover Unfastening the CablesRAM Expansion 3Logic board assembly handle and retaining screws Removing the Retaining ScrewsRemoving the Logic Board Assembly Removing the EMI ShieldLocations of the Expansion Slots Main RAM Expansion 6Locations of the RAM expansion slotsMechanical Design of RAM SO-DIMMs Electrical Design of RAM SO-DIMMsSdram Devices Configuration of RAM SO-DIMMs RAM SO-DIMM Electrical Limits Address MultiplexingVideo RAM Expansion Page Software Why Make This Change? What Has Changed Features of the New Approach Performance RAM FootprintUser Experience Data Structures and FilesBoot ROM Contents Mac OS ndrv Drivers RtasToolbox Image File Contents NewWorld Boot Process Trampoline CodeToolBox ROM Image What Is Different Interrupt HandlingOutmoded Resources RAM FootprintNanoKernel Startup Disk Control PanelOpen Firmware and the Device Tree Interrupt LayoutMachine Identification Software Abbreviations Chrp NMI Page Index Nvram X, Y, Z Allen Watson