Команды управленя посимвольными устройствами

5.6.4. Команды управления посимвольными устройствами

 

Описываемые здесь команды не охватывают всех возможностей, предоставляемых пользо­вателю ПЭВМ по управлению посимвольными ПУ. Дополнительные средства и методы реализации этого будут рассмотрены в подразделе 5.11.

Команда CLS

 

Назначение: очистка экрана дисплея.

Тип: внутренняя.

Синтаксис:

CLS

Комментарии. При выводе информации на экран его заполнение осуществляется построчно. Когда последняя строка окажется занятой, то содержимое экрана смещается на одну строку вверх, а новая информация отображается в нижней строке. Чтобы полностью освободить экран от ненужной информации и возобновить вывод с его первой (верхней) строки, следует выполнить команду СLS. При этом экран полностью очищается, а в левом верхнем углу появляются приглашение DOS и курсор. Если Вы специальными средствами DOS (Escape-последовательно­стями) не меняли оцветовку экрана, то весь он заполняется черным цветом, а символы будут выводиться белым цветом. В противном случае экран окрашивается установленным фоновым цветом, а для выдачи информации также будет использоваться выбранный для этой цели цвет.

Замечание: команду CLS часто полезно использовать в командных файлах.

Пример: CLS.

Команда MODE: общие сведения

 

Назначение: отображение статуса и установка режимов работы посимвольных устройств.

Тип: внешняя.

Комментарии. Команда MODE выполняет следующие функции:

1) устанавливает и изменяет режимы работы принтеров, подключенных к адаптерам парал­лельных интерфейсов;

2) устанавливает и изменяет режим работы дисплея, а также осуществляет переключение между имеющимися в ПЭВМ дисплейными адаптерами;

3) устанавливает и изменяет режимы работы адаптеров последовательных интерфейсов;

4) перенаправляет вывод, адресованный подключенному к адаптеру параллельного интерфейса принтеру, в адаптер последовательного интерфейса;

5) устанавливает и изменяет скорость работы клавиатуры;

6) отображает статус посимвольных устройств;

7) подготавливает посимвольные устройства к смене и обеспечивает смену кодовых страниц.

Для задания каждой функции используется свой синтаксис, резко отличающийся от других. Кроме того, семантика от функции к функции также существенно различается. Следовательно, команда MODE по сути объединяет в себе несколько связанных между собой по целевому назначению команд, и поэтому мы рассмотрим каждую из них отдельно.

Замечания:

— некоторые функции, в частности, установка скорости работы клавиатуры и режима дисплея, требуют подключения драйвера ANSI.SYS (см. п. 5.10.3);

— необходимые команды MODE можно ввести с клавиатуры, однако целесообразнее задавать их в командных файлах, в частности в AUTOEXEC.BAT (см. подраздел 5.9).

DOS 4.0. Команда MODE модифицирована как синтаксически, так и семантически. Функции же 5 и 6 являются полностью новыми.

Команда MODE: управление принтером

 

Назначение: задание режима работы принтера, подключенного к адаптеру параллельного интерфейса.

 Синтаксис:

MODE LPTn: [с] [,[l][,Р]]

Комментарии. В командной строке числа п, с и l обозначают следующее:

п    — номер адаптера параллельного интерфейса, к которому подключен принтер (1, 2 или 3);

с — число выводимых символов в строке (80 для обычного и 132 для сжатого шрифта при условии, что принтер узкий; для широкого принтера заданное значение будет автоматически пересчитано);

l   — число строк на дюйм (6 или 8).

Умолчания для перечисленных аргументов отсутствуют. Если с и/или l не специфицированы, то действуют ранее установленные режимы.

При задании последнего аргумента (Р) загружается и остается резидентным код, имитирующий ответ пользователя R (от Retry — повторить) на сообщение об ошибке ввода-вывода, связанной с тайм-аутом (неготовностью принтера принять кодовую последовательность). Тайм-аут, в час­тности, возникает на устройствах, не обеспечивающих автоматическую подачу листов бумаги, при окончании печати очередной страницы. Если аргумент Р в команде не указан, то при возникновении этой ситуации через небольшой интервал времени на экране появится сообщение об ошибке и пользователю каждый раз после заправки очередного листа придется вводить на это сообщение ответ R, что затрудняет его работу. Задание же аргумента Р освободит его от многократного выполнения описанной процедуры. Однако при возникновении настоящей ошибки на принтере необходимо отменить действие аргумента Р. Для этого достаточно нажать комбинацию клавиш Ctrl-Break. Действие аргумента Р отменяется также повторной выдачей команды MODE без его указания.

Замечания:

— принтер обычно подключается к адаптеру LPT1;

— синоним PRN в LPT1 для данном контексте недопустим;

