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