Добавить в корзинуПозвонить
Найти в Дзене
Журнал «Код»

Что такое эмулятор

Ваш пропуск в мир винтажных приставок и хакерских игрушек
В вашем детстве были приставки с интересными играми, в которые было бы здорово поиграть снова. Но ради нескольких игр и пары часов удовольствия неохота искать старую приставку или покупать современный ремейк. Что можно сделать: можно взять компьютер, запустить на нём эмулятор приставки, скачать файл с игрой и поиграть. При желании можно даже подключить к компьютеру джойстик, чтобы было всё совсем как по-настоящему. Вот сразу список эмуляторов на будущее: А пока вы распаковываете своего «Супер Марио», вот немного матчасти о том, как это работает. Что такое эмулятор Можно представить, что эмулятор — это переходник с определённой программы на другую программу или железо. Например: Пример. Допустим, мы взяли старый картридж от приставки, разобрали его, подключили через переходник к компьютеру и скопировали игру, которая была на этом картридже. Игра в этом случае — это программа, которая состоит из одного или нескольких файлов. Но 
Оглавление

Ваш пропуск в мир винтажных приставок и хакерских игрушек

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

Что можно сделать: можно взять компьютер, запустить на нём эмулятор приставки, скачать файл с игрой и поиграть. При желании можно даже подключить к компьютеру джойстик, чтобы было всё совсем как по-настоящему.

Вот сразу список эмуляторов на будущее:

А пока вы распаковываете своего «Супер Марио», вот немного матчасти о том, как это работает.

Что такое эмулятор

Можно представить, что эмулятор — это переходник с определённой программы на другую программу или железо. Например:

  • Переходник с программ для Windows на программы для Mac OS.
  • Переходник с игр для приставки на компьютер.
  • Переходник с программ, написанных для процессоров x86, на процессоры на базе ARM.
  • Временный переходник с программ, написанных для Android, на компьютер разработчика, чтобы тестировать написанное.

Пример. Допустим, мы взяли старый картридж от приставки, разобрали его, подключили через переходник к компьютеру и скопировали игру, которая была на этом картридже. Игра в этом случае — это программа, которая состоит из одного или нескольких файлов. Но сейчас они бесполезны без приставки: компьютер не знает, как с ними работать и как запускать.

Затем берём программу-эмулятор, которая создаёт внутри компьютера виртуальную мини-приставку со своими виртуальными драйверами. Эта виртуальная приставка уже знает, как работать с такими файлами, поэтому можно ей отдать файлы с игрой, чтобы она их запустила. В итоге на компьютере можно играть в старые игры точно так же, как на настоящей приставке.

Разобранный картридж от старой приставки.
Разобранный картридж от старой приставки.

Эмуляторы в играх

Существенная часть современных игр выходит на Windows. Если вы захотите поиграть в них на Mac OS, вам потребуется эмулятор Windows: это будет либо полноценная виртуальная машина Parallels или VMWare, либо частичный эмулятор вроде WINE.

У компании Valve есть площадка для игр Steam, на которой то и дело выходят игры для Mac. Некоторые из них написаны под Mac с нуля, но чаще это игры под Windows, которые обёрнуты в собственный эмулятор.

И есть великое множество эмуляторов ретроприставок, о которых мы писали в начале.

Эмуляторы во всём остальном

Самый известный сейчас пример эмулятора — Rosetta, которая позволяет запускать на новых макбуках с процессором Apple M1 старые программы, которые были написаны для архитектуры x86. С технической точки зрения Rosetta — не совсем эмулятор, скорее транслятор кода, но решает ту же самую задачу — берёт старые команды и на лету преобразует их в новый формат.

Некоторый софт зависит от определённого железа — например, железных ключей шифрования или специальных защитных дискеток. Например, такое ещё можно встретить в бухгалтериях, которые отправляют платёжки через клиент-банк. И если в компьютере нет дисковода или на руках нет флешки, можно использовать эмулятор — программа делает вид, что она дискетка, и клиент-банк забирает с неё все нужные ключи безопасности.

В старом музыкальном оборудовании могут использоваться дискеты, но они недолговечные и их неудобно считывать на современных компьютерах. Тогда используют эмуляторы дискет с использованием USB-флешек. Устройство делает вид, что оно — набор дискет на 1,44 МБ.

Эмулятор гибкого диска. Файлы хранятся на флешке
Эмулятор гибкого диска. Файлы хранятся на флешке

Всё ли можно эмулировать

Теоретически — да, если нет ограничений по мощности железа, которое для этого нужно.

На практике всё сложнее: некоторые устройства по вычислительной силе вплотную подбираются к возможностям компьютера, а иногда даже превосходят их. Например, на компьютере есть эмуляторы приставок PS2 и первого Xbox — они вышли 20 лет назад и по современным меркам в них совсем слабое железо. Но PS4 и Xbox One уже не эмулируются.

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