Commit Graph

1818 Commits

Author SHA1 Message Date
Gliniak
57da74814b [XAM] Fixed issue with missing DLCs due to invalid XUID 2025-01-12 17:01:20 +01:00
The-Little-Wolf
a77213dcdb [Xam/Xam_Profile] - Stub XamProfileCreate and more
- Move XamProfileFindAccount
- Leave notes for XamProfileOpen
- Stub XamProfileCreate
2025-01-12 16:31:39 +01:00
Gliniak
09be7e874a [All] Fixed multiple issues during build on Linux
- Added some fixes introduced by RodoMa92 in PR198

- Lack of AVX2 extension (should be done differently in the future)
- Disable deprecated-volatile warning
- Added missing override in posix EventInfo, ImGui notification class and XContent class
- Removed not used XAudio2.h include in XMP
- Fixed missing switch-case in XObject
- Added fugly template in native_list.h
- Fixed multiple smaller issues
2025-01-10 21:41:45 +01:00
Gliniak
cdd3f161fa [XAM] Fixed invalid param count in XNetUnregisterKey 2025-01-10 21:20:06 +01:00
Gliniak
2253cb978d [XAM] Added stub for: Refresh 2025-01-10 13:34:10 +01:00
Gliniak
b50e32ab45 [XAM] Removed Windows specific code from xam_info.cc 2025-01-09 19:43:15 +01:00
Gliniak
4620fa93d8 [XAM] Added XamProfileOpen support and xam_profile.cc dedicated file for XamProfile exports
- Modified implementation of MountProfile to allow custom mount paths
2025-01-08 22:12:41 +01:00
The-Little-Wolf
57eeed86b7 [XboxKrnl/xconfig.cc] - Stub ExSetXConfigSetting and ExReadModifyWriteXConfigSettingUlong
- Stubbing ExSetXConfigSetting and ExReadModifyWriteXConfigSettingUlong
- ExSetXConfigSetting is a simple value swap from buffer_ptr
- ExReadModifyWriteXConfigSettingUlong handles combined values with buffer_ptr holding the replacement values
- added log to show what the new setting should be and what is being replaced
- To Implement would need to convert settings to strucs
2025-01-07 19:52:11 +01:00
The-Little-Wolf
b5d319834e [XboxKrnl/xconfig.cc] - Fixes and logging changes
- Adding more information in logs for easier debugging
- XamSetDashContext correction
- XCONFIG_USER_VIDEO_FLAGS reports widescreen when set in config by user
- XCONFIG_SECURED_AV_REGION reports proper values when set in config by user
- Added missing \n
2025-01-06 19:49:48 +01:00
Gliniak
13badbb4c0 [XAM] Fixed issue with savefile removal via XamContentDeleteInternal
Removed all lpunknown_t in xam_content.cc file and replaced with lpvoid_t
2025-01-06 12:14:55 +01:00
Gliniak
ad323dd9d8 [HID] Fixed lack of controller input introduced in previous commit 2025-01-05 10:09:32 +01:00
Gliniak
4584794e24 [HID] Added drivers filter for GetState 2025-01-04 21:42:54 +01:00
The-Little-Wolf
d6ed8af4e7 [Xam/Avatar] - Stubbing Avatar Functions
Stubbing avatar functions and leaving notes for future reference
2025-01-02 20:38:56 +01:00
The-Little-Wolf
95df198d8a [Xbox] kXNotification Additions
- Discovered new unknown kXNotificationID use by XNotifyBroadcast together and wanted to record them before I forget them.
- Changed kXNotificationID  to kXNotification
- Added kXNotificationSystemPXLiveSystemUpdate
2025-01-02 18:19:21 +01:00
Gliniak
b757601f01 [XAM] XamUserGetName: Fixed issue introduced in previous commit 2025-01-01 18:43:52 +01:00
Gliniak
3f0a7f171f [XAM] XamUserGetName: Prevent false-positive in MS defender 2025-01-01 14:14:57 +01:00
Adrian
ceb94e019a [XAM/UI] Implemented profile passcode UI 2025-01-01 00:26:13 +01:00
Gliniak
fe85be8817 [XAM] Fixed possible crash caused by printing invalid characters in XamUserGetGamerTag and XamUserGetName 2024-12-30 19:47:10 +01:00
Adrian
3dac88113f [XBDM] Implemented DmSetMemory and DmGetMemory 2024-12-29 18:35:44 +01:00
The-Little-Wolf
160d80d5cc [Xam/Enum] Implement EnumerateMediaObjects Functions
According to xam versions 8955 and 12611 all EnumerateMediaObjects are the same function and only return 0x80004001
2024-12-29 17:08:43 +01:00
Gliniak
580b1f4345 [XAM] Fixed nullptr crash in XamShowMessageBoxUI 2024-12-27 10:25:20 +01:00
Gliniak
bcc3c3172d [Base] Added NtSystemClock to_local for quick time conversion to current timezone
- Changed achievement reward time to local time (in UI)
2024-12-26 23:42:31 +01:00
Gliniak
c3586bc165 [C++] Uplift version to C++20 2024-12-26 23:42:31 +01:00
Gliniak
2e521383c2 [HID] Fixed some issues with controller/passthrough visibility.
- Moved X_INPUT flags from kernel to HID
- Added ability to return input type from driver
2024-12-23 10:43:27 +01:00
Adrian
3d79874828 [XAM] Fixed profile setting for preferred color
Fixes Supreme Commander from crashing.
2024-12-21 14:58:16 +01:00
The-Little-Wolf
919f7403e2 [Xam/UI] - Implement XamShowMarketplaceUIEx & XamShowForcedNameChangeUI
Xam version 4548 and up XamShowMarketplaceUI transfers its params to XamShowMarketplaceUIEx.
2024-12-20 08:00:43 +01:00
Gliniak
263c722a40 [XAM] Added X_ACHIEVEMENT_UNLOCK_TIME ctor to support unix timestamp 2024-12-18 20:59:27 +01:00
Gliniak
b98ff2d278 [XAM] Added specific ctor for X_ACHIEVEMENT_UNLOCK_TIME
Added method X_ACHIEVEMENT_UNLOCK_TIME::to_time_point
2024-12-18 20:32:52 +01:00
Gliniak
f6ae651cc2 [HID] Enable Keyboard Passthru
Thanks Adrian for figuring out missing XINPUT_KEYSTROKE_VALIDUNICODE flag.
Thanks Clippy95 for figuring out shift and capslock
2024-12-17 08:59:13 +01:00
Gliniak
b187ffeef7 [UI] Fixed crash while opening titles menu while not being logged in 2024-12-16 19:36:33 +01:00
Gliniak
cfd965342a [XAM] Fixed issue with lack of loaded achievements while switching profile in-game 2024-12-15 14:16:17 +01:00
Gliniak
2fc36721b4 [Kernel] Removed useless GameInfoWrapper class
It was added back in 2016 and never really used.
I tested few games and never saw GameInfo.bin in XNA games or any other game
2024-12-14 20:51:16 +01:00
Gliniak
e8a92c1073 [Kernel] Split achievements backends from manager and interface 2024-12-14 18:32:53 +01:00
Gliniak
45332299b2 [UI] Added played game list and achievements UI.
This will be functional after GPD & SPA implementation, for now shows info about currently booted title
2024-12-14 18:18:35 +01:00
Gliniak
a295ec1bbd [Base] Removed useless path_to_utf8 conversion while using fmt
Default filesystem::path formatter was added to fmt around 2022
2024-12-13 19:04:31 +01:00
Gliniak
3318ab5d4c [3PP] Uplifted FMT version and adjusted messages 2024-12-12 20:28:11 +01:00
Adrian
41771055f8 [XAM] Fixed datatype for uint32_t user settings 2024-12-12 10:31:56 +01:00
Gliniak
e93373660f [Kernel] AchievementManager: Added Interface for attaching custom implementations 2024-12-10 22:21:24 +01:00
Gliniak
0368e06b71 [XDBF] Added option to read XTHD section
This will be useful as it contains title id and version
2024-12-10 19:10:17 +01:00
Gliniak
fadc8d5a4d [XAM/UI] Simplified profile menu drawing logic
- Removed size precalculation.
- Fixed image ratio to 1:1.
- Removed scaling code that doesn't work anyway.
  If scaling is needed then it is in achievement earned notification code.
