[comp.sys.ibm.pc] Interrupt list 3 of 3

ralf@B.GP.CS.CMU.EDU (Ralf Brown) (12/06/87)

Remove headers and trailers and concatenate onto part 2.  This part continues
the INT 67 - Get/Set Handle Name function.

*-*-*---------cut-------------cut-------------cut-------------*-*-*
        AH = 53h
        AL = subfunction
            00h get handle name
               ES:DI = pointer to 8-byte handle name array
            01h set handle name
               DS:SI = pointer to 8-byte handle name
        DX = handle
Return: AH = status
            00h successful
            80h internal error
            81h hardware malfunction
            83h invalid handle
            84h undefined function requested
            8Fh undefined subfunction
            A1h duplicate handle name
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Get Handle Directory
        AH = 54h
        AL = subfunction
            00h get handle directory
               ES:DI = pointer to buffer for handle directory
            01h search for named handle
               DS:SI = pointer to 8-byte name
            02h get total number of handles
Return: AL = number of entries in handle directory (subfunction 00h)
        DX = value of named handle (subfunction 01h)
        BX = total number of handles (subfunction 02h)
        AH = status
            00h successful
            80h internal error
            81h hardware malfunction
            84h undefined function requested
            8Fh undefined subfunction
            A0h no such handle name
            A1h a handle found had no name
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Alter Page Map and Jump
        AH = 55h
        AL = subfunction
            00h physical page numbers provided by caller
            01h segment addresses provided by caller
        DX = handle
        DS:SI = pointer to structure containing map and jump address
Return: (at target address unless error)
        AH = status
            00h successful
            80h internal error
            81h hardware failure
            83h invalid handle
            84h undefined function requested
            8Ah invalid logical page number encountered
            8Bh invalid physical page number encountered
            8Fh invalid subfunction
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Alter Page Map and Call
        AH = 56h
        AL = subfunction
            00h physical page numbers provided by caller
               DX = handle
               DS:SI = pointer to structure containing page map and call address
            01h segment addresses provided by caller
               DX = handle
               DS:SI = pointer to structure containing page map and call address
            02h get page map stack space required
Return: (if successful, the target address is called.  Use a RETF to return and
         restore mapping context)
        BX = stack space required (subfunction 02h)
        AH = status
            00h successful
            80h internal error
            81h hardware failure
            83h invalid handle
            84h undefined function requested
            8Ah invalid logical page number encountered
            8Bh invalid physical page number encountered
            8Fh undefined subfunction
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Move/Exchange Memory Region
        AH = 57h
        AL = subfunction
            00h move memory region
            01h exchange memory region
        DS:SI = pointer to structure describing source and destination
Return: AH = status
            00h successful
            80h internal error
            81h hardware failure
            83h invalid handle
            84h undefined function requested
            8Ah invalid logical page number encountered
            8Fh undefined subfunction
            92h successful, but a portion of the source region has been
                overwritten
            93h length of source or destination region exceeds length of region
                allocated to either source or destination handle
            94h conventional and expanded memory regions overlap
            95h offset within logical page exceeds size of logical page
            96h region length exceeds 1M
            97h source and destination EMS regions have same handle and overlap
            98h memory source or destination type undefined
            A2h attempted to wrap around 1M conventional address space
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Get Mappable Physical Address Array
        AH = 58h
        AL = subfunction
            00h get mappable physical address array
               ES:DI = pointer to buffer to be filled with array
            01h get number of entries in m.p.a. array
Return: CX = number of entries in array
        AH = status
            00h successful
            80h internal error
            81h hardware failure
            84h undefined function requested
            8Fh undefined subfunction
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Get Expanded Memory Hardware Information
        AH = 59h
        AL = subfunction
            00h get hardware configuration array
               ES:DI = pointer to buffer to be filled with array
            01h get unallocated raw page count
Return: BX = unallocated raw pages (subfunction 01h)
        DX = total raw pages (subfunction 01h)
        AH = status
            00h successful
            80h internal error
            81h hardware failure
            84h undefined function requested
            8Fh undefined subfunction
            A4h access denied by operating system
Note: subfunction 00h is for use by operating systems only, and can be
      enabled or disabled at any time by the operating system
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Allocate Standard/Raw Pages
        AH = 5Ah
        AL = subfunction
            00h allocate standard pages
            01h allocate raw pages
        BX = number of pages to allocate
Return: DX = handle
        AH = status
            00h successful
            80h internal error
            81h hardware failure
            84h undefined function requested
            85h no more handles available
            87h insufficient memory pages in system
            88h insufficient memory pages available
            8Fh undefined subfunction
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Alternate Map Register Set
        AH = 5Bh
        AL = subfunction
            00h get alternate map register set
            01h set alternate map register set
               BL = new alternate map register set number
               ES:DI = pointer to map register context save area if BL=0
            02h get alternate map save array size
            03h allocate alternate map register set
            04h deallocate alternate map register set
               BL = number of alternate map register set
