Commit Graph

4793 Commits

Author SHA1 Message Date
Triang3l 1014458783 [D3D12] Only await submission fence in one place 2020-09-29 21:17:20 +03:00
Triang3l 0156d3ef26 [D3D12] Await UpdateTileMappings when syncing with the GPU 2020-09-28 12:16:09 +03:00
Triang3l c2e8c5554d [UI] Replace ImmediateTexture handles with pointers + small cleanup 2020-09-27 16:30:53 +03:00
Triang3l f5f8714c3f [D3D12] Delayed ImmediateTexture releasing 2020-09-27 16:21:14 +03:00
Triang3l d437555036 [UI] Remove immdraw restrict_texture_samples + cleanup 2020-09-26 22:06:04 +03:00
Triang3l 18031a8f6d [D3D12] Immdraw texture upload leak fix + cleanup 2020-09-26 18:36:31 +03:00
Triang3l c218d6dc10 [D3D12] Move D3D12ImmediateTexture to D3D12ImmediateDrawer 2020-09-21 23:15:51 +03:00
Triang3l dfeeb959c3 [D3D12] Swap R/B in Capture 2020-09-21 21:56:30 +03:00
Triang3l fc55b1f81d [UI] Remove pass-unfriendly UpdateTexture of ImmediateDrawer 2020-09-20 20:34:22 +03:00
Triang3l 183c7eee2b [D3D12] Various refactoring mostly on the immediate drawer side, cache immdraw scissor, force stretch alpha to 1 2020-09-20 15:15:08 +03:00
Triang3l 6ba0620b10 [UI] Fix build error due to undeclared size_t 2020-09-18 21:20:37 +03:00
Gliniak ba565c3403 [Kernel/Usbcam] XUsbcamCreate
- Provided description to some parameters
- Provided description what function more/less should do
- Changed return code based on game behaviour
2020-09-17 23:14:33 +03:00
Triang3l 5c291d0589 [D3D12] Remove unneeded code things from pools 2020-09-17 22:55:16 +03:00
Triang3l 3236d0ae75 [D3D12] Fix DescriptorHeapPool closing comment 2020-09-17 22:01:41 +03:00
Triang3l 1ebd0067f0 [Vulkan Old] Fix build error caused by constexpr countof 2020-09-17 21:51:44 +03:00
Triang3l 7c2245bb94 [UI] Remove GraphicsUploadBufferPool double include 2020-09-17 21:39:11 +03:00
Triang3l 189a38826f [UI] UploadBufferPool common code 2020-09-17 21:37:44 +03:00
Triang3l 2cebd3cabe [D3D12] Unify UploadBufferPool page size (2 MB), add alignment parameter 2020-09-15 22:13:53 +03:00
Triang3l dfbe36a8aa [UI/D3D12] Small refactoring, allow BeginSwap to return false if no surface 2020-09-14 23:27:19 +03:00
Triang3l acb1fc059f [D3D12] Make the feature list in the log sorted again 2020-09-06 00:57:00 +03:00
Triang3l 38e0cc4941 [D3D12] Non-zeroed heaps on 2004 2020-09-06 00:52:30 +03:00
Triang3l b3f84f4a9c [GPU] Rename present_stretch to present_rescale 2020-09-05 19:34:36 +03:00
Triang3l 74804ae710 [DXBC] ROV: Fix depth being overwritten if stencil failed 2020-09-05 19:23:45 +03:00
Triang3l 0be0eb2b38 [GPU/D3D12] Letterboxing cropping to action-safe area 2020-09-05 17:47:32 +03:00
Triang3l 52efbcf741 [Memory] Fix Protect range calculation 2020-09-01 12:44:37 +03:00
Triang3l 1e9ee8f43b [D3D12] Change most subsystem pointers to references 2020-08-30 22:07:35 +03:00
Triang3l c5dd7403f0 [D3D12] Change swap chain format to BGRA 2020-08-30 18:59:53 +03:00
Triang3l deff124ce5 [D3D12] Add xenia-ui-window-d3d12-demo 2020-08-30 16:56:06 +03:00
Gliniak 7fd1991074 [Kernel/Object] Added base to object handle 2020-08-29 15:17:31 +03:00
Triang3l 1b3db70a07 [GPU] Fix negative shift build error 2020-08-29 00:22:15 +03:00
Triang3l 210c30aef9 [D3D12] Fix resolve not syncing with CPU memory and memory extent calculation 2020-08-28 23:49:23 +03:00
Triang3l a1d33615b0 [DXBC] Inline depth/stencil test 2020-08-27 23:46:41 +03:00
Triang3l fd14a68420 [Kernel] NtQueryVirtualMemory state test case info 2020-08-27 16:59:42 +03:00
Triang3l c2c263f34a [Kernel] Return only one state from NtQueryVirtualMemory 2020-08-27 15:47:51 +03:00
Gliniak eac7e2cd1f [Kernel/Memory] NtQueryVirtualMemory - Added support for returning X_MEM_FREE state 2020-08-27 14:55:02 +03:00
Gliniak b3e537a5bf [Base] Use enum instead of define for X_PAGE_* 2020-08-27 14:55:02 +03:00
Gliniak 4908754d84 [Base] Use enum instead of define for X_MEM_* 2020-08-27 14:55:02 +03:00
Gliniak 4f5c313fe3 [Kernel/XAM] Added Support For: XamContentDeleteInternal
Now some EA games should have working savefiles
2020-08-25 20:51:01 +03:00
Triang3l dffdf92e39 [Vulkan] Remove stillborn vk project 2020-08-22 23:31:52 +03:00
Triang3l 82ca0a7eec [D3D12] Slightly cleanup DXC object initialization 2020-08-22 23:21:00 +03:00
Triang3l 0c13b239fd [D3D12] DXILConv disassembly dumping option 2020-08-22 23:15:50 +03:00
Jonathan Goyvaerts 92e445f01a [App] Add portable as a launch option in addition to checking for portable.txt existence 2020-08-21 20:31:19 +03:00
Triang3l 6dc94d9154 [DXBC] ROV: Inline color ROP 2020-08-16 17:10:07 +03:00
Triang3l 9428af52e4 [CPU] break_on_unimplemented_instructions cvar 2020-08-09 22:01:54 +03:00
Triang3l 36501be9f8 [D3D12] Remove now-unused d3d12_resolution_scale_resolve_edge_clamp cvar 2020-08-09 21:36:09 +03:00
Triang3l bd5f77bc3b [GPU] Common resolve code based on compute shaders, swap MSAA samples 1 and 2, change ROV write rounding, random refactoring 2020-08-09 21:33:10 +03:00
Silent 72e41e2bf8 Fix building with XE_OPTION_ENABLE_LOGGING off 2020-08-08 23:26:49 -05:00
Triang3l 9418f3f2c5 [D3D12] Fix a storing typo in the DXT3 decompression shader 2020-07-14 17:45:41 +03:00
gibbed c99c430665 [Kernel] Reject IO for invalid characters.
[Kernel] Reject IO for paths with invalid characters.
2020-07-12 12:22:24 -05:00
Joel Linn 41cf7c7a63 [Input] Fix doubling with any enabled.
Keystrokes from multiple backends where mixed.
Effectively doubling all keystroke inputs.
2020-07-12 08:57:21 -05:00
Joel Linn 993393a939 [ImGui] Fix context initialization.
Every context after the first wasn't initialized properly.
2020-07-12 08:56:45 -05:00
Gliniak ab2b9393c2 [Kernel] Implemented NtQueueApcThread 2020-07-12 08:56:15 -05:00
Triang3l b84239d507 [GPU] xenos.h: max texture size, interpolators 2020-07-11 18:56:56 +03:00
Triang3l 79413345af [C++17] static constexpr variables are implicitly inline now 2020-07-11 16:44:57 +03:00
Triang3l f8320d53d7 [D3D12] Fix bitfield lint errors 2020-07-11 16:31:16 +03:00
Triang3l 4bb0ca0e09 [GPU] Move all xenos.h to gpu::xenos, disambiguate Dimension/TextureDimension 2020-07-11 15:54:22 +03:00
Triang3l 39490f3c3a [GPU] Centroid interpolation usage comment 2020-07-09 12:22:45 +03:00
Triang3l 1547b9df41 [D3D12] Interpolation at centroid 2020-07-08 23:20:36 +03:00
Triang3l 829c6ee2b0 [D3D12] Dithered alpha to coverage 2020-07-07 23:09:53 +03:00
Cancerous 596f1691c0 [XAM] - correct storage device ID fixes saving and storage detection in many games
most of the games this can be evidenced in are Unreal Engine titles or games that otherwise do not work in master yet but it can be shown in Saints Row 2 that does work in the master branch
this ID was found from debugging games where storage device detection wasn't working and reverse engineering of Unreal Engine 3
2020-07-07 01:57:40 -05:00
Triang3l 0fbf0eec9d [DXBC] ROV: Inline 24-bit depth conversion 2020-07-05 22:50:24 +03:00
Triang3l 713f26b5c8 [D3D12] Use typed buffers for texture untiling, calculate guest address once per thread 2020-07-03 20:03:53 +03:00
Triang3l 1d35ba9ee7 [D3D12] Fix bindless sampler offset 2020-06-23 23:51:59 +03:00
Triang3l d26f84b36b [D3D12] Untile whole mip tail to make alignment assumptions later, other mip fixes 2020-06-23 23:49:42 +03:00
Triang3l bd1a1e2de3 [D3D12] Lint root_parameters_bindless 2020-06-20 12:30:07 +03:00
Triang3l dbc7794399
[D3D12] Enable bindless resources by default 2020-06-20 01:27:31 +03:00
Triang3l 40e335e2a9 [D3D12] Bindless textures/samplers 2020-06-19 23:52:33 +03:00
Triang3l 9f789e01b6 [DXBC] Fix and cleanup depth-only PS register usage 2020-06-07 15:21:31 +03:00
Triang3l 2cd69092ce [Kernel] Fix incorrect C-like structure declaration 2020-06-06 22:25:48 +03:00
Triang3l 8a64861ec0 [DXBC] New tfetch: pre-swizzle signs, additive LOD + refactoring 2020-06-06 19:12:34 +03:00
Joel Linn 68dd818029 [GPU] Add workaround for occlusion queries. 2020-06-01 22:40:55 -05:00
Triang3l aa73d652ba [DXBC] OpenGL snorm vfetch because why not 2020-05-24 19:25:35 +03:00
Triang3l 04ca28c902 [DXBC] Unbreak signed integer vfetch + don't multiply by 1 in normalization 2020-05-23 19:04:42 +03:00
Triang3l 7f2d9ca929 [D3D12] Revert half-pixel offset through viewport because of SSAA issues 2020-05-23 18:37:28 +03:00
Triang3l 3879ff29b3 [DXBC/GPU] vfetch to new codegen, signed vfetch offset, fix AND with system flags 2020-05-23 17:15:11 +03:00
Gliniak e80115020e [Kernel/XAM] Implemented XamContentCreateInternal 2020-05-18 14:07:07 -05:00
Triang3l 3d2b04333e [D3D12] RT Cache: Fix typos (in something broken anyway) 2020-05-17 16:05:22 +03:00
Triang3l cf0ddc7549 [D3D12] Disable the proper D3D12 warning about render targets 2020-05-17 13:32:19 +03:00
Triang3l 581646cff2
[GPU] Lint xe_gpu_texture_fetch_t 2020-05-17 01:38:15 +03:00
Triang3l b7a5c24bb1 [D3D12] d3d12_break_on_error + fix PerformSwap descriptor heap wrap 2020-05-17 00:26:04 +03:00
Triang3l 8341a48210 [D3D12] Fix state of textures bound to both VS and PS 2020-05-16 19:33:22 +03:00
Triang3l fdd97fc831 [D3D12] Reword clamp FIXME because WONTFIX 2020-05-16 00:19:18 +03:00
Triang3l 8c2f607793 [GPU] Notes about tiled offset patterns 2020-05-14 23:42:54 +03:00
Triang3l 35abd8e2e8 [D3D12] Actually properly select tessellation mode 2020-05-11 22:47:07 +03:00
Triang3l 0d14ae01bb [D3D12] Allow non-adaptive tessellation for patch primitive types, and all triangle and quad tessellation modes 2020-05-11 22:40:52 +03:00
Triang3l 4631b2b16c [D3D12] Apply half pixel offset through viewport, remove some 2560 references 2020-05-11 20:37:02 +03:00
Triang3l 6d0e4787fb [DXBC] Use div for vtx_fmt w0 instead of rcp 2020-05-11 16:51:48 +03:00
Triang3l a3b4c77fdb [GPU] Add texture_util::SwizzleSigns for later 2020-05-11 16:30:09 +03:00
Triang3l b256005b7a [GPU] Fix GatherInstructionInformation enum values not handled warning 2020-05-11 00:28:26 +03:00
Triang3l 814990f686 [DXBC] ALU scalar ops to new codegen 2020-05-10 20:57:33 +03:00
Triang3l ef37cbb955 [DXBC] Fix an outdated comment about cube operands 2020-05-10 16:35:40 +03:00
Triang3l b79ba69548 [DXBC] ALU vector ops to new codegen 2020-05-10 16:33:39 +03:00
Triang3l 3aa0ce3096 [GPU] Shader translator refactoring (mostly ALU), fixes for disassembly round trip and write masks 2020-05-08 23:57:51 +03:00
Triang3l 8f91e580f4 [D3D12] d3d12_queue_priority cvar 2020-05-04 18:55:31 +03:00
Triang3l 62919330b9 [D3D12] Add missing initialization failure handling 2020-05-04 17:15:51 +03:00
Triang3l f7ad631057 [GPU] ucode doc: revert one accidentally changed character 2020-04-26 17:01:01 +03:00
Triang3l 07e4f84c2b [GPU] ucode doc: A2xx ALU names, DX9 rules, cube 2020-04-26 16:53:13 +03:00
Triang3l 96a61bc623 [DXBC] All prologues and epilogues to new DXBC code 2020-04-26 13:51:25 +03:00
Triang3l 1799585e92 [DXBC] Control flow to new DXBC code 2020-04-25 19:30:01 +03:00
Triang3l fb39bac2a1 [Vulkan] Make the title message more clear to users 2020-04-25 14:33:16 +03:00
Triang3l d65cbc160d [D3D12] Treat non-ROV truly as fallback in the title bar 2020-04-25 13:59:47 +03:00
Triang3l 64a83af137 [DXBC] Cleanup StartPixelShader, always_reads_mask, and ps_param_gen overall 2020-04-25 00:20:27 +03:00
Joel Linn 6267c73c4c [SDL] Add global helper to setup the library.
Call to SDLHelper::Prepare() is needed before first SDL_InitSubSystem().
- Sets hints (SDL configuration vars).
- Configures logging.
2020-04-23 15:44:58 -05:00
Joel Linn 5463798631 [HID] Implement GetKeystroke() for SDL 2020-04-23 15:44:58 -05:00
Joel Linn d7d5d92e59 [HID] Fix any poll on XInput. 2020-04-23 15:44:58 -05:00
Joel Linn c8da7fbfe4 [HID] Optional guide button support.
Maybe this is interesting to some games.
2020-04-23 15:44:58 -05:00
Joel Linn fc96195656 [HID] C++17-ify 2020-04-23 15:44:58 -05:00
Joel Linn 6a1c134cf3 [UI] Capture mouse. 2020-04-23 15:44:58 -05:00
Joel Linn d1315438f3 [HID] Extend demo to show keystrokes. 2020-04-23 15:44:58 -05:00
gibbed cf0251cd9f [Kernel/VFS] Cleanup info query/set+sector size.
[VFS] Device now exposes name, attributes, component name max length.
[VFS] Fix STFS device to return 0x200 sector size. XCTD compression
      userland code appears to always expect a sector size of 0x200.
