Commit Graph

872 Commits

Author SHA1 Message Date
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
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 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
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
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 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
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
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 7d7ca41187 gsdx, zzogl: avoid nested class inside GSVertexArrayOGL.h
zzogl: rework the shader interface to use struct like CG. Shader are still broken because some variables (gl_color & gl_secondary_color) are not supported in vertex shader...


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5209 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-13 17:22:36 +00:00
gregory.hainaut b665499a6b gsdx ogl:
* split GSDeviceOGl header. Will allow easy sharing with zzogl.
* fix some gcc warning
zzogl:
* import Uniform buffer and Vertex array from GSdx



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5207 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-13 17:09:18 +00:00
gregory.hainaut 2f9e35e5ae i18n: tr_TR pcsx2_Iconized is wrongly translated. I fuzzy all strings to have an english string instead of lookup key
various: apply some patch of Micove to disable debug logging in GSdx release mode 


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5206 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-11 20:52:50 +00:00
gregory.hainaut a7dbaed3b1 gsdx ogl: find a way to workaround the buggy amd driver to support dual blending
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5203 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-11 19:39:32 +00:00
gregory.hainaut 75484d3059 cmake: apply some updated pathes of Micove
* drop hack for of Natty and use the std FindGtk2 module, time to upgrade to Precise.
* Bump cmake requirement to 2.8.5 to avoid multiarch issue
* Create new cmake variable GLSL_SHADER_DIR for glsl file.  Default value /usr/share/games/pcsx2


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5200 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-07 16:29:06 +00:00
gregory.hainaut 6e1643392c gsdx (Linux): fallback to opengl SW when SDL is selected but disabled
pcsx2: don't print window title in fullscreen because it create a white frame flickering. Seem like a wx regression


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5199 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-07 16:07:05 +00:00
sudonim1@gmail.com 2eaba64af8 GSDx: Added missing initialisation primarily for the software renderer, fixes R-Type Final crash when using fast boot. Debugged by rama.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5191 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-02 16:27:23 +00:00
gregory.hainaut bce948d820 cmake: add a bunch of Micove patch. Thanks.
* Add 2 new dev options: REBUILD_SHADER (nvidia cg) & BUILD_REPLAY_LOADERS
* zzogl-pg-cg will use the shader of zzogl-pg.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5190 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-05-01 10:54:52 +00:00
gregory.hainaut 7cdb9fc2f2 gsdx: fix some Visual Studio build error of the previous merge.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5187 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-28 17:58:45 +00:00
gregory.hainaut 46838ca4ee gsdx: merge the opengl branch to ease futur development and allow GSdx by default on linux
* for the moment only the SW render is supported, hopefully HW will come some day. And linux only for the moment.
* Require an OpenGL3 GPU (==Dx10) ie Nvidia >= 8800, AMD >= HD2000)
* Require an OpenGL4.2 compatible drivers => no opensource driver supported neither Intel driver.
* Build by default without SDL support which will dropped later. You need to add this define "ENABLE_SDL_DEV" on Win.



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5186 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-28 15:24:02 +00:00
gregory.hainaut f303da1c45 gsdx-ogl: fix potential build failure on MS
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5185 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-28 09:39:23 +00:00
gregory.hainaut f5ee23aa37 gsdx-ogl: Update gui with latest option
* put shade boost in HW setting (not sure it is HW only)
* Remove logz, useless since openGL support 32bits Z buffer
* Update hack section with a table. Note don't put MSAA (not yet implemented) to have a nice square
Note: user hack is enabled with "UserHacks" instead of "allowHacks"


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5184 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-28 09:19:42 +00:00
gregory.hainaut f8d573770e gsdx-ogl: forgot to add the glsl file...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5182 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-27 06:30:09 +00:00
gregory.hainaut 6fd47b2907 gsdx-ogl: * implement shadeboost (only test the compilation)
Note: gui must be updated with new user hack


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5181 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-26 21:42:16 +00:00
gregory.hainaut 300ea42977 gsdx-ogl: sync from trunk 5179:5091
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5180 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-26 19:51:07 +00:00
ramapcsx2 2cb99f0e05 Preliminary NTSC progressive scan support.
The detection is based on a quickly reversed smode1 flag and needs to be done properly.
The timing itself also needs reversing and has only been tested on the VP2 intro video.
(That video now runs without audio / video desync when progressive scan is enabled :) )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5179 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-26 17:07:36 +00:00
ramapcsx2 5dee597d9b GSdx:
Auto interlace mode, no more flickering! :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5178 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-25 08:46:51 +00:00
ramapcsx2 89ec3cb4e9 GSdx: A couple minor tweaks to the hacks dialog text. Nothing much changed but sounds nicer to me :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5177 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-24 14:24:58 +00:00
sudonim1@gmail.com db39998f71 GSDx: I screwed up when doing an untested last minute manual cleanup of gsdx.rc, the mouse over descriptions will actually work now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5176 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-24 14:02:34 +00:00
sudonim1@gmail.com a27142f1a6 Set some svn:eol-style properties.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5173 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-23 18:56:22 +00:00
sudonim1@gmail.com 595de0a5eb GSDx: dehacked hover description code for hacks
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5171 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-23 18:46:09 +00:00
avihal 4ef1ee3754 GSdx: F9 is now switching better between HW and SW renderer.
Previously: GSdx was switching between the configured renderer and the best SW renderer (best = DX11 if supported).
Now: If using DX: Switch SW/HW renderer and use the same DX version. If using SDL: same as before.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5164 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-19 19:10:24 +00:00
ramapcsx2 26392e7f3e Change various logs to sound "nicer".
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5160 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-17 17:55:51 +00:00
gregory.hainaut d75da041f6 copyright: soundtouch was LGPL2.1 not LGPL2.1+, add an header to launch_pcsx2_linux.sh
cmake: keep all library for the linking of plugins
hex2h.pl: add svn:executable


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5157 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-16 15:36:16 +00:00
gregory.hainaut 72d47d547e copyright:
* update missing copyright on
 + plugins/GSdx/config.h
 + pcsx2/MTVU.h
 + plugins/zzogl-pg/opengl/ZZHacks.h
 + plugins/spu2-x/src/DplIIdecoder.cpp
* put a copyright for trivial script file
 + pcsx2/gui/Resources/rebuild.sh
 + tools/bin2app.sh
 + plugins/zzogl-pg/opengl/shaders.sh
* remove autotool from zzogl
* apply the patch for issue 1257. Thanks very much Micove for the hard work.




