James Benton
3489a99cf9
decaf: Fix thread safety for event listeners.
2019-01-04 19:21:44 +00:00
James Benton
e1dbf08060
decaf-qt: Implement SoftwareKeyboardDriver.
2019-01-04 19:21:16 +00:00
James Benton
a6d889e097
decaf: New software keyboard API.
2019-01-04 19:20:53 +00:00
James Benton
cce7e7be3f
Initial implementation of decaf-qt.
2019-01-03 23:51:49 +00:00
James Benton
0a2ece4894
QVulkanWindow2: Add support for setting physical device features.
2019-01-03 23:51:41 +00:00
James Benton
4ca1f915df
QVulkanWindow2: Add extra graphics queue for libgpu to use.
2019-01-03 23:51:34 +00:00
James Benton
d450b82554
QVulkanWindow2: Change gfxQueueFamilyIdx to also require COMPUTE + TRANSFER.
2019-01-03 23:51:27 +00:00
James Benton
49dccfbf8b
QVulkanWindow2 copy of official QVulkanWindow + QVulkanWindowPrivate.
2019-01-03 23:51:20 +00:00
James Benton
2c0ab0539e
cafe/kernel: Fix unset ram partition title info.
2019-01-03 23:46:38 +00:00
James Benton
0af4654c94
debugui: Fix consumption of input events when debugger is not visible.
2019-01-03 23:46:30 +00:00
James Benton
58918a4168
decaf: Fix touch screen input x / y.
2019-01-03 23:46:23 +00:00
James Benton
250ead705e
decaf-sdl: Fix loading of background_colour config option.
2019-01-03 23:46:16 +00:00
James Benton
aa30e03877
decaf-sdl: Fix axis input.
2019-01-03 23:47:00 +00:00
James Benton
43dd468857
ios/mcp: Read title_id from app.xml
...
Fixes #513 .
2019-01-03 20:51:11 +00:00
James Benton
78cf206a2f
Update BUILDING.md
2019-01-03 20:51:11 +00:00
James Benton
f847bdb4db
cafe/hle: Make invalid trace filter errors non-fatal.
2019-01-03 20:51:11 +00:00
James Benton
f1587ca593
Refactor configuration for libcpu, libgpu and libdecaf.
2019-01-03 20:51:11 +00:00
Brett Lawson
2d39e5177a
Updated README with Discord link.
2019-01-02 02:27:29 -08:00
James Benton
4b0f62c2d4
decaf-sdl: Move hidpi.manifest to resources folder
2018-12-30 11:01:29 +00:00
James Benton
d100b616d9
debugui: Do not use decaf debug api until it is ready.
2018-12-30 11:01:29 +00:00
James Benton
ef829822be
decaf: Refactor the code analysis API.
2018-12-30 11:01:29 +00:00
James Benton
c051fd011e
cpu/espresso: Add functions for disassembling branch info.
2018-12-30 11:01:29 +00:00
James Benton
c3984de38c
decaf: Add pm4 capture debug API and use it from libdebugui.
2018-12-30 11:01:29 +00:00
James Benton
3a2f71fc30
Move imgui debugger to own library libdebugui.
2018-12-30 11:01:29 +00:00
James Benton
55d97d80f6
Move decafsdl_sound from decaf-sdl to common-sdl.
2018-12-30 11:01:29 +00:00
James Benton
e2b6d5c60d
common-sdl/vulkan: Recreate swapchain when acquireNextImage returns OutOfDate error.
2018-12-30 11:01:29 +00:00
James Benton
e71bc450c5
common-sdl/vulkan: Recreate swapchain when a present returns OutOfDate error.
2018-12-30 11:01:29 +00:00
James Benton
f128bd3868
common-sdl/vulkan: Use dynamic scissor in render pipeline.
2018-12-30 11:01:29 +00:00
James Benton
563f2cdf65
common-sdl/vulkan: Move createRenderPass out of createSwapChain.
2018-12-30 11:01:29 +00:00
Brett Lawson
417377fe85
gpu/spirv: Possibly fixed GET_TEXTURE_INFO.
2018-12-19 23:47:01 -08:00
James Benton
9181a8b4e0
travis: Update to latest xcode
2018-12-19 10:28:30 +00:00
Brett Lawson
61b17b1104
cpu: Implemented initial support for doing write-tracking.
...
This is a more performant way to enable the GPU memory cache system
to keep track of data that has changed in memory and needs to be
refreshed on the GPU.
2018-12-18 20:08:42 -08:00
Brett Lawson
f7221bf939
gpu/vulkan: Improved performance of descriptor write setup.
2018-12-18 20:08:42 -08:00
Brett Lawson
c0201a6030
common: Fix exception handler always installing as first-chance handler.
2018-12-18 20:08:42 -08:00
Brett Lawson
4a553b1273
common: Moved range combiner to common library.
2018-12-18 20:08:42 -08:00
Brett Lawson
969556b3f6
gpu/vulkan: Fixed issue with objects not hashing correctly.
...
Many of the objects did not have unique object representations due
to padding and other things. This caused the generated hashes to
change for the same object, causing significantly increased
resource usage.
2018-12-18 20:08:41 -08:00
Brett Lawson
f94e88c9e7
gpu/vulkan: Implemented support for push descriptors.
...
This is a performance optimization which enables us to
send new descriptors to the GPU without allocating a
descriptor set first.
2018-12-18 20:08:41 -08:00
Brett Lawson
1d7279ba5e
gpu: Substantially refactored shader translation.
2018-12-18 20:08:41 -08:00
Brett Lawson
76c2234fc8
gpu/vulkan: Fixed memory segments hashing wrong data.
2018-12-18 20:08:41 -08:00
Brett Lawson
9af1fd7ef2
gpu/vulkan: Optimized and abstracted memory segment management.
2018-12-18 20:08:41 -08:00
Brett Lawson
0ec09fb4c0
gpu/vulkan: Optimized draw resource updating.
...
There are a number of changes in this commit which improve
the behaviour of the Vulkan driver related to how and when
we update per-draw resources.
2018-12-18 20:08:40 -08:00
Brett Lawson
a2925ea692
spirv: Improved shader description hashing performance.
2018-12-18 20:08:40 -08:00
Brett Lawson
221781f157
gpu: Optimized PM4 processor register handling.
...
Vectorized the byte swapping of values we read from the
shadow states. Also stopped looping all the registers and
just memcpy directly instead.
2018-12-18 20:08:40 -08:00
Brett Lawson
0a90c11e61
gpu: Optimize PM4 reading with vectorized swapping and scratch.
2018-12-18 20:08:40 -08:00
Brett Lawson
45274c0a77
gpu/vulkan: Use more performant templates for RangeCombiner.
2018-12-18 20:08:40 -08:00
Brett Lawson
6a4ffd2951
gpu/vulkan: Use pipeline cache when creating pipelines.
...
This allows the driver to perform some kinds of optimizations when
generating the pipelines.
2018-12-18 20:08:40 -08:00
Brett Lawson
2b2155dadb
gpu/vulkan: Implemented pooling for stream out context buffers.
2018-12-18 20:08:39 -08:00
Brett Lawson
9e7e16c46f
gpu/vulkan: Upload stream out contexts using FillBuffer.
...
We previously used a staging buffer which was overkill.
2018-12-18 20:08:39 -08:00
Brett Lawson
a19a8311ed
gpu/vulkan: Use power-of-2 pooling for staging buffers.
...
This is a significant performance optimization as it
substantially reduces our search-time when attempting to locate
an appropriate staging buffer to use for data.
2018-12-18 20:08:39 -08:00
Brett Lawson
785d219d8a
gpu/vulkan: Optimized indexes with vectorized byte swapping.
...
We also added a cache for the last index buffer that was used
to enable subsequent draws to avoid reswapping all the indices.
2018-12-18 20:08:39 -08:00