Программное обеспечение модемов

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ МОДЕМОВ

1. Основные функции программ для модемов

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

^ конфигурирование связного порта и режимов его взаимодействия с внутренней шиной компьютера (для внутренних модемов);

> конфигурирование модема, то есть установка протокола передачи, формата данных, команд и других параметров;

> управление модемом в процессе установления соединения и при передаче данных, вывод ответов модема и информации о состоянии соединения;

> передача файлов между взаимодействующими компьютерами;

> диалоговый текстовый обмен между пользователями компьютеров (Chat-режим);

> доступ к информационным службам, базам данных;

> выход в Internet;

> удаленный доступ к локальной сети предприятия;

> эмуляция режима Host – компьютера (главной ЭВМ) для ряда удаленных терминалов;

> эмуляция режима терминала удаленного Host-компьютера;

> сохранение принимаемой и передаваемой информации;

> регистрация событий, происходящих в течение сеанса связи;

> автоматизация часто повторяющихся последовательностей действий;

> передача факсимильной информации между компьютерами или компью тером и факсимильным аппаратом;

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

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

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

Специфическими особенностями программ передачи факсимильной информации являются:

> передача данных по расписанию многочисленным адресатам;

^ прием и передача факсимильной информации в фоновом режиме;

> преобразование ряда графических форматов данных в стандартные для факсимильных аппаратов;

> возможность просмотра факсимильной информации.

13.2. Типовые команды связных программ

В большинстве связных программ (в основном для операционных систем типа DOS) для управления их режимами работы наряду с меню используются так называемые Alt-команды. Можно сказать, что сформировался некий стандарт де-факто на такие команды. Однако в конкретной реализации коммуникационной программы возможны некоторые отличия. Рассмотрим типовые Alt-команды на примере программы Procomm Plus.

13.2.1. Команды управления соединением

До соединения:

<Alt>-<D> выход в телефонный справочник и набор номера.

В процессе соединения:

<Alt>-<B> передача разрыва;

<Alt>-<C> очистка экрана;

<Alt>-<G> сохранение информации, выведенной на экран;

<Alt>-<L> включение/отключение принтера;

<Alt>-<T> вывод времени соединения;

<Alt> – <М> использование клавиш макроопределений;

<Alt>-<Fl> включение/выключение записи в файл регистрации соеди нения;

<Alt>- <F2> задание паузы записи в файл регистрации соединения;

<Alt>- <F5> запуск Script-файла;

<Alt> -<F6> повторный вывод сохраненного содержимого экрана;

<Alt> – <Е> переключение режима дуплекс/полудуплекс;

<Alt>-<0> включение режима диалога (Chat-режима);

<Alt>-<Q> включение Host-режима;

<Alt> – <J> инициализация модема;

<Alt>-<Y> автоматический ответ на вызов;

<Alt>-<U> сброс терминала;

<Alt> -<R> режим записи;

<Alt> – <К> переход в меню команд программы защиты от ошибок прото кола Kermit;

<Alt> – <N> пауза экрана;

<Alt> – <F3> переключение режимов “возврат каретки/ возврат каретки с переводом строки” (CR/CRLF).

После соединения:

<Alt> – <Н> отключение от линии;

<Alt>-<X> выход из программы.

13.2.2. Команды установки конфигурации

<Alt>-<S> конфигурирование модема;

<Alt>-<P> конфигурирование портов;

<Alt> <W> таблица преобразования;

<Alt> – <F8> распределение функций клавиш клавиатуры.

13.2.3. Команды дополнительных функций

<Alt> – <А> вызов текстового редактора;

<Alt>-<F> выход в каталог файлов;

<Alt>-<!> вывод информации о программе;

<Alt>-<V> просмотр файла;

<Alt>-<F7> смена каталога;

<Alt>-<=> использование буфера временного хранения (Clipboard);

<Ctrl>-<\> режим монитора;

<Ctrl > – < ]> изменение состояния;

<Ctrl> – < – > изменение строк;

<‘> выход в меню программы.

13.3. Конфигурирование порта

13.3.1. Установка номера порта

Большинство программ позволяют использовать последовательные порты СОМ 1-COM4. Однако программы, ориентированные на компьютеры IBM PS/2, могут использовать СОМ1-СОМ8. Номер порта, устанавливаемый в программе, должен соответствовать реально используемому модемом порту. Рис. 13.1 иллюстрирует меню операционной системы Windows’95, в котором производится установка номера порта.

13.3.2. Скорость передачи

Скорость передачи данных по последовательному порту задается одним из значений: 75, 110, 300, 1200, 2400, 4800, 9600, 19600, 38400, 57600, 115200 Бод. Выбор скорости зависит от типа модема, его максимальной скорости и типа микросхемы UART, используемой в контроллерах последовательного порта модема и компьютера.

