Commit graph

1743 commits

Author SHA1 Message Date
RipleyTom 7ebd3bbcbf Fixes issues where the mutex is destroyed while an unlock is happening 2018-12-31 01:39:47 +03:00
eladash 483ee5e488 Fix sys_vm_memory_map address base 2018-12-30 20:12:32 +00:00
eladash 79a6a2c7fb Debug console emulation 2018-12-30 20:12:32 +00:00
eladash 2ea061b9c7 Set total memory size according to sdkver 2018-12-30 20:12:32 +00:00
eladash c0eb4965f2 mmapper_allocate_memory improvement
Added cases 0 for allocation granularity size,
alike sys_memory_allocate, the alignment of this case is 1mb.
2018-12-30 20:12:32 +00:00
RipleyTom c6e47a573d cellVideoOutConfigure minor fix. 2018-12-30 17:58:20 +03:00
eladash 26d47afec6 hle gcm: Fix cellGcmGetReportDataAddressLocation
* Never return NULL (also apllies to similar functions)
* Base offset is 0x0e000000 for main location
* Default location is LOCAL

Info was taken from disasm of gcm
2018-12-30 15:04:59 +01:00
RipleyTom aa306dd356 Trophy changes 2018-12-27 19:11:51 +01:00
eladash 4b65c3943c Fix sys_semaphore_post count check 2018-12-26 23:03:27 +03:00
eladash 653a4ef0df Set group status INIT on last thread stopped
this fixes the group status after sys_spu_thread_exit when not joining the spu group
2018-12-25 19:59:41 +03:00
scribam 7c74bafaf3 sceNp: improve sceNpManagerGetNetworkTime function (#5451) 2018-12-25 17:13:11 +03: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
Nekotekina f750b4c420 cellSaveData: try to address #5415 2018-12-24 16:04:46 +03:00
Nekotekina 522f5ea645 Fix cellFsGetFreeSize (following #5304)
Simplify device name extraction
2018-12-24 16:04:46 +03:00
kd-11 9c46386dd4 rsx: Check av configuration when selecting display buffers!
- Some applications have mismatch between video output configuration and display buffer sizes
2018-12-24 09:05:19 +03:00
isshininu 9717e19be2 sceNpTrophy: use SCE_NP_TROPHY_STATUS_INSTALLED instead of SCE_NP_TROPHY_STATUS_NOT_INSTALLED
* Update sceNpTrophy.cpp

* Revert "Update sceNpTrophy.cpp"

* Update sceNpTrophy.cpp

* Update sceNpTrophy.cpp
2018-12-22 13:53:38 +01:00
eladash 69fc1f2613 Added CAMERA_NOT_INIT checks for no camera setting 2018-12-20 08:52:09 +01:00
Megamouse 6b1d80ec25 cellCamera: fix read_mode 2018-12-20 08:02:44 +01:00
Megamouse bc3ab7a9d9 Input: Enable In-Game Pad Config Reset 2018-12-17 19:41:18 +01:00
eladash fd894d4c69 hle gcm: Fix cellGcmGetNotifyDataAddress 2018-12-15 19:40:18 +03:00
eladash 8cbaa8627c Do not rely on cellPadInit in native ui 2018-12-15 13:51:16 +01:00
RipleyTom 077e710e3a sys_fs_fcntl with parameter 0xC0000002 should extract device path from the given path and use that to gather free space information 2018-12-10 14:24:07 +03:00
Nekotekina d6afba96f1 cellSaveData: fix 'Already exists' error 2018-12-10 01:43:47 +03:00
eladash fb8302817f ppu: Set link unconditionally 2018-12-10 01:34:02 +03:00
RipleyTom 5207b00973 Extra Handling of result value of funcStat CB. 2018-12-08 18:44:00 +03:00
elad 90265edfcd SPU MFC: avoid copying of the lockline onto the stack in putllc/putlluc (#5392) 2018-12-04 21:09:55 +03:00
kd-11 504ab5a6d4 rsx: Minor cleanup to silence stupid compiler warnings 2018-12-03 20:01:23 +03:00
scribam 24a8d0aeef sceNp: add SCE_NP_ERROR_ID_NOT_FOUND for sceNpBasic*Entry* functions 2018-12-03 15:26:29 +03:00
kd-11 e01d2f08c9 rsx: Refactor FIFO
- Removes fifo structures from common RSXThread
- Sets up a dedicated FIFO controller
- Allows for configurable queue optimizations
2018-11-30 23:51:25 +03:00
Nekotekina 96cabeadff Rewrite condition variables
Implement helper functions balanced_wait_until and balanced_awaken
They include new path for Windows 8.1+ (WaitOnAddress)

shared_mutex, cond_variable, cond_one, cond_x16 modified to use it
Added helper function utils::popcnt16
Replace most semaphore<> with shared_mutex
2018-11-29 01:30:05 +03:00
Nekotekina f442a8a84c SPU TG: add thread group stop counter
Fix possible race condition introduced by waiting on `running` value
2018-11-27 23:37:26 +03:00
Nekotekina febe4d4a10 Implement class cond_x16
Use as reservation notifier
Limited to 16 threads but allows more precise control of contention
2018-11-26 00:23:29 +03:00
Nekotekina 7f1cbb1136 Fix 16 bit audio mode
Pointed by @ruipin, some backends may be affected
Reuse float buffer for conversion result
2018-11-24 02:55:29 +03:00
eladash 4baa159523 cellFsOpen flag fix 2018-11-24 02:54:48 +03:00
eladash 3c7f02d99d Fix libcamera regression 2018-11-19 19:05:39 +03:00
Nekotekina 65ca934452 cellSaveData: fix truncation size (regression) 2018-11-17 14:40:11 +03:00
Nekotekina 12ceceff19 cellSaveData: restore atime/mtime for unmodified files 2018-11-17 14:40:11 +03:00
isJuhn 225310e04b Add null alloc_addr checks to sys_memory_allocate and sys_memory_allocate_from_container 2018-11-16 18:37:07 +00:00
RipleyTom f4fb5200a0 cellVdecGetPicture accurate error checking 2018-11-15 20:06:49 +03:00
Nekotekina 0044eb44e2 Cleanup after #5310 (SPU thread groups)
Move lambda into a cpu_stop()
Use running thread counter to synchronize with sys_spu_thread_group_join()
Use SPU_STATUS_STOPPED_BY_STOP exclusively for sys_spu_thread_exit() as before
Remove unnecessary waiting in sys_spu_thread_group_exit()
Rollback some minor unnecessary changes
Use shared_mutex in SPU TG
2018-11-14 12:50:24 +03:00
RipleyTom 0e0a82e536 Ensures threads are stopped in join 2018-11-13 10:19:28 +03:00
eladash 2e1aec4de8 Implement sys_spu_thread_tryreceive_event 2018-11-12 21:12:33 +03:00
RipleyTom fada8b6594 Increases stack allocation for callbacks. 2018-11-12 15:09:26 +03:00
eladash 57b7892de6 Fix typo in sys_fs_mkdir
create_path is a less resticted version of create_dir, it doesnt check for EEXIST for one.
2018-11-12 13:28:58 +03:00
Nekotekina 2fd384ae95 SPU LLVM: check state in every callable chunk
It's often redundant but may be necessary
2018-11-09 16:19:59 +03:00
eladash 90f816595a Fix cellPadGetData
* Remove complete buffer clear
* If pressure sensitivity option is not specified, write zeroes (should this be handled from our actual controller handler?)
* Check sensor setting before reporting changes
2018-11-07 15:46:51 +03:00
eladash 3332a10052 ppu: Fix threads scheduler
*Set priority under a lock
*Fix yield command making threads going out of scheduler control by removing it from the queue (not a bug that affects compatibility)
2018-11-07 13:06:29 +03:00
eladash 3fd17e43a3 lv2: Fix lwcond_queue_wait lock acquiring 2018-11-07 13:06:29 +03:00
eladash 3faaf9e7fb lv2: Fix lwmutex locking 2018-11-07 13:06:29 +03:00
eladash 777f36e604 Fix error code checking of sys_lwcond_signal_x 2018-11-07 13:06:29 +03:00