Commit Graph

4793 Commits

Author SHA1 Message Date
Prism Tutaj 1cce25d5e7 [CPU] Change thunk layout and fix Linux thunk misalignment 2020-02-05 09:49:29 -06:00
Joel Linn f0723c211b [UI] Fix frame leak on context loss. 2020-02-05 09:48:31 -06:00
Joel Linn 2c99228041 [UI] Use ticks as frame time instead of file time.
File time is not as accurate as its resolution suggests.
This results in a zero time delta between frames for high fps.
2020-02-05 09:48:31 -06:00
illusion98 c3f3bd8701 [UI] Add F2 Hotkey to open current git commit in browser 2020-02-05 09:46:30 -06:00
Triang3l 211e30d791 [GPU] Remove repeated word in a comment 2020-02-02 21:07:51 +03:00
Triang3l 4061445087 [GPU] Remove unused kConstantInt/Bool shader operands 2020-02-02 21:05:00 +03:00
Silent 38bf6c8822 [Kernel] Make XexUnloadImage fully release the image
Previously XexUnloadImage did not cleanup the image fully,
and if XexLoadImage was to be called again on the same module,
it was not initialized fully, leading to a crash when using it.
2020-01-27 06:35:10 -06:00
Silent 9d48e904da [Kernel] (Partially) fix module refcounting
.xex module handles were retained twice in several places,
possibly causing them to leak.
More placed may have to be fixed too.
2020-01-27 06:35:10 -06:00
Silent f278e30d21 [Kernel] Fix SHA1 and SHA256 state endianness
Fixes malfunctioning SHA256 hash,
corrupting its state between Update and Finish calls.
2020-01-27 06:33:39 -06:00
Triang3l c43ccc073d [D3D12] Submit command lists on primary buffer end 2019-12-04 21:42:26 +03:00
Joel Linn 922f1f220a [CPU] Implement mftb instruction natively.
When the cvars clock_no_scaling and clock_source_raw are set, tick counts will be directly calculated in the emitted code.
2019-12-01 17:11:58 -06:00
Joel Linn 15d422d988 [Base] Optional raw Clock source.
New cvar clock_source_raw allows to use the cpu cycle counter itself as an alternative time source, if system timing resolution is to low and causes problems.
2019-12-01 17:11:58 -06:00
Joel Linn f88d46cead [Base] Optional Clock scaling bypass.
New cvar clock_no_scaling bypasses all time scaling code.
Clock state is non dynamic.
Timing is always derived from host.
2019-12-01 17:11:58 -06:00
Joel Linn 7e244e0488 [Base] Clock state now unaltered by threading.
- Removed tick and time values from ThreadSavedState.
- Removed affiliated get/set code from Save and Restore.
- Removed dangerous SetGuestTickCount method.
2019-12-01 17:11:58 -06:00
Joel Linn d6ce72ddc9 [Base] Clock reworked.
- Time progression is now equal and in sync on all threads.
- Floating point imprecisions do not interfere with timing.
2019-12-01 17:11:58 -06:00
Triang3l 6a3a56b3b9 [D3D12] Workaround for texture flickering on Nvidia - don't use sampler 2047 2019-12-01 21:39:48 +03:00
Silent c5db959154 [Kernel] Retain handles and not objects in XThread
This fixes cases introduced by 52e836d0f81e752ba368717e68773b591adfa9cf
where thread handles get closed before the thread finishes.
Handle was assumed to be alive there, which was not true as
threads self-referenced only their objects, not their handles.

Affected games: Payday 2 Demo
2019-11-30 20:08:30 -06:00
Silent 728531eff7 [Kernel] Operate on handle refcounts in Ob funcs
Although this seems counter-intuitive, operating on handle
reference counters in
- ObLookupThreadByThreadId
- ObReferenceObjectByHandle
- ObDereferenceObject
allows to cleanly clean up handles for resources created elsewhere
and destructed by ObDereferenceObject (for example, threads with 0x80
creation flag). Operating on pointer reference counters alone
would leave a stray handle in the slots list.
2019-11-30 20:08:30 -06:00
Silent 05ef022fd7 [Kernel] Do not retain handle in ExCreateThread
Closing the thread handle should delete the thread object
if it's finished. When this handle was retained, closing the handle
left a lingering handle reference and thus this XThread would leak
2019-11-30 20:08:30 -06:00
Silent 5bec69e983 [Kernel] Add some useful asserts 2019-11-30 20:08:30 -06:00
gibbed ae15c27a24 [x64] Take advantage of StashConstantXmm. 2019-11-30 20:08:10 -06:00
gibbed 04a54cc58f [x64] Fix constant src2 in VECTOR_ROTATE_LEFT_V128. 2019-11-30 20:08:10 -06:00
gibbed f7a8c5ce7a [x64] Fix corruption of src1 in calls to EmulateVectorRotateLeft.
To mitigate this mistake in the future, implemented new
StashConstantXmm functions.
2019-11-30 20:08:10 -06:00
gibbed 43cef29c6d [UI] Disable saving of imgui INI file.
By default imgui saves an INI file named 'imgui.ini' to the current directory,
which is undesired behavior. Until we can properly specify a full path to
a good location, disable saving of the INI file.
2019-11-30 18:54:15 -06:00
aerosoul bc8b629092 [Kernel] Enable XEX1 loading 2019-11-20 18:09:28 -06:00
Joel Linn 03d5455a2f [imgui] Fixes to work with new api.
- Font atlas is now owned by context.
- Switch from deprecated io.RenderDrawListsFn callback to dedicated call in window.cc.
- Replaced deprecated ImGuiCol_ModalWindowDarkening with ImGuiCol_ModalWindowDimBg.
- Replaced deprecated SetScrollHere() with SetScrollHereY().
- Replaced deprecated GetContentRegionAvailWidth() with GetContentRegionAvail().x.
- Replaced deprecated ShowTestWindow() with ShowDemoWindow().
- Replaced deprecated ImGuiCol_ChildWindowBg with ImGuiCol_ChildBg.
- Replaced deprecated SetNextTreeNodeOpen() with SetNextItemOpen().
2019-11-20 08:05:40 -06:00
Joel Linn 1985169924 [imgui] Make code compile with new imgui. 2019-11-20 08:05:40 -06:00
Triang3l 8ba6f3fc37 [Memory] Trigger watches when making pages writable, not the other way around 2019-11-10 14:21:36 +03:00
Triang3l 26e1a67036 [GPU] Separate dxbc and dxbctext shader compiler targets 2019-11-09 00:13:23 +03:00
Triang3l e5b8f0cb27
[Vulkan] Remove an obsolete comment about GLSL 2019-11-08 23:16:37 +03:00
Margen67 09e1028154 Remove (hopefully) last OpenGL leftovers & crunch
Crunch is unused.
2019-11-08 09:10:51 -08:00
Triang3l d4a5a57867 [D3D12] Remove command_list.h inclusion 2019-11-06 08:08:49 +03:00
Triang3l c8f3c93802 [D3D12] Don't create multiple command lists as they're just encoders 2019-11-06 08:06:12 +03:00
Triang3l 00116fad2d [D3D12] Don't assume there's a null D3D descriptor handle 2019-11-04 21:10:32 +03:00
Triang3l c499229455 [GPU] Store an EDRAM snapshot in traces 2019-11-04 17:30:20 +03:00
Triang3l 1bb3cd45ca [APU] Support XAudio 2.7 2019-11-02 22:27:38 +03:00
Triang3l 9deb710607 [D3D12] CP: Framework for multiple command lists per frame 2019-10-31 23:33:11 +03:00
Triang3l 6e5a0ebf7b [D3D12] CP: Separate guest frame and non-frame submissions 2019-10-28 22:00:59 +03:00
Triang3l d3b6f71ae1 [D3D12] Don't use D3D12Context for command processor fence 2019-10-28 10:49:32 +03:00
Triang3l b4af63fe31 [D3D12] Detach UploadBufferPool and DescriptorHeapPool from D3D12Context 2019-10-27 20:53:53 +03:00
Triang3l f23ba862f6 [D3D12] Trace viewer entry point 2019-10-27 00:37:33 +03:00
Triang3l 36f4158f09 [GPU] Trace dump: Do PIX/RenderDoc capture if attached 2019-10-25 21:32:17 +03:00
Triang3l f75d927cc5 [D3D12] Resolve fetch memory read tracing 2019-10-25 09:17:08 +03:00
Triang3l c057b5a032 [D3D12] Make trace dump partially work 2019-10-25 08:38:06 +03:00
Triang3l b622e894d6 [D3D12] Replicate the last texture component into non-existent ones 2019-10-23 23:47:17 +03:00
Triang3l 4623b41023 [D3D12] Trace guest memory operations 2019-10-23 23:33:50 +03:00
Triang3l e07b0ed2ad [VFS] Fix some security issues in StfsContainerDevice code 2019-10-22 08:55:45 +03:00
Triang3l 1005651855 [D3D12] Fix DXN swizzle and cleanup texture swizzles 2019-10-21 21:16:29 +03:00
Triang3l a9ed73bdd1 [GPU] Remove most hardcoded register/instruction layouts from common and D3D12 code 2019-10-20 19:40:37 +03:00
Triang3l f83269cf8c [GPU] Refactor: Register structs in D3D12CommandProcessor and some other places 2019-10-19 23:32:38 +03:00
Triang3l f748e5af49 [Emulator] Default XEX cvar 2019-09-14 20:30:04 +03:00
gibbed c19a052b96 [XAM] Don't use strncpy for XamUserGetName. 2019-09-12 03:41:02 -05:00
gibbed b422ed750b Oops. Didn't mean to add that yet. 2019-09-04 23:16:06 -05:00
gibbed 2780e7b1a6 Add user_country cvar, rename game_language cvar.
- [Kernel] Rename game_language cvar to user_language.
- [Kernel] Recategorize user_language to XConfig.
- [Kernel] Add user_country cvar, used instead of hardcoded value in XConfig.
- [XAM] Use user_country cvar for xeXamGetLocaleEx instead of
  xeExGetXConfigSetting.
