; ; Hacks to match MacOS (most recent first): ; ; 8/3/92 Recreated gestaltIconUtilities equate (no 'Attr') for compatibility ; 9/2/94 SuperMario ROM source dump (header preserved below) ; ;__________________________________________________________________________________________________ ; ; File: GestaltEqu.a ; ; Contains: Equate file for Gestalt ; ; Written by: Carl C. Hewitt 12/15/88 ; ; Copyright © 1988-1993 by Apple Computer, Inc. All rights reserved. ; ; Change History (most recent first): ; ; 12/2/93 JDR updated gestaltFinderAttr, added gestaltQuickTimeFeatures ; 11/8/93 JRH Added gestaltPowerBookDuo250 and gestaltPowerBookDuo270C. ; 10/28/93 SAM Roll in from mc900ftjesus. ; 10/28/93 SAM Changed gestaltNativeCPUtype equates (making each cpu type take ; a range of 256 per architecture). ; 10/14/93 pdw Added 'scsi' selector and bits. ; 09-24-93 jmp Rolled in various equates from the Excelsior sources. ; 8/12/93 BG Updated the MachineType list to be somewhere closer to current. ; 8/4/93 JDR synch with Sound Mgr project. ; <19> 8/4/93 IH #1101633,1098397,1101795,1101636,1102280 : Fix 1102280. Add ; CloseView and Display Manager gestalt selectors. ; 6/23/93 CSS Update from Reality: ; <67> 6/9/93 DRF #1087472: Add gestaltFinderSupports4GBVolumes and ; gestaltFinderHandlesCFMFailures to gestaltFinderAttr. ; <66> 6/1/93 DTY Standardize Icon Utilities selector name. ; <65> 5/11/93 JMF Added equates for gestaltKeyboardType for the Apple ; Adjustable Keyboard (ISO & US) & Keypad ; <64> 4/27/93 KIP Add gestalt16BitSoundIO, gestaltStereoInput and ; gestaltLineLevelInput selectors. ; <63> 3/29/93 ash Added gestalt attribute/selectors for Macintosh PC Exchange as ; well as additional selector for Translation Manager. ; <62> 3/29/93 ngk Add GestaltValue macros ; <61> 3/19/93 mgl Add gestaltFinderAttr for Finder attributes. ; <60> 3/5/93 JDR Added gestalt16BitAudioSupport. ; <59> 2/26/93 hjcr Add the gestaltBgndMouseDownSupport bit ; <58> 1/18/93 ash Add selectors for Macintosh Easy Open and Translation Manager ; 6/14/93 kc Roll in Ludwig. ; 4/29/93 fau Bug #1081636: Update from Reality: changed some of the ; gestaltSoundattr bit assignments and added some others. ; 3/2/93 CSS Update from Horror. Comments follow: ;

12/15/92 RLE add more released machines ;

6/16/92 SWC Added gestaltAppleEventsAttr. ;