— задание аргументов с и l оказывает воздействие только на IBM-совместимые принтеры;

— установка режимов работы принтера приводит к невозможности последующего перенап­равления вывода, ему адресованного;

— указанный в Команде MODE адаптер становится системным принтерным адаптером (PRN);

— при включении питания принтер устанавливается в режим работы, заданный его переклю­чателями, так что команда MODE необходима только для оперативного изменения режима;

— при отключении питания принтера установленные командой MODE режимы, как правило, сбрасываются;

— повторная выдача команды MODE переустанавливает заданные ранее режимы, если со­ответствующие аргументы указаны.

Пример:

■ MODE LPT1: 80,8,Р — установить для принтера, подключенного к LPT1, режим, при котором печатаются 80 символов в строке, 8 строк на дюйм, а также задать автоматический режим повторения передачи информации в случае неготовности принтера.

DOS 4.0. Синтаксис:

MODE LPTn[:][c][,[l][,r]]

или

MODE LPTn [COLS=с] [LINES=l] [RETRY=г]

Две приведенные формы семантически полностью эквивалентны, но вторая обладает большей наглядностью из-за ключевых, а не позиционных параметров. Смысл аргументов с и lне меняется.

Аргумент же r обобщает последний аргумент команды MODE для DOS версии 3.3. При задании r в памяти резидентно остается код, перекодирующий ошибку тайм-аута на принтере в соот­ветствии с указанным значением и возвращающий результат в процесс, выводящий информацию на принтер. Реакция на результат перекодировки должна быть указана в этом процессе. В качестве r можно задать:

Е (для Error — ошибка) — возвратить ошибку (принимается по умолчанию);

В (для Busy — занятость) — возвратить сигнал занятости;

R (для Ready — готовность) — возвратить сигнал готовности;

NONE — ничего не предпринимать

Значение В эквивалентно указанию Р в команде для DOS версии 3.3. При работе в сети аргумент r указывать нельзя.

Пример:

■ MODE LPT1 COLS = 80 LINES = 8 RETRY = В — то же, что и раньше.

Команда MODE управление дисплеем

 

Назначение: активизация дисплейного адаптера, задание режима работы дисплея и его адаптера, а также центровка экрана.

 Синтаксис:

MODE режим

или

MODE [режим], направление [,Т]

Комментарии. Эта команда позволяет устанавливать один из допустимых текстовых режимов работы видеосистемы. Если ПЭВМ оборудована как MDA, так и CGA (EGA, VGA), то задание режима косвенно определяет активизацию соответствующего адаптера.

В качестве режима можно задать 40, 80, BW40, BW80, СО40, СО80 или MONO. Число в этих значениях (40 или 80) определяет количество выводимых в строке символов (40 задает отображение широких символов); BW и СО указывают на необходимость вывода в монохромном (с различными градациями яркости) и цветном режиме соответственно. Все значения, кроме MONO, применимы только к адаптерам CGA (EGA, VGA). MONO специфицирует MDA с неизменяемым числом символов в строке (80).

Если изображение на экране сдвинуто так, что не видно левых или правых символов в каждой строке, то необходимо для центровки экрана выполнить команду MODE во второй форме. При этом в качестве направления можно указать L (для сдвига изображения влево на 2 символа) или R (то же, но вправо). Если дополнительно специфицировать Т, то устанавливается диалоговый режим сдвига влево (вправо). В этом случае на экран выводится текстовая строка вида

0123456789   . . .   0123456789

и задается вопрос о том, видна ли правая (левая) ее граница. Отвечая на этот вопрос соответ­ствующим образом, можно обеспечить требуемую центровку.

Одновременно с центровкой экрана вторая форма команды MODE позволяет установить также один из допустимых текстовых режимов работы видеосистемы.

Замечания:

— команда MODE не поддерживает всех текстовых режимов работы EGA и VGA (для них только эмулируются режимы CGA);

— режимы BW используются тогда, когда ПЭВМ оборудована CGA и дешевым монохромным дисплеем. Они также полезны и в других случаях, когда текст на экране невиден. Если установка ни одного из таких режимов эффекта не дала, то можно попробовать нажать клавишу F7.

Примеры:

■ MODE BW80 — установить режим BW80;

■ MODE ,L — сдвинуть экран влево на две колонки.

DOS 4.0. Синтаксис:

MODE режим, п

или

MODE CON[:] [COLS=m] [LINES - n]

или

MODE [режим], направление [,T]

Первые две из приведенных форм задания команды семантически эквивалентны и устанавливают один из текстовых режимов работы видеосистемы, включая все текстовые режимы EGA и VGA. Собственно режим имеет те же значения, что и для DOS 3.3, а п определяет количество строк на экране (25, 43 или 50). Аргумент т специфицирует число символов в строке (40 или 80).

