Megamouse
28bea14d72
add missing files to visual studio project
2020-03-31 18:06:37 +02:00
Eladash
fdd7f0645d
Some typos ( #7908 )
...
* sys_lwcond: replace writer lock with reader lock
* sys_rsx: Typo fix
* sys_net: Fixup for buffer reading
2020-03-31 16:44:50 +03:00
Eladash
29be815302
rsx: Implement DECR memory layout ( #7906 )
2020-03-31 05:12:30 +01:00
Eladash
1510505b30
Fix sys_rwlock_wlock timeout event
2020-03-30 14:22:15 +03:00
Jan Beich
afce3ee2ed
Qt: add more headers for non-Vulkan
...
rpcs3/rpcs3qt/emu_settings.cpp:111:44: error: use of undeclared identifier 'g_cfg'
for (const auto& v : cfg_adapter::get_cfg(g_cfg, begin, end).to_list())
^
rpcs3/rpcs3qt/emu_settings.cpp:262:60: error: use of undeclared identifier 'Emulator'
fs::create_path(title_id.empty() ? fs::get_config_dir() : Emulator::GetCustomConfigDir());
^
rpcs3/rpcs3qt/emu_settings.cpp:276:39: error: use of undeclared identifier 'Emulator'
const std::string config_path_new = Emulator::GetCustomConfigPath(m_title_id);
^
rpcs3/rpcs3qt/emu_settings.cpp:277:39: error: use of undeclared identifier 'Emulator'
const std::string config_path_old = Emulator::GetCustomConfigPath(m_title_id, true);
^
rpcs3/rpcs3qt/emu_settings.cpp:308:17: error: use of undeclared identifier 'Emulator'
config_name = Emulator::GetCustomConfigPath(m_title_id);
^
rpcs3/rpcs3qt/emu_settings.cpp:319:21: error: use of undeclared identifier 'g_cfg'
if (config_name == g_cfg.name || m_title_id == Emu.GetTitleID())
^
rpcs3/rpcs3qt/emu_settings.cpp:319:49: error: use of undeclared identifier 'Emu'
if (config_name == g_cfg.name || m_title_id == Emu.GetTitleID())
^
rpcs3/rpcs3qt/emu_settings.cpp:322:3: error: use of undeclared identifier 'g_cfg'
g_cfg.from_string(config.to_string(), true);
^
rpcs3/rpcs3qt/emu_settings.cpp:324:8: error: use of undeclared identifier 'Emu'
if (!Emu.IsStopped()) // Don't spam the log while emulation is stopped. The config will be logged on boot anyway.
^
rpcs3/rpcs3qt/emu_settings.cpp:326:51: error: use of undeclared identifier 'g_cfg'
cfg_log.notice("Updated configuration:\n%s\n", g_cfg.to_string());
^
2020-03-30 10:52:46 +02:00
Eladash
019aae8bec
sys_net: Fix access violation handling ( #7901 )
...
Should fix page faults notifications on unmapped menory on Gran Turismo 5.
2020-03-30 05:53:17 +01:00
Whatcookie
cc100f4008
Fix alignment on embedded spu elf searching ( #7894 )
...
- They are actually 128 byte (1024 bit) aligned.
2020-03-29 03:54:45 +01:00
Nekotekina
cba9ed3527
CMake: add /MT for MSVC
2020-03-28 17:21:03 +03:00
Nekotekina
dcc269128f
SPU LLVM: runtime multithreaded compilation
...
Active for CPU with 12 or more threads.
2020-03-28 17:17:51 +03:00
Nekotekina
9db088e17b
SPU LLVM: log hash in some places
2020-03-28 17:17:51 +03:00
Eladash
4215499b7f
rsx: Fix typo in NV4097_SET_TRANSFORM_PROGRAM range
2020-03-28 11:07:34 +03:00
unknown
049825812e
RSX: Restrict analyser loop error
2020-03-28 09:42:13 +03:00
Eladash
66bd8308d9
lv2: Wait for rescheduling before confirming timeouts ( #7875 )
2020-03-28 03:16:59 +00:00
xddxd
d96dabcd60
rsx: Rename current_instrution to current_instruction ( #7883 )
2020-03-28 02:46:48 +00:00
JohnHolmesII
f5a51599d9
CD: Fix experimental build warning for Travis
2020-03-27 23:00:22 +03:00
JohnHolmesII
6712ac0a72
Build: Do not warn for local builds
2020-03-27 23:00:22 +03:00
JohnHolmesII
70d6a12894
CI: Port Windows build to Azure Pipelines ( #7757 )
...
* CI: Port Windows build to Azure Pipelines from Appveyor
* CI: Split Windows build into scripts
* CI: Remove Appveyor
* CI: Add GitHub Release deployment to Azure Windows Build
* VCS: Add full branch name function to rpcs3_version
The STRINGIZE macro was a little awkward, and difficult to control
at configure time. Since other version information is already
included, the full branch name is now added as a function. It's
runtime instead of compile-time checking, but it seems worth it.
* CI: Overhaul Windows setup script
Previously, there was no way of forcing a re-download
of cached dependencies when they were replaced by new ones. In
addition, there was really no verification of downloads or cache.
Now, changing a few lines at the top of the file will automagically
force a cache update.
2020-03-27 16:37:27 +03:00
AniLeo
c00ee7ed5b
hle: cellSysutilNpEula
...
Add missing function names and stub all functions
Co-Authored-By: Eladash <elad3356p@gmail.com>
Co-Authored-By: Eladash <elad3356p@gmail.com>
2020-03-27 15:26:28 +03:00
RipleyTom
cd4eed0704
Gives ANSI path to curl CURLOPT_CAINFO
2020-03-27 14:23:20 +03:00
scribam
a2bf0719ea
cmake: Fix windeployqt command line for release builds ( #7871 )
2020-03-27 00:33:07 +00:00
Ani
e8177906e7
System/Load: Handle PSP Remaster ( #7857 )
...
This just makes RPCS3 execute PSP Remaster games through
psp_emulator.self
pspemu does not work yet, so the boot will fail, but at the least it
starts loading
2020-03-26 20:03:00 +03:00
Nekotekina
17a9ce6fb9
Fix PS1 game_path
...
Don't assume local path has '/dev_hdd0' in it.
2020-03-26 18:32:42 +03:00
Eladash
36d8553f9c
liblv2 HLE: Fix entryx of start/stop prx functions
2020-03-26 17:52:45 +03:00
Eladash
9d971e3b07
rsx: More strict infinite desync detection
...
6 desyncs per second for 1.5 seconds is pretty bad already.
2020-03-26 17:52:45 +03:00
Eladash
7ed570dc4a
PPU LLVM: Add relocation 5 for ADDIS
...
+ Add some more for u16 relocations (4, 5, 6), simplify logic.
2020-03-26 17:52:45 +03:00
Nekotekina
a5ba4a18df
Fix windeployqt command line for release builds
2020-03-26 16:53:21 +03:00
Maxim Kulyk
30a8cadf60
[MSVC] Remove unnecessary configurations and properly fix curl
2020-03-26 15:56:40 +03:00
Nekotekina
fa29c5aa94
ppu_iname: refactor to use actual strings
2020-03-26 15:28:41 +03:00
Nekotekina
8d1a9dce91
spu_iname: refactor to use actual strings
2020-03-26 15:26:55 +03:00
Eladash
453478c98b
PPU LLVM: Log unsupported relocation opcode
2020-03-26 15:22:45 +03:00
Eladash
ccc7cb7994
Log IDs of loaded prx modules
2020-03-26 15:22:45 +03:00
Eladash
38c8dd98b4
rsx: Implement basic infinite FIFO desync detection
2020-03-26 15:22:45 +03:00
Maxim Kulyk
ec4287cbd3
static RT
2020-03-26 15:21:53 +03:00
Maxim Kulyk
e58fa7d51f
Fix curl
2020-03-26 15:21:53 +03:00
Eladash
158e34faca
rsx: Reset all method registers at rsx_state::init()
2020-03-25 17:51:59 +03:00
Eladash
768b4f8c65
rsx: Improve NV308A_COLOR
...
* Fix NV308A_COLOR methods range.
* Batch NV308A_COLOR methods execution together.
* Fix termination of bind_range<> in rsx methods binding.
2020-03-25 17:51:59 +03:00
Eladash
150d1bcdd5
sys_prx_unload_module: Implement CELL_PRX_ERROR_NOT_REMOVABLE
2020-03-25 16:22:47 +03:00
Eladash
e1f2f3f081
sys_prx: Improve sys_prx_start/stop_module
...
* Add missing error codes, "internal" errors are ones which are not reachable from liblv2.sprx functions
* Implement SYS_PRX_NO_RESIDENT (unloading module) for _sys_prx_start_module.
2020-03-25 16:22:47 +03:00
Eladash
717dd1625c
sys_prx: Implement sys_prx_get_module_list
2020-03-25 16:22:47 +03:00
Megamouse
a11c77c009
Qt: fix mem leaks in screenshot and save managers
2020-03-25 11:50:06 +01:00
Megamouse
844f9683ec
Qt: add naive lazy loading to screenshot manager
2020-03-25 11:50:06 +01:00
Megamouse
f27de28ee9
Qt: add open file location to screenshot preview
...
Remove duplicate slash from screenshot path
2020-03-25 11:50:06 +01:00
Megamouse
bd49ad358c
Qt: move open_dir to qt_utils
2020-03-25 11:50:06 +01:00
Nekotekina
89514c043a
Fix "Unknown option: updating"
2020-03-25 11:23:38 +03:00
Nekotekina
471db3219d
Finalize constexpr ppu_decoder<> thing
...
Move SSSE3 checks to runtime in PPUInterpreter.cpp
2020-03-25 11:18:48 +03:00
Megamouse
fd3522436a
overlays/osk: add more panels
2020-03-25 03:54:49 +01:00
Nekotekina
1ceb779a38
Make ppu_decoder<> objects constexpr (partial)
2020-03-24 13:46:46 +03:00
Nekotekina
a936533eb1
Make spu_decoder<> objects constexpr
2020-03-24 12:18:37 +03:00
Eladash
eb1de04ca8
_sys_lwmutex_lock: log new case of ESRCH
2020-03-23 23:18:21 +03:00
Eladash
2aff36647a
Make sceNpDrmProcessExitSpawn(2) execute sys_game calls correctly
2020-03-23 23:18:21 +03:00
Nekotekina
19e20d9c19
Auto-Updater: increase lock file waiting timeout in the case of updating
...
Normal case: timeout reduced from 3s to 2s.
Updating case: increased timeout to 10s.
2020-03-23 22:52:05 +03:00
Nekotekina
3d78694590
Debug: measure initialization time (before main() function)
2020-03-23 22:18:45 +03:00
Eladash
52360b3f98
liblv2 HLE: Fix sys_lwmutex_lock assertation
2020-03-23 21:37:37 +03:00
Eladash
08e66ab14c
Minor warning fixes
2020-03-23 21:37:37 +03:00
Eladash
3de41bfea7
_sys_lwcond_signal: Make mode 3 respect ordering of the sleep queue
2020-03-23 21:37:37 +03:00
Megamouse
1537f505a5
cellGem: fix move_handler::mouse left click
2020-03-23 15:10:01 +03:00
Nekotekina
5ebc538d7e
Workaround for VS 16.5
...
Strange codegen bug didn't promote s32 to u64.
2020-03-23 14:48:49 +03:00
kd-11
4965bf7d7a
gl/vk: Refactor draw call handling and stub shader interpreter
...
- Refactors backend draw call management to make it easier to extend
functionality.
- Stubs shader interpreter functionality.
2020-03-23 14:47:28 +03:00
Eladash
537f175f52
Another fixup after #7826
2020-03-23 11:54:19 +03:00
Eladash
017ef5a94e
Minor fixup after #7826
2020-03-23 10:59:51 +03:00
Eladash
cccc32fa9d
sys_lwmutex/lwcond: track lwcond waiters ( #7826 )
...
In lwmutex destroy syscall, wait for pending waiters.
2020-03-23 10:30:17 +03:00
sL1pKn07
9de9ec1f01
Fix build with Qt 5.15+
2020-03-23 07:23:56 +03:00
Megamouse
ef10ed4499
Qt: Add basic screenshot manager
2020-03-22 23:40:55 +01:00
Megamouse
b447e6f55d
Qt: use simple curl wrapper to avoid some pitfalls
2020-03-22 19:16:25 +01:00
Megamouse
3c63db93ed
Qt: fix double slash in updater tmp_folder
2020-03-22 19:16:25 +01:00
Megamouse
da09badd8d
Qt: simplify current_build in update manager
2020-03-22 19:16:25 +01:00
Megamouse
7f8d802bd5
Qt: fix log message in update manager
2020-03-22 19:16:25 +01:00
Megamouse
532215fb81
Qt: show welcome dialog before showing the app
...
Fixes interference with update manager
2020-03-22 19:16:25 +01:00
Megamouse
13e166084d
Qt: use Localized::GetVerboseTimeByMs
2020-03-22 19:16:25 +01:00
Emmanuel Gil Peyrot
425e032a62
SPU: Copy with memcpy() instead of hand-rolled SSE2
...
In some very unscientific benchmark:
spu_thread::do_dma_transfer() was taking 2.27% of my CPU before, now
0.07%, while __memmove_avx_unaligned_erms() was taking 1.47% and now
2.88%, which added makes about 0.8% saved.
2020-03-22 15:51:03 +03:00
Nekotekina
5261886449
CURL_STATICLIB macro cleanup
...
Also move includes from headers. CURL is just void.
2020-03-22 14:13:52 +03:00
Nekotekina
e606130262
Memoize and print r3-r6 under Current function in the ppu_thread::dump()
2020-03-22 14:13:52 +03:00
Megamouse
7d33ca7059
Qt: use QDateTime in update manager
2020-03-22 14:13:33 +03:00
RipleyTom
af4efafae1
Remove Qt5Network Qt5OpenGL and Qt5QML dependencies
2020-03-22 13:48:43 +03:00
Megamouse
09a8974786
Qt: fix curl threads
2020-03-22 13:48:43 +03:00
RipleyTom
b1d8bf754e
Replace QNetwork operations with libcurl + wolfssl
2020-03-22 13:48:43 +03:00
Eladash
132c3e1c1a
kernel explorer: Add information about memory containers
2020-03-22 12:41:02 +03:00
Eladash
dc839e1784
lv2: Do not lose r3 data on syscalls
...
Allows to get the ID of the lv2 sync objects in the debugger by looking at r3's content.
2020-03-22 12:41:02 +03:00
Eladash
f1cf62ac57
kernel explorer: Implement ability to view lwmutex owner
2020-03-22 12:41:02 +03:00
kd-11
12044bd8b0
rsx: Properly calculate vertex range when divisor is active
...
- The upper bound is to be rounded up, not down.
2020-03-22 10:57:47 +03:00
Eladash
01cafc042d
cellSaveData: Ensure savedata_context members are 16-byte aligned
...
I saw stvx v128{0} (aligned 16-bytes store) usage on the first 16-bytes of CellSaveDataCBResult before funcStat in fw.
Also I saw 4 stw of u32{0} on it as well before funcFile, funcFixed and funcList.
So just add the resets for result before all callbacks, and make all
members of savedata_ontext 16 -byte aligned in case there are more
members guaranteed to be aligned.
2020-03-21 19:05:20 +03:00
Eladash
ceaee0ec68
cellSaveData: Clear traces of setList setup from setBuf->buf, add missing memset
...
* Always memset 0 setBuf->buf (to bufSize) before funcStat if the direcory is not new.
* Always memset 0 setBuf->buf (to bufSize) if listGet->dirNum became non-zero (listGet->dirListNum can be zero yet memset still occurs) .
* Clear traces of setList setup before funcStat (after funcFixed/List, only if listGet->dirNum != 0, callback can hack this value and prevent the memset).
2020-03-21 19:05:20 +03:00
Eladash
b6a288d383
cellSaveData: Skip directory items in savedata_get_list_item
2020-03-21 19:05:20 +03:00
Eladash
ae14eb0747
Minor fix of cellUserInfoGetStat
...
stat == nullptr is allowed, fix invalid id error code.
2020-03-21 19:05:20 +03:00
Eladash
be0e586671
cellSaveData: Add error checks for cellSaveData(User)GetListItem
2020-03-21 19:05:20 +03:00
Eladash
66916df4ae
cellSaveData: Set listSet->focusPosition to LISTHEAD by default
2020-03-21 19:05:20 +03:00
Eladash
fae46bf194
cellSaveData: Add CELL_SAVEDATA_ERROR_NOUSER
2020-03-21 19:05:20 +03:00
Eladash
e1cb827488
PPU Precise: Fix FMADDS, FMSUBS, FNMSUBS, FNMADDS
2020-03-21 16:32:09 +03:00
Eladash
3a36b713ce
Dont spam syscalls stats if emu is paused
2020-03-21 16:31:18 +03:00
Eladash
9acf8e283d
Fix OSK thread exit condition
2020-03-21 12:37:29 +03:00
Nekotekina
c577bd2111
Implement thread_state::errored
...
State after calling thread emergency_exit() function.
Also default-construct thread result in this case.
2020-03-20 21:31:27 +03:00
Megamouse
eb2dcaf602
Qt: fix some translation bubus
2020-03-20 01:43:08 +01:00
Megamouse
fd8cda0f2b
overlays/osk: fix selection after changing panels
...
We now try to keep the current x and y selected after panel changes.
Also change some copy to ref
2020-03-19 21:10:08 +01:00
Megamouse
c63f77e3b0
overlays/osk: fix full width characters
2020-03-19 21:10:08 +01:00
Megamouse
a1f70bf96e
overlays/osk: do not change the preview text on empty input
...
This prevents that the placeholder disappears
2020-03-19 21:10:08 +01:00
Megamouse
f1127f1894
overlays: implement osk panels
2020-03-19 21:10:08 +01:00
Eladash
1dbb5422a2
Avoid a segfault when reading ppu stack contents in debuggers
...
TODO: lock vm mutex.
2020-03-19 14:18:05 +03:00
Eladash
a3289e9d40
Fix memory leak in rsx debugger
2020-03-19 14:18:05 +03:00
Eladash
f2d6a1ff60
disasm: Improve instructions spacing
2020-03-19 14:18:05 +03:00
Eladash
fd45bf5fba
debugger: Force aligned memory view
...
Fixes a corner case viewing unaligned memory at the end of spu memory.
Also unaligned view isn't suitable for the debugger, for these purposes the memory viewer should be used instead.
2020-03-19 14:18:05 +03:00
Eladash
e3668cc26c
Fix a segfault in memory viewer
...
Also a memory leak.
2020-03-19 14:18:05 +03:00
Eladash
7139c4fbab
Fix bug introduced by #7797
2020-03-19 07:22:05 +03:00
Malcolm Jestadt
0bfdc1f62e
PPU LLVM: Improve VMADDFP and VNMSUBFP
...
- Use native FMA to emulate VMADDFP, with a fallback for processors that don't support FMA
- Use native FMA to emulate VNMSUBFP as well, but note that it differs from the emulated path with regards to negative zero
2020-03-19 06:47:16 +03:00
Eladash
b11e8f8b8d
Minor fix of sys_ppu_thread_yield return value
...
Account for a special case where threads were rotated but no context
switch was made.
2020-03-19 06:45:14 +03:00
Eladash
7be35315da
Fix lv2 sys_lwcond/sys_lwmutex kernel explorer names
2020-03-19 06:45:14 +03:00
Nekotekina
6a2571d0e1
SPU: print current chunk hash in dump
2020-03-18 18:28:46 +03:00
Nekotekina
20f7544a8a
SPU profiler: minor change
...
Use std::greater to sort
2020-03-18 18:28:46 +03:00
Zion Nimchuk
2678ac6382
Change default audio backend on non-windows
...
FAudio is preferred, but if we didn't build with FAudio, we default to OpenAL
Also changed it to explicitly use xaudio backend on windows, rather than the static cast we had before.
2020-03-18 09:38:13 +01:00
Eladash
03a6d67c6c
Log sys_lwmutex/sys_lwcond names as strings
...
Use std::string_view instead of creating a temporary NTS string when reading object name.
2020-03-17 18:22:13 +03:00
Eladash
a9f492b605
sys_spu: Fix oops in sys_raw_spu_destroy after #7782
...
'id' is not the idm id, also explicitly join the thread so a situation where the thread is still active and communicating other threads (e.g via MMIO or MFC) yet its ID is removed won't happen. (logic breakage, destroyed thread can't be active)
2020-03-17 18:22:13 +03:00
Eladash
664d606123
Add return value of sys_ppu_thread_yield
2020-03-17 18:22:13 +03:00
Eladash
00d25a191b
lv2: Uncomment sys_ppu_thread_stop/restart
2020-03-17 18:22:13 +03:00
Eladash
3566faabd9
Add missing lv2_obj::sleep when joining interrupt thread
2020-03-16 21:06:33 +03:00
Eladash
7e224c5585
cellVdecClose: Followup fix to #7663
...
Avoid executing sys_interrupt_thread_disestablish on different ppu thread with the same ID.
2020-03-16 21:06:33 +03:00
Eladash
9e14e835e7
Fix sys_raw_spu_destroy
2020-03-16 21:06:33 +03:00
Megamouse
33d01fd252
log: properly escape all html except newlines
2020-03-15 20:41:24 +03:00
kd-11
d25ba03e82
vk: Lazy evaluate renderpass scope
...
- Spamming the driver with renderpass open/close cycles is bad for performance.
2020-03-15 18:39:40 +03:00
kd-11
7025985c0d
rsx: Improve section scanning when updating surface cache resources in blit engine.
2020-03-15 16:51:23 +03:00
kd-11
a756c0679e
rsx: Implement cross-aspect slice gathering
...
- Fixes a data leak that can happen when a surface is rejected due to aspect mismatch.
- Mismatch can lead to rejection due to area covered excluding the RTT and inevitable upload a texture from CPU at the same location.
- Overlapping fbo/shader_read resources are not allowed.
2020-03-15 16:51:23 +03:00
Eladash
377e06a4a2
rsx: Fix unknown Blend equation
2020-03-15 09:53:15 +03:00
Rose
231e837f9b
[UI] Grey out AA and Aniso settings under strict rendering ( #7773 )
...
* Grey out AA and aniso under strict rendering
* Сhange aniso UI string to 'Auto'
Co-authored-by: Ivan <Nekotekina@users.noreply.github.com>
2020-03-14 20:45:41 +03:00
Nekotekina
45389dca51
PPU: minor fix for ppu_join_status::max
...
Don't treat it as special "invalid" value.
2020-03-14 20:36:56 +03:00
Eladash
4e6934c9dc
Minor idm::remove_verify usage optimization in sys_interrupty.cpp
...
Avoid copying a shared ptr, create a weak ptr instead.
2020-03-14 19:26:37 +02:00
Eladash
74c05ec5ee
PPU Disasm: Fix non-link extended BCCTR forms
2020-03-14 19:26:22 +02:00
Eladash
cb4192bce9
vm: Log all guest memory bases at startup
2020-03-14 18:30:14 +02:00
Eladash
83a2204f87
PPU Disasm: Fixup BCCTR after #7775
2020-03-14 18:30:14 +02:00
Eladash
c16124f0d9
idm: Fix minor race in cellVdecClose, sys_raw_spu_destroy...
...
Because of racing removal of IDs vs the shared pointer owned object
2020-03-14 18:30:14 +02:00
Eladash
efe6e1eb0a
sys_ppu_thread: Make PPU id removal after exit atomic with descheduling
...
* Make PPU id removal after exit atomic with descheduling
* Make joining thread scheduling atomic with thread exit sleep.
* Update sys_ppu_thread_stop/restart.
* Add idm::remove_verify.
2020-03-14 18:30:14 +02:00
Eladash
c3d36940c7
cellSaveData: do not allow to read/write/delete system files in funcFile
...
Return param error 70 as realhw in this case.
2020-03-14 16:12:18 +03:00
Eladash
ff341fe597
PPU Disasm: Fix branches spacing
...
Null terminator was added at the end which prevented proper spacing.
2020-03-14 16:12:18 +03:00
Eladash
db71d4852a
cellSaveData: Fix adding file entries to PARAM.SFO on error
2020-03-14 16:12:18 +03:00
Eladash
88ee198d78
cellSaveData: return ERROR_FAILURE on funcFile deletion failures
2020-03-14 16:12:18 +03:00
Nekotekina
9176ca084c
VFS: clarify escape/unescape cannot work on paths
...
With recent changes, it can only work with file or directory name.
2020-03-14 16:01:55 +03:00
Nekotekina
70cd8afafa
VFS: improve vfs::escape (escape NUL, LPT, COM...)
...
Windows legacy trash.
2020-03-14 15:07:59 +03:00
Nekotekina
6a8f5e6b38
VFS: fix vfs::get
...
Escape each path element separately.
2020-03-14 14:25:37 +03:00
Nekotekina
6c234b48ce
VFS: Fix possible out of range in vfs::escape
2020-03-14 13:33:25 +03:00
Nekotekina
bf957a575c
VFS: fix out of range problem in vfs::unescape
...
Also improve unescape with "!" allowing any character
2020-03-14 13:15:46 +03:00
Nekotekina
0c65a1721d
VFS: escape multidot names like ...
2020-03-14 12:34:28 +03:00
Eladash
5d78d81c00
cellSaveData: Filter directory lists to allowed savedata directories
...
Filters "." and "..", as well as possible wrong directories added by the user.
2020-03-13 22:43:27 +03:00
Eladash
b21b4faca8
cellSaveData: Fixed savedata lock after fmt::throw_exception
2020-03-13 22:43:27 +03:00
Eladash
d58f52ff31
cellSaveData: Add some listSet error checks
...
* Check listSet->fixedListNum.
* Check listSet->fixedList for nullptr and its directory items names.
* Check listSet->focusDirName for nullptr and directory name.
* Check listSet->newData->iconPosition.
* Check listSet->newData->dirName for nullptr and directory string.
* Check statSet->setParam->parental_level for old sdk.
* Return an error if listSet->focusPosition is NEWDATA and listSet->newData is nullptr.
* Simplify savedata directory list selection.
2020-03-13 22:43:27 +03:00
Eladash
54af8ec544
cellSaveData: funcFile fixes
...
* Allow '_' at filenames start and extension.
* Check if reading offset is valid, fix error code to CELL_SAVEDATA_ERROR_FAILURE.
* Don't create empty file on error of write ops.
* Don't allow "." and ".." filenames on funcFile, return CELL_SAVEDATA_ERROR_BROKEN.
2020-03-13 22:43:27 +03:00
Eladash
fdf47f43d8
cellSaveData: refactor param error 70 checks
...
Also extend the check to check empty name.
2020-03-13 22:43:27 +03:00
kd-11
2ae83782e1
vk: Fix potential MTRSX deadlock in case of a race condition
2020-03-13 22:06:04 +03:00
Eladash
f3877d11e8
rsx: Fix initial boolean state of m_textures_dirty and m_vertex_textures_dirty
2020-03-12 21:36:43 +01:00
Eladash
28e9cade2c
GUI/rsx capture: Disable capturing if no game is running!
2020-03-12 21:36:43 +01:00
Eladash
c04abac630
rsx capture: Fix exceptions handler, fix tiny race condition on capture new capture
2020-03-12 21:36:43 +01:00
kd-11
7e9dbeff7b
vk: Fix MTRSX deadlock ( #7766 )
2020-03-12 22:29:58 +03:00
Megamouse
f0edcc16fe
evdev: add more buttons to button list
2020-03-12 19:43:52 +01:00
Megamouse
e7adef9fe1
evdev: remove unused call to update_device
2020-03-12 19:43:52 +01:00
Megamouse
9c5da55dca
evdev: Some random cleanup
2020-03-12 19:43:52 +01:00
Nekotekina
d802b3d8b2
Remove -fno-strict-aliasing
...
It was added due to miscommunication.
2020-03-12 16:04:57 +03:00
Nekotekina
04dedb17eb
Disable exception handling.
...
Use -fno-exceptions in cmake.
On MSVC, enable _HAS_EXCEPTION=0.
Cleanup throw/catch from the source.
Create yaml.cpp enclave because it needs exception to work.
Disable thread_local optimizations in logs.cpp (TODO).
Implement cpu_counter for cpu_threads (moved globals).
2020-03-12 16:03:08 +03:00
kd-11
47bbfdd2aa
vk: Change texture cache memory management for disposed textures
...
- Use global resource manager instead of using the 2-frame hold behavior.
- Fixes high VRAM usage in some games
2020-03-11 16:29:34 +03:00
Nekotekina
92eeec39b7
Improve Stop Watchdog
...
Make it less possible to interfere with the debugger.
2020-03-10 23:00:23 +03:00
Nekotekina
656db6c668
Fatal errors: concatenate multiple args after --error
...
It should fix error dialogs on Windows since it decomposes the arg string.
2020-03-10 22:42:33 +03:00
kd-11
7989de9d16
vk: Properly release dma resources.
2020-03-10 22:02:02 +03:00
Megamouse
3ea94c286b
input/overlays: fix premature pad interception removal
...
shader compilation and trophy notifications shouldn't cancel the pad interception during proper dialogs
2020-03-10 19:04:32 +01:00
Bird Egop
4e25daffa6
Explicitly rename has_512 into has_avx512 ( #7751 )
2020-03-10 19:21:00 +03:00
Nekotekina
b4f416cb76
Fix narrow warning in ds4_pad_handler.cpp
2020-03-10 18:45:49 +03:00
Nekotekina
87d4b14ca9
Pause only on fatal messages
...
Also make some access violation an error since we don't pause on it.
2020-03-10 11:26:42 +03:00
Nekotekina
d3eb267ba9
Logs: add 'always' method for debugging
2020-03-10 11:23:56 +03:00
kd-11
12b73c8bdc
rsx: Fix copypasta
2020-03-09 17:20:24 +03:00
Eladash
5751b77688
GUI: followup to #7347
...
Show "Reboot" on current running game when there's no config.
2020-03-09 16:07:14 +03:00
Eladash
636ed4a48b
HLE cellGcmSys: Avoid calling sys_rsx syscalls in rsx code
2020-03-09 16:07:14 +03:00
Eladash
af7cdcb5c7
Add forgotten error check in sys_spu_thread_group_connect_event
2020-03-09 16:07:14 +03:00
kd-11
2985a39d2e
rsx: Rewrite async decompiler
2020-03-09 14:59:25 +03:00
Nekotekina
609c0d46af
Implement stop watchdog
...
Shows fatal error if stopping takes more than 5s.
2020-03-09 13:20:49 +03:00
MSuih
a2b6546d37
Fix framelimit/aspect ratio width
2020-03-08 21:56:48 +01:00
Nekotekina
9dca2887d8
Fixup for Emu.Pause()
...
Remove some reduntant calls.
Don't pause on unknown sys_fs_fcntl operation.
2020-03-08 22:03:16 +03:00
Nekotekina
6268a2d384
Improve report_fatal_error()
...
Previously it could cause secondary segfault on Linux.
2020-03-08 22:03:15 +03:00
Nekotekina
c87beaa694
Use _wexecl on Windows
...
Allows original path to contain any Unicode character.
2020-03-08 20:45:34 +03:00
Nekotekina
1bbe2e9b15
Simplify report_fatal_error
...
Those semaphores didn't achieve anything.
Launch separate process if Qt is already initialized.
2020-03-08 20:45:34 +03:00
Nekotekina
e40019354c
Pause emulation on any fatal log message.
2020-03-08 20:45:34 +03:00
Nekotekina
07e1766a7c
Implement thread_ctrl::emergency_exit()
...
Replace exception throws with this.
2020-03-08 15:11:02 +03:00
illusion0001
814c73407d
overlay: set minimum update interval to 1ms
2020-03-08 15:05:42 +03:00
Eladash
5692c3de04
Fix sceNpUtilCmpNpId
2020-03-08 12:49:34 +03:00
kd-11
8214425a3c
rsx: Fix framebuffer native layout for X32_FLOAT
...
- It was not matching the order laid out for normal textures uploaded from CPU.
2020-03-08 11:43:49 +03:00
kd-11
84a542fbce
rsx: Blit engine improvements
...
- Detect writes to the display output memory and handle it specially.
It already defines a known 2D region.
- Try and detect situations where raw transfers would be of benefit.
2020-03-08 10:30:13 +03:00
Megamouse
ab4189998c
Qt: don't create stupid default.ini file when resetting gui configs
2020-03-08 00:06:48 +01:00
Megamouse
9b672cb969
Qt: Improve tooltip areas in network tab
2020-03-08 00:06:48 +01:00
Megamouse
5f247cbedc
Qt: Backup current gui config before applying another one
...
Also fixes some strange issues caused by the pointer
2020-03-08 00:06:48 +01:00
Megamouse
53676067fc
Qt: remove gui settings default shenanigans
2020-03-08 00:06:48 +01:00
Megamouse
11bc7de0ca
Qt: more code cleanup in gui files
2020-03-08 00:06:48 +01:00
Megamouse
091dcc1052
Qt: fix play button state when booting rpcs3 for the first time
2020-03-08 00:06:48 +01:00
Megamouse
934a2eb9fa
Qt: some code cleanup in gui files
2020-03-08 00:06:48 +01:00
Megamouse
426643c44d
Qt: Prefer currently selected game when pressing the play button
...
Also rename Start to Play
2020-03-08 00:06:48 +01:00
Megamouse
7dd36ff829
Qt: Fix CurrentSelectionIconPath for game grid
...
Fixes deselection issue when booting a game in the game grid
2020-03-08 00:06:48 +01:00
Megamouse
0c45457101
Qt: Add title and title id to button tooltips
2020-03-08 00:06:48 +01:00
Megamouse
e56b3256b0
Qt: Add missing boot error dialog
2020-03-08 00:06:48 +01:00
Eladash
892f74d762
rsx: Improve frame-limiter ( #7723 )
...
* rsx: Improve frame-limiter accuracy
* lv2: Improve lv2_obj::wait_timeout response time for aborting threads
* rsx: Make stretch to display area setting dynamic
* rsx: Redefine 'auto' frame limiter to obey vblank rate
* rsx: Make frame limiter setting dynamic
* rsx: Make frame-limiter compatible with dynamic changes
2020-03-08 01:11:35 +03:00
Eladash
deb6bd3e25
Atomic sys_prx_load_module_list error checks
2020-03-07 22:03:38 +03:00
Eladash
5e86ef2371
rsx: Make force cpu blit setting dynamic
2020-03-07 21:17:26 +03:00
kd-11
149d550f7e
gl: Restore commented out line
...
- Byte order step was disabled for debugging and not restored
2020-03-07 17:23:25 +03:00
kd-11
70f2577b9e
vk/gl: Use best-fit semantics when scanning texture cache for flippable images
...
- Allows sourcing flip data from the blit engine resources which avoids expensive flush and re-upload
2020-03-07 16:58:35 +03:00
kd-11
93295f7f50
vk: Fix image properties for flip temporary images to be samplable.
...
- In case of gamma correction or other effects, they may require shader access.
- BGRA8_UNORM is usually safe to use directly without staging memory.
2020-03-07 16:58:35 +03:00
kd-11
1725f7a34b
rsx: Add anaglyph 3D filter
2020-03-07 16:58:35 +03:00
kd-11
6e3406b3f5
video: Allow selection of 3D stereo resolutions
2020-03-07 16:58:35 +03:00
Nekotekina
19107b2de5
logs.cpp: fix log format for backward compatibility
...
Don't add prefix for first messages.
2020-03-07 15:33:07 +03:00
Nekotekina
7599c66639
logs.cpp: print some errors if failed to create logs
2020-03-07 14:38:19 +03:00