Commit Graph

700 Commits

Author SHA1 Message Date
093aa35c87 dlp_srvr: Update function table 2016-12-08 00:56:46 -05:00
733c8890aa cfg: Update function tables
Updated based off information from 3dbrew
2016-12-08 00:56:46 -05:00
0229983ff2 cecd_u: Update function table
Updated based off information from 3dbrew.
2016-12-08 00:56:46 -05:00
4ebdb7e3e1 boss_p: Update function table 2016-12-08 00:56:45 -05:00
74b3f0faa7 act: Update function tables
Updated based off information from 3dbrew.
2016-12-08 00:56:39 -05:00
258694996f apt: Update apt function tables
Updated based off information from 3dbrew.
2016-12-07 22:53:10 -05:00
26ea6b9546 Update AM service function tables
Updated based off information from 3dbrew.
2016-12-07 20:55:59 -05:00
84e78790ab Config: auto-select region and language 2016-12-07 20:52:42 +02:00
8d529a5cda Merge pull request #2232 from wwylele/other-save
FS: implement archives for other game save data
2016-12-07 10:17:02 -05:00
c93c5a72bb 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
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. 2016-12-05 13:44:41 -05:00
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.
2016-12-05 12:05:00 -05:00
dd8887c8cf KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it. 2016-12-05 11:02:08 -05:00
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.
2016-12-04 06:14:27 -08: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
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
5b136aa211 Set client SDK version to Service APIs 2016-11-30 09:51:14 +03: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
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
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
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
d7ab4fd53d APT/Applets: Renamed the members of the SignalType enum.
Names now make sense and match 3dbrew.
2016-11-19 13:42:07 -05:00
d7d6975af0 FileSys: rename SaveDataCheck archive to NCCH archive
According to the observation from game and 3dbrew "Used for accessing general NCCH data"
2016-11-19 18:55:35 +02:00
5c6e13a171 PTM & CFG: use the correct path and error code according to the new FileSys policy 2016-11-19 18:55:34 +02:00
0987783699 FileSys: add SDMCWriteOnlyArchive 2016-11-19 18:55:34 +02:00
dd5c15abd0 cfg: add config block 0x00090000 2016-11-17 19:34:02 +02:00
af7f5bef8d Style fix 2016-11-02 09:38:44 +03:00
5872abeab9 Rename AcConfig, change types u8 to u32 2016-11-02 09:38:44 +03:00
a62df98686 AC_U: Stub functions, used if EULA agreed 2016-11-02 09:38:44 +03:00
4dd8a831bd FileSys: make Archive interfaces return error code
and make the mode parameter a reference since it is a BitField union
2016-11-01 18:30:32 +02:00
ae2fab4a0e Merge pull request #2126 from wwylele/stub-nwm
NWM: stub Initialize with an error
2016-10-31 16:16:12 -04:00
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},
      ^
2016-10-27 23:28:30 +00:00
f672c7bd24 FRD: fix GetMyFriendKey 2016-10-25 09:54:29 +03:00
13d46f6820 Fix typos 2016-10-20 12:26:59 -02:00
32789a70fb NWM: stub Initialize with an error 2016-10-12 22:33:44 +08:00
cc7f1155a8 Merge pull request #2024 from JamePeng/update-boss-code
Update the stub code of BOSS
2016-10-07 23:02:39 -04:00
691f069743 Rework the code of err:f service 2016-10-06 21:03:12 +08:00
bd8c80a7b4 Update the stub code of BOSS 2016-10-02 17:36:57 +08:00
257e7afb79 fs: clean up log format 2016-10-02 12:39:28 +08:00
96b0e9476b fs: implement DeleteDirectoryRecursively 2016-10-02 11:29:16 +08:00