Zach Hilman
c6ff4a6f4d
yuzu: Port old usages of Filesystem namespace to FilesystemController
2019-09-21 16:43:10 -04:00
David
25383b9ff2
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
bfc5bacecd
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
9bede4eeed
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
b50557d1f0
file_sys: Rename other ContentRecordType members
2019-07-02 00:57:23 +01:00
bunnei
e2f7933b3f
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
96412848a9
Merge pull request #2482 from DarkLordZach/prepo
...
core: Add detailed local reporting feature for development
2019-06-21 14:05:18 -04:00
Lioncash
a62088539e
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
b957a4862f
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
1c75945dc4
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
9db119f8a2
kernel_executable: Optimize BLZ decompression
2019-06-06 19:20:15 -04:00
Zach Hilman
799302bc9d
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
ce9f7ac4f2
loader: Add recognition for KIP file type
2019-06-05 00:22:07 -04:00
Zach Hilman
a76bd49268
loader: Add KIP and INI file parser-specific errors
2019-06-05 00:21:44 -04:00
Zach Hilman
c3548967b1
loader: Add AppLoader_KIP for KIP files
2019-06-05 00:21:17 -04:00
Lioncash
84a8fb9264
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
b77fde7c5c
loader: Move NSO module tracking to AppLoader
...
Also cleanup of general stuff
2019-05-26 11:40:46 -04:00
Lioncash
e5159cfb84
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
2179ad7483
core: Track load offsets of NSO modules
...
Needed for backtrace decomposition
2019-05-25 16:06:53 -04:00
Lioncash
75a8b304d4
loader/nso: Remove left-in debug pragma
...
Unintentionally introduced in 552d5071fa
2019-04-30 22:55:53 -04:00
Lioncash
612e1388df
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
61f63bb994
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
5b0a9f8ba8
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
d6374b2522
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
29df6bbbd3
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
c791192d64
Addressed feedback
2019-03-29 18:12:42 +01:00
unknown
6a1a2d4aa5
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
552d5071fa
patch_manager: Dump NSO name with build ID
2019-03-27 20:09:01 -04:00
bunnei
6af322a347
Merge pull request #2280 from lioncash/nso
...
loader/nso: Minor refactoring
2019-03-23 13:46:09 -04:00
Lioncash
c0a01f3adc
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
f3297d8cd1
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
540235bb05
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
611f4666fd
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
1cf90f4570
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
90e27ea003
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
639f0c524d
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
1b6bd9d6df
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
1342c53e27
loader: Remove Linker class
...
Given the class is now currently unused, it can be removed.
2019-03-19 21:32:02 -04:00
Lioncash
ab00552118
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
52ac6419da
vm_manager: Remove cheat-specific ranges from VMManager
2019-03-05 10:09:36 -05:00
Zach Hilman
c100a4b8d4
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
b273b19576
loader: Propagate NCA logo section to ReadBanner and ReadLogo
2019-01-15 16:01:04 -05:00
Zach Hilman
cb930c4b5a
web_browser: Add bounds checking to applet interface
2018-12-28 18:20:29 -05:00
Zach Hilman
4c20a39828
loader: Add accessor for Manual RomFS
2018-12-28 15:32:39 -05:00
bunnei
795335af0f
Merge pull request #1928 from lioncash/caps
...
kernel: Handle kernel capability descriptors
2018-12-27 11:15:34 -05:00
Zach Hilman
0756f29a2c
loader: Add accessor for game control data
2018-12-27 00:16:55 -05:00
Lioncash
002ae08bbd
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
2c45c6d234
Merge pull request #1819 from DarkLordZach/disable-addons
...
patch_manager: Add support for disabling patches
2018-12-10 21:52:19 -05:00
Lioncash
de323851b4
loaders: Make GetFileType() a const qualified member function
...
No implementations actually modify instance state (and it would be
questionable to do that in the first place given the name), so we can
make this a const member function.
2018-12-05 17:49:34 -05:00
Zach Hilman
5f0217592b
loader: Add support for reading the name of game's developer
2018-12-03 17:21:25 -05:00