Fact-checked by Grok 2 weeks ago

New World ROM

New World ROM is a firmware architecture implemented in certain Macintosh computers, beginning with the iMac in 1998, that replaces the traditional Macintosh Toolbox ROM on the logic board with a modular bootROM and a Mac OS ROM image loaded into write-protected RAM (known as ROM-in-RAM) from the startup volume. This design, part of the broader NewWorld Architecture, incorporates Open Firmware—a standardized boot environment based on the IEEE 1275 specification—to handle hardware initialization, device configuration, and the transition to the operating system. The NewWorld Architecture marked a significant evolution from earlier "Old World" Macintosh systems, which relied on monolithic ROM chips containing hardcoded addresses, interfaces, and resource-based drivers like 'DRVR' types. In contrast, New World ROM systems employ a bus for expansion, the Name Registry for dynamic hardware naming and addressing, and native PowerPC drivers in formats such as 'ndrv' and CFM, loaded via the Driver Loader during boot. The bootROM itself includes hardware-specific code for (POST), runtime abstraction services (RTAS), and an Forth interpreter, while FCode scripts in PCI expansion ROMs enable autoconfiguration of peripherals like controllers and Ethernet adapters. This architecture facilitated greater flexibility in system startup, including user-selectable boot volumes through the Startup Disk control panel and support for interrupt handling via an Interrupt Source Tree (IST), which abstracts secondary interrupts for improved portability and reduced latency. Non-volatile RAM (NVRAM) is partitioned according to the Common Hardware Reference Platform (CHRP) standard, allocating space for Mac OS parameters, Apple-specific PRAM, and variables. Applicable to models like the , (Blue & White), and subsequent PowerPC-based systems until the transition to processors, New World ROM enhanced compatibility with hardware and paved the way for advanced features such as hardware cursor support and dynamic display timing managed by the Display Manager.

History

Development and Origins

The Macintosh's use of ROM for system software began with the original 128K model in 1984, where read-only memory was chosen over RAM due to its lower cost and the limitations of contemporary storage media like floppy disks. This approach embedded the operating system and Toolbox routines directly into hardware, providing fast initialization but tying software closely to specific machines. As Apple transitioned to PowerPC processors in the mid-1990s, the ROM architecture evolved to address growing complexity and the need for broader compatibility. In 1995, Apple collaborated with and under the to develop the Common Hardware Reference Platform (CHRP), a standardized for PowerPC-based systems aimed at enabling operating system portability across vendors. This effort built on the PowerPC Reference Platform and incorporated the IEEE 1275-1994 specification, which provided a hardware-abstracted using Forth-based scripting for and initialization. CHRP's design emphasized modularity, drawing from IBM's RISC systems and Apple's Macintosh heritage to reduce porting efforts for operating systems like Mac OS, AIX, and . The motivations for New World ROM stemmed from CHRP's principles: achieving operating system independence by separating boot firmware from platform-specific code, lowering hardware costs through smaller onboard ROM (shifting the bulk of the 4MB Toolbox image to mass storage), and facilitating future architectural shifts beyond PowerPC. Internally at Apple in the late 1990s, engineers like Paul Resch led the redesign, deciding to split the traditional monolithic ROM into a minimal hardware-specific Boot ROM and a loadable Toolbox ROM image, informed by CHRP's Run-Time Abstraction Services (RTAS). This modular approach, refined through revisions by Wayne Flansburg and contributions from Mark Baumwell and Dave Radcliffe, marked a pivotal internal shift toward standards-compliant firmware.

Introduction and Initial Models

The New World ROM made its official debut in 1998 alongside Apple's first , the Bondi Blue model, which was unveiled on May 6 and began shipping on August 15. This all-in-one consumer desktop marked a significant shift in Apple's hardware strategy, replacing the traditional onboard Macintosh ROM with a more modular approach that loaded essential firmware from the boot drive. The iMac's adoption of New World facilitated compatibility with emerging standards like USB, while eliminating legacy ports such as to streamline the design, though it retained ADB for peripherals. Following the , subsequent early adopters of ROM included the Power Macintosh G3 Blue and White tower, introduced on January 5, 1999; various slot-loading variants produced from 1999 to 2002; and the Power Mac G4 series, which debuted in August 1999. These models extended the New World architecture across Apple's desktop lineup, supporting higher clock speeds and expanded memory configurations. The Blue and White G3, for instance, featured a distinctive translucent case design and served as a professional counterpart to the consumer-oriented . The introduction of New World ROM with the initiated Apple's full transition away from Old World ROM production, which concluded by late 1998 as the last Beige Power Mac G3 models were phased out. From 1999 onward, all new Power Mac desktops and exclusively utilized New World ROM, aligning with Apple's push toward standardized architecture. In marketing announcements, Apple emphasized the iMac's simplified hardware—such as its integrated components and lack of unnecessary ports—alongside the boot flexibility provided by , which allowed for device-independent startup and easier OS installations. This boot process, powered by , enabled greater interoperability without relying on fixed ROM mappings.

