Commit graph

5822 commits

Author SHA1 Message Date
Pengfei Zhu
0fe57d075a
Merge pull request #4158 from FearlessTobi/port-933
Port #933 from yuzu: Multiple cleanups in memory
2018-08-31 14:38:43 +08:00
Pengfei Zhu
270155066c
Merge pull request #4154 from FearlessTobi/port-1063
Port #1063 from yuzu: "common/xbyak_abi: Mark defined functions in header as inline "
2018-08-31 12:59:29 +08:00
bunnei
ffdc27351a renderer_opengl: Treat OpenGL errors as critical. 2018-08-31 01:56:38 +02:00
Lioncash
893f6e9766 telemetry_session: Don't allocate std::string instances for program lifetime in GetTelemetryId() and RegenerateTelemetryId()
Given these functions aren't intended to be used frequently, there's no
need to keep the std::string instances allocated for the whole lifetime
of the program. It's just a waste of memory.
2018-08-31 01:51:32 +02:00
Lioncash
6d280cb49a gl_stream_buffer: Add missing header guard
Prevents potential compilation errors from occuring due to multiple
inclusions
2018-08-31 01:45:44 +02:00
Lioncash
d82ecb67f7 emu_window: Ensure WindowConfig members are always initialized
Previously we weren't always initializing all members of the struct.
Prevents potentially wonky behavior from occurring.
2018-08-31 00:55:04 +02:00
Lioncash
8fa861c2c6 memory: Make prototype parameter names match their definitions
Keeps the code consistent.
2018-08-31 00:33:20 +02:00
Lioncash
379b8c65b9 memory: Remove unnecessary const qualifiers in prototypes
These aren't necessary, as value-wise const only matters in the
definition.
2018-08-31 00:22:55 +02:00
Lioncash
c47e1db46d kernel/object: Tighten object against data races
Despite being covered by a global mutex, we should still ensure that the
class handles its reference counts properly. This avoids potential
shenanigans when it comes to data races.

