Herman S.
02fccd9113
[Kernel/XMP] Add title-specific file I/O hooks for XMP volume sync
...
Some games persist BGM volume through their own save files but never
call XMPSetVolume. Add a TitlePatch system that intercepts NtReadFile/
NtWriteFile to apply game-specific logic as well as logic to identify
the memory location that the volume data is read into and monitor that
memory location for changes, updating XMP player volume if it changes
during gameplay.
Includes patches for known games with this issue:
Dead or Alive Xtreme 2 (544307D2), PGR4 (4D5307F9) and PGR3 (4D5307D1)
2026-03-09 08:59:15 +09:00
Gliniak
b5a7767aae
[XAM] Added some missing user settings.
...
Names put according to findings in: 54510896
2026-03-07 23:39:39 +01:00
Adrian
a7f1a3f18a
[XAM] Added profile and create content enumerator wrappers
2026-03-03 22:31:42 +01:00
Adrian
d4b295a578
[XAM] Fixed memcpy in XamProfileFindAccount
2026-02-28 22:45:32 +01:00
Gliniak
b2b1307822
[XAM] Improvements to XamUserCheckPrivilege
...
- Handle case when XamUserCheckPrivilege receives ANY USER
- Handle case when User is not live signed. This function returns NOT_LOGGED_IN for local accounts
2026-02-19 23:13:09 +01:00
Gliniak
9bfaff5040
[XAM] Fixed issue with XamContentCreate reassigning already assigned symlinks
2026-02-19 21:02:45 +01:00
Gliniak
8f5da619f9
[Kernel] Replaced Yield in XAudioGetVoiceCategoryVolumeChangeMask with NanoSleep
...
- Removed Yield in XamUserGetSigninState
2026-02-08 23:01:44 +01:00
Adrian
ef65c6761b
[XAM] Cleanup user settings header to reduce including issues
2026-02-07 22:29:29 +01:00
Gliniak
4dd0842087
[Kernel] Fixed incorrect amount of propagated notifications on boot
...
- Created dedicated method: IsUIActive
2026-01-31 19:24:10 +01:00
The-Little-Wolf
78d700af41
[XAM/USER] - Add missing broadcast to XamUserWriteProfileSettings
...
- Add missing broadcast to XamUserWriteProfileSettings
2026-01-30 19:06:47 +01:00
Gliniak
603355ae5b
[XAM] Fixed enumeration of achievements once again
2026-01-29 21:55:30 +01:00
Adrian
263e91b014
[XAM] Fixed XamUserCreateAchievementEnumerator starting index usage
...
Fixed Vancouver 2010 spamming XamUserCreateAchievementEnumerator
2026-01-20 08:30:25 +01:00
Gliniak
81656a9729
[XAM] Fixed issue with error code being returned for local session
2026-01-10 18:26:45 +01:00
Gliniak
dce4d38c0a
[XAM] Fixed crash related to incorrect buffer size in UserPlaylist enum
...
- Replaced unk_ptr in XMP_CREATE_USER_PLAYLIST_ENUMERATOR
- Simplified logic in achievements StringBuffer
2026-01-09 09:06:14 +01:00
The-Little-Wolf
2e61df76f0
[XAM/USER] - Implement XamUserIsParentalControlled
...
- Implement XamUserIsParentalControlled which is used in 584807F7
- Move some structs into xam.h
2026-01-05 20:30:37 +01:00
NicknineTheEagle
ccd5c50c74
[XAM] Count empty path as exit request in XamLoaderGetLaunchData
2026-01-05 20:04:59 +01:00
Adrian
53c0178766
[NET] Implemented XNetRandom
...
Fixed checkpoints in Gears of War 3
2025-12-30 23:30:53 +01:00
Adrian
594e8b8cdd
[XAM] Add null terminator in UserData for WSTRING
2025-12-24 22:33:49 +01:00
Gliniak
01aec51278
[XAM] Fixed invalid xuid being returned when only online XUID is requested
...
- Fixes stats loading of GoW3 savefile (and maybe checkpoints)
Co-authored-by: Adrian <78108584+AdrianCassar@users.noreply.github.com >
2025-12-24 22:12:01 +01:00
Gliniak
e786d5c8c3
[XAM] Fixed potantial crash while upserting setting related to missing SPA
...
- Fixed OOR asssertion caused by invalid amount of characters read by from_string
2025-12-22 18:47:34 +01:00
The-Little-Wolf
169fea978a
[XAM/XLIVE] - Set proper returns when offline
...
- Have XLive functions return their offline values.
- Have XGIUserReadStats return X_ONLINE_E_LOGON_NOT_LOGGED_ON
2025-12-22 10:31:29 +01:00
Adrian
925c59790f
[XAM] Cleanup parsing gamer tile key
2025-12-18 07:45:12 +01:00
The-Little-Wolf
a89513864c
[XAM/CONTENT] - Implement XamContentRegisterChangeCallback
...
- Implement XamContentRegisterChangeCallback
- Callback used subfunction within XContentInstall
2025-12-15 08:12:13 +01:00
Adrian
10bfc92d9a
[XAM] Stubbed XMPCreateUserPlaylistEnumerator
...
Fixed 545408C0 freezing at main menu.
2025-11-28 22:46:39 +01:00
Adrian
2997b91493
[XAM] Fixed misc returns
2025-11-28 18:30:01 +01:00
Gliniak
6437c498bd
[XAM] Allow savefile content being saved in common directory if requested
2025-11-28 11:19:18 +01:00
Gliniak
529e10f128
[XAM] Fixed license_mask config option not being applied to content (DLCs)
2025-11-24 19:29:50 +01:00
Adrian
e7d08b8e8e
[XAM] Improved writing struct for XEnumerateCrossTitle
2025-11-23 19:40:06 +01:00
Adrian
6783bea223
[XAM] Implemented SPA XMAT
2025-11-23 19:17:39 +01:00
Adrian
07501cfcb9
[XAM] Fixed XEnumerateCrossTitle corrupt items_returned_ptr
...
Fixed Halo: Reach from crashing when accessing The Armory
2025-11-22 22:29:05 +01:00
Adrian
d915dd808d
[XAM] Implemented SPA XRPT
2025-11-22 21:19:49 +01:00
Adrian
eb6221d631
[XAM] Added is_system_property util to UserData
2025-11-19 21:50:37 +01:00
Adrian
243178a310
[XAM] Implemented SPA Stats Views
2025-11-18 21:27:45 +01:00
Gliniak
c6be50165f
[3PP] Uplifted FMT to 12.1
2025-11-17 13:36:25 +01:00
Adrian
44c2882e9e
[XAM] Mark XamGetPrivateEnumStructureFromHandle as Implemented
2025-11-11 00:04:24 +01:00
Adrian
58a38ba290
[NET] Match WSAStartup behaviour to console
2025-11-10 20:12:26 +01:00
Adrian
e3f8ec70bb
[UI] Allow gamepad to open profile context menu
2025-11-09 16:33:51 +01:00
Adrian
48c854f783
[UI] Added online label for achievements unlocked online
2025-11-05 22:42:15 +01:00
Adrian
b800011265
[NET] Cleanup WSAStartup, setoption and ioctlsocket
2025-11-01 23:45:35 +01:00
The-Little-Wolf
921a33a798
[XAM/AVATAR] - expanding on stubs
...
- Add structs
- Sketchy implementation of XamAvatarGetInstalledAssetPackageDescription
- Stub XamAvatarSetManifest
- Have XAvatarGetAssets return X_E_FAIL in overlapped to allow [58410907](https://github.com/xenia-project/game-compatibility/issues/1848 ) to start match in netplay
- Adrian helped find lots of the unknowns and stub XamAvatarGetManifestLocalUser
Co-Authored-By: Adrian <78108584+AdrianCassar@users.noreply.github.com >
2025-10-31 09:35:45 +01:00
Gliniak
7738ff7225
[XAM] Fixed invalid gamertag in XamProfileCreateEnumerator and XamProfileFindAccount
2025-10-31 08:11:17 +01:00
Gliniak
e6828af5e7
[Base] Fixed issue with unnecessary null terminator after reading u16string
2025-10-30 21:57:08 +01:00
Gliniak
edd48cd83d
[XAM] Removed gamertag endianness swap
...
- Fixed issue with XamShowDeviceSelectorUI not being triggered in specific cases
- Partially fixed XamProfileCreate - Now it should create profile correctly
- Fixed XamProfileGetCreationStatus crash
2025-10-30 20:14:14 +01:00
The-Little-Wolf
eed4242059
[XAM] - xcontent_type fixes & more
...
- added unknown smc call
- xcontent_type corrections
- add transfer cable to device type
- Select gamer type in gamercard
2025-10-30 18:37:22 +01:00
Adrian
6a8193d360
[XAM] Added achievement types to log table
2025-10-30 17:58:21 +01:00
Adrian
dffba5a81e
[XAM] Implemented XamUserLogon
2025-10-29 22:34:38 +01:00
Herman S.
4af2fd6513
[Kernel] Add Linux socket support and ensure binding low ports is remapped.
...
Remapping ports on both Linux and Windows to ensure games boot under
wine as well.
2025-10-28 23:04:44 +01:00
Gliniak
344e8538e0
[XMP] Make volume atomic, fixed issue with invalid SetVolume received from guest
...
- Replaced invalid log
2025-10-28 21:48:10 +01:00
The-Little-Wolf
5d01ac0c45
[XAM/CONTENT] - Add missing flags to XCONTENT_DATA_INTERNAL
...
- add missing XCONTENT_DATA_INTERNAL flags
2025-10-24 20:48:47 +02:00
Adrian
88527a0b82
[XAM] Return pending in XamUserContentRestrictionCheckAccess
2025-10-24 09:23:24 +02:00