Technical Architecture

Core Components

The core components of New World ROM in Apple Macintosh systems, introduced starting with the and models, consist of a hardware-specific and a file-based Toolbox ROM Image, forming a firmware architecture that separates low-level initialization from Macintosh-specific routines. This design eliminates the need for a large monolithic ROM on the logic board, instead leveraging for flexible loading and for execution, which optimizes usage and supports evolving . The , typically 1 MB in size, implements a hardware-specific version of (version 3.0 and later, compliant with IEEE 1275-1994) that executes the initial (POST), generates diagnostic signals such as the boot beep, and constructs the device tree to describe the system's hardware configuration. It includes essential, OS-independent code for devices, such as 'ndrv' and 'nlib' drivers, enabling basic hardware probing and initialization before loading additional components. This ROM resides directly on the logic board and adheres to the IEEE 1275-1994 standard for boot firmware, ensuring portability across processor architectures. Complementing the Boot ROM is the Toolbox ROM Image, a 4 compressed file stored on mass storage within the System Folder, which is decompressed and loaded into read-only during startup. Less than 3 of this image is actively used for Macintosh-specific , drivers, and boot-time routines—including the USB Manager for handling hubs, keyboards, and mice—freeing over 1 of for the operating system. This file-based approach allows for updates without hardware changes and provides access to the Macintosh for high-level services like and PRAM management, though drivers must avoid calling these at levels due to execution constraints. Open Firmware in New World ROM features enhancements over prior implementations, including a complete device tree stored in the Name Registry for hierarchical hardware representation and property management, Forth-based scripting for customizable boot control (e.g., via the "bootinfo" file), and plug-and-play drivers that support PCI configuration ROMs for bootable expansion cards. These elements ensure dynamic device autoconfiguration and compliance with IEEE 1275, facilitating seamless integration of peripherals without fixed ROM mappings. The overall hybrid structure—combining the fixed Boot ROM firmware with the loadable Toolbox ROM Image—enables efficient resource allocation and forward compatibility in PowerPC-based systems.

Boot Process

The boot process of New World ROM-equipped Macintosh computers begins with the (POST), a initialization executed by the upon power-up. This includes running preliminary diagnostics such as ROM verification, processor checks, interrupt controller startup, clock configuration, initialization, NVRAM access, sizing, and L2 cache enabling, culminating in a boot chime to signal readiness. Following POST, activates, probing the I/O buses (including ) to detect and enumerate components. It then populates the device tree, a hierarchical Forth-based in that describes the system's configuration, including nodes for built-in ASICs and expansion cards, to facilitate subsequent resource allocation and driver loading. Open Firmware next consults NVRAM environment variables—such as auto-boot?, boot-device, and boot-file—to determine the boot behavior, defaulting to the primary startup volume if unchanged. It loads the "bootinfo" file, a type 'tbxi' resource located in the blessed System Folder on the boot device (typically an HFS or HFS+ volume), which contains an embedded Forth boot script. This script executes to load and run the Trampoline code, a bridge routine that terminates the Open Firmware environment, gathers critical system information (e.g., device tree details and interrupt mappings), rearranges memory layout to free space, and prepares the Interrupt Source Tree for handover. The code then loads the from the bootinfo file into , write-protecting approximately 3 MB of its 4 MB contents to serve as the runtime Macintosh . This image, which provides core system services, the 68k emulator, and boot-time drivers, is decompressed and initialized via the image's Init routine. Control is subsequently transferred to the Macintosh boot loader, such as for Mac OS 8.5 or later, which scans the Extensions folder for additional drivers, initializes the , and completes OS startup from the specified System Folder. For diagnostics or custom booting, users can interrupt the automatic process by pressing Command-Option-O-F during the chime, invoking the (ok prompt). From here, commands like mac-boot resume normal , boot [device-path] specify alternate volumes or networks, or setenv modifies NVRAM variables for persistent changes, enabling troubleshooting of hardware detection or boot failures.

