У піратській копії Super Mario 3D All-Stars знайдено емулятори Wii, GameCube і N64
Збірник екшен-платформерів Super Mario 3D All-Stars вже витік у Мережу до офіційного релізу. Один з користувачів розібрав видання по шматочках і виявив цікаві речі: всі три гри емулюються і використовують API Vulkan.
Як розповів @ OatmealDome в Twitter, Super Mario Galaxy і Super Mario Sunshine запускаються на Nintendo Switch за допомогою якогось емулятора Wii і GameCube під назвою hagi - ймовірно, зробленого Nintendo of Eur Водночас Super Mario 64 працює на невідомому емуляторі Nintendo 64. Обидва емулятори використовують API Vulkan, що дивно, оскільки в Nintendo Switch центральний процесор - NVIDIA Tegra X1 (Vulkan побудований на технологіях AMD).
Цікаво, що Nintendo перекомпілювала оригінальний код Super Mario Galaxy так, щоб ЦП Nintendo Switch виконував його нативно, а ось все інше - ДП і звук - працює через емулятор.
Galaxy in particular is really interesting. It appears they recompiled the original code to run natively on the Switch CPU, but everything else (GPU/Audio) is running in the emulator.
Interesting trick!
— OatmealDome (@OatmealDome) September 15, 2020
Користувач також навів подробиці емулятора Nintendo 64: у ньому задіяний ROM Shindou Pack (закритий експлойт, що дозволяє здійснювати довгі стрибки), а патчі текстур, коду і перекладу тексту застосовуються до гри на льоту. Крім того, камера від першої особи має інвертоване управління порівняно з оригіналом. А ще @ OatmealDome знайшов у коментарі коду помилку: хтось замість слова'cannon'( гармата) написав'canoe'( каное).
Він також розповів, що меню Super Mario 3D All-Stars зроблено на движку LunchPack, який використовувався в іграх серії Splatoon, Super Mario Maker і Animal Crossing.
Interestingly, the code patches are done through Lua. The emulator takes over execution upon/after reaching a certain PC address and transfers control to a Lua script.
Also, whoever made the emulator configuration file made a typo. They spelled the word cannon as ""canoe"". pic.twitter.com/BMXx0GDdW1
— OatmealDome (@OatmealDome) September 15, 2020
Потенційно за допомогою коду Super Mario 3D All-Stars пірати можуть відтворити емулятори Wii, GameCube і Nintendo 64 для Nintendo Switch і вільно ними користуватися.
Super Mario 3D All-Stars надійде в продаж 18 вересня тільки на Nintendo Switch. Гру можна буде купити тільки до 31 березня 2021 року.