Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-1


				
				
				
				
					PAGE	,132
					TITLE	DOS - Keyboard Definition File
				
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; DOS - - NLS Support - Keyboard Defintion File
				;; (c) Copyright 1988 Microsoft
				;;
				;; This file contains the keyboard tables for Spanish.
				;;
				;; Linkage Instructions:
				;;	Refer to KDF.ASM.
				;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
					INCLUDE KEYBSHAR.INC	       ;;
			     C	.LIST
					INCLUDE POSTEQU.INC	       ;;
			     C	; Revised FOR KBX (ADD EQUATES FOR KB_FLAG_3) AEV  8-17-84
			     C	;----------------------------------------------------------------------------
			     C	;		EQUATES 		:
			     C	;----------------------------------------------------------------------------
 = 0000                      C	TTEST		EQU	0		; CONDITIONAL ASM (TEST2.SRC)
 = 0000                      C	KY_LOCK 	EQU	0		; CONDITIONAL ASM (TEST2.SRC)
 = 0000                      C	KEY_NUMS	EQU	0		; CONDITIONAL ASM (KYBD.SRC)
			     C	;----------------------------------------------------------------------------
 = 00F0                      C	X287		EQU	0F0H		; MATH PROCESSOR
			     C	;----------------------------------------------------------------------------
 = 0020                      C	LOOP_POST	EQU	020H		; MFG LOOP POST JUMPER
			     C	;----------------------------------------------------------------------------
 = 0010                      C	REFRESH_BIT	EQU	010H		; REFRESH TEST BIT
			     C	;----------------------------------------------------------------------------
 = 0000                      C	POST_SS 	EQU	0H		; POST STACK SEGMENT
 = 8000                      C	POST_SP 	EQU	8000H		; POST STACK POINTER
 = FFFF                      C	TEMP_STACK_LO	EQU	0FFFFH		;
 = 0000                      C	TEMP_STACK_HI	EQU	0		; SET PROTECTED MODE TEMP_SS
			     C						; 0:FFFFH
			     C	;----------------------------------------------------------------------------
 = 0060                      C	PORT_A		EQU	60H		; 8042 KEYBOARD SCAN/DIAG OUTPUTS
 = 0061                      C	PORT_B		EQU	61H		; 8042 READ WRITE REGISTER
 = 00C0                      C	PARITY_ERR	EQU	0C0H		; RAM/IO CHANNEL PARITY ERROR
 = 00F3                      C	RAM_PAR_ON	EQU	11110011B	; AND THIS VALUE
 = 000C                      C	RAM_PAR_OFF	EQU	00001100B	; OR THIS VALUE
 = 0040                      C	IO_CHK		EQU	01000000B	; IO CHECK?
 = 0080                      C	PRTY_CHK	EQU	10000000B	; PARITY CHECK?
			     C	
 = 0064                      C	STATUS_PORT	EQU	64H		;8042 STATUS PORT
 = 0001                      C	OUT_BUF_FULL	EQU	01H		; 0 = +OUTPUT BUFFER FULL
 = 0002                      C	INPT_BUF_FULL	EQU	02H		; 1 = +INPUT BUFFER FULL
 = 0004                      C	SYS_FLAG	EQU	04H		; 2 = -SYSTEM FLAG -POR/-SELF TEST
 = 0008                      C	CMD_DATA	EQU	08H		; 3 = -COMMAND/+DATA
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-2


 = 0010                      C	KYBD_INH	EQU	10H		; 4 = +KEYBOARD INHIBITED
 = 0020                      C	TRANS_TMOUT	EQU	20H		; 5 = +TRANSMIT TIMEOUT
 = 0040                      C	RCV_TMOUT	EQU	40H		; 6 = +RECEIVE TIME OUT
 = 0080                      C	PARITY_EVEN	EQU	80H		; 7 = +PARITY IS EVEN
 = 00FE                      C	SHUT_CMD	EQU	0FEH		; CAUSE A SHUTDOWN COMMAND
 = 00AB                      C	INTR_FACE_CK	EQU	0ABH		; CHECK 8042 INTERFACE CMD
 = 00E0                      C	KYBD_CLK_DATA	EQU	0E0H		; GET KYBD CLOCK AND DATA CMD
 = 0001                      C	KYBD_CLK	EQU	001H		; KEYBOARD CLOCK BIT 0
			     C	;----------MANUFACTURING PORT------------------------------------------------
 = 0080                      C	MFG_PORT	EQU	80H		; MANUFACTURING CHECKPOINT PORT
			     C	;----------MANUFACTURING BIT DEFINITION FOR MFG_ERR_FLAG+1-------------------
 = 0001                      C	MEM_FAIL	EQU	00000001B      ; STORAGE TEST FAILED (ERROR 20X)
 = 0002                      C	PRO_FAIL	EQU	00000010B      ; VIRTUAL MODE TEST FAILED (ERROR 104)
 = 0004                      C	LMCS_FAIL	EQU	00000100B      ; LOW MEG CHIP SELECT FAILED (ERROR 109)
 = 0008                      C	KYCLK_FAIL	EQU	00001000B      ; KEYBOARD CLOCK TEST FAILED (ERROR 304)
 = 0010                      C	KY_SYS_FAIL	EQU	00010000B      ; KEYBOARD OR SYSTEM FAILED (ERROR 303)
 = 0020                      C	KYBD_FAIL	EQU	00100000B      ; KEYBOARD FAILED (ERROR 301)
 = 0040                      C	DSK_FAIL	EQU	01000000B      ; DISKETTE TEST FAILED (ERROR 601)
 = 0080                      C	KEY_FAIL	EQU	10000000B      ; KEYBOARD LOCKED (ERROR 302)
			     C	;----------8042 INPUT PORT BIT DEFINITION------------------------------------
 = 0010                      C	BASE_RAM	EQU	10H		;BASE R/W MEMORY
 = 0020                      C	MFG_JMP 	EQU	20H		;LOOP POST JUMPER
 = 0040                      C	DSP_JMP 	EQU	40H		;DISPLAY TYPE JUMPER
 = 0080                      C	KEY_BD_INHIB	EQU	80H		;KEYBOARD INHIBIT SWITCH
			     C	;----------8042 RAM DEFINITION-----------------------------------------------
 = 0010                      C	INH_KEYBOARD	EQU	10H		;BYTE 0 BIT 4 OF 8042 RAM
			     C	;-------------- COMMANDS ----------------------------------------------------
 = 0020                      C	READ_8042_RAM	EQU	20H		; BITS 0-4 = ADDRESS (20-3F)
 = 0060                      C	WRITE_8042_RAM	EQU	60H		;
 = 00AA                      C	SELF_8042_TEST	EQU	0AAH		; 8042 SELF TEST
 = 00C0                      C	READ_8042_INPUT EQU	0C0H		; READ 8042 INPUT PORT
 = 00AE                      C	ENA_KBD 	EQU	0AEH		; ENABLE KEYBOARD COMMAND
 = 00AD                      C	DIS_KBD 	EQU	0ADH		; DISABLE KEYBOARD COMMAND
 = 00DF                      C	ENABLE_BIT20	EQU	0DFH		; ENABLE ADDR LINE BIT 20
 = 00DD                      C	DISABLE_BIT20	EQU	0DDH		; DISABLE ADDR LINE BIT 20
			     C	;-------------- KEYBOARD/LED COMMANDS --------------------------------------
 = 00F1                      C	KB_MENU 	EQU	0F1H		; SELECT MENU COMMAND
 = 00F3                      C	KB_TYPA_RD	EQU	0F3H		; SET TYPAMATIC RATE/DELAY	   RWV 10-07-85
 = 00F4                      C	KB_ENABLE	EQU	0F4H		; KEYBOARD ENABLE
 = 00F7                      C	KB_MAKE_BREAK	EQU	0F7H		; TYPAMATIC
 = 00FE                      C	KB_ECHO 	EQU	0FEH		; ECHO COMMAND
 = 00FF                      C	KB_RESET	EQU	0FFH		; SELF DIAGNOSTIC COMMAND
 = 00ED                      C	LED_CMD 	EQU	0EDH		; LED WRITE COMMAND
			     C	;--------------- KEYBOARD RESPONSE -----------------------------------------
 = 00AA                      C	KB_OK		EQU	0AAH		; RESPONSE FROM SELF DIAG
 = 00FA                      C	KB_ACK		EQU	0FAH		; ACKNOWLEDGE FROM TRANSMISSION
 = 00FF                      C	KB_OVER_RUN	EQU	0FFH		; OVER RUN
 = 00FE                      C	KB_RESEND	EQU	0FEH		; RESEND REQUEST
 = 00F0                      C	KB_BREAK	EQU	0F0H		; KEYBOARD BREAK CODE
			     C	;-------------- CMOS EQUATES -------------------------------------------------
 = 0070                      C	CMOS_PORT	EQU	070H		; IO ADDRESS OF CMOS PORT
 = 008A                      C	CLK_UP		EQU	08AH		; CLOCK UPDATE STATUS
 = 008B                      C	CMOS_ALARM	EQU	08BH		;
 = 0090                      C	CMOS_BEGIN	EQU	090H		;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-3


 = 00AD                      C	CMOS_END	EQU	0ADH		;
 = 008F                      C	SHUT_DOWN	EQU	08FH		; SHUTDOWN OFFSET
 = 008D                      C	BATTERY_COND_STATUS EQU 08DH		; BATTERY STATUS
 = 00B1                      C	M_SIZE_HI	EQU	0B1H		; IO MEMORY SIZE HIGH BYTE (POST)
 = 00B0                      C	M_SIZE_LO	EQU	0B0H		; IO MEMORY SIZE LO BYTE   (POST)
 = 0096                      C	M1_SIZE_HI	EQU	096H		; 0->640K CONFIG MEMORY SIZE (SETUP)
 = 0095                      C	M1_SIZE_LO	EQU	095H		;   LOW BYTE (SETUP)
 = 0098                      C	M2_SIZE_HI	EQU	098H		; 640K->UP CONFIG MEMORY SIZE (SETUP)
 = 0097                      C	M2_SIZE_LO	EQU	097H		;   LOW BYTE (SETUP)
 = 0094                      C	C_EQUIP 	EQU	094H		; CMOS EQUIPMENT FLAG
 = 0092                      C	HD_FILE_TYPE	EQU	092H		; HARD FILE TYPE BYTE
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-4


			     C	PAGE
			     C	;--------------- CMOS DIAG_STATUS ERROR FLAGS--------------------------------
 = 008E                      C	DIAG_STATUS	EQU	08EH		; CMOS ADDRESS OF DIAG_STATUS
 = 0080                      C	BAD_BAT 	EQU	080H		; DEAD BATTERY
 = 0040                      C	BAD_CKSUM	EQU	040H		; CHECKSUM ERROR
 = 0020                      C	BAD_CONFIG	EQU	020H		; MINIMUM CONFIG USED INSTEAD OF CMOS
 = 0010                      C	W_MEM_SIZE	EQU	010H		; MEMORY SIZE NOT EQUAL TO CONFIG
 = 0008                      C	HF_FAIL 	EQU	008H		; HARD FILE FAILURE ON INIT
 = 0004                      C	CMOS_CLK_FAIL	EQU	004H		; CMOS CLK NOT UPDATING OR NOT VALID
			     C	;--------------- CMOS INFORMATION FLAGS--------------------------------------
 = 00B3                      C	INFO_STATUS	EQU	0B3H		; CMOS ADDRESS OF INFO BYTE
 = 0080                      C	M640K		EQU	080H		; 512K -> 640K CARD INSTALLED
 = 0040                      C	NEW_INST	EQU	040H		; FLAG USED BY CMOS SETUP UTILITY
 = 0020                      C	HF_BOOT 	EQU	020H		; BOOT HARD FILE FLAG
			     C	;--------------- INTERRUPT EQUATES ------------------------------------------
 = 0020                      C	INTA00		EQU	20H		; 8259 PORT
 = 0021                      C	INTA01		EQU	21H		; 8259 PORT
 = 0020                      C	EOI		EQU	20H
 = 00A0                      C	INTB00		EQU	0A0H		; 2ND 8259
 = 00A1                      C	INTB01		EQU	0A1H		;
 = 0070                      C	INT_TYPE	EQU	070H		; START OF 8259 INTERRUPT TABLE LOCATION
 = 0010                      C	INT_VIDEO	EQU	010H		; VIDEO VECTOR
			     C	;---------------------------------------------------------------------------
 = 0040                      C	TIMER		EQU	40H
 = 0043                      C	TIM_CTL 	EQU	43H		; 8253 TIMER CONTROL PORT ADDR
 = 0040                      C	TIMER0		EQU	40H		; 8253 TIMER/CNTER 0 PORT ADDR
 = 0001                      C	TMINT		EQU	01		; TIMER 0 INTR RECVD MASK
			     C	;--------------------------------------------------------------------------
 = 0008                      C	DMA08		EQU	08		; DMA STATUS REG PORT ADDR
 = 0000                      C	DMA		EQU	00		; DMA CH.0 ADDR. REG PORT ADDR
			     C	;--------------------------------------------------------------------------
 = 00D0                      C	DMA18		EQU	0D0H		; 2ND DMA STATUS PORT ADDR
 = 00C0                      C	DMA1		EQU	0C0H		; 2ND DMA CH.0 ADDR. REG PORT ADDR
			     C	;--------------------------------------------------------------------------
 = 0081                      C	DMA_PAGE	EQU	81H		; START OF DMA PAGE REGISTERS
 = 008F                      C	LAST_DMA_PAGE	EQU	8FH		; LAST DMA PAGE REGISTER
			     C	;--------------------------------------------------------------------------
 = 0540                      C	MAX_PERIOD	EQU	540H
 = 0410                      C	MIN_PERIOD	EQU	410H
 = 0060                      C	KBD_IN		EQU	60H		; KEYBOARD DATA IN ADDR PORT
 = 0002                      C	KBDINT		EQU	02		; KEYBOARD INTR MASK
 = 0060                      C	KB_DATA 	EQU	60H		; KEYBOARD SCAN CODE PORT
 = 0061                      C	KB_CTL		EQU	61H		; CONTROL BITS FOR KEYBOARD SENSE DATA
 = 0080                      C	KB_ERR		EQU	80H		; KEYBOARD TRANSMIT ERROR FLAG
			     C	;----- SHIFT FLAG EQUATES WITHIN KB_FLAG
 = 0080                      C	INS_STATE	EQU	80H		; INSERT STATE IS ACTIVE
 = 0040                      C	CAPS_STATE	EQU	40H		; CAPS LOCK STATE HAS BEEN TOGGLED
 = 0020                      C	NUM_STATE	EQU	20H		; NUM LOCK STATE HAS BEEN TOGGLED
 = 0010                      C	SCROLL_STATE	EQU	10H		; SCROLL LOCK STATE HAS BEEN TOGGLED
 = 0008                      C	ALT_SHIFT	EQU	08H		; ALTERNATE SHIFT KEY DEPRESSED
 = 0004                      C	CTL_SHIFT	EQU	04H		; CONTROL SHIFT KEY DEPRESSED
 = 0002                      C	LEFT_SHIFT	EQU	02H		; LEFT SHIFT KEY DEPRESSED
 = 0001                      C	RIGHT_SHIFT	EQU	01H		; RIGHT SHIFT KEY DEPRESSED
			     C	;----- SHIFT FLAG EQUATES WITHIN KB_FLAG_1
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-5


 = 0080                      C	INS_SHIFT	EQU	80H		; INSERT KEY IS DEPRESSED
 = 0040                      C	CAPS_SHIFT	EQU	40H		; CAPS LOCK KEY IS DEPRESSED
 = 0020                      C	NUM_SHIFT	EQU	20H		; NUM LOCK KEY IS DEPRESSED
 = 0010                      C	SCROLL_SHIFT	EQU	10H		; SCROLL LOCK KEY IS DEPRESSED
 = 0008                      C	HOLD_STATE	EQU	08H		; SUSPEND KEY HAS BEEN TOGGLED
 = 0004                      C	SYS_SHIFT	EQU	04H		; SYSTEM KEY DEPRESSED AND HELD
 = 0002                      C	L_ALT_SHIFT	EQU	02H		; LEFT ALT KEY DOWN		   RWV 8-28-85
 = 0001                      C	L_CTL_SHIFT	EQU	01H		; LEFT CTL KEY DOWN		   RWV 8-28-85
			     C	;---------------FLAGS WITHIN KB_FLAG_2
 = 0080                      C	KB_ERR		EQU	80H		; KEYBOARD TRANSMIT ERROR FLAG
 = 0040                      C	KB_PR_LED	EQU	40H		; MODE INDICATOR UPDATE
 = 0020                      C	KB_FE		EQU	20H		; RESEND RECEIVED FLAG
 = 0010                      C	KB_FA		EQU	10H		; ACK RECEIVED
 = 0008                      C	CIRCUS_SYSTEM	EQU	08H		; CIRCUS SYSTEM INDICATOR
 = 0007                      C	KB_LEDS 	EQU	07H		; KEYBOARD LED STATE BITS
			     C	;			04H		; CAPS LOCK INDICATOR
			     C	;			02H		; NUM LOCK INDICATOR
			     C	;			01H		; SCROLL LOCK INDICATOR
			     C	;---------------FLAGS WITHIN KB_FLAG_3
 = 0080                      C	RD_ID		EQU	80H		; DOING A READ ID (MUST BE BIT0)   AEV
 = 0040                      C	LC_AB		EQU	40H		; LAST CHAR WAS FIRST ID CHAR	   AEV
 = 0020                      C	SET_NUM_LK	EQU	20H		; FORCE NUM LOCK IF RD ID & KBX    AEV
 = 0010                      C	KBX		EQU	10H		; ENHANCED KEYBOARD INSTALLED	   RWV 7-18-85
 = 0008                      C	R_ALT_SHIFT	EQU	08H		; RIGHT ALT KEY DOWN		   RWV 7-18-85
 = 0008                      C	GRAPH_ON	EQU	08H		; ALT GRAPHICS KEY DOWN (WT ONLY)  AEV
 = 0004                      C	R_CTL_SHIFT	EQU	04H		; RIGHT CTL KEY DOWN		   RWV 7-18-85
 = 0002                      C	LC_E0		EQU	02H		; LAST CODE WAS THE E0 HIDDEN CODE RWV 7-18-85
 = 0001                      C	LC_E1		EQU	01H		; LAST CODE WAS THE E1 HIDDEN CODE RWV 7-18-85
			     C	;----- SCAN CODE EQUATES FOR THE KEYBOARD
 = 0045                      C	NUM_KEY 	EQU	69		; SCAN CODE FOR NUMBER LOCK
 = 0046                      C	SCROLL_KEY	EQU	70		; SCAN CODE FOR SCROLL LOCK
 = 0038                      C	ALT_KEY 	EQU	56		; SCAN CODE FOR ALTERNATE KEY
 = 001D                      C	CTL_KEY 	EQU	29		; SCAN CODE FOR CONTROL KEY
 = 003A                      C	CAPS_KEY	EQU	58		; SCAN CODE FOR SHIFT LOCK
 = 002A                      C	LEFT_KEY	EQU	42		; SCAN CODE FOR LEFT SHIFT
 = 0036                      C	RIGHT_KEY	EQU	54		; SCAN CODE FOR RIGHT SHIFT
 = 0052                      C	INS_KEY 	EQU	82		; SCAN CODE FOR INSERT KEY
 = 0053                      C	DEL_KEY 	EQU	83		; SCAN CODE FOR DELETE KEY
 = 0054                      C	SYS_KEY 	EQU	84		; SCAN CODE FOR SYSTEM KEY
			     C	;-------------- ENHANCED KEYBOARD EQUATES
 = 00AB                      C	ID_1		EQU	0ABH		; 1ST ID CHAR FOR KBX
 = 0041                      C	ID_2		EQU	041H		; 2ND ID CHAR FOR KBX		   AEV
 = 0054                      C	ID_2A		EQU	054H		; ALTERNATE 2ND ID CHAR FOR KBX    RWV 8-16-85
 = 0057                      C	F11_M		EQU	87		; F11 KEY MAKE
 = 0058                      C	F12_M		EQU	88		; F12 KEY MAKE
 = 00E0                      C	MC_E0		EQU	224		; GENERAL MARKER CODE
 = 00E1                      C	MC_E1		EQU	225		; PAUSE KEY MARKER CODE
			     C	
			     C	;-------------- DISKETTE EQUATES
 = 0080                      C	INT_FLAG	EQU	080H		; INTERRUPT OCCURRENCE FLAG
 = 0025                      C	MOTOR_WAIT	EQU	37		; 2 SECS OF COUNTS FOR MOTOR TURN OFF
 = 0080                      C	TIME_OUT	EQU	80H		; ATTACHMENT FAILED TO RESPOND
 = 0040                      C	BAD_SEEK	EQU	40H		; SEEK OPERATION FAILED
 = 0020                      C	BAD_NEC 	EQU	20H		; NEC CONTROLLER HAS FAILED
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-6


 = 0010                      C	BAD_CRC 	EQU	10H		; BAD CRC ON DISKETTE READ
 = 0009                      C	DMA_BOUNDARY	EQU	09H		; ATTEMPT TO DMA ACROSS 64K BOUNDARY
 = 0008                      C	BAD_DMA 	EQU	08H		; DMA OVERRUN ON OPERATION
 = 0006                      C	MEDIA_CHANGE	EQU	06H		; MEDIA REMOVED ON DUAL ATTACH CARD
 = 0004                      C	RECORD_NOT_FND	EQU	04H		; REQUESTED SECTOR NOT FOUND
 = 0003                      C	WRITE_PROTECT	EQU	03H		; WRITE ATTEMPTED ON WRITE PROT DISK
 = 0002                      C	BAD_ADDR_MARK	EQU	02H		; ADDRESS MARK NOT FOUND
 = 0001                      C	BAD_CMD 	EQU	01H		; BAD COMMAND PASSED TO DISKETTE I/O
			     C	
 = 0002                      C	XRATE		EQU	02H		; 250KBS DATA TRANSFER RATE
 = 0001                      C	DUAL		EQU	01H		; DUAL ATTACH CARD PRESENT FLAG
			     C	
 = 0080                      C	DSK_CHG 	EQU	080H		; DISKETTE CHANGE FLAG MASK BIT
 = 0007                      C	STATE_MSK	EQU	007H		; USED TO STRIP OFF STATE OF MEDIA
 = 00F8                      C	REV_STATE	EQU	0F8H		; USED AS MASK FOR STATE BITS
 = 0010                      C	DETERMINED	EQU	010H		; SET STATE DETERMINED IN STATE BITS
 = 0003                      C	TRAN_MSK	EQU	03H		; ISOLATE SHIFTED TRANSFER RATE BITS
 = 0020                      C	DOUBLE_STEP	EQU	020H		; MASK TO TURN ON DOUBLE STEPPING
 = 00F0                      C	MOTOR_MSK	EQU	0F0H		; MASK TO CLEAR MOTOR ON BITS
 = 0002                      C	MAX_DRV 	EQU	002H		; MAX NUMBER OF DRIVES
			     C	;HOME		 EQU	 010H		 ; TRACK 0 MASK
 = 0004                      C	SENSE_DRV_ST	EQU	004H		; SENSE DRIVE STATUS COMMAND
 = 0001                      C	ONE		EQU	001H		; SEEK ONE TRACK
 = 0030                      C	TRK_SLAP	EQU	030H		; CRASH STOP (48 TPI DRIVES)
 = 000A                      C	QUIET_SEEK	EQU	00AH		; SEEK TO TRACK 10
 = 000F                      C	HD12_SETTLE	EQU	015D		; 1.2 M HEAD SETTLE TIME
 = 0014                      C	HD320_SETTLE	EQU	020D		; 320 K HEAD SETTLE TIME
 = 0080                      C	WRITE_OP	EQU	080H		; WRITE OPERATION FLAG
 = 0010                      C	DD_MASK 	EQU	010H		; MASK TO INDICATE DRIVE IS 80 TRACKS
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-7


			     C	PAGE
			     C	;------ DISK CHANGE LINE EQUATES
 = 0001                      C	NOCHGLN 	EQU	001H		; NO DISK CHANGE LINE AVAILABLE
 = 0002                      C	CHGLN		EQU	002H		; DISK CHANGE LINE AVAILABLE
			     C	;------ MEDIA/DRIVE STATE INDICATORS
 = 0093                      C	M326D326	EQU	093H		; STATE MACHINE - 320/360 MEDIA/DRIVE
 = 0074                      C	M326D12 	EQU	074H		; STATE MACHINE - 320/360 MEDIA,1.2DRIVE
 = 0015                      C	M12D12		EQU	015H		; STATE MACHINE - 1.2 MEDIA/DRIVE
 = 0061                      C	POA_DUAL	EQU	061H		; 300K DATA TRANSFER RATE & STATE 1
 = 0080                      C	POA_START	EQU	080H		; 250K DATA TRANSFER RATE & STATE 0
 = 0008                      C	TRK_80		EQU	008H		; DISKETTE DRIVE HAS 80 TRACKS
			     C	;------ CMOS NON-VOLATILE RAM EQUATES
 = 000E                      C	CMOSDSB_ADDR	EQU	00EH		; DISKETTE STATUS BYTE ADDRESS
 = 0070                      C	CADR_PRT	EQU	070H		; CMOS ADDRESS PORT ADDRESS
 = 0071                      C	CDATA_PRT	EQU	071H		; CMOS DATA PORT ADDRESS
 = 00C0                      C	CMOS_GOOD	EQU	0C0H		; BATTERY AND CHECKSUM INDICATOR
 = 0010                      C	CMOSDSK_BYTE	EQU	010H		; DISKETTE BYTE ADDRESS
 = 000F                      C	LOWNIB		EQU	00FH		; ISOLATE LOW NIBBLE IN REGISTER MASK
 = 0002                      C	INVALID_DRV	EQU	002H		; FIRST INVALID DISKETTE TYPE
			     C	;----------------------------------------
			     C	;	TIMER DATA AREA 		:
			     C	;----------------------------------------
			     C	; COUNTS_SEC	EQU	18
			     C	; COUNTS_MIN	EQU	1092
			     C	; COUNTS_HOUR	EQU	65543
			     C	; COUNTS_DAY	EQU	1573040 = 1800B0H
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-8


			     C	PAGE
					INCLUDE KEYBMAC.INC	       ;;
			     C	.LIST
								       ;;
					PUBLIC IT2_LOGIC		;;
					PUBLIC IT2_437_XLAT		;;
					PUBLIC IT2_850_XLAT		;;
								       ;;
 0000				CODE	SEGMENT PUBLIC 'CODE'          ;;
					ASSUME CS:CODE,DS:CODE	       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; Standard translate table options are a liner search table
				;; (TYPE_2_TAB) and ASCII entries ONLY (ASCII_ONLY)
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 = 00C0				STANDARD_TABLE	    EQU   TYPE_2_TAB+ASCII_ONLY
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;***************************************
				;; IT State Logic
				;;***************************************
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
								       ;;
 0000				IT2_LOGIC:
				
 0000  0119			   DW  LOGIC_END-$		       ;; length
								       ;;
 0002  0000			   DW  0			       ;; special features
								       ;;
					;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; COMMANDS START HERE
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; OPTIONS:  If we find a scan match in
				;; an XLATT or SET_FLAG operation then
				;; exit from INT 9.
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
				   OPTION EXIT_IF_FOUND 	       ;;
 0004  50                    1	       DB  OPTION_COMMAND+NOT_BIT 
 0005  80                    1	       DB  EXIT_IF_FOUND 
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;  Dead key definitions must come before
				;;  dead key translations to handle
				;;  dead key + dead key.
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
				   IFF	EITHER_ALT,NOT		       ;;
 0006  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0007  20                    1		  DB EITHER_ALT 
				   ANDF EITHER_CTL,NOT		       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-9


 0008  1C                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 0009  40                    1		  DB EITHER_CTL 
				      IFF EITHER_SHIFT		       ;;
 000A  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 000B  80                    1		  DB EITHER_SHIFT 
					  SET_FLAG DEAD_UPPER	       ;;
 000C  60                    1	       DB  SET_FLAG_COMMAND 
 000D  02                    1	       DB  DEAD_UPPER 
				      ELSEF			       ;;
 000E  20                    1	       DB  ELSEF_COMMAND 
					  SET_FLAG DEAD_LOWER	       ;;
 000F  60                    1	       DB  SET_FLAG_COMMAND 
 0010  01                    1	       DB  DEAD_LOWER 
				      ENDIFF			       ;;
 0011  30                    1	       DB  ENDIFF_COMMAND 
				   ENDIFF			       ;;
 0012  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; ACUTE ACCENT TRANSLATIONS
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 0013				ACUTE_PROC:			       ;;
								       ;;
				   IFF ACUTE,NOT		       ;;
 0013  0D                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0014  80                    1		  DB ACUTE 
				      GOTO DIARESIS_PROC	       ;;
 0015  90                    1	       DB  GOTO_COMMAND 
 0016  0026                  1	       DW  DIARESIS_PROC-$-2 
				      ENDIFF			       ;;
 0018  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
				      RESET_NLS 		       ;;
 0019  B0                    1	       DB  RESET_NLS_COMMAND 
				      IFF R_ALT_SHIFT,NOT	       ;;
 001A  0B                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 001B  08                    1		  DB R_ALT_SHIFT 
					 XLATT ACUTE_SPACE	       ;;
 001C  40                    1	       DB  XLATT_COMMAND 
 001D  0A                    1	       DB  ACUTE_SPACE 
				      ENDIFF			       ;;
 001E  30                    1	       DB  ENDIFF_COMMAND 
				      IFF EITHER_CTL,NOT	       ;;
 001F  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0020  40                    1		  DB EITHER_CTL 
				      ANDF EITHER_ALT,NOT	       ;;
 0021  1C                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 0022  20                    1		  DB EITHER_ALT 
					 IFF EITHER_SHIFT	       ;;
 0023  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0024  80                    1		  DB EITHER_SHIFT 
					    IFF CAPS_STATE	       ;;
 0025  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-10


 0026  40                    1		  DB CAPS_STATE 
					       XLATT ACUTE_LOWER       ;;
 0027  40                    1	       DB  XLATT_COMMAND 
 0028  08                    1	       DB  ACUTE_LOWER 
					    ELSEF		       ;;
 0029  20                    1	       DB  ELSEF_COMMAND 
					       XLATT ACUTE_UPPER       ;;
 002A  40                    1	       DB  XLATT_COMMAND 
 002B  09                    1	       DB  ACUTE_UPPER 
					    ENDIFF		       ;;
 002C  30                    1	       DB  ENDIFF_COMMAND 
					 ELSEF			       ;;
 002D  20                    1	       DB  ELSEF_COMMAND 
					    IFF CAPS_STATE	       ;;
 002E  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 002F  40                    1		  DB CAPS_STATE 
					       XLATT ACUTE_UPPER       ;;
 0030  40                    1	       DB  XLATT_COMMAND 
 0031  09                    1	       DB  ACUTE_UPPER 
					    ELSEF		       ;;
 0032  20                    1	       DB  ELSEF_COMMAND 
					       XLATT ACUTE_LOWER       ;;
 0033  40                    1	       DB  XLATT_COMMAND 
 0034  08                    1	       DB  ACUTE_LOWER 
					    ENDIFF		       ;;
 0035  30                    1	       DB  ENDIFF_COMMAND 
					 ENDIFF 		       ;;
 0036  30                    1	       DB  ENDIFF_COMMAND 
				      ENDIFF			       ;;
 0037  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
 0038				INVALID_ACUTE:			       ;;
				      PUT_ERROR_CHAR ACUTE_LOWER       ;; If we get here then either the XLATT
 0038  70                    1	       DB  PUT_ERROR_COMMAND 
 0039  08                    1	       DB  ACUTE_LOWER 
				      BEEP			       ;; failed or we are ina bad shift state.
 003A  A0                    1	       DB  BEEP_COMMAND 
				      GOTO NON_DEAD		       ;; Either is invalid so BEEP and fall
 003B  90                    1	       DB  GOTO_COMMAND 
 003C  0081                  1	       DW  NON_DEAD-$-2 
								       ;; through to generate the second char.
								       ;; Note that the dead key flag will be
								       ;; reset before we get here.
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; DIARESIS ACCENT TRANSLATIONS
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 003E				DIARESIS_PROC:			       ;;
								       ;;
				   IFF DIARESIS,NOT		       ;;
 003E  0D                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 003F  20                    1		  DB DIARESIS 
				      GOTO GRAVE_PROC		       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-11


 0040  90                    1	       DB  GOTO_COMMAND 
 0041  0026                  1	       DW  GRAVE_PROC-$-2 
				      ENDIFF			       ;;
 0043  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
				      RESET_NLS 		       ;;
 0044  B0                    1	       DB  RESET_NLS_COMMAND 
				      IFF R_ALT_SHIFT,NOT	       ;;
 0045  0B                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0046  08                    1		  DB R_ALT_SHIFT 
					 XLATT DIARESIS_SPACE	       ;;  exist for 437 so beep for
 0047  40                    1	       DB  XLATT_COMMAND 
 0048  10                    1	       DB  DIARESIS_SPACE 
				      ENDIFF			       ;;
 0049  30                    1	       DB  ENDIFF_COMMAND 
				      IFF EITHER_CTL,NOT	       ;;
 004A  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 004B  40                    1		  DB EITHER_CTL 
				      ANDF EITHER_ALT,NOT	       ;;
 004C  1C                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 004D  20                    1		  DB EITHER_ALT 
					 IFF EITHER_SHIFT	       ;;
 004E  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 004F  80                    1		  DB EITHER_SHIFT 
					    IFF CAPS_STATE	       ;;
 0050  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0051  40                    1		  DB CAPS_STATE 
					       XLATT DIARESIS_LOWER    ;;
 0052  40                    1	       DB  XLATT_COMMAND 
 0053  0E                    1	       DB  DIARESIS_LOWER 
					    ELSEF		       ;;
 0054  20                    1	       DB  ELSEF_COMMAND 
					       XLATT DIARESIS_UPPER    ;;
 0055  40                    1	       DB  XLATT_COMMAND 
 0056  0F                    1	       DB  DIARESIS_UPPER 
					    ENDIFF		       ;;
 0057  30                    1	       DB  ENDIFF_COMMAND 
					 ELSEF			       ;;
 0058  20                    1	       DB  ELSEF_COMMAND 
					    IFF CAPS_STATE	       ;;
 0059  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 005A  40                    1		  DB CAPS_STATE 
					       XLATT DIARESIS_UPPER    ;;
 005B  40                    1	       DB  XLATT_COMMAND 
 005C  0F                    1	       DB  DIARESIS_UPPER 
					    ELSEF		       ;;
 005D  20                    1	       DB  ELSEF_COMMAND 
					       XLATT DIARESIS_LOWER    ;;
 005E  40                    1	       DB  XLATT_COMMAND 
 005F  0E                    1	       DB  DIARESIS_LOWER 
					    ENDIFF		       ;;
 0060  30                    1	       DB  ENDIFF_COMMAND 
					 ENDIFF 		       ;;
 0061  30                    1	       DB  ENDIFF_COMMAND 
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-12


				      ENDIFF			       ;;
 0062  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
 0063				INVALID_DIARESIS:		       ;;
				      PUT_ERROR_CHAR DIARESIS_SPACE    ;; standalone accent
 0063  70                    1	       DB  PUT_ERROR_COMMAND 
 0064  10                    1	       DB  DIARESIS_SPACE 
				      BEEP			       ;; Invalid dead key combo.
 0065  A0                    1	       DB  BEEP_COMMAND 
				      GOTO NON_DEAD		       ;;
 0066  90                    1	       DB  GOTO_COMMAND 
 0067  0056                  1	       DW  NON_DEAD-$-2 
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; GRAVE ACCENT TRANSLATIONS
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 0069				GRAVE_PROC:			       ;;
								       ;;
				   IFF GRAVE,NOT		       ;;
 0069  0D                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 006A  40                    1		  DB GRAVE 
				      GOTO CIRCUMFLEX_PROC	       ;;
 006B  90                    1	       DB  GOTO_COMMAND 
 006C  0026                  1	       DW  CIRCUMFLEX_PROC-$-2 
				      ENDIFF			       ;;
 006E  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
				      RESET_NLS 		       ;;
 006F  B0                    1	       DB  RESET_NLS_COMMAND 
				      IFF R_ALT_SHIFT,NOT	       ;;
 0070  0B                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0071  08                    1		  DB R_ALT_SHIFT 
					 XLATT GRAVE_SPACE	       ;;
 0072  40                    1	       DB  XLATT_COMMAND 
 0073  0D                    1	       DB  GRAVE_SPACE 
				      ENDIFF			       ;;
 0074  30                    1	       DB  ENDIFF_COMMAND 
				      IFF EITHER_CTL,NOT	       ;;
 0075  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0076  40                    1		  DB EITHER_CTL 
				      ANDF EITHER_ALT,NOT	       ;;
 0077  1C                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 0078  20                    1		  DB EITHER_ALT 
					IFF EITHER_SHIFT	       ;;
 0079  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 007A  80                    1		  DB EITHER_SHIFT 
					   IFF CAPS_STATE	       ;;
 007B  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 007C  40                    1		  DB CAPS_STATE 
					      XLATT GRAVE_LOWER        ;;
 007D  40                    1	       DB  XLATT_COMMAND 
 007E  0B                    1	       DB  GRAVE_LOWER 
					   ELSEF		       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-13


 007F  20                    1	       DB  ELSEF_COMMAND 
					      XLATT GRAVE_UPPER        ;;
 0080  40                    1	       DB  XLATT_COMMAND 
 0081  0C                    1	       DB  GRAVE_UPPER 
					   ENDIFF		       ;;
 0082  30                    1	       DB  ENDIFF_COMMAND 
					ELSEF			       ;;
 0083  20                    1	       DB  ELSEF_COMMAND 
					   IFF CAPS_STATE,NOT	       ;;
 0084  08                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0085  40                    1		  DB CAPS_STATE 
					      XLATT GRAVE_LOWER        ;;
 0086  40                    1	       DB  XLATT_COMMAND 
 0087  0B                    1	       DB  GRAVE_LOWER 
					   ELSEF		       ;;
 0088  20                    1	       DB  ELSEF_COMMAND 
					      XLATT GRAVE_UPPER        ;;
 0089  40                    1	       DB  XLATT_COMMAND 
 008A  0C                    1	       DB  GRAVE_UPPER 
					   ENDIFF		       ;;
 008B  30                    1	       DB  ENDIFF_COMMAND 
					ENDIFF			       ;;
 008C  30                    1	       DB  ENDIFF_COMMAND 
				      ENDIFF			       ;;
 008D  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
 008E				INVALID_GRAVE:			       ;;
				      PUT_ERROR_CHAR GRAVE_LOWER       ;; standalone accent
 008E  70                    1	       DB  PUT_ERROR_COMMAND 
 008F  0B                    1	       DB  GRAVE_LOWER 
				      BEEP			       ;; Invalid dead key combo.
 0090  A0                    1	       DB  BEEP_COMMAND 
				      GOTO NON_DEAD		       ;;
 0091  90                    1	       DB  GOTO_COMMAND 
 0092  002B                  1	       DW  NON_DEAD-$-2 
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CIRCUMFLEX ACCENT TRANSLATIONS
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 0094				CIRCUMFLEX_PROC:		       ;;
								       ;;
				   IFF CIRCUMFLEX,NOT		       ;;
 0094  0D                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0095  10                    1		  DB CIRCUMFLEX 
				      GOTO NON_DEAD		       ;;
 0096  90                    1	       DB  GOTO_COMMAND 
 0097  0026                  1	       DW  NON_DEAD-$-2 
				      ENDIFF			       ;;
 0099  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
				      RESET_NLS 		       ;;
 009A  B0                    1	       DB  RESET_NLS_COMMAND 
				      IFF R_ALT_SHIFT,NOT	       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-14


 009B  0B                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 009C  08                    1		  DB R_ALT_SHIFT 
					 XLATT CIRCUMFLEX_SPACE        ;;
 009D  40                    1	       DB  XLATT_COMMAND 
 009E  13                    1	       DB  CIRCUMFLEX_SPACE 
				      ENDIFF			       ;;
 009F  30                    1	       DB  ENDIFF_COMMAND 
				      IFF EITHER_CTL,NOT	       ;;
 00A0  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00A1  40                    1		  DB EITHER_CTL 
				      ANDF EITHER_ALT,NOT	       ;;
 00A2  1C                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 00A3  20                    1		  DB EITHER_ALT 
					IFF EITHER_SHIFT	       ;;
 00A4  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00A5  80                    1		  DB EITHER_SHIFT 
					   IFF CAPS_STATE	       ;;
 00A6  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00A7  40                    1		  DB CAPS_STATE 
					      XLATT CIRCUMFLEX_LOWER   ;;
 00A8  40                    1	       DB  XLATT_COMMAND 
 00A9  11                    1	       DB  CIRCUMFLEX_LOWER 
					   ELSEF		       ;;
 00AA  20                    1	       DB  ELSEF_COMMAND 
					      XLATT CIRCUMFLEX_UPPER   ;;
 00AB  40                    1	       DB  XLATT_COMMAND 
 00AC  12                    1	       DB  CIRCUMFLEX_UPPER 
					   ENDIFF		       ;;
 00AD  30                    1	       DB  ENDIFF_COMMAND 
					ELSEF			       ;;
 00AE  20                    1	       DB  ELSEF_COMMAND 
					   IFF CAPS_STATE,NOT	       ;;
 00AF  08                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00B0  40                    1		  DB CAPS_STATE 
					      XLATT CIRCUMFLEX_LOWER   ;;
 00B1  40                    1	       DB  XLATT_COMMAND 
 00B2  11                    1	       DB  CIRCUMFLEX_LOWER 
					   ELSEF		       ;;
 00B3  20                    1	       DB  ELSEF_COMMAND 
					      XLATT CIRCUMFLEX_UPPER   ;;
 00B4  40                    1	       DB  XLATT_COMMAND 
 00B5  12                    1	       DB  CIRCUMFLEX_UPPER 
					   ENDIFF		       ;;
 00B6  30                    1	       DB  ENDIFF_COMMAND 
					ENDIFF			       ;;
 00B7  30                    1	       DB  ENDIFF_COMMAND 
				      ENDIFF			       ;;
 00B8  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
 00B9				INVALID_CIRCUMFLEX:		       ;;
				      PUT_ERROR_CHAR CIRCUMFLEX_LOWER  ;; standalone accent
 00B9  70                    1	       DB  PUT_ERROR_COMMAND 
 00BA  11                    1	       DB  CIRCUMFLEX_LOWER 
				      BEEP			       ;; Invalid dead key combo.
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-15


 00BB  A0                    1	       DB  BEEP_COMMAND 
				      GOTO NON_DEAD		       ;;
 00BC  90                    1	       DB  GOTO_COMMAND 
 00BD  0000                  1	       DW  NON_DEAD-$-2 
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; Upper, lower and third shifts
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 00BF				NON_DEAD:			       ;;
								       ;;
				   IFKBD G_KB+P12_KB		       ;; Avoid accidentally translating
 00BF  80                    1	       DB IFKBD_COMMAND 
 00C0  1400                  1	       DW G_KB+P12_KB 
				   ANDF LC_E0			       ;;  the "/" on the numeric pad of the
 00C2  13                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 00C3  02                    1		  DB LC_E0 
				      EXIT_STATE_LOGIC		       ;;   G keyboard
 00C4  92                    1	       DB  GOTO_COMMAND+EXIT_STATE_LOGIC_FLAG 
 00C5  0000                  1	       DW  0 
				   ENDIFF			       ;;
 00C7  30                    1	       DB  ENDIFF_COMMAND 
				;;***BD ADDED FOR ALT, CTRL CASES      ;;
				      IFF EITHER_CTL,NOT	       ;;
 00C8  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00C9  40                    1		  DB EITHER_CTL 
					 IFF  ALT_SHIFT 	       ;; ALT - case
 00CA  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00CB  08                    1		  DB ALT_SHIFT 
					 ANDF R_ALT_SHIFT,NOT	       ;;
 00CC  1B                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 00CD  08                    1		  DB R_ALT_SHIFT 
					    XLATT ALT_CASE	       ;;
 00CE  40                    1	       DB  XLATT_COMMAND 
 00CF  22                    1	       DB  ALT_CASE 
					 ENDIFF 		       ;;
 00D0  30                    1	       DB  ENDIFF_COMMAND 
				      ELSEF			       ;;
 00D1  20                    1	       DB  ELSEF_COMMAND 
					 IFF EITHER_ALT,NOT	       ;; CTRL - case
 00D2  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00D3  20                    1		  DB EITHER_ALT 
					    XLATT CTRL_CASE	       ;;
 00D4  40                    1	       DB  XLATT_COMMAND 
 00D5  23                    1	       DB  CTRL_CASE 
					 ENDIFF 		       ;;
 00D6  30                    1	       DB  ENDIFF_COMMAND 
				      ENDIFF			       ;;
 00D7  30                    1	       DB  ENDIFF_COMMAND 
				;;***BD END OF ADDITION
								       ;;
				   IFF	EITHER_ALT,NOT		       ;; Lower and upper case.  Alphabetic
 00D8  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-16


 00D9  20                    1		  DB EITHER_ALT 
				   ANDF EITHER_CTL,NOT		       ;; keys are affected by CAPS LOCK.
 00DA  1C                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 00DB  40                    1		  DB EITHER_CTL 
				      IFF EITHER_SHIFT		       ;; Numeric keys are not.
 00DC  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00DD  80                    1		  DB EITHER_SHIFT 
				;;***BD ADDED FOR NUMERIC PAD
					  IFF NUM_STATE,NOT	       ;;
 00DE  08                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00DF  20                    1		  DB NUM_STATE 
					      XLATT NUMERIC_PAD        ;;
 00E0  40                    1	       DB  XLATT_COMMAND 
 00E1  24                    1	       DB  NUMERIC_PAD 
					  ENDIFF		       ;;
 00E2  30                    1	       DB  ENDIFF_COMMAND 
				;;***BD END OF ADDITION
					  XLATT NON_ALPHA_UPPER        ;;
 00E3  40                    1	       DB  XLATT_COMMAND 
 00E4  06                    1	       DB  NON_ALPHA_UPPER 
					  IFF CAPS_STATE	       ;;
 00E5  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00E6  40                    1		  DB CAPS_STATE 
					      XLATT ALPHA_LOWER        ;;
 00E7  40                    1	       DB  XLATT_COMMAND 
 00E8  03                    1	       DB  ALPHA_LOWER 
					  ELSEF 		       ;;
 00E9  20                    1	       DB  ELSEF_COMMAND 
					      XLATT ALPHA_UPPER        ;;
 00EA  40                    1	       DB  XLATT_COMMAND 
 00EB  04                    1	       DB  ALPHA_UPPER 
					  ENDIFF		       ;;
 00EC  30                    1	       DB  ENDIFF_COMMAND 
				      ELSEF			       ;;
 00ED  20                    1	       DB  ELSEF_COMMAND 
				;;***BD ADDED FOR NUMERIC PAD
					  IFF NUM_STATE 	       ;;
 00EE  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00EF  20                    1		  DB NUM_STATE 
					      XLATT NUMERIC_PAD        ;;
 00F0  40                    1	       DB  XLATT_COMMAND 
 00F1  24                    1	       DB  NUMERIC_PAD 
					  ENDIFF		       ;;
 00F2  30                    1	       DB  ENDIFF_COMMAND 
				;;***BD END OF ADDITION
					  XLATT NON_ALPHA_LOWER        ;;
 00F3  40                    1	       DB  XLATT_COMMAND 
 00F4  05                    1	       DB  NON_ALPHA_LOWER 
					  IFF CAPS_STATE	       ;;
 00F5  00                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 00F6  40                    1		  DB CAPS_STATE 
					     XLATT ALPHA_UPPER	       ;;
 00F7  40                    1	       DB  XLATT_COMMAND 
 00F8  04                    1	       DB  ALPHA_UPPER 
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-17


					  ELSEF 		       ;;
 00F9  20                    1	       DB  ELSEF_COMMAND 
					     XLATT ALPHA_LOWER	       ;;
 00FA  40                    1	       DB  XLATT_COMMAND 
 00FB  03                    1	       DB  ALPHA_LOWER 
					  ENDIFF		       ;;
 00FC  30                    1	       DB  ENDIFF_COMMAND 
				      ENDIFF			       ;;
 00FD  30                    1	       DB  ENDIFF_COMMAND 
				   ELSEF			       ;;
 00FE  20                    1	       DB  ELSEF_COMMAND 
				      IFF EITHER_SHIFT,NOT	       ;;
 00FF  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0100  80                    1		  DB EITHER_SHIFT 
					  IFKBD XT_KB+AT_KB	 ;;
 0101  80                    1	       DB IFKBD_COMMAND 
 0102  6000                  1	       DW XT_KB+AT_KB 
					      IFF  EITHER_CTL	       ;;
 0104  04                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 0105  40                    1		  DB EITHER_CTL 
					      ANDF ALT_SHIFT	       ;;
 0106  10                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 0107  08                    1		  DB ALT_SHIFT 
						  XLATT THIRD_SHIFT    ;;
 0108  40                    1	       DB  XLATT_COMMAND 
 0109  07                    1	       DB  THIRD_SHIFT 
					      ENDIFF		       ;;
 010A  30                    1	       DB  ENDIFF_COMMAND 
					  ELSEF 		       ;;
 010B  20                    1	       DB  ELSEF_COMMAND 
					      IFF EITHER_CTL,NOT       ;;
 010C  0C                    1		  DB IFF_COMMAND+NOT_BIT+FLAG_ID 
 010D  40                    1		  DB EITHER_CTL 
					      ANDF R_ALT_SHIFT	       ;;
 010E  13                    1		  DB ANDF_COMMAND+NOT_BIT+FLAG_ID 
 010F  08                    1		  DB R_ALT_SHIFT 
						  XLATT THIRD_SHIFT    ;;
 0110  40                    1	       DB  XLATT_COMMAND 
 0111  07                    1	       DB  THIRD_SHIFT 
					      ENDIFF		       ;;
 0112  30                    1	       DB  ENDIFF_COMMAND 
					   ENDIFF		       ;;
 0113  30                    1	       DB  ENDIFF_COMMAND 
				      ENDIFF			       ;;
 0114  30                    1	       DB  ENDIFF_COMMAND 
				   ENDIFF			       ;;
 0115  30                    1	       DB  ENDIFF_COMMAND 
								       ;;
				   EXIT_STATE_LOGIC		       ;;
 0116  92                    1	       DB  GOTO_COMMAND+EXIT_STATE_LOGIC_FLAG 
 0117  0000                  1	       DW  0 
								       ;;
 0119				LOGIC_END:			       ;;
								       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-18


								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;***************************************
				;; IT Common Translate Section
				;; This section contains translations for the lower 128 characters
				;; only since these will never change from code page to code page.
				;; In addition the dead key "Set Flag" tables are here since the
				;; dead keys are on the same keytops for all code pages.
				;;***************************************
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
				 PUBLIC IT2_COMMON_XLAT 		;;
 0119				IT2_COMMON_XLAT:			;;
								       ;;
 0119  0151			   DW	 COMMON_XLAT_END-$	       ;; length of section
 011B  FFFF			   DW	 -1			       ;; code page
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;***************************************
				;;***BD - ADDED FOR ALT CASE
				;;******************************
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Alt Case
				;; KEYBOARD TYPES: All
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 011D  000D			   DW	 COM_ALT_K1_END-$	       ;; length of state section
 011F  22			   DB	 ALT_CASE		       ;; State ID
 0120  FFFF			   DW	 ANY_KB 		       ;; Keyboard Type
 0122  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0124  0004			   DW	 COM_ALT_K1_T1_END-$	       ;; Size of xlat table
 0126  40			   DB	 TYPE_2_TAB		       ;; xlat options:
 0127  00			   DB	 0			       ;; 3 number of entries
				;;***BD THIS ENTRY IS A TEST ENTRY
				;; DB	 53,225,0		       ;; TEST ENTRY
				;;   DB    53,0,82H			 ;; valid alt -
				;;   DB    12,-1,-1			 ;; invalid alt -
				;;   DB    13,-1,-1			 ;; invalid alt =
 0128				COM_ALT_K1_T1_END:		       ;;
								       ;;
 0128  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 012A				COM_ALT_K1_END: 		       ;;
								       ;;
				;;******************************
				;;***BD - ADDED FOR CTRL CASE
				;;******************************
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-19


				;; STATE: Ctrl Case
				;; KEYBOARD TYPES: G_KB+P12_KB+AT
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 012A  0013			   DW	 COM_CTRL_K1_END-$	       ;; length of state section
 012C  23			   DB	 CTRL_CASE		       ;; State ID
 012D  3400			   DW	 G_KB+P12_KB+AT_KB	       ;; Keyboard Type
 012F  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0131  000A			   DW	 COM_CTRL_K1_T1_END-$	       ;; Size of xlat table
 0133  40			   DB	 TYPE_2_TAB		       ;; xlat options:
 0134  02			   DB	 2			       ;; number of entries
				;;***BD THIS ENTRY IS A TEST ENTRY
				;; DB	 53,226,0		       ;; TEST ENTRY
 0135  2B FF FF			   DB	 43,-1,-1		       ;; invalid slash
 0138  29 1C 29			   DB	 41,28,41		       ;; valid slash
 013B				COM_CTRL_K1_T1_END:		       ;;
								       ;;
 013B  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 013D				COM_CTRL_K1_END:		       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Non-Alpha Lower Case
				;; KEYBOARD TYPES: G_KB+P12_KB
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 013D  0021			   DW	 COM_NA_LO_K1_END-$		  ;; length of state section
 013F  05			   DB	 NON_ALPHA_LOWER	       ;; State ID
 0140  1400			   DW	 G_KB+P12_KB		     ;; Keyboard Type
 0142  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0144  0018			   DW	 COM_NA_LO_K1_T1_END-$		  ;; Size of xlat table
 0146  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 0147  0A			   DB	 10			       ;; number of entries
 0148  29 5C			   DB	 41,"\"                        ;; \
 014A  0C 27			   DB	 12,"'"                        ;; '
 014C  0D 8D			   DB	 13,141 		       ;; grave i - ¡;
 014E  1B 2B			   DB	 27,'+'                        ;; +
 0150  56 3C			   DB	 86,'<'                        ;; <
 0152  35 2D			   DB	 53,'-'                        ;; -
 0154  27 95			   DB	 39,149 		       ;; grave o - •
 0156  28 85			   DB	 40,133 		       ;; grave a - …;
 0158  2B 97			   DB	 43,151 		       ;; grave u - —;
 015A  1A 8A			   DB	 26,138 		       ;; grave e - Š;
 015C				COM_NA_LO_K1_T1_END:			  ;;
								       ;;
 015C  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 015E				COM_NA_LO_K1_END:			  ;;
								       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-20


				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Non-Alpha Lower Case
				;; KEYBOARD TYPES: AT
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 015E  001F			   DW	 COM_NA_LO_K2_END-$		  ;; length of state section
 0160  05			   DB	 NON_ALPHA_LOWER	       ;; State ID
 0161  2000			   DW	 AT_KB			       ;; Keyboard Type
 0163  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0165  0016			   DW	 COM_NA_LO_K2_T1_END-$		  ;; Size of xlat table
 0167  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 0168  09			   DB	 9			       ;; number of entries
 0169  29 3C			   DB	 41,"<"                        ;; <
 016B  0C 27			   DB	 12,"'"                        ;; '
 016D  0D 8D			   DB	 13,141 		       ;; grave i - ¡;
 016F  1B 2B			   DB	 27,'+'                        ;; +
 0171  35 2D			   DB	 53,'-'                        ;; -
 0173  27 95			   DB	 39,149 		       ;; grave o - •
 0175  28 85			   DB	 40,133 		       ;; grave a - …;
 0177  2B 97			   DB	 43,151 		       ;; grave u - —;
 0179  1A 8A			   DB	 26,138 		       ;; grave e - Š;
 017B				COM_NA_LO_K2_T1_END:			  ;;
								       ;;
 017B  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 017D				COM_NA_LO_K2_END:			  ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Non-Alpha Lower Case
				;; KEYBOARD TYPES:  XT +
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 017D  001F			   DW	 COM_NA_LO_K3_END-$		  ;; length of state section
 017F  05			   DB	 NON_ALPHA_LOWER	       ;; State ID
 0180  4000			   DW	 XT_KB			 ;; Keyboard Type
 0182  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0184  0016			   DW	 COM_NA_LO_K3_T1_END-$		  ;; Size of xlat table
 0186  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 0187  09			   DB	 9			       ;; number of entries
 0188  0C 27			   DB	 12,"'"                        ;; '
 018A  0D 8D			   DB	 13,141 		       ;; grave i - ¡;
 018C  1B 2B			   DB	 27,'+'                        ;; +
 018E  2B 3C			   DB	 43,'<'                        ;; <
 0190  35 2D			   DB	 53,'-'                        ;; -
 0192  27 95			   DB	 39,149 		       ;; grave o - •
 0194  28 85			   DB	 40,133 		       ;; grave a - …;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-21


 0196  29 97			   DB	 41,151 		       ;; grave u - —;
 0198  1A 8A			   DB	 26,138 		       ;; grave e - Š;
 019A				COM_NA_LO_K3_T1_END:			  ;;
								       ;;
 019A  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 019C				COM_NA_LO_K3_END:			  ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Non-Alpha Upper Case
				;; KEYBOARD TYPES: G_KB+P12
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 019C  0031			   DW	 COM_NA_UP_K1_END-$		  ;; length of state section
 019E  06			   DB	 NON_ALPHA_UPPER	       ;; State ID
 019F  1400			   DW	 G_KB+P12_KB		     ;; Keyboard Type
 01A1  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 01A3  0028			   DW	 COM_NA_UP_K1_T1_END-$		  ;; Size of xlat table
 01A5  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 01A6  12			   DB	 18			       ;; number of entries
 01A7  29 7C			   DB	  41,07CH		       ;; Solid vertical bar - |
 01A9  03 22			   DB	  3,'"'                        ;;
 01AB  04 9C			   DB	  4,'œ'                        ;;
 01AD  07 26			   DB	  7,'&'                        ;;
 01AF  08 2F			   DB	  8,'/'                        ;;
 01B1  09 28			   DB	  9,'('                        ;;
 01B3  0A 29			   DB	 10,')'                        ;;
 01B5  0B 3D			   DB	 11,'='                        ;;
 01B7  0C 3F			   DB	 12,'?'                        ;;
 01B9  0D 5E			   DB	 13,'^'                        ;;
 01BB  1A 82			   DB	 26,130 		       ;; acute e - ‚;
 01BD  27 87			   DB	 39,135 		       ;; c - cedilla - ‡
 01BF  1B 2A			   DB	 27,'*'                        ;;
 01C1  28 F8			   DB	 40,0F8H		       ;; ø - degree symbol
 01C3  56 3E			   DB	 86,'>'                        ;;
 01C5  33 3B			   DB	 51,';'                        ;;
 01C7  34 3A			   DB	 52,':'                        ;;
 01C9  35 5F			   DB	 53,'_'                        ;;
								       ;;
 01CB				COM_NA_UP_K1_T1_END:			  ;;
								       ;;
 01CB  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 01CD				COM_NA_UP_K1_END:			  ;;
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Non-Alpha Upper Case
				;; KEYBOARD TYPES: AT
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-22


				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 01CD  0031			   DW	 COM_NA_UP_K2_END-$		  ;; length of state section
 01CF  06			   DB	 NON_ALPHA_UPPER	       ;; State ID
 01D0  2000			   DW	 AT_KB			       ;; Keyboard Type
 01D2  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 01D4  0028			   DW	 COM_NA_UP_K2_T1_END-$		  ;; Size of xlat table
 01D6  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 01D7  12			   DB	 18			       ;; number of entries
 01D8  29 3E			   DB	  41,'>'                       ;; >
 01DA  03 22			   DB	  3,'"'                        ;;
 01DC  04 9C			   DB	  4,'œ'                        ;;
 01DE  07 26			   DB	  7,'&'                        ;;
 01E0  08 2F			   DB	  8,'/'                        ;;
 01E2  09 28			   DB	  9,'('                        ;;
 01E4  0A 29			   DB	 10,')'                        ;;
 01E6  0B 3D			   DB	 11,'='                        ;;
 01E8  0C 3F			   DB	 12,'?'                        ;;
 01EA  0D 5E			   DB	 13,'^'                        ;;
 01EC  1A 82			   DB	 26,130 		       ;; acute e - ‚;
 01EE  27 40			   DB	 39,'@'                        ;; @ AT sign replaces c - cedilla - ‡
 01F0  1B 2A			   DB	 27,'*'                        ;;
 01F2  28 23			   DB	 40,'#'                        ;; # sign replaces ø - degree symbol
 01F4  56 3E			   DB	 86,'>'                        ;;
 01F6  33 3B			   DB	 51,';'                        ;;
 01F8  34 3A			   DB	 52,':'                        ;;
 01FA  35 5F			   DB	 53,'_'                        ;;
								       ;;
 01FC				COM_NA_UP_K2_T1_END:		       ;;
								       ;;
 01FC  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 01FE				COM_NA_UP_K2_END:		       ;;
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Non-Alpha Upper Case
				;; KEYBOARD TYPES: XT +
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 01FE  002F			   DW	 COM_NA_UP_K3_END-$		  ;; length of state section
 0200  06			   DB	 NON_ALPHA_UPPER	       ;; State ID
 0201  4000			   DW	 XT_KB			 ;; Keyboard Type
 0203  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0205  0026			   DW	 COM_NA_UP_K3_T1_END-$		  ;; Size of xlat table
 0207  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 0208  11			   DB	 17			       ;; number of entries
 0209  03 22			   DB	  3,'"'                        ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-23


 020B  04 9C			   DB	  4,'œ'                        ;;
 020D  07 26			   DB	  7,'&'                        ;;
 020F  08 2F			   DB	  8,'/'                        ;;
 0211  09 28			   DB	  9,'('                        ;;
 0213  0A 29			   DB	 10,')'                        ;;
 0215  0B 3D			   DB	 11,'='                        ;;
 0217  0C 3F			   DB	 12,'?'                        ;;
 0219  0D 5E			   DB	 13,'^'                        ;;
 021B  1A 82			   DB	 26,130 		       ;; acute e - ‚;
 021D  27 40			   DB	 39,'@'                        ;; @ AT sign replaces c - cedilla - ‡
 021F  1B 2A			   DB	 27,'*'                        ;;
 0221  28 23			   DB	 40,'#'                        ;; # sign replaces ø - degree symbol
 0223  2B 3E			   DB	 43,'>'                        ;;
 0225  33 3B			   DB	 51,';'                        ;;
 0227  34 3A			   DB	 52,':'                        ;;
 0229  35 5F			   DB	 53,'_'                        ;;
								       ;;
 022B				COM_NA_UP_K3_T1_END:			  ;;
								       ;;
 022B  0000			   DW	 0			       ;; Size of xlat table - null table
								       ;;
 022D				COM_NA_UP_K3_END:			  ;;
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Third Shift
				;; KEYBOARD TYPES: G_KB+P12_KB
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 022D  0015			   DW	 COM_THIRD_K1_END-$		  ;; length of state section
 022F  07			   DB	 THIRD_SHIFT		       ;; State ID
 0230  1400			   DW	 G_KB+P12_KB		       ;; Keyboard Type
 0232  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0234  000C			   DW	 COM_THIRD_K1_T1_END-$		  ;; Size of xlat table
 0236  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 0237  04			   DB	 4			       ;; number of entries
 0238  1A 5B			   DB	 26,'['                        ;;
 023A  1B 5D			   DB	 27,']'                        ;;
 023C  27 40			   DB	 39,'@'                        ;;
 023E  28 23			   DB	 40,'#'                        ;;
 0240				COM_THIRD_K1_T1_END:			  ;;
								       ;;
 0240  0000			   DW	 0			       ;; Last xlat table
 0242				COM_THIRD_K1_END:			  ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Third Shift
				;; KEYBOARD TYPES: AT
				;; TABLE TYPE: Translate
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-24


				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 0242  0013			   DW	 COM_THIRD_K2_END-$		  ;; length of state section
 0244  07			   DB	 THIRD_SHIFT		       ;; State ID
 0245  2000			   DW	 AT_KB			       ;; Keyboard Type
 0247  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 0249  000A			   DW	 COM_THIRD_K2_T1_END-$		  ;; Size of xlat table
 024B  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 024C  03			   DB	 3			       ;; number of entries
 024D  29 5C			   DB	 41,'\'                        ;;
 024F  1A 5B			   DB	 26,'['                        ;;
 0251  1B 5D			   DB	 27,']'                        ;;
 0253				COM_THIRD_K2_T1_END:			  ;;
								       ;;
 0253  0000			   DW	 0			       ;; Last xlat table
 0255				COM_THIRD_K2_END:			  ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: Common
				;; STATE: Third Shift
				;; KEYBOARD TYPES:  XT +
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 0255  0013			   DW	 COM_THIRD_K3_END-$		  ;; length of state section
 0257  07			   DB	 THIRD_SHIFT		       ;; State ID
 0258  4000			   DW	 XT_KB			 ;; Keyboard Type
 025A  FF FF			   DB	 -1,-1			       ;; Buffer entry for error character
								       ;;
 025C  000A			   DW	 COM_THIRD_K3_T1_END-$		  ;; Size of xlat table
 025E  C0			   DB	 STANDARD_TABLE 	       ;; xlat options:
 025F  03			   DB	 3			       ;; number of entries
 0260  2B 5C			   DB	 43,'\'                        ;;
 0262  1A 5B			   DB	 26,'['                        ;;
 0264  1B 5D			   DB	 27,']'                        ;;
 0266				COM_THIRD_K3_T1_END:			  ;;
								       ;;
 0266  0000			   DW	 0			       ;; Last xlat table
 0268				COM_THIRD_K3_END:			  ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 0268  0000			   DW	 0			       ;; Last State
 026A				COMMON_XLAT_END:		       ;;
								       ;;
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;***************************************
				;; IT Specific Translate Section for 437
				;; 437 IS COMPLETELY COVERED BY THE COMMON TABLE.
				;;***************************************
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-25


								       ;;
				 PUBLIC IT2_437_XLAT			;;
 026A				IT2_437_XLAT:				;;
								       ;;
 026A  0024			   DW	  CP437_XLAT_END-$	       ;; length of section
 026C  01B5			   DW	  437			       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: 437
				;; STATE: Non-Alpha Upper case
				;; KEYBOARD TYPES: G_KB+P12+AT
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
									 ;;
 026E  000F			     DW    CP437_NA_UP_K1_END-$ 	 ;; length of state section
 0270  06			     DB    NON_ALPHA_UPPER		 ;; State ID
 0271  3400			     DW    G_KB+P12_KB+AT_KB		 ;; Keyboard Type
 0273  FF FF			     DB    -1,-1			 ;; error character = standalone accent
									 ;;
 0275  0006			     DW    CP437_NA_UP_T1_K1_END-$	 ;; Size of xlat table
 0277  E0			     DB    STANDARD_TABLE+ZERO_SCAN	 ;; xlat options:
 0278  01			     DB    1				 ;; number of scans
 0279  2B 15			     DB    43,015H			 ;; Section symbol - 
 027B				  CP437_NA_UP_T1_K1_END:		 ;;
									 ;;
 027B  0000			     DW    0				 ;; Size of xlat table - null table
									 ;;
 027D				  CP437_NA_UP_K1_END:			 ;;
									 ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: 437
				;; STATE: Non-Alpha Upper case
				;; KEYBOARD TYPES: XT +
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
									 ;;
 027D  000F			     DW    CP437_NA_UP_K2_END-$ 	 ;; length of state section
 027F  06			     DB    NON_ALPHA_UPPER		 ;; State ID
 0280  4000			     DW    XT_KB			 ;; Keyboard Type
 0282  FF FF			     DB    -1,-1			 ;; error character = standalone accent
									 ;;
 0284  0006			     DW    CP437_NA_UP_T1_K2_END-$	 ;; Size of xlat table
 0286  E0			     DB    STANDARD_TABLE+ZERO_SCAN	 ;; xlat options:
 0287  01			     DB    1				 ;; number of scans
 0288  29 15			     DB    41,015H			 ;; Section symbol - 
 028A				  CP437_NA_UP_T1_K2_END:		 ;;
									 ;;
 028A  0000			     DW    0				 ;; Size of xlat table - null table
									 ;;
 028C				  CP437_NA_UP_K2_END:			 ;;
									 ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 028C  0000			   DW	  0			       ;; LAST STATE
								       ;;
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-26


 028E				CP437_XLAT_END: 		       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;***************************************
				;; IT Specific Translate Section for 850
				;;***************************************
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
				 PUBLIC IT2_850_XLAT			;;
 028E				IT2_850_XLAT:				;;
								       ;;
 028E  0024			   DW	  CP850_XLAT_END-$	       ;; length of section
 0290  0352			   DW	  850			       ;;
								       ;;
								       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: 850
				;; STATE: Non-Alpha Upper case
				;; KEYBOARD TYPES: G_KB+P12+AT
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
									 ;;
 0292  000F			     DW    CP850_NA_UP_K1_END-$ 	 ;; length of state section
 0294  06			     DB    NON_ALPHA_UPPER		 ;; State ID
 0295  3400			     DW    G_KB+P12_KB+AT_KB		 ;; Keyboard Type
 0297  FF FF			     DB    -1,-1			 ;; error character = standalone accent
									 ;;
 0299  0006			     DW    CP850_NA_UP_T1_K1_END-$	 ;; Size of xlat table
 029B  E0			     DB    STANDARD_TABLE+ZERO_SCAN	 ;; xlat options:
 029C  01			     DB    1				 ;; number of scans
 029D  2B F5			     DB    43,0F5H			 ;; Section symbol - 
 029F				  CP850_NA_UP_T1_K1_END:		 ;;
									 ;;
 029F  0000			     DW    0				 ;; Size of xlat table - null table
									 ;;
 02A1				  CP850_NA_UP_K1_END:			 ;;
									 ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
				;; CODE PAGE: 850
				;; STATE: Non-Alpha Upper case
				;; KEYBOARD TYPES: XT
				;; TABLE TYPE: Translate
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
									 ;;
 02A1  000F			     DW    CP850_NA_UP_K2_END-$ 	 ;; length of state section
 02A3  06			     DB    NON_ALPHA_UPPER		 ;; State ID
 02A4  4000			     DW    XT_KB			 ;; Keyboard Type
 02A6  FF FF			     DB    -1,-1			 ;; error character = standalone accent
									 ;;
 02A8  0006			     DW    CP850_NA_UP_T1_K2_END-$	 ;; Size of xlat table
 02AA  E0			     DB    STANDARD_TABLE+ZERO_SCAN	 ;; xlat options:
 02AB  01			     DB    1				 ;; number of scans
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Page     1-27


 02AC  29 F5			     DB    41,0F5H			 ;; Section symbol - 
 02AE				  CP850_NA_UP_T1_K2_END:		 ;;
									 ;;
 02AE  0000			     DW    0				 ;; Size of xlat table - null table
									 ;;
 02B0				  CP850_NA_UP_K2_END:			 ;;
									 ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 02B0  0000			   DW	 0			       ;; LAST STATE
								       ;;
 02B2				CP850_XLAT_END: 		       ;;
				;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
								       ;;
 02B2				CODE	 ENDS			       ;;
					 END			       ;;

Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-1


