___________________________________
            *                                   *
            *  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

    Source: geocities.com/xhelmboyx/quicktime/components

               ( geocities.com/xhelmboyx/quicktime)                   ( geocities.com/xhelmboyx)