Commit Graph

1765 Commits

Author SHA1 Message Date
sudonim1@gmail.com 0e9a4c1663 GSDX: Missed this in d3d9 code while fiddling with the shader. Can't be bothered to do the maths to determine whether doing this twice would have a visible effect.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5301 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-17 17:49:50 +00:00
sudonim1@gmail.com a617a6c983 GSDX: partially revert texture cache changes for now. Compat probably back to normal, some glitchy textures are probably differently glitchy, the other changes might improve some games, performance probably much the same as ever.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5300 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-17 14:33:34 +00:00
sudonim1@gmail.com 14acb81553 GSDX: CT32 -> T8H, need to use a 32 bit D3D format for the texture so that they have compatible D3D types for the copy (don't have to if using StretchRect but might as well).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5299 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-17 14:07:03 +00:00
avihal 999ff5c457 GSdx: Add GUI for disabling all CRC hacks (for testing purposes only, disabled by default). The new checkbox is at the "HW Hacks" section, and is only relevant when the global "Enable HW Hacks" box is checked.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5294 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-13 23:53:08 +00:00
sudonim1@gmail.com 1ed80f320e GSDX: Clear Target::m_valid after a full Read() for performance (and accuracy?) Probably doesn't match the original intent but it matches the current usage.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5293 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-13 18:14:58 +00:00
sudonim1@gmail.com 6bb9339223 GSDX: (New bug?) If "8 bit textures" is disabled format conversion has already happened and we need PS_FMT=0 in the shader for indexed textures.
GSDX: (Old bug) When looking up a texture in the cache, the check didn't take into account CLUT formats, nor did it skip this check when "8 bit textures" is enabled.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5292 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-13 17:44:24 +00:00
sudonim1@gmail.com 0bf64fdffd GSDX: fixed an oversight in my shader change gregory caught which removed alpha expansion for the direct sampling case, should probably fix the remaining bugs. Also set the texture sampler to point sampling when the shader will be performing its own bilinear filtering (effect on games unknown but should be an improvement).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5291 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-13 15:36:10 +00:00
gregory.hainaut b8b451340c zzogl: use the EXT version of fbo (fix the build on windows)
gsdx:
* add some parenthesis to shup up very verbose gcc warning
* adapt ogl to latest sudonim change


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5290 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-13 10:43:04 +00:00
gregory.hainaut 3b22f0fb0c zzogl glsl4:
* properly delete program and vertex array. Avoid a crash on plugin reload
* reset shader state. Avoid to reuse invalid data on plugin reload
gsdx:
* add an hack to unattach/attach the gl context from different thread. Help to solve some crashes. The best will be to move gpu operation out of gsreadfifo but it would need more works
* implement logz for test purpose (don't seem to help)
gsdx replay:
* use default xdg location


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5289 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-12 18:14:01 +00:00
sudonim1@gmail.com b722dfd013 GSDX: Added a compatibility check to the framebuffer handling for the texture cache and made it preferred and added a writeback as a fallback. Compat should be back to normal?
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5288 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-11 10:57:32 +00:00
sudonim1@gmail.com e8257df98d GSDX: made the paletted texture handling in the cache a bit more sensible to my eyes and implemented interpolation of palette entries for pixels in paletted textures when using the 8 bit textures option. Regressions in some games I think, such as Virtual On (which is very broken anyway), need to investigate what made them work (to some degree) before. Seems to change some performance characteristics favourably to my surprise, but I might just be bad at remembering framerates.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5287 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-11 03:27:16 +00:00
sudonim1@gmail.com 8ab8b4592d GSDX: Err, and another file, I should be asleep.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5286 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-11 02:57:28 +00:00
sudonim1@gmail.com adfa7f1579 GSDX: Forgot a file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5285 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-11 02:56:44 +00:00
sudonim1@gmail.com 08d8287d3e GSDX: Added some exceptions on shader compilation failure (with handlers in entry points because people seem to like the plugin struggling on even when nothing works any more) because I am not keen crashing Windows via my graphics driver.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5284 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-11 02:31:44 +00:00
sudonim1@gmail.com 17f28b24b3 GSDX: Prodded some offensive code, this isn't meant to affect emulation of any games and it probably won't.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5283 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-11 00:00:18 +00:00
sudonim1@gmail.com 1711a26bbb GSDX: put all paletted texture samples through the same transformation from the UNORM 0-1 256 step mapping to a 0.5/256-255.5/256 mapping after seeing potential bugs with FMT_4HL and changed FMT_4HH because it seemed to be completely wrong. Nothing but 8 bit textures tested because I can't find a single game which uses 4 bit textures.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5281 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-10 16:04:47 +00:00
sudonim1@gmail.com 4f79c4d1cb GSDX: Fixed my inability to remember or look up (I swear that page was hiding) coordinate systems in r5279 and assumed that it was a rounding error instead. The symptom was that palette indices above around 250 were being rounded up to the next palette entry causing visible glitches (only in D3D10 for some reason). Changed the code to keep the fractional part after multiplication by 256 around 0.5 and the steps around 1.0. Should be very safe against small errors.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5280 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-09 08:03:27 +00:00
sudonim1@gmail.com 1df5b7ef7a GSDX: Probably fix D3D10 and maybe D3D9 (might be working anyway but I think I have it addressing texel centres now) palette lookups. I noticed that this was broken in D3D10 while fixing the Realta Nua issue in r5273.
Explanation, because this gives me a headache and this might save someone else one (or I might be wrong and they might see why): in D3D10, 0.0 points to the centre of the leftmost texel and 1.0 points one texel to the right of the rightmost texel, so to map a UNORM uniformly across a texel we need to multiply the input by (w-1)/w.  In D3D9 0.0 points to the left edge of the leftmost texel and 1.0 to the right edge of the rightmost texel so after the multiplication we add 1/2w.

Actual texture sampling is probably not right for at least one of D3D9 and D3D10, but this headache is killing me.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5279 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-08 21:36:44 +00:00
gregory.hainaut b534fcc1bc zzogl:
* add a script to run cg compiler on glsl file:
  + handy to check the syntax
  + output the asm of the shader
  - unfortunately don't support latest glsl construct but better than nothing
* really delete resources before context destruction
* wanted to play with opengl3 timer for profiling but not conclusive, just keeping code around for future use


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5278 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-08 18:14:47 +00:00
avihal faa463b95c GSdx: CRC hacks: ICO: moved the cutie extra hack from r5214 to "Aggressive mode".
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5276 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-07 15:22:12 +00:00
ramapcsx2 a74b8e2c7f GSdx: Removed Rogue Galaxy from the GSdx crc hacks. Fixes issue 1290.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5275 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-07 11:53:53 +00:00
ramapcsx2 3321b327a9 Changed the defaults for GSdx to native resolution (for emulation accuracy's sake) and made the recommended speedhacks enabled by default in PCSX2.
Also set the auto deinterlace mode in GSdx when the .ini isn't present (instead of "none").

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5270 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-06 10:08:08 +00:00
gregory.hainaut d79186fafe zzogl replayer:
* I miss some ending bit. 
* Use a full int for GSvsync
* fix a small memory link


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5269 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-05 06:46:52 +00:00
gregory.hainaut 55ba4477ca gsdx: remove sdl and ogl from the win32 dialogs
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5268 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-04 18:45:54 +00:00
gregory.hainaut 0fff99f4f3 zzogl: gl resources must be deleted before the destruction of the GL context
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5264 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-02 09:33:40 +00:00
refraction c6d820ff4e SPU-2X Project too for VS2010
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5259 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 18:24:37 +00:00
refraction cabcc83ac5 Not sure if it was just me who had this issue but Lilypad didn't have the Directx SDK lib/include paths in the VC Directories, causing it not to build. Now it has :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5258 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 18:18:14 +00:00
gregory.hainaut 333b74c2a5 zzogl glsl: used the fog parameter correctly...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5256 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 14:26:37 +00:00
avihal 0dc1e7f4bb GSdx: CRC hacks: Remove duplicates (none left for now).
The following dup CRCs of were removed (leaving one):
0x7D4EA48F - Haunting Ground EU (now only Genji).
0x1A85E924 - DMC3 CH (now only GOW1)
0x7ACF7E03 - Spyro New beginning (now only ICO)

The following CRCs were removed without any negative effect:
0x2F123FD8 - GOW2 RU (same as US).
0x23A97857 - Star Ocean 3 JPUNDUB (same as US).



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5255 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 14:16:25 +00:00
gregory.hainaut 85bfc2ed66 zzogl:
* Fix context code for the common shader and set the indices for the uniform... (will fix most of GLSL-related  black screen issue)
* some memory improvements were not merged from zzogl-dev branch


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5252 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 08:21:31 +00:00
avihal bc4ec92600 GSdx: CRC hacks: Few CRCs from comments at r5214
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5244 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-30 15:04:17 +00:00
ramapcsx2 6287561e18 GSdx: Correct a small resource issue for merging.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5243 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-30 12:07:09 +00:00
gregory.hainaut cfeb7a5b0a copyright: remove the special copyright note. Only impact trivial code (enum and register definition)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5241 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-29 06:59:33 +00:00
ramapcsx2 a2908b4fed Found one more progressive scan flag and fixed a typo in the GSdx hacks.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5239 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-28 20:32:48 +00:00
gregory.hainaut 0154639e19 zzogl glsl: optimize state change. With luck it would be less slower. At least GL trace is much smaller (Gow menu go down from 4600 to 3000!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5237 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-27 15:34:48 +00:00
gregory.hainaut 8e2469d2b7 zzogl: fix compilation failure because of a wrongly refreshed patch
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5236 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-27 12:51:48 +00:00
gregory.hainaut f8875f12dc zzogl: rework dump test, to avoid bad mix between u32/u8
glsl4: Replace some define with function (ogl4 support function pointer). Explain how depth is computed in vertex shader


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5233 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-27 08:13:27 +00:00
gregory.hainaut c6d8af0c7f gsdx-ogl: only enable AMD hack when linking ps2 related shader. Otherwise SV_Target1 in convert is wrongly remapped
zzogl: check harder that the previous primitive exist.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5232 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-26 09:58:37 +00:00
gregory.hainaut b594b3bd51 zzogl: revert a change of the zzogl-dev branch. Avoid to compute an empty frame in Persona 4 & tale of abyss (if someone can check the latter)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5227 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-25 06:44:22 +00:00
gregory.hainaut e4e2366bce zzogl glsl:
* clean macro selection and redundant code
* Request GLSL Core profile instead of the compatibility profile


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5223 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-24 06:39:39 +00:00
avihal 31956dcb87 GSdx: CRC hacks: "Aggressive" mode (and related stuff).
- Added "Aggressive-CRC" checkbox at the HW hacks section of the config dialog.
- The following hacks are now activated only in aggressive mode:
  - God of War 2: disable water effect/lines, disable global haze.
  - FFX, FFX2, SSX3 (the full crc hack from r5214).
  - Shadow of the Colossus: disable (over)bloom.
- Reverted the Valkyrie Profile 2 hack to pre- r5214.
- Some CRC fixes by comments on r5214.
- Regression fix of dynamic crc hack (INITIAL_MODE = 0 didn't compile)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5221 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-23 06:38:37 +00:00
gregory.hainaut cdeaa5e03c zzogl: GLSL is working again for AMD gpu. Nvidia test is welcome
* properly release shader in release mode
* set stream format every time an array buffer is bound


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5219 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-21 06:43:28 +00:00
avihal 2db7ddaaa3 GSdx: Dynamic CRC hack: moved DYNA_DLL_PATH to GSdx/config.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5218 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-19 19:19:17 +00:00
avihal f8014654da GSdx: CRC hacks: duplicates/stuff:
- Console message for duplicate CRCs on our list.
- Removed trivial duplicates.
- Added some CRCs from comments on r5214
- Soul Calibur 2 now has the same crc hack as Soul Calibur 3.

We still need to address the following 7 duplicates (most were already there before r5214):
{0x7D4EA48F, HauntingGround, EU, 0},
{0x7D4EA48F, Genji, NoRegion, 0},

{0x7ACF7E03, ICO, NoRegion, 0},
{0x7ACF7E03, SpyroNewBeginning, NoRegion, 0},

{0x6BA2F6B9, ResidentEvil4, NoRegion, 0},
{0x6BA2F6B9, ResidentEvil4, EU, 0},

{0xD6385328, GodOfWar, US, 0},
{0xD6385328, GodOfWar, NoRegion, 0},

{0x1A85E924, GodOfWar, NoRegion, 0},
{0x1A85E924, DevilMayCry3, CH, 0},

{0x2F123FD8, GodOfWar2, RU, 0},
{0x2F123FD8, GodOfWar2, US, 0},

{0x23A97857, StarOcean3, US, 0},
{0x23A97857, StarOcean3, JPUNDUB, 0}

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5217 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-19 18:31:53 +00:00
avihal 253c0078d3 GSdx: Dynamic CRC hack: now supports CRC
.
Allows to have a single dynaCRC DLL for several games, differentiated by their CRCs by using the new utility IsCRC(0x12345678, 0x87654321, ...).
Note: With old GSdx (and updated new DynaCrcHack.c), IsCRC always returns false.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5215 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-19 08:04:12 +00:00
avihal 13df336966 GSdx: CRC Hacks: Import from Cutie - PLEASE HELP WITH TESTING:
- 14 Updated hacks, 41 new hacks (See full list at the first comment).
- New crc-hacks might have patial crc lists, so it's possible that some copies won't get the benefit (yet).
- Non crc-hacks code was NOT imported from Cutie, so some crc hacks might not be as effective as within Cutie itself.
- New region: CH, few more CRCs.

Note:
Due to the very big list of affected games, I couldn't test the vast majority of them, and so your help would be appreciated in testing. Please report (even if someone else already reported with the same result as yours) with the following format:
<game name> - <better/worse/same> (reason) - tested <little/medium/much>
e.g.:
Tomb Raider Legend - Better (removes garbage graphics) - tested a little.
GTA San Andreas - Better (removes ghosts) - tested a little.

And of course, big thank you goes to the author of Cutie, for the time put into improving PCSX2, and for respecting the GPL license and releasing the code.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5214 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-18 16:51:18 +00:00
gregory.hainaut f47168568b gsdx linux: uses OGL device by default instead of GSnull. Issue arise when renderer is 0 -> device is GSnull but GSRenderer is ogl
debian: fix some typo


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5213 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-17 14:18:37 +00:00
gregory.hainaut 05fc11daf5 zzogl:
* some parameters was set after the shader setup. Extend the API to do the shader setup before the draw
* remove the useless shader compatibility bits


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5212 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-15 06:45:26 +00:00
gregory.hainaut d062ca1727 zzogl:
* fix properly context, directly save the state in the shader
* replace the last deprecated variable in the shader. Remain the issue that host enable 1 output and the shader write 2 outputs
* It seems that VBO does't depends on the VAO but vertex format depends on both VBO/VAO so I set the format multiple time. Not sure the behavior is fully correct


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5211 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-15 06:40:45 +00:00
gregory.hainaut e7de58c3e2 zzogl: plug vertex array object and remove most deprecated variable from shader. Only remains gl_FragData
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5210 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-13 20:22:15 +00:00