INT 16 - K3PLUS v6.00+ (API(Application Program[ming] Interface) The defined set of calls which a program may make to interact with or request services of the operating system or environment under which it is running. Because the inputs and outputs of the calls are well-defined, a program using the API can continue using the identical calls even if the internal organization of the program providing the API changes. v2.0+) - GET VERSION INFORMATION AX = AF4Dh BX = 4B33h ('K3') Return: AL = 50h if installed BX = K3 version DX = API(Application Program[ming] Interface) The defined set of calls which a program may make to interact with or request services of the operating system or environment under which it is running. Because the inputs and outputs of the calls are well-defined, a program using the API can continue using the identical calls even if the internal organization of the program providing the API changes. version ES:CX -> K3 structure (version-dependent) (see #00608) Program: K3PLUS is an extended keyboard driver by Matthias Paul and Axel C. Frinke, originally based on the K3 extended German keyboard driver by Martin Gerdes published in c't magazine in 1988 SeeAlso: AX=AF20h,AX=AF50h,AX=AF80h,AX=AF82h/BX=4B33h,INT 2F/AX=D44Fh/BX=0000h SeeAlso: INT 2F/AX=ED58h Index: installation check;K3PLUS Format of internal K3 structure: Offset Size Description (Table 00608) 00h 3 BYTEs signature "K3$" 03h BYTE length of structure, including this byte and signature 04h WORD compiler switch option flags A (see #00609) 06h WORD compiler switch option flags B (see #00610) 08h BYTE internal flags A (see #00611) 09h BYTE internal flags B (see #00612) 0Ah WORD DOS version recorded at startup 0Ch WORD "ActTypeSpeed" 0Eh WORD last Keyboard-ID sent 41ABh translated, 83ABh native (pass-through) 10h WORD offset of K3TAB Special 12h WORD offset of K3TAB German 14h WORD offset of K3TAB Alt 16h WORD offset of K3TAB AltGr 18h WORD offset of K3TAB Ctrl 1Ah WORD offset of K3TAB NPad 1Ch WORD offset of K3TAB CtrlNPad 1Eh WORD offset of K3TAB AltNPad 20h WORD offset of K3TAB ApoTbl or 0000h 22h WORD offset of K3TAB UmlautTbl or 0000h 24h WORD offset of K3TAB UmlautTblExp or 0000h 26h WORD length of video mode table 28h WORD offset of VidMdTbl or 0000h 2Ah BYTE '$' end marker Bitfields for K3PLUS compiler switch option flags A: Bit(s) Description (Table 00609) 15 GuINT16Fct2 (general use of INT 16 function 2) 14 Int15df (INT 15 has to be predefined) 13 GuAltNP (general use of Alt Numpad) 12 SupAT (ATs+ supported) 11 GuINT16Fct3 (general use of INT 16 function 3) 10 GuINT16Ret (general use of INT16 bad function return) 9-8 Layout (0-2, 3 reserved; 0=PCIBM PC, 1=ATIBM PC AT, 2=MF) 7 ForceMF (force MF decode without read-ID) 6 KXlate (translate keys for special keyboard) 5 UmlautX (umlaut translation capability included) 4 ApoX (translate apostrophe) 3 DoINT16 (INT 16 handler included) 2 UseCC (CopyCursor included) 1-0 UseEB 0=no extended keystroke buffer, 1=reserve mem, 2=use PSPsee Program Segment Prefix, 3=reserved Bitfields for K3 compiler switch option flags B: Bit(s) Description (Table 00610) 15-11 reserved (0) 10 CtrlSeq (Ctrl macro capability included) 9-8 SupINT16fct55FE 6 DoInstallCheck (check for double installation) 5 SupINT16fct5PcJr (INT 16/AH=05h"PCjr" supported) 4 SendOut (sound and message output supported) 3 SupInt16fct5500 (INT 16/AX=5500h supported) 2 GuINT15Fct4F (calls to INT 15/AH=4Fh supported) 1-0 UseBufferStart (0=use standard area, 1=set standard area, 2=use internal indexes, 3=reserved) Bitfields for K3 internal flags A: Bit(s) Description (Table 00611) 7 DoingUmlautExp 6 CallINT15fct4F 5 Beep1 (requires SendOut set in option flags B) 4 ATflag (set for ATIBM PC AT, 386, PS/2IBM PS/2, any model Models 50-80) 3 XTflag (set for PCIBM PC, PCIBM PC/XTIBM PC XT, Micromint PCIBM PC, Pencock PCIBM PC, PS/2IBM PS/2, any model Model 30) 2 KeyClick 1 UmlautExp 0 UmlautTrans Bitfields for K3 internal flags B: Bit(s) Description (Table 00612) 7-5 reserved 4 TranslateE0 enabled 3 BootTo start up the computer or operating system. The term "boot" is a contraction of "bootstrap", which in turn comes from the expression "to lift oneself by one's boot straps." The ROM BIOS on IBMInternational Busiuness Machines PCs and compatibles reads in the first sector of the disk, which contains a short (less than 500 bytes) program that reads in a portion of the operating system, which in turn reads in the remainder of the operating system. See also IPL. enabled 2 PrintScreen enabled 1 Break enabled 0 ApoPendingBeep