Macros:

		N a m e			Lines

ANDF . . . . . . . . . . . . . .  	  24
BEEP . . . . . . . . . . . . . .  	   1
CHECK_FOR_CORE_KEY . . . . . . .  	   1
ELSEF  . . . . . . . . . . . . .  	   1
ENDIFF . . . . . . . . . . . . .  	   1
EXIT_INT_9 . . . . . . . . . . .  	   2
EXIT_STATE_LOGIC . . . . . . . .  	   2
FIND_FLAG  . . . . . . . . . . .  	  77
FLAG . . . . . . . . . . . . . .  	   9
GOTO . . . . . . . . . . . . . .  	   2
IFF  . . . . . . . . . . . . . .  	  24
IFKBD  . . . . . . . . . . . . .  	   2
OPTION . . . . . . . . . . . . .  	  17
PUT_ERROR_CHAR . . . . . . . . .  	   2
RESET_NLS  . . . . . . . . . . .  	   1
SET_FLAG . . . . . . . . . . . .  	   2
XLATT  . . . . . . . . . . . . .  	   2

Structures and Records:

                N a m e                 Width   # fields
                                        Shift   Width   Mask    Initial

SET_FLAG_STR . . . . . . . . . .  	0004	0004
  SF_NUM . . . . . . . . . . . .  	0000
  SF_SCAN_CODE . . . . . . . . .  	0001
  SF_FLAG_ID . . . . . . . . . .  	0002
  SF_FLAG_MASK . . . . . . . . .  	0003
