Nguyen Dac Nam
2807020c01
IUserLocalCommunicationService: add function Initialize2
6 years ago
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
6 years ago
namkazy
8bb64da7ac
nvhost_gpu: implement ChannelSetTimeslice
6 years ago
bunnei
f382179d47
Revert "video_core: memory_manager: Use GPU interface for cache functions."
6 years ago
ReinUsesLisp
f3255c3598
texture: Implement R32I
6 years ago
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.
6 years ago
ReinUsesLisp
518a6182f9
maxwell_3d: Unify draw methods
Pass instanced state of a draw invocation as an argument instead of
having two separate virtual methods.
6 years ago
ReinUsesLisp
4364492b95
query_cache: Address feedback
6 years ago
ReinUsesLisp
80fff282df
query_cache: Fix ambiguity in CacheAddr getter
6 years ago
ReinUsesLisp
748a3cd69d
query_cache: Add a recursive mutex for concurrent usage
6 years ago
ReinUsesLisp
aaf68dc10b
vk_query_cache: Implement generic query cache on Vulkan
6 years ago
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.
6 years ago
ReinUsesLisp
d8a42816d7
gl_query_cache: Optimize query cache
Use a custom cache instead of relying on a ranged cache.
6 years ago
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.
6 years ago
ReinUsesLisp
9d7d67501f
gl_rasterizer: Sort method declarations
6 years ago
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.
6 years ago
ReinUsesLisp
11206f8a28
maxwell_3d: Slow implementation of passed samples (query 21)
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
7 years ago
Morph
5afb6b95ed
Add 4:3 aspect ratio and address feedback
6 years ago
Fernando Sahmkow
f326183e8b
Core: Correct compilition in GCC
6 years ago
Morph
5abb2b6336
Address feedback
6 years ago
Morph
db5dc22c68
Use enumeration instead of magic numbers
6 years ago
Morph
74a490c909
Add following aspect ratios: 16:9, 21:9, Stretch to Window
Available as a drop down within the configure graphics tab.
6 years ago
ReinUsesLisp
3603c2f559
gl_resource_manager: Add managed query class
7 years ago
ReinUsesLisp
8449d0cf4e
gl_rasterizer: Use the least generic OpenGL draw function possible
This may help some implementations.
6 years ago
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.
6 years ago
Fernando Sahmkow
0d2a459fae
Core: Address Feedback
6 years ago
Fernando Sahmkow
2dd9d660e3
GPU: Address Feedback.
6 years ago
Lioncash
5c0742bb94
address_arbiter: Collapse loops in InsertThread() and RemoveThread()
Same behavior, but without the need to explicitly loop through
everything manually.
6 years ago
Lioncash
3105b7864c
address_arbiter: Simplify GetThreadsWaitingOnAddress()
Simplifies the overall function and also allows for it to become a
const-qualified member function.
6 years ago
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.
6 years ago
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.
6 years ago
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.
6 years ago
Fernando Sahmkow
6fc0790f3a
Core: Set all hardware emulation constants in a single file.
6 years ago
Fernando Sahmkow
1ee7a4d926
Kernel: Refactor synchronization to better match RE
6 years ago
makigumo
b71b872e74
update hwopus DecodeInterleaved for FW 7.0.0+
trivial change,
see https://switchbrew.org/wiki/Audio_services#IHardwareOpusDecoder
6 years ago
Fernando Sahmkow
3a7f539463
Kernel: Change WaitObject to Synchronization object. In order to better reflect RE.
6 years ago
Fernando Sahmkow
04c3213a01
GPU: Implement GPU Clock correctly.
6 years ago
Fernando Sahmkow
8137fb8981
Maxwell3D: Correct query reporting.
6 years ago
Morph
db09e18f72
Remove option "Show files with type 'Unknown'"
6 years ago
bunnei
3edec585bc
hle: services: Use std::shared_ptr instead of copy by value.
6 years ago
bunnei
fc246fd1a2
gpu_thread: Use MPSCQueue for GPU commands.
- Necessary for multiple service threads.
6 years ago
bunnei
f28ab9626e
video_core: memory_manager: Use GPU interface for cache functions.
6 years ago
bunnei
9ffdef96d9
kernel: transfer_memory: Properly reserve and reset memory region.
6 years ago
Zach Hilman
a0400ebc19
wait_object: Make wait behavior only require one object to signal.
- This was holdover from citra.
7 years ago
bunnei
900b370e13
am: Correct IPC object count mismatch.
6 years ago
bunnei
141c06ca8b
services: am: Clear events on PopOutData and PopInteractiveOutData.
6 years ago
bunnei
b10a96347f
am: Refactor IStorage interface.
6 years ago
bunnei
0d376ae49e
applets: software_keyboard: Signal state change on end of interactive session.
6 years ago
bunnei
b1bd8d852a
applets: software_keyboard: Minor cleanup.
6 years ago
bunnei
7bdaae11ac
services: prepo: Fix IPC interface with SaveReport/SaveReportWithUser.
6 years ago