Commit Graph

3690 Commits

Author SHA1 Message Date
Dr. Chat 75b34b83a6 Vulkan: Alias all input textures on the same binding 2017-02-13 13:35:53 -06:00
DrChat 60664d86fc Vulkan UI: Fix erroneously signaling image usage semaphore 2017-02-12 21:59:55 -06:00
DrChat c3b9d6acf8 Vulkan UI: Proper transitions for frontbuffer 2017-02-12 21:41:21 -06:00
DrChat 7a9c33fcfe Vulkan: Emit a warning if the physical device is unable to support texture cache requirements 2017-02-12 21:24:38 -06:00
DrChat ba8e315a69 Vulkan UI: Track if debug marker extension is enabled 2017-02-12 19:05:59 -06:00
DrChat 4ee16fd193 Vulkan UI: Fix invalid push constant usage in immediate.frag/vert (and update shaders) 2017-02-12 18:47:53 -06:00
Ink 8a1d72098f * statics initialization order fix 2017-02-12 17:13:42 +03:00
Dr. Chat a636b3cbcf Vulkan Swapchain: Fix a few API usage errors 2017-02-11 22:17:24 -06:00
DrChat 1c48b93ffd Vulkan: Fix misplaced break statements 2017-02-11 21:53:52 -06:00
DrChat 4a2ce960e9 Vulkan UI: More explicitly define order of copy commands vs. render commands 2017-02-11 21:30:16 -06:00
Justin Moore 591e581a70 Merge pull request #663 from resetnow/linux-build-fixes
Linux + clang build fixes
2017-02-11 20:32:33 -06:00
DrChat 6d4b06c08f Use stdout as logfile for tests 2017-02-11 00:15:52 -06:00
DrChat 26456280f1 Travis: print error log on command failure 2017-02-11 00:02:15 -06:00
DrChat d43e2c7ff8 xenia-cpu-ppc-tests is now building on linux 2017-02-10 23:54:10 -06:00
DrChat 11ae05155d Fix casting between XThread and Thread causing pointer misalignment 2017-02-10 23:35:35 -06:00
DrChat 1334656c6a xenia-cpu-ppc-tests: Adjust link order for clang 2017-02-07 18:15:30 -06:00
Vlad Ivanov bb9a26702d gpu: spirv_shader_translator: xb format changes 2017-02-07 21:24:06 +03:00
Vlad Ivanov d6bd1a9d21 gpu: trace_viewer: fix size_t format specifiers 2017-02-07 21:23:51 +03:00
Vlad Ivanov c74b84a18b gpu: spirv_shader_translator: fix a number of missing VertexFormat cases 2017-02-07 20:26:08 +03:00
Vlad Ivanov 091c196fc7 gpu: spirv_shader_translator: add missing cfloat include 2017-02-07 20:26:08 +03:00
Vlad Ivanov f0ba717142 Fix a bunch of missing cmath includes
...as well as missing std:: namespace specifiers
2017-02-07 20:26:08 +03:00
Dr. Chat 4c55039c22 Remove xenia-cpu dependency on xenia-kernel 2017-02-06 21:57:18 -06:00
Dr. Chat b66f10f2b8 Testing travis xenia powerpc testing 2017-02-06 00:40:06 -06:00
Dr. Chat 8947a7626e Linting fixes :) 2017-02-05 22:53:30 -06:00
Dr. Chat 803f0be049 Linux header fixes 2017-02-05 22:45:01 -06:00
Dr. Chat bf7f170825 Fix string_util.h include on linux 2017-02-05 22:01:50 -06:00
Dr. Chat 7fb31462e4 Logger: Use platform-agnostic aligned alloc 2017-02-05 20:39:46 -06:00
Dr. Chat 65ca7fc416 Lockless logging 2017-02-04 19:26:39 -06:00
Dr. Chat c538671c24 Kernel: Wrap new objects in object_ref to avoid a memory leak! 2017-02-03 20:57:08 -06:00
Dr. Chat 8c79051a94 Vulkan: Add basic one-frame cache to BufferCache 2017-01-29 00:24:31 -06:00
Dr. Chat d9b52d1afa GPU: Add a "low-power" state. 2017-01-28 20:59:41 -06:00
Dr. Chat a093fdcef8 XMA: Add an idle "low-power" state for the decoder. 2017-01-28 20:58:23 -06:00
Dr. Chat c5487371f9 Uh... Linting! 2017-01-28 14:12:30 -06:00
Dr. Chat 366eeeaa60 Vulkan TextureCache: Use a hashed and fenced pool for descriptors 2017-01-28 14:05:42 -06:00
Dr. Chat a16dc261da DescriptorPool fenced pool 2017-01-28 14:05:42 -06:00
Dr. Chat 90b0541d72 Vulkan CP: Code refactoring 2017-01-28 14:05:42 -06:00
Dr. Chat c416cbb61d Vulkan CP: Specify wait stage for swap sync 2017-01-28 14:05:42 -06:00
Dr. Chat 9135b6d9ac Vulkan: Support accessing only depth buffer via shaders 2017-01-28 14:05:42 -06:00
Dr. Chat ba74667190 Vulkan: Initialize RenderPassCreateInfo flags variable to 0. 2017-01-28 14:05:42 -06:00
Dr. Chat 16fc719b14 Vulkan: Passthrough unused point size/coord in geometry shaders 2017-01-28 14:05:42 -06:00
gibbed 1eb0048e54 When creating a window icon from the game's icon resource, scale it to default Windows size (fixes an issue where the icon would appear larger than it should in the Volume Mixer). 2017-01-21 05:51:34 -06:00
gibbed dece63e351 Return ERROR_PROC_NOT_FOUND, not ERROR_INVALID_ORDINAL, as failure from XexGetProcedureAddress. 2017-01-20 08:19:58 -06:00
gibbed 69cf40161e Added support for '?' to FS wildcard handling. 2017-01-19 18:13:07 -06:00
gibbed 17529b063f Spliced out the FS wildcard stuff. 2017-01-19 17:06:35 -06:00
maxton 57cbfc1167 Update xboxkrnl_modules to new convention 2017-01-16 17:11:24 -05:00
Dr. Chat 9f5abb02b7 Vulkan: Fix improper subpass dependency when using the MAY_ALIAS bit 2017-01-14 18:04:05 -06:00
Dr. Chat 06588f8703 Fix xe::CreateParentFolder improperly handling separators on Windows 2017-01-14 15:19:43 -06:00
gibbed a95de67b8c 1D textures. Maybe. 2017-01-10 00:04:41 -06:00
gibbed cec8932605 Log lpwstring_t contents. 2017-01-09 23:57:47 -06:00
gibbed 13dd23a8a9 Stubbed out some default (error) logic to NetDll_XNetDnsLookup. 2017-01-09 23:50:51 -06:00
gibbed 89de63b34c Fixed NetDll_XNetDnsLookup signature. 2017-01-09 23:04:30 -06:00
gibbed 2da97c1e6f Moved XamContentCreate and XamContentCreateEx to the new export convention. 2017-01-09 17:12:30 -06:00
gibbed d17d02f606 Log lpstring_t contents. 2017-01-09 17:11:17 -06:00
gibbed ac7dce758b Fixed xe::filesystem::DeleteFolder on Windows. Should fix some issues where games tried to overwrite existing content such as saves and was failing. 2017-01-09 17:05:05 -06:00
gibbed 61cb3093ce Updated NetDll_select for new export convention. 2017-01-09 08:45:51 -06:00
gibbed 5cbb542fa3 Better (and portable) fd_set handling for NetDll_select, and properly tracks guest handles as well. 2017-01-09 08:00:42 -06:00
gibbed d43af82889 Oops. Code merge screwup. 2017-01-09 07:00:31 -06:00
gibbed 2e8c34377f Implemented NetDll_shutdown.
De-borked LoadFdset/StoreFdset in regards to handling of correct counts
and invalid sockets.
2017-01-09 06:58:15 -06:00
gibbed f3ed9ab91b Shut lint up on Linux. 2017-01-09 06:00:16 -06:00
gibbed cf4d780c8b Cleanup of XBOXKRNL XMA exports. 2017-01-09 04:53:44 -06:00
gibbed d730784efb Added XBDM stubs. 2017-01-09 04:51:55 -06:00
Justin Moore 4ed0068da8 Merge pull request #654 from ObsidianGuardian/master
Added keyboard support for trigger and shoulder buttons
2017-01-09 02:37:46 -06:00
ObsidianGuardian bfd512ae1f Added keyboard support for triggers and shoulder buttons 2017-01-09 08:22:29 +01:00
Ink 0d8a81137c * make vfs::Entry time stamps consistent (as Windows FILETIME) 2017-01-06 04:17:04 +03:00
maxton cc0adb95f1 Add word pointer type 2016-12-20 18:22:41 -05:00
maxton 345b070379 Update kernel convention for xboxkrnl_ob.cc 2016-12-20 15:27:21 -05:00
maxton 7f453a2041 Update kernel convention for xboxkrnl_rtl.cc 2016-12-20 14:49:32 -05:00
PikminGuts92 9a8005e6fd Added flag for fullscreen toggle. 2016-12-06 14:35:49 -05:00
PikminGuts92 682357519c Made ToggleFullscreen function public. 2016-12-06 12:31:36 -05:00
maxton 57d4c6fa9b Update kernel convention for xboxkrnl_io.cc
Fix linting error