SHARED_DATA_STR  . . . . . . . .  	002E	0015
  OLD_INT_9  . . . . . . . . . .  	0000
  OLD_INT_2F . . . . . . . . . .  	0004
  OLD_INT_48 . . . . . . . . . .  	0008
  KEYB_TYPE  . . . . . . . . . .  	000C
  SYSTEM_FLAG  . . . . . . . . .  	000E
  TABLE_OK . . . . . . . . . . .  	0010
  JR_KB_FLAG . . . . . . . . . .  	0011
  ACTIVE_LANGUAGE  . . . . . . .  	0016
  INVOKED_CP_TABLE . . . . . . .  	0018
  ACTIVE_XLAT_PTR  . . . . . . .  	001A
  FIRST_XLAT_PTR . . . . . . . .  	001C
  RESIDENT_END . . . . . . . . .  	001E
  LOGIC_PTR  . . . . . . . . . .  	0020
  COMMON_XLAT_PTR  . . . . . . .  	0022
  SPECIAL_FEATURES . . . . . . .  	0024
  TABLE_OVERFLOW . . . . . . . .  	0026
  HOT_KEY_ON_SCAN  . . . . . . .  	0027
  HOT_KEY_OFF_SCAN . . . . . . .  	0028
  TABLE_AREA . . . . . . . . . .  	002D
