Как запускать программы dos в linux

Планы по дальнейшей разработке

Что же касаемо перспективы развития FreeDOS , то версия 1.2 будет обновлением, в своем роде «освежительным напитком» от FreeDOS 1.1 и покажет обновленный, упрощенный в установке процесс. Но никаких существенных изменений не планируется. Несколько пакетов могут быть добавлены к дистрибутиву, если они необходимы для поддержки программного обеспечения или аппаратных средств.

FreeDOS «2.0» останется с 16 битами. Этот выпуск будет видеть существенные изменения к списку программного обеспечения, главным образом сосредотачивающемуся на утилитах пространства пользователя, которые делают FreeDOS более современным, но все еще останется связь с «DOS»


FreeDOS 2.0 продолжит сосредотачивать внимание на однопользовательскую окружающую среду командной строки, а так же продолжит запускаться на старых PC (XT, ‘286, ‘386, и т.д.), но будет и поддерживать новые аппаратные средства с расширенной поддержкой драйверов, если это возможно. Однако прямая поддержка систем UEFI может быть невозможной

Предыдущие циклы выпуска разделили программное обеспечение FreeDOS на «наборы пакета» или «дисковые наборы» с основой, содержащей те программы, которые копировали функциональность MS-DOS. В 1994 разработчик FreeDOS стремился создавать общедоступную и совместимую альтернативу MS-DOS. FreeDOS 1.0 удовлетворил той цели несколько лет назад и расширил набор утилитов от MS-DOS 6. Но FreeDOS все еще – «клон MS-DOS».

Было обсуждение с новыми разработчиками, чтобы переместить FreeDOS в 32 бита. В декабре 2014 независимый разработчик анонсировал проект на Kickstarter, намереваясь обновить ядро FreeDOS-32 для использования в будущем выпуске FreeDOS. Этот проект должен продемонстрировать 100%-ю прикладную совместимость (с «классическими» программами DOS), прежде чем Проект FreeDOS обсудит FreeDOS-32 для плана действий. Но если же FreeDOS-32 нарушит совместимость приложений DOS, он не сможет использовать название «FreeDOS». Что же касается законности свободного использования данной операционной системы совершенно бесплатно. Изучив юридический материал и преамбулу лицензии GNU, которая закрепляет, что « Наши Лицензии Широкой публики разработаны, чтобы удостовериться, что Вы имеете свободу распределить копии бесплатного программного обеспечения, получить исходный код, изменить программное обеспечение или использовать части его в новых бесплатных программах. И вы должны знать, вы можете сделать это», мы можем убедиться, что действительно данная программа совершенно легитимно является общедоступной для каждого пользователя.

Шаг 2: Варианты QEMU

В отличие от компьютерных систем эмуляторы, как VMware или VirtualBox, вам нужно «строить» свою виртуальную систему, поручив QEMU для добавления каждого компонента виртуальной машины. Хотя это может показаться трудоемким, это на самом деле не так уж трудно. Вот параметры, которые можно использовать для загрузки FreeDOS внутри QEMU:

qemu-system-i386 QEMU может эмулировать несколько различных систем, но для загрузки DOS, мы должны иметь Intel-совместимый процессор. Для этого запустите QEMU с i386.
-m 16 мы хотели бы определить виртуальную машину с 16Мб памяти. Это может показаться небольшим, но DOS не требует много памяти, чтобы сделать свою работу. Когда DOS был король, компьютеры с 16Мб или даже 8MB были довольно распространенным явлением.
-k en-us Технически вариант -k не является необходимым, так как QEMU будет установить виртуальную клавиатуру, чтобы соответствовать вашей фактической клавиатуре (в моем случае, это английский в стандартной раскладке США).
-rtc base=localtime Каждый классический PC обеспечивает часы реального времени (RTC), поэтому система может следить за временем. Мы считаем, что проще всего установить виртуальную RTC, чтобы соответствовать вашему местному времени.
-soundhw sb16,adlib,pcspk Если вам нужен звук, особенно для игр, мы предпочитаем, определить QEMU с звуковым оборудованием SoundBlaster16 и поддержкой AdLib Music. SoundBlaster16 и AdLib были наиболее распространенным звуковым оборудованием в эпоху DOS. Некоторые старые программы могут использовать динамик PC для звука; QEMU также может эмулировать его.
-device cirrus-vga Чтобы использовать графику, мы хотел подражать простой VGA видеокарты. VGA карта Cirrus была обычная видеокарта в то время, и QEMU может эмулировать его.
-display gtk Для виртуального экрана, мы указали QEMU использовать инструментарий GTK, который помещает виртуальную систему в своем собственном окне и обеспечивает простое меню для управления виртуальной машины.
-boot order= Вы можете сказать, QEMU для загрузки виртуальной машины из различных источников. Чтобы загрузиться с дискеты (как правило, A: на машинах DOS) определяют order. Для загрузки с первого жесткого диска (обычно называемого C: ) используют order. Для загрузки с компакт-диска (часто присваивается D: с помощью DOS) используют order. Вы можете комбинировать буквы и указать конкретный источник загрузки, например, order=CD для первого использования привода CD-ROM, или жесткий диск, если привод CD-ROM не содержит загрузочный носитель.

