Ассемблер и программирование для IBM PC



       

ГЛАВА 19. ПЕЧАТЬ - часть 6


HEADG DB 0CH,'Industrial Bicycle Mfrs',0DH,0AH,0AH LEA SI,HEADG ;Установка адреса и MOV CX,27 ; длины заголовка P20: MOV AH,05 ;Запрос функции печати

Ассемблер для IBM PC. Глава 19 6

MOV DL,[SI] ;Символ из заголовка INT 21H ;Вызов DOS INC SI ;Следующий символ LOOP P20

Пока принтер не включен, DOS выдает сообщения "Out of pap er". После включения питания программа начинает работать нормально. Для прекращения печати можно нажать клавиши Ctrl/Break.

СПЕЦИАЛЬНЫЕ КОМАНДЫ ПРИНТЕРА ------------------------------------------------------------

Выше уже был показан ряд команд, которые являются основными для большинства печатающих устройств. Кроме того существуют следующие команды:

Десятичн. Шест. 15 0F Включить узкий формат 14 0E Включить широкий формат 18 12 Выключить узкий формат 20 14 Выключить широкий формат

Есть команды, которые распознаются по предшествующему символу Esc (шест.IB). Некоторые из них в зависимости от печатающего устройства представлены ниже:

1B 30 Установить плотность 8 строк на дюйм 1B 32 Установить плотность 6 строк на дюйм 1B 45 Включить жирный формат 1B 46 Выключить жирный формат

Коды команд можно посылать на принтер двумя разными способами:

1. Определить команды в области данных. Следующий пример устанавливает узкий формат, 8 строк на дюйм, затем печатает заголовок с завершающими командами "возврат каретки" и " перевод строки":

HEADG DB 0FH, 1BH, 30H, 'Title...', 0DH, 0AH

2. Использовать команды с непосредственными данными:

MOV AH,05 ;Запрос функции печати MOV DL,0FH ;Включить узкий формат INT 21H

Все последующие символы будут печататься в узком формате до тех пор, пока программа не выдаст на принтер команду, выключающую этот формат.

Ассемблер для IBM PC. Глава 19 7

Приведенные команды не обязательно работают на принтерах любых моделей. Для проверки возможных команд управления следует ознакомиться с руководством конкретного печатающего устройства.

ПЕЧАТЬ С ПОМОЩЬЮ BIOS INT 17H ------------------------------------------------------------




Содержание  Назад  Вперед