Первая функция с кодом 00h предназначена для инициализации портов асинхронного адаптера:
Регистры на входе: |
AH = 00h; DX = номер порта адаптера: 0 - COM1, 1 - COM2; AL = параметры инициализации |
Регистры на выходе: |
AH = состояние порта асинхронного адаптера; AL = состояние модема |
Параметры инициализации, предаваемые в регистре AL, перечислены ниже:
Поле |
Описание |
0-1 |
Длина слова: 00 - 5 бит; 01 - 6 бит; 10 - 7 бит; 11 - 8 бит |
2 |
Количество стоповых бит: 0 - 1 бит; 1 - 2 бита |
3-4 |
Контроль четности: X0 - контроль на четность не используется; 01 - контроль на нечетность; 11 - контроль на четность |
5-7 |
Скорость передачи данных в бодах: 000 – 110; 001 – 150; 010 – 300; 011 – 600; 100 – 1200; 101 – 2400; 110 – 4800; 111 – 9600 |
После вызова функции 00h в регистр AH записывается состояние порта асинхронного адаптера.
Формат регистра:
Поле |
Описание |
0 |
Истекло время ожидания. Если установлен этот бит, другие биты не имеют значения |
1 |
Регистр сдвига передатчика пуст |
2 |
Буферный регистр передатчика пуст |
3 |
Обнаружено состояние BREAK |
4 |
Ошибка синхронизации |
5 |
Ошибка четности |
6 |
Ошибка переполнения входного регистра |
7 |
Данные готовы |
Регистр AL содержит байт состояния модема.
Формат регистра:
Поле |
Описание |
0 |
Линия CTS изменила состояние |
1 |
Линия DSR изменила состояние |
2 |
Линия RI изменила состояние |
3 |
Линия DCD изменила состояние |
4 |
Состояние линии CTS |
5 |
Состояние линии DSR |
6 |
Состояние линии RI |
7 |
Состояние линии DCD |