Subv
11920a6bd1
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
Subv
f2b635a73d
HLE/Archives: Allow multiple loaded applications to access their SelfNCCH 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.
2017-09-25 09:45:02 -05:00
B3n30
75f023a48b
Merge pull request #2952 from MerryMage/page-tables
...
Switchable Page Tables
2017-09-25 08:29:32 +02:00
Max Thomas
042b389b57
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
MerryMage
6b8ad273fc
memory: Add GetCurrentPageTable/SetCurrentPageTable
...
Don't expose Memory::current_page_table as a global.
2017-09-24 22:42:42 +01:00
Subv
36100ec791
Kernel/Memory: Give each Process its own page table.
...
The loader is in charge of setting the newly created process's page table as the main one during the loading process.
2017-09-10 15:13:41 -05:00
B3n30
95fd4a5e9d
Added missing parts in libnetwork ( #2838 )
...
* Network: Set and send the game information over enet
Added Callbacks for RoomMember and GetMemberList to Room in preparation for web_services.
2017-08-19 11:14:33 -06:00
bunnei
e5f2839605
loader: Expose program title.
2017-08-03 20:10:37 -04:00
bunnei
b2bfbf5120
telemetry: Log performance, configuration, and system data.
2017-07-17 21:32:28 -04:00
TheKoopaKingdom
e0f8f75f43
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
TheKoopaKingdom
b817071212
Created a whitelist of system archives to prevent false positives creating dialogs.
2017-06-02 18:28:14 -04:00
TheKoopaKingdom
cee9b78a15
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
TheKoopaKingdom
1b9c3436ab
Fixed encrypted ROM error messages.
2017-06-02 18:25:32 -04:00
bunnei
68100e88e0
telemetry: Log a few simple data fields throughout core.
2017-05-24 19:16:23 -04:00
Yuri Kunde Schlesner
88fddcbce4
Remove ability to load symbol maps
...
This was now mostly unused except by thread creation, which used a
symbol of the entrypoint, if available, to name the thread.
2017-05-07 15:33:07 -07:00
wwylele
6b607c4b72
loader/ncch: less verbose log for loading game list. only log program ID when booting
2017-03-08 17:37:24 +02:00
wwylele
d3f36956e1
loader: lower file name logging level
2017-03-08 17:25:09 +02:00
Mat M
dc1927a9d1
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
wwylele
05a989965a
loader: use self NCCH archive
2017-02-13 13:57:38 +02:00
Thomas Farr
c1d05a2df5
loader: Add support for 3DSX special relocation types, fixes citra-emu/citra#2449
...
As per devkitPro/3dstools@47bea18
2017-01-19 01:34:58 +13:00
Jonathan Hao
1df720ed08
Fix some warnings ( #2399 )
2017-01-04 13:48:29 -03:00
bunnei
7b3737d9bd
Merge pull request #2240 from wwylele/auto-region
...
Config: auto-select region and language
2016-12-29 22:09:01 -05:00
bunnei
fdcff791c3
loader: Remove duplicate docstrings.
2016-12-21 23:27:50 -05:00
MerryMage
af97174940
loader: Implement ReadProgramId
2016-12-15 18:42:38 +00:00
wwylele
a88ec032cd
Config: auto-select region and language
2016-12-07 20:52:42 +02:00
Subv
7adac27868
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
Subv
d00d0d61e0
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
Ricardo de Almeida Gonzaga
07fdcf150d
Fix typos
2016-10-20 12:26:59 -02:00
Yuri Kunde Schlesner
fa5d9d8266
Use negative priorities to avoid special-casing the self-include
2016-09-21 00:15:56 -07:00
Emmanuel Gil Peyrot
1138ec0d49
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
Yuri Kunde Schlesner
1e4a5da9f4
Manually tweak source formatting and then re-run clang-format
2016-09-18 21:14:25 -07:00
Emmanuel Gil Peyrot
628ed4376a
Sources: Run clang-format on everything.
2016-09-18 09:38:01 +09:00
Emmanuel Gil Peyrot
3272e30eec
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
Emmanuel Gil Peyrot
e52461f648
CitraQt: Simplify the game list loader code
2016-05-21 17:09:59 +01:00
Emmanuel Gil Peyrot
85a4eea460
Loader: Add a GetFileType method to get the type of a loaded file
2016-05-21 17:09:59 +01:00
Emmanuel Gil Peyrot
b0095b9584
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
bunnei
fe04d0f1cc
Merge pull request #1766 from Subv/log_cpu
...
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1)
2016-05-08 15:03:08 -04:00
Alexander Laties
17e9bc5392
fixup simple type conversions where possible
2016-05-07 11:41:55 -04:00
Subv
bfee7941e3
Kernel/Threading: Warn when a thread can be scheduled in the Syscore (Core 1).
...
We do not currently implement any cores other than the AppCore (Core 0).
2016-05-07 10:23:03 -05:00
wwylele
d999f3d0de
fix:return proper error
2016-05-06 21:42:13 +03:00
wwylele
a23e3f1cd5
add icon & title to game list
2016-05-04 13:02:49 +03:00
Sam Spilsbury
44a7dad1e4
ncch: Use correct format specifier (for long long uint)
2016-04-23 11:54:02 +08:00
Lioncash
0e86c22c25
core: Clean out some unnecessary header includes
2016-04-16 00:08:49 -04:00
wwylele
5ce844dff6
ncch:only decompress .code section
2016-04-14 18:33:42 +03:00
Mathew Maidment
3cf5e4d51c
Merge pull request #1643 from MerryMage/make_unique
...
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 20:10:11 -04:00
MerryMage
9f9c987924
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 13:31:17 +01:00
Lioncash
327d85b039
loader: Make MakeMagic constexpr
2016-03-21 03:28:22 -04:00
bunnei
ceed7d1030
Merge pull request #1344 from LittleWhite-tb/error-output
...
Output errors in GUI
2016-03-08 23:12:04 -05:00
LittleWhite
59fe02348a
Improve error report from Init() functions
...
Add error popup when citra initialization failed
2016-03-08 22:05:25 +01:00
Yuri Kunde Schlesner
990a3e6038
Loader/NCCH: Log the program ID during loading
...
This is useful for all sorts of things, but mainly to identify save
folders more easily.
2016-03-04 23:53:10 -08:00