Update kernel convention for xboxkrnl_io.cc
2016-12-01 10:41:54 -05:00
Dr. Chat 57c3addd09 Dump guest crash details into the log 2016-11-30 22:54:58 -06:00
Dr. Chat f6ac79ea07 XSocket Implementation 2016-11-28 22:10:19 -06:00
maxton d307d83dc0 Update convention for xboxkrnl_audio.cc (squashed commits) 2016-11-25 20:48:17 -05:00
Dr. Chat 7b6af84640 Whoops 2016-11-23 12:34:56 -06:00
Dr. Chat 7a0a36cf00 RtlUpperChar / RtlLowerChar 2016-11-23 12:19:37 -06:00
Dr. Chat a88c78eba3 Allow the kernel dispatch thread to be suspended after being initialized 2016-11-23 11:56:57 -06:00
Dr. Chat d5010fb947 Win32 UI loop: allow recursion 2016-11-23 11:53:35 -06:00
Dr. Chat 222a9721aa Add a File->Close option 2016-11-23 11:00:10 -06:00
Dr. Chat ca54f9f212 SPIR-V: Whoops, flip the store operands around correctly 2016-11-22 21:36:39 -06:00
Dr. Chat 8d476fc845 Update the Vulkan loader to the latest version 2016-11-22 21:29:18 -06:00
Leighton Hancock 524ba0c88c Add file drop functionality
Adds the ability to drag and drop files from windows in order to attempt
to execute them
2016-11-14 16:50:58 +13:00
Dan Weatherford 6f6e638f2f [vulkan] Point list rendering improvements
Implement register and vertex-shader-written point size. Fix point size
computation in geometry shader (convert pixel size to NDC scale using
viewport size). Fix point sprite coordinate generation.
2016-11-12 18:03:03 -06:00
Dan Weatherford c1db89b4dd Eliminate double lock of Vulkan queue mutex 2016-11-11 23:07:49 -06:00
Dr. Chat 02a0d11326 SPIR-V: GetWeights2D/1D as well as (possibly) proper fetch offsets 2016-11-11 17:52:15 -06:00
Dr. Chat 691c3d1021 EXTRACT_I32: Support constant src1 2016-11-11 16:50:42 -06:00
Dr. Chat 1afb899b7d Also track batch fences in the CP properly 2016-11-08 19:41:35 -06:00
Dr. Chat 48f6ba747c Track batch fences with the batches. 2016-11-08 18:11:12 -06:00
Dr. Chat 391b6e9bb7 Vulkan: Include the blit shaders too! 2016-11-04 19:21:46 -05:00
Dr. Chat fe2c887c34 Math tzcnt 2016-11-04 19:17:12 -05:00
Dr. Chat e46a0c50fd Vulkan: WIP Blitter 2016-11-04 19:10:24 -05:00
Dr. Chat 4fe6eba972 X_HRESULT_FROM_WIN32 macro 2016-11-04 19:06:43 -05:00
Dr. Chat a148b965f1 KernelState should handle module launching 2016-10-24 11:01:10 -05:00
Dr. Chat 69be82c786 Attempt at synchronizing swap image writes between the main window and graphics backend.
Disabled for now due to device timeouts.
2016-10-21 19:44:11 -05:00
Dr. Chat 26d81abf52 IssueDraw failing in the backend does not mean we need to stop processing commands 2016-10-21 18:14:24 -05:00
Dr. Chat f5995474b1 Write the title ID to savestates - and disallow loading savestates from a different title for the moment. 2016-09-28 18:33:25 -05:00
DrChat bc0ddbb05a Fix UI thread not waking up from input 2016-09-11 21:26:35 -05:00
Dr. Chat 9457c63a64 SPIR-V: Handle conversion of integer vertex input 2016-09-07 11:13:53 -05:00
Dr. Chat 1757411aa8 Label blocks following jump statements for now. 2016-09-05 22:19:56 -05:00
Dr. Chat 300d1c57ba SPIR-V: Rewrite basic control-flow to use a while loop paired with a switch statement 2016-09-05 16:57:02 -05:00
Dr. Chat 52c75c8dbc x64 backend: Pass guest return address as first argument to guest functions. 2016-08-26 13:46:21 -05:00
Dr. Chat 7683069f6c Set context/membase registers to rsi/rdi respectively.
Use offsetof for the backend thunks.
2016-08-26 11:00:42 -05:00
Dr. Chat fbedb915b6 Move definition of XEPACKEDSTRUCT to platform.h 2016-08-22 17:23:50 -05:00
Dr. Chat 5f4416ee2f x64 backend: Save nonvolatile XMM registers on host -> guest transitions
Define the context and membase registers in the x64 emitter.
2016-08-22 14:55:16 -05:00
Dr. Chat e3fdb08ad7 x64 JIT: Allocate constant data outside of the guest heap. 2016-08-18 18:26:55 -05:00
Dr. Chat 784e6a7593 RenderCache: Include a subpass self-dependency due to aliased attachments 2016-08-16 13:11:25 -05:00
Dr. Chat abf162c0e3 Wake the WIN32 loop from all input 2016-08-09 10:45:00 -05:00
Dr. Chat 976a317293 Whoops - a default cursor is kind of important. 2016-08-06 18:16:39 -05:00
Dr. Chat 9b86132fd0 Rewrite XIOCompletion::WaitForNotification 2016-08-06 18:14:26 -05:00
Dr. Chat 1de47e0d17 UI: Hide the cursor after 3 seconds in fullscreen-mode. 2016-08-06 17:00:12 -05:00
Dr. Chat 1a5d4b99fc Add a dependency on xenia-gpu-null in xenia-app 2016-08-04 15:17:04 -05:00
Dr. Chat 04afa31c9c Be linted, you. 2016-08-04 15:15:23 -05:00
Dr. Chat 40f782a83b Add a null graphics system (enable with --gpu=null)
Still uses vulkan to drive xenia UI, may look into decoupling later.
2016-08-04 09:50:13 -05:00
Dr. Chat 92859f5a28 Protect the first 64kb of virtual memory with no access permissions by default. 2016-08-03 18:46:15 -05:00
Dr. Chat 83f7cc27d1 Fixed a deadlock caused by the UI thread dropping important messages 2016-08-03 18:00:32 -05:00
Dr. Chat a7e4bc8f49 Applying graceful linting. 2016-08-01 16:36:41 -05:00
Dr. Chat 99090e0a22 CircularBuffer: Allow users to bind their own memory to our buffer. 2016-08-01 16:30:28 -05:00
Dr. Chat 22794902f3 CNTLZ: Invert the result using xor rather than subtraction 2016-08-01 13:25:44 -05:00
Dr. Chat ff57d79793 TextureCache: Flush uploads if the staging buffer overflows in a frame. 2016-08-01 13:25:44 -05:00
Justin Moore 4577303245 Merge pull request #604 from x1nixmzeng/detect-xna
Find correct launch module for XNA-based games
2016-08-01 10:53:52 -05:00
x1nixmzeng 5be1a24f7a Clang formatting 2016-07-30 15:00:51 +01:00
Dr. Chat cd5d3fae9c Whoops - fix a few compilation errors 2016-07-29 13:42:56 -05:00
Dr. Chat a547c79b51 SPIR-V: Use gl_VertexIndex rather than gl_VertexID
Rewrite bits of LoadFromOperand/StoreToResult
2016-07-29 11:28:19 -05:00
Dr. Chat 72d83591e5 Vulkan: Synchronize copies/draws to the swap chain.
Grab RenderDoc after creating the Vulkan instance
2016-07-29 10:34:54 -05:00
Dr. Chat f81a99e83a XMA: Use a threadsafe bitmap to acquire/release contexts
Support Pausing/Resuming
2016-07-28 21:11:12 -05:00
Dr. Chat 69bb6aacef Swap to using the Vulkan renderer by default
This will break a lot of games and fix others, but it makes more sense to use a backend being actively worked on.
2016-07-28 19:33:05 -05:00
Dr. Chat 54ba3480e4 xboxkrnl: NtAllocateVirtualMemory - Align the base address to a page boundary rather than returning an error code.
Return ACCESS_DENIED if the user requests e.g. a 64k page in a 4k region.
2016-07-28 16:56:05 -05:00
Dr. Chat 6af8546c49 Vulkan: Remove unused gl_ClipDistance from shaders 2016-07-28 12:02:49 -05:00
Dr. Chat 99689176bc Vulkan: Fix a few validation errors 2016-07-28 00:15:23 -05:00
Dr. Chat 87c915e54d Vulkan: Re-enable the validation layers properly. 2016-07-27 23:59:25 -05:00
Dr. Chat 19c7edddca PipelineCache: _FLOAT means use vk _SFLOAT, not _*SCALED! 2016-07-25 12:06:50 -05:00
Dr. Chat a72f1d949f Constant propagation for vector SGT/UGE/UGT
Constant rounding (and fixed vec128 rounding only doing x)
2016-07-25 11:57:14 -05:00
Dr. Chat 91be5f979e Use a dummy pixel shader on depth-only mode 2016-07-24 15:38:00 -05:00
Dr. Chat b478408dfb PipelineCache: Better stencil support, and allow null pixel shaders. 2016-07-24 15:36:41 -05:00
Dr. Chat a065120793 Fix crash in CPU debugger. Thanks @x1nixmzeng 2016-07-24 10:47:14 -05:00
Dr. Chat 9e646085f0 SPIR-V: Rudimentary support of tfetch offsets, fix scalar operand loads 2016-07-24 10:16:44 -05:00
Dr. Chat 99d2b2fb55 Trace Viewer: Add stencil information and color/depth format translations 2016-07-23 22:23:25 -05:00
Dr. Chat 8427acfada Use vpminud to saturate rather than bitwise ops (shaves 6 instructions per 16 in 32 saturated pack) 2016-07-23 19:19:40 -05:00
x1nixmzeng 6cc3440086 Find correct launch module for XNA-based games
Added utility to parse game information and updated launch logic to use
it
2016-07-23 18:27:13 +01:00
Dr. Chat 2d55b12cc9 Fix a race condition in x64 code cache involving RtlGrowFunctionTable 2016-07-19 13:59:40 -05:00
Dr. Chat 18ff97e6b6 OPCODE_IS_NAN 2016-07-11 20:44:12 -05:00
Dr. Chat fb87b7a3c3 xboxkrnl: Add a bunch of crypto functions 2016-07-11 10:35:31 -05:00
Dr. Chat 3d1d4dea47 OPCODE_DOT_PRODUCT_4 constant propagation 2016-06-28 19:39:22 -05:00
Dr. Chat abdf071c7d SPIR-V: Smear one-component scalars 2016-06-28 11:43:03 -05:00
Dr. Chat 14a6fd838a SPIR-V: Fix a few improper usages of pointers
Change StoreToResult conversion
2016-06-28 09:18:08 -05:00
Dr. Chat 753911146b Update spirv-tools and add spirv-headers 2016-06-27 20:37:20 -05:00
Dr. Chat 9abfc52b77 Don't store xam launch data in guest memory. 2016-06-27 13:46:08 -05:00
Dr. Chat 75908a9865 SPIR-V: Fix a couple of errors in translation 2016-06-27 11:08:45 -05:00
Dr. Chat f2ad6b8cb8 OPCODE_RECIP 2016-06-26 13:03:42 -05:00
Dr. Chat 212cd6ee3d GPU: Log a warning on writes to unknown registers. 2016-06-25 10:32:48 -05:00
Dr. Chat b31705c543 Registers 0x5000-0x5002 2016-06-25 10:26:39 -05:00
Dr. Chat 70b2d09834 PA_CL_UCP_* registers 2016-06-24 14:44:51 -05:00
Dr. Chat ab4245c6af VGT_INDX_OFFSET actually means index/vertex offset
Fixup depth resolves
2016-06-24 14:35:24 -05:00
Dr. Chat 036df2ce12 SPIR-V: Remove GenericPointer capability requirement 2016-06-24 07:48:02 -05:00
Dr. Chat 35d8bfeb82 Merge branch 'dump' of git://github.com/sephiroth99/xenia into seph-dump 2016-06-23 17:58:02 -05:00
Dr. Chat 076c73be9a SPIR-V: GetTextureWeights and Cube op 2016-06-22 19:34:05 -05:00
gibbed 4aaca8cbf3 Fixed copying junk data into initialized XEX memory when XEX is unencrypted. 2016-06-22 15:53:07 -05:00
sephiroth99 7bf2f23bef Dump shaders in binary mode
Use binary mode when writing shaders to file, so that 0x0a is not
considered a LF and then converted to CRLF.
2016-06-21 23:05:19 -04:00
gibbed e95a08fc87 Better unreserved physical page counting. 2016-06-21 10:10:47 -05:00
gibbed 16a15bab98 Exposed total page count. 2016-06-21 10:10:08 -05:00
gibbed d07e16b056 I'm bad. 2016-06-21 10:09:45 -05:00
gibbed 32e0ef397c Attempt at reporting something of an 'accurate' unreserved physical page
count. Still needs work.
2016-06-21 09:37:21 -05:00
gibbed 0e1c91681d Some winkey support for left/right triggers. 2016-06-20 17:53:26 -05:00
gibbed e7f5d3e7d4 Set length in overlapped completion to -1 when not success. 2016-06-20 17:13:31 -05:00
gibbed 8d00abe10f 'Unsetting' the title specific user settings. Fixes UnrealEngine-based games try to decompress 3000 null bytes and end up barfing all over the stack instead. 2016-06-20 15:45:12 -05:00
gibbed afda577484 Adjusted user profile settings so that we can know about settings, but have their data unset. 2016-06-20 15:44:11 -05:00
gibbed 8965fda402 RSqrt for VEC128_TYPE. 2016-06-20 13:31:11 -05:00
gibbed 53e37c3167 Constant propogation for DOT_PRODUCT_3. 2016-06-20 13:30:19 -05:00
gibbed dd18112905 Assert the CPU index on set. 2016-06-20 12:53:07 -05:00
gibbed 27610989a2 Fixed fake CPU handling. 2016-06-20 12:52:36 -05:00
gibbed 6a082c42d3 Fixed top-down memory allocations when alignment > page size. 2016-06-20 12:02:48 -05:00
gibbed 919d84ad73 Fixed ToXdkProtectFlags returning bad protection flags when
nocache/writecombine were present.
2016-06-20 11:27:53 -05:00
Dr. Chat 6729ec182b These clears are redundant. 2016-06-19 21:32:31 -05:00
Dr. Chat f194d261b1 TextureCache: Speed up descriptor writes (no more vector usage)
WIP TextureCube uploading skeleton
2016-06-19 21:27:30 -05:00
gibbed 450ca87120 Added comparison operator for --break_on_instruction. 2016-06-19 21:01:18 -05:00
gibbed b5bef8c54d Undoing the previous commit in favor of finding a better solution (xmm1/xmm2 can't safely be used here). 2016-06-19 02:33:52 -05:00
gibbed d04a6cc983 Added support for when both src1 and src2 are constants in EmitCommutativeBinaryXmmOp and EmitAssociativeBinaryXmmOp. 2016-06-19 02:10:40 -05:00
Dr. Chat 807c030f86 Add title request functions to Emulator 2016-06-18 21:17:37 -05:00
Dr. Chat 6bd19518eb GL4: Fix incorrectly calculating the base offset for IssueCopy 2016-06-18 21:16:10 -05:00
Dr. Chat 0c69e05eb1 Handle load requests made by the guest 2016-06-18 21:00:01 -05:00
Dr. Chat 23b2e25fb8 XThread: Don't release ourselves before calling thread_->Terminate! 2016-06-18 20:58:58 -05:00
Dr. Chat b82f6a990a Core: Add a file open dialog and refactor logic around loading new games 2016-06-18 20:42:28 -05:00
gibbed dcd71c1613 Fixing format_core for %hc/%hC/%wc/%wC/%hs/%hS/%ls/%lS/%ws/%wS type specifiers. 2016-06-18 19:24:49 -05:00
gibbed 85e38b7657 Invalidate physical memory passed to NtReadFile. 2016-06-18 18:26:23 -05:00
gibbed 23b72e4888 Complain loudly when ReadFile() returns ERROR_NOACCESS. 2016-06-18 18:26:23 -05:00
Nukem d5dd96d626 Invalid iterator in control_flow_simplification_pass 2016-06-18 16:34:46 -04:00
gibbed 096febb3bb Oops. Unbreaking shim_utils.h. 2016-06-18 14:02:38 -05:00
gibbed 4fc3bdf213 Fixed AppendParam for X_EX_TITLE_TERMINATE_REGISTRATION,
X_EXCEPTION_RECORD.
Added AppendParam for X_OBJECT_ATTRIBUTES.
2016-06-18 13:44:52 -05:00
gibbed 2d60d6f672 Split out trampoline generation to make it reusable. 2016-06-18 13:41:49 -05:00
gibbed 8ea9aea84c Actually there's yet one more argument to VdInitializeScalerCommandBuffer. 2016-06-18 08:16:49 -05:00
gibbed 890a0513ef Tagged NtSetInformationFile as high frequency. 2016-06-18 08:03:19 -05:00
gibbed f39eb9f047 Tagged NtReadFile as high frequency. 2016-06-18 08:02:18 -05:00
gibbed 9477cef006 Corrected offset in comment for X_DISPLAY_INFO. 2016-06-18 08:00:41 -05:00
gibbed b12579c64c Fixed arguments to VdInitializeScalerCommandBuffer. 2016-06-18 08:00:09 -05:00
Dr. Chat d526d2febf GPU: In auto-indexed draws, VGT_INDX_OFFSET appears to be reused as a vertex offset. 2016-06-17 20:19:38 -05:00
Dr. Chat 2e34a98cef Update the vulkan loader and headers. 2016-06-17 19:32:21 -05:00
Dr. Chat 27c16b1936 GPU: Fix incorrectly calculating the primary ringbuffer's size 2016-06-16 21:30:06 -05:00
Dr. Chat af870999fa SPIR-V: Clear shader interface IDs between invocations. 2016-06-13 18:15:59 -05:00
Dr. Chat 5937e603d7 SPIR-V: Fix vec4 Dst 2016-06-13 15:29:07 -05:00
Dr. Chat d5865740e2 Add a few more vector tests 2016-06-12 21:45:51 -05:00
Dr. Chat 0ef16b10e2 Constant Propagation for OPCODE_VECTOR_ADD 2016-06-12 21:41:02 -05:00
Dr. Chat 7ef7cc39f5 SPIR-V: Declare all inputs/outputs in OpEntryPoint 2016-06-12 11:18:00 -05:00
Dr. Chat 841f6fe239 Merge branch 'vulkan' 2016-06-11 19:23:23 -05:00
Dr. Chat 323b993bbc Revert the default graphics backend to GL4 (in preparation of merge to master) 2016-06-11 19:13:45 -05:00
Dr. Chat 32011a841e Formatting. 2016-06-05 17:48:06 -05:00
Dr. Chat b01903ccc7 Set basePipelineIndex to -1 instead of 0 to indicate invalid. 2016-06-05 12:55:19 -05:00
Dr. Chat 6f5f3534c4 Rebuild shaders with the latest compiler 2016-06-04 15:17:31 -05:00
Dr. Chat 254acf2a67 RenderCache: Hardcode surface height to 2560
Fix a couple of other things
2016-06-03 20:01:49 -05:00
Dr. Chat 2a924d2b05 Pass vertex buffer endianness into the BufferCache
IssueCopy: Actually issue the pipeline barrier to transition the image
2016-06-03 20:00:28 -05:00
Haydn Trigg ff5529714c clang-format to Google Standards
Added formatting to code
2016-05-29 13:22:14 +09:30
Dr. Chat fd37112db8 VK Immediate Drawer: Properly transition texture layouts
Support wrapping of textures not created here
2016-05-28 10:26:40 -05:00
Dr. Chat f8d9472872 TextureCache: Fix trying to erase a resolve texture that isn't in the resolve textures list. 2016-05-26 14:46:18 -05:00
Dr. Chat c85756981b TextureCache: Fix a few null pointer bugs
Ordering of in-flight descriptor sets
Change staging buffer size
Free all samplers on exit
2016-05-25 19:55:50 -05:00
Dr. Chat 8611417219 Initialize rasterDiscardEnable to VK_FALSE 2016-05-25 17:45:38 -05:00
Dr. Chat 008167fa66 VK: Enable full rotation / Set render_state to nullptr on failure / Fix format info in texture resolves 2016-05-25 13:49:36 -05:00
Dr. Chat a187a4931a Whoops - fix setting the wrong host base for some graphics allocations. 2016-05-25 13:14:03 -05:00
Dr. Chat 9d1e66ab16 Don't write to color targets in depth-only mode. 2016-05-24 21:58:02 -05:00
Dr. Chat ad83a1994d VK: Remove alphaToOne feature requirement 2016-05-24 12:53:25 -05:00
Dr. Chat 5f764730ae Vulkan CP: Override frame traces if renderdoc is attached 2016-05-23 13:16:13 -05:00
Dr. Chat 729152a58b VK: Enable independentBlend feature 2016-05-23 09:59:37 -05:00
Dr. Chat 6e21d88250 Fixup circular buffers for full rotation 2016-05-23 09:58:46 -05:00
Dr. Chat c6e905db2f Fix a memory leak in fenced pools. 2016-05-22 22:14:45 -05:00
Dr. Chat 7004f83665 CP: Don't check for shader validity here
Fix a lousy typo in PrepareTextureSet
2016-05-22 20:08:35 -05:00
Dr. Chat bd27835a3d Pipeline Cache: Translate shaders when program cntl register is available 2016-05-22 20:03:13 -05:00
Dr. Chat d1b4d61b52 SPIR-V: Use the register count from the program control register
Workaround for broken OpBitFieldUExtract on NVIDIA drivers
kRcpc/kRcpf/kRsqc/kRsqf
Fix broken ps_ usage
2016-05-22 20:01:42 -05:00
Dr. Chat d94ff6eb25 Shaders: Track the register count from the program control register (if available) 2016-05-22 19:58:50 -05:00
Dr. Chat 1faf5a813a Fix ALU scalar swizzles (Possibly) 2016-05-22 19:57:05 -05:00
Dr. Chat b025790207 Disable Vulkan native MSAA by default for now. 2016-05-17 05:58:52 -05:00
Haydn Trigg f2ca689ea0 Expanded vec128 and VectorSub
Added double precision (f64) values to the vec128 structure
Added cases for all formats of data for vector subtraction in the
Value::VectorSub function

NOTE: Unsure what the saturate function is for however maintained
original functionality
2016-05-17 05:34:09 +09:30
Dr. Chat b9a40d1a00 Use Vulkan as the default graphics backend. 2016-05-15 12:08:29 -05:00
Dr. Chat 2bb52ef86b SPIR-V: WIP shader compiler / optimizations / alpha test implementation 2016-05-15 12:01:38 -05:00
Dr. Chat c06a7cdf81 BaseFencedPool::has_open_batch (and other uncommitted changes) 2016-05-07 19:17:56 -05:00
Dr. Chat 79f1193130 Vulkan CP: Fix calculating an invalid copy destination base address when sizeof(texel) != 4 2016-05-06 00:12:47 -05:00
Dr. Chat 7c5042add7 Vulkan CP: Add in separate swap-chain images
Some other changes I can't remember
2016-05-03 14:12:05 -05:00
Dr. Chat f2af28c322 TextureCache: Fix up some synchronization flaws (deleting in-use textures/etc)
Fix texture binding IDs not matching fetch instruction IDs.
Fix some bad texture format matching.
Add access watches
2016-05-03 14:10:15 -05:00
Dr. Chat 8e8df2e778 PipelineCache: Support shader disasm dumps for nvidia cards.
Fix MSAA 2X multiplier.
2016-05-03 14:07:20 -05:00
Dr. Chat d18c99aab6 RenderCache: Account for MSAA when calculating tile sizes.
Add a new flag to enable native MSAA (this does not work properly at the moment)
2016-05-03 14:05:34 -05:00
Dr. Chat aa038fbf23 Skip the wrapping packet end after parsing IB end (to avoid false draws appearing) 2016-05-01 15:48:31 -05:00
Dr. Chat 720f8b0dc2 GL4: Track the internal format of render targets and match them based on that. 2016-05-01 11:23:54 -05:00
Dr. Chat cbccc785cc TraceViewer: Build a tree of all command buffers and display that instead of a flat list. 2016-05-01 10:15:33 -05:00
Dr. Chat 6101b70641 Fix the Vulkan immediate drawer not drawing lines. 2016-04-29 13:09:39 -05:00
Dr. Chat 9b2e2a7275 SPIR-V: Hack in OpSelectionMerge as hints to NVidia's shader compiler (TODO: Make a Shader Compiler) 2016-04-13 23:17:03 -05:00
Dr. Chat 2bd603bf18 CircularBuffer: use std::list for allocations instead of a vector. 2016-04-09 21:40:18 -05:00
Dr. Chat 4811ebc2ce BufferCache: Use a CircularBuffer as the transient buffer. 2016-04-09 21:27:32 -05:00
Dr. Chat b7f2c93d73 SPIR-V: Batch predicated instructions together into a single block.
Add Post-Translation validation.
Fix a couple of type-related typos.
2016-04-09 21:03:44 -05:00
Dr. Chat a1c9540063 SPIR-V Validator util class 2016-04-09 18:35:00 -05:00
Dr. Chat 3726064af5 Can't use CmdCopyBufferToImage or vice versa for depth and stencil. 2016-04-01 22:03:29 -05:00
Dr. Chat f9a634ad25 CircularBuffer remove Discard functionality and allow rotation 2016-04-01 21:53:46 -05:00
Dr. Chat 50f72b4e42 Enable native MSAA
Copy back EDRAM buffers in order by base offset.
2016-04-01 21:52:39 -05:00
Dr. Chat 2eca3ce9e6 Texture uploads/basic formats
Fixed swizzle one/zero mismatch
Sampler setup
Remove samplers from the descriptor set layout
2016-04-01 21:51:17 -05:00
Dr. Chat 1ea72c5e06 FencedPool::CancelBatch 2016-04-01 21:49:58 -05:00
Dr. Chat 44cffab389 SPIR-V Max4 2016-03-25 18:23:45 -05:00
Dr. Chat fc1bd0f379 Fix texture uploads 2016-03-25 17:29:39 -05:00
Dr. Chat 692d666d57 Wipe the buffer cache in ClearCache for now. 2016-03-25 16:50:06 -05:00
Dr. Chat 0e44cda961 Update the rectangle list shader 2016-03-25 16:49:41 -05:00
Dr. Chat d7599c817f Formatting. 2016-03-25 16:44:25 -05:00
Dr. Chat a5a31cf123 VulkanShader::Prepare - return false if vkCreateShaderModule failed. 2016-03-25 16:37:24 -05:00
Dr. Chat 2bb40c122d Vulkan util Fence class 2016-03-25 16:36:21 -05:00
Dr. Chat f75e5fec24 CP: Use a single command buffer for every frame, reuse render passes/pipelines if not dirty
Hook up resolves and swaps
2016-03-25 16:35:34 -05:00
Dr. Chat 1e1da1eb6c PipelineCache::ConfigurePipeline - Inform the caller if the pipeline is dirty or they can reuse the previously bound pipeline.
Make SetDynamicState public.
2016-03-25 16:34:14 -05:00
Dr. Chat b2457d7e72 Basic texture uploads/address lookups/etc
Freeing of descriptor sets when the GPU is finished with them.
2016-03-25 16:32:29 -05:00
Dr. Chat 0e41774e36 RenderCache::dirty() - used to tell if we need to begin a new pass
Round all pixel pitch/heights up before dividing.
2016-03-25 16:31:12 -05:00
Dr. Chat 181b2af5a4 Vulkan Circular Buffer 2016-03-25 13:49:07 -05:00
Dr. Chat e72e283e79 Primitive type makes rasterization state dirty too! 2016-03-23 16:20:06 -05:00
Dr. Chat 7b962e59a4 SPIR-V Dst
Fix a few bugs in the translator
2016-03-20 14:21:55 -05:00
Dr. Chat 38b94dd9e2 Add in Xenos events 2016-03-17 21:58:23 -05:00
Dr. Chat 2512a6360e Pass the physical frontbuffer address into the CP 2016-03-17 21:55:47 -05:00
Dr. Chat 0e3c113375 Physical write watches -> access watches (read and/or write watching) 2016-03-17 21:55:16 -05:00
Dr. Chat 1831e7a936 Pipeline stencil state 2016-03-16 14:45:40 -05:00
Dr. Chat 54f89825d9 SPIR-V Dp2Add/Dp3 2016-03-15 00:30:39 -05:00
Dr. Chat 245102e9e5 RenderCache::BlitToImage 2016-03-12 22:04:32 -06:00
Dr. Chat 822d61c3d9 Fix a few stale data usage bugs in the pipeline cache.
Hook up part of depth/stencil tests/writes
2016-03-12 22:03:11 -06:00
Dr. Chat 5ba04b9e55 RenderCache::ClearEDRAMColor/ClearEDRAMDepthStencil 2016-03-12 11:49:59 -06:00
Dr. Chat 635d095b87 RenderCache: Track color target / depth target usage, refactor RawCopyToImage 2016-03-10 20:39:46 -06:00
Dr. Chat f903a559b3 Blit Vulkan CP output to the main window's swap chain 2016-03-10 13:01:39 -06:00
Dr. Chat f839a1293f Add a specialized copy command buffer to the vulkan swap chain 2016-03-10 12:59:48 -06:00
sephiroth99 90b54bbaa6 Fix usage of mix in fragment shader
The boolean value must be a vector too, where each bool component
selects whether the value of the output vector component is from the
first or the second source vector.
2016-03-10 01:14:42 -05:00
Dr. Chat 86cb40f0c6 Change how the render cache renders into EDRAM.
Rendering directly into the EDRAM buffer is bad because we don't know how the GPU lays out memory when it draws. Instead, we create temporary render targets and copy EDRAM contents to/from those temporary RTs before and after each draw.
2016-03-08 18:02:03 -06:00
Dr. Chat 4e27539709 Fix Vulkan texture drawing. 2016-03-08 17:57:04 -06:00
Dr. Chat af7fc20c38 Beginnings of texture conversion/uploads 2016-03-05 22:09:18 -06:00
Dr. Chat 38094ac819 Updated local clang-format. 2016-03-02 21:17:34 -06:00
Dr. Chat 740c70f270 Scalar logc, fix log 2016-03-01 12:52:34 -06:00
Dr. Chat 48cf270724 Use spv::NoPrecision instead of DecorationInvariant
Set samplers/images as uniform constants
2016-02-27 16:21:37 -06:00
Dr. Chat c648e54539 Short-circuit draw calls if the render target's pitch is 0 2016-02-27 11:30:50 -06:00
Dr. Chat 6109e0b03a Fix incorrect images/samplers definitions
ps_param_gen and fix interpolators being copied incorrectly
2016-02-25 17:41:41 -06:00
Dr. Chat 08a287d2ad Whoops 2016-02-21 22:30:31 -06:00
Dr. Chat 06d5a28615 Fix texture fetches 2016-02-21 22:27:23 -06:00
Ben Vanik 5e31c51a3d Textures are now in descriptor set 1. 2016-02-21 20:03:51 -08:00
Ben Vanik 3b20c757ff Merge branch 'vulkan' of github.com:benvanik/xenia into vulkan 2016-02-21 19:56:30 -08:00
Ben Vanik 62931f8c8e Adding texture setup and a dummy grid texture. 2016-02-21 19:56:23 -08:00
Dr. Chat 8a29330f8c First-pass image sampling 2016-02-21 20:42:37 -06:00
Dr. Chat 2785a94fea SetpXXPush 2016-02-21 19:20:53 -06:00
Dr. Chat 9030c87386 SetpPop/SetpRstr 2016-02-21 19:20:53 -06:00
Dr. Chat 5c2b5123ac Floors/Frcs/Truncs 2016-02-21 19:20:53 -06:00
Dr. Chat 0680e451bc Exp2 2016-02-21 19:20:53 -06:00
Dr. Chat cbac9b2f4e Use vec4 zero rather than float zero where needed 2016-02-21 19:20:53 -06:00
Dr. Chat 13049912ee Vec Log 2016-02-21 19:20:53 -06:00
Dr. Chat 1d4190af02 MaxA 2016-02-21 19:20:53 -06:00
Dr. Chat 568845e81d Dp4 2016-02-21 19:20:53 -06:00
Dr. Chat 3877afe90a MaxAsf 2016-02-21 19:20:53 -06:00
Dr. Chat d217f7b3c3 MaxAs/SetpClr 2016-02-21 19:20:53 -06:00
Dr. Chat fa3ca4a5d7 Short-circuit if the store has no writes. 2016-02-21 19:20:53 -06:00
Dr. Chat d2e3b5533d Whoops 2016-02-21 19:20:53 -06:00
Dr. Chat 9b805b929e Scalar kill ops 2016-02-21 19:20:53 -06:00
Dr. Chat e78537571f Vector kill ops 2016-02-21 19:20:53 -06:00
Dr. Chat 633746b5e4 Actually preserve pv/ps if predicate fails 2016-02-21 19:20:53 -06:00
Ben Vanik cda08ff826 Setup descriptor set for textures. 2016-02-21 17:17:57 -08:00
Ben Vanik 1def5bece9 Fix viewport inversion. 2016-02-21 15:59:35 -08:00
Ben Vanik ace895d4f3 Fixing 1/w0 correction. 2016-02-21 15:44:09 -08:00
Ben Vanik 24743bf676 Actually configure constant descriptor set. 2016-02-21 15:20:35 -08:00
Ben Vanik d57f974e2e Fix buffer alloc alignment and framebuffer comparison. 2016-02-21 14:43:59 -08:00
Ben Vanik 06ba273492 Warn and be ok with symbol services failing. 2016-02-21 14:26:16 -08:00
Ben Vanik 8bf5eba098 Capture exe with renderdoc and pass --vulkan_renderdoc_capture_all. 2016-02-21 12:44:16 -08:00
Dr. Chat b83b9c28a1 Fix push constants declaration 2016-02-21 13:19:08 -06:00
Dr. Chat a7880645be Merge branch 'vulkan' of github.com:benvanik/xenia into spv_translator 2016-02-21 12:47:02 -06:00
Dr. Chat bd0fb81b22 Apply window scaling 2016-02-21 12:46:54 -06:00
Ben Vanik 32c4f3ce24 Fixing pool shutdown. 2016-02-21 10:46:47 -08:00
Ben Vanik b3faba50a3 Pushing constants. 2016-02-21 10:38:58 -08:00
Dr. Chat 71440a4137 Add code to correct vertex format
Move translated shader code to its own function
Add push constants
2016-02-21 12:06:59 -06:00
Dr. Chat b1e56ee4e5 Vector Cndxx 2016-02-20 23:45:01 -06:00
Ben Vanik ff373a83a4 Private->Function variables, fragment output, geometry shader tweaks. 2016-02-20 20:44:11 -08:00
Dr. Chat 2629ae4a14 Fix using incorrect result types for compares 2016-02-20 21:55:32 -06:00
Dr. Chat ca01bb2311 ALU predicated discard 2016-02-20 21:53:22 -06:00
Dr. Chat 08a173e5ec Scalar Sxxx 2016-02-20 21:28:25 -06:00
Ben Vanik 6d65439efe Merge branch 'vulkan' of github.com:benvanik/xenia into vulkan 2016-02-20 19:19:41 -08:00
Ben Vanik cd02cdfc70 Making memory API less error prone; fixes buffer/constant uploads. 2016-02-20 19:19:29 -08:00
Dr. Chat 3130d4b38e Add the vulkan backend as a choice in xenia-app 2016-02-20 21:02:28 -06:00
Dr. Chat 8777d22b72 Add name information to constants
Fix Rcp/Rsq OpSelect incorrect usage
2016-02-20 19:31:28 -06:00
Ben Vanik 1d82d7bd92 For now, all 512 constants live in the same block. 2016-02-20 17:05:53 -08:00
Dr. Chat 4aff1c19a7 (WIP) SPIR-V Shader Translator 2016-02-20 18:44:37 -06:00
Ben Vanik b5a0c4715b Porting GL4 geometry shaders. Likely not working. 2016-02-20 16:35:21 -08:00
Ben Vanik 769c58a9b2 Adding `xb genspirv` to do glsl->.h. 2016-02-20 16:24:42 -08:00
Ben Vanik 5759f82276 Adding pipeline caching. 2016-02-20 15:00:11 -08:00
Ben Vanik 731ff52773 Implementing a lot of the pipeline state setting. 2016-02-20 12:59:18 -08:00
Ben Vanik 97174dbe4d Skeleton leaky hacky hardcoded pipeline setup. 2016-02-19 23:23:58 -08:00
Ben Vanik 990b600f53 Buffer uploads (without reclaiming, yet). 2016-02-19 21:08:50 -08:00
Ben Vanik de1e4661ff Not crashing (but also likely not working) EDRAM emulation. 2016-02-19 20:36:10 -08:00
Ben Vanik 8820c73532 A night's worth of work: documented EDRAM. Seems mostly right. 2016-02-19 10:38:11 -08:00
Ben Vanik 1dcc84a472 Starting render passes. 2016-02-18 18:18:31 -08:00
Ben Vanik 52a6f795f7 Shader modules and plumbing. 2016-02-18 18:18:31 -08:00
Dr. Chat f9ca0b86a8 Query to see if the physical device supports a swapchain surface to silence a validation layer error. 2016-02-18 20:10:14 -06:00
Ben Vanik 3bf1c91eaa Those are really pointers - need those bits. 2016-02-18 16:52:52 -08:00
Ben Vanik 4c4a641096 WIP rough sketch of vulkan backend structure. 2016-02-18 16:43:41 -08:00
Ben Vanik 35e08d9428 Switching from fork to main glslang spirv builder. 2016-02-18 16:43:41 -08:00
Ben Vanik 00594da417 Adding mutliple queue/shared queue support. 2016-02-18 16:43:41 -08:00
Ben Vanik ecd257b34c Fix headers include guards. 2016-02-18 16:43:41 -08:00
Ben Vanik 618ca80011 Count packed bytes used by a constant map. 2016-02-18 16:43:41 -08:00
Ben Vanik 5ab0af9e6d Implementing shader constant register map construction. 2016-02-18 16:43:41 -08:00
Ben Vanik 05107d2d3e Skeleton xenia::gpu::vulkan implementation, enough to start trace viewer. 2016-02-18 16:43:41 -08:00
Ben Vanik ca5902c111 Recreate swap chain on window resize. 2016-02-18 16:43:41 -08:00
Ben Vanik a97fa36512 Fixing swap chain scissoring; surface is still not resized right. 2016-02-18 16:43:41 -08:00
Ben Vanik 9f52f2e819 Initial vulkan context and immediate drawer.
Extremely rough, just checking in so DrChat can snoop.
2016-02-18 16:43:41 -08:00
Dr. Chat 27bace0e5c Actually disable writewatch kill in ConvertTexture 2016-02-17 18:04:10 -06:00
Dr. Chat b14c4ad681 Disable write watch kill in ConvertTexture 2016-02-17 17:57:56 -06:00
Dr. Chat 8bf1bf57fd Fix GL4 alpha test, use blend disable flag
If color clear is enabled, grab the color target no matter what.
Update texture readback code on copy (but not enabled)
Track PA_SC_VIZ_QUERY in UpdateRasterizerState
2016-02-17 17:56:28 -06:00
Ben Vanik f5eef128f8 Merge pull request #539 from DrChat/vizquery_wip
Viz Query WIP Notes
2016-02-16 17:21:39 -08:00
Ben Vanik 864b1b5fac Merge pull request #538 from DrChat/trace_viewer_misc
Trace Viewer Zoomed View / Fix Alpha Test
2016-02-16 17:19:26 -08:00
Dr. Chat a2dd1c48ae Add some WIP viz query notes to the command processor.
Also implement PM4_SET_BIN_MASK/SELECT.
2016-02-16 18:36:43 -06:00
Dr. Chat 253e164753 Move EnableDepthTest functionality into a bool alpha_blend var on ImmediateDraw. 2016-02-16 18:24:37 -06:00
Ben Vanik c667dfc596 Don't put kernel stacks in GPU memory. 2016-02-16 15:05:11 -08:00
Dr. Chat e77af94c7c Ignore color target / depth target / texture alpha in the trace viewer. 2016-02-16 16:45:49 -06:00
Dr. Chat a8dfd6a21a Add a flag to ImTextureID that disables alpha test 2016-02-16 16:43:12 -06:00
Dr. Chat 65d1ea0250 Add a zoomed image view for color targets and depth targets. 2016-02-16 16:41:20 -06:00
Ben Vanik c5de61860d Merge pull request #531 from DrChat/gl4_shader_cache
GL4 Shader Cache
2016-02-16 07:20:33 -08:00
Ben Vanik f16a288f30 Merge pull request #532 from DrChat/profiler_flip_decouple
Decouple MicroProfilerFlip from Profiler::Present
2016-02-16 07:19:20 -08:00
Ben Vanik cc00b2d7a5 Merge pull request #533 from sephiroth99/noamd
More shader changes
2016-02-16 07:18:55 -08:00
sephiroth99 a442bb50b4 Prevent undefined behaviour with thread_safe_gl enabled.
CreateOffscreenContext already calls ClearCurrent. When it is done twice,
the global GL mutex is unlocked a second time, and undefined behavour
happens. In this particular case, a deadlock occured; unlocking the already
unlocked mutex locked it.
2016-02-11 23:50:11 -05:00
sephiroth99 205f64eb8b Fix compilation with VS2015 Update 2 CTP 2016-02-11 23:47:11 -05:00
sephiroth99 00674736fe Fix minor syntax error in shaders.
Discovered with glslangValidator.
2016-02-08 20:42:09 -05:00
sephiroth99 1520869a82 Revert "AMD people: have at it. I ain't gonna guarantee it'll work, though."
This reverts commit 8c0614b202.

Recent changes to generated shaders require GLSL 4.50.
2016-02-08 20:40:52 -05:00
Dr. Chat 4335e41c14 Decouple MicroProfileFlip from Profiler::Present (and start a new frame in XE_SWAP) 2016-02-07 19:25:30 -06:00
Dr. Chat a64e53fba6 Fix include order. 2016-02-05 16:31:01 -06:00
Dr. Chat 6cb7f0c23d GL4CommandProcessor: Use the new GL4ShaderCache 2016-02-05 16:14:35 -06:00
Dr. Chat 406ec8c6da GL4ShaderCache util class - caching to filesystem disabled by default 2016-02-05 16:11:00 -06:00
Dr. Chat e9dd0ce9de GL4Shader load from binary support 2016-02-05 16:02:14 -06:00
Dr. Chat 1066362ada ShaderTranslator::GatherAllBindingInformation 2016-02-05 16:00:50 -06:00
Dr. Chat ccb6a9146c Expose microcode data hash in Shader
Return paths to files that were dumped from Dump
2016-02-05 15:59:07 -06:00
Dr. Chat f75a4cab0e Apply a few optimizations to generated GLSL shaders. 2016-01-30 19:39:47 -06:00
Ben Vanik 9a09a61874 Merge pull request #526 from DrChat/command_processor_rb
Command Processor RingBuffer Replacement
2016-01-30 11:07:27 -08:00
Dr. Chat bf2c3d34da Fix XMAInitializeContext is_stereo flag. 2016-01-30 13:04:52 -06:00
Dr. Chat 6ce28ffd8c Command Processor: Replace RingbufferReader with RingBuffer
Report any packet processing errors
PM4_MEM_WRITE
2016-01-24 22:54:26 -06:00
Dr. Chat 6a67632af1 Update RingBuffer - Add immediate read/write and some error checking asserts. 2016-01-24 22:39:05 -06:00
Dr. Chat 9b1e6d6cb3 Resolve a module name to its full path before comparing names. 2016-01-24 09:50:48 -06:00
Dr. Chat 8a89a93eab Fix improperly reading 2_10_10_10 bitfields (or so I hope)
Check at runtime if a vertex fetch index doesn't match gl_VertexID
Fix trying to instantiate a vec1
2016-01-22 18:49:17 -06:00
Dr. Chat b2d8837e52 Fix depth clear when not sourcing from a depth target. 2016-01-22 18:47:27 -06:00
Ben Vanik 6c6f7c6eca Merge pull request #522 from sephiroth99/lf3
Linux compilation/link and compatibility fixes
2016-01-20 19:41:40 -08:00
sephiroth99 a74c88851b Rework RtlTime with portable time conversion functions 2016-01-20 12:26:49 -05:00
sephiroth99 bf910c2d9a Add missing definitions for XAPC constants
Fixes linking errors for these symbols.
2016-01-20 11:26:35 -05:00
sephiroth99 f17b80c61e Use stdlib 'hardware_concurrency' to get logical processor count
This has the benifit of being multiplatform.
2016-01-20 11:04:28 -05:00
sephiroth99 5d9a4b6830 Handle all other cases in switch statements 2016-01-20 11:00:37 -05:00
sephiroth99 1c14964739 Add missing override on virtual function 2016-01-20 10:57:50 -05:00
sephiroth99 4c0f9e6342 Add missing includes 2016-01-20 10:36:01 -05:00
sephiroth99 d78317847d Fix link error when profiling is disabled
These four functions are needed by microprofile even when profiling
is disabled.
2016-01-20 09:35:27 -05:00
Dr. Chat 8710b105bf Draw smaller floating point formats in the trace viewer. 2016-01-19 21:18:48 -06:00
Dr. Chat 9ed0934123 Swap to modern OpenGL for TFB usage. 2016-01-19 18:31:36 -06:00
Dr. Chat 47f5896089 Add TFB support to the trace viewer 2016-01-18 22:22:15 -06:00
Dr. Chat a34e82c77f Disable GL cull on rectangle lists 2016-01-18 21:00:58 -06:00
Dr. Chat 3859b0a091 Add an option for the draw batcher to collect vertex shader output. Disabled by default. 2016-01-18 20:57:36 -06:00
Dr. Chat 55a8964428 Fix shaders reading 10_11_11 bitfields backwards. 2016-01-18 15:46:41 -06:00
Ben Vanik 2e5c64fb13 Prevent some divide by zeros in shaders. Thanks @vlj!
Fixes #518.
2016-01-18 11:51:18 -08:00
Ben Vanik 6777ce6668 Reconcile debugger and save state stuff into a single implementation.
Fixes #497 and fixes #496.
Still rough edges, but at least less duplication.
2016-01-18 11:48:21 -08:00
Dr. Chat 34e03294ef Fix vfetch_mini instructions using stale data when following a vfetch_full that doesn't fetch anything 2016-01-16 22:39:00 -06:00
Dr. Chat e8719dd949 Fix an overflow crash in DiscImageDevice::Verify 2016-01-14 15:18:41 -06:00
Ben Vanik 9473f20c7f Fixing travis lint diff. 2016-01-13 22:55:28 -08:00
Ben Vanik 2e826f9321 Supporting constants in Haswell codepaths for mul_add/sub. 2016-01-13 22:29:39 -08:00
Dr. Chat 0771eea0b3 Change comments to comply with local regulations. 2016-01-13 19:41:15 -06:00
Dr. Chat bd6bf16bd1 New flag: disable_global_lock - Disables global lock usage in guest code. 2016-01-13 19:40:00 -06:00
Dr. Chat a5b37dce1d Shaders: Emit an unimplemented warning for indexed vertex fetch instructions 2016-01-13 01:50:20 -06:00
Dr. Chat 14c5e48120 Enable speculative PACK_TYPE_FLOAT16_3 2016-01-13 01:48:18 -06:00
Dr. Chat 36372d1eae Enforce xex memory protections 2016-01-13 01:47:06 -06:00
Dr. Chat f0802d75fa Use atomic compare exchange in stdcx/stwcx (still under the global lock) 2016-01-13 01:45:31 -06:00
Dr. Chat 51dde62f09 x64 backend vector optimizations 2016-01-13 01:43:23 -06:00
Dr. Chat 7b6f1388d6 OPCODE_ATOMIC_COMPARE_EXCHANGE 2016-01-13 01:41:58 -06:00
Dr. Chat 3ccb2a978d Propagate vector constants. 2016-01-13 01:40:44 -06:00
Dr. Chat 4b7a403337 xe::be<uint64_t> visualizers 2016-01-13 01:30:46 -06:00
Dr. Chat 6d2f083b09 Up the maximum function count to 50,000 2016-01-13 01:30:15 -06:00
Dr. Chat 0cf6e166a1 vec128 bitwise operators 2016-01-13 01:29:47 -06:00
Ben Vanik 9c93fa5187 Cleaning up xdbf stuff.
- moving next to xex utils
- fixing error cases around icon setting (and allowing reset)
- making C++11
- abstracting a bit so future additions will be easier
- fixing non-xex uses
2016-01-10 11:04:55 -08:00
Ben Vanik 86b706d87c Merge pull request #509 from x1nixmzeng/xex-resources
Rebrand the Xenia window with module metadata
2016-01-10 08:55:47 -08:00
x1nixmzeng 3eb602c93a Assert library name index is in range of the string table
As suggested by @DrChat
2016-01-09 17:55:57 +00:00
x1nixmzeng 6530b9dc49 Added callback when new module is launched
This avoids having to guess the display window title format
Also manually fixed the linting errors picked out by travis which do not
get picked up using xb format locally
2016-01-09 17:36:46 +00:00
x1nixmzeng 06f259c87d Mask the name index instead
The maximum number of import libraries (32) is already asserted
2016-01-09 02:43:29 +00:00
x1nixmzeng 7e4fdf7669 Fixed rare crash when accessing library import by name
The library name index may only be 8-bits.

This bug was not present in the previous implementation due to a bitmask
(0xFF) - see
ea99ba8e3b/src/xenia/kernel/util/xex2.cc (L272)
2016-01-09 01:19:05 +00:00
x1nixmzeng 5fa9499a12 Community feedback
Updated naming convention
Exposed the game name to Emulator for other uses
Fixed bug with XDBF parsing
2016-01-08 22:55:37 +00:00
x1nixmzeng e4cef38d95 Formatting of changes
As per the style guide
2016-01-07 20:51:28 +00:00
x1nixmzeng effe241a11 Removed stb_image dependency
Windows actually supports PNG resources
2016-01-07 20:38:27 +00:00
x1nixmzeng 92c8409b0a Set the window icon from the module resource pool
Makes use of the stb_image library
Conversion to HICON seems to have broken somewhere
2016-01-07 01:32:56 +00:00
x1nixmzeng 321e2d8873 Set the window title from the module resource pool 2016-01-07 00:58:05 +00:00
x1nixmzeng 729a1af0d5 Added XDBF utility library
Utility library to support the XDBF file format for XEX module resources
2016-01-07 00:51:27 +00:00
Ben Vanik 16c97189dd Splitting up debugger.h. 2016-01-01 15:52:43 -08:00
Ben Vanik 07ba1be7f5 Switching debugger to not retain XThreads. 2016-01-01 15:35:48 -08:00
Ben Vanik 1b487b67c9 Why travis doesn't have aligned_alloc but my other two unixes do, ?. 2016-01-01 13:08:15 -08:00
Ben Vanik 09aa3179fb Adding cstdlib to memory.h. 2016-01-01 20:59:52 +00:00
Ben Vanik c93b93fe55 Standardizing wchar->char in main(). 2016-01-01 12:46:26 -08:00
Ben Vanik c8b544ffd4 Fixing casts. This is why I need tests. 2016-01-01 12:45:06 -08:00
Ben Vanik 8770e6e6cf Adding yaml-cpp for #428, use rando fork until jbeder/yaml-cpp#342 lands. 2016-01-01 12:13:36 -08:00
Ben Vanik 207b835386 I have a dream that one day compilers will agree. 2016-01-01 19:19:18 +00:00
Ben Vanik 2f012fb56d Though I disagree with these lint fixes, I want travis to shut up. 2016-01-01 18:38:20 +00:00
Ben Vanik b02ca62388 Fixing most remaining C++ warnings in clang. 2016-01-01 18:37:33 +00:00
Ben Vanik e029c9abdc Cleaning up clang warnings in gpu/. 2016-01-01 16:04:47 +00:00
Ben Vanik 95d3a9c345 Minor clang warning fixes. 2016-01-01 06:01:22 +00:00
Ben Vanik c4ca7ad2ae Fixing builds when profiling is disabled. 2016-01-01 04:51:02 +00:00
Ben Vanik a95be25e2f Merge branch 'linuxfix' of https://github.com/sephiroth99/xenia into sephiroth99-linuxfix 2015-12-31 14:39:23 -08:00
Marc-Antoine Levasseur f1829a5784 Fix the StfsContainerEntry not being initialized in StfsContainerFile 2015-12-31 13:02:24 -05:00
Ben Vanik f26bea88d9 Replacing zlib with snappy in traces, adding trace header, docs. 2015-12-30 22:58:22 -08:00
Ben Vanik 952d35911c Folding build_tools back into the main repo for simplicity. 2015-12-30 16:53:14 -08:00
Ben Vanik 214532a3e8 Fiddling with FPSCR and such. Still not implemented, but wiring done. 2015-12-30 16:53:14 -08:00
Ben Vanik 0482ffad5a Allow XMA decoder to be suspended. 2015-12-30 16:53:13 -08:00
Ben Vanik c296d581cf Readback CA in XER. 2015-12-30 16:53:12 -08:00
sephiroth99 f5d4941716 shader_translator: Remove always true expression
vector_dest() returns an unsigned value, it will always be >= 0.
2015-12-30 18:43:24 -05:00
sephiroth99 f3fc50c8db shader: Fix print format for hash 2015-12-30 18:43:24 -05:00
Dr. Chat 2a590f31fe XFile: Track asynchronous/synchronous flag (and return appropriately in nt Read/Write file) 2015-12-30 17:36:05 -06:00
sephiroth99 962d8215da shader_translator: Handle all enum values in switch-cases 2015-12-30 17:42:18 -05:00
sephiroth99 ee8e6e8822 debug_window: Use function to store from '__m128' variable. 2015-12-30 17:42:18 -05:00
sephiroth99 b0bce0d9ab debug_window: Ignore other breakpoint types
In the breakpoints pane, add a default case for breakpoint types that
ignores the other possible types.
2015-12-30 17:42:18 -05:00
sephiroth99 6b31ddfb42 debug_window: Use correct format specifier for double value
Specifier 'LF' is 'long double'.
2015-12-30 17:42:18 -05:00
sephiroth99 fe30941c9b debug_window: Use a string literal as a format string
Fixes clang "format-security" error.
2015-12-30 17:42:18 -05:00
sephiroth99 235f58d757 Add missing include for std::find 2015-12-30 17:42:18 -05:00
sephiroth99 058ae01568 Add default case which ignores other mouse buttons 2015-12-30 17:42:18 -05:00
sephiroth99 9451c0b1cf Fix different types in std::min arguments 2015-12-30 17:42:18 -05:00
sephiroth99 3f49aa3cef Add default case for unhandled target_type values 2015-12-30 17:42:18 -05:00
sephiroth99 da71bc26a2 Use correct value in unhandled case assert 2015-12-30 17:42:18 -05:00
sephiroth99 16ade60d37 Pass a C string for logging argument 2015-12-30 17:42:18 -05:00
sephiroth99 d982b54bda byte_stream: Remove template specialization in class scope 2015-12-30 17:42:18 -05:00
sephiroth99 a743c12e72 byte_stream: add missing include for memcpy 2015-12-30 17:42:18 -05:00
sephiroth99 fa953fe758 bit_map: Add missing include for size_t definition 2015-12-30 17:42:18 -05:00
sephiroth99 fc04ca040f Fix building with profiling disabled 2015-12-30 17:42:18 -05:00
Ben Vanik cbc74c92f4 Fixing CR update for divwu/divdu/mulhwu. 2015-12-30 10:04:57 -08:00
Ben Vanik 69c7bac8db Fixing branch address calculation. 2015-12-30 09:47:24 -08:00
Ben Vanik 3c332ef1f5 Adding/removing saturate checks where required. 2015-12-30 09:31:03 -08:00
Ben Vanik 76ed07cfff Adding back FILE_FLAG_BACKUP_SEMANTICS. 2015-12-30 09:19:54 -08:00
Ben Vanik 74d71f7a4a Fixing the rlw* instructions. 2015-12-30 09:02:29 -08:00
Ben Vanik b09e32ec15 Adding tests for broken rlwnm and rliwnm. Not yet fixed. 2015-12-29 20:58:38 -08:00
Ben Vanik 321e2663ef Fixing mullw. 2015-12-29 20:42:20 -08:00
Ben Vanik 431088d35e Faster clearing of heaps to speed up tests. 2015-12-29 20:26:01 -08:00
Ben Vanik d7eff7c9e3 Marking some memory instructions as kM. 2015-12-29 17:53:49 -08:00
Ben Vanik 077f73449d More gracefully handle killed threads. Still needs some UI love. 2015-12-29 15:19:31 -08:00
Ben Vanik cc37fb1358 Updating to the latest capstone. Fixes #440. 2015-12-29 15:19:08 -08:00
Ben Vanik 3ca0bff246 Avoid duplicate object handle assignment on creation. 2015-12-29 14:03:23 -08:00
Ben Vanik 9c694f07b3 Better trap message. 2015-12-29 13:40:53 -08:00
Ben Vanik 948aa2400d Formatting all code. Too gnarly to rebase properly. 2015-12-29 13:13:34 -08:00
Dr. Chat 4e7dfa477b Assign XModule path on load rather than in the constructor 2015-12-29 13:10:03 -08:00
Dr. Chat c242a01043 Mark XThreads as running before calling Execute 2015-12-29 13:10:02 -08:00
Dr. Chat 6108ff1608 Use a 64-bit bitmap rather than a 32-bit bitmap. 2015-12-29 13:10:02 -08:00
Dr. Chat 764dcba75a Update TLS comments 2015-12-29 13:10:01 -08:00
Dr. Chat 5cb591b993 Compensate for static TLS when accessing dynamic TLS. 2015-12-29 13:10:01 -08:00
Dr. Chat bca5fb5382 XThread acquire mutants on restore 2015-12-29 13:10:00 -08:00
Dr. Chat 5c94062110 XFile setup async_event_ in the restore constructor 2015-12-29 13:10:00 -08:00
Dr. Chat fefc2036b3 Fix XSemaphores saving/restoring a bad counter 2015-12-29 13:09:59 -08:00
Dr. Chat d4da8cab4e BitMap: Change the size param to the number of entries (bits) 2015-12-29 13:09:59 -08:00
Dr. Chat eee0bb070c Store thread TLS in guest memory rather than using host APIs 2015-12-29 13:09:58 -08:00
Dr. Chat c5ac4185ac Threadsafe bitmap class 2015-12-29 13:09:58 -08:00
Dr. Chat bb5fd73b9e Register user-modules with the kernel in UserModule::Restore 2015-12-29 13:09:57 -08:00
Dr. Chat 2855036f72 Remove modules from the object table if they fail to load. 2015-12-29 13:09:57 -08:00
Dr. Chat 3e6c70defa Fixup UserModule::LoadFromFile to use new vfs API 2015-12-29 13:09:56 -08:00
Dr. Chat f4154810b6 XamModule::LoaderData::launch_data_present 2015-12-29 13:09:56 -08:00
Dr. Chat 08663fd745 Non-const ByteStream::data() 2015-12-29 13:09:55 -08:00
Dr. Chat 68f9949829 Make XObject::GetWaitHandle a protected function 2015-12-29 13:09:55 -08:00
Dr. Chat e619e4590c debugger: Don't feed the stack walker an XThread's wait handle 2015-12-29 13:09:54 -08:00
Dr. Chat 8f92c60a0b ObCreateSymbolicLink/ObDeleteSymbolicLink 2015-12-29 13:09:54 -08:00
Dr. Chat 9cf324f689 Fix VFS files not having correct paths recorded. 2015-12-29 13:09:53 -08:00
Dr. Chat ab9fac9a98 XMutant Save/Restore 2015-12-29 13:09:53 -08:00
Dr. Chat 5aff9d12ee Call XObject::WaitCallback on successful waits 2015-12-29 13:09:52 -08:00
Dr. Chat d0f547020a XamLoaderLaunchData: Fix incorrect return values when launch data is not present. 2015-12-29 13:09:52 -08:00
Dr. Chat b9159ddee8 X64CodeCache: Add a couple of overflow debug asserts 2015-12-29 13:09:52 -08:00
Dr. Chat f5237d486a KernelState::TerminateTitle - Release the global lock in smaller regions / No need for an argument specifying if called from guest 2015-12-29 13:09:51 -08:00
Dr. Chat 366f91e191 XFile Save/Restore 2015-12-29 13:09:51 -08:00
Ben Vanik 383a173a18 REBASE: fixing xthread instruction decoding. 2015-12-29 13:09:50 -08:00
Dr. Chat bcacb9b127 Remove vfs dependency on kernel, implement I/O completion ports 2015-12-29 13:09:50 -08:00
Dr. Chat a5c22ec214 XThread: Only need to retain a pointer to our object - not a handle. 2015-12-29 13:09:49 -08:00
Dr. Chat 621d3f8abb XThread free stack on destruction 2015-12-29 13:09:49 -08:00
Dr. Chat 07d31862f1 XThread: Special case save/restore for threads no longer running. 2015-12-29 13:09:48 -08:00
Dr. Chat b58e9afbf1 Fix XThread::StepIntoBranch not properly stepping into blr/bctr 2015-12-29 13:09:48 -08:00
Dr. Chat 44c9e8fe25 Save/Restore the guest clock in XThreads 2015-12-29 13:09:47 -08:00
Dr. Chat adec5602c2 XModule log on save/restore 2015-12-29 13:09:47 -08:00
Dr. Chat 6f4626118e Fix infinite loop in StepToSafePoint after stepping to an address once 2015-12-29 13:09:46 -08:00
Dr. Chat 4cbe219476 Don't update the dispatch header in KetSetEvent/KeResetEvent (threading issues) 2015-12-29 13:09:46 -08:00
Dr. Chat 5f79d8f97e Fix RingBuffer::EndRead not detecting a split read (where second length == 0) 2015-12-29 13:09:45 -08:00
Dr. Chat d0284e943d XSemaphore Save/Restore 2015-12-29 13:09:45 -08:00
Dr. Chat afb514528e Save/Restore XThreads before any other kernel objects 2015-12-29 13:09:44 -08:00
Dr. Chat b97a39150b Rewrite Rtl critical section implementation (and implement full waiters) 2015-12-29 13:09:44 -08:00
Dr. Chat 606aa9af6f XThread: Update the PC when we step out of an export! 2015-12-29 13:09:43 -08:00
Dr. Chat ee0a41aa2c Fix AudioSystem Restore and cleanup some code 2015-12-29 13:09:43 -08:00
Dr. Chat b94ab4acbc AudioSystem Save/Restore 2015-12-29 13:09:42 -08:00
Dr. Chat d2d97fe58f XThread - Fix unconditional conditional branch check 2015-12-29 13:09:42 -08:00
Dr. Chat 4eff2d8420 AudioSystem - switch to a free flag for free clients rather than a queue. 2015-12-29 13:09:41 -08:00
Dr. Chat 6997970d52 GraphicsSystem Save/Restore 2015-12-29 13:09:41 -08:00
Dr. Chat 9ed81b6876 Fix not assigning write access to WriteCombine pages on restore. 2015-12-29 13:09:40 -08:00
Dr. Chat 1442f50058 X64Backend: Take a reference of the pair rather than a copy (and formatting) 2015-12-29 13:09:40 -08:00
Dr. Chat 49ed0915d4 Add (temporary) shortcuts to save(F7)/restore(F8) to a file called "test.sav" 2015-12-29 13:09:39 -08:00
Dr. Chat 24f8295daa Make KernelState::TerminateTitle try to terminate XThreads safely. 2015-12-29 13:09:39 -08:00
Dr. Chat 3007a98d2d Install false-branch breakpoint only if the opcode is conditional. 2015-12-29 13:09:38 -08:00
Dr. Chat f9de61ceed XThread::StepToSafePoint - Handle cases where the thread hasn't started yet. 2015-12-29 13:09:37 -08:00
Dr. Chat 0f82e0d090 Make the processor automatically generate any ungenerated functions when installing a breakpoint. 2015-12-29 13:09:37 -08:00
Dr. Chat 5ef21d3714 memory: Write no access pages to the savefile. 2015-12-29 13:09:36 -08:00
Dr. Chat 20fb20d7f6 Hold the global lock while restoring from a file. 2015-12-29 13:09:36 -08:00
Dr. Chat a6322c7bf4 NativeList getters/setters 2015-12-29 13:09:36 -08:00
Dr. Chat 89c408965e Can't call constructors from other constructors 2015-12-29 13:09:35 -08:00
Dr. Chat ce2d6da2a1 Processor breakpoints: Change iterators to C++11 syntax where necessary 2015-12-29 13:09:35 -08:00
Dr. Chat 7d30e1297a NotifyListener Save/Restore 2015-12-29 13:09:34 -08:00
Dr. Chat 87931369e4 XObject no kernel state constructor 2015-12-29 13:09:34 -08:00
Dr. Chat b3ed0fa445 NativeList default constructor 2015-12-29 13:09:33 -08:00
Dr. Chat 23b6a1f943 Fix xam_net.cc 2015-12-29 13:09:33 -08:00
Dr. Chat 4a3773d2fb XModule Save/Restore 2015-12-29 13:09:32 -08:00
Dr. Chat 93602ed48a No need to double-retain Ke* objects, as having them in the object table is enough. 2015-12-29 13:09:32 -08:00
Dr. Chat a4865bd24a Retain objects when restored into the object table. 2015-12-29 13:09:31 -08:00
Dr. Chat c8a2298b9d Remove ~NotifyListener call to UnregisterNotifyListener (as it's impossible for this to occur) 2015-12-29 13:09:26 -08:00
Dr. Chat 290d5d9594 Fix incorrect double-retaining of objects on restore. 2015-12-29 13:09:24 -08:00
Dr. Chat 3678a22c90 Use TLS to store the current thread. 2015-12-29 13:09:24 -08:00
Dr. Chat 7e88e54cbe XObject::host_object -> XObject::is_host_object 2015-12-29 13:09:23 -08:00
Dr. Chat 1e36ea8b69 Use c_str() when passing a string to sprintf! 2015-12-29 13:09:23 -08:00
Dr. Chat c44742b0e3 XEvent write signaled state 2015-12-29 13:09:22 -08:00
Dr. Chat e54850e1f2 XThread::set_name - Use more efficient xe::format_string instead of a StringBuffer 2015-12-29 13:09:22 -08:00
Dr. Chat e4e1bc1060 Remove dead code from UserModule (how did this even get here?) 2015-12-29 13:09:22 -08:00
Dr. Chat 0b5def1ff6 MappedMemory: Support opening empty files (and extending them) / remapping files / Truncate on close 2015-12-29 13:09:21 -08:00
Dr. Chat 8a9493a048 Remove unused XboxkrnlModule::LaunchModule 2015-12-29 13:09:21 -08:00
Dr. Chat 442f063ddf XThread Save: Handle emulated instructions/MMIO/etc that call out of guest code 2015-12-29 13:09:20 -08:00
Dr. Chat 785824531c Fix the assert on no restore handler found 2015-12-29 13:09:20 -08:00
Dr. Chat 6e0057020c XEvent Save/Restore (TODO: Write signaled state) 2015-12-29 13:09:19 -08:00
Dr. Chat ce92dd5691 ObjectTable Save/Restore (and overloads/PurgeAllObjects/GetAllObjects) 2015-12-29 13:09:19 -08:00
Ben Vanik bbff23a8bb REBASE: Fixing Memory::Reset(). 2015-12-29 13:09:18 -08:00
Dr. Chat 432e32f7c2 memory Save/Restore 2015-12-29 13:09:18 -08:00
Dr. Chat aa7919bd89 emulator.cc savestates
Change UserModule::Launch to be non-blocking (returns the main thread)
2015-12-29 13:09:17 -08:00
Dr. Chat 52ec24ea6a Stash handles rather than native pointers in Ke* objects. 2015-12-29 13:09:17 -08:00
Dr. Chat 4301641bdf XThread Save/Restore 2015-12-29 13:09:16 -08:00
Ben Vanik 194c13f977 REBASE: Fix vector out of range access. 2015-12-29 13:09:16 -08:00
Dr. Chat 5517518d36 XObject savestate setup (Save/Restore, tracks all handles, tracks if host object) 2015-12-29 12:35:59 -08:00
Dr. Chat 1ce6a7580b Fix CaptureStackTrace with null out_stack_hash 2015-12-29 12:35:59 -08:00
Dr. Chat 712a5da64b KernelState::Save/Restore (and misc. changes) 2015-12-29 12:35:58 -08:00
Dr. Chat d99008bfac RawModule::SetAddressRange - Notify the backend about this range. 2015-12-29 12:35:58 -08:00
Dr. Chat 38a09cbcc2 ExecuteRaw: Pass in 0xBC... magic so Xenia will return to the guest caller. 2015-12-29 12:35:57 -08:00
Dr. Chat 6d98628962 Remove Function::Call extern handler shortcut (as we need old behavior for savestates) 2015-12-29 12:35:56 -08:00
Dr. Chat 67a45203e3 Uninstall the X64 backend exception callback on exit. 2015-12-29 12:35:56 -08:00
Dr. Chat 62351a62de filesystem::CreateFile 2015-12-29 12:35:55 -08:00
Dr. Chat e206d13af7 Flag mfmsr/mtmsr/mtmsrd as context-synchronizing instructions 2015-12-29 12:35:04 -08:00
Dr. Chat ed85346f3b XObject Save/Restore 2015-12-29 12:32:50 -08:00
Dr. Chat 938d849c06 ByteStream class 2015-12-29 12:32:50 -08:00
Dr. Chat 4a13316daa Track export data on kernel trampolines as well. 2015-12-29 12:32:49 -08:00
Dr. Chat b8d4f26e46 Fix NtWaitForMultipleObjectsEx definition 2015-12-29 12:32:49 -08:00
Dr. Chat 87cdce1440 Export kBlocking tag 2015-12-29 12:32:48 -08:00
Dr. Chat db8eb83057 Track export data on Guest Functions 2015-12-29 12:32:47 -08:00
Dr. Chat 42c657c40a Remove processor dependency on XThread for breakpoints 2015-12-29 12:32:47 -08:00
Dr. Chat 666f5543a8 Cleanup ThreadState and XThread 2015-12-29 12:32:46 -08:00
Dr. Chat 41d5b41523 Automatically install any CPU breakpoints in any newly-defined functions if necessary. 2015-12-29 12:32:01 -08:00
Dr. Chat d09e3b7953 Fix incorrect backend breakpoints implementation 2015-12-29 12:32:00 -08:00
Dr. Chat 28468f8a18 cpu::Processor now tracks a pointer to the emulator. 2015-12-29 12:32:00 -08:00
Dr. Chat 7d59258839 Processor::ExecuteRaw
Changed the breakpoint lock to a recursive mutex.
2015-12-29 12:28:57 -08:00
Dr. Chat ac706f6923 Allow breakpoint addresses to be changed after creation 2015-12-29 12:28:56 -08:00
Dr. Chat e383e2f101 Processor breakpoint support 2015-12-29 12:28:56 -08:00
Ben Vanik 5019f1aa98 Possible fix for failing to create files. 2015-12-29 11:02:28 -08:00
Ben Vanik 214957da3a Adding finer-grained instruction classification. 2015-12-29 11:02:00 -08:00
Ben Vanik cc72de0f64 Moving disasm to new tables.
Also adding useful CPU docs.
2015-12-28 20:49:22 -08:00
Ben Vanik cd938be678 Removing all uses of the old PPC tables besides disasm. 2015-12-28 10:08:38 -08:00
Ben Vanik 990d973c74 New ppc opcode decoder.
Seems to work and match up with the old decoder (which may be bad).
Old decoder remains until all functionality is replaced.
2015-12-27 22:53:05 -08:00
Ben Vanik ca8d658ffe Speeding up PPC tests significantly. 2015-12-27 12:03:30 -08:00
Ben Vanik 5de82887fa Adding build version information to main window/log. 2015-12-27 11:53:37 -08:00
Ben Vanik 5f61c6ad07 Adding icon. 2015-12-27 11:09:19 -08:00
Ben Vanik 484972db30 Fixed mutation of vectors during iteration. 2015-12-27 10:48:38 -08:00
Ben Vanik 0a316808a5 Include order fixes. 2015-12-27 10:27:46 -08:00
Ben Vanik 6b92c1a01e Moving GPU flags to graphics_system.cc so all graphical exes get them. 2015-12-27 10:21:11 -08:00
Ben Vanik 629a75c162 Merge pull request #493 from parkerlamb/nv_optimus
Nvidia Optimus support
2015-12-27 10:15:40 -08:00
Ben Vanik 0e58208add Dropping elemental-forms and swapping out with imgui.
Too much code for such little use. This should simplify porting.
2015-12-26 20:25:24 -08:00
Parker Lamb b59ee24f5d NvOptimusEnablement and AmdPowerXpressRequestHighPerformance symbols are
now exported for laptops with dual graphics
2015-12-26 22:14:13 -06:00
Ben Vanik 3b11de2c2d Merge pull request #492 from DrChat/gl_backend_changes
GL Backend Changes/Fixes
2015-12-22 23:52:46 -08:00
Dr. Chat 990a8baf1b Fix cases where GL_INFO_LOG_LENGTH returns 0. 2015-12-22 20:15:07 -06:00
Dr. Chat b49114bad6 GLContext: Keep track of robust access support for WasLost 2015-12-22 15:53:51 -06:00
Dr. Chat cde39953ab Fix TracePlayer::PlayTraceOnThread not signifying it's done with the trace if a break is pending. 2015-12-22 15:46:39 -06:00
Dr. Chat a4f6e60e20 Blitter::Draw assert on zero src texture 2015-12-22 15:44:51 -06:00
Dr. Chat ab93a6bf64 If last framebuffer texture isn't set, use active framebuffer otherwise don't draw. 2015-12-22 15:44:02 -06:00
Dr. Chat 919d3d080b Assert on context loss due to a TDR 2015-12-22 15:43:08 -06:00
Dr. Chat 59bee898f7 Always output the shader info log if it's not empty. 2015-12-22 14:41:18 -06:00
Dr. Chat 30eda6909f GLContext::WasLost - Determines if we lost the context due to a TDR or another outstanding event. 2015-12-20 21:13:51 -06:00
Dr. Chat 0c60cc5f48 Fix GLContext::AssertExtensionsPresent not clearing the context after use 2015-12-20 20:55:04 -06:00
Dr. Chat cf41a84fe3 Fix broken check against bool constants
Fix always terminating execution in cexece branches (these are sometimes followed by exece branches)
2015-12-20 20:53:31 -06:00
sephiroth99 a281f6d70d ObjectTable: Remove explicit specialization in class scope
Function template 'LookupObject' in ObjectTable class has
a specialization in class scope, which is not allowed.

While MSVC seems OK with that, clang complains about it.

Fix this issue by moving the definition of the specialisation
outside the class scope, and moving the declaration in the
'.cc' file.
2015-12-17 01:04:44 -05:00
Ben Vanik 15816327b4 Renaming xe::cpu::frontend to xe::cpu::ppc. 2015-12-14 21:17:55 -08:00
Ben Vanik 9273359cdd Removing vestigial ContextInfo. 2015-12-14 20:57:14 -08:00
Ben Vanik 5e6c1f5a50 Removing some dead code. 2015-12-14 20:49:50 -08:00
Ben Vanik 826ea60890 gpu-trace-diff tool for running batches of diffs. 2015-12-13 16:59:43 -08:00
Dr. Chat 3ebd53ba11 Fix crandc/crnand/crnor/crorc not properly taking the complement of the CR fields. 2015-12-13 18:32:57 -06:00
Ben Vanik 7419e7eb4a Trace dump tool, for dumping pngs (and in the future more stuff). 2015-12-13 11:59:14 -08:00
Ben Vanik 95b0ecf774 Sharing more of trace viewer code. 2015-12-13 11:22:47 -08:00
Ben Vanik 5db84105c4 Utilizing fallthrough for most shader CF, hopefully speeding things up. 2015-12-13 10:14:35 -08:00
Ben Vanik b5469b57ba Moving temporary registers to exec blocks. ps may still need to be shared. 2015-12-07 22:57:28 -08:00
Ben Vanik 85b1797b9e Workaround for nvidia bug with dynamic local memory access. 2015-12-07 22:55:17 -08:00
Ben Vanik ec113275dc Making texture swizzles dynamic. Seems to fix some color swap issues.
And probably exposes many more ;)
2015-12-07 22:39:33 -08:00
Ben Vanik 09022a6ad3 gl_FragCoord support. 2015-12-07 20:45:02 -08:00
Ben Vanik 1f773f14b3 Fixing vfetch_mini use. 2015-12-07 19:16:32 -08:00
Ben Vanik 522ff9d23e Alternate indirect buffer command. 2015-12-07 19:16:01 -08:00
Ben Vanik ed0b97813a Loops in shaders (no TDRs! woo!). 2015-12-07 13:03:57 -08:00
Ben Vanik 367ca09f1d Don't duplicate vf bindings. 2015-12-07 13:03:35 -08:00
sephiroth99 f154b7ed59 Fix compilation error of translated GLSL shader.
Comparison of uvec2 and int is not possible, explicitly
use a zero-value uvec2.
2015-12-07 01:39:17 -05:00
Ben Vanik 280c0b35f6 Basic control flow skeleton and jumps implemented.
A-train's trees draw right now!
Helps a bit with #473 but still need to implement loops.
2015-12-06 11:44:22 -08:00
Ben Vanik 934b0d5bbc Marking unimplemented translations as non-fatal. 2015-12-06 11:01:04 -08:00
Ben Vanik c86e479214 Replacing old Shader with TranslatedShader. 2015-12-06 10:36:07 -08:00
Ben Vanik 083f936bbc aL placeholder until loops are implemented. 2015-12-06 00:53:25 -08:00
Ben Vanik 51a8002629 Moving GL backend to new shader translator.
This seems to make a lot of things better, but may also break things.
Cleanup to follow.
2015-12-06 00:48:41 -08:00
Ben Vanik 295c62c7a4 Guarding protect-on-release behavior behind --protect_on_release.
Workaround for #456 until it can be identified.
2015-12-05 23:27:25 -08:00
Ben Vanik 81d0376106 Fixing use before check for null. 2015-12-05 23:24:40 -08:00
Ben Vanik 52f339cee4 Removing bogus assert. 2015-12-05 23:24:17 -08:00
Ben Vanik 2b3b423776 Mostly complete new GLSL translator (modulo flow control). 2015-12-05 17:44:06 -08:00
Ben Vanik 0058cae901 Adding pseudo code for all ucode ops from AMD docs. 2015-12-05 03:10:45 -08:00
Ben Vanik 4bac581d01 Merge pull request #475 from sephiroth99/varfix
VS2015 Update 1 fix + GLContext small cleanup
2015-12-03 22:39:19 -08:00
Ben Vanik 00240945fe Cleanup for the latest clang-format version. 2015-12-03 19:52:02 -08:00
Ben Vanik 249b952de9 Adding some comments. 2015-12-02 17:37:48 -08:00
Dr. Chat bc1e7684ca Pass rounding mode from i->flags for OPCODE_CONVERT 2015-12-02 14:03:15 -06:00
Dr. Chat 17d18f7154 Implement a few cases for Value::Cast/Convert 2015-12-02 14:01:28 -06:00
Dr. Chat 57a823ae39 Add (commented out) code to setup page protections for xex modules. 2015-12-01 19:53:17 -06:00
Dr. Chat 525d62d437 constant OPCODE_CONVERT and more cases for OPCODE_LOAD 2015-12-01 19:51:28 -06:00
Dr. Chat 873016f06f Fix double-swap in constant load 2015-12-01 19:03:51 -06:00
sephiroth99 e8296a8608 ui/gl: GLContext: access directly class member
In ::EndSwap, dc_ class member was accessed through a function. Access
it directly like it is done elsewhere in the class.

It is also the only place where it is used, so remove the function in
question.
2015-11-30 22:59:30 -05:00
sephiroth99 f367c4ba7b Fix compilation under VS2015 Update 1 2015-11-30 22:56:42 -05:00
Ben Vanik 82fe65475e Fixing sqrt/rsqrt mixup.
Queue the 'how did this ever work?!'
2015-11-30 17:22:08 -08:00
Ben Vanik cd50aac6d2 Skeleton SPIRV translator. 2015-11-29 19:45:55 -08:00
Ben Vanik d2f7cc1602 Reworking translator code to be pretty sexy. 2015-11-29 16:55:42 -08:00
Ben Vanik 65130edaa1 First pass ShaderTranslator base type, able to disasm in msft style. 2015-11-28 16:19:04 -08:00
Ben Vanik bea8870700 Shuffling old-style ucode.h under gl4. 2015-11-28 16:10:27 -08:00
Ben Vanik 71b9995448 Skeleton SPIRV shader translator. 2015-11-28 16:10:26 -08:00
sephiroth99 f4dae2335c premake: Small fixes to various premake files
In particular, add the "src" group to apu/xaudio2 project, which was
missing.
2015-11-28 01:53:26 -05:00
raven02 44a1fa0c9c Fix distance vector 2015-11-28 13:17:29 +08:00
Ben Vanik 51c3df1e2e Making mtmsr & co synchronize the context. 2015-11-25 17:37:20 -08:00
Ben Vanik dfd92757a9 Adding CONTEXT_BARRIER to force the PPC context to synchronize.
This is just an annotation right now, as it's not actually needed.
2015-11-25 14:48:36 -08:00
Ben Vanik 54215d9fb4 Write shader binaries with --dump_shaders and load them in the compiler. 2015-11-24 20:45:23 -08:00
Ben Vanik 89172da4b7 Unplumbing program_cntl and simplifying shader loading. 2015-11-24 20:24:35 -08:00
Ben Vanik 6a546ebe4d Shuffling spirv code so it's not tied to xe::gpu.
Will make it easier to use in standalone apps.
2015-11-24 19:49:05 -08:00
Ben Vanik cf68d02142 Lots of cleanup in SpvEmitter. 2015-11-23 21:20:59 -08:00
Ben Vanik a7f6c1a09c Prevent seeking while playing a trace. 2015-11-22 17:44:24 -08:00
Ben Vanik e35fdff632 Porting glslang SPIRV stuff and cleaning some of it up. 2015-11-22 17:42:24 -08:00
Ben Vanik 1b1ff07bf5 Assembler/disassembler via SPIRV-Tools. 2015-11-22 17:42:23 -08:00
Ben Vanik 9072a38f38 Renaming spirv files so VS highlights them correctly. 2015-11-22 17:42:23 -08:00
Dr. Chat 414519fb6c Expose a playback percentage rather than pointers in TracePlayer 2015-11-22 11:36:31 -06:00
Dr. Chat a59e83e0d0 Style 2015-11-22 10:15:50 -06:00
Dr. Chat 646db5b8be Disable controller UI while playing a trace 2015-11-22 09:54:25 -06:00
Dr. Chat 1078d21bd2 Stop resizing columns for the fetch constants 2015-11-21 22:37:24 -06:00
Dr. Chat e565bafdab Prevent interaction with the command list UI while a trace is still playing 2015-11-21 22:29:47 -06:00
Dr. Chat 7c25795c05 Display texture guest address and swizzle information 2015-11-21 21:45:11 -06:00
Dr. Chat 7a1d7bd652 Display a progress bar while the command processor is playing a trace
- Masks a race condition in the texture cache b/t the UI thread and the GL4 command processor
2015-11-21 21:44:35 -06:00
Dr. Chat 7640448509 TracePlayer: Allow seeking forward more than one command 2015-11-21 21:42:24 -06:00
Dr. Chat 2a88225500 TracePlayer - Expose internal playback pointers 2015-11-21 21:41:41 -06:00
Ben Vanik b750875e9d Fixing style. 2015-11-21 19:07:07 -08:00
Robert Dupuis bdec7a063f Implemented REG_TO_MEM GPU opcode 2015-11-21 21:20:34 -05:00
Ben Vanik 1956b8708e Fixing include orders and whitelisting others.
Will be broken until clang SVN 253772 is available on travis/snapshots.
2015-11-21 11:34:46 -08:00
Ben Vanik add68c3743 spirv headers and compiler skeleton. 2015-11-21 11:22:24 -08:00
Dr. Chat 0f2f4ab9b6 Compress/decompress memory automatically in trace files 2015-11-20 17:12:13 -06:00
John Godgames bcec142d3e Fixes DXT1 Alpha issues in certain games
https://www.opengl.org/wiki/S3_Texture_Compression#DXT1_with_1-bit_Alpha
2015-11-20 05:10:28 +01:00
Dr. Chat 9ff8aa96e7 Disable GL_CULL_FACES when drawing rectangle lists. 2015-11-17 22:20:43 -06:00
Ben Vanik a556316ba2 Skip xma read when at the end of the stream. 2015-11-16 19:40:43 -08:00
Ben Vanik 2602d54775 Merge pull request #461 from DrChat/trace_viewer_open_dlg
Trace Viewer: Display a File Open Dialog if no File Specified
2015-11-16 18:26:17 -08:00
Dr. Chat f50e2ab10c Trace Viewer: Display a file picker if the user doesn't supply a file on the command line. 2015-11-15 09:15:20 -06:00
Dr. Chat 3efc7f339a Make sure texture swizzles match before performing a copy 2015-11-14 22:34:34 -06:00
Dr. Chat 4dfe1addaa Verify that LookupObject actually returns an object of the requested type. 2015-11-12 19:06:15 -06:00
Dr. Chat 7fc22f1987 Add a static kType field to all objects 2015-11-12 19:01:55 -06:00
Ben Vanik b970b970f0 Removing another scalar component swap from #273. 2015-11-12 15:53:16 -08:00
Ben Vanik 3d2a5b2495 Reverting depth clear restriction in #330.
The comment is still true: games seem to need more clears.
2015-11-12 14:15:59 -08:00
Ben Vanik e858f87e3e Reverting component changes from #273. 2015-11-12 14:14:37 -08:00
Ben Vanik b6b685aa72 Fixing lint error. 2015-11-11 15:44:24 -08:00
Dan Weatherford dca0ab38d5 Show relative constant fetch in the microcode disassembler 2015-11-11 17:13:58 -06:00
Dan Weatherford 2fda17cf3c Fix relative constant fetch on second source operand of shader instruction
The sense for this test was backwards, causing AppendSrcReg to read the wrong
const_n_rel_abs flag if the first operand was not a constant fetch.
2015-11-11 17:13:48 -06:00
Ben Vanik 6c95ca1cdb Moving graphics context creation around to hide actual creation.
Makes it easier to support APIs that don't have a concept of sharing.
2015-11-10 17:38:57 -08:00
Ben Vanik d8fa54ffc4 Fixing super class call in gl4 cp. 2015-11-09 20:28:09 -08:00
Dan Weatherford e178853e46 Partially implement XamUserWriteProfileSettings
Handles writing binary blob settings to the user profile which can then be read
by XamUserReadProfileSettings.
2015-11-09 16:53:52 -06:00
Ben Vanik ca5e8fa073 Adding a way to get an hmodule. 2015-11-09 13:59:06 -08:00
Ben Vanik 93708c0c1c xe::format_string utility. 2015-11-09 11:13:34 -08:00
Ben Vanik 65e0e907d8 Normalizing the name of the GL window demo. 2015-11-08 19:11:44 -08:00
Dr. Chat c98d10545e Invalidate MMIO Ranges when memory is released or access protections are changed. 2015-11-08 19:14:06 -06:00
Dr. Chat 529227e4e6 MMIOHandler::InvalidateRange 2015-11-08 18:18:28 -06:00
Ben Vanik 8784de0162 Cleaning up unneeded file. 2015-11-08 15:08:27 -08:00
Ben Vanik 5834a42ef3 Dependency injection for apu/gpu/hid. 2015-11-08 15:02:24 -08:00
Ben Vanik 9a6c5c5c74 95% of trace viewer now gpu backend agnostic. 2015-11-08 14:05:37 -08:00
Ben Vanik b5a18b5462 Factoring out a lot of reusable GPU code from gl4/. 2015-11-08 11:54:36 -08:00
Ben Vanik b26f4a5719 Moving imgui input to a shared place. 2015-11-07 12:42:44 -08:00
Ben Vanik 1d9f73ad13 HID demo. 2015-11-07 12:31:07 -08:00
Ben Vanik 4af6c41740 Moving profiling.h to base - UI could be separated for cleanliness. 2015-11-07 12:31:07 -08:00
Ben Vanik 563552f62f Merge pull request #453 from DrChat/instr_fixes
Fix vcmpbfp having incorrect behavior when the value is equal to the bounds
2015-11-07 12:28:44 -08:00
Dr. Chat aeb635e31d vcmpbfp tests 2015-11-07 14:27:24 -06:00
Ben Vanik 2fdb00b4ed Removing use of Emulator from hid/. 2015-11-07 11:09:47 -08:00
Ben Vanik e16fa28822 Fixing elemental clipping. 2015-11-07 11:09:24 -08:00
Ben Vanik 91229de429 Making window demo graphics API-specific. 2015-11-07 10:53:07 -08:00
Ben Vanik f065872241 Adding window demo. 2015-11-07 10:37:46 -08:00
Ben Vanik fdf59fec5f Moving elemental to immediate drawer. 2015-11-07 09:52:57 -08:00
Dr. Chat abf37ed9be Fix vcmpbfp returning that the value is out of bounds for values equal to the bounds. 2015-11-06 19:04:59 -06:00
Ben Vanik 440c807936 Fix error state shutdown crash. 2015-11-06 16:27:07 -08:00
Ben Vanik 35a9697af7 Merge pull request #446 from AlexAltea/master
Fixed mtcrf which was wrongly implemented as mtcr
2015-11-06 15:11:10 -08:00
Dr. Chat 9985187b23 Implement vpkuwum/vpkuhum
Fixed vpkuwus with signed numbers
Implement some constant sources for vec average/unpack
2015-11-06 15:18:48 -06:00
Dr. Chat 64b0cc9d5e Enabled tests for vpkuhum/vpkuwum and added test with negative numbers for vpkuwus 2015-11-06 14:57:42 -06:00
Ben Vanik d4356b8cfa Removing unused buffers. 2015-11-05 23:08:22 -08:00
Ben Vanik 4c2257a29d Moving imgui to the new ImmediateDrawer. 2015-11-05 23:03:02 -08:00
Ben Vanik c631b965d7 Adding generic immediate mode drawing API and migrating microprofile.
Future changes will move elemental-forms and imgui to the common API as
well.
2015-11-05 21:36:05 -08:00
Ben Vanik 5087ccd565 Tracking capstone next. 2015-11-05 18:43:15 -08:00
Ben Vanik 5525f6c0a2 Tracking master xbyak. 2015-11-05 17:17:52 -08:00
Ben Vanik 65c5279611 Fixing style. 2015-11-05 16:39:27 -08:00
Dr. Chat 430d4c7182 Fix rare deadlock in the MMIO handler. 2015-11-05 18:13:15 -06:00
Ben Vanik cc5ebaed6d Merge pull request #450 from DrChat/indirection_table_fallback
Indirection table fallback
2015-11-04 07:57:30 -08:00
Ben Vanik 4e09bb8e61 Merge pull request #449 from DrChat/rect_list_fix_
Rectangle List Fix (projection issues on right-aligned vertices)
2015-11-04 07:46:44 -08:00
Dr. Chat 4ca62bf02c Setup the processor before doing anything else (and return an actual error code if it fails) 2015-11-04 06:48:46 -06:00
Dr. Chat f3fe260a17 Fallback case if indirection table could not be allocated. 2015-11-04 06:46:52 -06:00
Dr. Chat 9baeef02e0 Allow rect lists to fall through if they don't match the expected format 2015-11-04 05:51:34 -06:00
Ben Vanik b9326be93c Merge pull request #447 from DrChat/excreatethread_ptr_fix
Fix ExCreateThread returning a handle when game requests a pointer
2015-11-03 20:01:12 -08:00
Dr. Chat c4165a235c Fix rectangle list fragment shader for right-aligned vertices. 2015-11-03 21:32:25 -06:00
Dr. Chat cd12b3d198 Converted MmCreateKernelStack / Implemented MmDeleteKernelStack 2015-11-01 21:59:27 -06:00
Dr. Chat b628577855 Implemented KeSetCurrentStackPointers 2015-11-01 21:56:40 -06:00
Dr. Chat cee0e582c2 Remove workarounds for handles passed into Ke* functions. 2015-10-31 10:31:35 -05:00
Dr. Chat 4d22c21688 ExCreateThread: Flag 0x80 indicates we should return the thread pointer, not handle. 2015-10-31 10:28:53 -05:00
Ben Vanik e0b3d24a50 Merge pull request #445 from DrChat/kernel_trampolines
Generate trampoline functions for GetProcAddress on kernel modules
2015-10-24 17:16:33 -07:00
Alexandro Sánchez Bach c6751c1e5f Fixed mtcrf which was wrongly implemented as mtcr 2015-10-25 00:44:33 +01:00
Dr. Chat 3547d31c3d Generate trampoline functions for GetProcAddressByOrdinal on kernel modules. 2015-10-24 14:14:08 -05:00
Dr. Chat 729f762c5d RawModule SetAddressRange/set_name 2015-10-24 14:02:08 -05:00
Dr. Chat 55e811450d Lint 2015-10-22 20:22:34 -05:00
Dr. Chat 407d79cf3e Fix MMIO handler race condition by rechecking page access protections under the global lock. 2015-10-22 20:18:08 -05:00
Dr. Chat 88be0a362c memory::QueryProtect 2015-10-22 20:16:27 -05:00
Ben Vanik 64b8dcfd99 Lint fixes. 2015-10-17 09:30:28 -07:00
Ben Vanik 91dfb6a8a0 Merge pull request #436 from DrChat/misc_changes
Misc changes
2015-10-17 01:15:20 -07:00
Ben Vanik d03d0233ec Merge pull request #438 from Nukem9/patch-1
Add another likely offset for ISO magic
2015-10-17 01:13:52 -07:00
Nukem 5300d185af Add another likely offset for ISO magic
Tested with Skyrim's DISC1 ISO. It doesn't load otherwise.

(Submitting this through github's web editor)
2015-10-04 02:03:08 -04:00
sephiroth99 9dfabba583 Fix compile error uncovered by Clang 3.8. 2015-09-25 23:50:05 -04:00
Dr. Chat 22629c3ef5 Use a slightly better flag name for drawing all framebuffers 2015-09-25 18:54:28 -05:00
Dr. Chat c33e95981b Formatting. 2015-09-25 18:46:50 -05:00
Dr. Chat c150552b9c Quick-kill processing the XMA context if there's no new data available. 2015-09-25 18:40:49 -05:00
Dr. Chat f2b2cc1b6f X_STATUS_MAPPED_ALIGNMENT definition 2015-09-25 18:39:42 -05:00
Dr. Chat 71818a3129 Convert NtCreateEvent to new format 2015-09-25 18:39:14 -05:00
Dr. Chat b12480820c word_t shim parameter 2015-09-25 18:38:33 -05:00
Dr. Chat f5ee6f4cf5 XEX2 lan key header 2015-09-25 18:38:10 -05:00
Dr. Chat ba399d52b9 NtAllocateVirtualMemory: Return STATUS_MAPPED_ALIGNMENT if the base address is unaligned 2015-09-25 18:37:49 -05:00
Dr. Chat d78f43c574 XamContentOpenFile stub 2015-09-25 18:35:57 -05:00
Dr. Chat bf39e33dc0 Raw modules need to commit an executable range too! 2015-09-25 18:35:33 -05:00
Dr. Chat 9ceab26560 Print the LAN key header
Check if the module is a XEX module before calling Unload on XexModule
2015-09-25 18:34:54 -05:00
Dr. Chat 9f2cf96f8a Add a flag to copy color targets and depth targets to the screen on swap 2015-09-25 18:30:39 -05:00
Dr. Chat a9b557e8b9 Allow passing of >7 arguments through Processor::Execute
Set entry status to failed if LookupFunction failed
2015-09-25 18:24:12 -05:00
Dr. Chat 3cbc65ac29 XThread Get/Set Last Error 2015-09-25 18:22:13 -05:00
Ben Vanik ee92f75a84 Updating to the latest clang-format. Make sure to update yourselves! 2015-09-22 08:26:19 -07:00
sephiroth99 8272beb8d2 Fix assignment of temporary value to non-const reference. 2015-09-22 07:45:57 -07:00
sephiroth99 08ae855e07 It seems 'export' is a reserved keyword for clang. 2015-09-22 07:45:52 -07:00
sephiroth99 f3a4e1146f Fix logical-op parenthesis error from clang. 2015-09-22 07:44:16 -07:00
sephiroth99 7fb4fd2790 More workarounds for __m128. 2015-09-22 07:44:04 -07:00
sephiroth99 ab2ef82d55 xobject: remove accept method of object_ref class
The removed method was causing an error in clang ("call to non-static member
function without an object argument"). As it was not used, simply remove
it.
2015-09-22 07:43:08 -07:00
sephiroth99 e1d569dd7c Fix usage of __m128.
With GCC and clang, __m128 is not a struct, so there are no struct members
to access the individual items in the vector.

Use standard load/store function and some hackery to workaround this
limitation.
2015-09-22 07:41:28 -07:00
sephiroth99 542f5ba8e5 Move GetTempReg higher in the source file, before its first usage. 2015-09-22 07:39:26 -07:00
sephiroth99 ff7c755bc9 memory: AlignedAlloc: fallback to aligned_alloc()
When compiling with clang++, __STDC_VERSION__ is not defined (obviously
as clang++ is not a C compiler). Because of this, check if compiling
with MSVC and fallback to the Linux implementation. If the latter is not
supported, compilation will fail, as it previously would have with the
2015-09-22 07:39:06 -07:00
Ben Vanik 83f3d520b2 Add missing header includes. 2015-09-22 07:38:59 -07:00
Ben Vanik 3fc1d02a09 Suspend some host threads that make guest callbacks. 2015-09-21 21:24:26 -07:00
Ben Vanik 4c8634bc31 Fixing breakpoints. 2015-09-21 21:10:57 -07:00
Ben Vanik 5d033f9cb3 A new debugger.
Lots of bugs/rough edges/etc - issues will be filed.
Old-style debugging still works (just use --emit_source_annotations to get
the helpful movs back and --break_on_instruction will still fire).
2015-09-20 21:31:05 -07:00
Dr. Chat 2983b0c090 Update some documentation. 2015-09-11 17:12:49 -05:00
Dr. Chat cad23cea81 Pause the emulator if the guest crashes and the VS debugger isn't attached. 2015-09-11 17:09:25 -05:00
Dr. Chat 8e716a3a7e Exception handler abstraction class 2015-09-11 17:07:12 -05:00
Dr. Chat a2bc0443f2 Quick-kill the MMIO handler if the fault address is above the mapping range. 2015-09-07 21:26:33 -05:00
Ben Vanik 3ac83b16c8 Fix double window destroy. 2015-09-07 09:41:44 -07:00
Ben Vanik fa9c681c7c Implicit Window::MakeReady on context set. 2015-09-07 09:29:07 -07:00
Ben Vanik ec7c74d04c Ref count elemental. 2015-09-07 09:26:36 -07:00
Ben Vanik 539f69f368 Multi-window GL contexts. 2015-09-07 09:08:54 -07:00
Ben Vanik 5411b67e05 Only register window class once. 2015-09-07 09:08:38 -07:00
Ben Vanik 3e66afeb3a Don't steal focus on mouse move. 2015-09-07 09:08:27 -07:00
Ben Vanik 855ab7c040 Fixing set_bordered name. 2015-09-07 09:08:19 -07:00
Ben Vanik 2b30ac393d Source control. 2015-09-07 08:28:02 -07:00
Ben Vanik a1a996c1e6 Shrinking UI elements in the debugger. 2015-09-06 20:49:20 -07:00
Ben Vanik e5fbf840d2 Shuffling kernel/. 2015-09-06 18:07:52 -07:00
Ben Vanik 494cba7131 Removing unused XAsyncRequest. 2015-09-06 14:10:34 -07:00
Ben Vanik 8588fbc6cf Shuffling kernel util types to util/. 2015-09-06 13:45:52 -07:00
Ben Vanik 068b2056ca Explode more gracefully on crashes while crashing. 2015-09-06 13:34:39 -07:00
Ben Vanik 0133bec11d Fix empty line logging. 2015-09-06 13:34:19 -07:00
Ben Vanik 790ce8aee1 Switch back to std:: muteces. mutices. mutexen. 2015-09-06 13:34:08 -07:00
Ben Vanik cb3dbcccbc Notes. 2015-09-06 11:05:16 -07:00
Ben Vanik e48c3534cc Removing copy to temp buffer in log flush. 2015-09-06 10:28:17 -07:00
Ben Vanik 9ae807e56e Initialize builtins to 0. 2015-09-06 10:07:27 -07:00
Ben Vanik 669f5b061f Moving DPC list into KernelState and removing unused file. 2015-09-06 09:36:39 -07:00
Ben Vanik 3c96b6fa0a DANGER DANGER. Switching to global critical region.
This changes almost all locks held by guest threads to use a single global
critical region. This emulates the behavior on the PPC of disabling
interrupts (by calls like KeRaiseIrqlToDpcLevel or masking interrupts),
and prevents deadlocks from occuring when threads are suspended or
otherwise blocked.
This has performance implications and a pass is needed to ensure the
locking is as granular as possible. It could also break everything
because it's fundamentally unsound. We'll see.
2015-09-06 09:30:54 -07:00
Ben Vanik 33270cd2a0 Making tracing use the fast logger path. 2015-09-05 21:12:10 -07:00
Ben Vanik 6c07eb8e5c Faster RtlFillMemoryUlong. 2015-09-05 14:38:07 -07:00
Rhodan81 9427d03d5a Fix crash in memory allocation when there is no space to fit entire page
range
2015-09-05 15:53:05 +02:00
Dr. Chat 8024e4fd20 XMA: We can only decode an entire frame and write it out at a time! Saving samples is bad. 2015-09-02 20:20:45 -05:00
Dr. Chat 3d1f079e86 NetDll_inet_addr needs to convert endianness! 2015-09-01 23:47:54 -05:00
Ben Vanik a478658b2c Re-disabling GPU interrupt log. 2015-09-01 20:24:19 -07:00
Ben Vanik 311b65537d --log_high_frequency_kernel_calls (defaults to false) to cull some lines. 2015-09-01 18:20:08 -07:00
Ben Vanik 3c1e012098 Lookup thread/event/etc objects by name on create to try to reuse. 2015-09-01 18:09:44 -07:00
Ben Vanik 3f433fe20a Object table names are case insensitive. 2015-09-01 18:08:00 -07:00
Ben Vanik f3c75b8d87 Support ObReferenceObjectByHandle for XEvents. 2015-09-01 17:42:07 -07:00
Ben Vanik b9debbaa63 Fixing section lookup when the name is 8 characters. 2015-09-01 17:03:40 -07:00
Ben Vanik f5e374f9b5 Changing the way the global lock works. Some things are better, I think.
Regressions are likely.
2015-09-01 09:45:32 -07:00
Ben Vanik 5355183590 Don't double-break on debugbreak. 2015-09-01 09:45:32 -07:00
Dr. Chat 51e70be054 Don't assert on VRSAVE mfspr/mtspr (used by gcc) 2015-08-31 10:51:51 -05:00
Ben Vanik 1b916ccca2 Log module dump directly. 2015-08-30 21:33:33 -07:00
Ben Vanik a4ed79695d WSACreateEvent/CloseEvent/SetEvent. 2015-08-30 21:31:52 -07:00
Ben Vanik 7233df2778 Switch default --ignore_undefined_externs to true. 2015-08-30 20:48:41 -07:00
Ben Vanik 2f9b37c142 Logging unimplemented instructions. 2015-08-30 20:46:06 -07:00
Ben Vanik 82a72e1974 Adding MemoryBarrier opcode. 2015-08-30 17:25:02 -07:00
Ben Vanik 39989a6107 Adding log lines to help find unimplemented NtQueryInformationFile calls. 2015-08-30 16:38:51 -07:00
Ben Vanik 65812438c4 Short-circuiting lvrx/stvrx. Should help bad accesses in many games.
Fixes #411.
2015-08-30 16:38:01 -07:00
Ben Vanik dfa5b90c36 Fixing test output. 2015-08-30 16:26:36 -07:00
Ben Vanik 499e8b4b5b ScaleGuestDurationFileTime for absolute times. Probably right.
Fixes #409.
2015-08-30 15:40:10 -07:00
Ben Vanik b80a028589 Much better errors on undefined externs. 2015-08-30 15:27:12 -07:00
Ben Vanik 87094b8257 Adding XamUserContentRestriction* functions. 2015-08-30 15:00:04 -07:00
Ben Vanik 7711568af9 Implementing SetTimer and CompleteOverlappedEx APC callbacks.
Fixes #410.
2015-08-29 23:43:26 -07:00
Ben Vanik 7f505a15b7 Fixing timer callbacks. 2015-08-29 23:42:40 -07:00
Ben Vanik 7172f7575e Removing assert in keyboard display on flags. 2015-08-29 22:30:12 -07:00
Ben Vanik 1d7f345960 Fix logging with null varargs. 2015-08-29 22:22:07 -07:00
Ben Vanik 1631e0f234 Merge pull request #408 from DrChat/vcmpbfp_rc
vcmpbfp with Rc bit support
2015-08-29 22:21:36 -07:00
Dr. Chat 60538e7dda vcmpbfp with Rc bit support 2015-08-30 00:14:58 -05:00
Ben Vanik b1afab5bb7 Switching to old depth buffer clear style. 2015-08-29 22:13:19 -07:00
Ben Vanik 1cf1568189 Adding a yield in the XMA decoder to give other threads some breathing room. 2015-08-29 22:12:31 -07:00
Ben Vanik e7b46afa9d Fixing build and removing old binary libav submodule. 2015-08-29 21:04:26 -07:00
Ben Vanik 764b11fa04 Formatting premake files. 2015-08-29 20:57:31 -07:00
Ben Vanik a86b3821f2 Adding thread handle to logging. 2015-08-29 20:49:26 -07:00
Ben Vanik c486fcfcba Merge pull request #407 from DrChat/libav
Rewrote the Audio Decoder
2015-08-29 20:47:04 -07:00
Dr. Chat f80e5fc98d Linting 2015-08-29 22:21:25 -05:00
Dr. Chat 50535b07c3 Change validity checks to assert statements. 2015-08-29 22:14:20 -05:00
Dr. Chat afa013f4bf libav_verbose flag 2015-08-29 22:11:59 -05:00
Dr. Chat e3d87b1715 Whoops (formatting) 2015-08-29 22:05:33 -05:00
Dr. Chat 3d684ac304 Fixup the premake files 2015-08-29 22:04:12 -05:00
Dr. Chat 6c83b35003 Partial frame support. 2015-08-29 21:42:06 -05:00
Ben Vanik 3508cce5b3 Fixing module loading. 2015-08-29 19:35:43 -07:00
Dr. Chat d8ed66c336 More improvements to the XMA decoder (and included some forgotten files) 2015-08-29 21:18:04 -05:00
Dr. Chat 0f9cd8cfb3 New WIP audio decoder 2015-08-29 21:16:57 -05:00
Dr. Chat f2b2a22687 Add gflags to projects that need it only 2015-08-29 21:16:57 -05:00
Ben Vanik b7203c2989 Logging to with a ringbuffer. Much faster. 2015-08-29 18:06:30 -07:00
Ben Vanik 8dd59d07ac Was about to update microprofile, but the new version is meh. 2015-08-29 09:41:14 -07:00
Ben Vanik 3c50b6739a Capturing guest/host context and showing registers in debugger. 2015-08-29 08:08:54 -07:00
Ben Vanik ab04175aad Abstracting aligned alloc/free. 2015-08-28 14:27:44 -07:00
Ben Vanik a79ef87889 Adding CONTRIBUTING.md so that github shows it on issues. 2015-08-28 14:16:38 -07:00
Dr. Chat c50cc1cb84 Lint. One line of lint. 2015-08-18 19:13:36 -05:00
Dr. Chat f5104af0a2 Whoops, fix AND masks 2015-08-18 19:00:57 -05:00
Dr. Chat 29ed27bfc5 Fix up winkey GetKeystroke to not use GetAsyncKeyState, and disable GetState if Xenia is not the active window. 2015-08-18 18:57:31 -05:00
Dr. Chat 38064acd51 UI KeyEvent previous state and repeat count 2015-08-18 18:45:35 -05:00
Ben Vanik a668556d7f Fixing Windows build. 2015-08-18 14:45:49 -07:00
Ben Vanik 8b0d4fb51c Linux tweaks. 2015-08-18 14:18:00 -07:00
Ben Vanik 19299fad4b Removing apu/ deps on Emulator. 2015-08-18 10:54:56 -07:00
Ben Vanik ad090a40eb Fixing misuse of std::chrono. 2015-08-18 10:18:30 -07:00
Ben Vanik 2820ff85e5 Moving test memory to a more reasonable place. 2015-08-18 09:01:22 -07:00
Ben Vanik c6b941a709 Normalizing tests. 2015-08-18 00:27:27 -07:00
Ben Vanik c67e47a076 Test cleanup. 2015-08-18 00:16:38 -07:00
Ben Vanik 59b9e9ceb0 Fixing buffer overrun in disasm. 2015-08-17 20:38:37 -07:00
Dr. Chat 0caffd3921 Tests: vand/vand128/vandc/vandc128/vcmpxxfp128/vmaxfp/vmaxfp128/vmaxsh/vmaxuh/vminfp/vminfp128 2015-08-17 20:37:03 -05:00
Dr. Chat dde3f3dfb0 Tests: vor/vor128/vxor/vxor128 2015-08-17 12:23:01 -05:00
Dr. Chat 52c2d03c3e Tests: vpkshss128/vpkshus128/vpkswss128/vpkswus128/vpkuhum128/vpkuhus128/vpkuwum128/vpkuwus128/vupkhsb128/vupklsb128 2015-08-17 12:08:56 -05:00
Ben Vanik 55068f230e Fixing vslo and vsro. 2015-08-17 08:15:43 -07:00
Ben Vanik 359e5b578a Fixing vsl and vsr for out of range values. 2015-08-17 07:57:30 -07:00
gibbed 5d61d0baa5 Fixing vnmsubfp128. 2015-08-17 04:57:33 -05:00
Ben Vanik f98d8134c0 Merge pull request #395 from DrChat/tests
Tests: vaddfp/vaddfp128/vmsum3fp128/vsubfp/vsubfp128
2015-08-16 17:57:30 -07:00
Dr. Chat a191fbcf34 Tests: vaddfp/vaddfp128/vmsum3fp128/vsubfp/vsubfp128 2015-08-16 19:56:03 -05:00
Dr. Chat 3c968f3f1e Whoops - Fix InterlockedPopEntrySList dereferencing a NULL pointer 2015-08-16 16:54:55 -05:00
gibbed f9076d08ea Test for vsrh. 2015-08-16 16:37:28 -05:00
gibbed 9901d98c14 Test for vsrah. 2015-08-16 16:37:27 -05:00
gibbed ac4c5f4508 Test for vrlh. 2015-08-16 16:37:26 -05:00
gibbed 5621f63001 Tests for vminsh, vminuh. 2015-08-16 16:37:25 -05:00
gibbed 9fa7ec5c1f Tests for vavgsh, vavguh. 2015-08-16 16:37:25 -05:00
Ben Vanik 2b012f37bf Adding base callstack control. 2015-08-16 14:29:09 -07:00
Ben Vanik ae183f918f Merge pull request #388 from DrChat/elf_modules
(Experimental) ELF module support
2015-08-16 07:55:28 -07:00
Dr. Chat 6cd08384e7 (Experimental) ELF module support 2015-08-16 09:47:39 -05:00
gibbed defca39a21 Test for vexptefp. 2015-08-16 07:09:20 -05:00
gibbed bbde510c17 More tests for vmrghb, vmrghh, vmrghw, vmrglb, vmrglh, vmrglw. 2015-08-16 07:09:07 -05:00
gibbed 4ca24c8d3b Cleaning up test names. 2015-08-16 06:26:43 -05:00
gibbed ba9d2f0d7c More tests for vupkhsb, vupkhsh, vupklsb, vupklsh. 2015-08-16 06:09:52 -05:00
gibbed 90b33fd49f Test for vpkpx. 2015-08-16 05:55:30 -05:00
gibbed 8c07a3efdd Tests for vpkuwum. 2015-08-16 05:55:15 -05:00
gibbed 5f9ef37e94 Cleaning up tests for vpkuhus. 2015-08-16 05:54:48 -05:00
gibbed 50a5f5e8c5 Cleaning up tests for vpkuhum. 2015-08-16 05:54:22 -05:00
gibbed 67525ced44 Test for vpkshus. 2015-08-16 05:19:58 -05:00
gibbed d7c0837f40 Tests for vpkswus, vpkuwus. 2015-08-16 05:15:35 -05:00
gibbed 95d9344985 Another test for vpkswss. 2015-08-16 05:14:40 -05:00
gibbed b9d9486c62 Another test for vpkshss. 2015-08-16 05:03:19 -05:00
gibbed 3b878ed533 Test for vpkuhus. 2015-08-16 04:52:32 -05:00
gibbed 60b1a67af3 Fixing vpkuhus. 2015-08-16 04:52:19 -05:00
gibbed 9129b9caa9 Tests for vpkuhum/vpkuhus. 2015-08-16 04:07:17 -05:00
gibbed 003608fa76 More tests for vupkhsh/vupklsh. 2015-08-16 03:26:14 -05:00
gibbed 7256fe6a2b Tests for vupkhsb/vupklsb. 2015-08-16 03:16:25 -05:00
gibbed 6a675659e4 Really fix vupkhsb/vupklsb. 2015-08-16 03:15:37 -05:00
gibbed f06ddd3869 Maybe fixing vupkhsb/vupklsb. 2015-08-16 02:31:25 -05:00
Ben Vanik d71c35bbe9 Merge pull request #385 from DrChat/xex_getprocaddr_fix
XexModule::GetProcAddress false out of bounds fix
2015-08-14 18:13:35 -07:00
Dr. Chat d2f672b2c5 Shift export ordinal back by the base to avoid false positive error 2015-08-14 20:02:39 -05:00
Dr. Chat 3fcc6648d7 Fix (to the best of my knowledge) InterlockedPopEntrySList
Couple of other asserts/fixes
2015-08-13 19:06:58 -05:00
Ben Vanik 03142614ec elemental-forms is mostly style-clean. 2015-08-09 12:07:07 -07:00
Ben Vanik 0686227d23 Style fixes. 2015-08-08 16:40:14 -07:00
Ben Vanik a92566dfc5 More style. 2015-08-07 21:29:03 -07:00
Ben Vanik 14beb27ebc xb style. 2015-08-07 07:56:57 -07:00
Ben Vanik 5e08889d93 More style cleanup. 2015-08-06 20:17:01 -07:00
Ben Vanik e6461f326c Some xb style cleanup. 2015-08-05 22:06:20 -07:00
Ben Vanik eaa1a8ee3a Refactoring SymbolInfo/FunctionInfo/Function into Symbol/Function. 2015-08-05 21:50:02 -07:00
Ben Vanik 48d6e6becf Cleaning up debugger threading and adding hacky callstacks to UI. 2015-08-05 07:50:37 -07:00
Ben Vanik 0a8d6eec91 Simplifying debug stuff, as I'm not going to bother with gdb. 2015-08-04 18:39:51 -07:00
Ben Vanik ec326119cf Replacing beaengine in mmio handler with custom decoder.
Fixes #358.
2015-08-04 08:25:42 -07:00
Ben Vanik 90c248146e --inline_mmio_access to allow turning it off. 2015-08-03 19:07:34 -07:00
Ben Vanik b0425f7ee2 Moving source map to Function. 2015-08-01 14:07:13 -07:00
Ben Vanik 5aa50b3c18 Adding note about GPU listing. 2015-08-01 13:43:21 -07:00
Ben Vanik b67488e70a Removing beaengine disassembler use. 2015-08-01 13:30:43 -07:00
Ben Vanik 37ded9acc3 Window->Form. 2015-08-01 10:24:41 -07:00
Ben Vanik cb701fcb7c Latest linter. 2015-08-01 04:08:59 -07:00
Ben Vanik 8494ca2eaa clang fixes. 2015-08-01 03:55:50 -07:00
Ben Vanik b56b262116 Switching to python build script. 2015-07-31 23:48:24 -07:00
Ben Vanik 2f1965082c Dropping dummy drive size down to a reasonable size. Fix #377. 2015-07-31 14:15:07 -07:00
Ben Vanik 14e129ced6 Merge pull request #376 from sephiroth99/big-alloc-fix
[RFC] Fix crash when some games request too much memory
2015-07-29 23:48:12 -07:00
Ben Vanik e523ffcd51 Tweaking some thread names. 2015-07-29 23:28:45 -07:00
sephiroth99 510a8e59cf memory: fix out of bounds access in BaseHeap::AllocRange
Prevent out of bounds access of page_table_ by making sure the requested
page count fits in the requested page range.
2015-07-30 02:27:55 -04:00
Ben Vanik a9b89a790b Some more constant support for MUL_SUB. 2015-07-29 21:45:24 -07:00
Ben Vanik d8be8fdbbb Never run WSACleanup, it breaks the debugger. Some games do this
on startup just because, which decrements our WSA instance to zero.
2015-07-29 21:41:39 -07:00
Ben Vanik 9bea299a16 Massaging xinput arguments. Fixes RCR. 2015-07-29 21:41:09 -07:00
Ben Vanik c0dcf83de8 Cleanup heap use. 2015-07-29 20:33:59 -07:00
Ben Vanik c67173fe36 Switching to real page sizes, not allocation granularity. 2015-07-29 20:28:06 -07:00
Ben Vanik 122114d1d1 Fixing debugger startup race. 2015-07-29 19:52:53 -07:00
Ben Vanik 19901c4759 Replacing a use of strings for xbyak labels. 2015-07-29 18:58:45 -07:00
Ben Vanik 40e98eab7c Fix include. 2015-07-29 00:33:57 -07:00
Ben Vanik e657276996 Mostly working stack walking (besides issue #372). 2015-07-29 00:15:52 -07:00
Ben Vanik e01c2ac98d Fixing formatting. 2015-07-28 00:32:01 -07:00
Ben Vanik ad9472e60b Better sign extend, thanks to @inolen. 2015-07-27 20:25:20 -07:00
Ben Vanik 226b7ae83f Only generate .user if it doesn't exist. 2015-07-27 20:12:14 -07:00
Ben Vanik dffc1f0e14 Merge pull request #371 from DrChat/xam_enumerate_fix
Fix XamEnumerate returning a RESULT instead of a HRESULT
2015-07-27 19:59:57 -07:00
Ben Vanik b1baaa45bc Merge pull request #369 from DrChat/handle_release_fix
Fix releasing the primary handle of an object in RemoveHandle
2015-07-27 19:59:45 -07:00
Dr. Chat 1e0ba0b24c Fix XamEnumerate returning a RESULT instead of a HRESULT in extended error. 2015-07-27 21:50:26 -05:00
Dr. Chat fe7a710460 Revert license mask. 2015-07-27 18:32:41 -05:00
Dr. Chat 804b6b80ac Winkey support GetKeystroke (need to fix flags though) and support right stick 2015-07-27 18:28:08 -05:00
Dr. Chat 993c646e91 XAM_OVERLAPPED 2015-07-27 18:26:22 -05:00
Dr. Chat 997de209ec Reversed engineered X_OBJECT_HEADER a bit better 2015-07-27 18:26:07 -05:00
Dr. Chat 766788be7b XMAContext abort instantly if libav failed mid-packet. 2015-07-27 18:24:04 -05:00