Apple supplies a large number of C-language header files of interest to Macintosh developers. They include interfaces to both Mac OS system software and ROM-based Macintosh startup firmware.
Among these header files are those you need to compile drivers and other PCI-related software for the second generation of Power Macintosh computers. Table C-1 lists them and gives references to the sections of this book where each file's content is discussed.
Table C-1 Header files for Macintosh PCI development
Devices.h
|
Writing Native Drivers |
DriverServices.h
|
Driver Services Library |
DriverGestalt.h
|
Driver Gestalt |
Interrupts.h
|
Interrupt Management |
Kernel.h
|
Driver Services Library |
NameRegistry.h
|
Name Registry |
PCI.h
|
Expansion Bus Manager |
Video.h
|
Graphics Drivers |
Table C-2 lists the functions and data structures that the header files listed in Table C-1 support. For each one it gives the name of the supporting file and the page number in this book where the function or data structure is documented.
Table C-2 PCI-related functions and data structures
AbsoluteDeltaToDuration
|
DriverServices.h
|
[link] |
AbsoluteDeltaToNanoseconds
|
DriverServices.h
|
[link] |
AbsoluteTime
|
DriverServices.h
|
[link] |
AbsoluteToDuration
|
DriverServices.h
|
|
AbsoluteToNanoseconds
|
DriverServices.h
|
|
AddAbsoluteToAbsolute
|
DriverServices.h
|
|
AddAtomic
|
DriverServices.h
|
|
AddDurationToAbsolute
|
DriverServices.h
|
|
AddNanosecondsToAbsolute
|
DriverServices.h
|
|
BitAndAtomic
|
DriverServices.h
|
|
BitOrAtomic
|
DriverServices.h
|
|
BitXorAtomic
|
DriverServices.h
|
|
BlockCopy
|
DriverServices.h
|
[link] |
CallSecondaryInterruptHandler2
|
Kernel.h
|
|
CancelTimer
|
Kernel.h
|
[link] |
CDDeviceCharacteristics
|
DriverGestalt.h
|
[link] |
ChangeInterruptSetOptions
|
Interrupts.h
|
|
CheckpointIO
|
Kernel.h
|
[link] |
CompareAndSwap
|
DriverServices.h
|
|
CreateInterruptSet
|
Interrupts.h
|
[link] |
CreateSoftwareInterrupt
|
Kernel.h
|
|
CStrCat
|
DriverServices.h
|
[link] |
CStrCmp
|
DriverServices.h
|
[link] |
CStrCopy
|
DriverServices.h
|
[link] |
CStrLen
|
DriverServices.h
|
[link] |
CStrNCat
|
DriverServices.h
|
[link] |
CStrNCmp
|
DriverServices.h
|
[link] |
CStrNCopy
|
DriverServices.h
|
[link] |
CStrToPStr
|
DriverServices.h
|
[link] |
CurrentExecutionLevel
|
Kernel.h
|
|
CurrentTaskID
|
Kernel.h
|
|
DecrementAtomic
|
DriverServices.h
|
|
DelayFor
|
Kernel.h
|
[link] |
DelayForHardware
|
Kernel.h
|
[link] |
DeleteSoftwareInterrupt
|
Kernel.h
|
[link] |
DeviceProbe
|
DriverServices.h
|
[link] |
DriverDescription
|
Devices.h
|
[link] |
DriverFinalInfo
|
Devices.h
|
|
DriverGestaltBootResponse
|
DriverGestalt.h
|
|
DriverGestaltDevTResponse
|
DriverGestalt.h
|
|
DriverGestaltIntfResponse
|
DriverGestalt.h
|
|
DriverGestaltIsOn
|
Devices.h
|
[link] |
DriverGestaltOff
|
Devices.h
|
[link] |
DriverGestaltOn
|
Devices.h
|
[link] |
DriverGestaltParam
|
DriverGestalt.h
|
|
DriverGestaltSyncResponse
|
DriverGestalt.h
|
|
DriverGestaltWideResponse
|
DriverGestalt.h
|
[link] |
DriverInitInfo
|
Devices.h
|
|
DriverOSRuntime
|
Devices.h
|
[link] |
DriverOSService
|
Devices.h
|
[link] |
DriverServiceInfo
|
Devices.h
|
[link] |
DriverType
|
Devices.h
|
[link] |
DurationToAbsolute
|
DriverServices.h
|
|
DurationToNanoseconds
|
DriverServices.h
|
|
ExpMgrConfigReadByte
|
PCI.h
|
[link] |
ExpMgrConfigReadLong
|
PCI.h
|
[link] |
ExpMgrConfigReadWord
|
PCI.h
|
[link] |
ExpMgrConfigWriteByte
|
PCI.h
|
[link] |
ExpMgrConfigWriteLong
|
PCI.h
|
[link] |
ExpMgrConfigWriteWord
|
PCI.h
|
[link] |
ExpMgrInterruptAcknowledgeReadByte
|
PCI.h
|
[link] |
ExpMgrInterruptAcknowledgeReadLong
|
PCI.h
|
[link] |
ExpMgrInterruptAcknowledgeReadWord
|
PCI.h
|
[link] |
ExpMgrIOReadByte
|
PCI.h
|
[link] |
ExpMgrIOReadLong
|
PCI.h
|
[link] |
ExpMgrIOReadWord
|
PCI.h
|
node |
ExpMgrIOWriteByte
|
PCI.h
|
[link] |
ExpMgrIOWriteLong
|
PCI.h
|
[link] |
ExpMgrIOWriteWord
|
PCI.h
|
|
ExpMgrSpecialCycleBroadcastLong
|
PCI.h
|
[link] |
ExpMgrSpecialCycleWriteLong
|
PCI.h
|
[link] |
FindDriverCandidates
|
Devices.h
|
[link] |
FindDriversForDevice
|
Devices.h
|
[link] |
FlushProcessorCache
|
DriverServices.h
|
|
GetDataCacheLineSize
|
DriverServices.h
|
|
GetDriverDiskFragment
|
Devices.h
|
[link] |
GetDriverForDevice
|
Devices.h
|
[link] |
GetDriverInformation
|
Devices.h
|
[link] |
GetDriverMemoryFragment
|
Devices.h
|
[link] |
GetInterruptFunctions
|
Interrupts.h
|
[link] |
GetInterruptSetOptions
|
Interrupts.h
|
|
GetIOCommandInfo
|
DriverServices.h
|
|
GetLogicalPageSize
|
DriverServices.h
|
|
GetPageInformation
|
Kernel.h
|
|
GetTimeBaseInfo
|
DriverServices.h
|
[link] |
HigherDriverVersion
|
Devices.h
|
[link] |
HighestUnitNumber
|
Devices.h
|
[link] |
IncrementAtomic
|
DriverServices.h
|
|
InstallDriverForDevice
|
Devices.h
|
[link] |
InstallDriverFromDisk
|
Devices.h
|
[link] |
InstallDriverFromFile
|
Devices.h
|
[link] |
InstallDriverFromFragment
|
Devices.h
|
[link] |
InstallDriverFromMemory
|
Devices.h
|
[link] |
InstallInterruptFunctions
|
Interrupts.h
|
[link] |
InterruptDisabler
|
Interrupts.h
|
|
InterruptEnabler
|
Interrupts.h
|
[link] |
InterruptHandler
|
Interrupts.h
|
|
InterruptSetMember
|
Interrupts.h
|
[link] |
IOCommandIsComplete
|
DriverServices.h
|
[link] |
IOPreparationTable
|
Kernel.h
|
[link] |
LookupDrivers
|
Devices.h
|
[link] |
MemAllocatePhysicallyContiguous
|
DriverServices.h
|
[link] |
MemDeallocatePhysicallyContiguous
|
DriverServices.h
|
[link] |
NanosecondsToAbsolute
|
DriverServices.h
|
|
NanosecondsToDuration
|
DriverServices.h
|
|
OpenInstalledDriver
|
Devices.h
|
[link] |
PageInformation
|
Kernel.h
|
[link] |
PBDequeue
|
DriverServices.h
|
[link] |
PBDequeueFirst
|
DriverServices.h
|
[link] |
PBDequeueLast
|
DriverServices.h
|
[link] |
PBEnqueue
|
DriverServices.h
|
[link] |
PBEnqueueLast
|
DriverServices.h
|
[link] |
PBQueueCreate
|
DriverServices.h
|
|
PBQueueDelete
|
DriverServices.h
|
|
PBQueueInit
|
DriverServices.h
|
|
PoolAllocateResident
|
DriverServices.h
|
[link] |
PoolDeallocate
|
DriverServices.h
|
[link] |
PrepareMemoryForIO
|
Kernel.h
|
|
PStrCat
|
DriverServices.h
|
[link] |
PStrCmp
|
DriverServices.h
|
[link] |
PStrCopy
|
DriverServices.h
|
[link] |
PStrLen
|
DriverServices.h
|
[link] |
PStrNCat
|
DriverServices.h
|
[link] |
PStrNCmp
|
DriverServices.h
|
[link] |
PStrNCopy
|
DriverServices.h
|
[link] |
PStrToCStr
|
DriverServices.h
|
[link] |
QueueSecondaryInterruptHandler
|
Kernel.h
|
|
RegEntryID
|
NameRegistry.h
|
[link] |
RegEntryIter
|
NameRegistry.h
|
[link] |
RegistryCStrEntryCreate
|
NameRegistry.h
|
[link] |
RegistryCStrEntryLookup
|
NameRegistry.h
|
[link] |
RegistryCStrEntryToName
|
NameRegistry.h
|
[link] |
RegistryCStrEntryToPath
|
NameRegistry.h
|
[link] |
RegistryEntryDelete
|
NameRegistry.h
|
[link] |
RegistryEntryGetMod
|
NameRegistry.h
|
[link] |
RegistryEntryIDCompare
|
NameRegistry.h
|
[link] |
RegistryEntryIDCopy
|
NameRegistry.h
|
[link] |
RegistryEntryIDDispose
|
NameRegistry.h
|
[link] |
RegistryEntryIDInit
|
NameRegistry.h
|
[link] |
RegistryEntryIterate
|
NameRegistry.h
|
[link] |
RegistryEntryIterateCreate
|
NameRegistry.h
|
[link] |
RegistryEntryIterateDispose
|
NameRegistry.h
|
[link] |
RegistryEntryIterateSet
|
NameRegistry.h
|
[link] |
RegistryEntryMod
|
NameRegistry.h
|
[link] |
RegistryEntryPropertyMod
|
NameRegistry.h
|
[link] |
RegistryEntrySearch
|
NameRegistry.h
|
[link] |
RegistryEntrySetMod
|
NameRegistry.h
|
[link] |
RegistryEntryToPathSize
|
NameRegistry.h
|
[link] |
RegistryPropertyCreate
|
NameRegistry.h
|
[link] |
RegistryPropertyDelete
|
NameRegistry.h
|
[link] |
RegistryPropertyGet
|
NameRegistry.h
|
[link] |
RegistryPropertyGetMod
|
NameRegistry.h
|
[link] |
RegistryPropertyGetSize
|
NameRegistry.h
|
[link] |
RegistryPropertyIterate
|
NameRegistry.h
|
[link] |
RegistryPropertyIterateCreate
|
NameRegistry.h
|
[link] |
RegistryPropertyIterateDispose
|
NameRegistry.h
|
[link] |
RegistryPropertySet
|
NameRegistry.h
|
[link] |
RegistryPropertySetMod
|
NameRegistry.h
|
[link] |
RegPropertyIter
|
NameRegistry.h
|
[link] |
RemoveDriver
|
Devices.h
|
[link] |
RenameDriver
|
Devices.h
|
[link] |
ReplaceDriverWithFragment
|
Devices.h
|
[link] |
ScanDriverCandidates
|
Devices.h
|
[link] |
SendSoftwareInterrupt
|
Kernel.h
|
|
SetDriverClosureMemory
|
Devices.h
|
[link] |
SetInterruptTimer
|
Kernel.h
|
[link] |
SetProcessorCacheMode
|
Kernel.h
|
|
SubAbsoluteFromAbsolute
|
DriverServices.h
|
|
SubDurationFromAbsolute
|
DriverServices.h
|
|
SubNanosecondsFromAbsolute
|
DriverServices.h
|
|
SynchronizeIO
|
DriverServices.h
|
|
SysDebug
|
Kernel.h
|
|
SysDebugStr
|
Kernel.h
|
[link] |
TestAndClear
|
DriverServices.h
|
[link] |
TestAndSet
|
DriverServices.h
|
|
UpTime
|
DriverServices.h
|
[link] |
VDDisplayConnectInfoRec
|
Video.h
|
[link] |
VDSyncInfoRec
|
Video.h
|
[link] |
VerifyFragmentAsDriver
|
Devices.h
|
[link] |
VSLDisposeInterruptService
|
Video.h
|
[link] |
VSLDoInterruptService
|
Video.h
|
[link] |
VSLNewInterruptService
|
Video.h
|
[link] |
VSLPrepareCursorForHardwareCursor
|
Video.h
|
[link] |