DosBox - запуск программ и игр для MS-DOS под Windows и Linux
Думаю что многие сталкивались с проблемами запуска старых Microsoft DOS (MS-DOS) совместимых приложений под современными операционными системами Microsoft Windows (MS Windows).
Иногда бывает что старую и нужную программу или игру не получится запустить под MS Windows, приходится для этого держать старенький компьютер или же запускать MS-DOS под VirtualBox. Для решения подобной проблемы есть отличное и удобное свободное программное обеспечение - DosBox.
Что такое DosBox
DosBox - это программный эмулятор IBM-PC совместимого компьютера под управлением операционной системы (ОС) MS-DOS. Программа DosBox является свободным программным обеспечением, которое позволяет запускать старые программы и игры на современных компьютерах и устройствах под управлением операционных систем Windows, Linux, Adndroid и других.
Официальный сайт программы: www.dosbox.com
Краткий перечень возможностей и плюсов DosBox:
- MS-DOS окружение без наличия физического x86 процессора и оригинала ОС;
- Эмуляция прерываний BIOS и аппаратной части IBM-PC совместимого компьютера;
- Подключение любой папки на компьютере как рабочий диск в виртуальной ОС;
- Графика - Text Mode, Hercules, CGA, EGA, VGA, VESA;
- Аудио - AdLib, Sound Blaster, PC-Speaker(пищалка) и другие старые железки;
- Сеть - TCP/IP, IPX, Com-port(Windows);
- Кроссплатформенность;
- Открытое ПО, наличие исходных кодов;
- Маленький размер дистрибутива 1,5-2 Мб;
- Возможность запуска в портабельном режиме.
Под DosBox уверено запустятся и будут работать различные файловые менеджеры времен MS-DOS, бухгалтерские и банковские программы, среды программирования, программы для радиолюбительских измерений и коммуникации.
В эмуляторе отлично будут работать такие игры как: Dune II, Quake, Duke Nukem, Warcraft II, Chasm the rift и многие другие.
Установка программы DosBox в Linux и Windows
В системах GNU/Linux Свежую версию программы всегда можно скачать на официальном сайте, а также установить через систему репозиториев. Для установки DosBox под GNU/Linux Debian или Ubuntu достаточно одной команды:
Для операционной системы Windows также можно скачать установщик с официального сайта. Тем не менее, очень удобно использовать портабельную версию программы, которая запускается и работает с флешки или сменного жесткого диска.
Можно сделать, например, подарочную флешку с набором стареньких игр и программ для своего друга на день рождения - если он работал раньше в MS-DOS то наверняка будет что вспомнить.
Качаем и устанавливаем портабельную версию программы - DosBox Portable (portableapps) (2Мб).
После запуска DOSBoxPortable.exe откроется два окошка: первое - окно статуса программы. а второе - окно где производится эмуляция.
Для тех кто знает Английский язык проблем с встроенной системой помощи(HELP) не возникнет.
Команда INTRO позволяет максимально быстро пройтись по основным пунктам при работе с программой - монтирование директорий как дисков, работа с образами CD-ROM, список горячих клавиш.
Основные консольные команды
Команда HELP выводит на экран список доступных в эмуляторе основных команд MS-DOS:
- DIR - отображает содержимое директории;
- CD - смена текущего каталога;
- CLS - очистка экрана;
- COPY - копирование файлов;
- DEL - удаление файлов;
- EXIT - выход;
- MD - создание директории;
- RD - удаление директории;
- REN - переименование одного или нескольких файлов;
- TYPE - отображение содержимого текстового файла;
- VER - отображает текущую версию DosBox, а также версию эмулируемой MS-DOS.
Список горячих клавиш
- ALT-ENTER - включение/выключение полноэкранного режима;
- ALT-PAUSE - приостановка работы эмулятора DosBox;
- CTRL-F1 - запуск редактора горячих клавиш;
- CTRL-F4 - обновление кеша директорий что подмонтированы;
- CTRL-ALT-F5 - запуск и остановка захвата экрана с последующим сохранением в видеофайл;
- CTRL-F5 - захват и сохранение скриншота;
- CTRL-F6 - запуск и остановка записи звука в Wav файл;
- CTRL-ALT-F7 - старт и остановка записи OPL команд;
- CTRL-ALT-F8 - старт и остановка записи разных MIDI команд;
- CTRL-F7 - уменьшить количество пропускаемых фреймов;
- CTRL-F8 - увеличить количество пропускаемых фреймов;
- CTRL-F9 - холодное выключение DosBox (kill);
- CTRL-F10 - включение и отключение захвата мышки;
- CTRL-F11 - замедление эмулятора, уменьшение количества циклов микропроцессора;
- CTRL-F12 - ускорение эмулятора, увеличение количества циклов микропроцессора;
- ALT-F12 - отключение лимита скорости, максимум.
Монтирование директорий как дисков в DosBox
Теперь приступим к созданию и подключению директории на компьютере в качестве виртуального диска внутри DosBox. Хотелось бы заметить что это может быть любая директория и на любом из подключенных дисков/томов.
Пример команды, которую нужно выполнить в консоли уже запущенной программы DosBox:
- mount - название команды, которую нужно выполнять
- C - название (буква), которое будет присвоено доступному в DosBox виртуальному диску
- D:/DOSGames - путь к папке "DOSGames", которая размещается на диске D (пример для MS Windows).
После запуска будет выведено оповещение что диск с буквой "C" подмонтирован и для него используется директория "D:/DOS_Games" . Таким образом можно подмонтировать несколько виртуальных дисков с директориями - на одном хранить программы, на другом документы и т.п.
Подключаемая директория должна существовать, также хочу заметить что в путях можно использовать разделитель слеш (unix) "/" вместо обратного (win) "\" не зависимо от того под какой ОС вы запускаете DosBox.
Еще пример, команда для монтирования в качестве диска X (внутри DosBox) директории /tmp/DOSTEST (из Linux системы):
Конфигурационные файлы
Для каждой программы можно создать свой конфигурационный файл с уникальными для нее параметрами эмуляции.
После первого запуска DosBox будет автоматически создан конфигурационный файл по умолчанию - dosbox.conf . Вот его местонахождение в разных операционных системах:
/.config/dosbox/" (для версии 0.75 и выше) или "
Вместо "", "" и "" нужно подставить актуальные для вашего случая и системы данные.
Для редактирования файлов конфигурации можно использовать любой текстовый редактор - notepad (Windows), gedit, kate, nano (Linux) и другие.
Чтобы запустить эмулятор с определенным конфигурационным файлом нужно выполнить команду:
Где "ConfigName.conf" - имя конфигурационного файла. Если конфигурационный файл размещается не в директории с программой, то вместо имени нужно указывать полный путь к файлу (с названиями директорий), примеры для Windows и Linux:
Настройка автозапуска команд после старта
Воспользуемся поддержкой принципа так называемого файла autoexec.bat из мира MS-DOS в эмуляторе, это очень удобно когда после запуска программы-эмулятора DosBox нужно автоматически выполнить некоторые команды, запустить предустановленные программы.
В качестве примеров того что можно автоматизировать:
- почистить мусор в какой-либо директории (использовать команду DEL)
- подмонтировать новый диск (использовать команду mount)
- запустить Norton/Volkov Commander
- автоматически запустить игру или другую программу
- и т.д.
Чтобы задать команды для автостарта в DosBox нужно добавить список этих команд в специальную секцию под названием "[autoexec]" в конфигурационный файл dosbox.conf .
К примеру, после старта нужно выполнить следующие действия:
- подмонтировать папку "Data/Disk_C" для портабельной версии программы (Windows - portableapps) как диск "С" в эмуляторе;
- перейти на диск С;
- вывести список содержимого диска С.
Открываем в текстовом редакторе конфигурационный файл dosbox.conf и ищем в самом низу секцию "[autoexec]" - все заданные там команды будут автоматически выполнены по порядку после запуска эмулятора .
Вот скриншот реализации приведенных выше 3х команд для авто-запуска по очереди:
Хотелось бы обратить внимание на путь к директории "../../Data/Disk_C" - в данном случае мы указываем относительный путь для портабельной версии программы, а не абсолютный (к примеру "c:/Programs/Dosbox/Data/" ).
Программа DosBox будет искать папку относительно файла DOSBox.exe, что находится в директории "App/DOSBox", поэтому мы поднимаемся на два уровня выше "../../" и уже после указываем расположение директории от текущего уровня.
Данный метод монтирования директорий с относительными путями 100% рабочий и отлично подходит для монтирования директорий что расположены рядом на одном диске с программой.
Эта возможность очень удобна, поскольку позволяет переносить портабельную версию программы и содержимое к ней (программы для ДОС) на сменных носителях и дисках, например на флешке или внешнем жестком диске.
Запускаем DosBox и вот что мы должны увидеть:
Директория смонтирована как диск С, выполнен переход на этот диск и отображены папки и файлы на нем.
Если вы предпочитаете работу в оболочках типа Norton Commander или Volkov Commander то в автозапуск можно также добавить полный путь для запуска оболочки.
Например вы распаковали Volkov Commander в директорию "vc", что расположена в каталоге который будет смонтирован как диск С. Добавляем в конфигурационный файл примера, что приведен выше, строчку: "c:\vc\vc.com" .
Хочу заметить что для всех команд, которые выполняться внутри эмулятора, в путях нужно использовать слеши:
- для Linux - слеш "/";
- для Windows - обратный слеш "\".
В показанном выше примере, при запуске DosBox (портабельная версия программы) под Windows автоматически подмонтируется диск С и запустится Volkov Commander :
Исправляем "кракозябры" (кодировку)
При запуске некоторых русскоязычных программ можем увидеть нечто подобное:
Для корректного отображения кириллических символов в MS-DOS служат специальные драйвера экрана и шрифты. В нашем же случае, в DosBox этот функционал уже встроен внутри, нужно лишь его активировать.
Добавляем в конфигурационный файл DosBox ( dosbox.conf ), в секцию "[autoexec]" строчку:
После перезапуска программы символы кириллицы станут отображаться как следует!
Теперь русские символы отображаются корректно!
Переключение раскладок клавиатуры (RUS/LAT)
Поддержка вывода русских символов теперь есть, а как переключить раскладку клавиатуры в DosBox для ввода символов кириллицы? - для этого служат специальные драйверы и программы "руссификаторы".
Одна из самых популярных и достаточно функциональных представителей такого рода - это KEYRUS.
KEYRUS - драйвер дисплея и клавиатуры для MS-DOS, программа класса FreeWare, написанная украинским разработчиком Дмитрием Гуртяком (г.Донецк).
Вот полный архив с KEYRUS версии 7.3 - (93 КБ).
Состав пакета KEYRUS:
- KEYRUS.COM - Сам драйвер;
- SETUP.EXE - Инсталлятор;
- KEYEDIT.EXE - Редактор клавиатур;
- QWERTY.KBD , KEYBOARD.KBD , UKRAINE.KBD - Раскладки клавиатур;
- KEYRUS.DOC - Документация по программе;
- SETUP.DOC - Документация по установке программы;
- _README.1ST - Общая информация от разработчика;
- EVAFONT.EXE - Редактор шрифтов;
- EVAFONT.DOC - документация к редактору шрифтов.
Программа содержит не мало возможностей и ключей запуска (из командной строки). Все хорошо документировано - читайте файлы DOC и настраивайте под свои требования.
С помощью оболочки SETUP.EXE можно выполнить настройки в псевдо-графическом режиме и потом сгенерировать готовую конфигурацию, которая будет записана в исполняемый файл KEYRUS.COM .
На основном экране программы "setup.exe" можно выбрать нужный блок для дальнейшей настройки (клавиатура, поддержка дисплея, интерфейс).
В блоке клавиатуры можно задать клавиши для переключения раскладки, настроить индикацию текущей раскладки и указать дополнительные возможности.
В блоке поддержки дисплея можно настроить поддержку шрифтов и символов.
Для работы программы достаточно одного исполняемого файла KEYRUS.COM , который можно запускать как вручную, та и из файла autoexec.bat или другого пакетного файла со своими настройками для конкретной программы.
Для активации драйвера достаточно просто запустить на выполнение файл KEYRUS.COM . Программа KEYRUS - резидентная. Это значит что она загрузится в память и будет функционировать в фоне пока ее не выгрузят.
Клавишей переключения между раскладками по умолчанию является правый CTRL (RIGHT CONTROL).
Если вы сделали настройки с помощью "setup.exe", то переключение раскладок будет выполняться по нажатию заданной вами клавиши.
Программу KEYRUS можно запускать из командной строки с различными параметрами, тем самым изменяя ее поведение по умолчанию, включая или отключая нужный функционал для экономии памяти.
Некоторые параметры запуска KEYRUS:
Вот как выглядит запуск программы без параметров:
Поскольку я запустил оригинальный файл KEYRUS.COM (без настройки через "setup.exe"), то для переключения раскладок использую одну клавишу - правый CTRL.
Создал текстовый файл "1.txt" и открыл его в редакторе в Dos Navigator, пробую писать текст в двух раскладках - работает!
Делаем вывод содержимого текстового файла в консоль с помощью встроенной команды "TYPE":
Для того чтобы драйвер активировался при запуске DosBox, нужно добавить вызов программы KEYRUS.COM в секции "[autoexec]" в конфигурационном файле "dosbox.conf" , не забывая указать полный путь, например:
В этом примере первым делом включаем поддержку отображения кириллицы в DosBox. Потом монтируем диск "С" к директории "Data/Disk_C", в которой создана поддиректория "KEYRUS73" с программными файлами KEYRUS.
После монтирования выполняется запуск файла KEYRUS.COM из директории с программой, которая теперь доступна на смонтированном диске под именем "C".
Теперь можно запускать нужные программы и работать в них, переключая раскладки клавиатуры ранее заданной клавишей (по умолчанию - правый CTRL).
Пошаговый пример настройки DosBox под Windows
У пользователей операционной системы GNU/Linux скорее всего не возникнет проблем с установкой и настройкой программы. А для некоторых пользователей MS Windows возможно что пригодится следующая подробная пошаговая инструкция.
Но прежде чем приступим, приведу одну очень важную рекомендацию: после скачивания на компьютер файлов каких-либо программ, предназначенных для работы под MS-DOS или MS Windows, их желательно проверить антивирусной программой.
Для пакетной проверки какого-то файла множеством разных антивирусов существует проект VirusTotal.com. На сайте проекта есть кнопка для загрузки файла на проверку.
Загружаем туда скачанные файлы по одному и смотрим результаты проверки множеством разных антивирусов. Файлы размером больше 100МБ загружать туда не рекомендую, как правило большинство небольших программ весят от нескольких единиц до десятков МегаБайт.
В примере будет использоваться портативная версия программы DosBox.
1. Скачивание программыПереходим на сайт PortableApps.com со страницей загрузки DosBox - DOSBox Portable (emulator for classic DOS games).
Ищем кнопку "Download" и нажав на нее качаем запакованный пакет с программой.
Как правило, если браузер не спрашивал куда сохранить файл, программа будет сохранена в папке "Загрузки".
Заходим в браузере на сайт VirusTotal, жмем кнопочку "Choose file" (выбрать файл), выбираем скачанный файл "DOSBoxPortable_0.74.3.paf.exe".
Ожидаем когда завершится процесс проверки и смотрим на результаты:
В данном случае видим "0/71" - это значит что проверка выполнялась разными антивирусами в количестве 71 штук и никаких признаков вирусов в загруженном файле не обнаружено.
2. УстановкаНачинаем установку программы - кликаем мышью на скачанном установочном файле. Программа-установщик предложит выбрать язык, например выбираем Русский.
Внимательно читаем все что пишет и запрашивает программа, нажимаем Далее. Потом программа запросит куда распаковать программу - нажав на кнопочку "Обзор" можно указать какой-то отдельный диск или папку, например можно распаковать на подключенную к компьютеру флешку.
Допустим что распаковывать программу мы будем на диск С, путь установки получится "C:\DOSBoxPortable".
Нажимаем кнопку "Установить" и потом по завершению процесса установки "Готово".
Все, программа установлена!
В этом примере она находится на диске С - переходим в "Мой компьютер" на диск С и видим там папку "DOSBoxPortable".
3. Первый запуск, тестПрежде всего проясню один очень важный момент. После любого клика курсором мышки в окне DOSBox она автоматически будет захвачена и начнет работать только в пределах этого окна. Чтобы вернуть операционной системе Windows контроль над мышкой нужно нажать сочетание клавиш CTRL-F10 (включение и отключение захвата мышки)!
Рекомендую изучить и где-то записать себе сочетания клавиш, которые приведены в статье выше - они пригодятся потом при работе с программой.
Переходим в папку "DOSBoxPortable" и запускаем там на выполнение одноименный файл "DOSBoxPortable" - будут открыты два окна программы:
- Первое окно - это журнал хода выполнения программы
- Второе окно - рабочее окно программы DOSBox, в нем будем вводить команды, запускать программы.
Для завершения работы программы достаточно закрыть любое из этих двух окон.
4. Папка с программами для MS-DOSВ этой же папке "DOSBoxPortable" создадим новую папку для наших программ под MS-DOS. Жмем правую клавишу мыши (ПКМ) на свободном пространстве окна - Создать - Папку - вводим ее название "Program" и жмем ЕНТЕР. Папка для программ готова!
Теперь в эту папку можно сохранить разных программ и игр, которые предназначены для работы под MS-DOS.
Важно заметить что все папки и файлы здесь лучше именовать так, чтобы их имя не содержало больше чем 8 символов, например:
- Для программы "Norton Commander" папку можно назвать кратко - "NC";
- Для программы Банковский Учет 2.0 - "BANK_20";
- и так далее.
Например, скопируем туда свободный файловый менеджер "DOS Navigator", скачанный архив я распаковал в папку "DN". Также создадим какой-то текстовый файл-документ. После этого эти папки внутри будут выглядеть вот так:
- DN - папка с программой "DOS Navigator";
- README - текстовый файл README.txt (в проводнике Windows расширение txt не отображено).
Теперь запускаем программу, как мы делали это раньше. В рабочем окне (там где сообщение "Welcome to DOSBox") вводим попорядку слудующие команды:
- "mount C Program" - Подключаем созданную нами папку "Program" как диск C;
- "C:" - перемещаемся в командной строке на диск C;
- "dir" - выводим содержимое текущего каталога (в данном случае это корень диска С);
- "cd DN" - переходим в папку "DN", которая находится в текущем каталоге;
- "dn.com" - запускаем на выполнение исполняемый файл "dn.com".
После ввода последней команды должна запуститься программа "dn.com", в данном случае это файловый менеджер "DOS Navigator":
Теперь, переместившись с помощью клавиш-стрелок на '..' и нажав ENTER мы поднимемся в файловом менеджере на один каталог вверх (на один уровень вверх). Там мы увидим каталог "DN" и файл "readme.txt".
Став курсором на файл "readme.txt" и нажав клавишу F3 (View, Просмотр) мы увидим содержимое этого файла, для выхода дотаточно нажать Esc.
6. АвтоматизацияТеперь сделаем так, чтобы при запуске программы DosBox подготовка диска и запуск программ выполнялся автоматически.
Открываем проводником папку "DOSBoxPortable" с программой на диске С, переходим в подпапку с названием "Data", потом в папку "settings" - тут хранятся файлыв настройки программы DOSBox (в портативной версии).
Здесь нас интересует файл "dosbox.cof", нам нужно его открыть для редактирования и тут на помощь придет простой стандартный редактор MS Windows - Блокнот.
Запускаем программу "Блокнот" (Notepad): нажимаем ПУСК, в поиске набираем "notepad" или "блокнот", нажимаем на значек с найденной программой - она должна открыться.
Теперь переходим в окно проводника, где у нас отображено содержимое папки "settings", и перетаскиваем мышкой файл "dosbox.cof" в окно программы "Блокнот". В программе должно отобразиться содержимое этого файла.
В блокноте листаем содержимое файла в самый конец, пока не увидим обозначенную скобками секцию "[autoexec]". В самом низу, под ней, добавляем следующие строчки:
Сохраняем файл (в меню "Файл" выбираем "Сохранить") и закрываем программу Блокнот.
Все эти строчки фактически повторяют команды, которые мы вводили вручную в консоли чтобы подключить как диск "С" каталог "Program" и запустить программу "Dos navigator", за исключением строчки "keyb ru 866", которая пригодится в будущем для корректного отображения программ с символами кириллицы (русская и украинская раскладки клавиатуры).
Теперь если запустить программу то "Dos Navigator" запустится автоматически.
7. Печеньки :)Несколько полезных замечаний и идей от меня.
В папку "Program" вы теперь можете скопировать нужные вам файлы и программы, которые планируете запускать в режиме эмуляции MS-DOS. После копирования новых файлов в эту папку программу DOSBox желательно перезапустить (закрыть, если открыта, и снова запустить).
Чтобы заменить "Dos Navigator" на "Нортотн Коммандер" придется в папке "Program" создать папку для программы "NC" и скопировать в нее содержимое программы файлового менеджера.
Потом останется лишь отредактировать файл "dosbox.cof" (как это было показано выше), заменить в нем строчки:
- "cd DN" на "cd NC";
- "dn.com" на "nc.exe".
Теперь после запуска DOSBoxPortable автоматически запустится "Norton Commander", а в нем уже можно перемещаться по дереву каталогов и запускать другие программы, работать с файлами и т.п.
Ко всем наработанным внутри MS-DOS программ файлам и документам вы потом сможете получить доступ просто перейдя проводником в папку по пути: Диск С - DOSBoxPortable - Program.
Всю папку "DOSBoxPortable" на диске С теперь можно скопировать на флешку, перенести на другой компьютер с MS Windows XP, 7, 10 и там запустить уже настроенную программу DOSBox со всем содержимым папки Program внутри без каких либо дополнительных изменений. Просто и удобно!
Также, папку "DOSBoxPortable" можно заархивировать и сохранить резервный вариант с промежуточными результатами работы и наработками в программах. которые размещены внутри в подпапке "Program".
Архив с уже настроенным DOSBoxPortable и менеджером Dos Navigator внутри для всего проделанного выше - (3.3 МБ).
Скриншоты некоторых популярных программ и игр
На завершение решил сделать десяток скриншотов игр и программ, которые удалось запустить под эмулятором, возможно кто-то вспомнит былые времена:
Операционная система Microsoft Windows 3.1 (образ с моего 80286 компьютера) .
Файловый менеджер Norton Commander , хранитель экрана - Аквариум.
Игра от Westwood Studios - Dune 2 . Легендарная игра с которой началась серия игр в жанре RTS.
Игра Lotus The Ultimate Challange - гонки на машинах.
Легендарный WarCraft II от Blizzard отлично работает под DosBox.
Игра от Id Software - Wolfenstein 3D . Родоначальник 3D игр. При сжатии RARом умещалась на дискету 1,44. )))
Игра от Disney Software - DuckTales .
Среда программирования MS-DOS Quick Basic .
Оболочка для программирования под Turbo Pascal 7 отлично работает под DosBox.
Среда разработки Borland Turbo C++ 3.0 , тоже все работает на отлично!
Заключение
Ну вот, пожалуй и все базовые знания что нужны для запуска старых программ и игр под MS-DOS используя отличный и легковесный эмулятор DosBox.
По данным из Википедии на эмуляторе DosBox версии 0.7 запускаются и проверенно работают 876 игр под MSDOS!
Текущая версию эмулятора, на момент написания статьи: 0.75 .