![C:\Users\friolt\AppData\Local\Microsoft\Windows\INetCache\Content.Word\201.jpg](https://habrastorage.org/getpro/habr/upload_files/105/676/751/105676751b1e8067d87fe29698d7e6d9.jpeg)
Быстро оправдаюсь. Я понимаю, что информация, возможно, более поверхностная, чем требует того Хабр, но во многом мне не хватает квалификации описать все нюансы работы с PCeM, а на Хабре о нем вообще нет никакой информации, поэтому я надеюсь, что может кто-то возьмется в дальнейшем разобрать тему и показать насколь глубока кроличья нора…
Как правильно играть в старые игры? Ну конечно, самый лучший способ — приобрести старую железку. На неё накатить старую игру и получать удовольствие! Но старые железки потихоньку выходят из строя и становится всё тяжелей найти рабочую, да и не каждому захочется под рукой держать Pentium 2 400 просто для того чтобы играть во что-то из детства/юношества/молодости.
Очевидными кажутся следующие выходы:
GoG.
Врапперы.
Эмуляция.
При всей любви к Good Old Games, его можно отмести сразу по причине того, что не все эмулируется корректно. Последний пример, Аллоды 1 и 2, с мерцающим курсором под 10-кой.
Да и попытка поиграть в любимых 4-х героев обернулась ужасом. А чего уж говорить про более старые игры.
VMware Workstation Pro
Долгое время это была моя основная виртуальная машина, пока я не начал спускаться в «глубины ада». Конечно, некоторые игры работали с «нюансами», некоторые не работали, но это был самый простой и удобный способ держать на компьютере с десяток-другой игр эпохи ранних нулевых, и играть в них практически ни в чем себе не отказывая.
Но проблема VmWare Worksation в том, что это эмулятор своего собственного железа, которое не является полным аналогом компьютеров тех лет, из-за чего далеко не все работает корректно. Я не буду вдаваться в подробности, но вот некоторые из неудобств, которые не удалось ни победить, ни жить с ними.
![](https://habrastorage.org/getpro/habr/upload_files/a38/759/43a/a3875943a9d4b5d830572becebe633bf.png)
Deus Ex — что-то непонятное с гаммой.
Freelancer — постоянные вылеты.
Starlancer — отказывается запускаться.
Unreal — запускается без Glide.
Diablo ½ — только в окне.
Петька 3 (только в окне, в режиме дебага). Постоянные вылеты.
Warcraft 2 — на скоростях равных скорости света.
Аллоды 1 — только со скипом роликов.
Аллоды 2 — с иногда непонятными ускорениями до сверхсветовых.
Более того, чтобы заводить некоторые из игр, как бы смешно это ни казалось, на виртуальную машину приходилось ставить не «оригинальные образы», а уже «новоделы» из GoG. Которые не заводились на хост машине.
Что по итогу? VmWare Workstation Pro — Хорошая виртуальная машина, и в большинстве случаев её хватает за глаза. Особенно, если вы не хотите сильно заморачиваться с донастройкой игр, а хотите накатить образ и играть.
DDraw Wrapper
Ddraw.dll - это библиотека, связанная с "DirectDraw", частью DirectX от Microsoft, используемой для рендеринга 2D-графики в ранних версиях Windows. Многие старые игры и приложения, разработанные для Windows 95, 98 или даже XP, зависели от DirectDraw для отображения графики.
![https://static.wikia.nocookie.net/heroesofmightandmagic/images/b/b3/%D0%A1%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D0%BA%D0%B0%D1%80%D1%82%D0%B0_-_H4.png/revision/latest?cb=20201010182736&path-prefix=ru](https://habrastorage.org/getpro/habr/upload_files/890/2e8/919/8902e891989127614124c59c414a2a13.png)
Конечно, если у вас руки (а не лапки как у меня), можно взять различного рода wrapper'ы (тот же DDraw) и решить проблемы с частью двухмерных игр. На деле, это практически то, чем занимается сам GoG. Комплектует игры парой библиотек и позволяет запускаться им.
Но Ddraw Wrapper, как и подобные ему решает проблему только с частью игр. Конечно, не каждый захочет играть в столь древние игры и возиться с подключением библиотек, и проще будет просто отказаться от их воспроизведения. Но если вы маньяк или просто хотите поиграть во что-то из глубокого детства, то это ваш путь.
3хмерные игры на современном железе
С 3-мерной графикой есть определенные проблемы и нюансы.
Вот так, к примеру, выглядит Need For Speed 3.
![https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRLA09oPVwfO8ZRC4E9ZeiJ_99_KZ5ftPPYSYhT_wTRxLxUQwtebG_W7hrVYA2KeH9HqUM&usqp=CAU](https://habrastorage.org/getpro/habr/upload_files/fc8/3f7/f1e/fc83f7f1e74d991453df530a7337fce5.jpeg)
Вот так она выглядит на PS.
![Need for Speed III: Hot Pursuit скачать 1.0 на PS](https://habrastorage.org/getpro/habr/upload_files/e4a/b13/3e5/e4ab133e579dc4201e222728dda0525f.jpeg)
А вот так она должна выглядеть.
![https://i.postimg.cc/2SDDgD9r/bad.png](https://habrastorage.org/getpro/habr/upload_files/765/0bf/761/7650bf7617710aa51baafbbbe533052a.png)
И каждый раз, когда вы пытаетесь сэмулировать что-то на VMware Workstation Pro, вы с большой вероятностью эмулируете софтверный рендеринг, который хоть и позволяет запустить старую игру, но совсем не так, как она выглядела в те времена на самом деле.
Порой, глядя на старые игры через призму современности, кажется, что и графика там была неказистая, и вообще все было похоже на мыльные пиксели, и просто на TFT мониторах они замыливались, как и наше восприятие…
Но все дело в том, что до того как Direct3d стал единственным стандартом, каждый разрабатывал 3d во что горазд. И одним из направлений были 3д ускорители 3dfx.
И если вам в те годы посчастливилось стать обладателем Voodoo 2, то безусловно, вы жили в совершенно другом мире, с большим FPS, улучшенной фильтрацией текстур, и графикой, опережающей всё минимум на 3 года!
Glide Wrapper
![](https://habrastorage.org/getpro/habr/upload_files/ad0/b22/bf6/ad0b22bf61bc7138ce766f0bf575511d.png)
Глядя на скрины старых игр и сопоставляя их с собственным восприятием, захотелось воспользоваться Glide Wrapper, который позволяет сегодня насладиться играми так, как они должны были выглядеть.
![Redguard:Glide Differences - The Unofficial Elder Scrolls Pages (UESP)](https://habrastorage.org/getpro/habr/upload_files/f58/09e/701/f5809e701a7ffa8d8af69537c88ec7cb.png)
Да, признаюсь честно… использовать Glide для какого-нить Redguard — извращение. Но вот Unreal — совсем другое дело. Да и старый добрый NFS хоть и начинает бросаться мылом в экран, все же превращается из набора пикселей во что-то более удобоваримое.
Да-да, я знаю, примеров не так много. Я не упомянул System Shock. Не упомянул Tomb Raider, которые визуально практически не отличаются от софтверного рендера (шутка).
![](https://habrastorage.org/getpro/habr/upload_files/9c2/f04/19a/9c2f0419a769cc3cf99124d8a58f931f.png)
Но проблема в том, что даже имея Nglide или другие врапперы, позволяющие запускать игры на современном железе, у нас все равно будет целая тонна проблем с совместимостью.
Здесь и разность скоростей. И то, что порой его недостаточно. И что не везде Api работает. А где-то картинка все равно идет с артефактами, и не так, как это было тогда.
UPD: С другой стороны, тот же Nglide для карточек Nvidia умеет творить чудеса, и запускать игры с неплохим таким апскейлингом… Но все ещё не все.
Интерлюдия
А вот теперь давайте просто представим. Что нам для того, чтобы поиграть во что-то старое, нужно:
Виртуальная машина со старой осью.
Врапперы.
Фиксы.
И под каждую игру придётся возиться индивидуально. Где-то будет достаточно виртуалки. Где-то дистрибутива с ГОГа, а где-то и всё это вместе не поможет.
А ещё лучше — собрать машину тех лет, и работать исключительно с ней.
Вот теперь точно будем эмулировать все игры! PCeM 17!
![C:\Users\friolt\AppData\Local\Microsoft\Windows\INetCache\Content.Word\9456.jpg](https://habrastorage.org/getpro/habr/upload_files/563/614/292/563614292423acad8eeeb93e51352fcd.jpeg)
Но есть альтернатива… Эмулятор ПК тех лет PCeM V17. На деле, я узнал об этом софте, ещё во времена его 10-ой версии, году в 15-ом. Но то, что хорошо эмулируется на Ryzen 7 5700x, отвратно себя чувствовало на i3 2120.
В общем PCeM — это эмулятор персонального компьютера на базе X86 (с недавних пор ещё и Сommodore), который умеет полностью воспроизводить поведение компьютера тех лет (вплоть до P4).
В отличие от костылей, вроде врапперов и виртуальных машин, здесь эмулируется поведение самого железа, что позволяет:
Установить на него соответствующую ОС.
Установить соответствующие драйвера.
Запускать игры, не эмулируя их, а так, как они должны были работать.
Насколько я помню, эмуляция voodoo и даже voodoo в SLI там появилась далеко не сразу.
Как пользоваться PCeM
Я беру фенилуксусную кислоты из бочки с синей пчелой. Суть инструкции
![](https://habrastorage.org/getpro/habr/upload_files/fa5/eec/6da/fa5eec6daa0a069866137774419cb91b.png)
Ну что… надеюсь единственное полезное, что будет в Этой статье.
Берем Эмулятор по этой ссылке.
![](https://habrastorage.org/getpro/habr/upload_files/e0a/9ae/da0/e0a9aeda05d34ce35796897901ba212f.png)
Дальше нам нужны ROMы железа, которое мы собираемся эмулировать. Его берем на гитхабе (что-то там как и с другими эмуляторами, нельзя распространять образы реального железа, потому что оно защищено законом).
Драйвера берем здесь.
ОС берем… ну с этим проблем возникнуть не должно.
![](https://habrastorage.org/getpro/habr/upload_files/1f8/cf6/be0/1f8cf6be09daabce059756986a537e04.png)
Дальше все просто… открываем портал в 90-е, и как будто бы мы собрали новый комп, берем и все устанавливаем.
![](https://habrastorage.org/getpro/habr/upload_files/69f/e75/085/69fe750851a429137f6f7f1b8601e35d.png)
![](https://habrastorage.org/getpro/habr/upload_files/89a/ea4/f63/89aea4f63542985d2e3b8c5f5d6101d1.png)
![](https://habrastorage.org/getpro/habr/upload_files/19d/a05/6f8/19da056f8fb17437fa1992a6e0426331.png)
Выбираем характеристики машины в PCeM.
Накатываем соответствующие ROM.
Размечаем виртуальный хард.
На него накатываем вполне настоящую ОС.
Ставим драйвера… И теперь устанавливаем все игры.
![](https://habrastorage.org/getpro/habr/upload_files/b3e/504/eaf/b3e504eaf51ceff2823308c29e8e692a.png)
Здесь есть единственный важный нюанс, который может создать определенные проблемы, когда вы впервые столкнетесь с PCeM.
Т. к. он эмулирует железо, на которое установлено реальное оборудование и ОС, то в случае, если вас не устроит собранная железка и вы захотите её поменять, то сделать это на лету не получится… Вы же не можете поменять процессор в рамках одной материнской платы, не переустанавливая Windows?
Ну а дальше, все ограничивается только вашей фантазией и потребностями.
Что могу сказать сразу?
![](https://habrastorage.org/getpro/habr/upload_files/55d/17a/226/55d17a226d1187cb6b5024c2fac99780.png)
И Starlancer, и Diablo, и Unreal на глайде, и даже… о ужас… Return to Krondor завелись с полоборота.
![](https://habrastorage.org/getpro/habr/upload_files/7f1/300/245/7f1300245e87fde98da7bbce47cdb6bf.png)
Конечно, специалисты заметят, что PCeM умеет делать и доисторическое и более свежее железо, и при желании можно собрать что угодно, вплоть до Pentium 2. А можно и первый 8088, с монохромным дисплеем.
![](https://habrastorage.org/getpro/habr/upload_files/ffd/0d6/259/ffd0d6259a910cbb47873a59b686cc10.png)
Pentium 2 — золотая середина, т.к. уже с появлением Pentium 3 многие вещи стандартизировались и куда легче переносятся на современные ПК без лишних танцев с бубном.
А что DosBox?
DosBox, это, безусловно, хорошая альтернатива PCeM. Более того, распространенная и работающая даже под ОС Android. Но у неё, как и у VmWare Workstation, схожий порядок проблем, и узнать, что и в каком режиме запустится, можно только методом «тыка».
В случае с PCeM вы ограничены только своей фантазией и мощностью железа. Ну и ещё наличием драйверов.
Итог
Со 100% вероятностью я уверен, что найдутся люди, и которые знают где лежат библиотеки под каждую старую игру, и как настроить враппер и/или виртуальную ОС так, чтобы на ней все летало. И что вообще PCeM это глупо и избыточно.
При большом желании можно поднять эмулятор первой PS в два клика, и с её помощью закрыть практически всю необходимую библиотеку ретро-игр.
Но что самое главное, PCeM — это относительно простой способ заиметь у себя пускай виртуальную, но ретро-машину, позволяющую запускать игры 25-летней давности такими, какими они задумывались, и что самое главное… настроив подобную машину единожды, не придётся возиться с совместимостями и настройками под каждую отдельную игру.
В самом крайнем случае, конечно, можно собрать несколько виртуальных компьютеров, или вообще заняться каким-то ультра-ретро-геймингом, запуская первый Space Quest в оригинальном режиме.