Третья форма команды идентична второй форме для DOS 3.3.

Команда MODE управление адаптером последовательного интерфейса

 

Назначение: задание режима работы адаптера последовательного интерфейса.

Синтаксис:

MODE СОМn: b [, [p] [, l [,[s ] [,Р]]]]

Комментарии. Эта разновидность команды MODE обеспечивает конфигурирование (установку протокола) адаптера последовательного интерфейса, к которому могут быть подключены мед­леннодействующий принтер (возможно, обеспечивающий высококачественную печать), графопо­строитель, модем (модулятор-демодулятор) или другое медленнодействующее ПУ.

В командной строке можно задать следующие аргументы:

п    — номер адаптера последовательного интерфейса (1, 2, 3 или 4);

b    — скорость передачи данных в бодах, т.е. бит/с (110, 150, 300, 600, 1200, 2400, 4800 или 9600);

р    — режим контроля правильности передачи (N — контрольный бит отсутствует, О — контроль по нечетности, Е — контроль по четности). По умолчанию — Е;

l    — разрядность кода, т.е. число передаваемых битов данных (7 или 8). По умолчанию — 7;

s    — число стоп-битов при передаче данных (1 или 2). По умолчанию — 2 для скорости 110 и 1 в противном случае;

Р  ― указывает, что к адаптеру подключен принтер, и обозначает то же, что и при управлении принтером, подсоединенным к адаптеру параллельного интерфейса.

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

Замечания:

— многие программы, использующие адаптер последовательного интерфейса, самостоятельно устанавливают его протокол, так что команда MODE для этого используется редко;

— команда MODE тем не менее применяется обычно перед перенаправлением принтерного вывода и для инициализации пассивного терминала, подсоединенного к адаптеру последователь­ного интерфейса (см. описание команды CITY);

— конкретные значения аргументов для команды MODE следует взять из документации на устройство, связанное с адаптером последовательного интерфейса.

Примеры:

■ MODE COM1:1200,N,8,1,P — установить для СОМ1 скорость передачи данных 1200 бод без контроля правильности передачи, 8 битов данных и 1 стоп-бит, причем адаптер используется для связи с принтером;

■ MODE СОМ 1:9600,,,,Р — установить скорость передачи данных 9600 бод, считать, что к адаптеру подключен принтер, а остальные аргументы принять по умолчанию.

DOS 4.0. Синтаксис:

MODE СОМn [:] b[,[p] [, [l] [ , [ s] [ , r ]]]]

или

MODE  СОМn BAUD = b [ PARITY = р ] [ DATA = l ] [ STOP = s ] [ RETRY = r ]

Приведенные формы семантически эквивалентны. Аргументы п, b, р, l и s имеют тот же смысл, однако возможны дополнительные значения:

b      19200, причем при любом значении указывать достаточно только первые две цифры;

 р    М (контроль по маркеру) и S (контроль по пробелу);

l    ― 5 и 6;

 s   ― 1.5.

Аргумент r имеет тот же смысл, что и в команде MODE для управления принтером, под­ключенным к адаптеру параллельного интерфейса.

Команда MODE:  перенаправление принтерного вывода

 

Назначение: перенаправление принтерного вывода с адаптера параллельного интерфейса на адаптер последовательного интерфейса.

Синтаксис:                            

MODE LPTn:[ = COMm]

Комментарии. Этот вид команды MODE перенаправляет принтерный вывод с n-го адаптера параллельного интерфейса на m-й адаптер последовательного интерфейса (я = 1, 2 или 3, т - 1, 2, 3 или 4). Если конструкция = СОМm не задана, то отменяется сделанное ранее перенаправление принтерного вывода

Замечания:

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

— синоним PRN для LPT1 .недопустим;

— перед перенаправлением может потребоваться установить протокол адаптера последова­тельного интерфейса;

— после перенаправления адаптер последовательного интерфейса становится системным при­нтерным адаптером (PRN).

Пример: MODE LPT1: = COM3.

DOS 4.0. Синтаксис:

MODE LPTn[:][ = COMm]

Команда MODE: управление клавиатурой

 

Назначение: установка скорости работы клавиатуры (только в DOS 4.0).

Синтаксис:

MODE CON[:] DELAY = l  RATE = r

Комментарии. Этой командой устанавливаются задержка регенерации (по значениюl), а также частота регенерации (по значению r) кода удерживаемой в нажатом состоянии клавиши. Величины l и r задаются целыми числами в диапазонах 1 - 4 и 1 - 32 соответственно. Задержка регенерации и частота регенерации принимаются равными обратным значениям l и r (1/l  и 1/r) в секундах.

Пример: MODE CON DELAY = 1 RATE = 1

Команда MODE: отображение статуса устройств

 

