Commit Graph

4274 Commits

Author SHA1 Message Date
ramapcsx2 a2e5c497aa Fixed Virtual on Marz (or Mars) which does an 8 bit DMAC_STAT write.
This broke in r3705, which handles the write instead of ignoring it.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4882 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-29 11:09:26 +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 bd1ed676ec pcsx2: implement thread timing on linux => display cpu usage on title bar
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4880 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-28 09:34:43 +00:00
gregory.hainaut e55da1ab04 pcsx2: implement theading name on linux.
onepad: properly connect the latest button
sdl: do not compile some useless files (which fail to compile on my system btw)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4879 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-27 10:38:02 +00:00
refraction ab19387935 Gamefix: Added gamefix for SOCOM 2 HUD corruption.
The game attempts to loads all data in to the VIF FIFO then stall it. Something goes very wrong.  Maybe one day ill replace this and the transformers gamefix with a FIFO we can turn on, but for now, this'll do.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4878 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-25 16:23:25 +00:00
refraction 7429e797fb Better alter this actually, there will always be one picky game which buggers this up ;p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4877 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-25 13:48:44 +00:00
refraction 737098ba8d MFIFO Changes:
* Vif: Altered how resumed transfers are handled slightly on VIF side (for MFIFO).  
* SPR: Now transfers data to the MFIFO even if not in MFIFO mode if it meets the conditions of the ring buffer location (SOCOM 2)

