Offset Size Contents
  ▀▀▀▀▀▀ ▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  +0       2  wApiMajor    task-switching protocol version (major)
  +2       2  wApiMinor    task-switching protocol version (minor)
  +4       2  wProgMajor   task-switcher program version (major)
  +6       2  wProgMinor   task-switcher program version (minor)
  +8       2  wSwitcherID  ID number of this task switcher
 +0aH      2  wFlags       operation flags
 +0cH      4  pfszName     addr of ASCIIZ name of switcher program
 +10H      4  pfPrevSwchr  entry address of next task switcher in chain (or
                           0000:0000 if last in chain)
           20              size of an SwVersionRec structure

   wApiMajor  and...
   wApiMinor  identify the highest version of task-switching protocol
              supported by this switcher.  For instance, 3.10 would have
              wApiMajor=0003H and wApiMinor=000aH.
  wProgMajor  and...
  wProgMinor  identify the version of the task switcher program; using the
              same format as the API fields.

 wSwitcherID  is the ID number of this switcher, as obtained via an
              INT 2fH 4b03H (allocate switcher ID) call.

      wFlags  Only bit 0 has meaning.  When bit 0 is 1, then this switcher
              is currently disabled.  All other bits must be 0.

    pfszName  Is the far address of an ASCIIZ string of the name of this

 pfPrevSwchr  Is the entry address of another task switcher.  When this
              field is 0000:0000, it's the end of the line.  Otherwise, you
              can get info about that switcher by using SwSrvcFn 0000H (get
              version) via a call to this address.

 This structure is obtained via SwSrvcFn 0000H which could be called after
 using INT 2fH 4b02H (detect switcher).

See Also: Switcher Services and Notifications
          INT 2fH 4bxxH (switcher functions)