Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Хочу научиться портировать старые игры на новые устройства. Какой язык программирования нужно выучить для этого? Понадобится ли что-то еще?

ПрограммированиеИгрыКомпьютеры
Сослан М.
  · 956
Анонимный ответ14 октября 2019

Думаю, нужно не столько выучить язык программирования (этого никогда не достаточно, в этом минимум задач), а нужно изучить способы эмуляции окружения, в котором изначально запускалась программа, окружением является, в том числе, операционная система и ее API. Игра не может быть запущена по трем причинам, каждую из которых нужно методично решить:

  1. У вас нет исполняемых файлов игрых
  2. Игра разработана для другоо процессора, она никогда не заработает на вашем.
  3. Игра требует оболочки API операционной системы, которой у вас нет (и обычно не будет в любом случае)
    Язык C++ (или С) выбирается лишь потому, что он полностью нативный, т. е. напрямую компилируется в инструкции процессора, которые вам и предстоит эмулировать. Пока это основной и единственный универсальный язык для тех, кто работает с железом.

Так что я бы начал с ответа на вопросы:

  1. Существует ли сделанный ранее порт ОС и ее окружения PS1 на архитектуру x86? 
  2. Какие самые известные проекты портов PS1 на x86/Windows - как они работают? Кто выкладывал такие проекты на Github?
  3. Виртуальный CPU Qemu может помочь, есть подходящая мне архитектура, как у игры?
    Писать под Apple на C++ и придется. Системные фреймворки доступны через Objective C++, то есть на маке вы пишите с расширениями языка. Но без ответа на те вопросы не ясно, какой объем работы.

P.S. если поискать в Google "MSG1 on PC", то уже рабочий порт был создан. Можете написать автору с Reddit - как и что нужно изучить, что бы понимать задачу и решение. Если вы будете спрашивать у людей в интернете коротко и уважительно, то получите много информации, которой нет на поверхности. Кстати, почему я заговорил про хакерство - потому что это (hacking) как раз про ковыряние неизведанного, где требуется опыт, его черпать прямо со дна. Если вы обладаете английским, то много можно найти знающих людей в Twitter, что бы спросить в личке - у тех, кто уже это делал.

2 эксперта согласны
А вот по другому. Что мне необходимо изучить и найти( я типо про исходники и тд) чтобы портировать игры которые... Читать дальше