Overview to the Mac mini

This chapter lists the features of the new Mac mini and provides information about a few software issues of interest to developers. The Mac mini does not ship with a monitor, keyboard, or mouse.

Features

Enclosure

Figure 1-1 shows the front and rear views of the Mac mini.

Figure 1-1  Mac mini Enclosure
Mac mini Enclosure

System Software

The Mac mini comes with Mac OS X version 10.3.7 or later installed as the default system. Mac OS 9 applications can be run in Classic mode. Install the Classic environment from the “Additional Hardware and Apple Software Test” CD shipped with your computer. For more information about Mac OS X, see the reference listed in Mac OS X.

Computer Identification

Rather than reading the box flag or the model string and then making assumptions about the computer’s features, applications that need to find out the features of the computer should use IORegistry calls to test for the features they require. IORegistry calls are part of the I/O Kit API. For more information, see the references listed at I/O Kit.

Asset management software that reports the kind of computer it is run on can obtain the value of the model property from the IOService plane of the IORegistry. For the Mac mini, the value of the string in the compatible property is PowerMac10,1.

NMI without Programmer’s Switch

Current Macintosh computers do not have a programmer’s switch, which allowed users to generate a non-maskable interrupt (NMI). The paragraphs below describe how to generate an NMI from a remote session for systems that do not have a physical programmer's switch.

Starting with Mac OS X 10.1.2, the OS will promote and recognize the DB_NMI bit in the debug parameter of the “boot-args” property from Open Firmware. When the DB_NMI bit is set, the user can generate a non-maskable interrupt (NMI) by pressing the system's power button. This replaces the power button’s sleep or wake response. The system reads the state of the bit at boot time from the boot-args configuration variable. For more information about the debug flags, please see Inside Mac OS X: Kernel Programming.

To set the DB_NMI bit, enter the following command at the Terminal to display the current debug flag settings.

% nvram boot-args

Add the parameter debug=0x4, as follows.

% sudo nvram boot-args="<current settings> debug=0x4"

After the DB_NMI bit in the debug parameter is set, reboot the machine. After reboot, pressing the power button for approximately 1 second will generate an NMI.

The power button will retain this functionality until Mac OS X is restarted without the DB_NMI bit set. To clear this bit, issue the nvram command omitting debug=0x4 parameter, as follows, then restart the machine.

% sudo nvram boot-args=""

Velocity Engine Acceleration

The Velocity Engine (an implementation of AltiVec) is the vector processing unit in the PowerPC G4 microprocessor. Some system software has been modified to take advantage of the accelerated processing that the Velocity Engine makes possible. System software has also been modified to support low-level operations using the Velocity Engine.

For complete information on the Velocity Engine, refer to the following Apple website:

http://developer.apple.com/hardwaredrivers/ve/index.html