Commit Graph

4608 Commits

Author SHA1 Message Date
312281fd61 Merge pull request #3256 from yuriks/move-svc
HLE: Move svc.cpp to kernel/
2017-12-10 01:13:46 -05:00
bca58546b1 ac: Correct constructor initialization order
The parent class constructor will always run before the
class' initializers for member variables.
2017-12-09 23:48:40 -05:00
230a7557f1 Shader: Store AttributeBuffers in GS output buffer
This also does the output masking early at EMIT time, instead of when a
triangle is sent to the vertex handler.
2017-12-09 20:33:59 -08:00
21188f5683 HLE: Move SVC handlers to the Kernel namespace 2017-12-09 20:32:58 -08:00
0184419814 Shader: Refactor output_mask copy loop to function 2017-12-09 20:31:24 -08:00
a5aa5e2b2d Common: Simplify and optimize BitSet iterator
Instead of doing complex machinations to keep track of the current bit
index, just unset the lowest bit on each iteration, greatly simplifying
the code.
2017-12-09 20:31:23 -08:00
ae82b8d5cc Merge pull request #3232 from Dragios/add-applet-id
Services/APT: Add remaining Applet IDs
2017-12-09 21:12:25 -05:00
ad71e23f23 HLE: Move svc.{cpp,h} to kernel/ 2017-12-09 18:10:47 -08:00
7d038b9bd8 HLE/FS: Implemented FS::GetProgramLaunchInfo.
This function is used by the DLP system module during the DLPSRVR initialization.
2017-12-09 18:46:34 -05:00
8b864a74e9 Add new AppID (eShop) 2017-12-10 07:38:56 +08:00
ebb731b9a1 Fill up the rest of Applet IDs 2017-12-10 07:38:23 +08:00
25afbe5707 Merge pull request #3254 from lioncash/fs
file_sys: std::move data argumnets in the constructor where applicable
2017-12-09 23:35:08 +00:00
16b26e73c9 HLE: Add pxi:dev stub. 2017-12-09 14:45:56 -08:00
11705857cd file_sys: std::move the vector in NCCHFile's constructor
Avoids making unnecessary copies of the source vector's data.
2017-12-09 14:33:09 -05:00
370d77f13a file_sys: std::move std::shared_ptr instances in constructors where applicable
By default, a regular copy requires an atomic increment and decrement. A
move avoids this from occurring, which makes sense when the constructor
is taking the shared_ptr by value.
2017-12-09 14:33:04 -05:00
a709e6528e Merge pull request #3242 from Subv/extdata
HLE/FS: Always use 0x48000 as the high dword when opening the SharedExtData archive
2017-12-09 10:18:30 -07:00
8e9b55e939 NCCH: Load the "logo" file from the specified offset if it's present instead of the ExeFS.
This is "new" behavior as of firmware 5.0.0-11, older titles have the logo offset and size set to 0, indicating that the logo is stored in the ExeFS.
2017-12-09 12:17:02 -05:00
a5b7a1fa7a Merge pull request #3247 from muemart/crash
Fix crash when loading an unsupported file
2017-12-09 09:49:24 -07:00
dd0bd5520d HLE/News: Stubbed GetTotalNotifications to always return 0 notifications.
This prevents an invalid read loop on games that call it.
2017-12-09 11:28:57 -05:00
35b1306941 ir_user: convert to ServiceFramework 2017-12-09 18:14:51 +02:00
4812e98e05 ir_rst: convert to ServiceFramework
also fix the wrong header in Shutdown
2017-12-09 18:14:51 +02:00
53741c6ebd Add translation support for button labels 2017-12-09 16:11:17 +01:00
bac776439b Fix crash when loading an unsupported file.
The telemetry stuff isn't properly initialized when loading fails, resulting in a crash.
2017-12-09 15:59:21 +01:00
f3e41fe941 ir_u: convert to ServiceFramework 2017-12-09 12:34:23 +02:00
b54e278eeb FS/ExtData: Use the ExtSaveDataArchivePath structure instead of reinterpret_cast. 2017-12-09 00:17:43 -05:00
37cb18358b HLE/FS: Always use 0x48000 as the high dword when opening the SharedExtData archive
The FS module overrides whatever value was in the saveid high dword with 0x48000 when trying to open the archive.

