Commit graph

290 commits

Author SHA1 Message Date
Eladash
f0c267ecb0 Change default Sleep Timers Accuracy setting's value to "Usleep Only" 2019-08-16 09:45:24 +02:00
Nekotekina
d45c743877 Remove lib_loading_type::automatic
This is former default and is now obsolete.
2019-08-14 20:28:34 +03:00
Nekotekina
cf16ee5eb5 Implement lib_loading_type::liblv2list 2019-08-14 20:28:34 +03:00
Nekotekina
ae46333e99 Implement lib_loading_type::liblv2both 2019-08-14 20:28:34 +03:00
Nekotekina
f63e89f9b4 Implement waitable atomics
Moved Atomic.h to util/atomic.hpp
List source files in CMakeLists.txt
2019-07-29 03:04:55 +03:00
Megamouse
71c56b719c Emu/overlays: fix background picture path 2019-07-25 08:53:07 +02:00
Eladash
85b1152e29 Timers scaling and fixes 2019-07-23 00:09:01 +01:00
yahfz
ae055f6792 Set the default SPU Decoder to LLVM and rename SPU LLVM to "fastest" 2019-07-11 23:39:27 +02:00
Eladash
c4d8ef4340 rsx: Allow to configure vblank rate
Removed "HLE protection" hack from sys_rsx_context_attribute
2019-07-12 00:19:56 +03:00
RipleyTom
6c6b973342 Microphone implementation 2019-07-11 20:13:12 +01:00
kd-11
0fa3bcc336 rsx: Asynchronous data transfer 2019-06-25 20:50:54 +03:00
Nekotekina
5d45a3e47d Implement cpu_thread::suspend_all
Remove Accurate PUTLLC option.
Implement fallback path for SPU transactions.
2019-06-19 20:36:12 +03:00
kd-11
8dafc8e542 cfg: Default MSAA level to auto 2019-06-14 17:19:55 +03:00
kd-11
bca5f94b3f rsx: Add option to toggle MSAA 2019-06-14 16:19:52 +03:00
Megamouse
cafa4521ee Better Support For Game Collections (#4450) 2019-06-01 01:12:30 +03:00
Nekotekina
71b71537a0 SPU TSX: implement Accurate PUTLLC option
Allow spurious PUTLLC failure if disabled (default).
2019-05-25 22:23:23 +03:00
gidan80
9aa08313e3 Qt: Add custom pad configs
Add a custom pad config for every game.
2019-05-16 20:37:41 +02:00
Nekotekina
ea554ae828 Implement 'Max SPURS Threads' option (hack)
Pauses SPURS threads beyond limit automatically if set.
2019-05-14 22:15:04 +03:00
Megamouse
b639584acc Emu/Qt: Fix Boot Recent when using BootGame(add_only=true) 2019-05-05 16:29:50 +02:00
kd-11
a668560c68 rsx: Use native half float types if available
- Emulating f16 with f32 is not ideal and requires a lot of value clamping
- Using native data type can significantly improve performance and accuracy
- With openGL, check for the compatible extensions NV_gpu_shader5 and
AMD_gpu_shader_half_float
- With Vulkan, enable this functionality in the deviceFeatures if
applicable. (VK_KHR_shader_float16_int8 extension)
- Temporarily disable hw fp16 for vulkan
2019-04-25 16:23:05 +03:00
eladash
777a99d01b misc: Lower default perf overlay detail
Because RSX Guest utilization confuses people and is only meaningful for debugging.
2019-04-18 22:23:05 +03:00
RipleyTom
63bbe459ea DS3 pad handler 2019-03-18 19:05:02 +03:00
Megamouse
27f6f497a2 use "config/custom_configs/" for custom configs (backwards compatible) 2019-01-31 20:14:52 +00:00
Nekotekina
4f152ad126 SPU: multithread compilation
Allow parallel compilation of SPU code, both at startup and runtime
Remove 'SPU Shared Runtime' option (it became obsolete)
Refactor spu_runtime class (now is common for ASMJIT and LLVM)
Implement SPU ubertrampoline generation in raw assembly (LLVM)
Minor improvement of balanced_wait_until<> and balanced_awaken<>
Make JIT MemoryManager2 shared (global)
Fix wrong assertion in cond_variable
2019-01-22 22:02:02 +03:00
Nekotekina
cc430769c6 Rollback audio backend priority 2019-01-18 16:49:17 +03:00
elad
fc92ae4085 SPU/PPU atomics performance and LR event fixes (#5435)
* Fix SPU LR event setting in atomic commands according to hw test
* MFC: increment timestamp for PUT cmd in non-tsx path
* MFC: fix reservation lost test on non-tsx path in regard to the lock bit
* Reservation notification moved out of writer_lock scope to reduce its lifetime
* Use passive_lock/unlock in ppu atomic inctrustions to reduce redundancy
* Lock only once for dma transfers (non-TSX)
* Don't use RDTSC in reservation update logic
* Remove MFC cmd args passing to process_mfc_cmd
* Reorder check_state cpu_flag::memory check for faster unlocking
* Specialization for 128-byte data copy in SPU dma transfers
* Implement memory range locks and isolate PPU and SPU passive lock logic
2019-01-15 18:31:21 +03:00
Nekotekina
a419e98acb Move PPU and shader cache
New hash-based location (already used for SPU)
Bump PPU cache version, improve naming and decrease size

Remove fs::get_data_dir
Disable boot.elf cache
2019-01-14 01:24:05 +03:00
Rui Pinheiro
fe9062671e Change audio tooltips, audio backend order 2019-01-12 21:29:56 +03:00
Rui Pinheiro
48db0430d4 Misc. Tweaks 2019-01-12 21:29:56 +03:00
Rui Pinheiro
67f9397746 Various fixes
In addition, linux builds (and ALSA/PA) now work again
2019-01-12 21:29:56 +03:00
Rui Pinheiro
892deb1552 Implement basic time stretching + Tweaks 2019-01-12 21:29:56 +03:00
Rui Pinheiro
5159d3559e Implement Audio Backend Capabilities querying
Also renames "AudioThread" to "AudioBackend". The new name is more
descriptive of what the class really is responsible for, since the
backends are not responsible for managing the audio thread.

NOTE: Right now only XAudio2 is supported
2019-01-12 21:29:56 +03:00
Rui Pinheiro
2addbe6be2 Implement basic cellAudio buffering 2019-01-12 21:29:56 +03:00
Megamouse
e0ac244fed split MsgDialogBase 2019-01-10 13:05:48 +01:00
eladash
79a6a2c7fb Debug console emulation 2018-12-30 20:12:32 +00:00
Nekotekina
d7be0a96f3 SPU LLVM: approximate xfloat option
Adapt previous SPU ASMJIT changes made by @kd-11
FM, FMA, FNMS, FMS are approximated.
FCGT, FCMGT are accurate.
2018-12-24 16:04:46 +03:00
MSuih
eba364c64c Clear disk cache if it grows too large (dev_hdd1/cache) (#5411)
* Clear disk cache automatically

* Add disk cache to UI
2018-12-24 00:18:47 +03:00
Megamouse
b99a88afe2 Qt/Input: disable in-game controls while the pad settings are opened 2018-12-23 04:13:27 +01:00
Megamouse
bc3ab7a9d9 Input: Enable In-Game Pad Config Reset 2018-12-17 19:41:18 +01:00
Rui Pinheiro
af360b78f2 Texture cache section management fixups
Fixes VRAM leaks and incorrect destruction of resources, which could
lead to drivers crashes.

Additionally, lock_memory_region is now able to flush superseded
sections. However, due to the potential performance impact of this
for little gain, a new debug setting ("Strict Flushing") has been
added to config.yaml
2018-12-11 22:37:10 +03:00
NicknineTheEagle
32059bfaa2 Properly get PARAM.SFO and icons for C00 games (#5370)
* Added a helper function for fetching game's PARAM.SFO path

This should properly get SFO path for unlocked C00 games

* Normalized line endings

* Refresh game list after installing a RAP file
2018-12-04 01:46:01 +03:00
Nekotekina
06253c8489 Implement "Initialize Directories" options
If disabled, /dev_hdd0, /dev_hdd1, etc, are not created automatically.
2018-11-05 13:14:11 +03:00
msuih
56ea45f9d5 Add setting for master volume 2018-10-20 16:35:01 +03:00
Megamouse
49e5212a8f RSX/Overlays: Add option for japanese button layout 2018-10-03 23:08:33 +02:00
Nekotekina
19a64e0e94 Add g_typemap and g_idm alias
Future idm/fxm replacement
2018-10-02 02:22:26 +03:00
kd-11
d6dc1493cb rsx/overlays: Implement blur, darkening and ability to disable custom background 2018-09-18 16:24:13 +03:00
Megamouse
ed7012c9db cellKb/Qt: Improve basic keyboard
Sadly the shift in Qt is a bit counter productive.
You'll have to hack another key as shift until i figured it out
2018-09-13 22:01:30 +02:00
Nekotekina
3ac1b46df2 Add option "HLE lwmutex"
Replaces lwmutex/lwcond implementation with alternative one
2018-09-09 01:02:19 +03:00
jmatich
b5dbd44087 Compilation fixes for Mingw64 (MSYS2) (#4899)
fix compilation on mingw
2018-08-29 14:27:10 +03:00
Nekotekina
fdd4f03b93 SPU LLVM: improve xfloat precision
Use doubles for intermediate representation
Add option "Accurate xfloat" to enable
2018-08-12 15:42:47 +03:00