LINE
SOURCE
(BIOS FOR THE IBM PERSONAL COMPUTER XTl
11/08/82
SEND CHARACTER
IN (AL) OVER COMMO LINE
PC-XT System BIOS (11/08/82)
IN AH
5-129
GET LOW ORDER OF D I V I SOR
SET LOW OF D I V I SOR
SET DLAB= 1
GET PARMS TO DL
GET HIGH ORDER OF D I V I SOR
SET MS OF D I V TO 0
RELOAD DATA BYTE
I NTERRUPT ENABLES ALL OFF
COM_STATUS
DA T A SET READY
&
CLEAR TO SEND
ARE BOTH TRUE
YES, READY TO TRANSM I T CHAR
SAVE INIT PARMS
IN AH
PO I NT TO 8250 CONTROL REG I STER
I SOLA TE THEM
BASE OF TABLE
PUT I NTO I NDEX REG I STER
POINT TO HIGH ORDER OF DIVISOR
CONTROL PORT
GET LINE CONTROL STATUS
PUT IN AH FOR RETURN
POINT TO MODEM STATUS REGI STER
GET MODEM CONTROL STATUS
RETURN
MODEM CONTROL REG I STER
DA T A TERM I NAL READY
MODEM STATUS REGISTER
WAIT DSR
DAT A-SET READY
TEST FOR DSR
RETURN WITH ERROR
WAIT DSR END
LINE-STATUS REGISTER
WAIT RECV
RECEIVE BUFFER FULL
TEST FOR REC. BUFF. FULL
SET T I ME OUT ERROR
GET CHAR
TEST FOR ERR COND I T IONS ON RECV CHAR
DATA PORT
GET CHARACTER FROM LINE
RETURN
GET PARMS BACK
STR I P OFF THE BAUD BITS
LINE CONTROL TO 8 BITS
SAVE CHAR TO SEND
MODEM CONTROL REG I STER
DTR AND RTS
DATA TERMINAL READY, REQUEST TO SEND
MODEM STATUS REGISTER
INDICATE TIME OUT
RETURN
CLEAR TO SEND
LINE STATUS REG I STER
WAIT SEND
IS TRANSM I TTER READY
TEST FOR TRANSM I TTER READY
RETURN WITH T I ME OUT SET
OUT CHAR
DATA PORT
RECOVER IN CX TEMPORAR I L Y
MOVE CHAR TO AL FOR OUT,
STATUS
OUTPUT CHARACTER
RETURN
AH,80H
A3
CX
AL,CL
DX
DX,5
CX
AL,CL
DX,AL
A3
DX
DX,4
AL,I
DX,AL
DX
DX
AH,00011110B
DX,RS232 BASE[SI)
AL,DX
-
A3
DX,RS232 BASE[SI)
DX,5
-
AL,DX
AH,AL
DX
AL,DX
A3
BH,20H
WAIT FOR STATUS
A7
-
AH,AL
DX,3
AL,80H
DX,AL
BH,20H
WAIT FOR STATUS
A8
-
-
AX
DX,4
AL,3
DX,AL
DX
DX
BH,30H
WAIT FOR STATUS
A9
-
DL,AH
CL,4
DL,CL
DX,OEH
DI,OFFSET Al
DI,DX
DX,RS232 BASE[SI)
DX
-
AL,CS:[DI)+1
DX,AL
DX
AL, SC: [DI)
DX,AL
DX,3
AL,AH
AL,O lFH
DX,AL
DX
DX
AL,O
DX,AL
SHORT A 18
BH,I
WAIT FOR STATUS
A8
-
-
OR
JMP
ADD
MOV
OUT
INC
INC
DEC
MOV
CALL
JNZ
MOV
CALL
JNZ
MOV
ADD
IN
MOV
INC
IN
JMP
AND
MOV
IN
JMP
DEC
PUSH
ADD
MOV
OUT
INC
INC
MOV
CALL
JE
POP
MOV
MOV
MOV
ROL
AND
MOV
ADD
MOV
INC
MOV
OUT
DEC
MOV
OUT
ADD
MOV
AND
OUT
DEC
DEC
MOV
OUT
JMP
MOV
CALL
JNZ
MOV
ADD
MOV
OUT
SUB
POP
MOV
OUT
JMP
I N IT I ALI ZE THE COMMUN I CA T IONS PORT
; ----- COMMO PORT STATUS ROUTINE
; - - - - -
RECE I VE CHARACTER FROM COMMO LI NE
; ----- DETERM I NE BAUD RATE D I V I SOR
A 13:
A 15:
A 16:
All:
A 17:
A! 2:
A 18:
Al 0:
1575
1576
1577
A4:
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
A5:
161
I
1612
1613
1614
1615
1616
1617
1618
1619
1620
A7:
1621
1622
1623
A8:
1624
1625
1626
A9:
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
E769
E769 8AEO
E76B 83C203
E76E B080
E770 EE
LOC OBJECT
E79C
E79C 50
E79D 83C204
E7 AO B003
E7A2 EE
E7 A3 42
E7 A4 42
E7 A5 B730
E7 A 7 E84800
E7AA 7408
E7AC
E7 AC 59
E7AD 8ACI
E7AF
E7 AF 80CC80
E7B2 EBAE
E7B4
E7B4 4A
E7B5
E7B5 B720
E7B7 E83800
E7BA 75FO
E7BC
E7BC 83EA05
E7BF 59
E7CO 8AC 1
E7C2 EE
E7C3 EB9D
E771
8AD4
E773 Bl04
E775 D2C2
E777 81E20EOO
E77B BF29E7
E77E 03FA
E780 8B14
E782 42
E783 2E8A450 1
E787 EE
E788 4A
E789 2E8A05
E78C EE
E78D 83C203
E790 8AC4
E792 241F
E794 EE
E795 4A
E796 4A
E797 BOOO
E799 EE
E79A EB49
E7C5
E7C5 83C204
E7C8 BOO 1
E7CA EE
E7CB 42
E7CC 42
E7CD
E7CD B720
E7CF E82000
E7D2 75DB
E7D4
E7D4 4A
E7D5
E7D5 B701
E7D7 E81800
E7DA 75D3
E7DC
E7DC 80E41E
E7DF 8B14
E7El EC
E7E2 E97DFF
E7E5
E7E5 8B14
E7E7 83C205
E7EA EC
E7EB 8AEO
E7ED 42
E7EE EC
E7EF E970FF