2019-09-04 23:02:55 -05:00
gibbed 4f4b83b421 [Kernel] Move ExGetXConfigSetting to its own file.
- [Kernel] Clean up xboxkrnl registration function declarations.
- [Kernel] Move ExGetXConfigSetting to its own file.
2019-09-04 23:02:55 -05:00
gibbed d58544b406 [XAM] Fix incomplete locale tables. 2019-09-04 23:02:55 -05:00
gibbed 858923898f [XAM] Implement a number of language/locale related functions.
[XAM] Implement XamGetLocale, XamGetOnlineCountryFromLocale,
  XamGetOnlineCountryString, XamGetCountryString, XamGetLanguageString,
  XamGetLanguageLocaleString, XamGetOnlineLanguageAndCountryString,
  XamGetLocaleString, XamGetLocaleFromOnlineCountry,
  XamGetLanguageFromOnlineLanguage, XamGetOnlineLanguageString,
  XamGetCountryFromOnlineCountry, and XamGetLocaleEx.
2019-09-04 20:03:25 -05:00
gibbed ce78d7110e [CPU] Add locale export category. 2019-09-04 20:03:25 -05:00
gibbed c22f76e87f [Base] Const-ize store and store_and_swap templates.
[Base] Make value argument for store and store_and_swap templates
const&.
2019-09-04 19:58:17 -05:00
Triang3l 84a8dc91e4 [D3D12] Filtering between array texture layers 2019-09-03 10:14:25 +03:00
Triang3l 803fa0cba9 [Kernel] Fix TranslateUnicodeString endian and size 2019-08-28 09:20:10 +03:00
Triang3l 0ad1bd9ab4 [Kernel] XMAInitializeContext physical buffer addresses 2019-08-28 08:11:43 +03:00
Triang3l 2f51949ece [Kernel] Cya l8r recently added wrong XMAInitializeContext comment 2019-08-27 23:53:06 +03:00
Triang3l 9df39e4883 [Kernel] Fix StoreXmaContextIndexedRegister, note about physical addresses in XMAInitializeContext 2019-08-27 23:50:30 +03:00
Triang3l b01f6cd7ea [Vulkan v2] Add immediate shader SPIR-V code 2019-08-26 23:43:05 +03:00
Triang3l b3382f3de1 [Vulkan v2] Upload buffer chain, immediate drawer without textures 2019-08-26 22:57:14 +03:00
gibbed e9802a9f3b [x64] Further simplification / fix buffer overrun in code cache.
- [x64] Further simplify padding of code / unwind reservation in code cache.
- [x64] Fix accidental buffer overrun caused by previous simplification.
2019-08-26 13:42:44 -05:00
gibbed c4ff8d7c58 [x64] Fix prolog/epilog sizes for emitted functions. 2019-08-25 17:02:42 -05:00
gibbed c808b59834 [x64] Simplify growable function pointer definitions. 2019-08-25 17:02:42 -05:00
gibbed 015e91140a [x64] Don't have a zeroed unwind info as the first slot. 2019-08-25 17:02:42 -05:00
gibbed 920b5c5839 [x64] Simplify padding of code / unwind reservation in code cache. 2019-08-25 17:02:42 -05:00
Triang3l a422166123 [Kernel] Fix MmAllocatePhysicalMemoryEx range base 2019-08-24 19:23:31 +03:00
Triang3l 7e6bf8022f [Memory] Refactor GetPhysicalAddress and use it for XMA, resolve #1448 2019-08-24 17:42:06 +03:00
gibbed 3e6c2bb47c Fix up handling of positional options in cvar handling.
- Fix up handling of positional options in cvar handling so that executables
  other than app can handle them properly.
- Fix command-line arguments for xenia-vfs-dump.
2019-08-24 07:41:55 -05:00
gibbed 24321dbcd9 [x64] Fix up offset of stack alloc in prolog for unwind info.
- [x64] Track offset of stack alloc in prolog within emitted functions.
- [x64] Don't use hardcoded offset of stack alloc in prolog in generated
  unwind info.
2019-08-23 06:12:22 -05:00
gibbed 0dc4a13db3 [x64] Fix up unwind info for emitted functions.
- [x64] Track size of code within emitted functions (prolog, body, epilog).
- [x64] Don't use hardcoded prolog size in generated unwind info.
- [x64] Update URLs to MSDN documentation on UNWIND_INFO/UNWIND_CODE.
2019-08-23 06:12:22 -05:00
gibbed 918a7d4365 [x64] Reuse module handle when pulling in growable function table imports. 2019-08-23 06:12:22 -05:00
gibbed 92a85d6692 [x64] Remove outdated comment. 2019-08-23 06:12:22 -05:00
emoose f46e3c7e39 [Kernel/VFS] Ensure vfs::Entry is up-to-date before retrieving file information
Games like Forza use NtQueryInformationFile to get the size of the file, to make sure that there's enough room inside it to write data.

Previously, updating the file size (via SetInfoFile(EndOfFile) or WriteFile) wouldn't update the vfs::Entry size field, which NtQueryInfo uses to return the size of the file.

