aboutsummaryrefslogtreecommitdiff
path: root/src/core/loader/loader.h
AgeCommit message (Collapse)Author
2019-01-15loader: Propagate NCA logo section to ReadBanner and ReadLogoZach Hilman
2018-12-28loader: Add accessor for Manual RomFSZach Hilman
2018-12-27Merge pull request #1928 from lioncash/capsbunnei
kernel: Handle kernel capability descriptors
2018-12-27loader: Add accessor for game control dataZach Hilman
2018-12-21kernel/process: Hook up the process capability parser to the process itselfLioncash
While we're at it, we can also toss out the leftover capability parsing from Citra.
2018-12-10Merge pull request #1819 from DarkLordZach/disable-addonsbunnei
patch_manager: Add support for disabling patches
2018-12-05loaders: Make GetFileType() a const qualified member functionLioncash
No implementations actually modify instance state (and it would be questionable to do that in the first place given the name), so we can make this a const member function.
2018-12-03loader: Add support for reading the name of game's developerZach Hilman
2018-10-30global: Use std::optional instead of boost::optional (#1578)Frederic L
* get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
2018-10-15nso: Return an optional address from LoadModuleLioncash
If a malformed NSO is attempted to be loaded, we shouldn't continue onwards. We should be reporting an error and bailing out.
2018-10-05loader: Add getter for packed updateZach Hilman
Reads the update included with the game if it has one and adds the new ErrorNoPackedUpdate status.
2018-09-29loader: Make the Load() function take a process as a regular reference, not ↵Lioncash
a SharedPtr A process should never require being reference counted in this situation. If the handle to a process is freed before this function is called, it's definitely a bug with our lifetime management, so we can put the requirement in place for the API that the process must be a valid instance.
2018-09-04bktr: Implement IVFC offset shiftingZach Hilman
Fixes base game read errors
2018-09-04bktr: Fix missing includes and optimize styleZach Hilman
2018-09-04loader: Add BKTR-specific error messages and codesZach Hilman
2018-09-04loader: Add NSP file type and NSP-specific errorsZach Hilman
2018-09-02vfs_real: Forward declare IOFileLioncash
Eliminates the need to rebuild some source files if the file_util header ever changes. This also uncovered some indirect inclusions, which have also been fixed.
2018-08-23loader: Add new NAX-specific errors and messagesZach Hilman
2018-08-23nax: Add AppLoader_NAX and update loader to support itZach Hilman
2018-08-15loader: Make ResultStatus directly compatible with fmtLioncash
We can make the enum class type compatible with fmt by providing an overload of operator<<. While we're at it, perform proper bounds checking. If something exceeds the array, it should be a hard fail, because it's, without a doubt, a programmer error in this case.
2018-08-14loader: Remove address mapping remnants from citraLioncash
These mappings are leftovers from citra and don't apply to the Switch.
2018-08-12made ResultStatus a u16David Marcec
2018-08-09loader: Add more descriptive errorsZach Hilman
Full list of new errors and descriptions in core/loader/loader.h
2018-08-08loader: Remove unused IdentifyFile overloadZach Hilman
2018-08-06Avoid parsing RomFS to directory in NCAZach Hilman
2018-08-04Merge pull request #849 from DarkLordZach/xcibunnei
XCI and Encrypted NCA Support
2018-08-01kernel: Move object class to its own source filesLioncash
General moving to keep kernel object types separate from the direct kernel code. Also essentially a preliminary cleanup before eliminating global kernel state in the kernel code.
2018-08-01Use more descriptive error codes and messagesZach Hilman
2018-08-01Remove files that are not usedZach Hilman
2018-07-23core: Make converting constructors explicit where applicableLioncash
Avoids unwanted implicit conversions. Thankfully, given the large amount of cleanup in past PRs, only this tiny amount is left over to cover.
2018-07-19loader: Amend Doxygen commentsLioncash
These weren't adjusted when VFS was introduced
2018-07-18Virtual Filesystem 2: Electric Boogaloo (#676)Zach Hilman
* Virtual Filesystem * Fix delete bug and documentate * Review fixes + other stuff * Fix puyo regression
2018-07-07Revert "Virtual Filesystem (#597)"bunnei
This reverts commit 77c684c1140f6bf3fb7d4560d06d2efb1a2ee5e2.
2018-07-06Virtual Filesystem (#597)Zach Hilman
* Add VfsFile and VfsDirectory classes * Finish abstract Vfs classes * Implement RealVfsFile (computer fs backend) * Finish RealVfsFile and RealVfsDirectory * Finished OffsetVfsFile * More changes * Fix import paths * Major refactor * Remove double const * Use experimental/filesystem or filesystem depending on compiler * Port partition_filesystem * More changes * More Overhaul * FSP_SRV fixes * Fixes and testing * Try to get filesystem to compile * Filesystem on linux * Remove std::filesystem and document/test * Compile fixes * Missing include * Bug fixes * Fixes * Rename v_file and v_dir * clang-format fix * Rename NGLOG_* to LOG_* * Most review changes * Fix TODO * Guess 'main' to be Directory by filename
2018-06-21Add support for decrypted NCA files (#567)Zach Hilman
* Start to add NCA support in loader * More nca stuff * More changes to nca.cpp * Now identifies decrypted NCA cont. * Game list fixes and more structs and stuff * More updates to Nca class * Now reads ExeFs (i think) * ACTUALLY LOADS EXEFS! * RomFS loads and games execute * Cleanup and Finalize * plumbing, cleanup and testing * fix some things that i didnt think of before * Preliminary Review Changes * Review changes for bunnei and subv
2018-04-06core, main.h: Abort on 32Bit ROMs (#309)N00byKing
* core, main.h: Abort on 32Bit ROMs * main.cpp: Fix Grammar
2018-01-20loader: Clean up ctors and includes.bunnei
2018-01-20loader: Add DeconstructedRomDirectory for game dumps.bunnei
2018-01-20loader: Refactor to also pass filepath into IdentifyType.bunnei
2017-10-15core: Refactor MakeMagic usage and remove dead code.bunnei
2017-10-12Remove lots more 3DS-specific code.bunnei
2017-10-09Merge remote-tracking branch 'upstream/master' into nxbunnei
# Conflicts: # src/core/CMakeLists.txt # src/core/arm/dynarmic/arm_dynarmic.cpp # src/core/arm/dyncom/arm_dyncom.cpp # src/core/hle/kernel/process.cpp # src/core/hle/kernel/thread.cpp # src/core/hle/kernel/thread.h # src/core/hle/kernel/vm_manager.cpp # src/core/loader/3dsx.cpp # src/core/loader/elf.cpp # src/core/loader/ncch.cpp # src/core/memory.cpp # src/core/memory.h # src/core/memory_setup.h
2017-10-05loader: Add support for NRO, as well as various fixes and shared linker.bunnei
2017-09-30loader: Add support for loading an NSO.bunnei
2017-09-26Loaders: Don't automatically set the current process every time we load an ↵Subv
application. The loaders will now just create a Kernel::Process, construct it and return it to the caller, which is responsible for setting it as the current process and configuring the global page table.
2017-09-25Loader/NCCH: Add support for loading application updates (#2927)Max Thomas
* loader/ncch: split NCCH parsing into its own file * loader/ncch: add support for loading update NCCHs from the SD card * loader/ncch: fix formatting * file_sys/ncch_container: Return a value for OpenFile * loader/ncch: cleanup, always instantiate overlay_ncch to base_ncch * file_sys/ncch_container: better encryption checks, allow non-app NCCHs to load properly and for the existence of NCCH structures to be checked * file_sys/ncch_container: pass filepath as a const reference
2017-08-03loader: Expose program title.bunnei
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-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.