Если вы не являетесь счастливым обладателем UART 16550A и не используете программные ускорители типа FOSSIL-драйверов, то скорость передачи порта не может быть выше 19200 Бод.

Рис. 13.1. Установка свойств модема в Windows’95

При использовании модема, поддерживающего протоколы сжатия (V.42bis, MNP5), рекомендуется устанавливать скорость порта несколько большей, чем максимально возможная скорость передачи информации модемом. Например, если модем поддерживает протокол V.34 (28800 бит/с), то необходимо установить скорость порта 38400, 57600, или 115200 Бод.

Часто для более устойчивой работы приложений требуется, чтобы скорость передачи по используемому порту была постоянной и не изменялась в течение сеанса связи, даже несмотря на изменение скорости передачи модемом в канале. Это условие, в частности, относится к программам, использующим в своей работе Fossil-драйверы. Такая “залочка” (lock – замок, запирать) порта, как правило, достигается подачей команды АТ&;В1 или явным заданием скорости порта в программе. В Windows’95, характеризующейся общим “отчуждением железа” от пользователя, фиксация скорости порта осуществляется установкой флажка “Only connect at this speed” в поле “Maximum speed” меню General (Control Panel\Modems\General) (рис. 13.1).

13.3.3. Формат передачи

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

> числом бит данных (7 или 8);

> числом стоповых бит (1, 1.5 или 2);

> типом проверки (на четность – Even, на нечетность – Odd, без проверки – None, проверочный бит всегда равен “1” – Mark, проверочный бит всегда равен “О” – Space).

Рис. 13.2. Установка формата асинхронного символа в Windows’95

Наиболее широко используется формат символа, включающий в себя 8 бит данных и 1 столовый бит без использования проверки (8N1). Значения соответствующих параметров для данного формата в Windows’95 показаны на рис. 13.2.

Рис. 13.3. Установка адреса порта и номера прерывания в терминальной программе Telix

Рис. 13.4. Установка параметров порта в программе Term95 (NC 5.0)

13.3.4. Адрес порта и номер прерывания

При конфигурировании встроенных модемов задаются адрес порта ввода-вывода и номер линии прерывания. На рис. 13.3 и 13.4 иллюстрируется выполнение этой операции для DOS с помощью программ Telix и Term95 (терминальной программы, включенной в состав оболочки Norton Commander 5.0).

13.4. Использование FOSSIL-драйверов

FOSSIL-драйверы используются для расширения функций BIOS, обслуживающих асинхронный последовательный порт (FOSSIL – аббревиатура названий нескольких коммуникационных программ Fido/Opus/SEAdog Standard Layer). Дополнительно эти драйверы поддерживают ряд функций для работы с клавиатурой, видеоадаптером и системным таймером.

Применение FOSSIL-драйверов позволяет увеличить скорость обмена по последовательному порту до 38400 Бод, в то время как функции BIOS обеспечивают максимальную скорость передачи только 9600 Бод.

Работа FOSSIL-драйверов основана на перехвате прерываний от портов. Драйверы содержат два внутренних буфера (приемника и передатчика), организованных в виде очереди FIFO. В буфер передатчика записываются данные, передаваемые компьютером модему. Драйвер самостоятельно определяет, когда свободен регистр данных СОМ-порта, и записывает в него очередной символ данных. При этом переданный символ удаляется из буфера, и осуществляется передача следующего символа. В буфер приемника драйвер записывает данные, поступающие в компьютер через СОМ-порт. Затем содержимое этого буфера может быть считано прикладной программой при помощи специальной функции драйвера.

Существуют специальные FOSSIL-драйверы, обеспечивающие программную эмуляцию протоколов исправления ошибок. Наиболее распространенными FOSSIL-драйверами являются XOO. SYS (ХОО. СОМ) и BNU. EXE (BNU. COM). В качестве примера рассмотрим установку этих драйверов.

Для запуска драйвера из стартового файла CONFIG. SYS, в нем необходимо записать строку:

Device = XOO. SYS Е 2 Т=1024 R=2048,

Где Е – отключение заставки, 2 – номер СОМ-порта, Т=1024 – размер буфера для передачи, R=2048 – размер приемного буфера.

При запуске драйвера из командной строки DOS с теми же параметрами необходимо набрать следующую команду:

ХОО. ЕХЕ Е 2 Т=1024 R=2048 Драйвер BNU. EXE запускают из командной строки следующим образом:

BNU. EXE /T:1024 /R:2048 /М-,

Где /Т=1024 – размер буфера для передачи, /R=2048 – размер приемного буфера, /М- – отключение заставки.

Рассматриваемые драйверы допускают фиксацию скорости порта, что оказывается полезным при использовании модемов с аппаратным сжатием передаваемых данных. При фиксации порта в команды запуска FOSSIL-драйверов добавятся следующие параметры (порт COM2, скорость фиксации 9200 Бод):

> при запуске драйвера ХОО в CONFIG. SYS:

