SheepShaver V2.2 Installation and User's Guide (Linux)

Back to index

This page contains information about:

-A Rom file extraction how-to
-Rom files working with SheepShaver
-The difference between Old World and New World roms
 

Rom file extraction how to

This guide does not describe the extraction of a rom file from a real Mac (further reading here)
There are several ways to get a working rom file:

From a Mac OS cd-rom through Linux:

Mount the Mac OS cd-rom with this command: "mount -t hfs /dev/cdrom /mnt/cdrom"
Then navigate to the system folder on the cd and copy the "Mac OS ROM" file to a place where SheepShaver can find it.

(This assumes that /dev/cdrom is your cdrom device, /mnt/cdrom is an empty directory you have permissions to and you have permissions to use mount, and your kernel has hfs support compiled in or loaded as a module.)


Straight from the Mac OS CD, if you are f.e. running BasiliskII:

If you have the OS 8.5 or 8.6 cd at hand and run Basilisk II you can copy the required file from the system folder on the CD straight to the linux drive on the desktop.
Then move it to a place  where SheepShaver can find it


From a downloaded rom update file:

You have to extract the necessary rom file contained in it. This takes place in several steps.
Obviously you cannot do that from within SheepShaver, so you could use Basilisk II or a real Mac. (even though the screenshots seem to suggest this) 
To do this follow the steps below:

1. Download TomeViewer (A MacOS utility that can open installer "Tomes" and extract files, for instance the "Mac OS ROM" file)

2.  Download Mac_OS_ROM_Update_1.0.smi.bin

You see them both in the screen below:


 

3. Unpack the Mac_OS_ROM_Update_1.0.smi.bin file by double clicking it. You see the result below


 

4. Mount the Mac OS ROM Update 1.0.smi (self mounting image) file as seen below:

5. Start TomeViewer and select the file Mac OS ROM Update through the file menu

6. Choose Expand from the Archive menu and select a location for the expanded file

7. There it is, at the desktop. Almost done...

8. Copy this file to the Linux drive as is seen on your desktop and move it to a place where it can
be found by SheepShaver (look here for instructions on placing and naming the ROM file)

 

Rom files known to work with SheepShaver

The following NewWorld ROMs are known to work:
- MacOS ROM 1.1.2 from MacOS 8.5
- MacOS ROM 1.2.1 from "iMac Update 1.1"
- MacOS ROM 1.4 from MacOS 8.6
- MacOS ROM 1.6 from "MacOS ROM Update 1.0"

Difference between Old world and New World roms

From the Apple site:
ROM is a computer's permanent read-only memory. Historically, the Macintosh ROM (also called the Macintosh ToolBox ROM) has been structured as one monolithic ROM, containing both low-level and high-level code. That is, it contained the routines needed by the computer at power-up time (hardware knowledge, initialization, diagnostics, drivers and such), as well as quite a bit of higher-level Mac OS ToolBox code.

While a computer needs to have a ROM with hardware-specific code in order to boot, the higher-level code was also included in the Macintosh ROM because the Mac ROM had its genesis in the original 128K Macintosh computer back in 1983-84. In those days, ROM was cheaper than RAM, and the available disk space (which was floppy based) was at a premium.

The NewWorld Architecture breaks the hardware-specific and higher-level system software into two logically distinct pieces. Under this model, one piece holds most of the hardware-specific components needed to boot, while the other contains boot-time ToolBox routines and hardware-specific components that are common to many Macintosh computers.

Hardware-specific code still exists in firmware (ROM) in order to handle the computer's start-up activities. This code fits into one ROM called the Boot ROM. The Boot ROM has the hardware-specific code and description of the hardware needed to start up the computer, as well as to boot an OS and provide common hardware access services the OS might require. One part of the Boot ROM contains Open Firmware. This Open Firmware implementation is significantly improved over versions of Open Firmware found on older PCI-based Macintosh computers. In particular, the device tree and Open Firmware drivers are much more complete.

Higher-level ToolBox software is no longer in the Boot ROM. This software has been moved to a "ToolBox ROM Image". This image behaves like the old ToolBox ROM, but is loaded from mass storage. As before, this ToolBox ROM Image can still be augmented by what traditionally was contained in Enablers, the System file, and extensions. The ToolBox ROM Image exists as a file, and the ToolBox ROM Image is inserted into the memory map as if it were a ROM (that is, it is write- protected in the memory map).


What this means, basically, is that Apple used to have a combination of PC BIOS-like information and some code about f.e. how windows on a Mac look like put together on a chip.

The new world architecture strips information except the PC BIOS-like information and puts it in a separate file on cd or disk that is then loaded when the computer starts.

Read the full article straight from the Apple site.

SheepShaver doesn't need the low level rom information, as it is providing this itself. That's why f.e. the machine type can be modified in software.
The high level information, however, must read and placed in secure place in memory

 

Sheepshaver is distributed under the GNU General Public License (GPL)


SheepShaver User's Guide