Commit Graph

5741 Commits

Author SHA1 Message Date
emoose e292d58928 [XAM/User] Fix AchievementPlatform definitions...
big oof
2020-01-11 20:44:11 +11:00
emoose 5034b2cba7 [XAM/User] Store profile inside content root instead of next to EXE
eg. Documents/Xenia/content/profile/
2020-01-11 20:44:11 +11:00
emoose 25bb73b8c1 [XAM/Misc] Impl. IsSystem/IsXbox1/IsSystemExperience & FirstRunExperienceShouldRun exports 2020-01-11 20:44:11 +11:00
emoose f3571477dc [XAM/User] Only add arcade games to profile if license_mask is set 2020-01-11 20:44:11 +11:00
emoose de0fb991e0 [XAM/User] GetTitleId -> GetTitleData, check flags/titletype before adding to profile 2020-01-11 20:44:11 +11:00
emoose 9d26537681 [XAM/User] ...CreateTitlesPlayedEnumerator: sort titles by date played (thanks Gliniak!) 2020-01-11 20:44:10 +11:00
emoose ba6bef0252 [XAM/User] Stub GetIndexFromXUID, add param to IsOnlineEnabled
Maybe can help with user_index issues? Not sure, dash still seems to use some wacky indexes sometimes..
2020-01-11 20:44:10 +11:00
emoose e10dd9a389 [XAM/User] XamReadTile: support reading gamerpic from profile tile_64.png file 2020-01-11 20:44:10 +11:00
emoose 6f2469543a [XAM/User] Add extra checks to XamReadTile, remove GetTitleSpa
GetTitleGpd should work fine for what we're using it for here... it could be a good idea to keep an instance of the current SpaFile of the running title and have a GetTitleSpa that returns that though, since I think some stuff like XamReadString might eventually need access to SPA data, not really sure yet though.
2020-01-11 20:44:10 +11:00
emoose c3a552dc7f [XAM] Allow reading binary & unicode settings, but block AVATAR_INFO_1 2020-01-11 20:44:10 +11:00
emoose 192a16d3d3 [XAM] Small XamUserCreateTitlesPlayedEnumerator tweaks + other fixups 2020-01-11 20:44:10 +11:00
emoose f2a443e9a6 [XAM] UserProfile: Update ach/gamerscore info inside UpdateGpd, add dash checks to SetTitleSpaData 2020-01-11 20:44:10 +11:00
emoose 230f571824 [XAM] UserProfile::LoadProfile: setup default settings 2020-01-11 20:44:10 +11:00
emoose fc78fa92cf [XAM] Update profile setting code to use new xdbf::Setting struct 2020-01-11 20:44:10 +11:00
emoose 626467951d [XAM] xdbf.h: const-ify some parameters 2020-01-11 20:44:10 +11:00
emoose f64dd882c9 [XAM] xdbf.h: add more achievement details (flags, comments..) 2020-01-11 20:44:09 +11:00
emoose a539266d28 [XAM] xdbf_xbox.h: add X360 GPD settings structs + minor fixups 2020-01-11 20:44:09 +11:00
Gliniak 49e292718a [XAM/User] XamUserCreateTitlesPlayedEnumerator - Skip titles without achievements
It mimics behaviour of real 360 dashboard that
skips info about demos and system apps

also smaller code style changes
2020-01-11 20:44:09 +11:00
Gliniak 1a872dcd85 [XAM/User] Implemented sketchy XamReadTileEx
Also changes to XamReadTile
2020-01-11 20:44:09 +11:00
Gliniak f282fbe21c [XAM/User] Resolved missing profile tab on 12xxx dashboard
It doesn't provide overlap pointer and requires instant response
2020-01-11 20:44:09 +11:00
Gliniak 80eb0b6c4c [XAM/User] Added descriptions and labels for achievements
Disclaimer: On old dash it causes memleak (slight),
newer dashboards allocates them only once which is solution for that.

