Some aspects of the ROM-in-RAM approach are apparent in the operation of the system.
The iBook computer has its Mac OS ROM image stored in RAM. The area of RAM that contains the Mac OS ROM image is excluded from the available memory space and is marked as read-only. This removes approximately 3 megabytes of RAM from availability for other uses. In effect, a system with 32 megabytes of RAM appears to have only 29 megabytes available.
Setting the startup device from the Startup Disk control panel makes the changes to the boot process that are needed for the ROM-in-RAM approach. The Startup Disk control panel modifies the Open Firmware NV-RAM partition that contains the Open Firmware's configuration variables.
The Mac OS ROM image is contained in a new file, named "Mac OS ROM", that is kept in the System Folder. The Mac OS ROM image is the same as it would be if it were an actual Mac OS ROM, containing the high-level software, the kernel software, and the 68K emulator.
With the ROM-in-RAM approach, memory is not mapped one-to-one as it has been for previous PCI-based Macintosh computers. This could be a compatibility issue with some software. 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 always calls the LogicalToPhysical or PrepareMemoryForIO functions when it needs a physical memory address--will continue to work.
IMPORTANT
Designers of DMA device drivers should refer to Designing PCI Cards and Drivers for Power Macintosh Computers for information about using the PrepareMemoryForIO function to set up mapping for physical and logical addresses. The relevant section is on pages 219-229. For device drivers running with the NewWorld software, the sentence on page 227 that says "Certain DMA transactions require both mapping tables" should be interpreted to mean "All DMA transactions require both mapping tables."