git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5154 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-12 06:30:35 +00:00
gregory.hainaut bda3cbe86f gsdx-ogl: fix build failure due to a leftover of a patch conflict
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5140 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-02 16:46:54 +00:00
gregory.hainaut 16a1fded96 gsdx-ogl: LINUX ONLY
* Keep the state of the draw buffer (save few opengl call)
* AMD fix the shader unloading (12.2 and above). So disable the workaround


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5137 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-30 19:02:37 +00:00
sudonim1@gmail.com e017ccaa5d GSDx: Found the likely actual cause for the FFXII hack problems, probably introduced with index buffers. Also made the hack a little more crash proof and maybe fixed an off by one pixel error.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5135 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-23 21:00:22 +00:00
ramapcsx2 e8b96f51cb GSdx: Updating the CRC list with some Korean titles. Thanks for the list, 99skull.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5134 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-23 19:37:43 +00:00
ramapcsx2 1b883ab9ee GSdx:
Quick and sloppy fix for a sloppy hack, fixing FF12 pal. 
Thanks, pseudonym.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5133 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-17 12:55:02 +00:00
gregory.hainaut 9264b7725c pcsx2: gcc 4.7 compilation fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5132 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-17 11:21:51 +00:00
ramapcsx2 f9e4ba405c Gsdx:
Change a texture cache hack to fix half the flickering FMV games. 
It could have issues though, or randomly fix other stuff. Please test :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5130 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-15 16:16:51 +00:00
ramapcsx2 c77c184858 GSdx:
Fix Grandia Xtreme flicker :)
Could help other games as well, please test.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5129 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-15 12:44:18 +00:00
ramapcsx2 1b7bbcdb3d GSdx: Sprite hack update.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5125 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-08 17:43:21 +00:00
ramapcsx2 1595136a9d GSdx:
Another refinement to the Wild Arms hack by KrossX.
The hack now only applies to one kind of geometry (sent using  the unpacked UV handler).
This works nicer in Wild Arms as it fixes "jumpy" characters.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5124 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-08 17:18:22 +00:00
ramapcsx2 9aa9808c2f GSdx:
Mouse over descriptions for the hacks. Thanks to KrossX again, these are great :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5123 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-07 09:58:38 +00:00
ramapcsx2 144a7a13fb GSdx: Better DX9 implementation of the Wild Arms Hack. Thanks, KrossX :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5122 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-07 09:31:10 +00:00
ramapcsx2 ac97331388 GSdx: Fix for DX9 mode with the Wild Arms hack enabled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5121 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 22:36:24 +00:00
ramapcsx2 b25aec19c1 GSdx:
Adding KrossX's Wild Arms text alignment hack to the new dialog box. This hack is actually very interesting for a number of games. It should work well in cases where game designers adjusted everything pixel perfect for the GS, that usually breaks with upscaling. 
It should be generalized and renamed later.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5120 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 21:36:59 +00:00
ramapcsx2 0d5e312bdb GSdx: Some descriptions and making the hack configure button always visible (for now).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5119 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 20:14:35 +00:00
ramapcsx2 d2665e9bc4 GSdx: The "enable hacks" checkbox works to toggle all hacks.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5118 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 20:01:27 +00:00
ramapcsx2 30e538a3c6 GSdx:
Team effort of KrossX and myself: 
Finally adding that special game fixes / hack dialog I talked about for a while.
Committing this in several steps to clean up any issues easier.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5116 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 19:39:05 +00:00
ramapcsx2 2c96d8cf44 GSdx: Attempt to fix the resource files so MSVC likes them again. There's still line ending inconsistencies in the .rc though.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5115 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-06 18:28:59 +00:00
gregory.hainaut d6e7ea4a4e GSdx-ogl: LINUX only
* request a minimum of 1 for texture dimension
* Use offscreen texture likes DX11. 
* add more bits for extra texture format 
* do operation on texture unit 0 to avoid ping-pong between unit 0/2


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5114 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-03-05 20:16:26 +00:00
ramapcsx2 886c23a4ee GSdx:
Better working shader for the new color settings. Taken from "TGM's shader pack" on 
http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=21057

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5113 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-29 15:49:01 +00:00
ramapcsx2 be4b7b1768 GSdx: Use the simpler psmain0 shader in convert.fx for ShadeBoost. Thanks KrossX :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5111 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-29 13:19:36 +00:00
ramapcsx2 954e7906ed GSdx: Added the color control functionality known as "ShadeBoost". Thanks to KrossX for initial converting / GUI work and Pseudonym for normalizing / fixing the maths.
Note: Not sure if it should be shader #7 or smth else :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5110 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-29 00:29:29 +00:00
ramapcsx2 0933ee2fd5 A couple minor changes, including a bad looking block manager bug that wasn't really all that bad :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5109 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-28 20:57:07 +00:00
ramapcsx2 538bc76686 GSdx: KrossX updated the sprite hack to also work on other games with a similar problem. It works with a 3 state checkbox now. Try to use full when half checked doesn't fix your game.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5104 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-25 20:06:39 +00:00
ramapcsx2 3bbb2d6ed3 Small mistake fixed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5102 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-22 20:05:41 +00:00
ramapcsx2 7e435329ca GSdx:
Committing a hack KrossX prepared (thanks) ;)
It can be used to fix bad character sprites in Gust games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5101 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-22 19:53:59 +00:00
gabest11 78c1667a9c GSdx: Yakuza fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5100 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-15 18:57:52 +00:00
gabest11 344d0c09ce GSdx: check sprite edges! (r5098)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5099 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-14 22:22:56 +00:00
gabest11 f53d70c483 GSdx: fix for Vexx, a few vertices were bogus, s/t/q all zero.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5098 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-14 19:26:04 +00:00
gabest11 5d9a5b6ee6 GSdx: there was a float-int conversion overflow in vertex trace, texture coord min/max could have been detected wrong, silent hill origins should look better now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5097 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-14 08:03:27 +00:00
gabest11 67ef781116 GSdx: this may fix silent hill shadows and mister mosquito intro blur, also reduced texture cache keep-alive time from 30 to 10 frames and found two memory leaks, killzone can run a few seconds longer before crashing, I think there is something in pcsx2 allocating too much memory.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5096 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-12 17:56:06 +00:00
ramapcsx2 c641767431 GSdx: Offset_UV can be defined again. (Need it to hack Wild Arms 3 text placement issues)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5095 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-12 10:31:08 +00:00
gregory.hainaut 92f2ab38ae GSdx-ogl: LINUX only
* Use the new map interface/separate texture coordinate inside shader
* support new format on texture