Device = XOO. SYS Е 2 Т=1024 R=2048 В,2, 19200 > при запуске драйвера ХОО из командной строки DOS:

ХОО. ЕХЕ Е 2 Т=1024 R=1024 В,2, 19200 > при запуске драйвера BNU:

BNU. EXE /R-.1024 /Т:2048 /М – /L1:19200,8N1

Для большинства модемов V.22bis (2400 Бод) с аппаратными протоколами MNP и V.42bis рекомендуется установить скорость порта 9600 Бод, для модемов V.32 (9600 Бод) – 19200 бод, а для модемов V.32bis (14400 Бод) – 19200 и выше. Максимальная скорость в этом случае зависит уже от параметров СОМ-порта.

13.5. Конфигурирование модема

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

13.5.1. Строка инициализации

Строка инициализации (init string) задает исходный режим работы модема и состоит из ряда АТ-команд. В общем случае таких строк может быть несколько – для различных режимов соединения. Например, одна – для соединения без использования протоколов сжатия данных и исправления ошибок, другая – с использованием таких протоколов. Часто строку инициализации можно сократить, записав необходимые установки в память модема, например, командой AT&;W1.

Пример строки инициализации в меню Modem Settings программы Term 95 приведен на рис. 13.5.

В операционной системе Windows’95 строка инициализации в явном виде практически никогда не задается. При инициализации модема, обслуживаемого Windows’95, посылаются команды, соответствующие установкам параметров модема.

Таблица 13.1. Протокол соединения модема

Номер разделаСодержимое файла ModemLog. txt
110-06-1996 20:31:12.94 – Телефакс-модем ZyXEL U-1496xx (E, E+,S, S+), V32b (внешний) in use. 10-06-1996 20:31:13.12 – Modem type: Телефакс-модем ZyXEL U-1496xx (E, E+,S, S+), V32b (внешний) 10-06-1996 20:31:13.12 – Modem Inf path: MDMZYXEL. INF 10-06-1996 20:31:13.12 – Modem Inf section: UodemO 10-06-1996 20:31:13.47 – 19200,8.6,1 10-06-1996 20:31:14.64 – 36400Х6,1 10-06-1996 20:31:14.64 – 36400,N,6,1
210-06-1996 20:31:15.07 – Initializing modem. 10-06-1996 20:31:15.07 – Send: AT &;F ЕО Х7<сг> 10-06-199620:31:15.26- Recv: <cr><lf>OK<crxlf> 10-06-1996 20:31:15.26 – Interpreted response: Ok 10-06-1996 20:31:15.26 – Send: AT 835.1=0 S35.7=1 <cr> 10-06-1996 20:31:15.29 – Recv: <cr><lf>OK<crxlf> 10-06-199620:31:15.29 – Interpreted response: Ok 10-06-1996 20:31:15.29 – Send: AT S46.2°1<cr> 10-06-1996 20:31:15.29 – Recv: <cr><lf>OK<crxlf> 10-06-199620:31:15.31 – Interpreted response: Ok 10-06-199620:31:15.31 -Send: ATS7-60S50-OL1 M 1 &;K3’EO&;K4&;H3BOS41.4-1 <cr> 10-06-199620:31:15.32 – Recv: <crxlf>OK<crxlf> 10-06-199620:31:15.32 – Interpreted response: Ok 10-06-19S6 20:31:15.32 – Send: AT&;N35LO<cr> 10-06-1996 20:31:15.32 – Recv: <crxlf>OK<crxlf> 10-06-1996 20:31:15.32 – Interpreted response: Ok
310-08-199620:31:16.33 – Dialing 10-06-1996 20:31:15.33 – Send: ATDP#,#######<cr> 10-06-1996 20:31:43.06 – Recv: <crxlf>RINQINe<crxlf> 10-06-1996 20:31:43.06 – Interpreted response: Informative 10-06-1996 20:31:48.69 – Recv: <crxlf>RINQINQ<cr><lf> 104)6-1996 20:31:48.69 – Interpreted response: Informative 10-06-1996 20:31:57.64 – Hanging up the modem. 10-06-1996 20:31:57.64 – Send: <cr> 10-06-1996 20:31:56.26 – Recv: <crxlf>NO CARRIER<crxlf> 10-06-1996 20:31:56.26 – Interpreted response: No Carrier ” 10-06-1996 20:31:56.26-Send: ATHO<cr> 10-06-1996 20:31:56.46 – Recv: <crx¦f>OK<crxlf> 10-06-1996 20:31:56.46 – Interpreted response: Ok
410-06-1996 20:31:58.85 – Session Statistics: 10-06-1996 20:31:58.85 – Reads : 72 bytes 10-06-1996 20:31:58.85 – Writes: 109 bytes 10-06-1996 20:31:58.85 – Телефакс-модем ZyXEL U-1496xx (E, E+,S, S+), V32b (внешний) closed.

