Commit Graph

7969 Commits

Author SHA1 Message Date
Nekotekina
c34821ded2 Travis: disable gcc build
Temporary optimization
2019-04-11 18:57:56 +03:00
TGEnigma
38cc92ec45 Add _sys_ppu_thread_create and sys_ppu_thread_rename error checks 2019-04-11 18:14:05 +03:00
eladash
8da78c098c SPU LLVM: Fix branch to self at start of block state check 2019-04-11 17:47:52 +03:00
eladash
eba8e2284b SPU LLVM: Fix CFLTU
Clamp properly result from both sides!

TODO: Figure out whats different CreateFPToUi has from CFLTU and why it fails here.
2019-04-11 17:47:52 +03:00
eladash
969af86eba SPU: Implement BISLED
DFCMGT instruction removed, it was wrong to add to begin with

ASMJIT: Fix compilation of double compare instructions, move exception to runtime instead of compiletime!
Jarves confirmed that he implemented this instruction because of that bug with asmjit only, affected God Of War 3
2019-04-11 17:47:52 +03:00
eladash
b307aff9eb Prefetch byteswapped opcodes in ppu interpreter 2019-04-11 17:47:52 +03:00
eladash
1c462abc37 Make sure to update cia when calling in unknown hle table func access 2019-04-11 17:47:52 +03:00
eladash
3304e3b0b7 PPU LLVM: Fix STSWI and LSWI 2019-04-11 17:47:52 +03:00
eladash
f028737db8 Implement fallback for PPU LLVM
This matches with interpreter implementation, fixing unregistered functions in lost cases
2019-04-11 17:47:52 +03:00
eladash
a9014a8cac ppu Fast/Precise: Fix SIMD instructions VSUM2SWS, VPKSWSS, VPKSHUS, VPKSHSS
Also rewrite VPKSHUS for speed.
2019-04-11 17:47:52 +03:00
eladash
e21504d52d ppu interpreter: Improve FPCC field handling 2019-04-11 17:47:52 +03:00
eladash
aa44ef1f44 Fix default PPU nj status
TODO: Support  it...
2019-04-11 17:47:52 +03:00
eladash
d555eeb0f4 Check start status in sys_prx_start/stop_module 2019-04-11 17:47:52 +03:00
msuih
af86d1d77a Fix timespec for MSVC 2019-04-11 16:29:48 +03:00
Inviuz
52a12185a0 Initial sys_overlay 2019-04-10 23:25:09 +03:00
scribam
1d947daa81 hle: Add some more functions 2019-04-10 22:15:35 +03:00
Megamouse
ec2d882199 Qt: add version update hint to game list 2019-04-10 15:37:37 +01:00
Nekotekina
40142420c1 Implement vfs::host::unlink
Emulate POSIX behaviour in sys_fs_unlink.
This should allow to delete opened files transparently on Windows.
2019-04-10 13:58:12 +03:00
Nekotekina
0736fc8b28 Add fs::file::set_delete 2019-04-10 13:58:12 +03:00
Nekotekina
a54d9c527f Simplify fs::file::get_handle
Via fs::file_base::get_native_handle method
2019-04-10 13:58:12 +03:00
Nekotekina
9736773c04 Implement vfs::host::rename
With spurious access error workaround
2019-04-10 13:58:12 +03:00
Nekotekina
3354f068fc PPU/SPU transactions: ease cache line interference (TSX path)
Touch memory on the same memory page, but different cache lines.
2019-04-10 13:58:12 +03:00
kd-11
12dc3c1872 vk: Dynamic heap management to potentially fix ring buffer overflows
- Allows checking one heap type at a time, on demand
- Should avoid OOM situations unless inside an uninterruptible block
2019-04-09 13:40:54 +03:00
kd-11
a4495c35b7 rsx: Fixups for swizzled texture scanning
- Revert to using block metrics, but with optional per-channel decode
stage for the final transfer. Much cleaner than hacking in the width to
be in channels instead of blocks.
2019-04-09 13:40:54 +03:00
kd-11
a5ed30a8c0 rsx: Fixups for data cast operations via typeless transfer 2019-04-09 13:40:54 +03:00
kd-11
f04a0a2bb6 rsx: Remove some old restrictions affecting memory persistence 2019-04-09 13:40:54 +03:00
kd-11
0a604e39f1 rsx: Implement RGB655 decode 2019-04-09 13:40:54 +03:00
kd-11
cc3809fbfe gl: Register a few more missing formats for conversion 2019-04-09 13:40:54 +03:00
kd-11
e4e86455f2 rsx: Fix temporary subresource caching behaviour
- Do not cache if a gathered subresource contains a bound RTT
- Change op to dynamic copy if parent is still bound
2019-04-09 13:40:54 +03:00
kd-11
3249000511 rsx: Improvements to texture scanning
- Removes CPU-only transforms that broke GPU-side code.
 -- Channels in GPU compute are laid out in cell-order, but CPU was uploading in favorable order and compensating with swizzles.
 -- This leads to 2 different layouts depending on the location of the data (CPU vs GPU)
