Gregory Hainaut
42783279ff
Merge pull request #1020 from ramapcsx2/loading_psx_games_enable
...
Enable loading psx games by default. Should help fixing PSX support w…
2016-01-17 16:35:55 +01:00
Gregory Hainaut
522ca27243
Merge pull request #1111 from Dokman/ca_ES
...
Catalan Translation
2016-01-17 16:30:45 +01:00
Gregory Hainaut
254081e3ad
Merge pull request #1115 from turtleli/gsdx-ogl-blend
...
gsdx-ogl: Improve accurate blend sprite draw speed
2016-01-17 15:42:07 +01:00
Jonathan Li
37deeb0d52
gsdx-ogl: Optimise overlap detection algorithm
...
Vectorise coordinate min/max sorting, and use the ordered runion
instead.
2016-01-16 19:21:56 +00:00
Jonathan Li
14dffa762b
gsdx: Add runion_ordered to GSVector
...
Allows to save a few instructions cycles when xy and zw are already
sorted (min and max rectangle coords).
2016-01-16 19:21:55 +00:00
Jonathan Li
2fc3ef8124
gsdx-ogl: Add sprite overlap statistics to debug messages
2016-01-16 19:21:54 +00:00
Gregory Hainaut
38c548854e
Merge branch 'uptr-addr'
2016-01-16 18:34:27 +01:00
ramapcsx2
20c8b89bb7
cdvd: return 0xff instead of 0 on unknown 8 bit reads. improves compatibility with popstarter a bit.
...
Unfortunately, it then fails to load pops with "loadmodule: fname rom0:UDNL args 5 arg crap:"
2016-01-16 14:36:09 +01:00
Gregory Hainaut
35568f6425
gsdx: disable simd in 64 bits
...
Let's concentrate first on SSE2
This commit fuses a couple of ifdef
2016-01-16 14:34:00 +01:00
Gregory Hainaut
76230c1305
MTGS: s/u32 pointer/uptr/
2016-01-16 14:34:00 +01:00
Gregory Hainaut
e23ba2340c
core: s/u32 pointer/uptr/
2016-01-16 14:34:00 +01:00
Gregory Hainaut
022cd9cd64
gsdx: s/u32 pointer/uptr/
2016-01-16 14:34:00 +01:00
Gregory Hainaut
6ec7d2c340
x86emitter: ease template stuff
2016-01-16 14:34:00 +01:00
Gregory Hainaut
8c3798e96b
core: pointers are 8B on 64 bytes
2016-01-16 14:34:00 +01:00
Gregory Hainaut
d623453451
build.sh: automatically configure wx-config on debian system
...
It is easier to alternate between 32/64 bits build
2016-01-16 14:33:49 +01:00
ramapcsx2
aafa333355
added the profiler to the visual studio solution. also added preliminary cop1 (fpu) tables, ready for implementation
2016-01-15 00:26:52 +01:00
Gregory Hainaut
9bcd9f0a73
cmake: onepad require gtk
2016-01-14 19:26:55 +01:00
Gregory Hainaut
a7a8c542f5
Merge pull request #1100 from PCSX2/recompiler-abi-wrapper
...
Recompiler abi wrapper
2016-01-14 19:21:27 +01:00
Jonathan Li
74ace74d50
gsdx-ogl: Group non-overlapped accurate blend sprite draws
...
Reduces the number of draw calls and barriers when drawing sprites.
2016-01-13 08:07:53 +00:00
Jonathan Li
f3b6829c74
gsdx-ogl: Restart collision detection algorithm for remaining sprites
...
It's useless on its own, but it prepares for the next commit.
2016-01-13 08:02:42 +00:00
Gregory Hainaut
c73d626757
build.sh: separate release/dev/dbg into separated directory
...
Avoid useless recompilation
2016-01-13 08:58:50 +01:00
Gregory Hainaut
4ac17428ac
Merge branch 'EmperorArthur-build_with_spaces'
2016-01-13 08:15:06 +01:00
Gregory Hainaut
c8da280a19
Merge branch 'build_with_spaces' of git://github.com/EmperorArthur/pcsx2 into EmperorArthur-build_with_spaces
...
Conflicts:
build.sh
2016-01-13 08:14:46 +01:00
Gregory Hainaut
d4b30620a7
pcsx2: avoid a segmentation fault due to previous hack
2016-01-12 19:35:23 +01:00
Gregory Hainaut
46a2f6ed24
interpreter: fix a subtle bug in a QFSRV
...
Math is correct but a shift of 64 bits is illegal in x86 because the cl register is masked
From the x86 spec:
The destination operand can be a register or a memory location. The count operand can be an immediate value or
the CL register. The count is masked to 5 bits (or 6 bits if in 64-bit mode and REX.W is used). The count range is
limited to 0 to 31 (or 63 if 64-bit mode and REX.W is used). A special opcode encoding is provided for a count of 1.
2016-01-12 19:29:10 +01:00
dokman
f06d055372
Now it's usable!
...
All done
ToDo:
Details of every setting
2016-01-12 10:44:36 +01:00
dokman
7fae220f18
Emulation Settings done
2016-01-12 10:26:10 +01:00
dokman
7b48923a2c
Updating with newest templates.
...
Emulation Settings
EE/IOP done
VUs done
GS done
GS Window done
Speedhacks done
Game fixes ToDo
Plugin/BIOS Selector done
2016-01-12 10:05:34 +01:00
refractionpcsx2
22de865582
Gamefix: Add Scarface - The World is Yours Gamefix, might help other games that do constant VU recompilation.
2016-01-11 23:32:33 +00:00
dokman
5f680141b4
Pushing base of translation with the newest template
2016-01-11 22:39:06 +01:00
Gregory Hainaut
3c528f0fdd
common define _32kb and _4kb
2016-01-11 18:00:25 +01:00
Gregory Hainaut
812a2e4850
recVtlb: Align dispatcher to 32B boundary
...
Better for cache coherency
2016-01-11 18:00:19 +01:00
Gregory Hainaut
e3d5eb5a4e
core: convert xCALL to xFastCall
...
SuperVU wasn't converted (unlikely to be ported to 64 bits)
A couple of calls weren't converted because they require extra work
but there are not mandatory (debug/MTVU/...)
2016-01-11 09:21:45 +01:00
Gregory Hainaut
859d62d2a7
ee|iop: use xScopedStackFrame to handle dynarec frame
...
* Rework a bit MVU to support xScopedStackFrame. Potentially
stack frame can be optimized (save 5 instructions)
* I removed the recompiler stack check. Address sanitizer is more efficient anyway
2016-01-11 09:21:45 +01:00
Gregory Hainaut
6e66bea152
x86emitter: improve the various abi wrapper
...
V2:
* Add various option to handle the different frame
* Basic x86-64 port (untested so likely completely broken)
v3:
Create an templated xImpl_FastCall object
v4:
clang compilation fix
2016-01-11 09:21:32 +01:00
Gregory Hainaut
a6eb871b42
pcsx2: use a common general intrin include
...
Avoid issue with various compiler conversion
Fix build with GCC4.8
2016-01-11 09:13:52 +01:00
Gregory Hainaut
52b4604d3b
iop: remove unused iPsxMem.cpp file
2016-01-10 18:41:18 +01:00
Gregory Hainaut
afdf5cdfe2
x86emitter: remove old unused macro
...
Add some notes for a GCC "bug"
2016-01-10 16:49:50 +01:00
Gregory Hainaut
41d13dc2c6
vtlb: remove SetBaseAddr
...
Base address is given in the constructor
2016-01-10 14:31:49 +01:00
Gregory Hainaut
9bcd34349f
Merge branch 'recompiler-prof'
2016-01-10 14:15:42 +01:00
Gregory Hainaut
1c4b430984
profiler: plug recompiler with new perf infra
...
Only EE/IOP support by block profiling
v2: cast wxString with ToUTF8 (windows)
2016-01-10 13:43:08 +01:00
Gregory Hainaut
92d7639267
profiler: add functions to plug linux Perf Event on JIT
...
Basically it creates a /tmp/perf-`pid`.map file which will contains
a mapping of the x86 code with the EE/IOP/VU code
* You need to enable the profiler with a define
* You can split the profiling by block (inside a recomp buffer)
v2: add new file to VS xml files
v3: remove useless include
2016-01-10 13:42:59 +01:00
Jonathan Li
8977673fdf
ci: reduce AppVeyor workload
...
Don't compile with VS2013 if VS2015 compilation fails.
Build only SSE2 and AVX2 GSdx variants.
2016-01-10 12:11:49 +00:00
Gregory Hainaut
e75d3f759f
ee:profiler: add instructions counters
2016-01-09 23:29:03 +01:00
Gregory Hainaut
5b08bda5b8
ee:profiler: count EE memory access
2016-01-09 23:29:03 +01:00
Gregory Hainaut
0e1188565e
ee:profiler: count EE instruction execution
...
Based on microVU_Profiler.h
It remains to emit all the opcode to use it properly
2016-01-09 23:29:03 +01:00
Gregory Hainaut
50c7cb1717
x86emitter: implement some BMI instructions
...
Only a couple of one to do some memory profiling
2016-01-09 23:29:01 +01:00
Gregory Hainaut
9e13a7bdaa
x86emitter: add support for the VEX opcode
2016-01-09 22:59:31 +01:00
Gregory Hainaut
29b0b17f50
x86emitter: add BMI1 & BMI2 instruction detection
2016-01-09 22:59:31 +01:00
Gregory Hainaut
d57466608e
linux: pretty print dump
...
allow to replace 0xBADA55 address with nice name such as v0_b0
2016-01-09 22:59:31 +01:00