aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
2017-06-13Services/UDS: Set the proper bit in the ConnectionStatus structure when ↵Sebastian Valle
creating a network. (#2738) * Services/UDS: Set the proper bit in the ConnectionStatus structure when creating a network. This lets the application know that the host was successfully added to the session. * Services/UDS: Reset the connection status when destroying the network * Services/UDS: Reset the connection status's bitmask of changed nodes after reporting it to the game.
2017-06-11Kernel/IPC: Use boost::small_vector for HLE context objectsYuri Kunde Schlesner
2017-06-11Kernel: Allow clearing request_objects to re-use buffer spaceYuri Kunde Schlesner
Reduces the necessary allocation to max(in_handles, out_handles) rather than (in_handles + out_handles).
2017-06-11Kernel: Basic support for IPC translation for HLE servicesYuri Kunde Schlesner
2017-06-11Service/sm: Convert srv: to use IPC helpersYuri Kunde Schlesner
2017-06-11IPC: Add Pop/PushObjects methods to RequestParser/BuilderYuri Kunde Schlesner
These use the context functions to create and look-up handles for the user.
2017-06-11IPC: Add basic HLERequestContext support to RequestParser/BuilderYuri Kunde Schlesner
2017-06-11Kernel: Add methods in HLERequestContext abstracting handle creationYuri Kunde Schlesner
2017-06-11ServiceFramework: Use separate copy of command bufferYuri Kunde Schlesner
Copy the IPC command buffer to/from the request context before/after the handler is invoked. This is part of a move away from using global data for handling IPC requests.
2017-06-08Merge pull request #2756 from yuriks/service-frameworkYuri Kunde Schlesner
New service framework
2017-06-08Service/sm: Convert 'srv:' to ServiceFrameworkYuri Kunde Schlesner
2017-06-08Session: Remove/add some forward declarationsYuri Kunde Schlesner
2017-06-08Kernel: Ensure objects are kept alive during ClientSession disconnectionYuri Kunde Schlesner
Fixes #2760
2017-06-08Service: Remove a few redundant namespace qualifiersYuri Kunde Schlesner
2017-06-08Service: Add new ServiceFramework framework for writing HLE servicesYuri Kunde Schlesner
The old "Interface" class had a few problems such as using free functions (Which didn't allow you to write the service handler as if it were a regular class.) which weren't very extensible. (Only received one parameter with a pointer to the Interface object.) The new ServiceFramework aims to solve these problems by working with member functions and passing a generic context struct as parameter. This struct can be extended in the future without having to update all existing service implementations.
2017-06-07Merge pull request #2737 from Subv/decryptbeacondataJames Rowe
Services/UDS: Implement DecryptBeaconData.
2017-06-06Kernel: Remove some unnecessary namespace qualificationsYuri Kunde Schlesner
2017-06-06Services/UDS: Implement DecryptBeaconData.Subv
This function decrypts the encrypted data tags contained in the 802.11 beacon frames.
2017-06-06Service: Remove unnecessary includes from service.hYuri Kunde Schlesner
This has a huge fallout in terms of needing to fix other files because all service implementations included that file.
2017-06-06Service: Make service registration part of the sm implementationYuri Kunde Schlesner
Also enhances the GetServiceHandle implementation to be more accurate.
2017-06-06Service/sm: Use an actual semaphore for the notification semaphoreYuri Kunde Schlesner
An Event was used way back then when we didn't have proper working semaphores. Our Semaphore implementation is good enough now.
2017-06-06Service: Move SRV interface to a new sm/ subdirectoryYuri Kunde Schlesner
This will contain the implementation of the sm (Service Manager) system module.
2017-06-06Kernel: Add a dedicated SetHleHandler method to ServerPort/ServerSessionYuri Kunde Schlesner
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.
2017-06-06ResultVal: Add more convenience utils for creating and cascading resultsYuri Kunde Schlesner
2017-06-05HLE: Move SessionRequestHandler from Service:: to Kernel::Yuri Kunde Schlesner
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.
2017-06-02Addressed Bunnei's review comments, and made some other tweaks:TheKoopaKingdom
- 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.
2017-06-02Switched to the ERROR_NOT_FOUND constant from errors.h.TheKoopaKingdom
2017-06-02Moved whitelist checks from FS_User to the Archive_NCCH handler.TheKoopaKingdom
2017-06-02Created a whitelist of system archives to prevent false positives creating ↵TheKoopaKingdom
dialogs.
2017-06-02Made some changes from review comments:TheKoopaKingdom
- 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.
2017-06-02Added system for handling core errors in citra-qt.TheKoopaKingdom
2017-05-31Merge pull request #2722 from wwylele/cam-ipc-helperbunnei
CAM: use IPCHelper
2017-05-29Kernel: Move HandleTable to a separate fileYuri Kunde Schlesner
2017-05-29Kernel: Move WaitObject to a separate fileYuri Kunde Schlesner
Now that HandleTable doesn't directly depend on WaitObject anymore, this can be separated from the main kernel.h header.
2017-05-29Kernel: Removed HandleTable::GetWaitObjectYuri Kunde Schlesner
This isn't necessary anymore since plain Get works correctly for WaitObjects.
2017-05-29Kernel: Extract dynamic Object pointer cast into its own functionYuri Kunde Schlesner
2017-05-27Remove some unnecessary inclusions of video_core.hYuri Kunde Schlesner
2017-05-27Core: Fix some out-of-style includesYuri Kunde Schlesner
2017-05-27fixup!cam: use IPCHelperwwylele
2017-05-24FS: Remove unused result definitionYuri Kunde Schlesner
2017-05-24Kernel: Centralize error definitions in errors.hYuri Kunde Schlesner
2017-05-24GSP_GPU: Move error codes from result.h to local fileYuri Kunde Schlesner
2017-05-24FileSys: Move all result description to errors.hYuri Kunde Schlesner
2017-05-24result: Make error description a generic integerYuri Kunde Schlesner
It is now known that result code description vary depending on the module, and so they're best defined on a per-module basis. To support this, allow passing in an arbitrary integer instead of limiting to the ones in the ErrorDescription enum. These will be gradually migrated to their individual users, but a few will be kept as "common" codes shared by all modules.
2017-05-24Make BitField and ResultCode constexpr-initializableYuri Kunde Schlesner
2017-05-24cam: move u32->u8 trancation to IPCHelperwwylele
2017-05-24cam: use IPCHelperwwylele
2017-05-21Merge pull request #2406 from Subv/session_disconnectYuri Kunde Schlesner
Kernel: Properly update port counters on session disconnection.
2017-05-21Kernel/Sessions: Remove the ClientSession::Create function.Subv
It is not meant to be used by anything other than CreateSessionPair.
2017-05-19Merge pull request #2661 from Subv/uds5bunnei
Services/UDS: Generate 802.11 beacon frames when a network is open.