Толик Панков
hex_laden
............ .................. ................

October 2025
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Back March 24th, 2022 Forward
Краткая заметка о русификации DOS

Преамбула


Изначально DOS довольно хреново поддерживала русский язык и официального русификатора, ЕМНИС, не было аж до четвертой версии, соответственно, всевозможных самописных русификаторов было напложено на целый грузовой состав с дискетами, и все их рассмотреть возможности не будет, так что рассмотрю один неофициальный, который работает, как минимум с DOS 5.0, и официальный способ для DOS 7.1 (Windows 98 SE)

Если у кого есть что вспомнить, насчет примечательных русификаторов, пишите в комменты.

Ссылки на нужные файлы будут в конце заметки.

KEYRUS.COM


Наверное, самый популярный русификатор на территории СНГ, написан Дмитрием Гуртяком из Украины.

Плюсы:
+ Представляет собой маленькую утилиту из одного COM-файла (32 Кб)
+ Не требует внешних шрифтов и файлов конфигурации. Настройки сохраняются в самом исполняемом файле, да в DOS так было можно.
+ При желании можно подгружать внешние шрифты
+ Есть индикация раскладки клавиатуры изменением цвета рамки вокруг экрана, сигналом PC-Speaker'а, эмуляцией звука клавиш и включением лампочки Scroll Lock (все вместе или по отдельности).
+ Гибкая настройка клавиш изменения раскладки, предлагаются разные сочетания для русской, английской или альтернативной раскладки, впрочем на все три (или только две, если альтернативная не нужна) можно назначить одну и ту же клавишу.

У меня, например, назначены русская и английская раскладка на клавишу F12 и синяя рамка вокруг экрана, если включена русская раскладка.

Русский Norton Commander без русификации:



После запуска KEYRUS.COM:



Ввод русского текста (жаль, что не видна рамка вокруг экрана)



Минусы:
- Для установления своей комбинации клавиш надо знать SCAN-коды клавиатуры
- На некоторых старых машинах запуск KEYRUS сильно замедляет клавиатуру, т.е. она начинает медленно реагировать на нажатия.
Решение: Достаточно прописать в AUTOEXEC.BAT запуск утилиты SPEEDKEY:

C:\DOS\SPEEDKEY.COM

- На некоторых виртуальных машинах KEYRUS глючит, вместо одного нажатия на клавиши управления курсором, происходит два. Пока решение одно, поменять русификатор.

Краткая инструкция к KEYRUS.COM на MEGA.NZ (TXT, DOS, RUS)
Краткая инструкция к KEYRUS.COM на PasteBin

Официальный способ русификации


Примечание: проверялось на DOS 7.1 (Windows 98 SE), если есть официальный дистрибутив DOS 5.0 и выше, тоже должно сработать.

Понадобятся следующие файлы из дистрибутива DOS:

COUNTRY.SYS - драйвер, устанавливающий региональные настройки
DISPLAY.SYS - драйвер дисплея для текстового режима.

EGA.CPI
EGA2.CPI
EGA3.CPI
ISO.CPI
- шрифты, ISO.CPI можно не копировать, там шрифт в одной из кодировок ISO, которая редко используется в DOS

KEYB.COM - утилита, подгружающая драйвер клавиатуры.

KEYBOARD.SYS
KEYBRD2.SYS
KEYBRD3.SYS
KEYBRD4.SYS
- драйвера клавиатуры, отвечающие за переключение раскладки и поддержку ввода с клавиатуры, по факту, для русского языка используются только KEYBRD2.SYS и KEYBRD3.SYS.

MODE.COM - утилита, выбирающая кодовую страницу и соответствующий шрифт.

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

Примечание: Пусть все файлы находятся в каталоге C:\DOS\ (при необходимости, замените путь на свой).

Далее, прописываем в CONFIG.SYS следующие команды:

device=C:\DOS\display.sys con=(ega,,1)
Country=007,866,C:\DOS\country.sys


CONFIG.RUS на PasteBin

А в AUTOEXEC.BAT следующие:

C:\DOS\MODE.COM con codepage prepare=((866) C:\DOS\ega3.cpi)
C:\DOS\MODE.COM con codepage select=866
C:\DOS\KEYB.COM ru,,C:\DOS\keybrd3.sys


Переключение клавиатуры


Вовчик Воротов aka Bill Gates, так и не додумался (аж до самой "смерти" DOS'а) о том, что люди захотят как-то задать переключение раскладки клавиатуры, потому без правки HIEW или другим HEX-редактором (а еще надо знать, где поправить) просто так изменить ее не получится, но можно сделать это сменой драйвера клавиатуры.

Если вы хотите, чтоб переключение на английский осуществлялось Left ALT + Left SHIFT, а на русский Right ALT + Right SHIFT, то оставьте все как есть.

Другой вариант, это Left CTRL + Left SHIFT (английская раскладка) и Right CTRL + Right SHIFT (русская раскладка). Для второго способа, надо в AUTOEXEC.BAT заменить keybrd3.sys на keybrd2.sys

Ссылки на файлы


- KEYRUS.COM (ZIP-архив с Mega.NZ)
- Краткая инструкция к KEYRUS.COM на MEGA.NZ (TXT, DOS, RUS)
- Краткая инструкция к KEYRUS.COM на PasteBin
- SPEEDKEY.COM (ZIP, Mega.NZ)
- Файлы для официальной русификации DOS (для DOS 7.1)

Это репост с сайта http://tolik-punkoff.com
Оригинал: https://tolik-punkoff.com/2022/03/24/kratkaya-zametka-o-rusifikatsii-dos/

Tags: ,
Back March 24th, 2022 Forward