Eladash
65e47490c4
cellSysCacheClear/Mount() improved
...
Clear() error checking simplified a bit
Mount() now clears cache if ID was changed from last or NULL specified.
Implemented vfs::host::remove_all():
Clear() now uses vfs::host::remove_all() to match behaviour on Windows with ps3
2019-10-27 15:56:16 +03:00
Nekotekina
83f253636a
SPU LLVM: verbose patchpoints in "giga table"
2019-10-27 13:04:05 +03:00
Nekotekina
16edb5bdd0
SPU Analyser: don't compile on "analyser failed"
2019-10-27 13:04:05 +03:00
Nekotekina
5f00b32867
SPU: fixup for duplicates in recompilers
...
Fixup for the edge case.
2019-10-27 13:04:05 +03:00
Nekotekina
37dbbce194
SPU LLVM: Enable "Giga table" in Mega mode
...
Was previously only enabled in Giga mode.
Also fill the table with branch patchpoints.
2019-10-27 13:04:05 +03:00
Nekotekina
8c28c4e8ec
SPU: Make recompilers lock-free.
2019-10-26 23:33:18 +03:00
Nekotekina
9ac6ef6494
SPU: cleanup former OOM handling
...
Remove cpu_flag::jit_return.
It's obsolete now, and worked only in SPU ASMJIT anyway.
2019-10-26 21:24:12 +03:00
MSuih
f3ed26e9db
Small warnings cleanup ( #6671 )
...
* Ignore more warnings
These are intentional
* Signed/unsigned mismatch when comparing
* Explictly cast values
* Intentionally discard a nodiscard value
* Change ppu_tid to u32
* Do not use POSIX function name on Windows
* Qt: Use horizontalAdvance instead of width
* Change progress variables to u32
2019-10-25 13:32:21 +03:00
arabek
63a0b97dd1
Normalize audio when downmixing to avoid clipping ( #6867 )
...
* Normalize audio when downmixing to avoid clipping
Idea came from this topic:
https://hydrogenaud.io/index.php?topic=104214.msg855199#msg855199
Fixes very loud audio in Motorstorm (and probably other games
when playing over headphones/stereo speakers with
Downmix to Stereo option enabled)
2019-10-25 12:56:47 +03:00
Marin Baron
4599d58413
Fix debug build gcc/clang linker.
...
Create temporary variable to resolve undefined reference.
[ 98%] Linking CXX executable ../bin/rpcs3
/usr/bin/ld : Emu/librpcs3_emu.a(sys_vm.cpp.o) : dans la fonction « sys_vm_t::~sys_vm_t() » :
/mnt/raid/Git/rpcs3/rpcs3/Emu/Cell/lv2/sys_vm.cpp:21 : référence indéfinie vers « id_manager::id_traits<sys_vm_t, void>::invalid »
collect2: erreur: ld a retourné le statut de sortie 1
make[2]: *** [rpcs3/CMakeFiles/rpcs3.dir/build.make:426: bin/rpcs3] Error 1
2019-10-24 14:34:38 +03:00
JohnHolmesII
0842724f94
Update cellVoice.cpp
...
Caused warnings. Not sure what the actual intention was, this may need to be inverted.
This commit assumes that erase() returning 0 is a sign that deletion
failed, or that there was corruption. There should be a port there.
2019-10-24 14:19:52 +03:00
Nekotekina
6e19881b82
Update LLVM (10)
2019-10-23 16:01:14 +03:00
Emmanuel Gil Peyrot
9d1b7af2eb
Avoid std::move() for copy elision
...
This could disable zero-copy optimisations, which is the opposite of
what we want.
2019-10-22 16:11:43 +03:00
Eladash
586fe11e22
Fix cellGcm HLE regression
...
Also correct flags.
2019-10-22 13:45:09 +03:00
Nekotekina
b329bb604c
SPU LLVM: implemented asynchronous compilation
...
Implemented interpreter-based pre-recompiler.
Interpreter functions are build with SPU LLVM.
2019-10-21 19:29:34 +03:00
Eladash
cbecbc264e
cellGcm: Fix driver_info->memory_size
...
based hw test
2019-10-21 15:31:45 +03:00
eladash
730e9cde84
sys_rsx: Improve allocations and error checks
...
* allow sys_rsx_device_map to be called twice: in this case the DEVICE address retrived from the previous call returned
* Add ENOMEM checks for sys_rsx_memory_allocate and sys_rsx_context_allocate
* add EINVAL check for sys_rsx_context_allocate if memory handle is not found
* Separate sys_rsx_device_map allocation from sys_rsx_context_allocate's
* Implement sys_rsx_memory_free; used by cellGcmInit upon failure
* Added context_id checks
* Throw if sys_rsx_context_allocate was called twice.
2019-10-21 15:31:45 +03:00
Eladash
c16319f959
PPU Precise: Fix fused float ops misaccuracy by using fma
...
Also cleanup add64_flags, remove redundent copy of s_ppu_itype.
2019-10-20 20:58:31 +03:00
Eladash
79a3a7ce4c
Add exception for sys_usbd_initialize
2019-10-20 15:28:26 +01:00
Eladash
a1e7cdf1e9
Forcefully awake waiters in sys_usbd_finalize
...
This is a no-op from cellUsbd side but happens on lv2 side as well.
2019-10-20 15:28:26 +01:00
Eladash
d90696be90
sys_usbd Tiny update
2019-10-20 15:28:26 +01:00
Eladash
6c2307fb96
cellVoice: Initial Implementation
...
Implement system service events, error checking and some functions.
2019-10-20 15:16:53 +01:00
Eladash
fa73175754
sceNpBasicGetEvent error checks improved
2019-10-20 14:56:44 +01:00
Eladash
d9a97d8674
sceNpUtil Improvements
2019-10-20 14:56:44 +01:00
Megamouse
0ef7ad129d
cellNetCtl: improve param checks
2019-10-19 19:20:18 +02:00
Megamouse
e6aeb7ecb9
stub cellKey2Char
2019-10-19 19:13:33 +02:00
Megamouse
0bad56da67
cellScreenshot: initial implementation
2019-10-17 21:24:25 +02:00
Megamouse
60f3ed7607
stub cellSsl
2019-10-17 20:32:33 +02:00
Nekotekina
00895862e1
Fix sys_vm_t destructor
...
It's not a destructor's job to free vm like this.
2019-10-17 19:57:29 +03:00
eladash
95752607ea
sys_spu: Don't reset snr config at group_start()
...
Also first check for EINVAL in sys_spu_thread_set_spu_cfg
2019-10-16 21:11:29 +03:00
Eladash
6dd96d3db9
Fixes for cellUserInfoGetList
...
- Don't allow all args to be nullptr at once.
- Fill listBuf with zeroes for unwritten entries
- Fix userId set in listBuf
Similarly to what the firmware does
2019-10-16 21:11:29 +03:00
Eladash
47c3d945aa
spu/ppu-diasm: Fixup for #6772 , #6722
2019-10-16 21:11:29 +03:00
Nekotekina
0fe46934de
Fix "SPU Interpreter (fast)"
...
Regression after #6770
2019-10-16 14:20:35 +03:00
Eladash
4ed2c7b594
error checking bugfix for sceNpTrophyCreateContext
...
options = 1 is allowed.
2019-10-16 00:50:58 +03:00
Eladash
b03c2fc856
sys_cond_wait: Fix mutex acquire when signaling thread didnt pass ownership immediatly
2019-10-16 00:50:58 +03:00
Eladash
ab02c56725
sceNpTrophyRegisterContext verbose logging in TROPHY_ERROR_ILLEGAL_UPDATE error
...
Also use safer checking when creating trophy ctxt dir
2019-10-16 00:50:58 +03:00
Eladash
80b4ac23e5
spu disasm: Show interrupts status modifiers on indirect branches
...
That's how the assembler represents it as well.
2019-10-16 00:50:58 +03:00
Nekotekina
eafbc77c0d
SPU LLVM: Always use linux-gnu target triple (affects Windows)
...
Unify internal code generation to make better use of GHC calling convention.
Ideally, it would just work on Windows as well, but some random bug appeared.
This bug was causing freezes on SPU LLVM compilation.
This commit desperately attempts to workaround it.
2019-10-15 18:04:50 +03:00
Nekotekina
c69fe0f664
SPU Profiler preview
...
Add option "SPU Profiler" (disabled by default).
Works only with SPU recompilers.
Results are flushed on pausing.
2019-10-15 17:42:57 +03:00
Malcolm Jestadt
1a9e06d3c6
Linux: Change default Sleep Timers accuracy to host
...
- This doesn't change existing configs
- Also sets the host_min_quantum to the true value
- Restores lost TODO: comment
2019-10-15 00:32:31 +03:00
Eladash
7e08fff91d
ppu disasm: Improve CR bits manipulation instructions formatting
2019-10-14 20:44:23 +03:00
Eladash
3910b2465e
Fix unknown BCLR forms formatting
2019-10-14 20:44:23 +03:00
Eladash
75ee668922
Log fs::g_tls_error on ACCESS_ERROR errors
2019-10-14 20:44:23 +03:00
Nekotekina
076a80d71e
Random space fixes
2019-10-14 19:42:35 +03:00
Eladash
1e303e9f97
ppu disasm: Implement BCLR's, BCCTR's and BC's extended mnemonics
...
Also:
BCCTR cr bit is now shown as cr(bit/4)[bit % 4]
BLRL is now shown properly
BDN?Z[TF](LR?)L?A? branches are now implemented.
2019-10-14 13:54:56 +01:00
Eladash
5978b1f28f
ppu disasm: Fix AA BC formatting
2019-10-14 13:54:56 +01:00
Eladash
1d07c40aa5
Fix state reset in cellMic, cellAudio, cellCamera ( #6761 )
2019-10-13 19:26:11 +03:00
Nekotekina
ac712bf4e3
lf_queue: remove explicit notify(), notify in push() instead
...
Should be cheap enough now if there are no waiters.
2019-10-12 22:45:17 +03:00
Nekotekina
5624b001ae
lf_queue: add range-for support (endless loop with waiting)
2019-10-12 22:37:52 +03:00
Nekotekina
16dd72b3e3
Replace some uses of Emu.IsStopped()
...
Poll thread state instead.
2019-10-12 21:12:47 +03:00