Назначение: отображение статуса всех или заданного посимвольного устройства (только в DOS 4.0).

Синтаксис:

MODE [устройство] [/STA[TUS]]

Комментарии. Команда MODE без аргумента выводит на экран дисплея статус всех подклю­ченных к ПЭВМ посимвольных устройств. При задании имени устройства выдается статус только указанного устройства. Переключатель /STATUS (сокращение /STA) необходим лишь при спе­цификации адаптера параллельного интерфейса, чтобы исключить неоднозначность.

Пример: MODE CON

Команда MODE: поддержка кодовых страниц

 

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

Синтаксис:

MODE устройство CODEPAGE PREPARE ((cp[,cp]...)ƒile)

или

MODE устройство CODEPAGE SELECT = cp

или

MODE устройство CODEPAGE [/STATUS]

или

MODE устройство CODEPAGE REFRESH

Комментарии. Периферийное оборудование ПЭВМ и сама DOS обеспечивают возможность работы с различными национальными алфавитами. Необходимость рассмотрения вопросов, связанных с настройкой DOS для использования в той или иной стране, диктуется недавней регистрацией кодовой страницы для СССР (теперь — СНГ) и потребностью некоторых пользо­вателей в подготовке текстов на языках, отличных от английского и русского. Вместе с тем упомянутые вопросы в отечественной литературе практически еще не затрагивались. Поэтому мы сочли необходимым остановиться на этом достаточно подробно.

Кодовая страница содержит таблицу, являющуюся расширением ASCII (см. подраздел 5.3). Она ставит в соответствие символам на УВВ определенные двоичные коды. Так, если код п представляет в таблице символ S, то это соответствие должно быть установлено как для устройств ввода (преобразование S в п), так и для устройств вывода (преобразование п в S).

Каждая кодовая страница служит для работы с одним или несколькими национальными алфавитами.

Различают два типа кодовых страниц: аппаратные и составленные. Аппаратной называется кодовая страница, встроенная в устройство. Устройство может иметь одну или несколько таких страниц. Составленная кодовая страница находится в файле, может загружаться в память и определять функционирование ПУ (правила перекодировки в нем). Работу с такими страницами поддерживают не все УВВ.

DOS содержит следующие файлы с составленными кодовыми страницами для конкретных ПУ:

4201.CPI — для модели 4201 принтера IBM Proprinter и совместимых с ним;

5202.CPI — для модели 5202 принтера IBM Quetwriter III и совместимых с ним;

EGA.CPI — для дисплейного адаптера EGA и совместимых с ним;

LCD.CPI — для жидкокристаллического дисплея ПЭВМ IBM PC Convertible.

В DOS поддерживаются следующие составленные кодовые страницы:

437 — для США (принимается по умолчанию для всех команд, требующих задания кодовой страницы). Именно ее таблица приведена в качестве расширения ASCII в подразделе 53;

850 — многоязыковая кодовая страница, включающая наиболее часто встречающиеся буквы многих европейских, северо- и южноамериканских языков;

860 — для Португалии;

863 — для Канады (французский язык);

865 — для Норвегии и Дании.

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

Возможность использования национального регистра клавиатуры определяется в DOS не кодовой страницей и не кодом страны, а двухбуквенным кодом клавиатуры.

При выполнении команд DOS, обеспечивающих поддержку национальных языков, всегда проверяется допустимость сочетания составленной кодовой страницы, кода страны и кода клавиатуры. Все поддерживаемые DOS их комбинации приведены в табл. 5.18 вместе с соот­ветствующими форматами даты и времени (на примере 17 час. 35 мин. 15 января 1991 г.). Соответствующими командами DOS не обязательно определять названную триаду полностью, но если Вы это делаете, то следует воспользоваться представленной таблицей.

Для максимально полной настройки оборудования ПЭВМ и DOS на использование в заре­гистрированной стране, кроме США, требуется:

1) установить код страны командой конфигурирования системы COUNTRY =;

2) задать активные аппаратные кодовые страницы устройств и выделить буфера для состав­ленных кодовых страниц командами конфигурирования системы DEVICE = ;

3) загрузить в память командой NLSFUNC резидентные программные средства национальной поддержки;

4) подготовить (загрузить в память) составленные кодовые страницы для каждого устройства, допускающего переключение кодовых страниц, командой MODE с ключевым словом PREPARE;

5) настроить клавиатуру для поддержки национального алфавита командой KEYB;

6) выбрать из подготовленных кодовых страниц активную командой СНСР (сразу для всех устройств) или командами MODE с ключевым словом SELECT (для каждого устройства в отдельности).

