INT 31H 0009H: Set Descriptor Access Rights

                                                    Compatibility: DPMI 0.9+ 
 Expects: AX    0009H
          BX    selector
          CL    access rights/type byte
          CH    (386+) extended access rights/type byte
          ──────────────────────────────────────────────────────────────────
 Returns: CF    NC (clear) if successful; else AX = DPMI Error Code
          ──────────────────────────────────────────────────────────────────
    Info: This modifies the access rights and/or type of the LDT descriptor
          identified by the selector in BX.

       CL is in this form:
          ┌7┬6┬5┬4┬3┬2┬1┬0┐
          │pdpl1cxwa│
          └╥┴─┴─┴╥┴╥┴╥┴╥┴╥┘ bit  mask
           ║ ╚╦╝ ║ ║ ║ ║ ╚═►  0: 01H 1=accessed; 0=not accessed
           ║  ║  ║ ║ ║ ╚═══►  1: 02H 1=read/write (must be 0 in code segs)
           ║  ║  ║ ║ ╚═════►  2: 04H 1=expand down; 0=expand up
           ║  ║  ║ ╚═══════►  3: 08H 1=code seg; 0=data seg
           ║  ║  ╚═════════►  4: 10H must be 1
           ║  ╚════════════►5-6: 60H CPL (protection level) must=caller
           ╚═══════════════►  7: 80H 1=present; 0=absent

       CH is ignored on 80286.  On 386+, its bits mean:
          ┌7┬6┬5┬4┬3┬2┬1┬0┐
          │gb0v│0 0 0 0│
          └╥┴╥┴╥┴╥┴─┴─┴─┴─┘ bit  mask
           ║ ║ ║ ║ ╚═════╩═►0-3: 0fH ignored
           ║ ║ ║ ╚═════════►  4: 10H AVL can be 0 or 1
           ║ ║ ╚═══════════►  5: 20H must be 0
           ║ ╚═════════════►  6: 40H 1=default to 32-bit; 0=default to 16
           ╚═══════════════►  7: 80H 1=page granularity; 0=byte granularity

    Note: There is no corresponding fn to query the current settings.  Use
          the LAR opcode to do so.

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