INT 10H 1c01H: VGA Save Video State

                                                          Compatibility: VGA 
 Expects: AX    1c01H
          CX    type(s) of video-state info to save (see below)
          ES:BX address of buffer to hold video-state info
          ──────────────────────────────────────────────────────────────────
 Returns: AL    1cH (if this fn is supported)
          ──────────────────────────────────────────────────────────────────
    Info: This saves the current state of the VGA video system.  Use
          INT 10H 1c02H to restore the system state later on.

       CX is a set of bit-flags indicating what types of video-state
          information you need to save:
           1 1
          ╓5┬4┬  ┬7┬6┬5┬4┬3┬2┬1┬0╖
          ║0 0•••│0 0 0 0 0│cdh║
          ╙─┴─┴  ┴─┴─┴─┴─┴─┴╥┴╥┴╥╜ bit mask
                            ║ ║ ╚═► 0: 01H  video hardware state info
                            ║ ╚═══► 1: 02H  video BIOS data area info
                            ╚═════► 2: 04H  DAC state and color registers

    ES:BX The size of the buffer that this address varies, depending upon
          the value in CX.  Be sure to use INT 10H 1c00H (with CX having
          the same value!) to obtain the required size and then be sure
          your buffer is large enough to hold the returned information.

          The layout of the video-state information is not documented.

   Notes: This is very handy for task-switching software such as the DOS
          Shell and can be useful in systems that switch in-and-out of
          graphics modes.

          Alas, EGA, CGAs, and MDAs do not support this fn, so if your
          program needs to save/restore the video state for other types of
          video systems, you still need to do some manual labor to collect
          the information.

See Also: INT 10H 1cH (VGA Save/Restore Functions)
          INT 10H: Video Services
          EGA/VGA Data Areas
                                    -♦-