При желании можно ограничиться только пунктом 1 для задания приемлемого формата даты и времени. Пункты 5 и 6 можно поменять местами. Имеется возможность подготовки сразу нескольких кодовых страниц с тем, чтобы затем оперативно осуществлять переключение актив­ности между ними, повторяя пункт 6. Команды COUNTRY = и DEVICE= допустимы только в файле CONFIG.SYS. Остальные в принципе можно ввести с клавиатуры, но обычно их размещают в файле AUTOEXEC.BAT или в другом командном файле.

Незаданные командами DOS элементы триады устанавливаются следующим образом: код страны — 001, код клавиатуры — US, а кодовые страницы — в соответствии с переключателями в устройствах (для дисплея обычно 437).

Часто (например, при отключении питания на устройстве) возникает потребность в восста­новлении активной кодовой страницы, что можно осуществить командой MODE с ключевым словом REFRESH.

Очевидно, команда MODE играет центральную роль в национальной поддержке.

В команде используются следующие аргументы:

устройство — имя одного из устройств CON, LPT1 (PRN), LPT2 или LPT3;

 ср                 — номер кодовой страницы;

ƒile                — спецификация CPI-файла, соответствующего заданному устройству.

Команда в первой форме (PREPARE) обеспечивает подготовку одной или нескольких состав­ленных кодовых страниц для указанного устройства.

Команда во второй форме (SELECT) служит для выбора из подготовленных кодовых страниц единственной, которая становится активной для заданного устройства.

Таблица  5.18

 

Соответствие  кодов для различных  стран

 

Страна или язык

Код

страны

Формат

даты

Формат

времени

Номера

кодовых

страниц

Код

клавиатуры

Английский (между-

народный), Австралия

 

061

61-15-1991

5:35:00.00р

437,

850

_

 

 

Арабский

785

15/61/1991

5:35:00,00р

437

-

Бельгия

032

15/81/1991

17:35:00,00

437,

BE

 

 

 

 

850

 

Великобритания

044

15-61-1991

5:35:00.00р

437,

UK

 

 

 

 

856

 

Германия

049

15.81.1991

17.35.00,00

437,

GR

 

 

 

 

850

 

Дания

045

15-61-1991

17.35.00,00

865,

850

437,

437,

850

437,

850

863,

850

437,

850

437,

850

865,

850

860,

850

437,

850

437,

850

437,

850

437,

850

437,

DK

 

 

 

Израиль

972

15 81 1991

17:35:00.00

-

Испания

034

15/01/1991

17:35:00,00

SP

 

 

 

 

 

Италия

039

15/01/1991

17:35:00,00

IT

 

 

 

 

 

Канада (Французский)

002

15-01-1991

17:35:00,00

CF

 

 

 

 

Латинская Америка

003

15/01/1991

17:35:00.00

LA

 

 

 

 

 

Нидерланды

031

15-01-1991

17:35:00,00

NL

 

 

 

 

 

Норвегия

047

15.01.1991

17.35.00,00

N0

 

 

 

 

 

Португалия

351

15/01/1991

17:35:00,00

PO

 

 

 

 

 

США, Канада (анг-

лийский)

001

61-15-1991

5:35:00.00p

US

 

 

 

 

Финляндия

358

15.01.1991

17.35.00,00

SU

 

 

 

 

 

франция

033

15/61/1991

17:35:00,00

FR

 

 

 

 

 

Швейцария (немец-

041

15.01.1991

17.35.00.00

SG

кий)

 

 

 

 

Швейцария (Французский)

041

15.01.1991

17.35.00.00

SF

 

 

850

 

Швеция

046

1991-01-15

17.35.00,00

437,

SU

 

 

 

 

850

 

 

Третья форма команды (/STATUS) обеспечивает выдачу на экран номера активной кодовой страницы для специфицированного устройства. Необязательный переключатель /STATUS при этом абсолютно никакой роли не играет.

И наконец, четвертая форма команды (REFRESH) служит для восстановления (при необхо­димости) активной кодовой страницы указанного устройства.

Замечания:

— не следует возлагать слишком большие надежды на средства DOS для национальной поддержки, так как в любом случае сообщения будут выдаваться на английском языке (если DOS не локализована) и использование национального алфавита на уровне DOS (в частности, для именования файлов) не станет возможным;

— в СНГ для поддержки русского алфавита пока, как правило, используются специально разработанные внешние драйверы, однако уже начали поставляться версии DOS с кодовой страницей для нашего содружества;

— видеосистема CGA не предоставляет возможности переключения кодовых страниц (однако кое-что можно сделать командой GRAFTABL).

Примеры:

■ MODE PRN CODEPAGE PREPARE = ((863)С: \DOS33 \4201.CPI) - подготовить кодовую страницу 863 для принтера IBM Proprinter;

MODE CON CODEPAGE PREPARE = ((863,850)C: \DOS33 \EGA.CPI) - подготовить кодовые страницы 863 и 850 для адаптера EGA;