Note: it is quite instable with various crashes and GL error but at least it compiles now :p 


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5094 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-11 10:22:02 +00:00
gregory.hainaut b75b61cb1d linux compilation fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5093 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-10 21:18:47 +00:00
gabest11 da7324dbf2 Not transferring unused vif registers to the MTVU thread can save at least half of the ring buffer space. The whole set is about 400 bytes, including padding, but I could find references to only 6 regs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5092 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-10 07:03:55 +00:00
gregory.hainaut 4a00648d9f GSdx-ogl: LINUX only. sync from trunk (5068:5090)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5091 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-09 21:40:39 +00:00
gabest11 bc38796323 GSdx: full boot fixed, thanks for finding, I always use fast boot.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5090 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-08 20:21:18 +00:00
gabest11 19be605150 GSdx: this should fix xp/wine crashing when extrathreads > 0, and added a sprite drawing shortcut, hopefully won't break anything.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5089 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-08 16:57:14 +00:00
gregory.hainaut 4593b6ac52 gsdx: linux compilation fix. Gcc don't support same name for variable and template parameter
cmake: compilation fix on debian sid (and potentially ubuntu)
i18n: add some comment for potential language change in the future.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5088 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-06 18:16:49 +00:00
gregory.hainaut 6680d285ea gsdx-ogl: linux only
* implement some missing shader for DATE, invert coordinate like strech rectangle
* Use glCopyImageSubDataNV nvidia extension to copy image (you need latest AMD drivers)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5086 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-31 17:08:05 +00:00
gabest11 fcc09c2cca GSdx: fixing two different bugs of the sw renderer, addressing outside the texture in region wrap mode (skygunner), and little gaps in shadows and other random places (dq8, rogue galaxy, okami).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5085 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-29 10:12:20 +00:00
gabest11 bd12a8b7b3 GSdx: silent hill shattered memories purple street light fix, not block aligned filled rects were not correctly masked, may also fix games which store texture data in the alpha channel but use 24-bit target buffers (or just mask it in every time) and draw a lot of those unaligned rects. (tested many .gs dumps, very rare combination)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5084 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-28 10:07:17 +00:00
gabest11 915a57d9f3 GSdx: more fun with shaders but nothing works yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5083 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-27 11:56:49 +00:00
gabest11 f47e261ade GSdx: fix for tokyo xtreme racing invisible letters, laz0rs did not set the texture size.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5082 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-23 05:26:07 +00:00
gabest11 899bad9dcb GSdx: reverted some of the changes of r5077, it breaks GoW.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5081 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-23 04:11:24 +00:00
gabest11 cd577ecd10 GSdx: a different fix for ZoE2, also seem to help DMC, so I removed the previous one, please check again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5080 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-22 13:00:45 +00:00
gabest11 6efc7d6d83 GSdx: fixing dmc3 bugs with the sw renderer in multi-threaded mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5079 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-22 08:37:44 +00:00
gabest11 20cd5e9b81 GSdx: next attempt to fix frame skipping
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5078 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-21 12:34:36 +00:00
gabest11 9b8c753ead GSdx: broken frame skipping should be fixed, and a few random sw renderer optimizations.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5077 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-21 04:44:04 +00:00
gabest11 6a86a6520d GSdx: made a little mistake masking the unused giftag regs, when all 16 were in-use
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5076 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-20 00:34:44 +00:00
gabest11 5de9f84fae GSdx: quick fix for unreal tournament (and others using DATE)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5075 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-19 10:24:07 +00:00
gabest11 9ec7f14fa8 GSdx: Simplified vertex formats and the related code, everything works with the basic GSVertex until it gets uploaded to the vertex buffer.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5074 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-19 04:53:36 +00:00
ramapcsx2 d763bf6616 GSdx: Just some notes on the Disgaea 2 FMV border issue.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5073 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-18 15:44:14 +00:00
gabest11 9aabcc1701 GSdx: added a shortcut in GSState::Transfer for the most frequent vertex format I found (helps quite a lot), less thread-syncing for the sw renderer, and the bios boot logo was fixed (just had to clear the memory on reset).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5072 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-18 11:47:31 +00:00
gregory.hainaut e0004b5027 gsdx-ogl: linux only
* Was easy, I forgot to set the type of the buffer.
* align shader change too


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5071 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-15 18:11:48 +00:00
gregory.hainaut 86a9910027 gsdx-ogl: linux only
compilation fix, add bits for the index buffer.
current status is blackscreen :p


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5070 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-15 17:25:49 +00:00
gregory.hainaut 0ad5982364 gsdx-ogl: linux only (merge from trunk 5022:5068)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5069 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-15 14:51:49 +00:00
gabest11 da4ea83134 GSdx: nothing really new, just testing the compute shader, if you are an expert take a look and tell me your opinion :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5068 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-13 18:10:05 +00:00
gregory.hainaut cfedf41441 gsdx-ogl: linux only
* Fix some issue on wnd management, mix between sdl/ogl render
* create new gsdx option for ogl debug
  + debug_ogl_dump: start frame to dump when not 0
  + debug_ogl_dump_length: length of the dump
  + debug_ogl_shader: print shader debug
  Note current dump option must be fixed to use linux path.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5067 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-12 07:29:31 +00:00