Ps. If anyone have easy solution please implement it. Cheers
2020-01-11 20:44:09 +11:00
Gliniak a9210375a6 [XAM/Misc] Added stub for: XamIsXbox1TitleId 2020-01-11 20:44:09 +11:00
Gliniak 2e15185e8a [User] Removed hardcode from XPROFILE_GAMERCARD_TITLES_PLAYED
(Now dashboard 9199 shows more reliable amount of games played)
2020-01-11 20:44:09 +11:00
Cancerous 94c00674b8 stubs for 9199 (eventually) 2020-01-11 20:44:09 +11:00
Gliniak 9d637ae402 [User] Added method for calculating gamerscore 2020-01-11 20:44:09 +11:00
Gliniak d565d87d8d [XAM/Media] Added stub for: XamLoaderGetMediaInfo 2020-01-11 20:44:08 +11:00
Gliniak ba19fe83b8 [XAM/User] Added Stub for: XamUserIsOnlineEnabled 2020-01-11 20:44:08 +11:00
Gliniak edac054ebd [XAM/User] XamUserGetGamerTag - added exception for user_index -1 (0xFF)
(Fixes gamertag in 9199 dash)
2020-01-11 20:44:08 +11:00
Gliniak e386038a62 [Profile] Added dummy settings (This causes gamertag to appear) 2020-01-11 20:44:08 +11:00
Gliniak 091bb36393 [XAM] XamReadTile - Changed size of item_id 2020-01-11 20:44:08 +11:00
Gliniak 926afdb5d8 [XAM/User] Implemented XamUserGetGamerTag 2020-01-11 20:44:08 +11:00
Gliniak 30c5551220 [XAM] XNotifyGetNext - Fixed null check for !param_ptr (Thanks randprint) 2020-01-11 20:44:08 +11:00
Gliniak e47674668c [XAM/Avatar] Added stub for: XamAvatarLoadAnimation
This enable running AvatarEditor

Disclaimer: Games that uses Avatars might crash
2020-01-11 20:44:08 +11:00
Gliniak eaba53a1b8 [Kernel] Added few elemenmts to xeExGetXConfigSetting
This will allow to go inside "Console Settings" in NXE Dashboard
and fixes stability on older dashboards
2020-01-11 20:44:08 +11:00
Gliniak 42fbe828d7 [XAM/Nui] Added stubs for: XamNuiIsDeviceReady, XamIsNuiAutomationEnabled 2020-01-11 20:44:08 +11:00
Gliniak e3f3659f08 [XAM/Notify] XNotifyGetNext - Added check to assure if param_ptr is correct 2020-01-11 20:44:07 +11:00
Gliniak 5358aec284 [Memory] Preallocate encrypted memory region
(Fixes dashboards up to 12625)
2020-01-11 20:44:07 +11:00
Gliniak ca1a2692ab [XAM/Sketchy] Implemented XamReadTile 2020-01-11 20:44:07 +11:00
Gliniak caac1d6618 [Kernel] Rewrote ObReferenceObjectByHandle. Thanks Cookie for ideas 2020-01-11 20:44:07 +11:00
Gliniak ef1b049408 [KERNEL] Do not convert time if provided time_ptr is invalid (Fixes Dark Souls crash) 2020-01-11 20:44:07 +11:00
Gliniak 8f8c0a439a [GPD] Implemented XamUserCreateTitlesPlayedEnumerator 2020-01-11 20:44:07 +11:00
Cancerous 3c2d99876a [Kernel] Make XHttpStartup succeed and add stubs for XHttpOpen and XHttpConnect that fail 2020-01-11 20:35:07 +11:00
Cancerous a1db296a2c Revert "[Kernel] - Try to shut down XMP so games won't spam it's functions"
This reverts commit 2df353fdde.
2020-01-11 20:35:01 +11:00
emoose 7fa2567d20 [XBDM] Add impl. for DmGetXboxName, stub 5 functions
Stubs: DmGetXbeInfo, DmIsDebuggerPresent, DmRegisterCommandProcessor, DmRegisterCommandProcessorEx
This helps progress some debug builds of games, DmGetXboxName error codes are based on what some games seem to expect from it.
Will probably be a good idea to move most of this to xbdm_info.cc soon.
2020-01-11 20:30:18 +11:00
Cancerous 56925afdc8 [Kernel] remove option to disable WSAStartup 2020-01-11 20:30:00 +11:00
Cancerous a9f587199a [Kernel] - Try to shut down XMP so games won't spam it's functions 2020-01-11 20:29:54 +11:00
Cancerous c63f4df9cc [Kernel] Add XHttpStartup Stub, try to gracefully fail and shutdown more of the networking so games won't spam the related functions 2020-01-11 20:29:49 +11:00
emoose faf4e410a0 [Kernel] Include XEX version in log 2020-01-11 20:29:41 +11:00
emoose 70c616fe27 [Kernel/CPU] Fix XEX version numbers not being output correctly
Couldn't find a way to get bitfields & byte-swapping to play well together, so this was the best I could come up with... at least the proper version numbers will show in the log file now :)
2020-01-11 20:29:35 +11:00
emoose 06f7617c57 [Kernel] Allow XEX to continue load after ApplyPatch fails
This should be safe to do hopefully, most errors happen before any part of the XEX is modified, and the errors that can happen after modification should be very rare/impossible thanks to the earlier checks.
It might be good to write up some way to revert any changes though...
2020-01-11 20:27:03 +11:00