STATE_LOGIC_STR  . . . . . . . .  	0005	0003
  SL_LOGIC_LEN . . . . . . . . .  	0000
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-2


  SL_SPECIAL_FEATURES  . . . . .  	0002
  SL_LOGIC_CMDS  . . . . . . . .  	0004
STATE_STR  . . . . . . . . . . .  	0008	0005
  XS_STATE_LEN . . . . . . . . .  	0000
  XS_STATE_ID  . . . . . . . . .  	0002
  XS_KBD_TYPE  . . . . . . . . .  	0003
  XS_ERROR_CHAR  . . . . . . . .  	0005
  XS_FIRST_TAB . . . . . . . . .  	0007
XLAT_SECT_STR  . . . . . . . . .  	0005	0003
  XS_NEXT_SECT_PTR . . . . . . .  	0000
  XS_CP_ID . . . . . . . . . . .  	0002
  XS_FIRST_STATE . . . . . . . .  	0004
XLAT_STR . . . . . . . . . . . .  	0003	0002
  XLAT_TAB_SIZE  . . . . . . . .  	0000
  XLAT_OPTIONS . . . . . . . . .  	0002
XLAT_TYPE_1_STR  . . . . . . . .  	0006	0004
  XLAT_SCAN_LO . . . . . . . . .  	0003
  XLAT_SCAN_HI . . . . . . . . .  	0004
  XLAT_1_BUF_ENTRY . . . . . . .  	0005