gabest11 481f1fdda2 GSdx: it's hard to keep track of the leftover vertices properly, a bit of sps was still possible, psx sprites were fixed too
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5065 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-09 08:41:33 +00:00
gregory.hainaut 14b0572b61 gsdx-ogl:
* fix bad setup issue for constant blend factor
* Use a read framebuffer to read back the texture (less disruptive)
* cmake separate the loader to the main plugins


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5064 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 21:59:42 +00:00
gabest11 5b5a9787d9 GSdx: fixing a possible buffer overflow
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5063 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 21:02:42 +00:00
gabest11 2eec75c2ae GSdx: sps fixed, some code clean up and optimization, ps2 logo still broken in hw mode, I'll check it later
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5062 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 17:10:00 +00:00
arcum42 47985bc4fa gsdx-ogl: Since Texture Filtering has 3 states in Windows, change it to a combo box in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5061 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 06:24:10 +00:00
arcum42 969c2be7f7 gsdx-ogl: Added the hacks section to the dialog.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5060 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 05:54:48 +00:00
arcum42 8bb44cfcac gsdx-ogl: All the Windows versions get a fancy logo on top, so...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5059 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 04:59:29 +00:00
arcum42 009f6e2dcb gsdx-ogl: Things now disable and reenable when appropriate.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5058 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 03:52:58 +00:00
arcum42 abd99c00f0 gsdx-ogl: Add msaa controls. (Probably doesn't actually do anything at the moment.)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5057 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 02:32:56 +00:00
arcum42 27de4b086d gsdx-ogl: Remodel the linux dialog box to make it look better.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5056 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-08 01:18:23 +00:00
arcum42 545df08ecc gsdx-ogl: Add a Native Resolution checkmark to the dialog box. Set a default for ModHeight & ModeWidth when saving the ini file. Link the gdsx static library against a few things.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5054 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-07 12:28:29 +00:00
gregory.hainaut 657da538de gsdx-ogl: was too shaky after all!
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5053 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 22:51:05 +00:00
gregory.hainaut 21724ddbf8 gsdx-ogl: add a loader to replay gs file. Quite shaky but probably enough for debug :)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5052 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 21:43:39 +00:00
ramapcsx2 872301fbeb Gsdx:
Let users set software parameters (extra threads and line AA) regardless of currently configured renderer. 
Makes testing far easier.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5051 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 09:55:23 +00:00
gregory.hainaut 53a5089d7b gsdx-ogl:
* fix some issue with cmake and new sdl define
* Implement shortcut key handling on linux.
    + some option are not yet implemented (fxaa)
    + gs dump can be created with <shift> <F8>


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5050 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 07:20:37 +00:00
gabest11 651196f665 GSdx: vtune tells me GSOffset::GetPages is too slow without the cache and its slowest part is new uint32[], lets use pre-allocated buffers then. In d3d9 mode, locking the vertex buffer is the most painful thing, there is a terrible delay until it returns, the same Map call in d3d10/11 does not behave like that.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5049 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 01:20:01 +00:00
gabest11 d8646e9dab GSdx: disable vtune
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5048 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 00:28:27 +00:00
gabest11 49f3aee099 GSdx: fixing the broken things...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5047 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-06 00:17:52 +00:00
gabest11 a8e8e6e80f GSdx: there is a possibility of calling GSState::Flush in the middle of a strip or fan, the last few vertices must be saved to be able to continue, haven't found anything with this problem though.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5046 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-05 04:40:47 +00:00
gabest11 f68f007f00 GSdx: the promised index buffer update, needed a lot of changes, expect bugs in the next dozen revisions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5045 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-05 02:40:24 +00:00
gregory.hainaut 0e80e0adca gsdx-ogl:
* add some define to enable/disable SDL so we could build gsdx without SDL
* debug: dump data based on frame count rather from draw count


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5044 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-04 23:19:17 +00:00
arcum42 4c5d1e11a8 gsdx-ogl: Fix a few glsl errors I missed last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5043 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-04 11:14:57 +00:00
arcum42 0116402620 gsdx-ogl: Fix a few glsl errors. Comment out line 218 of GSDevice.cpp. Mess with the fifo hack a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5042 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-04 10:42:53 +00:00
gregory.hainaut 76542f89c9 gsdx-ogl: code seems compatible with an opengl 3.3 context. Only load some shader extensions.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5041 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-03 17:17:04 +00:00
gregory.hainaut cc6e486742 gsdx-ogl:
* add a new define (DISABLE_DUAL_BLEND) to easily test blend mode


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5040 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-03 16:12:34 +00:00
gregory.hainaut 90c52c27f6 gsdx-ogl:
* replace hexa debug value with nice string for standard human
* move things around


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5039 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-03 13:11:40 +00:00
gregory.hainaut c1d7b81a55 gsdx-ogl:
* Use a geometry shader pass-through to replace previous AMD workaround
* various cosmetic change


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5038 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-01-02 20:08:11 +00:00
gabest11 5325f9b490 GSdx: Small optimizations here and there, just saving changes before trying to add an index buffer, that might help reducing load on the main gs thread a bit. That's where I think the bottleneck currently is in games with high polygon count.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5036 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-31 15:41:07 +00:00
gregory.hainaut 2f4e2d8b6b GSdx-ogl: happy new years commit :)
* move all vertex buffer stuff into the class
* Bypass FIFO2 because of multithread issue with OGL(temporary workaround until we found a nicer solutions)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5035 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-31 14:38:58 +00:00
gregory.hainaut 9ca65c9cc6 gsdx-ogl: LINUX-ONLY
* invert the index of fragment output. Seem to work better on Nvidia (strangely no impact for AMD)
* opengl support pitch too, so remove useless copy to an fbo


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5034 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-30 22:25:17 +00:00
gregory.hainaut ea33beb360 gsdx-ogl: LINUX-ONLY
* Fix the Geomtry shader to output 2 triangles for quad primitive (ie 2R rendering)
- There is an AMD  driver bug on geomtry shader input interface (well could be the spec too). Tell me if it still working on nvidia
* Add a workaroung to a previous AMD bug. It is impossible to unattach a shader so destroy the full shader pipeline...
* Be more strict on FBO management. Would optimize it later
* use a texture insted of a render buffer for depth-stencil management.
* add more dumping capabilities (in particular depth buffer)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5033 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-30 13:55:33 +00:00
gregory.hainaut 000220f93f gsdx-ogl: LINUX-ONLY
* It works with the HW renderer !!!
* Not sure this fix will work with dual blending but we will see later
* screen is vertically flipped again...


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5031 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-29 14:39:53 +00:00
gregory.hainaut aa499f4bfd gsdx-ogl: LINUX-ONLY
* fix vertex shader for HW renderer :) Remains the fragment part...
* add some dumping infrastucture (DUMP_START and DUMP_LENGTH)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5030 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-29 14:24:26 +00:00
gabest11 6f97ca35e2 GSdx: GSOffset::GetPages was caching a ridiculous amount of data, it isn't that much slower without it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5028 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 20:21:32 +00:00
gabest11 03bca19d99 GSdx: vs2008 fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5027 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 14:41:07 +00:00
gabest11 eaf06e8b1d GSdx: bit less idle time by refcouting used texture pages.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5026 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-28 14:10:20 +00:00
gregory.hainaut 720a841cb2 gsdx-ogl: merge from trunk (4990:5021)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5022 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 17:04:28 +00:00
gregory.hainaut 4f6796916a gsdx linux:
* add the code to select the attribute (still the default but can be changed now)
* add a hidden option (condvar) to select between the 2 threads algorithm


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5021 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 13:14:30 +00:00
gregory.hainaut ba14c557ed gsdx linux:
* use memory instead of tr1 (was the experimental implementation of c++11)
* remove strict aliasing optimization because I saw some bad warnings
* Fix pthread of the previous commit. Use default attribute but it might need some tuning


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5020 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 12:22:13 +00:00
gabest11 25072b99c7 GSdx: a few minor changes, please check if I wrapped the new pthread things correctly
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5019 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 09:15:35 +00:00
avihal 3aa3b1caf6 GSdx: Improved Genji CRC hack.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5018 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 08:28:32 +00:00
gregory.hainaut 7f3b11c7db gsdx:
* fix the new extra thread option in the gui dialog
* implement condition variable on linux. Will need some benchmark.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5017 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-26 22:30:59 +00:00
gabest11 2628d5bb7d GSdx: a little refinement to the fix for the issue that come up with Bully.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5016 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-25 07:26:42 +00:00
gabest11 ed8eb53c22 GSdx: Valkyrie Profile 2 fix (discussed under r5010 and r5012), this bug could have broken much more games, strange that it did not.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5015 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-24 15:02:48 +00:00
gabest11 bc7a930409 GSdx: This fixes the flickering in Bully, and probably games with the same problem. Could not check Valkyrie Profile Silmeria, yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5012 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-24 07:00:16 +00:00
ramapcsx2 7dfff148b8 GSdx: Hack around a problem with the texture cache finding depth stencils when there can't be any.
This makes the Arc the Lad fog issue go away.

