Низкоуровневое програмирование Главная - Реальный режим - Прерывания Bios - INT 17h: Ввод/вывод LPT.

INT 17h: Ввод/вывод LPT.

AHФункция
0Печать символа

Вход:
AL - ASCII код символа
DX - номер принтера (0,1 или 2)

Вход:
AH - флаги состояния принтера (см. подфункию 2), при этом если бит 0 установлен, то произошла ошибка при печати.

Примечание:
Некоторые БИОСы изменяют значение регистра BX
1Инициализировать порт принтера

Вход:
DX - номер принтера (0,1 или 2)

Вход:
AH - см. подфункию 2
2 Статус принтера

Вход:
DX - Номер принтера(0,1 или 2)

Вход:
AH - флаги состояния
     бит 0 : ошибка печати
     биты 1-2 : таймаут
     бит 3 : ошибка ввода/вывода
     бит 4 : выбран
     бит 5 : нет бумаги
     бит 6 : подтверждение
     бит 7 : не занят(1) занят(0)

Примечание:
Эта же функция используется для проверки наличия расширенного API принтера. Если вы хотите получить именно статус принтера, то избегайте следуюшего сочетания: AL=0, BX=5050h, CH=45h.
На некоторых системах в байте статуса биты 1 и 2 зарезервированны, а бит 0 используется для обозначения ошибки по истечении времени (таймаут)