DOSBox
Общая информация
Описание
DOSBox - кроссплатформенный эмулятор x86-систем с открытым исходным кодом, создающий DOS-образную среду для запуска MS-DOS ориентированных приложений. Основной упор делается на запуск игр, хотя есть возможность запуска различных приложений, в том числе и оболочек наподобие MS Windows 3.1. В настоящее время он работает на таких системах как Linux, OpenBSD, FreeBSD, Windows, Mac OS, OS/2, Palm OS, RISC OS, BeOS. Так же существуют порты для КПК PocketPC под управлением Windows Mobile и карманных приставок PlayStation Portable и GP2X.
Чтобы запустить его и приступить к работе достаточно два раза кликнуть на .exe файле - никаких дополнительных действий не требуется. Все сведения о настройках программы содержатся в файле dosbox.conf, который можно изменить в любом текстовом редакторе. Последняя официальная версия на данный момент - 0.73. Неофициальные версии программы (DOSBox имеет открытый исходный код) выходят чуть ли не каждую неделю.
Эмулируемая аппаратура
DOSBox эмулирует:
- процессор до 386 (в режимах 286/386 realmode/protected mode, под WinCE только 286)
- файловую систему
- образы CD-дисков (.iso и .cue/.bin), жёстких дисков и дискет
- XMS/EMS/UMB память
- графику Tandy/Hercules/CGA/EGA/VGA/VESA (VESA - некоторые режимы SVGA)
- внутренний PC-динамик (PC Speaker)
- звуковые платы Creative CMS/Gameblaster, Tandy 3 voice, Tandy DAC, AdLib, Sound Blaster 16/Sound Blaster Pro 1&2/Sound Blaster 1&2, Disney SoundSource, Gravis Ultrasound, MPU-401.
Неофициальные билды
Тут надо что-то написать про корейский билд, про всякие там "йогурты" и т.п.
Сводка информации
- DOSBox - виртуальная машина, эмулятор, после запуска можно считать что вы работаете в досе. Подробнее о командах написано ниже.
- Виртуальная машина требует для работы с конкретным софтом настроек для вашего софта, это значит что есть фактически два основных этапа настройки.
- Первый - нужно сделать чтобы досбокс видел вашу папку с игрой или играми, подробнее об этом описано в описании команды mount ниже. В DOSBox нельзя просто перейти в папку на вашем диске, для начала вам нужно указать какую папку/диск вы собираетесь использовать.
- Для некоторых игр необходимо так же чтобы виделся образ с диском. Команда mount понимает не все типы образов, соответственно вам необходимо наличие любого эмулятора CD, вроде Daemon Tools, в который надо запихнуть образ и смонтировать виртуальный уже CD в досбоксе как обычный CD-ROM (как диск + ключи -cdrom -ioctl).
- Для ОЧЕНЬ старых игр требуется правильно выставить СКОРОСТЬ эмуляции - смотрите описание параметра cycles в файле конфигурации.
- Для удобства навигации и запуска нелишне найти и поместить в ту же папку Volcov Commander, а потом как только запустится DOSBox набрать vc и жизнь сразу станет куда легче.
- Ну и остальное - тонкие и в основном необязательные настройки, играйте!
Основные команды
cd – команда для смены директории.
cd .. - перейти на один уровень вверх.
cd foldername перейти к подпапке данного каталога.
Для смены диска надо ввести X:, где X – буква диска.
dir – команда, для отображения содержимого директории, можно также использовать с ключами /w (вывод по столбцам), /р (пауза после каждого экрана).
mount - команда для подключения дисков в DOSBox.
Можно подмонтировать целый диск:
mount c d:\
Где c - это буква диска в Досбоксе, а d:\ - буква подключаемого диска.
А можно подмонтировать и директорию:
mount c d:\games
В данном случае папка games на физическом диске D будет использоваться как диск C в DOSBox.[1][2]
Также можно подключить CD-ROM и floppy-дисковод. Для подключения CD-ROM:
mount d e:\ -t cdrom
Можно подключить и папку с файлами на жёстком диске как CD-ROM. Если диск в CD-ROM'е должен иметь специальную метку, то можно обозначить её ключом -label. Для некоторых игр с CD-Audio треками может понадобиться параметр -ioctl.
Для того, чтобы подключить floppy-дисковод введите:
mount a a:\ -t floppy
Можно использовать как реальный дисковод, так и папку с файлами.
Таким же образом вы можете изменять "на лету" значения различных настроек программы, например набрав в командной строке memsize=24, вы измените количество количество эмулируемой памяти до 24 мегабайт. Удобно тем, что не надо каждый раз выходить из DOSBox'а и править файл настроек.
Настройка
Звук
DOSBox эмулирует следующие звуковые карты: PС-Speaker, CMS/Gameblaster, AdLib, Sound Blaster, Gravis Ultrasound, MPU-401 и Roland MT-32.
То есть в программе настройки игры вы можете выбрать любую из них. Обычно предлагается выбрать отдельно карту для воспроизведения оцифрованного звука и карту для воспроизведения музыки, хотя бывает, что надо только одну.
Настройка эмуляции Sound Blaster
Практически все дос-игры 90-х годов имеют поддержку Sound Blaster, так что выбирать советую именно его, к тому же эмуляция бластера, по словам самих разработчиков, наиболее завершённая. Значения по умолчанию стоят такие:
IO (Port) - 220
IRQ (Interrupt Request) – 7
DMA Channel (Direct memory access) - 1
DMA 16-bit – 5.
В качестве музыкального устройства наиболее совместимым является General Midi – MPU-401, значение IO по умолчанию 330.
Настройка эмуляции Gravis Ultrasound
Как альтернативу можно использовать Gravis Ultrasound (GUS), в чём-то превосходивший SB по качеству звучания.
Для начала необходимо скачать все файлы, которые потребуются нам для настройки GUS под DOSBox:
- Набор инструментов для воспроизведения музыки. Для DOSBox рекомендуется использовать набор GUS General MIDI Patch Set, который можно взять например здесь. Патч состоит из 9 архивов (для тех кому лень идти по ссылке) <toggledisplay showtext="Показать список файлов" hidetext="Скрыть список файлов">
- Файл настроек банков инструментов ultrasnd.ini для вышеуказанного набора инструментов. Взять можно здесь.
- Файлы loadpats.exe и patches.ini для инициализации и загрузки инструментов в память. Эти файлы я взял из игры Frontier: First Encounters.
Распаковываем loadpats.zip и patches.zip в папку C:\ULTRASND.
Распаковываем GUS General MIDI Patch Set и ultrasnd.ini в папку C:\ULTRASND\MIDI.
Теперь необходимо настроить DOSBox.
В файле настроек dosbox.conf есть такой раздел:
[gus] # gus -- Enable the Gravis Ultrasound emulation. # base,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the # Gravis Ultrasound. (Same IRQ's and DMA's are OK.) # rate -- Sample rate of Ultrasound emulation. # ultradir -- Path to Ultrasound directory. In this directory # there should be a MIDI directory that contains # the patch files for GUS playback. Patch sets used # with Timidity should work fine. gus=false rate=22050 base=240 irq1=5 irq2=5 dma1=3 dma2=3 ultradir=C:\ULTRASND>
Чтобы включить эмуляцию GUS'а присваиваем переменной gus значение true. Переменной rate присваиваем без объяснений с моей стороны значение 44100 (кто понял о чем речь, тот поймет, кто не понял, знать необязательно).
Некоторые игры для воспроизведения музыки требуют порт 220 для GUS'а. Так что будьте готовы к тому, что параметр base придется изменить на 220.
Переменная ultradir указывает на путь к банкам звуков относительно СМОНТИРОВАННОГО ДИСКА, смотрите не запутайтесь. Поскольку обычно первым диском монтируют диск C, то путь мы не меняем.
После внесенных изменений раздел [gus] должен принять следующий вид:
[gus] # gus -- Enable the Gravis Ultrasound emulation. # base,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the # Gravis Ultrasound. (Same IRQ's and DMA's are OK.) # rate -- Sample rate of Ultrasound emulation. # ultradir -- Path to Ultrasound directory. In this directory # there should be a MIDI directory that contains # the patch files for GUS playback. Patch sets used # with Timidity should work fine. gus=true rate=44100 base=220 # ставим 220 только если игра требует именно 220 irq1=5 irq2=5 dma1=3 dma2=3 ultradir=C:\ULTRASND
Переходим к загрузочной части dosbox.conf
В разделе [autoexec] добавляем следующие строки:
@echo off mount c C:\ set path=c:;c:\ultrasnd; c: loadpats
Вот и всё! Можно загружать DOSBox и пытаться запустить нужную вам игру. Для звука выбирайте Sound Blaster 16 или Sound Blaster Pro, а для музыки - Gravis Ultrasound или его модификации.
P.S. Для эстетов могу посоветовать отыскать банк инструментов Utopia. Весит много, но по словам знающих людей, оно того стоит. <toggledisplay showtext="Показать ссылки" hidetext="Скрыть ссылки">
- Utopia Sound Bank ISO - part 1 (100 Mb)
- Utopia Sound Bank ISO - part 2 (100 Mb)
- Utopia Sound Bank ISO - part 3 (100 Mb)
- Utopia Sound Bank ISO - part 4 (48 Mb)
</toggledisplay>
Видео
В основном игра сама определяет используемый видеорежим, хотя иногда его предлагают выбрать. Обычно это:
Последний режим требует больше всего ресурсов. Также неофициальные версии DOSBox поддерживает Glide для DOS игр.
Фильтры изображения
В DOSBox существует встроенная возможность выводить изображения на экран, налагая на него различные фильтры. Это бывает полезно, когда игра использует низкое разрешение, например 320х200. С помощью фильтров можно увеличить его в два или три раза, применить различные варианты сглаживания картинки.
Включается это в файле dosbox.conf, на строчке Scaler, а если вы используете ykhwong build, то это можно сделать "на лету", выбрав нужный вариант из выпадающего меню.
Производительность
С подавляющим большинством игр 80-х и начала 90-х проблем не возникнет, появляться они начнут при запуске игр использующих продвинутую 3D-графику (шутеры, симуляторы) или VESA-графику.
Сразу оговорюсь, что системные требования для DOSBox весьма условные: если для простеньких игр середины 80-х хватит Pentium Celeron 500MHz, то для запуска 3D-шутеров может понадобится Athlon 2800.
Для увеличения производительности игры можно увеличить скорость виртуального процессора (Ctrl-F12\Ctrl-F11 +\-). Возможно игре не хватает памяти, хотя для большинства ДОС-игр дефолтных 16-ти мегабайт хватит с головой. В этом случае нужно изменить параметр memsize.
Дополнительные функции
С помощью DOSBox'а вы можете снимать скриншоты, записывать звук (в т.ч. и midi) и даже сохранять видео. Все труды пользователя отправляются в папку Capture в папке с DOSBox.[3]
Список горячих клавиш:
- CTRL-ALT-F5 - Начать/Закончить создание видеоролика в формате AVI (для воспроизведения может понадобиться установка кодека - он приложен к дистрибутиву программы).
- CTRL-F5 - Сохранить скриншот в формате PNG.
- CTRL-F6 - Начать/закончить запись аудиофайла в формате WAV.
- CTRL-ALT-F8 - Начать/закончить запись команд MIDI.
Примеры настройки
Dune II
Попробуем запустить с помощью DOSBox игру Dune II: <toggledisplay> Смонтируем в DOSBox директорию C:\Dosgames, где в папке Dune2 будет находиться сама игра (можно смонтировать и напрямик папку с игрой - как кому нравится):
mount C C:\Dosgames
Кстати, лучше выделять для игр отдельную папку, а не подключать в ДосБоксе целый диск, чтобы позже не возникало путаницы. Также можно вписать эту строчку в раздел autoexec файла dosbox.conf и она будет исполняться каждый раз при включении автоматически.
Далее переходим к нужной нам папке – Dune2:
cd Dune2
После этого нам понадобиться настроить игру – выбрать устройства для воспроизведения звука и музыки и, возможно, что-то ещё. Так, что запускаем файл настройки программы, в данном случае он называется setup.exe. Для того, чтобы запустить *.com, *.bat и *.exe файлы в Досе, равно как и Досбоксе, надо набрать их имя и нажать ввод:
setup.exe
В появившемся окне выбираем 1. Setup Questions, далее выбираем аудиокарту Sound Blaster Pro (можно и любую другую, поддерживаемую DosBoxом), в следующем окне нас спрашивают относительно того, хотим ли мы использовать "дополнительную" xms память. Отвечаем положительно (грех не воспользоваться возможностью). После этого говорим "ДА!" на вопрос об использовании мыши и жмём Y для сохранения настроек. Жмём 2, чтобы выйти из программы настройки. Хотя различные игры используют разные программы настроек, интерфейсом они почти не отличаются.
Ну и наконец находим исполняемый файл игры – DUNE2.EXE, и запускаем игру:
dune2.exe
</toggledisplay>
The Elder Scrolls: Arena
Попробуем теперь запустить игру TES: Arena, которая имеется на компакт-диске. <toggledisplay> Подключим диск C:
mount C C:\Dosgames
и CD-ROM
mount D F:\ -t cdrom
Перейдём на другой диск набрав:
D:
Запустим программу для установки игры:
install.exe
Далее выберем путь установки и настроим игру (Configure Game). Выберем устройство для воспроизведения звука - Sound Blaster Pro Or 16. Замечу, что в данном случае программа сама определяет IO\IRQ\DMA-настройки устройства, и ничего выбирать не надо. Выберем устройство для воспроизведения музыки General Midi or MPU-401.
Далее выйдем из программы установки (Exit) и запустим игру из папки, в которую её установили. </toggledisplay>
Ссылки
- Обсуждение проблем запуска игр под DOSBox на форуме Old-Games.RU.
- Официальный сайт DOSBox.
- Раздел с DOSBox на Old-Games.RU.
- Неофициальный (корейский) билд DOSBox.
Примечания
- ↑ В некоторых случаях может понадобиться указать размер свободного места на диске т.к. игра будет отказываться видеть свободное пространство и писать о недостатке места, делается это ключом -freesize и указанием дискового пространства в мегабайтах.
- ↑ С версии 0.73 это исправляется по умолчанию.
- ↑ По умолчанию, можно переназначить в файле конфигурации.