| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
archive independently.
The loaders now register each loaded ROM with the SelfNCCH factory, which keeps the data around for the duration of the emulation session.
When opening the SelfNCCH archive, the factory queries the current program's programid and uses that as a key to the map that contains the NCCHData structure (RomFS, Icon, Banner, etc).
3dsx files do not have a programid and will use a default of 0 for this value, thus, only 1 3dsx file with RomFS is loadable at the same time.
|
| |
|
|
|
| |
Replace it with std::move(result_val).Unwrap(), or Foo().Unwrap() in
case you already have an rvalue.
|
| |
|
|
|
| |
This has a huge fallout in terms of needing to fix other files because
all service implementations included that file.
|
| |
|
|
|
|
| |
This allows attaching a HLE handle to a ServerPort at any point after it
is created, allowing port/session creation to be generic between HLE and
regular services.
|
| |
|
|
|
| |
Most of the code that works with this is or will be in the kernel, so
it's a more appropriate place for it to be.
|
| |
|
|
|
| |
- Deleted GetStatus() because it wasn't used anywhere outside of Core::System.
- Fixed design flaw where the message bar status could be set despite the game being stopped.
|
| | |
|
| | |
|
| |
|
|
| |
dialogs.
|
| |
|
|
|
|
|
|
| |
- Made LoadKernelSystemMode return a pair consisting of a system mode and a result code (Could use review).
- Deleted ErrorOpenGL error code in favor of just having ErrorVideoCore.
- Made dialog messages more clear.
- Compared archive ID in fs_user.cpp to ArchiveIdCode::NCCH as opposed to hex magic.
- Cleaned up some other stuff.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\
| |
| | |
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
|
| | | |
|
| | |
| |
| |
| | |
the HLE handler superclass.
|
| | |
| |
| |
| |
| |
| | |
Further implementation will happen in a future commit.
Fixes a regression.
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
TranslateRequest and HandleSyncRequestImpl.
HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
| |
| |
| | |
Updated based off information from 3dbrew.
|
| |\ \
| |/
|/| |
FS: implement archives for other game save data
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| |
|
|
| |
According to the observation from game and 3dbrew "Used for accessing general NCCH data"
|
| | |
|
| |
|
|
| |
and make the mode parameter a reference since it is a BitField union
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
|
| | |
|
| | |
|
| |\
| |
| | |
Implement config savegame editing & clean up
|
| | | |
|
| |\ \
| | |
| | | |
Fix the errorcode of archive handle
|
| | |/ |
|
| |/
|
|
| |
(CreateLegacySystemSaveData)
|