This resulted in the game thinking that the file was smaller than it actually is, and trying to correct that by using SetInfoFile(EndOfFile), which then truncated the file and deleted important data that was written to it.
2019-08-21 02:00:57 -05:00
emoose 06cacbb9af [Kernel] Implement XeKeysObscureKey & XeKeysAesCbcUsingKey 2019-08-21 02:00:57 -05:00
emoose b22d76f0f9 [Kernel] Add XLiveBase 0x58046 stub 2019-08-21 02:00:57 -05:00
Triang3l 4731ae026b [D3D12] 3D/stacked texture layer addressing 2019-08-19 23:24:58 +03:00
Triang3l bc4b68db45 [CPU] Data cache control instructions 2019-08-18 16:22:32 +03:00
Triang3l b25c50164f [APU] Physical address in XE_XMA_REG_CONTEXT_ARRAY_ADDRESS 2019-08-16 21:20:10 +03:00
Triang3l e35c609224 Revert "[APU] Temp XMA context allocation region workaround"
This reverts commit 968c337d22.
2019-08-16 21:11:55 +03:00
Triang3l 968c337d22 [APU] Temp XMA context allocation region workaround 2019-08-16 09:47:28 +03:00
Triang3l 126978d960 [Memory] Fix memory watch addresses 2019-08-16 08:49:48 +03:00
Triang3l 834ced0d63 [Memory] 0xE0000000: Fix a typo, re-enable and cleanup 2019-08-15 23:55:33 +03:00
Triang3l e862169156 [Memory] BaseHeap::TranslateRelative including host address offset 2019-08-15 00:31:21 +03:00
Triang3l 0451153760 [Memory] Temporarily disable allocation in 0xE0000000 2019-08-15 00:06:27 +03:00
gibbed 6ab7720951 [Kernel] Fix stray whitespace in license_mask definition. 2019-08-14 14:15:56 -05:00
Triang3l 003c02c640 [CPU, Memory] 0xE0000000 adjustment by @elad335 and mapping 2019-08-14 21:37:52 +03:00
illusion98 c021c7741d [Kernel] Add license mask as a config variable 2019-08-14 10:25:24 -05:00
Sandy Carter 3c3709dbe7 [CPU] Use c++ style cast 2019-08-14 06:42:30 -05:00
Triang3l 2507f1a819 [Memory] TranslateVirtual in shim and strings 2019-08-14 10:31:11 +03:00
Triang3l 0067f5561d [Kernel] More TranslateVirtual/HostToGuestVirtual usage 2019-08-14 08:28:30 +03:00
Triang3l 2152c79965 [Memory] 0xE… adjustment in TranslateVirtual 2019-08-14 00:07:27 +03:00
Triang3l 741b5ae2ec [Memory] Add HostToGuestVirtual and use it in a couple of places 2019-08-13 23:49:49 +03:00
Triang3l f1b9e1afce [CPU] Remove unused access violation handler variables 2019-08-13 00:06:29 +03:00
Triang3l 470f9946d6 [Vulkan v2] Present framebuffer clearing 2019-08-11 23:53:24 +03:00
Triang3l 490f3de853 [Vulkan v2] Swapchain ImageViews, error messages 2019-08-11 19:29:44 +03:00
Triang3l be6fa2b577 [Vulkan v2] Present loop 2019-08-11 17:49:01 +03:00
Triang3l 675034670e [Vulkan v2] Surface queries 2019-08-10 20:41:37 +03:00
Triang3l db2898e386 Merge branch 'master' of github.com:xenia-project/xenia 2019-08-10 14:52:54 +03:00
Triang3l fb656f3493 [Vulkan v2] GDK VkSurface 2019-08-10 14:52:33 +03:00
Jonathan Goyvaerts c621e01dd2 Add game_language as a config variable 2019-08-10 06:51:36 -05:00
Triang3l af93986c8f [Vulkan v2] VkSurface 2019-08-10 00:23:31 +03:00
Triang3l 30ba2619f3 [Vulkan v2] Properly include, clean up queue families 2019-08-09 22:40:55 +03:00
Triang3l 001120605b [Vulkan v2] Frames and fences 2019-08-08 23:58:02 +03:00
Triang3l 5744e6ba38 [Vulkan v2] Device and queue creation 2019-08-08 23:03:36 +03:00
Triang3l 940ef4ad7a [UI/GPU] Fix include order 2019-08-08 22:11:51 +03:00
gibbed 39c3f72c41 [Kernel] Implement RtlComputeCrc32. 2019-08-07 19:50:17 -05:00
Triang3l 2334e475de [Vulkan v2] Physical device, [D3D12] Small cleanup 2019-08-08 00:08:20 +03:00
Triang3l 40471dff32 [D3D12] Remove gflags from premake5.lua 2019-08-06 23:16:51 +03:00
gibbed 35e79d1979 [Base] Fix checks in cvar string escaping. 2019-08-04 21:55:06 -05:00
Triang3l cb0e18c7dc [Memory] BaseHeap::host_address_offset 2019-08-04 23:55:54 +03:00
Triang3l 25675cb8b8 [Memory] E0000000 adjustment in watches only for Windows 2019-08-04 23:10:59 +03:00
gibbed bbe4d416ff [Core] Fix writing of multiline values in config. 2019-08-04 13:00:15 -05:00
gibbed 41b8dbdd76 [Core] Fix SaveConfig on non-Windows. 2019-08-04 12:48:41 -05:00
gibbed 13a67d64a9 [Core] Fix ParseFile on non-Windows. 2019-08-04 12:20:51 -05:00
gibbed 306f358c07 [Base] Drop inline on string_util/vec128 implementations for now because clang is whining. 2019-08-04 12:00:04 -05:00
gibbed 7d6d732999 [Kernel] Of course I forget to commit another local change. 2019-08-04 11:44:18 -05:00
gibbed 36bd0df586 [Base] Move float/double to_hex_string implementation out of header. Maybe fix Travis complaining. 2019-08-04 11:38:01 -05:00
gibbed 1ebf7bb484 [Kernel] Implement KeTryToAcquireSpinLockAtRaisedIrql. Maybe correctly. 2019-08-04 11:36:49 -05:00
Triang3l 68017eadea [Vulkan] Add missing line to mark a texture as watched 2019-08-04 18:29:20 +03:00
gibbed 4248f9ed19 [Base] Fix formatting in string_util.cc. 2019-08-04 07:32:24 -05:00
gibbed 693958f8b7 [Base] Fix escaping quote runs. 2019-08-04 07:29:29 -05:00
gibbed bee55ce5bb [Base/Core] Work on config/cvars. Properly escape string values when saving config. 2019-08-04 07:09:05 -05:00
gibbed 82f85c98f0 [Base] Add wide version of split_path. 2019-08-04 06:47:09 -05:00
gibbed 01c656b77b [Base] Add split_string. 2019-08-04 06:46:07 -05:00
gibbed 2048239f30 [Base] Move implementation out of header where appropriate, and qualify std namespace. 2019-08-04 04:40:19 -05:00
gibbed 40cc8c52d7 [Base] Qualify std namespace. 2019-08-04 04:39:22 -05:00
gibbed 8b1f728d85 [Base] Use vwsprintf instead of _vsnwprintf. 2019-08-04 03:44:08 -05:00
gibbed 5ea54d9326 [Core] Fix config load/save not using wide strings for path. 2019-08-04 03:30:57 -05:00
gibbed b685211b96 [Base] Add wide versions of FatalError. 2019-08-04 03:26:18 -05:00
gibbed 85b4b561bf [Base] Fix Travis complaints with cvar code. 2019-08-04 02:52:28 -05:00
gibbed a1c9d57afc [App] Make target into a transient cvar. 2019-08-04 02:18:03 -05:00
gibbed f360053198 [Base/Core] Bring cvar/config code in line with the style guide. 2019-08-04 02:17:22 -05:00
gibbed 7ba460552c [Base/Core] Add support for transient cvars. 2019-08-04 02:12:46 -05:00
gibbed 9a9a55aa49 [Core] Report the actual reason config parse failed. 2019-08-04 01:22:01 -05:00
gibbed 53b564c1a6 [APU] Only set the work event/wait on the worker thread when they actually exist. 2019-08-04 00:49:32 -05:00
gibbed 38a6d110e7 [APU] Only wait on the worker thread if it actually exists. 2019-08-04 00:27:49 -05:00
gibbed e48f4ce004 [Core] Only wait on the main thread if it actually exists. 2019-08-03 23:48:05 -05:00
gibbed 4970fc8673 [Kernel] Make XObject type() const. 2019-08-03 23:47:16 -05:00
gibbed b2f62b1982 Clean up cvars (rename, recategorize). 2019-08-03 23:46:03 -05:00
emoose 313e81ec38
[Kernel] Add XN_SYS_UI notifications to XamShow*UI exports 2019-08-04 03:57:06 +01:00
emoose c3476e8e19
[Kernel] Make XNotifyListener::notifications_ a std::vector, allowing multiple to use the same ID.
Previously adding a notification that already exists would just overwrite the older notifications value, meaning the game would never see that older notification.
This would break games like Project Sylpheed, which seems to require seeing XN_SYS_UI = true eventually followed by XN_SYS_UI = false for the game to realize all system UIs are closed.
2019-08-04 03:55:57 +01:00
gibbed 0ac83f99dc [App] Add winkey input driver last. 2019-08-03 20:47:39 -05:00
gibbed f2dac86b3f [App] Use make_unique when creating a derived type instance. 2019-08-03 20:46:03 -05:00
gibbed 02ea74becd [App] Only create input nop driver when explicitly requested. 2019-08-03 20:07:19 -05:00
gibbed e5eb59df71 [App] Remove unnecessary type aliasing (which also broke Travis). 2019-08-03 18:10:49 -05:00
gibbed f5cddbbf3f [App] Simplify and improve factory template.
[App] Rework audio and input system creation.
2019-08-03 17:36:50 -05:00
gibbed 848e2a4088 [App] Rework graphics system creation. 2019-08-03 16:42:38 -05:00
Triang3l 890a32bd98 [App] Only start D3D12 if DLL exists 2019-08-03 22:33:09 +03:00
Triang3l d20c2fa9da [Memory/Vulkan] Move old memory watches to the Vulkan backend 2019-08-03 21:06:59 +03:00
Triang3l 0370f8bbd9 [Memory] Pass exact_range to watch callbacks 2019-08-03 19:16:04 +03:00
Triang3l a0c92e30ce [Main] Add --gpu=d3d12 hint 2019-08-03 17:16:52 +03:00
Triang3l cc7f26ada8 [GPU] Remove one merge conflict resolution line 2019-08-03 17:15:37 +03:00
Triang3l e04dfe8833 Merge branch 'master' into d3d12 2019-08-03 16:53:37 +03:00
Triang3l 352f12f92e [D3D12] Switch from gflags to cvars 2019-08-03 16:53:23 +03:00
gibbed 5593773a07 [Discord] Better image keys and avoid setting a small image for now. 2019-08-03 08:16:08 -05:00
gibbed 112bf6c8ab Properly reset title id/game title. 2019-08-03 08:16:08 -05:00
gibbed c16ef67ff9 [App/Discord] Rework how rich presence is managed.
Updating rich presence state every time the window title changes
is a bad idea(tm).
2019-08-03 08:16:04 -05:00
Jonathan Goyvaerts 2a1d67eada [Base] Fix snprintf not working correctly
This seems to be an issue with Microsoft declaring a snprintf macro which causes issues.
Related issues:
- https://github.com/nlohmann/json/issues/1408
- https://github.com/kodi-pvr/pvr.vuplus/issues/162
2019-08-03 02:34:19 +02:00
Jonathan Goyvaerts 81fe22f1c8 Get rid of gflags alltogether 2019-08-03 02:34:19 +02:00
Jonathan Goyvaerts 67cc8b7316 Load game config on game load 2019-08-03 02:34:17 +02:00
Jonathan Goyvaerts d12871b8b4 [App] Initialize config on emulator startup 2019-08-03 02:34:08 +02:00
Jonathan Goyvaerts c1af632562 Replace all gflag implementations with cvar implementations 2019-08-03 02:34:07 +02:00
Jonathan Goyvaerts a01908aa15 Add config class for loading and saving of config file 2019-08-03 02:34:07 +02:00
Jonathan Goyvaerts bedd8ea40f [Base] Add cvar class, a better, more flexible implementation of storing configuration variables than gflags 2019-08-03 02:33:56 +02:00
Jonathan Goyvaerts bc6c047152 [Base] Add generic implementation for converting from string to T, and add specific implementation for string to bool 2019-08-03 02:33:40 +02:00
Triang3l e071ca852c Merge branch 'master' into d3d12 2019-08-02 21:50:43 +03:00
Rick Gibbed 372928cd57
Merge pull request #1387 from Margen67/update_capstone
Update Capstone to latest stable (4.0.1).
2019-08-02 11:09:02 -05:00
gibbed e05f3288e4 Merge remote-tracking branch 'origin/master' into d3d12 2019-08-02 10:00:36 -05:00
Wes Taylor ce38e7b0b1 [App] Add support for Discord rich presence. 2019-08-02 09:06:02 -05:00
Triang3l 90c9c24ca5 [D3D12] Add d3d12_readback_resolve gflag 2019-08-01 08:55:47 +03:00
Triang3l 68b2ddee86 Merge branch 'master' into d3d12 2019-07-31 23:09:44 +03:00
Triang3l e466687f11 [Base] Fix tzcnt logic 2019-07-31 23:08:41 +03:00
Triang3l 9d0986030f [Memory] Don't mark non-writable pages as watched 2019-07-31 08:40:26 +03:00
Triang3l 24383b9137 [Memory/D3D12] Unwatch up to 256 KB ranges 2019-07-31 00:18:12 +03:00
Triang3l b5fb84473d [Memory] Replace forgotten InvalidateRange in NtReadFile 2019-07-30 09:06:23 +03:00
Triang3l 4aceeb73c4 [Memory] Move new watches to heap-aware Memory from MMIOHandler 2019-07-30 08:00:20 +03:00
Triang3l 83da671bb4 Merge branch 'master' into d3d12 2019-07-30 07:59:38 +03:00
gibbed 669d83896d [Kernel] Implement RtlImageNtHeader. 2019-07-29 19:23:16 -05:00
gibbed cd18b702a6 [Kernel] Implement ExAllocatePool. 2019-07-29 19:21:01 -05:00
gibbed 3d67ffad81 [Kernel] Implement NtOpenSymbolicLinkObject, NtQuerySymbolicLinkObject. 2019-07-29 18:04:06 -05:00
gibbed 05d2d76cff [VFS] Reimplement ResolvePath. Add FindSymbolicLink, ResolveSymbolicLink. 2019-07-29 17:55:46 -05:00
gibbed 54b0e2aff6 [Kernel] Add XSymbolicLink. 2019-07-29 17:52:46 -05:00
gibbed e72cacc986 [VFS] Make ResolvePath argument a const reference. 2019-07-29 16:04:25 -05:00
gibbed 7c7d80103e [Kernel] Use type constant instead of type enum when calling base constructor. 2019-07-29 13:53:44 -05:00
gibbed 0d6bfc1a6b [Kernel] Rename NotifyListener to XNotifyListener to bring it in line with the naming scheme of kernel objects. 2019-07-29 13:43:13 -05:00
gibbed e38be4c294 [Core] Use a macro for loading kernel modules (which also explicitly discards return value). 2019-07-29 13:26:09 -05:00
gibbed ecf64d8e05 [Core] Keep a reference to the main thread's XThread rather than its underlying thread. 2019-07-29 13:24:36 -05:00
gibbed a4d2f5e4ed [Core] Initialize all members of Emulator. 2019-07-29 13:22:45 -05:00
Triang3l 211f59740c Merge branch 'master' into d3d12 2019-07-21 22:02:12 +03:00
Triang3l bc2eaf9b64 [CPU] VectorAverage CPU-independent constant propagation 2019-07-21 22:01:24 +03:00
Triang3l 547345b12d Merge branch 'master' into d3d12 2019-07-21 18:31:06 +03:00
Triang3l ab664e38a0
Merge pull request #1406 from Gliniak/vsvgsb
Added support for Altivec: vavgsb
2019-07-21 18:30:03 +03:00
Triang3l 3f968c3760 [D3D12] YUV texture formats 2019-07-21 15:38:25 +03:00
Triang3l 7648e45661 Merge branch 'master' into d3d12 2019-07-20 22:05:34 +03:00
Triang3l 8c00aea5ff [CPU] vpkd3d VPACK_NORMPACKED64 2019-07-20 22:04:37 +03:00
Triang3l bcd37d7938 Merge branch 'master' into d3d12 2019-07-20 16:15:02 +03:00
Triang3l 2350810f4e [Base] Add typename to sat_add/sub 2019-07-20 16:14:13 +03:00
Triang3l 0488766452 Merge branch 'master' into d3d12 2019-07-19 23:13:38 +03:00
Triang3l 26c24b4726 [CPU] Move saturating add/sub to base/math.h 2019-07-19 23:12:11 +03:00
Triang3l 808d6d6025 Merge branch 'master' into d3d12 2019-07-19 08:22:59 +03:00
Triang3l 2b411f4c8b [CPU] Saturating VectorSub: fix typo in last commit 2019-07-19 08:22:30 +03:00
Triang3l 2c2808ce00 Merge branch 'master' into d3d12 2019-07-19 08:19:03 +03:00
Triang3l f14f44e729 [CPU] Saturating VectorAdd/Sub of constants without DID_SATURATE yet 2019-07-19 08:17:55 +03:00
gibbed 23c9341642 Merge remote-tracking branch 'origin/master' into d3d12 2019-07-18 18:39:17 -05:00
gibbed 0bed6e565b [Base/GPU] Fix some usage of xe::find_base_path. 2019-07-18 18:37:47 -05:00
gibbed 887609ba44 [Base] Only attempt to create non-empty base paths in CreateParentFolder. 2019-07-18 18:32:04 -05:00
gibbed 706c810a3a [Base] Fix find_base_path returning original string with no separator is found. 2019-07-18 18:31:21 -05:00
gibbed 48b04d186b Merge remote-tracking branch 'origin/master' into d3d12 2019-07-18 18:02:01 -05:00
gibbed 0d3039f5ba [VFS] Fix an outdated commit of OpenFile that somehow slipped through. 2019-07-18 17:49:15 -05:00
gibbed 9a8d77137c [Base] Fix Windows CreateFolder so it creates the entire path properly. 2019-07-18 17:47:25 -05:00
gibbed 324d28adba [VFS] Fix comment. 2019-07-18 17:24:44 -05:00
gibbed bf989f0aae [Kernel/VFS] Maybe fix creation of directories. See #1403. 2019-07-18 17:15:57 -05:00
Radosław Gliński 53eb95d33c Added support for Altivec: vavgsb
Also little size adjustments for vavgsh
2019-07-18 21:22:42 +02:00
gibbed e024cbc3f0 Merge remote-tracking branch 'origin/master' into d3d12 2019-07-18 12:33:52 -05:00
gibbed e14639c6c0 [CPU] Fix lzx_decompress misuse of xe::bit_count. Fixes #1402. 2019-07-18 12:33:16 -05:00
gibbed 1e5fa61030 Merge remote-tracking branch 'origin/master' into d3d12 2019-07-17 17:56:48 -05:00
gibbed c213f7d7a3 [CPU] Properly clear LZX window. 2019-07-17 17:53:59 -05:00
gibbed 29665ae79c [CPU] Minor LZX code cleanup. 2019-07-17 17:51:36 -05:00
emoose 71780838f0
[CPU] Use window size for LZX ref_data_size 2019-07-17 22:53:39 +01:00
Triang3l 7a88789ebd [D3D12] RB_STENCILREFMASK_BF and stencil constants cleanup 2019-07-14 23:49:30 +03:00
Triang3l f393c621d7 [D3D12] Fix typos in shader_compiler_main 2019-07-14 00:18:37 +03:00
Triang3l 4825e69fda [D3D12] Cleanup primitive types and front/back facing 2019-07-13 22:25:03 +03:00
Triang3l a16a746432 Merge branch 'master' into d3d12 2019-07-13 22:22:42 +03:00
Triang3l 1cc06ea3e7 [GPU] VGT major mode info, swap IsPrimitiveTwoFaced arguments 2019-07-13 22:18:06 +03:00
Triang3l 863217217e Merge branch 'master' into d3d12 2019-07-13 15:33:45 +03:00
Triang3l 244f5d4f1c [GPU] xenos.h: Add IsPrimitiveTwoFaced 2019-07-13 15:30:14 +03:00
Triang3l 929ecfa15c [D3D12] ROV: Fix stencil test result being ignored for depth 2019-07-13 12:27:15 +03:00
Triang3l 35c8b66c93 [D3D12] Add forgotten shader implicit early Z check 2019-07-11 10:15:33 +03:00
Triang3l 6672997108 [D3D12] ROV early Z and full rewrite, shader scalar optimizations 2019-07-11 09:31:58 +03:00
Margen67 aea0d8d6b3 [third_party] Update capstone to latest stable 2019-06-24 23:15:28 -07:00
Triang3l f7ea93148a Merge branch 'master' into d3d12 2019-05-25 23:03:21 +03:00
gibbed 8afb93e2d9 [PPC] Fix trailing comment in ppc_opcode_disasm.h. 2019-05-13 00:59:40 -05:00
gibbed 9d7058ac96 [PPC] Shuffle code around to make it cleaner to modify by hand.
- [PPC] Rename ppc_opcode_lookup.cc, ppc_opcode_table.cc to have a _gen
suffix to make it more obvious about their autogenerated nature.
- [PPC] Move autogenerated code from ppc_opcode_disasm.cc to
ppc_opcode_disasm_gen.cc.
- [PPC] Update ppc-table-gen to allow for blacklisting of certain
instructions that have custom disasm code.
2019-05-13 00:49:57 -05:00
eladash 67e3b1f453 [PPC] disasm: BC formatting improvements 2019-05-13 00:27:40 -05:00
gibbed 6789873620 Merge branch 'master' into d3d12 2019-05-12 07:48:18 -05:00
Rick Gibbed f0aae00e4f
Merge pull request #1353 from emoose/kernel-funcs
[Kernel] Add ObReferenceObjectByName.
2019-05-12 07:02:41 -05:00
Rick Gibbed e51686bbac
Merge pull request #1369 from jgoyvaerts/logger_fix
[Base] Flush the logger before exiting on a fatal error.
2019-05-11 11:45:00 -05:00
Jonathan Goyvaerts eb5baa41bb Shutdown logging when a fatal error occurs, this fixes the error not showing up in the log file 2019-05-11 14:58:34 +02:00
gibbed f54dddee90 Merge branch 'master' into d3d12 2019-05-04 13:09:08 -05:00
Rick Gibbed 00e061c4e4
Merge pull request #1316 from chris-hawley/master
[Base] Remove hacky fix for missing codecvt on linux.
2019-05-04 11:40:33 -05:00
Rick Gibbed 9bb20bfc36
Merge pull request #1254 from Wildenhaus/master
Games on Demand / Multi-file STFS (SVOD) support.
2019-05-04 11:30:48 -05:00
gibbed fac37e7c50 Merge branch 'master' into d3d12 2019-05-01 21:00:21 -05:00
gibbed bc9d82e2b0 [Base] Fix Travis whining. 2019-04-30 18:16:20 -05:00
gibbed 7ddcd4e32d Oops. Missed a log line for previous two commits. 2019-04-30 17:45:45 -05:00
gibbed bc0ebcb26e - Clean up log level names, no need for LOG_LEVEL_ prefix when it is an
enum class.
- Clarify usage of log level in comment.
2019-04-30 17:41:27 -05:00
gibbed 179883dc0a [App] Fix "Open" menu item text. 2019-04-30 16:44:45 -05:00
gibbed 6b772c01b9 [Base] Oops. Fix missing include. 2019-04-30 16:44:00 -05:00
gibbed cfa0a40343 [App] Add "Show content directory..." menu item. 2019-04-30 16:30:49 -05:00
gibbed 2c3207e5cc [Base] Widen LaunchBrowser. 2019-04-30 16:30:17 -05:00
Triang3l 08675ab65e [D3D12] 3D texture resolve 2019-04-25 08:37:55 +03:00
gibbed 4ceafcdf68 [UI] Reduce SetProcessDpiAwareness failure to warning. 2019-04-20 13:21:36 -05:00
Triang3l 66a9c9d812 [GPU] Store ALU result after both vector and scalar instructions 2019-04-20 20:30:01 +03:00
gibbed cd1aadef74 Merge remote-tracking branch 'origin/master' into d3d12 2019-04-20 10:59:05 -05:00
gibbed d0d18ff570 [APU] Proper register file for XMA. 2019-04-20 10:57:42 -05:00
gibbed 1dd15d4abc [App] Stub main_init for posix. 2019-04-20 10:57:41 -05:00
gibbed c965751911 Merge remote-tracking branch 'origin/master' into d3d12 2019-04-20 02:40:46 -05:00
gibbed 4f44bc3362 [App] Fix AVX check. For good this time. Hopefully. 2019-04-20 02:32:45 -05:00
gibbed 1145d57007 Undo main/wWinMain changes in preparation for new method
of doing a startup AVX check.

