aboutsummaryrefslogtreecommitdiff
path: root/src/core/loader/ncch.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove lots more 3DS-specific code.bunnei2017-10-121-263/+0
|
* Merge remote-tracking branch 'upstream/master' into nxbunnei2017-10-091-266/+105
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # 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
| * file_sys, loader: add support for reading TMDs to determine app pathsshinyquagsire232017-10-011-3/+14
| |
| * Loaders: Don't automatically set the current process every time we load an ↵Subv2017-09-261-10/+9
| | | | | | | | | | | | 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.
| * HLE/Archives: Allow multiple loaded applications to access their SelfNCCH ↵Subv2017-09-251-2/+1
| | | | | | | | | | | | | | | | | | | | archive independently. The loaders now register each loaded ROM with the SelfNCCH factory, which keeps the data around for the duration of the emulation session. When opening the SelfNCCH archive, the factory queries the current program's programid and uses that as a key to the map that contains the NCCHData structure (RomFS, Icon, Banner, etc). 3dsx files do not have a programid and will use a default of 0 for this value, thus, only 1 3dsx file with RomFS is loadable at the same time.
| * Merge pull request #2952 from MerryMage/page-tablesB3n302017-09-251-1/+1
| |\ | | | | | | Switchable Page Tables
| | * memory: Add GetCurrentPageTable/SetCurrentPageTableMerryMage2017-09-241-1/+1
| | | | | | | | | | | | Don't expose Memory::current_page_table as a global.
| * | Loader/NCCH: Add support for loading application updates (#2927)Max Thomas2017-09-251-259/+60
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| * Kernel/Memory: Give each Process its own page table.Subv2017-09-101-0/+1
| | | | | | | | The loader is in charge of setting the newly created process's page table as the main one during the loading process.
| * Added missing parts in libnetwork (#2838)B3n302017-08-191-0/+8
| | | | | | | | | | * Network: Set and send the game information over enet Added Callbacks for RoomMember and GetMemberList to Room in preparation for web_services.
| * loader: Expose program title.bunnei2017-08-031-0/+20
| |
* | nso: Refactor and allocate .bss section.bunnei2017-09-301-2/+3
|/
* telemetry: Log performance, configuration, and system data.bunnei2017-07-171-2/+4
|
* Made some changes from review comments:TheKoopaKingdom2017-06-021-7/+4
| | | | | | | | - 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.
* Fixed encrypted ROM error messages.TheKoopaKingdom2017-06-021-4/+11
|
* telemetry: Log a few simple data fields throughout core.bunnei2017-05-241-0/+3
|
* loader/ncch: less verbose log for loading game list. only log program ID ↵wwylele2017-03-081-3/+6
| | | | when booting
* loader: use self NCCH archivewwylele2017-02-131-3/+3
|
* Fix some warnings (#2399)Jonathan Hao2017-01-041-1/+1
|
* Merge pull request #2240 from wwylele/auto-regionbunnei2016-12-291-0/+22
|\ | | | | Config: auto-select region and language
| * Config: auto-select region and languagewwylele2016-12-071-0/+22
| |
* | loader: Implement ReadProgramIdMerryMage2016-12-151-0/+12
|/
* Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv2016-11-271-7/+8
| | | | | | | 3dsx and elf files default to system mode 2 (96MB allocated to the application). This allows Home Menu to boot without modifications. Closes #1849
* Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv2016-11-191-0/+9
| | | | | | | 3dsx and elf files default to system mode 2 (96MB allocated to the application). This allows Home Menu to boot without modifications. Closes #1849
* Fix typosRicardo de Almeida Gonzaga2016-10-201-1/+1
|
* Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner2016-09-211-1/+1
|
* Remove empty newlines in #include blocks.Emmanuel Gil Peyrot2016-09-211-3/+1
| | | | | | | This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
* Sources: Run clang-format on everything.Emmanuel Gil Peyrot2016-09-181-27/+35
|
* Loader, Frontends: Refactor loader creation and game loadingEmmanuel Gil Peyrot2016-05-211-1/+8
| | | | | This allows frontends to keep a single loader and use it multiple times e.g. for code loading and SMDH parsing.
* Merge pull request #1766 from Subv/log_cpubunnei2016-05-081-0/+3
|\ | | | | Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1)
| * Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).Subv2016-05-071-0/+3
| | | | | | | | We do not currently implement any cores other than the AppCore (Core 0).
* | add icon & title to game listwwylele2016-05-041-3/+19
| |
* | ncch: Use correct format specifier (for long long uint)Sam Spilsbury2016-04-231-1/+1
|/
* ncch:only decompress .code sectionwwylele2016-04-141-2/+2
|
* Common: Remove Common::make_unique, use std::make_uniqueMerryMage2016-04-051-1/+0
|
* Loader/NCCH: Log the program ID during loadingYuri Kunde Schlesner2016-03-041-1/+2
| | | | | This is useful for all sorts of things, but mainly to identify save folders more easily.
* Loader: Change NCCH header types to be explicitly little-endianGareth Poole2015-10-101-2/+1
|
* Loader: Implement encryption checkGareth Poole2015-10-101-0/+5
|
* Loader: Remove unnecessary pointer indirection to IOFileYuri Kunde Schlesner2015-07-131-21/+21
|
* FS: Stream RomFS from file instead of loading all of it to memorycondut2015-07-131-4/+9
|
* Core: Properly configure address space when loading a binaryYuri Kunde Schlesner2015-07-111-4/+28
| | | | | | The code now properly configures the process image to match the loaded binary segments (code, rodata, data) instead of just blindly allocating a large chunk of dummy memory.
* Merge pull request #876 from linkmauve/include-cleanupsYuri Kunde Schlesner2015-07-101-1/+2
|\ | | | | Cleanup includes, mostly in common
| * CitraQt: Cleanup includes.Emmanuel Gil Peyrot2015-06-281-1/+2
| |
* | Loader: Remove log line causing warningaroulin2015-07-081-1/+0
|/
* Core/ResourceLimits: Implemented the basic structure of ResourceLimits.Subv2015-05-141-0/+5
| | | | | | Implemented svcs GetResourceLimit, GetResourceLimitCurrentValues and GetResourceLimitLimitValues. Note that the resource limits do not currently keep track of used objects, since we have no way to distinguish between an object created by the application, and an object created by some HLE module once we're inside Kernel::T::Create.
* Memmap: Re-organize memory function in two filesYuri Kunde Schlesner2015-05-151-1/+1
| | | | | | | memory.cpp/h contains definitions related to acessing memory and configuring the address space mem_map.cpp/h contains higher-level definitions related to configuring the address space accoording to the kernel and allocating memory.
* Loader: Add missing includeYuri Kunde Schlesner2015-05-091-0/+1
|
* Kernel: Remove g_program_idYuri Kunde Schlesner2015-05-081-4/+0
| | | | This has been obsoleted by the field in Process.
* Kernel: Introduce skeleton Process class to hold process dataYuri Kunde Schlesner2015-05-081-2/+18
|
* Common: Remove common.hYuri Kunde Schlesner2015-05-071-0/+2
|