Review would be nice though :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5011 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 20:58:10 +00:00
gabest11 963a6a653a GSdx: changes of r5007 did not help as much as I thought, disabled it for the time being, plus other minor optimizations
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5010 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 15:53:53 +00:00
gregory.hainaut 33a9ac370a gsdx-ogl: LINUX-ONLY
* implement offscreen and cache (mostly a copy past of dx)
* add the missing macro selector of the shader...


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5009 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 12:32:40 +00:00
gabest11 da41bcd756 GSdx: Replaced condvar/srwlock imports with getprocaddress, it should work on XP and compile on vs2010 express again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5008 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-23 02:49:27 +00:00
gabest11 d5dbe7e7e9 GSdx: Moved filling up rendering threads on a new thread, to not block the main, it looks like now I can replace one of the spin loops with an event. Using events results in about -5% fps, but still pretty fast.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5007 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-22 14:36:54 +00:00
gregory.hainaut 6f5ac7b788 gsdx-ogl: LINUX-ONLY
* go back to opengl 4.1 (nvidia driver is buggy with 4.1).
* fix the backbuffer allocation. bad order of parameter
* fix remaining glsl error


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5006 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-22 14:12:12 +00:00
gabest11 2421c68bee GSdx: Saving the conditional var update (vista or better) before I try a new idea again. That Sync() call is wasting too much time, if there was only one queue then the main thread could also grab and process elements instead of just waiting for the workers.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5005 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-22 01:48:16 +00:00
avihal 5e0e4ce6a8 Fix Dynamic CRC hacks (got broken on r4991 )
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5004 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 23:35:30 +00:00
gregory.hainaut a9927a6e33 gsdx-ogl: LINUX-ONLY
* rework a little the shader to be hopefully compatible with nvidia
* request a pure 4.2 context (all gpu 4.1 capable support 4.2 anyway)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5003 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 23:09:36 +00:00
gregory.hainaut f604ba8d7f gsdx-ogl: LINUX-ONLY
Remove foreach feature not supported on old compiler


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5002 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 20:37:24 +00:00
gregory.hainaut 9272be182e gsdx-ogl: LINUX-ONLY
* add the forgotten hardware renderer object.

Oh my gosh! Opengl is 20% faster than Dx!!!


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@5000 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 19:08:31 +00:00
gabest11 1691ab2cf0 GSdx: fixed vs2008 build errors
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4999 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-21 00:08:00 +00:00
gabest11 0b62c17d9c GSdx: Renamed the sw thread setting to "extra threads".
- 0: no multi-threading
- 1: gif packet processing and texture uploads run parallel with rendering, the slowest decides the fps, dual-cores can still suffer by the spin loops, I'll check that when I compile pcsx2 on my notebook
- 2: two rendering threads, on a decent cpu packet processing is going to be slower now, this is probably going to increase fps the most on quads
- 3: small fps increase
- 4+: even smaller. 

If you have a quad cpu with HT, 6 is the max, 1 + 1 is needed for pcsx2 and gsdx's basic tasks.