Return: BL = current active alternate map register set number if nonzero (AL=0)
        ES:DI = pointer to a map register context save area if BL=0 (AL=0)
        DX = array size in bytes (subfunction 02h)
        BL = number of alternate map register set; zero if not supported (AL=3)
        AH = status
            00h successful
            80h internal error
            81h hardware malfunction
            84h undefined function requested
            8Fh undefined subfunction
            9Ah specified alternate map register set not supported
            9Bh all alternate map register sets currently allocated
            9Ch alternate map register sets not supported
            9Dh undefined or unallocated alternate map register set
            A3h source array corrupted
            A4h operating system denied access
Note: this function is for use by operating systems only, and can be
      enabled or disabled at any time by the operating system
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Alternate Map Register Set - DMA registers
        AH = 5Bh
        AL = subfunction
            05h allocate DMA register set
            06h enable DMA on alternate map register set
               BL = DMA register set number
               DL = DMA channel number
            07h disable DMA on alternate map register set
               BL = DMA register set number
            08h deallocate DMA register set
               BL = DMA register set number
Return: BL = DMA register set number; zero if not supported (subfunction 05h)
        AH = status
            00h successful
            80h internal error
            81h hardware malfunction
            84h undefined function requested
            8Fh undefined subfunction
            9Ah specified DMA register set not supported
            9Bh all DMA register sets currently allocated
            9Ch alternate DMA sets not supported
            9Dh undefined or unallocated DMA register set
            9Eh dedicated DMA channels not supported
            9Fh specified dedicated DMA channel not supported
            A3h source array corrupted
            A4h operating system denied access
Note: this function is for use by operating systems only, and can be
      enabled or disabled at any time by the operating system
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Prepare Expanded Memory Hardware for Warm Boot
        AH = 5Ch
Return: AH = status
            00h successful
            80h internal error
            81h hardware malfunction
            84h undefined function requested
-----------------------------------------------------------
INT 67 - LIM EMS 4.0 - Enable/Disable OS Function Set Functions
        AH = 5Dh
        AL = subfunction
            00h enable OS Function Set
            01h disable OS Function Set
            02h return access key (resets memory manager, returns access key at
                next invocation)
        BX,CX = access key returned by first invocation
Return: BX,CX = access key, returned only on first invocation of function
        AH = status
            00h successful
            80h internal error
            81h hardware malfunction
            84h undefined function requested
            8Fh undefined subfunction
            A4h operating system denied access
-----------------------------------------------------------
INT 68 -> unused
-----------------------------------------------------------
INT 69 -> unused
-----------------------------------------------------------
INT 6A -> unused
-----------------------------------------------------------
INT 6B -> unused
-----------------------------------------------------------
INT 6C -> unused
-----------------------------------------------------------
INT 6D -> unused
-----------------------------------------------------------
INT 6E -> unused
-----------------------------------------------------------
INT 6F -> unused
-----------------------------------------------------------
INT 70 thru 77 - AT Vectored Hardware Lines
        IRQ8    -       real-time clock
        IRQ9    -       LAN adapter 1 (rerouted to INT 0Ah by BIOS)
        IRQ10   -       reserved
        IRQ11   -       reserved
        IRQ12   -       reserved
        IRQ13   -       80287 error (rerouted to INT 2 by BIOS)
        IRQ14   -       fixed disk
        IRQ15   -       reserved
-----------------------------------------------------------
INT 86 - Relocated (by NETBIOS) INT 18
-----------------------------------------------------------
INT E4 - Logitech Modula v2.0 - MonitorEntry
        AX = 5
        BX = priority
-----------------------------------------------------------
INT E4 - Logitech Modula v2.0 - MonitorExit
        AX = 6
-----------------------------------------------------------
INT F8 - INTERVAL TIMER (10 MSEC)
-----------------------------------------------------------
INT FA - USART READY (RS-232C)
-----------------------------------------------------------
INT FB - USART Rx READY (keyboard)
-----------------------------------------------------------
*-*-*-----------cut--------------EOF---------------cut--------------*-*-*
-- 
{harvard,uunet,ucbvax}!b.gp.cs.cmu.edu!ralf -=-=- AT&T: (412)268-3053 (school) 
ARPA: RALF@B.GP.CS.CMU.EDU |"Tolerance means excusing the mistakes others make.
FIDO: Ralf Brown at 129/31 | Tact means not noticing them." --Arthur Schnitzler
BITnet: RALF%B.GP.CS.CMU.EDU@CMUCCVMA -=-=- DISCLAIMER? I claimed something?