aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
AgeCommit message (Collapse)Author
2014-11-24Remove duplicated docs/update them for changed parameters.Yuri Kunde Schlesner
2014-11-24HLE: Revamp error handling throrough the HLE codeYuri Kunde Schlesner
All service calls in the CTR OS return result codes indicating the success or failure of the call. Previous to this commit, Citra's HLE emulation of services and the kernel universally either ignored errors or returned dummy -1 error codes. This commit makes an initial effort to provide an infrastructure for error reporting and propagation which can be use going forward to make HLE calls accurately return errors as the original system. A few parts of the code have been updated to use the new system where applicable. One part of this effort is the definition of the `ResultCode` type, which provides facilities for constructing and parsing error codes in the structured format used by the CTR. The `ResultVal` type builds on `ResultCode` by providing a container for values returned by function that can report errors. It enforces that correct error checking will be done on function returns by preventing the use of the return value if the function returned an error code. Currently this change is mostly internal since errors are still suppressed on the ARM<->HLE border, as a temporary compatibility hack. As functionality is implemented and tested this hack can be eventually removed.
2014-11-23Merge pull request #191 from archshift/deletexyzbunnei
Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.
2014-11-23Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.archshift
2014-11-19Merge pull request #211 from linkmauve/masterbunnei
Remove trailing spaces from the entire project
2014-11-19Merge pull request #208 from lioncash/staticsbunnei
Add static to some variables
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP ↵Emmanuel Gil Peyrot
or generated
2014-11-18Add static to some variablesLioncash
2014-11-18Remove extraneous semicolonsLioncash
2014-11-17Archive: Fixed to not destroy archive handle on close.bunnei
2014-11-17Archive: Fixed close archive before freeing.bunnei
2014-11-17FS_User: Support FileSye::Path in a more generic way.bunnei
added a todo to kernel archive
2014-11-17FileSys: Updated backend code to use FileSys::Path instead of string for paths.bunnei
2014-11-14Fix two format strings.Lioncash
2014-11-02Added CreateDirectory function to service/fs.cpp, and in Archive.archshift
2014-10-29Fix some warningsSean
2014-10-26Add `override` keyword through the code.Yuri Kunde Schlesner
This was automated using `clang-modernize`.
2014-10-06FileSys: split the constructor into an Open method, in order to notify the ↵Emmanuel Gil Peyrot
opener something went wrong. Kernel: Return an invalid handle to OpenFile when it failed to open.
2014-10-06FileSys/Kernel: Implement SetSize service call for File objects.Emmanuel Gil Peyrot
2014-09-21Use the citra user path for the sdmc directoryarchshift
2014-09-17Kernel: Implement the Close command for Archive, File and Directory.Emmanuel Gil Peyrot
2014-09-17Kernel: Add a Directory object and a getter for it from an Archive object.Emmanuel Gil Peyrot
2014-09-17Kernel: Add a File object and a getter for it from an Archive object.Emmanuel Gil Peyrot
2014-09-14Core: Get rid of unnecessary switch statement in KernelLioncash
2014-09-08core: Prune redundant includesarchshift
2014-08-28Threading: Fix thread starting to execute first instruction correctly.bunnei
2014-08-22Added FS functions to Archive and Archive_RomFSarchshift
2014-08-19Core: Use std::array for managing kernel object spaceLioncash
These avoid relying on memset for clearing the arrays.
2014-08-17Core: Alter the kernel string functions to use std::string instead of const ↵Lioncash
char*. Most functions already operate on std::strings. This also removes the need to manually null terminate thread names.
2014-08-06Thread: Added more descriptive comment to WaitCurrentThread.bunnei
2014-08-05AddressArbiter: Removed unnecessary HLE::Reschedule.bunnei
2014-08-05AddressArbiter: Fixed bug with break statements missing from case statements.bunnei
2014-08-05Kernel: Updated Event and Mutex to specify handle that they are blocking for.bunnei
2014-07-08Kernel: Added preliminary support for address arbiters.bunnei
AddressArbiter: Added documentation comment, fixed whitespace issue. AddressArbiter: Fixed incorrect comment, reordered if-statement to be more clear. SVC: Removed trailing whitespace.
2014-07-08Thread: Added functions to resume threads from address arbitration.bunnei
Thread: Cleaned up arbitrate address functions. Thread: Cleaned up ArbitrateAllThreads function.
2014-07-05SharedMemory: Updated MapSharedMemory to use an enum for permissions.bunnei
- Also added some safety checks to MapSharedMemory.
2014-07-05Kernel: Added support for shared memory objects.bunnei
SharedMemory: Added optional name field for tracking known objects.
2014-07-04Archive: Added Init/Shutdown methods to reset kernel archive state.bunnei
2014-07-04FileSys: Added preliminary support for applications reading the RomFS archive.bunnei
Archive: Fixed brace ugliness for neobrain :) FS: Commented out unused local variables to prevent warnings. ...But keeping them here for future use. archive_romfs: Removed unused #include.
2014-06-27Kernel: Added stubbed code to support creation of kernel Archive objects.bunnei
2014-06-13Kernel: Removed unnecessary "#pragma once".bunnei
2014-06-13Kernel: Added freeing of kernel objects on emulator shutdown.bunnei
2014-06-13Event: Updated several log messages to be assertions.bunnei
2014-06-13Thread: Renamed occurrences of "t" to "thread" to improve readability.bunnei
2014-06-13Thread: Cleaned up VerifyWait, fixed issue where nullptr msg could ↵bunnei
unnecessarily be logged.
2014-06-13HLE: Removed usnused EatCycles function.bunnei
2014-06-13Thread: Moved position of * in arguments.bunnei
2014-06-13Thread: Updated VerifyWait to be more readable (but functionally the same).bunnei
2014-06-13HLE: Updated all uses of NULL to nullptr (to be C++11 compliant)bunnei
2014-06-13Kernel: Updated various kernel function "name" arguments to be const references.bunnei