Fernando Sahmkow
f5da504663
Kernel: Make global scheduler depend on KernelCore
2020-02-22 11:18:06 -04:00
bunnei
338e4b4d07
audio_core: interpolate: Fix include for climits (Linux build break).
2020-02-22 02:29:41 -05:00
bunnei
ce63834a29
Merge pull request #3310 from FearlessTobi/fast-resample
...
audio_core: Switch to a faster interpolation technique
2020-02-22 01:54:40 -05:00
ReinUsesLisp
8ab2e5f561
shader/texture: Fix illegal 3D texture assert
...
Fix typo in the illegal 3D texture assert logic. We care about catching
arrayed 3D textures or 3D shadow textures, not regular 3D textures.
2020-02-21 15:57:27 -03:00
Rodrigo Locatti
c22c0ea070
Merge pull request #3433 from namkazt/patch-1
...
renderer_vulkan: Add the rest of case for TryConvertBorderColor
2020-02-21 15:56:09 -03:00
Rodrigo Locatti
291a7850a3
Merge pull request #3434 from namkazt/patch-2
...
vk_shader: Implement ImageLoad
2020-02-21 15:55:05 -03:00
Rodrigo Locatti
2cd2a86c92
Merge pull request #3435 from namkazt/patch-3
...
vulkan: add DXT23_SRGB
2020-02-21 15:48:19 -03:00
bunnei
1bf28215ac
Merge pull request #3423 from ReinUsesLisp/no-match-3d
...
texture_cache: Avoid matches in 3D textures
2020-02-21 12:16:51 -05:00
Nguyen Dac Nam
96e43427e5
nit: add const to where it need.
2020-02-21 21:16:45 +07:00
Nguyen Dac Nam
0c3acedaf9
shader: implement LOP3 fast replace for old function
...
ref: https://devtalk.nvidia.com/default/topic/1070081/cuda-programming-and-performance/reverse-lut-for-lop3-lut/
2020-02-21 19:08:07 +07:00
Nguyen Dac Nam
c3088fd578
vk_device: remove left over from other branch
2020-02-21 08:56:18 +07:00
bunnei
9356da8af9
Merge pull request #3438 from bunnei/gpu-mem-manager-fix
...
video_core: memory_manager: Flush/invalidate asynchronously when possible.
2020-02-20 20:04:05 -05:00
Nguyen Dac Nam
5b3a5b5fb6
clang-format
2020-02-20 09:39:30 +07:00
Nguyen Dac Nam
090dd95c05
shader_decompiler: only add StorageImageReadWithoutFormat when available
2020-02-20 09:28:13 +07:00
bunnei
8152281820
Merge pull request #3432 from brianclinkenbeard/update-httplib
...
Update httplib to 0.5.5
2020-02-19 21:15:06 -05:00
bunnei
fbd58d36d1
Merge pull request #3415 from ReinUsesLisp/texture-code
...
shader/texture: Allow 2D shadow arrays and simplify code
2020-02-19 20:06:14 -05:00
bunnei
638252e316
video_core: memory_manager: Flush/invalidate asynchronously on Unmap.
...
- Minor perf improvement.
2020-02-19 20:03:52 -05:00
bunnei
5c5b6cf721
Merge pull request #3414 from ReinUsesLisp/maxwell-3d-draw
...
maxwell_3d: Unify draw methods
2020-02-19 16:13:50 -05:00
bunnei
3360446580
Merge pull request #3411 from ReinUsesLisp/specific-funcs
...
gl_rasterizer: Use the least generic OpenGL draw function possible
2020-02-19 15:37:41 -05:00
Nguyen Dac Nam
102d52ad68
shader_decompiler: add check in case of device not support ShaderStorageImageReadWithoutFormat
2020-02-19 12:57:22 +07:00
Nguyen Dac Nam
1ed0d4faea
vk_device: setup shaderStorageImageReadWithoutFormat
2020-02-19 12:56:36 +07:00
Nguyen Dac Nam
d285fae01a
vk_device: add check for shaderStorageImageReadWithoutFormat
2020-02-19 12:55:56 +07:00
Nguyen Dac Nam
a57853e085
shader_conversion: I2F : add Assert for case src_size is Short
2020-02-19 11:40:35 +07:00
Nguyen Dac Nam
92153118ab
fix warning
2020-02-19 11:10:26 +07:00
Nguyen Dac Nam
84fc48b0eb
clang-format fix
2020-02-19 11:02:59 +07:00
Nguyen Dac Nam
0d9361d21f
shader_conversion: add conversion I2F for Short
2020-02-19 10:54:37 +07:00
bunnei
628c0b6a95
Merge pull request #3410 from ReinUsesLisp/vk-draw-index
...
vk_shader_decompiler: Fix vertex id and instance id
2020-02-18 22:37:33 -05:00
Nguyen Dac Nam
c9448bc5ba
vk_shader: add Capability StorageImageReadWithoutFormat
2020-02-19 10:16:51 +07:00
Brian Clinkenbeard
050a4362ad
httplib compatibility
2020-02-18 18:04:33 -08:00
Nguyen Dac Nam
c646835eb0
vk_shader: Implement function ImageLoad (Used by Kirby Start Allies)
...
Please enter the commit message for your changes. Lines starting
2020-02-19 08:39:01 +07:00
Nguyen Dac Nam
85e76831a1
fixups mistake auto commit.
2020-02-19 01:24:32 +07:00
Nguyen Dac Nam
418b7ffb21
Update code structure
...
Co-Authored-By: Mat M. <mathew1800@gmail.com>
2020-02-19 01:23:08 +07:00
Fernando Sahmkow
d67c538d68
Merge pull request #3409 from ReinUsesLisp/host-queries
...
query_cache: Implement a query cache and query 21 (samples passed)
2020-02-18 11:31:06 -04:00
Nguyen Dac Nam
af67c90eca
add vertex UnsignedInt size RGBA
2020-02-18 21:52:51 +07:00
Nguyen Dac Nam
2058556671
add eBc2SrgbBlock to formats
2020-02-18 21:44:09 +07:00
Nguyen Dac Nam
6d36df9e5d
vulkan: add DXT23_SRGB
2020-02-18 21:39:50 +07:00
Nguyen Dac Nam
fa641bf689
renderer_vulkan: Add the rest of case for TryConvertBorderColor
2020-02-18 16:52:54 +07:00
CJBok
7ec4bd7793
analog_from_button get direction implementation
2020-02-18 06:45:37 +01:00
bunnei
92e3fb6e2f
Merge pull request #3412 from Morph1984/aspect-ratio
...
GUI: Add aspect ratio dropdown
2020-02-17 22:02:18 -05:00
bunnei
a251713173
Merge pull request #3420 from namkazt/master2
...
nvhost_gpu: implement ChannelSetTimeslice
2020-02-17 00:31:11 -05:00
ReinUsesLisp
505f30fdaf
texture_cache: Implement layered framebuffer attachments
...
Layered framebuffer attachments is a feature that allows applications to
write attach layered textures to a single attachment. What layer the
fragments are written to is decided from the shader using gl_Layer.
2020-02-16 04:19:32 -03:00
ReinUsesLisp
6385b93c8d
vk_shader_decompiler: Implement Layer output attribute
...
SPIR-V's Layer is GLSL's gl_Layer. It lets the application choose from a
shader stage (vertex, tessellation or geometry) which framebuffer layer
write the output fragments to.
2020-02-16 04:17:37 -03:00
ReinUsesLisp
b4bd0c57e4
texture_cache: Avoid matches in 3D textures
...
Code before this commit was trying to match 3D textures with another
target. Fix that.
2020-02-16 04:15:42 -03:00
ReinUsesLisp
4fd155c282
surface_base: Implement texture buffer flushes
...
Implement downloads to guest memory from texture buffers on the generic
cache and OpenGL.
2020-02-16 04:13:27 -03:00
Nguyen Dac Nam
2807020c01
IUserLocalCommunicationService: add function Initialize2
2020-02-16 13:24:34 +07:00
Nguyen Dac Nam
c4e8f9589a
HLE: correct function name of IUserLocalCommunicationService
...
402: function name should be Initialize2 (7.0.0+) not SetOperationMode
Follow by: https://switchbrew.org/wiki/LDN_services#IUserLocalCommunicationService
2020-02-16 13:14:06 +07:00
namkazy
8bb64da7ac
nvhost_gpu: implement ChannelSetTimeslice
2020-02-16 11:53:03 +07:00
bunnei
f382179d47
Revert "video_core: memory_manager: Use GPU interface for cache functions."
2020-02-15 17:47:15 -05:00
ReinUsesLisp
f3255c3598
texture: Implement R32I
2020-02-15 16:26:50 -03:00
ReinUsesLisp
f37f4e76d6
shader/texture: Allow 2D shadow arrays and simplify code
...
Shadow sampler 2D arrays are supported on OpenGL, so there's no reason
to forbid these. Enable textureLod usage on these.
Minor style changes.
2020-02-15 02:36:28 -03:00
ReinUsesLisp
518a6182f9
maxwell_3d: Unify draw methods
...
Pass instanced state of a draw invocation as an argument instead of
having two separate virtual methods.
2020-02-14 18:09:40 -03:00
ReinUsesLisp
4364492b95
query_cache: Address feedback
2020-02-14 17:38:27 -03:00
ReinUsesLisp
80fff282df
query_cache: Fix ambiguity in CacheAddr getter
2020-02-14 17:38:27 -03:00
ReinUsesLisp
748a3cd69d
query_cache: Add a recursive mutex for concurrent usage
2020-02-14 17:38:27 -03:00
ReinUsesLisp
aaf68dc10b
vk_query_cache: Implement generic query cache on Vulkan
2020-02-14 17:38:27 -03:00
ReinUsesLisp
1b2a6980f5
query_cache: Abstract OpenGL implementation
...
Abstract the current OpenGL implementation into the VideoCommon
namespace and reimplement it on top of that. Doing this avoids repeating
code and logic in the Vulkan implementation.
2020-02-14 17:38:27 -03:00
ReinUsesLisp
d8a42816d7
gl_query_cache: Optimize query cache
...
Use a custom cache instead of relying on a ranged cache.
2020-02-14 17:38:27 -03:00
ReinUsesLisp
339a227a5e
gl_query_cache: Implement host queries using a deferred cache
...
Instead of waiting immediately for executed commands, defer the query
until the guest CPU reads it. This way we get closer to what the guest
program is doing.
To archive this we have to build a dependency queue, because host APIs
(like OpenGL and Vulkan) use ranged queries instead of counters like
NVN.
Waiting for queries implicitly uses fences and this requires a command
being queued, otherwise the driver will lock waiting until a timeout. To
fix this when there are no commands queued, we explicitly call glFlush.
2020-02-14 17:33:13 -03:00
ReinUsesLisp
9d7d67501f
gl_rasterizer: Sort method declarations
2020-02-14 17:27:17 -03:00
ReinUsesLisp
7129efe9b2
gl_rasterizer: Add queued commands counter
...
Keep track of the queued OpenGL commands that can signal a fence if
waited on. As a side effect, we avoid calls to glFlush when no commands
are queued.
2020-02-14 17:27:17 -03:00
ReinUsesLisp
11206f8a28
maxwell_3d: Slow implementation of passed samples (query 21)
...
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
2020-02-14 17:27:17 -03:00
bunnei
2e46017b66
Merge pull request #3401 from FernandoS27/synchronization
...
Set of refactors for Kernel Synchronization and Hardware Constants
2020-02-14 14:40:20 -05:00
Morph
5afb6b95ed
Add 4:3 aspect ratio and address feedback
2020-02-14 14:39:04 -05:00
bunnei
082ba6fc64
Merge pull request #3379 from ReinUsesLisp/cbuf-offset
...
shader/decode: Fix constant buffer offsets
2020-02-14 13:22:53 -05:00
Fernando Sahmkow
f326183e8b
Core: Correct compilition in GCC
2020-02-14 05:53:30 -04:00
Morph
5abb2b6336
Address feedback
2020-02-14 00:06:26 -05:00
Morph
db5dc22c68
Use enumeration instead of magic numbers
2020-02-13 23:13:23 -05:00
Morph
74a490c909
Add following aspect ratios: 16:9, 21:9, Stretch to Window
...
Available as a drop down within the configure graphics tab.
2020-02-13 22:17:28 -05:00
bunnei
f542fc989d
Merge pull request #3400 from makigumo/patch-1
...
update hwopus DecodeInterleaved for FW 7.0.0+
2020-02-13 21:26:13 -05:00
ReinUsesLisp
3603c2f559
gl_resource_manager: Add managed query class
2020-02-13 22:25:55 -03:00
bunnei
12b89ac3d0
Merge pull request #3395 from FernandoS27/queries
...
GPU: Refactor queries implementation and correct GPU Clock.
2020-02-13 20:18:26 -05:00
ReinUsesLisp
8449d0cf4e
gl_rasterizer: Use the least generic OpenGL draw function possible
...
This may help some implementations.
2020-02-13 21:55:21 -03:00
ReinUsesLisp
072a0bff5e
vk_shader_decompiler: Fix vertex id and instance id
...
Vulkan's VertexIndex and InstanceIndex don't match with hardware. This
is because Nvidia implements gl_VertexID and gl_InstanceID. The math
that relates these is:
gl_VertexIndex = gl_BaseVertex + gl_VertexID
gl_InstanceIndex = gl_InstanceIndex + gl_InstanceID
To emulate it using what Vulkan's SPIR-V offers (the *Index variants)
this commit substracts gl_Base* from gl_*Index to obtain the OpenGL and
hardware's equivalent.
2020-02-13 20:25:28 -03:00
Fernando Sahmkow
0d2a459fae
Core: Address Feedback
2020-02-13 19:10:33 -04:00
Fernando Sahmkow
2dd9d660e3
GPU: Address Feedback.
2020-02-13 18:16:07 -04:00
Lioncash
5c0742bb94
address_arbiter: Collapse loops in InsertThread() and RemoveThread()
...
Same behavior, but without the need to explicitly loop through
everything manually.
2020-02-12 15:34:07 -05:00
Lioncash
3105b7864c
address_arbiter: Simplify GetThreadsWaitingOnAddress()
...
Simplifies the overall function and also allows for it to become a
const-qualified member function.
2020-02-12 15:10:16 -05:00
bunnei
3184bdd36c
Merge pull request #3403 from lioncash/debug
...
bcat/backend: Prevent fmt exception in debug log within NullBackend::Clear()
2020-02-12 11:17:43 -05:00
Lioncash
d5435df964
bcat/backend: Make formatting of passphrase consistent in NullBackend::SetPassphrase()
...
Aligns the '=' to be consistent with the rest of the logs within this
source file.
2020-02-12 01:18:29 -05:00
Lioncash
8792d4562c
bcat/backend: Prevent fmt exception in debug log within NullBackend::Clear()
...
A formatting specifier within Clear wasn't being used, which will cause
fmt to throw an exception. This fixes that.
2020-02-12 01:14:47 -05:00
Lioncash
750c48af18
kernel/thread: Remove trivial usages of the global system accessor
...
We can just use the kernel member variable directly instead of going
through the system to obtain the same thing.
2020-02-12 01:00:41 -05:00
Fernando Sahmkow
6fc0790f3a
Core: Set all hardware emulation constants in a single file.
2020-02-11 20:19:11 -04:00
Fernando Sahmkow
1ee7a4d926
Kernel: Refactor synchronization to better match RE
2020-02-11 18:47:31 -04:00
makigumo
b71b872e74
update hwopus DecodeInterleaved for FW 7.0.0+
...
trivial change,
see https://switchbrew.org/wiki/Audio_services#IHardwareOpusDecoder
2020-02-11 18:41:04 +01:00
Fernando Sahmkow
3a7f539463
Kernel: Change WaitObject to Synchronization object. In order to better reflect RE.
2020-02-11 10:46:25 -04:00
bunnei
840326a322
Merge pull request #3376 from ReinUsesLisp/point-sprite
...
gl_rasterizer: Implement GL_POINT_SPRITE
2020-02-11 08:26:07 -05:00
Fernando Sahmkow
04c3213a01
GPU: Implement GPU Clock correctly.
2020-02-10 10:44:54 -04:00
Fernando Sahmkow
8137fb8981
Maxwell3D: Correct query reporting.
2020-02-10 10:41:43 -04:00
bunnei
a47f0ff68b
Merge pull request #3372 from ReinUsesLisp/fix-back-stencil
...
maxwell_3d: Fix stencil back mask
2020-02-09 22:29:28 -05:00
Zach Hilman
2a1331b683
Merge pull request #3391 from Morph1984/remove-unknown
...
Remove option "Show files with type 'Unknown'"
2020-02-09 12:08:01 -05:00
Morph
db09e18f72
Remove option "Show files with type 'Unknown'"
2020-02-09 11:30:02 -05:00
bunnei
505ddc95cd
Merge pull request #3388 from bunnei/service-shared-ptr
...
hle: services: Use std::shared_ptr instead of copy by value.
- This is a prerequisite to adding a mutex to `ServiceFramework`, which cannot be copied.
- This will be used for threaded services.
2020-02-08 21:35:30 -05:00
bunnei
d63149ce8a
Merge pull request #3387 from bunnei/gpu-mpscqueue
...
gpu_thread: Use MPSCQueue for GPU commands.
2020-02-08 21:15:48 -05:00
bunnei
3edec585bc
hle: services: Use std::shared_ptr instead of copy by value.
2020-02-07 23:02:26 -05:00
bunnei
fc246fd1a2
gpu_thread: Use MPSCQueue for GPU commands.
...
- Necessary for multiple service threads.
2020-02-07 23:01:23 -05:00
bunnei
f28ab9626e
video_core: memory_manager: Use GPU interface for cache functions.
2020-02-07 22:59:35 -05:00
bunnei
61e441192f
Merge pull request #3378 from ReinUsesLisp/uscaled
...
maxwell_to_gl: Implement R8G8_USCALED
2020-02-07 22:55:52 -05:00
bunnei
5160900bec
Merge pull request #3369 from ReinUsesLisp/shf
...
shader/shift: Implement SHF
2020-02-07 22:06:57 -05:00
bunnei
e4c167aff9
Merge pull request #3381 from bunnei/ipc-fix
...
hle: services: Fix prepo IPC, and add better error checking.
2020-02-07 16:25:42 -05:00
bunnei
1841589251
Merge pull request #3362 from ReinUsesLisp/fix-instanced
...
gl_rasterizer: Fix instanced draw arrays
2020-02-06 21:39:59 -05:00
bunnei
9ffdef96d9
kernel: transfer_memory: Properly reserve and reset memory region.
2020-02-05 23:06:54 -05:00
Zach Hilman
a0400ebc19
wait_object: Make wait behavior only require one object to signal.
...
- This was holdover from citra.
2020-02-05 23:06:53 -05:00
bunnei
900b370e13
am: Correct IPC object count mismatch.
2020-02-05 23:06:53 -05:00
bunnei
141c06ca8b
services: am: Clear events on PopOutData and PopInteractiveOutData.
2020-02-05 23:06:52 -05:00
bunnei
b10a96347f
am: Refactor IStorage interface.
2020-02-05 23:06:52 -05:00
bunnei
0d376ae49e
applets: software_keyboard: Signal state change on end of interactive session.
2020-02-05 23:06:51 -05:00
bunnei
b1bd8d852a
applets: software_keyboard: Minor cleanup.
2020-02-05 23:06:50 -05:00
bunnei
7bdaae11ac
services: prepo: Fix IPC interface with SaveReport/SaveReportWithUser.
2020-02-05 22:52:35 -05:00
bunnei
bc76fe3100
hle_ipc: Add error checking to read/write buffer access.
2020-02-05 22:52:35 -05:00
ReinUsesLisp
389cb51a33
shader/decode: Fix constant buffer offsets
...
Some instances were using cbuf34.offset instead of cbuf34.GetOffset().
This returned the an invalid offset. Address those instances and rename
offset to "shifted_offset" to avoid future bugs.
2020-02-05 12:19:09 -03:00
ReinUsesLisp
48a1e6461b
maxwell_to_gl: Implement R8G8_USCALED
2020-02-04 21:32:36 -03:00
ReinUsesLisp
e98ec35845
maxwell_to_gl: Reduce unimplemented formats to LOG_ERROR
2020-02-04 21:32:08 -03:00
ReinUsesLisp
c2ecaf376b
vk_rasterizer: Use noexcept variants of std::bitset
...
Removes bounds checking from "texceptions" instances.
2020-02-04 18:04:24 -03:00
bunnei
a683c3c57c
Merge pull request #3357 from ReinUsesLisp/bfi-rc
...
shader/bfi: Implement register-constant buffer variant
2020-02-04 15:14:13 -05:00
ReinUsesLisp
3c7276cd1a
gl_rasterizer: Implement GL_POINT_SPRITE
...
OpenGL core defaults to GL_POINT_SPRITE, meanwhile on OpenGL
compatibility we have to explicitly enable it. This fixes
gl_PointCoord's behaviour.
2020-02-04 15:19:45 -03:00
bunnei
223e535f65
Merge pull request #3356 from ReinUsesLisp/fcmp
...
shader/arithmetic: Implement FCMP
2020-02-04 11:36:59 -05:00
bunnei
6c7f2a9d45
Merge pull request #3360 from CJBok/statusbar-buttons
...
GUI: Togglable graphics settings buttons in status bar
2020-02-03 16:57:18 -05:00
bunnei
d02c1c1f75
Merge pull request #3337 from ReinUsesLisp/vulkan-staged
...
yuzu: Implement Vulkan frontend
2020-02-03 16:56:25 -05:00
Lioncash
ba28438e61
input_common/udp: Ensure that UDP is shut down within Shutdown()
...
Previously the UDP backend would never actually get shut down.
2020-02-03 09:29:15 -05:00
Lioncash
f693c966a0
input_common/udp: Add missing override specifiers
...
Prevents trivial warnings and ensures interfaces are properly
maintained between the base class.
2020-02-03 09:26:53 -05:00
Lioncash
02fbec1123
input_common/udp: std::move SocketCallback instances where applicable
...
std::function is allowed to heap allocate if the size of the captures
associated with each lambda exceed a certain threshold. This prevents
potentially unnecessary reallocations from occurring.
2020-02-03 09:24:05 -05:00
Lioncash
cf11ee1b0d
input_common/udp: std::move shared_ptr within Client constructor
...
Gets rid of a trivially avoidable atomic reference count increment and
decrement.
2020-02-03 09:21:46 -05:00
Lioncash
8e230f3e37
udp/client: Replace deprecated from_string() call with make_address_v4()
...
Future-proofs code if boost is ever updated.
2020-02-03 09:20:40 -05:00
Lioncash
e397a2145c
input_common/udp: Silence -Wreorder warning for Socket
...
Amends the constructor initializer list to specify the order of its
elements in the same order that initialization would occur.
2020-02-03 09:15:32 -05:00
Lioncash
2ba97142ab
input_common/udp: Remove unnecessary inclusions
2020-02-03 09:13:40 -05:00
Lioncash
5da05e3128
input_common/udp: Add missing header guard
2020-02-03 09:09:06 -05:00
ReinUsesLisp
1eef76d7b6
maxwell_3d: Fix stencil back mask
2020-02-02 17:50:46 -03:00
ReinUsesLisp
4f5791e529
shader: Remove curly braces initializers on shared pointers
2020-02-01 22:52:10 -03:00
bunnei
1de7f0beeb
Merge pull request #3282 from FernandoS27/indexed-samplers
...
Partially implement Indexed samplers in general and specific code in GLSL
2020-02-01 20:41:40 -05:00
ReinUsesLisp
62ab366971
shader/shift: Implement SHIFT_RIGHT_{IMM,R}
...
Shifts a pair of registers to the right and returns the low register.
2020-02-01 21:20:02 -03:00
ReinUsesLisp
0ff3ea3188
shader/shift: Implement SHF_LEFT_{IMM,R}
...
Shifts a pair of registers to the left and returns the high register.
2020-02-01 21:19:44 -03:00
bunnei
696e97ae4a
Merge pull request #3268 from CJBok/deadzone
...
GUI: Deadzone controls for sdl engine at configuration input
2020-02-01 16:35:15 -05:00
bunnei
0058ae07f7
Merge pull request #3284 from CJBok/hid-fix
...
hid: Fix analog sticks directional states
2020-02-01 14:02:41 -05:00
bunnei
d1df3ef078
Merge pull request #3364 from lioncash/thread
...
core/arm: Remove usage of global GetCurrentThread()
2020-01-31 11:13:24 -05:00
bunnei
c4ab8cd693
Merge pull request #3363 from lioncash/unique_ptr
...
kernel/physical_core: Make use of std::unique_ptr instead of std::shared_ptr
2020-01-30 23:33:02 -05:00
bunnei
72a8ed19c3
Revert "system_archive: Fix Korean and Chinese fonts"
2020-01-30 22:02:15 -05:00
Lioncash
11c5ae60e6
core/arm: Remove usage of global GetCurrentThread()
...
Now both CPU backends go through their referenced system instance to
obtain the current thread.
2020-01-30 18:52:25 -05:00
Lioncash
371f3ecf5d
kernel/physical_core: Make use of std::unique_ptr
...
shared_ptr was used in 8eb175481c due to a
misunderstanding of how the language generates move constructors and
move assignment operators.
If a destructor is user-provided, then the compiler won't generate the
move constructor and move assignment operators by default--they must be
explicitly opted into.
The reason for the compilation errors is due to the fact that the
language will fall back to attempting to use the copy constructor/copy
assignment operators if the respective move constructor or move
assignment operator is unavailable.
Given that we explicitly opt into them now, the the move constructor and
move assignment operators will be generated as expected.
2020-01-30 18:42:40 -05:00
Lioncash
6bc28ed1c8
core/cpu_manager: Remove unused includes
...
Nothing from these headers are used within this source file, so we can
remove them.
2020-01-30 18:30:57 -05:00
Lioncash
379194237d
kernel/physical_core: Remove unused kernel reference member variable
...
This isn't used within the class, so it can be removed to simplify the
overall interface.
While we're in the same area, we can simplify a unique_ptr reset() call.
2020-01-30 18:29:57 -05:00
bunnei
0edc152d5a
Merge pull request #3353 from FernandoS27/aries
...
System: Refactor CPU Core management and move ARMInterface and Schedulers to Kernel
2020-01-30 18:13:59 -05:00
bunnei
40a54f6de7
Merge pull request #3151 from FearlessTobi/fix-korean
...
system_archive: Fix Korean and Chinese fonts
2020-01-30 15:09:55 -05:00
bunnei
74aeae1ae7
Merge pull request #3347 from ReinUsesLisp/local-mem
...
shader/memory: Implement LDL.S16, LDS.S16, STL.S16 and STS.S16
2020-01-30 10:59:52 -05:00
ReinUsesLisp
535a9fcf44
gl_rasterizer: Fix instanced draw arrays
...
glDrawArrays was being used when the draw had a base instance specified.
This commit removes the draw parameters abstraction and fixes the
mentioned issue.
2020-01-30 02:22:00 -03:00
ReinUsesLisp
066c63571b
yuzu/bootmanager: Define Vulkan widget only when enabled
2020-01-29 19:20:12 -03:00
bunnei
04b8af9134
Merge pull request #3350 from ReinUsesLisp/atom
...
shader/memory: Implement ATOM.ADD
2020-01-29 16:49:54 -05:00
ReinUsesLisp
85f666c066
yuzu_cmd: Fix memcpy on Vulkan handlers
2020-01-29 17:53:11 -03:00
ReinUsesLisp
48cb021c34
yuzu: Implement Vulkan frontend
...
Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing
bits on Vulkan initialization.
2020-01-29 17:53:11 -03:00
ReinUsesLisp
28e928197a
web_service/telemetry_json: Report USER_CONFIG
2020-01-29 17:53:11 -03:00
ReinUsesLisp
2ba5519371
settings: Add settings for graphics backend
2020-01-29 17:53:11 -03:00
ReinUsesLisp
e1da845841
core: Only wait for idle on gpu_core when it was initialized
...
This fixes crashes when a Vulkan device fails to initialize.
2020-01-29 17:53:11 -03:00
ReinUsesLisp
1d17aca3f5
shader/other: Fix skips for SYNC and BRK
2020-01-29 17:53:11 -03:00
ReinUsesLisp
1c642262eb
shader/other: Stub S2R LaneId
2020-01-29 17:53:11 -03:00
ReinUsesLisp
25fcf5704b
buffer_cache: Delay buffer destructions
...
Delay buffer destruction some extra frames to avoid destroying buffers
that are still being used from older frames. This happens on Nvidia's
driver with mailbox.
2020-01-29 17:53:11 -03:00
bunnei
b5b061381e
Merge pull request #3355 from ReinUsesLisp/break-down
...
texture_cache/surface_base: Fix layered break down
2020-01-29 12:29:56 -05:00
bunnei
208594da5b
Merge pull request #3358 from ReinUsesLisp/implicit-texture-cache
...
gl_texture_cache: Silence implicit sign cast warnings
2020-01-29 11:23:50 -05:00
CJBok
f75503d2ed
clang
2020-01-29 05:43:55 +01:00
CJBok
c42052c661
minor corrections
2020-01-29 00:02:28 +01:00
CJBok
4c58bca524
GUI: Togglable graphics settings buttons in status bar
2020-01-28 23:59:30 +01:00
bunnei
c9cfbc502b
Merge pull request #3359 from ReinUsesLisp/assert-point-size
...
gl_shader_decompiler: Remove UNIMPLEMENTED for gl_PointSize
2020-01-28 15:19:51 -05:00
ReinUsesLisp
1044f51a83
gl_shader_decompiler: Remove UNIMPLEMENTED for gl_PointSize
...
This was implemented by a previous commit and it's no longer required.
2020-01-28 16:32:30 -03:00
bunnei
c1b49469ef
Merge pull request #3354 from ReinUsesLisp/depth-stencil
...
gl_texture_cache: Properly implement depth/stencil sampling
2020-01-28 12:06:11 -05:00
ReinUsesLisp
68c9d670a1
gl_texture_cache: Silence implicit sign cast warnings
2020-01-27 20:59:11 -03:00
Fernando Sahmkow
8eb175481c
System: Address Feedback
2020-01-27 09:54:11 -04:00
ReinUsesLisp
ca61e82f85
shader/bfi: Implement register-constant buffer variant
...
It's the same as the variant that was implemented, but it takes the
operands from another source.
2020-01-27 01:20:38 -03:00
ReinUsesLisp
098218ff4c
shader/arithmetic: Implement FCMP
...
Compares the third operand with zero, then selects between the first and
second.
2020-01-27 01:15:44 -03:00
ReinUsesLisp
b3e4461606
texture_cache/surface_base: Fix layered break down
...
Layered break downs was passing "layer" as a "depth" parameter. This
commit addresses that.
2020-01-26 21:48:07 -03:00
ReinUsesLisp
dbb7b51943
gl_texture_cache: Properly implement depth/stencil sampling
...
This addresses the long standing issue of compatibility vs. core
profiles on OpenGL, properly implementing depth vs. stencil sampling
depending on the texture swizzle.
2020-01-26 21:44:08 -03:00
Fernando Sahmkow
e9b557b38e
System: Correct PrepareReschedule.
2020-01-26 14:32:50 -04:00
Fernando Sahmkow
3230cfebb7
Kernel: Remove a few global instances from the kernel.
2020-01-26 14:23:46 -04:00
Fernando Sahmkow
0a5e0d4777
Core: Refactor CpuCoreManager to CpuManager and Cpu to Core Manager.
...
This commit instends on better naming the new purpose of this classes.
2020-01-26 14:07:22 -04:00
Fernando Sahmkow
fb17429a0b
ArmInterface: Delegate Exclusive monitor factory to exclusive monitor interfasce.
2020-01-26 10:28:23 -04:00
ReinUsesLisp
0d8f0ad3b3
shader/memory: Implement ATOM.ADD
...
ATOM operates atomically on global memory. For now only add ATOM.ADD
since that's what was found in commercial games.
This asserts for ATOM.ADD.S32 (handling the others as unimplemented),
although ATOM.ADD.U32 shouldn't be any different.
This change forces us to change the default type on SPIR-V storage
buffers from float to uint. We could also alias the buffers, but it's
simpler for now to just use uint. While we are at it, abstract the code
to avoid repetition.
2020-01-26 01:54:24 -03:00
Fernando Sahmkow
1c2981f6da
Core: Refactor CPU Management.
...
This commit moves ARM Interface and Scheduler handling into the kernel.
2020-01-25 18:55:32 -04:00
Fernando Sahmkow
2e6a1b965d
Shader_IR: Address feedback.
2020-01-25 09:04:59 -04:00
ReinUsesLisp
0340f04b84
shader/memory: Implement STL.S16 and STS.S16
2020-01-25 03:16:10 -03:00
ReinUsesLisp
edd5e604be
shader/memory: Implement unaligned LDL.S16 and LDS.S16
2020-01-25 03:16:10 -03:00
ReinUsesLisp
851d3adc24
shader/memory: Move unaligned load/store to functions
2020-01-25 03:16:10 -03:00
ReinUsesLisp
cff97272d2
shader/memory: Implement LDL.S16 and LDS.S16
2020-01-25 03:15:55 -03:00
bunnei
ebb840daaf
bsd: Stub several more functions.
...
- Required for Little Town Hero to boot further.
2020-01-25 00:47:15 -05:00
bunnei
53184a16cc
Merge pull request #3343 from FearlessTobi/ui-tab
...
yuzu/configuration: create UI tab and move gamelist settings there
2020-01-25 00:40:13 -05:00
bunnei
b6e76fdeb1
Merge pull request #3326 from FearlessTobi/port-5039
...
Port citra-emu/citra#5039 : "common/logging: don't use regex for path trimming"
2020-01-24 20:59:57 -05:00
FearlessTobi
40c05f9028
Disable clang-format for font files
2020-01-24 23:54:19 +01:00
bunnei
b6a1315c24
Merge pull request #3344 from ReinUsesLisp/vk-botw
...
vk_shader_decompiler: Disable default values on unwritten render targets
2020-01-24 17:31:55 -05:00
Fernando Sahmkow
26b5aa702d
Shader_IR: Change name of TrackSampler function so it does not confuse with the type.
2020-01-24 16:44:48 -04:00
Fernando Sahmkow
8c800cf312
Shader_IR: Corrections, styling and extras.
2020-01-24 16:44:48 -04:00
Fernando Sahmkow
a0cd5fb25f
Shader_IR: Correct Custom Variable assignment.
2020-01-24 16:44:47 -04:00
Fernando Sahmkow
b6d3153e7e
Shader_IR: Propagate bindless index into the GL compiler.
2020-01-24 16:44:47 -04:00
Fernando Sahmkow
c066e472b9
Shader_IR: Implement Injectable Custom Variables to the IR.
2020-01-24 16:43:31 -04:00
Fernando Sahmkow
6d6a963173
GL Backend: Introduce indexed samplers into the GL backend
2020-01-24 16:43:31 -04:00
Fernando Sahmkow
123c7cf307
Shader_IR: deduce size of indexed samplers
2020-01-24 16:43:31 -04:00
Fernando Sahmkow
2b9a30d06b
Shader_IR: Setup Indexed Samplers on the IR
2020-01-24 16:43:30 -04:00
Fernando Sahmkow
f93bff419e
Shader_IR: Implement initial code for tracking indexed samplers.
2020-01-24 16:43:30 -04:00
Fernando Sahmkow
c0c5fa078b
Shader_IR: Address Feedback
2020-01-24 16:43:30 -04:00
Fernando Sahmkow
5fb7881077
Shader_IR: Allow constant access of guest driver.
2020-01-24 16:43:30 -04:00
Fernando Sahmkow
c5fdcd7a2c
Shader_IR: Address Feedback
2020-01-24 16:43:29 -04:00
Fernando Sahmkow
87546c5c19
Guest_driver: Correct compiling errors in GCC.
2020-01-24 16:43:29 -04:00
Fernando Sahmkow
61d2053adb
Shader_IR: Store Bound buffer on Shader Usage
2020-01-24 16:43:29 -04:00
Fernando Sahmkow
e9f3264c8d
GPU: Implement guest driver profile and deduce texture handler sizes.
2020-01-24 16:43:29 -04:00
Fernando Sahmkow
a402d6e870
Kernel: Implement Physical Core.
2020-01-24 15:38:20 -04:00