XLAT_TYPE_2_STR  . . . . . . . .  	0006	0004
  XLAT_NUM . . . . . . . . . . .  	0003
  XLAT_SCAN  . . . . . . . . . .  	0004
  XLAT_2_BUF_ENTRY . . . . . . .  	0005

Segments and Groups:

                N a m e         	Length	 Align	Combine Class

CODE . . . . . . . . . . . . . .  	02B2	PARA	PUBLIC	'CODE'

Symbols:            

                N a m e         	Type	 Value	 Attr

ACUTE  . . . . . . . . . . . . .  	NUMBER	0080	
ACUTE_ACUTE  . . . . . . . . . .  	NUMBER	0019	
ACUTE_LOWER  . . . . . . . . . .  	NUMBER	0008	
ACUTE_PROC . . . . . . . . . . .  	L NEAR	0013	CODE
ACUTE_SPACE  . . . . . . . . . .  	NUMBER	000A	
ACUTE_UPPER  . . . . . . . . . .  	NUMBER	0009	
ALPHA_LOWER  . . . . . . . . . .  	NUMBER	0003	
ALPHA_UPPER  . . . . . . . . . .  	NUMBER	0004	
ALT_CASE . . . . . . . . . . . .  	NUMBER	0022	
ALT_KEY  . . . . . . . . . . . .  	NUMBER	0038	
ALT_SHIFT  . . . . . . . . . . .  	NUMBER	0008	
ANDF_COMMAND . . . . . . . . . .  	NUMBER	0010	
ANY_KB . . . . . . . . . . . . .  	NUMBER	FFFF	
ASCII_ONLY . . . . . . . . . . .  	NUMBER	0080	
ASC_ONLY_TAB_2_ENT_SZ  . . . . .  	NUMBER	0002	
AT_KB  . . . . . . . . . . . . .  	NUMBER	2000	