This reverts commit 4030cff3ec.
2019-04-20 02:32:45 -05:00
Triang3l 40ffba97d9 Merge branch 'master' into d3d12 2019-04-19 15:32:10 +03:00
gibbed 18d8a59cfa [Kernel] Initialize COM on all new XThreads. 2019-04-19 04:02:32 -05:00
gibbed 4030cff3ec - Move main, wWinMain entrypoints to their own file.
- Fix startup AVX checks.
2019-04-18 16:57:42 -05:00
gibbed a296e17f06 [App] Don't redirect stdout/stderr as the default debug arguments. 2019-04-18 15:00:25 -05:00
gibbed 827567a21a Merge branch 'master' into d3d12 2019-04-18 11:23:41 -05:00
gibbed 28a7334f5c [Vulkan] Fix missing aes_128 link for trace viewer/dumper. 2019-04-18 10:20:18 -05:00
Triang3l ec92d46480 Merge branch 'master' into d3d12 2019-04-18 17:54:57 +03:00
gibbed 593a871c84 [x64] Use vmovaps instead of movaps in emitted function prolog/epilog. 2019-04-18 09:36:06 -05:00
gibbed ffbc99926b - Update premake build script for VS2017+ build support.
- Update premake (for VS2019 support).
- Update Xenia build script to detect VS2017+ version.
- Update Xenia premake scripts due to updated premake.
- Fix cc override in Xenia build script.
2019-04-18 09:28:31 -05:00
Triang3l 35061880d9 Merge branch 'master' into d3d12 2019-04-17 16:41:03 +03:00
Triang3l 63e135590c [UI] Host breakpoint shortcut (pauses WinDbg) 2019-04-17 16:40:35 +03:00
Triang3l 3f22ff3645 [D3D12] DXT3A_AS_1_1_1_1 texture loading 2019-04-17 14:38:41 +03:00
Triang3l 4eae7d9d65 Merge branch 'master' into d3d12 2019-04-14 19:20:39 +03:00
Triang3l ab4d344fb0 [Kernel] Add forgotten aes_128 library reference 2019-04-14 19:20:06 +03:00
Triang3l ddd2a6922c Merge branch 'master' into d3d12 2019-04-14 18:09:44 +03:00
Triang3l 85e26c5dde [Kernel] XeCryptAes using openluopworld/aes_128 2019-04-14 18:08:07 +03:00
emoose 88bb173c9d [Kernel] Add XeCryptRc4* funcs 2019-04-14 15:19:56 +03:00
emoose e86bc83eee [Kernel] Add ObReferenceObjectByName 2019-04-13 19:58:06 +01:00
Triang3l 286628b75b Merge branch 'master' into d3d12 2019-04-13 20:30:17 +03:00
Triang3l 5a6b42c611 [Kernel] ExGetXConfigSetting: correct null buffer handling, better fake country 2019-04-13 20:29:00 +03:00
Triang3l 293851d0c9 [D3D12] Re-add accidentally deleted RT update trigger 2019-04-12 20:09:31 +03:00
Triang3l 8f51855c8f Revert "[D3D12] Re-add accidentally deleted RT update trigger and treat Z test and write bits separately"
This reverts commit 25cc189e99.
2019-04-12 20:04:50 +03:00
Triang3l 25cc189e99 [D3D12] Re-add accidentally deleted RT update trigger and treat Z test and write bits separately 2019-04-12 19:13:03 +03:00
Triang3l ecc056912d [D3D12] Don't drop draw calls with no render targets 2019-04-12 16:59:45 +03:00
Triang3l 93a18a517b [D3D12] Place UAV barriers for the EDRAM ROV when layout changes 2019-04-12 15:59:09 +03:00
Triang3l 45cee3f871 [D3D12] Don't create RT store pipelines with ROV 2019-04-11 12:05:13 +03:00
Triang3l 88c594ca3b [D3D12] Fix RB_COPY_DEST_PITCH handling in ResolveCopy 2019-04-10 22:35:05 +03:00
Triang3l 5e30f3a947 [D3D12] User clip planes and constant/signature refactoring 2019-04-10 16:37:06 +03:00
Triang3l 8c56d5cb98 [D3D12] Fix lint failure in RenderTargetCache::BeginFrame 2019-04-09 23:04:13 +03:00
Triang3l 4e8e75c549 [D3D12] Remove TODO for initial EDRAM clear since Windows clears allocations anyway 2019-04-09 19:45:35 +03:00
Triang3l 959b8ef19e [D3D12] Draw rectangles by mirroring one vertex across diagonal 2019-04-09 17:19:47 +03:00
Triang3l b38f9ade1b Merge branch 'master' into d3d12 2019-04-09 13:56:11 +03:00
Triang3l 81cd2506e8 [Kernel] VdSwap: Front buffer in 0xE0000000 range 2019-04-09 13:55:37 +03:00
chris-hawley fed4cb63a7 implement linux filesystem support 2019-04-08 01:06:06 -04:00
Christian Hawley b1f2f177cd Remove hacky fix for missing codecvt on linux 2019-04-08 01:06:06 -04:00
Triang3l 0367e1a536 [D3D12] Fix ps_param_gen rounding ignored with ROV 2019-04-05 23:57:29 +03:00
Triang3l 6db0ad663b [D3D12] mb_used -> used_mb in the profiler 2019-04-05 15:31:59 +03:00
Triang3l d0c8725270 [D3D12] Limit texture memory usage with LRU deletion 2019-04-05 15:19:16 +03:00
Triang3l 9a1008dacb Merge branch 'master' into d3d12 2019-04-05 13:33:11 +03:00
Triang3l 84b8b444cf [Base] Clock::QueryHostUptimeMillis: change to 64-bit 2019-04-05 13:32:34 +03:00
Triang3l 5582e63ef1 [D3D12] Resolve 16-bit RTs to unorm textures, not snorm 2019-03-07 11:21:39 +03:00
Triang3l 7049d52dbb [D3D12] Display texture cache size in the profiler 2019-03-05 10:26:40 +03:00
Triang3l d8fccb2fa0 Merge branch 'master' into d3d12 2019-03-03 18:32:32 +03:00
Triang3l 3f576b0d5a [Kernel] Expose display gamma as gflags 2019-03-03 18:31:54 +03:00
Triang3l 05c1f57007 Merge branch 'master' into d3d12 2019-03-03 14:42:11 +03:00
Maksim Derbasov 142148e594 [GPU] Fix bit check in Make Coherent logging. 2019-03-02 04:13:03 -06:00
Triang3l 57e8f05234 [D3D12] Make RG16/RGBA16 RTVs range switchable 2019-01-29 14:39:04 +03:00
Triang3l cb99afffcb [D3D12] Revert changing the sign of tfetch epsilon 2019-01-29 12:41:06 +03:00
Triang3l 0c8ce2af04 [D3D12] tfetch: change epsilon sign, add 0.5 to getWeights coords 2019-01-29 12:35:22 +03:00
Triang3l 61fd5a6dc2 [D3D12] Replicate red channel of single-channel textures 2019-01-26 14:11:09 +03:00
Triang3l 189ffca234 [D3D12] DXBC: Fix aL incrementing 2019-01-25 22:43:16 +03:00
Triang3l 80e5c56340 Merge branch 'master' into d3d12 2019-01-25 20:44:51 +03:00
Triang3l e706cf0d54 [GPU] Fix addsc/mulsc/subsc r# addressing mode not initialized 2019-01-25 20:43:53 +03:00
Triang3l ba7b6d6081 [D3D12] Memexport CPU readback, disabled by default 2019-01-25 16:33:25 +03:00
Triang3l 4a3245650f [D3D12] Optional non-GS path for quads for PIX 2019-01-25 15:09:58 +03:00
Triang3l eaefc3862f Merge branch 'master' into d3d12 2019-01-24 17:46:06 +03:00
Triang3l 4ae9266f13 [CPU] Fix vpkd3d half4 component order 2019-01-24 17:45:41 +03:00
Triang3l 9dd62c1e15 [D3D12] Alpha to coverage (w/o dithering) with RTV, tiny AtoC fixes 2019-01-21 23:41:47 +03:00
Triang3l 0a9feb5eca [D3D12] ROV: Alpha to coverage (without dithering) 2019-01-21 21:28:26 +03:00
Triang3l 6f5d616372 Merge branch 'master' into d3d12 2019-01-19 15:17:17 +03:00
Triang3l c3fcb47efe [Kernel] ExEventObjectType in ObReferenceObjectByHandle 2019-01-19 15:16:26 +03:00
Triang3l 0fc8497905 [D3D12] Fix debug config crash in back buffer stretching code 2019-01-19 14:48:46 +03:00
Triang3l b7bcdf3e8b [D3D12] Pre-create EDRAM and shared memory buffer descriptors 2019-01-17 16:39:51 +03:00
Triang3l cf7c981991 [D3D12] Cache SRV descriptors in the texture cache to copy instead of creating 2019-01-16 19:06:11 +03:00
Triang3l cf3ce4f98b [D3D12] Unhardcode forgotten pipeline creation thread count 2019-01-15 21:04:17 +03:00
Triang3l a1a1110784 [D3D12] Non-indexed line loops 2019-01-15 14:19:59 +03:00
Triang3l 17dfd84f71 [D3D12] Free two alphatest-related system constant dwords 2019-01-15 12:58:36 +03:00
Triang3l 7d7a539aee Merge branch 'master' into d3d12 2019-01-13 19:07:06 +03:00
Triang3l 8e5a11aeb4 [CPU] Add D3DCOLOR vpkd3d test with 0xFFFFFFFF 2019-01-13 19:06:14 +03:00
Triang3l 58d9c6f33f Merge branch 'master' into d3d12 2019-01-13 17:29:44 +03:00
Triang3l 949b05f517 [CPU] Fix saturation in D3DCOLOR vpkd3d 2019-01-13 17:29:06 +03:00
Triang3l 27a8e4259e [D3D12] DXBC: Fix 0*anything check with negated operands 2019-01-12 18:52:06 +03:00
Triang3l b8d1bb740b [GPU/D3D12] Fix CTX1 component order 2019-01-12 14:28:32 +03:00
Triang3l e5bcedfd1f [D3D12] DXBC: Fix 0*anything check in muls_prev 2019-01-12 13:07:45 +03:00
Triang3l ef523823d5 [D3D12] Force early Z with DSV, fix blend disabled flag in rb_colorcontrol ignored 2019-01-11 17:07:33 +03:00
Triang3l d7ed044be1 [D3D12] Don't cull points and rectangles 2019-01-09 16:25:03 +03:00
Triang3l 8ad12480a4 [D3D12] Copy index buffer to a scratch buffer for memexporting draws 2019-01-09 13:19:49 +03:00
Triang3l aabe6dec9c [D3D12] Fix log level of pipeline creation messages 2019-01-08 14:14:14 +03:00
Triang3l 0e9428f1bc Merge branch 'master' into d3d12 2019-01-08 01:40:08 +03:00
Triang3l ae6fd98c3c [CPU] Ignore upper bits of shift amount in srdx/srwx 2019-01-08 01:39:21 +03:00
Triang3l 77e9ab342c [D3D12] DXBC: Don't update coverage in the depth-only pixel shader 2019-01-06 20:13:23 +03:00
Triang3l 75ec48d225 [D3D12] DXBC: Don't declare shared memory SRV in the depth-only pixel shader 2019-01-06 18:41:54 +03:00
Triang3l 6c48f209a1 [D3D12] Fix 7e3 and 20e4 denormal conversion 2019-01-06 15:10:55 +03:00
Triang3l bc89a5822b [D3D12] Memexport: Fix red/blue swap not being in the write mask 2019-01-05 21:14:06 +03:00
Triang3l 1523a1f662 [D3D12] Use 3/4 of logical cores for pipeline creation, cleanup pipeline log messages 2019-01-04 14:30:26 +03:00
Triang3l 890228b6f3 [D3D12] Prototype multithreaded PSO creation 2019-01-04 00:30:11 +03:00
Triang3l 364cae6cc8 [D3D12] Use deferred command list 2019-01-03 15:08:49 +03:00
Triang3l f0c662fa1e [D3D12] Deferred command list class 2019-01-02 23:46:24 +03:00
Triang3l a97fc28ee2 [D3D12] Use multimap for pipelines 2019-01-01 23:13:26 +03:00
Triang3l 1cea4062c0 [D3D12] Rewrite pipeline cache for compact storage of pipeline descriptions 2019-01-01 22:20:50 +03:00
Triang3l 317e5c3ce2 [D3D12] Some stats in the profiler, tweak tiled buffer heap sizes 2018-12-30 15:09:58 +03:00
Triang3l 87d663d7e0 [D3D12] Disable adaptive tessellation temporarily because of cracks 2018-12-29 21:12:21 +03:00
Triang3l 928e46c8b2 [D3D12] Adaptive tessellation of triangle patches 2018-12-29 20:53:41 +03:00
Triang3l 14476e5453 [D3D12] Rename 2_10_10_10 AS_16 RT format to AS_10 2018-12-29 14:59:10 +03:00
Triang3l 616739048b Merge branch 'master' into d3d12 2018-12-29 14:55:17 +03:00
Triang3l 54b211ed18 [GPU] Rename 2_10_10_10 AS_16 RT format to AS_10 2018-12-29 14:54:01 +03:00
Triang3l af96b68398 [GPU] Copy SurfaceNumFormat comment from D3D12 branch 2018-12-29 14:18:10 +03:00
Triang3l cbfc00f80e [D3D12] Debug option to display tessellation as wireframe 2018-12-28 14:37:39 +03:00
Triang3l 43866092a5 [D3D12] Update some comments about numeric formats 2018-12-28 14:12:09 +03:00
Triang3l f3e3bbc4fa Revert "[D3D12] ROV: Round unorm/snorm to nearest rather than nearest even"
This reverts commit 216998eb56.
2018-12-28 14:05:13 +03:00
Triang3l 216998eb56 [D3D12] ROV: Round unorm/snorm to nearest rather than nearest even 2018-12-28 08:25:41 +03:00
Triang3l 5860a8fdc6 [D3D12] DXBC: Add a missing STAT increment to memexport 2018-12-28 08:13:35 +03:00
Triang3l ed09cac440 [D3D12] DXBC: vfetch RoundIndex, vertex index signedness fixes 2018-12-28 08:11:34 +03:00
Triang3l ec7667ce1b [D3D12] Broken memexport shader code 2018-12-27 20:43:17 +03:00
Triang3l bd9aae016f [D3D12] DXBC: eA and eM registers 2018-12-22 19:51:12 +03:00
Triang3l e803ee84d5 [D3D12] Bind shared memory as UAV with memexport 2018-12-22 15:39:47 +03:00
Triang3l 645f450321 [D3D12] DXBC: Fix UAV and sampler operands 2018-12-22 14:26:18 +03:00
Triang3l 6025599d3b [D3D12] Request memory for memexport in shared memory 2018-12-22 00:57:31 +03:00
Triang3l 0aeff797e5 [D3D12] DXBC: Allocate multiple registers with PushSystemTemp 2018-12-21 22:54:26 +03:00
Triang3l 72e9ac5c28 [GPU] Shader translator: More memexport validation 2018-12-21 22:24:09 +03:00
Triang3l 73baaa8e89 [GPU] Gather eA/eM# writes in shader translator 2018-12-21 10:06:41 +03:00
Triang3l 090bf8e353 [D3D12] Change RT in the title to something less ambiguous and more googlable 2018-12-20 20:48:15 +03:00
Triang3l adc0eb87f6 [GPU] Gather used memexport constants in shader translator 2018-12-20 10:14:18 +03:00
Triang3l dc0b468ea8 Merge branch 'master' into d3d12 2018-12-19 22:51:26 +03:00
Triang3l 486a5725e3 [GPU] xenos.h: tessellation, memexport constant 2018-12-19 22:50:43 +03:00
Triang3l c84511a5f1 [GPU/D3D12] Update tessellation enums 2018-12-19 18:23:54 +03:00
Triang3l cbba86fcf0 [D3D12] Split DXBC shader translator into multiple files 2018-12-19 14:24:16 +03:00
Triang3l 2de0e26606 [D3D12] DXBC: Remove ugly useless indexable temp fallback 2018-12-16 13:03:03 +03:00
Triang3l 03f440582d Merge branch 'master' into d3d12 2018-12-16 12:49:09 +03:00
gibbed eee4d91621 [App] Hopefully fix CPU support check for AVX so it will function on CPUs without AVX. 2018-12-15 23:36:07 -06:00
gibbed 85b714f2af [Base] Make --win32_high_freq=false actually work. 2018-12-15 22:56:36 -06:00
Wildenhaus 798e88224a Ordinal offset calculation for games with many files 2018-12-15 20:27:15 -05:00
Triang3l 574f85cc15 [D3D12] Refactoring: DXBC -> Dxbc 2018-12-14 13:25:07 +03:00
Triang3l 952819ed87 [D3D12] Don't 4KB-align sizes of resolve destinations 2018-12-13 15:22:16 +03:00
Triang3l 2b55ec86ea [GPU] Shader Compiler: Expose domain shader output 2018-12-13 14:52:50 +03:00
Triang3l 2b646ff425 [D3D12] Fake per-edge tessellation with continuous 2018-12-12 22:12:32 +03:00
Triang3l 19d7e0ce3d [D3D12] Use WideCharToMultiByte for graphics adapter name 2018-12-11 09:41:06 +03:00
Triang3l 7698944673 [D3D12] Swap red and blue in 8bpp gamma ramp 2018-12-09 15:53:57 +03:00
Triang3l 1ee3ed03fd [D3D12] DXBC: Skip loading and some ALU ops for identical operands 2018-12-09 00:20:13 +03:00
Triang3l 352a443c67 [D3D12] DXBC: Small cleanup of something ugly in subs_prev 2018-12-08 19:18:56 +03:00
Triang3l e1f0e9c84a [D3D12] DXBC: Slightly shorten SM3 mul behavior emulation 2018-12-08 16:42:30 +03:00
Triang3l 9427667a27 [D3D12] Experimental 2x resolution scale 2018-12-06 10:38:13 +03:00
Triang3l 132af3e266 [D3D12] DXBC: Don't skip invariant driver optimizations 2018-12-04 12:29:27 +03:00
Triang3l 21def8a522 Merge branch 'master' into d3d12 2018-12-03 21:27:28 +03:00
gibbed 64b2be92d6 [Kernel] Retain handle in ExCreateThread. Game closing a created thread's handle shouldn't result in its handle being freed. 2018-12-03 12:09:24 -06:00
gibbed dcde6308bb [Kernel] Simplify KeWaitForMultipleObjects. 2018-12-03 12:08:22 -06:00
gibbed 12629fe101 [Kernel] Change dummy HDD to 3GB free/4GB total. 2018-12-03 12:07:42 -06:00
gibbed 9dc46eee85 [Kernel] Null terminate string in XamContentGetDeviceName. 2018-12-03 12:00:56 -06:00
gibbed 947eef4701 [Kernel] Static size assert for X_CONTENT_DEVICE_DATA. 2018-12-03 11:54:47 -06:00
gibbed aa38d4b77b [Kernel] Zero out device data in XamContentGetDeviceData. 2018-12-03 11:54:23 -06:00
Triang3l bb53d722f9 [D3D12] Don't use switch in shaders on Intel, log GPU name 2018-12-03 16:31:49 +03:00
gibbed 6824905b78 Merge branch 'master' into d3d12 2018-11-29 12:39:13 -06:00
gibbed 919882dd68 [Kernel] Fix use of wrong macro in XamEnumerate for extended error. 2018-11-29 12:34:56 -06:00
Wildhaus 151a955c6a Support EGDF and XSF layouts 2018-11-28 10:08:07 -05:00
Triang3l 5b9e4b5886 Merge branch 'master' into d3d12 2018-11-27 11:05:14 +03:00
gibbed 527f960288 [Kernel] Proper size in XamUserCreateAchievementEnumerator. 2018-11-26 20:43:41 -06:00
gibbed 248b661d14 [Kernel] Maybe fix XamEnumerate, again?
Some titles, when using XamEnumerate synchronously, expect X_ERROR_NO_MORE_FILES as the return value.
Some titles, when using XamEnumerate asynchronously, expect X_ERROR_FUNCTION_FAILED as the overlapped result.
2018-11-26 19:53:03 -06:00
Triang3l f634e94227 [D3D12] ROV: Don't mark Z of PS SV_Position as used in dcl 2018-11-26 20:53:34 +03:00
gibbed 2398b1b8f4 [Vulkan] Use epsilon equality for checking rectangle list form. 2018-11-26 11:51:02 -06:00
gibbed af206addd1 Optimize SPIRV code generated via genspirv command. 2018-11-26 11:49:36 -06:00
Triang3l b56f8f9c7c Merge branch 'master' into d3d12 2018-11-26 20:45:52 +03:00
gibbed da8f094bf8 [App] Fix Travis whining. 2018-11-26 11:21:37 -06:00
gibbed e7d77f4780 Clarify AVX requirement error message. 2018-11-26 10:33:22 -06:00
gibbed 08be8af5c0 [App] Abort out early with an error message if CPU does not support AVX. 2018-11-26 10:24:17 -06:00
gibbed 28b494dadc [Kernel] Stub XMsg app 0x000000FE/msg 0x00020021. 2018-11-26 10:21:09 -06:00
gibbed 5b2b2a3cc1 [Kernel] Fix logging of app for XMsgInProcessCall/XMsgSystemProcessCall/XMsgStartIORequest/XMsgStartIORequestEx. 2018-11-26 09:04:10 -06:00
gibbed 9058868c96 Merge branch 'master' into d3d12 2018-11-26 07:41:47 -06:00
gibbed 03d6de997c [Kernel] Some titles seem to explicitly expect X_ERROR_FUNCTION_FAILED to mean no more files when enumerating content. 2018-11-26 07:33:21 -06:00
Triang3l d5f7d96be9 [D3D12] Rename d3d12_adapter_index to d3d12_adapter 2018-11-26 08:03:16 +03:00
Triang3l f3d34c1d88 [D3D12] Add max GPU virtual address bits to D3D12Provider 2018-11-26 08:02:15 +03:00
Triang3l a03dd839f0 [D3D12] Change error message link to HTTPS 2018-11-26 07:33:13 +03:00
Triang3l 355d33dadd [D3D12] Rename feature gflags 2018-11-25 23:25:56 +03:00
Triang3l ab2e1b1ca7 Merge branch 'master' into d3d12 2018-11-25 20:13:44 +03:00
gibbed bd45a5defd [Kernel] Fix timeout in NtWaitForMultipleObjectsEx. 2018-11-25 11:06:57 -06:00
gibbed e91e1c8824 [Kernel] Tag XAudioGetVoiceCategoryVolume as high frequency. 2018-11-25 10:19:40 -06:00
gibbed 894034a9b0 [Kernel] Tag RtlMultiByteToUnicodeN, RtlUnicodeToMultiByteN as high frequency. 2018-11-25 10:02:29 -06:00
gibbed 70b07712b2 [Kernel] Research on C++ exceptions. 2018-11-25 10:01:22 -06:00
gibbed 64403d5dc6 [Kernel] Don't directly call RtlNtStatusToDosError export. 2018-11-25 09:58:03 -06:00
gibbed 216bec15f6 [Kernel] Stub XamQueryLiveHiveW. 2018-11-25 09:56:22 -06:00
Triang3l 9a58841219 [D3D12] ROV: Use MSAA instead of SSAA 2018-11-25 16:37:38 +03:00
gibbed 9709a230fb Merge branch 'master' into d3d12 2018-11-25 05:12:41 -06:00
gibbed 4dfe83af6c [Kernel] Fix threading issues caused by direct use of exports. 2018-11-25 05:08:16 -06:00
gibbed e6dbd8905c [Kernel] Stub XLiveBaseGetNatType. 2018-11-25 03:46:44 -06:00
Triang3l beebed4ca2 Merge branch 'master' into d3d12 2018-11-25 12:44:30 +03:00
gibbed 20315850db [Kernel] Stub XamFeatureEnabled. 2018-11-24 20:53:45 -06:00
gibbed 08fb15fcca [Kernel] Oops. 2018-11-24 19:16:14 -06:00
gibbed 3baf668055 [Kernel] Implement ExAcquireReadWriteLockExclusive, ExReleaseReadWriteLock. 2018-11-24 19:04:42 -06:00
gibbed c98f6af1d8 [Kernel] Better stub XAM online schema. 2018-11-24 17:47:24 -06:00
gibbed 9162bc2af9 [CPU] Fix Travis whining. 2018-11-24 16:21:06 -06:00
gibbed 5679b0f0c7 [CPU] Fix XEX2 delta patching. 2018-11-24 15:16:39 -06:00
gibbed 77f9e1516e [CPU] Minor cleanup in LZX. 2018-11-24 15:16:02 -06:00
gibbed 5f764fc752 [CPU] Move LZX code to its own files. 2018-11-24 15:02:03 -06:00
gibbed dd3a049b23 [CPU] Oops. 2018-11-24 15:00:00 -06:00
Triang3l cb4fb451bf Merge branch 'master' into d3d12 2018-11-24 18:40:22 +03:00
gibbed f7501750d9 [CPU/Kernel] Correct size check when parsing XEX_HEADER_IMPORT_LIBRARIES. 2018-11-24 09:38:21 -06:00
gibbed fb50f02a98 [Base] Properly flush remaining writes out before shutting down logging. 2018-11-24 08:54:46 -06:00
Triang3l 5c1efe7b9a Merge branch 'master' into d3d12 2018-11-24 16:26:27 +03:00
gibbed 24dd0267bf [Kernel] Oops. 2018-11-24 04:07:56 -06:00
gibbed 207589e5a1 [CPU/Kernel] Correct parsing of XEX_HEADER_IMPORT_LIBRARIES. 2018-11-24 04:05:41 -06:00
Dr. Chat b3d509eb01 [x64] Swap to using anchor variables instead of dummy function calls 2018-11-23 18:02:04 -06:00
Dr. Chat df964015a4 [x64] Fix improper use of compare_exchange_strong when adjusting code commit mark 2018-11-23 18:02:04 -06:00
Dr. Chat 384ec98a42 [x64] Allow the JIT to use volatile registers 2018-11-23 18:02:04 -06:00
Dr. Chat b57bb74965 [x64] Change the parameters to host_to_guest_thunk
Shuffle some code around in x64_backend.cc
Add GetNativeParam to avoid hardcoding parameters
2018-11-23 18:02:04 -06:00
Dr. Chat c451fda819 [x64] Template-ize a few vector emulation functions 2018-11-23 18:02:03 -06:00
Dr. Chat 4571e8207a [x64] Minor cleanups in emitter 2018-11-23 18:02:03 -06:00
Dr. Chat b2f9d54e7e [x64] Factor out memory handling code 2018-11-23 18:02:03 -06:00
Dr. Chat bb74114cab [x64] Factor out control code 2018-11-23 18:02:03 -06:00
Dr. Chat c318009733 [x64] Factor out vector handling code 2018-11-23 18:02:03 -06:00
Dr. Chat 6861cce492 [x64] Factor out a lot of the opcode handling code 2018-11-23 18:02:02 -06:00
Dr. Chat 696c3cd439 [x64] Remove most of RegisterSequences 2018-11-23 18:02:02 -06:00
gibbed d87ae26895 [CI] Fix mspack linking even more. 2018-11-23 17:58:38 -06:00
gibbed 213e688173 [Kernel] Fix some stuff from PR merge. 2018-11-23 17:27:35 -06:00
emoose 933588717e [Kernel] Add XamGetOnlineSchema export, returns dummy data 2018-11-23 16:38:34 -06:00
emoose 8c6e0b86f9 [Kernel] swprintf_s -> swprintf, change how Format*String/Build*ResourceLocator exports copy text
New way of copying the text should make it less likely for any buffer overflows to occur.
2018-11-23 16:38:34 -06:00
emoose 958882a3ea [Kernel] Add ExConsoleGameRegion export variable (set to 0xFFFFFFFF) 2018-11-23 16:38:34 -06:00
emoose 65e8872dc1 [Kernel] Add _vsnwprintf export 2018-11-23 16:38:34 -06:00
emoose 8efbe32867 [Kernel] Add XamBuild*ResourceLocator & XamFormat*String exports
Resource locators are just strings that say where to find a resource, they can either point to a file path or to an XEX resource.
Normally the Gamercard/SharedSystem exports use XamBuildResourceLocator to make a locator for the resources inside xam.xex.
But since our xam won't have those resources I've made it point them to a local file instead (by passing 0 as the module param for XamBuildResourceLocator).
The resources will have to be extracted to the XEX's local path for it to find them though (and XEX will need to have media:\ symlinked too)

