Subv
dd8887c8cf
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
9 years ago
Subv
bdad00c73f
Threading: Added some utility functions and const correctness.
9 years ago
Yuri Kunde Schlesner
efc8179747
GSP: Downgrade log severity of SetAxiConfigQoSMode
This function doesn't need to do anything for HLE and some games call it
quite often, spamming up the logs.
9 years ago
Yuri Kunde Schlesner
8a1f96011d
OpenGL: Non-zero stride only makes sense for linear buffers
9 years ago
Yuri Kunde Schlesner
2600633b89
OpenGL: Ensure framebuffer binding is restored if completion check fails
9 years ago
Yuri Kunde Schlesner
ba7f213655
OpenGL: Fix DisplayTransfer accel when input width != output width
Fixes #2246 , #2261
9 years ago
Subv
8634b8cb83
Threading: Reworked the way our scheduler works.
Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then.
The scheduler is now called once after every SVC call, and once after a thread is awakened from sleep by its timeout callback.
This new implementation is based off reverse-engineering of the real kernel.
See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling.
9 years ago
Jannik Vogel
2d8097eecc
shader_jit: Fix non-SSE4.1 path where FLR would not truncate
9 years ago
Yuri Kunde Schlesner
4d5e42240c
clang-format: Fix coding style
9 years ago
Subv
2ce61344d6
Declare empty ServerSession and ClientSession constructors as default.
9 years ago
Jannik Vogel
e2cb7d7833
shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted
9 years ago
Subv
ed210c32b3
Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.
9 years ago
Jannik Vogel
8efeb6ee2b
Remove unused version.h
9 years ago
Subv
2eceee3a4c
Fixed the rebase mistakes.
9 years ago
Subv
009b15b3aa
A bit of a redesign.
Sessions and Ports are now detached from each other.
HLE services are handled by means of a SessionRequestHandler class, Interface now inherits from this class.
The File and Directory classes are no longer kernel objects, but SessionRequestHandlers instead, bound to a ServerSession when requested.
File::OpenLinkFile now creates a new session pair and binds the File instance to it.
9 years ago
Subv
c5e7e0fa26
IPC/HLE: Associate the ClientSessions with their parent port's HLE interface if it exists.
Pass the triggering ServerSession to the HLE command handler to differentiate which session caused the request.
10 years ago
Subv
c19afd2118
Kernel/HLE: Service::Interface no longer inherits from any Kernel object, and is now its own standalone class.
Interface is now used by aggregation in ClientPort, to forward service commands to their HLE implementation if needed.
10 years ago
Subv
0a33d915f8
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
10 years ago
Subv
073653e858
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions.
Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed.
HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately.
10 years ago
freiro
0c22e52f52
WINVER definition moved to CMake and cleanup
9 years ago
Subv
e3e4f27447
ClangFormat: Fixed the clang-format errors
9 years ago
mailwl
5b136aa211
Set client SDK version to Service APIs
9 years ago
Subv
aea9a91100
Build: Fixed a few warnings.
9 years ago
wwylele
589b642790
FileSys: Implement OtherSaveData
9 years ago
wwylele
b25f19ac26
FS: add missing MediaType
9 years ago
wwylele
5af117e00c
FileSys: abstract SD save data archive source
9 years ago
Subv
d171409f29
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
3dsx and elf files default to system mode 2 (96MB allocated to the application).
This allows Home Menu to boot without modifications.
Closes #1849
9 years ago
Emmanuel Gil Peyrot
0820c99462
GPU: Remove the broken frame_skip option.
Fixes #1960 .
9 years ago
Subv
4623415026
RasterizerGL: Use GL_TRUE and 0xFF in the stencil and depth masks instead of simply true and -1
9 years ago
Subv
743b0e71d9
Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.
9 years ago
freiro
593ec7fa74
Move to AppData/Roaming/Citra/
9 years ago
MerryMage
27be446049
dynarmic: Add ticks based on ticks executed, not ticks requested
9 years ago
freiro
972b289c78
Removed /user/ from path
9 years ago
mailwl
ec15e485c9
Output parameters to log
9 years ago
mailwl
d4cadf11fc
MIC_U: Stub service funcions
9 years ago
James Rowe
bbe57a66ca
Expose page table to dynarmic for optimized reads and writes to the JIT
9 years ago
freiro
79317b63d9
Switch to AppData/Roaming
9 years ago
jphalimi
82210ab480
Cache Vertices instead of Output registers ( #2165 )
This patch brings +3% performance improvement on average. It removes
ToVertex() as an important hotspot of the emulator.
9 years ago
pippo2931
0c9c97e5ea
Bravely Default/Second stuck #1822 ( #2188 )
* Bravely Default/Second stuck #1822
CancelLibraryApplet stub
* Log parameter.
* Taking care of comments
* Sync with 3DBrew
* White space ?
* lower case
9 years ago
wwylele
75affa13f7
Fix format error from #2195
9 years ago
freiro
5dd31f204a
Improve verbosity of audio errors with SDL_GetError()
9 years ago
Subv
1323ab2f5f
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
3dsx and elf files default to system mode 2 (96MB allocated to the application).
This allows Home Menu to boot without modifications.
Closes #1849
9 years ago
Subv
050e9be15b
GPU/CiTrace: Avoid calling GetTextures() when not necessary.
9 years ago
James Rowe
19acec351c
Minor formatting change
9 years ago
Subv
4ab8692475
Kernel/Events: Log an error when trying to create Pulse events and timers.
Related to #1904
9 years ago
Subv
d7ab4fd53d
APT/Applets: Renamed the members of the SignalType enum.
Names now make sense and match 3dbrew.
9 years ago
wwylele
282195b450
tests: add a work-around for macOS linking error
9 years ago
wwylele
d7d6975af0
FileSys: rename SaveDataCheck archive to NCCH archive
According to the observation from game and 3dbrew "Used for accessing general NCCH data"
9 years ago
wwylele
f775a3781b
FileSys: remove unused DiskArchive
All "subclasses" of DiskArchive are splitted out. This class is useless
9 years ago
wwylele
5c6e13a171
PTM & CFG: use the correct path and error code according to the new FileSys policy
9 years ago