Open Fighting Mac OS

Open-world games on Mac are rare and the few that exist take place in the tired post-apocalyptic desserts we all know too well. Subnautica’s approach is different and refreshing. No wonder it’s one of the best-selling indies from 2018 so far. One warning though, Subnautica’s beautiful open-world requires a powerful machine to run.

  1. How to Access Downloads Folder on Mac from the Dock. The Downloads folder exists in the Dock of Mac OS by default, so unless it has been removed it will be there for all users to have quick access to by accessing the Dock at the bottom of the Mac screen. It will be located on the right side of the Dock near the Trash can.
  2. Parallel Desktop: This software is inbuilt software in mac. This can be run and applied for the.
(back to index)

Open Firmware (OF)
An introduction for users
By Andrew J. Brehm (andrew@netneurotic.de),last read September 26th 2003.
Use at your own risk.
[0] terminology
[1] fundamentals
[2] input/output
[3] booting
[4] further information

Open Firmware is a standardized software for PowerPC boot ROMs. MostPCI/AGP PowerPC machines use Open Firmware.

Some information that cannot be found here, can be found at http://developer.apple.com/technotes/tn/tn1061.htmlhopefully.

Note that all the information below is to my knowledge correct butmight not apply to newer models, most probably including the Power MacG5 and very new eMacs and iMacs. I do not know what changes to OF weremade by Apple to avoid the booting of Mac OS 9 on newer Macs.

Examples of Open Firmware machines:

  • Apple PCI PowerMacs
  • PCI PowerMac clones from other vendors (such as UMAX or Motorola)
  • IBM RS/6000 (PCI models)
  • non-PowerPC machines from Sun and other vendors


Examples of machines that do NOT use Open Firmware:

  • Apple PowerMacs of the earlier generation (NuBus-based)
  • PowerMac clones that are NuBus-based
  • 68k Macintoshes (and other 68k-based machines)
  • most other hardware architectures (including IBM PCs and clones)


Chances are when you have a PowerPC machine you have an Open Firmwaremachine.

TERMINOLOGY