Comparison to Old World ROM

Architectural Differences

One of the primary architectural shifts in New World ROM compared to Old World ROM is the relocation of the Macintosh Toolbox from the ROM to a file-based "ToolBox ROM Image" loaded from mass storage during boot. This change eliminates the one-to-one mapping between ROM addresses and RAM, requiring low-level code, such as drivers, to use APIs like LogicalToPhysical for address translation when accessing memory-mapped hardware or preparing I/O buffers. Interrupt handling in New World ROM departs from the direct vector-based approach of ROM, instead utilizing the Name Registry to dynamically wire interrupts. Similarly, hardware I/O addresses are abstracted through , with the Name Registry providing device-specific addresses rather than relying on fixed mappings. This aligns with IEEE 1275 standards, enabling greater portability across hardware configurations. The transition from the (ADB) to USB represents another key difference, with New World ROM incorporating a software within the ROM Image to support legacy ADB peripherals such as keyboards and mice. Overall, New World ROM emphasizes modularity by fixing the size at 1 MB for hardware-specific initialization code, while the operates dynamically in as part of a 4 MB allocation (with less than 3 MB typically used), facilitating easier updates and reclaiming over 1 MB of for other purposes.

Hardware and Software Implications

The adoption of New World ROM architecture led to significant simplifications in hardware design, particularly on logic boards, by eliminating the need for large ROM chips that housed the Macintosh in previous systems. Instead, the on the logic board contained only essential hardware-specific code, such as (), Open Firmware, and basic drivers, while the bulk of the Toolbox routines were provided via a file loaded from into (known as ROM-in-RAM). This reduced the physical footprint and cost of ROM components, with the being a compact single chip, freeing up board space for other integrations. The architecture enhanced support for expansion technologies like PCI and AGP through Open Firmware's device tree management, which dynamically configured up to four PCI buses via peer bridges and supported 33 MHz (or 66 MHz on G3 systems) operations with 32-byte cache line bursts. PCI cards could participate in the boot process using FCode drivers stored in their expansion ROMs, enabling seamless hardware enumeration per IEEE 1275 standards. However, the mandatory shift to USB for primary input peripherals, such as keyboards and mice, replaced the older Apple Desktop Bus (ADB), requiring users to adopt USB-compatible devices or adapters, as not all legacy ADB peripherals were fully emulated. The USB Manager, integrated into the Toolbox ROM image, handled hubs and standard input devices, but ADB emulation via software was limited to basic keyboard and mouse functions. On the software side, developers were required to leverage Open Firmware APIs and the Name Registry for low-level hardware access, as direct manipulation of ROM contents was no longer feasible due to the file-based ROM image. This shift promoted modular development, with drivers using the Driver Services Library (DSL) and routines like RegistryEntrySearch for device management, ensuring compatibility across boot and runtime environments. Configuration updates, such as Open Firmware variables, became simpler through NVRAM modifications in an 8 KB partition (including 2048 bytes for Open Firmware variables) following CHRP specifications, enabling persistence without hardware reflashing; the ROM image file could be updated via software replacement on disk. Backward compatibility for software was maintained via the built-in Toolbox ROM image, which emulated legacy routines in RAM, allowing most applications to run without modification under the principle of "It's just a !" However, limitations arose in handling real-time s, as the Open Firmware-mediated device tree provided improved handling with reduced compared to direct ROM access in prior architectures. Performance trade-offs included a minor boot delay from loading and decompressing the ~4 MB file (with under 3 MB actually used, returning over 1 MB to system RAM), but this was offset by the modular design's efficiency gains, such as reduced interrupt latency and increased available for applications.

Usage and Legacy

Operating System Integration

