Commit Graph

8662 Commits

Author SHA1 Message Date
Eladash ecb3b62787 Fix CELL_CAMERA_ERROR_NOT_INIT check in cellCameraSetNotifyEventQueue when camera set to null
Don't worry, this was a duplicated check for null camera setting.
2019-08-11 21:43:13 +03:00
Eladash 96527eee5b idm: Fix bug in ID searching
* ID checking now checks if (id % step) == 0
* Extend possible ID range to allow UINT32_MAX (as long as base is non-zero)
2019-08-11 21:43:13 +03:00
Eladash 5c904bf3e2 Fix max allocations for DECR mode (sys_memory) 2019-08-11 21:43:13 +03:00
Eladash cbcd06d1dc ppu: Stack size allocation improvements 2019-08-11 21:43:13 +03:00
Eladash 3ce18fd960 Implement vm::page_executable (#6330)
Fixes segfaults when attenpting to set segfaults on non-executable memory.
2019-08-11 21:04:17 +03:00
Eladash 94d33003a3 Write zero in attr->pad (sys_memory_get_page_attribute)
Its included in lv2 as well.
2019-08-10 19:47:37 +03:00
Eladash 25e47e0de0 Fix vm::check_addr memory state check 2019-08-10 19:47:37 +03:00
kd-11 8866a3d6a9 rsx: Cleanup for blit engine fixes 2019-08-10 16:45:02 +01:00
msuih 8150095e8f Qt warnings cleanup 2019-08-10 16:15:24 +02:00
Megamouse f051f53e15 Qt: add setting for trophy manager icon background color 2019-08-10 15:13:36 +02:00
Megamouse 2f12226ff9 Qt: add setting for save manager background icon colors + fix icon size 2019-08-10 15:13:36 +02:00
Megamouse d4c635a83c Qt: change default icon background color to something friendlier looking 2019-08-10 15:13:36 +02:00
Megamouse 697128464b Qt: add some sanity checks to prevent list crashes 2019-08-10 15:13:36 +02:00
Megamouse 0559e929d4 fix some warnings 2019-08-10 15:13:36 +02:00
Megamouse efcb46658b Qt: fix initial trophy icon background color 2019-08-10 15:13:36 +02:00
Megamouse 01720afba9 silence some warnings 2019-08-10 11:02:20 +02:00
Megamouse e21b8eb95b Update Appveyor to Qt 5.13 2019-08-10 11:02:20 +02:00
kd-11 033836d88c rsx: Minor fixup for nv3089::image_in
- Typo scale_x->scale_y
- Remove convoluted temp buffer creation and just use vector instead
2019-08-08 15:48:22 +03:00
Eladash 112ad9dda2 Allow to load liblv2.sprx with manual/both lib loading options (#6274) 2019-08-07 18:41:27 +03:00
RipleyTom 05813c7e90 Fixes suspend+stop threads not stopping 2019-08-04 21:16:19 +03:00
xddxd 6e89e4ebbf Update game_list_frame.cpp 2019-08-04 13:29:45 +02:00
Megamouse 4ad784d614 Qt: select custom configs when opening the custom config folder 2019-08-04 08:45:52 +02:00
Eladash c219417f62 sys_vm: Fix sys_vm_invalidate 2019-08-03 14:29:17 +01:00
Nekotekina 5bd17a44c9 Add fallback implementation for waitable atomics
May improve perf on OSX/BSD
2019-08-02 18:37:23 +03:00
Eladash 72fb3ba794 perf hotfix for sys_timer_usleep 2019-08-01 23:38:09 +03:00
kd-11 f0bd0b5a7c rsx: Conditional render sync optimization
- ZCULL queue was updated to one-per-cb but the conditional render sync hint was not updated.
- Do not unconditionally flush the queue unless the upcoming ref is contained in the active CB.
- This avoids spamming queue flush, which frees up resources and improves performance
2019-07-30 21:13:42 +03:00
Malcolm Jestadt d689a6e47b vk: Don't warn RADV users on LLVM 8.0.1
- The 'back screen' issue on RADV was resolved with LLVM 8.0.1
2019-07-30 19:56:05 +03:00
eladash e40b76b253 sys_lwcond: Extract protocol from lwmutex at creation
This is the only reason theres a need to specify lwmutex_sq id at creation. unlike sys_cond, lwcond isn't connected to lwmutex at the lv2 level.
SYS_SYNC_RETRY fix is done explicitly at the firmware level.
This fixes issues when the original lwcond and lwmutexol data got corrupted or deallocated, this can happen when the program simply memcpy the control data to somewhere else.
Or if it uses direct lv2 the lwcond conrol param can even be NULL which will make it access violate when dereferncing it. (This param is unchecked and can be anything)
2019-07-29 21:58:04 +03:00
eladash 7508ae6e65 Add EAGAIN check for sys_memory_contianer_create 2019-07-29 21:55:59 +03:00
eladash 1e5e0f3b5e make sys_fs_closedir atomic 2019-07-29 21:55:59 +03:00
Nekotekina 949f33c8a4 Fix sys_config_get_io_event syscall name 2019-07-29 21:55:59 +03:00
Nekotekina c6993d3f1c Change bits of waitable atomics
Reduce max waiter count to 2^14.
Refactor code to use waiter_mask and signal_mask constants.
2019-07-29 21:55:59 +03:00
Nekotekina e1db6cef6f Remove ignored bits in waitable atomics
It was not implemented correctly.
2019-07-29 21:55:59 +03:00
Eladash 829047ecdb ppu disasm: Improve ORI and ORIS disassembly 2019-07-29 18:28:39 +03:00
Nekotekina 8886414013 Use atomic wait in shared_mutex and semaphore 2019-07-29 03:04:55 +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
Nekotekina ec2db8edbc Correct get_int_t to get_uint_t.
Add get_sint_t.
2019-07-29 00:12:07 +03:00
Eladash 997e3046e3 vm/sys_overlay Improvements
- Implement sys_overlay_load_module_by_fd.
- Implement special segment allocation when ppc_seg flag is specified.
2019-07-28 14:23:58 +03:00
Megamouse 65134f73d6 Qt: properly scale icons in trophy manager 2019-07-27 15:29:05 +02:00
Megamouse 76a1fd5c88 Qt: simplify game list icon resize 2019-07-27 15:29:05 +02:00
kd-11 1de90bdb1f rsx: Improve aliased data preservation
- Carve out inherited region if any
- Perform pitch compatibility test before assigning old_surface
2019-07-27 16:09:21 +03:00
msuih 738cfccbba Save manager improvements 2019-07-27 11:48:37 +02:00
Eladash 230c3d55b6 Fixup 2019-07-27 04:03:29 +01:00
Eladash fcc75c8b0f rsx: Write atomically semaphore updates and fix zcull timestamp 2019-07-26 21:27:55 +03:00
Eladash 22994d15fb Fix cellCamera events support with clocks scaling 2019-07-26 21:27:55 +03:00
Eladash c53f0dd7b5 rsx: Fix gcm unmap events 2019-07-26 21:27:55 +03:00
Megamouse b56b425b19 Emu: set m_title to the actual disc game title 2019-07-25 08:53:07 +02:00
Megamouse b44b44b3c4 Qt: cleanup some comments 2019-07-25 08:53:07 +02:00
Megamouse 71c56b719c Emu/overlays: fix background picture path 2019-07-25 08:53:07 +02:00
Nekotekina 090c71aa7c TSX: Improve cpu_thread::suspend_all implementation
Implement low_lock and vip_lock (for shared_mutex).
Try to simplify suspend_all implementation with updated shared_mutex.
2019-07-24 17:25:52 +03:00