Gregory Hainaut
97467f9e30
Merge pull request #579 from PCSX2/drop-vs2010-support
...
Drop vs2010 support
2015-06-06 10:47:16 +02:00
Gregory Hainaut
68e44fd354
gsdx: reload the state when GSconfigure is called
...
It fixes the reloading of openGL option and it avoids
issue during pause/resume.
Fix issue #584
2015-06-06 08:51:53 +02:00
Gregory Hainaut
7e662c50d4
Revert "gsdx: always restore the full gs state object (s_gs)"
...
This reverts commit 2ea049b5a5
.
2015-06-06 00:22:15 +02:00
Gregory Hainaut
4feeaac7d1
Merge branch 'alignment' of git://github.com/xsacha/pcsx2 into xsacha-alignment
...
Gregory: Get all changes but keep C11 code path which will be the future
(if someone can find info on Visual Studio support)
* Keep the old posix api to use address sanitizer on gcc 4.9
Conflicts:
common/build/Utilities/utilities.vcxproj.filters
common/build/Utilities/utilities_vs2012.vcxproj.filters
common/build/Utilities/utilities_vs2013.vcxproj.filters
common/include/Utilities/MemcpyFast.h
common/include/Utilities/StringHelpers.h
common/src/Utilities/AlignedMalloc.cpp
common/src/Utilities/vssprintf.cpp
plugins/GSdx/stdafx.cpp
2015-06-05 20:31:14 +02:00
Gregory Hainaut
e774fecb77
gsdx-ogl: enable again geometry shader on Mesa
...
Please use a recent Mesa version (10.5 if possible)
2015-06-05 18:59:10 +02:00
Gregory Hainaut
6c8f7a0147
Merge pull request #580 from PCSX2/issue-565-option
...
gsdx: always restore the full gs state object (s_gs)
2015-06-05 17:51:02 +02:00
Gregory Hainaut
7d124e6a83
gsdx-texture-cache: Improve fix for snow engine game
...
Instead to hardcode the half-buffer size to 0x140, the new code
compute it.
To avoid regression, I limit the code to big target (>= 1024 pixels)
2015-06-05 09:06:12 +02:00
refractionpcsx2
65b83a36a7
GSDX: Removed some printf's I left in.
2015-06-05 00:13:21 +01:00
refractionpcsx2
91f775f3f0
GSDX: Fixed up some of the scaling height settings
...
-Last commit broke Snowblind games again
-Width now based on output circuit
-Try to use the smallest possible while being at least the size of the screen
2015-06-05 00:12:15 +01:00
Gregory Hainaut
6f4ec98bc3
gsdx: try to reduce the size of target as much as possible
...
I suspect too consume too much memory (issue #576 )
2015-06-04 22:15:52 +02:00
Gregory Hainaut
f8f6117ea9
gsdx-debug: allow to track texture move
...
Very painful for the cache and the performance
2015-06-04 22:10:04 +02:00
Gregory Hainaut
979ea92754
gsdx: make png++ optional
...
Some distributions (Fedora) doesn't have a png++ package...
2015-06-04 20:22:05 +02:00
Gregory Hainaut
bd2c04a0ec
ooups bad copy/past
2015-06-04 19:58:58 +02:00
Gregory Hainaut
2ea049b5a5
gsdx: always restore the full gs state object (s_gs)
...
It will force a reload of opengl option
2015-06-04 18:29:31 +02:00
Gregory Hainaut
c2e851b3a5
gsdx-ogl: don't use slow SW blend for nothing
...
When A == B, coeff is 0 so <= 1
When C == 2, just check the value of coeff
Barely faster in accurate_blend = 2
2015-06-04 18:18:47 +02:00
Gregory Hainaut
ba5b367ae8
drop support of Visual Studio 2010
...
* Severals PR uses C++11 features
* 2015 will soon be released
* Win 10 will soon be released
Time to upgrade
2015-06-04 08:55:22 +02:00
Gregory Hainaut
85266abd71
gsdx-ogl: use a 8MB vbo/ibo
...
Dirge of Cerberus draw 143,360 vertices in a single draw!
It is likely to emulate a particle effects
Hopefully improve issue #573
2015-06-04 08:28:40 +02:00
bositman
e34477a497
Merge pull request #547 from pgert/master
...
GSdx > HW-hacks > Rewording comments on duplicate CRC's and minor cleanup
2015-06-03 15:58:28 +03:00
Gregory Hainaut
0d5d94f56e
Merge pull request #570 from ssakash/patch-3
...
Three new Opengl settings for Windows [GUI]
2015-06-03 14:01:39 +02:00
Gregory Hainaut
3dd3bf6e2b
gsdx-ogl: new hidden option accurate_blend = 2
...
Debug option to emulate all blending draw call in the shader
Of course it is slow but it is very accurate
2015-06-03 09:56:07 +02:00
Gregory Hainaut
cd6c93cd9e
gsdx: silly mistake
2015-06-03 09:31:52 +02:00
Akash
f2d193edcf
Add three new Opengl options.
2015-06-02 16:02:56 +05:30
Gregory Hainaut
995ae51bf4
gsdx-ogl: disable a log message
...
Too verbose and code was fixed anyway
2015-06-02 09:28:35 +02:00
Gregory Hainaut
9fe13f7a6b
gsdx linux: fix a memory leak
...
Not important but pollute the valgrind log
2015-06-02 09:28:35 +02:00
refraction
4914620178
GSDX: Fix for 6x Native, fixed GH3 in native mode taking up quarter of the screen after the snowblind changes
2015-06-01 19:04:39 +01:00
Gregory Hainaut
2cbde89084
Merge pull request #555 from PCSX2/real-fb-format
...
GSdx: better framebuffer format
2015-06-01 11:48:07 +02:00
Gregory Hainaut
f81cf360bc
Merge pull request #545 from PCSX2/gsdx-half-screen-snow-engine
...
Gsdx half screen (most of) snow engine games
2015-06-01 11:47:40 +02:00
Gregory Hainaut
9fa473a57d
gsdx-ogl: glDebugMessageCallback is optional
...
Not even used in release build
2015-05-31 17:55:34 +02:00
Gregory Hainaut
9d69ff1f91
gsdx-debug: create the savef option
...
The idea is to easily extract bad frame from gs dump and to compare them
with the sw renderer.
Here the summary of the options:
savet => dump all input textures
save => dump the render target
savez => dump the depth buffer
savef => dump the frame
2015-05-31 17:38:52 +02:00
Gregory Hainaut
d301848848
gsdx-ogl: fix paltex on opengl
...
RT uses as palette must use the alpha channel
Palette texture uses the red channel
2015-05-30 19:01:09 +02:00
Gregory Hainaut
2f2ae2bc89
gsdx-ogl: enable gl tracing on windows
...
Trace info is enabled in dbg/dev build for the opengl renderer
Info is stored in GSdx_opengl_debug.txt when debug_opengl option is 1
2015-05-30 09:58:47 +02:00
Gregory Hainaut
009dd103ae
gsdx-ogl: protect the trace with if statement
...
And mark the function as optional
2015-05-30 09:58:46 +02:00
Gregory Hainaut
a639634769
gsdx-ogl: actually code use 4.0 GL_ARB_draw_buffers_blend
...
It is used for glBlendEquationSeparateiARB && gl_BlendFuncSeparateiARB
The 3.0 function could work too. It just need to be added
2015-05-30 09:58:46 +02:00
Gregory Hainaut
92d68b70d3
gsdx-ogl: add a performance note for later
...
The idea will be to replace StretchRect for standard case with a framebuffer
blit. Potentially it toggles less gl state.
Worth a test on Star Ocean 3 that uses a lots this function for stencil emulation
2015-05-30 09:58:46 +02:00
Gregory Hainaut
01e4a5148d
gsdx-ogl: avoid crash in debug/dev build
...
Don't be silly, don't put gl trace in EE thread.
2015-05-29 16:50:27 +02:00
Gregory Hainaut
0cb6c37f14
gsdx-tc: add an explanation of the magic number 0x140
2015-05-29 12:27:05 +02:00
refraction
97b237712c
gsdx: detect RT size based on fb size and gs output configuration
...
* It is required for snowbling games
* Targets of Texture cache are dropped.
2015-05-29 12:26:44 +02:00
Gregory Hainaut
02274601b3
gsdx-ogl: always copy texture into 0,0
2015-05-29 12:18:54 +02:00
Gregory Hainaut
e5326d1bd2
gsdx-tc: allow to reuse the right part of large RT as source
2015-05-29 12:18:54 +02:00
Gregory Hainaut
7ac533a4d1
gsdx-tc: invalidate half-RT src
...
snow engines uses the RT as 2 half RT.
2015-05-29 12:18:54 +02:00
Gregory Hainaut
da0b77e09b
gsdx-ogl: new logo
...
Thanks bmate for the logo.
Close issue #192
2015-05-29 11:05:52 +02:00
refraction
8f54da5fd3
GSDX: Removal of Nvidia hack.
...
- Hack no longer required as an option as a safe and simple workaround has been discovered which seems to work without modifying any vertices.
2015-05-28 21:41:02 +01:00
refraction
5d00c00826
GSDX: Fixed UserHacks_AutoSkipDrawDepth dialog creation on windows.
...
- CheckDlgButton was just wrong
- Changed tag to say "Auto-skip depth" as you could only see "Auto-skip draw" which was highly ambiguous on GSDX!
2015-05-28 21:21:19 +01:00
TheLastRar
66b08c0b2f
Use Mutex to control writes to the RX_Frame counter
...
A user on http://obsrv.org had an issue with freezing, unfreezing than
dying on other players screen, but can continue playing anyway. This
comment didn't end up fixing the issue of becoming a ghost, but he
didn't freeze.
2015-05-28 20:22:38 +01:00
Gregory Hainaut
31ffdd8c53
Merge pull request #559 from ssakash/patch-5
...
Auto depth skip hack initialization.[GUI]
2015-05-28 19:21:45 +02:00
Gregory Hainaut
8e32d71c07
Merge branch 'patch-3' of git://github.com/ssakash/pcsx2 into ssakash-patch-3
2015-05-28 18:30:49 +02:00
Akash
5f7e09268c
change "D3D Internal Resolution" to "Internal Resolution"
2015-05-28 16:33:16 +05:30
Akash
bf743fec17
add logo for Opengl renderer.
2015-05-28 01:34:51 +05:30
Gregory Hainaut
c43ddaec4f
gsdx: add Castlevania hack explanation
2015-05-26 17:03:13 +02:00
Gregory Hainaut
419dfe0544
glsl: redo color/alpha management correction
...
Please test it!
GS supports 3 formats for the output:
32 bits: normal case
=> no change
24 bits: like 32 bits but without alpha channel
=> mask alpha channel (ie don't write it anymore)
=> Always uses 1.0f as blending coefficient
16 bits: RGB5A1, emulated by a 32 bits openGL texture. I think it will be more correct to use
a real 16 bits GL texture. Unfortunately it would cost several (slow) target conversions.
Anyway as a current solution
=> apply a mask of 0xF8 on color when SW blending is used (improve Castlevania shadow)
unfortunately normal blending mode still uses the full range of colors!
This commit also corrects a couple of blending factor. 128/255 is equivalent to 1.0f in PS2, whereas GPU uses 1.0f. So the blending factor must be 255/128 instead of 2
Note: disable CRC hack and enable accurate_colclip to see Castlevania shadow ^^
(issue #380 ).
Note2: SW renderer is darker on Castlevania. I don't know why maybe linked to the 16 bits format poorly emulated
2015-05-26 16:49:43 +02:00
Akash
ef3247c233
Update copyright license
2015-05-26 19:15:30 +05:30
Akash
99f9407c24
Auto depth skip hack initialization.
2015-05-26 19:13:56 +05:30
Gregory Hainaut
9ee3a173d0
gsdx-ogl: use a local ALPHA register
...
It would allow to easy tune the parameter to support 24 bits format
2015-05-26 15:36:48 +02:00
Gregory Hainaut
d31bd97d59
gsdx-ogl: add a variable to select FB output
...
Either 32bits/24bits/16bits
2015-05-26 14:59:07 +02:00
Gregory Hainaut
93c0d5a268
gsdx-ogl: add an error message when a RT is reused with a format cast
...
For example a 32 bits RT could be used as a 16 bits RT.
It is likely the source of various bug in HW renderer
2015-05-26 11:16:49 +02:00
Gregory Hainaut
a3bbe68d56
gsdx: throw an exception when we miss a mandatory gl feature
...
Gracefully quits when driver is not supported
(like nvidia legacy driver for GTX260)
Please test the impact on windows
2015-05-26 11:03:59 +02:00
Gregory Hainaut
3be5a6036b
gsdx-ogl: remove assertion + debug message
...
opengl use a different object to compute the vertex count
2015-05-26 11:03:59 +02:00
refraction
b84a462798
Unreachable code message was annoying me.
2015-05-26 00:30:12 +01:00
Gregory Hainaut
2704a65f57
gsdx: add some info for Star Ocean3/Valkyrie Profile 2/Radiata Stories
...
Feel free to test those games with CRC disabled on the openGL renderer (native resolution)
2015-05-25 12:37:48 +02:00
Gregory Hainaut
580d177951
gsdx: improve commit 11708486d8
...
This time linear filtering is disabled only for the bad draw call
(RT used as a palette texture).
2015-05-25 09:46:51 +02:00
Gregory Hainaut
99d7434671
gsdx-ogl: disable SSO on nouveau
2015-05-24 19:24:10 +02:00
Gregory Hainaut
11708486d8
gsdx: allow to control the filtering of texture cache
...
When the RT is used as an input texture, we need to rescale it.
Previous behavior was to always uses a linear filtering (more smooth).
Unfortunately it broke some games that expected an exact value like Star Ocean 3
This commit will disable the linear filtering in normal filtering mode (filter = 0
or filter = 2)
This way, shadow of Star Ocean 3 will appear correctly in upscaling (not
100% perfect but can't do better)
Note: SO3 only requires a nearest sampling of the alpha channel but
I don't know the behavior for others games.
2015-05-24 18:59:27 +02:00
Gregory Hainaut
b0af54d33e
gsdx-ogl: better support of palette
...
The purpose of the code is to support alpha channel
of RT uses as an index for a palette texure.
I'm afraid that code will likely break pure palette texture. Only used
if paltex is enabled
It fixes missing shadow in Star Ocean 3 (issue #374 ) in Native resolution
with filter = 0 (no filtering) or = 2 (normal fitering)
Rendering explanation:
The game emulates a stencil buffer with the alpha channel
The alpha channel of the RT can contains a palette texture index (format 4HH)
The idea is to have a gradient of value in the palette (16/32/48/...).
This way you can implement a +16/-16 and even wrap the alpha value every time
you hit the pixel.
Bilinear filtering breaks the rendering because it interpolates between counts
so you doesn't have the exact count
Upscaling breaks the rendering because the RT is reused as an input texture. It means
that we need to scale it down which again create some interpolations.
2015-05-24 18:07:16 +02:00
Gregory Hainaut
951a1fed94
gsdx-hack: enable auto skip of depth texture for God of War
...
Rendering is quite complex to emulate on the GPU due to several limitation.
Until we find a solution let's enable the old solution
You could find a description of the rendering here:
http://forums.pcsx2.net/Thread-God-of-War-Red-line-rendering-explained
2015-05-24 13:43:36 +02:00
Gregory Hainaut
a70c3bf5de
glsl: correct the alternate implementation of ps_main1
...
Still not yet enabled by default
Potentially it can be optimized with the dot product but special care
need to be taken to ensure float accuracy.
Bonus: it could work on old GPU (aka DX9)
2015-05-24 13:43:36 +02:00
Gregory Hainaut
c82fd94c6c
gsdx-debug: use GL_INS instead of printf
2015-05-24 13:43:36 +02:00
Gregory Hainaut
c01686d252
gsdx-png: add a fixme message for 16 bits by channel image
2015-05-24 12:51:20 +02:00
Gregory Hainaut
7f614401a6
gsdx-ogl: set accurate_blend as default
...
Rendering is better and I think speed impact remains small.
2015-05-23 15:10:04 +02:00
Gregory Hainaut
c507e816c2
gsdx-ogl: oups forget a break
2015-05-23 13:06:23 +02:00
Gregory Hainaut
b884e0c0c0
gsdx-debug: improve debug experience
...
* Dump context before the increase of s_n
=> aligned with the global call number
* Don't print colclip not supported when it is optimized away
* dettach the input texture when it is useless
=> avoid to show a wrong texture in the debugger
2015-05-23 12:23:05 +02:00
Gregory Hainaut
f665180d11
gsdx-debug: use hex number for texture pointer
...
Easier to grep
2015-05-23 12:20:26 +02:00
Gregory Hainaut
7609fdc576
gsdx: rename too much sr to sRect
2015-05-21 09:48:15 +02:00
Gregory Hainaut
b52ee6f1f6
gsdx-linux-gui: add an option for accurate color clipping
...
Note: it is only for debug purpose
Sotc testcase 187 fps => 125 fps (2x scaling)
2015-05-20 09:42:22 +02:00
Gregory Hainaut
183af4ece6
gsdx-ogl: don't enable SW blending when there is no blending
...
Mostly to avoid useless message
2015-05-20 09:36:01 +02:00
Gregory Hainaut
3d35e4f8ec
gsdx-ogl: implement all blends mode in shader
...
+ 250 lines !!!
2015-05-20 09:11:36 +02:00
Gregory Hainaut
2d54d59add
gsdx-ogl: update assertion ps sel is 8B now
2015-05-20 08:40:08 +02:00
Gregory Hainaut
d3d5a436ea
gsdx-ogl: add code to read back depth texture
2015-05-20 08:07:40 +02:00
Gregory Hainaut
a4c74ef872
gsdx-ogl: disable GL_DITHER
...
I really don't know the impact but it is not supported with integer texture.
2015-05-20 08:05:27 +02:00
Gregory Hainaut
8d3e3e6c5b
gsdx-ogl: more blend rework to support accurate_colclip
...
So far few blending equations are implemented in PS. It is only
for test the behavior on GoW
2015-05-20 08:00:40 +02:00
Gregory Hainaut
c5341a2711
gsdx-ogl: update blending management
...
This way it will allow to implement all blendings operartion in FS.
Of course it will be slow, but it would be nice for debug and quickly check
game error rendering.
2015-05-20 00:12:52 +02:00
Gregory Hainaut
358e0d445b
gsdx-ogl: add a shader to convert depth texture into uint
2015-05-19 18:56:32 +02:00
Gregory Hainaut
ac38ebbf29
Merge pull request #546 from ssakash/patch-3
...
enables Anisotropic filtering option for OGL (HW mode) [Windows UI]
2015-05-19 15:20:12 +02:00
Gregory Hainaut
ec45090358
glsl: implement an alternative of convert 1 shader
...
Code not yet enabled. Quick test show no heavy regression but I need
to carefully validate it.
2015-05-19 13:14:18 +02:00
Gregory Hainaut
a12acc0d24
gsdx-ogl: clean a bit Texture Cache OGL
...
Add a placeholder for depth format but nothing done yet.
2015-05-19 13:14:18 +02:00
Gregory Hainaut
1837001e75
gsdx: extend CopyOffscreen with a new shader parameter
...
Currently we're trying to infer the conversion shader based on the output format
It only works if the input data is RGBA8. It might not be true in the future
2015-05-19 13:14:18 +02:00
Gregory Hainaut
9554b5dd56
gsdx-lzma: drop CONCAT flag
...
I have some issue with it. Unlikely to use multi-stream gs anyway
2015-05-19 13:14:18 +02:00
Gregory Hainaut
fa761a129d
gsdx-linux: add an option to enable/disable recording
...
Avoid to kill the computer/application if the user press F12 by accident
2015-05-19 13:14:18 +02:00
Gregory Hainaut
34202933da
GSdx-linux-recorder: add various option to control it
2015-05-18 19:57:21 +02:00
Gregory Hainaut
388f46b577
gsdx-png: use array interface instead of set_pixel
...
Doc says it is "non-checking equivalent of set_pixel". Still slow as ass
At least syntax is nicer
2015-05-18 17:25:14 +02:00
Gregory Hainaut
a4d6722b26
gsdx-thread: add a CAPACITY parameter to GSJobQueue
2015-05-18 17:08:18 +02:00
Gregory Hainaut
e7665ee7dd
gsdx-linux-recorder: upgrade code to use n threads
...
Unfortunately it requires too much memory (easily 6GB)
2015-05-18 16:56:44 +02:00
Gregory Hainaut
cff168e002
gsdx-linux-recorder: implement multithread to save the image
...
Currently only a dedicated thread. It is still too slow!
2015-05-18 16:56:44 +02:00
Gregory Hainaut
012f1b4f05
gsdx-thread: remove deprecated boost code
2015-05-18 16:55:49 +02:00
Gregory Hainaut
19d9349b0b
gsdx-debug: remove old assert
2015-05-18 16:45:38 +02:00
pgert
c9508298b4
Update GSCrc.cpp
2015-05-18 16:37:28 +02:00
Akash
70b8772bb4
enables Anisotropic filtering option for Opengl (Hardware mode) [Windows UI]
2015-05-18 19:16:22 +05:30
Gregory Hainaut
503459798a
gsdx-linux: add a basic implementation to record the gameplay as png file
...
The idea was to merge them later with ffmpeg or other external tool
It kinds of work but current fps is around 2 !!! So not really usable
The speed issue is related to PNG.
So either the code to store pixels data must be optimized. Or maybe it misses some MT loves :)
2015-05-18 11:56:20 +02:00
Gregory Hainaut
2783da4a22
gsdx-ogl: use a local buffer to store offscreen texture
...
It will allow to read texture in // (and potentially could be useful
for recording)
2015-05-18 11:29:04 +02:00
Gregory Hainaut
79a9254894
gsdx-ogl: print some error messages if extenal shader is wrongly configured
2015-05-18 10:56:32 +02:00
Gregory Hainaut
540717b295
gsdx-ogl: don't force logz only on debug build
2015-05-18 07:24:26 +02:00
Gregory Hainaut
5c046180a1
cmake: properly add detection of lzma
...
Code is 100% optional.
Code will allow be enabled if lzma-dev is installed at compile time
2015-05-17 22:08:10 +02:00
Gregory Hainaut
98dde32dc0
gsdx-replayer-linux: use new code to allow loading of .gs.xz dump
...
A bit slower at startup but it saves a lots of disk space!
Reduce the size of my gs collection of 11GB :)
2015-05-17 22:08:10 +02:00
Gregory Hainaut
e93f780268
gsdx-replayer-linux: separate a bit parsing and executing code
...
It would ease the porting of the code to read xz file
2015-05-17 22:08:10 +02:00
Gregory Hainaut
86e3c18c33
gsdx-linux: add code to read xz file
...
Linux only to avoid the extra dependency on windows
2015-05-17 22:08:10 +02:00
Gregory Hainaut
5cfb496700
gsdx-ogl: only open debug file once
2015-05-17 14:43:56 +02:00
Gregory Hainaut
7979dec5b0
gsdx-ogl: optimize colclip 0
...
Currently colclip uses 2 passes to wrap the output of blending unit
However some blending mode are only a plain copy (of 0 or Cs or Cd).
So no overflow of [0:255], no need to wrap it
Note: I saw those cases in GoW.
2015-05-17 13:05:08 +02:00
Gregory Hainaut
6ced837360
gsdx-debug: add some PERF info in trace
...
The idea is to detect easily effect that are known to be slow on opengl
2015-05-17 13:05:08 +02:00
Gregory Hainaut
818412ba26
gsdx-debug: fix a crash in trace
2015-05-17 13:05:08 +02:00
Gregory Hainaut
b1ea081fc3
gsdx-debug: improve tracing interface
...
Basically move the format and c_str() in the macro
2015-05-17 13:05:08 +02:00
Gregory Hainaut
b8aa5f8f80
gsdx-debug: more trace for the texture cache
2015-05-17 13:05:08 +02:00
Gregory Hainaut
8a73849531
gsdx-ogl: enable multithread driver by default for nvidia
...
+ add a linux gui option to disable it (for test purpose)
2015-05-16 15:22:20 +02:00
Gregory Hainaut
c567198967
gsdx-ogl: replaced draw_count by s_n
...
This way error message is aligned with everything else :)
It is not perfect (normally it must be done in start of main draw)
2015-05-16 13:59:13 +02:00
Gregory Hainaut
62e0e6a067
gsdx: remove deprecated code
...
Core was fixed to call GSFifo in the good thread
2015-05-16 13:52:16 +02:00
Gregory Hainaut
2165c68938
oups forget a couple of break
2015-05-16 13:26:55 +02:00
Gregory Hainaut
02b478dfbc
gsdx: plug the new PNG wrapper
...
Drop various duplicated code :)
2015-05-16 12:47:28 +02:00
Gregory Hainaut
8cd533304c
gsdx: new dependency on linux => png++
...
Note: it is only header file that wrap the standard png (which was
already mandatory for wx/sdl)
2015-05-16 12:47:28 +02:00
Gregory Hainaut
cab59587e8
gsdx: add a PNG wrapper
...
Normally it supports all formats but I didn't have luck with 16 bits depth gray
2015-05-16 12:32:05 +02:00
Gregory Hainaut
3f278382a1
gsdx-debug: dump all drawing register
...
Thanks PERL
2015-05-16 11:16:33 +02:00
Gregory Hainaut
8341055f3e
gsdx-ogl: don't enable ogl_texture_storage on catalyst
2015-05-16 00:31:25 +02:00
Gregory Hainaut
a2d605be0b
gsdx: copy past mistake
...
Let's always increment the s_n counter
2015-05-16 00:31:25 +02:00
Gregory Hainaut
cfddcb7a93
gsdx-ogl: typo
2015-05-16 00:31:25 +02:00
Gregory Hainaut
0f01ba4c46
gsdx-ogl: mega boost
...
Enable Nvidia multi thread driver optimization
Enable ogl_texture_storage by default (requires for the speed boost
, later the option will be removed)
2015-05-16 00:31:25 +02:00
Gregory Hainaut
a1bfb237e6
Partially Revert "gsdx-ogl: drop support of GL_ARB_clear_texture extension"
...
This reverts commit 03e72781aa
.
Let's add back the clean texture pointer
I want to test it on
1/ DSA
2/ MT driver
2015-05-16 00:31:25 +02:00
Gregory Hainaut
28bb64aae8
gsdx: sed/dr/dRect/
2015-05-15 20:49:32 +02:00
Gregory Hainaut
445c28fe97
gsdx: sed/sr/sRect/
2015-05-15 20:47:14 +02:00
Gregory Hainaut
d566bb2a23
gsdx: sed /st/sTex/
2015-05-15 20:45:31 +02:00
Gregory Hainaut
6a9e425308
gsdx: sed /dt/dTex/
2015-05-15 20:44:15 +02:00
Gregory Hainaut
d870188d21
gsdx: sed/o/off/
2015-05-15 20:40:09 +02:00
Gregory Hainaut
27d485a940
drop a file that was wrongly commited
2015-05-15 20:34:09 +02:00
Gregory Hainaut
6166c95325
gsdx-ogl: protect PBO with fence
...
Safer and doesn't impact perf too much.
2015-05-15 18:32:47 +02:00
Gregory Hainaut
a5e424512c
gsdx-ogl: really avoid consecutive clean
2015-05-15 16:00:46 +02:00
Gregory Hainaut
84c3592fbe
gsdx-debug: more debug message/group
2015-05-15 16:00:45 +02:00
Gregory Hainaut
08291aed0c
gsdx-ogl: color state impact the clean command
2015-05-15 15:25:45 +02:00
Gregory Hainaut
613e215c73
gsdx-ogl: add some note for the persistent buffer + add a flush
...
Persistent is slower (at least on my gs dump) because data is put
in host instead of the video memory
I don't understand why upload the data directly to the video memory
is faster
2015-05-15 15:25:45 +02:00
Gregory Hainaut
5628bfb20c
gsdx-ogl: drop old code
...
I have group so it doesn't pollute anymore gl trace
2015-05-15 15:25:45 +02:00
TheLastRar
ff4cf51494
use volatile
2015-05-14 13:23:09 +01:00
Gregory Hainaut
6d8695127f
gsdx-recorder: use recursive mutex
2015-05-14 11:56:07 +02:00
TheLastRar
a0ec633c46
Provide a DEV9async and use it to call irq
2015-05-13 10:04:04 +01:00
Gregory Hainaut
bd96a73580
gsdx-debug: trace texture cache hit/miss/removal
...
Actually only a small part but I think it is enough to help debugging
tc issue.
Only enable it on debug because it is quite verbose
2015-05-13 09:01:04 +02:00
Gregory Hainaut
5e9a3a424e
Merge pull request #479 from PCSX2/gsdx-texture-cache
...
gsdx: value was wrongly overwritten
2015-05-13 08:08:46 +02:00
Gregory Hainaut
b7a9465963
gsdx-ogl: update the device to use the new texture flags
...
Hopefully it will increase a bit the speed
2015-05-12 18:18:20 +02:00
Gregory Hainaut
3e784d57e8
gsdx-ogl: add some flags to trace texture state
...
goal1: avoid 2 consecutives clean of the render target
goal2: only invalidate texture correctly
2015-05-12 18:03:06 +02:00
Gregory Hainaut
2e34d48e97
gsdx-ogl: add a virtual GetID method for texture
...
Much more readable
2015-05-12 17:41:41 +02:00
Gregory Hainaut
e0012811ae
gsdx-debug: more debug info in gl trace
2015-05-12 12:36:34 +02:00
Gregory Hainaut
4e222f18cd
gsdx-ogl: it was a bad idea to use DSA on fb
...
Actually I'm not sure we can mix both dsa/standard approach
2015-05-11 18:04:16 +02:00
Gregory Hainaut
f37f3cb3cf
gsdx-ogl: improve texture uploading
...
Initially we copy pitch by line in the PBO and tell the dma to only
use the first valid byte.
Now, we only copy useful data to the PBO. It reduce the copy and PBO memory requirement.
It seems a bit faster on native resolution
2015-05-11 16:32:13 +02:00
Gregory Hainaut
4e2e9aa56c
gsdx-ogl: always read the first attachment of the fbo
2015-05-11 16:28:34 +02:00
Gregory Hainaut
cb6e8a7d6a
gsdx-linux: Don't enable EGL by default
...
I was hoping that EGL become a standard much more faster. Currently it is an useless dep
so let's disable it by default.
2015-05-11 15:33:40 +02:00
Gregory Hainaut
643b1647c4
gsdx-gui-linux: add some tooltips for the hw options
2015-05-11 14:12:41 +02:00
Gregory Hainaut
921fa3bab8
gsdx-ogl/linux: drop fba option
...
It is useless as DX11
2015-05-11 13:57:26 +02:00
Gregory Hainaut
f0de7d6386
gsdx-debug: add 2 extra frames in GS dump
...
Initially I was afraid of the size increase but it can be
higly compressed.
Sometimes image was computed inside a RT but never outputed to
the screen which remains black. It is annoying to see the glitches
2015-05-11 13:45:24 +02:00
Gregory Hainaut
b3d8981a22
gsdx: link replayer to png to avoid link failure
2015-05-11 13:24:40 +02:00
Gregory Hainaut
eff4ac3e4a
gsdx-ogl: update UBO hint
...
On Nvidia, DYNAMIC is a bit faster.
2015-05-11 12:35:41 +02:00
Gregory Hainaut
59f7e4d2dc
Revert "gsdx linux: drop aligned stack option"
...
This reverts commit 2dcffe7fa4
.
2015-05-11 12:15:38 +02:00
Gregory Hainaut
2dcffe7fa4
gsdx linux: drop aligned stack option
...
I think the bug was related to a wrong declaration of exported function without stdcall
2015-05-11 11:35:34 +02:00
Gregory Hainaut
286fe4db8c
cmake/gsdx: check png++ is installed to support png image
...
Otherwise fallback to bmp file
2015-05-11 11:32:13 +02:00
Gregory Hainaut
30e3956ea7
gsdx-ogl: avoid issue with apitrace
...
The tool doesn't support NaN value so be sure the buffer is correctly initialized
2015-05-11 11:19:18 +02:00
Gregory Hainaut
1523b9534f
gsdx-debug: compact the code
2015-05-11 11:19:00 +02:00
Gregory Hainaut
51ed3e63e9
glsl: oups forget to remove a line
2015-05-10 10:39:23 +02:00
Gregory Hainaut
5565544ba6
gsdx-ogl: DATE with texture barrier
...
Much faster for small batch that write the alpha value. Code can
be enabled with accurate_date option.
Here a summary of all DATE possibilities:
1/ no overlap of primitive
=> texture barrier (pro no setup of stencil and single draw)
2/ alpha written
=> small batch => texture barrier (primitive by primitive). Done in N-primitive draw calls.
(based on GL_ARB_texture_barrier)
=> bigger batch => compute the first good primitive, slow but only 2 draw calls.
(based on GL_ARB_shader_image_load_store)
=> Otherwise there is the UserHacks_AlphaStencil but it is a hack!
3/ alpha written
=> full setup of stencil ( 2 draw calls)
2015-05-09 19:54:01 +02:00
Gregory Hainaut
390811f414
gsdx-debug: Dump in PNG on linux & dbg/dev build
...
Keep BMP for standard user of release build
2015-05-09 18:41:17 +02:00
Gregory Hainaut
3c7a3a3d83
gsdx-ogl: disable accurate option if driver doesn't support it
2015-05-09 18:41:17 +02:00
Gregory Hainaut
7fac25edb0
glsl: add shader implementation of impossible blend
...
Issue: I don't know if destination alpha value must be multiplied by 2.0f
2015-05-09 15:02:34 +02:00
Gregory Hainaut
f029e4763f
gsdx-ogl: add the alpha value in a constant buffer
2015-05-09 15:02:34 +02:00
Gregory Hainaut
472608b879
gsdx-ogl: add accurate blending implementation
2015-05-09 15:02:13 +02:00
Gregory Hainaut
1e8aea033c
gsdx-ogl: add a wrapper to control the drawing of primitives
...
No barrier => draw all primitives
Barrier but without overlap => draw all primitives
Barrier with overlap => draw primitive by primitve
It will ease the implementation of accurate blending and why not date too
2015-05-09 15:01:39 +02:00
Gregory Hainaut
625d65d4b4
gsdx-ogl: encode the bogus id as shader parameter
2015-05-09 14:55:44 +02:00
Gregory Hainaut
bc5de8df6b
gsdx-ogl: disable FF blend when blend is done in shader
2015-05-08 20:28:50 +02:00
Gregory Hainaut
380e420cdd
gsdx-ogl: add a blend parameter to shader
2015-05-08 20:28:50 +02:00
Gregory Hainaut
9023f5f0db
glsl: drop useless ifndef
...
I often mix them with the real value...
.
2015-05-08 19:28:17 +02:00
Gregory Hainaut
8e1db43431
gsdx-debug: debug stuff
2015-05-08 19:28:17 +02:00
Gregory Hainaut
3c66da4d82
gsdx: remove old code
2015-05-08 19:28:16 +02:00
Gregory Hainaut
1addae1993
gsdx-ogl: don't use extra shader for sprite hack
...
Atst == 2 && sprite_hack is equivalent to Atst == 1
It frees a bit in the shader selector, and reduces shader combinations.
2015-05-08 19:28:16 +02:00
Gregory Hainaut
b490085214
gsdx-ogl: add 2 options in the GUI to ease testing
...
accurate_date => use an emulated stencil to compute destination alpha
test (could be slow)
accurate_blend => do nothing (future)
2015-05-08 19:28:16 +02:00
Gregory Hainaut
4c91bab00e
gsdx: fix compilation error on release build
2015-05-08 19:28:00 +02:00
Gregory Hainaut
6d31124d3a
gsdx-debug: only enabled advance gl debugging on linux
...
It will avoid some crash on windows for driver that doesn't support
the extension.
Make debug support mandatory for debug build on linux.
2015-05-08 09:54:34 +02:00
Gregory Hainaut
e87d129b09
gsdx-ogl: more verbose debug
2015-05-08 01:01:01 +02:00
Gregory Hainaut
d6448183d7
gsdx-ogl-debug: insert error message in GL stream
...
This way, you can see your message in the GL debugger
2015-05-08 00:16:31 +02:00
Gregory Hainaut
544a923e32
gsdx: Add an option to control auto skip of depth texture
...
Default is 1 if the user enable hack.
It fixes GTA sun effect and likely others bugs.
Please someone add a windows GUI option.
2015-05-07 23:54:22 +02:00
Gregory Hainaut
51a67029cf
gsdx-ogl: add an option to print gl error messages
2015-05-07 23:54:22 +02:00
Gregory Hainaut
7518b2ef21
gsdx-gui-linux: add debug option in the gui
...
* Only for debug/dev build
* look awful (expand/fill) but otherwise it is nice for the debug ;)
2015-05-07 23:54:22 +02:00
Gregory Hainaut
d20501739f
Merge pull request #528 from ssakash/patch-1
...
sync with GSdx.ini variable.(fix earlier typo)
2015-05-07 22:15:41 +02:00
Gregory Hainaut
fda746ff93
gsdx-gui-linux: support 3 states hack options
...
Based on a Combo Box on linux. As good as 3 states check buttons
2015-05-07 22:13:49 +02:00
Gregory Hainaut
d69ffa9b8b
gsdx-gui-linux: move remaining table filling into small functions
2015-05-07 22:13:49 +02:00
Gregory Hainaut
b39b9c9f55
gsdx-gui-linux: use callback everywhere
...
Note: texture offset doesn't work nicely (you need to press enter
to validate the change)
2015-05-07 22:13:49 +02:00
Gregory Hainaut
d428e0d19d
gsdx-gui-linux: move table filling into separate function
...
It is much easier to read this way. I need to use callback for the remaining
object before I can move everything out of main function.
2015-05-07 22:13:49 +02:00
Gregory Hainaut
917a6c28e5
gsdx-gui-linux: factorize code
...
* Use wrapper and callback for Check Button/Spin Button/Combo Box
* Use TheApp.m_gs vector to create combo box
Remove nearly 100 lines of code ^^
2015-05-07 22:13:49 +02:00
Gregory Hainaut
ba21879059
gsdx-ogl: 1x aniso <=> off
2015-05-07 22:13:49 +02:00
Gregory Hainaut
e6560f348e
gsdx: add vector option for linux & openGL
2015-05-07 22:13:49 +02:00
Gregory Hainaut
8f1d00292b
gsdx-ogl: allow to control vsync on Windows
...
Issue #529
Completely untested
2015-05-07 18:41:10 +02:00
Gregory Hainaut
6095f40baf
gsdx-ogl: add the number of free bit in selector structs
2015-05-07 18:41:10 +02:00
pgert
9a083d5506
gsdx: crc hacks: few new crcs, few crcs region changes
...
Signed-off-by: Avi Halachmi (:avih) <avihpit@yahoo.com>
2015-05-07 15:57:50 +03:00
Gregory Hainaut
97fad356b8
gsdx-ogl: fix debug build for AMD/Intel HW
2015-05-06 19:09:13 +02:00
Gregory Hainaut
cc4713d379
gsdx-debug: extend ogl debug capabilities
...
Group opengl calls into a nice name.
Apitrace shows them in a tree format that support folding. Previously it
was a long flat list (10K-40K of lines by frame)
I align the call number with the internal s_n variable. This way it is
easy to map GSdx dump output with the GL debugger :)
2015-05-06 19:09:13 +02:00
Gregory Hainaut
530e4ce776
gsdx-ogl: drop hack that rescale primitive (to avoid upscale glitch)
...
Rendering is bad. It renders sprites at native resolution.
2015-05-06 19:09:13 +02:00
Gregory Hainaut
6d65867b26
gsdx-ogl: comment point_sampler
...
It is not enabled on the shader so I will reuse the bit
2015-05-06 19:09:12 +02:00
Gregory Hainaut
3fcac07120
gsdx-ogl: print some message when blending is not properly supported
2015-05-06 19:09:12 +02:00
Gregory Hainaut
6fca3b421d
gsdx-debug: dump register context in a .txt file
...
+ Realign s_n number if frame is skipped
This way it is easier to understand current draw. It also eases
comparaison between SW/HW.
2015-05-06 19:09:12 +02:00
Akash
24e37d2dea
sync with GSdx.ini variable.(fix earlier typo)
...
fixed the description for round offset hack.
fixed the new description for round offset hack.
2015-05-05 23:01:46 +05:30
Gregory Hainaut
5d4bc5c8fe
Merge pull request #516 from PCSX2-underground/master
...
round offset UI initialization
2015-05-05 17:48:53 +02:00
Gregory Hainaut
5f5b901bca
gsdx-ogl: alpha bending equation/function are constant
...
Drop useless variables/state checking
2015-05-05 11:20:25 +02:00
Gregory Hainaut
8032e2c369
gsdx-ogl: separate color mask state from the blending state
...
Unlike DX they're uncorrelated.
2015-05-05 10:26:01 +02:00
Akash
302ce51efe
round offset UI explanation
...
initialization of IDC_ROUND_SPRITE
set&get config for round offset.
three state checkbox for the hack.
define IDC for round offset.
Linux (GUI) refresh.
typo
2015-05-05 00:29:00 +05:30
Gregory Hainaut
7bfee7e377
gsdx-debug: stop the dump after a limited number of draw call
...
Otherwise it fills your disk in a short time with useless data.
2015-05-03 16:46:48 +02:00
Gregory Hainaut
c1ddad2d25
gsdx-linux: Refresh the GUI
...
* Use table everywhere (better alignment)
* Factorize Box/Frame creation
* Factorize table insertion
* Add Anisotropic Filtering support
2015-05-03 16:36:48 +02:00
Gregory Hainaut
ae70344fbc
gsdx-ogl: fix 2 passes DATE with GL42 (override_GL_ARB_shader_image_load_store = 1)
...
It fixes shadows issue with Persona 3
2015-05-02 16:56:18 +02:00
Gregory Hainaut
14a1925de0
gsdx ogl: date texture is signed to use i variant
2015-05-02 16:53:34 +02:00
Gregory Hainaut
f37ef105c5
gsdx-ogl: add support for anisotropy
...
Close feature request #447
2015-05-02 10:54:58 +02:00
Gregory Hainaut
b1ec8a5a42
gsdx-ogl: detect support of GL_EXT_texture_filter_anisotropic
2015-05-02 10:53:19 +02:00
Gregory Hainaut
73d04e33e9
gsdx ogl: clean various comment and old code
2015-05-01 20:04:23 +02:00
Gregory Hainaut
335695bd0e
purge GLES from GSdx !
...
mobile will use vulkan (or any new API) anyway
2015-05-01 20:02:17 +02:00
Gregory Hainaut
e17ba1c143
gsdx ogl: disable logz when ARB_clip_control is supported
...
Basically any recent drivers but Catalyst...
2015-05-01 15:01:08 +02:00
Gregory Hainaut
2ff3d17f67
gsdx-ogl: don't create override option for mandatory extension
...
Ini is alredy big enough
2015-05-01 14:18:05 +02:00
Gregory Hainaut
a0c17ae0a4
gsdx: use vertex storage by default
...
It is faster on games that draw lots of primitives and in low upscaling.
2015-05-01 14:05:45 +02:00
Gregory Hainaut
004fa7aea4
gsdx debug: allow to dump alpha channel as a gray texture
...
I would love to find an image viewer that allow to mask channel of the image
2015-05-01 13:38:58 +02:00
Gregory Hainaut
c8a3db114c
gsdx debug: create savet option
...
0: don't dump input texture
1: dump input texture
Now, you can do a first pass with only RT. When you find the wrong call, you can redump the input texture of the bad draw.
2015-05-01 13:35:21 +02:00
Gregory Hainaut
f96a653d05
gsdx-ogl: GSVertexArrayOGL uses ASSERT with condition
...
Remove useless indentation too
2015-05-01 12:16:26 +02:00
Gregory Hainaut
71c26a829e
gsdx-ogl: forget to remove this useless call
...
It is done once in Device Creation instead of per stencil object
2015-05-01 12:10:03 +02:00
Gregory Hainaut
c76e66f8d2
gsdx-ogl: fix read back of render target
...
Initial code use a PBO to do asynchronous transfer. It is silly because
GSdx doesn't use this free time. So let's use a sync read. Same speed but
no PBO to manage.
2015-05-01 01:26:44 +02:00
Gregory Hainaut
de52ce956a
gsdx linux: update gui
...
Clear texture was dropped but texture_barrier was added
2015-05-01 01:00:11 +02:00
Gregory Hainaut
7367b22e03
gsdx-ogl: reduce toggling of scissor state for DATE
2015-05-01 00:59:49 +02:00
Gregory Hainaut
71e517108d
gsdx-ogl: fix colclip
...
Sotc shadow and likely various games :)
Thanks to pseudo
2015-04-30 23:08:05 +02:00
Gregory Hainaut
25997647f2
gsdx-ogl: add ENABLE_OGL_PNG_OPAQUE to dump texture without alpha
...
Alpha is nice but fully transparent texture suck
The best will be an image viewer that can toggle the alpha channel
2015-04-30 23:06:54 +02:00
Gregory Hainaut
39a5d4c839
gsdx: add PNG support for SW renderer
...
Easier to compare
2015-04-30 20:13:24 +02:00
Gregory Hainaut
b65a62096f
gsdx-ogl: drop support of ENABLE_OGL_DEBUG
...
Stencil can be read by GL debugger due to correct mask configuration
2015-04-30 20:02:51 +02:00
Gregory Hainaut
8a52fdab57
gsdx-ogl: allow to dump texture as png file
...
-- slower (but that a debug feature)
++ smaller (40x-50x)
++ native support of alpha
Require libpng++ and the define ENABLE_OGL_PNG
Note: depth is not supported yet.
2015-04-30 20:02:50 +02:00
Gregory Hainaut
ee19a2789c
gsdx: move invalidation from GSDevice to GSTexture
...
Much cleaner this way
2015-04-30 19:55:57 +02:00
Gregory Hainaut
2bd9043657
gsdx-ogl: improve debug of stencil
...
Note: ENABLE_OGL_STENCIL_DEBUG could be dropped now that I can read the stencil properly
2015-04-30 19:55:57 +02:00
Gregory Hainaut
7887d7b5a5
gsdx-ogl: use less verbose code
2015-04-30 19:55:41 +02:00
Gregory Hainaut
f0181d98fd
gsdx-ogl: save the texture state
2015-04-30 09:57:30 +02:00
Gregory Hainaut
0ab0c6cfba
gsdx: verbose debug option
...
Print opengl error message on stderr
Rename Debug.txt into GSdx_opengl_debug.txt
2015-04-27 19:30:03 +02:00
Gregory Hainaut
eaa0dae305
glsl: drop invariant qualifier
...
Fix issue #510 and potentially it allows the compiler to better optimize the code
2015-04-27 18:52:55 +02:00
Gregory Hainaut
46ff4dc3d3
gsdx-ogl: hardware unit only support normalization of 4 bytes...
...
(At least on recent AMD GPU)
2015-04-27 18:51:59 +02:00
Gregory Hainaut
301fe869c7
glsl: improve the logz handling
...
This way only 0 and 1 will conflict
2015-04-26 17:51:33 +02:00
Gregory Hainaut
768ae342c3
gsdx: move buffer check after allocation
2015-04-26 17:51:06 +02:00
Gregory Hainaut
346ef1eec2
gsdx-ogl: ouch! Properly check the creation of vertex buffers
2015-04-26 11:01:55 +02:00
Gregory Hainaut
6a3250cad2
gsdx-ogl: fix logz management (FFXII)
...
The issue is that z+1 overflow if z is UINT max
log2(z) overflow if z is 0
So let's use an or 1 to avoid both overflow
2015-04-25 20:23:26 +02:00
Gregory Hainaut
ee244071fa
gsdx-ogl: use 64 bits counter + fix division factor
...
I also added a counter of the real size of the texture.
I have a bad overhead for pbo transfer
2015-04-25 14:18:21 +02:00
Gregory Hainaut
00e62919c5
gsdx-ogl: use countof macro instead to hardcode the size
2015-04-25 13:06:02 +02:00
Gregory Hainaut
47a0026b60
gsdx-ogl: print the bandwidth of uniform
2015-04-25 13:00:03 +02:00
Gregory Hainaut
f2f59544d2
gsdx-ogl: early bind vertex array object
...
Creation of buffer will generate a bind in BufferStorage mode. It is just to be safe.
2015-04-25 12:50:12 +02:00
Gregory Hainaut
15ae9996bb
glsl: format white space + comment
2015-04-25 12:50:12 +02:00
Gregory Hainaut
757726bb91
gsdx-ogl: allow to invalidate the texture
...
It just a hint to the driver to avoid any useless transfer
I don't expect any change but it is free so why not ;)
2015-04-25 12:50:12 +02:00
Gregory Hainaut
75817bb27b
gsdx-ogl: add a quick and dirty DSA layer emulation
...
The global idea is to use
1/ bind in tight loop
2/ DSA otherwise (to avoid any binding in tight loop)
2015-04-25 12:50:11 +02:00
Gregory Hainaut
eb257d9295
gsdx-ogl: add dsa function place holder
2015-04-25 12:50:11 +02:00
Gregory Hainaut
baf84b98c4
gsdx-ogl: add override_GL_ARB_texture_barrier option
...
To ease regression test.
2015-04-25 09:59:25 +02:00
Gregory Hainaut
b12eb45bb7
gsdx-ogl: try to avoid crash on fglrx windows
2015-04-25 09:50:19 +02:00
Gregory Hainaut
f0182f9a66
windows requires APIENTRY (=> stdcall)
2015-04-25 01:32:09 +02:00
Gregory Hainaut
7b0775d887
gsdx-ogl: add some fences to protect the upload of vbo buffer
...
This way ogl_vertex_storage must be safer to activate
And it brings a nice performance boost (game with lots of primitives and
reasonable upscaling)
SotC testcase 4x: 61fps => 78fps
2015-04-24 23:15:19 +02:00
Gregory Hainaut
36514bd95f
glsl: fog is a single byte
...
Give a chance to the driver to optimize if possible
2015-04-24 21:37:37 +02:00
Gregory Hainaut
c207632e49
gsdx-ogl: improve date performance for GL45
...
If there is no overlap, it is allowed to directly read from the render target.
On SotC testcase with 6x scaling: 30fps -> 40fps
Note: it requires GL_ARB_texture_barrier extension so be sure to have a recent driver
Note2: it requires a lots of testing too
Open question: in case of complex date (written alpha)
Will it be faster to split the draw call into multiple call with no
primitive overlap
2015-04-24 21:12:33 +02:00
Gregory Hainaut
795ae50ecd
gsdx-ogl: fix the recently broken advance date feature
...
Now it is really working with a 2 stages shaders but it is still slow.
2015-04-24 20:13:38 +02:00
Gregory Hainaut
672e3f9533
gsdx-ogl: use DSA for texture management
...
Yeah code is much nicer :)
2015-04-24 19:34:17 +02:00
Gregory Hainaut
6d31d1e0d0
gsdx-ogl: add a layer to emulate DSA for texture
...
Framebuffer function will be nice too
2015-04-24 19:32:00 +02:00
Gregory Hainaut
f71eb171cf
gsdx-ogl: add glTextureBarrier function pointer
...
Could be useful
2015-04-24 18:35:01 +02:00
Gregory Hainaut
6e386df535
gsdx-ogl: avoid to clean fully texture in DATE
...
Is is useless and it has a small impact on performance for big upscale
2015-04-24 18:32:08 +02:00
Gregory Hainaut
03e72781aa
gsdx-ogl: drop support of GL_ARB_clear_texture extension
...
Extension is a bit slower.
We use it to clear the RT but we generally use it right away so
we don't avoid the FB attachment.
2015-04-24 18:15:58 +02:00
Gregory Hainaut
89d5e5637c
glsl: use an explicit cast insead of notEqual function
...
If the compiler didn't optimize the code, it will be a bit faster
2015-04-24 18:01:25 +02:00
Gregory Hainaut
56836561f4
glsl: replace runtime condition by preprocessor condition
...
It might be an easier work for the compiler
I didn't replace all occurences to keep readability
2015-04-24 17:51:29 +02:00
Gregory Hainaut
4bb8d15228
gsdx: be more verbose on title and bandwidth debug
2015-04-24 17:13:56 +02:00
Gregory Hainaut
258b73409c
gsdx-ogl: update flags for buffer storage
...
Fix issue with Mesa driver
2015-04-23 21:10:43 +02:00
Gregory Hainaut
f6652e9a50
gsdx-ogl: disable slow and buggy code until I found a better solution
...
ogl_texture_storage 1 creates texture corruption.
Advance date is too slow, code need to be updated (properly) to uses 2 passes only not 3
Maybe one could be enough (sometimes)
2015-04-22 09:33:41 +02:00
Gregory Hainaut
b32f808fd4
gsdx-ogl: increase the number of pbo
...
It would cost 16MB of extra storage on the GPU but it might
reduce conflict of texture upload.
2015-04-22 00:40:38 +02:00
Gregory Hainaut
bd6ea17bdc
gsdx-ogl: speed improvement for DATE
...
DATE is implemented in 2 ways.
1/ with stencil
2/ purely in FS (sw)
I kept method 1 to reduce the work on method 2. It sucks for performance.
So it would be either 1 or 2.
Note: DATE has a big impact on higher upscaling
Note2: you can disable the 2nd method with this configuration parameter
override_GL_ARB_shader_image_load_store = 0
2015-04-22 00:36:34 +02:00
Gregory Hainaut
15dcf07b3b
revert previous commit
...
Not better, worst slower.
I'm afraid I will need proper fencing
2015-04-22 00:32:46 +02:00
Gregory Hainaut
8386b427ea
gsdx ogl: restore GL_MAP_COHERENT_BIT for texture upload
...
I hope to fix the texture upload corruption
I hope that impact on perf will remain small
2015-04-21 23:34:26 +02:00
Gregory Hainaut
19eb1f00d1
gsdx ogl: flush vbo range instead of barrier
...
For testing purpose. I don't know which one is better.
It seems flushing have less fps fluctuation than barrier.
2015-04-21 21:44:50 +02:00
Gregory Hainaut
ce98276322
gsdx-ogl: improve speed of vertex streaming
...
Note yet enabled because I'm afraid of data corruption but feel free to test it
The option:
ogl_vertex_storage = 1
Performance note (warm cache+gs replay on colin3)
60 fps -> 76 fps
2015-04-20 09:38:03 +02:00
Gregory Hainaut
62489f42f1
gsdx-ogl: add an optimization note for later
...
Only 1 byte of fog is useful
2015-04-20 07:18:09 +02:00
Gregory Hainaut
6d253c0b8f
glsl: fix debugging of tex coordinate in apitrace
2015-04-20 07:18:08 +02:00
Gregory Hainaut
31f8c065db
gsdx-ogl: implement a new hack UserHacks_UnscaleSprite for opengl
...
UserHacks_UnscaleSprite = 1 will unscale flat sprites
UserHacks_UnscaleSprite = 2 will unscale all sprites (don't work well so far)
The idea of the hack is to redo the interpolation of texture coordinate
based on the non-upscaled pixel position.
It avoids various glitches but sprites aren't upscaled anymore (so no
more anti-aliasing, potentially a coefficient can be added).
2015-04-20 07:18:08 +02:00
Gregory Hainaut
6124eb844e
gsdx-ogl: only compile useful VS
...
logz is a constant
wildhack is only compatbile with TME/FST
Compilation goes down from 64 to 20 vertex shaders.
2015-04-20 07:17:58 +02:00
Gregory Hainaut
16e6d0d305
glsl: move shader into a separate directory
...
Only keep glsl_source.h for clarity
2015-04-19 18:49:02 +02:00
Gregory Hainaut
55fdf26898
glsl: remove the older file tfx.glsl
2015-04-19 18:49:02 +02:00
Gregory Hainaut
15264c6c63
glsl: split the main shader
...
* separate VS/GS and FS
* separate subroutine part of the FS
It already complex enough without subroutine stuff. Besides I'm not sure
we will keep subroutine on the future.
2015-04-19 18:49:02 +02:00
Gregory Hainaut
6fc9afb175
Merge pull request #507 from PCSX2/stdcall-for-plugin
...
Stdcall for plugin
2015-04-19 18:48:32 +02:00
Gregory Hainaut
e605ed1d09
gsdx-queue: add a comment for the future
2015-04-17 19:12:36 +02:00
Gregory Hainaut
fa243afbab
gsdx SW: enable new queue && C++11 on linux/MSVC 2012+
2015-04-17 19:12:36 +02:00
Gregory Hainaut
d91e989abb
gsdx-queue: pass shared_ptr by reference
...
It avoids atomic +1/-1 of the reference counter
The counter is still incremented when the ptr is copyed into the queue
2015-04-17 19:12:36 +02:00
Gregory Hainaut
84b33d2ddb
gsdx-queue: plug the new queue as a drop-off replacement of previous boost queue
2015-04-17 19:12:36 +02:00
Gregory Hainaut
90794c302a
gsdx-queue: import spsc_queue of boost
...
I remove 80% of the file to only keep the ring buffer core
Same speed as boost but without the boost dependency
2015-04-17 19:12:36 +02:00
Gregory Hainaut
c9194301a0
gsdx-queue: (linux) add a GUI option to select the queue
2015-04-17 19:12:33 +02:00
Gregory Hainaut
0aac47ca59
gsdx-queue: add a new option "spin_thread" to select the queue behavior at runtime
...
If someone has a more elegant solution, feel free to share it
spin_thread = 0
spin_thread = 1 // the faster but GS thread will never stop, very bad for laptop
2015-04-17 19:03:21 +02:00
Gregory Hainaut
9682061472
gsdx-queue:add a new job dispatcher queue based on boost and C++11
...
It is faster on linux, it requires less code, and it is "portable"
It requires boost (only hpp files) + MSVC 2013 (for atomic) (seem doable by 2012 too)
Actually there are several queues that either use spinlock or full sleep
2015-04-17 19:03:21 +02:00
Gregory Hainaut
a75d78bd7e
gsdx: use standard lock_guard instead of GSAutoLock
2015-04-17 19:03:21 +02:00
Gregory Hainaut
9ad5933120
gsdx: Use composition insead of inheritance to support lock
...
To ease update to C++11
2015-04-17 19:03:21 +02:00
Gregory Hainaut
8deee6afbc
gsdx: include some C++11 define for later
2015-04-17 19:03:21 +02:00
Gregory Hainaut
9ce7f515bc
cdvdiso: add stdcall convention
2015-04-17 18:34:05 +02:00
Gregory Hainaut
5c8ea74cb9
null plugins: add stdcall convention
2015-04-17 18:33:10 +02:00
Gregory Hainaut
75a3abc225
lilypad: add stdcall convention
2015-04-17 18:32:39 +02:00
Gregory Hainaut
8e3dab7e11
zzogl: add stdcall convention
2015-04-17 18:32:10 +02:00
Gregory Hainaut
e16cb9a00e
onepad: add stdcall convention
2015-04-17 18:31:44 +02:00
Gregory Hainaut
c456764342
spu2x: declare exported function as stdcall
...
* Fix a stack buffer overflow on address sanitizer
* Might explain an old clang crash
2015-04-17 18:24:23 +02:00
Gregory Hainaut
545c1d387c
gsdx: add an include for MSVC
2015-04-16 22:28:09 +02:00
Gregory Hainaut
aff999cf69
gsdx linux: refresh the gui
...
* Use tooltip for hack
* Update string of previous hack
* Remove unused hack
Note: hack_sprite_check requires 3 states (and potentially others hack too) but
I don't know how to do it. It likely requires a "scale button"
2015-04-16 19:28:55 +02:00
Gregory Hainaut
85cbe285f0
gsdx dialog: move hack info into a separate file
...
This way it can be reused on linux.
2015-04-16 19:26:33 +02:00
Gregory Hainaut
670bcc1818
gsdx hack: use a dumb implementation for UserHacks_round_sprite_offset = 2
...
It works as bad as a "clever" implementation.
It seems to be enough for games such as venus/taisho-monoke/FFX
Note: it might creates glitches. Code will never be nice, so it is just
a trade-off
2015-04-16 19:26:33 +02:00
Gregory Hainaut
41e5be0673
gsdx hack: limit range of UserHacks_align_sprite_X
...
Just an extra check to avoid an overlap (avoid white line in tekken)
2015-04-16 19:26:33 +02:00
Gregory Hainaut
e8698a9c0c
gsdx hack: hole in vertex position also appears in !FST projection
...
Fix various black vertical line regression with UserHacks_align_sprite_X
2015-04-15 09:40:06 +02:00
Gregory Hainaut
65a84b9f64
gsdx hack: drop previous filtering hack
...
superseeded by UserHacks_round_sprite_offset
2015-04-15 09:26:01 +02:00
Gregory Hainaut
2da4a5e6bc
gsdx hack: use a 0 offset instead of -1
...
-1 is annoying because minimum value is 0. Instead to add more logic,
let's try to use 0 which seems to be good enough (fix regressions on DQ8/AT)
Unfortunately it causes a mini regression on taisho-mononoke. Rotation of sprite is done with 2 triangles.
Potentially previous value wrongly recover this section.
2015-04-14 18:39:26 +02:00
Gregory Hainaut
cde72300a5
gsdx hack: Correct formulae for reversed texture
...
It fixes issues on Ace Combat UI
2015-04-13 22:14:36 +02:00
Gregory Hainaut
418f2e69a8
gsdx-ogl: implement the wildhack on the GPU
...
Likely much faster for opengl and much easier to implement
Note: hopefully UserHacks_round_sprite_offset will replace it
2015-04-13 22:14:36 +02:00
Gregory Hainaut
50bac01d89
gsdx hack: disable upscaling hack at native resolution
2015-04-13 22:14:36 +02:00
Gregory Hainaut
815c99b6e4
gsdx-hack: remove an extra offset + duplicate linear computing
...
Initially code aligned texture on pixel boundary + 1/16th. It seems to work without it.
2015-04-13 22:14:36 +02:00
Gregory Hainaut
399ddbd74a
gsdx hack: reduce complexity of alpha* function
...
It will help the compiler to make a couple of optimizations (and it will help
a futur porting to GSVector)
2015-04-13 22:14:36 +02:00
Gregory Hainaut
1d0deb5ffe
gsdx hack: move round sprite offset into a separate function
...
Use a boolean template to separate the linear case. I'm afraid it will
cost extra computation but 90% of sprites use nearest.
2015-04-13 22:14:36 +02:00
Gregory Hainaut
1aebca3740
gsdx hack: m_userhacks_round_sprite_offset take precedence over m_userhacks_stretch_sprite
...
m_userhacks_stretch_sprite is only kept for debugging. Let's avoid bad mixing by users
2015-04-12 11:05:23 +02:00
Gregory Hainaut
c4fef0256e
gsdx hack: Better rounding fix letter in ace combat and line in tekken
...
Tekken is broken with setting UserHacks_round_sprite_offset = 2 use 1 instead.
=> game use upscaling internaly so my rounding of coordinate break everything
Yakuza uses float coordinate but this hack only correct the integer coordinate
=> the solution will be to add a dedicated hack for this game.
Colin3 got a regression but I don't know when...
2015-04-12 10:31:04 +02:00
Gregory Hainaut
7e89247bf4
gsdx hack: don't add extra correct for zero length texture
...
Otherwise t1-t0 is 16 instead of 0
2015-04-11 10:54:30 +02:00
Gregory Hainaut
d2156c86eb
gsdx: improve previous hack for bilinear sprite
...
PS2 uses a -0.5 offset before sampling so texels must be rounded to half-pixel boundary
If fixes glitches on Venus and taisho-mononoke
Note: I didn't fixed yet texture render in reverse because I don't have any test for it.
2015-04-10 09:42:39 +02:00
Gregory Hainaut
f5eeb2024e
gsdx: anti-glitches v3: Tester wanted
...
UserHacks_round_sprite_offset = 1 <= enable correction of flat sprites
UserHacks_round_sprite_offset = 2 <= enable correction of all sprites (better on a couple of dump but not sure of the consequence)
I completely redo the algorithm. This time I do the projection and
interpolation of the 2 extrem vertex. This way I can compute the min/max
valid texture coordinate.
It gives stronger guarantee that texture sampling will be done inside the texture.
However it might have a performance impact, likely reasonable because it
is limited to sprite vertex.
A big thanks you to all people that provide me GS dump and test reports.
2015-04-09 19:51:50 +02:00
Gregory Hainaut
05eb1641f2
gsdx: add glsl debug capabilities
...
Useful to debug bad texture sampling
2015-04-08 10:15:25 +02:00
Gregory Hainaut
98d8ad7484
gsdx: new anti-glitches upscaling hack: UserHacks_round_sprite_offset
...
It is replacement of the previous hack (UserHacks_stretch_sprite). Don't enable both in the same time!
The idea of the hack is to move the sprite to the pixel boundary. It
avoids most of rounding issue. It also rescales verticaly the sprite (avoid horizontal line on ace combat).
I don't like this rescaling maybe we can limit it to only 1 pixels.
On my limited testcase, results are much better with any upscaling factor.
I still have a bad line in Kingdom heart. If you have issue with others
game please provide us a GS dump.
2015-04-07 19:18:24 +02:00
avih
3077de3637
Merge pull request #496 from 3descx9/master
...
crc hack for Ponkotsu Roman Daikatsugeki: Bumpy Trot ( Steambot Chronicles JP)
2015-04-07 12:04:25 +03:00
ssakash
defb57178f
crc hack for Ponkotsu Roman Daikatsugeki: Bumpy Trot ( Steambot Chronicles JP)
2015-04-07 14:14:26 +05:30
Blyss Sarania
506648bd6b
GSdx: Hacks UI: Add missing BREAK that I left out
2015-04-06 14:39:51 -05:00
Blyss Sarania
c6fb098703
Add two new tick boxes and associated description
...
For Gregory's two new awesome hacks
Also make new hacks obey "Enable HW Hacks"
2015-04-06 13:48:59 -05:00
Gregory Hainaut
3c84e6848b
gsdx: don't enable previous hack if m_upscale_multiplier <= 1
2015-04-04 01:21:46 +02:00
Gregory Hainaut
183b5d4def
gsdx: improve UserHacks_align_sprite_X hack for ace combat
...
Game uses 1x1 texture sampling. In this condition we don't care
if texture is correctly aligned.
2015-04-03 23:00:54 +02:00
Gregory Hainaut
53ab390e72
gsdx linux: add a nice gui option for previous hack
...
I also added two nice tooltips :)
2015-04-03 21:25:34 +02:00
Gregory Hainaut
fbaa84e691
gsdx: anti-vertical-line hack UserHacks_align_sprite_X
...
This ack realign sprite to full pixel coordinate
It solves vertical line in ace combat/tekken/colin mac rally
2015-04-03 21:02:25 +02:00
Gregory Hainaut
e40a26be19
gsdx: add some helper to debug openGL renderer
2015-04-03 20:28:44 +02:00
Gregory Hainaut
5269e54f02
gsdx: tune previous hack
...
Only disable bilinear on the sprite that were forced by the user.
If the PS2 requires a bilinear filtering, there is likely a big enough texture
2015-04-03 20:09:02 +02:00
Gregory Hainaut
bb728ea186
gsdx linux: filtering label was in wrong oder
...
The standard mode is 2
2015-04-03 20:07:50 +02:00
Gregory Hainaut
d4b7410e3e
gsdx linux: add a checkbox to enable easily previous hack
2015-04-03 18:33:05 +02:00
Gregory Hainaut
e1a5736583
gsdx: anti-upscale-glitch hack UserHacks_SkipDraw
...
2x upscaling is pixel perfects. Bigger upscaling is better but not yet perfect
Feedbacks are welcomes (note it doesn't solve all upscaling issue, only wrong texture sampling)
For the history:
If you have a texture of [0;16[ texels and draws a primitive [0;16[
The formulae to sample last pixels of texture is
0.5 + (16*s-1)/(16*s) * 16
Native (s==1): 15.5 (good)
2x (s==2): 16 (bad, outside of the texture)
4x (s==4): 16.25 (bad, really outside of the texure))
2015-04-03 18:33:05 +02:00
Gregory Hainaut
22710d9b44
lilyPad: fix the linux crash if ini doesn't exist
...
All credits go to Arcum42
2015-04-03 18:33:05 +02:00
Avi Halachmi (:avih)
45e2fd9204
crc hack for Raw Danger! (Zettai Zetsumei Toshi 2 US)
...
thanks to ssakash for the patch
2015-03-29 15:41:06 +03:00
Gregory Hainaut
45930ecbf3
gsdx: value was wrongly overwritten
...
Need a lots of tests to ensure at least no regression on cache behavior
Issue #332
2015-03-17 09:39:50 +01:00
Gregory Hainaut
3b5367c5b7
Merge pull request #452 from turtleli/fix-linux-build-avx2-with-tsx-disabled
...
GSdx: Linux: Fix build failure on AVX2 processor with disabled TSX, enable SSE4.2, SSE4.1, SSSE3 builds
2015-03-01 17:53:21 +01:00
Jonathan Li
1222bcbf6e
GSdx: Comment out TransactionScope code
...
The TransactionScope class is compiled but never used. Comment it out
for now.
2015-03-01 16:40:48 +00:00
Gregory Hainaut
c1604c4b38
gsdx 🧵 only keep std::mutex/std::condition_variable
...
Keep pthread for thread until std::thread is really working
2015-03-01 17:29:40 +01:00
3kinox
7f1e907616
+ Correct faulty behaviour of std thread by using native posix handle.
...
+ This is not yet perfect. Really, this standard seems like a load of crap to me in fact...
At least it works now. Should test again when gcc 5 & new c++ libs gets out.. Until then, it will do.
2015-03-01 17:29:39 +01:00
Gregory Hainaut
b68270ded1
Merge pull request #448 from PCSX2/lilypad-linux-port
...
Lilypad linux port
Basic support of Keyboard and Joystick
No gui to configure anything. Not well tested yet.
2015-03-01 16:52:23 +01:00
Jonathan Li
13c0e6f5ef
GSdx: Explain TransactionScope changes
2015-02-28 14:21:44 +00:00
3kinox
4211d51f07
64 bits: solve various of type problems
2015-02-27 22:07:13 +01:00
Gregory Hainaut
f254d44030
CDVDlinuz: fix gtk header include
...
It doesn't fix GTK3 build but it allows to see the real error now.
2015-02-27 10:11:38 +01:00
Jonathan Li
329953ebc3
GSdx: Linux: Enable SSE4.2, SSE4.1 and SSE3 builds
2015-02-22 11:18:23 +00:00
turtleli
9b572d2d47
GSdx: Linux: Fix AVX2 CPU build with TSX disabled
...
On Linux, CPUs with AVX2 instruction sets that have TSX disabled (by
microcode update or otherwise) fail to build GSdx. The __RTM__ macro is
undefined, with leads to the TSX RTM instruction set (_xbegin, _xend,
_xabort, etc.) being unavailable.
Modify the preprocessor check so that the RTM instructions are only used
if available.
2015-02-22 11:18:23 +00:00
Gregory Hainaut
330d14941f
gsdx-linux: support dump mode on linux
...
It could be useful to analyze GS dump. Warning it consumes a lot of
disk space.
2015-02-21 13:51:06 +01:00
Gregory Hainaut
8d76586dec
lilypad: fix windows build
...
I think lilypad used libc instead of libc++
2015-02-21 11:08:45 +01:00
Gregory Hainaut
642371996a
lilypad: add joy support based on linux evdev
...
I wanted to play with linux interface :)
It is far from perfect but joysticks are detected. The biggest issue is the correct generation of the config file!
2015-02-21 11:08:45 +01:00
Gregory Hainaut
3a2e8f38df
lilypad: removed old linux/LilyPad.cpp file
2015-02-20 23:05:21 +01:00
Gregory Hainaut
8350dc2c68
lilypad: remove debug printf
2015-02-20 23:05:21 +01:00
Gregory Hainaut
13bb1ae028
lilypad: Keep original KeyboardQueue (more ifdef)
...
It would be nice if windows support basic std::mutex
The reverse fifo queue is kept in Linux/KeyboardQueue.cpp
2015-02-20 23:05:21 +01:00
Gregory Hainaut
349bb810f0
lilypad: merge LilyPad.cpp (ifdef, ifdef)
...
Avoid duplication for linux
2015-02-20 23:05:21 +01:00
Gregory Hainaut
42b9932bd0
lilypad: add code to bind key
2015-02-20 23:05:21 +01:00
Gregory Hainaut
3096e94616
lilypad : plug a basic keyboard device
...
Add a reverse fifo to transfer event from core to plugin
Long story short, on linux there is only one event queue in core
2015-02-20 23:05:21 +01:00
Gregory Hainaut
aec43f0bee
lilypad: add x11 display pointer
...
If we move all window management hack into the core it would be useless (for input)
2015-02-20 23:05:21 +01:00
Gregory Hainaut
087f252909
lilypad: add plumbering config
...
Note: it miss interaction with any dialog
2015-02-20 23:05:21 +01:00
Gregory Hainaut
4f013a2960
lilypad: import common utility to manage config
...
Based work on spu2x equivalent file. Only convert the file to a CfgHelper object
2015-02-20 23:05:21 +01:00
Gregory Hainaut
156f66ef62
lilypad: make it compile on linux
...
* Ifdef windows code
* Add a windows crap to linux crap translation layer
2015-02-20 23:05:21 +01:00
Gregory Hainaut
3661f51bcb
lilypad: minor c++ fixes
...
Must be checked on windows
2015-02-20 23:05:21 +01:00
Gregory Hainaut
147353a177
lilypad: add cmake file
2015-02-20 23:05:21 +01:00
Gregory Hainaut
76ff56a4e3
lilypad: add a linux fork
...
Yes it is bad!
2015-02-20 23:05:21 +01:00
Gregory Hainaut
1655055f61
onepad: update old comment
2015-02-20 23:05:21 +01:00
Gregory Hainaut
e0f56282de
cmake: no preferred-stack-option in asan
...
It conflicts with the global definition
I don't remember why this option was set on GSdx. Potentially it could be dropped (or fixed correctly)
Anyway, it will help to enable Address Sanitizer on Linux Build
2015-02-20 19:44:51 +01:00
TheLastRar
80b24f8055
Fix warped read code
2015-01-27 15:16:06 +00:00
Gregory Hainaut
0bdeb8d411
Merge pull request #430 from PCSX2/win-ocl-crash-fix
...
gsdx ocl: check size of array before access
2015-01-17 12:05:52 +01:00
Gregory Hainaut
6bb945f6c8
Merge pull request #428 from pgert/master
...
Case Mapping & GitHub instead of GoogleCode.
2015-01-16 21:25:36 +01:00
Gregory Hainaut
70ad09f6ef
gsdx ocl: check size of array before access
...
Potential fix for issue #408 ?
2015-01-16 09:39:50 +01:00
pgert
ad8e800aa5
Update Cfg.c
2015-01-12 13:27:09 +01:00
uyjulian
446977d126
GSdx forward compatible bit
2015-01-09 19:39:59 -06:00
Miguel A. Colón Vélez
c8c22cf6a0
Notify about cross build option upon failure.
...
Tell the user to use CMAKE_TOOLCHAIN_FILE upon failure.
.
Cleanup detectOperatingSystem. Should be the same but adding
GNU and kFreeBSD from Debian and filtering out pre OS X Apple.
.
libaio is linux only. Also check for the correct header since
aio.h is the POSIX one. Both are in /usr/include/ anyway.
Only build core if (Linux AND NOT AIO_FOUND) == false.
.
Use Unix for GTK and X11. Macs has gtk-quartzs and xquartz or native X11.
*BSD, linux, etc should have both.
2015-01-03 14:51:04 +01:00
Gregory Hainaut
ee34bd724f
gsdx ocl: avoid a crash if ocl is selected but not enabled
2014-12-23 19:39:02 +01:00
Gregory Hainaut
767b841fea
gsdx ocl: disable it on windows
...
Until we found a way to fix a couple of crashes
2014-12-22 19:02:35 +01:00
Gregory Hainaut
66d7aa75e2
cmake: move -DNDEBUG to global option
2014-12-20 13:43:25 +01:00
Gregory Hainaut
a99f3ea321
cmake: remove duplicate flags
...
also use the lighter elseif structure to reduce a bit the size of cmakefile
2014-12-20 13:43:25 +01:00
Gregory Hainaut
4773bcf0ea
cmake: s/_LINUX/__linux__/
2014-12-20 10:54:24 +01:00
Gregory Hainaut
4f957feacd
onepad: use union instead of stange cast
...
Nicer this way. Beside it removes the strict aliasing issue.
2014-12-20 10:54:18 +01:00
Gregory Hainaut
43e854fece
spu2x: remove duplicated function
2014-12-20 10:54:18 +01:00
Gregory Hainaut
ff24a5f702
gsdx linux: disable std::thread
...
Threads are not killed properly therefore GS crashes on reloading (aka F9)
See issue #392
2014-12-14 12:22:40 +01:00
Gregory Hainaut
b9297c6158
Merge pull request #377 from PCSX2/tlb_goemon_v2
...
goemon gamefix improvement
2014-12-14 11:47:37 +01:00
Gregory Hainaut
63ba78b664
remove zzogl-pg-cg
...
superseeded by zzogl-pg
2014-12-13 12:28:37 +01:00
Gregory Hainaut
7d21497c11
clang: no support of f-abi-version=6 option
2014-12-13 12:28:37 +01:00
Gregory Hainaut
18405e2598
gsdx: add goemon comment on some assertion
...
If someone want to trigger them
2014-12-12 22:31:31 +01:00
Gregory Hainaut
cebccea81c
gsdx: disable some gl extensions when VMware driver is detected
...
It is likely the Mesa driver, code seems to have the same issue (separate shader)
2014-12-12 20:44:58 +01:00
Gregory Hainaut
35f26f00bc
Merge pull request #386 from PCSX2/remove-tls
...
spu2x:zzogl: disable TLS
2014-12-11 09:55:17 +01:00
Gregory Hainaut
3d071e50ad
gtk3: gtk_hscale_new_with_range => gtk_scale_new_with_range
2014-12-10 22:09:21 +01:00
Gregory Hainaut
5d8b2d8044
gtk2: GtkNotebookPage is useless
...
And not supported by gtk3
2014-12-10 22:09:21 +01:00
Gregory Hainaut
e9233f4698
gtk2: use text rather than image
...
Require by GTK3
2014-12-10 22:09:21 +01:00
Gregory Hainaut
7fb548d7c5
gtk2: GTK_OBJECT is useless
2014-12-10 22:09:21 +01:00
Gregory Hainaut
d1389db2f4
gtk2: keyboard macro update
2014-12-10 22:09:21 +01:00
Gregory Hainaut
ba9e998ff5
gtk2: port gtk_combo_box to gtk_combo_box_text
...
The former was deprecated on gtk2.24 (and removed from gtk3)
2014-12-10 22:09:21 +01:00
Gregory Hainaut
a52f598369
spu2x:zzogl: disable TLS
...
builds an Utilies_NO_TLS.a archive of the common Utilities code. It replaces native TLS by a slower reimplementation
Rational: number of TLS slot is very limited by the GLIBc on linux. I hope it doesn't impact performance.
* Zzogl don't requires TLS AFAIK
* spu2x will likely use it for assertions only.
TLS exhaustion creates issue to dlopen plugins
issue #384 : https://github.com/PCSX2/pcsx2/issues/384
But also for profiled build (-fprofile-generate)
http://forums.pcsx2.net/Thread-WORKAROUND-build-with-fprofile-generate
If someone have a better idea, please raise your hand!
2014-12-08 22:26:46 +01:00
Gregory Hainaut
0a4f9e43d9
cmake: clean sdl management
...
* sdl is mandatory for spu2x
* cmake will include either /usr/include/SDL or /usr/include/SDL2 so no
need to add extra ifdef
2014-12-07 21:06:21 +01:00
Gregory Hainaut
29a14f5667
sed -i -e 's/seperately/separately/'
...
Thanks micove again
2014-12-07 12:46:16 +01:00
Gregory Hainaut
c945aead54
cmake: better support of SDL2
...
Description: Building with SDL2_API=TRUE is incomplete
SDL_FOUND does not imply SDL2_FOUND
Use check_libs for detection
Only include ${SDL_INCLUDE_DIR} when needed
Use SDL2_LIBRARIES
Author: Miguel A. Colón Vélez
Gregory: add back SDL_BUILDING_LIBRARY
2014-12-07 12:19:14 +01:00
Gregory Hainaut
16284d0a59
gsdx: fix a couple of typo
...
From @micove
2014-12-07 12:12:53 +01:00
Gregory Hainaut
070dce4c83
Merge pull request #356 from PCSX2/issue-fixes
...
various bug-tracker fixes
2014-12-06 19:48:13 +01:00
Gregory Hainaut
1f5fe7a1db
Merge pull request #348 from 3kinox/master
...
GSdx-ogl linux: std::thread
2014-12-02 22:43:29 +01:00
Gregory Hainaut
4238261784
gsdx-cl: update linux menu config
...
Try to use some id to be more robust
The best will be to sort the array first
2014-12-02 00:16:35 +01:00
Gregory Hainaut
76f719e5d0
gsdx-ocl: Add a ENABLE_OPENCL option
...
* Allow to compile GSdx on linux without opencl yet.
2014-12-02 00:16:35 +01:00
gabest11
b9b02cf749
implemented opencl program caching on disk under the system default temp folder, needs some additional work on linux
2014-12-02 00:16:35 +01:00
gabest11
7b466a98d0
replaced opencl.def with dynamic dll loading, god bless search and replace
2014-12-02 00:16:35 +01:00
gabest11
e3ba15de94
opencl device selection in settings dialog
2014-12-02 00:16:34 +01:00
gabest11
6f5cd1cd4d
joined some tfx kernel calls, general speed up in most games
2014-12-02 00:16:34 +01:00
gabest11
3d2b0e3766
minor opencl kernel optimizations
2014-12-02 00:16:34 +01:00
gabest11
72cfc6a6ef
3rdparty/opencl
2014-12-02 00:16:34 +01:00
gabest11
9e20387595
Modified for opencl 1.1. While it runs on nvidia cards now, you can't use its sdk to compile gsdx, cl.hpp is missing there. Intel or amd is ok.
2014-12-02 00:16:34 +01:00
gabest11
263c097d13
solution for 32-bit z values in opencl and other minor optimizations
2014-12-02 00:16:34 +01:00
gabest11
c64f9ad9b1
squishing opencl bugs, there aren't many left hopefully
2014-12-02 00:16:34 +01:00
gabest11
ba1e522bbb
Less opencl bugs, some games are actually playable now, there are still texture errors.
2014-12-02 00:16:34 +01:00
gabest11
881735b562
minor merging errors
2014-12-02 00:16:33 +01:00
gabest11
db7c26cde7
- Experimental OpenCL renderer (missing features: point, line, texture cache, mipmap, aa1, device selection). Needs any OpenCL SDK for the common headers and stub lib to compile, tested with AMD and Intel. Too bad it is not part of the Windows SDK yet.
...
- Renumbered renderer ids, compatible with old numbering, but it does not follow the mod3 logic anymore.
2014-12-02 00:16:33 +01:00
Gregory Hainaut
1b555ea3b5
gsdx-linux: Fix GSdx internal counter on linux
...
The issue is that clock gives the total cpu time of the process whereas
we want the cpu time of the rendering thread
2014-11-24 23:44:32 +01:00
3kinox
732cbc3ad5
GSDX-ogl linux:
...
+ Implement threads/mutex using std::thread/std::mutex/std::condition_variable
+ Old implementation can be used by commenting out the "define _STD_THREAD_ in GSThread.h
+ Commit should be much cleaner than previous one.
2014-11-23 14:33:35 +01:00
Gregory Hainaut
60c0eb7179
gsdx-ogl: windows: properly setup context flags
...
* Use a core profile context
* Only enable the debug context in debug build
Close issue #353
2014-11-20 22:12:30 +01:00
Gregory Hainaut
d21e6ff45f
gsdx-ogl: don't declare a sampler variable
...
Nvidia was complaining on the fxaa shader. In doubt I also replaced it in Asmodean's shader
2014-11-20 22:07:44 +01:00
Asmodean-
8f42b36a42
It might help if I changed this for d3d9 also :p
2014-11-15 21:40:00 +00:00
Asmodean-
5b3867dd60
GSdx: change post-processing directory & name.
2014-11-15 21:33:23 +00:00
Gregory Hainaut
276e3d9d1b
gsdx-ogl: always set texture parameter
...
* Avoid bug after a pause
* Not faster anyway
* keep old method only for gl retracer to reduce debugging noise
Remove some old&useless comment
2014-11-14 11:43:42 +01:00
Gregory Hainaut
3311336d0e
gsdx-ogl: disable ARB_bindless_texture
...
I have a crash when I try to delete some texture (for example when the simulator is paused)
2014-11-11 23:45:41 +01:00
Gregory Hainaut
b6a951a9fa
gsdx: debug compilation fix
...
I'm not sure gcc behavior is correct here!
2014-11-11 20:54:34 +01:00
Gregory Hainaut
0ca9bab8b6
Merge pull request #344 from Asmodean-/master
...
[GSdx] OpenGL PP Updates
2014-11-11 16:14:01 +01:00
Gregory Hainaut
ab4eaea757
Merge pull request #346 from 3kinox/master
...
Linux : GSdx AVX fix
2014-11-11 16:08:23 +01:00
3kinox
06f53b2689
use -fabi_version=6 only for GSdx, solve bug with wxwidget
...
reenable avx build for GSdx
2014-11-11 15:55:31 +01:00
Gregory Hainaut
e73d8f383b
gsdx-ogl: compilation fix for old distribution
2014-11-11 15:01:22 +01:00
Kieran Hanrahan
b60e5a62fc
Rearrange to right spot (I blame github editor ;p)
2014-11-11 00:17:21 +00:00
Kieran Hanrahan
7adc7c4833
Update GSSettingsDlg.cpp
...
Just add the OGL shader ini params to the file when the user enables post-processing In the options dialog.
2014-11-11 00:01:31 +00:00
Gregory Hainaut
e6e534c13a
Merge pull request #343 from PCSX2/shader-loading
...
GSdx ogl: external shader loading + FXAA
2014-11-10 15:43:05 +01:00
Gregory Hainaut
48b3d91768
partially revert previous commit ec1da2805c
...
It breaks windows...
2014-11-10 12:19:30 +01:00
Gregory Hainaut
8c90e7cafc
gsdx-ogl: support latest fxaa version
...
Only tested on Nvidia, please report any issue with your driver
Note: requires GL4 GPU
2014-11-10 10:39:55 +01:00
Gregory Hainaut
ff39dffe23
gsdx-ogl: add a gui option (linux) to select external shader
...
Note: of course it requires a glsl shader ;)
On windows, you can set the path on the ini file. Here an example with linux path:
shaderfx_conf = /home/gregory/playstation/emulateur/pcsx2_merge/bin/GSdx_FX_Settings.ini
shaderfx_glsl = /home/gregory/playstation/emulateur/pcsx2_merge/bin/shader.fx
2014-11-10 10:38:52 +01:00
Gregory Hainaut
920ac6695f
gsdx-ogl: add preliminary support of external shader fx
2014-11-10 10:37:58 +01:00
Gregory Hainaut
ec1da2805c
pcsx2/GSdx: disable AVX for the moment on linux
...
I need to check carefully the consequence of ABI change. So far wx is very unhappy!
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.8 (no debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.6),
and your program used 2.8 (no debug,Unicode,compiler with C++ ABI 1006,wx containers,compatible with 2.6).
2014-11-09 15:45:54 +01:00
Gregory Hainaut
84f844767c
gsdx-ogl: micro optimize PSConstantBuffer cache
...
Might help to save a cache line on the CPU :)
2014-11-08 21:39:17 +01:00
Gregory Hainaut
58bd645d49
gsdx-ogl: BindBufferBase also bind to the generic binding point
2014-11-08 21:39:13 +01:00
Gregory Hainaut
16377f7249
gsdx-ogl: only call PixelStorei when parameters are updated
...
It won't improve performance but it would reduce a bit the noise in gl retracer tool
2014-11-08 21:30:14 +01:00
Gregory Hainaut
47f40ed79a
gsdx-ogl: reduce pbo complexity
...
Copy the full line into the pbo. Dma will only take GL_UNPACK_ROW_LENGTH
- increase memcpy size by 2 in the pbo
+ single memcpy will be faster and can use sse
Enable buffer_storage extension:
* GL_CLIENT_STORAGE_BIT was required (it is the duty of TexSubImage to copy data into the GPU mem)
* Enable the extension by default
2014-11-08 21:30:14 +01:00
Gregory Hainaut
e62af05496
gsdx-ogl: reduce complexity of clear texture
...
Null is equivalent to a clear to 0.
Note: Code is not yet used because both stencil and depth are cleared.
Future note: stencil can potentially be replaced by load_store_image
2014-11-08 21:30:14 +01:00
Gregory Hainaut
bd9df9a6ec
gsdx: Add some comment on GSTextureCache + schematics
...
Note: docs/TextureCache.odg was created with libreoffice. Not perfect but give a nice overview
2014-11-08 21:30:14 +01:00
ramapcsx2
b7e5e41afe
Merge pull request #333 from PCSX2/linux-avx
...
Support of AVX build for linux
2014-11-08 14:09:06 +01:00
ramapcsx2
8434d6c397
Merge pull request #328 from tlbjr/master
...
GLDEBUGPROC type cast and postBuild.cmd for GSdx on VS2013
2014-11-08 13:11:07 +01:00
Asmodean
df0a9c4683
Some small fixes, that I noticed.
2014-11-06 10:56:33 +00:00
Asmodean
937e475169
[Post-Processing] Update GSdx FX effect suite to latest version.
2014-11-03 07:15:34 +00:00
Gregory Hainaut
f25e056914
gsdx: enable AVX with GCC
...
* Use overloaded function instead of specialized template
=> see http://stackoverflow.com/questions/3052579/explicit-specialization-in-non-namespace-scope
* replace _mm256_slli_si128 by _mm256_slli_si256
I hope they're equivalent. I didn't find any info on _mm256_slli_si128,
however srl use _mm256_srli_si256
2014-10-26 14:47:35 +01:00
Gregory Hainaut
679fa65b84
cmake: By default optimize for current arch
...
Note: it requires GCC 4.7. Otherwise use -DDISABLE_ADVANCE_SIMD=OFF to restore
previous behavior. It will impact Ubuntu precise (12.04)
2014-10-26 14:47:35 +01:00
Tom Burnett
a1a1c7d0fb
Removed svn rev inc file
2014-10-12 01:43:30 -07:00
Tom Burnett
1f734a69a0
Small VS2013 fixes
2014-10-12 01:40:40 -07:00
Gregory Hainaut
fa3db52cf7
partially revert commit 9fd2f3dd8a
...
No need to add Linux sillyness in Windows file... (Hopefully close #323 )
2014-10-04 11:33:34 +02:00
Gregory Hainaut
6fe9ee387d
gsdx-ogl: optimize the PS cb cache
...
* Don't use the stack
* Don't compare MinMax parameter (depends of others)
* Don't store not-compared parameter in the cache (HalfTexel/MinMax)
+0.3fps/46fps (well better than nothing)
2014-10-02 20:44:22 +02:00
Gregory Hainaut
a573ce185c
gsdx-ogl: mark GL_EXT_shader_io_blocks as mandatory for GLES
2014-10-02 20:44:22 +02:00
Gregory Hainaut
ccc1137e12
gsdx-ogl: merge the two vertex buffer format
...
* Only a single VAO
=> Format is set once
=> Only a single bind at startup
=> GSVertexBufferStateOGL is nearly useless
=> barely faster but better than nothing :)
2014-10-02 20:44:22 +02:00
Gregory Hainaut
10c7be8c50
gsdx-ogl: Use 32B strides for all VBO
2014-10-02 20:44:22 +02:00
Gregory Hainaut
d37cc8e1e7
gsdx-ogl: GL_ARB_shading_language_420pack is now mandatory
...
All API/drivers support it so time to remove the fallback.
2014-10-02 20:44:22 +02:00
Adam Hirst
b98e53e059
Minor spelling/punctuation fixes in SPU2-X
2014-10-02 12:35:13 +02:00
Gregory Hainaut
79e8a912cd
gsdx-ogl: keep the draw buffer enabled by default
...
Note: Only DATE requires to disable the draw buffer
2014-09-30 22:18:20 +02:00
Gregory Hainaut
f46e8cc6ac
gsdx-ogl: bump base requirement to 3.3
...
A couple of fallbacks were introduced for the Mesa driver that only support 3.0
DSA will require a recent Mesa which already support GL3.3
Require at least SandyBridge for Intel GPU
2014-09-30 22:18:20 +02:00
Gregory Hainaut
594f6c33a2
gsdx-ogl-ES: require GL_EXT_shader_io_blocks + GLES3.1
...
Allow to use same shader interface for all API
Note: on the GL API it will require GL3.3 (see next commit)
2014-09-30 22:18:01 +02:00
Gregory Hainaut
1c501047f5
gsdx-ogl: refresh the linux gui with latest extension
2014-09-28 12:23:44 +02:00
Gregory Hainaut
8833afc2fa
gsdx-ogl: drop GL_ARB_multi_bind
...
It will be replaced by DSA so let's reduce the complexity of opengl
2014-09-28 12:23:44 +02:00
Gregory Hainaut
fa43018d10
gsdx-ogl: no DSA isn't mandatory yet...
2014-09-28 12:11:22 +02:00
Gregory Hainaut
1e86e3cb08
gsdx-ogl: rework callback debug
...
* use DebugOutputToFile as a callback of gl error. Add a breakpoint to
find the culprit GL call
* use string instead of char[n]
Note: CheckDebugLog is potentially useless now
2014-09-28 12:00:34 +02:00
Gregory Hainaut
b7601a9add
gsdx-ogl: Enable various GL4+ extensions
...
* GL_ARB_clip_control: reduce z fighting
* GL_ARB_clear_texture: no real speed gain (but improve code quality)
* GL_ARB_bindless_texture: +1fps (if you're CPU limited)
2014-09-28 12:00:34 +02:00
Gregory Hainaut
9d8d702aa6
gsdx-ogl: drop GL_NV_depth_clamp extension
...
superseeded by GL_ARB_clip_control
2014-09-28 12:00:34 +02:00
Gregory Hainaut
4659184cc1
gsdx-ogl: add support of clip_control (depth only)
...
* replace the [-1;1] depth range of openGL with the DX range [0;1].
2014-09-28 12:00:34 +02:00
Gregory Hainaut
104688e3ee
gsdx-ogl: fix ARB_bindless support
2014-09-28 12:00:34 +02:00
Gregory Hainaut
cc24da128c
gsdx-ogl: fix for gl_clear_texture
...
Note: Disabled for depth_stencil texture (I'm not sure we can split the two)
2014-09-28 12:00:34 +02:00
Gregory Hainaut
d720cc16a6
gsdx-ogl: gl4.5: add plumbering to support direct_state_access and clip_control
2014-09-28 12:00:33 +02:00
Gregory Hainaut
5b3f031654
cmake: fix commit f3a50a01a7
...
* link common with c lib (required for gold linker)
* fix the macro to properly set the library variable
=> use the variable instead to hardcoded value
2014-09-24 09:02:56 +02:00
Gregory Hainaut
58a8683d7d
gsdx-ogl: disable texture compare mode
...
It seems to be used for depth texture
2014-09-22 09:27:34 +02:00
Gregory Hainaut
d51f008c72
gsdx: openglES fix
...
* require a 3.1 context
* unattach texture of the fbo when they're not used
(avoid to have a texture and depth_stencil with different size)
Note: except minor shader bug it works on Nvidia 340.23.01
2014-09-22 09:27:31 +02:00
Johannes Obermayr
9fd2f3dd8a
Don't use build date on openSUSE.
...
Fixes RPMLINT warning:
pcsx2.i586: W: file-contains-date-and-time /usr/bin/pcsx2
Your file uses __DATE and __TIME__ this causes the package to rebuild when not needed
2014-09-17 22:37:34 +02:00
Johannes Obermayr
7b1d3ba7ea
Do commits 2bc2047
and f287754
the right way ...
2014-09-16 19:11:11 +02:00
Johannes Obermayr
2bc2047770
cmake: Fix RPATH/RUNPATH issue with openSuse wxWidgets libdir.
...
Gregory: Add an if clause to only change the rpath on openSuse
For me it doesn't follow the FHS => http://www.tldp.org/HOWTO/HighQuality-Apps-HOWTO/fhs.html
2014-09-14 13:12:26 +02:00
ramapcsx2
98d22f8b2e
Merge pull request #215 from xsacha/memcpy
...
Remove some slow, redundant memcpy implementations: memcpy_const/memcpy_...
2014-09-12 19:57:57 +02:00
Gregory Hainaut
2d4b6273f0
Merge pull request #276 from xsacha/defs-cleanup
...
pcsx2: require C99 standard for stdint
2014-09-12 19:24:08 +02:00
uyjulian
f3a50a01a7
cmake: Use previous macros in CMakeLists.txt files
...
Gregory: add a c lib for zzogl-pg-cg replayer
2014-09-05 20:16:23 +02:00
Sacha
1d116cc23b
Remove memcpy_amd usages from plugins. No more custom implementations in plugins.
2014-08-27 13:50:55 +10:00
Sacha
ad3b76c4d8
Remove all custom memcpy usage from core pcsx2 and remove memcpy_fast from plugins.
2014-08-27 13:45:23 +10:00
Sacha
90e59b2704
Clean up the type defines in pcsx2.
...
The non-stdint fallback was not even working which shows that it was never used. No supported platform would not have stdint anyway.
Remove unused code and do not restrict types to Linux and MSVC. Was there a reason for this?
2014-08-25 16:16:34 +10:00
Matteo Beniamino
15c487e547
GSdx: fixed use of separate shader objects for Intel driver.
2014-08-23 17:09:38 +02:00
Sacha
2ba0b1b76b
Use posix_memalign and _aligned_malloc for alignment. Remove unused code.
2014-08-17 21:03:43 +10:00
Sacha
f542c7232e
Use __builtin_unreachable where possible for non-msvc
2014-08-15 14:43:52 +10:00
Sacha
7568f6f2ec
Remove deprecated jASSUME from pcsx2 core. It is still used in some plugins
2014-08-15 14:32:56 +10:00
David Quintana
1facc8efbc
Merge pull request #225 from lioncash/ghz-macro
...
cdvdGigaherz: Remove an unnecessary macro
2014-08-15 02:10:32 +02:00
Lioncash
b2d8e7137f
cdvdGigaherz: Remove an unnecessary macro define
2014-08-14 20:07:10 -04:00
Pseudonym
cb2593f2bb
Merge pull request #210 from xsacha:plugin_cleanup
...
Some cleanup to improve readability.
2014-08-14 20:37:41 +01:00
Pseudonym
66765d827b
Merged pull request #199 from xsacha/oldcode
...
Remove some horrible old code.
2014-08-14 19:12:19 +01:00
Sacha
2ae3dd970a
Fix case of 'soundtouch' instead of creating a symlink as a workaround.
2014-08-13 18:54:31 +10:00
Sacha
a3bc6a73a3
Remove some horrible old code.
...
Remove an assert define and instead use the static_assert that all compilers provide.
As an added bonus, assert messages\!
2014-08-13 13:55:32 +10:00
Sacha
9dcaaedf06
Some cleanup to improve readability.
...
Remove old compiler hacks that are no longer needed.
Fix up some spacing and comments that hid code.
Fix a critical bug in deprecated plugin peopsSPU.
2014-08-13 13:05:33 +10:00
bositman
77599bec1c
Added Lord of the Rings The Two Towers (IT) CRC
...
As seen here (SLES 51255):
http://forums.pcsx2.net/Thread-GSdx?pid=392166#pid392166
2014-08-07 13:01:54 +03:00
Gregory Hainaut
a5f54b5ec1
Merge pull request #185 from lioncash/leak
...
zzogl: Fix a few missing fcloses
2014-08-07 09:08:17 +02:00
Ryan Houdek
3d37a6ce27
Removes the usage of __LINUX__ define
...
This is defined and set it a ton of different places.
It's checked in a whole lot more
Instead just use __linux__ like a real project should
2014-08-03 13:20:36 -05:00
Gregory Hainaut
82c7bcd761
wx3.0: compilation fix for arch linux
...
* Manually cast WxGetTranslation
* Accept string as format parameter of pxWindowTextWriter
* Manually convert wxString to wide string
Note: Wx setup.h is not the same between Debian and Arch. Unfortunately it
generated various compilations errors on wx code.
Close issue #172
2014-08-03 14:54:44 +02:00
Lioncash
0a35a2fac9
Fix missing fclose calls in ZZoglCreate.cpp
2014-07-31 19:08:56 -04:00
Lioncash
a1d2c85d88
ZZOgl: Fix an early return in ZZoglShadersGLSL4
2014-07-31 19:00:53 -04:00
sudonim1
93374facb8
Merge pull request #179 from moshekaplan/patch-7
...
Cleanup leaking memory and filehandles
2014-07-31 13:37:22 +01:00
Moshe Kaplan
d555656a41
Cleanup leaking memory and filehandles
2014-07-30 22:52:34 -04:00
Moshe Kaplan
af58734826
Fix Ztable memory leaks
2014-07-30 22:09:25 -04:00
sudonim1
904f5de1ea
Merge pull request #144 from Sonicadvance1/fix-BitScanFoward
...
Fix the BitScanForward implementations for x86_64.
2014-07-30 18:19:19 +01:00
sudonim1
5415fb361f
Merge pull request #166 from moshekaplan/patch-2
...
Prevent filehandle from leaking
2014-07-30 17:42:01 +01:00
sudonim1
34010c5605
Merge pull request #167 from moshekaplan/patch-5
...
Avoid leaking `iso` structures
2014-07-30 13:36:24 +01:00
Moshe Kaplan
e1dbdce91e
Update libiso.cpp
...
Oops, accidentally caused a use-after-free
2014-07-29 12:22:44 -04:00
Pseudonym
28227ea4c4
Merge pull request #123 from Sonicadvance1/fix_interlockedbittestandresetset
...
Fixes interlockedbittestandreset/set in intrin_x86.h
2014-07-29 14:20:13 +01:00
Moshe Kaplan
1e951605fb
Avoid leaking `iso` structures
2014-07-23 13:58:17 -04:00
Moshe Kaplan
82dd025860
Prevent filehandle from leaking
2014-07-23 13:51:22 -04:00
Gregory Hainaut
8a43789db5
zzogl/spu2x: clang warning fix
...
Nothing critical
2014-07-20 22:07:02 +02:00
Gregory Hainaut
ef0e3fe6c6
gsdx: disable separate shader on radeon driver (linux)
2014-07-19 14:02:37 +02:00
David Quintana
cea03d91e4
Merge pull request #141 from lioncash/cdvdghz
...
cdvdGigaherz: Fix a few things
2014-07-16 20:50:40 +02:00
sudonim1
320d22f2a7
Merge pull request #146 from Sonicadvance1/GSdx-x86_64-fixes
...
Fixes for getting GSdx to compile on x86_64
2014-07-16 19:29:58 +01:00
Ryan Houdek
8ff0f9e869
Update GSSetupPrimCodeGenerator for x86_64.
...
offsetof requires the expression to be constant to get the offset.
Use a combination of offsetof + sizeof to get the correct offset.
2014-07-16 13:21:45 -05:00
Ryan Houdek
74dd2553a6
Fix function definitions in GSDrawScanlineCodeGenerator.x64
...
These have been changed since this was last compiled.
Also removes a #error and drops it to a #warning for now while development is in process.
2014-07-16 12:13:09 -05:00
sudonim1
06dfc4e6ef
Merge pull request #118 from lioncash/zgs
...
Minor changes to ZeroGS
2014-07-16 18:08:12 +01:00
ramapcsx2
d12e5104e2
Merge pull request #149 from Kingcom/LilyPad
...
Allow hotplugging XInput devices in LilyPad
2014-07-16 18:55:10 +02:00
ramapcsx2
cb9fc6fa3e
Merge pull request #100 from lioncash/duplicate-condition
...
ZeroGS: Remove a duplicate condition in RenderCRTC
2014-07-16 18:33:15 +02:00
Kingcom
ce4dc4ae21
Allow hotplugging XInput devices in LilyPad
2014-07-16 11:18:20 +02:00
Ryan Houdek
33adabb035
Fix some _M_AMD64 checks in GSdx.
...
In the future these will be _M_X86_64, but for now this won't be the case.
2014-07-15 18:21:03 -05:00
Ryan Houdek
616500b8f3
Disabled preferred stack boundary on x86_64in GSdx.
2014-07-15 18:18:59 -05:00
Ryan Houdek
2f98f5a6d6
Fix a pointer cast on x86_64 in zzogl.
2014-07-15 18:16:14 -05:00
Ryan Houdek
2a6656050c
Fix the BitScanForward implementations for x86_64.
2014-07-15 18:13:32 -05:00
Lioncash
54c21b30c9
cdvdGigaherz: Fix the seek function in FileStream.
...
Prior to this, it would have ignored any kind of reference position.
2014-07-15 17:28:13 -04:00
Lioncash
c2e96a081f
cdvdGigaherz: Use booleans instead of ints to represent conditionals in CDVD.cpp
2014-07-15 17:06:49 -04:00
sudonim1
d3ebdae159
Merge pull request #131 from lioncash/gsdx-wat
...
GSDX: Replace an FLT_MAX with the appropriate ULONG_MAX
2014-07-15 12:04:14 +01:00
sudonim1
1a483a7d88
Merge pull request #121 from lioncash/zzogl-fix
...
ZZOGL: Fix an incorrect formatting argument in the Win32 config.
2014-07-15 11:22:45 +01:00
David Quintana
1736c1e32e
Merge pull request #125 from lioncash/cdghz
...
cdvdGigaherz: Simplify the loops within readLine and readLineW
2014-07-15 11:53:36 +02:00
David Quintana
764ca25f8d
Merge pull request #120 from lioncash/dev9ghzdrk
...
DEV9ghzdrk: Clarify precedence for a bitwise AND in smap.
2014-07-15 11:53:27 +02:00
David Quintana
79ee48d91b
Merge pull request #129 from lioncash/spu2x-warnings
...
SPU2-X: Fix some signed/unsigned mismatch warnings.
2014-07-15 11:52:02 +02:00
David Quintana
e2f4fc245a
Merge pull request #127 from lioncash/dev9-warnings
...
dev9ghzdrk: Fix a few warnings.
2014-07-15 11:49:37 +02:00
Lioncash
637c99a362
GSDX: Replace an FLT_MAX with the appropriate ULONG_MAX
2014-07-15 01:47:26 -04:00
Lioncash
0a825a1aa4
SPU2-X: Fix some signed/unsigned mismatch warnings.
2014-07-15 00:09:48 -04:00
Lioncash
b5f805fc6c
dev9ghzdrk: Fix a few warnings.
...
Mostly unsigned mismatches.
2014-07-14 23:41:51 -04:00
Lioncash
55c8633f9a
dev9ghzdrk: Remove unreachable code.
...
Same as what is in the default switch cases
2014-07-14 23:26:31 -04:00
Lioncash
1fa95de554
cdvdGigaherz: Simplify the loops within readLine and readLineW
2014-07-14 22:58:49 -04:00
Ryan Houdek
48d178886e
Fixes interlockedbittestandreset/set in intrin_x86.h
...
This doesn't update the file to the latest version from mingw32 since this is already a custom header stripped from mingw32.
This also fixes the functions for x86_64(verified that it still works for both architectures) and also updates the version inside of GSdx.
Also removes a comment in the GSdx header saying that these functions are broken since they no longer are.
2014-07-14 21:20:31 -05:00
Lioncash
b0a0508c85
ZZOGL: Fix an incorrect formatting argument in the Win32 config.
...
the _u32 should be passed, not the direct union itself.
2014-07-14 21:31:44 -04:00
Lioncash
69ecdd3236
DEV9ghzdrk: Clarify precedence for a bitwise and in smap.
2014-07-14 20:49:03 -04:00
sudonim1
9a950cdca6
Merge pull request #119 from lioncash/spu2x
...
SPU2-X: Fix float truncation warnings
2014-07-15 01:31:44 +01:00
Lioncash
7ec3cf46d6
SPU2-X: Fix float truncation warnings
2014-07-14 20:26:38 -04:00
Lioncash
ba0d3d1a6a
ZeroGS: Add a missing formatter to a sprintf call
2014-07-14 18:02:22 -04:00
Lioncash
b9ff3b6c81
ZeroGS: Explicitly convert the LPVOID buffer to a const char*
...
Also make the failure case for one of these log calls a DEBUG_LOG instead
of a printf.
2014-07-14 18:01:50 -04:00
Lioncash
d648227e3d
cdvdGigaherz: Get rid of a magic constant in TocStuff
2014-07-14 16:11:51 -04:00
Lioncash
3d0094b611
cdvdGigaherz: Fix some minor tab/space mismatches in TocStuff
2014-07-14 16:11:01 -04:00
Forrest McDonald
b24d4cce8d
Clang doesn't support some flags that GCC does, so conditionally check the compiler and add them if we are doing a GCC build
2014-07-14 13:54:31 +02:00
Gregory Hainaut
c60fefa1a6
gcc: support address sanitizer
2014-07-12 19:57:26 +02:00
Gregory Hainaut
47bf88ed3f
gsdx: miss break / inline function in header
2014-07-12 16:00:10 +02:00
Gregory Hainaut
492d67c6e8
spu2x: use std::abs (c abs support only integer)
2014-07-12 15:59:29 +02:00
Gregory Hainaut
f401f817ed
cmake: sdl opt typo + clean warning management
...
Add back a lots of warning in the core!
2014-07-12 12:59:23 +02:00
Lioncash
cb5b265dcd
ZeroGS: Remove a duplicate condition in RenderCRTC
2014-07-05 14:00:00 -04:00
Lioncash
76796c76cd
ZeroGS: Fix a sprintf typo in GSopen.
...
This 1000 millisecond specifier was intended for the AddMessage call.
2014-07-04 21:50:18 -04:00
Gregory Hainaut
2084ead56c
spu2x: linux port of Giga lastest update
...
=> Advanced (per-channel) Volume Adjustment AKA Room Correction
windows: update CfgReadFloat to really return a float
2014-06-28 11:23:44 +02:00
Gregory Hainaut
f2e50d4ffd
Merge branch 'master' of git://github.com/gigaherz/pcsx2 into gigaherz-master
2014-06-28 11:00:19 +02:00
Gregory Hainaut
9ac9307b44
gsdx: try to protect more code when togging f9
...
deassert gsopen_done before delete the gs object. Compiler and CPU will
reordonate the store (or not because it is a global variable). Probably not
perfect but better.
Got a crash on GSKeyEvent which I guess wasn't thread safe. So let's ensure
gs is open.
2014-06-13 23:32:50 +02:00
Gregory Hainaut
cdba010794
zzogl: kill a couple of gcc warning
2014-06-13 23:04:21 +02:00
Gregory Hainaut
eb947dc325
pcsx2:gsdx: support of cross-platform (C11) aligned_malloc
2014-06-13 23:04:21 +02:00
bositman
5c42ced8d3
Update GSCrc.cpp
...
Missed comma, thanks yxmline
2014-06-10 10:28:52 +03:00
Blackbird88
cd3cfb27de
Update GSCrc.cpp
2014-06-09 18:34:23 +02:00
Blackbird88
f7d35ff619
Corrected MGS3 comment, because OCD also new CRC
...
There is no such thing as MGS3 Substance only Subsistence. Substance is MGS2 :P
Also this new CRC is US Disc 2 of Subsistence. The blue stripes should be fixed now I guess.
2014-06-09 18:23:29 +02:00
bositman
96d3b41989
Misspell fix for someone special at the forum :P
2014-06-06 09:53:24 +03:00
Coldbird
002dc80d48
Fixing DEV9 Adapter Detection
2014-06-05 12:33:43 +02:00
ramapcsx2
53e2824937
cdvdGigaherz: Some improvements to smooth out the "experience" when playing from CDs. A keepalive thread polls the drive every 30 seconds to prevent it from spinning down. When the plugin starts, it now tries to limit the spindle speed so it is less noisy and doesn't wear out as much (32x speed for CD games, 8x speed for DVD games).
...
Version bump to 0.9.
2014-05-26 14:28:56 +02:00
Peter Tissen
ad9ec44228
prevent null dereference if no network device is selected in dev9
2014-05-24 22:12:26 +02:00
gigaherz
1fb3de2960
cdvdGigaherz: Change the order in which the different reading modes are attempted. Seems to fix some CD-Rom games. While at it, renamed a rude variable with a better name. ;P
2014-05-16 22:36:16 +02:00
gigaherz
654343f875
Advanced (per-channel) Volume Adjustment AKA Room Correction (Windows-only, need someone to fix the linux counterpart)
2014-05-11 17:26:00 +02:00
Gregory Hainaut
0bf7a35a53
pcsx2: improve the GS read fifo API
...
1/ initReadFifo will be first called on the GS thread
(openGL can only be done on the GS thread)
2/ readFifo will be called on the EE thread. It is not safe too access eeMem from GS
because of memory is virtual
Fix "recent" regression (crash) on Kingdom heart and others game too.
v2: add a len check on GSState::InitReadFIFO
2014-05-06 20:28:18 +02:00
Gregory Hainaut
3a46634f4a
gcc: fix a couple of gcc warning (sign compare)
...
My gosh, they're like rabbit :p
2014-05-06 09:25:00 +02:00
Gregory Hainaut
b7536ca94b
zzogl: gcc warning fix
...
Let's hope variadic macro work on visual
cmake: reenable various warning. With previous fixes it just a matter of a couple of warnings
2014-05-03 10:37:58 +02:00
Gregory Hainaut
58077c63a7
gcc-warning: check c function return. Print error when bad.
...
v2: properly check return code of fread/getcwd function
2014-05-03 10:32:05 +02:00
Gregory Hainaut
22b65489e2
gcc warning: constify const string
2014-05-03 10:18:27 +02:00
Gregory Hainaut
2816188c83
zzogl: bad function declaration
2014-05-03 10:18:27 +02:00
Gregory Hainaut
4d78b6be31
pcsx2/plugin: sign compare mismatch extra
2014-05-03 10:18:27 +02:00
Gregory Hainaut
5087d13de8
gsdx: remove/comment unused variable
2014-05-03 10:18:27 +02:00
Gregory Hainaut
dd8666036c
pcsx2: sign compare mismatch 3/3
2014-05-03 10:18:26 +02:00
Gregory Hainaut
27a4bc5a39
pcsx2: sign compare mismatch 2/3
2014-05-03 10:18:26 +02:00
bositman
82f347403a
Added Metal Gear Solid 3 Subsistence Spanish
...
to GSdx CRC hacks.
Refer here: http://forums.pcsx2.net/Thread-Metal-Gear-Solid-3-SLES-820-48-not-included-to-GSdx-fix
2014-04-17 13:53:06 +03:00
Avi Halachmi (:avih)
916d7502c8
Lilypad: Better focus/capture/uncapture handling.
...
1. After ALT-Tab to another window and back, now it accepts PCSX2
shortcuts properly (e.g. Esc or F6 etc) - focus changes were not
always recognized before.
2. If Lilypad is set to capture mouse, now it releases it on Escape. This
part is a small hack because the code looks as if it should handle it,
but in practice doesn't. This adds explicit uncapture on Escape.
2014-04-16 18:39:07 +03:00
Gregory Hainaut
c2b78c6fdf
license: again not yet perfect but much better
...
Remove old tsvn of zzogl
Add various header
add "is in public domain" for license in public domain so Debian's script catch it
2014-04-13 10:41:24 +02:00
Gregory Hainaut
c260decf58
gsdx: add bsd3 clause on gsdx xbyak files
2014-04-13 10:06:52 +02:00
Gregory Hainaut
75c64e12aa
license: add missing header
...
Still miss lots of copyright header but we are better
2014-04-12 19:42:41 +02:00
Gregory Hainaut
ea25d12405
gsdx-gles: nvidia driver quick trial (only GLES3.0)
...
* Fix to create a 3.0 GLES context
* set a default precision to fix most of shader compilation issue
* Crash later because of GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT
=> need to test opensource driver
2014-04-12 12:40:23 +02:00
Gregory Hainaut
37b1d3ae42
codeblock: remove build file => linux is cmake only
...
They are completely out-dated. And nobody have time to update them.
2014-04-11 09:18:31 +02:00
Gregory Hainaut
86895cbf45
pcsx2 license: add missing nice header on various files
...
Remains 3 files that I don't know the source
pcsx2/windows/DwmSetup.cpp: *No copyright* UNKNOWN
pcsx2/windows/SamplProf.cpp: *No copyright* UNKNOWN
pcsx2/windows/VCprojects/IopSif.cpp: *No copyright* UNKNOWN
Remains 1 files in common that I don't know the source
common/include/comptr.h: *No copyright* UNKNOWN
Remains too much files in plugins that I don't know the source :(
2014-04-11 09:18:30 +02:00
Gregory Hainaut
0d45e6d70e
gsdx-ogl: avoid to send constant to the GPU
...
It was a waste of bandwith
2014-04-06 10:44:40 +02:00
gigaherz
4362cc0e9a
Fixed a few references to Googlecode, and a few mentions of the "svn" word in comments.
...
Other instances of "svn" in filenames and such remain, but they are not high priority and I didn't want to mess with updating all the project systems.
Closes #19 .
2014-04-05 18:38:41 +02:00
Gregory Hainaut
390245806a
cmake: sed /PROJECT_SOURCE_DIR/CMAKE_SOURCE_DIR/
...
The former depends on the project command. Whereas the latter is the true absolute path
of the project
2014-03-30 16:36:02 +02:00
Gregory Hainaut
b020bd76c6
gsdx-ogl: restore gles build
...
Add the --gles build option to the linux main script
Ifdef all gl code not supported on gles3 (note some will be reenabled for gles3.1)
Note: it probably doesn't run anymore. My Nvidia driver doesn't support
yet egl/gles so I can't test it. Feel free to contribute.
2014-03-29 11:55:02 +01:00
Gregory Hainaut
483b5a75e8
gsdx ogl: automatic setup of geometry shader
...
* disable it for gallium Mesa driver
* Re-enable it for Nvidia driver
2014-03-29 10:47:53 +01:00
Gregory Hainaut
4496093cf8
cmake version:
...
Use same version as window based on git
drop subversion code
use lld on onepad
2014-03-25 17:29:47 +01:00
Gregory Hainaut
8b78551b92
gsdx-ogl: improve debugging capabilities
...
allow to print memory transfer usage
Check gl call in dev build
2014-03-25 16:36:29 +01:00
Gregory Hainaut
bde2e3956d
gsdx-ogl: automatic dectection of buffer_storage
2014-03-25 16:36:29 +01:00
Gregory Hainaut
c85ba4c259
gsdx ogl: add buffer_storage for vertex upload
...
A bit slower. Maybe because SubData does the copy in the driver thread. My memcpy is done on
the main thread. I'm not sure it would worth an extra thread to copy vertex data to the GPU
Note: testers are welcome. You need to edit the ini file.
"ogl_vertex_storage=1" <= enable the extension
"ogl_vertex_storage=0" <= disable the extension
Again you need the support of GL_arb_buffer_storage (i.e. not catalyst)
2014-03-25 16:36:29 +01:00
Gregory Hainaut
403518e852
gsdx-ogl: texture management
...
Improve arb_buffer_storage implementation
Try harder to align the texture buffer
Strangely arb_buffer_storage is 3 times slower on my PC (nvidia)
Tester are welcome! Open the ini file
"ogl_texture_storage = 1" <= enable the extension
"ogl_texture_storage = 0" <= disable the extension
Note: you need an opengl 4.4 driver or one that support arb_buffer_storage (i.e. not catalyst)
2014-03-25 16:36:29 +01:00
Gregory Hainaut
41091f8ebf
gsdx ogl: remove multithread hack
...
This hack was used because GSReadFifo was called from the EE thread.
Previous commit move the call to the GSThread.
Hopefully avoid flushing the full GPU contex would improve openGL
performance (at least avoid some hiccups ;) )
Note: newer GSdx ogl won't be compatible with older PCSX2
2014-03-25 16:36:29 +01:00
gigaherz
f7c1b6e060
Git-based versioning.
2014-03-25 13:31:36 +01:00
gregory.hainaut
30d5135fdd
gsdx-ogl: sigh.. this one was hidden :p
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5932 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-03-23 08:25:54 +00:00
gregory.hainaut
192c5d2c4a
gsdx-ogl: one more
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5931 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-03-22 22:00:46 +00:00
gregory.hainaut
6c87673e57
gsdx-ogl: forget a pointer
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5930 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-03-22 21:14:57 +00:00
gregory.hainaut
ba46b25e2f
GSdx-ogl: GL4.1 program shader is optional
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5929 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-03-22 09:08:37 +00:00
gregory.hainaut
d044147698
linux: fix compilation issue with recent Mesa (gentoo)
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5928 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-03-13 17:37:40 +00:00
ramapcsx2.code
c374343ae9
GSdx:
...
Crashfix for a weird GIF_FLG_IMAGE2 situation in Wallace and Gromit Project Zoo. Needs further investigation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5912 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-22 20:04:32 +00:00
gregory.hainaut
5af621056a
gsdx ogl: new option for free driver
...
reduce_gl_requirement_for_free_driver => set it to 1 to only required a 3.0 context (you still required the good extensions)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5910 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-22 16:12:42 +00:00
gigaherz
888f0a27da
Remove vs2008 project files, since they have become outdated, and complicated to maintain.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5902 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-15 18:24:06 +00:00
ramapcsx2.code
916537b0f8
These might be needed, dunno.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5899 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-12 12:52:03 +00:00
ramapcsx2.code
65152066ca
Just a bit of GSdx debugging.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5898 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-11 21:47:43 +00:00
Asmodean.pcsx2
0651e45460
GSdx: Just some cleaning.
...
Reformatted fx files that were causing issues on certain text editors. They should now display correctly in those editors.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5897 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-11 04:27:32 +00:00
Asmodean.pcsx2
7d96af950e
GSdx: A few small post-processing changes, to accommodate future updates.
...
Also removed the fallback recovery ps, and replaced the compile fail catch to a simple console print. Which I think is safer, and faster.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5894 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-09 01:01:41 +00:00
refraction
82d5194a4f
SPU2-X: Just fixing up a small error i came across while looking into something else. Nothing to see here.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5893 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-08 17:52:33 +00:00
gregory.hainaut
1922598f0f
the "don't let users shoot themself in the foot" commit
...
UserHacks_AlphaStencil will take precedence on override_GL_ARB_shader_image_load_store
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5891 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-08 11:22:51 +00:00
gregory.hainaut
3d7b86660a
gsdx ogl: Enable by default advance DATE effect on nvidia (GL4 GPU)
...
Note: DATE is used for shadows (persona 3) and others effect
You can disable it when you disable gl image extension (override_GL_ARB_shader_image_load_store = 0)
You can also enable it on AMD too (set it to 1 this time) but no guarantee.
If you feel the extension is too slow, you can try disable some gl barrier (aka "damn the torpedo full steam ahead!").
It can be done with the option UserHacks_DateGL4 = 1. Otherwise just disable the extension.
Note: don't enable UserHacks_AlphaStencil in the same time. GL_ARB_shader_image_load_store is an alternative implementation.
Enabling both in the same time will lead to undefined (well surely wrong) behavior.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5890 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-08 11:05:26 +00:00
gregory.hainaut
384c0c12ea
gsdx ogl:
...
* properly detect gl nv depth extension
* Always show the hack on the gui. Add a new hack option for DATE (gl4.2) only
* Save the scan mode on linux too (f7)
* hopefully fix some crash on some drivers... (ensure aligment 256 bits alignment, and if not use std memcpy)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5888 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-07 19:53:01 +00:00
refraction
eafadaf15a
GSDX: Fix up the GUI that displays during the First Run Wizard
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5884 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-05 22:42:02 +00:00
Asmodean.pcsx2
ea06e2e403
GSdx: Dialog label fix.
...
Extra rendering threads label text was getting cut off early.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5882 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-05 00:23:02 +00:00
Asmodean.pcsx2
11a15ca58a
GSdx: Just tidying up a few last things, to wrap up the AF changes.
...
Also disabled the gsdx AF options for the OGL renderer (because it's not implemented for that yet).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5881 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-04 21:42:43 +00:00
Asmodean.pcsx2
42b879e6b8
GSdx: Anisotropic Filtering.
...
Fixes a small oversight on my part. Which was setting the maximum anisotropy to (0,1,2,3,4) respectively, instead of (1,2,4,8,16). So when you selected x16 for example, you were actually only getting x4 >.>
Corrected now, and you will be getting the full x16 when selected :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5879 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-03 20:06:00 +00:00
Asmodean.pcsx2
b8f8459275
GSdx: Anisotropic Filtering.
...
Adds anisotropic texture filtering (1x-16x) to the hardware settings. Enhances the visual quality of textures that are at oblique viewing angles.
Anisotropic filtering is automatically disabled if: 8-bit textures are enabled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5878 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-03 16:58:11 +00:00
refraction
3bc5779f68
GSDX: Just correcting some typo's
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5875 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-02 22:46:06 +00:00
Asmodean.pcsx2
644f0e61ba
GSdx: Store the user selected F7 shader to the ini, as TVShader.
...
As before: use the hotkey(f7) to switch between them. It will now save the chosen scanline effect, instead of always defaulting to disabled, on load.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5874 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-02 20:40:28 +00:00
Asmodean.pcsx2
02afca3bb6
GSdx: Just some small post processing cleanup changes, should lower the FXAA compiling time on pause/resumes.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5872 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-02 17:50:32 +00:00
gregory.hainaut
6cf75e086b
gsdx ogl: Only enable advance DATE when user request it
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5864 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-01 18:46:18 +00:00
gregory.hainaut
c0558c00e7
gsdx ogl:
...
* gui refresh
+ Use some tab to reduce heigth for small screen
+ Add logz option
+ remove broken/experimental keyword. GSdx ogl is not too bad ;)
* autodetect GL_NV_depth_buffer_float
Linux tester you are welcome!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5862 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-01 11:11:14 +00:00
gregory.hainaut
6f3326a9a4
gsdx ogl: Fog hide this typo :p
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5861 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-02-01 10:14:01 +00:00
gregory.hainaut
84895eadd9
gsdx ogl: correct most of Z-depth issue
...
Best setting if you driver support GL_NV_depth_buffer_float => GL_NV_Depth = 1 & logz = 0
Otherwise => GL_NV_Depth = 0 & logz = 1
Explanation of the bug:
Dx z position ranges from 0.0f to 1.0f (FS ranges 0.0f to 1.0f)
GL z Position ranges from -1.0f to 1.0f (FS ranges 0.0f to 1.0f)
Why it sucks:
GS small depth value will be "mapped" to -1.0f. In others all small values will be 1.0f! Terrible lost
of accuraccy.
The GL_NV_depth_buffer_float extension allow to set the near plane as -1.0f.
So
"GL z Position ranges from -1.0f to 1.0f (FS ranges 0.0f to 1.0f)"
will become
"GL z Position ranges from -1.0f to 1.0f (FS ranges -1.0f to 1.0f)"
and therefore
"z posision [0.0f;1.0f] will map to FS [0.0f;1.0f]" as DX
Yes we just get back all precision lost previously :)
However you need hardware (intel?) and driver support (free driver?/gles?) :(
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5860 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-31 21:30:54 +00:00
gregory.hainaut
48356e31b8
linux:
...
* use same path as game index db for cheats and cheats_ws
* install the new cheat zip file on cmake and debian installer
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5850 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-26 18:00:14 +00:00
refraction
5b14ca0fb9
GSDX: Clear up all compiler warnings. No changes to emulation.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5840 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-26 00:58:21 +00:00
ramapcsx2.code
d89d02a59f
Refinement of the last patch.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5835 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 19:53:12 +00:00
ramapcsx2.code
2ba52ebf3e
GSdx:
...
This fixes the crashes on F9 for me. We don't want to call GSgetTitleInfo2() when GSOpen() isn't finished yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5834 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 19:36:45 +00:00
sudonim1@gmail.com
7fce5709d4
GSDX: Forgot to remove a bit of cruft in the last rev.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5833 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 19:17:00 +00:00
sudonim1@gmail.com
d6457e9983
GSDX: Fixed the allocation checks in the previous couple of revs.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5832 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 19:14:28 +00:00
ramapcsx2.code
ab1f4f99af
Small round of patches for various issues, #2 .
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5831 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 15:53:31 +00:00
ramapcsx2.code
b99aa05cbf
Small round of patches for various issues.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5830 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 14:25:48 +00:00
ramapcsx2.code
72f7b70f7b
SPU2-X:
...
WinXP should be exempted from Portaudio as the default for now.
It has a large latency with DirectSound compared to direct use and XA2 isn't available at all.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5823 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 17:03:50 +00:00
gigaherz
01daa0b6fd
Change the vs2012 project files to use the v110_xp platform toolset, and the vs2013 project files to use the v120_xp platform toolset, so that the resulting executables can be run in Windows XP/2003.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5822 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 15:30:34 +00:00
ramapcsx2.code
992a453a68
SPU2-X:
...
The preferred audio output module is PortAudio, so making it the default under Windows now (it is already on Linux).
It will use wasapi mode with the default sound device by default, both are configurable though.
This setup gives us better latency and a higher time stretch polling frequency, resulting in better quality overall.
With this we can also lower the main latency default from 150ms to now 100ms.
There is no error checking for the wasapi mode selection yet, as I don't know how this should be done.
Help would be appreciated (gigaherz!) :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5821 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-23 15:19:43 +00:00
ramapcsx2.code
55eea6317b
GSdx:
...
HTB123 on our forums came up with a hack that removes the broken main character shadow in hardware rendering
in SMT Nocturne.
This should work for all GSdx recognized versions / regions of the game (tested EU and NTSC-U).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5819 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-21 15:27:05 +00:00
gregory.hainaut
c2aa4ff3fd
gsdx ogl:
...
* restore the old fxaa (Asmodeam will be integrated when I got time)
* port the recently added new scanline algo
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5818 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-18 14:46:13 +00:00
ramapcsx2.code
f8264bce2c
GSdx:
...
Last patch regarding FXAA and external shader loading, I hope :)
Changes are here: http://forums.pcsx2.net/Thread-Custom-Shaders-for-GSdx?pid=343285#pid343285
I've included bin\shader.fx and the settings file bin\GSdx_FX_Settings.ini.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5817 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-17 10:17:24 +00:00
ramapcsx2.code
4015db8403
GSdx: Newest scanlines shader looks much nicer this way :)
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5814 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-13 18:23:53 +00:00
ramapcsx2.code
bdf5e650a6
GSdx: Quick workaround for DX9 until the shader is adapted.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5813 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-13 17:48:43 +00:00
ramapcsx2.code
1155dd6e21
GSdx:
...
Add another scanline algorithm, made by pseudonym. This one is pretty fancy, using a cosinus function for generating the dark lines.
It only works on unscaled output, so use software rendering or native resolution for hardware.
It's an effect that works best on 240p converted games (like the SNES titles in Mega Man Collection).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5812 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-12 19:47:49 +00:00
gregory.hainaut
23ae6f0641
the regular copy/past mistake
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5811 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-12 12:35:15 +00:00
gregory.hainaut
2238095a82
gsdx ogl: do the same as previous commit but for ogl ;)
...
* fix the missing auto interlace opt when cycling with hotkey on linux
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5810 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-12 11:38:50 +00:00
ramapcsx2.code
2ac3c47c42
GSdx:
...
Finish up my scanlines attempt. Now the 2 old shaders are back in and all 3 cycle on F7.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5809 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-11 23:17:07 +00:00
gregory.hainaut
f5257b2c3c
gsdx ogl: don't rely on GL_ES builtin (3 differents implementations...). Hopefully fix Linux Intel GPU.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5808 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-11 15:01:13 +00:00
gregory.hainaut
b5cad8bd6a
gsdx ogl linux: use OGL renderer by default otherwise it fallback to unsupported GSDeviceNull which badly crash
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5807 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-10 21:04:04 +00:00
gregory.hainaut
5309dd0e59
zzogl: fix wrong type access
...
cmake: don't strip by default the binary in release mode
gsdx: disable the regeneration of ogl shader
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5806 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-10 20:25:03 +00:00
refraction
cf8912eb2c
Dev9ghzdrk: Take the first 3 bytes of the host MAC for the virtual one, should make it unique for people using xlink or multiple people playing the same game.
...
Hopefully this works anyway ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5805 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 22:39:23 +00:00
sudonim1@gmail.com
53c76b3780
GSDX: Nonsense workaround for VS2010 crash issue. We suspect that memory is getting corrupted but we've failed to find the code responsible. Many different changes result in code that doesn't crash for no obvious reason, this one at least looks vaguely like sane code though.
...
Reverted optimisation flag for VS2010 release target.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5804 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 21:51:42 +00:00
sudonim1@gmail.com
a1f50d4306
GSDX: (FXAA) Treat shader model 4.1 as 4.0 and future shader models as 5 rather than failing to compile.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5803 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 18:32:26 +00:00
refraction
515e268bf5
GSDX: As the Optimization option in VS2010 causes GSDX to crash now, i've disabled it. Whole program optimization is still on and the release will use both (compiled with vs2013). So the SVN can like it or lump it ;p
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5802 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 00:31:46 +00:00
refraction
5aa0a9a94d
GSDX: Modified the FXAA shader loading so Page Up works again. Now loads the shader just in time.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5801 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-07 23:53:30 +00:00
refraction
5e22971db0
GSDX: New shader is quite slow to compile, so lets not compile it unless the user is using it :)
...
-switching between sw/hw modes, resuming emulation speed back to normal.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5799 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-06 22:51:45 +00:00
ramapcsx2.code
a1e387e23e
GSdx: Fix for the DX9 crashing issue, many thanks to Asmodean again! :)
...
(Also sets new defaults with only minor processing, mainly FXAA now)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5798 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-06 18:03:47 +00:00
refraction
76583f5fe5
GSDX: Fix/Hack for NVIDIA stretch issue on drivers > 320.18 with DirectX 11 when using a custom resolution. You can enable it in the HW Hacks section, let me know if there is a game it doesn't fix.
...
Slight adjustments to positions in the GUI also (OCD'd the spacing a little :P)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5796 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-05 23:31:26 +00:00
ramapcsx2.code
20ffe92ee8
GSdx:
...
- FXAA shader replaced by Asmodeans shader suite 'PCSX2 Fx 2.00 Revised'.
This is an entire enhancement suite with many configurable options like FXAA, texture sharpening
or lighting tweaks. Some of the effects are pretty advanced so kudos to him allowing it to be integrated with GSdx! :)
Note that there's no interface for the tweaks yet. Until those are done, the defaults will be used.
Release thread here: http://forums.pcsx2.net/Thread-Custom-Shaders-for-GSdx?pid=334766#pid334766
- Disabled an option from the widescreen patches for SH:Shattered Memories.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5793 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-05 11:24:43 +00:00
gregory.hainaut
33832b4479
gsdx ogl: Intel driver keep the GL_ES macro undefined...
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5785 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-30 14:48:26 +00:00
gregory.hainaut
bdea4837c7
... forget to refresh my patch ...
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5784 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-30 10:15:01 +00:00
gregory.hainaut
4d3de6e911
gsdx linux:
...
* allow to control the gl dectection from the gui (+1 for the user-friendliness ;) )
* disable geometry shader by default on Intel driver
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5783 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-30 09:30:10 +00:00