Subv
79f53e6daa
Kernel/IPC: Small codestyle cleanup
2016-12-09 12:39:12 -05:00
Subv
17d8d69c6e
Added a framework for partially handling Session disconnections.
...
Further implementation will happen in a future commit.
Fixes a regression.
2016-12-08 15:01:10 -05:00
Subv
021e732815
Use std::move where appropriate.
2016-12-08 11:06:19 -05:00
Subv
06b2b80d31
Return an error code when connecting to a saturated port.
...
The error code was taken from the 3DS kernel.
2016-12-05 13:59:57 -05:00
Subv
7eaf6faa7d
HLE: Use a member variable instead of a virtual function to retrieve the max number of sessions that can be connected to an HLE service at the same time.
2016-12-05 13:44:41 -05:00
Subv
708ece3fff
Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, TranslateRequest and HandleSyncRequestImpl.
...
HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services.
2016-12-05 12:05:00 -05:00
Subv
728bb5f40b
Kernel: Remove the Redirection handle type.
2016-12-05 11:13:22 -05:00
Subv
977039e722
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
2016-12-05 11:02:08 -05:00
Subv
4703561c9e
Declare empty ServerSession and ClientSession constructors as default.
2016-12-02 22:58:02 -05:00
Subv
811d684274
Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.
2016-12-01 10:47:06 -05:00
Subv
4c4f50dfaf
Fixed the rebase mistakes.
2016-11-30 23:28:31 -05:00
Subv
4f2326c8a9
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.
2016-11-30 23:12:35 -05:00
Subv
d2305d375f
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.
2016-11-30 23:04:00 -05:00
Subv
edcacd7cdd
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.
2016-11-30 23:03:59 -05:00
Subv
96df92e98f
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-11-30 23:02:06 -05:00
Subv
302ef594a6
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.
2016-11-30 23:02:05 -05:00
Yuri Kunde Schlesner
35c7f317cf
Merge pull request #2228 from freiro/winver_fix
...
Move WINVER definition to cmake and a bit of cleanup
2016-11-30 15:47:08 -08:00
Sebastian Valle
547baeb208
Merge pull request #2243 from MerryMage/r15
...
dynarmic: Fix ABI violation
2016-11-30 17:41:20 -05:00
MerryMage
9089f83b0c
dynarmic: Fix ABI violation
...
Caused by not saving/restoring the x64 r15 register on entry/exit from
JITted code.
Closes #2224 .
2016-11-30 19:12:46 +00:00
wwylele
3fab1ddf64
Merge pull request #2241 from Subv/clang_format
...
ClangFormat: Fixed the clang-format errors
2016-11-30 18:52:53 +02:00
freiro
7f7bab0fa1
Appending PLATFORM_LIBRARIES instead of redefining them
2016-11-30 16:28:21 +01:00
freiro
662d907aa7
WINVER definition moved to CMake and cleanup
2016-11-30 15:47:09 +01:00
Subv
a485a04208
ClangFormat: Fixed the clang-format errors
2016-11-30 09:37:37 -05:00
Sebastian Valle
547126ae51
Merge pull request #1820 from mailwl/service-ver
...
Set client SDK version to Service APIs
2016-11-30 08:04:23 -05:00
mailwl
662aee1e1d
Set client SDK version to Service APIs
2016-11-30 09:51:14 +03:00
bunnei
6cb2b20a6b
Merge pull request #2233 from Subv/warnings
...
Build: Fixed a few warnings.
2016-11-29 23:23:22 -05:00
James Rowe
be6a3efb01
Update dynarmic to the latest version ( #2234 )
2016-11-29 23:22:19 -05:00
Subv
d16be9bdbd
Build: Fixed a few warnings.
2016-11-29 16:51:53 -05:00
Yuri Kunde Schlesner
e8dec36ad5
Merge pull request #2196 from Subv/system_mode
...
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
2016-11-27 17:04:11 -08:00
Yuri Kunde Schlesner
e3c19b1d04
Merge pull request #2222 from linkmauve/die-frameskip-die
...
Remove the broken frame_skip option
2016-11-27 16:01:45 -08:00
Sebastian Valle
6352bf702c
Merge pull request #2132 from wwylele/fix-fs-err
...
Correct FS error codes & add path boundary checks
2016-11-27 18:56:56 -05:00
Subv
7adac27868
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
2016-11-27 18:03:48 -05:00
Yuri Kunde Schlesner
66b6587d8b
Merge pull request #2218 from Subv/stencil_lines
...
Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.
2016-11-27 13:57:31 -08:00
Emmanuel Gil Peyrot
87d3afe635
GPU: Remove the broken frame_skip option.
...
Fixes #1960 .
2016-11-27 21:19:56 +00:00
Subv
47603a64f1
RasterizerGL: Use GL_TRUE and 0xFF in the stencil and depth masks instead of simply true and -1
2016-11-27 13:09:11 -05:00
Subv
d64661e40e
Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.
2016-11-27 12:16:10 -05:00
Sebastian Valle
9d5e10abc6
Merge pull request #2168 from mailwl/mic
...
MIC_U: Stub service funcions
2016-11-27 00:19:33 -05:00
Yuri Kunde Schlesner
5984634d7b
Merge pull request #2185 from freiro/local_folder
...
Change "user" folder default location to AppData/Roaming/ on Windows systems
2016-11-26 14:07:43 -08:00
freiro
dba46c0b01
Move to AppData/Roaming/Citra/
2016-11-26 22:57:36 +01:00
Yuri Kunde Schlesner
ad3fb349e5
Merge pull request #2215 from MerryMage/ticks_executed
...
dynarmic: Add ticks based on ticks executed, not ticks requested
2016-11-26 13:51:11 -08:00
MerryMage
eb5be59f9c
dynarmic: Add ticks based on ticks executed, not ticks requested
2016-11-26 20:32:33 +00:00
freiro
0459aadcb5
Removed /user/ from path
2016-11-26 01:00:52 +01:00
mailwl
9ee8f9297c
Output parameters to log
2016-11-25 09:37:20 +03:00
mailwl
cdce7ca48b
MIC_U: Stub service funcions
2016-11-25 09:37:19 +03:00
Yuri Kunde Schlesner
362c6cf75c
Merge pull request #2210 from jroweboy/pagetables
...
Expose page table to dynarmic for optimized reads and writes to the JIT
2016-11-24 19:58:12 -08:00
James Rowe
13888eac06
Expose page table to dynarmic for optimized reads and writes to the JIT
2016-11-24 20:41:18 -07:00
Yuri Kunde Schlesner
2639fc5845
Merge pull request #2211 from yuriks/travis-no-upload
...
Travis: Remove build uploading
2016-11-24 17:30:28 -08:00
Yuri Kunde Schlesner
b794700649
Travis: Remove build uploading
...
@archshift has been MIA for a while, so our builds server is currently
down. Furthermore, uploading is broken in both Linux and macOS:
- The version of lftp in Trusty doesn't support the sftp:auto-confirm
option, which means that uploading would hang, even if the server
weren't down. It currently tries to connect forever and fails the
build with a timeout.
- lftp was removed from Homebrew, so it wasn't being installed on macOS
and invoking it just failed.
2016-11-24 15:49:15 -08:00
Yuri Kunde Schlesner
209d59bec9
Merge pull request #2208 from freiro/libsdl205
...
Windows, move to SDL2-2.0.5
2016-11-24 14:04:00 -08:00
freiro
f25ecd351d
Switch to AppData/Roaming
2016-11-24 16:42:31 +01:00