Commit graph

6430 commits

Author SHA1 Message Date
Weiyi Wang
93275d752b
Merge pull request #4645 from FearlessTobi/port-2116
Port yuzu-emu/yuzu#2116: "threadsafe_queue: Remove NeedSize template parameter"
2019-02-25 10:25:11 -05:00
Weiyi Wang
206413ba7b
Merge pull request #4630 from wwylele/memory-no-lock
Memory: don't lock hle mutex in memory read/write
2019-02-25 10:23:23 -05:00
Weiyi Wang
5f10cc412f
Merge pull request #4632 from zhaowenlan1779/socu
service/soc_u: Implement getaddrinfo and getnameinfo
2019-02-25 10:23:13 -05:00
Weiyi Wang
fdb5a8c2df
Merge pull request #4629 from FearlessTobi/bunnei-fooled-me
Port minor changes for BitField from yuzu
2019-02-25 10:22:44 -05:00
Weiyi Wang
42c777b0e5
Merge pull request #4617 from wwylele/hle-service-clean
HLE/IPC: clean up System::GetInstance
2019-02-25 10:22:13 -05:00
Weiyi Wang
c265f3f507
Merge pull request #4616 from wwylele/core-global-clean
Cleanup System::GetInstance reference - Part 1
2019-02-25 10:22:02 -05:00
bunnei
f8b3617394 bit_field: Remove is_pod check, add is_trivially_copyable_v. 2019-02-24 19:40:20 +01:00
bunnei
e24c7a474c bit_field: Make all methods constexpr. 2019-02-24 19:39:15 +01:00
BreadFish64
28b2ee9cd7 add java to .clang-format 2019-02-22 16:29:19 -06:00
Weiyi Wang
5f80075c31
Merge pull request #4596 from CarlKenner/master
Fix mouse touchscreen in SBS 3D mode
2019-02-22 16:24:22 -05:00
Weiyi Wang
28e849cddb
Merge pull request #4598 from BreadFish64/user_path
common: decouple getting and setting user paths
2019-02-22 16:23:41 -05:00
Weiyi Wang
b0a4220711
Merge pull request #4647 from FearlessTobi/fix-weird-bug
citra_qt/main: make SPEED_LIMIT_STEP static constexpr
2019-02-22 16:21:54 -05:00
Weiyi Wang
8f2bd97277
Merge pull request #4655 from tgsm/gcc-version
Remove GCC version checks
2019-02-22 16:21:21 -05:00
fearlessTobi
c357531acb citra_qt/main: make SPEED_LIMIT_STEP static constexpr
MSVC does not seem to like using constexpr values in a lambda that were declared outside of it.
Previously on MSVC build the hotkeys to inc-/decrease the speed limit were not working correctly because in the lambda the SPEED_LIMIT_STEP had garbage values.
After googling around a bit I found: https://github.com/codeplaysoftware/computecpp-sdk/issues/95 which seems to be a similar issue.
Trying the suggested fix to make the variable static constexpr also fixes the bug here.
2019-02-20 16:11:38 +01:00
Lioncash
0556cac37d threadsafe_queue: Use std::size_t for representing size
Makes it consistent with the regular standard containers in terms of
size representation. This also gets rid of dependence on our own
type aliases, removing the need for an include.
2019-02-20 16:05:22 +01:00
tgsm
433ab35e7e Remove GCC version checks
Citra can't be compiled using GCC <7 because of required C++17 support, so these version checks don't need to exist anymore.
2019-02-19 16:39:34 -05:00
Pengfei Zhu
f6d0e43c77
Merge pull request #4654 from tgsm/video-nested
video_core: use nested namespaces
2019-02-19 21:44:38 +08:00
Pengfei Zhu
820e3893de
Merge pull request #4652 from tgsm/audio-nested
audio_core: use nested namespaces
2019-02-19 21:39:35 +08:00
tgsm
d6c530d08c video_core: use nested namespaces 2019-02-19 03:09:57 -05:00
tgsm
39e163b7ce core: use nested namespaces 2019-02-18 20:34:18 -05:00
tgsm
a400e49338 audio_core: use nested namespaces 2019-02-17 23:41:48 -05:00
Weiyi Wang
f409342ab5
Merge pull request #4613 from BreadFish64/gles5
video_core: add GLES support
2019-02-17 15:44:39 -05:00
fearlessTobi
70653c6a87 citra_qt/config: actually save name of input profile
Fixes the issue where all input profiles had the name "default" after restarting Citra.
2019-02-16 21:41:51 +01:00
fearlessTobi
931895d9b0 citra_qt: when opnening a cia file directly, make Citra ask to install it 2019-02-16 17:18:19 +01:00
Lioncash
3bc78e577f threadsafe_queue: Remove NeedSize template parameter
The necessity of this parameter is dubious at best, and in 2019 probably
offers completely negligible savings as opposed to just leaving this
enabled. This removes it and simplifies the overall interface.
2019-02-15 22:00:44 +01:00
BreadFish64
d3d53bae83 common: decouple getting and setting user paths
paths -> g_paths
2019-02-15 14:48:31 -06:00
Weiyi Wang
e6feef96c1 Service: clear IPC header for unimplemented function stub 2019-02-14 22:16:50 -05:00
Weiyi Wang
3f86be88f0 HLE/IPC: pass in kernel & memory reference from parent to avoid global state reference 2019-02-14 22:09:25 -05:00
Weiyi Wang
0a424b86d2 ServerSession: replace GetPointer with block copy for HLE translation
Do it in the same way as HLERequestContext::SleepClientThread callback and avoid unsafe GetPointer
2019-02-14 22:09:25 -05:00
Weiyi Wang
36c8e1d7a9 HLE/IPC: move command buffer translation into kernel as TODO says 2019-02-14 22:09:25 -05:00
Weiyi Wang
4d10a2d652 tests/audio_core: remove hack for system objects 2019-02-14 14:08:45 -05:00
Weiyi Wang
64f6e5e597 ARM: pass MemorySystem separately in the constructor and make System optional
So that unit test can test CPU without constructing the entire system. Also remove hacks in the System class
2019-02-14 14:04:46 -05:00
Weiyi Wang
9573ee46bd Memory: replace Core::CPU 2019-02-14 14:04:46 -05:00
Weiyi Wang
5f6d9f1915 Kernel/IPC: use MemorySystem from parameter 2019-02-14 14:04:46 -05:00
Weiyi Wang
20f47583f6 Kernel: replace usage of Core::System::GetInstance().PrepareReschedule() with callback 2019-02-14 14:04:46 -05:00
Weiyi Wang
eb050b8403 Kernel: replace usage of Core::System::GetInstance()::Timing() 2019-02-14 14:04:46 -05:00
Weiyi Wang
276ca88c9e kernel/thread: replace usage of Core::CPU() 2019-02-14 14:04:46 -05:00
Weiyi Wang
b9f6bd9278 ldr_ro: replace usage of Core::CPU() 2019-02-14 14:04:46 -05:00
Weiyi Wang
de1128c60d
Merge pull request #4628 from FearlessTobi/backport-some-stuff
Backport various minor frontend review changes from yuzu and port minor PR from yuzu
2019-02-14 11:45:27 -05:00
Weiyi Wang
4b2397aa77
Merge pull request #4633 from BreadFish64/fully-invalid
video_core: improve efficiency of CachedSurface::IsSurfaceFullyInvalid
2019-02-14 11:44:46 -05:00
Weiyi Wang
8f2c35d7b6
Merge pull request #4614 from wwylele/nwm-uds-global
NWM_UDS: move states into the class
2019-02-14 11:44:28 -05:00
Weiyi Wang
1f38c53d8f
Merge pull request #4508 from B3n30/dsp_aac
CoreAudio::HLE: Add FFmpeg/WMF AAC decoder
2019-02-14 11:44:09 -05:00
liushuyu
a4ba35fe3a audio_core: hle: mf: lint 2019-02-13 15:15:11 -07:00
liushuyu
671ac441e9 audio_core: hle: mf: move transform initializer to ctor 2019-02-13 14:32:14 -07:00
liushuyu
6178cc08b7 audio_core: hle: mf: conform to RAII as possible 2019-02-13 14:08:34 -07:00
ReinUsesLisp
fc6e33d812 video_core: Sort predicate order to have semantically positive value first 2019-02-13 21:06:37 +01:00
fearlessTobi
e5495e541d citra_qt/config: backport minor changes from yuzu 2019-02-13 21:06:37 +01:00
fearlessTobi
59dbc72e7b configure_dialog: backport minor changes from yuzu 2019-02-13 21:06:24 +01:00
SachinVin
d63acfc1e9 video_core: add workarounds to enable GLES support
video_core: shorten GetGLSLVersionString

