From 05b08d6e392ab0e32962752d7e2e91d8278a32e8 Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Fri, 4 Sep 2026 15:50:10 +0200 Subject: [PATCH] chore: recale xenia-edge onto the revision it describes Refs written at the new line numbers while the pin still named the old revision left the profile describing two trees at once. The gpu cvar is the clearest case: at the pin it sits in xenia_main.cc, at the revision this profile now names it moved to emulator.cc beside the code that reads it, and citing one against the other reads as a blank line. The rest is a plugins.toml path join that stopped embedding a backslash, and a cvar description that says DXIL validator where it said DXIL shader compiler. 31 refs, all anchored. --- emulators/xenia-edge.yml | 55 ++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/emulators/xenia-edge.yml b/emulators/xenia-edge.yml index c46cfe47..492a9112 100644 --- a/emulators/xenia-edge.yml +++ b/emulators/xenia-edge.yml @@ -3,7 +3,7 @@ type: standalone core_classification: community_fork source: "https://github.com/has207/xenia-edge" upstream: "https://github.com/has207/xenia-edge" -source_commit: "2fe66280ac26502261414703bc7187b77dacc8d3" +source_commit: "62225fd74061634b17f036b87e20558bbadf05f9" profiled_date: "2026-08-10" core_version: "edge" display_name: "Xenia Edge (Xbox 360)" @@ -22,13 +22,13 @@ notes: | into a xenia-edge component and executes bin/xenia_edge. No Xbox 360 system file is read. xboxkrnl, xam and xbdm are C++ HLE modules - registered at startup (emulator.cc:388-397), the XEX2 retail and devkit AES - keys are constant arrays in the binary (xex_module.cc:58-63), and every + registered at startup (src/xenia/emulator.cc:382-391), the XEX2 retail and devkit AES + keys are constant arrays in the binary (src/xenia/cpu/xex_module.cc:61-66), and every XConfig setting is synthesised from cvars and constants by BuildSetting - rather than read from a flash image (xconfig.cc:87-246, 259-272). When the + rather than read from a flash image (src/xenia/kernel/xconfig.cc:87-246, 259-272). When the launched title is itself a system title the kernel resolves xam.xex, then $flash_xam.xex, through the guest filesystem under the \SystemRoot symlink - pointing at that title's own directory (emulator.cc:718-733); that is a + pointing at that title's own directory (src/xenia/emulator.cc:737-752); that is a companion module inside the dump the user launched, not a host-side lookup. The fork's data ships inside the executable. assets/font/Inter-VariableFont @@ -36,31 +36,31 @@ notes: | assets/locale catalogues are compiled to .mo at configure time and bundled, with no .mo written next to the binary (src/xenia/ui/CMakeLists.txt:48-76). The UI font is read from that buffer with AddFontFromMemoryTTF - (imgui_drawer.cc:367-377), and xe::EmbeddedBundle decodes the SDL controller - mappings (sdl_input_driver.cc:148-165), the canary game patches - (patch_db.cc:304-310), the game-compatibility master.json - (game_compat_db.cc:47-58) and the x360db games.json (game_title_db.cc:50-60). + (src/xenia/ui/imgui_drawer.cc:378-388), and xe::EmbeddedBundle decodes the SDL controller + mappings (src/xenia/hid/sdl/sdl_input_driver.cc:148-165), the canary game patches + (src/xenia/patcher/patch_db.cc:304-310), the game-compatibility master.json + (src/xenia/app/game_compat_db.cc:47-58) and the x360db games.json (src/xenia/app/game_title_db.cc:50-60). Three cvars accept a file and name none by default, so nothing is expected at a fixed path: custom_font_path falls back to the embedded Inter - (imgui_drawer.cc:39-44, 353-386), mappings_file to the embedded controller DB - (sdl_input_driver.cc:35-38, 148-152), achievement_sound_path leaves the - achievement sound silent (audio_helper.cc:21-24, 38-52). For glyphs the + (src/xenia/ui/imgui_drawer.cc:39-44, 364-397), mappings_file to the embedded controller DB + (src/xenia/hid/sdl/sdl_input_driver.cc:35-38, 148-152), achievement_sound_path leaves the + achievement sound silent (src/xenia/ui/audio_helper.cc:21-24, 38-52). For glyphs the embedded font lacks, the host font comes from the OS: tahoma.ttf and msgothic.ttc out of the Windows fonts folder, or the fontconfig sans-serif and - CJK matches on Linux (imgui_drawer.cc:388-470, 472-556). + CJK matches on Linux (src/xenia/ui/imgui_drawer.cc:399-481, 483-567). Everything under the storage root is written by the emulator or dropped in by - the user: xenia-edge.config.toml and per-game .config.toml (config.cc:43-46), - patches/*.patch.toml read on top of the embedded set (emulator.cc:383, - patch_db.cc:34-58), plugins//plugins.toml behind allow_plugins, - which defaults false (plugin_loader.cc:16-38, 58-72), content, cache0, cache1, - scratch and mu (emulator.cc:1412-1471). portable.txt next to the executable + the user: xenia-edge.config.toml and per-game .config.toml (src/xenia/config.cc:43-46), + patches/*.patch.toml read on top of the embedded set (src/xenia/emulator.cc:377, + src/xenia/patcher/patch_db.cc:34-58), plugins/<title id>/plugins.toml behind allow_plugins, + which defaults false (src/xenia/patcher/plugin_loader.cc:16-38, 58-72), content, cache0, cache1, + scratch and mu (src/xenia/emulator.cc:1442-1501). portable.txt next to the executable keeps the storage root there instead of the user folder - (src/xenia/app/xenia_main.cc:556-570). + (src/xenia/app/xenia_main.cc:524-538). On Windows the Direct3D 12 and Vulkan runtimes are not in the release zip, - which holds only the build output (.github/workflows/build.yml:416-426). The + which holds only the build output (.github/workflows/build.yml:500-510). The emulator looks for them in D3D12/ and Vulkan/ beside the executable and offers to download pinned archives from Microsoft and LunarG, gated by d3d12_install_missing_runtime, vulkan_install_missing_loader and @@ -79,7 +79,7 @@ files: system: microsoft-xbox-360 required: true description: "DXIL signer and validator from DirectX Shader Compiler 1.9.2602.24" - source_ref: "src/xenia/ui/d3d12/d3d12_provider.cc:236-260, src/xenia/gpu/d3d12/pipeline_cache.cc:113-121, src/xenia/ui/redist_installer_wx.cc:79-86, 120-122, 174-186, 588-621" + source_ref: "src/xenia/ui/d3d12/d3d12_provider.cc:227-236, src/xenia/gpu/d3d12/pipeline_cache.cc:105-113, src/xenia/ui/redist_installer_wx.cc:79-87, 120-122, src/xenia/ui/redist_installer_wx.cc:174-182, src/xenia/ui/redist_installer_wx.cc:582-614" note: >- The only shader library the backend still needs. Loaded by full path from the D3D12 folder next to the executable, then by plain name from the @@ -87,8 +87,9 @@ files: D3D12/. D3D12 rejects an unsigned shader, so PipelineCache::Initialize stops when IsSignerAvailable() is false and asks for a recent dxil.dll in the D3D12 folder; that failure propagates to "Failed to setup - graphics_system!" (src/xenia/emulator.cc:427-431). Windows defaults to - gpu = "d3d12" (src/xenia/app/xenia_main.cc:70) and the backend factory + graphics_system!" (src/xenia/emulator.cc:421-428). Windows defaults to + gpu = "d3d12" (src/xenia/emulator.cc:109, the cvar having moved + there beside the code that reads it) and the backend factory only falls back when D3D12GraphicsSystem::IsAvailable() is false, which tests the D3D12 API itself, not the redistributable. Taken from bin/x64/dxil.dll in dxc_2026_05_27.zip of DirectXShaderCompiler release @@ -102,7 +103,7 @@ files: system: microsoft-xbox-360 required: true description: "DirectX 12 Agility SDK 1.619.3 runtime" - source_ref: "src/xenia/ui/d3d12/d3d12_provider.cc:325-336, src/xenia/ui/windowed_app_main_win.cc:25-28, src/xenia/ui/redist_installer_wx.cc:87-93, 123-126, 631-676" + source_ref: "src/xenia/ui/d3d12/d3d12_provider.cc:263-274, src/xenia/ui/windowed_app_main_win.cc:25-28, src/xenia/ui/redist_installer_wx.cc:88-94, 123-126, src/xenia/ui/redist_installer_wx.cc:623-668" note: >- The binary exports D3D12SDKVersion 619 and D3D12SDKPath ".\D3D12\", so d3d12.dll loads it at the first device creation. The provider checks for @@ -118,7 +119,7 @@ files: system: microsoft-xbox-360 required: false description: "Direct3D 12 debug layer from Agility SDK 1.619.3" - source_ref: "src/xenia/ui/d3d12/d3d12_provider.cc:357-385, src/xenia/ui/redist_installer_wx.cc:127-134, 678-723" + source_ref: "src/xenia/ui/d3d12/d3d12_provider.cc:295-323, src/xenia/ui/redist_installer_wx.cc:127-134, src/xenia/ui/redist_installer_wx.cc:670-715" note: >- Reached only when d3d12_debug is set, which defaults false (src/xenia/ui/d3d12/d3d12_provider.cc:23). Fetching it re-extracts D3D12Core.dll alongside, @@ -132,7 +133,7 @@ files: system: microsoft-xbox-360 required: false description: "Khronos Vulkan loader 1.4.350.0 for the Vulkan backend on Windows" - source_ref: "src/xenia/ui/vulkan/vulkan_instance.cc:84-99, src/xenia/ui/redist_installer_wx.cc:95-105, 138-142, 725-764" + source_ref: "src/xenia/ui/vulkan/vulkan_instance.cc:84-99, src/xenia/ui/redist_installer_wx.cc:96-106, 138-142, src/xenia/ui/redist_installer_wx.cc:717-756" note: >- Read only when the Vulkan backend is selected, and the plain-name load that follows finds the copy GPU drivers install system-wide, so the folder @@ -149,7 +150,7 @@ files: required: false validation: [signature] description: "Microsoft Visual C++ 2015-2022 redistributable installer" - source_ref: "src/xenia/app/xenia_main.cc:578-582, src/xenia/ui/redist_installer_wx.cc:144-172, 379-409, 766-875" + source_ref: "src/xenia/app/xenia_main.cc:546-550, src/xenia/ui/redist_installer_wx.cc:144-172, src/xenia/ui/redist_installer_wx.cc:373-403, src/xenia/ui/redist_installer_wx.cc:758-867" note: >- Not loaded by the emulator. The runtime version is read from HKLM\SOFTWARE\Microsoft\VisualStudio\14.0\VC\Runtimes\x64, and when it is