mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-10 13:33:24 -05:00
feat: alias xenianative and profile remaining sonic ports
This commit is contained in:
1 parent
3e6f30c697
commit
0f0d46848a
3 files changed
+125
No files matched your search
@@ -0,0 +1,81 @@
|
||||
emulator: Sonic 3 A.I.R.
|
||||
type: standalone
|
||||
core_classification: game_engine
|
||||
source: "https://github.com/Eukaryot/sonic3air"
|
||||
upstream: "https://github.com/Eukaryot/sonic3air"
|
||||
source_commit: "de0fd6a7c07b399c9a612cb7cb8d61b54cb339d1"
|
||||
profiled_date: "2026-10-04"
|
||||
display_name: "Sonic 3 - Angel Island Revisited"
|
||||
cores: []
|
||||
systems: [sonic3-air]
|
||||
|
||||
notes: |
|
||||
Sonic 3 - Angel Island Revisited by Eukaryot. The Oxygen Engine runs the
|
||||
decompiled game logic (lemon scripts) against the original Genesis ROM
|
||||
loaded at runtime; the ROM is not shipped with the engine.
|
||||
|
||||
ROM search order (ResourcesCache::loadRom):
|
||||
1. GameAppData/<SteamRomName>
|
||||
2. Last known ROM path (settings.json RomPath)
|
||||
3. Configured RomPath (config.json)
|
||||
4. SteamRomName in the install directory
|
||||
5. Steam library .../Sega Classics/uncompressed ROMs/<SteamRomName>
|
||||
6. User-picked file via native file dialog (filter *.bin)
|
||||
ref: Oxygen/oxygenengine/source/oxygen/resources/ResourcesCache.cpp:19-115,
|
||||
Oxygen/oxygenengine/source/oxygen/application/GameLoader.cpp:60-94,
|
||||
Oxygen/oxygenengine/source/oxygen/platform/PlatformFunctions.cpp:379-408
|
||||
|
||||
ROM validation (ResourcesCache::loadRomFile + checkRomContent):
|
||||
1. Read file into memory.
|
||||
2. applyRomModifications: XOR optional diff file, blank regions, then
|
||||
byte overwrites from the active RomInfo. The default S3K_Steam entry
|
||||
sets offset 0x2001f0 = 0x4a (patches the ROM header checksum field
|
||||
so the Steam dump matches the authoritative hash).
|
||||
3. Size check: must equal 0x400000 (4 MiB).
|
||||
4. Content check: Murmur2_64 of the full post-modification ROM must
|
||||
equal 0x344983ffcfeff8cb.
|
||||
ref: Oxygen/oxygenengine/source/oxygen/resources/ResourcesCache.cpp:152-282,
|
||||
Oxygen/sonic3air/source/sonic3air/ConfigurationImpl.cpp:33-47,
|
||||
Oxygen/sonic3air/oxygenproject.json:9-20
|
||||
|
||||
The engine ships four data packages built from Oxygen/sonic3air/data/
|
||||
(enginedata.bin, gamedata.bin, audiodata.bin, audioremaster.bin). Three
|
||||
are required and part of the release; audioremaster.bin is optional and
|
||||
downloaded on demand from https://sonic3air.org/download/audioremaster.bin
|
||||
(126 MB) when the user enables the remastered soundtrack.
|
||||
ref: Oxygen/sonic3air/oxygenproject.json:32-38,
|
||||
Oxygen/sonic3air/source/sonic3air/EngineDelegate.cpp:115-118,
|
||||
Oxygen/sonic3air/source/sonic3air/audio/RemasteredMusicDownload.cpp:48-62
|
||||
|
||||
Only one RomInfo is declared (S3K_Steam). The engine does not support
|
||||
on-the-fly Sonic 3 + Sonic & Knuckles lock-on concatenation at run time;
|
||||
the user must supply the 4 MiB combined ROM (as distributed with Sega
|
||||
Mega Drive & Genesis Classics / Sonic Origins).
|
||||
|
||||
files:
|
||||
- name: "Sonic_Knuckles_wSonic3.bin"
|
||||
category: game_data
|
||||
system: sonic3-air
|
||||
required: true
|
||||
size: 4194304
|
||||
validation: [size]
|
||||
source_ref: "Oxygen/sonic3air/source/sonic3air/ConfigurationImpl.cpp:39-46 (fillDefaultGameProfile), Oxygen/oxygenengine/source/oxygen/resources/ResourcesCache.cpp:262-277 (checkRomContent)"
|
||||
note: |
|
||||
Sonic 3 & Knuckles combined ROM as shipped on Steam (Sega Mega Drive
|
||||
and Genesis Classics / Sonic Origins). Expected size 0x400000 bytes.
|
||||
After the engine overwrites offset 0x2001f0 with 0x4a, Murmur2_64 of
|
||||
the whole buffer must equal 0x344983ffcfeff8cb (not CRC32; the hash
|
||||
is computed with rmx::getMurmur2_64 over mRom). The engine also
|
||||
accepts a user-picked .bin via the native file-selection dialog that
|
||||
satisfies the same post-modification check.
|
||||
|
||||
- name: "audioremaster.bin"
|
||||
category: game_data
|
||||
system: sonic3-air
|
||||
required: false
|
||||
source_ref: "Oxygen/sonic3air/source/sonic3air/EngineDelegate.cpp:118 (mDataPackages, Required=false), Oxygen/sonic3air/source/sonic3air/audio/RemasteredMusicDownload.cpp:48-62"
|
||||
note: |
|
||||
Remastered soundtrack package (approx 126 MB). Downloaded on demand
|
||||
from https://sonic3air.org/download/audioremaster.bin and reloaded
|
||||
via EngineMain::reloadFilePackage. Absent at first launch; the
|
||||
engine falls back to the emulated FM soundtrack.
|
||||
@@ -0,0 +1,43 @@
|
||||
emulator: Sonic CD Decompilation
|
||||
type: standalone
|
||||
core_classification: game_engine
|
||||
source: "https://github.com/Rubberduckycooly/Sonic-CD-11-Decompilation"
|
||||
upstream: "https://github.com/Rubberduckycooly/Sonic-CD-11-Decompilation"
|
||||
source_commit: "a99e16ad15f4f824c1b9f96a61b3f8576ab648e2"
|
||||
profiled_date: "2026-10-04"
|
||||
display_name: "Sonic CD (RSDKv3 Decomp)"
|
||||
cores: []
|
||||
systems: [soniccd]
|
||||
|
||||
notes: |
|
||||
Retro Engine v3 decompilation of Sonic CD (2011 Christian Whitehead
|
||||
mobile/Steam port). Single binary; one data pack per install.
|
||||
|
||||
CheckRSDKFile only fopen()s the pack; there is no signature test. If
|
||||
the file is absent the engine falls back to a loose Data/ + Bytecode/
|
||||
tree and, on first run, writes usage.txt describing the layout it
|
||||
wants.
|
||||
ref: RSDKv3/Reader.cpp:26-87 (CheckRSDKFile), RSDKv3/RetroEngine.cpp:280-321,
|
||||
RSDKv3/RetroEngine.cpp:328-363
|
||||
|
||||
settings.ini key Dev:DataFile overrides the default "Data.rsdk".
|
||||
ref: RSDKv3/Userdata.cpp:352-353,467-468, RSDKv3/RetroEngine.hpp:437
|
||||
|
||||
Bytecode detection probes two layouts in order after the pack opens:
|
||||
Data/Scripts/ByteCode/GlobalCode.bin (BYTECODE_MOBILE) or GS000.bin
|
||||
(BYTECODE_PC). Either lives inside Data.rsdk when the official pack
|
||||
is present.
|
||||
ref: RSDKv3/Reader.cpp:54-82
|
||||
|
||||
files:
|
||||
- name: "Data.rsdk"
|
||||
category: game_data
|
||||
system: soniccd
|
||||
required: true
|
||||
source_ref: "RSDKv3/RetroEngine.cpp:305 (CheckRSDKFile(dest)), RSDKv3/Userdata.cpp:352"
|
||||
note: |
|
||||
Sonic CD assets (RSDK v3 container). Shipped with the official
|
||||
Sonic CD release (Steam, iOS, Android, Sonic Origins). The engine
|
||||
opens the file with fopen(); content is validated by trying to
|
||||
load Data/Scripts/ByteCode/GlobalCode.bin or GS000.bin from
|
||||
inside, not by hashing the pack.
|
||||
@@ -10,6 +10,7 @@ display_name: "Xenia Canary (Xbox 360)"
|
||||
cores:
|
||||
- xenia
|
||||
- xenia-canary
|
||||
- xenianative
|
||||
systems:
|
||||
- microsoft-xbox-360
|
||||
analysis_date: "2026-03-26"
|
||||
|
||||
Reference in new issue
Block a user