Subv
016307ae65
Fixed the codestyle to match our clang-format rules.
9 years ago
Subv
ebbb55ec8f
Moved the HLE command buffer translation task to ServerSession instead of the HLE handler superclass.
9 years ago
Subv
deb83c9fc5
Kernel/IPC: Small codestyle cleanup
9 years ago
Subv
386112da32
Added a framework for partially handling Session disconnections.
Further implementation will happen in a future commit.
Fixes a regression.
9 years ago
Subv
f9bcf89510
Use std::move where appropriate.
9 years ago
Subv
c93c5a72bb
Return an error code when connecting to a saturated port.
The error code was taken from the 3DS kernel.
9 years ago
Subv
61a2fe8c3b
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.
9 years ago
Subv
00f0c77570
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.
9 years ago
Subv
29d809b6e1
Kernel: Remove the Redirection handle type.
9 years ago
Subv
dd8887c8cf
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
9 years ago
Subv
2ce61344d6
Declare empty ServerSession and ClientSession constructors as default.
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
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
mailwl
5b136aa211
Set client SDK version to Service APIs
9 years ago
mailwl
ec15e485c9
Output parameters to log
9 years ago
mailwl
d4cadf11fc
MIC_U: Stub service funcions
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
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
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
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
5c6e13a171
PTM & CFG: use the correct path and error code according to the new FileSys policy
9 years ago
wwylele
0987783699
FileSys: add SDMCWriteOnlyArchive
9 years ago
wwylele
a879984c06
FileSys: add ExtSaveDataArchive
ExtSaveData is more similar to SaveData, so let it be a subclass of SaveData
9 years ago
wwylele
7166fdc490
FileSys: add SaveDataArchive
The error checking of SaveDataArchive is completely different from DiskArchive, so it has to be a new class instead of a subclass of DiskArchive.
9 years ago
wwylele
dd5c15abd0
cfg: add config block 0x00090000
9 years ago
mailwl
af7f5bef8d
Style fix
9 years ago
mailwl
5872abeab9
Rename AcConfig, change types u8 to u32
9 years ago
mailwl
a62df98686
AC_U: Stub functions, used if EULA agreed
9 years ago
wwylele
4dd8a831bd
FileSys: make Archive interfaces return error code
and make the mode parameter a reference since it is a BitField union
9 years ago
Jan Beich
702439b519
core: some errno values are uncommon on Unix
src/core/hle/service/soc_u.cpp:107:6: error: 'ENODATA' was not declared in this scope
{ENODATA, 43},
^
src/core/hle/service/soc_u.cpp:117:6: error: 'ENOSR' was not declared in this scope
{ENOSR, 53},
^
src/core/hle/service/soc_u.cpp:118:6: error: 'ENOSTR' was not declared in this scope
{ENOSTR, 54},
^
src/core/hle/service/soc_u.cpp:139:6: error: 'ETIME' was not declared in this scope
{ETIME, 75},
^
9 years ago
mailwl
f672c7bd24
FRD: fix GetMyFriendKey
9 years ago
Ricardo de Almeida Gonzaga
13d46f6820
Fix typos
9 years ago
wwylele
32789a70fb
NWM: stub Initialize with an error
9 years ago
JamePeng
691f069743
Rework the code of err:f service
9 years ago
JamePeng
bd8c80a7b4
Update the stub code of BOSS
9 years ago
wwylele
257e7afb79
fs: clean up log format
9 years ago
wwylele
96b0e9476b
fs: implement DeleteDirectoryRecursively
9 years ago
wwylele
85a83158fb
move ResetType to kernel.h
10 years ago
wwylele
1c0179ad1b
name objects
10 years ago
wwylele
f69a543110
implement wait tree widget
10 years ago
Yuri Kunde Schlesner
84fbbe2629
Use negative priorities to avoid special-casing the self-include
9 years ago
Emmanuel Gil Peyrot
ebdae19fd2
Remove empty newlines in #include blocks.
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
9 years ago
Yuri Kunde Schlesner
396a8d91a4
Manually tweak source formatting and then re-run clang-format
9 years ago
Emmanuel Gil Peyrot
dc8479928c
Sources: Run clang-format on everything.
9 years ago