■ MODE CON CODEPAGE SELECT=863 — активизировать для дисплея кодовую страницу 863.

DOS 4.0. Добавлен файл 4208.CPI для модели 4208 принтера IBM Proprinter. Файл EGACPI доработан с тем, чтобы поддерживать дисплейные адаптеры ПЭВМ семейства PS/2 и совместимые с ними.

Дополнительные кодовые страницы, коды стран и коды клавиатур, которые могут поддерживаться (но не все новые кодовые страницы обязательно поддерживаются) DOS 4.0, сведены в табл. 5.19.

Таблица  5.19

 

Соответствие дополнительных для  DOS 4.0  кодов

 

Страна

Код страны

Формат даты

Формат времени

Номера кодовых страниц

Код клавиатуры

Япония

 

 

Корея

 

 

КНР

 

 

Тайвань

081

 

 

082

 

 

086

 

 

088

1991-01-15

 

 

1991-01-15

 

 

1991-01-15

 

 

01-15-1991

17:35:00.00

 

 

17:35:00.00

 

 

17:35:00.00

 

 

17:35:00.00

932,

850,

437

934,

850,

437

936,

850,

437

938,

850,

437

JA

 

 

KO

 

 

CH

 

 

TN

 

 

Можно использовать следующие сокращения:

CP — вместо CODEPAGE

/STA — вместо /STATUS

PREP — вместо PREPARE

SEL — вместо SELECT

REF — вместо REFRESH

Команда NLSFUNC

 

Назначение: загрузка резидентных средств национальной поддержки.

Тип: внешняя.

Синтаксис:

NLSFUNC [ƒile]

Комментарии. Аргумент file указывает файл, содержимым которого следует воспользоваться для учета национальных соглашений. Если он не задан, то отыскивается файл, указанный в команде конфигурирования COUNTRY = . В DOS такую информацию содержит файл COUNTRY.SXS. Поэтому, как правило, специфицируют именно его, однако в принципе возможно использовать и любой другой файл, предназначенный для этой же цели. Если аргумент file не задан и команда COUNTRY = в файле CONFIG.SYS отсутствует, то национальная специфика использоваться не будет.

Замечания:

— команда NLSFUNC дополняет команду COUNTRY = и является обязательной, если будут использоваться команды MODE и СНСР для подготовки и выбора кодовых страниц (см. описание команды MODE: поддержка кодовых страниц);

— выполнение команды приводит к увеличению резидентной части DOS.

Пример: NLSFUNC C:\DOS33\COUNTRY.SYS

Команда СНСР

 

Назначение: отображение номера и выбор (смена) активной кодовой страницы для макси­мально возможного числа устройств (иными словами — для КП DOS).

Тип: внутренняя.

Синтаксис:

СНСР [ср]

Комментарии. Аргумент ср задает номер кодовой страницы, которую предписывается сделать активной. Если указанная кодовая страница не подготовлена командой MODE ни для одного из устройств, то на экране появится сообщение об ошибке, например:

Code page 850 not prepared for system

(Кодовая страница 850 для системы не подготовлена)

Active code page: 437

(Активная кодовая страница: 437)

Prepared system code pages: 437 865

(Подготовленные системные кодовые страницы: 437 865)

В случае, когда активизируемая кодовая страница не подготовлена для какого-либо устройства (а для других — подготовлена), на экран дисплея выдается сообщение, аналогичное следующему:

Code page 850 not prepared for device CON

(Кодовая страница 850 не подготовлена для устройства CON)

Для других же устройств заданная кодовая страница будет активизирована.

Команда СНСР без аргумента служит для получения информации о подготовленных и активной кодовых страницах для КП DOS (эти сведения не обязательно совпадают с выводом команды вида MODE устройство). В этом случае СНСР выдает сообщение типа

Active code page: 850

(Активная кодовая страница: 850)

Prepared system code pages: 850 437

(Подготовленные системные кодовые страницы: 850 437)

Замечания:

— перед использованием СНСР должна быть выполнена команда NLSFUNC;

— любая программа, запущенная после активизации новой кодовой страницы, будет использовать именно ее. Однако все программы, запущенные до этого, будут работать со старой кодовой страницей;

— дополнительные сведения, в том числе допустимые номера кодовых страниц, содержатся в описании команды MODE: поддержка кодовых страниц.

Пример:

    СНСР 863 — активизировать кодовую страницу 863 (для Канады, французский язык).

Команда KEYB

 

Назначение: настройка клавиатуры на национальный алфавит и отображение двухбуквенного кода клавиатуры.

            Тип: внешняя.

Синтаксис:

KEYB [ кoд [ , [cp] [ , file ]]]

 Комментарии. Выполнение этой команды приводит к:

— загрузке в ОЗУ специального драйвера клавиатуры (по спецификации file);

— переключению клавиатуры на национальный регистр в соответствии с заданным кодом;

— установке раскладки клавиатуры (размещения клавиш), принятой в заданной кодом стране;

— активизации одной из кодовых страниц, допустимых для данной страны (аргумент ср), с тем, чтобы определять кодировку клавиш.

Если номере ср не задан, то активной для клавиатуры становится кодовая страница, принимаемая для каждой страны по умолчанию. В случае отсутствия аргумента file загружается и подключается к системе драйвер клавиатуры из файла KEYBOARD.SYS, содержащегося в корневом каталоге системного диска (конечно, именно этот файл используется в большинстве стандартных случаев). Если он находится в другом каталоге, то аргумент file следует указать.

При отсутствии всех аргументов команда выдает на экран действующий код клавиатуры и номер активизированной кодовой страницы, например:

Current keyboard code: FR code page: 437

(Текущий код клавиатуры: FR, кодовая страница: 437)

Current CON code page: 437

(Текущая кодовая страница для CON: 437)

Возврат к американскому регистру и принятой в США раскладке клавиатуры после выдачи команды KEYB всегда возможен и осуществляется путем нажатия комбинации клавиш Qrl-Alt-Fl. Для восста­новления национального регистра клавиатуры следует нажать комбинацию клавиш Ctii-Alt-F2.

Команда KEYB вырабатывает следующие коды возврата:

0 — успешное завершение;

1 — ошибочный синтаксис;

2 — файл с драйвером клавиатуры ошибочен или отсутствует,

3 — невозможно создать таблицу клавиатуры в резидентной памяти;

4 — ошибка на устройстве CON;

5 — запрашиваемая кодовая страница не подготовлена;

6 — таблица для выбираемой кодовой страницы в резидентной таблице клавиатуры не найдена;

7 — некорректная версия DOS (команда KEYB выдана в среде старой версии DOS).

Замечания:

— команду KEYB целесообразно использовать тогда, когда клавиши клавиатуры ПЭВМ по­мечены соответствующими символами. Иногда некоторые национальные символы вводятся комбинацией Ctrl - Alt-клавиша или последовательным нажатием двух клавиш;

— команда KEYB может выдаваться многократно без перезагрузки DOS;

— выполнение команды приводит к увеличению резидентной части DOS;

— дополнительные сведения, включая коды национальных клавиатур, содержатся в описании команды MODE: поддержка кодовых страниц.

Пример:

■ KEYB UK,,C:\DOS33\KEYBOARD.SYS — переключить клавиатуру на английский регистр и установить раскладку клавиатуры для использования в Великобритании.

Команда GRAPHICS

 

Назначение: подготовка принтера для печати в графическом режиме.

Тип: внешняя.

Синтаксис:

GRAPHICS [ принтер ] [/К] [/В] [/LCD]

Комментарии. Обычно (после включения питания) принтер устанавливается в текстовый режим. Программные продукты, обеспечивающие печать графики, переводят его в графический режим самостоятельно. Команда же GRAPHICS необходима только в том случае, когда видеосистема находится в графическом режиме и Вам требуется отпечатать копию экрана (путем нажатия комбинации клавиш Shift-PrtSc). Эта команда должна быть выполнена до печати содержимого экрана, а ее действие распространяется на все последующие операции печати. Если команда GRAPHICS не выдана, то обеспечивается печать копии экрана, находящегося в текстовом режиме.

Аргументом принтер можно задать следующие типы печатающих устройств:

GRAPHICS — точечно-матричные принтеры IBM Graphics, IBM Proprinter, IBM Quietwriter или фирмы Epson, а также совместимые с ними (этот тип принимается по умолчанию);

COLOR1 — точечно-матричный принтер IBM Color с одноцветной (черной) красящей лентой или совместимый с ним;

COLOR4   — тот же принтер, но с RGB-красящей лентой (красный, зеленый, голубой и черный цвета);

COLOR8 — тот же принтер, но с CMY-красящей лентой (бирюзовый, фиолетовый, желтый и черный цвета);

COMPACT — принтер IBM Compact или совместимый с ним.

Факультативные переключатели в командной строке имеют следующий смысл:

/R — обеспечить печать позитивного изображения, как видно на экране (белое — белым, а черное — черным). Если /R не задан, то будет печататься негативное изображение (белое —' черным, а черное — белым), что во многих случаях предпочтительнее;

/В — обеспечить печать на цветном принтере фонового цвета (иначе фон печататься не будет). Этот переключатель допустим только для аргументов COLOR4 и COLOR8;

/LCD — обеспечить печать изображения с учетом коэффициента сжатия (соотношения разрешающей способности по горизонтали и вертикали) жидкокристаллического дисплея, а не дисплея на базе электронно-лучевой трубки, чтобы отпечатанное изображение было пропорциональным.

Замечания:

— выполнение команды GRAPHICS приводит к увеличению размера резидентной части DOS;

— команда GRAPHICS поддерживает печать содержимого экрана, только если дисплей нахо­дится в одном из графических режимов CGA. В режиме с разрешением 320x200 точек на принтерах GRAPHICS и COLOR1 изображение будет выводиться с четырьмя градациями серого. Если установлен режим с разрешением 640x200, то двухцветное изображение будет печататься с поворотом на 90°, чтобы разместить картинку на узком принтере;

— для перевода принтера снова в текстовый режим обычно достаточно отключить и включить питание на нем. Можно также выполнить рестарт DOS;

— имеются дополнительные независимые программы-драйверы, поддерживающие современ­ные дисплейные адаптеры, например EGAEPSON и EGAPRINT.

Пример:

■ GRAPHICS COLOR4 /R — подготовить принтер типа COLOR4 для печати копии CGA-экрана в графическом режиме в позитивном виде без воспроизведения фона.

DOS 4.0. Синтаксис:

GRAPHICS [ принтер ] [ file ] [/R] [/В] [/LCD] [/PRINTBOX:id]

Переключатели /R, /В и /LCD здесь имеют то же назначение.

Дополнительно поддерживается тип принтера GRAPHICS WIDE для принтера IBM Graphics с шириной каретки в 11 дюймов (широкий принтер) или совместимого с ним. Взамен типа COMPACT используется THERMAL (термопринтер ПЭВМ IBM PC Convertible или совместимый с ним).

Аргумент file определяет профильный файл, содержащий информацию о всех поддерживаемых принтерах в текстовом виде. Если аргумент опущен, то используется файл GRAPHICS.PRO из корневого каталога системного диска (он имеется в DOS 4.0).

Новый переключатель /PRINTBOX:id обеспечивает повышенную гибкость управления печатью в зависимости от коэффициента сжатия дисплея. Значение id здесь должно совпадать с первым аргументом любого из утверждений PRINTBOX из профиля, относящихся к заданному типу принтера. Пока в нем зарегистрированы значения STD (стандартный) и LCD (жидкокристалли­ческий), однако есть большие потенциальные возможности для расширений. Переключатель в виде /PRINTBOX:LCD заменяет /LCD, а в виде /PRINTBOX:STD противоречит указанию /LCD. Для ключевого слова PRINBOX допустимо сокращение РВ.

Поддерживаются все графические режимы адаптеров EGA, VGA и 8514/А.

Команда GRAFTABL

 

Назначение: обеспечение отображения расширения ASCII в графических режимах адап­тера CGA.

Тип: внешняя.

Синтаксис:

GRAFTABL [ ср | /STATUS]

Комментарии. Адаптер CGA, находясь в графическом режиме, обычно не позволяет выводить на экран символы из расширения ASCII, т.е. символы с кодами 128 — 255. Вместо них отображается «мусор». После выполнения команды GRAFTABL все становится на свои места: любая программа сможет выдавать на экран символы с такими кодами и они будут отображаться соответствующим образом (но, конечно же, в графическом режиме).

Если в командной строке задан аргумент ср (номер кодовой страницы), то будет использоваться кодировка символов из указанной кодовой страницы (см. описание команды MODE: поддержка кодовых страниц).

В случае, когда в командной строке кроме имени команды ничего не задано, будет использована кодовая страница по умолчанию, т.е. 437.

Указание в командной строке переключателя /STATUS приводит к выдаче на экран дисплея номера активной кодовой страницы.

Команда GRAFTABL генерирует следующие коды возврата:

0 — команда выполнена успешно, причем шрифты (кодовая страница) загружены впервые;

1 — шрифты были уже загружены ранее и поэтому заменены новыми;

2 — обнаружена ошибка;

3 — некорректный аргумент, вследствие чего никаких действий не выполнено;

4 — некорректная версия DOS (команда введена в среде старой версии DOS).

Замечания:

— команда GRAFTABL может использоваться многократно для смены активной кодовой страницы;

— для адаптеров, отличных от CGA, выдавать команду GRAFTABL нет необходимости;

— выполнение команды GRAFTABL приводит к увеличению размера резидентной части DOS.

Пример:

    GRAFTABL 850 — загрузить шрифты из кодовой страницы 850.

 DOS 4.0. Синтаксис:

GRAFTABL [ ср | /STA[TUS] | ?]

Аргумент ср и переключатель /STATUS здесь имеют тот же смысл, причем для последнего допустимо сокращение /STA. Указание в качестве аргумента символа ? приводит к выдаче на экран справки-инструкции о порядке использования данной команды.