Список горячих клавиш

  • 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  — отключение лимита скорости, максимум.

История

В 90-e компания Microsoft прекращает поддерживать операционную систему MS-DOS, и данный факт сподвигает Джима Холла начать разработку проекта, который являлся бы альтернативой MS-DOS. Все программы FreeDOS распределены под общедоступной лицензией GNU (General Public License) . Первая версия FreeDOS (известна как PD-DOS) была создана Джимом Холлом в 1994 году, но буквально через месяц название сменили на FreeDOS Последней версией считается версия 1.1, выпущенная в январе 2012 года. Главная цель по созданию ядра состояла в том, чтобы написать новое ядро DOS, то, которое способно к управлению, по крайней мере, большей частью текущего программного обеспечения DOS.

«Я хотел бы сформировать систему, которая, в конечном счете, создаст другое внедрение MS-DOS. DOS, кажется, популярная система, и есть много аппаратных средств, уже доступных, которые готовы поддержать ее. Microsoft не будет развивать DOS навсегда, и нельзя рассчитывать на коммерческие фирмы по программированию, такие как IBM, чтобы продолжить DOS. Я чувствую, что должен создать условия, чтобы развивать собственную DOS ,и я чувствую, что есть большая поддержка проекта данного типа».
История версий FreeDOS
Версия Статус Кодовое имя Дата выпуска
0.05 ALPHA Отсутствует 12 января 1998
0.1 BETA Orlando 25 марта 1998
0.2 BETA Marvin 28 октября 1998
0.3 BETA Ventura 21 апреля 1999
0.4 BETA Lemur 9 апреля 2000
0.5 BETA Lara 10 августа 2000
0.6 BETA Midnite 18 марта 2001
0.7 BETA Spears 7 сентября 2001
0.8 BETA Nikita 7 апреля 2002
0.9rc1 BETA Methusalem июль 2003
0.9rc2 BETA Отсутствует 23 августа 2003
0.9rc3 BETA Отсутствует 27 сентября 2003
0.9rc4 BETA Отсутствует 5 февраля 2004
0.9rc5 BETA Отсутствует 20 марта 2004
0.9 BETA Отсутствует 28 сентября 2004
0.9sr1 BETA Отсутствует 30 ноября 2004
0.9sr2 BETA Отсутствует 30 ноября 2005
1.0 FINAL Отсутствует 3 сентября 2006
1.1 FINAL Отсутствует 2 января 2012

Настройка автозапуска команд после старта

Воспользуемся поддержкой принципа так называемого файла autoexec.bat из мира MS-DOS в эмуляторе, это очень удобно когда после запуска программы-эмулятора DosBox нужно автоматически выполнить некоторые команды, запустить предустановленные программы.

В качестве примеров того что можно автоматизировать:

  • почистить мусор в какой-либо директории (использовать команду DEL)
  • подмонтировать новый диск (использовать команду mount)
  • запустить Norton/Volkov Commander
  • автоматически запустить игру или другую программу
  • и т.д.

Чтобы задать команды для автостарта в DosBox нужно добавить список этих команд в специальную секцию под названием «»  в конфигурационный файл dosbox.conf.

К примеру, после старта нужно выполнить следующие действия:

  1. подмонтировать папку «Data/Disk_C» для портабельной версии программы (Windows — portableapps) как диск «С» в эмуляторе;
  2. перейти на диск С;
  3. вывести список содержимого диска С.

