Zach Hilman
940a711caf
filesystem: Add LayeredFS VFS directory getter
2018-09-21 19:53:33 -04:00
Zach Hilman
50a470eab8
bis_factory: Add mod directory VFS getter
2018-09-21 19:53:33 -04:00
Zach Hilman
16188acb50
patch_manager: Add LayeredFS mods support
2018-09-21 19:53:33 -04:00
Zach Hilman
44fdac334c
vfs_concat: Rewrite and fix ConcatenatedVfsFile
2018-09-21 19:53:33 -04:00
Zach Hilman
3e5c3d0f16
vfs_layered: Add LayeredVfsDirectory
...
Reads multiple dirs through as if a waterfall.
2018-09-21 19:53:05 -04:00
Zach Hilman
b52343a428
vfs_vector: Add VectorVfsFile
...
Maps a vector into the VFS interface.
2018-09-21 19:53:05 -04:00
Zach Hilman
c65d4d119f
vfs_static: Add StaticVfsFile
...
Always returns the template argument byte for all reads. Doesn't support writes.
2018-09-21 19:53:05 -04:00
Zach Hilman
f68e324672
vfs: Add and rewite VfsRawCopy functions
2018-09-21 19:53:05 -04:00
Zach Hilman
d6cbb3a3e0
vfs: Add GetEntries method
...
Maps name string to directory or file.
2018-09-21 19:53:05 -04:00
Lioncash
48b2eda492
svc: Move most process termination code to its own function within Process
...
Reduces the use of Process class members externally and keeps most code
related to tearing down a process with the rest of the process code.
2018-09-21 06:07:41 -04:00
Lioncash
acfc801d14
thread/process: Move TLS slot marking/freeing to the process class
...
Allows making several members of the process class private, it also
avoids going through Core::CurrentProcess() just to retrieve the owning
process.
2018-09-21 03:50:12 -04:00
David
1db1e013e0
Added support for uncompressed NSOs ( #1374 )
...
* Added support for uncompressed NSOs
* Moved compressed section check to NsoHeader
2018-09-21 00:39:30 -04:00
bunnei
0285ddfbd4
Merge pull request #1372 from lioncash/thread
...
kernel/thread: Use owner_process when setting the page table in SetupMainThread()
2018-09-20 23:35:29 -04:00
bunnei
072053ab95
Merge pull request #1371 from lioncash/fwd-arm
...
arm_interface: Replace kernel vm_manager include with a forward declaration
2018-09-20 23:35:06 -04:00
bunnei
c1c59617ad
Merge pull request #1364 from lioncash/content
...
file-sys: Default heavy-weight class destructors in the cpp file
2018-09-20 23:31:31 -04:00
bunnei
b0b57c21e6
Merge pull request #1368 from ogniK5377/nifm-fix
...
Added IRequest::Submit
2018-09-20 23:30:11 -04:00
David Marcec
b918925bd5
Revert GetRequestState
...
Even though setting this value to 3 is more correct. We break more games than we fix due to missing implementations. We should keep this as 0 for the time being
2018-09-21 12:15:49 +10:00
Lioncash
05aa4aa01a
kernel/thread: Use owner_process when setting the page table in SetupMainThread()
...
The owning process of a thread is required to exist before the thread,
so we can enforce this API-wise by using a reference. We can also avoid
the reliance on the system instance by using that parameter to access
the page table that needs to be set.
2018-09-20 21:10:00 -04:00
Lioncash
9b8fc2b689
arm_interface: Replace kernel vm_manager include with a forward declaration
...
Avoids an unnecessary inclusion and also uncovers three places where
indirect inclusions were relied upon, which allows us to also resolve
those.
2018-09-20 19:35:36 -04:00
Mat M
f237265187
Merge pull request #1370 from Hedges/GDBClean
...
Correct endianness of BRK
2018-09-20 17:25:56 -04:00
Mat M
1e35d8fa8f
Merge pull request #1362 from MerryMage/dynarmic
...
externals: Update dynarmic to 171d116
2018-09-20 17:22:42 -04:00
Jarek Syrylak
74f966404d
Correct endianness of BKPT
2018-09-20 22:03:57 +01:00
MerryMage
ef31487624
arm_dynarmic: Halt when BRK encountered
2018-09-20 19:12:42 +01:00
David Marcec
3f49725a51
Fixed submit
2018-09-21 00:51:13 +10:00
David Marcec
cfc9fe4460
Added IRequest::Submit
...
This fixes updated versions of SMO. Currently unable to test as I don't have an updated version
2018-09-21 00:47:30 +10:00
bunnei
8fe9572271
Merge pull request #1358 from DarkLordZach/temp-storage
...
savedata_factory: Add TemporaryStorage SaveDataType
2018-09-20 10:13:38 -04:00
bunnei
0931a711de
Merge pull request #1363 from lioncash/control
...
control_metadata: Move language name array definition to the cpp file
2018-09-20 10:13:23 -04:00
bunnei
b02a1e38fa
Merge pull request #1361 from lioncash/nax
...
xts_archive/nax: Minor interface changes
2018-09-20 10:13:10 -04:00
David Marcec
583137709f
Removed unneeded event clear
2018-09-20 15:16:08 +10:00
David Marcec
335e9d18ae
Implemented NTC & IEnsureNetworkClockAvailabilityService
...
Needed because of the recent nim fixes
2018-09-20 15:14:07 +10:00
Lioncash
05ef9dfc10
file-sys: Default heavy-weight class destructors in the cpp file
...
Several classes have a lot of non-trivial members within them, or don't
but likely should have the destructor defaulted in the cpp file for
future-proofing/being more friendly to forward declarations.
Leaving the destructor unspecified allows the compiler to inline the
destruction code all over the place, which is generally undesirable from
a code bloat perspective.
2018-09-19 19:34:08 -04:00
Lioncash
3146502a12
control_metadata: Remove unnecessary else within GetLanguageEntry()
...
There's no need to indent the code here, given the if case contains a
return statement at the end of it.
2018-09-19 19:02:06 -04:00
Lioncash
05d49962b6
control_metadata: Move language name array definition to the cpp file
...
This was used in two different translation units
(deconstructed_rom_directory and patch_manager). This means we'd be
pointlessly duplicating the whole array twice due to it being defined
within the header.
2018-09-19 18:57:26 -04:00
MerryMage
3b4a158230
arm_dynarmic: Support BKPT instruction
2018-09-19 21:00:38 +01:00
Lioncash
2e5f0e5024
xts_archive: Remove unused variables from CalculateHMAC256()
...
These variables aren't used, which still has an impact, as std::vector
cannot be optimized away by the compiler (it's constructor and
destructor are both non-trivial), so this was just wasting memory.
2018-09-19 14:23:13 -04:00
Lioncash
2752183883
xts_archive: Make AsNCA() return a std::unique_ptr instead of a std::shared_ptr
...
std::shared_ptr isn't strictly necessary here and is only ever used in
contexts where the object doesn't depend on being shared. This also
makes the interface more flexible, as it's possible to create a
std::shared_ptr from a std::unique_ptr (std::shared_ptr has a
constructor that accepts a std::unique_ptr), but not the other way
around.
2018-09-19 14:22:37 -04:00
Lioncash
45195a51a7
nax: Avoid re-parsing NAX data with GetFileType()
...
An instance of the NAX apploader already has an existing NAX instance in
memory. Calling directly into IdentifyType() directly would re-parse the
whole file again into yet another NAX instance, only to toss it away
again.
This gets rid of unnecessary/redundant file parsing and allocations.
2018-09-19 14:22:37 -04:00
Lioncash
c8c4105659
nax: Avoid unnecessary calls to AsNCA() in IdentifyType()
...
AsNCA() allocates an NCA instance every time it's called. In the current
manner it's used, it's quite inefficient as it's making a redundant
allocation.
We can just amend the order of the conditionals to make it easier to
just call it once.
2018-09-19 14:22:37 -04:00
Lioncash
f272261c21
xts_archive: Ensure NAX's type member is always initialized
...
Ensures that the member always has a deterministic value.
2018-09-19 14:22:37 -04:00
Lioncash
92a98a8b19
xts_archive: Amend initializer order of NAX's constructor
...
Orders the initializer list in the same order the members would be
initialized. Avoids compiler warnings.
2018-09-19 14:22:30 -04:00
David
0432af5ad1
Reworked incorrect nifm stubs ( #1355 )
...
* Reworked incorrect nifm stubs
Need confirmation on `CreateTemporaryNetworkProfile`, unsure which game uses it but according to reversing. It should return a uuid which we currently don't do.
Any 0 client id is considered an invalid client id.
GetRequestState 0 is considered invalid.
* Fixups for nifm
2018-09-19 11:59:01 -04:00
bunnei
8dff92c5f6
Merge pull request #1359 from ogniK5377/nes
...
Fixed GetAccountId stub, Added error code for OpenDirectory and added ActivateNpadWithRevision
2018-09-19 10:01:36 -04:00
David Marcec
cbc7ad8f6d
Fixed GetAccountId stub, Added error code for OpenDirectory and added ActivateNpadWithRevision
...
With these, `Nintendo Entertainment System - Nintendo Switch Online` loads
2018-09-19 23:25:00 +10:00
Zach Hilman
dfaea55be5
savedata_factory: Add TemporaryStorage SaveDataType
...
Seems to be used by NSO NES Emulator
2018-09-19 09:06:22 -04:00
David Marcec
d06f4cfc63
Corrected SSL::SetInterfaceVersion
...
Should be a single u32
2018-09-19 16:46:11 +10:00
David Marcec
08819ec70a
Removed MakeBuilder as it's not needed anymore
2018-09-19 15:13:56 +10:00
David Marcec
6a0612f2bf
Removed the use of rp.MakeBuilder
...
Due to keeping the code style consistent in the yuzu codebase. `rb = rp.MakeBuilder(...)` was replaced with `rb{ctx, ...}`
2018-09-19 15:09:59 +10:00
bunnei
b33ce787b7
Merge pull request #1348 from ogniK5377/GetImageSize
...
Implemented IProfile::GetImageSize
2018-09-18 22:15:18 -04:00
bunnei
c9942fe46e
Merge pull request #1351 from ogniK5377/GetDefaultDisplayResolution
...
Implemented GetDefaultDisplayResolution
2018-09-18 22:13:28 -04:00
bunnei
bf957d5345
Merge pull request #1341 from lioncash/dependency
...
core/core_cpu: Replace exclusive monitor include with forward declaration
2018-09-18 22:13:05 -04:00