IBM 5150 Hardware Reference Manual page 220

Hide thumbs Also See for 5150:
Table of Contents

Advertisement

LOC OBJ
LINE
SOURCE
EAID 680052
EA20 E98901
£.1.23
EAll 80FCI0
~EA26731A
fAze F6D4
EAZA 20261700
EAZE XBa
£.1.30 752C
£A3l .1.01900
EA35 8400
EA37 88261900
£AlB XOD
£.1.30 741F
EA3F £9.1.301
EA42
EA42 F604
EA44 20261800
EA46 E814
EA4A
EA4A 3eao
EA4C 7310
fA4E F606180008
£.1.53 7417
EA55 3C45
EAS7 7405
EA59 80261800F7
~
EASE
EASE
EA5F
£.1.61
£.1.63
EA63
£.1.64
EA6S
EA66
EA67
EA66
EA69
EA6A
EA66
EA6C
EA6C
fA71
EA73
£.1.76
£A76
EA78
EA70
EA7F
EASt
£A87
fAaA
EAaA
FA
6020
£620
01
IF
SF
5.1.
59
58
58
CF
F606170008
7503
£98FOO
F606170004
7431
3C53
7520
C70672003412
£901F5
524F5051484C4O
1875
MOV
AX,INS_KEY*Z56
, SET SCAN CODE INTO AH. 0 INTO Al
1876
JMP
'57
; PUT INTO OUTPUT BUFFER
1877
1878
1------ BREAK SHIFT fOUND
1879
le80
K23:
f
BREAK-SHIFT-FOUND
1881
eMP
AH,SCROLL_SHIFT
; IS THIS A TOGGLE KEY
1682
JAE
'24
; YEs. HAtJOlE BREAK TOGGLE
1883
UOT
AH
i
INVERT MASK
1684
AND
KBJLAG,AH
TlJ!<'N OFF SHIFT
BIT
1885
eMP
AL,ALT_KEY+80H
IS THIS ALTERNATE SHIFT RElEASE
1886
JNE
.26
INTERRUPT_RETURN
1887
1888
;~---.-
ALTERNATE SHIFT KEY RELEASED. GET THE VALUE INTO BUFFER
1889
1890
NOV
AL,ALT_INPUT
1891
NOV
AH,O
; SCAN CODE OF 0
1892
MOV
AlT_INPUT,AH
; ZERO OUT THE FIELD
1893
,.94
eMP
JE
Al,a
"'6
• WAS THE INPUT=O
j
INTERRUPT _RE1\JRN
1895
JMP
.58
; IT WASN'T, SO
PUT
IN BUFFER
1896
1897
K24:
; BREAK-TOGGLE
1898
NOT
AH
; INVERT MASK
1899
AND
KBJLAG_l.AH
; INDICATE NO LONGER DEPRESSED
1900
JMP
SHORT K26
INTERRUPT_RETURN
1901
1902
1------
TEST FOR HOLD STATE
1903
1904
K25:
; NO-SHIFT-FOUND
1905
eMP
AL,80H
; TEST FOR BREAK KEY
1906
JAE
K26
j
NOTHING FOR BREAK CHARS FROM HERE
ON
1907
TEST
K8JLAG_l.HOlD_STATE
; ARE WE IN HOLD STATE
1908
JZ
K28
; BRANCH AROUND TEST IF NOT
1909
CMP
Al.I'M1_KEY
1910
JE
K26
; CAN'T END HOLD ON NUM_lOCK
1911
AND
KBJlAG_l,NOT HOLO_STATE
; TURN OFF THE HOLD STATE BIT
1912
1913
KZ6:
; INTERRUPT-RETURN
1914
eLI
; TURN
OFF INTERRUPTS
1915
MOV
Al.EOI
; END OF INTERRUPT COHMAND
1916
OUT
OZOH.Al
; SEND COMMAND TO INTERRUPT CONTROL PORT
1917
K27:
; INTERRUPT -RETURN-HO-EOI
1916
POP
ES
1919
POP
OS
1920
POP
01
1921
,POP
Sl
1922
POP
OX
1923
POP
ex
1924
POP
BX
1925
POP
AX
; RESTORE STATE
1926
IRET
; RETURN, INTERRUPTS BACK ON WITH flAG CHAHGE
1927
1928
1------ NOT IN
HOLD STATE. TEST FOR SPECIAL CHARS
1929
1930
K28:
; NO-HalO-STATE
1931
TEST
KBJLAG.AlT_SHIFT
; ARE WE IN ALTERNATE SHIFT
1932
JNZ
K29
JUMP IF ALTERNATE SHIFT
1933
JMP
.38
; JUMP IF NOT ALTERNATE
1934
1935
;------ TEST FOR RESET KEY SEQUENCE leTL ALl DEl)
1936
1937
K29:
; TEST-RESET
1936
TEST
KB_FlAG.CTL_SHIFT
; ARE WE IN CONTROL SHIFT ALSO
1939
JZ
K31
; NO_RESET
1940
CMP
Al.DEL_KEY
; SHIFT STATE IS THERE
I
lEST KEY
1941
JUE
K31
; NO_RESET
1942
1943
;------
CTL-AlT-DEL HAS BEEN
fOUND.
DO I/O CLEAHUP
1944
1945
MOY
RESET_flAG. 1234H
, SET
FLAG FOR RESET FUNCTION
1946
JMP
RESET
; JUMP TO POWER ON DIAGNOSTICS
1947
1948
1949
f------
All-INPUT-TABLE
.3.
lABEL
BYTE
1950
DB
62.79,80.81.75.76.77
A-27

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents