diff --git a/emulators/sonic2013.yml b/emulators/sonic2013.yml new file mode 100644 index 00000000..2c047183 --- /dev/null +++ b/emulators/sonic2013.yml @@ -0,0 +1,53 @@ +emulator: Sonic 1 & 2 (2013) Decompilation +type: standalone +core_classification: game_engine +source: "https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation" +upstream: "https://github.com/Rubberduckycooly/Sonic-1-2-2013-Decompilation" +source_commit: "a7f5195e21fdad7b75e4587e249013feeea9e6f3" +core_version: "1.3.3" +profiled_date: "2026-10-04" +display_name: "Sonic 1 & 2 (2013) (RSDKv4 Decomp)" +cores: [] +systems: [sonic-1-2013, sonic-2-2013] + +notes: | + Shared Retro Engine v4 decompilation driving the 2013 Christian Whitehead + mobile ports of Sonic the Hedgehog and Sonic the Hedgehog 2. One binary + per build; the game identity is derived from the GameConfig.bin inside + the loaded data pack (gameWindowText "Sonic 1" or "Sonic 2"). + ref: RSDKv4/RetroEngine.cpp:423, RSDKv4/ModAPI.cpp:428 + + CheckRSDKFile just fopen()s the data pack; there is no signature or + checksum test. The engine falls back to a loose Data/ + Bytecode/ tree + if the pack is absent, and writes a usage.txt that asks for a pack named + Engine.dataFile[0] (default "Data.rsdk"). + ref: RSDKv4/RetroEngine.cpp:296-331, RSDKv4/Userdata.cpp:251-263, + RSDKv4/RetroEngine.cpp:484-521 + + Up to four packs can be mounted (DataFile, DataFile2..4 in the Dev + section of settings.ini); the extras default to Data2.rsdk, Data3.rsdk, + Data4.rsdk once declared. + ref: RSDKv4/RetroEngine.hpp:373, RSDKv4/Userdata.cpp:396-408 + +files: + - name: "Data.rsdk" + category: game_data + system: sonic-1-2013 + required: true + source_ref: "RSDKv4/RetroEngine.cpp:321 (CheckRSDKFile(\"Data.rsdk\")), RSDKv4/Userdata.cpp:252" + note: | + Sonic the Hedgehog (2013) assets. Shipped with the official Sonic + Origins release and the delisted iOS/Android apps. Engine opens the + file with fopen(); content identity is read from the embedded + GameConfig.bin, not the pack hash. + + - name: "Data.rsdk" + category: game_data + system: sonic-2-2013 + required: true + source_ref: "RSDKv4/RetroEngine.cpp:321 (CheckRSDKFile(\"Data.rsdk\")), RSDKv4/Userdata.cpp:252" + note: | + Sonic the Hedgehog 2 (2013) assets. Shipped with the official Sonic + Origins release and the delisted iOS/Android apps. Same engine + filename as Sonic 1; the launcher selects which pack sits next to + the binary at run time.