BroKB Emulz — русскоязычная клавиатура для эмуляторов DosBox/Bochs/LBochs на Android-телефоне

Русскоязычная и для эмуляторов

При программировании на телефоне программ под DOS или под Windows в эмуляторах существует проблема ввода русского текста — клавиатура, которой вы только что набирали русский текст в обычных андроид программах, не будет вводить никакой текст в эмуляторы. Эмуляторы, как правило, принимают на вход только обычные англоязычные коды и код других клавиш английской раскладки. А уже поставленный в DOS русификатор или настроенная языковая панель Windows на лету превратят эти англоязычные коды в русские символы при вводе (если вы предварительно переключитесь на RU язык).

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

BroKB Emulz — именно такая клавиатура:

  • вводимые символы — ТОЛЬКО латинские

  • отображаемые на клавишах символы — латинские или русские, переключение по кнопке Рус/Лат

70969ecd4f09cd3d818fc700a5595a90.png

Кроме того, для удобства ввода текстов клавиатура повторяет клавиатуру ПК, не нужно переключаться между буквами, спец.символами, цифрами по какой-нибудь клавише. Все клавиши на одном экране и можно, аналогично клавиатуре ПК, нажать шифт (клавиша Sh слева) единожды (клавиша станет SH) или дважды (клавиша станет CA от слов Caps Lock), подписи на клавиатуре при этом сменятся на шифтовые ПКшные аналоги, и выбрать нужный символ.

На клавиатуре есть отдельный ряд функциональных клавиш F1 — F12. Также есть набор вспомогательных клавиш Esc, Tab, Insert, Delete, Home, End, Page Up, Page Down, Print Screen/SysReq, Break/Pause.

Можно зажимать сочетания клавиш, если предварительно нажать в верхнем ряду Ctrl, Shift, Alt, Win клавиши (они будут подсвечены синим). Повторное нажатие на них «отпускает» их, снова превращая в черные.

Таким образом, можно нажать Ctrl+Alt+Del, Ctrl+Break, Alt+Tab, Win+R и любые другие сочетания клавиш. (следует упомянуть, что Ctrl, Shift, Alt на клавиатуре — левые, их правых товарищей на клавиатуре нет).

Цифровой ряд клавиш находится по бокам от пробела и полностью повторяет цифровой ряд ПК-шной клавиатуры. Это дизайнерское решение было позаимствовано из браузера Bro, где уже была экранная клавиатура с подобной раскладкой:

a9909c3bdc1c905a4d73bdae43b49ea7.gif

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

BroKB Emulz в DosBox

Есть множество DOS русификаторов, вот, например, один из старых русификаторов от Дмитрия Гуртяка 1993 года выпуска, переключает язык не по обычным сочетаниям Ctrl+Shift или Alt+Shift или Shift+Shift, а по простому нажатию F12: http://blackstrip.ru/keyrus.com

Этот русификатор занимает в памяти всего 11 килобайт.

7feabffa62248240cbd288b100d86ce6.png

Запустив этот русификатор можно жать F12 для переключения языка и потом, переключив раскладку по кнопке Рус/Лат, вводить русские символы, например, в Visual Basic for MS-DOS:

69b28a5380d82f7006cc2271e8896e4e.jpg

Обратное переключение на английский также проводится в два этапа: F12 для переключения языка, Рус/Лат для переключения надписей на кнопках.

Аналогичным образом можно с помощью BroKB Emulz вводить русский текст в любые досовские программы, как текстовые, так и графические:

27b53d17d3232675dcb5b1cc3420bfa3.png

BroKB Emulz в LBochs

Если установить в LBochs, например, Windows XP, то с помощью BroKB Emulz можно писать в этом эмуляторе русскоязычные тексты в Windows. Язык переключаем прямо с клавиатуры BroKB Emulz по Alt+Shift/Ctrl+Shift, смотря что выбрали в настройках клавиатуры на панели инструментов. Вот как, например, выглядит написание русскоязычных Win32 приложений прямо на телефоне в Delphi 7 (кстати Delphi 7 работает даже на Windows 98, если у вас слабый телефон и XP на нем в эмуляторе тормозит):

66bc734bc06e7c03130e1e57002fa65e.jpg

Переключаемся на английский и можем продолжать писать код:

a6aa3b24a55fcec9b7e01f69d5cda07e.jpg

Жмем, как обычно, на клавиатуре F9 и у нас есть рабочий EXE-файл. Кстати, LBochs имеет возможность подключения shared-диска, соответствующего выбранной папке на телефоне. Скидываем exe на этот диск и он появляется в указанной папке на телефоне.

(Из опыта работы с LBochs: если файл большой, например, 50 мегабайт — то лучше подождать минуту-другую даже после закрытия окна Windows с индикатором прогресса копирования, т.к. LBochs быстро скопированный файл запоминает, и потом более медленно в фоновом режиме помещает в shared-папку, если завершить работу Windows сразу и выключить эмулятор — то файла в shared-папке может и не появиться).

Вот так можно с помощью клавиатуры BroKB Emulz писать русскоязычные программы под DOS и Windows прямо на телефоне, а также набирать русскоязычные тексты, например, в текстовом редакторе (я набираю, к примеру, статьи системы помощи и потом собираю в CHM-файл в HTML Help Workshop, тоже очень удобно).

Кто желает попробовать подобным образом покодить на телефоне русскоязычные проги — клавиатуру можно взять по адресу http://blackstrip.ru/brokb.apk (ну или на GP, она бесплатная, совсем без рекламы, весом 34 килобайта).

Всем приятного мобильного кодинга.

© Habrahabr.ru