[Kernel] Move X_FILE_*_INFORMATION structs to new files.
[Kernel] Move NtQueryInformationFile, NtSetInformationFile,
         NtQueryVolumeInformationFile to new file.
[Kernel] Cleanup implementation of NtQueryInformationFile,
         NetSetInformationFile, NtQueryVolumeInformationFile.
[Kernel] Properly validate arguments to NtQueryInformationFile,
         NetSetInformationFile, NtQueryVolumeInformationFile.
[Kernel] Properly implement query of XFileFsVolumeInformation.
[Kernel] Properly implement query of XFileFsSizeInformation.
[Kernel] Properly implement query of XFileFsAttributeInformation.
2020-04-20 16:08:02 -05:00
gibbed 087247184d [XAM] Dummy MAC address in *XNetGetTitleXnAddr.
[XAM] Dummy MAC address in NetDll_XNetGetTitleXnAddr.
2020-04-20 06:31:02 -05:00
gibbed 1c2d6753bb [Kernel/VFS] Specify root entry to open from + cleanup.
[VFS] Allow specifying root entry to open from with OpenFile.
[Kernel] NtCreateFile now opens from root entry when available instead
         of needlessly building a full path and resolving from that.
[VFS] Reduce code duplication by adding Entry::ResolvePath.
[VFS] Remove ResolveBasePath to avoid multiple calls to find_base_guest_path.
2020-04-20 01:14:07 -05:00
gibbed 725f3ce17f [Base] Make utf8 arguments consistent.
[Base] Make utf8 arguments consistent. Fix "sep" to "separator".
2020-04-20 01:14:07 -05:00
gibbed 1f28ff5f18 [Base] Add opt arg to allow empty parts in split.
[Base] Add optional argument to allow empty parts in utf8::split.
2020-04-20 01:14:07 -05:00
gibbed 817d87a0a7 [Base] Join paths better.
[Base] Join paths better, so the first iteration isn't a join of an empty
string with the first path part.
2020-04-20 01:14:07 -05:00
gibbed 85dbb9d451 [Base] Fix canonicalize path for rooted paths. 2020-04-20 01:14:07 -05:00
Triang3l f83809f7a1 [D3D12] Non-adaptive quad tessellation 2020-04-19 23:12:39 +03:00
Joel Linn 3d2982e845 [ImGui] Fix drawing lines.
ImGui does not orientate triangles.
Culling must not be applied in immediate drawer.
2020-04-19 01:38:58 +02:00
Triang3l 58c104e0cc [DXBC] SRV binding enum 2020-04-15 23:53:37 +03:00
Triang3l 630a538af3 [D3D12] Reword shader storage error messages 2020-04-14 13:46:18 +03:00
gibbed aa1c69d7b6 [D3D12] Properly setup shareable shader storage.
[D3D12] Properly setup shareable shader storage.

