Commit Graph

2028 Commits

Author SHA1 Message Date
ramapcsx2.code b99aa05cbf Small round of patches for various issues.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5830 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-25 14:25:48 +00:00
ramapcsx2.code 72f7b70f7b SPU2-X:
WinXP should be exempted from Portaudio as the default for now. 
It has a large latency with DirectSound compared to direct use and XA2 isn't available at all.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5823 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 17:03:50 +00:00
gigaherz 01daa0b6fd Change the vs2012 project files to use the v110_xp platform toolset, and the vs2013 project files to use the v120_xp platform toolset, so that the resulting executables can be run in Windows XP/2003.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5822 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-24 15:30:34 +00:00
ramapcsx2.code 992a453a68 SPU2-X:
The preferred audio output module is PortAudio, so making it the default under Windows now (it is already on Linux).
It will use wasapi mode with the default sound device by default, both are configurable though.
This setup gives us better latency and a higher time stretch polling frequency, resulting in better quality overall.
With this we can also lower the main latency default from 150ms to now 100ms.
There is no error checking for the wasapi mode selection yet, as I don't know how this should be done. 
Help would be appreciated (gigaherz!) :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5821 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-23 15:19:43 +00:00
ramapcsx2.code 55eea6317b GSdx:
HTB123 on our forums came up with a hack that removes the broken main character shadow in hardware rendering
in SMT Nocturne.
This should work for all GSdx recognized versions / regions of the game (tested EU and NTSC-U).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5819 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-21 15:27:05 +00:00
gregory.hainaut c2aa4ff3fd gsdx ogl:
* restore the old fxaa (Asmodeam will be integrated when I got time)
* port the recently added new scanline algo


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5818 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-18 14:46:13 +00:00
ramapcsx2.code f8264bce2c GSdx:
Last patch regarding FXAA and external shader loading, I hope :)
Changes are here: http://forums.pcsx2.net/Thread-Custom-Shaders-for-GSdx?pid=343285#pid343285
I've included bin\shader.fx and the settings file bin\GSdx_FX_Settings.ini.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5817 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-17 10:17:24 +00:00
ramapcsx2.code 4015db8403 GSdx: Newest scanlines shader looks much nicer this way :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5814 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-13 18:23:53 +00:00
ramapcsx2.code bdf5e650a6 GSdx: Quick workaround for DX9 until the shader is adapted.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5813 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-13 17:48:43 +00:00
ramapcsx2.code 1155dd6e21 GSdx:
Add another scanline algorithm, made by pseudonym. This one is pretty fancy, using a cosinus function for generating the dark lines.
It only works on unscaled output, so use software rendering or native resolution for hardware.
It's an effect that works best on 240p converted games (like the SNES titles in Mega Man Collection).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5812 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-12 19:47:49 +00:00
gregory.hainaut 23ae6f0641 the regular copy/past mistake
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5811 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-12 12:35:15 +00:00
gregory.hainaut 2238095a82 gsdx ogl: do the same as previous commit but for ogl ;)
* fix the missing auto interlace opt when cycling with hotkey on linux


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5810 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-12 11:38:50 +00:00
ramapcsx2.code 2ac3c47c42 GSdx:
Finish up my scanlines attempt. Now the 2 old shaders are back in and all 3 cycle on F7.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5809 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-11 23:17:07 +00:00
gregory.hainaut f5257b2c3c gsdx ogl: don't rely on GL_ES builtin (3 differents implementations...). Hopefully fix Linux Intel GPU.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5808 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-11 15:01:13 +00:00
gregory.hainaut b5cad8bd6a gsdx ogl linux: use OGL renderer by default otherwise it fallback to unsupported GSDeviceNull which badly crash
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5807 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-10 21:04:04 +00:00
gregory.hainaut 5309dd0e59 zzogl: fix wrong type access
cmake: don't strip by default the binary in release mode
gsdx: disable the regeneration of ogl shader


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5806 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-10 20:25:03 +00:00
refraction cf8912eb2c Dev9ghzdrk: Take the first 3 bytes of the host MAC for the virtual one, should make it unique for people using xlink or multiple people playing the same game.
Hopefully this works anyway ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5805 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 22:39:23 +00:00
sudonim1@gmail.com 53c76b3780 GSDX: Nonsense workaround for VS2010 crash issue. We suspect that memory is getting corrupted but we've failed to find the code responsible. Many different changes result in code that doesn't crash for no obvious reason, this one at least looks vaguely like sane code though.
Reverted optimisation flag for VS2010 release target.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5804 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 21:51:42 +00:00
sudonim1@gmail.com a1f50d4306 GSDX: (FXAA) Treat shader model 4.1 as 4.0 and future shader models as 5 rather than failing to compile.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5803 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 18:32:26 +00:00
refraction 515e268bf5 GSDX: As the Optimization option in VS2010 causes GSDX to crash now, i've disabled it. Whole program optimization is still on and the release will use both (compiled with vs2013). So the SVN can like it or lump it ;p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5802 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-09 00:31:46 +00:00
refraction 5aa0a9a94d GSDX: Modified the FXAA shader loading so Page Up works again. Now loads the shader just in time.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5801 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-07 23:53:30 +00:00
refraction 5e22971db0 GSDX: New shader is quite slow to compile, so lets not compile it unless the user is using it :)
-switching between sw/hw modes, resuming emulation speed back to normal.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5799 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-06 22:51:45 +00:00
ramapcsx2.code a1e387e23e GSdx: Fix for the DX9 crashing issue, many thanks to Asmodean again! :)
(Also sets new defaults with only minor processing, mainly FXAA now)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5798 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-06 18:03:47 +00:00
refraction 76583f5fe5 GSDX: Fix/Hack for NVIDIA stretch issue on drivers > 320.18 with DirectX 11 when using a custom resolution. You can enable it in the HW Hacks section, let me know if there is a game it doesn't fix.
Slight adjustments to positions in the GUI also (OCD'd the spacing a little :P)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5796 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-05 23:31:26 +00:00
ramapcsx2.code 20ffe92ee8 GSdx:
- FXAA shader replaced by Asmodeans shader suite 'PCSX2 Fx 2.00 Revised'.
This is an entire enhancement suite with many configurable options like FXAA, texture sharpening
or lighting tweaks. Some of the effects are pretty advanced so kudos to him allowing it to be integrated with GSdx! :)
Note that there's no interface for the tweaks yet. Until those are done, the defaults will be used.
Release thread here: http://forums.pcsx2.net/Thread-Custom-Shaders-for-GSdx?pid=334766#pid334766

