d4a808c885
ncch_container: support encrypted games
2018-08-07 18:53:06 +03:00
661f7bbcfd
core: Make converting constructors explicit where applicable
...
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-30 08:21:13 +08:00
7f48aa8d25
Loaders: Don't automatically set the current process every time we load an 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-26 18:17:47 -05:00
c91ccbd0ba
Loader/NCCH: Add support for loading application updates ( #2927 )
...
* 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-09-25 08:17:38 +02:00
f5cf9960d9
loader: Expose program title.
2017-08-03 20:10:37 -04:00
f008b22e3b
Addressed Bunnei's review comments, and made some other tweaks:
...
- 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-02 18:40:39 -04:00
a8aef599e0
Created a whitelist of system archives to prevent false positives creating dialogs.
2017-06-02 18:28:14 -04:00
37bec598ea
Made some changes from review comments:
...
- 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-02 18:28:14 -04:00
e523c76cc8
Fixed encrypted ROM error messages.
2017-06-02 18:25:32 -04:00
0cb52ee74a
Doxygen: Amend minor issues ( #2593 )
...
Corrects a few issues with regards to Doxygen documentation, for example:
- Incorrect parameter referencing.
- Missing @param tags.
- Typos in @param tags.
and a few minor other issues.
2017-02-26 17:58:51 -08:00
351b5d23f4
loader: Implement ReadProgramId
2016-12-15 18:42:38 +00:00
d171409f29
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
...
3dsx and elf files default to system mode 2 (96MB allocated to the application).
This allows Home Menu to boot without modifications.
Closes #1849
2016-11-27 18:03:48 -05:00
1323ab2f5f
Kernel/Loader: Grab the system mode from the NCCH ExHeader.
...
3dsx and elf files default to system mode 2 (96MB allocated to the application).
This allows Home Menu to boot without modifications.
Closes #1849
2016-11-19 20:40:04 -05:00
ebdae19fd2
Remove empty newlines in #include blocks.
...
This makes clang-format useful on those.
Also add a bunch of forgotten transitive includes, which otherwise
prevented compilation.
2016-09-21 11:15:47 +09:00
396a8d91a4
Manually tweak source formatting and then re-run clang-format
2016-09-18 21:14:25 -07:00
dc8479928c
Sources: Run clang-format on everything.
2016-09-18 09:38:01 +09:00
080a2d719c
Loader: Split SMDH into its own header and import helpers from QGameList
...
Also rewrite Qt wrappers to use those.
2016-05-21 20:15:42 +01:00
314ce5e505
CitraQt: Simplify the game list loader code
2016-05-21 17:09:59 +01:00
9a35d1fb4a
Loader: Add a GetFileType method to get the type of a loaded file
2016-05-21 17:09:59 +01:00
8fc9c03126
Loader, Frontends: Refactor loader creation and game loading
...
This allows frontends to keep a single loader and use it multiple times
e.g. for code loading and SMDH parsing.
2016-05-21 17:09:56 +01:00
5d5dd66d92
add icon & title to game list
2016-05-04 13:02:49 +03:00
c99f47d8f0
loader: Make MakeMagic constexpr
2016-03-21 03:28:22 -04:00
2706394384
Loader: Implement encryption check
2015-10-10 22:34:17 -04:00
bba12520c4
Expose loader helper functions for identifying files.
2015-09-30 21:04:47 -07:00
2d7299a86f
Loader: Remove unnecessary pointer indirection to IOFile
2015-07-13 20:00:56 -03:00
c385b7767d
FS: Stream RomFS from file instead of loading all of it to memory
2015-07-13 19:57:12 -03:00
45c4781544
CitraQt: Cleanup includes.
2015-06-28 00:36:54 +01:00
596b7c4f63
Common: Cleanup key_map includes.
2015-06-28 00:36:54 +01:00
eb3eb9f75d
Loader: Remove .bin file support
...
It is of very limited practical utility currently, and will soon be
impossible to support due to more accurate memory map emulation.
2015-05-08 23:09:41 -03:00
3cb19c9589
Process: Rename StaticAddressMapping => AddressMapping
2015-05-08 22:12:10 -03:00
6d60acf0f1
Kernel: Introduce skeleton Process class to hold process data
2015-05-08 22:11:02 -03:00
e1fbac3ca1
Common: Remove common.h
2015-05-07 15:45:22 -03:00
676daef3c7
core: Fix some warnings on OSX
2015-02-03 08:14:42 -05:00
82ec17db7d
Loader: Guess filetype from the magic, or fallback to the extension.
2015-01-15 22:23:08 +01:00
b5237e885d
Loader: Keep a reference to the file and pass it to the correct AppLoader, instead of loading it multiple times.
2015-01-15 21:21:26 +00:00
ebfd831ccb
License change
2014-12-20 21:20:24 -08:00
1aa969741d
Loader: Add 3DSX support
2014-12-08 18:06:43 +01:00
6966fdf025
Loader: Added support for loading raw BIN executables.
...
- Useful for debugging homebrew
Qt: Updated GUI to support loading .bin files.
2014-08-28 17:51:49 -04:00
b70c4fb48e
NCCH: Updated ExeFS memory allocation to be safer.
2014-07-04 20:37:51 -04:00
2c62d92551
Loader: Updated read methods to be const
...
- Required "file" handle to be made local and explicitly opened/closed as needed
2014-07-04 20:37:49 -04:00
d8da707bb9
Loader: Refactored interface such that data is no longer stored by loader.
...
NCCH: Removed extra qualification ‘Loader::AppLoader_NCCH::’.
2014-06-27 17:49:01 -04:00
a7f1c54490
Loader: Refactored loading functions to only read data from binary if called.
...
NCCH: Updated LoadExec to use Memory::WriteBlock function to load binary code.
2014-06-24 19:30:08 -04:00
62b444cd17
Loader: Refactored use of const.
2014-06-24 19:30:06 -04:00
3da2bc6830
NCCH: Fixes reduce unnecessary logging and load logo/banner/etc. sections correctly.
...
Loader: Added ErrorNotUsed ReturnStatus type to specify when something is not used.
2014-06-24 19:30:05 -04:00
7889cafc76
Loader: Implemented AppLoader interface for abstracting application loading.
...
- Various cleanups/refactorings to Loader, ELF, and NCCH modules.
- Added AppLoader interface to ELF and NCCH.
- Updated Qt/GLFW frontends to check AppLoader ResultStatus.
NCCH: Removed extra qualification typos.
Loader: Removed unnecessary #include's.
NCCH: Improved readability of memcmp statements.
NCCH: Added missing space.
Elf: Removed unnecessary usage of unique_ptr.
Loader: Removed unnecessary usage of unique_ptr.
2014-06-24 19:29:58 -04:00
13bdaa6c60
Loader: Cleaned up and removed unused code, refactored ELF namespace.
2014-06-16 23:43:33 -04:00
0aca202ae9
Loader: Moved elf and loader modules to a "loader" subdirectory.
2014-06-16 18:03:13 -04:00