video_core: make GLES version and extensions consistent

video_core: move some logic to LoadShader

video_core: deduplicate fragment shader precision specifier
2019-02-12 16:57:18 -06:00
zhupengfei
1995e8ff32
service/soc_u: address review comments 2019-02-10 18:49:18 +08:00
liushuyu
f0e041e27a audio_core: hle: mf: correctly handle stream change 2019-02-09 16:49:48 -07:00
BreadFish64
d90f733330 video_core: improve efficiency of CachedSurface::IsSurfaceFullyInvalid 2019-02-09 17:33:18 -06:00
liushuyu
01e0902fa4 audio_core: hle: mf: fix a memory accessing issue 2019-02-09 13:55:54 -07:00
liushuyu
6281660844 audio_core: hle: mf: address yet another batch of reviews 2019-02-09 13:55:42 -07:00
Tobias
1f31f23b33
Merge pull request #4631 from tgsm/game-list-demos
citra_qt: show demos on game list
2019-02-09 14:15:59 +01:00
zhupengfei
08bf899d70
service/soc_u: Implement getaddrinfo and getnameinfo 2019-02-09 20:12:09 +08:00
liushuyu
ab1f47ed15 audio_core: hle: mf: make DetectMediaType return a struct 2019-02-09 11:57:36 +01:00
liushuyu
168f2ee79a audio_core: mf: make initialize function return smart pointer 2019-02-09 11:57:36 +01:00
liushuyu
c91f5029ff audio_core: hle: mf: fix a regression...
... where the sample copying logic is incorrect due to the wrong usage
of `std::array`
2019-02-09 11:57:36 +01:00
liushuyu
6332e57069 audio_core: hle: mf: return values as std::optional 2019-02-09 11:57:36 +01:00
liushuyu
25fa10327b audio_core: hle: mf: use object proxy 2019-02-09 11:57:36 +01:00
liushuyu
26b3b41788 audio_core: hle: mf: wrap enum in class 2019-02-09 11:57:36 +01:00
liushuyu
633f02b9b2 audio_core: hle: mf: avoid name conflicts 2019-02-09 11:57:36 +01:00
liushuyu
452ac7b874 audio_core: hle: mf: use more enum 2019-02-09 11:57:36 +01:00
liushuyu
be764e4f88 audio_core: hle: mf: multiple fixes...
... more smart pointers and re-arrange code
2019-02-09 11:57:36 +01:00
liushuyu
4bc6bfd51f audio_core: hle: mf: re-arrange comments 2019-02-09 11:57:36 +01:00
liushuyu
972b527374 audio_core: hle: mf: cleanup headers 2019-02-09 11:57:36 +01:00
liushuyu
2c40ef2a90 audio_core: hle: mf: rename functions 2019-02-09 11:57:36 +01:00
liushuyu
ea8a1f8754 Media Foundation Memory Fix
* audio_core: hle: mf: more smart pointers

