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).

INT 2fH 4bxxH (switcher functions)
- -