Открываем в текстовом редакторе конфигурационный файл dosbox.conf и ищем в самом низу секцию «» — все заданные там команды будут автоматически выполнены по порядку после запуска эмулятора .

Вот скриншот реализации приведенных выше 3х команд для авто-запуска по очереди:

Хотелось бы обратить внимание на путь к директории «../../Data/Disk_C» — в данном случае мы указываем относительный путь для портабельной версии программы, а не абсолютный (к примеру «c:/Programs/Dosbox/Data/»). Программа DosBox будет искать папку относительно файла DOSBox.exe, что находится в директории «App/DOSBox», поэтому мы поднимаемся на два уровня выше «../../» и уже после указываем расположение директории от текущего уровня

Программа DosBox будет искать папку относительно файла DOSBox.exe, что находится в директории «App/DOSBox», поэтому мы поднимаемся на два уровня выше «../../» и уже после указываем расположение директории от текущего уровня.

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

Эта возможность очень удобна, поскольку позволяет переносить портабельную версию программы и содержимое к ней (программы для ДОС) на сменных носителях и дисках, например на флешке или внешнем жестком диске.

Запускаем DosBox и вот что мы должны увидеть:

Директория подмонтировалась как диск С, выполнен переход на диск С и отображены папки и файлы на диске.

Если вы предпочитаете работу в оболочках типа Norton Commander или Volkov Commander то в автозапуск можно также добавить полный путь для запуска оболочки.


Например вы распаковали Volkov Commander в директорию «vc», что расположена в каталоге который будет подмонтирован как диск С. Добавляем в конфигурационный файл примера, что приведен выше, строчку: «c:\vc\vc.com».

Хочу заметить что для всех команд, которые выполняться внутри эмулятора, в путях нужно использовать слеши:

  • для Linux — слеш «/»;
  • для Windows — обратный слеш «\».

В показанном выше прмиере, при запуске DosBox (портабельная версия программы) под Windows автоматически подмонтируется диск С и запустится Volkov Commander:

Скриншоты некоторых популярных программ и игр

На завершение решил сделать десяток скриншотов игр и программ, которые удалось запустить под эмулятором, возможно кто-то вспомнит былые времена:

Операционная система Microsoft Windows 3.1 (образ с моего 80286 компьютера).

Файловый менеджер Norton Commander, хранитель экрана  — Аквариум.

Игра от Westwood Studios — Dune 2. Легендарная игра с которой началась серия игр в жанре RTS.

Игра Lotus The Ultimate Challange — гонки на машинах.

Игра Prehistorik 2.


Легендарный 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, тоже все работает на отлично!

History

Blinky, the mascot of FreeDOS

The FreeDOS project began 29 June 1994, after Microsoft announced it would no longer sell or support MS-DOS. Jim Hall who at the time was a student posted a manifesto proposing the development of PD-DOS, a public domain version of DOS. Within a few weeks, other programmers including Pat Villani and Tim Norman joined the project. Between them, a kernel (by Villani), the COMMAND.COM command line interpreter (by Villani and Norman), and core utilities (by Hall) were created by pooling code they had written or found available. For some time, the project was maintained by Morgan «Hannibal» Toal. There have been many official pre-release distributions of FreeDOS before the final FreeDOS 1.0 distribution. GNU/DOS, an unofficial distribution of FreeDOS, was discontinued after version 1.0 was released.

Blinky the Fish is the mascot of FreeDOS. He was designed by Bas Snabilie.

Distribution

FreeDOS 1.1, released on 2 January 2012, is available for download as a CD-ROM image: a limited install disc that only contains the kernel and basic applications, and a full disc that contains many more applications (games, networking, development, etc.), not available as of November 2011 but with a newer, fuller 1.2. The legacy version 1.0 (2006) consisted of two CDs, one of which was an 8MB install CD targeted at regular users and the other which was a larger 49MB live CD that also held the source code of the project.

Commercial uses

FreeDOS is used by several companies:

  • Dell preloaded FreeDOS with their n-series desktops to reduce their cost. The firm has been criticized for making these machines no cheaper, and harder to buy, than identical systems with Windows.
  • HP provided FreeDOS as an option in its dc5750 desktops, Mini 5101 netbooks and Probook laptops. FreeDOS is also used as bootable media for updating the BIOS firmware in HP systems.
  • FreeDOS is included by Steve Gibson’s hard drive maintenance and recovery program, SpinRite.
  • Intel’s Solid-State Drive Firmware Update Tool loads the FreeDOS kernel.