* audio_core: hle: mf: fix memory leaks

* audio_core: hle: mf: even more smart pointers
2019-02-09 11:57:36 +01:00
liushuyu
10f876653d audio_core: hle: mf: transition to use smart pointers 2019-02-09 11:56:51 +01:00
liushuyu
bee5ba3e33 audio_core: hle: mf: fix a regression...
... an introduction in 8f591d3b85
2019-02-09 11:56:51 +01:00
liushuyu
06316be8a7 audio_core: hle: mf: minor fix 2019-02-09 11:56:51 +01:00
liushuyu
c03861c2d9 audio_core: hle: mf: address another batch of reviews from @B3N30 2019-02-09 11:56:51 +01:00
liushuyu
7f5b54fda4 audio_core: hle: mf: address reviews from @B3N30 2019-02-09 11:56:51 +01:00
liushuyu
11e277149c audio_core: hle: fix compile 2019-02-09 11:56:51 +01:00
B3N30
80b4dd21d2 audio_core: dsp_hle: add Media Foundation decoder...
* appveyor: switch to Media Foundation API
* Travis CI MinGW build needs an update with the container image
2019-02-09 11:56:51 +01:00
B3N30
1581dea6de more reviews addressed 2019-02-09 11:55:12 +01:00
liushuyu
8fe3e37df5 audio_core: fix msvc include issue 2019-02-09 11:55:12 +01:00
B3N30
bd9984b5f8 Addressed reviews 2019-02-09 11:55:12 +01:00
B3N30
847003cc1c FFmpegDL: Added external_dlls folder to user folder
AACDecoder: addressed reviews
2019-02-09 11:52:31 +01:00
B3N30
45b5de7a18 Fixup: Merge conflict with dsp lle 2019-02-09 11:52:31 +01:00
B3N30
c521f3b7d6 CoreAudio::HLE: Add FFmpeg aac decoder 2019-02-09 11:52:31 +01:00
tgsm
ee0afb4318 citra_qt: show demos on game list 2019-02-08 19:04:05 -05:00
Weiyi Wang
bf1dbb47dc
Merge pull request #4619 from wwylele/shadow-explosion
gl_rasterizer: change shadow_texture_bias from shader config to shader uniform
2019-02-08 18:38:40 -05:00
Weiyi Wang
687fa0134d
Merge pull request #4609 from wwylele/nuke-zmq
Reimplement scripting over plain UDP
2019-02-08 18:38:21 -05:00
Weiyi Wang
7074dab2da Memory: don't lock hle mutex in memory read/write
The comment already invalidates itself: neither MMIO nor rasterizer cache belongsHLE kernel state. This mutex has a too large scope if MMIO or cache is included, which is prone to dead lock when multiple thread acquires these resource at the same time. If necessary, each MMIO component or rasterizer should have their own lock.
2019-02-08 10:43:06 -05:00
fearlessTobi
6be1b4d293 renderer_base: backport minor changes from yuzu 2019-02-06 17:16:27 +01:00
Weiyi Wang
f620c862f3
Merge pull request #4437 from adityaruplaha/hotkey-config-squashed
citra-qt: Make hotkeys configurable via the GUI (Attempt 2)
2019-02-03 21:57:34 -05:00
BreadFish64
cd21abe50f sdl: add GLES support 2019-02-03 15:58:09 -06:00
Weiyi Wang
a6d9baa05a FS: pass down program ID for archive operation
To eliminate System::GetInstance usage. Archive type like SelfNCCH and SaveData changes the actual reference path for different client, so archive backend interface should accept client information from the service interface. Currently we only pass the program ID as the client information.
2019-02-02 20:44:13 -05:00
Weiyi Wang
b5f2318ae7 gl_rasterizer: change shadow_texture_bias from shader config var to shader uniform
Games can frequently change this register. Using it as shader config var would generates a lot of shaders
2019-02-02 20:40:08 -05:00
Weiyi Wang
008197a569 Remove scripting switch in cmake 2019-02-02 15:25:23 -05:00
Weiyi Wang
6347b5cbb4 Remove libzmq submodule 2019-02-02 15:25:23 -05:00
Weiyi Wang
d765a73a53 Scripting: reimplement protocol over plan UDP using boost::asio 2019-02-02 15:25:23 -05:00
zhupengfei
433176a9b9
citra_qt: Implement UI for adding/editing/deleting cheats
The UI file is rewritten, to better make use of Qt's layouts (instead of depending on abstract geometry). "Add Cheat", "Save", "Delete" buttons are also added.

