Jump To:
Leopard Reference Library
Apple provides information hardware developers can use to create products that are compatible with Macintosh computers and programming interfaces software developers can use to create software that drives or accesses devices.

A guided learning path for hardware and driver developers new to Mac OS X.   Essential information for developing drivers and device-access software.   API references organized by framework.
Document Descriptions
On Off
Display

Sort by
Title
Sort by
Topic
Sort by
Resource Type
Sorted by
Date
Energy Star PCI Device (HTML) (日本語 HTML)
QA1108: Provides useful information for developers of Energy Star-compliant PCI devices.
Apple Hardware, PCI and PC Card, Performance Technical Q&As 2002-01-15
IOKit Framework Headers (HTML) (日本語 HTML)
QA1107: Describes the differences between the headers in IOKit.framework and the I/O Kit headers in Kernel.framework.
AirPort/802.11, Apple Hardware, ATA, Audio, Bluetooth, Ethernet, Fibre Channel, FireWire, Human Interface Device & Force Feedback, Mac OS X Server, Networking, PCI and PC Card, Performance, Printing, QuickTime, Scanners, SCSI, Serial, Still Cameras, Storage, USB Technical Q&As 2002-01-15
Menu Bar Clock and NVRAM (HTML)
QA1102: Explains why booting with the Command-Option-P-R keys doesn't reset date and time preferences.
Apple Hardware, Performance Technical Q&As 2001-12-21
Resetting NVRAM to factory defaults (HTML)
QA1103: Describes what happens when you boot holding the Command-Option-P-R keys.
Apple Hardware, Performance Technical Q&As 2001-12-21
Reducing the size of Physical Memory in Open Firmware (HTML)
QA1099: Describes how to configure the Power Macintosh so less memory is recognized than is actually present.
Apple Hardware Technical Q&As 2001-12-20
The dreaded "incompatible flag -framework" error (HTML)
QA1096: Explains how to eliminate the incompatible flag -framework error in Project Builder.
ATA, Ethernet, Fibre Channel, FireWire, Networking, PCI and PC Card, SCSI, Serial, Storage, USB Technical Q&As 2001-12-05
Avoiding Kernel Event Conflicts (HTML)
QA1063: Documents the namespace for the vendor_code field of the kern_event_msg structure.
PCI and PC Card Technical Q&As 2001-09-14
SDRAM, CAS Latency for the (HTML)
QA1071: Describes the supported CAS Latency values for the "QuickSilver", PowerMac G4 CPUs.
Apple Hardware, Performance Technical Q&As 2001-09-13
Determining RAM size & location in New World Machines (HTML)
QA1065: Demonstrates Open Firmware method of determining RAM size & location in New World Machines.
Apple Hardware, Performance Technical Q&As 2001-08-01
Serial API Choice (HTML)
DV39: Discusses the choice of serial APIs supported by traditional Mac OS and Mac OS X.
Serial Technical Q&As 2001-07-02
Fundamentals of Open Firmware, Part III: Understanding PCI Expansion ROM Choices for Mac OS (HTML)
TN1044: Recommended contents for PCI expansion ROMs, including a table of standard devices, properties and methods.
Open Firmware Technical Notes 2001-06-26
128Mb SDRAM ICs limitation on original "Bronze Keyboard" Powerbook G3 (HTML)
QA1040: Outlines Memory ICs design limitation on original "Bronze Keyboard" Powerbook G3.
Apple Hardware Technical Q&As 2001-06-21
HID Manager Event Data Underruns (HTML)
QA1038: Explains how to correctly handle HID Manager event queue data underruns.
Human Interface Device & Force Feedback, USB Technical Q&As 2001-06-13
Displaying PCI Configuration Registers contents in Open Firmware (HTML)
QA1036: Demonstrates how to display PCI Configuration Resister contents in Open Firmware.
Apple Hardware, PCI and PC Card, Performance Technical Q&As 2001-05-18
Determining Open Firmware version (HTML)
HW100: Demonstrates how to find out the version of Open Firmware on your Macintosh.
Open Firmware, PCI and PC Card Technical Q&As 2000-10-06
Was that a path I just saw? (HTML)
HW101: Describes the Open Firmware path that is occasionally shown at boot time.
Open Firmware, PCI and PC Card Technical Q&As 2000-10-06
What is an Open Firmware devalias? (HTML)
HW99: Describes devaliases in Open Firmware.
Open Firmware, PCI and PC Card Technical Q&As 2000-10-06
Open Firmware Memory bus speed (HTML)
HW97: Describes a method to display memory bus speed for G3 or G4 Macintosh in Open Firmware.
Apple Hardware, PCI and PC Card Technical Q&As 2000-09-22
Open Firmware version number (HTML)
HW96: Discusses the unique values of Open Firmware version numbers.
Apple Hardware, Performance Technical Q&As 2000-09-22
Running files from a hard drive in Open Firmware (HTML)
TN2001: Demonstrates editing, saving, and retrieving Open Firmware commands to a file on a Macintosh hard drive.
Open Firmware, PCI and PC Card Technical Notes 2000-09-22
The "/aliases" node in the device tree (HTML)
HW89: Describes the aliases node in the Open Firmware device tree.
Open Firmware, PCI and PC Card Technical Q&As 2000-09-05
The "chosen" node in the device tree (HTML)
HW88: Describes how to find the "chosen" node in the Open firmware device tree.
Apple Hardware, Ethernet, Networking, PCI and PC Card Technical Q&As 2000-09-05
The "green" PCI bus (HTML)
HW93: Explains why the PCI bus is considered "green".
Apple Hardware, PCI and PC Card Technical Q&As 2000-09-05
How many PCI header types exist today? (HTML)
HW92: Briefly describes the three PCI header types defined in the PCI 2.2 specification.
PCI and PC Card Technical Q&As 2000-09-05
Open Firmware device tree nodes (HTML)
HW86: Explains the usage of the "@n" notation in Open Firmware device tree nodes.
Apple Hardware, PCI and PC Card Technical Q&As 2000-09-05
PCI address/data stepping (HTML)
HW94: Explains that Apple does not support PCI address/data stepping.
PCI and PC Card Technical Q&As 2000-09-05
PCI class codes (HTML)
HW91: Explains why PCI class codes are important.
Apple Hardware, PCI and PC Card, Performance Technical Q&As 2000-09-05
PCI Macintoshes and CardBus controllers (HTML)
HW87: Explains why older PCI Macintoshes do not recognize a Cardbus controller.
Apple Hardware, PCI and PC Card, Performance Technical Q&As 2000-09-05
CD-ROM Driver Calls (HTML)
Deprecated - DV22: Discusses public interface to Apple CD-ROM driver and supersedes information in AppleCD SC Developer's Guide.
ATA, SCSI, Storage Technical Notes 2000-08-14
Power Manager 2.0 (HTML) (日本語 HTML)
TN1190: Describes the Macintosh Power Manager 2.0.
Apple Hardware Technical Notes 2000-08-14
Locating the 1275-1994 Standard Document (HTML)
HW85: Alerts that the Open Firmware (IEEE 1275-1994) document can't be found at the IEEE Standards Association site.
Open Firmware, PCI and PC Card Technical Q&As 2000-07-17
Checking for the Printer Driver (HTML)
Deprecated - DV42: Describes a legacy Mac OS technique avoiding system hangs when using serial drivers on USB systems.
Printing Technical Q&As 2000-06-19
Digital CD Audio (HTML) (日本語 HTML)
TN1187: Describes digital audio on the Macintosh.
Audio Technical Notes 2000-04-01
Legacy Devices (HTML)
HW84: Discusses why legacy devices with hard-wired I/O addresses may not work properly with Open Firmware.
ATA, PCI and PC Card, QuickTime, Storage Technical Q&As 2000-03-20
Maximum Memory for the "Firewire" PowerBook (HTML)
Deprecated - HW83: Discrepancies between PowerBook Developer Note and TIL articles 14870 and 58582, regarding maximum memory configurations.
Apple Hardware Technical Q&As 2000-03-13
A SCSI little secret (HTML)
HW81: Details what to expect when accessing the motherboard SCSI bus on the Blue & White G3.
Apple Hardware, Performance, SCSI, Storage Technical Q&As 1999-12-20
ATA Interface Modules (HTML)
TN1192: Describes how to write device drivers for ATA host bus controllers, ie. ATA Interface Module.
ATA Technical Notes 1999-12-01
PCI Header types (HTML)
HW78: Describes the three required types of PCI headers to be provided in its configuration header space.
Apple Hardware, PCI and PC Card, Performance Technical Q&As 1999-11-15
What is a CardBus host bus adapter HBA? (HTML)
HW79: Explains what a CardBus host bus adapter (HBA) is and discusses its implementation on the Macintosh.
PCI and PC Card Technical Q&As 1999-11-15
What is an Open Firmware phandle, and why can't I access it from the Mac OS? (HTML)
HW76: Explains an "Open Firmware phandle" and why it is inaccessible from the Mac OS.
Open Firmware, PCI and PC Card Technical Q&As 1999-11-15
When to use PCMCIA, PC Card, and CardBus (HTML)
HW77: Explains the differences between PCMCIA, PC Card, and CardBus.
PCI and PC Card Technical Q&As 1999-11-15
Explanation of SDRAM configuration Nomenclature (HTML)
HW75: Explains the three-part "Device configuration" numbers for SDRAM in the Power Mac G4 Computer Developer Note.
Apple Hardware, Performance Technical Q&As 1999-10-18
Are the Name Registry device tree nodes unique? (HTML)
Deprecated - HW64: Discusses whether Name Registry nodes copied from the Open Firmware device tree are unique.
Apple Hardware, Audio, Networking, Open Firmware, PCI and PC Card, Printing Technical Q&As 1999-10-11
Can you explain the words "begin" and "again"? (HTML)
HW70: Explains the Forth looping words "begin" and "again" and how to escape such a loop.
Open Firmware, PCI and PC Card Technical Q&As 1999-10-11
How do I change the numeric base for the Open Firmware user interface? (HTML)
HW66: Explains how to change the numeric base for the Open Firmware user interface.
Apple Hardware, Performance Technical Q&As 1999-10-11
How do I determine the top of the Open Firmware dictionary? (HTML)
HW69: Explains how to determine the top of the Open Firmware dictionary.
Apple Hardware, Performance Technical Q&As 1999-10-11
Using "words" in Open Firmware (HTML)
HW73: Explains how to search for specific entries within all the global and local Open Firmware words.
Open Firmware, PCI and PC Card Technical Q&As 1999-10-11
What is the return stack in Open Firmware and can I use it? (HTML)
HW67: Describes the purpose of the Open Firmware return stack and how developers can use it.
Open Firmware, PCI and PC Card Technical Q&As 1999-10-11
What is the word "see" and how do I use it to help me find what a word does? (HTML)
HW72: Explains the function and use of the Open Firmware word "see".
Apple Hardware, Performance Technical Q&As 1999-10-11
Detecting specific ROM-in-RAM Mac (HTML) (日本語 HTML)
Deprecated - HW49: Identifying a Mac by name ("iMac"), and better alternatives for determining specific features ("has Firewire").
Apple Hardware Technical Q&As 1999-10-05
Optimization Strategies for Mac OS X (HTML)
TN1174: Achieving the best possible performance in your applications.
Performance Technical Notes 1999-09-01
Which Machines Support Driver Services Library and the MP Nanokernel? (HTML) (日本語 HTML)
HW63: Lists the systems that do and don't support the Driver Services Library and the MP Nanokernel.
Apple Hardware, Performance, Storage Technical Q&As 1999-07-12
Use the Doorbell (HTML) (日本語 HTML)
Deprecated - FW01: Explains the function of the FireWire Serial Bus Protocol 2 (SBP2) doorbell.
FireWire Technical Q&As 1999-05-17
What is unsolicited status? (HTML) (日本語 HTML)
FW03: Explains the meaning and usage of the SBP-2 unsolicited status message.
FireWire Technical Q&As 1999-05-17
TCP/IP Option Sizes (HTML) (日本語 HTML)
NW62: Enumerates the TCP/IP options and their sizes for Open Transport.
Networking Technical Q&As 1999-04-26
The AAPL, slot-name property and PCI (HTML) (日本語 HTML)
HW61: Discusses the use of the AAPL,slot name property for PCI
Apple Hardware, Open Firmware, PCI and PC Card Technical Q&As 1999-04-19
Determining the version of Open Firmware on your Mac (HTML) (日本語 HTML)
HW60: Describes a method to display the version of Open Firmware on a Macintosh.
Apple Hardware, Performance Technical Q&As 1999-03-29
dl command in 1 machine mode (HTML) (日本語 HTML)
HW51: Describes using the "dl" command in 1 machine mode.
Apple Hardware Technical Q&As 1999-03-29
PCI SIG (HTML) (日本語 HTML)
HW55: Describes the meaning of the acronym PCI SIG.
PCI and PC Card Technical Q&As 1999-03-29
Stopping Forth command scrolls (HTML) (日本語 HTML)
HW57: Describes how to limit Forth commands from scrolling off the screen.
Apple Hardware, Performance Technical Q&As 1999-03-29
What is a tokenizer? (HTML) (日本語 HTML)
HW58: Defines a tokenizer.
Open Firmware, PCI and PC Card Technical Q&As 1999-03-29
Booting after invoking the Open Firmware user interface (HTML) (日本語 HTML)
HW48: Tells how to boot a system after entering the Open Firmware user interface.
Apple Hardware, Storage Technical Q&As 1999-02-15
Changing the configuration variable in Open Firmware (HTML) (日本語 HTML)
HW40: Tells how to change the configuration variable in Open Firmware.
Open Firmware Technical Q&As 1999-02-15
Difference between an Open Firmware word and method (HTML) (日本語 HTML)
HW46: Describes the differences between an Open Firmware word and an Open Firmware method.
Open Firmware, PCI and PC Card Technical Q&As 1999-02-15
Difference between using Restart or Shut Down in the Finder's Special menu in Open Firmware (HTML) (日本語 HTML)
HW47: Explains the differences between using Restart or Shut Down on Open Firmware
Apple Hardware, PCI and PC Card Technical Q&As 1999-02-15
Do PowerBooks have a PCI bus? (HTML) (日本語 HTML)
HW43: Explains that a Powerbook has a PCI bus.
Apple Hardware, PCI and PC Card Technical Q&As 1999-02-15
How does Open Firmware generate the name property? (HTML) (日本語 HTML)
HW39: Describes the Open Firmware name property generation process.
Apple Hardware Technical Q&As 1999-02-15
Invoking the Open Firmware user interface (HTML) (日本語 HTML)
HW45: Describes how to invoke the Open Firmware user interface on startup.
Apple Hardware Technical Q&As 1999-02-15
PCI bus on the iMac (HTML) (日本語 HTML)
HW42: Explains that the iMac has a PCI bus even though it has no expansion slots.
Apple Hardware, PCI and PC Card Technical Q&As 1999-02-15
Switching between one and two machine mode for the Open Firmware user interface (HTML) (日本語 HTML)
HW37: Explains how to change from one machine mode to two in the Open Firmware user interface.
Open Firmware Technical Q&As 1999-02-15
What are configuration variables in Open Firmware? (HTML) (日本語 HTML)
HW38: Defines the configuration variables in Open Firmware.
AirPort/802.11, Apple Hardware, Audio, Ethernet, Fibre Channel, FireWire, Mac OS X Server, Networking, PCI and PC Card, QuickTime, Scanners, SCSI, Serial, Still Cameras, Storage, USB Technical Q&As 1999-02-15
What are generic names in Open Firmware? (HTML) (日本語 HTML)
HW34: Documents the generic names in Open Firmware.
Open Firmware, PCI and PC Card Technical Q&As 1999-02-15
What are snag keys in Open Firmware? (HTML) (日本語 HTML)
HW35: Explains Open Firmware snag keys, including examples of their function.
Apple Hardware, FireWire, Networking, Storage, USB Technical Q&As 1999-02-15
What is meant by 1 machine mode vs. 2 machine mode with respect to Open Firmware? (HTML) (日本語 HTML)
HW36: Documents 1 machine mode vs. 2 machine mode in Open Firmware.
Apple Hardware Technical Q&As 1999-02-15
PrepareMemoryForIO in the NewWorld (HTML)
DV33: Explains the correct use of PrepareMemoryForIO on DMA buffers when writing a device driver for DMA software.
Apple Hardware Technical Q&As 1998-12-07
Dealing with PCI Expansion Chassis Problems (HTML) (日本語 HTML)
TN1135: Discusses solutions for compatibility issues between PCI cards and attached expansion chassis.
PCI and PC Card Technical Notes 1998-08-01
High-Speed SDRAM Design Considerations (HTML) (日本語 HTML)
TN1138: Illustrates certain issues with the design of high-speed SDRAM DIMM modules.
Apple Hardware Technical Notes 1998-08-01
New Sound Input Driver Features (HTML) (日本語 HTML)
Deprecated - TN1124: Describes the visible features and changes, in Mac OS 8.1, for PCI sound input drivers.
Audio, PCI and PC Card Technical Notes 1998-04-01
Open Transport STREAMS FAQ (HTML)
Deprecated - TN1117: Decribes writing STREAMS modules and drivers for use with Open Transport.
Networking Technical Notes 1997-12-01
OTScheduleDeferredTask When Task Running (HTML) (日本語 HTML)
NW52: Describes what happens when you use OTScheduleDefferedTask to schedule a task that is running.
Apple Hardware, Networking, Performance Technical Q&As 1997-10-13
How to use the OT modem script engine (HTML) (日本語 HTML)
Deprecated - NW50: Shows how to use the Open Transport modem script engine.
Networking Technical Q&As 1997-07-11
Changing the TCP Window Size (HTML)
NW47: Describes how to change the TCP window size in Open Transport.
Ethernet, Networking Technical Q&As 1997-03-14
Detecting a CD-ROM (HTML) (日本語 HTML)
DV18: Demonstrates CD-ROM drive detection.
Apple Hardware, ATA, SCSI, Storage Technical Q&As 1997-01-31
T_DATA_REQ vs M_DATA TPI Message Blocks (HTML) (日本語 HTML)
NW42: Explains why OT passes data to a TPI module using M_DATA message blocks instead of M_PROTO+T_DATA_REQ.
Networking Technical Q&As 1996-10-25
Fundamentals of Open Firmware, Part II: The Device Tree (HTML)
TN1062: Describes the Open Firmware device tree.
Apple Hardware Technical Notes 1996-09-01
Fundamentals of Open Firmware, Part I: The User Interface (HTML)
TN1061: Describes the Open Firmware User Interface, Forth and the Open Firmware language used in Apple products.
PCI and PC Card Technical Notes 1996-07-01
DR Emulator Caches (HTML) (日本語 HTML)
Deprecated - HW28: Describes the Dynamic Recompiling emulator's cache, including a description of when to flush the cache.
Apple Hardware Technical Q&As 1996-04-08
Getting a List of Drivers & LUNs (logical unit numbers) (HTML)
Deprecated - DV04: Describes a legacy Mac OS technique for obtaining a list of SCSI Parallel drivers, devices, and LUNs.
ATA, SCSI, Storage Technical Q&As 1995-07-01
Boot Blocks (HTML)
Deprecated - DV03: Warns that Boot Block form and function will change and describes undocumented Boot Blocks features.
Storage Technical Notes 1987-03-01
All Hardware Products (HTML)
A list of links to all Apple hardware developer notes.
Apple Hardware Guides