- Removed hardcoded -1 in user_index comparation.
2024-12-04 09:53:26 +01:00
The-Little-Wolf
6a380bcd91 [Xam/Info] - Fix XamGetLanguage & XGetLanguage Implementation
XamGetLanguage:
 - Language values that are returned must match Xlanguage values
XGetLanguage:
 - Return values above 9 will default to japanese, korean, or english depending on game region
2024-12-03 15:13:32 +01:00
Adrian
61b2e15666 [XAM] Fix error code for XamUserGetIndexFromXUID 2024-12-03 14:51:25 +01:00
The-Little-Wolf
c71649161e [XAM] Implemented XamUserGetIndexFromXUID
Implement XamUserGetIndexFromXUID
2024-11-29 20:42:13 +01:00
The-Little-Wolf
1a98a6eaf3 [Xam/User] - Stub XamUserCreateTitlesPlayedEnumerator
Stub of XamUserCreateTitlesPlayedEnumerator in preparation for future GPD support
2024-11-29 09:19:42 +01:00
Adrian
3ab712824e [XAM] Maintain usage of constant XUserIndexAny 2024-11-27 19:41:10 +01:00
Gliniak
2b49fc2ddc [XAM] ProfileManager: Renamed GetProfiles to GetAccounts
This is to prevent confusion between signed-in accounts (aka. Profiles) and all entries (Accounts)

Also added GetAccount to get specific instead of all of them when not needed
2024-11-26 20:28:01 +01:00
Adrian
b17faf84f2 [XAM] Improve XamUserGetSubscriptionType 2024-11-25 22:18:19 +01:00
Adrian
d516e8091c [XAM] XamGetStagingMode Stub 2024-11-25 22:17:20 +01:00
Adrian
4d44856b2b [XAM] Implemented XamProfileFindAccount 2024-11-25 20:46:54 +01:00
Adrian
d0b15ff8c9 [Kernel] Check null pointer in RtlImageXexHeaderField 2024-11-25 19:30:11 +01:00