The UI logic should be rather easy and usable (IMO), but the code may seem a bit dirty. If anyone has a better idea regarding UI logic design or code implementation, feel free to tell me about it.
2019-02-02 08:15:27 +08:00
zhupengfei
573036b38e
core/cheats: Add and change a few functions
Added a few interfaces for adding/deleting/replacing/saving cheats. The cheats list is guarded by a std::shared_mutex, and would only need a exclusive lock when it's being updated.

I marked the `Execute` function as `const` to avoid accidentally changing the internal state of the cheat on execution, so that execution can be considered a "read" operation which only needs a shared lock.

Whether a cheat is enabled or not is now saved by a special comment line `*citra_enabled`.
2019-02-02 08:15:23 +08:00
Weiyi Wang
2731437a17
Merge pull request #4583 from xperia64/screenshot_fix
citra_qt: Fix saving screenshot when no file extension is provided
2019-02-01 10:49:28 -05:00
Weiyi Wang
ae57d72b33
Merge pull request #4603 from DimitriPilot3/gdbstub-watchpoint-fix1
gdbstub: only let Execute breakpoints write/restore BKPT opcodes into memory
2019-02-01 10:49:09 -05:00
Weiyi Wang
f78512d6de
Merge pull request #4599 from wwylele/bitfield-endian
Common: make BitField endianness-aware
2019-02-01 10:48:56 -05:00
Weiyi Wang
6382d9bfc3 NWM_UDS: move states into the class 2019-01-31 15:42:45 -05:00