Отладка выполнения программы в DOSBOX
Всем привет. Дело такое, у меня задание в универе по языку ассемблер. Задание: Х= 3(А — 2В) +50 – С / 2 , в программе я задал такие значения: a = 10 ,b = 20 ,c = 5,x = ? Код программы:
data segment a dw 10 b dw 20 c dw 5 x dw ? data ends code segment assume cs:code, ds:data start: mov ax, data mov ds, ax mov ax, a ; AX = A sub ax, b ; AX = A - B sub ax, b ; AX = A - 2B add ax, ax ; AX = 2A - 4B add ax, ax ; AX = 4A - 8B sub ax, bx ; AX = 4A - 8B - BX add ax, ax ; AX = 8A - 16B - 2BX add ax, 50 ; AX = 8A - 16B - 2BX + 50 mov bx, 2 ; BX = 2 mov cx, c ; CX = C shr cx, 1 ; CX = C / 2 sub ax, cx ; AX = 8A - 16B - 2BX + 50 - C/2 mov x, ax ; сохранить результат в переменную X quit: mov ax, 4C00h ; завершить программу int 21h code ends end start
Теперь ,проблема. Я не могу найти в DOSBOX результат, т.е x.
(Я знаю,что результат представлен в 16-тиричной системе, и чтобы получить его в десятичную ,мне надо отнять от него FFFF и 1, полученное значение перевести в десятиричную и должно получится -42.5 по идее)
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 в FreeBSD, Linux и Windows
В системах GNU/Linux Свежую версию программы всегда можно скачать на официальном сайте, а также установить через систему репозиториев. Для установки DosBox под GNU/Linux Debian или Ubuntu достаточно одной команды:
sudo apt install dosbox
Под FreeBSD установка также очень проста — можно воспользоваться пакетом или же собрать из портов, вот команды для этих двух вариантов:
# Из пакетов pkg install dosbox # Из портов cd /usr/ports/emulators/dosbox && make install clean
Для операционной системы Windows проще всего скачать установщик с официального сайта DosBox. Тем не менее, очень удобно использовать портативную (portable) версию программы, которая запускается и работает с флешки или сменного жесткого диска.
Используя портативную версию программы можно, например, сделать подарочную флешку с набором стареньких игр и программ на день рождения для своего друга — если он раньше работал с MS-DOS то ему наверняка будет что вспомнить. 🙂
Качаем и устанавливаем портабельную версию программы — DosBox Portable (portableapps) (2Мб).
После запуска DOSBoxPortable.exe откроется два окошка: первое — окно статуса программы. а второе — окно где производится эмуляция.
Для тех кто знает Английский язык проблем со встроенной системой помощи (HELP) не возникнет.
Команда INTRO позволяет максимально быстро пройтись по основным пунктам работы с программой: монтирование директорий как дисков, работа с образами CD-ROM, список горячих клавиш.
Основные консольные команды
Если в консоли DosBox ввести ‘HELP‘ или ‘HELP /all‘ — будет выведен список доступных в эмуляторе основных команд MS-DOS:
- CD — смена текущего каталога;
- CLS — очистка экрана;
- COPY — копирование файлов;
- DEL — удаление файлов;
- DIR — отображает содержимое директории;
- EXIT — выход;
- MD — создание директории;
- RD — удаление директории;
- REN — переименование одного или нескольких файлов;
- TYPE — отображение содержимого текстового файла;
- VER — отображает текущую версию DosBox, а также версию эмулируемой MS-DOS.
Кроме того, есть также некоторые внутренние программы и команды:
- IMGMOUNT— монтирование файлов-образов IMG, ISO;
- INTRO — краткий обучающий обзор возможностей программы DosBox;
- MIXER — управление программным аудио-микшером (громкость);
- MOUNT — монтирование директорий как виртуальных дисков.
Список горячих клавиш
- 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 D:\DOSGames
- mount — название команды, которую нужно выполнять;
- C — название (буква), которое будет присвоено доступному в DosBox виртуальному диску;
- D:\DOSGames — путь к папке «DOSGames», которая размещается на диске D основной системы (пример для MS Windows).
После запуска будет выведено оповещение что диск с буквой «C» подмонтирован и для него используется директория «D:/DOS_Games» . Таким образом можно подмонтировать несколько виртуальных дисков с директориями — на одном хранить программы, на другом документы и т.п.
Подключаемая директория должна существовать, также хочу заметить что в путях можно использовать разделитель слеш (unix) «/» вместо обратного (win) «\» не зависимо от того под какой ОС вы запускаете DosBox.
Еще пример, команда для монтирования в качестве диска X (внутри DosBox) директории /tmp/DOSTEST из Linux системы:
mount X /tmp/DOSTEST
Монтирование образов IMG (Floppy) и ISO (CD)
Похожим образом, как при работе с директориями, мы можем cмонтировать в виде виртуальных дисков образы:
- IMG — образ снятый с дискетки на 360К, 720К, 1440К (Floppy) или же с жесткого диска (HDD);
- ISO — образ лазерного диска (CD).
Для чего может понадобиться монитрование IMG или ISO образов в DosBox? — вот несколько вариантов применения:
- Установка программ и игр с наборов образов дискет или лазерных дисков;
- Подключение образов жестких дисков, например точных побайтовых копий разделов из когда-то работавших систем с сохраненной ОС, программами и их настройками;
- Создание загрузочных образов дисков из DosBox, например с установленными MS-DOS, Win 3.1.
Монтирование образов выполняется внутри окружения DosBox с помощью команды ‘imgmount’ (от Image Mount).
Первым аргументом команды выступает имя (буква) виртуального диска, куда будет примонтирован образ. Дальше указываем путь (внутри DosBox) к файлу-образу (с расширением IMG или ISO), и в конце параметр обозначающий тип монтируемого образа.
Например, подмонтируем к диску с буквой ‘e’ файл-образ дискетки ‘DISK1.IMG’ из папки по внутреннему пути ‘c:\INSTALL\OFFICE\’:
imgmount e: c:\INSTALL\OFFICE\DISK1.IMG -t floppy
Параметр ‘t’ (type) — позволяет указать тип монтируемого образа, например: floppy, iso, hdd.
Также можно выполнить загрузку системы с поочередной сменой виртуальных дискеток из образов, єто удобно при установке ОС или программ с множества образов дискет:
boot DOS622_1.IMG DOS622_2.img DOS622_3.img -l a
- DOS622_*.IMG — имена файлов-образов трех дискет с MS-DOS 6.22;
- -l a — задает имя дисковода ‘a’ (можно также ‘b’, ‘c’ или ‘d’), с которого будет выполняться загрузка.
При нажатиях комбинаций клавиш ‘CTRL+F4’ образы дискет ‘DOS622_1.IMG’, ‘DOS622_2.IMG’, ‘DOS622_3.IMG’ будут монтироваться по кругу в дисководы с именами ‘A’ и ‘B’.
А теперь подмонтируем к диску с буквой ‘r’ файл ISO-образ CD-диска ‘RA1.ISO’ из папки по внутреннему пути ‘c:\IMAGES\’:
imgmount r: с:\IMAGES\RA1.iso -t iso
Здесь существует похожая как и с образами дискет при загрузке возможность монтирования разу нескольких файлов-образов к одному виртуальному диску (букве), с последующим их переключением комбинацией клавиш ‘CTRL+F4’.
Делается это примерно так:
imgmount e: с:\IMAGES\RA1_CD1.iso с:\IMAGES\RA1_CD2.iso -t cdrom
Тут можно указать список из двух или более образов дисков, при этом опция типа файловой системы ‘-t’ должна быть установлена как ‘cdrom’ (виртуальный CD-ROM дисковод).
В целях отладки, а также для мониторинга текущих образов в виртуальных дисководах при смене образов дискет, программу DosBox можно запустить из консоли:
dosbox
Теперь в процессе работы там будет выводиться дополнительная полезная информация.
Монтирование директорий и образов можно будет автоматизировать, указав нужные команды в конфигурационном файле DosBox.
Создание и использование образов IMG (Floppy) в Linux
Создаем пустой файл для образа дискетки:
dd if=/dev/zero of=FLOPPY.IMG bs=1K count=1440
- of=FLOPPY.IMG — имя файла, куда будут записываться данные;
- bs=1K — количество Байт для записи в одном блоке данных;
- count=1440 — количество блоков данных.
1440 * 1K = 1440K = 1,44MB.
Создаем в образе раздел с файловой системой FAT16 (используем ‘fdisk’ с правами суперпользователя):
sudo fdisk FLOPPY.IMG
Жмем поочередно клавиши, водим значения и таким образом создаем структуру файловой системы:
- ‘n‘ — новый раздел (New Partition);
- ‘p‘ — основной раздел (Primary Partition);
- ‘1‘ — номер раздела (Partition number);
- ‘1’ — первый сектор (First sector);
- жмем ENTER (по умолчанию) — Last sector (последний сектор);
- ‘l‘ (буква ‘l‘ от list) — выводим список типов файловых систем (list known partition types). Ищем номер для ‘FAT16
- ‘t‘ — меняем тип файловой системы (change a partition type). Вводим код ‘4’ для ранее найденного типа файловой системы;
- ‘p‘ — проверяем текущий тип файловой системы образа диска (Print the partition table);
- ‘w’ — сохраняем все изменения и выходим (Write changes).
Осталось отформатировать в нашем файле-образе созданный раздел с FAT16:
sudo mkfs -t fat FLOPPY.IMG
Образ дискетки на 1,44МБ готов к работе!
Теперь полученный файл виртуального диска можно смонтировать в папку ‘/mnt’, записать на него файл, а потом размонтировать:
sudo mount -t vfat -o loop FLOPPY.IMG /mnt ls /mnt sudo echo 'Hello!' > /mnt/hello.txt ls /mnt sudo umount /mnt ls /mnt
Монтирование образов IMG (HDD)
Для монтирования образа жесткого диска (IMG) можно попробовать простейший вариант с автоматическим распознаванием образа:
# Монтируем папку с образами как диск D mount d: c:\images # Переходим на диск D и смотрим его содержимое d: dir # Монтируем образ как диск C D:>imgmount c: "hdd.img"
Если команда не сработает, а также при работе с образом загрузочного диска — понадобится расчет и указание его геометрии.
Указать данные геометрии диска можно с помощью параметра ‘size’, например:
-size 512,63,16,568
- 512 — размер сектора, в Байтах;
- 63 — количество секторов на дорожку;
- 16 — количество магнитных головок;
- 568 — число цилиндров.
Перемножив эти числа мы получим реальный размер диска:
512*63*16*568 = 293142528 Байт 293142528/1024/1024 = 279,5625 ~ 279 МегаБайт
Для понимания что такое секторы, дорожки и головки в жестком диске можете посмотреть мою статью про Ретро ПК на 80486, сразу же перейдя в раздел о жестком диске.
Создать образ нужного размера и узнать его геометрию (количество цилиндров) в Windows/Linux можно с помощью программы ‘bximage.exe‘ из комплекта универсального эмулятора Bochs.
После запуска ‘bximage’ можно будет создать новый файл-образ или же узнать параметры (в том числе и геометрию) уже существующего. При создании нового образа будет запрошен его размер в МБ, выведены рассчитанные параметры его геометрии, запрошено имя создаваемого файла с дальнейшей его записью.
О том как создать файл-образ виртуального жесткого диска штатными средствами GNU/Linux будет рассказано в следующем разделе.
Допустим что в основной ОС (где установлена DosBox) в папке ‘c:\images\’ у нас находятся два файла-образа:
- VHD.IMG — образ диска размером 279МБ с указанными выше параметрами геометрии;
- FDOS622.IMG — образ загрузочной дискетки с MS-DOS 6.22.
Пустой образ диска можно будет подмонтировать примерно так:
mount d: c:\images d: dir imgmount 2 VHD.IMG -size 512,63,16,568 -t hdd -fs none
- 2 — номер виртуального диска (не раздела). От 0 до 3 (0=fda, 1=fdb, 2=hda, 3=hdb). 0 и 1 — виртуальные флопики, а 2 и 3 — виртуальные жесткие дисики;
- -size 512,63,16,568 — парметры размерности диска;
- -t hdd — тип «Hard Disk Drive» (жесткий диск);
- -fs none — тип файловой системы не определен (отсутствует или диск пуст).
Виртуальный жесткий диск из файла VHD.IMG теперь подмонтирован. Можно загрузиться с дискетки и создать на нем разделы (если их там еще нет), а также отформатировать.
Вот команды MS-DOS для выполнения таких задач внутри DosBox:
# Загружаемся с установочной дискеты MS-DOS. # Чтобы выйти из программы установки жмем два раза F3. boot FDOS622.IMG # Создаем на диске новый раздел (команда MS-DOS). fdisk
Программа ‘fdisk’ должна определить наличие виртуального жесткого диска. Дальше в диалогах программы выбираем:
- ‘1‘ — создать раздел DOS (Create DOS partition or Logical DOS Drive);
- ‘1‘ — основной раздел на диске (Create Primary DOS Partition);
- ‘Y‘ — ответ ‘ДА’ на вопрос об использовании всего доступного пространства (Do you wish to use maximum available size for a Priomary DOS Partition).
После перезагрузки монтируем образ VHD.IMG как диск ‘C’:
# DosBox сам попробует рапознать тип и геометрию образа диска imgmount c: VHD.IMG # Если пишет что 'Could not extract drive geometry from image' imgmount c: VHD.IMG -size 512,63,16,568 -t hdd -fs fat
Грузимся с образа дискеты FDOS622.IMG и форматируем диск ‘C’ с переносом на него системных файлов MS-DOS, смотрим его содержимое:
boot FDOS622.IMG format c: /s c: dir
Диск отформатирован, системные файлы перенесены. Теперь с него можно загружать MS-DOS, размещать внутри файлы и папки.
Создание и использование образов IMG (HDD) в Linux
Для корректного создания образов, которые будут работать с ванильной DosBox будем использовать программу ‘bximage‘ из комплекта эмулятора Bochs, установим его командой:
apt install bochs
Запустим создание нового образа диска:
bximage
Выбираем опции и значения по очереди:
- ‘1‘ — создание нового образа (Create new floppy or hard disk image);
- ‘hd‘ — вводим на вопрос о создании образа флоппи или жесткого диска (Please type hd or fd);
- ‘flat‘ — указываем тип образа (What kind of image should I create?);
- ‘256‘ — размер диска в мегабайтах (Enter the hard disk size in megabytes);
- ‘VHD.IMG‘ — имя файла-образа диска (What should be the name of the image?).
Программа завершит работу и файл ‘VHD.IMG’ будет создан. Обращаем внимание на строчку вывода:
Creating hard disk image 'VHD.IMG' with CHS=520/16/63
Здесь CHS означает: Cylinders (цилиндров), Heads (головок), Sectors/Track (секторов на дорожку). Соответственно значения: C=520, H=16, S=63.
Еще один вариант подготовки пустого образа — воспользоваться командой ‘dd‘.
Рассчитаем точный размер диска на 256М в байтах:
256*1024*1024 = 268435456 байт
Рассчитаем количество секторов (блоков) по 512 байт для такого диска:
268435456/512 = 524288
Выполним расчет количества цилиндров для данного количества секторов, с учетом того что у нас 16 головок и 63 сектора на дорожку:
С = 524288/16/63 = 520,12698 ~ 520
Создаем пустой файл-образ:
dd if=/dev/zero of=VHD.IMG bs=512 count=524288 # Сброс буферов, дожидаемся завершения записи на диск. sync
Итак, образ готов.
Зная значения геометрии виртуального диска готовим команду, с помощью которой монтируем образ в DosBox как первый виртуальный жесткий диск (‘2’ — hda):
imgmount 2 VHD.IMG -size 512,63,16,520 -t hdd -fs none
А дальше можно загрузиться с образа дискеты MS-DOS и выполнить подготовку раздела, точно так само как было показано ранее.
Также, полученный образ теперь можно смонтировать в Linux для чтения/записи каких-то файлов внутри него. Вот пример команды для монтирования и размонтирования образа VHD.IMG в ‘/mnt’:
sudo mount -t msdos -o loop,offset=32256 VHD.IMG /mnt . создаем файлы и папки в /mnt . sudo umount /mnt
- -t msdos — тип файловой системы для используемого раздела;
- -o loop,offset=32256 — опции, указываем что для монтирования будем использовать так называемое loop-устройство, а также что чтение нужного нам раздела стоит начинать со смещением 32256 байт (63 сектора по 512 байт);
- VHD.IMG — имя файла-образа виртуального диска;
- /mnt — точка монтирования.
Для получения информации о разделах внутри фала-образа можно воспользоваться программой ‘fdisk’ (в Linux), нажав в ней поочередно клавиши ‘p’ и ‘i’:
sudo fdisk VHD.img
Пример вывода информации о VHD.IMG:
Disk VHD.IMG: 256 MiB, 268435456 bytes, 524288 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x00000000 Device Boot Start End Sectors Size Id Type VHD.IMG1 * 63 524159 524097 255,9M 6 FAT16 Command (m for help): i Selected partition 1 Device: VHD.IMG1 Boot: * Start: 63 End: 524159 Sectors: 524097 Cylinders: 520 Size: 255,9M Id: 6 Type: FAT16 Start-C/H/S: 0/1/1 End-C/H/S: 519/15/63 Attrs: 80
Конфигурационные файлы DosBox
Для каждой программы можно создать свой конфигурационный файл с уникальными для нее параметрами эмуляции.
После первого запуска DosBox будет автоматически создан конфигурационный файл по умолчанию — dosbox.conf . Вот его местонахождение в разных операционных системах:
- MS Windows: «:/Users//AppData/Local/DOSBox/dosbox-.conf» ;
- GNU/Linux: «~/.config/dosbox/» (для версии 0.75 и выше) или «~/.dosbox/» ;
- MS Windows — PortableApps: в папке «Data/settings/dosbox.conf» относительно DOSBoxPortable.exe .
Вместо «», «» и «» нужно подставить актуальные для вашего случая и системы данные.
Для редактирования файлов конфигурации можно использовать любой текстовый редактор — notepad (Windows), gedit, kate, nano (Linux) и другие.
Чтобы запустить эмулятор с определенным конфигурационным файлом нужно выполнить команду:
DOSBox.exe -conf "ConfigName.conf"
Где «ConfigName.conf» — имя конфигурационного файла. Если конфигурационный файл размещается не в директории с программой, то вместо имени нужно указывать полный путь к файлу (с названиями директорий), примеры для Windows и Linux:
DOSBox.exe -conf "C:\Test\games-config.conf" dosbox -conf /tmp/games-config.conf
Настройка автозапуска команд после старта
Воспользуемся поддержкой принципа так называемого файла 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]» строчку:
keyb ru 866
После перезапуска программы символы кириллицы станут отображаться как следует!
Теперь русские символы отображаются корректно!
Переключение раскладок клавиатуры (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 /HELP # Включить интерфейс. keyrus.com /INTERFACE=On # Отключить интерфейс. keyrus.com /INTERFACE=Off # Включение русской раскладки по клавише "правый CTRL". # Скан-код клавиши - 29e. keyrus.com /SCAN=29e # Включение английской раскладки по клавише "левый CTRL". # Скан-код клавиши - 29. keyrus.com /LAT=29 # Выгрузить программу из памяти. keyrus.com /RELEASE # Задаем несколько параметров запуска в одной команде. keyrus.com /SCAN=29e /LAT=29 /INTERFACE=On
Вот как выглядит запуск программы без параметров:
Поскольку я запустил оригинальный файл KEYRUS.COM (без настройки через «setup.exe»), то для переключения раскладок использую одну клавишу — правый CTRL.
Создал текстовый файл «1.txt» и открыл его в редакторе в Dos Navigator, пробую писать текст в двух раскладках — работает!
Делаем вывод содержимого текстового файла в консоль с помощью встроенной команды «TYPE»:
Для того чтобы драйвер активировался при запуске DosBox, нужно добавить вызов программы KEYRUS.COM в секции «[autoexec]» в конфигурационном файле «dosbox.conf» , не забывая указать полный путь, например:
[autoexec] keyb ru 866 mount c: ../../Data/Disk_C c:/KEYRUS73/keyrus.com c: dir
В этом примере первым делом включаем поддержку отображения кириллицы в 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 не отображено).
5. Работа в консоли
Теперь запускаем программу, как мы делали это раньше. В рабочем окне (там где сообщение «Welcome to DOSBox») вводим попорядку слудующие команды:
mount C Program C: dir cd DN dn.com
- «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]». В самом низу, под ней, добавляем следующие строчки:
keyb ru 866 mount C Program c: cd DN dn.com
Сохраняем файл (в меню «Файл» выбираем «Сохранить») и закрываем программу Блокнот.
Все эти строчки фактически повторяют команды, которые мы вводили вручную в консоли чтобы подключить как диск «С» каталог «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!
Текущая версия эмулятора (состоянием на 2023-й год): 0.74 .
Запуск DOS-программ на Windows 7 в DOSBox
На Windows 7 не работают DOS-программы, хотя на Windows XP с ними проблем не было. Микрософт предлагает запускать DOS-программы в специальной виртуальной машине Windows XP mode. Это действительно работает, но данная технология слишком громоздка, запуск и завершение программ занимает много времени. Однако, есть более удобное решение сторонних разработчиков — DOSBox.
Эксперименты показали, что в DOSBox та же DOS-программа работает быстрее на четверть. Установка и настройка занимает значительно меньше времени.
Особенности DOSBox
Системный диск в DOSBox имеет имя Z:
Команда net use НЕ поддерживается. Поэтому для подключения сетевых дисков нужно сначала подключить их в хостовой системе, а потом подмонтировать в гостевой командой mount
Русификация встроенными средствами DOSBox: keyb ru441 866
Переключение раскладки:
RUS — левый ALT + правый Shift.
LAT — левый ALT + левый Shift.
Либо вместо этого запускать не саму программу а cmd файл, в котором сначала запускать свой русификатор, например vrun.com (переключатель — правый Shift).
Размер экрана можно изменить параметром windowresolution в файле «c:\Program Files (x86)\DOSBox-0.74\dosbox.conf» (размер по умолчанию слишком маленький) либо при запуске DOS-программы подключать отдельный файл конфигурации.
Пример: windowresolution=1024×768.
Однако, для этого необходимо изменить и параметр output, т.к. при значении по умолчанию (output=surface) изменение разрешения не поддерживается.
Пример: output=ddraw.
При запуске программы в DOSBox без дополнительных параметров каталог программы автоматически монтируется в DOSBox как диск C:
Например, в ярлыке запуска написано: «C:\Program Files (x86)\DOSBox-0.74\DOSBox.exe» C:\PROGA\prog.exe
Тогда каталог хостовой системы C:\PROGA будет подключен в DOSBox как диск C: и в нем будет запущена программа prog.exe
Еще в строке запуска нужно добавлять:
-exit — для закрытия DOS-окна по завершении работы программы,
-noconsole — для скрытия служебного окна DOSBox.
Конкретная задача
DOS-программа на Windows 7 (хост) находится в каталоге C:\ZAYAVKA. Сама обращается за данными к сетевому ресурсу \\Cavs-4\ZAYAVKA, который подключен как диск Y:, так как DOS-программа не понимает сетевых путей.
На хосте подключаем сетевой диск:
net use Y: \\Cavs-4\ZAYAVKA /PERSISTENT:YES /SAVECRED
В файл «c:\Program Files (x86)\DOSBox-0.74\dosbox.conf» дописываем в конец в секцию [autoexec]:
keyb ru441 866
mount Y Y:\
set clipper=f100
(здесь первая строка — русификатор,
вторая — монтируем в DOSBox на букву Y путь на хосте Y:\ ,
третья строка нужна для работы этой программы)
Строка запуска на хосте:
«C:\Program Files (x86)\DOSBox-0.74\DOSBox.exe» C:\ZAYAVKA\zavs_sl.exe -exit -noconsole
. other posts by admin
14 Comments
Привет. У меня такая же задачка. Есть две старые проги. Одна на фоксе, другая на клипере. Первую засунул в бокс без проблем, а вот вторая ни в какую. Т.е. заспускаю ее и висит комстрока в темном экране.((
Что-то можно править ?
приведи, пожалуйста, строку запуска
Привет. У меня проблема, не запускается прога на клипере. Что только не делал.De-FendReload тоже не помогает. Может посоветуете что?
Покажите строку запуска.
Покажите экран DOS-Box во время ошибки.
Вот строка запуска из D-fendReload
[autoexec]
@echo off
SET PATH=Z:\
SET clipper=f:100
SET files=250 keyb RU 866
mount C «C:\Users\PROGRA~1\D-FEND~1\VIRTUA~1\»
mount D «D:\INSTAL2\»
D:
cd\
Z:\
MENU.EXE
А экрана с ошибками нет.Просто dos-box зависает и все.
Что такое «D-fendReload» я не понял.
Строка запуска — это не конфиг, а то, что в ярлычке написано на рабочем столе или где он находится. По вашему конфигу:
не надо монтировать ничего на С:. Смотрите документацию. на С: автоматически монтируется каталог, в котором находится запускаемый ЕХЕшник. Диск Z: по вашему конфигу проге MENU.exe недоступен. Чтобы он был доступен, его нужно смонтировать, но опять же именно букву Z не используйте. Если взять, скажем S, ко монтаж будет выглядеть так:
«mount S S:\»
Ну, и, соответственно, последние 4 строки не нужны. Имя проги в ярлык нужно вставить. И еще вдогонку. В клиппере я не силен, но мы обычно пишем эту строку без двоеточия:
SET clipper=f100
Посмотрел сейчас свою статью. Вижу, что Вы её вообще не читали. Просто спамите все ресурсы про DOS. Там есть всё и даже с примерами.
Как прервать программу в досбокс
По умолчанию DOSBox запускается в окне с разрешением 640×400 px.
Переключиться на полный экран можно клавишами Alt+Enter
Полный список горячих клавиш:
Горячие клавиши | Команда |
---|---|
Alt+Enter | На полный экран и обратно. |
Alt+Pause | Приостановить работу DOSBox. |
Ctrl+F1 | Запустить keymapper. |
Ctrl+F4 | Обновить кэш директорий для всех дисков. Подкачка примонтированных образов дисков. |
Ctrl+Alt+F5 | Запуск/Останов |
Ctrl+F5 | Записать скриншот в папку ~/.dosbox/capture/ |
Ctrl+F6 | Запуск/Останов |
Ctrl+Alt+F7 | Запуск/Останов |
Ctrl+Alt+F8 | Запуск/Останов |
Ctrl+F7 | |
Ctrl+F8 | |
Ctrl+F9 | Прервать работу DOSBox |
Ctrl+F10 | |
Ctrl+F11 | |
Ctrl+F12 | |
Alt+F12 |
Полный список встроенных в DOSBox команд:
Команда | Действие |
---|---|
DIR | |
CHDIR | |
ATTRIB | |
CALL | |
CD | |
CHOICE | |
CLS | |
COPY | |
DEL | |
DELETE | |
ERASE | |
ECHO | |
EXIT | |
GOTO | |
HELP | |
IF | |
LOADHIGH | |
LH | |
MKDIR | |
MD | |
PATH | |
PAUSE | |
RMDIR | Удалить директорию |
RD | Удалить директорию |
REM | |
RENAME | |
REN | |
SET | |
SHIFT | |
SUBST | |
TYPE | |
VER |
Полное описание и синтаксис каждой команды можно получить если указать в качестве параметра команды /? через пробел. Например:
Конфигурационный файл DOSBox ~/.dosbox/dosbox-0.74.conf
# This is the configurationfile for DOSBox 0.74. (Please use the latest version of DOSBox) # Lines starting with a # are commentlines and are ignored by DOSBox. # They are used to (briefly) document the effect of each option. [sdl] # fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back) # fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox. # fullresolution: What resolution to use for fullscreen: original or fixed size (e.g. 1024x768). # Using your monitor's native resolution with aspect=true might give the best results. # If you end up with small window on a large screen, try an output different from surface. # windowresolution: Scale the window to this size IF the output device supports hardware scaling. # (output=surface does not!) # output: What video system to use for output. # Possible values: surface, overlay, opengl, openglnb. # autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock) # sensitivity: Mouse sensitivity. # waitonerror: Wait before closing the console if dosbox has an error. # priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized. # pause is only valid for the second entry. # Possible values: lowest, lower, normal, higher, highest, pause. # mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the defaul value. # usescancodes: Avoid usage of symkeys, might not work on all operating systems. fullscreen=false fulldouble=false fullresolution=original windowresolution=original output=surface autolock=true sensitivity=100 waitonerror=true priority=higher,normal mapperfile=mapper-0.74.map usescancodes=true [dosbox] # language: Select another language file. # machine: The type of machine tries to emulate. # Possible values: hercules, cga, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe. # captures: Directory where things like wave, midi, screenshot get captured. # memsize: Amount of memory DOSBox has in megabytes. # This value is best left at its default to avoid problems with some games, # though few games might require a higher value. # There is generally no speed advantage when raising this value. language= machine=svga_s3 captures=capture memsize=16 [render] # frameskip: How many frames DOSBox skips before drawing one. # aspect: Do aspect correction, if your output method doesn't support scaling this can slow things down!. # scaler: Scaler used to enlarge/enhance low resolution modes. # If 'forced' is appended, then the scaler will be used even if the result might not be desired. # Possible values: none, normal2x, normal3x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x. frameskip=0 aspect=false scaler=normal2x [cpu] # core: CPU Core used in emulation. auto will switch to dynamic if available and appropriate. # Possible values: auto, dynamic, normal, simple. # cputype: CPU Type used in emulation. auto is the fastest choice. # Possible values: auto, 386, 386_slow, 486_slow, pentium_slow, 386_prefetch. # cycles: Amount of instructions DOSBox tries to emulate each millisecond. # Setting this value too high results in sound dropouts and lags. # Cycles can be set in 3 ways: # 'auto' tries to guess what a game needs. # It usually works, but can fail for certain games. # 'fixed #number' will set a fixed amount of cycles. This is what you usually need if 'auto' fails. # (Example: fixed 4000). # 'max' will allocate as much cycles as your computer is able to handle. # # Possible values: auto, fixed, max. # cycleup: Amount of cycles to decrease/increase with keycombo.(CTRL-F11/CTRL-F12) # cycledown: Setting it lower than 100 will be a percentage. core=auto cputype=auto cycles=auto cycleup=10 cycledown=20 [mixer] # nosound: Enable silent mode, sound is still emulated though. # rate: Mixer sample rate, setting any device's rate higher than this will probably lower their sound quality. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged. # Possible values: 1024, 2048, 4096, 8192, 512, 256. # prebuffer: How many milliseconds of data to keep on top of the blocksize. nosound=false rate=44100 blocksize=1024 prebuffer=20 [midi] # mpu401: Type of MPU-401 to emulate. # Possible values: intelligent, uart, none. # mididevice: Device that will receive the MIDI data from MPU-401. # Possible values: default, win32, alsa, oss, coreaudio, coremidi, none. # midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use. # See the README/Manual for more details. mpu401=intelligent mididevice=default midiconfig= [sblaster] # sbtype: Type of Soundblaster to emulate. gb is Gameblaster. # Possible values: sb1, sb2, sbpro1, sbpro2, sb16, gb, none. # sbbase: The IO address of the soundblaster. # Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300. # irq: The IRQ number of the soundblaster. # Possible values: 7, 5, 3, 9, 10, 11, 12. # dma: The DMA number of the soundblaster. # Possible values: 1, 5, 0, 3, 6, 7. # hdma: The High DMA number of the soundblaster. # Possible values: 1, 5, 0, 3, 6, 7. # sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer. # oplmode: Type of OPL emulation. On 'auto' the mode is determined by sblaster type. All OPL modes are Adlib-compatible, except for 'cms'. # Possible values: auto, cms, opl2, dualopl2, opl3, none. # oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well). # Possible values: default, compat, fast. # oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly). # Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000. sbtype=sb16 sbbase=220 irq=7 dma=1 hdma=5 sbmixer=true oplmode=auto oplemu=default oplrate=44100 [gus] # gus: Enable the Gravis Ultrasound emulation. # gusrate: Sample rate of Ultrasound emulation. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # gusbase: The IO base address of the Gravis Ultrasound. # Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300. # gusirq: The IRQ number of the Gravis Ultrasound. # Possible values: 5, 3, 7, 9, 10, 11, 12. # gusdma: The DMA channel of the Gravis Ultrasound. # Possible values: 3, 0, 1, 5, 6, 7. # 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 gusrate=44100 gusbase=240 gusirq=5 gusdma=3 ultradir=C:\ULTRASND [speaker] # pcspeaker: Enable PC-Speaker emulation. # pcrate: Sample rate of the PC-Speaker sound generation. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # tandy: Enable Tandy Sound System emulation. For 'auto', emulation is present only if machine is set to 'tandy'. # Possible values: auto, on, off. # tandyrate: Sample rate of the Tandy 3-Voice generation. # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716. # disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible). pcspeaker=true pcrate=44100 tandy=auto tandyrate=44100 disney=true [joystick] # joysticktype: Type of joystick to emulate: auto (default), none, # 2axis (supports two joysticks), # 4axis (supports one joystick, first joystick used), # 4axis_2 (supports one joystick, second joystick used), # fcs (Thrustmaster), ch (CH Flightstick). # none disables joystick emulation. # auto chooses emulation depending on real joystick(s). # (Remember to reset dosbox's mapperfile if you saved it earlier) # Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none. # timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away). # autofire: continuously fires as long as you keep the button pressed. # swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks. # buttonwrap: enable button wrapping at the number of emulated buttons. joysticktype=auto timed=true autofire=false swap34=false buttonwrap=false [serial] # serial1: set type of device connected to com port. # Can be disabled, dummy, modem, nullmodem, directserial. # Additional parameters must be in the same line in the form of # parameter:value. Parameter for all types is irq (optional). # for directserial: realport (required), rxdelay (optional). # (realport:COM1 realport:ttyS0). # for modem: listenport (optional). # for nullmodem: server, rxdelay, txdelay, telnet, usedtr, # transparent, port, inhsocket (all optional). # Example: serial1=modem listenport:5000 # Possible values: dummy, disabled, modem, nullmodem, directserial. # serial2: see serial1 # Possible values: dummy, disabled, modem, nullmodem, directserial. # serial3: see serial1 # Possible values: dummy, disabled, modem, nullmodem, directserial. # serial4: see serial1 # Possible values: dummy, disabled, modem, nullmodem, directserial. serial1=dummy serial2=dummy serial3=disabled serial4=disabled [dos] # xms: Enable XMS support. # ems: Enable EMS support. # umb: Enable UMB support. # keyboardlayout: Language code of the keyboard layout (or none). xms=true ems=true umb=true keyboardlayout=auto [ipx] # ipx: Enable ipx over UDP/IP emulation. ipx=false [autoexec] # Lines in this section will be run at startup. # You can put your MOUNT lines here.
- Вы здесь:
- Главная
- Desktop
- DOSBox DOS под Linux
- Linux на Orange Pi 3 LTS
- Orange Pi 3 LTS
- Linux на Orange Pi Zero 2
- gsettings конфигурация
- Установка приложений
- Gnome-tweaks
- Установка Fusion360 на Linux
- Отключить автоматическую блокировку экрана
- KNetWalk игра Компьютерная сеть
- Raspberry Pi OS на VirtualBox
- Raspberry Pi первый запуск
- ALT Linux загрузочная флешка
- ALT Linux для микрокомпьютеров
- OS RaspberryPy русский
- Raspberry Pi OS
- Inkscape
- Adobe Flash Player в Ubuntu
- Ubuntu 20.04 установка
- Raspbian добавить пользователя
- idesk значки рабочего стола
- slim миниатюрный менеджер дисплеев
- ObMenu
- OpenBox на Debian
- Детский компьютер
- Debian с Raspberry Pi Desktop для PC
- Author Login
- Карта сайта