aboutsummaryrefslogtreecommitdiff
path: root/src/core
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-02Optimized messages that were repetitive and added ability for core errors to ↵TheKoopaKingdom
specify more details optionally.
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-06-02Fixed encrypted ROM error messages.TheKoopaKingdom
2017-05-31Merge pull request #2722 from wwylele/cam-ipc-helperbunnei
CAM: use IPCHelper
2017-05-31Merge pull request #2739 from yuriks/kernel-reorgbunnei
Split-up kernel.h
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-27CMake: Remove unnecessary include_directories for dynarmicYuri Kunde Schlesner
Dynarmic already adds the correct include paths to the library target.
2017-05-27CMake: Add cryptopp include path to target propertyYuri Kunde Schlesner
2017-05-27CMake: Use IMPORTED target for BoostYuri Kunde Schlesner
2017-05-27CMake: Correct inter-module dependencies and library visibilityYuri Kunde Schlesner
Modules didn't correctly define their dependencies before, which relied on the frontends implicitly including every module for linking to succeed. Also changed every target_link_libraries call to specify visibility of dependencies to avoid leaking definitions to dependents when not necessary.
2017-05-27Remove some unnecessary inclusions of video_core.hYuri Kunde Schlesner
2017-05-27Move screen size constants from video_core to coreYuri Kunde Schlesner
video_core didn't even properly use them, and they were the source of many otherwise-unnecessary dependencies from core to video_core.
2017-05-27Core: Fix some out-of-style includesYuri Kunde Schlesner
2017-05-27Move framebuffer_layout from Common to CoreYuri Kunde Schlesner
This removes a dependency inversion between core and common. It's also the proper place for the file since it makes screen layout decisions specific to the 3DS.
2017-05-27fixup!cam: use IPCHelperwwylele
2017-05-26Merge pull request #2716 from yuriks/decentralized-resultbunnei
Decentralize ResultCode
2017-05-24FS: Remove unused result definitionYuri Kunde Schlesner