alt (the 'alt' or 'option' key)
meta (the 'meta' or 'command' or 'Apple' key)
ctrl (the 'control' or 'strg' key)
esc (the 'escape' key)
OF (Open Firmware)
OF console (Open Firmware console)
console (Open Firmware console or UNIX console)
Darwin (Apple's Darwin OS or MacOS X)
GNU (usually Linux)
alt+meta ('alt' and 'meta' key pressed simultaneously)
alt+alt (also 'alt' and 'meta' key pressed simultaneously)
OF variable (a variable the value of which is stored in nvram)
nvram (the battery-powered non-volatile RAM of the machine)
PReP (PowerPC Reference Platform, an older type of IBM PowerPCmachines)
CHRP (Common Hardware Reference Platform, a newer type of IBM PowerPCmachines)
Old World (non-colorful Apple PowerMacs and clones)
New World (colorful Apple PowerMacs, like iMac or PowerMac G4, and anynewer Apple machine)
nwo (New World Order)

CHAPTER I - accessing open firmware and other fundamentals

There are three methods to access OF (assuming that it isconfigured to use keyboard and screen).

  • You can press alt+alt+o+f when you hear the boot chime and theOF console comes up.
  • You can press alt when you hear the boot chime and a bootmanager comes up (New World only).
  • You can configure nvram to make the OF console appear wheneveryou start the machine.


And there are four methods to configure OF (and change the values ofOF variables).

  • You can use the OF console and the setenv command.
  • You can use a Linux console and the nvsetenv command (GNUvariant).
  • You can use a Darwin console and the nvram command (Darwinvariant).
  • There is a 'Boot Variables' control panel for MacOS 9 and below(see end of document).


I assume IBM's AIX has an equivalent command, but I do not have accessto an AIX machine to test it. In most cases one of the three methodsabovewill do. You will have to be root to use these commands (under DarwinorGNU).

And there is a way to reset all OF variables to default values(which usually make a lot more sense than experimental values that onewants to get rid of):

--> Press alt+alt+r+p during the boot chime (and the machineshould work again)

The commands setenv, nvsetenv, and nvram should work this way(VAR isthe OF variable, VALUE is what you set it to):

  • setenv VAR VALUE
  • nvsetenv VAR VALUE
  • nvram VAR=VALUE


Remember to put quotes (') around a variable or value that consists ofweird string (aka a string made of several words or something alike).

(There is also a command 'printenv' which lists all variables andtheir current values.)

CHAPTER II - nvram variables in general, auto-boot?,input-device, output-device

There are many OF variables, but the most interesting ones arethese:

  • boot-device (path to boot loader)
  • boot-file (name of boot loader or parameters, usually not needed)
  • auto-boot? (whether the machine should boot automatically:true/false)
  • input-device (name of input device for OF console, like akeyboard)
  • output-device (name of output device for OF console, usually agraphics adapter)
In order to access the OF console, auto-boot? should be set to false.

In order to access the OF console and be able to see it and typesomething meaningful, input-device and output-device must be set tosomething useful (on many machines it is by default, on some it isnot).

In order to boot an operating system boot-device should be set tosomething meaningful. By default it is set to 'boot the first OS youfind' on many machines, which is fine.

In order to access the OF console input-device and output-deviceshould be set to something meaningful.

New World machines are usually configured correctly. Old Worldmachines might have to be configured.

Under a Darwin or GNU console enter either (under Darwin, as root)

Open Fighting Mac OS

nvram input-device=kbd

or (under GNU, as root)

nvsetenv input-device kbd

This should almost always work. (It does require the alias 'kbd' tobe set to the correct path to the keyboard, which it usually is.)

It is a bit more complicated for the output device though.

Open Fighting Mac Os X

On my UMAX Pulsar 2330 (S900), with an ATI Mach64 PCI graphicsadapter, the value for output-device should be set to'/bandit/ATY,XCLAIMVR'. For some machines '/chaos/control' might work,or so I have heard. I have never tried.

Thus, enter this (under Darwin, as root)

nvram output-device='/bandit/ATY,XCLAIMVR'

or (under GNU, as root)

nvsetenv output-device '/bandit/ATY,XCLAIMVR'

(You might as well always put quotes around the values to preventaccidents.)

Sometimes

nvram output-device=screen

or

nvsetenv output-device screen

might also work. (It does require the alias 'screen' to be setcorrectly though, which it might be.)

And as I mentioned above

nvram output-device='/chaos/control'

or

nvsetenv output-device '/chaos/control'

might indeed also work.

SUMMARY

  • Key combinations are pressed when the startup chime is heard.
  • The key combination for accessing the OF console is'alt+alt+o+f'.
  • The key combination for resetting the nvram is 'alt+alt+r+p'.
  • There are three different commands that can be used to modifynvram variables.
  • The variable input-device should be set to kbd.
  • The variable output-device should be set to screen (or seeabove).


[3]

Chapter III - booting the machine, boot-device, the boot manager

When nvram is reset to its default values, the variable boot-deviceusually contains the value of the default boot device.

What exactly the default boot device is depends on the model of themachine.

There are five distinct methods to boot a (PCI-based CHRP)PowerPC machine:

  • A PReP (type 0x41) bootstrap partition
  • A Macintosh ROM
  • A binary boot loader located on a file system
  • A CHRP script located on a file system
  • A boot loader located on a boot record
There is only a technical difference between 3. and 4., so we don'treally have to mind.

1. PreP bootstrap partition

The operating system installer will (hopefully) install andconfigure aboot loader (or a kernel) on that partition which will thenautomatically be booted by OF (default settings).

2. Macintosh ROM

Old World machines have a Macintosh ROM which bears the device name'AAPL,ROM'. This is also the default setting for booting Old Worldmachines.

3. Binary boot loader

This is a file located on a file system. In order to boot it OF mustknow the path to that file. An Open Firmware path to a file looksrather weird:

mac-io/ata-4@1f000/@0:13,:tbxi

(This is the current value of boot-device on my machine.)

ultra0:13,:tbxi

(This is what I set it to. 'ultra0' is an alias for the long bitabove.)

ultra0:13,SystemLibraryCoreServicesBootX

(This is the real path to the boot loader of MacOS X.)

This seems a bit tricky at first, but it is really fairly simpleafter one got into what all this is supposed to mean.

Basically, the path to a boot loader is

[device]:[partition],[path][filename]

where

[device] is (generally) a disk (see below),

[partition] is a partition number,

[path] is a directory (using as seperator instead of /), and

[filename] is either a filename ('BootX') or ':tbxi' (see below).

Disks have funny names, including (and I make no distinction betweenreal names and aliases):

scsi-int/sd@0 (first SCSI disk connected to internalSCSI controller)

scsi-int/sd@1 (second SCSI disk connected to internalSCSI controller)

ultra0 (firstIDE disk in a Power Mac G4)

hd (some disk, usually works for IDE machines)

cd (CD-ROM or DVD-ROM)

The partition number is the same partition number that is displaydby pdisk.Partition number 0 is the master boot record.

There is one special folder called 'system folder' which, instead ofits long name, can be accessed simply by using as an alias. Thus'SystemLibraryCoreServices' is equivalent to '.

The name of the boot loader is either a normal file name (like BootXor Yaboot) or the alias ':tbxi' which stands for 'the file of the typetbxiin that folder', which is usually the boot loader or a CHRP script.

In our example, the real path to the boot loader is

Open Fighting Mac Os Catalina

mac-io/ata-4@1f000/@0:13,SystemLibraryCoreServicesBootX

And the shortest possible version, replacing all the weird stuffwith aliasesis

ultra0:13,:tbxi

The default value of boot-device on New World machines is usually

hd:,:tbxi

which will usually boot MacOS or MacOS X (I assume the latter).

4. CHRP script

This works like a binary boot loader.

5. Boot loader in master boot record

This works for Old World machines mostly.

You install a boot loader in the master boot record (MBR) of yourdisk, then point OF to it:

setenv boot-device scsi-int/sd@0:0

This assumes that the boot loader is located in the master bootrecord of the first SCSI disk connected to the internal SCSIcontroller.

(quik-1.3.1-0a.ppc.rpm is such aboot loader. Please do not attempt to use this on a New World machine.Use onan Old World machine only. I only tested it on a UMAX S900.)

SUMMARY

  • The variable boot-device points to the operating system or bootloader that shall be started.
  • Typical values are 'AAPL,ROM' (for Old World machines) and'hd:,:tbxi' (for New World machines).
  • There are several methods to boot a PowerPC machine.
Open Fighting Mac OS


[4]

Chapter IV - further information, links

There is a 'Boot Variables'control panel that seems to work on Old World Machines. Use at yourown risk. Do not useon New World machines. Prefer the other methods anyway. Use MacZip tounpack.Download from my iDisk ('ajbrehm') if you cannot unpack the ZIP file.Readthe README file that comes with the Control Panel. Don't blame me ifsomethinggoes wrong.

For Old World machines the Quik boot loader (download Quik) mentionedabove worksfine.

For New World or CHRP machines YaBoot should work.There is also this document aboutusing Yaboot. SuSE Linux comes with a modified version of Yaboot(theychanged the name to match the x86 release).

The Appledocument mentioned at the top is also very helpful.

(back to index)