Commit Graph

7679 Commits

Author SHA1 Message Date
be764e4f88 audio_core: hle: mf: multiple fixes...
... more smart pointers and re-arrange code
2019-02-09 11:57:36 +01:00
4bc6bfd51f audio_core: hle: mf: re-arrange comments 2019-02-09 11:57:36 +01:00
972b527374 audio_core: hle: mf: cleanup headers 2019-02-09 11:57:36 +01:00
2c40ef2a90 audio_core: hle: mf: rename functions 2019-02-09 11:57:36 +01:00
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
b1638b31a0 Change travis MinGW build from FFmpeg to WMF 2019-02-09 11:57:36 +01:00
10f876653d audio_core: hle: mf: transition to use smart pointers 2019-02-09 11:56:51 +01:00
bee5ba3e33 audio_core: hle: mf: fix a regression...
... an introduction in 8f591d3b85714383196fd21e744a7eed5302ff0a
2019-02-09 11:56:51 +01:00
06316be8a7 audio_core: hle: mf: minor fix 2019-02-09 11:56:51 +01:00
c03861c2d9 audio_core: hle: mf: address another batch of reviews from @B3N30 2019-02-09 11:56:51 +01:00
7f5b54fda4 audio_core: hle: mf: address reviews from @B3N30 2019-02-09 11:56:51 +01:00
11e277149c audio_core: hle: fix compile 2019-02-09 11:56:51 +01:00
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
1581dea6de more reviews addressed 2019-02-09 11:55:12 +01:00
8fe3e37df5 audio_core: fix msvc include issue 2019-02-09 11:55:12 +01:00
bd9984b5f8 Addressed reviews 2019-02-09 11:55:12 +01:00
847003cc1c FFmpegDL: Added external_dlls folder to user folder
AACDecoder: addressed reviews
2019-02-09 11:52:31 +01:00
45b5de7a18 Fixup: Merge conflict with dsp lle 2019-02-09 11:52:31 +01:00
c521f3b7d6 CoreAudio::HLE: Add FFmpeg aac decoder 2019-02-09 11:52:31 +01:00
ee0afb4318 citra_qt: show demos on game list 2019-02-08 19:04:05 -05:00
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
687fa0134d Merge pull request #4609 from wwylele/nuke-zmq
Reimplement scripting over plain UDP
2019-02-08 18:38:21 -05:00
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
6be1b4d293 renderer_base: backport minor changes from yuzu 2019-02-06 17:16:27 +01:00
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
cd21abe50f sdl: add GLES support 2019-02-03 15:58:09 -06:00
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
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
008197a569 Remove scripting switch in cmake 2019-02-02 15:25:23 -05:00
6347b5cbb4 Remove libzmq submodule 2019-02-02 15:25:23 -05:00
d765a73a53 Scripting: reimplement protocol over plan UDP using boost::asio 2019-02-02 15:25:23 -05:00
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
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
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
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
f78512d6de Merge pull request #4599 from wwylele/bitfield-endian
Common: make BitField endianness-aware
2019-02-01 10:48:56 -05:00
6382d9bfc3 NWM_UDS: move states into the class 2019-01-31 15:42:45 -05:00
9af8d61ba2 externals/glad: add GLES loader 2019-01-30 14:08:28 -06:00
3a7a686fa9 Kernel/SharedMemory: make owner_process a raw pointer
To break a circular reference formed by process->handle_table->shared_memory->process. Since SharedMemory uses its owner process in the destructor, which is not kept alive by SharedMemory any more, we need to make sure that the lifetime of process is longer than the shared memory. To partially resolve this, Process now explicitly releases shared memory first in its destructor. This is with the assumtion that there is no inter-process reference to shared memory on exit, which is not true when we introduce more multi-process emulation. A TODO is left there for this, as more RE needs to be done on how 3DS handles this situation
2019-01-29 11:18:51 -05:00
104829ae58 remove all occurance of specifying endianness inside BitField
This commit it automatically generated by command in zsh:
sed -i -- 's/BitField<\(.*\)_le>/BitField<\1>/g' **/*(D.)

BitField is now aware to endianness and default to little endian. It expects a value representation type without storage specification for its template parameter.
2019-01-28 22:09:43 -05:00
055b9513a3 common/bitfield: make it endianness-aware 2019-01-28 22:09:43 -05:00
fa9d6b79f9 common/swap: remove default value for swap type internal storage
This is compromise for swap type being used in union. A union has deleted default constructor if it has at least one variant member with non-trivial default constructor, and no variant member of T has a default member initializer. In the use case of Bitfield, all variant members will be the swap type on endianness mismatch, which would all have non-trivial default constructor if default value is specified, and non of them can have member initializer
2019-01-28 22:09:43 -05:00
985cd878e6 common/swap: use template and tag for LE/BE specification
The tag can be useful for other type-generic templates like BitFields to forward the endianness specification
2019-01-28 22:09:43 -05:00
602334cb1e Fix mouse touchscreen in SBS 3D mode.
You can now click or drag on either eye's touchscreen.
2019-01-27 16:25:42 +10:30
d388fe58f7 gdbstub: only let Execute breakpoints write/restore BKPT opcodes into target memory 2019-01-26 22:08:39 +01:00
bad2e084e3 Merge pull request #4601 from FearlessTobi/fix-0-percent-issue
dsp_interface: fix sound being played while volume is 0
2019-01-26 14:24:01 -05:00
4ed9e057e8 Merge pull request #4567 from ykgmfq/patch-1
travis: update flatpak sdk to 5.12
2019-01-26 14:23:35 -05:00
2feb87ba2d Merge pull request #4517 from MerryMage/simplify-macos-upload
[WIP] travis: Simplify macos/upload.sh
2019-01-26 14:05:24 +00:00
24f966481f dsp_interface: fix sound being played while volume is 0
According to documentation, if the argument of std::exp is zero, one is returned.
However we want the return value to be also zero in this case so no audio is played.
2019-01-26 14:53:58 +01:00
80ebd75285 citra-qt: Add /default parsing for hotkeys. Also minor code cleanups. 2019-01-25 20:42:49 +05:30