Опытный пользователь может добавить свои АТ-команды в строке ввода “Extra settings” меню “Advanced Connection Settings” (рис. 13.6). В этом случае установленные пользователем команды будут посланы модему в последнюю очередь непосредственно перед набором номера и установлением соединения.

В табл. 13.1 приведен протокол (неудачного) соединения для конфигурации модема, соответствующей установкам параметров на рис. 13.1, 13.2, и 13.6. При установленном флажке “Record a log file” протокол записывается в файл..\Windows\ModemLog. txt (рис. 13.6).

В табл. 13.1 можно выделить несколько разделов. Первый раздел содержит основные данные о модеме и параметрах порта. Второй – протокол инициализации модема. Инициализация происходит путем передачи модему нескольких наборов АТ-команд и получения от него ответов. Последними посылаются команды, набранные пользователем в строке “Extra settings” меню “Advanced Connection Settings” (в табл. 13.1 выделено жирным курсивом). После этого начинается набор номера. Протокол набора номера записывается в разделе 3. Протокол соединения одиночного вызова завершается разделом статистики (раздел 4).

Рис. 13. 6. Задание “строки инициализации” в свойствах соединения Windows’95

13.5.2. Префикс и окончание строки набора

Префикс строки набора (dial prefix) обычно содержит команду подключения к линии (ATD) и выбора типа набора – импульсный (Р) или тональный (Т). При необходимости в префикс строки набора вводят команду задания паузы или ожидания второго ответа станции (“,” или W соответственно) при внешнем или междугороднем соединении.

Окончание строки набора (dial suffix) обычно представляет собой знак “Возврат каретки”, завершающий последнюю АТ-команду (“М, то есть <Ctrl>-<M>) (см. рис. 13.5).

13.5.3. Строки автоответа и отбоя

Строка автоответа (answer string) представляет собой АТ-команду ATSO=1’M. Строка отбоя (hang-up string) выглядит примерно следующим образом:

–+++—АТН(ГМ (см. рис. 13.5). Здесь знаки “—” задают необходимую паузу в передаче, но не менее 1 с, необходимую для переключения модема в командный режим.

13.6. Установки для факсимильной связи

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

> параметры управления передачей;

> параметры преобразования факсимильной информации;

> параметры приема факсов;

> параметры открывающей страницы;

> параметры аппаратных средств системы.

Для известной программы BitFax Professional Lite вариант возможных групп параметров представлен на рис. 13.7.

13.6.1. Параметры управления передачей факсов

Параметры управления передачей факсов включают в себя (рис. 13.8):

> включение/выключение передачи открывающей страницы;

> стирание/сохранение QFX-файлов после их передачи;

> основной/фоновый режим передачи;

> число повторных наборов номера;

> интервал между повторными наборами номера и ряд других.

Рис. 13.7. Установки типичной факсимильной программы

Рис. 13.8. Основные параметры передачи BitFax Professional Lite

13.6.2. Параметры преобразования факсимильной информации

Параметры преобразования факсимильной информации включают в себя:

> включение/выключение центровки на странице;

> установка разрешающей способности;

> включение/выключение полностраничной передачи;

> установка числа строк текста на странице (60-70);

> установка интервала табуляции (6-’10 знаков) > установка отступов сверху и снизу страницы.

13.6.3. Параметры режима приема факсов

Для задания режима приема факсов устанавливаются следующие параметры (рис. 13.9):

> идентификация приема факсов;

> основной/фоновый режим приема факсов;

> имя каталога для сохранения принимаемых факсимильных сообщений;

Рис. 3.9. Параметры режима приемов факса

> режим ответа модема: Fax, Fax/Data или ручной;

^ число входящих звонков для ответа факс-модема и ряд ругих (рис. 13.9).

/

13.6.4. Параметры открывающей страницы

Для создания программой открывающей страницы (Cover Page) требуется ввести информацию о пользователе:

> наименование организации;

> координаты пользователя (факс и телефон);

> фамилия и имя;

> имя графического файла, содержащего рисунок, включаемый в открывающую страницу.

13.6.5. Параметры аппаратных средств

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

> тип монитора;

> режим адаптера монитора;

> тип принтера;

> порт печатающего устройства.

13.7. Конфигурирование окружения коммуникационных программ

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

> имена файлов и пути (имена каталогов) для сохранения различных данных, регистрационной и вспомогательной информации;

> названия и пути внешних редакторов текста и (или) изображения;

> названия и пути внешних программ просмотра текстовых и графических файлов;

> палитры и другие детали оформления пользовательского интерфейса.

Рис. 13.10. Параметры окружения программы Qmodem Pro for Windows’95

Набор и количество конфигурационных параметров меняется в зависимости от конкретного приложения. В качестве примера на рис. 13.10 приведено меню “Options” программы Qmodem Pro for Windows’95.

13.8. Использование Script-команд

Scri pt-командыи Script-файлы являются чрезвычайно удобным средством автоматизации часто повторяемых задач. Они представляют собой последовательность команд, написанных на специально созданных для этих целей Scri pt-языках (script languages) и оформленных в виде макрокоманд или файлов. В состав таких Script-языков входит ряд операторов, позволяющие выполнять основные функции связных программ, такие как набор номера, ввод пароля, ответы на запрос удаленного абонента, пауза и т. п. Современные Script-языки имеют различный уровень сложности, начиная от простого списка возможных команд до развитых алгоритмических языков. В программах со сложными Script-языками обычно имеется функция создания Script-команд путем запоминания выполняемой пользователем последовательности действий.

Наиболее известными Script-языками являются SALT (Quick Link II Fax), SALT II (WinTelix), Aspect (Procomm Plus), SLIQ (QmodemPro for Windows’95) и др. В качестве простого примера использоватгя Script-команд рассмотрим применение свободно распространяемой утилиты Dial-Up Scripting Tool, предназначенной для автоматизации сетевых соединений (Dial-Up ) в среде Widows’95.

Сначала требуется создать Script-файл – текстовый файл, содержащий последовательность команд. Основными командами последовательности являются следующие:

Ргос <пате> – определяет начало Script-процедуры. Все Script-файлы должны иметь главную процедуру (ргос main). Последовательность команд начинает выполняться в главной процедуре и заканчивается в ее конце.

Endproc – обозначает окончание Script-процедуры. После выполнения этой команды из главной процедуры средствами Dial-Up Networking будет запущен протокол РРР или SLIP.

Delay <n seconds> – задает паузу длительностью п секунд между текущей и следующей командами.

Waitfor “<string>” – используется для ожидания последовательности символов, передаваемых удаленным компьютером, с которым устанавливается соединение. Задаваемая последовательность символов<string> зависит от регистра их набора. Например, если задана команда waitfor “OLEG”, то при приеме последовательности “Oleg” следующая команда выполнена не будет.

Transmit “<string>” \ SUSERID \ SPASSWORD – передача последовательности символов, имени пользователя или его пароля удаленному компьютеру. Имя пользователя и пароль автоматически передаются из соответствующих переменных Dial-Up Networking connection, с которым связан данный Script-файл (рис. 13.11).

Set port databits <integer> – изменяет число бит в передаваемом компьютером асинхронном символе. Допустимы значения от 5 до 8. Если эта команда не используется, то применяются установки порта из свойств Dial-Up Networking connection, с которым связан данный Script-файл.

Рис. 13.11. Установка связи средствами Dial-Up Networking Windows’95

Set port stopbits <integer> – изменяет число стоповых бит в передаваемом асинхронном символе. Возможны значения 1 или 2. Если эта команда не применяется, то используются установки свойств соответствующего Dial-Up Networking connection.

Set port parity none \ odd. \ even \ mark \ space – позволяет изменять схему паритета передаваемых в течении сессии асинхронных знаков. Особенности команды те же, что и двух предыдущих.

Set ipaddr – устанавливает для сессии IP-адрес.

Set screen keyboard on \ off – включает/выключает возможность ввода с клавиатуры в окно терминала.

Getip <optional index> – получает IP-адрес и использует его как адрес рабочей станции. Параметр <optional index> содержит не тот IP-адрес, который будет использоваться в случае, если удаленный компьютер прислал более одного адреса.

Halt – позволяет приостановить выполнение Script-файла. В этом случае появляется окно терминала, где вручную можно ввести дополнительную информацию. Для продолжения соединения необходимо нажать кнопку Continue.

; – индикатор комментария. Любой текст, следующий за этим знаком игнорируется.

Пример простого Script-файла, применяемого для связи с Internet-провайдером, приведен ниже.

Proc main

Delay I

Transmit “”M”

Waitfor “login:”

Delay 1

Transmit “uutest”

Transmit “”M”

Delay 1

Waitfort “password:”

Delay 1

Transmit “test”

Waitfor “Shere=gsp”

Delay 2

Transmit “^PStest ppp”

Transmit “”M” endproc

Затем созданный Script-файл необходимо сохранить с расширением *.scp и связать с соответствующим сетевым соединением. Это осуществляется при помощи утилиты Dial-Up Scripting Tool (рис. 13.12):

Рис 13 .12 Свнязывание сетевого соединения со скрипт файлом

> в окне “ConnecLions” выберите сетевое соединение;

> в строке “File name” введите имя требуемого Script-файла;

> нажмите кнопку “Apply”.

13.9. Эмуляция Host-компьютера

Некоторые коммуникационные программы позволяют переводить компьютера в режим Host-компьютера (главного компьютера). Такой режим позволяет организовать на базе компьютера упрощенную электронную доску объявлений BBS (Bulletin Board Service) или банк данных для группового использования. Удаленные пользователи получают доступ к ресурсам местного компьютера, находящегося в режиме главного компьютера. Они могут просматривать каталоги и файлы, организовывать их прием и передавать свои данные на Host-компьютер.

Для организации режима Host-компьютера коммуникационная программа должна выполнить следующую последовательность действий:

^ перевести модем в режим автоответа на входящий звонок;

> передать “приглашение” вызывающему абоненту после установления соединения;

> запросить имя и пароль абонента;

> организовать структуру доступа для данного абонента, т. е. задать пути и каталоги, к которым возможен доступ абонента со своими правами доступа;

> выполнить автоматическое разъединение при прекращении сеанса с удаленным абонентом.

Перевод компьютера в Host-режим производится при помощи соответствующего варианта команды конкретной связной программы. Чаще всего в таких программах режим Host-компьютера устанавливается путем запуска специальной Script-команды.

13.10. Эмуляция терминалов

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

Функция эмуляции терминала осуществляет перевод команд от Host-компьютера и к нему в команды, определенные изготовителями для терминала данного типа. Эти команды часто начинаются с кода ASCII “ESC” (1Bh), за которым следует последовательность знаков. Такие последовательности называются Esc-последовательностями. Содержание этих последовательностей для разных типов терминалов различно.

Как правило, имеется возможность выбора типа эмулируемого терминала (рис. 13.13). Предлагаемая в коммуникационных программах настройка режима терминала позволяет управлять тем, как приложение обращается с информацией, отображаемой в режиме терминала (рис. 13.14). Это относится как к принимаемым данным, так и к данным, набираемым на клавиатуре.

Line Wrap – включение опции автоматического перевода строки по достижению ее границы экрана.

Add LF to CR – упраляет вставкой символа перевода строки LF (Line Feed) после каждого символа возврата каретки CR (Carriage Return).

Destructive backspace – опция управления действием клавиши Backspace. Когда она выключена, клавиша Backspace сдвигает курсор на один символ влево не стирая его. При включении этой опции клавиша Backspace дополнительно стирает стоящий слева символ.

Strip high bit – предписывает программе игнорировать старший бит выводимого на экран байта. При работе с кодировками национальных языков данная опция должна быть выключена.

Наиболее простым типом терминала является TTY. Он обрабатывает только простейшие управляющие символы, такие как возврат каретки и табуляция. Широкое распространение получили термины ANSY, ANSY-BBS, VT52, VT100, VT102 и WISE. Многие программы электронных справочных служб BBS при соответствующих командах могут передавать последовательности, поддерживаемым терминалом ANSY-BBS. Терминал VT102 разработан фирмой Digital Equipment Corporation и также является популярным типом терминала. В нем реализовано большое число функций.

Рис. 13.t4. Опции эмуляции терминала ANSY в программе Qmodem Pro

В табл. 13.2-13.5 приводятся управляющие последовательности наиболее распространенных терминалов и их эмуляторов.

Таблица 13.2. Управляющие последовательности для терминалов ANSI

Клавиши PCКлавиши терминалаПередаваемые символы
TabTabЛ1
F1Program Function 1 (PF1)*[ОР
F2Program Function 2 (PF2)*[OQ
F3Program Function 3 (PF3)*[ОР
F4Program Function 4 (PF4)“[OS
BackspaceBackspace
EnterReturn
Gray DeleteDelete CharacterD
Gray HomeHome Cursor-[[Н
Gray EndErase End of LineW
Gray PageupMapped by QmodemPro©UPLOAD
Gray PagedownMapped by QmodemPro©DOWNLOAD
Gray UpCursor Up^[А
Gray DownCursor Down^[В
Gray LeftCursor LeftW
Gray RightCursor Right-ЧЕС
Pad///
Pad’**
Pad –
Pad+++
Pad EnterEnter
Pad.
PadO0О
Pad111
Pad 222
Pad333
Pad 444
Pad 555
Pad 666
Pad?77
Pad 888
Pad 999
Pad DeleteDelete CharacterD
Pad EndErase End of LineW
Pad DownCursor Down^[В
Pad PagedownMapped by QmodemPro©DOWNLOAD
Pad LeftCursor Left-[[D
Pad RightCursor Right“[[С
Pad HomeHome Cursor-[[Н
Pad UpCursor Up-[[А
Pad PageupMapped by QmodemPro©UPLOAD
Shift+BackspaceDelete CharacterD
Shift+EnterEnter
Shift+Gray DeleteDelete CharacterD
Shift+Pad ///
Shift+Pad”**
Shift+Pad –
Shift+Pad ++
Shift+Pad EnterEnter“М
Shift+Pad Delete
Shift+Pad Insert0О
Shift+Pad End11
Shift+Pad Down22
Shift+Pad Pagedown33
Shift+Pad Left44
Shift+Pad Clear55
Shift+Pad Right66
Shift+Pad Home77
Shift+Pad Up89
Shift+Pad Pageup99
Control+Backspace0“Х
Control+EnterEnter“М
Control+Gray HomeInsert Line’^[L
Control+Gray PageupDelete Line“[[М
Control+Gray PagedownClear Screen^[WW
Control+Pad ///
Control+Pad “**
Control+Pad –Keypad Application MINUS“[От
Control+Pad +Keypad Application COMMA“[01
Control+Pad EnterKeypad Application Enter“[ОМ
Control+Pad.Keypad Application PERIOD“[On
Control+Pad 0Keypad Application 0Л[0р
Control+Pad 1Keypad Application 1A[OQ
Control+Pad 2Keypad Application 2“[Or
Control+Pad 3Keypad Application 3’40s
Control+Pad 4Keypad Application 4“[Ot
Control+Pad 5Keypad Application 5*[0u
Control+Pad 6Keypad Application 6“[Ov
Control+Pad 7Keypad Application 7^Ow
Control+Pad 8Keypad Application 8^Ox
Control+Pad 9Keypad Application 9Л[0у
Control+Pad DeleteKeypad Application PERIOD“[On
Control+Pad InsertKeypad Application 0Л[0р
Control+Pad EndKeypad Application 1Л[0о
Control+Pad DownKeypad Application 2“[Or
Control+Pad PagedownKeypad Application 3’40s
Control+Pad LeftKeypad Application 4“[Ot
Control+Pad ClearKeypad Application 5^Ou
Control+Pad RightKeypad Application 6 ,*[0v
Control+Pad HomeKeypad Application 7“[Ow
Control+Pad UpKeypad Application 8“[Ox
Control+Pad PageupKeypad Application 9Л[0у
Shift+Control+EnterEnter^
ShIft+Control+Pad EnterEnter“M
ShIft+Control+Pad HomeInsert Line^[L

Таблица 13.4. Управляющие последовательности для терминалов VT 102

Клавиши PCКлавиши терминалаПередаваемые символы
TabTabА!
F1Program Function 1 (PF1)“[ОР
F2Program Function 2 (PF2)*[OQ
F3Program Function 3 (PF3)-ЧОР
F4Program Function 4 (PF4)^OS
BackspaceBackspace“Н
EnterReturn“М
Gray DeleteDelete CharacterD
Gray HomeHome Cursor-[[Н
Gray EndErase End of LineW
Gray UpCursor Up^[А
Gray DownCursor Down-[[В
Gray LeftCursor Left-[ID
Gray RightCursor Right-[[С
NumlockPF1Л[ОР
Pad/PF2A[QQ
Pad –PF3“[OR
Pad-PF4“[OS
Pad+Keypad COMMA
Pad EnterEnter“М
PadO00
Pad111
Pad 222
Pad333
Pad 444
Pad 555
Pad 666
Pad?77
Pad888
PadO99
Pad Delete
Pad Insert00
Pad End11
Pad Down22
Pad Pagedown33
Pad Left44
Pad Clear55
Pad Right66
Pad Home77
Клавиши PCКлавиши терминалаПередаваемые символы
Pad Up88
Pad Pageup99
Shift+BackspaceDelete CharacterD
ShIft+EnterEnter
Shitt+Gray DeleteDelete CharacterD
Shift+Pad ///
Shift+Pad “*
Shift+Pad –
Shift+Pad +Keypad MINUS
Shift+Pad EnterEnter
Shift+Pad DeleteD
Shift+Pad EndErase End of Line-[[К
Shift+Pad DownCursor Down^[В
Shift+Pad PagedownClear Screen“[[H*[[2J
Shift+Pad LeftCursor Left-[[D
Shift+Pad RightCursor RightW
Shift+Pad HomeHome Cursor^[H
Shift+Pad UpCursor Up^[A
Shift+Pad PageupDelete Line^[M
Control+BackspaceCtrl-Backspace*X
Control+EnterEnter
Control+Gray HomeInsert Line-[[L
Control+Qray PageupDelete Line“[[M
Control+Qray PagedownClear Screen-4[H-4[2J
Control+Gray UpApplication Cursor Up^OA
Control+Gray DownApplication Cursor DownA[OB
Control+Gray LeftApplication Cursor LeftA[QD
Control+Gray RightApplication Cursor RightA[QC
Control+Pad ///
Control+Pad –*
Control+Pad –Keypad Application MINUS“[Om
Control+Pad +Keypad Application COMMA^Ol
Control+Pad EnterKeypad Application Enter“[OM
Control+Pad.Keypad Application PERIOD“[On
Control+Pad 0Keypad Application 0*[0p
Control+Pad 1Keypad Application 1A[0q
Control+Pad 2Keypad Application 2“[Or
Control+Pad 3Keypad Application 3*[0s
Control+Pad 4Keypad Application 4‘401
Клавиши PCКлавиши терминалаПередаваемые символы
Control+Pad 5Keypad Application 5A[OU
Control+Pad 6Keypad Application 6A[QV
Control+Pad 7Keypad Application 7“[Ow
Control+Pad 8Keypad Application 8“[Ox
Control+Pad 9Keypad Application 9Л[0у
Control+Pad DeleteKeypad Application PERIOD*[0n
Control+Pad InsertKeypad Application 0Л[0р
Control+Pad EndKeypad Application 1*[0q
Control+Pad DownKeypad Application 2-ЧОг
Control+Pad PagedownKeypad Application 3*[0s
Control+Pad LeftKeypad Application 4^Ot
Control+Pad ClearKeypad Application 5*[0u
Control+Pad RightKeypad Application 6*[0v
Control+Pad HomeKeypad Application 7^Ow
Control+Pad UpKeypad Application 8’40X
Control+Pad PageupKeypad Application 9*[0y
ShIft+Control+EnterEnter*M
ShIft+Control+Pad EnterEnter*M
ShIft+Control+Pad DownApplication Cursor Down^OB
ShIft+Control+Pad LeftApplication Cursor Left“[OD
ShIft+Control+Pad RightApplication Cursor Right*[OC
ShIft+Control+Pad HomeInsert Line-[[L
ShIft+Control+Pad UpApplication Cursor Up^OA

Таблица 13.5. Управляющие последовательности для терминалов Wyse 100

Клавиши PCКлавиши терминалаПередаваемые символы
TabTab˦
F1Function 1 (F1)‘^О’^
F2Function 2 (F2)-W^M
F3Function 3 (F3)“АВ^
F4Function 4 (F4)^С^
F5Function 5 (F5)‘-W^M
F6Function 6 (F6)“АЕ*!^
F7Function 7 (F7)“AF^
F8Function 8 (F8)“AG^
F9Line Insert-ЧЕ
F10Line Delete<[R
BackspaceBackspace
EnterEnter
Gray InsertInsert Off
Gray DeleteInsert Space Character*[Q
Gray HomeHome CursorЛл
Gray EndErase End of Line
Gray PageupScrl Up*[w
Gray PagedownScrl DownАГу
Gray UpCursor Up*K
Gray DownCursor Down*J
Gray LeftCursor Left^
Gray RightCursor Right“L
Pad///
Pad’
Pad-
Pad+++
Pad EnterEnter“M
Pad.
PadO00
Pad111
Pad 222
Pad333
Pad 444
Pad 555
Pad 666
Pad?77
Pad888
Pad 999
Pad DeleteInsert Space Character*[Q
Pad InsertInsert Off-Чг
Pad EndErase End of Line
Pad DownCursor Down*J
Pad PagedownScrl DownЛ[у
Pad LeftBackspace‘”H
Pad RightCursor Right-^
Pad HomeHome CursorАЛ
Pad UpCursor UpЖ
Pad PageupScrl Up“[w
Shift+TabBack tab*[!
Shift+F1Function 9 (Shift F1)“WM
Shift+F2Function 10 (Shift F2)“А^М
Shift+F3Function 11 (Shift F3)“А^М
Shift+F4Function 12 (Shift F4)^””М
Shitt+F5Function 13 (Shift F5)“AL^
Shift+F6Function 14 (Shift F6)“АМ-Ч^
Shift+F7Function 15 (Shift F7)“АГ^М
Shift+F8Function 16 (Shift F8)W^M
Shift+F9Shift Line Insert^t
Shift+Gray DeleteDelete CharacterA[W
Shift+Gray HomeCursor to Start of Text“К
Shift+Gray EndPage EraseЛгу
Shift+Gray PageupInsert On^[q
Shift+Pad DeleteDelete CharacterA[W
Shift+Pad InsertInsert OnA[q
Shift+Pad LeftErase End of PageЛгу
Shift+Pad HomeCursor to Start of Text^
Control+BackspaceRuboutD
Control+EnterEnter“M
Control+Pad ///
Control+Pad “**
Control+Pad –
Control+Pad +++
Control+Pad EnterEnter“M
Control+Pad.
Control+Pad 0Insert Space Character“[0
Control+Pad 1Line Erase^T
Control+Pad 2Cursor Down“J
Control+Pad 3Scrl DownЛ[у
Control+Pad 4Backspace“H
Control+Pad 6Cursor Right“L
Control+Pad 7Home CursorАЛ
Control+Pad 8Cursor Up^
Control+Pad 9Scrl Up“[w
Control+Pad Delete
Control+Pad Insert00
Control+Pad End11
Control+Pad Down22
Control+Pad Pagedown33
Control+Pad Lett44
Control+Pad Clear55
Control+Pad Right66
Control+Pad Home77
Control+Pad Up88
Control+Pad Pageyp99

Программное обеспечение модемов