Given this is the root object that drives quite a bit of the kernel
object hierarchy, ensuring we always have the correct behavior (and no
races) is a good thing.
2018-08-31 00:14:48 +02:00
Lioncash
8fbfd0f7fa logging/backend: Use const reference to refer to log filter
The filter is returned via const reference, so this was making a
pointless copy of the entire filter every time a message was being
pushed into the logger instance.
2018-08-31 00:13:15 +02:00
Lioncash
0fbae792cf common/xbyak_abi: Mark defined functions in header as inline
Avoids potential One Definition Rule violations when these are used in
the future.
2018-08-31 00:08:42 +02:00
Lioncash
d6bf1b31c8 common/xbyak: Use nested namespace specifiers where applicable 2018-08-31 00:08:34 +02:00
Lioncash
ff1f7555de vector_math: Use variable template version of is_signed in Vec classes
Same behavior, less code
2018-08-30 23:38:32 +02:00
tgsm
7136777fec Service/HID: update function table
update
2018-08-29 17:51:47 -04:00
zhupengfei
f28bc28d6b
core, citra_qt: unify status of system archives and shared fonts
Shared fonts is no different from any other system archives, and there is not really any point to make a separate status for it. This also fixes the incorrect error message that was introduced when I made the UI text improvements.
2018-08-27 22:40:35 +08:00
James Rowe
05118a2326
Merge pull request #4130 from FearlessTobi/port-942
Port #942 from yuzu: "qt: Minor cleanup-related changes"
2018-08-26 12:22:34 -06:00
James Rowe
83cc398514
Merge pull request #4127 from FearlessTobi/port-929
Port #929 from yuzu: "gdbstub: Minor changes "
2018-08-26 12:21:11 -06:00
James Rowe
a6723ec2eb
Merge pull request #4126 from FearlessTobi/port-892
Port #892 from yuzu: "Make global EmuWindow instance part of the base renderer class"
2018-08-26 12:00:55 -06:00
James Rowe
50270fd791
Merge pull request #4059 from zhaowenlan1779/udp-input-ui
citra_qt: add motion/touch config
2018-08-26 11:56:50 -06:00
Ben
b20607dfc6 Add system time configuration (#4043)
* Add setting to switch between a fixed start time and the system time

Add clock settings to SDL

Make clock configureable in qt

Add a SharedPage handler class

Init shared_page_handler for tests
2018-08-26 11:47:45 -06:00
James Rowe
13262c187c
Merge pull request #3922 from zhaowenlan1779/qt-movie
movie: Add Qt Movie feature
2018-08-26 11:07:15 -06:00
MerryMage
1817e30eff arm_dynarmic: Print current instruction when ExceptionRaised 2018-08-26 00:50:40 +01:00
MerryMage
75f3d2ba31 externals: Update dynarmic to 7a2a4c8 2018-08-26 00:50:38 +01:00
Merry
9b9227089b
Merge pull request #4121 from FearlessTobi/port-894
Port #894 from yuzu: "kernel: Move object class to its own source files"
2018-08-26 00:02:33 +01:00
Tobias
604c1b5fc3
web_service: Change authentication system to use JWT (#4041)
* Change authentication system to JWT

* Address review comments
* Get rid of global variable, fix some documentations, fix a bug when verificating
* Refactor PostJson to avoid code duplication
* Rename jwt_token, add functionality to request a new JWT when getting a 401
* Take bools by value instead of const reference
* Send request again when JWT is invalid and use forward declarations
* Omit brackets
2018-08-25 21:39:23 +02:00
Lioncash
91559bfdfe gdbstub: Use type alias for breakpoint maps
Rather than having to type out the full std::map type signature, we can
just use a straightforward alias. While we're at it, rename
GetBreakpointList to GetBreakpointMap, which makes the name more
accurate. We can also get rid of unnecessary u64 static_casts, since
VAddr is an alias for a u64.
2018-08-25 15:34:21 +02:00
fearlessTobi
80f1ffd8dc Remove newline 2018-08-25 15:27:47 +02:00
Lioncash
8a109333b7 gdbstub: Move all file-static variables into the GDBStub namespace
Keeps everything under the same namespace. While we're at it, enclose
them all within an inner anonymous namespace
2018-08-25 15:27:46 +02:00
Lioncash
db8ec37066 gdbstub: Replace PAddr alias with VAddr
In all cases, a virtual address is being passed in, not a physical one.
2018-08-25 15:25:12 +02:00
fearlessTobi
f61c9c3eb7 video_core: Make global EmuWindow instance part of the base renderer …
…class

Makes the global a member of the RendererBase class. We also change this
to be a reference. Passing any form of null pointer to these functions
is incorrect entirely, especially given the code itself assumes that the
pointer would always be in a valid state.

This also makes it easier to follow the lifecycle of instances being
used, as we explicitly interact the renderer with the rasterizer, rather
than it just operating on a global pointer.
2018-08-25 15:20:40 +02:00
Merry
b49d042200
Merge pull request #4101 from Hedges/GDBClean
GDB Modernization
2018-08-25 13:58:38 +01:00
fearlessTobi
4bf76833b8 Clean up aboutdialog.h 2018-08-25 14:45:50 +02:00
fearlessTobi
8fceac801c Fix clang-format 2018-08-25 14:05:59 +02:00
Lioncash
cb1825a769 qt/hotkey: Get rid of global hotkey map instance
Instead, we make a proper registry class and house it within the main
window, then pass it to whatever needs access to the loaded hotkeys.

This way, we avoid a global variable, and don't need to initialize a
std::map instance before the program can do anything.
2018-08-25 13:43:11 +02:00
Merry
0a5621fafc
Merge pull request #3970 from FearlessTobi/more-popup-madness
citra_qt: Add more verbose popups for video_core errors
2018-08-24 19:21:35 +01:00
Merry
31133a4f2e
Merge pull request #4133 from FearlessTobi/port-968
Port #968 from yuzu: "vector_math: Minor cleanups"
2018-08-24 19:08:17 +01:00
Merry
d4125ea4d7
Merge pull request #4119 from FearlessTobi/port-911
Port #911 from yuzu: "video_core: Remove unimplemented Start() function prototype"
2018-08-24 19:03:42 +01:00
Merry
c824564fcf
Merge pull request #4120 from FearlessTobi/port-895
Port #895 from yuzu: "sink_details: std::move std::function instances "
2018-08-24 19:03:27 +01:00
Merry
cf4f8463f1
Merge pull request #4122 from FearlessTobi/port-905
Port #905 from yuzu: "kernel/vm_manager: Minor changes"
2018-08-24 19:01:57 +01:00
Merry
f2816aa430
Merge pull request #4123 from FearlessTobi/port-914
Port #914 from yuzu: "kernel/process: Use accessors instead of class members for referencing segment array"
2018-08-24 19:01:07 +01:00
Merry
ed79288e41
Merge pull request #4124 from FearlessTobi/port-907
Port #907 from yuzu: "yuzu: Use Qt 5 signal/slots where applicable"
2018-08-24 19:00:10 +01:00
Merry
702ca755b3
Merge pull request #4131 from FearlessTobi/port-943
Port #943 from yuzu: "game_list: Join declarations and assignments in onTextChanged()"
2018-08-24 18:54:31 +01:00
zhaowenlan1779
3b37818e5e Port "externals: Update catch to 2.3.0" from yuzu (#4060)
* externals: Update catch to 2.3.0

Updates the library from 2.2.3 to 2.3.0

* fix catch2/catch.hpp includes
2018-08-24 19:45:57 +02:00
zhaowenlan1779
642f0bd62b Port "kernel/event: Make data members private" from yuzu (#4077)
* kernel/event: Make data members private

Instead we can simply provide accessors to the required data instead of
giving external read/write access to the variables directly.

* fix compile error
2018-08-24 19:43:28 +02:00
zhaowenlan1779
75927ee462 Port "client_port: Make all data members private" from yuzu (#4064)
* client_port: Make all data members private

These members don't need to be entirely exposed, we can instead expose
an API to operate on them without directly needing to mutate them

We can also guard against overflow/API misuse this way as well, given
active_sessions is an unsigned value.

* make the condition an assert
2018-08-24 19:31:20 +02:00
Lioncash
c5d0a0ac65 vector_math: Remove unimplemented function prototypes 2018-08-24 18:46:24 +02:00
Lioncash
d10e579292 vector_math: Make functions constexpr where applicable 2018-08-24 18:46:01 +02:00
Lioncash
6b1ec838aa vector_math: Convert typedefs to type aliases 2018-08-24 18:37:18 +02:00
Lioncash
bf964ac6e9 common: Convert type traits templates over to variable template versions where applicable
Uses the C++17 inline variable variants
2018-08-24 18:22:42 +02:00
Lioncash
a74ba1cd59 file_util: Remove compiler version checks around is_trivially_copyable()
The minimum clang/GCC versions we support already support this. We can also
remove is_standard_layout(), as fread and fwrite only require the type to be
trivially copyable.
2018-08-24 18:18:11 +02:00
fearlessTobi
c8b1edac63 Port #943 from yuzu: "game_list: Join declarations and assignments in onTextChanged()" 2018-08-24 17:28:00 +02:00
fearlessTobi
1f0cbf43d6 Port #942 from yuzu: "qt: Minor cleanup-related changes" 2018-08-24 17:14:09 +02:00
Lioncash
79434d3d4c citra-qt: Use Qt 5 signal/slots where applicable
Makes the signal/slot connections type-safe instead of string-based.
2018-08-23 18:34:25 +02:00
fearlessTobi
2abe11ee1e Fix compile errors 2018-08-23 18:23:21 +02:00
Lioncash
c786df3e4b kernel/process: Use std::array where applicable 2018-08-23 18:08:20 +02:00
Lioncash
37e78de206 kernel/process: Use accessors instead of class members for referencing segment array
Using member variables for referencing the segments array increases the
size of the class in memory for little benefit. The same behavior can be
achieved through the use of accessors that just return the relevant
segment.
2018-08-23 18:08:03 +02:00
Lioncash
469ed4a09f kernel/vm_manager: Convert loop into std::any_of() 2018-08-23 17:53:37 +02:00
Lioncash
c7e1dab45b kernel/vm_manager: Use const where applicable
Makes our immutable state explicit.
2018-08-23 17:53:20 +02:00
Lioncash
bb88c3b7b5 kernel/vm_manager: Use the VAddr type alias in CarveVMA()
These two variables correspond to address ranges.
2018-08-23 17:39:18 +02:00
Lioncash
63c7b44ba8 kernel: Move object class to its own source files
General moving to keep kernel object types separate from the direct
kernel code. Also essentially a preliminary cleanup before eliminating
global kernel state in the kernel code.
2018-08-23 17:31:59 +02:00
Lioncash
29e5dec986 sink_details: Deduplicate long std::function repetition
We can just use type aliases to avoid needing to write the same long
type twice
2018-08-23 17:03:09 +02:00
Lioncash
50b58da56c sink_details: std::move std::function instances
Given std::function is allowed to potentially allocate, these should be
std::move'd to prevent potential reallocation (should that ever happen).
2018-08-23 17:03:00 +02:00
Lioncash
d944d1120f video_core: Remove unimplemented Start() function prototype
Given this has no definition, we can just remove it entirely.
2018-08-23 16:58:30 +02:00
Nguyen Dac Nam
41f256f3cd
fix clang-format 2018-08-21 22:22:50 +07:00
Nguyen Dac Nam
8d98a387ac
only get src_adr if input_adr available 2018-08-21 21:39:45 +07:00
Nguyen Dac Nam
0e89555a89
only get src_adr if input_adr available 2018-08-21 21:33:19 +07:00
Nguyen Dac Nam
e8bb79be2d
do not init and copy to ctr_dest_addr unless have data 2018-08-21 20:51:13 +07:00
Nguyen Dac Nam
3b736a72a5
fix clang-format 2018-08-21 13:45:28 +07:00
Nguyen Dac Nam
c5eec5656d
add RecvFromOther cmd 2018-08-21 13:40:11 +07:00
Nguyen Dac Nam
2cb979ed29
add header RecvFromOther 2018-08-21 13:38:14 +07:00
Nguyen Dac Nam
fc8c199895
fix soc service - RecvFrom crash on Citra but not on 3DS 2018-08-21 12:59:02 +07:00
Nguyen Dac Nam
7d8569d799
fix soc service - Fcntl failed on validate header 2018-08-21 12:14:18 +07:00
James Rowe
b3ca900ba7 Revert "Set DiscordRPC OFF by default (#4109)"
This reverts commit 516be14a6b.
2018-08-20 10:34:58 -06:00
Vamsi Krishna
516be14a6b Set DiscordRPC OFF by default (#4109) 2018-08-20 16:19:12 +02:00
zhupengfei
9d056282df citra_qt: record movie record/playback path 2018-08-20 11:36:00 +02:00
zhupengfei
3b459f6eb3 citra_qt, movie: allow recording/playback before emulation starts 2018-08-20 11:34:27 +02:00
zhupengfei
a9ad8daf47 citra_qt: Add movie frontend 2018-08-20 11:34:26 +02:00
zhupengfei
0f44f7b481 core/movie: Movie refactor, add a completion callback 2018-08-20 11:27:25 +02:00
Vamsi Krishna
6cb9a45154 Add Discord Rich Presence Support (#3883)
* Initial Discord RPC support

Build with Discord Presence ON

Fix RPC detection

Fix Time elapsed on pause; will now continue to count.

* Fix CI builds with compile flag

Addressed reviews

Fix silly mistakes

Fix 'Not in-game' display

class instead of namespace

Fix

Revamped

remove redundant code

Using Pimpl pattern

* Implement Null class

* Fix config updation

* Addressed All Reviews

* externals/discord-rpc : Updated to latest commit
2018-08-20 11:20:33 +02:00
fearlessTobi
b19e88a9f4 Small fixup 2018-08-19 16:46:10 +02:00
fearlessTobi
4cd737abae Address zhaowenlans feedback 2018-08-19 15:53:46 +02:00
fearlessTobi
d1c5f01afe Add more verbose popups for video_core errors 2018-08-19 15:48:40 +02:00
Jarek Syrylak
039fb95f80 More fixes as per PR feedback. 2018-08-16 19:44:31 +01:00
Jarek Syrylak
a6ecb3c913 Fixed as per PR feedback. 2018-08-16 16:24:16 +01:00
Jarek Syrylak
bd658a8801 GDB Modernization:
- Can be used in either DynCom or Dynarmic mode
- Added support for threads
- Proper support for FPU registers
- Fix for NibbleToHex conversion that used to produce false error codes
- Fix for clang-format failing under Windows
2018-08-16 10:40:52 +01:00
zhaowenlan1779
5c5aad09ce qt_themes: add two colorful themes (#4004)
* qt_themes: add two colorful themes

These two colorful themes are based on the Default and Dark themes, and contain icons that are colored rather than black and white. These icons come from https://icons8.com and they have been slightly revised by me. I'm pretty sure I was licensed to use them for Citra.

* Add license for icons
2018-08-16 10:39:23 +02:00
James Rowe
20cb8f66db
Merge pull request #4099 from zhaowenlan1779/lle-service-modules-fixup
citra_qt: set object name for LLEServiceModulesWidget
2018-08-14 10:48:03 -06:00
zhaowenlan1779
e837717592
citra_qt: set object name for LLEServiceModulesWidget
Gets rid of a qt error that occurs when Citra is closed.
2018-08-14 20:28:47 +08:00
James Rowe
aed15a8d9d
Merge pull request #4012 from zhaowenlan1779/ui-retext
citra_qt: UI text improvements
2018-08-13 23:31:39 -06:00
CodingKoopa
8cbb60c281 Change level of invalid UDP packet log message from Error to Debug. 2018-08-12 22:17:34 -04:00
Valentin Vanelslande
2c31bd1a52
network: fix 3 typos 2018-08-12 17:55:15 -05:00
Weiyi Wang
1b1439c6af NWM_UDS: use sizeof(<var being used>) instead of hard-coded type (#4093)
* NWM_UDS: use sizeof(<var being used>) instead of hard-coded type

Intend to fix #4090. 

` node_map.node.second` type was changed to `u16` in #3985. However the type change wasn't reflected here. Should have used variable name instead to automatically do type change

* NWM_UDS: ... and also the node.first one

* NWM_UDS: ... and here

* Network: bump version because we changed UDS packet layout

* Update nwm_uds.cpp
2018-08-12 22:47:48 +02:00
Merry
c18a7896e0
Merge pull request #4078 from zhaowenlan1779/port-yuzu-934
Port " core_timing: Make GetGlobalTimeUs() return std::chrono::microseconds" from yuzu
2018-08-11 10:26:21 +01:00
zhupengfei
8db6822ee9
citra_qt: add motion/touch config 2018-08-11 14:16:44 +08:00
zhupengfei
8af89b6979
input_common, common: Add a few functions
These functions include reloading udp client, testing communication and configuring calibration. I also added a function to common/thread.h to use WaitFor.
2018-08-11 14:09:35 +08:00
zhupengfei
e1ae14d508
input_common/udp: allow changing pad index 2018-08-11 13:23:10 +08:00
Merry
d1c364bb85
Merge pull request #4073 from zhaowenlan1779/port-yuzu-988
Port "common/color: Minor cleanup" from yuzu
2018-08-10 21:18:01 +01:00
Merry
c0346718fd
Merge pull request #4076 from zhaowenlan1779/port-yuzu-945
qt/main: Better file-existence checking within OnMenuRecentFile() and UpdateUITheme()
2018-08-10 21:17:32 +01:00
Merry
4aec7ec96b
Merge pull request #4079 from zhaowenlan1779/port-yuzu-932
Port "core_timing: Use transparent functors where applicable" from yuzu
2018-08-10 21:15:00 +01:00
Merry
0b798ab7a2
Merge pull request #4081 from zhaowenlan1779/port-yuzu-900
Port "math_util: Always initialize members of Rectangle" from yuzu
2018-08-10 21:09:02 +01:00
Merry
f201484c63
Merge pull request #4082 from zhaowenlan1779/port-yuzu-906
Port "input_common: minor changes" from yuzu
2018-08-10 21:08:49 +01:00
Merry
44fc338f21
Merge pull request #4083 from zhaowenlan1779/port-yuzu-904
Port "kernel/thread: Minor changes" from yuzu
2018-08-10 21:08:22 +01:00
Lioncash
39d5ada4e1 kernel/thread: Remove unimplemented function prototype
Given there's no implementation, we may as well remove the code
entirely.
2018-08-10 17:05:01 +08:00
B3n30
10ef3109a4 fix num_client_certs in CloseClientCertContext 2018-08-10 09:55:59 +02:00
Lioncash
596caf70b7 kernel/thread: Make GetFreeThreadLocalSlot()'s loop indices size_t
Avoids using a u32 to compare against a range of size_t, which can be a
source of warnings. While we're at it, compress a std::tie into a
structured binding.
2018-08-10 10:13:50 +08:00
Lioncash
893d9c5ff3 kernel/thread: Make GetFreeThreadLocalSlot() reference parameter a const reference
This function only reads the data being referenced, it doesn't modify
it, so we can turn the reference into a const reference.
2018-08-10 10:13:49 +08:00
Lioncash
c71c9e63ec kernel/thread: Make GetFreeThreadLocalSlot() internally linked
This function isn't used outside of this translation unit, so we can
make it internally linked.
2018-08-10 10:13:48 +08:00
Lioncash
384c9e5382 input_common: Use std::move where applicable
Avoids unnecessary atomic reference count increments and decrements
2018-08-10 10:12:30 +08:00
Lioncash
8ce104f0a0 input_common: Add missing override specifiers 2018-08-10 10:12:29 +08:00
Lioncash
23e8dd66c4 math_util: Always initialize members of Rectangle
Prevents potentially using the members uninitialized.
2018-08-10 10:11:25 +08:00
Lioncash
a431c85b6b core_timing: Convert typedef into a type alias
Makes the alias a little more readable from left-to-right.
2018-08-10 10:00:36 +08:00
Lioncash
196ab8be89 core_timing: Use transparent functors where applicable
Gets rid of the need to hardcode the type in multiple places. This will
now be deduced automatically, based off the elements in the container
being provided to the algorithm.
2018-08-10 09:59:17 +08:00
Lioncash
660be9499d core_timing: Make GetGlobalTimeUs() return std::chrono::microseconds
Enforces the time unit being returned and also allows using the standard
time utilities to manipulate it.
2018-08-10 09:56:17 +08:00
Lioncash
265e875e5b
qt/main: Better file-existence checking within OnMenuRecentFile() and UpdateUITheme() 2018-08-10 09:45:48 +08:00
Lioncash
319d685b13 common/color: Remove unnecessary const qualifiers on return types
These are just superfluous and not necessesary
2018-08-10 09:35:28 +08:00
Lioncash
b956a2be1c common/color: Get rid of undefined behavior
Gets rid of type punning via reinterpret_cast within functions. Instead,
we use memcpy to transfer the contents across types.
2018-08-10 09:35:27 +08:00
B3n30
c431b922d0 fix error code comment 2018-08-09 23:55:04 +02:00
B3n30
c6bdcf72a4 service::HTTP_C: Implement OpenClientCertContext, OpenDefaultClientCertContext, CloseClientCertContext 2018-08-09 23:05:09 +02:00
Ben
5e658efdb8
Service::HTTP_C: Add decryption of the ClCertA (#4045)
* Service::HTTP_C: Add decryption of the ClCertA

* fixup! Service::HTTP_C: Add decryption of the ClCertA

* fixup! Service::HTTP_C: Add decryption of the ClCertA

* FileSys:: Add MakeNCCHArchivePath and MakeNCCHFilePath; Small fixes in HTTP_C::DecryptDefaultClientCert

* fixup! fixup! Service::HTTP_C: Add decryption of the ClCertA

* fixup! fixup! fixup! Service::HTTP_C: Add decryption of the ClCertA
2018-08-09 23:02:53 +02:00
BreadFish64
d09646ab9d citra-qt: service: add convenient LLE service module configuration (#3967)
* citra-qt: service: add convenient LLE service module configuration

* fix SDL settings

* unexpose AttemptLLE

* static

* fix array includes

* use default with writesetting
2018-08-09 21:10:11 +02:00
James Rowe
dceb4150a8
Merge pull request #4065 from zhaowenlan1779/port-yuzu-947
game_list: Use QString::fromStdString() where applicable instead of c_str()
2018-08-09 09:41:35 -06:00
James Rowe
77573b93ce
Merge pull request #4066 from zhaowenlan1779/port-yuzu-946
Port "qt/main: Collapse if statement in UpdateRecentFiles()" from yuzu
2018-08-09 09:41:10 -06:00
James Rowe
22c0575cf4
Merge pull request #4061 from zhaowenlan1779/port-yuzu-967
Port "file_util: Avoid sign-conversions in WriteArray() and ReadArray()" from yuzu
2018-08-09 09:40:26 -06:00
James Rowe
cc6d3ce22f
Merge pull request #4053 from Steveice10/master
am: Corrections to handling of non-existent content indices.
2018-08-09 09:39:44 -06:00
B3n30
aa98e55a88 fixup! Service::SM: Wait till client is registered 2018-08-08 23:42:45 +02:00
B3n30
02a3b5ae2b Service::SM: Wait till client is registered 2018-08-08 23:30:48 +02:00
Weiyi Wang
84fc8eaaba
Merge pull request #4020 from wwylele/loader-crypto-new
ncch_container: support encrypted games
2018-08-08 22:12:19 +03:00
Ben
8ae126eb33
Merge pull request #4001 from Subv/http2
Services/HTTP: Corrected some error codes and added a few new ones.
2018-08-08 15:37:33 +02:00
Subv
b72e7d48e8 Service/HTTP: Added logs to some of the error conditions. 2018-08-08 08:32:46 -05:00
zhupengfei
a51c700f59
Port "qt/main: Collapse if statement in UpdateRecentFiles()" from yuzu 2018-08-08 16:55:23 +08:00
zhupengfei
b71fbe62a8
game_list: Use QString::fromStdString() where applicable instead of c_str() 2018-08-08 16:43:59 +08:00
Lioncash
0495ba5d91 file_util: Avoid sign-conversions in WriteArray() and ReadArray()
Prevents compiler warnings.
2018-08-08 15:45:31 +08:00
James Rowe
93386efccb
Merge pull request #4056 from zhaowenlan1779/clear-recent-files
citra_qt: add Clear Recent Files menu action
2018-08-07 21:28:33 -06:00
James Rowe
169bb29a54 Correct direction vectors for cemuhook motion input 2018-08-07 21:05:09 -06:00
James Rowe
6bcbda5ab2 Input: UDP Client to provide motion and touch controls
An implementation of the cemuhook motion/touch protocol, this adds the
ability for users to connect several different devices to citra to send
direct motion and touch data to citra.
2018-08-07 21:05:09 -06:00
wwylele
d4a808c885 ncch_container: support encrypted games 2018-08-07 18:53:06 +03:00
zhupengfei
6a1f9afbba
citra_qt: add Clear Recent Files menu action
I had to edit a bit of the Restart action so that it does not go wrong because recent files are cleared.
2018-08-06 09:19:35 +08:00
James Rowe
0233f3286c
Merge pull request #4052 from zhaowenlan1779/bg-color-real-fix
video_core: Allow changing background color while emulation is running
2018-08-04 09:27:30 -06:00
Steveice10
4c3961d5dd am: Correct ListDLCContentInfos index bounds. 2018-08-04 01:27:05 -07:00
Steveice10
d93ed644f6 am: Return empty path string for non-existent content indices. 2018-08-04 01:03:29 -07:00
zhupengfei
0c37140690 video_core: Allow changing background color while emulation is running
As @jroweboy stated, this is just one more atomic in VideoCore.
2018-08-04 15:11:51 +08:00
zhupengfei
9937cab2cd
citra: default_ini bg color default value fix
I discovered this while making changing background color.. Just a minor nit.
2018-08-04 12:20:47 +08:00
Subv
79db1f8b49 Service/HTTP: Log the PIDs in the Initialize functions. 2018-08-03 15:24:26 -05:00
Weiyi Wang
5bc72cca6b
Merge pull request #3924 from zhaowenlan1779/settings
citra_qt: Settings (configuration) default value fix
2018-08-03 23:09:57 +03:00
zhupengfei
650c20eebf
citra_qt: Settings (configuration) rework 2018-08-03 13:49:30 +08:00
James Rowe
751e00a615
Merge pull request #3902 from valentinvanelslande/restart
citra_qt: add restart hotkey & menu option
2018-08-02 22:55:07 -06:00
James Rowe
6bc87cdf3e
Merge pull request #3987 from zhaowenlan1779/language-config-fix-2
citra_qt/configuration: retranslate hotkey widget on language change
2018-08-02 11:15:27 -06:00
James Rowe
c35a251d86
Merge pull request #3985 from BreadFish64/fix-warnings
core: clean up warnings
2018-08-02 11:14:57 -06:00
James Rowe
14b0435df2
Merge pull request #3994 from FearlessTobi/replace-clamp-functions
Remove MathUtil::Clamp and replace it with its std:: counterpart
2018-08-02 11:08:07 -06:00
James Rowe
cafe9838b5
Merge pull request #4047 from zhaowenlan1779/bg-color
citra_qt/configuration: Add background color config
2018-08-02 11:05:20 -06:00
James Rowe
4b59c1b601
Merge pull request #4042 from wwylele/i-love-drivers
gl_rasterizer: apply AMD hack only when the vendor is AMD
2018-08-02 11:01:25 -06:00
James Rowe
c771dd9813
Merge pull request #4021 from FearlessTobi/port-709
Port #709 from yuzu: "common/misc: Deduplicate code in GetLastErrorMsg()
2018-08-02 11:00:53 -06:00
Weiyi Wang
5bf87e986e
Merge pull request #4040 from valentinvanelslande/lighting
swrasterizer/lighting: remove newline in logging macro
2018-08-02 11:18:03 +03:00
Weiyi Wang
9b558253a0
Merge pull request #4031 from zhaowenlan1779/port-yuzu-723
Port "gdbstub: Get rid of a few signed/unsigned comparisons" from yuzu
2018-08-02 11:17:38 +03:00
Weiyi Wang
27b015e652
Merge pull request #4011 from zhaowenlan1779/cmake-warning
citra_qt/CMakeLists: get rid of a warning
2018-08-02 11:16:46 +03:00
Weiyi Wang
14bc20fc8d
Merge pull request #3996 from NarcolepticK/dsp-remove-weakptr
service/dsp: Clean up global state
2018-08-02 11:14:59 +03:00
zhupengfei
60edddac7d
citra_qt/configuration: Add background color config
This is actually very easy to do. I added a label and a push button for it, and used the Qt standard dialog QColorDialog for picking colors.
2018-08-02 11:39:27 +08:00
BreadFish64
aa4b71d0ce update fmt to latest stable release
5.1.0
fixes a multitude of errors on MSVC
2018-08-01 14:10:24 -05:00
BreadFish64
74cd98ecad core: clean up warnings 2018-08-01 14:10:23 -05:00
Merry
ba6eee71f5
Merge pull request #4024 from zhaowenlan1779/port-yuzu-745
Port yuzu-emu/yuzu#745 from yuzu
2018-08-01 15:02:40 +01:00
Merry
6a9e18a49a
Merge pull request #4022 from zhaowenlan1779/port-yuzu-837
Port yuzu-emu/yuzu#837 from yuzu
2018-08-01 15:01:17 +01:00
Merry
703da21688
Merge pull request #4046 from zhaowenlan1779/config-camera-retranslate
citra_qt/configuration: retranslate camera tab
2018-08-01 15:00:12 +01:00
zhupengfei
51d05bd42b citra_qt/configuration: retranslate camera tab
It was really a stupid mistake..
2018-08-01 21:51:38 +08:00
Lioncash
8e103d0675
kernel/timer: Make data members private where applicable
Instead, we can just expose functions that return the queryable state
instead of letting anything modify it.
2018-08-01 17:49:52 +08:00
zhupengfei
383dd967d1
citra_qt: UI text improvements
Changed a few texts that are not so good in the UI according to
@neobrain.
2018-08-01 17:32:33 +08:00
Lioncash
b92af5a858
param_package: Take std::string by value in string-based Set() function
Allows avoiding string copies by letting the strings be moved into the
function calls.
2018-08-01 17:21:11 +08:00
wwylele
266f2b6242 gl_rasterizer: only apply AMD hack when the vendor is AMD 2018-07-31 22:58:17 +03:00
Valentin Vanelslande
b2ad88dac1
swrasterizer/lighting: remove newline in logging macro
Software rasterizer version of #3904
2018-07-30 16:09:16 -05:00
James Rowe
05eb0ccb03
Merge pull request #4014 from wwylele/old-service
service: remove deprecated service interface
2018-07-30 11:31:54 -06:00
Merry
9af731793a
Merge pull request #4025 from zhaowenlan1779/port-yuzu-775
Port "string_util: Minor changes" from yuzu
2018-07-30 18:28:38 +01:00
Merry
ec76cd82b0
Merge pull request #4037 from zhaowenlan1779/port-yuzu-710
Port "common/common_funcs: Remove unused rotation functions" from yuzu
2018-07-30 18:28:11 +01:00
James Rowe
7b46b7e29a
Merge pull request #4010 from zhaowenlan1779/statusbar-retheme
qt_themes: add themed connected/disconnected icons for dark and fix status bar theme updating
2018-07-30 10:35:42 -06:00
James Rowe
ecb3dc2fb8
Merge pull request #4038 from zhaowenlan1779/port-yuzu-711
Port "common/swap: Minor changes" from yuzu
2018-07-30 10:21:49 -06:00
James Rowe
8fd9f22657
Merge pull request #4030 from zhaowenlan1779/port-yuzu-743
Port "logging: Use std::string_view where applicable" from yuzu
2018-07-30 10:19:28 -06:00
zhupengfei
5a47cbed17
no need to cast to u32 according to @wwylele comment 2018-07-30 22:40:56 +08:00
Lioncash
b4cdbf3ee8
gdbstub: Get rid of a few signed/unsigned comparisons
Ensures both operands in comparisons are the same signedness.
2018-07-30 22:40:43 +08:00
zhupengfei
5d7ccfb920
citra_qt/CMakeLists: get rid of a warning
This got rid of a warning of CMake Policy CMP0071 not set. In fact, setting it to either OLD or NEW is same for Citra (I tested on MSVC and MinGW), and the OLD option is deprecated, so I am using NEW here.
2018-07-30 22:32:48 +08:00
Lioncash
1a0529a064 common/swap: Remove unnecessary const on return value of swap() 2018-07-30 21:30:15 +08:00
Lioncash
a2203e1566 common/swap: Use static_cast where applicable 2018-07-30 21:30:14 +08:00
Lioncash
5a66820c20 common/swap: Use using aliases where applicable 2018-07-30 21:30:13 +08:00
fearlessTobi
b0c35c54ca Fix travis MinGW build 2018-07-30 14:50:23 +02:00
fearlessTobi
15abf35889 Address feedback by wwylele 2018-07-30 14:46:13 +02:00
Lioncash
b539745153 common/common_funcs: Remove unused rotation functions
These are unused and essentially don't provide much benefit either. If
we ever need rotation functions, these can be introduced in a way that
they don't sit in a common_* header and require a bunch of ifdefing to
simply be available
2018-07-30 20:08:59 +08:00
Ben
b4524eb70b
Merge pull request #3988 from zhaowenlan1779/multiplayer-block
citra_qt/multiplayer: allow blocking other players in chat room
2018-07-30 14:07:40 +02:00
Ben
d5333c37de
Merge pull request #4033 from zhaowenlan1779/port-yuzu-764
Port "file_util: Minor changes to ScanDirectoryTree() and ForeachDirectoryEntry()" from yuzu
2018-07-30 13:51:21 +02:00
Merry
45beea31ea
Merge pull request #4034 from zhaowenlan1779/port-yuzu-802
Port "wait_tree: Silence warning about all code paths not returning a value" from yuzu
2018-07-30 12:38:24 +01:00
Merry
4acc4d87d6
Merge pull request #4032 from zhaowenlan1779/port-yuzu-758
Port "common: Remove synchronized_wrapper.h" from yuzu
2018-07-30 12:36:45 +01:00
Merry
c4c158c6b6
Merge pull request #4036 from zhaowenlan1779/port-yuzu-705
Port "file_util: return string by const reference for GetExeDirectory()" from yuzu
2018-07-30 12:10:35 +01:00
Lioncash
995d1cd785 string_util: Get rid of separate resize() in CPToUTF16(), UTF16ToUTF8(), CodeToUTF8() and UTF8ToUTF16()
There's no need to perform the resize separately here, since the
constructor allows presizing the buffer.

Also move the empty string check before the construction of the string
to make the early out more straightforward.
2018-07-30 18:18:15 +08:00
Lioncash
f34dde32d1 string_util: Use emplace_back() in SplitString() instead of push_back()
This is equivalent to doing:

push_back(std::string(""));

which is likely not to cause issues, assuming a decent std::string
implementation with small-string optimizations implemented in its
design, however it's still a little unnecessary to copy that buffer
regardless. Instead, we can use emplace_back() to directly construct the
empty string within the std::vector instance, eliminating any possible
overhead from the copy.
2018-07-30 18:18:14 +08:00
Lioncash
841bb4e5bd string_util: Remove unnecessary std::string instance in TabsToSpaces()
We can just use the variant of std::string's replace() function that can
replace an occurrence with N copies of the same character, eliminating
the need to allocate a std::string containing a buffer of spaces.
2018-07-30 18:18:12 +08:00
Weiyi Wang
71729fd47a
Merge pull request #3951 from zhaowenlan1779/cfg-country-code
service/cfg, citra_qt: add country code configuration
2018-07-30 12:02:07 +03:00
Weiyi Wang
1f14ebf35d
Merge pull request #3977 from B3n30/bad_word_list
Add virtual bad word list; Load if dump is missing
2018-07-30 12:01:45 +03:00
Lioncash
99b2a871a7 file_util: return string by const reference for GetExeDirectory()
This disallows modifying the internal string buffer (which shouldn't be
modified anyhow).
2018-07-30 16:55:55 +08:00
Weiyi Wang
77f4859059
Merge pull request #4026 from zhaowenlan1779/port-yuzu-765
Port "file_util: Remove goto usages from Copy()" from yuzu
2018-07-30 11:44:32 +03:00
Lioncash
bf5b5d25ed wait_tree: Silence warning about all code paths not returning a value
If code execution hits this spot, something has gone very wrong, so mark
the path as unreachable. This silences a warning on MSVC.
2018-07-30 16:32:09 +08:00
Weiyi Wang
abc86921ab
Merge pull request #4027 from zhaowenlan1779/port-yuzu-704
Port "string_util: Remove AsciiToHex()" from yuzu
2018-07-30 11:22:46 +03:00
Lioncash
df5069f8c0 file_util: Use a u64 to represent number of entries
This avoids a truncating cast on size. I doubt we'd ever traverse a
directory this large, however we also shouldn't truncate sizes away.
2018-07-30 16:19:03 +08:00
Lioncash
cc6cb45536 file_util: std::move FST entries in ScanDirectoryTree()
Avoids unnecessary copies when building up the FST entries.
2018-07-30 16:16:58 +08:00
Merry
f4a389dca5
Merge pull request #4023 from zhaowenlan1779/port-yuzu-797
Port yuzu-emu/yuzu#797 from yuzu
2018-07-30 08:28:35 +01:00
Lioncash
1eb3d0c634 common: Remove synchronized_wrapper.h
This is entirely unused in the codebase.
2018-07-30 15:12:04 +08:00
Lioncash
1affca05c7 logging/filter: Use std::string_view in ParseFilterString()
Allows avoiding constructing std::string instances, since this only
reads an arbitrary sequence of characters.

We can also make ParseFilterRule() internal, since it doesn't depend on
any private instance state of Filter
2018-07-30 14:56:53 +08:00
Lioncash
798ebda049 logging/backend: Add missing standard includes
A few inclusions were being satisfied indirectly. To prevent breakages
in the future, include these directly.
2018-07-30 14:56:52 +08:00
Lioncash
765c7e711a logging/backend: Use std::string_view in RemoveBackend() and GetBackend()
These can just use a view to a string since its only comparing against
two names in both cases for matches. This avoids constructing
std::string instances where they aren't necessary.
2018-07-30 14:56:51 +08:00
Lioncash
8068f506c5 string_util: Remove AsciiToHex()
Easy TODO
2018-07-30 09:06:14 +08:00
Lioncash
d3a52e45e3 file_util: Remove goto usages from Copy()
We can just leverage std::unique_ptr to automatically close these for us
in error cases instead of jumping to the end of the function to call
fclose on them.
2018-07-30 08:48:58 +08:00
Lioncash
5b691d3fe0 param_package: Use std::unordered_map's insert_or_assign instead of map indexing
This avoids a redundant std::string construction if a key doesn't exist
in the map already.

e.g.

data[key] requires constructing a new default instance of the value in
the map (but this is wasteful, since we're already setting something
into the map over top of it).
2018-07-30 08:22:42 +08:00
Lioncash
290bfa1804 param_package: Get rid of file-static std::string construction
Avoids potential dynamic allocation occuring during program launch
2018-07-30 08:22:41 +08:00
Lioncash
661f7bbcfd core: Make converting constructors explicit where applicable
Avoids unwanted implicit conversions. Thankfully, given the large amount
of cleanup in past PRs, only this tiny amount is left over to cover.
2018-07-30 08:21:13 +08:00
NarcolepticK
8f70e9a318 service/dsp: Addressed comments about function name and pointer type 2018-07-29 15:18:30 -04:00
Lioncash
3ad1ee65ad Port #709 from yuzu: "common/misc: Deduplicate code in GetLastErrorMsg()" 2018-07-29 16:28:58 +02:00
Ben
07a78a6dd2
Merge pull request #3986 from zhaowenlan1779/language-config-fix
citra_qt/configuration: fix input configuration disappearing after changing languages
2018-07-29 10:35:17 +02:00
Ben
04bd104c4a
Merge pull request #3992 from Subv/applets_close
Services/HLE: Implement PrepareToCloseLibraryApplet and CloseLibraryApplet
2018-07-29 10:34:32 +02:00
Weiyi Wang
383cde84d3
Merge pull request #3917 from Steveice10/master
am: Fix DLC loading.
2018-07-28 18:48:28 +03:00
B3n30
97fda30839 Use std::begin and std::end for system archives c array 2018-07-28 12:07:11 +02:00
zhupengfei
b1bbe0441e
qt_themes: add themed connected/disconnected icons for dark and fix status bar theme updating
In dark theme, it is very hard to see the connected/disconnected icons because they are dark too. So I added two white-coloured icons for the dark theme. This also fixed an issue where theme update does not change the icon on the status bar.
2018-07-28 11:50:46 +08:00
wwylele
323313b2e9 service: remove deprecated service interface 2018-07-27 21:22:15 +03:00
Weiyi Wang
be193869cd
Merge pull request #3990 from zhaowenlan1779/retranslation-continue
citra_qt: minor retranslation fix
2018-07-27 19:55:58 +03:00
James Rowe
6a973cc0bb citra-qt: Init logging sooner so we dont miss some logs on startup 2018-07-27 09:29:31 -06:00
NarcolepticK
5c52c6e64a service/boss: Migrate to ServiceFramework (#3998)
* service/boss: Migrate to ServiceFramework

* service/boss: Addressed comments

* service/boss: Added TODO: verify ResetType
2018-07-27 16:07:23 +03:00
NarcolepticK
5a4ed10982 service/csnd: Moved into csnd folder and stubbed a few functions (#4006)
* service/csnd: Moved into csnd folder and stubbed a few functions

* service/csnd: Addresed comment about missing rb.Skip
2018-07-27 11:25:20 +03:00
Weiyi Wang
719bec84cd
Merge pull request #4007 from B3n30/romfs_file
RomFS: add RomFSFile and RomFS::GetFile
2018-07-27 11:24:31 +03:00
Weiyi Wang
7babd78a23
Merge pull request #3928 from zhaowenlan1779/log-settings
citra_qt: Log settings on launch
2018-07-27 11:22:23 +03:00
fearlessTobi
71e1d6e25d Fix compile errors 2018-07-26 13:23:25 +02:00
B3n30
123c0886e6 RomFSFile: Default constructor 2018-07-26 13:10:56 +02:00
B3n30
b1f8c2fe67 Remove RomFS::GetFilePointer 2018-07-26 12:59:31 +02:00
B3n30
b62978b5a1 RomFS: add RomFSFile and GetRomFSFile 2018-07-26 12:31:59 +02:00
Weiyi Wang
7568020ea0
Merge pull request #3979 from zhaowenlan1779/filter-untranslated
game_list: move SearchField to game_list_p.h and fix untranslated text
2018-07-26 12:26:39 +03:00
Weiyi Wang
4b6d240641
Merge pull request #3983 from zhaowenlan1779/gamelist-translation
game_list: fix untranslated texts
2018-07-26 12:26:12 +03:00
Subv
d19dbe8419 Services/HTTP: Added error handling to AddRequestHeader 2018-07-25 16:48:04 -05:00
Subv
03294ce6b4 Services/HTTP: Implemented the InitializeConnectionSession function. 2018-07-25 16:13:47 -05:00
Subv
28c296a13b Services/HTTP: Corrected some error codes and added a few new ones.
Use the session data to store information about the HTTP session state.
This is based on reverse engineering of the HTTP module.

The AddRequestHeader function is still mostly incorrect, this will be fixed in follow up PRs
2018-07-25 14:59:29 -05:00
James Rowe
4a3c4f5f67
Merge pull request #3989 from zhaowenlan1779/statusbar-retranslate
citra_qt: retranslate status bar
2018-07-25 10:19:11 -06:00
James Rowe
d79cb6373d
Merge pull request #3972 from zhaowenlan1779/common-timer
common/timer: use std::chrono, avoid platform-dependent code
2018-07-25 10:00:04 -06:00
James Rowe
e4d65927c2
Merge pull request #3991 from zhaowenlan1779/no-lle-applets
applet_manager: disable loading LLE applets
2018-07-25 09:54:02 -06:00
James Rowe
9d95373282
Merge pull request #3999 from NarcolepticK/stub-service-ps
service/ps: Boilerplate to register service, no functions implemented
2018-07-25 09:52:45 -06:00
James Rowe
7fb8b6b7a2
Merge pull request #3971 from adityaruplaha/cpu-jit-move
citra_qt: Move CPU JIT toggle to Debug tab.
2018-07-25 09:50:33 -06:00
Sebastian Valle
472ee00e8f
Merge pull request #3981 from B3n30/httpc
Migrate HTTP_C to the ServiceFramework and implement functions
2018-07-25 10:20:27 -05:00
Weiyi Wang
b65ee99681
Merge pull request #3997 from zhaowenlan1779/use-std-transform
common/string_utils: replace boost::transform with std counterpart
2018-07-25 10:38:36 +03:00
NarcolepticK
081becc9f5 service/ps: Boilerplate to register service, no functions implemented 2018-07-25 02:25:51 -04:00
zhupengfei
cc1f44f7bd
common/string_utils: replace boost::transform with std counterpart
Note: according to cppreference it is necessary to convert char to unsigned char when using std::tolower and std::toupper, otherwise the behaviour would be undefined.
2018-07-25 08:04:00 +08:00
B3n30
050d116cb6 Fixed include in http_c,h; added ERROR_CONTEXT_ERROR to CreateContext 2018-07-24 23:38:19 +02:00
NarcolepticK
b840c63386 service/dsp: Clean up global state 2018-07-24 16:15:37 -04:00
Subv
cce882b688 Services/HLE: Implement PrepareToCloseLibraryApplet and CloseLibraryApplet.
This allows LLE library applets (like swkbd) to properly close and return to the application instead of hanging.

There is still a bug in our rasterizer cache that may cause crashes some time after an applet is closed, but that is tangential to this change and should be tackled separately.
2018-07-24 14:50:19 -05:00
fearlessTobi
7a3e126a4f Replace MathUtil::Clamp with its std counterpart 2018-07-24 19:08:17 +02:00
zhupengfei
44db59be2b
applet_manager: disable loading LLE applets
Currently LLE applets cannot exit properly in Citra and causes Citra to hang. We are already providing HLE for applets, and the LLE applets are preventing users who dumped their system files from using the applets correctly. Before the further fix is done, I think we should temporaily disable loading LLE applets.
2018-07-24 23:24:27 +08:00
zhupengfei
3a8b002ede citra_qt: minor retranslation fix
When you change the language when a game is running, the "Continue" action in the "Emulation" menu would become "Start". This commit fixes the issue by checking and setting it if it should be "Continue". It seems that this is the only place with this issue.
2018-07-24 19:49:49 +08:00
zhupengfei
76465dd0f5
citra_qt: retranslate status bar 2018-07-24 19:20:00 +08:00
zhupengfei
921037a7c3
citra_qt/multiplayer: allow blocking other players in chat room 2018-07-24 15:24:21 +08:00
zhupengfei
2cf7576351
citra_qt/configuration: retranslate hotkey widget on language change
The hotkey widget has a separate class defined for it, and qt cannot automatically retranslate it when retranslateUi is called. This commit explicitly calls the function to retranslate the hotkey dialog.
2018-07-24 12:32:09 +08:00