INT 2fH 4a11H BX=0005H: Mount Dblspace Drive

                                                         Compatibility: 6.0+ 
 Expects: AX    4a11H (mux number)
          BX    0005H (DoubleSpace fn code)
          DL    drive number to assign to CVF (0=A, 1=B, etc)
          ES:SI addr of DsActivateRec (undocumented; see below)
          ──────────────────────────────────────────────────────────────────
 Returns: ES:SI bErrCode field is DoubleSpace API Error Code (00H=success)
          ──────────────────────────────────────────────────────────────────
    Info: The documentation for this fn is incomplete--Microsoft explains
          that it is "very, very complicated."  It involves constructing a
          file fragment list, recomputing the BitFAT, and checking for
          MDFAT crosslinks.

          We are told that the best way to mount a drive is to spawn a copy
          of DBLSPACE.EXE, using a command line with the following syntax:

             DBLSPACE.EXE /MOUNT[=seq] host_drv [/NEWDRIVE=new_drv]

          For instance...

             DBLSPACE.EXE /MOUNT=1 C: /NEWDRIVE=H

          ...will mount the CVF named C:\DBLSPACE.001 as drive H.  Keep in
          mind the exception Dblspace makes when mounting a .000 volume; in
          that case, it automatically swaps the host ID with the compressed
          volume ID.

    ES:DI on entry, ES:DI must point to a local activation record.  The
          available documentation describes only the first few fields of
          this structure, as follows:

          DsActivateRec
            Offset Size Contents
            ▀▀▀▀▀▀ ▀▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
             +0      2  abSig       must be 444dH ('M','D')
             +2      1  bCmdCode    must be 4dH ('M') Mount command
             +3      1  bResult     returns a DoubleSpace API Error Code
             +4      1  bHostDrvNo  host drive number (0=A, 1=B, etc.)
             +5      ?  rDiskUnit   undocumented structure goes here
                                    (different for DOS 6.0 and DOS 6.2)
                    5+?             length of DsActivateRec (undocumented)

          We don't have documentation on the rDiskUnit structure (and we
          are told it is complicated and changed with DOS 6.2), so we can't
          use this call.  We do know that DBLSPACE.BIN allocates a number
          of them, depending upon the MaxRemovableDrives setting in
          DBLSPACE.INI (see INT 2fH 4a11H 0009H).

          On entry, the bHostDrvNo field contains the drive number of the
          host drive and (presumably), something in rDiskUnit identifies
          the CVF name (or sequence number).

          On return, the bResult field contains 00H if the operation was
          successful or a DoubleSpace API Error Code if the volume could
          not be mounted.

    Note: This looks like a wrapper for an undocumented IOCTL call.
          Compare to DS IOCTL 'F' and DS IOCTL 'I'.

See Also: DoubleSpace Overview
          DoubleSpace API
          INT 2fH: Multiplex Interrupt
          DOS Functions
                                    -♦-