summaryrefslogtreecommitdiffstats
path: root/src/core/loader (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-08-04loader: Expose program title.bunnei3-12/+31
2017-07-18telemetry: Log performance, configuration, and system data.bunnei1-2/+4
2017-06-03Addressed Bunnei's review comments, and made some other tweaks:TheKoopaKingdom2-2/+2
- 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-03Created a whitelist of system archives to prevent false positives creating dialogs.TheKoopaKingdom2-4/+2
2017-06-03Made some changes from review comments:TheKoopaKingdom3-15/+12
- 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-03Fixed encrypted ROM error messages.TheKoopaKingdom3-9/+19
2017-05-25telemetry: Log a few simple data fields throughout core.bunnei1-0/+3
2017-05-08Remove ability to load symbol mapsYuri Kunde Schlesner1-32/+0
This was now mostly unused except by thread creation, which used a symbol of the entrypoint, if available, to name the thread.
2017-03-08loader/ncch: less verbose log for loading game list. only log program ID when bootingwwylele1-3/+6
2017-03-08loader: lower file name logging levelwwylele1-1/+1
2017-02-27Doxygen: Amend minor issues (#2593)Mat M1-1/+1
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-13loader: use self NCCH archivewwylele2-6/+6
2017-01-18loader: Add support for 3DSX special relocation types, fixes citra-emu/citra#2449Thomas Farr1-9/+25
As per devkitPro/3dstools@47bea18
2017-01-04Fix some warnings (#2399)Jonathan Hao2-2/+2
2016-12-22loader: Remove duplicate docstrings.bunnei3-56/+0
2016-12-15loader: Implement ReadProgramIdMerryMage3-0/+28
2016-12-07Config: auto-select region and languagewwylele2-0/+25
2016-11-28Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv3-16/+17
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-20Kernel/Loader: Grab the system mode from the NCCH ExHeader.Subv3-0/+27
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-10-20Fix typosRicardo de Almeida Gonzaga2-2/+2
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner4-4/+4
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot10-21/+4
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
2016-09-19Manually tweak source formatting and then re-run clang-formatYuri Kunde Schlesner4-10/+5
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot9-208/+249
2016-05-21Loader: Split SMDH into its own header and import helpers from QGameListEmmanuel Gil Peyrot3-47/+136
Also rewrite Qt wrappers to use those.
2016-05-21CitraQt: Simplify the game list loader codeEmmanuel Gil Peyrot2-14/+12
2016-05-21Loader: Add a GetFileType method to get the type of a loaded fileEmmanuel Gil Peyrot4-0/+30
2016-05-21Loader, Frontends: Refactor loader creation and game loadingEmmanuel Gil Peyrot4-47/+21
This allows frontends to keep a single loader and use it multiple times e.g. for code loading and SMDH parsing.
2016-05-07fixup simple type conversions where possibleAlexander Laties1-3/+3
2016-05-07Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).Subv1-0/+3
We do not currently implement any cores other than the AppCore (Core 0).
2016-05-06fix:return proper errorwwylele1-2/+3
2016-05-04add icon & title to game listwwylele6-23/+149
2016-04-23ncch: Use correct format specifier (for long long uint)Sam Spilsbury1-1/+1
2016-04-16core: Clean out some unnecessary header includesLioncash1-5/+1
2016-04-14ncch:only decompress .code sectionwwylele1-2/+2
2016-04-05Common: Remove Common::make_unique, use std::make_uniqueMerryMage2-4/+2
2016-03-21loader: Make MakeMagic constexprLioncash1-1/+1
2016-03-08Improve error report from Init() functionsLittleWhite1-1/+0
Add error popup when citra initialization failed
2016-03-05Loader/NCCH: Log the program ID during loadingYuri Kunde Schlesner1-1/+2
This is useful for all sorts of things, but mainly to identify save folders more easily.
2016-03-03Display errors in GUI when loading ROM failedLittleWhite1-2/+3
2016-01-25elf: Don't cast away constLioncash1-3/+3
2015-10-11Loader: Change NCCH header types to be explicitly little-endianGareth Poole2-18/+17
2015-10-11Loader: Implement encryption checkGareth Poole3-2/+8
2015-10-09CitraQt, SkyEye, Loader, VideoCore: Remove newlines in LOG_* calls.Emmanuel Gil Peyrot1-2/+2
The LOG_* function itself already appends one.
2015-10-01Expose loader helper functions for identifying files.archshift2-13/+41
2015-09-21Implement 3dsx RomFSCruel3-3/+61
2015-09-10General: Fix up doxygen commentsLioncash2-2/+4
2015-08-15Properly indicate that CIA support is not implemented yetBenjamin Barenblat1-0/+4
Make `Loader::LoadFile` return an `ErrorNotImplemented` if you call it on a CIA file.
2015-08-15Give CIA file type a nameBenjamin Barenblat1-0/+2
Make `GetFileTypeString` return ‘CIA’ for CIA (CTR Importable Archive) files.
2015-07-26loader: Remove unnecessary else usagesLioncash1-9/+9
2015-07-19Core : Change variable typezawata1-1/+1
and fix various warnings
2015-07-14Loader: Fix variable type and remove unused variableYuri Kunde Schlesner1-2/+1
2015-07-14Loader: Remove unnecessary pointer indirection to IOFileYuri Kunde Schlesner8-48/+48
2015-07-14FS: Stream RomFS from file instead of loading all of it to memorycondut4-9/+20
2015-07-12Core: Properly configure address space when loading a binaryYuri Kunde Schlesner3-27/+123
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.
2015-07-12Loader: Clean up 3dsx loader a bit, fixing a potential buffer overrunYuri Kunde Schlesner1-13/+16
2015-07-12Loader: Make 3dsx loader logs a bit less confusingYuri Kunde Schlesner1-6/+3
2015-07-08Loader: Remove log line causing warningaroulin1-1/+0
2015-06-28CitraQt: Cleanup includes.Emmanuel Gil Peyrot3-3/+10
2015-06-28Common: Cleanup key_map includes.Emmanuel Gil Peyrot2-0/+2
2015-06-28Common: Fix FileUtil includes, and everything relying on those.Emmanuel Gil Peyrot1-0/+1
2015-05-29Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot1-1/+1
2015-05-15Core/ResourceLimits: Implemented the basic structure of ResourceLimits.Subv3-0/+13
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.
2015-05-15Memmap: Re-organize memory function in two filesYuri Kunde Schlesner4-4/+3
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.
2015-05-09Loader: Add missing includeYuri Kunde Schlesner1-0/+1
2015-05-09Memory: Re-organize and rename memory area address constantsYuri Kunde Schlesner2-3/+3
2015-05-09Loader: Remove .bin file supportYuri Kunde Schlesner2-20/+0
It is of very limited practical utility currently, and will soon be impossible to support due to more accurate memory map emulation.
2015-05-09Process: Rename StaticAddressMapping => AddressMappingYuri Kunde Schlesner4-5/+5
2015-05-09Loader/NCCH: Fix formatting of bracesYuri Kunde Schlesner1-9/+9
2015-05-09Process: Support parsing of exheader kernel capsYuri Kunde Schlesner3-0/+3
2015-05-09Kernel: Remove g_program_idYuri Kunde Schlesner3-11/+0
This has been obsoleted by the field in Process.
2015-05-09Kernel: Introduce skeleton Process class to hold process dataYuri Kunde Schlesner8-29/+88
2015-05-07Common: Remove common.hYuri Kunde Schlesner6-3/+11
2015-04-28Services/Loader: Use more sensible log formats for certain functionspurpasmart962-14/+37
along with more info being logged.
2015-03-15NCCH: Minor updates to the ncch headerpurpasmart961-11/+14
2015-02-12Build: Fixed some warningsSubv1-1/+3
2015-02-10FS: Allow multiple instances of the same archive type to be open at onceYuri Kunde Schlesner1-1/+1
2015-02-03core: Fix some warnings on OSXLioncash1-1/+1
2015-01-30Silence a few warnings.Rohit Nirmal1-2/+2
2015-01-30loader: Add missing printf argumentLioncash1-1/+1
2015-01-15Loader: Clean up the ELF AppLoader.Emmanuel Gil Peyrot2-42/+35
2015-01-15Loader: Clean up the 3DSX AppLoader.Emmanuel Gil Peyrot1-17/+24
2015-01-15Loader: Clean up the NCCH AppLoader.Emmanuel Gil Peyrot1-51/+48
2015-01-15Loader: Display the type of the file being loaded.Emmanuel Gil Peyrot1-3/+23
2015-01-15Loader: Guess filetype from the magic, or fallback to the extension.Emmanuel Gil Peyrot8-26/+112
2015-01-15Loader: Don’t assume the file hasn’t been read before.Emmanuel Gil Peyrot3-4/+13
2015-01-15Loader: Keep a reference to the file and pass it to the correct AppLoader, instead of loading it multiple times.Emmanuel Gil Peyrot8-176/+116
2015-01-15Loader: Initialize the default NCCH values in the class declaration, not in the constructor.Emmanuel Gil Peyrot2-8/+4
2015-01-15Loader: Remove the useless THREEDSXReader class.Emmanuel Gil Peyrot1-10/+4
2015-01-15Loader: Never forget to change is_loaded.Emmanuel Gil Peyrot6-7/+15
2015-01-15Loader: Don’t duplicate the docstring into the cpp file.Emmanuel Gil Peyrot4-56/+0
2015-01-15Loader: Fix indentation, whitespace, and a few other such cosmetic stuff.Emmanuel Gil Peyrot2-26/+24
2015-01-05Fix correct espaceDante384901-2/+2
2015-01-05Add support load 3DS roomDante384901-0/+2
2015-01-03elf: Make DidRelocate constLioncash1-1/+1
2014-12-21License changepurpasmart968-10/+10
2014-12-20Clean up some warningsChin1-3/+1
2014-12-20Common: Add a clone of std::make_uniqueYuri Kunde Schlesner1-2/+4
2014-12-18Filesystem/Archives: Implemented the SaveData archiveSubv3-0/+11
The savedata for each game is stored in /savedata/<ProgramID> for NCCH files. ELF files and 3DSX files use the folder 0 because they have no ID information Got rid of the code duplication in File and Directory Files that deal with the host machine's file system now live in DiskFile, similarly for directories and DiskDirectory and archives with DiskArchive. FS_U: Use the correct error code when a file wasn't found
2014-12-16FS.Archive: Clean up treatment of archives and their handlesYuri Kunde Schlesner1-1/+1
- Refactor FS::Archive internals to make Archive creation and lifetime management clearer. - Remove the "Archive as a File" hack. - Implement 64-bit Archive handles.
2014-12-16Service.FS: Do archive registration using IdCode instead of nameYuri Kunde Schlesner1-1/+1
2014-12-16HLE: Rename namespaces to match move & fix initialization orderYuri Kunde Schlesner1-1/+1
2014-12-16HLE: Move kernel/archive.* to service/fs/Yuri Kunde Schlesner2-2/+2
2014-12-13Convert old logging calls to new logging macrosYuri Kunde Schlesner4-35/+35
2014-12-08Loader: Add 3DSX supportichfly4-0/+276
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot3-6/+6
2014-11-18core: Mark some hle functions as staticLioncash1-2/+2
These functions are not referred to by their linkage name outside of the translation unit, so they can be marked as static.
2014-09-17Common: Rename the File namespace to FileUtil, to match the filename and prevent collisions.Emmanuel Gil Peyrot3-5/+5
2014-09-09core: Prune redundant includesarchshift1-1/+0
2014-09-09Added string_util to common, small changes in loader.cpparchshift1-16/+15
2014-09-09loader.cpp: improved file extension checking, made Upper/LowerStr usefularchshift1-6/+8
Instead of forcibly taking the last 4 characters, it now finds the last extension separator (the period) and takes a substr of its location.
2014-09-06ncch: Remove C-style struct typedefsLioncash1-4/+4
In C++ you can simply just declare it as is.
2014-09-06ncch: inline declare some variables in LZSS_DecompressLioncash1-7/+5
2014-08-31Loader: Added support for loading raw BIN executables.bunnei2-0/+21
- Useful for debugging homebrew Qt: Updated GUI to support loading .bin files.
2014-08-28Loader: Added support for loading raw BIN executables.bunnei2-0/+21
- Useful for debugging homebrew Qt: Updated GUI to support loading .bin files.
2014-07-05NCCH: Updated ExeFS memory allocation to be safer.bunnei2-1/+7
2014-07-05Marked AppLoader_ELF, AppLoader_NCCH, and Archive_RomFS virtual functions as "override".bunnei2-9/+9
2014-07-05Marked AppLoader_ELF, AppLoader_NCCH, and Archive_RomFS classes as "final"bunnei2-2/+2
2014-07-05Loader: Updated read methods to be constbunnei3-66/+77
- Required "file" handle to be made local and explicitly opened/closed as needed
2014-07-05FileSys: Added preliminary support for applications reading the RomFS archive.bunnei1-4/+11
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-27Loader: Refactored interface such that data is no longer stored by loader.bunnei3-96/+73
NCCH: Removed extra qualification ‘Loader::AppLoader_NCCH::’.
2014-06-25Loader: Refactored loading functions to only read data from binary if called.bunnei3-74/+141
NCCH: Updated LoadExec to use Memory::WriteBlock function to load binary code.
2014-06-25ELF: Refactored LoadInto(..) to use memcpy, removed unnecessary code.bunnei1-19/+8
2014-06-25Loader: Refactored use of const.bunnei6-20/+19
2014-06-25NCCH: Added RomFS loading.bunnei2-1/+36
2014-06-25NCCH: Fixes reduce unnecessary logging and load logo/banner/etc. sections correctly.bunnei3-22/+29
Loader: Added ErrorNotUsed ReturnStatus type to specify when something is not used.
2014-06-25Loader: Implemented AppLoader interface for abstracting application loading.bunnei6-523/+672
- 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-17NCCH: Changed decompression to load .code directly into memory rather than an intermediate buffer.bunnei1-9/+3
2014-06-17Elf: Removed unused macros, changed #include of "common.h" to just "common_types.h".bunnei1-117/+1
2014-06-17Loader: Cleaned up and removed unused code, refactored ELF namespace.bunnei4-209/+70
2014-06-17Elf: Renamed modules to be consistent with new loader naming, fixed tabs -> spaces.bunnei5-357/+332
2014-06-17Loader: Added support for booting NCCH executables.bunnei3-0/+374
NCCH: Fixed typo in printing NCCH filename.
2014-06-17Loader: Moved elf and loader modules to a "loader" subdirectory.bunnei5-0/+805