This fixes the problem where the Home Menu would create a few SharedExtData archives with 0x48000 as the saveid high, but then try to open them with 0 as the high value and fail.
2017-12-09 00:16:51 -05:00
5026480b36 svc: correct GetProcessInfo(20) 2017-12-08 21:28:48 +02:00
69caf8c5dc Merge pull request #3236 from Tilka/block_name
cfg: refer to ConsoleModelBlockID by name
2017-12-08 09:01:22 -05:00
441a9b5622 Add button labels for sdl joystick mappings 2017-12-08 13:08:42 +01:00
07acc6ceab cam: convert to ServiceFramework 2017-12-08 11:20:48 +02:00
6752576de9 cfg: refer to ConsoleModelBlockID by name 2017-12-08 06:56:00 +00:00
e90daa6a4f Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation.
In a real 3DS, threads that call svcSyncRequest are put to sleep until the server responds via svcReplyAndReceive. Our HLE services don't implement this mechanism and are effectively immediate from the 3DS's point of view. This commit makes it so that we at least simulate the IPC delay.

Specific HLE handlers might need to put their callers to sleep for a longer period of time to simulate IO timings. This is their responsibility but doing so is currently not implemented.

See https://gist.github.com/ds84182/4a7690c5376e045cab9129ca4185bbeb for a test that was not passing before this commit.
2017-12-07 22:40:15 -05:00
ff96c5dba0 svc: Provide names for svc 0x59 and 0x5A
Updated according to 3dbrew.
2017-12-07 22:14:55 -05:00
040006fa6b Merge pull request #3159 from FearlessTobi/really-fix-fullscreen
citra-qt : Fix a bug in our fullscreen implementation
2017-12-07 11:32:28 -05:00
2b907dadf4 cro_helper: add todo about process handle 2017-12-07 16:20:15 +02:00
9749a43cc4 ldr_ro: create per-client storage; pass process where needed 2017-12-07 16:01:01 +02:00
8e4e663113 memory: add overload with process parameter for ZeroBlock and CopyBlock 2017-12-07 15:59:54 +02:00
de8dbbf0b6 ldr_ro: convert to ServiceFramework 2017-12-07 15:59:54 +02:00
088c8521bf dyncom: Remove unnecessary includes 2017-12-07 00:02:55 -05:00
1f36472fff Merge pull request #3229 from lioncash/decode
arm_dyncom_dec: Hide the decoding table from external view
2017-12-06 22:46:01 -05:00
77493860ca Merge pull request #3228 from lioncash/explicit
arm: Make CPU backend constructors explicit
2017-12-06 22:44:39 -05:00
d8ba07a430 Merge pull request #3227 from MerryMage/cro
Allow for partial invalidation of instruction cache
2017-12-06 22:43:58 -05:00
ab857f5e45 arm_dyncom_dec: Hide the decoding table from external view
This isn't used externally anywhere (and really shouldn't be).
2017-12-06 20:55:52 -05:00
982039be95 arm_dynarmic_cp15: Add missing header guard 2017-12-06 19:51:46 -05:00
e960628a14 arm: Make CPU backend constructors explicit
Avoids implicit conversions
2017-12-06 19:37:56 -05:00
a9af4be363 ldr_ro: Use ranged instruction cache invalidation 2017-12-06 20:59:09 +00:00
647e553f64 ARM_Interface: Allow for partial invalidation of instruction cache 2017-12-06 20:57:55 +00:00
4b1253b51a Merge pull request #3226 from Subv/arbiter_timeout
HLE/AddressArbiter: Remove threads that were awoken by timeout from an Arbiter's waitlist
2017-12-06 12:11:23 -05:00
8c16b90eae HLE/AddressArbiter: Remove threads that were awoken by timeout from the arbiter's waitlist when using WaitIfLessThanWithTimeout and DecrementAndWaitIfLessThanWithTimeout.
Fixes a regression introduced in #3096
2017-12-06 09:06:45 -05:00
b9db9af9e8 fixup! Applet: Print unknown AppletId on ASSERT 2017-12-06 13:52:21 +01:00