___________________________________
* *
* Useful Mac OS Gestalt Selectors *
*___________________________________*
Note: all selector values are four bytes big endian in length
* _Name_
-> _Selector_Name_ _Type_Name_ _API_call_
-> _Possible_Values_
* Component Manager
-> Version 'cpnt' - gestaltComponentMgr
-> Available = 0
* Image Compression Manager
-> Version 'icmp' - gestaltCompressionMgr
-> Available = 0
* Display Manager
-> Version 'dplv' - gestaltDisplayMgrVers
-> hex version = xxxx.yy.zz
-> Options 'dply' - gestaltDisplayMgrAttr
-> Available = bit 0
* Font Manager
-> Options 'font' - gestaltFontMgrAttr
-> Supports Outline (TrueType) Fonts = bit 0
* Native CPU
-> Type 'cput' - gestaltNativeCPUtype
-> 680x0 CPU = decimal 0 - 4
-> PPC60x CPU = 0x0101 , 0x0103 , 0x0104
-> PPC603e CPU = 0x0106
-> PPC603ev CPU = 0x0107
-> PPC G3 CPU = 0x0108
-> PPC604e CPU = 0x0109
-> PPC604ev CPU = 0x010A
-> PPC G4 CPU = 0x010C
-> Intel 486 CPU = 'i486'
-> Intel Pentium CPUs = 'i586' , 'i5pr' , 'i5ii' , etc
-> Any Intel CPU = 'ixxx'
* Mac CPU Type
-> Code 'proc' - gestaltProcessorType
-> Available = decimal 0
-> 680x0 CPUs = decimal 1 - 5
* Mac Model
-> Code 'mach' - gestaltMachineType
-> see Inside Macintosh: Operating System Utilities
* Mac OS System
-> Version 'sysv' - gestaltSystemVersion
-> hex version = xxxxxx.y.z eg. 0x0904; 0x0860; 0x0850; 0x0810; 0x0760
* Installed RAM
-> Decimal Size 'ram ' - gestaltPhysicalRAMSize
* Available RAM after VM and any display RAM used
-> Decimal Size 'lram' - gestaltLogicalRAMSize
* Low Memory/System Heap memory
-> Decimal Size 'lmem' - gestaltLowMemorySize
* QuickDraw
-> Version 'qd ' - gestaltQuickdrawVersion
-> hex version = xxxxxx.y.z
-> Black/White = decimal 0
-> 8-bit color 1.x = 0x00000100
-> 32-bit color 2.x = 0x00000200
-> Options 'qdrw' - gestaltQuickdrawFeatures
-> Color Available = bit 0
-> Color Graphic Worlds = bit 1
-> Direct 16/32-bit Pixal Maps = bit 2
-> Greyish text mode available = bit 3
-> Mirroring supported = bit 4
* QuickTime
-> Version 'qtim' - gestaltQuickTime
-> hex version = vv.w.x.yy.zz eg. 0x04128000; 0x0411; 0x04108000; 0x04038000; 0x03028000
- 2 bytes version format is decimal byte release; hex byte revision/fix
- 2 bytes test version format is hex byte stage; decimal byte stage level
- hex byte stages are development = 0x20; alpha = 0x40; beta = 0x60; release = 0x80
* Sound Manager
-> Version 'Sndv'
-> hex version = vv.w.x.yy.zz eg. 0x03658000
- 2 bytes version format is decimal byte release; hex byte revision/fix
- 2 bytes test version format is hex byte stage; decimal byte stage level
- hex byte stages are development = 0x20; alpha = 0x40; beta = 0x60; release = 0x80
* Sound Manager
-> Options 'snd ' - gestaltSoundAttr
-> Stereo Available = bit 0
-> Stereo Mixing = bit 1
-> Input available = bit 3
-> Has built-in input = bit 4
-> Has input = bit 5
-> Play/Record simultaneously = bit 6
-> Play/Record 16-bit = bit 7
-> Record Stereo = bit 8
-> Has playback double buffer = bit 10
-> Has multi channel = bit 11
-> 16-bit audio data = bit 12
* Thread Manager
-> Options 'thds' - gestaltThreadMgrAtt
-> Available = bit 0
-> exact match creation = bit 1
-> shared library = bit 2
* Gestalt
-> Version 'vers' - gestaltVersion
-> unsigned decimal
* Virtual Memory
-> Options 'vm ' - gestaltVMAttr
-> Active = bit 0
               (
geocities.com/xhelmboyx/quicktime)                   (
geocities.com/xhelmboyx)