Non-commercial uses

FreeDOS is also used in multiple independent projects:

  • FED-UP is the Floppy Enhanced DivX Universal Player.
  • FUZOMA is a FreeDOS-based distribution that can boot from a floppy disk and converts older computers into educational tools for children.
  • XFDOS is a FreeDOS-based distribution with a graphical user interface, porting Nano-X and FLTK.

Установка MSDOS . Нам понадобятся:

  • пустой CD диск или флешка 2 Гб (или даже меньше)
  • образ MS-DOS в выбранном вами варианте (версии FreeDOS для флешки или диска)
  • программа DaemonTools для чтения из образа для виртуальной машины

Сначала посетим сайт изготовителя и скачаем DOS-дистрибутив, шёлкнув по зелёной кнопке ISO-закачек. На момент написания статьи расположение кнопок на странице такое:

Однако вполне возможно, что интерфейс страницы изменится. Но уверен, что все необходимые ссылки вы там обнаружите.


Сразу хочу отметить, что есть возможность Установить ms-dos на флешку, однако некоторые компьютеры не поддерживают загрузку с USB устройств, а иногда и просто отказывались видеть DOS при выставленной с BIOS загрузки с USB. Вам тогда придётся воспользоваться статьёй Как установить загрузку с USB на компьютере, не имеющем такой возможности в BIOS . Вариант же с загрузкой с DVD привода всегда безотказен.

Запишите образ на CD болванку и выставляйте в BIOS загрузку с оптического диска. После перезагрузки должно встретить окно менеджера установки:

 Нажмите клавишу Ёптер и попадёте в меню установки.

Нажмите клавишу 1. Вас встретит меню выбора языка. Советую оставить английский, по-русски там ничего всё равно нет, или велика вероятность, что будет отображаться в непонятной кодировке:

По нажатии кнопки ввода появится сообщение установщика, что он не может определить объёмы диска HDD. Но литеру С ему он успел присвоить:

Снова жмём Enter. Оставим “Prepare the harddisk for FreeDOS…” и опять жмём Enter. Вы увидите окно с вашим жёстким диском. У меня такое, у вас объём будет другим:

Продолжим клавишей Enter. Слева сверху вылезет окно опций. Выберем New Partition – Primary Partition. И отведём под диск с будущей DOS место. Помните, что DOS не видит больших объёмов: для размеров от 2-х Гбайт пространства для DOS вообще не существует:

Нажмите Ввод и подтвердите в меню справа Start of free space. Вас встретит диалоговое окно с вопросом об инициализации места под раздел на диске перед процедурой форматирования. Выберите Yes:

Стрелочкой вниз спустимся и повторим предыдущие движения, только пусть второй диск станет логическим. Нажмите снова пару раз Yes, чтобы снова взглянуть на получившуюся картину. Оба диска будут иметь файловую систему FAT16. Для первого диска, куда будет произведена установка msdos , это самое то. А вот для второй части винчестера это не обязательно. Там файловая система может быть любой, и вы можете изменить её прямо сейчас. Просто снова нажмите на него клавишей ввода и сверху справа снова появится окно настроек:

Выберите Partition Type и укажите понравившийся тип системы диска. Я выберу FAT32.  Опять два раза Yes, жмём F3 и в окне запроса выберем Yes, чтобы утилита приступила к выполнению действий:

Жмём ввод и:

Возможно, придётся подождать. Следующее окно предложит перезагрузиться. Загрузочный диск (у меня это внешний бокс, на котором находятся загрузочные образы Windows на все случаи жизни) из дисковода НЕ ВЫНИМАЕМ и перезагружаемся. После перезагрузки наш HDD готов к приёму на борт MS-DOS , и в знакомом нам уже окне снова выбираем Install to hard drive. Снова предупреждение о форматировании:

После чего уже в окне DOS вам придётся ручками ввести YES . Нажимайте клавишу ввода после появления череды диалоговых и путеводных окон, в окнах утилит, которые установятся в составе MS-DOS спуститесь стрелочкой вниз-вбок до слова DONE плюс клавиша ввода с выбором YES:

И так во всех окнах, пока не появится само окно установки. Не трогайте ничего, пока строка состояния на синем фоне вперемешку с мигающим экраном не выбросят на окончание установки, которая ознаменуется записью Done installing this disk series вначале. Нажмите на любую клавишу (Press any key to continue) и повторяйте процедуру с окнами с DONE сколь бы не потребовалось. По окончании перезагрузите компьютер, удалив загрузочный диск из дисковода. Установка MSDOS завершена.

Выберите первый вариант и можете приступать к работе.

Заключение

Цель этой статьи — познакомить людей, воспитанных на Windows, с общими принципами работы в DOS. Как видите, все не так уж страшно. И если вы не хотите быть просто «юзером», то знание DOS вам необходимо. Да и вообще, как говорит один мой знакомый программист: «Винчестер в компьютере — вещь не главная». Однако Windows вы без винчестера не запустите — слишком много она места занимает, а вышеупомянутые три основных досовских файла легко умещаются на дискете (все вместе они занимают около 150КБ — размер зависит от версии). Поэтому советую всегда иметь загрузочную дискету — вдруг придется проверить компьютер, на котором нет винчестера или винчестер неисправен. Если у вас нет возможности создать загрузочную дискету «чистой» DOS, то это и не страшно. Создайте загрузочную дискету Windows — на ней будет все та же DOS, только с кучей разных полезных программ (драйверы CD-ROM, русификатор клавиатуры и т.п.).

Если у вас Windows 95\98\ME и им подобные, то сделать это можно так:

Затем выбираете вкладку «Загрузочный диск» и нажимаете кнопку «Создать диск».

Чтобы загрузиться с дискеты, вставьте ее в дисковод, и перезагрузите компьютер. Если в вашей BIOS установлены настройки по умолчанию, то компьютер загрузится с дискеты. А загрузит он не что иное, как DOS. Ну а если компьютер загрузил Windows, то требуется изменить настройки BIOS. Но это уже другая тема…

И еще один полезный совет

В начале статьи я упоминал командную строку Windows. Этой строкой иногда удобнее пользоваться, чем щелкать по ярлыкам. Если на вашем компьютере слишком много разных программ, то весь рабочий стол «загажен» ярлыками. Это не только мешает любоваться красивыми «обоями» — найти с первого раза нужный ярлык будет непросто. А если еще мышь сломается? Поэтому программы, которыми вы часто пользуетесь, лучше запускать из командной строки. Однако в командной строке нужно писать полный путь к файлу, а это неудобно. Но данную проблему можно решить, например, сделав соответствующие изменения в файле AUTOEXEC.ВАТ. А если вы смутно представляете, что это за файл и зачем он нужен, то есть более простой способ. Например, у вас есть программа «MyProg», которая находится в папке «Progy» на диске «С». В этом случае запускать из командной строки ее нужно так:

Чтобы не писать полный путь, нужно сделать следующее:

  • Открываем папку «Progy»
  • Правой кнопкой мыши щелкаем на файле «MyProg»
  • Из меню выбираем пункт «Создать ярлык»
  • Созданный ярлык переименовываем (правая кнопка -> переименовать). Дадим ему имя, которое будет легко запомнить, например, «mp».
  • Этот ярлык перетаскиваем в папку WINDOWS (если Windows установлена у вас в другой папке, то в другую этот ярлык и перетаскиваем).

и нажимаем ENTER. См. также команду .

Если программа почему-то не запустилась, попробуйте перезагрузить компьютер. Если не поможет, значит, вы что-то сделали неправильно.

Основное преимущество командной строки в том, что с ее помощью можно довольно быстро запускать программы, не пользуясь мышью. Если вы не знаете, как открыть командную строку без мыши, приведу один способ для Windows, который подойдет и для большинства версий Windows:

  • Нажимаем клавишу Win (это вторая клавиша от пробела). Появляется меню «Пуск». Меню «Пуск» можно открыть и другим способом, нажав комбинацию клавиш CTRL + ESC.
  • Нажимая клавишу со стрелкой вверх (или вниз), выбираем пункт меню «Выполнить» и нажимаем ENTER.
  • Пишем в командной строке соответствующую команду и нажимаем ENTER.

Второй способ:

Просто нажимаем комбинацию клавиш WIN + R.

Если у вас старая клавиатура, которая не имеет клавиши WIN, то открыть меню ПУСК можно комбинацией клавиш CTRL + ESC.


С этим читают