Compatibility: 6.0+
Expects: AX    4404H (INT 21H IOCTL Read service number)
BL    any compressed drive number (1=A, 2=B, etc)
CX    10 (size of a DsIoctlRec; see below)
DS:DX address of a DsIoctlRec with an 'I' (ASCII 49H) in
the bCmdCode field)
                                                                  
Returns: DS:DX bResult contains a DoubleSpace API Error Code (00H=success)
                                                                  
Info: DoubleSpace maintains internal caches for its cluster data,
BitFAT and MDFAT data (see CVF Layout).

This IOCTL fn forces DoubleSpace to update the CVF  on disk to
reflect the currently-cached data AND to invalidate its cache (so
it will read future data requests from the disk).

This is handy for disk utility programs which need to ensure that
changes they make to a CVF are recognized immediately.

DS:DX points to a DsIoctlRec as follows:

DsIoctlRec
Offset Size Contents
                                                               
+0      2  abSig       must be 444dH ('M','D')
+2      1  bCmd        must be 46H ('I') flush & Invalidate
+3      2  bResult     returns a DoubleSpace API Error Code
+5      5  res         (reserved; 0)
10              size of a DsIoctlRec structure

To use this fn, set up the packet and the registers, and call
INT 21H.  See DOS fn 44H (device I/O Control) for related DOS
functions.

On return, check bResult for an error code.  The value 4f4bH
('OK') indicates success.

- -

DoubleSpace IOCTL fn 'I': Flush and Invalidate Cache