Also hacked palette writes to not force a read-back in hw mode (added in previous rev), it hit render targets in a surprising large number of games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4998 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-20 14:33:28 +00:00
gregory.hainaut e4c70ad229 gsdx-ogl: LINUX-ONLY
Forgot the shader file...


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4997 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-19 21:04:16 +00:00
gregory.hainaut 83ad63a8a7 gsdx-ogl: LINUX-ONLY
* lay the foundation for the HW renderer on OGL


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4996 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-19 21:03:23 +00:00
gabest11 2f401da58c GSdx: fixed shared_ptr for GCC, but it does not seem to be thread-safe in 4.4.5.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4995 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-19 01:20:55 +00:00
gabest11 b7a70c9541 GSdx: Little bug slipped through.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4994 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-18 22:04:05 +00:00
gabest11 b86e3ebd19 GSdx: Polished the recent changes a bit. Single threaded mode should be back to normal, 2-4 threads might be faster or slower. All in all, it has a lot more potential now. Rendering is almost as separated as with d3d, everything needed is packed and copied for the worker threads, synchronization between local memory and the temporary buffers is properly done. This model could also be back-ported to d3d. Or the software rasterizers could be hardware assisted somehow, there are a lot less sync points where those buffers should match with the contents of the local memory.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4993 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-18 21:57:48 +00:00
gabest11 f318e84aca GSdx: Better multi-threading for the sw renderer. Threads must be synchronized lot less, 1/10th in average, can run parallel longer and uses more cpu (bit more empty spinning, too). There could be some new bugs, as usual.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4992 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-18 08:13:20 +00:00
gabest11 4b77052d21 GSdx: just saving minor changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4991 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-16 19:13:58 +00:00
gregory.hainaut ab01926ed5 gsdx-ogl: LINUX-ONLY
* rewrite the vertex management with a nice GSVertexBufferState object
* extend GSUniformBufferOGL to use a better object interface
* properly delete texture
* manage buffer with glMap* instead of glBufferSubData


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4990 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-15 18:27:58 +00:00
gregory.hainaut 4029cc5195 gsdx-ogl: LINUX-ONLY
* constant buffer are attached to contexts not programs. So do it only once!


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4988 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-11 19:11:01 +00:00
gregory.hainaut fbb224837d gsdx-ogl: LINUX-ONLY
* Enable interlace feature. (note I'm well aware that interlace crashes with SDL)
* remove useless callback debug function
* handle the y axis differently. Move vertex to follow right-hand system (render everything in reverse) then flip the y-axis for the screen rendering


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4987 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-11 19:09:08 +00:00
arcum42 be53385e9f gsdx-ogl: LINUX-ONLY * Sync with trunk. (r4970-4985)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4986 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-11 02:06:41 +00:00
gregory.hainaut daf3c43681 gsdx-ogl: LINUX-ONLY
* improve vertex management with a vertex array. Decorrelate vertex from strech rec and others func (later for the HW renderer)
* fix the crash on nvidia when closing the window
* clean some texture management code


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4985 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-10 19:19:44 +00:00
arcum42 e6057b765f gsdx-ogl: LINUX-ONLY * Fix context creation. Get opengl working with nvidia graphics cards.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4984 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-10 11:56:34 +00:00
gregory.hainaut afdb2dadc3 gsdx-ogl: LINUX-ONLY
* add a callback for GLERROR.  Allow to breakpoint on GSDeviceOGL::DebugCallback (gdb is completely lost on amd driver, hope it is better on nvidia)
* Add some empty glsl convert to shutup some useless debugging error
* request an advance opengl context without pre 3.0 feature.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4983 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-08 16:39:14 +00:00
gregory.hainaut 2be037d78f gsdx-ogl: LINUX-ONLY
* flip y-axis in merge stage
* default to xlib window managment (the dynamic switch between sdl and xlib crashi but SDL will probably dropped later)
* improve management of FBO, draw buffer
* try to fix some issue with glClearBuffer but spec is not clear.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4982 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-08 11:17:59 +00:00
gregory.hainaut a835de0af7 gsdx-ogl: LINUX-ONLY
* implement the saving of texture (take bmp SW code)
* fix the missing "enable attribute code" and the typo in glsl. It works now !!!
* rework a little texture to pack texture into a temporay buffer when src pitch != dst pitch
* try to replace sdl with pure xlib (not yet enabled by default but it seems to work)

Note there still a minor issue, coordinate are different between DX and OGL (upper-left vs lower-left) so the image is inversed.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4981 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-07 22:05:46 +00:00
gabest11 df42f468be GSdx: recent changes caused some errors in line drawing (SoTC loading screen)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4979 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-04 18:35:16 +00:00
gabest11 9f470962e5 GSdx: less gaps between triangles, it was more noticeable with psx games, having a lower resolution.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4978 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-04 15:31:02 +00:00
gabest11 786f43a707 GSdx: more fixes to z-interpolation, THPS4 looks alright now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4977 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-04 09:49:55 +00:00
gabest11 0d7c58065a GSdx: this fixes some of the flickering in THPS, objects in the far distance still have some z-fighting problem, z values used are too large and too close to each other.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4976 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-03 21:04:46 +00:00
gabest11 f1537f53a2 GSdx: Found where the bypassed int z was destroyed. (bug appeared in r4967)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4975 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-01 17:08:10 +00:00
gregory.hainaut eb3eafa090 gsdx-ogl:
* implement shader code (subset that seem to be used in SW mode)
* some hack to fix some alignment issue with GSVertexPT1 structure
* Lots of various opengl fixes. Remaining unsupported GL feature are inside SDL.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4974 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-30 21:42:41 +00:00
gregory.hainaut 133847e8a2 gsdx-ogl:
* Properly allocate/delete opengl object
* Request a debug context in SDL, add some code to log opengl error 
* Fix context creation. For the moment only request ogl4.1 (AMD does not support yet 4.2 and it needs libglew1.7 too...)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4973 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-26 11:46:51 +00:00
gabest11 9d54677055 GSdx: re-implemented the drawing pipeline in c++, just for reference and easier debugging.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4972 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-25 23:48:59 +00:00
gregory.hainaut 6125baa578 gsdx-ogl:
* make a rough implementation of most of the opengl device interface. Only a savestate nothing to expect yet.
* depend of libglew 1.6 (normally 1.7 but I manually defined the only missing function)


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4971 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-21 22:36:03 +00:00
gregory.hainaut da66ca7fd9 gsdx-ogl: preliminary work of an opengl backend. So far only skeleton and various note.
Current goal is to implement the SW render with pure opengl instead of SDL.
I plan to use OpenGL4.2 capability (the latest actually) => need libglew1.7 and a Dx11 capable GPU/drivers.


git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4970 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-16 22:17:37 +00:00
gabest11 4f6f53c188 GSdx: Just remembered triangles were occasionally converted to sprites, need to set t.w there as well.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4967 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-14 03:34:24 +00:00
gabest11 ee9c9ac8f3 GSdx: Added a simple workaround for the 32-bit z problem talked about in the comments of r4956. Since sprites are flat and there was an unused vertex member (t.w), I just decided to pass the raw uint32 value in that to the scanline drawing function. It does not fix triangles and other primitive types, of course. The ideal solution would be to break z into two parts (like 8:24 bits, and only care about the upper part when not zero), interpolate separately and rejoin when needed, it is just too hard to add another variable when the assembly code is already so tightly optimized to use every register.
(HW mode z-test expects a float input, so this trick cannot be done there.)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4966 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-14 03:08:13 +00:00
gabest11 f47ef5e644 GSdx: as usual, going back to msvc, suddenly wild errors appear.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4964 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-08 13:22:54 +00:00
gabest11 0cf87a943b GSdx: GSRendererHW.h and GCC are good friends now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4963 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-08 13:12:54 +00:00
gabest11 67b12b3f92 GSdx: Also wrapping CLUT writes now, previous revision broke SFEX. CLUT buffer overruns are very rare, tell me if you find any other game doing it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4956 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-02 21:15:44 +00:00
gabest11 b158f98fc7 GSdx: Bogus MSB bits of TEX0.CSA should be ignored as it looks. Only corrected where the palette is read (this fixes "Idol Janshi Suchie-Pai IV"), writes to the CLUT may be handled the same way, but so far no game has been found broken because of this.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4955 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-02 17:41:22 +00:00
ramapcsx2 3233952582 GSdx: CRC for FF12 Fr.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4953 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-11-01 10:15:52 +00:00
arcum42 5306b13472 More work on the compiler warnings. Removed the warning flags that are now set by default.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4949 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-30 00:32:22 +00:00
arcum42 251382aefe Change a few compiler options in Linux to remove a few warnings during compilation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4947 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-29 07:57:06 +00:00
ramapcsx2 b9d442d4f7 GSdx: CRC for Suikoden Tactics JP.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4946 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-27 17:19:55 +00:00
gabest11 60939bd9dd GSdx: Another psx bug-fix for chrono cross. Not fully sure about it, have to be tested. It is about not drawing larger than 1024x512 polygons. Peops also skips them, but only when one of the coordinates is negative, not explained why.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4944 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-24 21:34:38 +00:00
gabest11 c5e99a05ca GSdx: Corrected the line data terminator for psx games (fixes wild arms 2).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4943 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-24 07:58:43 +00:00
avihal 7f0f19ee02 Yakuza 1 CRC hack (seem to work better than previous one).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4928 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-09 07:43:10 +00:00
gigaherz e08e540eb8 GSDX: Whoops sorry I mixed two conflicting ideas into one.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4927 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-08 16:53:40 +00:00
gigaherz 4d12e1954f GSDX: I didn't even like that code when I changed it. Now I know why. And it looks much better this way.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4926 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-08 16:52:58 +00:00
gigaherz 119e9e7114 GSDX:
- Use float instead of int for the video framerate. 
 - Use 59.94 instead of 60 for the ntsc framerate.
This replaces a previous hackfix with a better one, but it's still not ideal.
The ideal solution for the video encoding side would be to use an actual fraction (60000/1001) and pass this fraction to the encoder.
The ideal solution for the gsdx side would be to deduce the real framerate from the timing parameters.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4925 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-08 13:05:15 +00:00
shadowladyngemu 1455517630 GameDB and CRC updates....
other updates are welcome on issue 881

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4922 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-05 11:45:00 +00:00
shadowladyngemu d953f053d8 GSdx fixes:
Skygunner crashing on boot.
James Bond 007: Everything or Nothing doing a huge Vram usage when opening the weapons screen and making the system crawl at it. Couldn't test much with this one and only added the US version for now.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4921 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-05 09:19:32 +00:00
avihal d27f1877fc Oops. Now it's disabled by default ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4915 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-09-07 18:42:33 +00:00
avihal b4a0af9769 GSdx: New: Dynamic CRC Hacks system (disabled by default).
See tools/dynacrchack/DynaCrcHack.c for full instructions.

For development of CRC hacks (and just for the fun of creating such a system), Allows GSdx to load and use CRC hack logic from an external DLL, and reload it, at runtime, whenever this DLL changes (but act normally if this DLL isn't found).

This external DLL is compiled from a single C source file (a sample is provided, containing the current MGS3 CRC hack logic). There's also a system to automatically compile this C file into the DLL whenever the C file is modified, thus creating a system of instant [save C file] -> [GSdx switches to the new logic].

It's actually a pretty cool system, and might have other usages where it's useful, for the sake of tests/development/tweaking, to modify code logic during runtime. The overhead of such system compared to pre-compiled code is very low (e.g., in the case of CRC hacks which are called thousands of times/sec, I couldn't notice any difference in performance).

Compilation of the C file is currently done using TCC (Tiny C Compiler - http://bellard.org/tcc/ - extremely fast, light and powerful). TCC itself needs to be downloaded separately (~250K download, no install required). The system currently supports Windows only.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4914 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-09-07 18:38:27 +00:00
avihal 337153c9a6 GSdx: CRC Hacks: Yakuza 1/2 - remove blur.
Reminder: See r4894 if you wish to disable specific CRC hacks.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4912 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-09-06 01:22:40 +00:00
avihal 9314c5fed7 GSdx: bypass (prevent) some crashes.
Important: this is not a fix of the cause of the crashes, it just bypasses cases of sure crash. Once that spot is bypassed, things can go wrong elsewhere. Generally, however, things just continue normally. E.g. GT4 (camera changes), Tourist Trophy (camera changes), MGS3 (codec screen when CRC hacks are disabled) and probably more - now don't crash anymore, even at high resolution (but might still get some slowdowns).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4895 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-09-01 13:25:08 +00:00
avihal 4c57d1bbbe GSdx: CRC hacks: allow exclusion of some/all hacks via "hidden" ini pref CrcHacksExclusions.
The list is case insensitive and order insensitive.
E.g. Disable all CRC hacks:          CrcHacksExclusions=all
E.g. Disable hacks for these CRCs:   CrcHacksExclusions=0x0F0C4A9C, 0x0EE5646B, 0x7ACF7E03


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4894 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-30 12:48:54 +00:00
avihal d4d95ff999 GSdx: Shadow of the colossus: crc hack: disable sky (extra) bloom (identical effect as Eliot's special SoTC GSdx build). Thanks to ShadowLady for the help.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4893 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-30 07:14:22 +00:00
avihal 7375307633 GSDX: Show message on console at capture start/end.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4892 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-30 07:11:36 +00:00
shadowladyngemu 8ceda3b102 git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4881 96395faa-99c1-11dd-bbfe-3dabce05a288 2011-08-28 19:52:11 +00:00
gregory.hainaut 783f600711 gsdx, sdl: cast window as expected by sdl
onepad: add an option to control forcefeeback level
cmake: add an hidden option (SHARED_SDL) to build SDL as a shared library to allow pre-load


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4873 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-20 12:17:47 +00:00
shadowladyngemu ae4bad0799 GSdx: CRC hackfixes for NanoBreaker and Kunoichi/Nightshade, removing the shadows that are not properly emulated and just cause 3D to look darker (NanoBreaker in D3D9 just showed a black screen with smoke effects ingame :p).
Minimal changes to the GameDB.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4863 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-11 12:54:57 +00:00
ramapcsx2 d3784af2ab Commit the SPU2-X compile fix from miseru99. GSdx CRC hackfix is included, too.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4862 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-11 09:15:03 +00:00
ramapcsx2 527df7420b V2 of the previous GSdx hack: Now also works in pointlisted FMV's (FFX-2, Legend of Legaia).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4838 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-01 17:42:01 +00:00
ramapcsx2 e181358986 Hack for GSdx hardware to fix inverted videos that showed up with the new GIF rewrite.
The problem as I understood is is incomplete COLCLAMP support.
Thanks to sudo for the hack :)

(Unfortunately we couldn't find out more about why these FMV also *all* flicker.)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4837 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-01 17:18:13 +00:00
shadowladyngemu 52a0eb047d GSdx: CRC hackfixes!
Summary of changes...

Fixed menus and HUD for Spyro: A New Beginning and Spyro: the Eternal Night.

Fixed missing dialogs and reduced the VRam usage a bit for Tales of Legendia ("8-bit textures" help a bit more with Vram/speed). Should be playable now in hardware mode. Thanks to rama for figuring it could be hackfixed this way and the initial patch :)

Half-screen fixes for Ty the Tasmanian Tiger 2, X-men Origins: Wolverine, Call of Duty: World at War - Final Fronts.

Modified the Star Wars: Force Unleashed hackfix a bit, shouldn't have the see-thru objects anymore.
Also modified the Metal Gear Solid 3 and Gran Turismo 4 hackfixes as they needed different skip values for each region (PAL/NTSC). Thanx to avih for the region code... and the free C/C++ lessons :P

The hackfix for Sly 3 was still showing stripes for 3-D and two-player modes, fixed for NTSC version now and hopefully works for PAL one too.

Couple GameDB updates after the gif rewrite.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4833 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-29 18:11:22 +00:00
gabest11 bfbf403bf4 GSdx: FXAA 3.10, page up key activates it
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4828 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-25 11:16:01 +00:00
ramapcsx2 9a16937018 GSdx: Fix an old and silly bug that could cause slowness in native resolution hardware rendering. Thanks for debugging, Lana and avih.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4819 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-23 16:15:00 +00:00
gregory.hainaut@gmail.com 5adba505e7 pcsx2, zzogl-pg: allow to change some default path with compilation flags.
cmake: Add PLUGIN_DIR and GAMEINDEX_DIR options to easily select install directory. Install GameIndex.dbt during install phase.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4811 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-17 11:25:17 +00:00
shadowladyngemu ce8ee34251 Just a couple CRC and GameDB updates.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4808 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-16 03:20:04 +00:00
gregory.hainaut@gmail.com 83b3ac85d3 cmake:
* use the standard 3 step flow: cmake, make, make install
* Remove L10N_PORTABLE option, superseeded by PACKAGE_MODE
* Extend PACKAGE_MODE to select the install directory (FHS or local bin)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4805 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-14 09:02:37 +00:00
ramapcsx2 159f4a691f Lilypad: Disable a confusing control for now.
Also a small comment on GSdx's texture cache lookup.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4793 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-05 23:01:16 +00:00
shadowladyngemu 357030330a whoops...
it kinda works better if you make the hackfix use the function...

GSdx: Dragon Ball Z Budokai Tenkaichi 2's hackfix works with NTSC version now too.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4792 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-05 12:25:31 +00:00
shadowladyngemu 75070d6aaf GSdx: CRC hackfix for Midnight Club 3, fixes the huge vram usage when moving.
Small change to the Burnout hackfix, was skipping too much for NTSC.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4791 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-04 08:19:24 +00:00
shadowladyngemu 5f20a11cd5 GSdx: CRC hackfix for Burnout games, removes garbage from screen.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4790 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-04 05:31:47 +00:00
shadowladyngemu 774f90f642 whoopsie
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4788 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-01 05:32:04 +00:00
shadowladyngemu 539d313622 GSdx: CRC hackfix for Devil May Cry 3, removes bad postprocessing.
Adjusted the SW Battlefront hackfix for the PAL versions (NTSC-U and PAL versions have the same CRC but use slighty different buffer/texture addresses...)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4787 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-01 04:50:32 +00:00
gregory.hainaut@gmail.com 9cb19121e0 onepad: create a key_status object to handle key activities with a single press/release interface
GSdx: remove some linux dialog options which were already controlled by PCSX2


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4780 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-28 21:30:06 +00:00
ramapcsx2 3a0bf818ac That wasn't supposed to go on the svn :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4772 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 16:53:13 +00:00
shadowladyngemu 4f89f21f99 GSdx: CRC hackixes for...
The Lord of the Rings: the Third Age (Removing fat stripes on screen).
Digimon Rumble Arena 2 (Half screen issue).
Star Wars - The Force Unleashed (Hiding HUD and 3d issues. Not perfect and NTSC-U only, not sure if it works with PAL).
Star Wars Battlefront 1/2 (Huge VRAM usage issue. NTSC-U only, not sure if it works with others).
Black Hawk Down - Team Sabre (Half screen issue and removes the night vision filter which was broken and using a lot of VRAM).

Minimal changes to other CRC hackfixes and GameDB.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4766 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 08:31:42 +00:00
gregory.hainaut@gmail.com d968362961 cmake: * improve gtk hack to be compatible with previous cmake version.
* Add some number to the plugin .so file.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4751 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-20 18:09:32 +00:00
shadowladyngemu 6a364aa444 GSdx: Better hackfix for Dragon Ball Z Budokai Tenkaichi 3, missing body parts still happened sometimes. Thanks to miseru99 for the initial patch and testing.
zzogl-pg win: Patch by Kosmos in the forums, corrects a typo that was causing window size to appear as height x height instead of width x height in windows OS (was breaking fullscreen at it too). Thanks :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4734 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-12 22:07:59 +00:00
gregory.hainaut@gmail.com 35b9dfce3f pcsx2: zzogl:onepad: gsdx: merge linux-gsopen2 branch (4730) into trunk
* Gsopen2 support for GS plugins => Support of the PCSX2 GS window configuration panel. Support of all PCSX2 shortcut.
* new shortcut: shift-f12 to stole the input. ZZogl shortcut must be prefixed with ctrl
* onepad: Support/fix/improve of configuration gui, multiple key, mouse/wiimote for analog joystick, dualshock3/sixaxis (basic), dual pad and experimental forcefeedback

Note: it is advices to delete OnePAD.ini


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4731 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-12 14:48:36 +00:00
shadowladyngemu 9036280455 GSdx: No more blinking characters/objects when using EE/VU cycle speedhacks in God of War I :p (also maybe better fix for GoW2)
Added some NTSC-J CRCs found by users of 2ch.net. Thanx :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4726 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-11 17:50:47 +00:00
shadowladyngemu 4dab9c71c3 GSdx: No more blinking characters/objects when using EE/VU cycle speedhacks in God of War 2.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4723 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-11 09:04:05 +00:00
shadowladyngemu d14f0169fa GSdx: CRC hackfix for Ty the Tasmanian Tiger. Couple CRCs added.
GameDB: Onimusha 4: Dawn of Dreams playable again with a patch. Minor other updates.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4706 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-03 09:03:28 +00:00
sudonim1@gmail.com 9af8099569 Fix VS2010 compilation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4675 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-25 10:15:49 +00:00
sudonim1@gmail.com e390feb909 Further to r4673 remove the jitprofiling.lib dependency when linking.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4674 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-25 09:15:39 +00:00
sudonim1@gmail.com c2d55b53ba Removed vtune headers from the project and disabled profiler hooks in GSDx as we can't legally distribute these. To be re-enabled we'll have to find a way to do this without infringing on Intel's copyright.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4673 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-25 02:17:27 +00:00
sudonim1@gmail.com a7c93c75fb Remove some compiled files. Compilation may temporarily be broken in a trivial way (or might not), I don't currently have visual studio installed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4669 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-24 21:47:52 +00:00