BAD_ADDR_MARK  . . . . . . . . .  	NUMBER	0002	
BAD_BAT  . . . . . . . . . . . .  	NUMBER	0080	
BAD_CKSUM  . . . . . . . . . . .  	NUMBER	0040	
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-3


BAD_CMD  . . . . . . . . . . . .  	NUMBER	0001	
BAD_CONFIG . . . . . . . . . . .  	NUMBER	0020	
BAD_CRC  . . . . . . . . . . . .  	NUMBER	0010	
BAD_DMA  . . . . . . . . . . . .  	NUMBER	0008	
BAD_NEC  . . . . . . . . . . . .  	NUMBER	0020	
BAD_SEEK . . . . . . . . . . . .  	NUMBER	0040	
BASE_RAM . . . . . . . . . . . .  	NUMBER	0010	
BATTERY_COND_STATUS  . . . . . .  	NUMBER	008D	
BEEP_COMMAND . . . . . . . . . .  	NUMBER	00A0	
BOTLH_CAPS . . . . . . . . . . .  	NUMBER	0026	
BOTLH_F_CAPS . . . . . . . . . .  	NUMBER	0028	
BOTRH_CAPS . . . . . . . . . . .  	NUMBER	0027	
BOTRH_F_CAPS . . . . . . . . . .  	NUMBER	0029	