New World ROM systems require the "Mac OS ROM" file, a bootinfo resource of type 'tbxi', to be placed in the System Folder for compatibility with versions starting from 8.5. This file contains the ROM image, which is loaded into RAM during boot to emulate the legacy Macintosh routines previously handled by onboard in older hardware. The on New World machines executes a , followed by initializing the device tree, before loading the "Mac OS ROM" file to bridge the gap between the new and existing software. Mac OS 9 provides full support for ROM through updated versions of the "Mac OS ROM" file, incorporating enabler components for enhanced hardware compatibility. These updates ensure seamless integration of the image, making Mac OS 9 the final classic operating system to rely heavily on this emulation layer for booting and system calls. The process mirrors that of Mac OS 8.5 but includes refinements to the bootinfo script and code for improved stability on diverse New World hardware configurations. In contrast, Mac OS X and subsequent versions eliminate the dependency on the Toolbox ROM image entirely, leveraging Open Firmware directly for booting. The Darwin kernel, underlying Mac OS X, interfaces with the device tree generated by Open Firmware to handle hardware abstraction without emulation, enabling native compatibility from initial release. This shift allows for a more modular boot process independent of classic Mac OS structures. For clean installations of older operating systems like Mac OS 8.5.1 on New World hardware, the "Mac OS ROM" file must be extracted from the installation media and manually placed in the System Folder on the target volume, as the installer may not automatically provision it on blank drives. This step ensures the Toolbox image is available during the initial boot sequence post-installation.

Modern Applications and Emulation

New World ROM has found continued relevance in software environments that seek to replicate the PowerPC-era intosh experience on modern hardware. Emulators such as utilize dumps to accurately simulate PowerPC-based systems running OS versions from 8.5 to 9.0.4, relying on New World images to handle the boot process and functionality. , while primarily designed for 68k , is often paired with in vintage computing setups for broader compatibility. supports experimental of OS components, including the Nanokernel from New World s, enabling low-level analysis and partial system booting on PowerPC targets. Legally, users must extract images from hardware they own, as redistribution or use of unauthorized dumps violates ; tools like grabbers facilitate this personal extraction process for owned 68k or PowerPC s. Preservation efforts have centered on archiving New World ROM images to safeguard Macintosh software and behaviors for future study and hobbyist use. The Macintosh maintains a comprehensive collection of ROM files, including those for PowerPC models, serving over 3.8 million downloads of classic Mac files to support and historical research within enthusiast communities. Tools such as MacROMan provide file-based management of New World ROM parcels (e.g., .txbi files) for integration into System Folders, aiding in the reconstruction and maintenance of authentic boot environments without physical . In legacy hardware contexts, New World ROM remains essential for retro modifications and repairs on aging PowerPC Macs, such as and models. Enthusiasts employ ROM updates via to address compatibility issues in custom builds, though challenges persist with deteriorating NVRAM, which stores critical settings and can lead to boot failures or over time. Firmware update tools help mitigate these issues, but the reliance on original chips often necessitates hardware swaps in restoration projects. Although rendered obsolete by Apple's transition to Intel processors in 2006, which shifted to EFI firmware and eliminated the need for ROM loading, New World continues to be crucial for achieving high-fidelity of 68k and PowerPC architectures in modern software environments.

References

  1. [1]
    [PDF] Designing PCI Cards and Drivers for Power Macintosh Computers
    ... NewWorld Architecture. 69. The Macintosh ROM and The NewWorld Architecture. 70. Differences Introduced by the NewWorld Architecture. 71. Boot Devices. 71. RAM.
  2. [2]
    [PDF] PowerPC™ Microprocessor Common Hardware Reference Platform
    The PowerPC™ micropro- cessor has been jointly developed by IBM®, Motorola®, and Apple® to meet the computer performance growth requirements of the 90s and ...
  3. [3]
  4. [4]
    Apple iMac G3/233 Original - Bondi (Rev. A & B) Specs
    Apple iMac G3 Bondi Blue The original Apple iMac - Bondi (Rev. A ... *The "revision A" model was introduced on May 6, 1998 and shipped on August 15, 1998.
  5. [5]
    Apple Power Macintosh G3 300 (Blue & White) Specs - EveryMac.com
    Introduction Date: January 5, 1999, Discontinued Date: June 1, 1999. Details: The "Introduction Date" refers to the date a model was introduced via press ...
  6. [6]
    iMac at 20: The reaction after the 1998 iMac introduction - Macworld
    May 8, 2018 · The iMac wasn't a CHRP computer, but it was “darn close,” as Macworld wrote in 1998. It used PC standard RAM, USB, and had an OpenFirmware ROM ( ...
  7. [7]
    [PDF] TN 1167: The Mac ROM Enters a New World
    May 17, 1999 · This Open Firmware implementation is significantly improved over versions of Open. Firmware found on older PCI-based Macintosh computers. In ...Missing: history | Show results with:history