Zach Hilman
d2d7eacee7
core/loader: Track the NSO build ID of the current process
2019-09-30 17:21:53 -04:00
Zach Hilman
0084098c9b
nso: Pass build ID directly
...
As opposed to converting to string and then back to hex array
2019-09-21 21:44:22 -04:00
Zach Hilman
c3ad37b707
yuzu: Port old usages of Filesystem namespace to FilesystemController
2019-09-21 16:43:10 -04:00
David
95f4d78e87
Merge pull request #2576 from DarkLordZach/nsp-fix-1
...
nsp: Fix various errors with loading and processing of extracted NSPs
2019-09-21 20:05:24 +10:00
Nick Renieris
1017fa7b1d
nro: Implement ReadControlData
...
With this, the "Developer" field in the Properties for homebrew is now populated.
Signed-off-by: Nick Renieris <velocityra@gmail.com>
2019-09-08 00:40:21 +03:00
Fernando Sahmkow
5bce8f62ac
VM_Manager: Align allocated memory to 256bytes
...
This commit ensures that all backing memory allocated for the Guest CPU
is aligned to 256 bytes. This due to how gpu memory works and the heavy
constraints it has in the alignment of physical memory.
2019-07-19 10:06:08 -04:00
Bakugo
81c1c139fe
file_sys: Rename other ContentRecordType members
2019-07-02 00:57:23 +01:00
bunnei
a43061206c
Merge pull request #2546 from DarkLordZach/kips
...
loader, file_sys: Add support for parsing and loading KIP (Kernel Internal Process) files
2019-06-21 14:28:18 -04:00
bunnei
36090e6a67
Merge pull request #2482 from DarkLordZach/prepo
...
core: Add detailed local reporting feature for development
2019-06-21 14:05:18 -04:00
Lioncash
59d55c8137
common/hex_util: Combine HexVectorToString() and HexArrayToString()
...
These can be generified together by using a concept type to designate
them. This also has the benefit of not making copies of potentially very
large arrays.
2019-06-12 17:54:05 -04:00
Zach Hilman
e62e715ac2
nsp: Correct status codes for extracted NSPs
...
Avoids all extracted NSPs being marked as error file type because they don't have program NCAs.
2019-06-10 00:21:41 -04:00
Zach Hilman
5231fb95e6
nsp: Use title ID from NPDM metadata for extracted type NSPs
...
Avoids 0 being used as title ID for all extracted NSPs.
2019-06-10 00:19:23 -04:00
Zach Hilman
ae00309771
kernel_executable: Optimize BLZ decompression
2019-06-06 19:20:15 -04:00
Zach Hilman
70c78f611b
Merge pull request #2526 from lioncash/global
...
core/telemetry_session: Remove usages of the global system accessor
2019-06-05 15:57:48 -04:00
Zach Hilman
fd67e22b25
loader: Add recognition for KIP file type
2019-06-05 00:22:07 -04:00
Zach Hilman
ef42e591df
loader: Add KIP and INI file parser-specific errors
2019-06-05 00:21:44 -04:00
Zach Hilman
6fb2fa51eb
loader: Add AppLoader_KIP for KIP files
2019-06-05 00:21:17 -04:00
Lioncash
7dd4fbf551
core/loader: Remove LoadKernelSystemMode
...
This is a hold-over from Citra and doesn't apply to yuzu.
2019-05-28 22:28:44 -04:00
Zach Hilman
227430a157
loader: Move NSO module tracking to AppLoader
...
Also cleanup of general stuff
2019-05-26 11:40:46 -04:00
Lioncash
fc1d10d33a
loader/nso: Silence sign-comparison warning
...
This was previously performing a size_t == int comparison. Silences a
-Wsign-compare warning.
2019-05-25 16:53:33 -04:00
Zach Hilman
c1475193ba
core: Track load offsets of NSO modules
...
Needed for backtrace decomposition
2019-05-25 16:06:53 -04:00
Lioncash
32b833632b
loader/nso: Remove left-in debug pragma
...
Unintentionally introduced in d6744d9b06
2019-04-30 22:55:53 -04:00
Lioncash
e49ee38660
core/core: Move process execution start to System's Load()
...
This gives us significantly more control over where in the
initialization process we start execution of the main process.
Previously we were running the main process before the CPU or GPU
threads were initialized (not good). This amends execution to start
after all of our threads are properly set up.
2019-04-11 22:11:41 -04:00
bunnei
53c9e7aab2
Merge pull request #1957 from DarkLordZach/title-provider
...
file_sys: Provide generic interface for accessing game data
2019-04-09 19:16:37 -04:00
Lioncash
e1391a8268
core: Add missing override specifiers where applicable
...
Applies the override specifier where applicable. In the case of
destructors that are defaulted in their definition, they can
simply be removed.
This also removes the unnecessary inclusions being done in audin_u and
audrec_u, given their close proximity.
2019-04-04 12:19:44 -04:00
bunnei
c92c6f2d5b
Merge pull request #2093 from FreddyFunk/disk-cache-better-compression
...
Better LZ4 compression utilization for the disk based shader cache and the yuzu build system
2019-04-03 21:50:29 -04:00
bunnei
cde2af1b1d
Merge pull request #2281 from lioncash/memory
...
kernel/codeset: Make CodeSet's memory data member a regular std::vector
2019-04-01 22:20:05 -04:00
unknown
27aac8d363
Addressed feedback
2019-03-29 18:12:42 +01:00
unknown
44e5cc7a29
core: Do not link LZ4 to core. Use common/data_compression for nso segment decompression instead.
2019-03-29 16:42:34 +01:00
Zach Hilman
d6744d9b06
patch_manager: Dump NSO name with build ID
2019-03-27 20:09:01 -04:00
bunnei
a5edb8d391
Merge pull request #2280 from lioncash/nso
...
loader/nso: Minor refactoring
2019-03-23 13:46:09 -04:00
Lioncash
b8ccd49d77
kernel/codeset: Make CodeSet's memory data member a regular std::vector
...
The use of a shared_ptr is an implementation detail of the VMManager
itself when mapping memory. Because of that, we shouldn't require all
users of the CodeSet to have to allocate the shared_ptr ahead of time.
It's intended that CodeSet simply pass in the required direct data, and
that the memory manager takes care of it from that point on.
This means we just do the shared pointer allocation in a single place,
when loading modules, as opposed to in each loader.
2019-03-22 18:43:46 -04:00
Lioncash
0097cd25a8
loader/nso: Place translation unit specific functions into an anonymous namespace
...
Makes it impossible to indirectly violate the ODR in some other
translation unit due to these existing.
2019-03-22 15:25:53 -04:00
Lioncash
b59b7084c7
file_sys/cheat_engine: Remove use of global system accessors
...
Instead, pass in the core timing instance and make the dependency
explicit in the interface.
2019-03-22 14:43:37 -04:00
Lioncash
e8791f39ae
loader/nso: Clean up use of magic constants
...
Now that the NSO header has the proper size, we can just use sizeof on
it instead of having magic constants.
2019-03-22 14:39:17 -04:00
Lioncash
be2b64e8bc
file_sys/patch_manager: Deduplicate NSO header
...
This source file was utilizing its own version of the NSO header.
Instead of keeping this around, we can have the patch manager also use
the version of the header that we have defined in loader/nso.h
2019-03-22 14:39:10 -04:00
Lioncash
cae60f2d1f
loader/nso: Fix definition of the NSO header struct
...
The total struct itself is 0x100 (256) bytes in size, so we should be
providing that amount of data.
Without the data, this can result in omitted data from the final loaded
NSO file.
2019-03-22 14:26:58 -04:00
bunnei
92870ed060
Merge pull request #1933 from DarkLordZach/cheat-engine
...
file_sys: Implement parser and interpreter for game memory cheats
2019-03-21 21:41:59 -04:00
Lioncash
70ce9f5767
kernel: Move CodeSet structure to its own source files
...
Given this is utilized by the loaders, this allows avoiding inclusion of
the kernel process definitions where avoidable.
This also keeps the loading format for all executable data separate from
the kernel objects.
2019-03-20 13:07:04 -04:00
Lioncash
2ee1a9132a
loader: Remove Linker class
...
Given the class is now currently unused, it can be removed.
2019-03-19 21:32:02 -04:00
Lioncash
55b2ab35f7
loader: Remove Linker inheritance from NRO and NSO loaders
...
Neither the NRO or NSO loaders actually make use of the functions or
members provided by the Linker interface, so we can just remove the
inheritance altogether.
2019-03-19 21:31:59 -04:00
Zach Hilman
20c46b9242
vm_manager: Remove cheat-specific ranges from VMManager
2019-03-05 10:09:36 -05:00
Zach Hilman
81f85bc280
loader/nso: Set main code region in VMManager
...
For rom directories (and by extension, XCI/NSP/NAX/NCA) this is for the NSO with name 'main', for regular NSOs, this is the NSO.
2019-03-04 18:39:58 -05:00
Zach Hilman
d8094073a2
loader: Propagate NCA logo section to ReadBanner and ReadLogo
2019-01-15 16:01:04 -05:00
Zach Hilman
f49f3e509f
web_browser: Add bounds checking to applet interface
2018-12-28 18:20:29 -05:00
Zach Hilman
af0bf947d7
loader: Add accessor for Manual RomFS
2018-12-28 15:32:39 -05:00
bunnei
25a218248a
Merge pull request #1928 from lioncash/caps
...
kernel: Handle kernel capability descriptors
2018-12-27 11:15:34 -05:00
Zach Hilman
8916266110
loader: Add accessor for game control data
2018-12-27 00:16:55 -05:00
Lioncash
b221836d5d
kernel/process: Hook up the process capability parser to the process itself
...
While we're at it, we can also toss out the leftover capability parsing
from Citra.
2018-12-21 07:05:34 -05:00
bunnei
841d21795d
Merge pull request #1819 from DarkLordZach/disable-addons
...
patch_manager: Add support for disabling patches
2018-12-10 21:52:19 -05:00