- Disabled an option from the widescreen patches for SH:Shattered Memories.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5793 96395faa-99c1-11dd-bbfe-3dabce05a288
2014-01-05 11:24:43 +00:00
gregory.hainaut 33832b4479 gsdx ogl: Intel driver keep the GL_ES macro undefined...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5785 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-30 14:48:26 +00:00
gregory.hainaut bdea4837c7 ... forget to refresh my patch ...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5784 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-30 10:15:01 +00:00
gregory.hainaut 4d3de6e911 gsdx linux:
* allow to control the gl dectection from the gui (+1 for the user-friendliness ;) )
* disable geometry shader by default on Intel driver


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5783 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-30 09:30:10 +00:00
ramapcsx2.code f4370077f0 GSdx:
Added a check box and config code for the fxaa shader. 
It's not currently hooked up since the shader setup might get replaced in a day or two.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5777 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-28 21:36:29 +00:00
ramapcsx2.code be185275c9 Minor additions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5776 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-28 21:24:25 +00:00
gregory.hainaut 462c40cf4b fix zzogl-cg too
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5773 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-23 14:25:51 +00:00
gregory.hainaut ea804a309f zzogl: fix compilation issue with mesa10
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5772 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-23 13:35:48 +00:00
ramapcsx2.code 5a53b682f0 GSdx:
Added a simple scanlines filter (2nd one activated by F7). No tweaking done yet. 
It shows how to get scanlines that aren't affected by input resolution or scaling.
A good next step would be determining the exact number of dark lines to show :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5770 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-22 15:36:47 +00:00
refraction@gmail.com efa12b4012 Region now know n for Crash Bandicoot CRC added in r5762
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5767 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-12-13 22:10:16 +00:00
gigaherz 4173080028 Because vs2012==vs11 and vs2013==vs12, which is extremely confusing, I renamed the project files to use the full year as the name.
Also fixed some project references to the right filenames.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5764 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-27 16:53:36 +00:00
gigaherz 74378ce378 Created vs2013 files based on the vs2012 code, and fixed a small incompatibility between vs2013 and pthreads.
Removed some missing headers from the vs2010 and vs2012 project files that were causing vs to always claim the projects were out of date.
Also removed some other entries for c/cpp files that were disabled but also missing (I did not search exhaustively).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5763 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-27 16:44:32 +00:00
refraction@gmail.com 64dd73e9a0 Added another version of Crash Bandicoot Wrath of Cortex to the CRC hack list. Not sure what region it is, possibly japan.
(Did this through the google code file editing so if it's broken i apologise :P )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5762 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-25 15:41:27 +00:00
gregory.hainaut 0a9e9f9834 cmake: fix sdl switch typo (close #1448)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5761 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-12 18:56:15 +00:00
gregory.hainaut 5df7af9bc5 cmake:
* new option SDL2_API
* drop GLSL_SHADER_DIR. Useless, shaders are embedded in .h file
* use some hardening flags (for the moment only basic one)
onepad:
* port the code to SDL2 (Note only SDL1 is supported for the moment)
* improve detection of button vs axis (long-standing issue)
* avoid potential overflow on mouse mouvement detection


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5756 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-11-01 21:05:59 +00:00
gregory.hainaut e80b002929 gsdx ogl: Flush various pending work
* try to use more subroutine on VS&PS, unfortunately hit a driver crash!
* Call Attach/DetachContext through GSDevice so I can unmap currently mapped buffer
* Implement glsl part of GL_ARB_bindless texture, again hit another driver crash!
* various fix of GL_ARB_buffer_storage. Basic benchmark show only improvement on 'cold' case, I guess it will improve smoothness
* try to fix GL_clear_texture, no success so far. It seem the extension is limited to basic texture (aka no depth/stencil)



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5752 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-10-24 20:54:27 +00:00
sudonim1@gmail.com 48f284a49e Compilation fix for SPU2-X non-release targets on VS2010.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5733 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-10-12 20:45:02 +00:00
gregory.hainaut 4934e43287 gsdx ogl: in case of EGL_BAD_MATCH try to create the context with different option (hope to fix intel mesa)
cmake: add sdl as a dependency requirement of spu2x


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5732 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-10-05 10:37:48 +00:00
gregory.hainaut 00ea70d4d1 spu2x (linux): allow to use sdl as audio backend instead of portaudio (recommended for pulseaudio user). Close i1413
Thanks to Matt Scheirer for his patch



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5731 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-14 15:23:35 +00:00
avihal@gmail.com 49d417b60e SPU2-X: Stretcher: Better behavior - can now maintain stable 1:1 with 30ms latency on my system if the game is light enough, and much better resilience to infinite underruns (e.g. when going from turbo to 60fps, or from turbo to 10fps, even with under 50ms latency): 1. Improved averaging on init (and after reset) 2. Added reset after few underruns. 3. automatically slightly increase target latency when pcsx2 runs slow. 4. un-staled dynamic tuning (still disabled by default, but now can be enabled and works reasonably well). 5. Lowered minimum latency from 50ms to 30ms.
Next commit will include some cleanups, and I'll probably also remove the dynamic-tunning and related support code (not a lot of code though, but.. it's currently unused). I'm also considering completely removing the old stretcher from the code, such that both dynamic-tunning and the old stretcher will only live in SVN history.

Meanwhile, you can test this patch and report back here if you notice a difference. BTW, on my system I use the portaudio output since IIRC it offers the lowest latency.

As before, to display stretcher messages at the console, enable underrun/overrun messages at the SPU2X debug UI (which is also available on normal builds).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5729 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-12 13:35:29 +00:00
gregory.hainaut c2acd80236 spu2x: correct the modulo parameter of the Timestretcher. Use a size of 128 so the compiler can optimize the code a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5728 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-11 20:56:48 +00:00
gregory.hainaut 44d8301bb2 spu2x: array out of bond (-1)
Performance note, it might be faster to replace the MODULO with an AND. Not sure on the impact
for the new time stretcher algo.

GSdx: fixed use-after-free (linux)

PCSX2: 
* add a define to support address sanitizer (both rely on 0x20000000-0x3fffffff memory ranges..)
* sio_buffer out of bond (-1). Maybe we can move the flush in the 2 if previous branch. It would
avoid the extra test.
* wxGetEnv (linux) generates double free (maybe not thread safe). Cache the result so it doesn't crash 
anymore when switching renderer

Comment/Review/Improvement are welcome :)