11/12/91 jmp Just brought this file slightly more up-to-date than it was; ; 2/11/93 SAM Added EMMU emulated MMU type. (Hooray for change SM14 !!!) ; 02/10/93 HY Remove change . ; 01/11/93 HY Added bit gestaltNoAtlkSupport in the gestaltMiscAttr selector. ; 12/13/92 SAM Added gestaltNativeCPUtype and gestaltSysArchitecture. Cleaned ; up this file (what a mess!) ; 10/27/92 fau Added a gestaltHasEnhancedLTtlk bit to gestaltHardwareAttr. ; 7/29/92 CSS Update from Reality: ; <57> 7/28/92 JDR Added Sound Mgr 3.0 flags. ; 7/28/92 WS add realtime manager attribute for gestalt call ; 7/15/92 RB Added the gestalt result for Classic hardware. ; 7/14/92 RB Added the selector and types associated with sound hardware. ; 6/10/92 CSS Roll-in Reality changes: ; <56> 6/5/92 DC Add the selector for checking for the presence of icon ; utilities. ; <55> 6/2/92 JSM #1031451 : Add gestaltPowerBook145. ; <54> 5/27/92 KIP #1030293,: Add gestaltPlayAndRecord bit for sound ; attributes. ; <53> 5/27/92 DCL Moved gestaltQuadra950 into the public consciousness. ; 5/20/92 KW Put in Pandora additions P2 ; 5/19/92 CS fix header ; 5/19/92 CS Integrated changes from Reality: ; <52> 4/9/92 JSM #1026795,: Add gestaltMacLCII. ; <51> 1/7/92 KST Added gestaltTSMgrVersion. ; <50> 12/3/91 SAM Moved 'hwdr' bits gestaltHasSCSI961 and gestaltHasSCSI962 here ; from the private Gestalt equates. ; <49> 12/2/91 SAM Added the fall 91 CPUs to the official list of GetaltMachine ; IDs. ; <48> 11/21/91 YK Removed selectors for input utilities. ; <47> 11/1/91 KSM Added gestaltHelpMgrExtensions. ; <46> 10/30/91 YK Added gestaltComponentMgr. ; <45> 10/23/91 YK Added gestaltInputUtilsAttr and gestaltInputUtilsPresent ; <44> 10/17/91 JH Added gestaltDictionaryMgrAttr and gestaltDictionaryMgrPresent. ; <43> 8/27/91 CH Updated copyright dates ; <42> 8/22/91 gbm (really csd) Added gestaltAliasMgrSupportsRemoteAppletalk ; <41> 6/26/91 BH gestaltFXfrMgrMultiFile ; <40> 6/26/91 BH added selectors for CTB11 stuff (errorstring for CM, TM, FT, ; CRMToolRsrcCalls) ; <39> 6/26/91 BH added gestaltCRMPersistentFix constant ; <38> 2/7/91 KON CEL: BRC# Gang of 5: Remove equate for gestaltOriginalQD1. ; <37> 2/4/91 gbm JDR, #gbm-0003: Add the gestaltQuickdrawFeatures selector ; <36> 1/30/91 gbm sab, #38: Change the ‘already including this file’ variable to ; all uppercase (for security reasons) ; <35> 1/15/91 gbm (bbm) Add new hardware attribute, gestaltHasSoftPowerOff ; <34> 12/14/90 JDR (KIP) adding Gestalt selector gestaltHasSoundInputDevice and ; renaming gestaltSoundInputPresent. ; <33> 12/5/90 gbm Add two file system selectors: one for FSSpec calls ; existing, and another for file system manager existing ; <32> 11/16/90 KON Add equates for QuickDraw versions 1.1, 1.2, 1.3, and ; OriginalQD1 [smc] ; <31> 11/16/90 KON Add equates for QuickDraw versions 1.1, 1.2, 1.3, and ; OriginalQD1 [smc] ; <30> 11/15/90 SMB Added another TextEdit version, gestaltTE5, for the new ; TextWidthHook. ; <29> 9/12/90 SAM Added final machine names for IIsi LC and Classic ; <28> 9/10/90 gbm add file system attribute selector ; <27> 8/30/90 PP gestaltFolderMgrAttr is gestaltFindFolderAttr. ; gestaltFolderMgrPresent is gestaltFindFolderPresent. ; <26> 8/13/90 JWK NEEDED FOR SIXPACK: Added NuBus and Serial Gestalt selectors. ; <25> 8/13/90 gbm add selectors for trap table bases ; <24> 8/6/90 kaz Removed CommToolbox refs to xxErrorString and cmMultiAsyncIO; ; renumbered cmSearchFix. ; <23> 7/25/90 RLC Add gestaltEasyAccessAttr and its result codes. ; <22> 6/25/90 kaz Removed 'ctbm', 'ctbu'. Added 'ditl'. ; <21> 6/23/90 kaz Fixed typo for 'term', and 'fxfr'. ; <20> 6/18/90 NC Add gestault selector for sound I/O manager ; <19> 5/20/90 ngk Add gestault selector for standard file ; <18> 5/1/90 CCH Added gestaltSquareMenuBar response bit to gestaltMiscAttr. ; <15> 4/11/90 BBH added gestaltConnMgrCMSearchFix ; <14> 4/11/90 BBH fix typo in "gestaltConnMgrErrorString" ; <13> 4/11/90 BBH added new gestalt selectors for CommToolbox managers and ; utilities ; <12> 4/11/90 dba add machineicon selector ; <11> 4/9/90 S Included PPC Gestalt Selectors. ; <10> 3/26/90 CCH Added gestaltMacIIfx equate. ; <9> 3/17/90 BBH added CommToolbox version selector (more to come later for ; specific functions) ; <8> 3/5/90 CCH Fixed tabs. ; <5> 1/22/90 CCH Added gestaltPPCToolbox and gestaltNotificationMgrAttr ; selectors. Also moved private information to ; GestaltPrivateEqu.a. ; <4> 1/21/90 ngk Changed gestaltEditionMgr to gestaltEditionMgrAttr ; <3> 1/8/90 CCH Added gestaltMisc selector. ; <2> 1/5/90 CCH NEEDED FOR 6.0.5: Added RPU and Orwell bits to hardware ; selector, added slot selectors back in temporarily, and added ; equate for 68040 FPU. ; <3.5> 12/15/89 CCH Updated Gestalt Equates, added some new 7.0 selectors. ; <3.4> 11/1/89 CCH Changed gestaltVMInstalled to gestaltVMExists. ; <3.3> 9/29/89 CCH NEEDED FOR 6.0.5: Added gestalt32BitCapable attribute to ; gestaltAddressingModeAttr selector. ; <3.2> 8/9/89 CCH NEEDED FOR 6.0.4: Changed return values for gestaltQuickdrawType ; to be version based, and changed the selector name to ; gestaltQuickdrawVersion. ; <3.1> 8/8/89 SMB NEEDED FOR 6.0.4: added definitions for gestaltTextEditVersion. ; <3.0> 8/5/89 PKE NEEDED FOR 6.0.4: - Added gestaltScriptMgrVersion, ; gestaltScriptCount selectors (for Script Manager) - Added ; gestaltTextEditVersion selector (for TextEdit) ; <2.9> 7/16/89 CCH NEEDED FOR AURORA AND 6.0.4: - Added gestaltFirstSlotNumber ; selector. - Added additional information to gestaltHardwareAttr ; selector. - Added gestaltAMU to gestaltMMUType selector. - Added ; gestaltParityAttr selector. ; <2.8> 7/10/89 CCH NEEDED FOR AURORA: - Removed gestaltFirstSlotNumber selector. ; <2.7> 6/30/89 CCH Added gestaltLowMemorySize selector. ; <2.6> 6/26/89 CCH Added gestaltFirstSlotNumber selector. ; <2.5> 6/9/89 CCH Changes: - Changed a/ux selector to be version-based. - Added ; gestaltAddressingModeAttr, gestaltAUXVersion, gestaltSlotAttr, ; gestaltSoundAttr, gestaltTimeMgrVersion, GestaltRBVAddr, ; gestaltHardwareAttr, gestaltNuBusSlotCount selectors. - Made ; result equates for attribute selectors bit numbers instead of ; masks. ; <2.4> 5/25/89 CCH Revised equates to be more consistent. ; <2.3> 5/23/89 CCH Added several new Gestalt function definitions. ; <2.2> 5/18/89 CCH Changed equate prefixes and error codes. ; <2.1> 4/20/89 CCH Added new equate for virtual RAM size. ; <2.0> 4/16/89 CCH Changed equate prefix from "G" to "z". ; <1.9> 4/3/89 CCH Added equates for international keyboards, changed names of some ; other equates. ; <1.8> 3/30/89 CCH Took out GROMSize and GInitErr equates. ; <1.7> 3/16/89 CCH Changed G24BitQD to G8BitQD. ; <1.6> 3/16/89 CCH Moved global data structure definition to Gestalt.a. ; <1.5> 3/6/89 CCH Changed unknown values to $7FFFFFFF ; <1.4> 3/6/89 CCH Changed MAXINT from $7FFF to $7FFFFFFF ; <1.3> 3/2/89 CCH Changed zNoMMU equate to zero, and similarly bumped down related ; equates. ; <1.2> 2/23/89 CCH Added Updated Gestalt Function Code and result code equates. ; <1.1> 2/22/89 CCH Started using global ptr in ExpandMem. ; <1.0> 2/21/89 CCH Adding to EASE for the first time. ************************************************************************ IF &TYPE('__INCLUDINGGESTALTEQU__') = 'UNDEFINED' THEN __INCLUDINGGESTALTEQU__ SET 1 ************************** * Gestalt error codes ************************** gestaltUnknownErr EQU -5550 ; gestalt doesn't know the answer gestaltUndefSelectorErr EQU -5551 ; undefined code was passed to Gestalt gestaltDupSelectorErr EQU -5552 ; tried to add an entry that already existed gestaltLocationErr EQU -5553 ; gestalt function ptr wasn't in sysheap ************************** * Environment Selectors ************************** gestaltVersion EQU 'vers' ; gestalt version gestaltAddressingModeAttr EQU 'addr' ; addressing mode attributes gestalt32BitAddressing EQU 0 ; using 32-bit addressing mode gestalt32BitSysZone EQU 1 ; 32-bit compatible system zone gestalt32BitCapable EQU 2 ; machine is 32-bit mode capable gestaltAliasMgrAttr EQU 'alis' ; Alias Mgr Attributes gestaltAliasMgrPresent EQU 0 ; True if the Alias Mgr is present gestaltAliasMgrSupportsRemoteAppletalk EQU 1 ; True if the Alias Mgr knows about Remote Appletalk gestaltAppleTalkVersion EQU 'atlk' ; AppleTalk version gestaltAUXVersion EQU 'a/ux' ; a/ux version, if present gestaltAUXNotPresent EQU 0 gestaltCloseViewAttr EQU 'BSDa' ; CloseView attributes gestaltCloseViewEnabled EQU 0 ; Closeview enabled (dynamic bit - returns current state) gestaltCloseViewDisplayMgrFriendly EQU 1 ; Closeview compatible with Display Manager (FUTURE) gestaltComponentMgr EQU 'cpnt' ; Component Mgr version gestaltTSMgrVersion EQU 'tsmv' ; Text Services Mgr version, if present gestaltConnMgrAttr EQU 'conn' ; connection mgr attributes gestaltConnMgrPresent EQU 0 gestaltConnMgrCMSearchFix EQU 1 ; do we have fix to CMAddSearch? gestaltConnMgrErrorString EQU 2 gestaltConnMgrMultiAsyncIO EQU 3 gestaltNativeCPUtype EQU 'cput' ; The native CPU type ; 68000 Architecture gestaltCPU68000 EQU $000 gestaltCPU68010 EQU $001 gestaltCPU68020 EQU $002 gestaltCPU68030 EQU $003 gestaltCPU68040 EQU $004 ; PowerPC Architecture gestaltCPU601 EQU $101 ; IBM 601 gestaltCPU603 EQU $103 gestaltCPU604 EQU $104 gestaltCRMAttr EQU 'crm ' ; comm resource mgr attributes gestaltCRMPresent EQU 0 gestaltCRMPersistentFix EQU 1 ; fix for persistent connections present gestaltCRMToolRsrcCalls EQU 2 gestaltCTBVersion EQU 'ctbv' ; CommToolbox version if present gestaltDBAccessMgrAttr EQU 'dbac' ; Database Access Mgr attributes gestaltDBAccessMgrPresent EQU 0 ; True if the Database Access Mgr present gestaltDictionaryMgrAttr EQU 'dict' ; Dictionary Manager attributes gestaltDictionaryMgrPresent EQU 0 ; Dictionary Manager attributes gestaltDITLExtAttr EQU 'ditl' ; AppenDITL, etc. calls from CTB gestaltDITLExtPresent EQU 0 ; True if calls are present gestaltDisplayMgrAttr EQU 'dply' ; Display Manager attributes gestaltDisplayMgrPresent EQU 0 ; True if Display Mgr is present gestaltDisplayMgrVers EQU 'dplv' ; Display Manager version gestaltEasyAccessAttr EQU 'easy' ; Easy Access attributes gestaltEasyAccessOff EQU 0 ; if Easy Access present, but off (no icon) gestaltEasyAccessOn EQU 1 ; if Easy Access "On" gestaltEasyAccessSticky EQU 2 ; if Easy Access "Sticky" gestaltEasyAccessLocked EQU 3 ; if Easy Access "Locked" gestaltEditionMgrAttr EQU 'edtn' ; Edition Mgr attributes gestaltEditionMgrPresent EQU 0 ; True if Edition Mgr present gestaltEditionMgrTranslationAware EQU 1 ; True if edition manager is translation manager aware gestaltTranslationMgrHintOrder EQU 1 ; True if hint order reversal in effect gestaltAppleEventsAttr EQU 'evnt' ; Apple Events attributes gestaltAppleEventsPresent EQU 0 ; True if Apple Events present gestaltFinderAttr EQU 'fndr' ; Finder attributes gestaltFinderDropEvent EQU 0 ; Finder recognizes drop event gestaltFinderMagicPlacement EQU 1 ; Finder supports magic icon placement gestaltFinderCallsAEProcess EQU 2 ; Finder calls AEProcessAppleEvent gestaltOSLCompliantFinder EQU 3 ; Finder is scriptable and recordable gestaltFinderSupports4GBVolumes EQU 4 ; Finder correctly handles 4GB volumes gestaltFinderHandlesCFMFailures EQU 5 ; Finder handles Code Fragment Manager errors gestaltFinderHasClippings EQU 6 ; Finder supports Drag Manager clipping files gestaltFindFolderAttr EQU 'fold' ; FindFolder attributes gestaltFindFolderPresent EQU 0 ; True if FindFolder present gestaltFontMgrAttr EQU 'font' ; Font Mgr attributes gestaltOutlineFonts EQU 0 ; True if OutLine Fonts are supported gestaltFPUType EQU 'fpu ' ; FPU type gestaltNoFPU EQU 0 ; no FPU gestalt68881 EQU 1 ; 68881 FPU gestalt68882 EQU 2 ; 68882 FPU gestalt68040FPU EQU 3 ; 68040 built-in FPU gestaltFSAttr EQU 'fs ' ; file system attributes gestaltFullExtFSDispatching EQU 0 ; has really cool new HFSDispatch dispatcher gestaltHasFSSpecCalls EQU 1 ; has FSSpec calls gestaltHasFileSystemManager EQU 2 ; has a file system manager gestaltFXfrMgrAttr EQU 'fxfr' ; file transfer manager attributes gestaltFXfrMgrPresent EQU 0 gestaltFXfrMgrMultiFile EQU 1 ; supports FTSend and FTReceive gestaltFXfrMgrErrorString EQU 2 gestaltHardwareAttr EQU 'hdwr' ; hardware attributes gestaltHasVIA1 EQU 0 ; VIA1 exists gestaltHasVIA2 EQU 1 ; VIA2 exists gestaltHasASC EQU 3 ; Apple Sound chip exists gestaltHasSCC EQU 4 ; SCC exists gestaltHasSCSI EQU 7 ; SCSI exists gestaltHasSoftPowerOff EQU 19 ; Capable of software power off gestaltHasSCSI961 EQU 21 ; 53C96 SCSI controller on internal bus <50> gestaltHasSCSI962 EQU 22 ; 53C96 SCSI controller on external bus <50> gestaltHasUniversalROM EQU 24 ; Do we gots a Universal ROM? <49> gestaltHasEnhancedLtalk EQU 30 ; Do we have Enhanced LocalTalk gestaltHelpMgrAttr EQU 'help' ; Help Mgr Attributes gestaltHelpMgrPresent EQU 0 ; true if help mgr is present gestaltHelpMgrExtensions EQU 1 ; true if help mgr extensions are installed gestaltKeyboardType EQU 'kbd ' ; keyboard type gestaltMacKbd EQU 1 gestaltMacAndPad EQU 2 gestaltMacPlusKbd EQU 3 gestaltExtADBKbd EQU 4 gestaltStdADBKbd EQU 5 gestaltPrtblADBKbd EQU 6 gestaltPrtblISOKbd EQU 7 gestaltStdISOADBKbd EQU 8 gestaltExtISOADBKbd EQU 9 gestaltADBKbdII EQU 10 gestaltADBISOKbdII EQU 11 gestaltPwrBookADBKbd EQU 12 ; <49> gestaltPwrBookISOADBKbd EQU 13 ; <49> gestaltAppleAdjustKeypad EQU 14 ; <65> gestaltAppleAdjustADBKbd EQU 15 ; <65> gestaltAppleAdjustISOKbd EQU 16 ; <65> gestaltLowMemorySize EQU 'lmem' ; size of low-memory area gestaltLogicalRAMSize EQU 'lram' ; logical RAM size gestaltMiscAttr EQU 'misc' ; miscellaneous information gestaltScrollingThrottle EQU 0 ; true if scrolling throttle on gestaltSquareMenuBar EQU 2 ; true if menu bar is square gestaltMMUType EQU 'mmu ' ; MMU type gestaltNoMMU EQU 0 ; no MMU gestaltAMU EQU 1 ; address management unit gestalt68851 EQU 2 ; 68851 PMMU gestalt68030MMU EQU 3 ; 68030 built-in MMU gestalt68040MMU EQU 4 ; 68040 built-in MMU gestaltEMMU1 EQU 5 ; Emulated MMU type 1 (Power PC systems) gestaltNotificationMgrAttr EQU 'nmgr' ; notification manager attributes gestaltNotificationPresent EQU 0 ; notification manager exists gestaltSerialAttr EQU 'ser ' ; serial attributes <26> gestaltHasGPIaToDCDa EQU 0 ; GPIa connected to DCDa <26> gestaltHasGPIaToRTxCa EQU 1 ; GPIa connected to RTxCa clock input <26> gestaltHasGPIbToDCDb EQU 2 ; GPIb connected to DCDb <26> gestaltOSAttr EQU 'os ' ; O/S attributes gestaltSysZoneGrowable EQU 0 ; system heap is growable gestaltLaunchCanReturn EQU 1 ; can return from launch gestaltLaunchFullFileSpec EQU 2 ; can launch from full file spec gestaltLaunchControl EQU 3 ; launch control support available gestaltTempMemSupport EQU 4 ; temp memory support gestaltRealTempMemory EQU 5 ; temp memory handles are real gestaltTempMemTracked EQU 6 ; temporary memory handles are tracked gestaltIPCSupport EQU 7 ; IPC support is present gestaltSysDebuggerSupport EQU 8 ; system debugger support is present ; gestaltSkiaGlobalsSwitched is #9. I don't know why it is not here gestaltBgndMouseDownSupport EQU 10 ; Background mouse down support is present gestaltOSTable EQU 'ostt' ; OS trap table base gestaltToolboxTable EQU 'tbtt' ; Toolbox trap table base gestaltExtToolboxTable EQU 'xttt' ; Extended Toolbox trap table base gestaltPCXAttr EQU 'pcxg' ; PC Exchange attributes gestaltPCXHas8and16BitFAT EQU 0 ; PC Exchange supports both 8 and 16 bit FATs gestaltPCXHasProDOS EQU 1 ; PC Exchange supports ProDOS gestaltLogicalPageSize EQU 'pgsz' ; logical page size gestaltPowerMgrAttr EQU 'powr' ; power manager attributes gestaltPMgrExists EQU 0 gestaltPMgrCPUIdle EQU 1 gestaltPMgrSCC EQU 2 gestaltPMgrSound EQU 3 gestaltPMgrDispatchExists EQU 4 gestaltPPCToolboxAttr EQU 'ppc ' ; PPC toolbox attributes ; ; PPC will return the combination of following bit fields. ; e.g. gestaltPPCSupportsRealTime +gestaltPPCSupportsIncomming + gestaltPPCSupportsOutGoing ; indicates PPC is cuurently is only supports real time delivery ; and both icoming and outgoing network sessions are allowed. ; By default local real time delivery is supported as long as PPCInit has been called. ; gestaltPPCToolboxPresent EQU $0000 ; PPC Toolbox is present Requires PPCInit to be called gestaltPPCSupportsRealTime EQU $1000 ; PPC Supports real-time deliveryy gestaltPPCSupportsStoreAndForward EQU $2000 ; PPC Store and Forward delivery gestaltPPCSupportsDontCare EQU $4000 ; PPC Supports Specification of Don't care gestaltPPCSupportsIncomming EQU $0001 ; PPC will deny incomming network requests gestaltPPCSupportsOutGoing EQU $0002 ; PPC will deny outgoing network requests gestaltProcessorType EQU 'proc' ; processor type gestalt68000 EQU 1 gestalt68010 EQU 2 gestalt68020 EQU 3 gestalt68030 EQU 4 gestalt68040 EQU 5 gestaltParityAttr EQU 'prty' ; parity attributes gestaltHasParityCapability EQU 0 ; has ability to check parity gestaltParityEnabled EQU 1 ; parity checking enabled gestaltQuickdrawVersion EQU 'qd ' ; quickdraw version gestaltOriginalQD EQU $000 ; original 1-bit QD <3.2> gestalt8BitQD EQU $100 ; 8-bit color QD <3.2> gestalt32BitQD EQU $200 ; 32-bit color QD <3.2> gestalt32BitQD11 EQU $210 ; 32-bit color QDv1.1 <31> gestalt32BitQD12 EQU $220 ; 32-bit color QDv1.2 <31> gestalt32BitQD13 EQU $230 ; 32-bit color QDv1.3 <31> gestaltQuickdrawFeatures EQU 'qdrw' ; quickdraw features <37> gestaltHasColor EQU 0 ; color quickdraw present <37> gestaltHasDeepGWorlds EQU 1 ; GWorlds can be deeper than 1-bit <37> gestaltHasDirectPixMaps EQU 2 ; PixMaps can be direct (16 or 32 bit) <37> gestaltHasGrayishTextOr EQU 3 ; supports text mode grayishTextOr <37> gestaltSupportsMirroring Equ 4 ; Supports video mirroring via the Display Manager. gestaltPhysicalRAMSize EQU 'ram ' ; physical RAM size gestaltRBVAddr EQU 'rbv ' ; RBV base address gestaltSCCReadAddr EQU 'sccr' ; SCC read base address gestaltSCCWriteAddr EQU 'sccw' ; SCC write base address gestaltPopupAttr EQU 'pop!' ; popup cdef attributes gestaltPopupPresent EQU 0 gestaltResourceMgrAttr EQU 'rsrc' ; Resource Mgr attributes gestaltPartialRsrcs EQU 0 ; True if partial resources exist gestaltRealtimeMgrAttr EQU 'rtmr' ; Realtime manager attributes WS gestaltRealtimeMgrPresent EQU 0 ; true if Realtime manager is present WS gestaltScrapMgrAttr EQU 'scra' ; Scrap manager attributes gestaltScrapMgrTranslationAware EQU 0 ; True if scrap manager is translation manager aware gestaltScriptMgrVersion EQU 'scri' ; Script Manager version number <08/05/89 pke> gestaltScriptCount EQU 'scr#' ; number of active script systems <08/05/89 pke> gestaltSlotAttr EQU 'slot' ; slot manager attributes gestaltSlotMgrExists EQU 0 ; true if slot mgr exists gestaltNuBusPresent EQU 1 ; NuBus slots are present gestaltSESlotPresent EQU 2 ; SE PDS slot present gestaltSE30SlotPresent EQU 3 ; SE/30 slot present gestaltPortableSlotPresent EQU 4 ; Portable's slot present gestaltNuBusConnectors EQU 'sltc' ; bitmap of slots with NuBus connectors <26> gestaltFirstSlotNumber EQU 'slt1' ; returns first physical slot gestaltSoundAttr EQU 'snd ' ; sound attributes gestaltStereoCapability EQU 0 ; sound hardware has stereo capability gestaltStereoMixing EQU 1 ; stereo mixing on external speaker gestaltSoundIOMgrPresent EQU 3 ; The Sound I/O Manager is present gestaltBuiltInSoundInput EQU 4 ; built-in Sound Input hardware is present gestaltHasSoundInputDevice EQU 5 ; Sound Input device available gestaltPlayAndRecord EQU 6 ; built-in hardware can play and record simultaneously gestalt16BitSoundIO EQU 7 ; sound hardware can play and record 16-bit samples gestaltStereoInput EQU 8 ; sound hardware can record stereo gestaltLineLevelInput EQU 9 ; sound input port requires line level ; the following bits are not defined prior to Sound Mgr 3.0 gestaltSndPlayDoubleBuffer EQU 10 ; SndPlayDoubleBuffer available, set by Sound Mgr 3.0 and later gestaltMultiChannels EQU 11 ; multiple channel support, set by Sound Mgr 3.0 and later gestalt16BitAudioSupport EQU 12 ; 16 bit audio data supported, set by Sound Mgr 3.0 and later gestaltSpeechAttr EQU 'ttsc' ; Speech Manager attributes gestaltSpeechMgrPresent EQU 0 ; bit set indicates that Speech Manager exists gestaltSysArchitecture EQU 'sysa' ; System architecture gestalt68k EQU 1 ; Motorola MC68k architecture gestaltPowerPC EQU 2 ; IBM PowerPC architecture gestaltStdNBPAttr EQU 'nlup' ; standard nbp attributes gestaltStdNBPPresent EQU 0 gestaltStandardFileAttr EQU 'stdf' ; Standard File attributes gestaltStandardFile58 EQU 0 ; True if selectors 5-8 (StandardPutFile-CustomGetFile) are supported gestaltStandardFileTranslationAware EQU 1 ; True if standard file is translation manager aware gestaltStandardFileHasColorIcons EQU 2 ; True if standard file has 16x16 color icons gestaltTextEditVersion EQU 'te ' ; TextEdit version number gestaltTE1 EQU 1 ; TextEdit in MacIIci ROM gestaltTE2 EQU 2 ; TextEdit with 6.0.4 Script Systems on MacIIci (Script bug fixes for MacIIci) <8Aug89smb> gestaltTE3 EQU 3 ; TextEdit with 6.0.4 Script Systems all but MacIIci gestaltTE4 EQU 4 ; TextEdit in Big Bang gestaltTE5 EQU 5 ; TextWidthHook available in TextEdit gestaltTermMgrAttr EQU 'term' ; terminal mgr attributes gestaltTermMgrPresent EQU 0 gestaltTermMgrErrorString EQU 2 gestaltTimeMgrVersion EQU 'tmgr' ; time manager attributes gestaltStandardTimeMgr EQU 1 ; standard time mgr is present gestaltRevisedTimeMgr EQU 2 ; revised time mgr is present gestaltExtendedTimeMgr EQU 3 ; extended time mgr is present gestaltVIA1Addr EQU 'via1' ; VIA 1 base address gestaltVIA2Addr EQU 'via2' ; VIA 2 base address gestaltVMAttr EQU 'vm ' ; virtual memory attributes gestaltVMPresent EQU 0 ; virtual memory is present gestaltTranslationAttr EQU 'xlat' ; Translation manager attributes gestaltTranslationMgrExists EQU 0 ; TRUE if translation manager exists gestaltIconUtilitiesAttr EQU 'icon' ; Icon Utilities attributes gestaltIconUtilities EQU 'icon' ; Recreated for old code gestaltIconUtilitiesPresent EQU 0 ; true if icon utilities are present gestaltCompressionMgr EQU 'icmp' ; returns version of the Image Compression Manager gestaltQuickTime EQU 'qtim' ; returns version of QuickTime gestaltQuickTimeFeatures EQU 'qtrs' ; return QuickTime features gestaltPPCQuickTimeLibPresent EQU 0 gestaltSCSI EQU 'scsi' ; SCSI Manager attributes gestaltAsyncSCSI EQU 0 ; Supports Asynchronous SCSI gestaltAsyncSCSIInROM EQU 1 ; Async scsi is in ROM (available for booting) gestaltSCSISlotBoot EQU 2 ; This ROM supports Slot-style SCSI boots ************************** * Info-only Selectors ************************** gestaltMachineType EQU 'mach' ; machine type gestaltClassic EQU 1 gestaltMacXL EQU 2 gestaltMac512KE EQU 3 gestaltMacPlus EQU 4 gestaltMacSE EQU 5 gestaltMacII EQU 6 gestaltMacIIx EQU 7 gestaltMacIIcx EQU 8 gestaltMacSE30 EQU 9 gestaltPortable EQU 10 gestaltMacIIci EQU 11 gestaltMacIIfx EQU 13 gestaltMacClassic EQU 17 ; <29> gestaltMacIIsi EQU 18 ; <29> gestaltMacLC EQU 19 ; <29> gestaltQuadra900 EQU 20 ; <49> gestaltPowerBook170 EQU 21 ; <49> gestaltQuadra700 EQU 22 ; <49> gestaltClassicII EQU 23 ; <49> gestaltPowerBook100 EQU 24 ; <49> gestaltPowerBook140 EQU 25 ; <49> gestaltQuadra950 EQU 26 ; <53> gestaltMacLCIII EQU 27 ; gestaltPowerBookDuo210 EQU 29 ;

