Compatibility: 5.0+
Expects: AX    4B01H  (INT 2fH)
CX:DX address of switcher service function handler
ES:BX 0000:0000 (on initial call; see below)
...or...
address of a SwCallbackInfoRec needing processing (when
intercepting this INT 2fH fn; see below)
                                                                  
Returns: ES:BX 0000:0000 (on initial call)
...or...
address of a local SwCallBackInfoRec (when intercepting)
                                                                  
Info: This fn creates a linked list of notification function handlers.
Applications which need to be notified of task-switcher
activities may intercept this fn and process subsequent calls
(made by other programs) as follows:

If you don't need to process switcher notifications, just JMP to
the previous INT 2fH handler.

If you do need notifications, your INT 2fH handler should:

  First, chain to any previously-installed handlers by pushing
the FLAGS register and performing a FAR CALL to the previous
handler.

  On return from that CALL, create a SwCallbackInfoRec from local
memory and fill it in (including the address of your code that
will handle switcher notifications).   Copy the returned value
of ES:BX into the pfNextHandler field of the structure.

  Place the address of your own SwCallbackInfoRec into ES:BX and
execute an IRET.

These steps result in a chain of INT 2fH handlers, each of which
can process subsequently-installed handlers.

- -

INT 2fH 4B01H: Build Notification Chain