aboutsummaryrefslogtreecommitdiff
path: root/src/core
AgeCommit message (Collapse)Author
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
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-24telemetry: Log a few simple data fields throughout core.bunnei
2017-05-24core: Keep track of telemetry for the current emulation session.bunnei
2017-05-24cam: move u32->u8 trancation to IPCHelperwwylele
2017-05-24cam: use IPCHelperwwylele