citra-emu
/
citra-canary
Archived
1
0
Fork 0
Commit Graph

6384 Commits

Author SHA1 Message Date
Lioncash 0a8563fb79 telemetry: Remove unnecessary Field constructor
We can just take the value parameter by value which allows both moving
into it, and copies at the same time, depending on the calling code.
2018-07-18 16:18:34 -04:00
Lioncash 3244042c4c telemetry: Make operator== and operator!= const member functions of Field
These operators don't modify internal class state, so they can be made
const member functions. While we're at it, drop the unnecessary inline
keywords. Member functions that are defined in the class declaration are
already inline by default.
2018-07-18 16:17:40 -04:00
Lioncash faa62b0d1e telemetry: Default copy/move constructors and assignment operators
This provides the equivalent behavior, but without as much boilerplate.
While we're at it, explicitly default the move constructor, since we
have a move-assignment operator defined.
2018-07-18 16:15:58 -04:00
Ben 7f1303a834 Use open source Shared Font if no dumped file is available (#3881)
* Add virtual SharedFont; Load if dumped is missing

* Move open_source_archives to externals; add readme and git hash to open_source_archives

* Updated shared font to newest version: m fixed, symbols fixed
2018-07-18 10:20:31 -06:00
James Rowe 7fa2076918
Merge pull request #3946 from zhaowenlan1779/macos-no-hw-shader
citra_qt: disable hw shader by default for macos
2018-07-18 10:07:12 -06:00
James Rowe bc30b314d8
Merge pull request #3947 from zhaowenlan1779/autofill-multiplayer
citra_qt: use Citra Web Service username as default multiplayer nickname
2018-07-18 10:02:14 -06:00
James Rowe 2f8c9c8126
Merge pull request #3831 from FearlessTobi/add-volume-slider
citra_qt: Add a volume slider
2018-07-18 09:56:47 -06:00
zhupengfei e61b7d265f
service/cfg, citra_qt: add country code configuration 2018-07-18 20:09:34 +08:00
wwylele aa02c50a2e Service/SOC: convert to ServiceFramework 2018-07-18 09:52:51 +03:00
zhupengfei bcbfac4081
configure_system: fix an untranslated text 2018-07-18 14:50:38 +08:00
James Rowe bf6da61da5
Merge pull request #3850 from zhaowenlan1779/swkbd
applets/swkbd: Software Keyboard Implementation
2018-07-17 09:02:55 -06:00
zhupengfei a9e922e68f service/fs: implement obsoleted Create/DeleteExtSaveData (#3948)
* service/fs: implement obsoleted Create/DeleteExtSaveData

* service/fs: remove the STUBBED warning
2018-07-17 17:59:42 +03:00
zhupengfei b54e3b7aa9
frontend/applets/swkbd: use system username 2018-07-17 22:42:53 +08:00
zhupengfei 82aa45d9fa
citra_qt/configuration: log on config dialog close 2018-07-17 15:33:59 +08:00
zhupengfei 250cf584e3
citra_qt: Log settings on launch 2018-07-17 15:33:58 +08:00
zhupengfei 40aea8d6b8
citra_qt: use Citra Web Service username as default multiplayer nickname 2018-07-17 15:25:00 +08:00
zhupengfei a398bceb93
citra_qt: disable hw shader by default for macos
Also show an warning when turning it on.
2018-07-17 10:07:02 +08:00
Merry 47d283a1e4
Merge pull request #3909 from MerryMage/rm-SetDevice
sink_details: Tidy-up device listing code
2018-07-12 20:49:29 +01:00
MerryMage 7d642b25e9 sink: Make auto device name a constant 2018-07-12 15:56:37 +01:00
NarcolepticK c39daa3c01 service/dsp: Migrate to ServiceFramework (#3915)
* service/dsp: Migrate to ServiceFramework

* service/dsp: Removed redundant buffer copy

* service/dsp: Addressed comment about pushing u32 instead of bool

* service/dsp: Fix clang format

* service/dsp: Addressed comment about minimizing global state

* service/dsp: Addressed comments and fixed log call issue

* service/dsp: Fix missed clang format
2018-07-12 17:54:26 +03:00
Weiyi Wang edcea90948
Merge pull request #3921 from B3n30/fixGetStartupArgument
Fix parameter_size in APT::GetStartupArgument
2018-07-11 11:41:04 +03:00
B3n30 208e789182 Fix error log 2018-07-11 09:00:05 +02:00
朱鹏飞 aaeba160a1 telemetry: Add a few fields of UserConfig (#3927)
* telemetry: Add a few fields of UserConfig

* telemetry: change entry names a bit
2018-07-11 09:51:02 +03:00
zhupengfei dcaf4a8e83
citra_qt: Add length validation 2018-07-10 13:05:13 +08:00
zhupengfei 5407ed8b5e
citra_qt/applets/swkbd: QtKeyboard and misc fixes
* Addressed comments and removed the applet interface

* swkbd: address @lioncash's comments

* core: more fixes

** Moved registered_swkbd to System

** Removed an usused virtual

** Removed functionality of DrawScreenKeyboard

** Removed src/core/settings.h change

* swkbd: address @lioncash's 2nd review

* swkbd: update logging macro

* QtKeyboard: Make dialog modal and hide help
2018-07-10 12:49:55 +08:00
Steveice10 56488a969d am: Run clang-format and attribute TODOs. 2018-07-09 16:05:52 -07:00
wwylele 431fe444a9 gl_rasterizer: call glTextureBarrier when an image is bound to both texture and framebuffer 2018-07-09 23:11:29 +03:00
B3n30 468c689cf4 Set max parameter_size to 0x1000 2018-07-07 18:52:27 +02:00
B3n30 be1ae17c61 Fix parameter_size in GetStartupArgument 2018-07-07 18:38:38 +02:00
Weiyi Wang c1580c406d
Merge pull request #3899 from wwylele/no-double-log
citra_qt: only toggle console if the setting has been changed
2018-07-07 18:47:35 +03:00
Weiyi Wang 7c7adc64fd
Merge pull request #3898 from wwylele/shut-up-texture5
swrasterizer, gl_shader_gen: return 0.0 for Disabled texture unit 0
2018-07-07 18:45:13 +03:00
Weiyi Wang 01c4f49e75
Merge pull request #3873 from wwylele/nwm-new-framework
Service/NWM: convert to ServiceFramwework
2018-07-07 18:44:31 +03:00
Steveice10 ba35079449 am: Revert changes to content index handling. 2018-07-06 17:15:30 -07:00
Steveice10 d67f119589 am: Address review comments. 2018-07-06 14:16:15 -07:00
Steveice10 680c6e694d am: Correct reported DLC content indices. 2018-07-06 11:00:57 -07:00
Steveice10 142c2b6cfe am: Correct content index bounds in ListDLCContentInfos. 2018-07-06 10:49:13 -07:00
Steveice10 c1ef7a753a am: Add contentIndex to documentation for GetTitleContentPath. 2018-07-06 10:47:50 -07:00
Steveice10 630a1311ca am: Properly handle operations involving content indices. 2018-07-06 00:44:22 -07:00
Steveice10 932eeefff0 am: Correct definition of ContentInfo. 2018-07-05 23:27:47 -07:00
wwylele 2927c88fd3 gl_rasterizer: implement mipmap for proctex 2018-07-06 01:13:02 +03:00
fearlessTobi 6eb7ee99cd Address last review comment 2018-07-03 21:14:00 +02:00
Weiyi Wang fd5f71bcff
Merge pull request #3912 from BreadFish64/fix-conversion-warnings
fix conversion warnings
2018-07-03 21:14:01 +03:00
fearlessTobi a780f3821e citra_qt: Add a volume slider 2018-07-03 17:26:50 +02:00
Weiyi Wang 9c1c899243
Merge pull request #3911 from BreadFish64/fix-setting-change-freeze
citra-qt: optimize settings application
2018-07-03 11:08:42 +03:00
Weiyi Wang ca9603d1b1
Merge pull request #3908 from NarcolepticK/csnd-migrate-framework
service/csnd: Migrate to ServiceFramework
2018-07-03 10:37:07 +03:00
James Rowe 6a08167505
Merge pull request #3905 from valentinvanelslande/remove-return
citra_qt: Remove return
2018-07-02 20:12:55 -06:00
NarcolepticK acefa81ae3 service/csnd: Addressed comments and removed outdated information 2018-07-02 22:09:29 -04:00
NarcolepticK 84c23ce2e5 service/csnd: Fix clang format 2018-07-02 22:09:29 -04:00
NarcolepticK 1f345642c4 service/csnd: Stubbed DataCache functions 2018-07-02 22:09:29 -04:00
NarcolepticK 41d5b31a76 service/csnd: Migrate to ServiceFramework 2018-07-02 22:09:29 -04:00
James Rowe f36ff5b4c4
Merge pull request #3913 from BynariStar/patch-1
citra_qt: Remove obsolete application attribute
2018-07-02 19:52:00 -06:00
BreadFish64 5b181976ce fix conversion warnings 2018-07-02 18:45:45 -05:00
BynariStar e80ae1a5d7
citra_qt: Remove obsolete application attribute
As of Qt 5 Qt::AA_X11InitThreads no longer does anything.

See http://doc.qt.io/qt-5/qt.html
2018-07-03 01:26:54 +03:00
BreadFish64 f649c443d9 optimize settings application 2018-07-02 16:53:34 -05:00
Weiyi Wang a9f8887c93
remove trailing space 2018-07-02 19:47:41 +03:00
Weiyi Wang 4be2f12914
log/console: no need to test first call
Just let `console_shown` be initialized to the default status (console isn't shown on startup)
2018-07-02 19:39:13 +03:00
MerryMage d269beab0d sink_details: Listing available devices should be separate from sink construction 2018-07-02 14:09:17 +01:00
MerryMage ce5a5412ae sink_details: Remove unnecessary lambdas 2018-07-02 13:26:14 +01:00
MerryMage 05fc17b88a sink: Remove unnecessary SetDevice method
Unused, doesn't do anything.
2018-07-02 13:23:40 +01:00
NarcolepticK d6f86caf30 service/cecd: Addressed comment about using PushEnum instead of Push<u32> 2018-07-01 12:54:53 -04:00
NarcolepticK 37532f8a76 service/cecd: Fixed clang format 2018-06-30 23:52:45 -04:00
NarcolepticK 363d6fdb89 service/cecd: Migrate to ServiceFramework 2018-06-30 23:38:54 -04:00
Valentin Vanelslande 77b338e928
citra_qt: Remove return 2018-06-30 21:50:30 -05:00
Valentin Vanelslande b12942a231
gl_shader_gen: remove newline in logging macro 2018-06-30 19:15:15 -05:00
Valentin Vanelslande 5a60c85f58
citra_qt: add Restart to UI 2018-06-30 12:34:09 -05:00
Valentin Vanelslande 6380d52d1c
citra_qt: add Restart hotkey & menu action code 2018-06-30 12:30:56 -05:00
Valentin Vanelslande fef231dc5b
gl_shader_manager: fix macro 2018-06-30 11:24:38 -05:00
Weiyi Wang ffae5be1ea
Merge pull request #3895 from NarcolepticK/pm-migrate-framework
service/pm: Migrate to ServiceFramework
2018-06-30 13:20:31 +03:00
wwylele 810b86f451 citra_qt: only toggle console if the setting has been changed 2018-06-30 13:07:30 +03:00
wwylele 4d4b833a00 swrasterizer, gl_shader_gen: return 0.0 for Disabled texture unit 0 2018-06-30 11:36:39 +03:00
zhupengfei f23443b921
applets/swkbd: Implement DefaultCitraKeyboard 2018-06-30 08:01:50 +08:00
zhupengfei 18664c719e
frontend/applets: misc fixes
* Renamed applet to applets

* Added log classes Applet and Applet.SWKBD

* Fixes to get it compile
2018-06-30 08:01:49 +08:00
James Rowe caacefcc2e
frontend/applets: frontend swkbd base
Original commits by @jroweboy:

* Rebase out the other commit

* changing branches

* More work on stuff and things ecks DEE

Changes by @zhaowenlan1779:

* Removed #include of result.h
2018-06-30 08:01:31 +08:00
James Rowe f9a89ff410
Merge pull request #3894 from wwylele/log-finalize
Finalize logging system migration
2018-06-29 17:46:07 -06:00
Valentin Vanelslande 7ffcf71d5d
Service/DLP: IsChild: Skip parameter 2018-06-29 13:40:03 -05:00
Valentin Vanelslande 482dc91dd6
Service/DLP: Fix IsChild 2018-06-29 13:03:16 -05:00
NarcolepticK f72d114335 service/pm: Migrate to ServiceFramework 2018-06-29 10:31:56 -04:00
wwylele 0eab948728 reformat all files with clang-format 2018-06-29 16:56:12 +03:00
wwylele 7c5a76e58b log: replace all NGLOG with LOG 2018-06-29 14:18:07 +03:00
wwylele fde415968e log: remove deprecated log macros 2018-06-29 14:02:29 +03:00
NarcolepticK a1e56c1811 service/dlp: Addressed comment about what value to push 2018-06-29 04:27:37 -04:00
NarcolepticK f5f5ac2197 service/dlp: Migrate to ServiceFramework 2018-06-29 04:24:38 -04:00
Weiyi Wang fc8f997a28
Merge pull request #3874 from wwylele/ssl-new-framework
service/SSL: convert to ServiceFramework
2018-06-29 11:17:26 +03:00
NarcolepticK db75b80e22 service/mvd: Migrate to ServiceFramework (#3890)
* service/mvd: Migrate to ServiceFramework

* service/mvd: Silenced clang format
2018-06-29 11:14:49 +03:00
NarcolepticK 3e42b361b1 service/qtm: Migrate to ServiceFramework (#3892)
* service/qtm: Migrate to ServiceFramework

* service/qtm: Fix clang format
2018-06-29 11:13:56 +03:00
NarcolepticK 9ae70e733f video-core: Migrate logging macros (#3878)
* video-core: Migrate logging macros

* video-core: Fixed missed clang format

* video-core: Migrated LOG_GENERIC macro
2018-06-29 00:13:30 +03:00
Weiyi Wang 3cf5c1a5b4
Merge pull request #3889 from zhaowenlan1779/camera-ui-fix
citra_qt: Fix image file selection dialog
2018-06-28 18:36:06 +03:00
Weiyi Wang 7d535140f6
Merge pull request #3885 from wwylele/fix-fs-log
FS: fix log with incorrect type
2018-06-28 18:06:56 +03:00
NarcolepticK f96497abdb service/dsp: Migrate logging macros (#3863)
* service/dsp: Migrate logging macros

* service/dsp: Fixed width count
2018-06-28 18:05:45 +03:00
Weiyi Wang 1619b124b5
Merge pull request #3887 from NarcolepticK/gsp_lcd-migrate-framework
service/gsp: Migrate gsp_lcd to ServiceFramework
2018-06-28 18:04:04 +03:00
Weiyi Wang 80f6510355
Merge pull request #3851 from wwylele/shut-up-texture3
gl_shader_gen: lower log level of using disabled proctex
2018-06-28 18:03:05 +03:00
zhupengfei 0bd843f324
citra_qt: Fix image file selection dialog 2018-06-28 22:35:12 +08:00
NarcolepticK d25cfbc4cc service/gsp: Addressed comment about global state 2018-06-27 11:05:38 -04:00
NarcolepticK 188979b3e2 service/gsp: Migrate gsp_lcd to ServiceFramework 2018-06-27 10:40:37 -04:00
wwylele 5150de8613 FS: fix log with incorrect type 2018-06-27 17:15:01 +03:00
NarcolepticK b94cb61de8 service/gsp: Add Stub for InvalidateDataCache 2018-06-27 04:19:45 -04:00
NarcolepticK c6554f1fbc service/gsp: Fixed typo in FlushDataCache IPC::RequestParser creation 2018-06-27 04:19:45 -04:00
NarcolepticK c43f1ed088 service/gsp: Move service/gsp_lcd.* into service/gsp/ folder 2018-06-27 04:19:45 -04:00
James Rowe 5e641d16d0
Merge pull request #3834 from j-selby/fix-cpp-httplib
Update cpp-httplib for gzip + chunked encoding fixes
2018-06-26 09:57:08 -06:00
James Rowe 26254072e7
Merge pull request #3759 from degasus/TBO_upload
Rewrite texture_buffer_object handling.
2018-06-26 09:24:55 -06:00
Weiyi Wang 0a34054a16
Merge pull request #3880 from wwylele/title-fix
citra_qt: only update title from game after ensuring loaded successfully
2018-06-26 13:31:36 +03:00
wwylele 458a96bf90 citra_qt: only update title from game after ensuring loaded successfully 2018-06-24 17:30:43 +03:00
Weiyi Wang 689977bbf8
Merge pull request #3876 from NarcolepticK/kernel-migrate-logging
hle/kernel: Migrate logging macros
2018-06-24 01:34:22 +03:00
NarcolepticK ed18140daa hle/kernel: Addressed comment about obscure formating 2018-06-23 14:12:54 -04:00
Weiyi Wang fc62da57be
Merge pull request #3877 from tgsm/soc-logging-macro
Service/SOC: migrate logging macro
2018-06-23 12:24:53 +03:00
NarcolepticK c2efd49997 service/ldr: Migrate logging macros (#3867)
* service/ldr: Migrate logging macros

* service/ldr: Fix clang format

* service/ldr: Addressed comment about .c_str() equivalent .data()

* service/ldr: Fix clang format
2018-06-23 12:24:05 +03:00
tgsm 15442352fd Service/SOC: migrate logging macro 2018-06-22 21:52:29 -04:00
NarcolepticK d433a07b6b hle/kernel: Fix clang format 2018-06-22 19:20:58 -04:00
NarcolepticK a8110cfd3f hle/kernel: Migrate logging macros 2018-06-22 18:54:50 -04:00
NarcolepticK f831a08224 logging: Added NGLOG_GENERIC (needed for vm_manager) 2018-06-22 18:48:25 -04:00
wwylele b06f468049 service/SSL: convert to ServiceFramework 2018-06-22 18:52:24 +03:00
Markus Wick c4ff0ba137 renderer_opengl: Renumber all texture units.
We spend lots of texture units for our texture buffers. As they are now feed from
one buffer, there is no need to have the big gap in the list of IDs.
2018-06-22 17:21:28 +02:00
Markus Wick 46f18d6800 gl_shader_gen: Inline now constant texture buffer. 2018-06-22 17:20:55 +02:00
Markus Wick 0838c87dac gl_stream_buffer: Only flush the host buffer if anything was written.
This might happen in the new TBO upload path.
2018-06-22 17:20:55 +02:00
Markus Wick 831d4f9aeb gl_rasterizer: Use the shared texture buffer for the proctex lut. 2018-06-22 17:20:55 +02:00
Markus Wick 1ca6d2ea8d gl_rasterizer: Use the shared texture buffer for the noise, color and alpha map. 2018-06-22 17:20:55 +02:00
Markus Wick 63fb7dcc1b gl_rasterizer: Use the shared texture buffer for the fog lut. 2018-06-22 17:20:55 +02:00
Markus Wick 4679487640 gl_rasterizer: Use the shared texture buffer for the lighting lut. 2018-06-22 17:20:54 +02:00
Markus Wick 5a9cde138d gl_rasterizer: Add a new dirty flag for any lighting lut. 2018-06-22 17:17:48 +02:00
Markus Wick a8396cdbed renderer_opengl: Create shared texture buffer. 2018-06-22 17:05:40 +02:00
Markus Wick 298ebe3752 gl_rasterizer: Inline texture buffer uploads. 2018-06-22 17:04:47 +02:00
Markus Wick 8a8c6f059f gl_rasterizer: Move TBO syncing helper to one function. 2018-06-22 17:04:47 +02:00
Markus Wick 10fba63b94 gl_rasterizer: Provide texture buffer offsets.
This allows us to move all data into one TBO.
2018-06-22 17:03:38 +02:00
Weiyi Wang f50e505a5a
Merge pull request #3778 from wwylele/shadow-hw-image-load-store
gl_rasterizer: implement shadow map 2D/Cube - Image load/store version
2018-06-22 17:47:09 +03:00
Weiyi Wang 7b38bde95b
Merge pull request #3872 from NarcolepticK/applets-migrate-logging
applets: Migrate logging macros
2018-06-22 17:35:26 +03:00
wwylele 7471373058 Service/NWM: convert to ServiceFramwework 2018-06-22 17:14:23 +03:00
Weiyi Wang 64adf94ef2
Merge pull request #3871 from NarcolepticK/nwm-migrate-logging
service/nwm: Migrate logging macros
2018-06-22 16:21:34 +03:00
Weiyi Wang ed8f69614d
Merge pull request #3870 from NarcolepticK/dlp-migrate-logging
service/dlp: Migrate logging macro
2018-06-22 15:27:39 +03:00
Weiyi Wang e4b5b9daab
Merge pull request #3869 from NarcolepticK/news-migrate-logging
service/news: Migrate logging macro
2018-06-22 15:27:26 +03:00
Weiyi Wang 53ad300144
Merge pull request #3868 from NarcolepticK/ptm-migrate-logging
service/ptm: Migrate logging macros
2018-06-22 13:33:46 +03:00
NarcolepticK a42287587e service/fs: Migrate logging macros (#3866)
* service/fs: Migrate logging macros

* service/fs: Fix clang format
2018-06-22 13:33:30 +03:00
Weiyi Wang 1449f8e725
Merge pull request #3865 from NarcolepticK/applet_manager-migrate-logging
service/apt/applet_manager: Migrate logging macros
2018-06-22 13:33:12 +03:00
Weiyi Wang 199710f346
Merge pull request #3864 from NarcolepticK/am-migrate-logging
service/am: Migrate logging macros
2018-06-22 13:33:00 +03:00
Weiyi Wang ad4a943c7a
Merge pull request #3861 from NarcolepticK/y2r-migrate-logging
service/y2r: Migrate logging macros
2018-06-22 11:48:01 +03:00
Weiyi Wang c3466f38d7
Merge pull request #3860 from NarcolepticK/service-migrate-logging
service/service: Migrate logging macros
2018-06-22 11:47:49 +03:00
Weiyi Wang 274859b8ef
Merge pull request #3859 from NarcolepticK/sm-migrate-logging
service/sm: Migrate logging macros
2018-06-22 11:47:34 +03:00
NarcolepticK 584e7d71e2 service/ns: Migrate logging macros (#3857)
* service/ns: Migrate logging macros

* service/ns: Addressed comment about PRIx64

* service/ns: Missed 'x' in format when removing PRIx64
2018-06-22 11:47:02 +03:00
NarcolepticK 2d94c25265 service/cfg: Migrate logging macros (#3853)
* service/cfg: Migrate logging macros

* service/cfg: Fix clang format

* service/cfg: Addressed comment about char cast

* service/cfg: Changed to static_cast<char>
2018-06-22 11:46:22 +03:00
NarcolepticK 958d39a76f applets: Migrate logging macros 2018-06-22 04:24:54 -04:00
NarcolepticK 42b32ac1ea service/nwm: Migrate logging macros 2018-06-22 04:16:38 -04:00
NarcolepticK 3b712321b4 service/dlp: Migrate logging macro 2018-06-22 03:57:23 -04:00
NarcolepticK bd368d6921 service/news: Migrate logging macro 2018-06-22 03:55:18 -04:00
NarcolepticK db256c69a4 service/ptm: Migrate logging macros 2018-06-22 03:47:18 -04:00
NarcolepticK 428ae40728 service/apt/applet_manager: Migrate logging macros 2018-06-21 22:43:27 -04:00
NarcolepticK ccfa92a14f service/am: Migrate logging macros 2018-06-21 22:34:26 -04:00
NarcolepticK 4c67f1c7c6 service/nim: Migrate logging macros (#3856) 2018-06-21 12:20:10 +03:00
NarcolepticK 4666d0c958 service/nfc: Migrate logging macros (#3855) 2018-06-21 12:19:44 +03:00
NarcolepticK 394b626e51 service/mic: Migrate logging macros (#3854) 2018-06-21 12:19:10 +03:00
NarcolepticK a955385ec0 service/gsp: Migrate logging macros (#3852)
* service/gsp: Migrate logging macros

* service/gsp: Fix clang format
2018-06-21 12:16:10 +03:00
NarcolepticK 831e3a0b54 service/err_f: Migrate logging macros (#3849)
* service/err_f: Migrate logging macros

* service/err_f: Added static_cast<u32>
2018-06-21 12:14:59 +03:00
NarcolepticK 0525b27b19 service/y2r: Fix clang format 2018-06-21 01:28:47 -04:00
NarcolepticK 9bd4fb2f53 service/y2r: Migrate logging macros 2018-06-21 01:14:27 -04:00
NarcolepticK fcf42bbe8a service/service: Migrate logging macros 2018-06-21 00:37:06 -04:00
NarcolepticK b10d2badd0 service/sm: Migrate logging macros 2018-06-20 23:59:58 -04:00
wwylele 2f9b7bdfa9 gl_shader_gen: lower log level of using disabled proctex 2018-06-20 18:34:01 +03:00
NarcolepticK 964602dfcb service/cam: Migrate logging macros (#3848)
* service/cam: Migrate logging macros

* service/cam: Fix clang format

* service/cam: Missed one clang format fixup
2018-06-20 13:39:05 +03:00
Weiyi Wang b2cbf2403f
Merge pull request #3820 from daniellimws/core-macros-1
core: Replace logging macros
2018-06-20 13:36:48 +03:00
Weiyi Wang 3938e6c592
Merge pull request #3847 from NarcolepticK/ir-migrate-logging
service/ir: Migrate logging macros
2018-06-20 13:34:52 +03:00
Weiyi Wang 2d98b2e77a
Merge pull request #3845 from NarcolepticK/hid-migrate-logging
service/hid: Migrate logging macros
2018-06-20 13:34:41 +03:00
Weiyi Wang 9ef9e6c48e
Merge pull request #3844 from NarcolepticK/frd-migrate-logging
service/frd: Migrate logging macros
2018-06-20 13:34:32 +03:00
Weiyi Wang 0ed4d575f4
Merge pull request #3843 from NarcolepticK/csnd-migrate-logging
service/csnd_snd: Migrate logging macros
2018-06-20 13:34:15 +03:00
NarcolepticK 8c08678606 service/ir: Migrate logging macros 2018-06-20 01:09:50 -04:00
James Rowe fa5d247b43
Merge pull request #3846 from zhaowenlan1779/clang
service/ac: fix clang format
2018-06-19 19:44:23 -06:00
zhupengfei 7b4738ad33
service/ac: fix clang format 2018-06-20 09:42:39 +08:00
zhupengfei fa80ba9846
citra-qt: Improve Title Bar display 2018-06-20 09:30:29 +08:00
zhupengfei ddc97b15f4 common: Parse Nightly/Canary build version 2018-06-20 09:30:26 +08:00
NarcolepticK ad70214dbf service/hid: Migrate logging macros 2018-06-19 19:52:03 -04:00
NarcolepticK 705eb597c8 service/frd: Migrate logging macros 2018-06-19 19:46:12 -04:00
NarcolepticK a7a3718fce service/csnd_snd: Migrate logging macros 2018-06-19 19:30:59 -04:00
NarcolepticK c9737ff16c service/cecd: Migrate logging macros 2018-06-19 15:07:17 -04:00
James Rowe e27bb6394d
Merge pull request #3837 from zhaowenlan1779/aboutdialog-builddate
citra-qt: Add build date in about dialog
2018-06-19 11:57:40 -06:00
NarcolepticK f410974644 AC Migrate Logging Macros (#3838)
* service/ac: Migrate logging macros

* service/ac: Added 0x on hex

* service/ac: Changed lowercase x to uppercase X
2018-06-19 11:54:59 -06:00
zhupengfei 6c4f3257b7
citra-qt: Add build date in about dialog 2018-06-18 21:21:00 +08:00
James Rowe 574824a26c
Merge pull request #3632 from N00byKing/3dtv_botenable
Add Support for Stereoscopic 3D
2018-06-17 21:05:15 -06:00
James Rowe c39dee1569
Merge pull request #3617 from BreadFish64/multiple-game-dirs
QT: Add support for multiple game directories
2018-06-17 21:04:24 -06:00
N00byKing 74367203cf emu_window: Adapt Touchscreen to 3D Settings 2018-06-17 14:00:47 +02:00
James d184a3a1ee Update cpp-httplib for gzip + chunked encoding fixes 2018-06-14 16:00:07 +10:00
Daniel Lim Wee Soong f0ea96f144
Merge branch 'master' into core-macros-1 2018-06-11 22:30:21 +08:00
James Rowe cf9bfe0690
Merge pull request #3787 from wwylele/shader-jit-state
shader/jit: preserve integer & condition register across invocation
2018-06-09 18:38:05 -06:00
James Rowe 2dac1a9590
Merge pull request #3788 from wwylele/shader-jit-breakc
shader/jit: implement breakc
2018-06-09 18:36:46 -06:00
James Rowe 6811eda2b9
Merge pull request #3764 from zhaowenlan1779/camera-flip
camera: camera refinement
2018-06-09 14:02:50 -06:00
James Rowe a5cf5b56bd
Merge pull request #3826 from Steveice10/master
boss: Return buff_size in parameter 2 of ReceiveProperty.
2018-06-09 13:34:03 -06:00
James Rowe ad81bca8dd
Merge pull request #3819 from zhaowenlan1779/game-list-refix
game_list: fix system title display
2018-06-09 13:32:28 -06:00
Daniel Lim Wee Soong 4d2cbf271c Fix wrongly replaced arguments 2018-06-09 16:35:37 +08:00
Steveice10 e24fb768e3 boss: Return buff_size in parameter 2 of ReceiveProperty. 2018-06-08 18:12:35 -07:00
Daniel Lim Wee Soong ac4d85ca16 core/telemetry_session: Replace logging macros 2018-06-07 23:07:33 +08:00
Daniel Lim Wee Soong e633d744eb core/memory: Replace logging macros 2018-06-07 23:07:15 +08:00
Daniel Lim Wee Soong 2865d23064 core/frontend: Replace logging macros 2018-06-07 23:07:02 +08:00
Daniel Lim Wee Soong d81cacfb9e core/file_sys: Replace logging macros 2018-06-07 23:06:44 +08:00
Daniel Lim Wee Soong bef6c6d174 core/core_timing: Replace logging macros 2018-06-07 23:06:26 +08:00
Daniel Lim Wee Soong f407917eb7 core/core: Replace logging macros 2018-06-07 23:06:03 +08:00
zhupengfei cb52033133
game_list: fix system title display 2018-06-07 18:50:35 +08:00
zhupengfei 3c554153c7
StillImageCamera: fix multiple prompt 2018-06-07 14:57:07 +08:00
zhupengfei a15e4e80c6
QtMultimediaCamera: fix invalid settings 2018-06-07 14:57:07 +08:00
zhupengfei 7c48160beb
StillImageCamera: move GetFilePath to UI thread 2018-06-07 14:57:06 +08:00
zhupengfei 341c07156a
camera: Single/Double (QtMultimediaCamera) 2018-06-07 14:57:05 +08:00
zhupengfei 3cb91338e9
camera: migrate logging macros 2018-06-07 14:57:05 +08:00
zhupengfei 6e410dcef5
camera: refactor (add qt_camera_base) 2018-06-07 14:57:04 +08:00
zhupengfei 5ebd466869
camera: Add camera flip config 2018-06-07 14:57:03 +08:00
MerryMage b8c5007153 arm_dyncom_interpreter: Clear exclusive memory state after SVC call 2018-06-03 21:06:57 +01:00
wwylele b611b2934f UDS: fix RecvBeaconBroadcastData response header 2018-06-02 00:38:54 +03:00
N00byKing 523c52c708 renderer_opengl: Add Universal 3D Layout Adaption 2018-06-01 18:24:26 +02:00
jmorriz124 8c0ede544f 3dtv botenable improved (#1)
* Fixed crash when right eye isn't available

* Enabled swap screens in stereo views.  Fixed window alignment in stereo
views to handle all screen aspect ratios.

* Minor code cleanup and clang fomat updates.

* Minor cleanup of swapped and aspect ratio code
2018-06-01 17:05:29 +02:00
N00byKing d27312b816 shared_page: Remove Get3DSliderstate 2018-06-01 17:05:29 +02:00
N00byKing 594e95084b shared_page: Set 3D Slider 2018-06-01 17:05:09 +02:00
N00byKing f4894d5677 shared_page: Allow Setting the 3D Slider
Currently, changing the Option while the Game is running does not work
2018-06-01 17:05:02 +02:00
N00byKing 2814bbc3da renderer_opengl: Allow usage of Stereoscopic 3D 2018-06-01 17:01:06 +02:00
N00byKing e4788130e5 citra, citra_qt, settings.h: Add Options for Stereoscopic 3D 2018-06-01 17:01:00 +02:00
wwylele 781912e854 gl_rasterize: implement shadow mapping using image load/store 2018-06-01 14:26:44 +03:00
Weiyi Wang 08b119153d
Merge pull request #3799 from wwylele/sigh
gl_rasterizer: reset texture state context after every draw
2018-06-01 14:24:28 +03:00
wwylele 9060e08e49 shader/jit: implement breakc 2018-06-01 13:04:39 +03:00
wwylele f0ee4c0595 gl_rasterizer: reset texture state context after every draw 2018-06-01 12:05:30 +03:00
James Rowe 7715fd2c19
Merge pull request #3750 from wwylele/cube-watcher-fix
gl_rasterizer_cache: add missing watcher invalidation
2018-05-31 23:11:39 -06:00
James Rowe f7f5a54bc3
Merge pull request #3751 from wwylele/shader-warning-shutup
gl_shader_gen: rearrange function definition to avoid suprious warnings
2018-05-31 23:10:42 -06:00
James Rowe 87d2866127
Merge pull request #3757 from zhaowenlan1779/game-list-fix
citra_qt: Improve Game List Item display
2018-05-31 23:10:02 -06:00
James Rowe 489d5a3da9
Merge pull request #3769 from Kloen/dark-theme-updates
citra-qt: Update Dark theme to latest version
2018-05-31 22:45:54 -06:00
James Rowe 174241ff90
Merge pull request #3800 from liushuyu/master
citra: correct regex for matching nickname
2018-05-31 22:14:39 -06:00
James Rowe 04a9145dfc
Merge pull request #3776 from darkf/cubeb-sink2
Implement a Cubeb audio sink
2018-05-31 22:13:12 -06:00
darkf 04139e26bd cubeb_sink: Skip devices without a name
Previously this would crash.
2018-05-31 21:01:48 -05:00
darkf ce6d9e2e28 externals: Don't build cubeb with tests 2018-05-31 21:01:48 -05:00
darkf 35c43aa293 audio_core: Only include cubeb if it's available 2018-05-31 21:01:48 -05:00
darkf af73dd45f0 audio_core: Implement a cubeb audio sink 2018-05-31 21:01:48 -05:00
liushuyu c0f352bc4e
citra: correct regex for matching nickname 2018-05-31 19:38:12 -06:00
James Rowe 72f9142bb1
Merge pull request #3746 from wwylele/ndm-new-framework
Service/NDM: convert to ServiceFramework
2018-05-29 23:54:21 -06:00
James Rowe e63c374ff0
Merge pull request #3714 from wwylele/primitive-restart-guard
video_core/command_processor: correctly handles 0xFFFF index as a normal index
2018-05-29 23:22:00 -06:00
James Rowe aa95604928
Merge pull request #3652 from N00byKing/3dtv_crashfix
gsp_gpu, shared_page: Change 3D LED State on SetLedForceOff
2018-05-29 22:43:52 -06:00
Valentin Vanelslande 90bcb26c3b citra_qt: Add Continue/Pause & Toggle Speed Limit hotkeys 2018-05-28 16:36:56 -05:00
Markus Wick caba02d42a gl_rasterizer: Don't flip the texture bindings.
The state object isn't used anywhere else, so there
is no need to revert the state.
And the comment is just wrong: It doesn't matter
which textures are bound on framebuffer binding, it
only matters at draw time. And we reset all bindings
before the draw call. So let's use gl_state as it is
designed to avoid flipping states.
2018-05-28 21:04:59 +02:00
wwylele 874cb42e70 shader/jit: preserve integer & condition register across invocation 2018-05-28 14:41:47 +03:00
wwylele 549abe556b Service/NDM: convert to ServiceFramework 2018-05-28 11:28:13 +03:00
BreadFish64 30c6c37d6c fix jrowes lazy sorting 2018-05-26 15:38:06 -05:00
BreadFish64 31a9fdb00b fix preffered game 2018-05-26 15:38:06 -05:00
BreadFish64 1a57f9488f citra_qt: support multiple game directories 2018-05-26 15:38:06 -05:00
Nico Bosshard 88ebd844e5 Add search filter support for multiple game directories 2018-05-26 15:38:05 -05:00
Weiyi Wang 09982c3386
Merge pull request #3732 from ccawley2011/fix-arm
Fix compilation on ARM
2018-05-26 20:14:55 +03:00
zhupengfei 9504aa19d5
game_list: rewrite format 2018-05-26 22:27:59 +08:00
Weiyi Wang ba4a0525bf
Merge pull request #3724 from degasus/scissor
gl_rasterizer: Remove redundant scissor state change.
2018-05-25 20:35:41 +03:00
Logan B b5934237fa
Fix build 2018-05-25 20:28:15 +12:00
zhupengfei e5c8b9f0a2
game_list: append filename after program ID 2018-05-23 21:36:10 +08:00
Kloen 15e2be85b5 citra-qt: Change link colors to a more readable one when using the dark theme 2018-05-23 02:51:19 +02:00
James 29551c187a Add missing std::string import in text_formatter 2018-05-19 21:31:09 +10:00
zhupengfei 3b18faa163
citra_qt: Improve Game List Item display 2018-05-19 17:21:26 +08:00
Christoph 3bf924cd20 Camera translation (#3747)
* citra_qt: correct spelling in configuration

* citra_qt/camera: Changed the order of the translation

The translation may not correspond to "couln't load" and "the camera", so create two cases which can get translated individually.
Also add a space after "the camera".

* citra_qt/camera: use the same syntax for the filter in "still_image_camera.cpp" as in "configure_camera.cpp"

* citra_qt/camera: the config should only get added if it's not empty
2018-05-19 12:03:06 +03:00
wwylele 92a1252835 gl_shader_gen: rearrange function definition to avoid suprious warnings 2018-05-19 00:36:33 +03:00
wwylele 8b4e832c5f gl_rasterizer_cache: add missing watcher invalidation 2018-05-18 23:58:43 +03:00
Markus Wick 8e1e52cad9 gl_rasterizer_cache: Use clean state for glBlitFramebuffer.
Framebuffer blits depends on pixel tests:
Ownership (is fine)
Scissor (is broken on the last commit)
Masking (is broken on master for a while)

So let's be honest and start with a clean state in
those helper functions.
2018-05-18 21:13:56 +02:00
Markus Wick 301073334a gl_rasterizer: Remove redundant scissor state change.
There is no need to disable this state after the draw call,
gl_state will handle this for us if needed. This kind of
redundant state changes are bad for the driver overhead,
as flipping bits will invalidate the driver state.
2018-05-18 21:13:56 +02:00
James Rowe e35c634fc6
Merge pull request #3742 from wwylele/glvtx-ui
citra-qt: add gpu shader emulation related configurations
2018-05-18 13:04:18 -06:00
James Rowe 64a8c8ee07
Merge pull request #3741 from wwylele/glvtx-last
gl_rasterizer: implement AccelerateDrawBatch to emulate PICA shader on hardware
2018-05-18 13:03:40 -06:00
wwylele 4377caf1df citra-qt: add tooltips for renderer options 2018-05-18 15:15:07 +03:00
wwylele 129b893509 gl_stream_buffer: update the information about the AMD hack 2018-05-18 14:08:12 +03:00
wwylele dd6252a676 gl_rasterizer: fallback to software shader path if buffer overflow happens on hardware shader path 2018-05-18 13:55:19 +03:00
Daniel Lim Wee Soong 7861be67bb core/arm/skyeye_common: Migrate logging macros (#3684)
* core/arm/skyeye_common: Migrate logging macros

Use the new logging macros NGLOG

* Replace specifiers that were missed out

* Replace printf with NGLOG

* skyeye_common: fix NGLOG without log class
2018-05-14 11:22:32 +03:00
wwylele 6985b13439 [HACK] AMD workaround 2018-05-14 10:17:36 +03:00
wwylele ede0d15fec video_core/command_processor: attempt accelerate draw in draw trigger 2018-05-14 10:17:36 +03:00
wwylele 9b448a0739 gl_rasterizer: implement AccelerateDrawBatch to emulate PICA shader on hardware 2018-05-14 10:17:36 +03:00
MerryMage 15d14be3cc primitive_assembly: Add getters for internal state 2018-05-14 10:17:35 +03:00
wwylele 06815ec905 video_core: receive hardware shader settings 2018-05-14 10:17:35 +03:00
wwylele f1cc8cfea9 citra,citra_qt: load/save hardware shader settings 2018-05-14 10:17:35 +03:00
Cameron Cawley 101d8964f1 common: Fix compilation on ARM 2018-05-13 11:34:45 +01:00
wwylele 1d5a26b1d8 citra-qt: add gpu shader emulation related configurations 2018-05-13 10:58:20 +03:00
wwylele b31ed30fb2 settings: add hardware shader related settings 2018-05-13 10:57:55 +03:00
wwylele 97f9cfac70 settings: add hardware shader related settings 2018-05-13 10:44:47 +03:00
James Rowe 80bfd87270
Merge pull request #3730 from FearlessTobi/game-compat-fixes
citra_qt: Refactor game list compatibility system
2018-05-11 11:59:53 -06:00
朱鹏飞 57827de38b citra_qt: camera integration (#3566)
* Implement camera feature

* Make OpenCVCamera optional

* Fix styling problems

* CI configuration

* Fix CI

* Hopefully final fix

* Hopefully final fix

* Fix all the problems

* Oops..

* Add Qt Multimedia Camera

* Another oops

* Try to fix broken linux CI

* Try to fix broken linux CI

* Fix problems

* Improve UI

* Fix problems

* camera: Add support for Qt <5.10 and fix preview error

* CI: try to fix linux-frozen travis build

* camera: fix problems and add multiple handlers support

* fix CI

* remove most ServiceFramework changes

* Fix format

* Remove last ServiceFramework change

* camera: remove unused interfaces; revert submodule change

* camera: fix CI error

* ci: use ccache for opencv build

* citra_qt: fix configuration error; CI: add mediaservice plugin

* citra_qt: fix clang-format

* citra_qt: fix documentation error

* citra_qt: fix configuration page; camera: fix pausing crash

* citra_qt: fix preview not stopping

* camera: extend handlers length

* camera: fix camera resume error

* camera: fix clang-format

* camera: remove all OpenCV; citra_qt: rewrite configuration

* camera: remove all OpenCV; citra_qt: rewrite configuration

* camera: remove all OpenCV; citra_qt: rewrite configuration

* CI: fix linux ci

* camera: check settings update; citra_qt: fix configuration error

* service_cam: use a better way to apply configuration

* Service_CAM: rewrite camera reload

* cam: fix clang format

* citra_qt: fix argument load issue; camera: base of system camera selection

* citra_qt: Add system camera selection

* camera: fix image upside down, Implement SetFrameRate in Qt Multimedia Camera

* camera: Add missing <array> include, update SetFrameRate and add settings in Qt Multimedia Camera header

* camera: move started in Qt Multimedia Camera header

* QtMultimediaCamera: Move frame rates to SetFrameRate; Set minimum and maximum frame rate

* Update appveyor.yml
2018-05-11 11:42:23 -06:00
FearlessTobi f354744ad4 citra_qt: Refactor game list compatibilty 2018-05-10 03:57:57 +02:00
wwylele 68b0a3e19e regs_pipeline: use proper unsigned type where applicable 2018-05-06 15:57:48 +03:00
Weiyi Wang f85e71c37c
Merge pull request #3715 from wwylele/hardware-vertex-vector
gl_rasterizer: Use GLvec* instead of C arrays
2018-05-06 07:19:06 +03:00
Weiyi Wang 79ac4766b4
Merge pull request #3668 from daniellimws/gdbstub-macros
core/gdbstub: Migrate logging macros
2018-05-05 16:48:52 +03:00
Valentin Vanelslande 473fd552c8 Service/AM: Implement GetProductCode (#3549)
* [skip ci]

* [skip ci]

* [skip ci]

* [skip ci]

* Service/AM: Implement GetProductCode

* fix?

* remove close

* Use PushRaw

* Use NCCHContainer

* 2 if found

* struct

* fix build?

* fix

* remove return

* fix?

* 6 words
2018-05-05 16:43:31 +03:00
Weiyi Wang 0da3b75c9e
Merge pull request #3700 from wwylele/texcache-watcher
gl_rasterizer_cache: cache texture cube
2018-05-05 16:30:39 +03:00
Markus Wick 5960282303 gl_rasterizer: Use buffer_storage for uniform data.
This replaces the glBufferData logic with the shared stream buffer code.
The new code doesn't need a temporary staging buffer any more, so the
performance should imrpove quite a bit.
2018-05-05 09:22:02 +02:00
MerryMage d6cd1a8712 gl_rasterizer: Use GLvec* instead of C arrays 2018-05-05 04:37:04 +03:00
wwylele 08a38370b0 video_core/command_processor: correctly handles 0xFFFF index as a normal index 2018-05-05 04:24:31 +03:00
James Rowe ca01c7eea8
Merge pull request #3665 from adityaruplaha/log-version
frontend: Log Citra version.
2018-05-03 15:17:04 -06:00
James Rowe ca3b82caa4
Merge pull request #3705 from zhaowenlan1779/multiplayer-fix
citra_qt: multiplayer password dialog fix
2018-05-02 09:17:33 -06:00
Mat M a5f906b8ab
Merge pull request #3708 from FearlessTobi/add-region-column
citra_qt: Add a game region column to the Game List
2018-05-02 00:22:38 -04:00
Weiyi Wang be5777f3de
Merge pull request #3686 from wwylele/glvtx-shader-gen
gl_shader_gen: generate programmable vs/gs and fixed gs
2018-05-01 21:27:48 +03:00
wwylele 1762ad2dcc gl_rasterizer_cache: cache texture cube 2018-05-01 21:26:43 +03:00
FearlessTobi 36c4765054 citra_qt: Add a game region column 2018-05-01 19:57:01 +02:00
zhupengfei b33f7901b6
citra_qt: fix clang-format 2018-05-01 11:26:57 +08:00
zhupengfei 784c41bf34
citra_qt: multiplayer password dialog fix 2018-05-01 11:15:31 +08:00
adityaruplaha 0cece7918a Log Citra version.
Class: Frontend
Level: Info
Format: "Citra Version: " + window title
2018-04-29 21:05:19 +05:30
Weiyi Wang 9c65a45358
Merge pull request #3694 from jroweboy/quickfix
Fix duplicated logs on windows
2018-04-28 10:31:25 +03:00
James Rowe 252e5f173d
Merge pull request #3676 from jroweboy/minor-mp-ui-fix
Minor multiplayer ui fixes
2018-04-27 10:00:21 -06:00
James Rowe 98c150e7fc Fix duplicated logs on windows 2018-04-27 09:58:48 -06:00
James Rowe 1b94f25e6c
Merge pull request #3568 from daniellimws/logging-backends
Logging: Add customizable backends
2018-04-26 21:09:31 -06:00
James Rowe 65b38a7537 fixup: Address review 2018-04-25 10:31:51 -06:00
James Rowe 6ce111301f Frontend: Add missing translation for network error messages 2018-04-25 09:44:16 -06:00
bunnei ed42b4b0d2
Merge pull request #3678 from wwylele/b15-fallback
gl_shader_decompiler: fallback to CPU shader on GS b15 access
2018-04-25 00:03:11 -04:00
bunnei b003e1398a
Merge pull request #3666 from degasus/vertex_streaming
renderer_opengl: Rewrite stream buffer.
2018-04-24 23:58:41 -04:00
wwylele 191b29e402 gl_shader_gen: generate programmable vs/gs and fixed gs 2018-04-24 20:39:10 +03:00
Daniel Lim Wee Soong 51398e0301 Logging: Add customizable logging backends and fmtlib based macros
* Change the logging backend to support multiple sinks through the
Backend Interface
* Add a new set of logging macros to use fmtlib instead.
* Qt: Compile as GUI application on windows to make the console hidden by
default. Add filter configuration and a button to open log location.
* SDL: Migrate to the new logging macros
2018-04-23 21:32:56 -06:00
MerryMage 8186820d16 pica_to_gl: Add GLuvec{2,3,4} aliases
To allow for transfer for integers into shaders.
2018-04-23 20:21:24 +03:00
wwylele e56128683c gl_shader_decompiler: fallback to CPU shader on GS b15 access 2018-04-23 12:45:56 +03:00
Adityarup Laha c06d6ecea2
Replace "Hide Full Games" with "Hide Full Rooms" 2018-04-22 16:56:49 +05:30
Markus Wick c4010e3f93 renderer_opengl: Drop GLSync, unused. 2018-04-21 16:12:30 +02:00
Markus Wick 5d1dd205c4 renderer_opengl: Rewrite stream buffer. 2018-04-21 16:12:30 +02:00
James Rowe c7726f13e8 Frontend: Prevent a crash from closing a hosted room using the Disconnect button and then trying to host another room 2018-04-20 00:53:56 -06:00
James Rowe 5fef22fc52 Frontend: Prevent connecting to another room when already joining 2018-04-20 00:53:31 -06:00
James Rowe d35693bbbc More minor issue fixes
* Move Joining state change sooner in the code to prevent an issue where
failing to connect multiple times in a row doesn't change the state (as
it goes from CouldNotConnect -> CouldNotConnect which doesn't trigger a
state changed callback)
* Prevent double clicking too fast on a room in the lobby from causing
issues
* Lobby no longer closes when joining a room
2018-04-19 10:28:19 -06:00
James Rowe 62257e0d79 Fix Lobby filtering with player list
* Make double clicking the player list open the correct room
* Fix an issue where filtering with search broke the whos playing list
2018-04-19 10:28:18 -06:00
James Rowe 1f6791431d Move almost all state change tracking to MultiplayerState
Each window can still watch for state changes to update the ui or to
close the window as appropriate, but for any error announcements, they
all belong in Multiplayer state now.
2018-04-19 10:28:18 -06:00
James Rowe a5c8e07f46 Remove duplicated logic in HostRoom
Fixes some issues with multiple warning messages
2018-04-19 10:28:18 -06:00
James Rowe 2be02f221d Fix player list not showing in lobby. Fix host and direct connect crashing citra 2018-04-19 10:28:18 -06:00
James Rowe 01b49b7e78 Fix compilation issue where unique_ptr needs full class declaration 2018-04-19 10:28:17 -06:00
James Rowe c635c7f40d Address more review comments
* Make Validation a singleton instead
* Wording changes for error messages
* Smart pointers for Ui members
* Other minor nitpicks
2018-04-19 10:28:17 -06:00
James Rowe a85511cd7d Fix multiplayer dropdowns and proxy model
* Filters in the lobby properly remove rooms
* Multiplayer menu items for Show Room and Leave Room work as intended
2018-04-19 10:28:17 -06:00
James Rowe 601fd81d5c Address review comments 2018-04-19 10:28:16 -06:00
James Rowe 3be7aa2cfc Moved the password icon to the room name.
Also added a dark mode lock icon as well (and fixed a small bug
preventing the lock icon from showing up)
2018-04-19 10:28:16 -06:00
James Rowe aa391ed60d Fixed and issue where multiplayer state was covering the File and Emulation menu items when it shouldn't even be visible 2018-04-19 10:28:16 -06:00
James Rowe 599eebf511 Remove the current players blurb 2018-04-19 10:28:16 -06:00
James Rowe 2d1efcc36b Add a member list expandable to the lobby. Fix issue with hosting more than once. 2018-04-19 10:28:15 -06:00
James Rowe f346a9d372 Split multiplayer code into its own class 2018-04-19 10:28:15 -06:00
James Rowe ddbbab8fd6 Add network status text to the status bar 2018-04-19 10:28:15 -06:00
James Rowe 871196bc10 Citra-qt: Add multiplayer ui 2018-04-19 10:28:14 -06:00
Weiyi Wang bba2a60b22
Merge pull request #3670 from jbeich/qt
Unbreak build with Qt 5.9.4 (at least on FreeBSD)
2018-04-19 18:02:35 +03:00
Weiyi Wang 977abd2c7a
Merge pull request #3607 from adityaruplaha/sdl2-fullscreen
SDL2: Implement fullscreen
2018-04-19 16:16:37 +03:00
Jan Beich 394638e9c9 Qt: Add missing #include after 2f8bd18296
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:160:17: error: use of undeclared identifier 'QCoreApplication'; did you mean 'QApplication'?
        setText(QCoreApplication::translate("GameList", status.text));
                ^~~~~~~~~~~~~~~~
                QApplication
/usr/local/include/qt5/QtGui/qwindowdefs.h:81:7: note: 'QApplication' declared here
class QApplication;
      ^
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:160:17: error: incomplete type 'QApplication' named in nested name specifier
        setText(QCoreApplication::translate("GameList", status.text));
                ^~~~~~~~~~~~~~~~~~
/usr/local/include/qt5/QtCore/qobject.h:446:18: note: forward declaration of 'QApplication'
    friend class QApplication;
                 ^
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:161:20: error: use of undeclared identifier 'QCoreApplication'; did you mean 'QApplication'?
        setToolTip(QCoreApplication::translate("GameList", status.tooltip));
                   ^~~~~~~~~~~~~~~~
                   QApplication
/usr/local/include/qt5/QtGui/qwindowdefs.h:81:7: note: 'QApplication' declared here
class QApplication;
      ^
In file included from src/citra_qt/citra-qt_autogen/mocs_compilation.cpp:14:
In file included from src/citra_qt/citra-qt_autogen/EWIEGA46WW/moc_game_list_p.cpp:9:
src/citra_qt/game_list_p.h:161:20: error: incomplete type 'QApplication' named in nested name specifier
        setToolTip(QCoreApplication::translate("GameList", status.tooltip));
                   ^~~~~~~~~~~~~~~~~~
/usr/local/include/qt5/QtCore/qobject.h:446:18: note: forward declaration of 'QApplication'
    friend class QApplication;
                 ^
2018-04-18 20:03:52 +00:00
Daniel Lim Wee Soong 10f0fbc0e5 core/gdbstub: Migrate logging macros
Change to use the new logging macros
2018-04-18 21:53:26 +08:00
Weiyi Wang 048b0fc0d3
Merge pull request #3662 from wwylele/shader-hash-cache
shader: avoid recomputing hash for the same program
2018-04-18 12:10:25 +03:00
adityaruplaha e5f5fdee2e SDL2: Implement fullscreen 2018-04-17 23:22:23 +05:30
James Rowe 2f8bd18296 Use the QT_TRANSLATE_NOOP macro 2018-04-17 10:42:05 -06:00
wwylele d52ddd0ec4 shader: avoid recomputing hash for the same program 2018-04-17 09:47:59 +03:00
wwylele 3cc460ab34 shader_jit: change passing ShaderSetup to passing uniforms struct into the program
We are going to add private memebers to ShaderSetup, which forbids the usage of offsetof. The JIT program only use the uniform part of the setup, so we can just isolate it.
2018-04-17 09:35:43 +03:00
Weiyi Wang cb36f9fad2
Merge pull request #3645 from wwylele/shader-manager
renderer_opengl: refactor shader & program objects and add shader manager for rasterizer
2018-04-16 16:38:38 +03:00
baka0815 4321ab44ea citra-qt: Don't translate function keys in InitializeHotkeys() 2018-04-16 12:37:13 +02:00
FearlessTobi fbc05fac19 Show game compatibility within Citra 2018-04-16 00:42:58 +02:00
Merry d5b1c33587
Merge pull request #3656 from lioncash/relocate
sm: Relocate the service manager to the System class
2018-04-15 10:34:14 +01:00
Merry 9e21094dea
Merge pull request #3631 from daniellimws/boss-fmt
service/boss: Migrate logging macros
2018-04-15 08:59:42 +01:00
Lioncash a78920e60b
sm: Relocate the service manager to the System class
Rather than have it live as a global variable, place it into the System class and make it instance-based.
2018-04-13 07:15:34 -04:00
Lioncash 5309b51c12 cam: Correct forward declaration type for Core::EventType
This is actually a struct, not a class.
2018-04-12 23:15:16 -04:00
Weiyi Wang bfd1d963ba
Merge pull request #3638 from ds84182/we-need-more-rounds
Round TEV outputs and the final fragment output in GLSL
2018-04-12 23:32:27 +03:00
Weiyi Wang 9772513141
Merge pull request #3639 from wwylele/texture-cude-fix
gl_rasterizer_cache: exit FillTextureCube when address is invalid
2018-04-12 22:54:14 +03:00
Weiyi Wang dfe9b4edf8
Merge pull request #3587 from valentinvanelslande/apt-fmt
Service/APT: Migrate logging macros
2018-04-12 22:47:44 +03:00
Weiyi Wang 6df2e3ccc9
Merge pull request #3614 from valentinvanelslande/movie-fmt
movie: migrate logging macros
2018-04-12 22:46:15 +03:00
Weiyi Wang ca6f6f172b
Merge pull request #3634 from ccawley2011/citra-room-glad
citra-room: Use the default OpenGL loader instead of SDL_GL_GetProcAddress
2018-04-12 22:45:30 +03:00
Weiyi Wang f10123f546
Merge pull request #3611 from adityaruplaha/fullscreen-fix
citra-qt: Fix the stuck in fullscreen bug.
2018-04-12 22:43:04 +03:00
N00byKing f29f4ccdc9 gsp_gpu, shared_page: Change 3D LED State on SetLedForceOff 2018-04-12 16:44:29 +02:00
wwylele 8dc75598a4 gl_rasterizer: isolate shader management into its own class 2018-04-11 14:52:37 +03:00
wwylele 36bc92273b gl_shader_gen: accept an option to generate separable shaders 2018-04-11 14:52:37 +03:00
wwylele bdab18d2d9 gl_resource_manager: add OGLPipeline 2018-04-11 14:52:37 +03:00
wwylele 4f9b9c4b80 gl_state: add pipeline state 2018-04-11 14:41:43 +03:00
wwylele 48869c768f gl_resource_manager: separate OGLShader and OGLProgram 2018-04-11 14:41:43 +03:00
wwylele d2ee40dc45 gl_shader_util: separate shader object creation and program object creation 2018-04-11 14:41:43 +03:00
wwylele 4256641da4 gl_rasterizer/lighting: implement shadow attenuation 2018-04-10 20:26:55 +03:00
wwylele b5763cb952 pica/lighting: split FresnelSelector into bitfields
The FresnelSelector was already working like a bitfield, so just make it actual bitfield to reduce redundant code. Also, it is already confirmed that this field also affects shadow on alpha. Given that the only two source that can affect alpha components are both controlled by this field, this field should be renamed to a general alpha switch
2018-04-10 20:25:56 +03:00
Valentin Vanelslande 7f61eb0ff6
default_ini: remove space in custom_layout 2018-04-08 21:48:07 -05:00
wwylele 7e7de7d3ab gl_rasterizer_cache: exit FillTextureCube when address is invalid 2018-04-08 12:34:50 +03:00
Dwayne Slater 234161ba62 Make byteround less expensive (thanks hrydgard!) 2018-04-07 18:26:14 -04:00
Dwayne Slater 734279ff22 Round TEV outputs and the final fragment output in GLSL
Fixes water effect in SM3DL
2018-04-07 16:43:56 -04:00
adityaruplaha 2a7d0ec4be Fix the stuck in fullscreen bug.
Don't save the UI/RenderWindow geometry if fullscreen was enabled.
2018-04-07 12:16:07 +05:30
Cameron Cawley cef88965d7 citra-room: Use the default OpenGL loader instead of SDL_GL_GetProcAddress
Fixes #3538
2018-04-06 20:27:47 +01:00
Daniel Lim Wee Soong 2d45e46558 service/boss: Migrate logging macros 2018-04-06 19:43:09 +08:00
wwylele 39fce60145 [quick-fix]file-util: fmtlib errors on FILE* type parameter. Explicitly cast it to void* 2018-04-06 13:35:37 +03:00
Weiyi Wang 972db17247
Merge pull request #3497 from wwylele/texture-cube-new
gl_rasterizer: implement TextureCube
2018-04-06 12:41:40 +03:00
Weiyi Wang a9544ca015
Merge pull request #3580 from daniellimws/common-fmt
common: Migrate logging macros
2018-04-06 12:38:08 +03:00
James Rowe 501717e9db Update fmtlib to fix msvc warnings
Additionally, when updating fmtlib, there was a change in fmtlib broke
how the old logging macro was overloaded, so this works around that by
just naming the fmtlib macro impl something different
2018-04-05 22:33:12 -06:00
Weiyi Wang a2e87075c5
Merge pull request #3489 from B3n30/UDS_send_node_information
NWM_ UDS:Let connected clients handle the eapol packet
2018-04-05 16:14:39 +03:00
B3n30 f64f118e3b fix Subvs suggestions 2018-04-05 14:57:35 +02:00
B3n30 2d72b2be8b fix Subvs suggestions 2018-04-05 14:43:21 +02:00
Weiyi Wang e3d25bc6d0
Merge pull request #3567 from wwylele/pica-glsl
renderer_opengl: add PICA->GLSL shader decompiler
2018-04-05 14:39:27 +03:00
Weiyi Wang acb02d300c
Merge pull request #3518 from wwylele/hashable-struct
Common/Hash: abstract HashableStruct from GLShader::PicaShaderConfig
2018-04-05 14:39:12 +03:00
James Rowe 1fecead2ff
Merge pull request #3624 from wwylele/sync-uniform
gl_rasterizer: move shader uniform sync from SetShader() to ctor
2018-04-05 00:30:38 -06:00
James Rowe c57b0767af
Merge pull request #3602 from lioncash/json
verify_login: Make VerifyLogin exceptionless
2018-04-04 23:39:28 -06:00
wwylele 0d84c5a0b6 gl_rasterizer: move state syncing from ctor to its own function 2018-04-04 17:23:55 +03:00
N00byKing 11cd6d066a
default_ini.h: Update Comment 2018-04-03 15:07:25 +02:00
wwylele c2719feda2 gl_rasterizer: move shader uniform sync from SetShader() to ctor 2018-04-03 09:27:23 +03:00
Merry 7d7101706e
Merge pull request #3621 from daniellimws/dyncom-fmt
arm/dyncom: Migrate logging macros
2018-04-02 17:09:36 +01:00
Valentin Vanelslande c9ab184ec7 pica_to_gl: Migrate logging macros (#3608) 2018-04-02 09:31:28 -06:00
wwylele 9ffd400685 gl_shader_decompiler: add missing headers/rename GetXXX to MoveXXX to reflect that they move the data 2018-04-02 17:34:54 +03:00
wwylele 11c2f11872 gl_shader_decompiler: return error on decompilation failure
Internally these errors are handled by exceptions. Only fallbackable errors (that can be handled by CPU shader emulation) is reported. Completely ill-formed shader is still ASSERTed. Code logic related stuff is DEBUG_ASSERTed
2018-04-02 17:34:54 +03:00
wwylele 4991b15ee5 gl_shader_decompiler: some small fixes
- remove unnecessary ";"
- use std::tie for lexicographical ordering
- simplify loop condition
    The offset always has step +1 on each iteration, so it would just hit one of the two boundary anyway
2018-04-02 17:34:54 +03:00
wwylele f8a292f920 renderer_opengl: add PICA->GLSL shader decompiler 2018-04-02 17:34:54 +03:00
Daniel Lim Wee Soong 1e4eb7def8 arm/dyncom: Migrate logging macros 2018-04-02 16:01:19 +08:00
James Rowe 384849232b
Merge pull request #3516 from wwylele/shadow-sw
SwRasterizer: Implement shadow mapping
2018-03-31 23:29:22 -06:00
Merry fff7227f86
Merge pull request #3579 from ccawley2011/architecture-defines
common: Clean up architecture-specific defines
2018-03-31 10:41:15 +01:00
Merry 587bc06adf
Merge pull request #3596 from lioncash/disk
disk_archive: Minor miscellaneous cleanup
2018-03-31 10:39:00 +01:00
Valentin Vanelslande 4fa1628fb6
movie: migrate logging macros 2018-03-31 00:24:21 -06:00
Lioncash 7d331a469f pica_to_gl: Use std::array where applicable
Removes the need to use the ARRAY_SIZE macro
2018-03-31 00:58:49 -04:00
Lioncash 0e7ca706dc disk_archive: Make DiskDirectory's constructor explicit
Prevents implicit conversions/construction.
2018-03-31 00:54:17 -04:00
Lioncash 07855c48d1 disk_archive: Remove unnecessary const in DiskDirectory's Read() declaration
This only applies in the definition of the function, not the
declaration.
2018-03-31 00:54:17 -04:00
Lioncash ed64d15060 disk_archive: Remove unused total_entries_in_directory member from DiskDirectory
Also converts initializer list assignments to in-class initializers
where relevant.
2018-03-31 00:52:47 -04:00
BreadFish64 1d809ce6aa update-icons-signal 2018-03-30 10:20:21 -05:00
Tobias bb6251f35f video_core: Remove Unreachable for invalid BlendEquation modes (#3595)
* video_core: Remove Unreachable statement

* Lower log level to ERROR
2018-03-29 17:53:55 -06:00
Merry a567a92468
Merge pull request #3593 from daniellimws/loader-fmt
core/loader: Migrate logging macros
2018-03-29 14:45:25 +01:00
Adityarup Laha 180a05c301 sdl2_config: Add a parameter description for tilt clamp variable (#3590) 2018-03-29 10:20:26 +01:00
Weiyi Wang 697ff2f6e3
Merge pull request #3603 from lioncash/port
citra-room: Fix always false case in main() related to port range
2018-03-29 11:53:53 +03:00
Weiyi Wang 1c4b230346
Merge pull request #3604 from lioncash/ptr
archive_systemsavedata: Remove pointer cast from GetSystemSaveDataPath()
2018-03-29 11:52:36 +03:00
Weiyi Wang 82b9387315
Merge pull request #3605 from valentinvanelslande/am-popu64
Service/AM: Use Pop<u64>() in DeleteUserProgram and DeleteProgram
2018-03-29 09:47:56 +03:00
Weiyi Wang 690d92a019
Merge pull request #3601 from lioncash/null
gl_rasterizer: Fix incorrect comparison against src_surface in AccelerateTextureCopy()
2018-03-29 09:44:10 +03:00
Weiyi Wang da91fb41db
Merge pull request #3597 from lioncash/lzss
ncch_container: Get rid of pointer casts in LZSS_GetDecompressedSize() and LZSS_Decompress()
2018-03-29 09:42:25 +03:00
Weiyi Wang feb4eca2ff
Merge pull request #3598 from lioncash/boss
boss: Correct ReceiveProperty()'s response data payload
2018-03-29 09:38:33 +03:00
Weiyi Wang 115fd1cbf0
Merge pull request #3599 from lioncash/err
err_f: Add missing break in ThrowFatalError()
2018-03-29 09:38:19 +03:00
Valentin Vanelslande 528d8a6ccb
CiTrace: Migrate logging macros 2018-03-28 20:48:59 -06:00
Valentin Vanelslande 492fca114d
Service/AM: Use Pop<u64>() in DeleteUserProgram and DeleteProgram 2018-03-28 20:28:18 -06:00
Lioncash 26b1aec3c1 archive_systemsavedata: Remove pointer cast from GetSystemSaveDataPath()
These kinds of casts invoke undefined behavior due to alignment rules.

Use memcpy instead which always does the right thing.
2018-03-28 22:17:26 -04:00
Lioncash 8366f6cb5e citra-room: Fix always false case in main() related to port range
If the variable we're checking is a u16, then there can never be values
outside of the 0-65535 range. This is bad because an arbitrary larger
value can be truncated down into a valid value, making an otherwise
malformed argument well-formed.

Change it to use u32 to allow the check to function properly.
2018-03-28 21:53:05 -04:00
Lioncash 38b9d1780f verify_login: Make VerifyLogin exceptionless
This function can be simplified by attempting to find the username
within the JSON object and then only accessing it if it does. There's no
need to blindly access the data itself.

This also eliminates the need to copy the string to a local as well,
since we already have the element itself, we can just compare against
it. For the failure case, it's the same if we were checking that the
provided username string is empty.
2018-03-28 21:34:21 -04:00
Lioncash 27a3d44b16 gl_rasterizer: Fix incorrect comparison against src_surface in AccelerateTextureCopy()
This should actually be comparing the validity of the destination
surface.
2018-03-28 21:13:57 -04:00
Valentin Vanelslande 542b11ccdc
Change line 203 2018-03-28 19:05:54 -06:00
Lioncash 5ec576ff78 err_f: Add missing break in ThrowFatalError()
Introduced by 691f069743

If we hit a prefetch abort, the DFSR and DFAR contents aren't really going to be
that useful.
2018-03-28 20:33:25 -04:00
Lioncash 31100c582a boss: Correct ReceiveProperty()'s response data payload
This was previously overwriting data in the same index.
2018-03-28 20:26:33 -04:00
Lioncash 3af976e41e ncch_container: Get rid of pointer casts in LZSS_GetDecompressedSize() and LZSS_Decompress()
These kinds of casts invoke undefined behavior, due to both the aliasing
rule, and from an alignment point-of-view. Use the way that's guaranteed
to always work instead.
2018-03-28 19:55:49 -04:00
Daniel Lim Wee Soong fbfc1103fd core/loader: Migrate logging macros
Replace logging to use NGLOG instead of LOG.
2018-03-29 00:08:26 +08:00
Valentin Vanelslande ca6642aa2a
[skip ci] 2018-03-28 08:45:39 -06:00
Daniel Lim Wee Soong 98760336be video_core/shader/shader: Remove include cinttypes 2018-03-28 22:40:16 +08:00
Daniel Lim Wee Soong 730f8a4103 Fix formatting mistakes 2018-03-28 22:28:55 +08:00
Valentin Vanelslande a53365d69e Fix clang 2018-03-27 18:17:04 -06:00
Valentin Vanelslande f1e26fad7f
Fix build 2018-03-27 15:25:57 -06:00
Valentin Vanelslande 4a37d91bc6
change line 528 2018-03-27 14:23:31 -06:00
Valentin Vanelslande e7ac03c941
Service/APT: Migrate logging macros
Macro of line 528 not changed
2018-03-27 14:03:00 -06:00
Daniel Lim Wee Soong 20776b37be Fix wrongly converted specifiers
Sorry that was a lot in one go so some of them had some mistakes
2018-03-27 23:37:36 +08:00
Daniel Lim Wee Soong 0f4c9c9f47 file_util: Remove long long casting on buf.st_size in NGLOG statement 2018-03-27 23:31:08 +08:00
Daniel Lim Wee Soong 968569aa61 Replace format specifiers for all usages of ASSERT_MSG 2018-03-27 23:28:42 +08:00
Ben 4be12d5f56 NWM_UDS:: Check flags in SendTo (#3481)
* NWM_UDS:: Check flags in SendTo

* NWM_UDS: SendTo from Host to only oneClient

* fix u8 in flags

* Send node_map to clients

* Libnetwork: Increase libnetwork version

* Broadcast on dest_node_id 0xFFFF

* fixup: dest_node_id offset

* fixup: dest_node_id offset part 2

* Adressed wwyleles feedback

* Adressed wwylele's nits
2018-03-27 15:01:29 +03:00
BreadFish64 05cf7fe70a QT: Implement themed icons (#3554)
* implement themed icons

* fix theme search paths
2018-03-27 12:11:04 +01:00
Daniel Lim Wee Soong 7abfdb164b hw: Migrate logging macros (#3584)
* hw: Migrate logging macros

Use NGLOG instead of LOG prefixed macros for logging

* gpu: Remove unnecessary casting

At first this line without any casting gave an error. Without knowing which argument is causing the error, I just casted everything. After that forgot to check which argument is the one causing trouble.

* hw: Change format specifiers for the one missed
2018-03-27 12:02:19 +01:00
Daniel Lim Wee Soong 3e8e011c33 network: Migrate logging macros (#3575)
* network: Migrate logging macros

Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG

* Remove hash in format
2018-03-27 12:00:14 +01:00
Weiyi Wang 4bdf2e1eb9
Merge pull request #3569 from daniellimws/audio-core-fmt
audio_core: Migrate logging macros
2018-03-27 13:55:24 +03:00
Weiyi Wang 0607bc36e3
Merge pull request #3574 from daniellimws/citra-qt-fmt
citra_qt: Migrate logging macros
2018-03-27 13:52:31 +03:00
Daniel Lim Wee Soong 59b8a1dbc2 assert: Undo removal of newline for string with __VA_ARGS__ 2018-03-27 10:01:10 +08:00
Daniel Lim Wee Soong 301ca0a0a3 Undo unrelated true false ternary statement removal 2018-03-26 21:03:10 +08:00
Daniel Lim Wee Soong 5ddc440b48 Change to print program id as hex 2018-03-26 20:44:49 +08:00
FearlessTobi 245a3bd067 game_list: Add missing override specifier for KeyReleaseEater's eventFilter function 2018-03-25 23:57:25 +02:00
Weiyi Wang 49c41593d9
Merge pull request #3577 from daniellimws/web-service-fmt
web_service: Migrate logging macros
2018-03-25 13:47:46 +03:00
Daniel Lim Wee Soong 111da6db06 common: Migrate logging macros
Follow-up of #3533

Replace logging to use NGLOG instead of LOG

This is significantly larger than the previous ones.
2018-03-25 18:42:50 +08:00
Daniel Lim Wee Soong 4617fec970 input_common: Migrate logging macros
Follow-up of #3533

Replace logging to use NGLOG instead of LOG
2018-03-25 17:46:02 +08:00
Daniel Lim Wee Soong 978a169cc4 Drop # for formatting program id 2018-03-25 15:48:29 +08:00
Daniel Lim Wee Soong c82cd30f62 web_service: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-25 15:35:06 +08:00
Daniel Lim Wee Soong 79b0e62455 citra_qt: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-25 13:00:36 +08:00
James 9283053701 Move WebServices to use LibreSSL + cpp-httplib (#3501)
Move WebServices to use LibreSSL + cpp-httplib

Remove curl + openssl build dependencies
2018-03-24 13:19:35 -06:00
Valentin Vanelslande e2c5666883 Service/AM: Fix crash when scanning titles with installed titles with invalid title IDs (#3542)
* Service/AM: Fix crash when scanning titles with installed titles with invalid title IDs

Fixes #3332
2018-03-24 13:06:50 -06:00
Daniel Lim Wee Soong 38e2b6c8d8 Undo changes to unrelated files and fix formatting 2018-03-25 00:54:40 +08:00
Daniel Lim Wee Soong df816b5eaf Address review comments
* Convert %x to {:x}
* Convert {0:#010x} to {:#010x}
* Remove `? true : false` statement
* Remove `.c_str()` for strings
2018-03-24 22:25:50 +08:00
Daniel Lim Wee Soong 693b190274 audio_core: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-24 21:45:58 +08:00
Merry 174e7e268a
Merge pull request #3533 from daniellimws/fmtlib-macros
Logging: Add fmtlib-based macros
2018-03-24 08:04:20 +00:00
Daniel Lim Wee Soong 11ce0f91ab Remove dependency chrono
Was included last time due to adding Entry into log.h

Now it is no longer needed but I forgot to remove it last time
2018-03-22 21:42:02 +08:00
Cameron Cawley 2520ad57a5 common: Use ARCHITECTURE_x86_64 instead of ARCHITECTURE_X64 2018-03-21 22:19:59 +00:00
Cameron Cawley 1afcaed1ff common: Use ARCHITECTURE_ARM instead of _M_ARM 2018-03-21 22:17:42 +00:00
Daniel Lim Wee Soong 4adbf29b0c Fix clang-format
Oops forgot to check...
2018-03-22 00:45:01 +08:00
Daniel Lim Wee Soong e6ee1020e1 Replace ##__VA_ARGS__ with __VA_ARGS__ 2018-03-22 00:40:01 +08:00
Daniel Lim Wee Soong c892cea029 Place FmtLogMessage's definition in backend.cpp
I decided to overload LogMessage because I don't see a reason to come up with a new function name just for this, but if you guys want me to overload FmtLogMessage instead I'm fine with that.
2018-03-21 23:36:45 +08:00
Weiyi Wang d03f72eb56
Merge pull request #3535 from ccawley2011/emu_arch_bits
CMake: Set EMU_ARCH_BITS in CMakeLists.txt
2018-03-21 16:15:22 +02:00
Daniel Lim Wee Soong ceeb2810fe Add nullptr check to LogEntry
Also remove explicit comparison with nullptr to make code shorter.
2018-03-20 14:15:48 +08:00
Weiyi Wang 9e4f670ea9
Merge pull request #3484 from wwylele/highlight-fix
pica/lighting: compute highlight clamp after one-/two-sided diffuse pass
2018-03-18 23:41:27 +02:00
Weiyi Wang 42ed0254db
Merge pull request #3528 from BreadFish64/auto-nvidia
use nvidia graphics automatically on laptops with optimus
2018-03-18 23:41:08 +02:00
Mat M 79d1bcf5ba
Merge pull request #3506 from MerryMage/mov-gl_resource_manager
gl_resource_manager: Use std::exchange in move assignment operators and constructors
2018-03-17 16:30:58 -04:00
Daniel Lim Wee Soong 2b4998a122 Add check if filter is not a nullptr
Fix segfault and pass tests
2018-03-17 22:55:57 +08:00
Weiyi Wang 171cb4452f
Merge pull request #3498 from wwylele/cfg-new-framework
Service/CFG: convert to ServiceFramework
2018-03-17 13:54:29 +02:00
Markus Wick ac92664aa7 OGL: Use stream buffer for vertex data. 2018-03-17 02:02:39 +01:00
Phantom 50598fbbf4 stream buffer 2018-03-17 02:02:39 +01:00
MerryMage e3f9bfd850 gl_resource_manager: Use std::exchange instead of std::swap in move assignment operators and constructors
Move assignment operators and move constructors should ideally leave the object moved from in a state where resources aren't accessable.
2018-03-16 23:47:49 +00:00
BreadFish64 691aadb6a3 comment 2018-03-16 16:06:33 -05:00
Cameron Cawley 8d1cab4892 CMake: Set EMU_ARCH_BITS in CMakeLists.txt 2018-03-16 13:29:36 +00:00
Daniel Lim Wee Soong c4f98c1a2e Logging: Fix clang-format 2018-03-16 21:18:45 +08:00
Daniel Lim Wee Soong b5532babab Merge remote-tracking branch 'citra/master' into fmtlib-macros 2018-03-16 20:50:52 +08:00
Starlet 935bcdbd20 Convert ACT to the new service framework (#3521)
* Convert ACT to the new service framework

* Fix clang-format

* le updates to fix stuff

* Fixed one last thing.

* Well, I fucked up.

* Quick hotfix
2018-03-16 11:36:35 +02:00
Daniel Lim Wee Soong 327901e145 citra_qt: Remove reference to debugger/console 2018-03-16 12:24:16 +08:00
Daniel Lim Wee Soong 98e669cf00 Remove all edits not in the scope of this PR 2018-03-16 12:17:14 +08:00
Daniel Lim Wee Soong 373efd3158 Logging: Remove customizable logging backends
Separate code for customizing logging backends from this branch
2018-03-16 11:56:40 +08:00
Daniel Lim Wee Soong eee388588e Logging: Fix fmt errors after rebasing with master
fmt was updated during the clang-format update, which breaks the previous implementation of FmtLogMessage

Changes were:
* Move definition of FmtLogMessage into log.h to use variadic templates as FMT_VARIADIC was removed

To supplement the change above:
* Move Entry and CreateEntry into log.h
* Add LogEntry in backend.cpp
2018-03-16 11:48:33 +08:00
James Rowe ab4ba71f3e fixup! Prevent crashes on closing by waiting for the impl thread 2018-03-16 11:18:06 +08:00
James Rowe 87bc5266ef Logging: Various logging improvements
* Uses PopWait to reduce the amount of busy waiting if there aren't many
new logs
* Opens the log file as shared on windows, letting other programs read
the logs, but not write to them while citra is running
* Flushes the logs to disk if a log >= error arrives
2018-03-16 11:18:06 +08:00
James Rowe 9fdc89a456 SPSCQueue: Add PopWait
Adds a condition var to SPSCQueue so when a new log is pushed it will
wake the consumer thread that is calling PopWait. This only applies to
to queues with NeedSize=true
2018-03-16 11:18:06 +08:00
James Rowe 47f0185bcd fixup! move message 2018-03-16 11:18:06 +08:00
James Rowe 7b78425d6b Address review comments 2018-03-16 11:18:06 +08:00
James Rowe f6762f05cd Use the correct linker flag for mingw 2018-03-16 11:18:06 +08:00
James Rowe 0daac3020e Logging: Add customizable logging backends and fmtlib based macros
* Change the logging backend to support multiple sinks through the
Backend Interface
* Add a new set of logging macros to use fmtlib instead.
* Qt: Compile as GUI application on windows to make the console hidden by
default. Add filter configuration and a button to open log location.
* SDL: Migrate to the new logging macros
2018-03-16 11:18:06 +08:00
BreadFish64 55d5720962 use nvidia graphics automatically on laptops with optimus 2018-03-15 20:36:53 -05:00
Weiyi Wang a0f70912e1
Merge pull request #3513 from valentinvanelslande/layouts-fix,gitignore
.gitignore: Add CMakeLists.txt.user to Project/editor files, citra_qt: Sync menu UI settings after changing the layout with F10
2018-03-15 15:54:24 +02:00
wwylele 9c785814e7 Common/Hash: static_assert on the type passed to HashableStruct 2018-03-15 02:27:21 +02:00
wwylele 30cc8c10cd
Common/Hash: abstract HashableStruct from GLShader::PicaShaderConfig 2018-03-14 00:12:40 +02:00
wwylele 9f8ff7b04e swrasterizer: implement shadow map rendering 2018-03-13 13:07:07 +02:00
wwylele ae75d3032f swrasterizer: implement shadow map sampling 2018-03-13 12:56:19 +02:00
wwylele ce2ad7436e swrasterizer/lighting: implement shadow attenuation 2018-03-13 12:56:19 +02:00
B3n30 fd20c8c321 remove MacAddressToString 2018-03-13 11:00:05 +01:00
B3n30 b6d52f0299 Fix formatting of mac address in error log 2018-03-13 10:52:44 +01:00
Valentin Vanelslande 2f165a1ca6
citra_qt: Sync menu UI settings after changing the layout with F10 2018-03-12 18:40:54 -06:00
Weiyi Wang 6c63bb11d9
Merge pull request #3503 from j-selby/fix-leaky-enet
Handle ENet packet destruction if the packet is not sent anywhere
2018-03-11 18:40:49 +02:00
Merry 141c007037
Merge pull request #3505 from kemenaran/fix-qt-viewport-resize
Fix QGLWidget viewport resize on macOS
2018-03-11 15:25:26 +00:00
James a2b65f0669 Correctly cleanup ENet packets if not used
This additionally adds logging when bad MAC addresses are found when transferring packets between clients
2018-03-12 01:38:54 +11:00
Weiyi Wang e9900d8035
Merge pull request #3071 from B3n30/dedicated_room
Network: Added an executable to host an dedicated room for local wifi
2018-03-11 16:04:55 +02:00
Pierre de La Morinerie c4dbdeba0a Fix QGLWidget viewport resize on macOS
This fixes #2092, a long-standing bug where on macOS resizing the window
results in a garbled display.

It seems the seemingly optional child()->makeCurrent call is actually
required on macOS. Enabling it in all cases fixes the resize issue.
2018-03-11 19:22:30 +05:30
B3n30 2d464e79dc fixe typos 2018-03-11 12:58:00 +01:00
wwylele 889d8aaab3 gl_rasterizer/cache: only reallocate cubemap when size/format mismatch 2018-03-11 13:31:29 +02:00
wwylele ea82203780
ipc_helper: remove interface for operating on command buffer directly
Now IPC helpers are only supposed to use on top of ServiceFramework
2018-03-10 13:37:05 +02:00
wwylele b179b86f14
Service/CFG: convert to ServiceFramework 2018-03-10 13:37:03 +02:00
wwylele 15e8664ef7 gl_rasterizer: implement texture cube 2018-03-10 01:15:06 +02:00
wwylele 672fbcf37d Memory: remove RasterizerCachedSpecial page type 2018-03-10 01:14:38 +02:00
wwylele 92c7bb9d20 pica/gl_shader: optimize ternary operator 2018-03-10 01:14:05 +02:00
wwylele 0d6db4a0b3 lighting: compute highlight clamp after one-/two-sided diffuse pass 2018-03-10 01:14:05 +02:00
B3n30 29d6e05044 Let connected clients handle the eapol packet 2018-03-09 19:15:06 +01:00
B3n30 d4cc0d8148 Fix path for travis upload 2018-03-09 19:11:32 +01:00
B3n30 b3cdf30c65 fixup! Network: Added an executable to host an dedicated room for local wifi 2018-03-09 19:11:32 +01:00
B3n30 a40ef602a3 Network: Added an executable to host an dedicated room for local wifi 2018-03-09 19:11:32 +01:00
James Rowe f61141e86a Update the entire application to use the new clang format style 2018-03-09 10:54:43 -07:00
wwylele e40d693057 Service/NFC: convert to ServiceFramework 2018-03-09 18:59:04 +02:00
Ben 42d68d6ea4
Merge pull request #3470 from wwylele/news-framework
Service/NEWS: convert to ServiceFramework
2018-03-09 17:52:21 +01:00
bunnei 3cda637cb1
Merge pull request #3478 from j-selby/libpng-switch
Remove PICA image dumping, burn libpng
2018-03-07 18:03:38 -05:00
Vamsi Krishna 04cc8fb537 Discard Gas mode renders (#3486)
* Discard gas_mode renders

This discards the gas_mode / fog effect from games that use it and allows the games to display without it.  Note that gas mode is still unimplemented and will LOG<CRITICAL>.
This bypasses #3287. (Doesn't fix it)

* fix clang
2018-03-07 18:02:36 -05:00
Weiyi Wang 5dc8ac80dd
Merge pull request #3469 from wwylele/frd-new-framework
Service/FRD: convert to ServiceFramework
2018-03-07 15:33:49 +02:00
James 077a519338 Remove unused DUMP_TEXTURES definition 2018-03-07 09:13:24 +11:00
James 9829a84fc6 Remove PICA image dumping/libpng 2018-03-07 09:10:54 +11:00
bunnei 1a2f29aad0
Merge pull request #3474 from wwylele/fuck-you-unimplemented
assert: do not crash on unimplemented code in debug build
2018-03-06 11:46:30 -05:00
tgsm 7054b63d4d Service/CFG: add system model value for New 2DS XL 2018-03-06 02:11:01 -05:00
wwylele e004e9505e assert: do not crash on unimplemented code in debug build 2018-03-05 14:53:19 +02:00
Weiyi Wang 4befbddc34
Merge pull request #3281 from jroweboy/texcache-pt2
Texture Cache Rework
2018-03-05 11:57:25 +02:00
wwylele c2515ff39d clang-format fix 2018-03-05 11:09:20 +02:00
James Rowe 1d419bac1b Disable accelerated texture copy for Texture surfaces 2018-03-04 22:06:09 -07:00
James Rowe f3234db5e2
Merge pull request #3440 from B3n30/file_read_delay
File_Sys: Add a size dependent delay for each file read
2018-03-04 21:32:50 -07:00
James Rowe 739f8e5367 Fix clang format 2018-03-04 20:59:42 -07:00
James Rowe ce725f24ca
Merge pull request #3444 from jroweboy/fix-multiplayer
UDS: Add non zero mac address to the shared page
2018-03-04 20:40:37 -07:00
James Rowe d26cf11399 Fix clang format 2018-03-04 20:27:22 -07:00
James Rowe 878217372b Remove useless static cast 2018-03-04 20:16:36 -07:00
wwylele 61069d2b67 Service/NEWS: convert to ServiceFramework 2018-03-04 20:47:55 +02:00
wwylele 3566987ecc Service/NEWS: fix command id for news:u:AddNotification
this one is different from the one in news:s
2018-03-04 20:47:54 +02:00
wwylele 54af348cfc IPC helpers: remove deprecated static buffer interface 2018-03-04 14:47:33 +02:00
wwylele 6ebd3f396f Service/FRD: convert to ServiceFramework 2018-03-04 14:47:32 +02:00
wwylele 5178e5bce1 fix clang-format 2018-03-04 13:30:29 +02:00
Weiyi Wang e4d558d114
Merge pull request #3468 from wwylele/nim-new-framework
Service/NIM: convert to ServiceFramework
2018-03-04 13:25:54 +02:00
Ben d6157a49db APT: Implement SendCaptureBufferInfo and ReceiveCaptureBufferInfo (#3467)
* APT: Implement SendCaptureBufferInfo and ReceiveCaptureBufferInfo

* adressed comments

* Clear screen_capture_buffer on Receive

* fix response in ReceiveCaptureBufferInfo

* fix response in ReceiveCaptureBufferInfo

* fix clang-format
2018-03-04 13:25:33 +02:00
wwylele 508bba2932 Service/NIM: convert to ServiceFramework 2018-03-03 19:25:26 +02:00
Weiyi Wang 001ad9da3b
Merge pull request #3462 from wwylele/am-new-framework
Service/AM: convert to ServiceFramework
2018-03-03 18:29:47 +02:00
Ben 7c1a22358a
Merge pull request #3456 from hubslave/master
Fix build on OpenBSD
2018-03-02 21:58:43 +01:00
hubslave 93fd55249b Fix build on platforms without std::string_view
json.hpp wants it, but it isn't always available. Rather than patch
json.hpp directly to remove the dependency, provide a json.h wrapper
header that subs in std::experimental::string_view using preprocessor
magic. All the consumers of json.hpp are in src/web_service, so the
wrapper header is placed there as well.
2018-03-02 18:15:45 +02:00
hubslave fd79b70a87 externals: Update fmt to 4d35f94
Versions prior to this didn't compile on OpenBSD due to unconditional
use of the non-standard strtod_l() function.

The fmt::MemoryWriter API has been removed in the intervening
versions, so replace its use with fmt::memory_buffer and fmt::format_to.

The library also no longer provides the fmt::fmt ALIAS, so define
it in externals/CMakeLists.txt.
2018-03-02 18:12:51 +02:00
wwylele 7c4ed77e06 Service/AM: fix some headers 2018-03-02 02:53:59 +02:00
wwylele 61e5f320c9 ipc_helpers: remove some deprecated functions 2018-03-02 02:53:59 +02:00
wwylele e19475481c Service/AM: convert to ServiceFramework 2018-03-01 17:02:34 +02:00
B3n30 98771a6363 GSP_GPU: Release the GPU right if the active session closes the gsp_gpu session 2018-03-01 14:54:38 +01:00
wwylele ff15d887fa remove dead code 2018-03-01 15:02:51 +02:00
Weiyi Wang 941ccaeed6
Merge pull request #3441 from wwylele/fs-new-framework
Service/FS: convert to ServiceFramework
2018-03-01 14:51:24 +02:00
Valentin Vanelslande ac626edabc Service/AM: Implement DeleteProgram and DeleteUserProgram (#3446)
* Update am.cpp

* Update am.h

* Update am_net.cpp

* Service/AM: Implement DeleteProgram

* fix clang

* Address comments

* Service/AM: DeleteProgram: Scan for all titles after deleting the title

* fix

* Service/AM: DeleteProgram: return error if the title was not found

* fix clang

* [skip ci]

* [skip ci]

* [skip ci]

* [skip ci]

* Service/AM: Implement DeleteUserProgram

* fix clang

* FileUtil::DeleteDirRecursively unexpectedly failed
2018-02-28 16:25:33 +02:00
Weiyi Wang 0cea9c54ac
Merge pull request #3434 from BreadFish64/MultipleInstalls
QT: allow installation of multiple CIAs
2018-02-28 15:55:15 +02:00
MerryMage 90b835758f decode: Fix PCM8 decoding
Signal range is -32767 to 32768, not -127 to 128.
2018-02-25 12:42:21 +00:00
B3n30 d8ac3a3435 Fix include 2018-02-24 14:46:42 +01:00
B3n30 143878a474 Rebased usage of SleepClientThread 2018-02-24 14:25:02 +01:00
B3n30 06a7676ed1 Add DelayGenerator for all file backends 2018-02-24 14:15:57 +01:00
B3n30 58b16c5459 File_Sys: Add a size dependend delay for each file read 2018-02-24 14:15:57 +01:00
James Rowe 1f87766b86 Change to use CryptoPP random and address review comments 2018-02-22 22:31:58 -07:00
hubslave 27b20359b4 core: EMULTIHOP isn't defined on all Unixes 2018-02-22 23:29:54 +02:00
hubslave 13a6e091b7 Common: fix swap functions on Bitrig and OpenBSD
swap{16,32,64} are defined as macros on the two, but client code
tries to invoke them as Common::swap{16,32,64}, which naturally
doesn't work. This hack redefines the macros as inline functions
in the Common namespace: the bodies of the functions are the
same as the original macros, but relying on OS-specific
implementation details like this is of course brittle.
2018-02-22 23:29:43 +02:00
James Rowe 752cfcaaae Move writing to shared page to the nwm init 2018-02-22 10:20:34 -07:00
James Rowe ffe94421b2 UDS: Add non zero mac address to the shared page
Apparently several games check the shared page mac address and wifi
link level values, and will refuse to start UDS if they are not correct.
This change gives a default value (in case you aren't connected to a
network) and will read the value from Room if you are connected.
2018-02-22 10:17:38 -07:00
wwylele 26a9c5832d keep the namespace comment 2018-02-22 17:46:31 +02:00
wwylele d9500ecf9b Revert "Kernel/Threads: Add a new thread status that will allow using a Kernel::Event to put a guest thread to sleep inside an HLE handler until said event is signaled" 2018-02-22 17:31:58 +02:00
Weiyi Wang e2eab46535
Merge pull request #3070 from B3n30/uds_connect_disconnect
NWM_UDS: change to Service Framework
2018-02-22 16:55:59 +02:00
wwylele dfc22661a4 NWM_UDS: change SleepClientThread to use std::chrono::nanoseconds 2018-02-22 16:44:04 +02:00
Weiyi Wang 48512d9011
Merge pull request #3101 from Subv/hle_thread_pause2
Kernel/Threads: Add a new thread status that will allow using a Kernel::Event to put a guest thread to sleep inside an HLE handler until said event is signaled
2018-02-22 16:23:34 +02:00
wwylele 42ab8d9d0b HLE: specify that the command buffer is an array of u32_le 2018-02-22 16:12:39 +02:00
Subv b0f4390247 HLE: Use std::chrono::nanoseconds instead of a plain u64 in SleepClientThread. 2018-02-21 22:03:46 -05:00
BreadFish64 165d3e1ab2 tidy loop 2018-02-19 17:11:46 -06:00
wwylele f3d22ccde4 APT: don't skip translation parameters 2018-02-19 22:30:38 +02:00
James Rowe 33fe6c30e0
Merge pull request #3322 from MerryMage/DSP
audio_core: Remove global state
2018-02-19 09:08:37 -07:00
B3n30 853a79c94c clang-format fix 2018-02-17 13:45:52 +01:00
B3n30 7cb3d84a98 HW checked signals Disconnect, Destroy and Shutdown 2018-02-17 12:54:48 +01:00
BreadFish64 f0f9f34445 move callback definition outside loop 2018-02-16 14:53:38 -06:00
wwylele e003e75dc5 FS: fix wrong response header of Initialize 2018-02-16 21:33:39 +02:00
B3n30 237835a8b6 NWM_UDS: More of wwyleles comments 2018-02-15 23:00:32 +01:00
B3n30 cbf514190e NWM_UDS: Addressed wwyleles comments 2018-02-15 22:48:27 +01:00
B3n30 cc6a83621c fix clang 2018-02-15 22:48:27 +01:00
B3n30 d793624c61 fixup! NWM_UDS: Convert to service framework 2018-02-15 22:48:27 +01:00
B3n30 27e6e03d16 Fixups from Subvs comments 2018-02-15 22:48:27 +01:00
B3n30 520ecf7be6 NWM_UDS: Convert to service framework 2018-02-15 22:48:27 +01:00
B3n30 5904e11215 fixup! UDS: Add coonnect and disconnect 2018-02-15 22:48:27 +01:00
B3n30 f29a9ac3c1 UDS: Add coonnect and disconnect 2018-02-15 22:48:27 +01:00
wwylele 6c6e42375c FS: correct maximum session
the number is got from FS module code
2018-02-15 23:28:03 +02:00
wwylele 36169144b5 FS: fix documentation of service functions 2018-02-15 23:03:21 +02:00
wwylele 71fac7bd72 FS: convert to service framework 2018-02-15 23:02:09 +02:00
wwylele e8c95a9a41 ipc_helpers: add PopPID; remove PushCurrentPIDHandle
It doesn't make sense for a service to tell its own PID to a client, and there is no such use case. Also the name "handle" is misleading as the PID is not a handle
2018-02-15 11:16:41 +02:00
wwylele 19d7324075 fs/archive: convert Directory to ServiceFramework 2018-02-14 21:47:08 +02:00
wwylele 4935dcaf56 fs/archive: remove dead code
the std::hash bug is fixed in gcc 6.1, and we are now targeting 7.0 , so the workaround is no longer needed
2018-02-14 19:49:54 +02:00
Weiyi Wang 775fb388c2
Merge pull request #3429 from Cuyler36/fs_user-stub-secure-value-functions
Service/FS_User: Stub Secure Value Functions
2018-02-14 17:32:26 +02:00
bunnei b9963e131c
Merge pull request #3421 from wwylele/apt-new-framework-2
Service/APT: convert to ServiceFramework
2018-02-14 10:06:49 -05:00
BreadFish64 c547465657 install multiple CIAs sequentially 2018-02-13 18:16:26 -06:00
wwylele c4db298a7d
HLE/IPC: remove assertion on empty buffer.
Some service functions do require to push an empty buffer in some cases. See APT:ReceiveParameter/GlanceParameter
2018-02-11 00:09:52 +02:00
wwylele 66141ed004 apt: fix doc format 2018-02-09 18:10:46 +02:00
Weiyi Wang 3c03da12c8
Merge pull request #3069 from B3n30/announce_room_webservice
Announce room webservice
2018-02-08 18:46:10 +02:00
Cuyler36 71c7dddac4 Service/FS_User: Stub Secure Value Functions
Stubbing these functions results in save loading fixes in games which require a secure value.

An example is shown here with Animal Crossing: New Leaf:
[Before](https://puu.sh/zidZC/f1523e81cb.png)

[After](https://puu.sh/zifeT/57026eae44.png)
2018-02-06 19:31:22 -05:00
James Rowe 18456ff9e6 Address Lioncash's comments 2018-02-05 20:31:50 -07:00
MerryMage adf9a19095 fixup! audio_core: Remove global state 2018-02-04 22:23:51 +00:00
BreadFish64 752e6e62b8
correct escape sequence warning 2018-02-03 13:33:18 -06:00
wwylele 8970e28031
APT: convert to ServiceFramework 2018-02-03 19:40:22 +02:00
MerryMage 7c7fddd7bd tests: Remove HandleSpecialMapping test for DSP region
Memory::GetPhysicalPointer for the DSP region requires a valid
Core::System::dsp_core.
2018-02-03 15:15:17 +00:00
MerryMage ab3d53131a audio_core: Remove global state 2018-02-03 15:15:17 +00:00
bunnei dca5fd291f
Merge pull request #3272 from MerryMage/dynarmic
core/arm: Backend-specific context implementations
2018-02-02 12:27:52 -08:00
Paulo Faustino 8e4b806419 More accessible screen layout settings. (#3340)
* Remove borders from status bar items

On Ubuntu the status bar didn't look as good as on Windows due to some border being drawn around each status bar cell.

* Revert "Remove borders from status bar items"

This reverts commit 15fd32bf2b33d72f5c1b589b35c8dd6232ad263c.

* Remove borders from status bar items 

On Ubuntu the status bar didn't look as good as on Windows due to some border being drawn around each status bar cell.

* More accessible screen layout settings.

Depending on the game I'm playing I find myself needing to switch screen layouts very often and it's currently a hassle to have to open the settings dialog in order to do that so I've added shortcuts for the screen layout options and swap screen option on the main menu plus I added a keyboard shortcut to quickly toggle between the available layouts during game play (F10). I've also updated the swap screen shortcut (F9 now, used to be Ctrl + Tab) so it's next to the layout toggle shortcut by default (F9 and F10).

* Clean up.
2018-02-02 12:19:49 -08:00
BreadFish64 d3a0375f47 Add Context Menu Options to Open Application and Update Location (#3411)
* Add Context Menu Options to Open Application and Update Location

* address jroweboy's feedback

move enum definition to game list header
declare sdmc_dir in SAVE_DATA case
fix log formatting

* Address Merry's feedback

remove redundant line
format program ID as 16 digit hex in log|
change case of open_target to look better in title bar
add whitespace for readability
2018-02-02 12:18:19 -08:00
bunnei 40b9e55e60
Merge pull request #3408 from wwylele/apt-new-framework
APT/Applet: move applet management into its own class
2018-02-02 12:15:57 -08:00
bunnei ee0bd3a8db
Merge pull request #3367 from wwylele/y2r-new-framework
Service/Y2R: convert to ServiceFramework
2018-02-02 12:12:47 -08:00
Phantom 9e16a3c449 ConvertD24S8toABGR: fix fb attachment 2018-01-31 08:55:39 -07:00
Phantom d813bc5eb5 D24S8 to RGBA8 conversion 2018-01-31 08:55:19 -07:00
Phantom db21154142 GetFramebufferSurfaces: Remove an assert that is no longer correct 2018-01-31 08:54:19 -07:00
Merry 5a57578ce9
Merge pull request #3402 from BreadFish64/installed-game-list
Allow Installed Apps to Display in the Game List
2018-01-27 00:32:36 +00:00
BreadFish64 79e4fe58dc fix comparison operator 2018-01-26 17:12:50 -06:00
Weiyi Wang e53e07b528
Merge pull request #3325 from BreadFish64/CompatibiltyReporting
Add ability to send test cases through telemetry
2018-01-27 00:56:55 +02:00
James Rowe b002511df0
citra-qt: Add customizable speed limit target (#3353)
citra-qt: Add customizable speed limit target

* Update SDL config for the new frame_limit option
* Made max lag time a function of target speed percent.
* Added a checkbox to enable/disable frame limiter
* UI: Prevent frame_limit from under/overflowing
* UI: Hide target speed percent when frame limiter is off
* Disable frame limit spin box when framelimit isn't enabled
2018-01-25 22:24:40 -07:00
BreadFish64 4f5892d86d
Fix comparison operators 2018-01-25 20:50:22 -06:00
wwylele 92f0064b47
APT/Applet: move applet managing into its own class 2018-01-25 22:20:08 +02:00
BreadFish64 db3c83fedc
remove spaces 2018-01-24 10:17:04 -06:00
BreadFish64 1e54b52edf
revert move 2018-01-24 10:16:40 -06:00
B3n30 33b0b5163f
Merge pull request #3136 from Subv/mem_aliasing1
Kernel/Memory: Added a function to change the memory state of an address range
2018-01-24 10:17:25 +01:00
BreadFish64 eb1b5f588a only pass one smdh 2018-01-23 21:32:27 -06:00
BreadFish64 4da837c929 only search to two recursions, add update dir to watch list 2018-01-23 14:13:54 -06:00
Subv a7a5c5aa0d Kernel/IPC: Partially implement MappedBuffer translation.
Right now only MappedBuffers that only span a single page and are not aligned are implemented.

MappedBuffers are unmapped during the reply part of ReplyAndReceive. Only unmapping of ReadOnly buffers is currently implemented.
2018-01-23 08:27:00 -05:00
Subv 928202f744 Kernel/VMManager: Added a function to map a block of memory into the first available address after a given base. 2018-01-23 08:24:15 -05:00
Subv 07089cfb3c Tests: Added some tests for the VMManager class.
Covering basic operations like mapping, unmapping, reprotecting and changing memory state.
2018-01-23 08:21:12 -05:00
Subv e4f35f70ac Memory: Added a function to change the memory state of an address range.
This will be useful when implementing memory aliasing operations.
2018-01-23 08:19:47 -05:00
James Rowe 44d07574b1
Merge pull request #2882 from danzel/movie-squash
Movie (Game Inputs) recording and playback
2018-01-23 01:03:37 -07:00
James Rowe 0e8c25fdfa
Merge pull request #3361 from wwylele/ptm-new-framework
Service/PTM: convert to ServiceFramework
2018-01-22 11:57:44 -07:00
BreadFish64 38c5ca68b2 reduce the scope of the variables 2018-01-22 07:56:24 -06:00
Tobias 4247826358
Minor spelling fix 2018-01-21 14:08:13 +01:00
Phantom 88f6521511 AccelerateTextureCopy: Better support for contiguous copy 2018-01-20 18:39:27 -07:00
BreadFish64 980923d351 allow installed apps to display in the game list 2018-01-20 11:33:14 -06:00
BreadFish64 fc1bdc3c62 enum class 2018-01-20 09:56:02 -06:00
James Rowe bf4e35b916
Merge pull request #3399 from FearlessTobi/patch-1
Remove "tr" from image formats in graphics_surface.cpp
2018-01-19 08:17:40 -07:00
Reegea85 0ea85b935a
citra-qt: fix broken About box
Fixing contributor ink in about box. Link missing https:
2018-01-19 15:26:03 +01:00
BreadFish64 169b076913 use enum and add default case 2018-01-18 21:02:55 -06:00
Tobias ae4e8bc316
Remove tr from image formats 2018-01-18 23:04:31 +01:00
literalmente-game 7cf9bc88a3
Update configure_web.cpp
Typo
2018-01-18 18:08:33 -02:00
BreadFish64 c3afd73592
Merge branch 'master' into CompatibiltyReporting 2018-01-18 10:36:32 -06:00
James Rowe e1ffcde355
Merge pull request #3297 from wwylele/translation-tx
citra-qt: add translation support; link translation with transifex
2018-01-18 09:01:00 -07:00
Adityarup Laha 93cca23dd6 Variable tilt clamp (#3366)
* Add tilt clamp setting

* Updated `clamp` to use variable

* Fixed a minor typo

* Include possibly necessary header

* expose setting in sdl2

* expose setting in qt

* incorporate @wwylele 's suggestion in sdl2

* Incorporate @wwylele 's suggestion (?)

Please review the code, this is the first time I'm working with `ParamPackage`s so I may just screw up the code.

* Forgot to change in qt

* Fixed an fatal error

* fixed clang format error

* remove the old setting

* fixed typos cusing errors

* removed old setting

* Changed init style

* Forgot this one

* Removed unnecessary header inclusion

* Update config.cpp

* update qt-config

* Update motion_emu.cpp

* Update motion_emu.cpp
2018-01-17 17:30:50 -05:00
BreadFish64 11d2825070
only enable menu visibility 2018-01-17 13:57:42 -06:00
Yuri Kunde Schlesner 3a001c41bb Common: Use common swap.h macros in CityHash 2018-01-15 13:43:38 -08:00
Yuri Kunde Schlesner 3e456cd3fe Common: Fix 2 implicit conversion warnings in CityHash 2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner 712e6ee960 Common: Remove CityHash32 and CityHashCrc128 variants
In 64-bit systems, CityHash64 is always strictly better than CityHash32.
CityHashCrc128 requires SSE 4.2.
2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner f081388afe Common: Adapt CityHash code to match our codebase better
- Use #pragma once instead of guards
- Move header typedefs to implementation file
- Enclose in Common namespace
2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner d93ee65164 Common: Add convenience function for hashing a struct 2018-01-15 13:43:37 -08:00
Yuri Kunde Schlesner 7f77820460 Common: Replace MurmurHash3 with CityHash64
CityHash64 is faster than Murmur3 at all sizes, but especially for short
keys.
2018-01-15 01:11:11 -08:00
Emmanuel Gil Peyrot c361dad7d2 Citra: Print the actual error preventing SDL from working 2018-01-13 21:41:51 +01:00
wwylele f42f7dfcab
Service/Y2R: convert to ServiceFramework 2018-01-12 13:38:20 +02:00
Weiyi Wang 9b647d459b
Merge pull request #3324 from Subv/gspgpu
Services: Keep track of per-session data in GSPGPU
2018-01-11 20:03:46 +02:00
BreadFish64 ca96077601
1 -> d 2018-01-11 10:57:44 -06:00
BreadFish64 b71d9e108d address wwylele's feedback 2018-01-10 19:05:14 -06:00
bunnei 2e41810608
Merge pull request #3333 from Senjosei/pause-coreerror
citra_qt: Pause emulation on CoreError
2018-01-10 12:16:51 -05:00
wwylele 9be3ce83db
Service/PTM: convert to ServiceFramework 2018-01-10 14:23:35 +02:00
Emmanuel Gil Peyrot 7f9fae5f7c Telemetry: Disable CPU detection on ¬x86_64 2018-01-08 19:21:21 +01:00
Emmanuel Gil Peyrot e5a3dc2956 Core: Disable the JIT when dynarmic is not available 2018-01-08 19:13:58 +01:00
Emmanuel Gil Peyrot 2cd2a7491c CMakeLists: Disable dynarmic on ¬x86_64 2018-01-08 17:58:00 +01:00
Subv 34685f48dc GSP: Allow the signaling of the PDC0/1 interrupts even if the GPU right hasn't been acquired.
This was verified with a hwtest.
2018-01-06 13:51:33 -05:00
BreadFish64 68959823e9 move menu action 2018-01-06 11:56:12 -06:00
Weiyi Wang a66e4585a0
Merge pull request #3304 from wwylele/hid-new-framework
HID: convert to ServiceFramework
2018-01-04 11:04:57 +02:00
Subv aa90198ec5 Services: Make SessionDataBase's destructor virtual. 2018-01-03 10:52:46 -05:00
Dwayne Slater 41929371dc Optimize AttributeBuffer to OutputVertex conversion (#3283)
Optimize AttributeBuffer to OutputVertex conversion

First I unrolled the inner loop, then I pushed semantics validation
outside of the hotloop.

I also added overflow slots to avoid conditional branches.

Super Mario 3D Land's intro runs at almost full speed when compiled with
Clang, and theres a noticible speed increase in MSVC. GCC hasn't been
tested but I'm confident in its ability to optimize this code.
2018-01-02 15:32:33 -08:00
Subv 75f68c4860 Services/GSP: Mark the thread ids as unused when a GSP session is destroyed.
This fixes the games that call RegisterInterruptRelayQueue and UnregisterInterruptRelayQueue frequently.
2018-01-02 12:10:58 -05:00
Subv d17f148e48 Services/GSP: Assign a thread id to each connected session when the session is created.
Most applications call AcquireRight before calling RegisterInterruptRelayQueue so we can't assign the thread id there.
This fixes the bug with LLE applets not launching properly.
2018-01-02 12:07:26 -05:00
Weiyi Wang 3f7f2b42c0
Merge pull request #3257 from tgsm/y2r-ipc
y2r: convert some functions to use IPC helper
2018-01-02 12:55:56 +02:00
Yuri Kunde Schlesner 337e9e12eb
Merge pull request #3335 from mailwl/citra-sdl-small-fix
citra(SDL) small fixes: fix fall-through
2018-01-01 21:00:10 -08:00
tgsm ee779a5a4d y2r: convert some functions to use IPC helper 2018-01-01 22:46:34 -05:00
BreadFish64 e768a92587 add compatibility reporting to qt frontend 2018-01-01 19:25:38 -06:00
Merry e203c10cc2
Merge pull request #3336 from PizzicatoWolf/qt-layout-fixes
citra_qt: Resized main config window
2017-12-31 21:17:25 +00:00
wwylele 7daa2a51d7
Kernel/SVC: fix typo in GetResourceLimitLimitValues 2017-12-30 23:42:32 +02:00
Phantom 7f1aec8fbb Support for textures smaller than 8*8 2017-12-30 07:42:32 +01:00
PizzicatoWolf 8fa160395b Revert index change 2017-12-30 14:51:45 +10:30
PizzicatoWolf e0e4b70f6a Resized main config window 2017-12-30 14:10:05 +10:30
mailwl f93d656e53 citra(SDL) small fixes: fix fall-through, remove u16 'always true' compare 2017-12-29 21:04:10 +03:00
Phantom be1d0cee1e Fix viewport to surface rect clamping 2017-12-29 17:07:01 +01:00
Phantom 19672cfee8 CachedSurface: Add microprofile scopes for UploadGLTexture and DownloadGLTexture 2017-12-29 17:01:37 +01:00
Phantom 1591fa8d3d Remove read_framebuffer_handle and draw_framebuffer_handle from CachedSurface 2017-12-29 17:00:09 +01:00
Senjosei fb72a9d9fa Fixed clang whitespace 2017-12-29 06:31:18 +11:00
Senjosei f17600db1a Moved when to pause because it wasnt fast enough 2017-12-29 06:17:21 +11:00
Senjosei bbe6c8890c Pause emulation OnCoreError 2017-12-29 06:15:59 +11:00
Subv fbef978b98 GSP: Return the correct result code if AcquireRight is called multiple times from the same thread. 2017-12-24 12:15:01 -05:00
Subv 68fc3b36e6 HLE/GSP: Only trigger GSP interrupts for the current active GSP thread.
This is true for all interrupts except PDC0 and PDC1, which should be triggered for all registered threads.

TODO: The real GSP module seems to only trigger PDC0 after updating the screens (both top and bottom). PDC1 doesn't seem to be triggered at all.
2017-12-24 12:15:00 -05:00
Subv 05a44ed353 HLE/GSP: Keep track of the thread that currently has the GPU right.
This thread is the only one for which the GSP interrupts should be signaled, except for the PDC0/1 interrupts.
2017-12-24 12:14:59 -05:00
Subv aabb07cca4 HLE/GSP: Make RegisterInterruptRelayQueue work in a per-session basis.
The registered interrupt event is unique to each session that calls RegisterInterruptRelayQueue, and only that event should be reset when UnregisterInterruptRelayQueue is called.
2017-12-24 12:14:58 -05:00
James Rowe 1c4d1d1ace Move trasnfer_framebuffer to a member of RasterCache. Address review comments 2017-12-23 16:10:32 -07:00
James Rowe 10fb9242ae Fix clang format 2017-12-23 16:10:32 -07:00
James Rowe 4e053220a8 When downloading from a surface into gl_buffer, ingore any x/y offsets in rect and use 0,0 as the origin 2017-12-23 16:10:31 -07:00
James Rowe 7e673af527 Remove the correct intervals from the surface when validating 2017-12-23 16:10:31 -07:00
James Rowe ac4c589ab5 Workaround for ICE on gcc5 2017-12-23 16:10:31 -07:00
Phantom 9a6a452857 Fix broken surface validation logic since removal of the reinterpret hack 2017-12-23 16:10:30 -07:00
Phantom f893daa4a2 Perform the same checks on TexCopy params that SW does 2017-12-23 16:10:30 -07:00
James Rowe 91fad7010b Fix compilation on mac and linux 2017-12-23 16:10:30 -07:00
James Rowe 34ff77f5f7 Revert "OpenGL Cache: Ignore format reinterpretation hack"
Testing found a few games that did some crazy things which breaks the
assumptions made in that commit.
2017-12-23 16:10:29 -07:00
James Rowe 72034b772d Minor style changes 2017-12-23 16:10:29 -07:00
James Rowe 0498d34d18 OpenGL Cache: Ignore format reinterpretation hack
Several games such as Smash will cause some regions that are cached on
the gpu to be revalidated, but (seemingly) we can just ignore these
cases. If the data is already found on the gpu in dirty_regions, then we
validate those, and skip flushing that region from cpu.

Its unknown if this breaks any games, but it does speed up many games.
Additionally, it removes outlines in the pokemon games.
2017-12-23 16:10:29 -07:00
James Rowe 5b872c41d8 OpenGL Cache: Reorder methods
The previous commits added the methods where they were located
originally to try to get an easy to read diff between changes. This
commit fixes compliation since the static methods are now declared
before they are used.
2017-12-23 16:10:28 -07:00
James Rowe 24e187891f OpenGL Rasterizer: Update to use the new cache 2017-12-23 16:10:28 -07:00
James Rowe e5adb6a26b OpenGL Cache: Add the rest of the Cache methods
Fills in the rasterizer cache methods using the helper methods added in
the previous commits.
2017-12-23 16:10:27 -07:00
James Rowe 81ea32d1e0 OpenGL Cache: Refactor Surface Cache interface
Changes the public interface of the surface cache to make it easier to
use. Reintroduces the cached page count cached pages that was removed in
an earlier commit.
2017-12-23 16:10:27 -07:00
James Rowe 3e1cbb7d14 OpenGL Cache: Split CachedSurface
Breaks CachedSurface into two classes, the parameters used to create or
find a cached surface, and the actual cached surface. This also adds a
few helper methods for getting surfaces from cache
2017-12-23 16:10:27 -07:00
James Rowe 0b98b768f5 OpenGL Cache: Add surface utility functions
Separates creating and filling surfaces into static functions that
can be reused from the different RasterizerCache methods.
2017-12-23 16:10:26 -07:00
James Rowe e9e2d444ef OpenGL Cache: Optimize Morton Copy to copy in tiles
Compiles two lookup arrays of functions for the different
configurations of Morton Copy.
2017-12-23 16:10:26 -07:00
James Rowe 160ac25527 OpenGL State: Change setters so they don't directly write to curstate 2017-12-23 16:10:25 -07:00
James Rowe 13606a6d0b Memory: Remove count of cached pages and add InvalidateRegion
In a future commit, the count of cached pages will be reintroduced in
the actual surface cache. Also adds an Invalidate only to the cache
which marks a region as invalid in order to try to avoid a costly flush
from 3ds memory
2017-12-23 16:10:25 -07:00
James Rowe c821c14908 Settings: Change resolution scaling to an integer instead of a float 2017-12-23 16:10:25 -07:00
Sebastian Valle c3c684cd2b
Merge pull request #3301 from Subv/exitprocess2
Kernel/SVC: Partially implemented svcExitProcess.
2017-12-23 10:49:36 -05:00
wwylele 80ed0f03ac cmake: add missing ${...} for variables inside generator expressions 2017-12-23 03:00:15 +02:00
wwylele bf23f8d542 HID: convert to ServiceFramework 2017-12-22 12:41:41 +02:00
wwylele 5345d2e957 fixup!citra_qt: load translation from resource 2017-12-22 12:34:49 +02:00
Sebastian Valle ae42267cc7
Merge pull request #3307 from Subv/gsp_new_frame
HLE: Convert GSP_GPU to ServiceFramework.
2017-12-21 10:31:41 -05:00
Subv 3652809408 HLE: Convert GSP_GPU to ServiceFramework.
The only functional change is the error handling of GSP_GPU::ReadHWRegs function. We previously didn't return error codes (not even for success). The new returns were found by reverse engineering the GSP module.
2017-12-21 10:30:22 -05:00
MerryMage 19814d68c1 gdbstub: Correct typo
Constructing and destructing a Core::System instance for the
GetInstance() call isn't the smartest thing to do.
2017-12-20 18:47:06 +00:00
Merry c6293d7357
Merge pull request #3312 from lioncash/qt5-connect
citra_qt: Migrate to Qt 5 signal/slot connection syntax where applicable
2017-12-19 14:24:39 +00:00
Merry 3f37976fd3
Merge pull request #3309 from wwylele/cro-session-slot
ldr_ro: use ServiceFramework's session slot for client slot
2017-12-18 18:22:39 +00:00
Merry 32b2d5bdfe
Merge pull request #3253 from lioncash/mic-ipc
mic_u: Migrate to the new service framework
2017-12-18 14:34:47 +00:00
Lioncash a73f135868
citra_qt: Migrate to Qt 5 signal/slot connection syntax where applicable
This is more type-safe than the string-based signal/slot syntax that was
being used. It also makes the connections throughout the UI code consistent.
2017-12-17 18:44:48 -05:00
Weiyi Wang 4c3a4ab664
Merge pull request #3306 from lioncash/qt4
citra_qt: Drop Qt 5 version checks in code
2017-12-17 12:08:21 +02:00
danzel 0238e0c5e7 Convert Movie to a class with a static instance, and other fixes based on B3n30 feedback. 2017-12-17 17:55:56 +13:00
danzel 04541150b1 Movie (recorded inputs) playback and recording. SDL has command lines to control it. 2017-12-17 16:43:09 +13:00
wwylele eeec04fcaa ldr_ro: use ServiceFramework's session slot for client slot 2017-12-17 01:43:12 +02:00
Subv f4b595331f GSP/GPU: Make FrameBufferInfo::active_fb use the entire u32 instead of just one bit.
The GSP module reads the entire 32 bit word from this field to determine the framebuffer.
2017-12-16 13:33:42 -05:00
Lioncash 9ec0609ae5
citra_qt: Drop Qt 5 version checks in code
We don't support Qt 4.x anymore.
2017-12-16 13:26:14 -05:00
Lioncash 8e53599deb
game_list: Use forward declarations where applicable
Reduces the number of header dependencies propagated by the header file.
2017-12-16 13:14:23 -05:00
Sebastian Valle 125f5d1e68
Merge pull request #3284 from Subv/session_data
HLE/Services: Allow specifying a SessionData template parameter to ServiceFramework.
2017-12-16 09:14:34 -05:00
wwylele 500a7f07c2 cmake: generate translation file and add to resource for citra_qt 2017-12-16 13:11:05 +02:00
wwylele 62890b253e citra_qt: load translation from resource 2017-12-16 13:11:05 +02:00
Mat M d3112aedba
Merge pull request #3295 from lioncash/qt4
citra_qt: CMakeLists: Drop leftover handling code for Qt 4 UI files
2017-12-15 19:49:22 -05:00
Lioncash d613c6f74f mic_u: Migrate to the new service framework 2017-12-15 19:22:58 -05:00
Lioncash c681090d06 citra_qt: CMakeLists: Drop leftover handling code for Qt 4 UI files
We don't support Qt 4 anymore.
2017-12-15 19:01:21 -05:00
Subv 1856aa7b32 Kernel/SVC: Partially implemented svcExitProcess.
Terminating processes with ready threads is not currently implemented and will assert. It is currently unknown how the 3DS kernel stops ready threads or threads running in another core.
2017-12-15 15:47:33 -05:00
Sebastian Valle 4fd28e715e
Merge pull request #3252 from Subv/fs_user
HLE/FS: Converted some functions to use IPCHelpers
2017-12-15 15:40:36 -05:00
Sebastian Valle 4b4e1861c7
Merge pull request #3265 from Subv/getappletinfo
HLE/APT: Implement GetAppletInfo for LLE applets.
2017-12-15 10:29:53 -05:00
bunnei 95d4d7c864
Merge pull request #3292 from Tilka/inf_nan
video_core: fix infinity and NaN conversions
2017-12-15 09:58:48 -05:00
Subv 9a22e8d9ed HLE/APT: Implement GetAppletInfo for LLE applets.
Calling this function for AppletId::Application is not yet implemented because we don't support launching applications from APT.
2017-12-14 19:30:12 -05:00
Subv 674bd550a4 HLE/APT: Stubbed FinishPreloadingLibraryApplet.
An applet is considered "loaded" when the parent application calls this function.
2017-12-14 19:30:11 -05:00
Lioncash 761101f64c input_common: Remove redundant target_sources in CMakeLists 2017-12-14 19:21:02 -05:00
Sebastian Valle 542f14d3c5
Merge pull request #3249 from Subv/logo
NCCH: Load the "logo" file from the specified offset if it's present instead of the ExeFS.
2017-12-14 18:30:19 -05:00
Subv b5bfaaae29 HLE/FS: Use the SessionData parameter of ServiceFramework in the File class. 2017-12-14 18:24:03 -05:00
Subv daecd812b0 HLE/Services: Allow specifying a SessionData template parameter to ServiceFramework.
Some services can have multiple clients at the same time, and they identify the different clients using the server session as a key.
This parameter (if present) should be a structure that contains the per-session data for each service.
The data can be retrieved using ServiceFramework::GetSessionData(session)
2017-12-14 18:24:02 -05:00
Tillmann Karras fd3ec6be30 video_core: fix infinity and NaN conversions 2017-12-14 19:51:58 +00:00
B3n30 a5e63a8c35 Use Common::Event 2017-12-14 12:36:37 +01:00
B3n30 423df498d9 fixup! Announce-Service: Add conditional variable for the wait in the announce thread 2017-12-14 12:36:37 +01:00
B3n30 eba2351f9e Announce-Service: Add conditional variable for the wait in the announce thread 2017-12-14 12:36:37 +01:00
B3n30 93742f17b3 fixup! fixup! Add a service to announce multiplayer rooms to web service; Add the abiltiy to receive a list of all announced rooms from web service 2017-12-14 12:36:37 +01:00
B3n30 1485093fd9 fixup! Add a service to announce multiplayer rooms to web service; Add the abiltiy to receive a list of all announced rooms from web service 2017-12-14 12:36:37 +01:00
B3n30 0432fc17eb Add a service to announce multiplayer rooms to web service; Add the abiltiy to receive a list of all announced rooms from web service 2017-12-14 12:36:37 +01:00
bunnei 4b8a7eb1ca
Merge pull request #3192 from wwylele/cro-new-frame
ldr_ro: convert to ServiceFramework
2017-12-13 22:30:03 -05:00
bunnei c23c39132a
Merge pull request #3239 from wwylele/cam-new-frame
cam: convert to ServiceFramework
2017-12-13 22:27:58 -05:00
bunnei 892b681f17
Merge pull request #3240 from muemart/input-config
Add button labels for sdl joystick mappings
2017-12-13 22:27:01 -05:00
bunnei 9b598d936d
Merge pull request #3248 from wwylele/ir-new-frame
ir: convert to ServiceFramework
2017-12-13 22:24:51 -05:00
Subv 2552efac01 HLE/FS: Use PopEnum in OpenFile. 2017-12-13 19:51:36 -05:00
Subv d790ac465c HLE/FS: Use IPCHelper in CreateFile. 2017-12-13 19:51:21 -05:00
muemart 23732a9ab3 Use static functions instead of lambdas 2017-12-13 19:06:14 +01:00
Yuri Kunde Schlesner aecd2b85fe
Merge pull request #3261 from MerryMage/DPH
shader_jit_x64_compiler: Use haddps for horizontal summation
2017-12-13 09:09:42 -05:00
Subv 92e71aff57 HLE/FS: Use IPCHelper in DeleteDirectoryRecursively. 2017-12-12 17:48:15 -05:00
Subv 67382e46c0 HLE/FS: Use IPCHelper in DeleteDirectory. 2017-12-12 17:48:12 -05:00
Subv b631f77d11 HLE/FS: Use IPCHelper in RenameFile. 2017-12-12 17:48:10 -05:00
Subv a6c69bfca0 HLE/FS: Use IPCHelper in DeleteFile. 2017-12-12 17:48:07 -05:00
Subv e9a70ce2fc HLE/FS: Use IPCHelper in OpenFileDirectly. 2017-12-12 17:48:03 -05:00
Subv 90fdc8dcbf FS: Make LowPathType a strongly typed enum. 2017-12-12 17:48:00 -05:00
Sebastian Valle 6afd091c37
Merge pull request #3235 from Subv/dlp3
HLE/FS: Implemented FSFile::OpenSubFile.
2017-12-12 17:01:18 -05:00
bunnei 4695f12a08
Merge pull request #3264 from lioncash/cmake-target
CMakeLists: Derive the source directory grouping from targets themselves
2017-12-12 14:34:51 -05:00
MerryMage fb2d34997e core/arm: Backend-specific context implementations 2017-12-12 19:12:03 +00:00
MerryMage 7d5c3b00a8 dynarmic: Update to d1d4705 2017-12-12 19:08:53 +00:00
Subv c9ddd5b0ae HLE/FS: Implemented FSFile::OpenSubFile.
The File class now holds a list of connected sessions along with data unique to each session.

A subfile is a window into an existing file. They have a few limitations compared to normal files:

* They can't be written to.
* They can't be flushed.
* Their size can not be changed.
* New subfiles can't be created from another subfile.
2017-12-12 13:34:02 -05:00
Sebastian Valle b4bb74a101
Merge pull request #3268 from lioncash/ipc-enum
ipc_helpers: Add member functions for pushing and popping strongly typed enums
2017-12-12 12:52:02 -05:00
MerryMage 6c199e4699 fixup! shader_jit_x64_compiler: Use haddps for horizontal summation 2017-12-12 15:37:00 +00:00
Lioncash ab021d163e CMakeLists: Derive the source directory grouping from targets themselves
Removes the need to store to separate SRC and HEADER variables,
and then construct the target in most cases.
2017-12-11 21:11:52 -05:00
James Rowe b88ed528a3
Merge pull request #3275 from MerryMage/shutdown-before-init
core: Don't Shutdown before we've even Init-ed
2017-12-11 18:50:16 -07:00
Yuri Kunde Schlesner ae7240a2cb
Merge pull request #3097 from ds84182/round-primary-color-swrast
Round primary color in swrast
2017-12-11 20:06:21 -05:00
MerryMage 533feb42d1 core: Don't Shutdown before we've even Init-ed 2017-12-12 00:30:46 +00:00
Merry 5c802d35ef
Merge pull request #3262 from lioncash/warn
common/core: Silence initialization order warnings
2017-12-11 19:52:53 +00:00
Sebastian Valle 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
Sebastian Valle 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
Yuri Kunde Schlesner 87ac05a575
Merge pull request #3271 from lioncash/retval
ncch: Add missing return statement in ReadUpdateRomFs
2017-12-11 02:25:35 -05:00
Yuri Kunde Schlesner 422c7b29b0
Merge pull request #3266 from lioncash/qt-bootmgr
bootmanager: Minor tidiness/correctness changes
2017-12-11 01:53:35 -05:00
Lioncash eb58dbda32 ncch: Add missing return statement in ReadUpdateRomFs 2017-12-11 01:33:08 -05:00
Lioncash 91a804707b ipc_helpers: Add member functions for pushing and popping strongly typed enums
Alleviates the need to static_cast to an enum type at the call sites of the Push and Pop calls.

We only allow strongly typed enums, as they have a defined type of int
by default if an underlying type isn't explicitly specified, whereas
with regular enums, if an underlying type isn't specified, an
implementation-defined  type is used that can fit all the enumeration
values.
2017-12-10 23:10:00 -05:00
Lioncash e439725271 bootmanager: Make EmuThread's IsRunning() member function const 2017-12-10 20:12:47 -05:00
Lioncash 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
Lioncash 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
Lioncash c31f932afe common/core: Silence initialization order warnings 2017-12-10 19:50:45 -05:00
Yuri Kunde Schlesner 9699194b54
Merge pull request #3258 from yuriks/gs-cleanup
Small GS cleanups
2017-12-10 17:21:04 -05:00
MerryMage efec8fe513 shader_jit_x64_compiler: Use haddps for horizontal summation 2017-12-10 22:04:30 +00:00
B3n30 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
Subv 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
Subv 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
Sebastian Valle c72262d7e3
Merge pull request #3246 from Steveice10/pxidev
HLE: Add pxi:dev stub.
2017-12-10 12:21:35 -05:00
Sebastian Valle 2859b98884
Merge pull request #3234 from Subv/dlp2
HLE/FS: Implemented FS::GetProgramLaunchInfo.
2017-12-10 08:58:08 -05:00
Sebastian Valle 951b023a3d
Merge pull request #3259 from lioncash/init-order
ac: Correct constructor initialization order
2017-12-10 08:46:11 -05:00
Yuri Kunde Schlesner 312281fd61
Merge pull request #3256 from yuriks/move-svc
HLE: Move svc.cpp to kernel/
2017-12-10 01:13:46 -05:00
Lioncash 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
Yuri Kunde Schlesner 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
Yuri Kunde Schlesner 21188f5683 HLE: Move SVC handlers to the Kernel namespace 2017-12-09 20:32:58 -08:00
Yuri Kunde Schlesner 0184419814 Shader: Refactor output_mask copy loop to function 2017-12-09 20:31:24 -08:00
Yuri Kunde Schlesner 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
Sebastian Valle ae82b8d5cc
Merge pull request #3232 from Dragios/add-applet-id
Services/APT: Add remaining Applet IDs
2017-12-09 21:12:25 -05:00
Yuri Kunde Schlesner ad71e23f23 HLE: Move svc.{cpp,h} to kernel/ 2017-12-09 18:10:47 -08:00
Subv 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
Dragios 8b864a74e9 Add new AppID (eShop) 2017-12-10 07:38:56 +08:00
Dragios ebb731b9a1 Fill up the rest of Applet IDs 2017-12-10 07:38:23 +08:00
Merry 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
Steveice10 16b26e73c9 HLE: Add pxi:dev stub. 2017-12-09 14:45:56 -08:00
Lioncash 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
Lioncash 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
James Rowe 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
Subv 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
James Rowe a5b7a1fa7a
Merge pull request #3247 from muemart/crash
Fix crash when loading an unsupported file
2017-12-09 09:49:24 -07:00
Subv 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
wwylele 35b1306941 ir_user: convert to ServiceFramework 2017-12-09 18:14:51 +02:00
wwylele 4812e98e05 ir_rst: convert to ServiceFramework
also fix the wrong header in Shutdown
2017-12-09 18:14:51 +02:00
muemart 53741c6ebd Add translation support for button labels 2017-12-09 16:11:17 +01:00
muemart 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
wwylele f3e41fe941 ir_u: convert to ServiceFramework 2017-12-09 12:34:23 +02:00
Subv b54e278eeb FS/ExtData: Use the ExtSaveDataArchivePath structure instead of reinterpret_cast. 2017-12-09 00:17:43 -05:00
Subv 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
wwylele 5026480b36 svc: correct GetProcessInfo(20) 2017-12-08 21:28:48 +02:00
Sebastian Valle 69caf8c5dc
Merge pull request #3236 from Tilka/block_name
cfg: refer to ConsoleModelBlockID by name
2017-12-08 09:01:22 -05:00
muemart 441a9b5622 Add button labels for sdl joystick mappings 2017-12-08 13:08:42 +01:00
wwylele 07acc6ceab cam: convert to ServiceFramework 2017-12-08 11:20:48 +02:00
Tillmann Karras 6752576de9 cfg: refer to ConsoleModelBlockID by name 2017-12-08 06:56:00 +00:00
Subv 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
Lioncash ff96c5dba0 svc: Provide names for svc 0x59 and 0x5A
Updated according to 3dbrew.
2017-12-07 22:14:55 -05:00
bunnei 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
wwylele 2b907dadf4 cro_helper: add todo about process handle 2017-12-07 16:20:15 +02:00
wwylele 9749a43cc4 ldr_ro: create per-client storage; pass process where needed 2017-12-07 16:01:01 +02:00
wwylele 8e4e663113 memory: add overload with process parameter for ZeroBlock and CopyBlock 2017-12-07 15:59:54 +02:00
wwylele de8dbbf0b6 ldr_ro: convert to ServiceFramework 2017-12-07 15:59:54 +02:00
Lioncash 088c8521bf dyncom: Remove unnecessary includes 2017-12-07 00:02:55 -05:00
bunnei 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
bunnei 77493860ca
Merge pull request #3228 from lioncash/explicit
arm: Make CPU backend constructors explicit
2017-12-06 22:44:39 -05:00
bunnei d8ba07a430
Merge pull request #3227 from MerryMage/cro
Allow for partial invalidation of instruction cache
2017-12-06 22:43:58 -05:00
Lioncash 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
Lioncash 982039be95 arm_dynarmic_cp15: Add missing header guard 2017-12-06 19:51:46 -05:00
Lioncash e960628a14 arm: Make CPU backend constructors explicit
Avoids implicit conversions
2017-12-06 19:37:56 -05:00
MerryMage a9af4be363 ldr_ro: Use ranged instruction cache invalidation 2017-12-06 20:59:09 +00:00
MerryMage 647e553f64 ARM_Interface: Allow for partial invalidation of instruction cache 2017-12-06 20:57:55 +00:00
Sebastian Valle 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
Subv 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
B3n30 b9db9af9e8 fixup! Applet: Print unknown AppletId on ASSERT 2017-12-06 13:52:21 +01:00
B3n30 ddc59e3881 Applet: Print unknown AppletId on ASSERT 2017-12-06 12:41:46 +01:00
muemart e784434a25 Allow input configuration with SDL joysticks (#3116)
* Add infrastructure to poll joystick input and get ParamPackages

* Generalize the callbacks in configure_input.cpp and add buttons for analog sticks

* Use the polling classes in the input dialog

* Fix includes

* Formatting fix

* Include real header instead of forward declaring, to fix compiler error

* Split up pair and add deadzone for joystick configuration

* Pass ParamPackages by reference to callback

* fix formatting

* getPollers -> GetPollers

* Add forward declarations and simplify code a bit

* Update joysticks before opening them

* Fix mixup between joystick IDs and device indices
2017-12-05 23:26:29 -05:00
bunnei e165b5bb94
Merge pull request #3184 from MerryMage/timing
core/arm: Improve timing accuracy before service calls in JIT
2017-12-05 23:12:24 -05:00
Lioncash 8599b1e7cc dyncom: Convert the SPSR checking define to a function
Same thing, with less indirection hiding
2017-12-05 20:07:45 -05:00
Tillmann Karras 1c2750d5bd video_core: optimize NaN check 2017-12-05 22:34:22 +00:00
CDAGaming 2052a201c0 Fix Clang Format Error 2017-12-05 14:21:59 -05:00
Subv 3d000c834b Kernel/Threads: Implement an SleepClientThread function for HLERequestContext-based services to make performing async tasks on the host while in an HLE service function easier.
An HLE service function that wants to perform an async operation should put the caller guest thread to sleep using SleepClientThread, passing in a callback to execute when the thread is resumed.
SleepClientThread returns a Kernel::Event that should be signaled to resume the guest thread when the host async operation completes.
2017-12-05 14:21:59 -05:00
wwylele 6050d000fa fs: correct header code; remove dead code 2017-12-05 16:34:01 +02:00
Yuri Kunde Schlesner 9f806384f5
Merge pull request #3190 from Subv/errf_srv_framework
HLE/Services: Convert err:f to the new ServiceFramework.
2017-12-05 00:49:44 -05:00
bunnei 56db8e0858
Merge pull request #3173 from shinyquagsire23/nfc-o3ds-stub
Services/NFC: Stub StartTagScanning as it should be for o3DS
2017-12-04 16:11:54 -05:00
bunnei 990846f393
Merge pull request #3174 from MerryMage/vfp_reg_zero
dyncom: Remove VFP_REG_ZERO
2017-12-04 16:10:28 -05:00
bunnei 79e246d82f
Merge pull request #3185 from lioncash/vec-index
vector_math: Return by const reference for const operator[]
2017-12-04 16:05:03 -05:00
Subv 30bffb1964 HLE/Services: Convert err:f to the new ServiceFramework. 2017-12-04 14:03:11 -05:00
B3n30 3249187ad6
Merge pull request #3181 from wwylele/ipc-handle-split
ipc_helper: split PushMoveObjects and PushCopyObjects
2017-12-04 18:49:42 +01:00
wwylele fda023c9fa ipc_helper: split PushMoveObjects and PushCopyObjects 2017-12-04 19:46:44 +02:00
FearlessTobi 8942bfd759 Fix a bug in the fullscreen implementation 2017-12-04 17:42:23 +01:00
Lioncash cc2ff226ae vector_math: Return by const reference for const operator[]
Makes behavior between both overloads consistent.
2017-12-03 19:35:54 -05:00
Merry e23c3cd7f7
Merge pull request #3145 from MerryMage/lg2-ex2
shader_jit_x64_compiler: Remove ABI overhead of LG2 and EX2
2017-12-03 17:38:38 +00:00
MerryMage f6dfdc3588 core/arm: Improve timing accuracy before service calls in CPU interpreter 2017-12-03 16:40:21 +00:00
MerryMage 7cd8b437aa core/arm: Improve timing accuracy before service calls in JIT
We also correct the CPU JIT's implementation of Step.
2017-12-03 16:06:46 +00:00
wwylele ff00cb391a service/ptm: add missing % in logging 2017-12-03 11:52:42 +02:00
Weiyi Wang 2664042325
Merge pull request #3086 from Subv/swkbd_launch
HLE/APT: Allow launching native applets instead of HLE ones.
2017-12-03 11:38:29 +02:00
Weiyi Wang 14819d0b84
Merge pull request #3138 from wwylele/ipc-mapped-buffer
Kernel/IPC: Implement MappedBuffer translation for HLE services that use the HLERequestContext architecture.
2017-12-03 11:33:48 +02:00
Weiyi Wang 466bec2d43
Merge pull request #3144 from BreadFish64/CIAInstallUI
QT CIA installation
2017-12-03 11:32:58 +02:00
B3n30 0acc3ed62f SDL: add multiplayer options (#3072)
* SDL: Add multiplayer options

* SDL: Make the exit conditions LOG_ERROR

* fixup! SDL: Make the exit conditions LOG_ERROR
2017-12-03 11:29:48 +02:00
wwylele 94ae0b1305 HLE/Tests: add tests for MappedBuffer IPC HLE translation 2017-12-03 00:05:20 +02:00
wwylele a79a8d17fa FS: transform File to ServiceFramework 2017-12-03 00:05:20 +02:00
wwylele cef6b15de4 IPC Helpers: Implement MappedBuffer translation helper for new interface 2017-12-03 00:05:20 +02:00
wwylele 3ecf650bf9 Kernel/IPC: Implement MappedBuffer translation for HLE services that use the HLERequestContext architecture. 2017-12-03 00:05:20 +02:00
BreadFish64 80852f918a add CIA installation to QT frontend 2017-12-02 15:35:20 -06:00
MerryMage b37a850654 dyncom: Remove VFP_REG_ZERO
Fixes two issues that will never happen:

1. There are cases when VFP_REG_ZERO will be non-zero, but these will
   never be encoutered in well behaved guest code (i.e. writing to D16).

2. If CONFIG_VFPv3 is defined, accessing VFP_REG_ZERO would be out of
   bounds.
2017-12-02 12:06:51 +00:00
shinyquagsire23 5ad4cf619e Services/NFC: Stub StartTagScanning as it should be for o3DS 2017-12-01 12:42:23 -07:00
James Rowe fcf0d104c9
Merge pull request #3161 from lioncash/catch
externals: Update catch to v2.0.1
2017-11-30 12:02:45 -07:00
MerryMage c1aef260af shader_jit_x64_compiler: Remove ABI overhead of LG2 and EX2
This involves reimplementing log2f and exp2f.
2017-11-30 18:17:35 +00:00
MerryMage 235a251d3c tests: Add tests for x64 shader jit
Tests LG2 and EX2 instructions
2017-11-30 18:17:35 +00:00
Lioncash f51fa38a1b externals: Update catch to v2.0.1 2017-11-29 19:19:33 -05:00
Lioncash 89f67ad90f services: Silence warnings related to logging 2017-11-29 18:59:54 -05:00
Dwayne Slater fcc141a327 Maintain the PICA's 8 bits of color precision when using the interpolated primary color
This matches the software renderer by using round.
The actual hardware rounds the results up instead of flooring.
2017-11-29 16:49:04 -05:00
Dwayne Slater 350082ab75 Fix logic ops not being enabled in the OpenGL renderer 2017-11-29 16:30:19 -05:00
Dwayne Slater dc48deaecc Round primary color inputs in software rasterizer
OpenGL version coming soon.
2017-11-29 16:30:18 -05:00
bunnei b2a99043e3
Merge pull request #2968 from Subv/hle_thread_pause
Kernel/Threads: Add a new thread status that will allow using a Kernel::Event to put a guest thread to sleep inside an HLE handler until said event is signaled
2017-11-29 10:45:48 -05:00
bunnei 16dcec05d1
Merge pull request #3151 from MerryMage/looping-bug
Audio/HLE/Source: Fix looped state not updating
2017-11-29 10:43:06 -05:00
bunnei d00b17eb43
Merge pull request #3162 from lioncash/packet
packet: Simplify operator bool overload
2017-11-29 10:41:13 -05:00
Lioncash 94999bde5b room/room_member: Silence -Wswitch warnings 2017-11-28 21:09:53 -05:00
Lioncash 0a988e07cb packet: Simplify operator bool overload
Previously this would cause a -Wnull-conversion warning
2017-11-28 21:00:24 -05:00
Sebastian Valle dc5d7a802f
Merge pull request #3120 from shinyquagsire23/ncch-container-offsets
file_sys/ncch_container: Expose ncch_offset during instantiation and in OpenFile
2017-11-28 11:48:46 -05:00
Subv 1be31e271a NS/Applets: Added the MiiSelector applet to the list of native applet ids. 2017-11-28 09:12:52 -05:00
Subv 9543e1a1bf HLE/IPC: Don't assert in HLERequestContext::AddStaticBuffer when there's already a static buffer with the desired id.
This could happen if the guest application performs a request with static buffer id X, and the service module responds with another static buffer with the same id X.
2017-11-28 09:01:15 -05:00
B3n30 e9a95b2e7d
CoreTiming: Reworked CoreTiming (#3119)
* CoreTiming: New CoreTiming; Add Test for CoreTiming
2017-11-25 14:56:57 +01:00
MerryMage 8a5cc14ba4 Audio/HLE/Source: Fix looped state not updating
Bugfix for ff280800.
2017-11-25 11:10:10 +00:00
James Rowe b7cf793814
Merge pull request #3113 from shinyquagsire23/sdl-cia-install
SDL CIA Installation
2017-11-24 10:23:20 -07:00
shinyquagsire23 70ff3c72f1 Services/AM: Detect encrypted CIAs 2017-11-20 20:45:21 -07:00
shinyquagsire23 c0eb233bf1 file_sys/title_metadata: Fix encrypted bitmask 2017-11-20 20:45:06 -07:00
shinyquagsire23 253954930f Services/AM: Return InstallStatus for InstallCIA 2017-11-19 21:56:02 -07:00
James Rowe de0af83719
Merge pull request #3135 from MerryMage/d-ClearInstructionCache
arm_dynarmic: ClearInstructionCache should clear all instruction caches
2017-11-19 16:39:04 -07:00
B3n30 c0a7afaa5c
Libnetwork: add password protected rooms, guid, and error fixes (#3068)
* Network: Add password protected roomsand GUID

* Limit chat message size
2017-11-19 19:52:37 +01:00
Merry 4071da5012
Merge pull request #3124 from jroweboy/revert-2985
Revert "Extracted the attribute setup and draw commands into their own functions"
2017-11-19 18:21:48 +00:00
Sebastian Valle 555c8ba7c1
Merge pull request #3077 from Subv/hle_static_buffer
Kernel/IPC: Implement StaticBuffer translation for HLE services that use the HLERequestContext architecture.
2017-11-19 11:34:02 -05:00
Sebastian Valle ff275ac1e1
Merge pull request #3083 from Subv/lle_staticbuffer_translation
Kernel/IPC: Handle the StaticBuffer descriptor in LLE command requests.
2017-11-19 11:31:49 -05:00
MerryMage 2d917f8ca0 arm_dynarmic: ClearInstructionCache should clear all instruction caches
Bugfix of 67a70bd.
2017-11-19 14:47:14 +00:00
James Rowe 9d9693c13d Revert "Extracted the attribute setup and draw commands into their own functions"
This reverts commit b3b34a1e76. This
commit causes a performance regression for not enough benefits
2017-11-16 11:46:17 -07:00
shinyquagsire23 549f11a40e file_sys/ncch_container: Expose ncch_offset during instantiation and in OpenFile 2017-11-15 17:43:15 -07:00
shinyquagsire23 553ca2bfe0 SDL: Add command-line CIA installs 2017-11-15 16:05:37 -07:00
shinyquagsire23 56e906f1e3 Services/AM: Add InstallCIA function for frontends 2017-11-15 16:05:37 -07:00
shinyquagsire23 1f2aa29dee Services/AM: Move CIA finalization into Close(), Close() on destruction of class 2017-11-15 16:05:33 -07:00
shinyquagsire23 750e7e06b1 Services/AM: Expose CIAFile class in AM header 2017-11-15 12:05:03 -07:00
Sebastian Valle 947067de81
Merge pull request #3085 from Subv/get_service_handle
HLE/SRV: Don't return the port handle if it isn't available when calling GetServiceHandle.
2017-11-15 13:46:12 -05:00
shinyquagsire23 1edbbf7f8c Services/AM: Add GetTitleMediaType 2017-11-15 11:26:00 -07:00
James Rowe 5eabe60aa3
Merge pull request #2969 from mailwl/ptm_step
Service/PTM: Stub GetStepHistory function
2017-11-15 09:39:17 -07:00
Subv afb6dd7747 HLE/SRV: Don't return the port handle if it isn't available when calling GetServiceHandle.
This was incorrect behavior that somehow found its way to 3dbrew. The correct behavior is to sleep until the port becomes available again and then return a session to it.

This is currently unimplemented due to the inability to put a guest thread to sleep during HLE requests.

The correct behavior was reverse engineered by TuxSH a while ago but we never corrected the code in citra.
2017-11-15 11:26:49 -05:00
Sebastian Valle f0027e9996
Merge pull request #3096 from Subv/arbitrateaddress
Kernel/Arbiters: When doing ArbitrateAddress(Signal), always pick the highest priority thread, using the first one that was put to sleep if more than one thread with the same highest priority exists.
2017-11-15 09:16:16 -05:00
Sebastian Valle 93742ec510
Merge pull request #3088 from Subv/clientsession_closing
Kernel/Sessions: Wake up any threads waiting on a ServerSession when its client is closed
2017-11-15 09:15:34 -05:00
Max Thomas 689fe57430 Services/AM: Fix content writing on Windows (#3114) 2017-11-15 10:26:16 +01:00
Valentin Vanelslande 2cf7cda1c4
fix framelimit in default ini 2017-11-13 22:03:24 -06:00
Subv 35a61ab053 HLE/Tests: Added tests for the StaticBuffer IPC HLE translation. 2017-11-12 11:00:00 -05:00
Subv c9c1ba0952 Kernel/IPC: Implement StaticBuffer translation for HLE services that use the HLERequestContext architecture.
The real kernel requires services to set up their static buffer targets ahead of time. This implementation does not require that and will simply create the storage for the buffers as they are processed in the incoming IPC request.

Static buffers are kept in an unordered_map keyed by their buffer id, and are written into the already-setup area of the request thread when responding an IPC request.

This fixes a regression (crash) introduced in #2992.

This PR introduces more warnings due to the [[deprecated]] attribute being added to void PushStaticBuffer(VAddr buffer_vaddr, size_t size, u8 buffer_id); and VAddr PopStaticBuffer(size_t* data_size);
2017-11-12 11:00:00 -05:00
Subv c68adb787b Kernel/Arbiters: When doing ArbitrateAddress(Signal), always pick the highest priority thread, using the first one that was put to sleep if more than one thread with the same highest priority exists.
This is consistent with hardware behavior as shown by this test https://gist.github.com/ds84182/40e46129bd38b46a5100f15f96ba5eaf
2017-11-08 18:47:08 -05:00
Sebastian Valle 908dbf4230
Merge pull request #3084 from Subv/thread_default_cpu
Kernel/Thread: Use the process' ideal CPU when specifying the Default CPU on CreateThread.
2017-11-08 14:38:50 -05:00
Sebastian Valle 67df3c2c38
Merge pull request #3092 from BreadFish64/patch-1
Get Rid of Redundant ! in CIA loading code.
2017-11-08 14:38:20 -05:00
James Rowe ddee442ff8
Merge pull request #3093 from Subv/missing_includes
Added missing headers to CMakeLists.txt and fixed includes.
2017-11-07 20:09:19 -07:00
Subv 5e9d76337d Build: Added missing <array> includes to title_metadata.h and cia_container.h 2017-11-07 22:06:34 -05:00
Subv d683d34aa4 Filesys: Added some missing headers to the CMakeLists.txt after the recent stream of PRs. 2017-11-07 22:04:51 -05:00
BreadFish64 e2cac1d7db
Get Rid of Redundant ! 2017-11-07 19:31:55 -06:00
Sebastian Valle 7d12aaaa20
Merge pull request #3087 from shinyquagsire23/am-more-errors
Services/AM: Add errors and adjust naming for accuracy
2017-11-07 09:09:48 -05:00
shinyquagsire23 c07f1b275c Services/AM: Rename and readjust GetNumContentInfos for accuracy 2017-11-06 21:36:49 -07:00
shinyquagsire23 d854d4119a Services/AM: Rename and adjust ListContentInfos for accuracy 2017-11-06 21:35:00 -07:00
shinyquagsire23 c6e43ae79d Services/AM: Rename and adjust FindContentInfos for accuracy 2017-11-06 21:35:00 -07:00
shinyquagsire23 ac2ee3035a file_sys/cia_container: Fix warnings 2017-11-06 21:35:00 -07:00
shinyquagsire23 69cc04a06d Services/AM: Fix warnings 2017-11-06 21:34:54 -07:00
Subv 06a2e0b591 Kernel/Sessions: Wake up any threads waiting on a ServerSession when its client is closed
The error code 0xC920181A will be returned by svcReplyAndReceive when the wakeup callback runs.
This lets LLE services be properly notified of clients closing the connection so they can end their handler threads instead of letting them linger indefinitely, taking up connection slots in their parent port.
2017-11-06 23:07:08 -05:00
Subv d1de6b8864 HLE/APT: Try to launch a native applet in PrepareToStartLibraryApplet and PreloadLibraryApplet before falling back to HLE applets.
With this commit, you can run native applets if they are in the correct folder of your virtual NAND.

Trying to exit the applet will currently cause an invalid read loop due to svcExitProcess not being implemented.
2017-11-06 16:42:26 -05:00
Subv ecb1c6d2a1 HLE/APT: Added a function to retrieve the titleid of an applet based on the current system region.
The table was taken from the real APT service, but is incomplete due to the sheer amount of data it contains. There's 29 applets with 7 possible titleids. This table should be filled as needed.
2017-11-06 16:42:26 -05:00
Subv 191565a1b8 HLE/NS: Added a function to launch titles installed to the virtual NAND/SD card.
It uses AM::GetTitleContentPath to retrieve the path of the program to launch.
2017-11-06 15:12:15 -05:00
Subv ccd0710e5b Logging: Add a Service_NS log class for the NS service. 2017-11-06 14:51:57 -05:00
Sebastian Valle c6b2cc2e27
Merge pull request #3082 from Subv/main_thread_processor
Kernel/Thread: Run the main thread in the CPU specified by the process' exheader.
2017-11-06 14:00:24 -05:00
Subv a288c2e737 Kernel/Thread: Use the process' ideal CPU when specifying the Default CPU on CreateThread.
This behavior was reverse engineered from the real kernel.
2017-11-06 13:47:48 -05:00
Subv 2d9e295e07 Kernel/IPC: Handle the StaticBuffer descriptor in LLE command requests.
This descriptor requires the target process to set up a "receive buffer" beforehand, where the input data will be written to when the descriptor is processed.
2017-11-06 13:30:31 -05:00
bunnei 6e12b11353
Merge pull request #3078 from Subv/ac_sessions
Services/AC: Corrected the number of concurrent connections for AC_I and AC_U
2017-11-06 13:21:29 -05:00
Subv 980df62397 Kernel/Thread: Run the main thread in the CPU specified by the process' exheader.
System services usually have Core1 in this field, but citra was running them in Core0 regardless.
2017-11-06 13:14:31 -05:00
Sebastian Valle d55a13c35d
Merge pull request #2981 from Subv/replyreceive
Kernel/SVC: Implement LLE command buffer translation in ReplyAndReceive
2017-11-06 13:02:30 -05:00
wwylele 3b960fe651 citra-qt: fix broken About box 2017-11-06 18:08:53 +02:00
Subv 23deae4785 Debugging: Implement GetName for Kernel::ServerSession.
Fixes the "[UNKNOWN KERNEL OBJECT]" message in the wait tree when inspecting a server session.
2017-11-06 10:47:06 -05:00
Subv 5f92dc963c Kernel/SVC: Implement LLE command buffer translation in ReplyAndReceive.
The real kernel's ReplyAndReceive will retry the call until one of the objects can be acquired without causing a translation error, this is not currently implemented and the code will instead assert that the translation was a success.
2017-11-06 10:47:04 -05:00
Subv 8f108367c9 Kernel/IPC: Put a thread to sleep when performing an LLE IPC request.
It will be awoken when the server replies to the request via svcReplyAndReceive.
2017-11-06 10:46:19 -05:00
Subv 33c5982f6d Kernel/Threads: Added a new thread status to identify threads waiting for an IPC reply from svcSendSyncRequest. 2017-11-06 10:46:19 -05:00
Subv 8e2d9f48f5 Kernel/IPC: Remove dead buffer translation code.
This is all implemented elsewhere, HLERequestContext for HLE requests, and svcReplyAndReceive for LLE requests.
2017-11-06 10:46:18 -05:00
Subv 7cf7999e02 Kernel/IPC: Added a function to translate the IPC command buffer from one process to another.
Currently only CopyHandle, MoveHandle and CallingPid descriptors are implemented.
2017-11-06 10:46:12 -05:00
wwylele 4fdc877626 remove trailing spaces 2017-11-06 13:57:06 +02:00
Sebastian Valle ff17773c28
Kernel/Mutex: Add a missing return in Mutex::Release
Fixes a regression in #3042.
Closes #3079
2017-11-05 21:31:22 -05:00
Sebastian Valle 8ba2de1580
Merge pull request #3029 from shinyquagsire23/am-title-install
Services/AM: Add CIA title installation support.
2017-11-05 21:23:55 -05:00
shinyquagsire23 e00a45c500 Services/AM: Add CIA title installation support. 2017-11-05 13:26:29 -07:00
shinyquagsire23 7ea04bb55c Services/AM: Fix log commands 2017-11-05 13:26:29 -07:00
shinyquagsire23 714206e4ce Service/FS: Mark FileBackend's Write as non-const 2017-11-05 13:26:29 -07:00
shinyquagsire23 ca2b6c6c8e file_sys/errors: Add ERROR_INSUFFICIENT_SPACE 2017-11-05 13:26:29 -07:00
shinyquagsire23 ce806dcdf6 file_sys/title_metadata: Allow loading from both files, FileBackends, and data 2017-11-05 13:26:29 -07:00
shinyquagsire23 b3e87d01fb file_sys: Add CIA Container 2017-11-05 13:26:25 -07:00
Subv d4077b0196 Services/AC: Corrected the number of concurrent connections for AC_I and AC_U
The number was reverse engineered from the AC module.
2017-11-05 14:28:06 -05:00
Weiyi Wang 4fc0448093
Merge pull request #3064 from wwylele/printf-warnings
Clean all format warnings
2017-11-05 10:32:46 +02:00
James b579bf0cc2 Fixed up method docs for updater 2017-11-04 15:10:59 -06:00
James 53a88a0e13 Fix edge case for checking for updates when already deferred 2017-11-04 15:00:24 -06:00
James 7361ee9750 Defer update prompt if emulating, and show no update found on explicit click 2017-11-04 15:00:24 -06:00
James Rowe 2e6c80d1aa Qt updater integration, based on QtAutoUpdater 2017-11-04 15:00:20 -06:00
BreadFish64 ee5aecee3f Implement About Button Functionality (#3005) 2017-11-04 13:59:27 -04:00
Sebastian Valle 9a52d72362
Merge pull request #3042 from Subv/releasemutex
Kernel/SVC: Don't let svcReleaseMutex release a mutex owned by another thread
2017-11-04 12:57:44 -05:00
bunnei 5885ca4503
Merge pull request #3067 from Hexagon12/wsacleanup-soc-fix
Removed duplicate calls of WSACleanup in soc_u.
2017-11-04 13:39:09 -04:00
James Rowe c14f802381
Merge pull request #2992 from Subv/ac_srvframework
Services/AC: Converted the ac:i and ac:u services to the new service framework.
2017-11-04 10:42:09 -06:00
Sebastian Valle 3fe9b332bc
Merge pull request #2989 from B3n30/sendTo_PullPacket_Bind
Service/UDS: Implement Bind, Unbind, SendTo, PullPacket, and GetNodeInformation
2017-11-04 10:58:49 -05:00
Hexagon12 695ff7cff3
Clang pls (again) 2017-11-04 17:41:20 +02:00
Hexagon12 81e36150d3
Clang pls 2017-11-04 17:32:12 +02:00
Subv 68dba11805 Kernel/SVC: Don't let svcReleaseMutex release a mutex owned by another thread.
This behavior was reverse engineered from the 3DS kernel.
2017-11-04 10:05:18 -05:00
B3n30 ed9db735a2 Service/UDS: Updated BeginHostingNetwork 2017-11-04 15:41:54 +01:00
B3n30 f6d16c3f87 Service/UDS: Implement Unbind and GetNodeInformation 2017-11-04 15:41:54 +01:00
B3n30 230ea063a5 Service/UDS: Implement SendTo, PullPacket, HandleSecureData, and Bind 2017-11-04 15:41:27 +01:00
Hexagon12 4ded138139
Update soc_u.cpp 2017-11-04 16:30:48 +02:00
Hexagon12 5d123144ff
Removed all instances of WSACleanup();. 2017-11-04 15:03:04 +02:00
wwylele 499508389c core: clear format warnings 2017-11-01 12:35:32 +02:00
wwylele 47c0c87c47 video_core: clean format warnings 2017-11-01 12:35:32 +02:00
Mohit Sahu 1f6da9fbc5 Capitalize the first word in a comment (#3059)
* Correct spelling of searchfield in comment
2017-10-28 12:38:56 -05:00
Alexandre Paré d65983515f Correcting word order of a comment in memory.cpp 2017-10-28 13:23:58 -04:00
Sebastian Valle 79852d3707
Merge pull request #3048 from shinyquagsire23/am-patch
Services/AM: Implement GetPatchTitleInfos, Misc Cleanup
2017-10-27 20:10:56 -05:00
Subv 95df4e674a Services/AC: Converted the ac:i and ac:u services to the new service framework. 2017-10-27 19:39:19 -05:00
James Rowe edfc8d133a
Merge pull request #3044 from Dragios/wnarrowing
Get rid of narrowing conversion warning (-Wnarrowing)
2017-10-27 15:55:14 -06:00
James Rowe 465e619cbb
Merge pull request #3053 from wwylele/debug-build-please
file_sys: Add missing header for PRIU64
2017-10-27 14:47:11 -06:00
wwylele 2bcbd565b8 Add missing header for PRIU64 2017-10-27 18:52:50 +03:00
Mohit Sahu f75dd34747 Correct spelling of searchfield in comment (#3052)
Correct spelling of searchfield in comment
2017-10-27 15:43:22 +00:00
shinyquagsire23 2e38ea7a33 Services/AM: Implement GetPatchTitleInfos, correct error codes/returns, misc fixes 2017-10-26 21:06:29 -06:00
Dragios 3e26b0dee5 swrasterizer folder minor edit 2017-10-27 09:44:45 +08:00
Dragios 9b3eb69973 Utilize vector function instead 2017-10-26 23:50:20 +08:00
James Rowe b36f748acd Merge pull request #3046 from MerryMage/sdl-disallow-device-changes
sdl2_sink: Disallow audio device from changing any parameter other than the frequency
2017-10-24 09:22:28 -06:00
James Rowe b4c1c26511 Merge pull request #3028 from MerryMage/fix-3023
citra_qt: Remove use of QKeySequence::Cancel
2017-10-24 09:21:27 -06:00
MerryMage 211cc5e28f sdl2_sink: Disallow audio device from changing any parameter other than the frequency
We currently do not handle the cases when channel number or channel format differ from what we expect.
2017-10-24 14:03:34 +01:00
Dragios 84054b7cd8 Get rid of narrowing conversion warning 2017-10-24 00:02:46 +08:00
Sebastian Valle aee8bf680c Merge pull request #3032 from Dragios/errno
Remove some errno constants as it was already defined
2017-10-23 10:30:18 -05:00
Merry 68943acd67 Merge pull request #3030 from Dragios/rename-class
citra-qt: Rename derivative class name
2017-10-22 18:10:41 +01:00
Merry 6f5f09b6c2 Merge pull request #3031 from Dragios/cryptopp-weak
externals: Remove Crypto++ weak algorithm warning
2017-10-22 18:10:22 +01:00
Dragios 520929dd6d Fix typo for -Wunused-local-typedefs 2017-10-22 15:56:50 +08:00
Dragios eb671d8513 Remove some errno constants as it was already defined 2017-10-22 14:22:27 +08:00
Dragios e46f66a5fa Remove Crypto++ weak algorithm warning 2017-10-22 13:56:59 +08:00
Dragios a88185b5d6 citra-qt: Rename derivative class name 2017-10-22 09:33:23 +08:00
MerryMage 1e4bd67a12 citra_qt: Remove use of QKeySequence::Cancel
Closes #3023. QKeySequence::Cancel requires Qt 5.6, which our buildbots do not support.
2017-10-21 23:58:18 +01:00
MerryMage f5be3258f2 hle/lock: Remove #pragma once in cpp file 2017-10-21 13:59:14 +01:00
James Rowe dcb48840c3 Merge pull request #2993 from shinyquagsire23/am-and-archive-ncch-rework
AM Service and NCCH Archive Rework
2017-10-20 22:59:38 -06:00
James Rowe f47bf6c8c9 Merge pull request #3001 from Styleoshin/qt_fullscreen
citra-qt : Adding fullscreen mode
2017-10-19 15:30:55 -06:00
shinyquagsire23 1ac5137655 file_sys/archive_ncch: Use AM to get title content path, add ExeFS support and support for additional content indexes 2017-10-18 21:19:40 -06:00
shinyquagsire23 a4af750759 loader/ncch: Use AM to get update title path 2017-10-18 21:19:40 -06:00
shinyquagsire23 b9fc359e7e Services/AM: Add title scanning, move to ipc_helper.h, implement most stubbed service calls 2017-10-18 21:19:34 -06:00
Yacine e3d9e6c802 citra-qt : Adding fullscreen mode 2017-10-11 20:21:09 +02:00
Dragios 83e5f639e6 Change command header in nwm::UDS Initialize function 2017-10-09 09:10:48 +08:00
Sebastian Valle 20e19a340c Merge pull request #2991 from Subv/getpointer
Remove more usages of GetPointer.
2017-10-08 10:11:12 -05:00
shinyquagsire23 8b448dc277 file_sys/title_metadata: extend accessible content chunk data 2017-10-06 11:28:29 -06:00
Sebastian Valle 74d4050924 Merge pull request #2975 from shinyquagsire23/archive-ncch-container-and-override
file_sys/archive_ncch: use NCCHs/.apps instead of .romfs files, NCCH section override
2017-10-06 12:19:20 -05:00
Sebastian Valle 84c344b9b1 Merge pull request #2953 from Subv/applet_launch
HLE/APT: Always set up the APT parameter when starting a library applet.
2017-10-04 15:01:58 -05:00
Subv 97f262c1f5 SVC: Removed GetPointer usage in the GetResourceLimit functions. 2017-10-04 14:04:27 -05:00
Subv 46fc7595b4 SVC: Remove GetPointer usage in CreatePort. 2017-10-04 14:04:03 -05:00
Subv 7b09b30ef1 SVC: Replace GetPointer usage with ReadCString in ConnectToPort. 2017-10-04 14:03:59 -05:00
Subv 3c0113632d SVC: Replace GetPointer usage with ReadBlock in OutputDebugString. 2017-10-04 12:30:33 -05:00
Subv 0cfb231e00 SVC: Replace GetPointer usage with Read32 in ReplyAndReceive. 2017-10-04 12:30:33 -05:00
Subv b863d6c860 SVC: Replace GetPointer usage with Read32 in WaitSynchronizationN. 2017-10-04 12:30:32 -05:00
Subv 7772fc0731 Memory: Remove all GetPointer usages from the GDB stub. 2017-10-04 11:33:32 -05:00
Huw Pascoe b3b34a1e76 Extracted the attribute setup and draw commands into their own functions 2017-10-04 01:08:29 +01:00
bunnei 15c7641bef Merge pull request #2977 from Subv/shmem_create
SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it
2017-10-03 16:21:49 -04:00
Subv b18589ecf7 Kernel/SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it.
Also reference the right offset into the backing block for the requested address.
2017-10-02 15:16:16 -05:00
Sebastian Valle 30fabc41c6 Merge pull request #2971 from Subv/per_process_memops
Memory: Add overloads for ReadBlock and WriteBlock that operate on a specific process.
2017-10-01 14:44:06 -05:00
Subv 1f2de7501b Memory: Make WriteBlock take a Process parameter on which to operate 2017-10-01 14:18:36 -05:00
Subv 811c01e5fe Memory: Make ReadBlock take a Process parameter on which to operate 2017-10-01 14:18:36 -05:00
Subv 8217ed7acb Kernel/Thread: Added a helper function to get a thread's command buffer VAddr. 2017-10-01 14:18:35 -05:00
Sebastian Valle 9c123c29a6 Merge pull request #2974 from Subv/nim_event
Services/NIM: Implement CheckForSysUpdateEvent.
2017-10-01 14:16:14 -05:00
shinyquagsire23 4887d18591 file_sys, loader: add support for reading TMDs to determine app paths 2017-10-01 10:54:02 -06:00
shinyquagsire23 8e10c9bb2e file_sys: add class for Title Metadata (TMD) 2017-10-01 10:53:45 -06:00
shinyquagsire23 e21f2348e7 file_sys/ncch_container: add RomFS, ExeFS override to allow for backward compatibility with existing .romfs system archive dumps 2017-10-01 10:53:18 -06:00
shinyquagsire23 c93e5ecfe6 file_sys/archive_ncch: use NCCHContainer instead of loading .romfs files 2017-10-01 10:53:04 -06:00
Subv 5bae5a48b9 Services/NIM: Implement CheckForSysUpdateEvent.
Implementation verified by reverse engineering.
This lets the Home Menu boot without crashing on startup.
2017-09-30 13:21:45 -05:00
Huw Pascoe 529f4a0131 Moved down_count to CoreTiming 2017-09-30 17:38:14 +01:00
B3n30 afb1012bcd Services/UDS: Handle the rest of the connection sequence. (#2963)
Services/UDS: Handle the rest of the connection sequence.
2017-09-30 18:18:45 +02:00
Subv f9d55ecf3f HLE: Implemented SleepClientThread and ContinueClientThread functions to make performing async tasks on the host while in an HLE service function easier.
An HLE service function that wants to perform an async operation should put the caller guest thread to sleep using SleepClientThread, passing in a callback to execute when the thread is resumed.
SleepClientThread returns a ThreadContinuationToken that should be stored and used with ContinueClientThread to resume the guest thread when the host async operation completes.
2017-09-30 11:16:55 -05:00
Subv 0a308e224c Kernel/Threads: Add a new thread status that will allow using a Kernel::Event to put a guest thread to sleep inside an HLE handler until said event is signaled. 2017-09-30 11:16:49 -05:00
Sebastian Valle 7056b9c46a Merge pull request #2946 from Subv/home_menu_apt
Implement PrepareToStartNewestHomeMenu and fixed an APT regression.
2017-09-30 10:47:42 -05:00
Sebastian Valle db752b52e8 Merge pull request #2967 from Subv/thread_wakeup_callbacks
Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken
2017-09-30 09:12:18 -05:00
Huw Pascoe a13ab958cb Fixed type conversion ambiguity 2017-09-30 09:34:35 +01:00
bunnei b07af7dda8 Merge pull request #2961 from Subv/load_titles
Loaders: Don't automatically set the current process every time we load an application.
2017-09-29 14:58:42 -04:00
mailwl 8883dca514 Service/PTM: Stub GetStepHistory function 2017-09-29 15:34:41 +03:00
Subv 8432749db7 Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken.
This change makes for a clearer (less confusing) path of execution in the scheduler, now the code to execute when a thread awakes is closer to the code that puts the thread to sleep (WaitSynch1, WaitSynchN). It also allows us to implement the special wake up behavior of ReplyAndReceive without hacking up WaitObject::WakeupAllWaitingThreads.

If savestates are desired in the future, we can change this implementation to one similar to the CoreTiming event system, where we first register the callback functions at startup and assign their identifiers to the Thread callback variable instead of directly assigning a lambda to the wake up callback variable.
2017-09-28 11:53:32 -05:00
Sebastian Valle 0d42706a7b Merge pull request #2907 from Subv/warnings3
Disable unary operator- on Math::Vec2/Vec3/Vec4 for unsigned types.
2017-09-27 15:45:38 -05:00
Subv a321bce378 Disable unary operator- on Math::Vec2/Vec3/Vec4 for unsigned types.
It is unlikely we will ever use this without first doing a Cast to a signed type.
Fixes 9 "unary minus operator applied to unsigned type, result still unsigned" warnings on MSVC2017.3
2017-09-27 09:06:41 -05:00
Subv 7f48aa8d25 Loaders: Don't automatically set the current process every time we load an application.
The loaders will now just create a Kernel::Process, construct it and return it to the caller, which is responsible for setting it as the current process and configuring the global page table.
2017-09-26 18:17:47 -05:00
James Rowe 5620327e03 Merge pull request #2954 from Subv/cache_unmapped_mem
Memory/RasterizerCache: Ignore unmapped memory regions when caching physical regions
2017-09-26 16:55:47 -06:00
Subv 3165466b66 Kernel/Thread: Allow specifying which process a thread belongs to when creating it.
Don't automatically assume that Thread::Create will only be called when the parent process is currently scheduled. This assumption will be broken when applets or system modules are loaded.
2017-09-26 17:40:49 -05:00
Subv a8d2f5787f Tests: Added Memory::IsValidVirtualAddress tests. 2017-09-26 17:31:50 -05:00
Subv c102e3ae28 Tests: Fixed ARM VFP tests 2017-09-26 17:29:06 -05:00
Subv 35da7f57ef Memory: Allow IsValidVirtualAddress to be called with a specific process parameter.
There is still an overload of IsValidVirtualAddress that only takes the VAddr and will default to the current process.
2017-09-26 17:27:44 -05:00
Merry 0c20da7fde Merge pull request #2958 from Subv/audio_buffer_datatype
Audio: Use std::deque instead of std::vector for the audio buffer type (StereoBuffer16)
2017-09-26 08:47:37 +01:00
Subv e27ae04696 HLE/APT: Always set up the APT parameter when starting a library applet.
Only use the HLE interface if an HLE applet with the desired id was started.

This commit reorganizes the APT code surrounding parameter creation and delivery to make it easier to support LLE applets in the future.

As future work, the HLE applet interface can be reworked to utilize the same facilities as the LLE interface.
2017-09-25 23:47:50 -05:00
Subv 41f6c9f87f Memory/RasterizerCache: Ignore unmapped memory regions when caching physical regions.
Not all physical regions need to be mapped into the address space of every process, for example, system modules do not have a VRAM mapping.

This fixes a crash when loading applets and system modules.
2017-09-25 19:37:45 -05:00
Subv d7459354f5 Audio: Use std::deque instead of std::vector for the audio buffer type (StereoBuffer16).
The current code inserts and deletes elements from the beginning of the audio buffer, which is very inefficient in an std::vector.

Profiling was done using VisualStudio2017's Performance Analyzer in Super Mario 3D Land.

Before this change: AudioInterp::Linear had 14.14% of the runtime (inclusive) and most of that time was spent in std::vector's insert implementation.
After this change: AudioInterp::Linear has 0.36% of the runtime (inclusive)
2017-09-25 18:31:37 -05:00
Subv 774e7deae8 HLE/Archives: Allow multiple loaded applications to access their SelfNCCH archive independently.
The loaders now register each loaded ROM with the SelfNCCH factory, which keeps the data around for the duration of the emulation session.

When opening the SelfNCCH archive, the factory queries the current program's programid and uses that as a key to the map that contains the NCCHData structure (RomFS, Icon, Banner, etc).

3dsx files do not have a programid and will use a default of 0 for this value, thus, only 1 3dsx file with RomFS is loadable at the same time.
2017-09-25 09:45:02 -05:00
B3n30 d881dee818 Merge pull request #2952 from MerryMage/page-tables
Switchable Page Tables
2017-09-25 08:29:32 +02:00
B3n30 dc6a365337 Merge pull request #2951 from huwpascoe/perf-4
Optimized Morton
2017-09-25 08:28:55 +02:00
B3n30 78022b5a79 Merge pull request #2949 from wwylele/fix-tr
citra-qt: fix some untranslated strings
2017-09-25 08:23:04 +02:00
B3n30 a21b9deb98 Merge pull request #2948 from Subv/register_service
HLE/SRV: Implemented RegisterService.
2017-09-25 08:22:05 +02:00
Max Thomas c91ccbd0ba Loader/NCCH: Add support for loading application updates (#2927)
* loader/ncch: split NCCH parsing into its own file

* loader/ncch: add support for loading update NCCHs from the SD card

* loader/ncch: fix formatting

* file_sys/ncch_container: Return a value for OpenFile

* loader/ncch: cleanup, always instantiate overlay_ncch to base_ncch

* file_sys/ncch_container: better encryption checks, allow non-app NCCHs to load properly and for the existence of NCCH structures to be checked

* file_sys/ncch_container: pass filepath as a const reference
2017-09-25 08:17:38 +02:00
B3n30 d673d508dd Services/UDS: Added a function to send EAPoL-Start packets (#2920)
* Services/UDS: Added a function to generate the EAPoL-Start packet body.

* Services/UDS: Added filter for beacons.

* Services/UDS: Lock a mutex when accessing connection_status from both the emulation and network thread.

* Services/UDS: Handle the Association Response frame and respond with the EAPoL-Start frame.

* fixup: make use of current_node, changed received_beacons into a list, mutex and assert corrections

* fixup: fix damn clang-format
2017-09-25 08:16:27 +02:00
Huw Pascoe 903906da3b Optimized Float<M,E> multiplication
Before:

ucomiss xmm1, xmm1
jp      .L9
pxor    xmm2, xmm2
mov     edx, 1
ucomiss xmm0, xmm2
setp    al
cmovne  eax, edx
test    al, al
jne     .L9
.L3:
movaps  xmm0, xmm2
ret
.L9:
ucomiss xmm0, xmm0
jp      .L10
pxor    xmm2, xmm2
mov     edx, 1
ucomiss xmm1, xmm2
setp    al
cmovne  eax, edx
test    al, al
je      .L3

After:

movaps  xmm2, xmm1
mulss   xmm2, xmm0
ucomiss xmm2, xmm2
jnp     .L3
ucomiss xmm1, xmm0
jnp     .L11
.L3:
movaps  xmm0, xmm2
ret
.L11:
pxor    xmm2, xmm2
jmp     .L3
2017-09-25 00:54:02 +01:00
MerryMage 67a70bd9e1 ARM_Interface: Implement PageTableChanged 2017-09-24 23:08:25 +01:00
MerryMage 4e5eb2044a memory: Remove GetCurrentPageTablePointers 2017-09-24 22:43:28 +01:00
MerryMage c02bbb7030 memory: Add GetCurrentPageTable/SetCurrentPageTable
Don't expose Memory::current_page_table as a global.
2017-09-24 22:42:42 +01:00
Huw Pascoe 876aa82c29 Optimized Morton 2017-09-24 22:27:14 +01:00
wwylele 7117fcc024 citra-qt: fix some untranslated strings 2017-09-24 17:53:35 +03:00
Subv 7096f01c14 HLE/APT: Always return an error from PrepareToStartNewestHomeMenu so that the Home Menu doesn't try to reboot the system.
As per 3dbrew:
"During Home Menu start-up it uses APT:PrepareToStartNewestHomeMenu. If that doesn't return an error(normally NS returns 0xC8A0CFFC for that), Home Menu starts a hardware reboot with APT:StartNewestHomeMenu etc. "
2017-09-24 08:59:31 -05:00
Subv b57d58c0dc HLE/APT: Prepare the APT Wakeup parameter when the game calls Initialize
We need to know what is being run so we can set the APT parameter destination AppId correctly.
Delaying the preparation of the parameter until we know which AppId is running lets us support booting both the Home Menu and normal game Applications.
2017-09-24 08:59:30 -05:00
James Rowe 93930a966f Merge pull request #2921 from jroweboy/batch-fix-2
GPU: Add draw for immediate and batch modes
2017-09-24 07:57:16 -06:00
Subv 0b33e36292 HLE/SRV: Implemented RegisterService.
Now system modules can do more than just crash immediately on startup.
2017-09-24 00:12:58 -05:00
James Rowe 19d41dcc6e Remove pipeline.gpu_mode and fix minor issues 2017-09-23 09:28:20 -06:00
Yuri Kunde Schlesner a7758b0b36 Merge pull request #2928 from huwpascoe/master
Fixed framebuffer warning
2017-09-22 04:06:38 +02:00
bunnei 6fc123d67c Merge pull request #2933 from huwpascoe/perf-1
Improved performance of FromAttributeBuffer
2017-09-19 13:18:35 -04:00
B3n30 28c726f205 WebService: Verify username and token (#2930)
* WebService: Verify username and token; Log errors in PostJson

* Fixup: added docstrings to the functions

* Webservice: Added Icons to the verification, imrpved error detection in cpr, fixup nits

* fixup: fmt warning
2017-09-18 21:18:26 -04:00
Huw Pascoe a234e4c200 Improved performance of FromAttributeBuffer
Ternary operator is optimized by the compiler
whereas std::min() is meant to return a value.

I've noticed a 5%-10% emulation speed increase.
2017-09-17 15:56:36 +01:00
Huw Pascoe 6a110ac5f5 Fixed framebuffer warning 2017-09-17 11:57:06 +01:00
Yuri Kunde Schlesner 255fd8768d Merge pull request #2906 from Subv/ns_new_framework
Services/NS: Port ns:s to the new service framework.
2017-09-16 21:13:51 +02:00
Subv 3d86e3afc4 Services/NS: Port ns:s to the new service framework. 2017-09-16 10:52:45 -05:00
Yuri Kunde Schlesner 699c920991 Merge pull request #2900 from wwylele/clip-2
PICA: implement custom clip plane
2017-09-16 10:23:00 +02:00
B3n30 813837c5cf Merge pull request #2842 from Subv/switchable_page_table
Kernel/Memory: Give each process its own page table and allow switching the current page table upon reschedule
2017-09-15 22:41:45 +02:00
Subv 7a3ab7c63d CPU/Dynarmic: Disable the fast page-table access in dynarmic until it supports switching page tables at runtime. 2017-09-15 14:26:22 -05:00
Subv 3bde97ea05 Tests/VFP: Use a standalone pagetable for the TestEnvironment memory operations.
This fixes building the tests
2017-09-15 14:26:20 -05:00
Subv f18a176b60 Kernel/Memory: Make IsValidPhysicalAddress not go through the current process' virtual memory mapping. 2017-09-15 14:26:18 -05:00
Subv b178089251 Kernel/Threads: Don't clear the CPU instruction cache when performing a context switch from an idle thread into a thread in the same process.
We were unnecessarily clearing the cache when going from Process A -> Idle -> Process A, this caused extreme performance regressions.
2017-09-15 14:26:15 -05:00
Subv 214150f00c Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer. 2017-09-15 14:26:13 -05:00
bunnei 588077184b Merge pull request #2915 from wwylele/font-archive-2
APT: load different shared font depending on the region
2017-09-11 21:39:56 -04:00
James Rowe ad0b57f407 GPU: Add draw for immediate and batch modes
PR #1461 introduced a regression where some games would change configuration
even while in the poorly named "drawing" mode, which broke the heuristic
citra was using to determine when to draw the batch. This change adds
back in a draw call for batching, and also adds in a draw call in
immediate mode each time it adds a triangle.
2017-09-11 09:21:43 -06:00
Subv c34ec5e77c Kernel/Memory: Switch the current page table when a new process is scheduled. 2017-09-10 15:14:31 -05:00
Subv 6d2734a074 Kernel/Memory: Give each Process its own page table.
The loader is in charge of setting the newly created process's page table as the main one during the loading process.
2017-09-10 15:13:41 -05:00
bunnei 11baa40d75 Merge pull request #2865 from wwylele/gs++
PICA: implemented geometry shader
2017-09-07 23:02:59 -04:00
bunnei ff4941fb3a Merge pull request #2914 from wwylele/fresnel-fix
pica/lighting: only apply Fresnel factor for the last light
2017-09-05 10:00:49 -04:00
Weiyi Wang 617b6974b9 Merge pull request #2831 from Subv/uds_auth
Services/UDS: Handle beacon frames and the basic AP connection sequence frames.
2017-09-05 15:03:56 +03:00
mailwl 11f2eff17d Remove _flag in var names 2017-09-04 12:15:15 +03:00
mailwl 589babbf74 Mii Selector Applet: update Mii structures 2017-09-04 12:04:12 +03:00
James Rowe 79f177c6d2 Fix icon for citra qt 2017-09-03 11:26:10 -06:00
wwylele 59a9aaf388 APT: load different shared font depending on the region 2017-09-03 12:34:11 +03:00
wwylele 12fbc8c8df pica/lighting: only apply Fresnel factor for the last light 2017-09-03 08:22:03 +03:00
DaMan 40505bc4fc Add manifest 2017-09-02 20:08:11 -04:00
bunnei f251b8873a Merge pull request #2909 from wwylele/telemetry-gas
video_core: report telemetry for gas mode
2017-08-31 11:12:55 -04:00
wwylele e2c41a5891 video_core: report telemetry for gas mode 2017-08-31 12:54:17 +03:00
bunnei e450a2d2b8 Merge pull request #2858 from MerryMage/interp-on-a-frame-basis
interpolate: Interpolate on a frame-by-frame basis
2017-08-30 21:56:43 -04:00
bunnei f0e461bf6f Merge pull request #2891 from wwylele/sw-bump
SwRasterizer/Lighting: implement bump mapping
2017-08-30 21:07:30 -04:00
bunnei 75cd28a7cc Merge pull request #2899 from wwylele/touch-refactor
Refactor touch input into a TouchDevice
2017-08-29 11:29:10 -04:00
Sebastian Valle acbd46366c Merge pull request #2905 from danzel/fix-2902
Use recursive_mutex instead of mutex to fix #2902
2017-08-29 09:35:56 -05:00
danzel 8266064796 Use recursive_mutex instead of mutex to fix #2902 2017-08-29 20:39:55 +12:00
MerryMage 933508e2a2 interpolate: Interpolate on a frame-by-frame basis 2017-08-28 10:54:41 +01:00
Weiyi Wang 647f017c6d Merge pull request #2892 from Subv/warnings2
Warnings: Fixed a few missing-return warnings in video_core.
2017-08-28 03:21:51 -05:00
Subv f64cd87604 Services/UDS: Remove an old duplicated declaration of WifiPacket. 2017-08-27 10:48:15 -05:00
Subv d088dbfbe1 Services/UDS: Handle the connection sequence packets.
There is currently no stage tracking, a client is considered "Connected" when it receives the EAPoL Logoff packet from the server, this is not yet implemented.
2017-08-27 10:48:13 -05:00
Subv 2e9f544ecc Services/UDS: Store the received beacon frames until RecvBeaconBroadcastData is called, up to 15 beacons at the same time, removing any older beacon frames when the limit is exceeded. 2017-08-27 10:48:11 -05:00
Subv 54411bef4e Services/UDS: Add functions to generate 802.11 auth and assoc response frames. 2017-08-27 10:48:09 -05:00
bunnei 7698567fc9 web_backend: Fix CPR bug where Winsock is not properly initializing. 2017-08-26 19:45:41 -04:00
Subv da88f3b8f0 Warnings: Fixed a few missing-return warnings in video_core. 2017-08-26 11:58:22 -05:00
bunnei c8562b21d9 web_backend: Fix asynchronous JSON post by spawning new thread. 2017-08-25 23:37:47 -04:00
bunnei 04bd0c957e web_services: Refactor to remove dependency on Core. 2017-08-25 23:10:02 -04:00