Встречаются два программиста.
— У меня проблемы с досом.
— Что, виснет?
— Нет, дасморк.
(Анекдот)
В современные игры я практически не играю. Все-таки слишком много времени требует иногда прохождение. Когда-то играл достаточно много, поэтому «Судьба хита» — рубрика горячо любимая, ностальгическая. Еще, правда, Palm поностальгировать позволяет — об инкарнациях King's Bounty я уже писал. А иногда — не позволяет. Тогда приходится сгонять с компьютера жену и на пару часов покидать текущую реальность. Ради игр, которым лет по 10. А то и поболе... Сами понимаете, рассчитаны они под DOS. Приходится выкручиваться.
Способ 1. Несовместимая совместимость
Во-первых, совместимость с DOS-овскими приложениями обещали нам разработчики Windows. Недавно в веблоге одного из них прочел воспоминание об одном из эпизодов при разработке Windows 95: после того как выяснилось, что одна из игр под новой операционной системой работать не будет из-за ошибки в игре, в Windows 95 внесли код, который специальным образом обрабатывал ситуацию, когда эта игра запущена.
Это интересно: откуда вообще берутся проблемы с совместимостью? Под DOS программе доступны все ресурсы — система однозадачная. Под Windows приходится учитывать существование других программ. А еще под DOS был прямой доступ к возможностям железа — и разработчики этим активно пользовались, чтобы добиться лучшего изображения или меньших требований к ресурсам.
Но Windows 95 сама уже скоро отметит 10-летний юбилей, а совместимость со старыми играми становилась за эти 10 лет все хуже и хуже. Очень быстро была утрачена возможность DualBoot, когда можно было грузить на выбор DOS или Windows, потом многие крупные компании сделали версии, «заточенные» под Windows, — в общем, в ряде аспектов программировать игры под Windows проще, особенно после появления DirectX.
Есть еще одна проблема: на современных мониторах в 17 и более дюймов чудеса графики 320 на 200 выглядят угрожающе — уж больно пиксели велики. А в окно, как правило, старую игрушку не засунешь.
Способ 2. Вставьте дискету в дисковод A:...
Совершенно очевидно, что лучший DOS — это честный DOS. Для большинства игр вполне хватит (а то и многовато будет) 486-го процессора, видеокарты мегабайта так на 2, винчестера мегабайт на 500... Прикупаем еще переключатель, чтобы пользоваться одним комплектом мыши-клавиатуры-монитора, собираем «ностальгический компьютер» и радуемся жизни.
Обычно так просто не получается — ведь он требует места в квартире не меньше, чем актуальный. Поэтому хочется ставить не настоящий, а виртуальный ностальгический компьютер. Для этого используются разнообразные эмуляторы.
Самый известный эмулятор — VMWare (www.vmware.com). Его и многие другие упомянутые в статье программы можно найти на нашем компакт-диске.
DosBox |
Устанавливается он легко. Дальше для практических целей можно считать, что появился у вас еще один компьютер. Ставим на него любимую операционную систему — и вперед. Звук есть, графика поддерживается, про дисковод и CD-ROM вообще молчу. Работает VMWare под очень многими операционными системами, хотя факта работы под Windows большинству читателей хватит.
Однако не все так просто. Во-первых, VMWare — продукт коммерческий. Скачать его можно на пробу и пробовать в течение месяца. А во-вторых — где вы сейчас возьмете дистрибутив DOS?
На заметку: FreeDos позиционируется как совместимая с MS-DOS на 100%. Во всяком случае, разработчики к этому стремятся. Помимо прочего, она умеет понимать длинные имена, что может оказаться очень удобным, и файловую систему FAT32. Доступна в сети по адресу www.freedos.org.
Надо сказать, что VMWare — не единственный полнофункциональный эмулятор компьютера. Есть, например, Microsoft Virtual PC (www.microsoft.com/windows/virtualpc/default.mspx), есть некоммерческие qemu (www.qemu.org) и bochs (bochs.sf.net). В комплекте последнего есть и стартовый диск с уже установленной FreeDos.
Способ 3. Глупый пингвин робко прячет
Я думаю, мало кого удивит тот факт, что Псмит не любит Линукс. В общем-то — и не должен. Впрочем, однажды я видел, как он признал пользу от Линукса в бытовых (а не серверных) условиях.
DosEmu |
DOSEmu — традиционный выбор тех, кто использует Linux, но к DOS-овским программам неравнодушен. Отличается он традиционной для Линукса настройкой. Более древние версии странно работали с экзотической по нынешним временам графикой типа VGA 16 цветов. Да, и нигде, кроме Линукса, работать не будет. Правда, в этом случае дистрибутива DOS вам не потребуется — в поставку входит диск с FreeDos.
Собственно DOS при этом поставить тоже можно.
Впрочем, в необходимости ставить Линукс тем, кто этого до сих пор не сделал, это не убеждает. На всякий случай — берется он на www.dosemu.org и входит во все популярные дистрибутивы.
Способ 4. Финальная точка
Не могу выдать традиционную ЛКИ-шную оценку остальным продуктам, но описанному в этой части статьи я с удовольствием дал бы корону.
Я просто скачал из Сети инсталлятор, поставил и прочитал короткую и внятную инструкцию. После этого рассказал, какие действия предпринимать при начале очередного сеанса — свелось это к указанию, где лежат игры и как будут называться диски.
А потом запустил Battle Bugs — замечательную игру 1993 года выпуска — и никаких проблем не ощутил. И с другими играми проблем не встретил. Правда, терпения дочитать список всех поддерживаемых игр у меня не хватило — их несколько тысяч.
Это интересно: многие проекты эмуляторов DOS делались для того, чтобы поиграть в любимые игры на современных компьютерах. Например, DodGE — DOS Game Emulator — прекративший развиваться несколько лет назад.
Живет это маленькое (1 мегабайт!) чудо по адресу dosbox.sourceforge.net (и на нашем диске, конечно). Последняя версия — 0.6.3.
Есть версии, рассчитанные под Windows, и под Linux/FreeBSD, и даже под MacOS. Есть русская локализация, чем остальные продукты не балуют.
Дистрибутива DOS ему опять-таки не требуется.
Недостатков пока не обнаружено — правда, коллекцию старых игр я еще протестировал далеко не в полном объеме.
Ох, как давно я не играл в Arkanoid...