Initialisieren
Vor dem Aufruf
AH = 0x00 AL = Parameterbyte / Kommunikation
76543210
||||||||
||||||Datenlänge (10 = 7, 11 = 8)
|||||Stopbits (0 = 1 Stopbits, 1 = 2 Stopbits)
|||Parität (00 = Keine, 01 = ungerade, 10 = Keine, 11 = gerade)
Bitrate (000-111 = 110 bis 9600 bps)
Nach dem Aufruf
AH = Statusbyte / Übertragung
76543210
||||||||
|||||||Daten sind da
||||||Überlauf
|||||Paritätsfehler
||||Protokollfehler
|||Unterbrechung
||Halteregister frei
|Schieberegister bereit
Time Out
AL = Statusbyte / Modem
76543210
||||||||
|||||||Sendebereit (delta)
||||||Modembereit (delta)
|||||Telefonschellen (delta)
||||Carriererkennung (delta)
|||Sendebereit
||Modembereit
|Telefonschellen
Carriererkennung
Zeichen senden
Vor dem Aufruf
AH = 0x01 AL = Byte zur Übertragung DX = Portnummer (0 = COM1 etc...)
Nach dem Aufruf
AH = Statusbyte / Übertragung (s.o.) AL = Byte zur Übertragung
Zeichen empfangen
Vor dem Aufruf
AH = 0x02 DX = Portnummer (0 = COM1 etc...)
Nach dem Aufruf
AH = Statusbyte / Übertragung (s.o.) AL = Empfangenes Byte
Status lesen
Vor dem Aufruf
AH = 0x03 DX = Portnummer (0 = COM1 etc...)
Nach dem Aufruf
AH = Statusbyte / Übertragung (s.o.) AL = Statusbyte / Modem (s.o.)
Erweiterte Initialisierung
Vor dem Aufruf
AH = 0x04 AL = Break-Schalter (0/1 - an/aus) BH = Parität (wie in Parameterbyte Komm.) BL = Stoppbits (0-1) CH = Datenlänge (0-8) CL = bps-Rate (wie in Parameterbyte Komm.) DX = Portnummer (0 = COM1 etc...)
Nach dem Aufruf
AH = Statusbyte / Übertragung (s.o.) AL = Statusbyte / Modem (s.o.)
Lese Modemkontrollregister
Vor dem Aufruf
AH = 0x05 AL = 0x00 DX = Portnummer (0 = COM1 etc...)
Nach dem Aufruf
BL = Modemkontrollregister
76543210
||||||||
|||||||Terminal bereit
||||||Senden angefordert
|||||Out1
||||Out2
|||In Schleife
???
^^ Modemabhängig
Schreibe Modemkontrollregister
Vor dem Aufruf
AH = 0x05 AL = 0x01 BL = Modemkontrollregister (s.o.)
DX = Portnummer (0 = COM1 etc...)
Nach dem Aufruf
AH = Statusbyte / Übertragung (s.o.) AL = Statusbyte / Modem (s.o.)