- Properly create shareable shader storage directory.
- Log errors when failing to create shareable shader storage directory
  or shareable shader files.
2020-04-14 00:58:30 -05:00
gibbed f631b02bcf [XAM] Fix xeXamUserReadProfileSettingsEx.
[XAM] Fix xeXamUserReadProfileSettingsEx.

- Properly calculate initial buffer_offset.
- Don't set buffer_size_ptr when its initial value is non-zero.
2020-04-13 17:55:15 -05:00
gibbed a8c3682b6f [XAM] Modify default user XUID.
[XAM] Modify default user XUID. Fixes behavior in NeoGeo Battle
Coliseum and possibly others. ("You do not have permissions to
perform this operation.")
2020-04-13 14:28:32 -05:00
gibbed 230015f9ca [XAM] Add default case.
[XAM] Add default case in xeXamUserReadProfileSettingsEx.
2020-04-13 14:27:46 -05:00
gibbed 2cc473f60b [UI] Initialize handle in ImmediateTexture. 2020-04-13 12:57:14 -05:00
gibbed bc92169fce [Kernel] Remove unnecessary newline. 2020-04-13 12:57:14 -05:00
gibbed 814728ebbe [x64] Space r/xmm regs in thunk emitter. 2020-04-13 12:57:14 -05:00
gibbed b338fb0caa [Kernel] Reformat locale cvar descriptions.
[Kernel] Reformat locale cvar descriptions to include newlines.
2020-04-13 12:57:14 -05:00
gibbed 7e2396f348 [Core] Space sections better when saving config. 2020-04-13 12:57:14 -05:00
gibbed 37fbf39573 [Base] Remove errant whitespace. 2020-04-13 12:57:14 -05:00
gibbed 6ab003dbf8 [Kernel] Reformat license mask description.
[Kernel] Reformat license mask description to include newlines.
2020-04-13 12:57:14 -05:00
gibbed 3dc69c6033 [Base] Cleanup set thread name. 2020-04-13 12:57:14 -05:00
gibbed ce34e1cbb9 [Core] Use UTF8-aware lower. 2020-04-13 12:57:14 -05:00
gibbed a7d4d6ee70 [Kernel] Use structures in XmpApp. 2020-04-13 12:57:14 -05:00
gibbed ae7555e9ff [Kernel] Rename UnknownFEApp to XamApp. 2020-04-13 12:57:14 -05:00
gibbed fdfc55c8fd [App] Support a relative content path. 2020-04-13 12:57:14 -05:00
gibbed edb93cc19c [Core] Improve config saving.
- [Core] Config saving now uses xe::StringBuffer instead of
         std::ostringstream.
- [Core] Config saving now supports cvar descriptions with newlines.
- [Core] Config value alignment now 50 (from 40).
- [Core] Config value alignment now takes UTF8 into account instead
         of raw byte length.
2020-04-13 12:57:14 -05:00
gibbed dc119c178f [Base] Add repeating character append to StringBuffer. 2020-04-13 12:57:14 -05:00
gibbed 96067fb293 [Base] Add sanity checks in StringBuffer. 2020-04-13 12:57:14 -05:00
gibbed 60681eeb23 [Base] Add xe::utf8::count. 2020-04-13 12:57:14 -05:00
gibbed e03368c37e [XAM] Fix args of XamUser*ProfileSettings(Ex).
- Update arguments of XamUserReadProfileSettings/
  XamUserReadProfileSettingsEx.
- Fix arguments of XamUserWriteProfileSettings.
2020-04-13 12:57:14 -05:00
gibbed 3c8493dea2 [XAM] Clean up user index handling & stub.
- Clean up user index handling in XamUserGetXUID,
  XamUserGetSigninState, XamUserReadProfileSettings,
  XamUserWriteProfileSettings, XamUserCheckPrivilege,
  XamUserContentRestrictionGetFlags, XamUserAreUsersFriends.
  A user index of 0xFF does not mean anything special and is outright
  invalid.
- Move XamUserReadProfileSettings code to new
  xeXamUserReadProfileSettingsEx.
- Implement XamUserReadProfileSettings/XamUserReadProfileSettingsEx
  which now call xeXamUserReadProfileSettingsEx.
- Reorganized xeXamUserReadProfileSettingsEx so that the needed buffer
  size is checked before user index is validated, so that calls to
  determine necessary buffer size return correctly instead of an error
  about invalid user index.
- Stub XamUserIsOnlineEnabled.
2020-04-13 12:57:14 -05:00
gibbed 134067d25e [XMA] Add default case in av_log_callback. 2020-04-13 12:57:14 -05:00
gibbed ce955e5aaa [XMA] Reorganize ReadRegister/WriteRegister a bit in XmaDecoder. 2020-04-13 12:57:14 -05:00
gibbed e99916b352 [Kernel] Clean up XAM registration function declarations. 2020-04-13 12:57:14 -05:00
Gliniak a87c3785ee Template for 0xFE message: 0x21012
FYI: This message don't have length
2020-04-13 10:39:29 -05:00
Rados??aw Gli??ski 64dbd9936e "Template" for 0xFE message: 0x22005 2020-04-13 10:39:29 -05:00
Silent f775fe8c83 [CPU] Fix off-by-one in max ordinals check 2020-04-12 21:53:46 -05:00
Silent 9205a6b062 [Kernel] Fixup GetProcAddressByOrdinal
Now properly takes a global lock when populating guest_trampoline_map_
as opposed to taking and immediately releasing it
Also removes a redundant find() from guest_trampoline_map_
so map is not searched twice if the function has already been generated.
2020-04-12 21:53:46 -05:00
Triang3l 5795d25afe [D3D12] Remove runtime check of cvars::d3d12_edram_rov 2020-04-12 20:48:35 +03:00
Triang3l 0f0ed0eb21 [DXBC] RDEF enums, ISGN/PCSG/OSGN structs and enums 2020-04-11 20:25:37 +03:00
gibbed 112c66df69 [UI] Fix window file drop handling. 2020-04-10 08:33:53 -05:00
gibbed e0f3458026 [Kernel] Maybe stub DmGetXbeInfo better. 2020-04-09 17:54:40 -05:00
gibbed fe016cc60c [Kernel] Fix vswprintf debug log. 2020-04-09 17:54:22 -05:00
gibbed 15866274a8 [Kernel] Stub a few more XBDM functions. 2020-04-09 16:59:37 -05:00
gibbed 54da6773ab [Core] Fix reg alignment in crash dump output. 2020-04-09 16:49:24 -05:00
Triang3l f365ab5e6d [D3D12] Fix wrong comment about adaptive tessellation 2020-04-09 22:26:47 +03:00
gibbed 0d010a2e3d [VFS] Fix data fragment path for multi-file STFS. 2020-04-09 11:33:08 -05:00
gibbed ed04d96e67 Avoid using '#' format spec for X hex numbers.
Avoid using '#' format spec for X (uppercase) hex numbers, as it
results in output like "0XABCDEF" instead of "0xABCDEF".
2020-04-09 11:25:08 -05:00
gibbed 01f7ad7ddf [Core] Fix guest crash handler crash/output.
- [Core] Fix guest crash handler crash due to bad format string.
- [Core] Fix guest crash handler outputting signed values for
  vectors.
2020-04-09 11:06:48 -05:00
Sandy Carter e605eef781 filesystem: remove unused includes of header 2020-04-09 09:44:48 -05:00
Sandy Carter fc5153bca1 filesystem: use std for DeleteFile
Remove custom platform implementation of `DeleteFile` and replace single
use with `std::filesystem::remove` after a negative
`std::filesystem::is_directory` check.
2020-04-09 09:44:48 -05:00
Sandy Carter df65de231f filesystem: use std for DeleteFolder
Remove custom platform implementation of `DeleteFolder` and replace two
uses with `std::filesystem::remove_all` which removes a file or
directory with all its contents.
2020-04-09 09:44:48 -05:00
Sandy Carter 69bcf59c79 filesystem: use std for CreateFolder
Remove custom platform implementation of `CreateFolder` and replace uses
with `std::filesystem::create_directories` which creates paths
recursively.
2020-04-09 09:44:48 -05:00
Sandy Carter c8e64da4eb filesystem: use std for PathExists
Remove custom platform implementation of `PathExists` and replace uses
with `std::filesystem::exists`.
2020-04-09 09:44:48 -05:00
Sandy Carter a9fa38c88b filesystem: use std for IsFolder
Remove custom platform implementation of IsFolder and replace
single use with `std::filesystem::is_directory`.
2020-04-09 09:44:48 -05:00
Joel Linn 05a62673f7 [SDL2] Redirect log messages into our system. 2020-04-08 21:55:56 -05:00
Joel Linn 11d79c6c1c [SDL2] Remove delayed loading code. 2020-04-08 21:55:56 -05:00
Joel Linn 804384c19c [SDL2] On Win, build and link statically.
Keep using system lib dynamically on Unix.
2020-04-08 21:55:56 -05:00
Triang3l acb3778819 [D3D12] Adaptive quad tessellation, remove d3d12_tessellation_adaptive cvar 2020-04-09 00:00:11 +03:00
gibbed c51cba080b Fix some bad string formats. 2020-04-08 13:05:37 -05:00
gibbed b37579fad2 [Base] Fix path parsing from commandline. 2020-04-08 12:31:00 -05:00
Triang3l 7e27427c4a [D3D12] SV_Position is not necessary in VS if it's in DS/GS 2020-04-08 12:54:35 +03:00
Triang3l 7cf3a75ab1 [D3D12] Fix and enable triangle adaptive tessellation 2020-04-08 00:26:49 +03:00
gibbed 8123978c49 [PPC] Disable frsqrte tests. 2020-04-07 16:09:41 -05:00
gibbed 56e5d6f11c Fix precision of test register in frsqrte test. 2020-04-07 16:09:41 -05:00
gibbed f0eb272acc Add UTF8 tests. 2020-04-07 16:09:41 -05:00
gibbed 37e576e648 [PPC] Prettier printing for failed memory checks.
[PPC] Prettier printing for failed memory checks in tests.
2020-04-07 16:09:41 -05:00
gibbed a48bb71c2f Overhaul logging. 2020-04-07 16:09:41 -05:00
gibbed 5bf0b34445 C++17ification.
C++17ification!

- Filesystem interaction now uses std::filesystem::path.
- Usage of const char*, std::string have been changed to
  std::string_view where appropriate.
- Usage of printf-style functions changed to use fmt.
2020-04-07 16:09:41 -05:00
Triang3l b47948b7cf [DXBC] Fix another copy-paste kVSDS typo 2020-04-07 19:19:08 +03:00
Triang3l 306f2947ec [DXBC] Fix a copy-paste kDSVS typo 2020-04-07 19:18:21 +03:00
Triang3l 9d36c257b0 [D3D12] Non-adaptive triangle tessellation 2020-04-07 18:55:43 +03:00
Triang3l b00baadf53 [D3D12] Fix a lint issue in comments 2020-04-06 12:41:35 +03:00
Triang3l 283c3ab59b [D3D12/DXBC] Fix a couple of tessellation-related comments 2020-04-06 00:19:29 +03:00
Triang3l c4f47039eb [GPU] Fix a typo in the tessellation patch types comment 2020-04-06 00:08:05 +03:00
Triang3l 4b9f63cdf1 [GPU] Shader::HostVertexShaderType enum for domain shader types 2020-04-06 00:03:23 +03:00
Triang3l 8da8044771 [DXBC] Move cvars from D3D12 to GPU 2020-04-05 17:23:38 +03:00
Triang3l e82d05c687 [D3D12] Pass adaptive tessellation factors via index buffer like on the guest 2020-04-05 17:22:49 +03:00
Triang3l 5d6fe38e6f [DXBC] Vertex shader prologue and gamma to new DXBC code 2020-04-05 13:13:55 +03:00
Triang3l 5f5e281e8c [DXBC] Rewrite a comment in memexport that may be outdated 2020-03-29 19:14:25 +03:00
Triang3l 05f6b444a0 [DXBC] Move memexport to the new DXBC code and make it more straightforward 2020-03-29 19:09:58 +03:00
Triang3l 7bdf59a8c7 [DXBC] Fix totally broken instruction when memexport is used in PS 2020-03-28 00:23:02 +03:00
Triang3l a10bd2a5c1 [DXBC] Unbreak MRT in RTV output path 2020-03-27 23:18:15 +03:00
Triang3l 316f996d50 [DXBC] D3D11.3 Functional Specification lies 2020-03-27 21:31:00 +03:00
Triang3l 821a9897ef [Kernel/XAM] Even more detailed rationale for XNotifyGetNext param_ptr null check 2020-03-23 10:46:51 +03:00
Triang3l 61bcd467a6 [Kernel/XAM] Rationale for XNotifyGetNext param_ptr null check 2020-03-23 10:38:45 +03:00
Triang3l a4ffcd5175 [D3D12] Update DXBC contribution notes 2020-03-23 00:13:54 +03:00
Gliniak 4f8cdd9967 [Kernel/XAM] XNotifyGetNext: Check for nullptr for param_ptr 2020-03-22 15:38:31 -05:00
Triang3l cde092ece1 [D3D12] Persistent shader and PSO storage 2020-03-21 19:22:19 +03:00
Triang3l b1d3fd2ad3 [App/Config] Add storage_root cvar and make content_root inside it by default, move game configs from content 2020-03-13 09:42:29 +03:00
Margen67 b3d1c5982a [CPU] Typo fix 2020-03-07 19:39:56 -06:00
Gliniak 5558c8aafe [XAM/Network] Implemented NetDll___WSAFDIsSet 2020-03-03 17:07:49 -06:00
gibbed 8d5d70c77f [XAM] Don't allow an empty title.
[XAM] Don't allow an empty titles because ImGui explodes otherwise.
2020-02-29 15:47:19 -06:00
Triang3l b12554c5af [GPU] Add VGT_DRAW_INITIATOR to registers.cc 2020-02-25 08:05:47 +03:00
gibbed aa28430786 [x64] NAN up vmsum3fp128/vmsum4fp128.
It seems vmsum3fp128/vmsum4fp128 need to output a NAN on overflow.

Do so. Probably inefficiently.
2020-02-24 18:13:07 -06:00
emoose 9185cdcc79 [Kernel] Fix wide-printf functions not processing %ws format correctly
This would break format strings like memory://%.*ws (that dashboard tries using), because the "ws" part would set FF_IsWide, but FF_IsWide actually seemed to be used as an "is opposite encoding" flag.
Since the format string is wide that'd make it treat the param as ASCII, but in dashboards case the param string provided is actually a wide string.
(in other words, it seems %ws is supposed to mean that the param is always a wide string, not that the param is just opposite encoding)

This changes the old FF_IsWide to FF_InvertWide, and adds a new FF_IsWide that means that the param is always wide.
2020-02-24 14:58:09 -06:00
emoose ac5d548e90 [Kernel] *FormatData: make peek() match get() endian, fix skip() not advancing pointer 2020-02-24 14:58:09 -06:00
Triang3l 90b772a330 [GPU] Set VGT_DRAW_INITIATOR and use major mode from it 2020-02-24 23:27:25 +03:00
Triang3l c156616103 [Memory] Invalidate physical memory in Release/Decommit (#1559) 2020-02-24 01:04:30 +03:00
Triang3l 95475d5f78 [D3D12] SharedMemory::ClearCache invalidating pages, destroying watches 2020-02-23 15:55:41 +03:00
Triang3l cf99696e79 [Kernel] Fix incorrect TranslatePhysical usage in XFile 2020-02-23 14:51:49 +03:00
Rick Gibbed 4ca0d0a656
[App] Remove inadvertent constexpr. 2020-02-22 13:50:17 -06:00
gibbed a6e6f0f7bf Lint cleanup. 2020-02-22 13:29:07 -06:00
Triang3l d156c3275d [Memory] Fix incorrect comparison in QueryRangeAccess 2020-02-22 18:12:46 +03:00
Triang3l 1e9f999b37 [Kernel] Add xe:: in XFile::Read for consistency 2020-02-22 18:10:25 +03:00
Triang3l f858631245 [Kernel] Trigger memory callbacks after file read 2020-02-22 18:06:56 +03:00
Triang3l 028c784c5c [Memory] Make heap_size actually mean size rather than high address 2020-02-22 14:55:28 +03:00
Joel Linn 8efa35d996 Remove unused yaml-cpp. 2020-02-20 06:44:34 -06:00
Joel Linn 64539621b4 Replace binary_function by plain function.
- Deprecated in C++11
- Removed in C++17
2020-02-20 06:44:09 -06:00
gibbed 722018d095 [Kernel] Use reserved form of sc for dynamic imports. 2020-02-20 01:01:31 -06:00
Triang3l c7cb964b4e [D3D12] Recompile immediate_ps after the change to SampleLevel 2020-02-20 08:57:16 +03:00
Triang3l 1336316139 [D3D12] Vertex kill and multipass vertex exports 2020-02-20 08:56:16 +03:00
Triang3l 47eee5e1c3 [GPU] Unified function for mip level bounds, BaseMap mip filter, small refactoring 2020-02-18 23:31:48 +03:00
Triang3l 710d225d0a [GPU] --gpu_allow_invalid_fetch_constants to bypass invalid fetch constant type errors 2020-02-16 19:35:26 +03:00
Triang3l d18e63e6e2 [D3D12] Always write original shader source in DXBC if PIX is attached 2020-02-16 18:09:22 +03:00
Triang3l 8ec813de82 [Memory, D3D12] Various refactoring from data provider development 2020-02-15 21:35:24 +03:00
Triang3l b59ae30ec3 [D3D12] DXBC: Fix two uninitialized register usages in ROV code, better comments 2020-02-13 08:31:01 +03:00
gibbed cc47704a6b [CPU] Use reserved form of sc for imports. 2020-02-11 06:45:57 -06:00
gibbed e2346ee539 [PPC] Support basic form of sc. 2020-02-11 06:45:57 -06:00
Gliniak d241a98189 [Kernel] Rewrote ObReferenceObjectByHandle 2020-02-10 20:52:23 -06:00
Triang3l 014d03193e [D3D12] Convert dxbc_shader_translator_om.cc to new DXBC emission code 2020-02-10 23:50:26 +03:00
Joel Linn 160f218210 [APU/Linux] Implement cross platform audio using SDL2 library. 2020-02-10 14:01:47 -06:00
Joel Linn 64f3925c7d [HID/Linux] Implement cross platform controller input using SDL2 library. 2020-02-10 13:41:19 -06:00
Joel Linn 498b73612f Link against SDL2.
- Use MSVC delayed loading on Windows.
- Rely on system libraries for Linux.
- Add libsdl2-dev to Travis.
2020-02-10 13:41:19 -06:00
Rados??aw Gli??ski 404aa82147 [CPU] Implemented instructions: rldclx, rldcrx 2020-02-09 16:48:50 -06:00
gibbed 0b3cdf2aaa [Base] Fix non-Windows bit_scan_forward. 2020-02-09 16:37:52 -06:00
Prism Tutaj fc37f3e93a [App] Fix discord cvar 2020-02-09 16:21:51 -06:00
Joel Linn 2aa008e02e [HID] Fix Demo for XInput 2020-02-09 16:19:39 -06:00
Gliniak 0d866aa173 [CPU] Increased maximum function count 2020-02-09 15:47:29 -06:00
Silent 684f9fedec [Base] Remove kMaxPath from Windows, it should not be used
All instances of kMaxPath or MAX_PATH being used have been removed,
and removing this constant is supposed to encourage writing code
without artificial constraints on path length.
2020-02-09 14:02:37 -06:00
Silent f392347673 [GPU] Remove MAX_PATH limit from Shader::Dump 2020-02-09 14:02:37 -06:00
Silent d3a73022fd [UI] Remove MAX_PATH limit from WM_DROPFILES
Also required const-ifying a file drop message.
2020-02-09 14:02:22 -06:00
Silent 96a9397349 [Base] Remove MAX_PATH limit from GetUserFolder
Replace SHGetFolderPath with SHGetKnownFolderPath to remove the limit
2020-02-09 14:01:39 -06:00
Silent 6f2c39d8d1 [Base] Remove MAX_PATH limit from to_absolute_path
Let _wfullpath allocate memory by itself to remove the limit
2020-02-09 14:01:39 -06:00
gibbed 74c95c64d2 [Kernel] Ignore page size with base addr allocs.
Changes NtAllocateVirtualMemory so that it ignores specified page size when a
base address is specified.

Fixes a crash seen in N3 demo boot.
2020-02-09 06:54:27 -06:00
Justin Moore 96a7908c28 [Base] Fix formatting errors accidentally introduced 2020-02-08 16:30:17 -06:00
Justin Moore 7ed6296bb2 [Base] Call SetThreadDescription to name threads on versions of Windows that support it. 2020-02-08 21:12:42 +00:00
noshbar 2ce455fc73 [Base] Initialize file 'open_access' flag before using it.
In the 'OpenExisting' function, 'open_access' is used to create the flags for opening the file.
However, it is not set to zero, so could end up being incorrect file modes, potentially even emptying the file for appending, which would be bad.

This simply initialises it to zero first.
2020-02-08 14:43:46 -06:00
Triang3l 85fb028faa [D3D12] Cleaner DXBC emission code, port ROV prologue to it 2020-02-07 09:42:43 +03:00