- Implement R8G8_R8B8 interleaved format decode
- General improvements
2019-04-09 13:40:54 +03:00
kd-11
0f7af391d7 vk: Implement copy-to-buffer and copy-from-buffer for depth_stencil
formats
- Allows D24S8 and D32S8 transport via typeless channels
- Allows uploading and downloading D24S8 data easily
- TODO: Implement optional byteswapping to fix flushed readbacks with
the same method
2019-04-09 13:40:54 +03:00
kd-11
366e4c2422 rsx: Preliminary support for format conversions using typeless resolve 2019-04-09 13:40:54 +03:00
kd-11
b7470cfc1a rsx: Tighten format checks in cache hit tests 2019-04-09 13:40:54 +03:00
kd-11
443fde760f rsx: Blit engine clipping fixes
- Do not round up sub-pixel offsets, round down instead
- Do not allow incomplete sources for hw blit transfer
- Reimplement src clipping (slice_h)
- Check 'area' of incoming texels and correct for them before RTT lookup/transfer
- Filter out incomplete targets when performing RTT lookup (1 texel or less contribution)
2019-04-09 13:40:54 +03:00
scribam
f30af3ccd2 hle: Add more missing functions 2019-04-07 23:31:15 +03:00
JohnHolmesII
7625f7df11 Correct travis deploy behavior (bug).
cd returns an error code, thus overwriting '0'
2019-04-06 16:52:31 +03:00
scribam
8dbf2638e2 hle: Add some missing functions
0xBA50BC23 => cellCelpEncOpenExt
0x1AC58D11 => cellHttpFlushCache
0xA39FE9DC => cellHttpEndCache
0xB4FA3111 => cellHttpInitCache
0x4A18A89E => sceNpMatchingSetRoomInfoNoLimit
0xB020684E => sceNpMatchingGetRoomInfoNoLimit
2019-04-05 17:28:10 +01:00
Alex James
d7ad991b7e Fix macOS compilation
This is needed for GL/glew.h to be found.
2019-04-02 03:16:55 +03:00
Violette Jansson
3bfe921a7a updated domain name for vulkan mirror
obk.ee expired the new domain is nkmk.ch, renewing a .ee domain is expensive and annoying so i moved to a new tld.
this .ch domain will not expire for around 3 years normally.
2019-04-01 13:46:32 +03:00
Jocker666z
2119566da7 add qtdeclarative5-dev fo debian/ubuntu
if not installed, cmake fail on -> '/usr/lib/x86_64-linux-gnu/cmake/Qt5Qml/Qt5QmlConfig.cmake'
2019-03-31 22:43:00 +03:00
eladash
182054b8af Implement sys_vm_append/return_memory 2019-03-31 14:57:21 +03:00
eladash
3c0564c9b7 Fix timer state after event queue was destroyed
* Hw tests show state is unaffected by external destruction of the event queue

* Minor race regarding state check fixed (can result in an undestroyable state)
2019-03-31 14:57:21 +03:00
eladash
90490f775d Fix sys_timer_usleep specifically with 0 sleep time
Remove context switch, replace it with host yield() for giving some cpu time for SPUs ans RSX
2019-03-31 14:57:21 +03:00
eladash
8185ef7610 rsx: Improve vblank accuracy 2019-03-31 14:57:21 +03:00
eladash
801e6114b6 rsx: Use relaxed store on fifo ctrl registers 2019-03-31 14:57:21 +03:00
eladash
a3f65084df Fix sys_process_exit2 when SPUs are at av handler 2019-03-31 14:57:21 +03:00
eladash
1ed2055ec1 Fix cellVdecGetPicItem element popping behaviour 2019-03-31 14:57:21 +03:00
eladash
16f86b2458 Fix page fault area range check
Range end check was bugged (always true), also rewrite it so vm::get would be called only once
2019-03-31 14:57:21 +03:00
eladash
f2bbae9db4 Remove handle in cellVdecClose 2019-03-31 14:57:21 +03:00
eladash
8eb59271a5 Improve error checking of cellVdecOpen
Those are the initial argument checks done by the firmware
2019-03-31 14:57:21 +03:00