Commit Graph

3801 Commits

Author SHA1 Message Date
2d8097eecc shader_jit: Fix non-SSE4.1 path where FLR would not truncate 2016-12-04 04:26:33 +01:00
4d5e42240c clang-format: Fix coding style 2016-12-03 01:32:46 -08:00
2ce61344d6 Declare empty ServerSession and ClientSession constructors as default. 2016-12-02 22:58:02 -05:00
e2cb7d7833 shader_jit: Load LOOPCOUNT_REG and LOOPINC 4 bit left-shifted 2016-12-02 04:33:15 +01:00
ed210c32b3 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
8efeb6ee2b Remove unused version.h 2016-12-01 16:38:46 +01:00
2eceee3a4c Fixed the rebase mistakes. 2016-11-30 23:28:31 -05:00
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.
2016-11-30 23:12:35 -05:00
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.
2016-11-30 23:04:00 -05:00
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.
2016-11-30 23:03:59 -05:00
0a33d915f8 fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication. 2016-11-30 23:02:06 -05:00
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.
2016-11-30 23:02:05 -05:00
68c00ee771 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
0c22e52f52 WINVER definition moved to CMake and cleanup 2016-11-30 15:47:09 +01:00
e3e4f27447 ClangFormat: Fixed the clang-format errors 2016-11-30 09:37:37 -05:00
5b136aa211 Set client SDK version to Service APIs 2016-11-30 09:51:14 +03:00
aea9a91100 Build: Fixed a few warnings. 2016-11-29 16:51:53 -05:00
589b642790 FileSys: Implement OtherSaveData 2016-11-29 23:50:00 +02:00
b25f19ac26 FS: add missing MediaType 2016-11-29 23:50:00 +02:00
5af117e00c FileSys: abstract SD save data archive source 2016-11-29 23:50:00 +02:00
3174bfd50c 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
e279a6955e Merge pull request #2222 from linkmauve/die-frameskip-die
Remove the broken frame_skip option
2016-11-27 16:01:45 -08:00
4ba5acdaff 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
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
2016-11-27 18:03:48 -05:00
0820c99462 GPU: Remove the broken frame_skip option.
Fixes #1960.
2016-11-27 21:19:56 +00:00
4623415026 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
743b0e71d9 Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer. 2016-11-27 12:16:10 -05:00
d3b7f57b2b Merge pull request #2168 from mailwl/mic
MIC_U: Stub service funcions
2016-11-27 00:19:33 -05:00
a0b30189e5 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
593ec7fa74 Move to AppData/Roaming/Citra/ 2016-11-26 22:57:36 +01:00
27be446049 dynarmic: Add ticks based on ticks executed, not ticks requested 2016-11-26 20:32:33 +00:00
972b289c78 Removed /user/ from path 2016-11-26 01:00:52 +01:00
ec15e485c9 Output parameters to log 2016-11-25 09:37:20 +03:00
d4cadf11fc MIC_U: Stub service funcions 2016-11-25 09:37:19 +03:00
bbe57a66ca Expose page table to dynarmic for optimized reads and writes to the JIT 2016-11-24 20:41:18 -07:00
79317b63d9 Switch to AppData/Roaming 2016-11-24 16:42:31 +01:00
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.
2016-11-23 23:10:34 -05:00
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
2016-11-23 22:57:56 -05:00
ef421696e3 Merge pull request #2186 from wwylele/config9
cfg: add config block 0x00090000
2016-11-23 18:51:01 -08:00
fefa645ec7 Merge pull request #1654 from JamePeng/errdisp
Rework the code of err:f service!
2016-11-23 17:43:02 -08:00
75affa13f7 Fix format error from #2195 2016-11-22 20:17:28 +02:00
5dd31f204a Improve verbosity of audio errors with SDL_GetError() 2016-11-22 17:28:11 +01:00
2de470c9b2 Merge pull request #2195 from Subv/factor_check
GPU/CiTrace: Avoid calling GetTextures() when not necessary.
2016-11-19 22:21:11 -05:00
f1798c1db6 Merge pull request #2193 from Subv/pulse_events
Kernel/Events: Log an error when trying to create Pulse events and timers
2016-11-19 22:19:45 -05:00
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
2016-11-19 20:40:04 -05:00
6c8857d2bb Merge pull request #2192 from Subv/applet_enums
APT/Applets: Renamed the members of the SignalType enum.
2016-11-19 20:30:26 -05:00
050e9be15b GPU/CiTrace: Avoid calling GetTextures() when not necessary. 2016-11-19 19:27:00 -05:00
f68f37b520 Merge pull request #2194 from jroweboy/extremely-minor-clangformat-change
Minor formatting change
2016-11-19 13:51:14 -07:00
19acec351c Minor formatting change 2016-11-19 13:35:07 -07:00
4ab8692475 Kernel/Events: Log an error when trying to create Pulse events and timers.
Related to #1904
2016-11-19 14:00:08 -05:00