Commit Graph

5515 Commits

Author SHA1 Message Date
ae7240a2cb Merge pull request #3097 from ds84182/round-primary-color-swrast
Round primary color in swrast
2017-12-11 20:06:21 -05:00
5c802d35ef Merge pull request #3262 from lioncash/warn
common/core: Silence initialization order warnings
2017-12-11 19:52:53 +00:00
1e3113b1b2 Merge pull request #3251 from Subv/fs_numseeds
HLE/FS: Stubbed GetNumSeeds to always return 0 seeds.
2017-12-11 14:13:10 -05:00
4a3d7863fa Merge pull request #3250 from Subv/news_notifications
HLE/News: Stubbed GetTotalNotifications to always return 0 notifications.
2017-12-11 14:12:22 -05:00
87ac05a575 Merge pull request #3271 from lioncash/retval
ncch: Add missing return statement in ReadUpdateRomFs
2017-12-11 02:25:35 -05:00
422c7b29b0 Merge pull request #3266 from lioncash/qt-bootmgr
bootmanager: Minor tidiness/correctness changes
2017-12-11 01:53:35 -05:00
eb58dbda32 ncch: Add missing return statement in ReadUpdateRomFs 2017-12-11 01:33:08 -05:00
660accc92f Merge pull request #3263 from lioncash/pessimizing-move
input_common/sdl: Silence a -Wpessimizing-move warning
2017-12-10 21:18:17 -05:00
e439725271 bootmanager: Make EmuThread's IsRunning() member function const 2017-12-10 20:12:47 -05:00
c06f7978ac bootmanager: In-class initialize EmuThread's boolean member variables
Trims down the initializer list a little.
2017-12-10 20:11:35 -05:00
1f186be030 input_common/sdl: Silence a -Wpessimizing-move warning
Moving when returning by value can inhibit copy elision.
2017-12-10 19:53:57 -05:00
c31f932afe common/core: Silence initialization order warnings 2017-12-10 19:50:45 -05:00
9699194b54 Merge pull request #3258 from yuriks/gs-cleanup
Small GS cleanups
2017-12-10 17:21:04 -05:00
2146311ad1 Merge pull request #3091 from Subv/hle_request_delat
Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation.
2017-12-10 19:59:19 +01:00
0ac82af50f HLE/FS: Stubbed GetNumSeeds to always return 0 seeds.
We don't yet implement the SEEDDB store.
This number is supposed to be modified by the AddSeed function (0x087A0180) but there's too little info about it on 3dbrew.
2017-12-10 13:08:04 -05:00
98e3872353 Kernel/IPC: Use 39 microseconds for the SendSyncRequest delay approximation.
As measured by the time it takes for to return when performing the SetLcdForceBlack IPC request to the GSP:GPU service in a n3DS with firmware 11.6

See https://gist.github.com/ds84182/ecdbbd25b56a29bd4e5b32a7544b8e92 for the source code of the test.
2017-12-10 13:00:05 -05:00
c72262d7e3 Merge pull request #3246 from Steveice10/pxidev
HLE: Add pxi:dev stub.
2017-12-10 12:21:35 -05:00
2859b98884 Merge pull request #3234 from Subv/dlp2
HLE/FS: Implemented FS::GetProgramLaunchInfo.
2017-12-10 08:58:08 -05:00
951b023a3d Merge pull request #3259 from lioncash/init-order
ac: Correct constructor initialization order
2017-12-10 08:46:11 -05:00
312281fd61 Merge pull request #3256 from yuriks/move-svc
HLE: Move svc.cpp to kernel/
2017-12-10 01:13:46 -05:00
e472858bc8 cryptopp: Move some source files to beginning of list
This is recommended by the Crypto++ readme:
2d4614084a/Readme.txt (L188-L193)
2017-12-09 21:35:02 -08:00
87ff37fa95 cryptopp: Add two extra files to source list
For some reason these are required too in MSVC Debug.
2017-12-09 21:34:52 -08: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
176ed77506 Merge pull request #3255 from yuriks/trim-cryptopp
cryptopp: Build only required files
2017-12-09 21:07:58 -05:00
7b2d7c5d9b cryptopp: Build only required files
Instead of globbing all .cpp files that ship with CryptoPP, use an
explicit list of files to compile. This cuts out compilation of a lot of
stuff we don't use (reducing build times) and also works around
https://github.com/weidai11/cryptopp/issues/527
2017-12-09 17:42:53 -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
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
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
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
af45f2b2de Merge pull request #3241 from wwylele/process-info-fix
svc: correct GetProcessInfo(20)
2017-12-08 13:13:26 -07: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
065ae0606b Merge pull request #3238 from lioncash/svc-name
svc: Provide names for svc 0x59 and 0x5A
2017-12-08 09:00:36 -05: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