XenonRecomp
XenonRecomp (Ксеноновый Рекомпилятор, ХреноРекомп, Xbox360-to-C++-Transpiler-of-Doom, КостыльКомпилятор, ФранкенштейнВосставший, Yet Another Xbox 360 Recompilation Shit) — это, мать его, костыль на костыле, погоняемый костылём. Предназначен для тех, кто настолько ленивая жопа, что не может написать нормальный эмулятор для Xbox 360, и вместо этого решил перекомпилировать игры в нативный код. Да-да, ты не ослышался, %username%, именно перекомпилировать. Потому что, ну а хули, так же проще, правда?
Суть такова[править]
Эта вундервафля берет бинарник Xbox 360 (XEX, если ты в теме) и превращает его… в C++ код. Не, не спеши блевать радугой, это не декомпилятор. Это, скорее, транслятор ассемблера PowerPC в нечто, отдаленно напоминающее C++. Получившийся Франкенштейн затем можно скомпилировать под x86 (пока что только под него, соси бибу, ARM-фаг!). Авторы сего поделия вдохновлялись N64: Recompiled, такой же ебаниной, но для Nintendo 64. Видимо, в дурке, где они лежали, был день открытых дверей.
Как этим пользоваться[править]
Для начала тебе понадобятся:
- XenonAnalyse: Эта хрень анализирует XEX-файл и высирает TOML-файл с таблицами переходов.
- XenonRecomp: Эта поебень, собственно, и занимается перекомпиляцией. Ей нужен TOML-файл с настройками и путь к файлу `ppc_context.h`.
Сборка[править]
Тебе понадобятся CMake 3.20+ и Clang 18+. И да, забудь про другие компиляторы, они соснули. Эта хрень использует специфичные для Clang интринсики и техники, так что мимо.