Commit graph

2143 commits

Author SHA1 Message Date
Nekotekina edb9595721 Using vm::ps3 namespace moved in proper places
Various fixes
2015-07-10 04:30:41 +03:00
Nekotekina 7eacfe19f6 vm::ptr fixes
std::function conversion removed (since it's convertible anyway),
pointer difference return type changed
vm::cptr, vm::bcptr aliases added
2015-07-10 04:30:39 +03:00
Nekotekina 63c5b2ab32 sys_fs_open() O_APPEND support
Added vm::static_ptr_cast, vm::const_ptr_cast, vm::reinterpret_ptr_cast
Added pointer comparison with vm::null
2015-07-10 04:30:37 +03:00
Danila Malyutin e338c3938b Trying to fix potential resource leak 2015-07-10 04:26:59 +03:00
Danila Malyutin 8483b17995 Initialize pointers to null on creation
Fixes access violation in hello_world.ppu.elf on window close.
As I understood the reason - when dtor of XAudioThread is called it
checks:
if (m_source_voice) Quit();
But m_source_voice isn't initialized to 0 by default so when in Quit()
in tries to call some funcs from unitialized ptrs and access violation
happens.
2015-07-10 04:26:57 +03:00
Danila Malyutin 6ce793d582 Deleted unneeded xaudio #ifs
There is no improvement in 2.8 and on my setup (8.1 x64) it always
preferred minidx headers anyway (so it'd still load 2.7 dll).
2015-07-10 04:26:56 +03:00
Raul Tambre f272171099 Re-do network status and add it to settings 2015-07-09 20:42:39 +03:00
Raul Tambre 909b512493 SysCall improvements 2015-07-09 20:19:29 +03:00
Raul Tambre 61cd591ad5 Improve cellGameBootCheck 2015-07-06 14:47:49 +03:00
Raul Tambre 30c25cb722 Added NV4097_SET_TEXTURE_CONTROL2
Still need to use the parameters that are passed.
2015-07-06 10:12:17 +03:00
vlj f4efeabcf3 RSX: Rename and document function member. 2015-07-03 17:08:06 +02:00
vlj 972515938c Memory: Fix virtualProtect protecting too much memory. 2015-07-03 17:08:06 +02:00
raven02 3a0894aaea RSX: Use CELL_GCM suffix for index array 2015-07-02 19:01:19 +02:00
vlj 5abeec85cc GL/RSX: Let backend call LoadVertex themselves. 2015-07-02 19:01:19 +02:00
vlj 4485e6b869 RSX: Do not emit error when parsing NV4097_SET_NO_PARANOID_TEXTURE_FETCHES
This opcode disables whole quad fetch on RSX, this is handled by drivers
on PC api.
2015-07-02 19:01:18 +02:00
vlj 288581cb43 RSX/GL/Null: Move semaphore handling to backend 2015-07-02 19:01:18 +02:00
vlj 0993ee08e6 sysGCM: Fix for getNextCommandBufferBeginEnd
We were sometimes using memory outside of buffer.
It fixes vertex attribute test.
2015-06-22 00:59:14 +02:00
Vincent Lejeune 9a91b188df SysGCM: Split default command buffer into 32kb big fragments and swap between them 2015-06-20 00:52:21 +02:00
Nekotekina d8b1c3118a vm::ref assignment operators fixed 2015-06-15 19:21:23 +03:00
Nekotekina d7cb5a6e9e vm::ref improved (operators)
atomic operators fixed, vm::ptr operators improved
2015-06-15 19:21:20 +03:00
Nekotekina b7d967361d vm::ptr conversion operator fixed 2015-06-15 19:21:18 +03:00
Nekotekina 93dcd704c5 vm::psv::pptr usage 2015-06-15 19:21:16 +03:00
Nekotekina 3064560027 vm::ptr refactoring (operators improved)
vm::pptr, vm::bpptr added for PS3
is_le_t added
sizeof32() added (32-bit sizeof macro)
2015-06-15 19:21:14 +03:00
Nekotekina 8c62a893a9 cellGifDec, cellPngDec: small update 2015-06-15 19:21:12 +03:00
Nekotekina a77a75660b Compilation fix 2015-06-15 19:21:10 +03:00
Nekotekina 4d9add5e7c vm::ref improved, bugfixes 2015-06-15 19:21:09 +03:00
Nekotekina 1256d648c1 be_t simplified, vm::ref improved
remove_be_t renamed to to_ne_t (to native endianness)
le_t and to_le_t draft, bugfixes
2015-06-15 19:21:07 +03:00
Igor null 5ae2349f36 changed broken breakpoints database format to a consistent format 2015-06-15 18:09:21 +03:00
Hykem d86c33c09e Merge pull request #1111 from danilaml/improve-llvm-tests
Make ppuJIT test log more compact and easier to read
2015-06-08 18:41:13 +01:00
vlj 02594c8239 RSX: Fix index gathering 2015-06-08 18:11:51 +02:00
Danila Malyutin ee715d9d36 Make ppuJIT testlog more compact and easier to read 2015-06-02 23:11:46 +03:00
raven02 f2c5dc2b5c RSX: simplify resolution rescale 2015-05-31 18:35:15 +08:00
raven02 e6df1ddcc0 Fix CELL_GCM_TEXTURE_CLAMP
It should be GL_CLAMP
2015-05-29 21:59:51 +08:00
DHrpcs3 39e679806b Implemented some sys_prx syscalls
Fixed vm::ptr

Conflicts:
	Utilities/BEType.h
	Utilities/StrFmt.cpp
	rpcs3/Emu/Memory/vm_ptr.h
	rpcs3/Emu/SysCalls/lv2/sys_prx.cpp
	rpcs3/Emu/SysCalls/lv2/sys_prx.h

Cherry-picked commit "Implemented some sys_prx syscalls"
2015-05-29 04:34:30 +03:00
Nekotekina b84d831d8f MFF_NO_RETURN flag introduced 2015-05-29 01:49:50 +03:00
Nekotekina a70d305806 IdManager fix 2015-05-28 22:13:35 +03:00
Nekotekina 0724a9efa2 printf_alike removed 2015-05-28 18:28:34 +03:00
Nekotekina 74e13a4ef6 Compilation fix 2015-05-28 18:23:11 +03:00
Nekotekina 78fdcf75e7 Attribute macro changed
__forceinline -> force_inline
__noinline -> never_inline
printf_alike(x,y) added
2015-05-28 18:14:22 +03:00
Nekotekina f83306b0bf Fix 2015-05-27 15:49:54 +03:00
Nekotekina 26e5a07905 Fix 2015-05-27 13:55:15 +03:00
Nekotekina 2823953489 Compilation fix 2015-05-27 12:51:25 +03:00
Nekotekina 22b78fec71 IdManager improved, atomic_t improved
Various changes
2015-05-27 06:11:59 +03:00
Nekotekina cdf70e0b77 Compilation fix 2015-05-25 22:11:55 +03:00
Nekotekina 98aee31c5a refcnt.h removed 2015-05-25 21:12:53 +03:00
vlj 2dbac65613 GL: Fix output swizzling for fog and clip distance 2015-05-24 17:09:05 +02:00
B1ackDaemon dcad0e286a Merge pull request #1092 from Bigpet/localdev
Change `GetDeviceLocal` device selection
2015-05-24 02:09:51 +03:00
raven02 2d6dd873cd FP: RSQ instruction alternative 2015-05-23 20:45:12 +02:00
raven02 f98b03b61f VP: use getFloatTypeName() with compare instructions 2015-05-23 20:45:11 +02:00
raven02 eac5147a45 FP: fix SFL instruction 2015-05-23 20:45:11 +02:00
raven02 bebd437a7e RSX: use getFloatTypeName 2015-05-23 20:45:10 +02:00
Vincent Lejeune 669a54d071 GL: Factorise getFloatTypeName, getFunction and compareFunction between Fragment and Vertex Decompiler 2015-05-23 20:45:10 +02:00
raven02 79cb025d25 RSX : factorize DPH 2015-05-23 20:45:09 +02:00
raven02 67e8e0a367 RSX: DP2A for fragment decompiler 2015-05-23 20:45:09 +02:00
raven02 f961a2e3b4 GL: fix IFE instruction 2015-05-23 20:45:08 +02:00
vlj df794b88b0 GL: Use decompiler common class 2015-05-23 20:45:08 +02:00
vlj 2416d49dba RSX: Add a class factorizing decompiler code 2015-05-23 20:45:07 +02:00
B1ackDaemon 2a6f11b390 Merge pull request #1089 from vlj/gl
Store Vertex/Fragment program in a hashtable and do not rebuilt FP if a constant changes
2015-05-23 02:53:48 +03:00
Vincent Lejeune 7a5c8dd586 GL: Remove unused calls to glGetError() 2015-05-22 19:43:32 +02:00
B1ackDaemon d5ead0d315 Merge pull request #1091 from vlj/shader-fix
gl: Fix swizzle for DIVRSQ, COS, SIN in fragment shader
2015-05-21 19:13:46 +03:00
raven02 d0c2addf91 gl: Fix IFE instruction
This fixes the rsx_fp_static_test4.ppu.elf
2015-05-21 22:34:51 +08:00
Peter Tissen 0b0c8723eb Change GetDeviceLocal device selection
For `GetDeviceLocal` only consider a device if the full path to the device
matches the first part of the path to match.

The issue was that putting in a file that was not in a sub-path of an existing
mounted device failed. So if the rpcs3 devices are in
D:\DEV\rpcs3\bin and you open D:\DEV\ps3autotests\tests\rsx\primitives\primitives.ppu.elf
it would return
/dev_usb000/ps3autotests\tests\rsx\primitives\primitives.ppu.elf
which resolves to
D:/DEV/rpcs3/bin/dev_usb000/ps3autotests/tests/rsx/primitives/primitives.ppu.elf
and is wrong.

Correct are either /dev_usb000/../../../ps3autotests\tests\rsx\primitives\primitives.ppu.elf
or /hostfs/D:\DEV\ps3autotests\tests\rsx\primitives\primitives.ppu.elf

I chose to resolve without the ".." beyond root, since that just seems wrong
(so it will now return the hostfs version).

Fixes #1090
2015-05-21 10:45:40 +02:00
vlj d58188d7ba gl: Fix swizzle for DIVRSQ, COS, SIN, EXP2, LOG2 in fragment shader
This fix rsx_fp_static_test2.ppu.elf, rsx_fp_static_test3.ppu.elf, rsx_fp_static_test5.ppu.elf.
Likely rsx_fp_dynamic_test2.ppu.elf too
2015-05-20 19:31:21 +02:00
vlj 2a7c65c019 GL: Use pipeline cache 2015-05-19 17:26:06 +02:00
vlj 145f411324 RSX: Add a template class that helps caching programs. 2015-05-19 17:26:05 +02:00
Nekotekina 3ae43edc3e cellFs fix 2015-05-09 01:36:15 +03:00
Nekotekina 8cf62e560e Compilation fix 2015-05-08 18:42:35 +03:00
Nekotekina f92c10ef71 Minor fixes 2015-05-08 12:45:21 +03:00
Nekotekina ff359ed118 SPU Interpreter2 initialization fix 2015-04-26 01:56:58 +03:00
Nekotekina 9cfdce91a1 vfsDir usage fixed 2015-04-26 00:26:54 +03:00
Nekotekina 02ca97804e fs::dir implemented, bugfixes 2015-04-25 22:15:53 +03:00
Hykem d18d19870f Merge pull request #1062 from Nekotekina/master
SPURecompiler improved
2015-04-25 19:32:47 +01:00
Nekotekina 74b3580b69 rfile_t renamed 2015-04-25 00:38:11 +03:00
Nekotekina b449545ae0 Compilation fix 2015-04-24 18:12:40 +03:00
Nekotekina ed6fb7cc43 o_append implemented 2015-04-24 17:06:30 +03:00
Nekotekina 2f4d6fc2a1 Adaptive /dev_bdvd/ mounting 2015-04-24 03:35:42 +03:00
Nekotekina fbc268e993 rFileName removed 2015-04-23 19:58:37 +03:00
Nekotekina 743421881e Some code disabled 2015-04-22 00:18:34 +03:00
Nekotekina f4540c2793 vm::null usage 2015-04-21 23:26:21 +03:00
Nekotekina 5aa6daf58f Some code simplified 2015-04-21 22:43:40 +03:00
Nekotekina 8b0c772423 Fix unique_ptr usage 2015-04-21 22:35:11 +03:00
Nekotekina 978d578f4e Bugfix 2015-04-21 21:18:15 +03:00
Nekotekina d05597ccdb Small fix 2015-04-21 18:16:29 +03:00
Nekotekina 56c64c8045 VFS::CreatePath fixed, bugfixes 2015-04-20 18:53:31 +03:00
Nekotekina 8c1aa3ee15 Bugfix 2015-04-20 04:54:19 +03:00
Nekotekina 935302b620 Bugfix 2015-04-20 02:49:13 +03:00
Nekotekina 3b26031692 Bugfix 2015-04-20 01:26:28 +03:00
Nekotekina 339021ac15 cellFsGetDirectoryEntries improved 2015-04-19 22:25:04 +03:00
Nekotekina 73b00b844b sys_fs_fstat fixed 2015-04-19 20:57:04 +03:00
Nekotekina 3c872ab611 sys_fs_ftruncate implemented, bugfixes
Eliminated using stat() for _WIN32 because it doesn't support unicode
correctly, use rExists() or get_file_info() instead
2015-04-19 20:14:16 +03:00
Nekotekina 93ebce4162 Bugfixes 2015-04-19 19:02:35 +03:00
Nekotekina ab405901ee wxFile removed (rFile -> rfile_t) 2015-04-19 16:19:24 +03:00
Peter Tissen fd34d11eec Merge branch 'p4-Bundle' 2015-04-18 20:28:30 +02:00
Nekotekina 2cafa84b75 Small changes 2015-04-18 20:18:23 +03:00
Nekotekina f2276bb70c VFS::TruncateFile() implemented 2015-04-18 16:38:42 +03:00
Nekotekina b1f7543436 PPU stack fixed (2) 2015-04-18 04:35:58 +03:00
Nekotekina b7fd09740b PPU stack fixed 2015-04-18 03:25:26 +03:00
Nekotekina 8bd7823b70 Bugfix 2015-04-18 02:13:43 +03:00
Nekotekina 747d53790c Compilation fix 2015-04-17 23:43:54 +03:00
Nekotekina 8c9ef2eef4 Compilation fix 2015-04-17 23:16:55 +03:00