Commit graph

4481 commits

Author SHA1 Message Date
Eladash 554b27a82a PPU LLVM: Implement SELF precompilation
Do not use PS3 memory for precompilation.
2023-06-28 18:34:33 +03:00
Eladash 5f2f084091 Savestate/IDM: Do not save unsavable containers 2023-06-28 18:34:33 +03:00
Eladash a560121775 Fix Create PPU Cache 2023-06-28 18:34:33 +03:00
Eladash d34b3190f7 Make stopping emulation not pause or crash UI
* Make the UI and main thread available when stopping emulation.
* Make BlockingCallFromMainThread always execute, preventing bugs when it unexpectedly did not.
* Add error code for when starting emulation when Emu.Kill() is in progress.
2023-06-26 20:48:38 +02:00
Eladash 4f5348c7d4 Fix properly RSX replay thread stop bug 2023-06-26 20:48:38 +02:00
brian218 70ce7ee106 sys_fs: Fixed up one of sys_fs_unmount()'s error codes to match real system behavior 2023-06-25 09:08:20 +02:00
brian218 cf4ae38699 sys_fs: Implemented get_normalized_path() 2023-06-25 09:08:20 +02:00
Eladash 441fbd63bb Fix PPU debug setting with PPU interpreter 2023-06-20 18:18:24 +03:00
Eladash 073b723c09 Fix Create PPU Cache 2023-06-19 13:59:56 +03:00
RipleyTom e2bced978e Move connect workaround to connect interface 2023-06-18 01:04:01 +02:00
Megamouse d08fea551e progress dialog fix 2023-06-16 10:30:27 +02:00
Megamouse 16f869fe5a logging: minor trace optimizations 2023-06-15 19:48:15 +02:00
Megamouse d662a39a12 PPUAnalyser: fix std::move nonsense 2023-06-14 11:05:00 +03:00
Megamouse d28e3c4f08 np_handler: fix warning: check socket in discover_ip_address 2023-06-13 18:08:51 +02:00
RipleyTom 5d7e75c5d8 Fix EINVAL returned on connect call to connecting socket 2023-06-11 15:42:22 +02:00
Eladash c0e97b4e96 Qt: Improve PS3 Binaries Decryption tool 2023-06-11 00:40:14 +02:00
Megamouse c78c504043 overlays: update progress dialog workaround 2023-06-10 09:09:55 +02:00
Eladash d752ab0151 SPU/Debugger: Add RawSPU debug data 2023-06-09 14:07:37 +03:00
Eladash c87a7cb2c0 PPU: Fix thread entry detection false positives 2023-06-09 14:07:37 +03:00
Megamouse 6aff2803e5 cellMsgDialog: Fix segfault when closing non-blocking Qt dialogs 2023-06-09 02:03:44 +02:00
Megamouse 769b69999f fix whitespace 2023-06-08 21:15:39 +02:00
Eladash 6d918b565f PPU: Sleep after returning from thread entry function 2023-06-06 17:53:09 +02:00
Eladash 52575a44b2 sys_ppu_thread: Optimize joined thread notification 2023-06-06 17:53:09 +02:00
Eladash d5eebd6ab4 debugger: Fix trailing spaces in PPU register dump 2023-06-06 09:48:27 +02:00
Eladash 9bd4426225 Fix _sys_interrupt_thread_disestablish with lingering thread copies 2023-06-06 09:48:27 +02:00
Eladash 4af0a33f1f Fix sys_ppu_thread_detach/exit with lingering thread copies 2023-06-06 09:48:27 +02:00
Eladash 636bde6343 Logs: Fix trailing space, nbsp and unintended character 2023-06-06 09:48:27 +02:00
Eladash 16579e0b1f Fix spu_thread::cleanup() 2023-06-06 09:48:27 +02:00
Megamouse 6d2f7f6e54 sys_fs: fix map entry removal in destructor 2023-06-05 23:14:12 +02:00
brian218 48ffc19193 Update sys_usbd.cpp 2023-06-05 20:15:43 +02:00
brian218 c85775922e sys_usbd: Implemented sys_usbd_unregister_extra_ldd() 2023-06-05 13:51:54 +03:00
brian218 da0c9c2ce9 sys_usbd: USB VID/PID logging format fixup 2023-06-05 13:51:54 +03:00
brian218 42b388317e sys_ss: Further implemented Update Manager service for VSH 2023-06-05 13:51:54 +03:00
brian218 6a570ae57e sys_fs: Implemented sys_fs_mount(prot=1) read-only mounting & fixed up some operation and permission checks 2023-06-05 13:51:54 +03:00
Elad Ashkenazi 2e4bf9ef1b Update sys_timer.cpp 2023-06-04 01:26:24 +02:00
Elad Ashkenazi ba9f55679d Update sys_timer.cpp 2023-06-04 01:26:24 +02:00
Elad Ashkenazi 2c999a550b Update sys_mutex.h 2023-06-04 01:26:24 +02:00
Elad Ashkenazi 805de248d3 Update sys_lwmutex.h 2023-06-04 01:26:24 +02:00
Elad Ashkenazi 1240874e41 Update sys_lwmutex.h 2023-06-04 01:26:24 +02:00
Elad Ashkenazi feff50e7e0 Update sys_mutex.h 2023-06-04 01:26:24 +02:00
Eladash c37fc73a02 PPU LLVM: Invalidate cache for testers 2023-06-02 08:54:46 +03:00
Eladash d152537e50 sys_lwcond/cond/ppu_thread: Respect scheduler in various syscalls 2023-06-02 08:54:46 +03:00
Eladash 5d4e87373f LV2: Make _sys_lwcond_destroy wait for lwmutex lock 2023-06-02 08:54:46 +03:00
Eladash 1c36156594 PPU LLVM: Fix LWSYNC according to cellSpursWakeup 2023-06-02 08:54:46 +03:00
Eladash 300701a06b Make page faults entry enqueue and event atomic 2023-06-02 08:54:46 +03:00
Eladash a776f15557 SPU: fix event count with ACK and mask write 2023-06-02 08:54:46 +03:00
Eladash 1c89f8a855 LV2/Timer: Fix ENOTCONN check of start timer 2023-06-02 08:54:46 +03:00
Eladash 81e4d9c2ee LV2/TImer: Fix notification discard 2023-06-02 08:54:46 +03:00
Eladash 49be6be8f4 LV2/Timer: Make timers consistent 2023-06-02 08:54:46 +03:00
Eladash b861a9c5d0 LV2: Implement set-priority thread requeue 2023-06-02 08:54:46 +03:00
Eladash 9828e6cafc LV2: Push other-than-this thread to the back on priority set 2023-06-02 08:54:46 +03:00
Eladash 5d13978bbf sys_lwcond: Implement TIMEOUT on lwmutex lock 2023-06-02 08:54:46 +03:00
Eladash b844aecb9e sys_lwmutex/mutex: Fix race on lock timeout 2023-06-02 08:54:46 +03:00
Eladash f57c8c1c35 LV2: Unconditional Timer Synchronization Fix 2023-06-02 08:54:46 +03:00
Megamouse f96a0ce9d2 Trophies: Add more sanity checks to pugixml backend 2023-05-30 19:11:57 +02:00
Megamouse f89d3d5077 cellCamera: don't switch to main thread unless really necessary 2023-05-25 21:30:27 +02:00
Megamouse e584653b72 input: move emulated pad handling to config class 2023-05-25 20:37:15 +02:00
Megamouse 95060efb7d input: add support for multi-assignment in emulated pads 2023-05-25 20:37:15 +02:00
Megamouse b82dd61a0c input: add emulated axis configs 2023-05-25 20:37:15 +02:00
Megamouse d652a81078 Qt/input: add emulated pads settings dialogs 2023-05-25 20:37:15 +02:00
Megamouse fc76d2df38 input: list actual nodes instead of button ids 2023-05-25 20:37:15 +02:00
Megamouse 1a98682ea0 input: add enum count for enumeration 2023-05-25 20:37:15 +02:00
Megamouse 64437a531b input: use global configs 2023-05-25 20:37:15 +02:00
Megamouse 36831a3d6a input: add gem ds3 config file
No sticks yet
2023-05-25 20:37:15 +02:00
Megamouse 7b9a36be7d input: add buzz config file
Adds a buzz.yml and implements a generic way to save actual DS3 mapping independent of pad handlers
2023-05-25 20:37:15 +02:00
Megamouse 1ae3b37fbe sceNpTrophy: set timestamps 2023-05-23 08:22:13 +02:00
Eladash e29b81c444 Debug Fixes 2023-05-22 20:04:49 +03:00
RipleyTom cbb1b1f28e Fix spu_fm 2023-05-19 18:26:42 +03:00
Elad Ashkenazi 59f9938849 cellSpurs: Fix ready count 2023-05-19 14:18:51 +03:00
Megamouse 54e6cf95d7 Fix some warnings 2023-05-18 12:41:22 +02:00
Dark 24dde5d42b Implement support for emulating Rock Band 3's MIDI Pro Adapter
Co-authored-by: Megamouse <studienricky89@googlemail.com>
2023-05-17 22:59:44 +02:00
Joshua de Reeper 8e15afb2c4 sys_usbd: Emulate Disney Infinity Base 2023-05-17 21:26:58 +02:00
RipleyTom f11770b88b
Better accuracy for FREST/FRSQEST (#13863) 2023-05-15 17:20:47 +01:00
Eladash 514ef9a9c5 SPU Executable Code Dumping Tool 2023-05-15 14:11:13 +03:00
Elad Ashkenazi db7f84f9f8
SPU/PPU/Debugger: Ensure ascending stack frames (#13833)
* PPU/Debugger: Ensure ascending stack frames

* SPU/Debugger: Ensure descending stack frame pointers
2023-05-10 11:23:09 +03:00
Megamouse 58140e1d3a Fix some warnings 2023-05-09 07:55:46 +02:00
Eladash d13c0ee393 SPU/Debugger: Detect stack-less functions 2023-05-08 19:27:21 +03:00
Elad Ashkenazi ead8e5e0c3 PPU LLVM: Unbreak function linkage 2023-05-07 14:11:37 +03:00
RipleyTom 5c0113ce59 Deterministic FREST and FRSQEST 2023-05-06 12:59:34 +03:00
brian218 6a41b22a1b sys_fs: Further implemented cellFsArcadeHddSerialNumber (0xc0000007) 2023-05-06 10:26:37 +03:00
brian218 5696065727 sys_fs: Improved sys_fs_fcntl(0xc0000015 and 0xc000001c) by integrating duplicate code 2023-05-06 10:26:37 +03:00
brian218 e9281843bf sys_fs: Implemented mount_info_map to keep proper track of mounted devices 2023-05-06 10:26:37 +03:00
brian218 43184a271f sys_fs: Improved lv2_fs_object constructor 2023-05-06 10:26:37 +03:00
brian218 a7e1bc34de sys_fs: Improved the functionality of lv2_fs_object::get_mp() and the efficiency of mount&newfs syscalls 2023-05-06 10:26:37 +03:00
brian218 98c46f7eb0 sys_game: Fixed potential bugs in sys_game_get_system_sw_version()
sys_game: Implemented sys_game_set_system_sw_version()
2023-05-06 10:26:37 +03:00
Megamouse 0b628cb50e cellPamf: Add missing error code 2023-05-06 06:31:58 +02:00
Megamouse ad5a62b62d Loader: split add_only into own function
The new code does not require any modifications apart from loading vfs
2023-04-28 17:16:04 +02:00
Elad Ashkenazi 5cf80c05a5 savestates:/sys_spu: Fix join saving 2023-04-28 16:13:15 +03:00
Megamouse cd9ff08235 Decrease some include madness 2023-04-26 21:37:44 +02:00
Ivan Chikish bb8e43f16c SPU LLVM: fixup custom LICM pass 2023-04-22 03:07:06 +03:00
Megamouse 500f7901ac unself: rename SCEVersionInfo to version_header 2023-04-21 17:56:25 +02:00
Megamouse a770eaf500 unself: rename AppInfo to program_identification_header 2023-04-21 17:56:25 +02:00
Ivan Chikish 1041284384 SPU LLVM: sink stores deeper in custom LICM pass 2023-04-21 18:11:59 +03:00
Megamouse 6555de6ef5 fix warnings 2023-04-21 16:41:06 +02:00
Ivan Chikish 183bea3b98 SPU LLVM: upgrade custom DSE pass 2023-04-20 11:12:31 +03:00
Ivan Chikish 39d17a94c6 SPU LLVM: make savestates unsavable inside the code 2023-04-18 12:19:15 +03:00
Ivan Chikish 8153e5338f SPU LLVM: optimize register stores
Custom implementation of DSE+LICM
2023-04-18 12:19:15 +03:00
RipleyTom 999caea021 Implement sceNpManagerGetCachedInfo 2023-04-17 21:13:44 +02:00
Ivan Chikish 44b3709d1d SPU LLVM: use volatile stores for PC update 2023-04-15 12:40:59 +03:00
Ivan Chikish ba29f0ccd1 SPU LLVM: use atomic loads in read channel count 2023-04-14 13:36:04 +03:00