gestaltCentris650 EQU 30 ; gestaltPowerBookDuo230 EQU 32 ;

gestaltPowerBook180 EQU 33 ;

gestaltPowerBook160 EQU 34 ;

gestaltQuadra800 EQU 35 ; gestaltMacLCII EQU 37 ; <52> gestaltPowerBookDuo250 EQU 38 ; gestaltMacIIvx EQU 45 ; gestaltColorClassic EQU 49 ; gestaltPowerbook180c EQU 50 ; gestaltCentris610 EQU 52 ; gestaltPowerBook145 EQU 54 ; <55> gestaltLC520 EQU 56 ; gestaltCentris660AV EQU 60 ; gestaltQuadra660AV EQU gestaltCentris660AV; thank you, Ian Diery gestaltPowerBookDuo270C EQU 77 ; gestaltQuadra840AV EQU 78 ; gestaltMachineIcon EQU 'micn' ; machine icon gestaltROMSize EQU 'rom ' ; ROM size gestaltROMVersion EQU 'romv' ; ROM version gestaltSystemVersion EQU 'sysv' ; system version gestaltInternalDisplay EQU 'idsp' ; slot number of internal display location IF &TYPE('_NewGestaltValue') = 'UNDEFINED' THEN MACRO _NewGestaltValue move.w #$0401,d0 dc.w $ABF1 ENDM MACRO _ReplaceGestaltValue move.w #$0402,d0 dc.w $ABF1 ENDM MACRO _DeleteGestaltValue move.w #$0203,d0 dc.w $ABF1 ENDM ENDIF ; _NewGestaltValue ENDIF ; ...already included