Subv
977039e722
KServerPorts now have an HLE handler "template", which is inherited by all ServerSessions created from it.
9 years ago
Subv
4703561c9e
Declare empty ServerSession and ClientSession constructors as default.
9 years ago
Subv
811d684274
Threads do not wait for the server endpoint to call AcceptSession before returning from a ConnectToPort or GetServiceHandle call.
9 years ago
Subv
4c4f50dfaf
Fixed the rebase mistakes.
9 years ago
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.
9 years ago
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.
10 years ago
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.
10 years ago
Subv
96df92e98f
fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
10 years ago
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.
10 years ago
mailwl
662aee1e1d
Set client SDK version to Service APIs
9 years ago
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
9 years ago
Emmanuel Gil Peyrot
87d3afe635
GPU: Remove the broken frame_skip option.
Fixes #1960 .
9 years ago
MerryMage
eb5be59f9c
dynarmic: Add ticks based on ticks executed, not ticks requested
9 years ago
mailwl
9ee8f9297c
Output parameters to log
9 years ago
mailwl
cdce7ca48b
MIC_U: Stub service funcions
9 years ago
James Rowe
13888eac06
Expose page table to dynarmic for optimized reads and writes to the JIT
9 years ago
pippo2931
a92472e7c9
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
d00d0d61e0
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
bb93931096
Kernel/Events: Log an error when trying to create Pulse events and timers.
Related to #1904
9 years ago
Subv
f33e1950b6
APT/Applets: Renamed the members of the SignalType enum.
Names now make sense and match 3dbrew.
9 years ago
wwylele
01964d37fb
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
bfc699293f
FileSys: remove unused DiskArchive
All "subclasses" of DiskArchive are splitted out. This class is useless
9 years ago
wwylele
e41a1ff6da
PTM & CFG: use the correct path and error code according to the new FileSys policy
9 years ago
wwylele
5506268bf6
FileSys: w->rw permission lift only happens in SDMC archive
9 years ago
wwylele
a14bab3b8b
FileSys: add SDMCWriteOnlyArchive
9 years ago
wwylele
76c8e607a4
FileSys: add SDMCArchive
Now DiskArchive only serves for SDMC, then it should be just a "SDMCArchive"
9 years ago
wwylele
4a80f45637
FileSys: add ExtSaveDataArchive
ExtSaveData is more similar to SaveData, so let it be a subclass of SaveData
9 years ago
wwylele
420091d0e5
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
1e33d07b86
FileSys: remove Open from FileBackend
Same as directory, file shouldn't expose Open either.
9 years ago
wwylele
4675116401
FileSys: remove Open from DirectoryBackend
Open should not be an interface exposed by Directory because it is the Archive thats implement the methed to open the directory. The service API of 3DS also implies this - Open is not a function of directory service, but is of FS main service
9 years ago
wwylele
37d6cbc200
FileSys: add PathParser
9 years ago
wwylele
4fc15d830f
cfg: add config block 0x00090000
9 years ago
James Rowe
f0dcbd3f73
Add mingw compile support
10 years ago
James Rowe
08f830fed4
Support additional screen layouts.
Allows users to choose a single screen layout or a large screen layout.
Adds a configuration option to change the prominent screen.
10 years ago
mailwl
076afa2614
Style fix
9 years ago
mailwl
6b4d6e03f0
Rename AcConfig, change types u8 to u32
9 years ago
mailwl
3b92e6c3d9
AC_U: Stub functions, used if EULA agreed
9 years ago
wwylele
657bb716f7
FileSys: make Archive interfaces return error code
and make the mode parameter a reference since it is a BitField union
9 years ago
mailwl
14b159aa64
Small fix to let IDA see target.xml
9 years ago
Jan Beich
914ca5ae70
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
715d981403
FRD: fix GetMyFriendKey
9 years ago
Ricardo de Almeida Gonzaga
07fdcf150d
Fix typos
9 years ago
wwylele
9ef5b9604b
NWM: stub Initialize with an error
9 years ago
JamePeng
876bd2daa8
Rework the code of err:f service
9 years ago
JamePeng
97d9804d97
Update the stub code of BOSS
9 years ago
wwylele
a1a4d92f19
fs: clean up log format
9 years ago
wwylele
b2fa64ec75
fs: implement DeleteDirectoryRecursively
9 years ago
wwylele
ef9319842c
gpu: DisplayTransfer: a less amazing algorithm for flip
the old implementation modifies the loop variable in the loop. Though it actually works, it is really confusing. Makes it morereadable now.
9 years ago
wwylele
2c0cc232fa
gpu: keep the old signal strategy for null pointer
previous commits changes the behaviour of interrupt when meeting invalid params. Regresses to the same behaviour as before
needs more hwtest
9 years ago
wwylele
ff4fe1df8f
gpu: add validity check for TextureCopy, DisplayTransfer and FillMemory
prevent further operation with invalid values which may cause assertion failure or divided by zero.
needs more hwtest
9 years ago