git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5727 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-10 11:41:11 +00:00
gregory.hainaut fb684df32b pcsx2: fix 4 arrays out of bond
Gsdx: fix a memcpy src/dst overlap + a clang compilation fix



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5726 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-09-05 20:01:47 +00:00
gregory.hainaut e01c6cd9ce gsdx ogl: the proof of concept commit
* GL_ARB_shader_subroutine for perf
fix for nvidia => add missing shader declaration. Nvidia got +4fps on colin3 :) 

For the moment only 2 PS parameters are supported. Code need to be extended to support others games that often
switch shader program (like xenosaga).
require GL4 class hardware and the option override_GL_ARB_shader_subroutine = 1
Note: strangely on AMD linux it is slower!

* GL_ARB_shader_image_load_store for accuraccy (Date)
Use a signed integer texture and reenable color buffer writing

Current status: Amagami_transparency.gs & P3_battle_shadows.gs are now working on Nvidia with a small perf impact.
Current implementation detail:
1/ setup the standard stencil as before
2/ on remaining pixel, draw once to compute first primitive that will write a fail alpha value.
3/ final draw based on primitive id of step 2

Note: I think we would get a bad behavior if depth test&mask are enabled on step 2/3
Note2: on my limited testcase the perf impact was on CPU. It would be possible to merge step1&2 to nullifying it (could 
even be faster actually), however it would require more GPU power.

Again require GL4 class hardware. And the option UserHacks_DateGL4 = 1



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5725 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-08-28 08:44:16 +00:00
gregory.hainaut 452cf72ddf onepad: fix a bug to handle multiple button (fix #1271)
zzogl: fix memory leak (fix #1431, #1432)
GSdx ogl: disable geometry shader on Nvidia/Windows (I will wait a 3rd implementation to find which one is correct)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5724 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-08-25 12:11:32 +00:00
ramapcsx2.code 3aa0f374d4 Just fixing this oversight. Thanks, gb2985.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5723 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-08-21 10:10:45 +00:00