CADR_PRT . . . . . . . . . . . .  	NUMBER	0070	
CAPS_KEY . . . . . . . . . . . .  	NUMBER	003A	
CAPS_SHIFT . . . . . . . . . . .  	NUMBER	0040	
CAPS_STATE . . . . . . . . . . .  	NUMBER	0040	
CDATA_PRT  . . . . . . . . . . .  	NUMBER	0071	
CEDILLA  . . . . . . . . . . . .  	NUMBER	0008	
CEDILLA_CEDILLA  . . . . . . . .  	NUMBER	0017	
CEDILLA_LOWER  . . . . . . . . .  	NUMBER	0014	
CEDILLA_SPACE  . . . . . . . . .  	NUMBER	0016	
CEDILLA_UPPER  . . . . . . . . .  	NUMBER	0015	
CHECK_CORE_COMMAND . . . . . . .  	NUMBER	00C0	
CHGLN  . . . . . . . . . . . . .  	NUMBER	0002	
CIRCUMFLEX . . . . . . . . . . .  	NUMBER	0010	
CIRCUMFLEX_CIRCUMFLEX  . . . . .  	NUMBER	001C	
CIRCUMFLEX_LOWER . . . . . . . .  	NUMBER	0011	
CIRCUMFLEX_PROC  . . . . . . . .  	L NEAR	0094	CODE
CIRCUMFLEX_SPACE . . . . . . . .  	NUMBER	0013	
CIRCUMFLEX_UPPER . . . . . . . .  	NUMBER	0012	
CIRCUS_SYSTEM  . . . . . . . . .  	NUMBER	0008	
CLK_UP . . . . . . . . . . . . .  	NUMBER	008A	
CMD_DATA . . . . . . . . . . . .  	NUMBER	0008	
CMOSDSB_ADDR . . . . . . . . . .  	NUMBER	000E	
CMOSDSK_BYTE . . . . . . . . . .  	NUMBER	0010	
CMOS_ALARM . . . . . . . . . . .  	NUMBER	008B	
CMOS_BEGIN . . . . . . . . . . .  	NUMBER	0090	
CMOS_CLK_FAIL  . . . . . . . . .  	NUMBER	0004	
CMOS_END . . . . . . . . . . . .  	NUMBER	00AD	
CMOS_GOOD  . . . . . . . . . . .  	NUMBER	00C0	
CMOS_PORT  . . . . . . . . . . .  	NUMBER	0070	
COMMAND_BITS . . . . . . . . . .  	NUMBER	00F0	
COMMAND_SHIFT  . . . . . . . . .  	NUMBER	0004	
COMMON_XLAT_END  . . . . . . . .  	L NEAR	026A	CODE
COM_ALT_K1_END . . . . . . . . .  	L NEAR	012A	CODE
COM_ALT_K1_T1_END  . . . . . . .  	L NEAR	0128	CODE
COM_CTRL_K1_END  . . . . . . . .  	L NEAR	013D	CODE
COM_CTRL_K1_T1_END . . . . . . .  	L NEAR	013B	CODE
COM_NA_LO_K1_END . . . . . . . .  	L NEAR	015E	CODE
COM_NA_LO_K1_T1_END  . . . . . .  	L NEAR	015C	CODE
COM_NA_LO_K2_END . . . . . . . .  	L NEAR	017D	CODE
COM_NA_LO_K2_T1_END  . . . . . .  	L NEAR	017B	CODE
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-4


COM_NA_LO_K3_END . . . . . . . .  	L NEAR	019C	CODE
COM_NA_LO_K3_T1_END  . . . . . .  	L NEAR	019A	CODE
COM_NA_UP_K1_END . . . . . . . .  	L NEAR	01CD	CODE
COM_NA_UP_K1_T1_END  . . . . . .  	L NEAR	01CB	CODE
COM_NA_UP_K2_END . . . . . . . .  	L NEAR	01FE	CODE
COM_NA_UP_K2_T1_END  . . . . . .  	L NEAR	01FC	CODE
COM_NA_UP_K3_END . . . . . . . .  	L NEAR	022D	CODE
COM_NA_UP_K3_T1_END  . . . . . .  	L NEAR	022B	CODE
COM_THIRD_K1_END . . . . . . . .  	L NEAR	0242	CODE
COM_THIRD_K1_T1_END  . . . . . .  	L NEAR	0240	CODE
COM_THIRD_K2_END . . . . . . . .  	L NEAR	0255	CODE
COM_THIRD_K2_T1_END  . . . . . .  	L NEAR	0253	CODE
COM_THIRD_K3_END . . . . . . . .  	L NEAR	0268	CODE
COM_THIRD_K3_T1_END  . . . . . .  	L NEAR	0266	CODE
CP437_NA_UP_K1_END . . . . . . .  	L NEAR	027D	CODE
CP437_NA_UP_K2_END . . . . . . .  	L NEAR	028C	CODE
CP437_NA_UP_T1_K1_END  . . . . .  	L NEAR	027B	CODE
CP437_NA_UP_T1_K2_END  . . . . .  	L NEAR	028A	CODE
CP437_XLAT_END . . . . . . . . .  	L NEAR	028E	CODE
CP850_NA_UP_K1_END . . . . . . .  	L NEAR	02A1	CODE
CP850_NA_UP_K2_END . . . . . . .  	L NEAR	02B0	CODE
CP850_NA_UP_T1_K1_END  . . . . .  	L NEAR	029F	CODE
CP850_NA_UP_T1_K2_END  . . . . .  	L NEAR	02AE	CODE
CP850_XLAT_END . . . . . . . . .  	L NEAR	02B2	CODE
CTL_KEY  . . . . . . . . . . . .  	NUMBER	001D	
CTL_SHIFT  . . . . . . . . . . .  	NUMBER	0004	
CTRL_CASE  . . . . . . . . . . .  	NUMBER	0023	
C_EQUIP  . . . . . . . . . . . .  	NUMBER	0094	

DD_MASK  . . . . . . . . . . . .  	NUMBER	0010	
DEAD_FOURTH  . . . . . . . . . .  	NUMBER	001E	
DEAD_LOWER . . . . . . . . . . .  	NUMBER	0001	
DEAD_THIRD . . . . . . . . . . .  	NUMBER	0018	
DEAD_UPPER . . . . . . . . . . .  	NUMBER	0002	
DEFAULT_TAB_2_ENT_SZ . . . . . .  	NUMBER	0003	
DEL_KEY  . . . . . . . . . . . .  	NUMBER	0053	
DETERMINED . . . . . . . . . . .  	NUMBER	0010	
DIAG_STATUS  . . . . . . . . . .  	NUMBER	008E	
DIARESIS . . . . . . . . . . . .  	NUMBER	0020	
DIARESIS_DIARESIS  . . . . . . .  	NUMBER	001B	
DIARESIS_LOWER . . . . . . . . .  	NUMBER	000E	
DIARESIS_PROC  . . . . . . . . .  	L NEAR	003E	CODE
DIARESIS_SPACE . . . . . . . . .  	NUMBER	0010	
DIARESIS_UPPER . . . . . . . . .  	NUMBER	000F	
DISABLE_BIT20  . . . . . . . . .  	NUMBER	00DD	
DIS_KBD  . . . . . . . . . . . .  	NUMBER	00AD	
DIVIDE_SIGN  . . . . . . . . . .  	NUMBER	0025	
DMA  . . . . . . . . . . . . . .  	NUMBER	0000	
DMA08  . . . . . . . . . . . . .  	NUMBER	0008	
DMA1 . . . . . . . . . . . . . .  	NUMBER	00C0	
DMA18  . . . . . . . . . . . . .  	NUMBER	00D0	
DMA_BOUNDARY . . . . . . . . . .  	NUMBER	0009	
DMA_PAGE . . . . . . . . . . . .  	NUMBER	0081	
DOUBLE_STEP  . . . . . . . . . .  	NUMBER	0020	
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-5


DSK_CHG  . . . . . . . . . . . .  	NUMBER	0080	
DSK_FAIL . . . . . . . . . . . .  	NUMBER	0040	
DSP_JMP  . . . . . . . . . . . .  	NUMBER	0040	
DUAL . . . . . . . . . . . . . .  	NUMBER	0001	

EITHER_ALT . . . . . . . . . . .  	NUMBER	0020	
EITHER_CTL . . . . . . . . . . .  	NUMBER	0040	
EITHER_SHIFT . . . . . . . . . .  	NUMBER	0080	
ELSEF_COMMAND  . . . . . . . . .  	NUMBER	0020	
ENABLE_BIT20 . . . . . . . . . .  	NUMBER	00DF	
ENA_KBD  . . . . . . . . . . . .  	NUMBER	00AE	
ENDIFF_COMMAND . . . . . . . . .  	NUMBER	0030	
EOI  . . . . . . . . . . . . . .  	NUMBER	0020	
EXIT_IF_FOUND  . . . . . . . . .  	NUMBER	0080	
EXIT_INT_9_FLAG  . . . . . . . .  	NUMBER	0001	
EXIT_STATE_LOGIC_FLAG  . . . . .  	NUMBER	0002	
EXT_16 . . . . . . . . . . . . .  	NUMBER	8000	
EXT_KB_FLAG_ID . . . . . . . . .  	NUMBER	0004	

F11_M  . . . . . . . . . . . . .  	NUMBER	0057	
F12_M  . . . . . . . . . . . . .  	NUMBER	0058	
F1_SCAN  . . . . . . . . . . . .  	NUMBER	003B	
F2_SCAN  . . . . . . . . . . . .  	NUMBER	003C	
FLAG_ID  . . . . . . . . . . . .  	NUMBER	0003	
FLAG_ID_BITS . . . . . . . . . .  	NUMBER	0007	
FOURTH_SHIFT . . . . . . . . . .  	NUMBER	001D	

GOTO_COMMAND . . . . . . . . . .  	NUMBER	0090	
GRAPH_ON . . . . . . . . . . . .  	NUMBER	0008	
GRAVE  . . . . . . . . . . . . .  	NUMBER	0040	
GRAVE_GRAVE  . . . . . . . . . .  	NUMBER	001A	
GRAVE_LOWER  . . . . . . . . . .  	NUMBER	000B	
GRAVE_PROC . . . . . . . . . . .  	L NEAR	0069	CODE
GRAVE_SPACE  . . . . . . . . . .  	NUMBER	000D	
GRAVE_UPPER  . . . . . . . . . .  	NUMBER	000C	
G_KB . . . . . . . . . . . . . .  	NUMBER	1000	

HD12_SETTLE  . . . . . . . . . .  	NUMBER	000F	
HD320_SETTLE . . . . . . . . . .  	NUMBER	0014	
HD_FILE_TYPE . . . . . . . . . .  	NUMBER	0092	
HF_BOOT  . . . . . . . . . . . .  	NUMBER	0020	
HF_FAIL  . . . . . . . . . . . .  	NUMBER	0008	
HOLD_STATE . . . . . . . . . . .  	NUMBER	0008	

ID_1 . . . . . . . . . . . . . .  	NUMBER	00AB	
ID_2 . . . . . . . . . . . . . .  	NUMBER	0041	
ID_2A  . . . . . . . . . . . . .  	NUMBER	0054	
IFF_COMMAND  . . . . . . . . . .  	NUMBER	0000	
IFKBD_COMMAND  . . . . . . . . .  	NUMBER	0080	
INFO_STATUS  . . . . . . . . . .  	NUMBER	00B3	
INH_KEYBOARD . . . . . . . . . .  	NUMBER	0010	
INPT_BUF_FULL  . . . . . . . . .  	NUMBER	0002	
INS_KEY  . . . . . . . . . . . .  	NUMBER	0052	
INS_SHIFT  . . . . . . . . . . .  	NUMBER	0080	
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-6


INS_STATE  . . . . . . . . . . .  	NUMBER	0080	
INTA00 . . . . . . . . . . . . .  	NUMBER	0020	
INTA01 . . . . . . . . . . . . .  	NUMBER	0021	
INTB00 . . . . . . . . . . . . .  	NUMBER	00A0	
INTB01 . . . . . . . . . . . . .  	NUMBER	00A1	
INTR_FACE_CK . . . . . . . . . .  	NUMBER	00AB	
INT_FLAG . . . . . . . . . . . .  	NUMBER	0080	
INT_TYPE . . . . . . . . . . . .  	NUMBER	0070	
INT_VIDEO  . . . . . . . . . . .  	NUMBER	0010	
INVALID_ACUTE  . . . . . . . . .  	L NEAR	0038	CODE
INVALID_CIRCUMFLEX . . . . . . .  	L NEAR	00B9	CODE
INVALID_DIARESIS . . . . . . . .  	L NEAR	0063	CODE
INVALID_DRV  . . . . . . . . . .  	NUMBER	0002	
INVALID_GRAVE  . . . . . . . . .  	L NEAR	008E	CODE
IO_CHK . . . . . . . . . . . . .  	NUMBER	0040	
IT2_437_XLAT . . . . . . . . . .  	L NEAR	026A	CODE	Global
IT2_850_XLAT . . . . . . . . . .  	L NEAR	028E	CODE	Global
IT2_COMMON_XLAT  . . . . . . . .  	L NEAR	0119	CODE	Global
IT2_LOGIC  . . . . . . . . . . .  	L NEAR	0000	CODE	Global

JR_HOT_KEY_1_2 . . . . . . . . .  	NUMBER	4000	
JR_KB  . . . . . . . . . . . . .  	NUMBER	8000	