The XamFormat*String exports are really windows-only right now, but they'll at least empty the buffer for other platforms.
They'll also always output MM/DD/YYYY no matter what locale the system is, on 360 this is localized properly of course.

I've renamed XamBuildSharedResourceLocator_ to XamBuildLegacySystemResourceLocator too since that seems to be the proper name for it.
In earlier Xams this just pointed to ...SharedSystemResourceLocator (as does this code), but later versions seem to have their own function.
2018-11-23 16:38:34 -06:00
emoose c5056c644f [Kernel] Add XamNotifyCreateListenerInternal export (1 unknown param)
Just changed the existing XamNotifyCreateListener import to ...CreateListenerInternal, and made a new XamNotifyCreateListener that just calls the internal version.
2018-11-23 16:38:34 -06:00
emoose 5e9e226c94 [Kernel] Add XamContentCreateDeviceEnumerator export
Also changed name field of DeviceInfo to be a wchar_t* of known length, makes it match the X360 DeviceInfo struct more closely and it's easier to make sure things reading it won't overflow anything.
2018-11-23 16:37:04 -06:00
gibbed d68c27d78b [CI] Fix mspack linking. 2018-11-23 15:57:21 -06:00
gibbed 7226c9e047 Update mspack, add to premake, and fix missing license. Fixes #1252. 2018-11-23 15:32:55 -06:00
gibbed 4c53bc5c9a [x64] Fix Travis whining. 2018-11-23 12:03:09 -06:00
gibbed 5fbcb8991e [JIT] Run the SimplificationPass/ConstantPropagationPass until there are no changes. 2018-11-23 12:01:10 -06:00
gibbed b121f45c7f [JIT] Assert that other is constant in set_from. 2018-11-23 10:46:27 -06:00
Triang3l ff363d85be Merge branch 'master' into d3d12 2018-11-23 19:08:43 +03:00
gibbed 996093e499 [x64] Support constant src1 for Int32 VECTOR_SHL_V128/VECTOR_SHR_V128. 2018-11-23 09:33:30 -06:00
gibbed b24936d248 [Kernel] Tag XamUserGetSigninState as high frequency. 2018-11-23 09:02:49 -06:00
gibbed 7d07720de1 [JIT] Zero constant propagation for OPCODE_SHL/OPCODE_SHR. 2018-11-23 08:02:09 -06:00
gibbed 4c04a9383a [JIT] Fix constant propagation for OPCODE_SELECT. 2018-11-23 07:52:14 -06:00
gibbed 94284ea9aa [CPU] Fix null termination in HIRBuilder::CommentFormat. 2018-11-23 07:50:42 -06:00
gibbed d04c748773 [App] Log content root. 2018-11-22 17:40:38 -06:00
gibbed 00261b9ca0 [App] Get absolute path of content root in all cases. 2018-11-22 17:40:22 -06:00
gibbed 69463033b1 [Kernel] Don't trust buffer length in XamEnumerate when it matches items per enumerate. 2018-11-22 16:49:01 -06:00
gibbed db234309bf [Kernel] Fix logging of broken XamEnumerate usage. 2018-11-22 16:36:19 -06:00
Triang3l da280347c4 Merge branch 'master' into d3d12 2018-11-22 21:01:05 +03:00
gibbed 086d7e9da7 [Input] Dynamically link to XInput. 2018-11-22 10:46:48 -06:00
gibbed 86d2c9ae1e Fix Travis whining. 2018-11-22 09:48:04 -06:00
Margen67 896ac4a682 Update documentation.
- Convert http to https, provide archive link when possible.
- Made CPU-JIT.png more readable on dark themes;
Added a white background so there isn't black text on a black
background.
2018-11-22 09:20:09 -06:00
gibbed 9f895c3f14 [UI] Use DPI APIs when available. 2018-11-22 08:30:30 -06:00
gibbed 5c473a5203 [Base] Fix missing include in filesystem_posix. 2018-11-22 06:41:58 -06:00
gibbed 463f21e484 [Kernel] Cleanup XamLoaderSetLaunchData, XamLoaderGetLaunchData. 2018-11-22 04:29:35 -06:00
gibbed 473b9d3c3a [Kernel] Don't trust buffer_length in XamEnumerate. 2018-11-22 04:28:46 -06:00
gibbed 683de76b9b [Kernel] Remove stray logging in NtReleaseMutant. 2018-11-21 18:07:46 -06:00
gibbed 1ba5dd5eb1 Use platform-specific user directory to store content. Create a file named portable.txt next to xenia.exe to restore previous behavior. 2018-11-21 18:07:45 -06:00
gibbed eb55d68e1f [Kernel] Tag MmQueryAddressProtect as high frequency. 2018-11-21 17:54:28 -06:00
Rick Gibbed b7a4abc6f6
Merge pull request #1178 from Jeremy517/master
Persist title-specific profile content
2018-11-21 16:47:28 -06:00