SOCOM 2 is now playable, sort of, the HUD is a mess (unless a tip shows up), looks like Path3 masking but isn't.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4876 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-25 13:36:23 +00:00
refraction 260b98fb92 Thats better, winmerge helps!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4875 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-23 18:37:04 +00:00
refraction ad4aeca3ad SIF: Better fix in place for random hangs, Tom Clancy Rainbow Six Lockdown now Playable.
Hangs also related to Phantasy Star 4 and FFX Thunder Plains, which are both still ok with this. Also the sif dma errors in Legends of Legaia should be gone again!

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4874 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-23 18:30:40 +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
avihal 9bfbbf0a0c SPU2-X: Stretcher: fixed a bug which may be triggered by some compiler optimizations (floating point comparisons, doesn't happen with current VS2010 project). Thanks to pseudonym for tracking it down, reading tons of asm code, and learning x87 while at it...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4872 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-15 16:55:23 +00:00
gigaherz e0bbc1b814 SPU2-X: Reworked the circular buffer functions for audio output, with a thread-safe version.
This hopefully avoids the issues appearing after long periods of continuous playing.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4871 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-14 22:06:18 +00:00
gregory.hainaut d8b4c7ccc5 debian: cherry pick micove ppa improvement. Thank very much.
cmake: shutup some warning (mostly sdl...)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4870 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-14 14:38:26 +00:00
gregory.hainaut 9e98e7923a debian:
* drop build on 64 bits. It will be supported through multiarch
* switch to SDL1.3, allow to build GSdx


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4869 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-12 19:22:06 +00:00
gregory.hainaut 136300ab2e linux compilation fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4868 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-12 18:25:21 +00:00
gigaherz 94e79f781d SPU2-X: Fix one little bug in the spu2replay code and a few warnings discovered by warning level 4 + code analysis.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4867 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-12 14:47:36 +00:00
shadowladyngemu b54fe4cb9e VS2010 Compile fix for r4865
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4866 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-12 03:31:25 +00:00
cottonvibes ac9bf45f98 pcsx2: Implemented Threaded VU1 :D
Threading VU1 took a lot of rewrites and new code to make possible (MTGS, microVU, gifUnit...), but we finally got to the point where it was feasible, and now we've done it! (so now everyone can stop complaining that pcsx2 only takes advantages of 2 cores :p).

The speedups in the games that benefit from it are great if you have a cpu with 3+ cores (generally a 10~45% speedup), however games that are GS limited can be a slowdown (especially on dual core cpu's).

The option can be found in the speedhacks section as "MTVU (Multi-Threaded microVU1)". And when enabled it should should show the VU thread-time percentage on the title bar window (Like we currently do for EE/GS/UI threads).

It is listed as a speedhack because in order for threading VU1 to have been a speedup, we need to assume that games will not send gif packets containing Signal/Finish/Label commands from path 1 (vu1's xgkick). The good news is very-few games ever do this, so the compatibility of MTVU is very high (a game that does do this will likely hang).

Note: vs2010 builds and Linux builds need to be updated to include "MTVU.h" and "MTVU.cpp".


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4865 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-12 02:31:49 +00:00
gregory.hainaut 60cec5a9b0 spu2x: linux compilation fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4864 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-11 17:36:44 +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
gigaherz 3373f6852b SPU2-X: Give some more range to the balancing, I realized its most probably safe for our ears ( an it seems to be based on testing ;P).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4861 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-10 21:21:49 +00:00
gigaherz 08b2cac8aa SPU2-X: Improved dplII decoder algorithm, it now generates more defined positional balance.
It's still most probably very wrong, but its sounding nice at least. ;P

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4860 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-10 20:59:40 +00:00
gigaherz a4a40441c9 SPU2-X: Added config setting for ProLogic decoding level.
Refactored the ProLogicII code into a separate file and changed it to floating point math for easier debugging. 
Added a basic ProLogic decoder that doesn't try to do surround separation into L/R.

The setting does not have a GUI option yet, since the PLII decoder is experimental and doesn't give too good results.
To change it, set DplDecodingLevel to one of: 0=none, 1=ProLogic, 2=ProLogicII. The default is 0.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4859 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-10 20:08:29 +00:00
gigaherz c0f9d1b619 SPU2-X: Added audio expansion support to the portaudio backend. This change also corrects the volume in normal stereo mode.
Removed an useless method from the module interfaces.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4858 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-10 13:17:41 +00:00
gigaherz a22b36815c SPU2-X: kill a few warnings
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4857 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-10 11:59:08 +00:00
gregory.hainaut@gmail.com b490282c55 spu2x: linux compilation fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4856 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-08 17:49:59 +00:00
ramapcsx2 9a1793b954 Added "portable.ini" to /bin, so SVN builds will work in portable mode by default.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4855 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-08 15:59:06 +00:00
gigaherz 224797c4ec SPU2-X: Experimental change! Lowered the lower latency limit to 3ms if the timestretcher is not being used. This latency will add up to the output latency as usual, but with a good sound chip this should allow overall latencies < 15ms.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4854 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-08 15:56:49 +00:00
gigaherz f2bc219425 SPU2-X: Removed the std::vector I used out of lazyness. The config dialog should no longer keep an ever-growing list of devices, and it has less potential side-effects if somehow the portaudio device list changes while the dialog is open.
3rdparty/portaudio: Removed debug prints on release targets.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4853 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-08 13:59:19 +00:00
gigaherz a5638b1466 SPU2-X: Added configuration dialog for the portaudio backend (windows only).
Added settings for customizing the suggested latency.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4852 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-08 12:49:33 +00:00
gigaherz 44f0cc140a SPU2-X / portaudio: Fix the requested latency from a hardcoded 200ms to "as close as you can to 64 samples / buffer".
Causes internal buffer size allocations to be as small as possible within portaudio and the OS, so it can have bad effects if the number turns out to be too small.
Would be nice if someone with a "real" audio card (Audigy, X-fi or similar) tested WASAPI Exclusive Mode, KS or ASIO with this change.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4851 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 16:37:59 +00:00
gigaherz cb74fd2c10 3rdparty/portaudio: Updated to a slightly newer revision of portaudio, sicne the fixes in it seemed interesting enough.
I also enabled WDMKS backend, but I had to change some #defines to get it to compile, and I can't seem to be able to use it on my Win7 machine. If anyone on XP wants to try it, it will be at their own risk. (use WDMKS hostApi name on the .ini)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4850 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 12:40:25 +00:00
avihal ddcfdb6d77 Test. Dummy commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4849 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 09:33:27 +00:00
gigaherz bb0100deea I went and copypasted the one line I typoed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4848 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 01:55:44 +00:00
gigaherz 1886affc54 3rdparty/portaudio: Fixed portaudio not finding any device because there wasn't any API enabled. The new toggle system requires the compiler to specify the enabled APIs, instead of assuming default-on.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4847 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 01:53:24 +00:00
gigaherz 1d8e159433 3rdparty/portaudio: Fixed the build with vs2008 (I hope). I commited the wrong .vcproj file. Reverted to the previous one and updated the file with the same changes I did to the vs2010 .vcxproj
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4846 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 01:15:49 +00:00
gigaherz dabe415929 3rdparty/portaudio: Fixed the build (windows). Somehow it compiled in devel/release, but not in debug. Should have failed in both of them though...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4845 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 00:58:00 +00:00
gigaherz 5a3cd8e57e 3rdparty/portaudio: Updated portaudio to the march 26 stable release (svn rev 1647). Too many changes to list here.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4844 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-07 00:50:05 +00:00
avihal@gmail.com 529f620e37 SPUX: New stretcher: Should be slightly more stable now, compared to r4840.
On 4840 I added dynamic tuning (which may have slight negative effect on stability) to adapt to different iterations/sec of different systems, but I didn't like this system too much. On 4840 I also made a small change which, I now understand, factors out the differences between systems in this regard, essentially making dynamic tuning not required anymore. So now dynamic tuning is disabled.

If you enable the SPU2X messages (and the overrun messages), you would see log messages similar to this:

buffers:   44 ms ( 89%), tempo: 1.000000, comp: 1.000, iters: 764, (N-IPS:750 -> avg:50, minokc:50, div:100)

If the iters value (764 at this example) on your system when running at 100% speed (50/60fps) is higher than 1000 or lower than 500, then please comment here and post few of the log lines.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4843 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-04 18:21:32 +00:00
avihal@gmail.com fc359249e4 SPU2X: Better control of debug messages. (Now they actually print when enable at the SPU2X debug GUI).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4842 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-04 16:51:59 +00:00
ramapcsx2 0a4c082e4b SPU2-X: Clean up some logging code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4841 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-04 14:27:21 +00:00
avihal@gmail.com 36fc051238 SPU2X: New stretcher: hopefully works better than r4834 (same goals as r4834: better resiliance to very high/low fps, compared to r4820).
I'm not fully happy with it, as it's a bit complicated for my taste, so feedback about how it performs will be appreciated.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4840 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-02 18:48:48 +00:00
gregory.hainaut@gmail.com 34569047b4 cmake: add/delete files
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4839 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-02 06:52:53 +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 c8b7b410a3 Fix VS2010 compiling. Patch by miseru99, thanks :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4836 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-01 15:40:20 +00:00
cottonvibes f816748d72 microVU:
- Fixed a bug with mVU's ESIN implementation. This finally fixes the flower-petal bug in Radiata Stories (and hopefully the clouds-bug in VP2 but havn't tested). Rama and I have wanted to fix this for a long time, but never knew the problem :p
- Improved implementation of some undefined behavior that happens on branches to take into account pipeline stalls. 

gif / vif:
- Added some logging code that parses gif packets. It can be enabled by the PRINT_GIF_PACKET macro in Gif.h
- Deleted some old gif code.
- On ReadFIFO_VIF1() clear the out-reg to prevent uninitialized results in case GSreadFIFO() doesn't modify it...
- Create a fallback for GSreadFIFO2() so that its always defined (as long as the plugin implements GSreadFIFO()) 

pcsx2:
- Organized the virtual folders in vs2008 a bit...

Note: vs2010 and Linux builds need to be modified to add Gif_Logger.cpp and delete GIFpath.cpp


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4835 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-08-01 03:16:42 +00:00
avihal@gmail.com 92e67c218a SPU2X: New time stretcher: Improved behavior on extremes.
1. Much better behavior at extreme low/high FPS (less skips/lower latency).
2. As a result, I was able to reduce internal latency by 50% (50ms config now equals 100ms before).

Recommended latency config for stretcher: 100ms.
For rhythm games, if your FPS is very stable, I recommend 50ms.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4834 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-31 11:27:50 +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