KBDINT . . . . . . . . . . . . .  	NUMBER	0002	
KBD_IN . . . . . . . . . . . . .  	NUMBER	0060	
KBX  . . . . . . . . . . . . . .  	NUMBER	0010	
KB_ACK . . . . . . . . . . . . .  	NUMBER	00FA	
KB_BREAK . . . . . . . . . . . .  	NUMBER	00F0	
KB_CTL . . . . . . . . . . . . .  	NUMBER	0061	
KB_DATA  . . . . . . . . . . . .  	NUMBER	0060	
KB_ECHO  . . . . . . . . . . . .  	NUMBER	00FE	
KB_ENABLE  . . . . . . . . . . .  	NUMBER	00F4	
KB_ERR . . . . . . . . . . . . .  	NUMBER	0080	
KB_FA  . . . . . . . . . . . . .  	NUMBER	0010	
KB_FE  . . . . . . . . . . . . .  	NUMBER	0020	
KB_FLAG_1_ID . . . . . . . . . .  	NUMBER	0001	
KB_FLAG_2_ID . . . . . . . . . .  	NUMBER	0002	
KB_FLAG_3_ID . . . . . . . . . .  	NUMBER	0003	
KB_FLAG_ID . . . . . . . . . . .  	NUMBER	0000	
KB_LEDS  . . . . . . . . . . . .  	NUMBER	0007	
KB_MAKE_BREAK  . . . . . . . . .  	NUMBER	00F7	
KB_MENU  . . . . . . . . . . . .  	NUMBER	00F1	
KB_OK  . . . . . . . . . . . . .  	NUMBER	00AA	
KB_OVER_RUN  . . . . . . . . . .  	NUMBER	00FF	
KB_PR_LED  . . . . . . . . . . .  	NUMBER	0040	
KB_RESEND  . . . . . . . . . . .  	NUMBER	00FE	
KB_RESET . . . . . . . . . . . .  	NUMBER	00FF	
KB_TYPA_RD . . . . . . . . . . .  	NUMBER	00F3	
KEY_BD_INHIB . . . . . . . . . .  	NUMBER	0080	
KEY_FAIL . . . . . . . . . . . .  	NUMBER	0080	
KEY_NUMS . . . . . . . . . . . .  	NUMBER	0000	
KYBD_CLK . . . . . . . . . . . .  	NUMBER	0001	
KYBD_CLK_DATA  . . . . . . . . .  	NUMBER	00E0	
KYBD_FAIL  . . . . . . . . . . .  	NUMBER	0020	
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-7


KYBD_INH . . . . . . . . . . . .  	NUMBER	0010	
KYCLK_FAIL . . . . . . . . . . .  	NUMBER	0008	
KY_LOCK  . . . . . . . . . . . .  	NUMBER	0000	
KY_SYS_FAIL  . . . . . . . . . .  	NUMBER	0010	

LANG_MODE  . . . . . . . . . . .  	NUMBER	00FF	
LAST_DMA_PAGE  . . . . . . . . .  	NUMBER	008F	
LC_AB  . . . . . . . . . . . . .  	NUMBER	0040	
LC_E0  . . . . . . . . . . . . .  	NUMBER	0002	
LC_E1  . . . . . . . . . . . . .  	NUMBER	0001	
LED_CMD  . . . . . . . . . . . .  	NUMBER	00ED	
LEFT_KEY . . . . . . . . . . . .  	NUMBER	002A	
LEFT_SHIFT . . . . . . . . . . .  	NUMBER	0002	
LMCS_FAIL  . . . . . . . . . . .  	NUMBER	0004	
LOGIC_END  . . . . . . . . . . .  	L NEAR	0119	CODE
LOOP_POST  . . . . . . . . . . .  	NUMBER	0020	
LOWNIB . . . . . . . . . . . . .  	NUMBER	000F	
L_ALT_SHIFT  . . . . . . . . . .  	NUMBER	0002	
L_CTL_SHIFT  . . . . . . . . . .  	NUMBER	0001	

M12D12 . . . . . . . . . . . . .  	NUMBER	0015	
M1_SIZE_HI . . . . . . . . . . .  	NUMBER	0096	
M1_SIZE_LO . . . . . . . . . . .  	NUMBER	0095	
M2_SIZE_HI . . . . . . . . . . .  	NUMBER	0098	
M2_SIZE_LO . . . . . . . . . . .  	NUMBER	0097	
M326D12  . . . . . . . . . . . .  	NUMBER	0074	
M326D326 . . . . . . . . . . . .  	NUMBER	0093	
M640K  . . . . . . . . . . . . .  	NUMBER	0080	
MAC_OK . . . . . . . . . . . . .  	NUMBER	0001	
MAX_DRV  . . . . . . . . . . . .  	NUMBER	0002	
MAX_PERIOD . . . . . . . . . . .  	NUMBER	0540	
MC_E0  . . . . . . . . . . . . .  	NUMBER	00E0	
MC_E1  . . . . . . . . . . . . .  	NUMBER	00E1	
MEDIA_CHANGE . . . . . . . . . .  	NUMBER	0006	
MEM_FAIL . . . . . . . . . . . .  	NUMBER	0001	
MFG_JMP  . . . . . . . . . . . .  	NUMBER	0020	
MFG_PORT . . . . . . . . . . . .  	NUMBER	0080	
MIN_PERIOD . . . . . . . . . . .  	NUMBER	0410	
MOTOR_MSK  . . . . . . . . . . .  	NUMBER	00F0	
MOTOR_WAIT . . . . . . . . . . .  	NUMBER	0025	
M_SIZE_HI  . . . . . . . . . . .  	NUMBER	00B1	
M_SIZE_LO  . . . . . . . . . . .  	NUMBER	00B0	

NEW_INST . . . . . . . . . . . .  	NUMBER	0040	
NLS_FLAG_1_ID  . . . . . . . . .  	NUMBER	0005	
NLS_FLAG_2_ID  . . . . . . . . .  	NUMBER	0006	
NOCHGLN  . . . . . . . . . . . .  	NUMBER	0001	
NON_ALPHA_LOWER  . . . . . . . .  	NUMBER	0005	
NON_ALPHA_UPPER  . . . . . . . .  	NUMBER	0006	
NON_DEAD . . . . . . . . . . . .  	L NEAR	00BF	CODE
NOT_BIT  . . . . . . . . . . . .  	NUMBER	0000	
NOT_TEST . . . . . . . . . . . .  	NUMBER	0008	
NULL_ASCII_CODE  . . . . . . . .  	NUMBER	-0001	
NUMERIC_PAD  . . . . . . . . . .  	NUMBER	0024	
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-8


NUM_BIOS_FLAGS . . . . . . . . .  	NUMBER	0004	
NUM_COMMANDS . . . . . . . . . .  	NUMBER	000C	
NUM_FLAGS  . . . . . . . . . . .  	NUMBER	0007	
NUM_KEY  . . . . . . . . . . . .  	NUMBER	0045	
NUM_NLS_FLAGS  . . . . . . . . .  	NUMBER	0002	
NUM_SHIFT  . . . . . . . . . . .  	NUMBER	0020	
NUM_STATE  . . . . . . . . . . .  	NUMBER	0020	

ONE  . . . . . . . . . . . . . .  	NUMBER	0001	
ONE_SCAN . . . . . . . . . . . .  	NUMBER	0002	
OPTION_COMMAND . . . . . . . . .  	NUMBER	0050	
OUT_BUF_FULL . . . . . . . . . .  	NUMBER	0001	

P12_KB . . . . . . . . . . . . .  	NUMBER	0400	
PARITY_ERR . . . . . . . . . . .  	NUMBER	00C0	
PARITY_EVEN  . . . . . . . . . .  	NUMBER	0080	
PC_386 . . . . . . . . . . . . .  	NUMBER	0200	
PC_AT  . . . . . . . . . . . . .  	NUMBER	4000	
PC_JR  . . . . . . . . . . . . .  	NUMBER	0800	
PC_LAP . . . . . . . . . . . . .  	NUMBER	2000	
PC_NET . . . . . . . . . . . . .  	NUMBER	0100	
PC_PAL . . . . . . . . . . . . .  	NUMBER	0400	
PC_XT  . . . . . . . . . . . . .  	NUMBER	1000	
POA_DUAL . . . . . . . . . . . .  	NUMBER	0061	
POA_START  . . . . . . . . . . .  	NUMBER	0080	
PORT_A . . . . . . . . . . . . .  	NUMBER	0060	
PORT_B . . . . . . . . . . . . .  	NUMBER	0061	
POST_SP  . . . . . . . . . . . .  	NUMBER	8000	
POST_SS  . . . . . . . . . . . .  	NUMBER	0000	
PRO_FAIL . . . . . . . . . . . .  	NUMBER	0002	
PRTY_CHK . . . . . . . . . . . .  	NUMBER	0080	
PUT_ERROR_COMMAND  . . . . . . .  	NUMBER	0070	
P_KB . . . . . . . . . . . . . .  	NUMBER	0800	

QUIET_SEEK . . . . . . . . . . .  	NUMBER	000A	

RAM_PAR_OFF  . . . . . . . . . .  	NUMBER	000C	
RAM_PAR_ON . . . . . . . . . . .  	NUMBER	00F3	
RCV_TMOUT  . . . . . . . . . . .  	NUMBER	0040	
RD_ID  . . . . . . . . . . . . .  	NUMBER	0080	
READ_8042_INPUT  . . . . . . . .  	NUMBER	00C0	
READ_8042_RAM  . . . . . . . . .  	NUMBER	0020	
RECORD_NOT_FND . . . . . . . . .  	NUMBER	0004	
REFRESH_BIT  . . . . . . . . . .  	NUMBER	0010	
RESET_NLS_COMMAND  . . . . . . .  	NUMBER	00B0	
REV_STATE  . . . . . . . . . . .  	NUMBER	00F8	
RIGHT_KEY  . . . . . . . . . . .  	NUMBER	0036	
RIGHT_SHIFT  . . . . . . . . . .  	NUMBER	0001	
R_ALT_SHIFT  . . . . . . . . . .  	NUMBER	0008	
R_CTL_SHIFT  . . . . . . . . . .  	NUMBER	0004	

SCAN_MATCH . . . . . . . . . . .  	NUMBER	0008	
SCROLL_KEY . . . . . . . . . . .  	NUMBER	0046	
SCROLL_SHIFT . . . . . . . . . .  	NUMBER	0010	
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-9


SCROLL_STATE . . . . . . . . . .  	NUMBER	0010	
SELF_8042_TEST . . . . . . . . .  	NUMBER	00AA	
SENSE_DRV_ST . . . . . . . . . .  	NUMBER	0004	
SET_FLAG_COMMAND . . . . . . . .  	NUMBER	0060	
SET_NUM_LK . . . . . . . . . . .  	NUMBER	0020	
SF_ENT_SZ  . . . . . . . . . . .  	NUMBER	0003	
SHUT_CMD . . . . . . . . . . . .  	NUMBER	00FE	
SHUT_DOWN  . . . . . . . . . . .  	NUMBER	008F	
STANDARD_TABLE . . . . . . . . .  	NUMBER	00C0	
STATE_MSK  . . . . . . . . . . .  	NUMBER	0007	
STATUS_PORT  . . . . . . . . . .  	NUMBER	0064	
SUB_CMD_BITS . . . . . . . . . .  	NUMBER	000F	
SYS_FLAG . . . . . . . . . . . .  	NUMBER	0004	
SYS_KEY  . . . . . . . . . . . .  	NUMBER	0054	
SYS_SHIFT  . . . . . . . . . . .  	NUMBER	0004	

TEMP_STACK_HI  . . . . . . . . .  	NUMBER	0000	
TEMP_STACK_LO  . . . . . . . . .  	NUMBER	FFFF	
THIRD_SHIFT  . . . . . . . . . .  	NUMBER	0007	
TILDE  . . . . . . . . . . . . .  	NUMBER	0004	
TILDE_LOWER  . . . . . . . . . .  	NUMBER	001F	
TILDE_SPACE  . . . . . . . . . .  	NUMBER	0021	
TILDE_UPPER  . . . . . . . . . .  	NUMBER	0020	
TIMER  . . . . . . . . . . . . .  	NUMBER	0040	
TIMER0 . . . . . . . . . . . . .  	NUMBER	0040	
TIME_OUT . . . . . . . . . . . .  	NUMBER	0080	
TIM_CTL  . . . . . . . . . . . .  	NUMBER	0043	
TMINT  . . . . . . . . . . . . .  	NUMBER	0001	
TRANS_TMOUT  . . . . . . . . . .  	NUMBER	0020	
TRAN_MSK . . . . . . . . . . . .  	NUMBER	0003	
TRK_80 . . . . . . . . . . . . .  	NUMBER	0008	
TRK_SLAP . . . . . . . . . . . .  	NUMBER	0030	
TTEST  . . . . . . . . . . . . .  	NUMBER	0000	
TWO_SCAN . . . . . . . . . . . .  	NUMBER	0003	
TYPEWRITER_CAPS_LK . . . . . . .  	NUMBER	8000	
TYPE_2_TAB . . . . . . . . . . .  	NUMBER	0040	

UNKNOWN  . . . . . . . . . . . .  	NUMBER	00FF	
US_MODE  . . . . . . . . . . . .  	NUMBER	0000	

WRITE_8042_RAM . . . . . . . . .  	NUMBER	0060	
WRITE_OP . . . . . . . . . . . .  	NUMBER	0080	
WRITE_PROTECT  . . . . . . . . .  	NUMBER	0003	
W_MEM_SIZE . . . . . . . . . . .  	NUMBER	0010	

X287 . . . . . . . . . . . . . .  	NUMBER	00F0	
XLATT_COMMAND  . . . . . . . . .  	NUMBER	0040	
XRATE  . . . . . . . . . . . . .  	NUMBER	0002	
XT_KB  . . . . . . . . . . . . .  	NUMBER	4000	

ZERO_SCAN  . . . . . . . . . . .  	NUMBER	0020	

@CPU . . . . . . . . . . . . . .  	TEXT  0101h		
@FILENAME  . . . . . . . . . . .  	TEXT  kdfit141		
Microsoft (R) Macro Assembler Version 5.10                  5/17/24 09:43:52
DOS - Keyboard Definition File                              Symbols-10


@VERSION . . . . . . . . . . . .  	TEXT  510		


   1683 Source  Lines
   6715 Total   Lines
    445 Symbols

  46812 + 184737 Bytes symbol space free

      0 Warning Errors
      0 Severe  Errors
