

                       VPK (c) Software










      Комплекc программ для поддержки экрана и клавиатуры



                      Краткое руководство



                             V3.13

                         Февраль 1993





























                             1993

                            - 2 -








                          Содержание



     Общие сведения........................................3
 1.  Драйвер клавиатуры VPKkbd.............................4
 2.  Драйвер шрифтов (экрана) VPKbfd.......................6
 3.  Загрузчик шрифтов VPKbfl..............................7
 4.  Средство  для  ввода  специальных и графических
     символов VPKsci.......................................8
 5.  Преобразователь  перемещений "мыши" в коды кла-
     виш VPKmkd............................................9
 6.  Дополнительные средства...............................10
 6.1.   Шрифты *.BFN.......................................10
 6.1.1.   Формат шрифтов...................................11
 6.1.2.   Программа  просмотра  и  редактирования битовых
          шрифтов BFE......................................11
 6.1.3.   Программа  преобразования  битовых  шрифтов   в
          ассемблерный текст BFN2ASM.......................12
 7.  Раскладки клавиатуры *.KBL............................12
 7.1.   Описатели раскладок клавиатуры *.KBD...............12
 7.2.   Транслятор описателей раскладок KBT................13

                            - 3 -




                Общие сведения



      Состав:

       -  Драйвер клавиатуры VPKkbd;

       -  Драйвер шрифтов (экрана) VPKbfd;

       -  Загрузчик шрифтов VPKbfl;

       -  Средство  для ввода специальных и графических симво-
          лов VPKsci;

       -  Преобразователь  перемещений  "мыши"  в  коды клавиш
          VPKmkd;

       -  Шрифты *.BFN;

       -  Программа просмотра и редактирования битовых шрифтов
          BFE;

       -  Программа  преобразования  битовых шрифтов в ассемб-
          лерный текст BFN2ASM;

       -  Раскладки клавиатуры *.KBL;

       -  Описатели раскладок клавиатуры *.KBD;

       -  Транслятор описателей раскладок KBT.

                            - 4 -




             1. Драйвер клавиатуры VPKkbd



      Используется  для  переключения  в  режим  перекодировки
 кодов клавиатуры в соответствии с национальным алфавитом.

 Командная строка:

        >VPKkbd_S [File[.KBL]] [/sw]
  или
        >VPKkbd_F [File[.KBL]] [/sw]

 VPKkbd_F  является  расширенной  версией  VPKkbd_S, добавлена
 возможность вывода текстового индикатора режима в системах, в
 которых  отсутствует индикация режима с помощью бордюра (нап-
 ример, с монохромным адаптером).

 File   - имя файла, содержащего описатель раскладки клавиату-
          ры; если не указан, используется внутренняя расклад-
          ка  драйвера.  Обычно  раскладка  влияет  только  на
          интерпретацию символов цифровой клавиатуры. По умол-
          чанию тип файла ".KBL", при поиске файла использует-
          ся  маршрут  ("path"), по которому находится драйвер
          VPKkbd_x.COM.

 Ключи:

 /N     - сброс состояния клавиши NumLock и гашение соответст-
          вующего индикатора на клавиатуре.

 /B=n   - установка цвета границы экрана ("бордюра") для инди-
          кации  режима  национального алфавита (RUS), n = 0 -
          15;  при  /B=0  индикация  с  помощью  "бордюра"  не
          используется.

 /S     - разрешает  "звуковое сопровождение" нажатий клавиш в
          национальном и альтернативном режиме, ключ действует
          только  при  первой  загрузке драйвера в память, так
          как при отсутствии ключа соответствующая часть кодов
          не  загружается  (порядка  32 байт); "/-S" отключает
          звук.

 /G     - разрешает возможность ввода псевдографических симво-
          лов  с алфавитной клавиатуры в режиме <Scroll Lock>,
          возврат в нормальный режим осуществляется по повтор-
          ному  нажатию  <Scroll  Lock>. Ключ действует только
          при  первой  загрузке драйвера в память, так как при
          отсутствии ключа соответствующая часть кодов не заг-
          ружается  (порядка 96 байт). Соответствие алфавитных
          клавиш  и  вводимых при их нажатии псевдографических
          символов приведено ниже (можно поменять в файле опи-
          сания раскладки):

                            - 5 -




                                          Shift
         -------------------       -------------------
         q w e r t y u i o p       q w e r t y u i o p
         ╔ ╦ ╗ ╒ ╤ ╕ ═ █ ▀ █       ┌ ┬ ┐ ╓ ╥ ╖ ─ ░ ▒ ▓

          a s d f g h j k l         a s d f g h j k l
          ╠ ╬ ╣ ╞ ╪ ╡ ║ ▌ ▐         ├ ┼ ┤ ╟ ╫ ╢ │   ∙

           z x c v b n m             z x c v b n m
           ╚ ╩ ╝ ╘ ╧ ╛ ▄             └ ┴ ┘ ╙ ╨ ╜ °


 /K=n   - задает  клавишу, используемую для переключения режи-
          мов RUS/LAT:

        /K=1   - правая клавиша SHIFT,

        /K=2   - левая клавиша SHIFT,

        /K=4   - правая клавиша CTRL,

        /K=5   - левая клавиша CTRL,

        /K=8   - правая клавиша ALT,

        /K=9   - левая клавиша ALT.

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

 /R=n   - задает  интервал восстановления индикатора RUS (бор-
          дюр  или  текст)  в  1/18.2 сек., по умолчанию 18 (1
          сек.);  если /R=0, то восстановления индикатора (при
          смене видеорежима) не происходит.

 /T     - разрешает  использование текстового идикатора режима
          национального алфавита (RUS), этот индикатор автома-
          тически  устанавливается  для  монохромных текстовых
          режимов дисплея; "/-T" запрещает текстовый индикатор
          (для версии VPKkbd_F).

 /X=n/Y=n
        - устанавливает  новые координаты для текстового инди-
          катора  режима RUS (по умолчанию X=0, Y=0) (для вер-
          сии VPKkbd_F).

 /U     - выгружает  драйвер  из памяти, если обрабатываемые в
          нем  прерывания  (09h  и 1Ch) не перехвачены другими
          резидентными программами.

 Примеры:

                            - 6 -




        AutoExec.BAT
        ------------
                lh \DRIVERS\VPKkbd_S EXCIMER /N/S/G

        MTE.BAT
        -------
                rem поменять раскладку для замены
                rem русских "СсНУрР" на латинские
                rem "CcHYpP"
                C:\DRIVERS\VPKkbd_S EXC_BBS /S/G
                MTE
                rem восстановить раскладку
                C:\DRIVERS\VPKkbd_S EXC_EXCIMER /S/G

 Размер  занимаемой  памяти для версии VPKkbd_S (в скобках для
 VPKkbd_F):

       -  при запуске с ключами /G/S 928 (1120) байт;

       -  при запуске с ключем /G 896 (1072) байт;

       -  при запуске с ключем /S 816 (992) байт;

       -  при запуске без ключей /G и /S 768 (960) байт.




             2. Драйвер шрифтов (экрана) VPKbfd



      Драйвер экрана VPKbfd служит для замены шрифтов, зашитых
 в  ПЗУ видео-BIOS, на загружаемые в ОЗУ шрифты с национальным
 алфавитом.  Используемые шрифты должны после запуска драйвера
 загружаться  (и  перегружаться)  с помощью загрузчика шрифтов
 VPKbfl. Драйвер экрана поддерживает загружаемые шрифты разме-
 ром  8x8, 8x14, 8x16 и 8x19. В отличие от большинства извест-
 ных  драйверов данный драйвер может использовать одновременно
 до  2-х  шрифтов  каждого  размера на EGA/VGA (вторым шрифтом
 выводятся символы повышенной яркости). Это позволяет осущест-
 вить  полную  русификацию  шрифтов  для  компьютеров     типа
 LapTop/NoteBook,  в которых используются дополнительные "жир-
 ные"  (BOLD)  шрифты.  Отличительной чертой драйвера является
 также  поддержка шрифтов, загруженных в область HMA при нали-
 чии  DOS  V5  и  драйвера  HIMEM  или в UMB при использовании
 QRAM/286, LastByte, EMM386, QEMM (см. VPKbfl).

      В командной строке для VPKbfd можно использовать ключи:

 /Q     - запрещает  вывод идентифицирующего сообщения (с фла-
          гом), остальной вывод можно переназначать (например,
          >NUL).

                            - 7 -




 /U     - производится  выгрузка из памяти установленных шриф-
          тов  и,  при  условии, что вектор 10h не перехвачен,
          самого драйвера.


      П_р_и_м_е_ч_а_н_и_е.  Шрифты,  установленные  в  HMA, не
 могут быть выгружены.




             3. Загрузчик шрифтов VPKbfl



      Загрузчик  шрифтов предназначен для установки основных и
 дополнительных  (BOLD) шрифтов в памяти при наличии резидент-
 ного  драйвера шрифтов VPKbf, а также первой загрузки шрифтов
 в знакогенератор адаптеров EGA/VGA. Кроме того, VPKbfl позво-
 ляет загружать шрифты в знакогенератор и при отсутствии драй-
 вера  шрифтов, но эти шрифты будут текущими только до следую-
 щей установки видеорежима.

 Поддерживаемые размеры шрифтов: 8x8, 8x14, 8x16, 8x19. Шрифты
 должны  быть  в формате BFN, т.е. иметь специальный заголовок
 (см. раздел "Шрифты *.BFN").

 Командная строка:

        >VPKbfl [drive:][path]font_file[.BFN] [/sw]

 /sw - ключи:

 /B     - устанавливает  шрифт  для  использования   драйвером
          VPKbfd  в режиме BOLD, т.е. этим шрифтом будут выво-
          диться  символы повышенной интенсивности; такая воз-
          можность  полезна на компьютерах с монохромным дисп-
          леем  и  адаптером EGA/VGA (например, классов LapTop
          или NoteBook).

 /L=n   - загружает указанный шрифт в знакогенератор EGA/VGA в
          блок #n, но не устанавливает его резидентным в памя-
          ти, т.е. этот шрифт просуществует до первой установ-
          ки  видеорежима;  такая возможность позволяет вообще
          не использовать драйвер шрифтов VPKbfd и не занимать
          память под резидентный шрифт, если компьютер исполь-
          зуется только в текстовом режиме.

 /E=n   - матрицы  символов  указанного шрифта перед загрузкой
          расширяются  до  высоты  n  (таким  образом,   можно
          использовать  шрифт  8x14 в режиме с матрицей 8x16 и
          т.п.).


                            - 8 -




 /X     - в  DOS V5+ на компьютерах с процессором 286 и старше
          при наличии драйвера XMS (HIMEM.SYS) и загрузке час-
          ти DOS в HMA (DOS=HIGH в CONFIG.SYS) делается попыт-
          ка  загрузить  шрифт в HMA (размер свободной области
          HMA  зависит  от  значения  параметра  BUFFERS=    в
          CONFIG.SYS). Примечание: не все программы "спокойно"
          переносят  расположение  шрифтов в HMA (в частности,
          игра "CATS").

 /U     - на  компьютерах с процессором 286 и старше при нали-
          чии  драйвера  QRAM/QEMM или EMM386 делается попытка
          загрузить шрифт в UMB.

 /S     - на  компьютерах  с отображением BIOS в "теневое" ОЗУ
          ("shadow"  RAM)  при  возможности  записи  (!) в эту
          область  шрифт загружается на место соответствующего
          по  размеру  "прошитого"  шрифта;  при  этом драйвер
          шрифтов  VPKbfd  становится  не  нужным (русификация
          BIOS при загрузке). Если уже используется соответст-
          вующий  шрифт,  установленный  в  ОЗУ  (например,  с
          помощью  другого  драйвера  экрана),  то по ключу /S
          происходит его замена.

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




             4. Средство  для  ввода специальных и графи-
                ческих символов VPKsci



      Задача VPKsci после установки ее резидентной при активи-
 зации  ее по "горячей" клавише позволяет вводить в буфер кла-
 виатуры коды специальных и графических символов, выбранных из
 набора, выведенного на экран. Выбор может производиться как с
 помощью  клавиш  управления курсором, так и с помощью "мыши".
 Выбранные символы заносятся во внутренний буфер задачи (до 15
 символов),  что  позволяет  удалять последние введенные коды.
 Коды нажимаемых клавиш на алфавитно-цифровой клавиатуре также
 заносятся во внутренний буфер. После нажатия завершающей кла-
 виши <Insert> или указания левой кнопкой "мыши" на "Ins" коды
 из  внутреннего буфера переносятся в буфер клавиатуры и появ-
 ляются в том месте экрана, в котором вы находились до активи-
 зации задачи VPKsci.

 Командная строка:

        >VPKsci [ /sw ] [ >nul ]


                            - 9 -




 Ключи:

 /C=n   - установить для панели набор цветов #n (0-7);

 /Q     - запрещает  вывод идентифицирующего сообщения (с фла-
          гом), остальной вывод можно переназначать (например,
          >NUL);

 /U     - выгрузить задачу из памяти.

 Для  активизации задачи используется комбинация <RightShift +
 Enter>.

 После активизации панели Вы можете использовать клавиши

        <--, -->, Up, Down

 для выбора символа, который необходимо вставить в текст. Выб-
 рать символ можно, указав на него "мышью" и нажав левую кноп-
 ку.  После выбора символа вы можете занести его во внутренный
 буфер,  нажав <Enter> или повторно нажав левую кнопку "мыши".
 Удалить  последний введенный символ из буфера можно с помощью
 клавиши <BackSpace> ( <-- ) или указав мышью на "Del". Содер-
 жимое  внутреннего буфера отображается в нижней части панели.
 Нажатие <Esc> или указание мышью на [■] в правом верхнем углу
 панели приводит к выходу без занесения кодов в буфер.

 С  помощью  клавиш <PageDown>, <PageUp> или указанием мыши на
 стрелку  на  левой  границе  панели можно перемещать панель в
 нижнюю или верхнюю части экрана.




             5. Преобразователь перемещений "мыши" в коды
                клавиш VPKmkd



      Программа VPKmkd является резидентным транслятором пере-
 мещений  "мыши"  в  коды клавиш управления курсором ("Вверх",
 "Вниз",  "Вправо",  "Влево")  и нажатий кнопок "мыши" (левой,
 правой  и  средней, если присутствует) в коды клавиш "Enter",
 "Esc"  и "BackSpace" соответственно. Таким образом, Вы можете
 использовать  эти  функции  "мыши"  при работе с программами,
 "мышь"  не поддерживающими (редакторами, электронным справоч-
 ником HELP.EXE для *.H!-файлов и т.п.).

      Программа  VPKmkd должна быть загружена перед задачей, в
 которой  необходима  поддержка описанных выше функций "мыши".
 Если  Вы  вызываете  задачу из оболочки, работающей с "мышью"
 (например,  из  Norton  Commander),  то  необходимо   создать
 командный файл в виде:

                            - 10 -




        VPKmkd.COM
        имя_запускаемой_задачи

 и  запускать  его.  При  этом VPKmkd определяет присутствие в
 памяти своей копии и производит инициализацию "мыши" без пов-
 торной загрузки в память резидентной части.

 Командная строка:

        >VPKmkd [/sw]

 Ключи:

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

 /U     - выгружает VPKmkd из памяти.

 Пример:

  Командый файл HLPM.BAT:

        VPKmkd >nul
        HELP
  Вызов:
        >HLPM

      Размер  резидентной  части  программы  VPKmkd  менее 400
 байт.




             6. Дополнительные средства






           6.1. Шрифты *.BFN


      Шрифты,  представленные  в  комплекте, брались из разных
 источников,  и  отличаются  от них только форматом заголовка.
 Шрифты  L8xNNt.BFN не руссифицированы, шрифты R8xNNt.BFN рус-
 сифицированы. Шрифты NU8xNN - из NU V6; шрифт A8x14 - в коди-
 ровке  КОИ-8 (может пригодиться при работе с удаленными ЭВМ с
 ОС  UNIX,  VMS,  RSX);  шрифт R16_866 - кодировка 866 кодовой
 таблицы  (можно  использовать при просмотре файлов, подготов-
 ленных  в  среде  Windows  3.1  с  руссифкаторами  ParaGraph,
 Steepler.  Раскладка  клавиатуры  для  таблицы  866  см. файл

                            - 11 -




 EX_866.KBL).



         6.1.1. Формат шрифтов


      Шрифты  в  формате  BFN представляют собой набор битовых
 масок  символов шириной 8 бит (1 байт), которому предшествует
 заголовок размером 16 байт. Структура заголовка следующая:

 8 байт - сигнатура  для  определения формата шрифта, содержит
          строку "VPK BFN ".

 1 байт - тип шрифта (0 - битовый шрифт).

 1 байт - ширина символьной ячейки (8).

 1 байт - блок знакогенератора для загрузки (0-7), игнорирует-
          ся.

 1 байт - высота символов (8, 14, 16, 19).

 1 байт - код первого символа в шрифте (0).

 1 байт - код последнего символа в шрифте (255).

 1 байт - число символов в шрифте минус 1 (255 = код последне-
          го - код первого).

 1 байт - резерв.



         6.1.2. Программа  просмотра  и    редактирования
                битовых шрифтов BFE


      Программа  позволяет  просмотреть как текущий (загружен-
 ный) шрифт, так и шрифты из файлов *.BFN, и, при необходимос-
 ти,  отредактировать шрифт. Кроме того, используя ключи /CH=n
 и  /OFF=xxxx  (см.  BFE.HLP),  можно  просматривать  шрифты в
 произвольных файлах и сохранять их в формате BFN.

 Если  файл  шрифта не указан в командной строке, то выводится
 текущий шрифт из знакогенератора.

 Запуск программы:

        >BFE [имя_шрифта] [имя_выходного_шрифта]

 Программа  может  быть добавлена к списку вьюеров NC. Функции
 редактирования кратко описаны в файле BFE.HLP.

                            - 12 -




         6.1.3. Программа  преобразования битовых шрифтов
                в ассемблерный текст BFN2ASM


      Программа  преобразует файл в формате BFN в ассемблерный
 модуль *.ASM и 2 включаемых файла с младшей и старшей полови-
 нами  шрифта;  описатели  масок символов во включаемых файлах
 представлены в двоичном виде в текстовой форме, что позволяет
 отредактировать  маски любым текстовым редактором, оттрансли-
 ровать  файл  *.ASM  с  помощью  MASM  (V6.00),     построить
 EXE-модуль с помощью компоновщика LINK и преобразовать в файл
 BFN задачей EXE2BIN:

        >ML /c file.ASM
        >LINK file.OBJ;
        >EXE2BIN file.EXE file.BFN

 При  трансляции  используется файл макроопределений для заго-
 ловка шрифта BFN_HDR.INC.

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




             7. Раскладки клавиатуры *.KBL



      Раскладки  клавиатуры  *.KBL представляют собой двоичные
 файлы,  загружаемые  драйвером  VPKkbd. С помощью этих файлов
 устанавливается  соответствие  между  клавишами  клавиатуры и
 возвращаемыми  драйвером  VPKkbd кодами для всех режимов кла-
 виатуры.

 Для  изменения раскладки вы можете отредактировать файл *.KBL
 любым  двоичным редактором или отредактировать текстовый опи-
 сатель раскладки *.KBD, который затем необходимо оттранслиро-
 вать и преобразовать в двоичный файл *.KBL.

 Обычно  требуются изменения только для символов верхнего ряда
 клавиатуры в режимах RUS и SHIFT_RUS.



           7.1. Описатели раскладок клавиатуры *.KBD


      Описатели  раскладок  клавиатуры  *.KBD  представляют из
 себя  символьный  файлы,  в  которых описывается соответствие
 между  клавишами  клавиатуры и возвращаемыми драйвером VPKkbd
 кодами  для всех режимов клавиатуры. Файлы должны быть оформ-

                            - 13 -




 лены в соответствии с требованиями транслятора MASM. Вы може-
 те  использовать  для  трансляции  задачу  KBT,  но  при этом
 учесть,  что  KBT  считает  символ  ";" началом комментария в
 любом  случае,  т.е.  при необходимости его заменяют кодом 59
 (3Bh).



           7.2. Транслятор описателей раскладок KBT


      С  помощью  задачи  KBT  можно оттранслировать описатель
 раскладки  клавиатуры  *.KBD и получить загружаемый драйвером
 VPKkbd файл раскладки *.KBL.


      П_р_и_м_е_ч_а_н_и_е.  Задача  KBT  была  разработана для
 трансляции  более сложных структур (со ссылками вперед), поэ-
 тому делает 2 прохода.

 Тот же результат можно получить следующим образом:

        >ML /c /Fa:file.KBD
        >LINK file.OBJ;
        >EXE2BIN file.EXE file.KBL



                                    VPK Software (c) 1992-1993
                       249020, Обнинск Калужской обл., Россия.
                                             ул.Энгельса, 7-12
                                           р.т.(084-39)2-80-20

