Commit Graph

547 Commits

Author SHA1 Message Date
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 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
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
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
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 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 ba2ec6fe59 all: gcc warning clean round 4
* remove unused variable
* move static function from h into cpp
* Initialized hw_by_page to 0xFFFFFFFF instead of -1 (number must be a positive integer)
* Use a s32 fore m_current_lsn instead of u32 (use -1 as error code)
Bonus: a couple of fix for clang compiler (doesn't mean that it fully compile with clang)
* remove useless __debugbreak on linux
* use short for 16bits atomic function


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5695 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-07-03 18:42:05 +00:00
gabest11 ddaa892726 Removed ATL/MFC dependencies from every project, the free version of visual studio does not have those. It compiles with vs2012 express now, will fix others later, in case they are broken.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5692 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-07-01 21:28:58 +00:00
gregory.hainaut a4475a4595 spu2x:
* remove iconvert.cpp not used anymore
* change copyrigh header from GPL to LGPL. Those 2 files are only basic .h. 1 licence by plugin is enough ;)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5691 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-07-01 16:43:35 +00:00
gregory.hainaut d81254469a gsdx ogl:
* fix shader compilation on Nvidia (broken on r5682)
* fix various memory leak thanks to Valgrind

Cmake: fix a minor typo


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5688 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-30 11:18:46 +00:00
gregory.hainaut d9af23c946 plugin: restore sprintf_s on windows and hopefully fix vs201n compilation
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5684 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-28 17:11:16 +00:00
gregory.hainaut 3c7167be50 clean (some) gdb warning: round 1
* use svnrev.h on linux too
* replace sprintf_s with snprintf (hope it still compile on Windows)
* init integer with 0 instead of NULL
* various int -> u32/uint32/uint on for loop index
* remove a couple of unused variable
* init few variable
* disable unused warning results


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5683 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-06-28 10:43:50 +00:00
ramapcsx2 8f9e04dc9d GSdx, SPU2-X: Remove old code and disable a now useless warning.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5559 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-02-12 18:41:33 +00:00
ramapcsx2 fae268b269 One more patch by KrossX:
Should fix the VS2012 project files for when only VS2012 (and not VS2010) is installed.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5557 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-02-12 11:46:36 +00:00
ramapcsx2 8d80ff0652 SPU2-X: Adding a log for bad pitch settings, in preparation of changing current behavior. (Need to check some games that do it first)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5545 96395faa-99c1-11dd-bbfe-3dabce05a288
2013-02-05 14:21:24 +00:00
ramapcsx2 7f45b21be1 SPU2-X:
Just adding a log to devel builds. This is a curious case we want to be notified about.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5478 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-12-13 14:44:36 +00:00
sudonim1@gmail.com 2a0bbc89db SPU2-X: Actually ignore successive writes within 4 ticks to the same key-on bit, don't just say we do. I think I just forgot this return in r5418. Fixes The Legend of Spyro: The Eternal Night (probably the other two legend games too).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5460 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-21 14:32:55 +00:00
ramapcsx2 6050e9bb05 SPU2-X: Made the message "KeyOn after less than 4 T disregarded" less visible on release builds. It tended to slow games down.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5459 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-21 12:18:50 +00:00
sudonim1@gmail.com 1468b21ca0 SPU2-X: Disabled the parked voice processing optimisation completely for now. Fixes Silent Hill: Shattered Memories, maybe others. Reduces speed for all games. However much you hate this change, I hate it more.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5446 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-10 18:10:34 +00:00
ramapcsx2 28e6d96955 SPU2-X: 2 known games set an illegal reverb EEA that randomly causes crashes in the plugin.
We need to figure out what real hardware does with it but for now let's disable the effect engine in that case.
Affected games: Summer Beach Volleyball and 18 Wheeler.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5445 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-11-07 19:39:29 +00:00
gregory.hainaut f53a062063 license: update the copyrigh address to please linux distribution
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5436 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-19 20:27:50 +00:00
ramapcsx2 e7eb00469a Added correct clamp modes for GT4 to the game database. Fixes various issues with the GUI.
Also added a mark for Klonoa 2 problems with SPU2-X.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5434 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-15 19:39:43 +00:00
ramapcsx2 dece4c730c Add NFL '12 to the database and silence a SPU2 cache clear notice.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5430 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-09 13:07:06 +00:00
sudonim1@gmail.com 2cc794e638 SPU2-X: Add an assertion that I used (in a more stupid and long winded form) to find the effects memory corruption bug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5427 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-03 01:45:11 +00:00
sudonim1@gmail.com 8d07fdf165 SPU2-X: Update effects engine indexers when the effects area is moved and kept the same size. Not doing so caused SPU2 memory corruption in Sphinx and the Cursed Mummy and maybe others.
Save state compatibility broken.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5426 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-02 17:43:21 +00:00
sudonim1@gmail.com 86e5f32efb SPU2-X: Another change to the shortcut processing of voices, check the actual loop flags in memory rather than the ones in the voice structure because the memory might've changed. Fixes Innocent Life - A Futuristic Harvest Moon.
Also, check both cores rather than the current core, that was a mistake.
Speed-- again.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5425 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-10-02 17:40:42 +00:00
sudonim1@gmail.com 77eee6e2b9 SPU2-X: Add extra exceptions to shortcutting silenced voice processing (which is basically a speedhack and should probably have a GUI option). Unfortunately this is a significant speed hit for all games, but I have no solution to this for now. Fixes Gegege no Kitarou - Ibun Youkai Kitan and quite likely others.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5421 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-22 22:11:37 +00:00
sudonim1@gmail.com f1cffa6f7f SPU2-X: Delay starting voices for 4 SPU2 cycles after key on. No idea if this is right, but there must be a reason some register writes aren't effective for a few cycles after key on, and this seems likely. Fixes DQ5 adventure log music and Le Mans 24 Hours everything.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5418 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 15:17:16 +00:00
sudonim1@gmail.com 636ce9fc1d SPU2-X: Fix old crash on state load if logging is enabled. (It's appalling that this is in the state though.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5417 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 13:39:57 +00:00
sudonim1@gmail.com 4d9e07b311 SPU2-X: Removed the temporary "TDA" variable from the core structure. Breaks state compatibility.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5416 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 13:05:04 +00:00
sudonim1@gmail.com 7dc3b25ddf SPU2-X: Trigger interrupts only if TSA is incremented to IRQA on the basis that we know that the final TSA value after the transfer is checked. Also fix inconsistency in TSA after transfer in one case. Fixes Chaos Legion bgm.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5415 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-21 13:03:19 +00:00
gigaherz 31f685c490 [VS2012] For some reason when I made the conversion I totally forgot to copy these, and I didn't notice that until yesterday.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5403 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-05 18:04:09 +00:00
sudonim1@gmail.com 4ab5b03bdc SPU2-X: Use zero coefficients when the sample data references a higher entry in the coefficients table than we know about and print a warning to the console if logging is enabled. Fixes audio glitches in "Crash" series games. Also fixed the voice stop log, it was printing when voices looped.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5402 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-03 11:43:16 +00:00
sudonim1@gmail.com 7e528d3f1f SPU2-X: cleaned up the re-enabled debugging messages from r5400.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5401 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-03 09:55:08 +00:00
ramapcsx2 2e1b138219 SPU2-X: Add the alignment check to console logging.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5400 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-02 22:20:18 +00:00
sudonim1@gmail.com d4e4abfe82 SPU2-X: TDA is a fake internal register (which should probably be nuked), so reading from the FIFO (or whatever 1AC is) certainly shouldn't use it. Also fixed up related code a little. We don't know of any games which actually use this though. Actually I don't know if we know that reading this register does anything, this could all be the product of an overactive imagination.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5399 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-02 22:07:11 +00:00
sudonim1@gmail.com 7027c54309 SPU2-X: Don't force align transfer addresses, fixes The Bouncer. I honestly don't know on what basis they were force aligned in the first place. The Bouncer very strangely has correctly aligned sample data in IOP memory which it uploads using an unaligned DMA with SPU2 set to an unaligned address, resulting in the data being correctly aligned in the end. Weird. It also writes the address twice in the order high word, low, low, high, the first pair being aligned and the second pair not. Really weird.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5398 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-02 21:33:16 +00:00
sudonim1@gmail.com b643fa06d5 SPU2-X: Fix a minor logging bug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5397 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-09-01 13:10:38 +00:00
gigaherz a21c85266c Make PCSX2 compile with Visual Studio 2012 (3/3): Upgrade the project files and fix a few project names. Update the .sln to point to the right project files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5384 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-19 19:54:12 +00:00
gigaherz 027b7a8b98 Make PCSX2 compile with Visual Studio 2012 (2/3): Copy project files and solution from their vs2010 originals. Not updated yet!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5383 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-08-19 19:45:56 +00:00
sudonim1@gmail.com 179246a4eb SPU2-X: Tweak the quick fix in the previous rev a little: also select the default device if a GUID is specified but not present in the enumeration.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5317 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-20 12:28:13 +00:00
sudonim1@gmail.com aa54e28add SPU2-X: Quick fix for an issue with dsound configuration dialog where if the default device is selected, nothing is initially selected in the combo box and on writing the configuration uninitialised memory is used for the GUID.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5316 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-20 12:21:44 +00:00
refraction c6d820ff4e SPU-2X Project too for VS2010
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5259 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-06-01 18:24:37 +00:00
gregory.hainaut 3d700b9264 spu2x: revert commit 5157. Soundtouch author change in mind and go for LGPL2+ so we come back to LGPL3+ to avoid license proliferation.
various:
* rename the man page as requested by arch users.
* Delete pcsx2/* symlink. Was only useful for autotool removed few years ago.
* commit the top metadata of my previous branch merge.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5172 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-23 18:55:24 +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
ramapcsx2 03db2fcf4e SPU2-X:
Some games use volume slides combined with reversed phase. 
Gigaherz tweaked the code to handle this nicer (fixes Mashed Drive to Survive noises).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5139 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-04-01 14:09:24 +00:00
ramapcsx2 52a54fda62 Null pointer protection and warning in LilyPad and SPU2-X savestates and a small init fix in SPU2-X.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5112 96395faa-99c1-11dd-bbfe-3dabce05a288
2012-02-29 14:51:55 +00:00
avihal 95b1c260af @gigahertz: some sensitivity is required when touching a small plugin! Let's hope I got it right :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5025 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 23:03:31 +00:00
gigaherz c9c94978e5 <avih> hmm.. this is wrong(-ish). I've updated portaudio, but spu2x still shows as version r4949 ... can this be fixed? or maybe i didn't compile it properly?
...
<avih> so, come on, touch spu2x to have recent rev number

Touched... hopefully I touched right. Felt awkward.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5024 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-12-27 21:03:53 +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
sudonim1@gmail.com 553635f00d SPU2-X: silly logic error in IRQA testing for DMA, fixes Atelier Iris, maybe others.
Thanks to rama for testing.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4945 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-10-27 15:34:14 +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
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
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
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
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
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
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
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
cottonvibes c05dc759e3 Big gif transfer code rewrite!
Pcsx2 now has a gifUnit class which acts like the ps2's gif and executes a single gif transfer at a time (and performs path arbitration according to priority and path3 slicing).

This new code is generally a speedup for most games. Particularly VU heavy games like GoW.
This revision breaks old saved state compatibility so don't update if you wish to keep playing with your old saved states.
Leave comments if this revision fixes or breaks anything...

Message to GS Plugin authors:
This new code now uses only 1 gif callback to transfer data to the gs plugin (GSgifTransfer).
pcsx2 also is garaunteed to send full GS primitives to the plugin. So you don't have to account for partial-transfers anymore.

Thanks goes out to shadowlady who tested around 500 games for me :D

Note 1: The old gif code is still in this revision, and can be enabled by the USE_OLD_GIF macro. The old code will be deleted soon.
Note 2: This revision also enables assertion dialogs in devel builds, and changed a lot of assume cases into assertions.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4821 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-24 13:02:50 +00:00
avihal@gmail.com 7cb4dbb8d9 SPU2X: New (simpler) time stretcher algorithm.
Should prevent erratic tempo variations near 100% speeds (compared to the previous implementation), and generally allow much lower latencies while keeping the audio stable (on all audio systems).
E.g. my tests show that at 70ms latency it can properly handle sharp speed variance of 50%-100%. If your game generally doesn't get slower than 70% speed, 50ms latency would probably be fine.

Note that on extreme scenarios (e.g. extreme sharp drops in speed) it doesn't try to keep the audio continues at all costs. If your game exhibits such behavior (audible clicks, etc), increasing the latency a bit at the config would help.

Comments on actual performance/quality on different systems would be greatly appreciated.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4820 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-24 10:58:42 +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
arcum42 465dbc9203 SPU2-X: Fix the linux version, and add a checkbox for the de-alias filter.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4810 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-17 02:38:18 +00:00
shadowladyngemu a88863ada2 SPU2-X:
Adding an option for the de-alias filter implemented in r4118,
currently overemphasizes the highs so it's disabled by default
but I like it for some games :P

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4809 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-07-16 12:41:29 +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
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 73b46c4b7d SPU2-X: Version bump.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4779 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-27 22:54:25 +00:00
sudonim1@gmail.com 2a73457b4b SPU2-X: Apply Neill's recommended 2/3 multiplier to the input. The results still are not like on the PS2, but we're now as good as Neill's research allows. We'll have to do our own from here on.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4778 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-27 17:17:29 +00:00
gigaherz 99ee4a8df4 SPU2-X: Updated the spu2replay engine so it works again. Windows-only still, and it lacks a proper gui, but it can be used to dump the actions the game is doing and replay them later without the rest of the emulator.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4777 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 23:45:58 +00:00
ramapcsx2 5677ed5661 SPU2-X: Forgot to bump the savestate version.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4776 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 19:43:21 +00:00
ramapcsx2 6d9c794a63 SPU2-X: Short term reverb quality hack (half the input volume), until we settle for smth.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4775 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 19:28:58 +00:00
sudonim1@gmail.com aaf8f9067a SPU2-X: Extra clamping. I think we used to have this and it was taken out to try to boost the reverb.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4774 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 17:48:59 +00:00
sudonim1@gmail.com 6b1136df4e SPU2-X: shifting some code around in the effects engine, any change in output is probably a bug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4773 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 17:46:57 +00:00
sudonim1@gmail.com 367ab01a60 SPU2-X: We had two SPDIF modes reversed. I don't really understand the SPDIF modes but these are the bits the library sets. Fixes Gradius 3+4, issue 925.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4771 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 15:43:38 +00:00
sudonim1@gmail.com 8c781f9845 SPU2-X: More parens needed, always more!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4770 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 14:03:27 +00:00
sudonim1@gmail.com 27e9b57fed SPU2-X: Another error in the bitshifts, not sure if it's mine or older.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4769 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 14:01:33 +00:00
sudonim1@gmail.com 244f16c57a SPU2-X: Removed reference to x86emitter as we don't seem to use it any more (some brief optimisation experiment a while ago?)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4768 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 13:40:14 +00:00
ramapcsx2 b26f787e22 SPU2-X:
Removed the fake reverb since the real stuff started to work :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4767 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 13:24:22 +00:00
sudonim1@gmail.com 2bb7704fbd SPU2-X: I was being silly, those -1s are unnecessary (I was thinking we were downcasting for some reason).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4765 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 02:08:51 +00:00
sudonim1@gmail.com c22e933f5e SPU2-X: Tried to fix the incorrect bitshifts back from when Neill's code was optimised while the registers were broken so it wasn't testable. My maths is probably off, the code needs reviewing. The "- 1"s are so that -1 * -1 = just short of 1 instead of -1 (overflow).
With this, reverb maybe sounds somewhat like the PS2 for the first time ever!?

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4764 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 01:34:41 +00:00
sudonim1@gmail.com 43fba9aab8 SPU2-X: Oops, I'm the one who spotted this when we were discussing it too.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4763 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-25 00:12:31 +00:00
sudonim1@gmail.com 373c2cd47f SPU2-X: Reverted back to the last version of the reverb engine before the rewrite plus some backwards lerp fixes (accident in optimisation in r2089). Thanks to gigaherz (I guess? This is mostly your fault.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4762 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-24 23:55:19 +00:00
sudonim1@gmail.com 297843ddaf SPU2-X: Both cores now (ignore previous commit)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4761 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-24 23:09:45 +00:00
sudonim1@gmail.com 86763c806f SPU2-X: The reverb registers in the register pointer table are inconsistent with the register definitions, they have always been inconsistent, everything we have done to fix reverb was invalid because of this. Not sure where we go from here.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4760 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-24 22:46:53 +00:00
sudonim1@gmail.com c509e2afb7 SPU2-X: Testing showed that writing effect area registers is not entirely ineffective as previously assumed while effect area writing is enabled on that core. The new assumption is that internal registers reflect the values of the external ones while effect area writing is disabled. Also increased logging level of these registers.
Save state compatibility broken.

Fixes issue 796, grandia 3 noise before squenix logo.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4759 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-24 18:41:56 +00:00
sudonim1@gmail.com 73b97e74d4 SPU2-X: If a bit we don't understand goes high, clear a register we don't understand. Don't ask me, but it seems to make the BIOS happier and Devil May Cry works again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4758 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-23 20:14:01 +00:00
sudonim1@gmail.com ddaea35d6e SPU2-X: Bump savestate version since I broke compatibility with r4754
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4756 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-22 11:49:49 +00:00
sudonim1@gmail.com 9e34391cde SPU2-X: Refix Zero: Akai Chou (and others fixed in r4735 probably). It was a slip in the dead voice code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4755 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-22 11:42:56 +00:00
sudonim1@gmail.com 629a6826d2 SPU2-X: Quality fix (?): take crest value to mean the electronics definition and clamp modulated pitch to [0,0x3fff] on the basis that the SPU2 probably is incapable of decoding two words of samples for each voice in each tick. Honestly this is still guessing, we only really know that it was wrong.
Test FFX tone when it's your turn to act, FFX underwater music?, xenosaga movie skipping sound effect, god knows what else.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4754 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-22 02:27:39 +00:00
sudonim1@gmail.com eba05e18c2 SPU2-X: Fix minor register logging bug (probably not the only bug in this code)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4753 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-22 00:04:00 +00:00
sudonim1@gmail.com 9dd3cf8078 SPU2-X: Improved (hopefully to perfection) the reporting of NAX by moving code around in the decoder. Fixes Magic Pengel, hopefully no regressions (but it does intentionally change when some IRQs fire a bit so there might be some, but if so this is a step towards fixing other finicky games).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4752 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-21 22:29:59 +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
ramapcsx2 f60012a209 SPU2-X: Version bump.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4747 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-16 16:59:48 +00:00
sudonim1@gmail.com b16629acc9 SPU2-X: Change initial IRQA value, fixes F1 2005. This is a weird one, read the long comment.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4746 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-15 18:01:04 +00:00
sudonim1@gmail.com 86b80f2603 SPU2-X: Little mistake in input area IRQ code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4745 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-15 16:24:42 +00:00
sudonim1@gmail.com 94d6aaf4bb SPU2-X: Flag effect area for updating on effect area register writes rather than core attributes change. (For change in testing. Committing separately for regression testing purposes.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4744 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-15 00:57:04 +00:00
ramapcsx2 61a7804b90 SPU2-X: Debugger was missing one digit of the IRQA, whops :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4743 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-14 22:12:45 +00:00
sudonim1@gmail.com bcd2ceaa6c SPU2-X: Process input area regardless of ADMA status. Fixes Burnout, maybe others.
This is a guess, not confirmed by hardware testing, but seems logical.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4742 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-14 18:02:57 +00:00
sudonim1@gmail.com c4196d542d SPU2-X: Change the dead voice read logic to match the live one. (Probably doesn't affect anything.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4741 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-14 15:54:04 +00:00
sudonim1@gmail.com 4d92ef1f90 SPU2-X: Fixed old misunderstanding about the function of the loop bits and documented our findings and unverified suspicions.
Fixes Zero: Akai Chou, Tomb Raider: Legend, Tomb Raider: Anniversary, maybe others.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4735 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-13 00:00:58 +00:00
sudonim1@gmail.com ae004d5e58 SPU2-X: partial and probably incorrect (but good enough for the BIOS) support for reading back key on and key off registers, just returning the last written value.
We need testing to determine how these actually behave and want to do some game testing to find other partially implemented registers before that.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4727 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-11 19:24:49 +00:00
ramapcsx2 2e81d03624 SPU2-X: Fix for Fatal Frame as per sudo's findings.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4722 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-11 00:49:26 +00:00
sudonim1@gmail.com 555e9ee039 SPU2-X: Implemented SPU2reset method for handling a PS2 reset.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4721 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-08 20:30:57 +00:00
sudonim1@gmail.com f423da573f SPU2-X: Completely removed the concept of core resets. We were unable to find any evidence supporting their existence.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4720 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-08 20:14:14 +00:00
sudonim1@gmail.com 6b2ba33dd9 SPU2-X: Missed a spot for the core mixup, noticed that we're not using our own MMIX value on init and removed MMIX fiddling from reset entirely due to lack of evidence.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4719 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-08 19:32:17 +00:00
sudonim1@gmail.com cd6f4bc10b SPU2-X: fixed core mix up for effect area addresses and changed MMIX values on reset (which we're not not sure is an actual SPU2 feature)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4718 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-08 19:18:18 +00:00
sudonim1@gmail.com 73db84d024 SPU2-X: Revert the ENDX changes from r4700 as they weren't based on testing but confusing documentation.
SPU2-X: Found a crash on writing to the low word of the effects end address during testing.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4717 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-08 18:53:55 +00:00
ramapcsx2 3f450d3158 SPU2-X: Some visual debugger additions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4716 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-08 06:44:15 +00:00
ramapcsx2 e853af0901 SPU2-X: There must be some other flag that goes with the FxEnable one ><
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4701 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-02 08:22:20 +00:00
ramapcsx2 2a95dadb73 SPU2-X: Changes to reflect results of tests on my PS2.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4700 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-06-02 08:12:40 +00:00
gigaherz 5f66e57ed1 SPU2-X Reverb: I put the mask in the wrong place.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4690 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 20:16:40 +00:00
gigaherz ecc651ffe1 SPU2-X Reverb: Apparently some reverb presets use offsets outside of the ps2 memory ...
Rama asked me to note that it still doesn't sound right yet. I will try to figure out the reason later.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4688 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 17:52:03 +00:00
gigaherz ea367e8326 SPU2-X Reverb: make the filter actually look the way a FIR filter is supposed to look.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4687 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 16:46:41 +00:00
gigaherz 881982229c SPU2-X Reverb: Echo/Delay effects don't work without this.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4684 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 16:24:18 +00:00
ramapcsx2 5509c9784a SPU2-X: Better reverb params logging.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4683 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 15:03:49 +00:00
gigaherz b201cbb3b6 SPU2-X: Stop the ear-killing overflows by actually shifting the output as it was supposed to be shifted.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4682 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 14:47:30 +00:00
gigaherz 948de6d452 SPU2-X: Improved Real-Reverb engine algorithm.
Before trying this revision, make sure your speakers/headphones are not too loud.

I have been looking at it for a long while, and I decided it couldn't be just "somewhat similar" to a Schroeder Reverberator.
The SPU2 designers would have actually used a working design for a reverberator, so chances are they implemented Schroeder's.

I haven't had the chance to test this code in spu2-x, but the results in the "Impulse Response Analyzer" tool I coded specifically for this, are positive.

Some tweaks might be needed, because I'm not sure if Neill got the IIR part right or not.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4678 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-28 02:37:32 +00:00
ramapcsx2 c440b442ac SPU2-X:
Some work on the fake reverb. Renamed it to "Custom Reverb" and the original to "SPU2 Reverb".

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4665 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-23 17:14:56 +00:00
ramapcsx2 695b3ba900 SPU2-X:
- Replaced the reverb boost control with a selector for normal reverb or a new mode we call "fake reverb".
- This new mode (coded by gigaherz) is intended as an alternative for the only partially working "normal reverb".
- The new mode will have to be tuned yet to sound good.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4662 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-21 17:47:33 +00:00
ramapcsx2 149fcf9662 SPU2-X: Configuration for the output volume in the settings dialog. And it works, too! :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4661 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-21 13:44:10 +00:00
ramapcsx2 88cf49c2b6 SPU2-X:
Configurable output volume, ini only for now.
Can be set with "FinalVolume", from 0 to 100.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4619 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-04 11:01:43 +00:00
gregory.hainaut@gmail.com 763f21cfbc pcsx2 & spu2x: allow to compile[0] with lto on linux. It removes an useless wx feature on linux.
[0]: it needs gold linker, tuning parameter large-function-growth to 5000 and gcc-4.6.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4617 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-05-02 19:11:00 +00:00
gregory.hainaut@gmail.com 5335c64f12 spu2x: remove some definition (fix gcc-4.6)
gsdx: add a missing include (fix gcc-4.6). Force an init of sdl to allow in-emulation configuration


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4587 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-23 08:11:40 +00:00
gregory.hainaut@gmail.com 2abb0c0f1d spu2x: On linux uses by default the ALSA api when no inifile exists
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4574 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-14 20:59:00 +00:00
shadowladyngemu 46dd600319 GSdx: CRC fix for Time Splitters 2 (PAL), seems the NTSC one is already doing a similar fix by default.
Also, reverting a whoopsie in my last commit :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4570 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-12 14:48:27 +00:00
shadowladyngemu f3ca530043 GSdx: CRC Hackfixes for "Demon Stone" and "Big Mutha Truckers", removes postprocessing and "fixes" the green/purple screens.
Small change to the Crash Bandicoot hackfix.
GameDB: Minimal updates.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4569 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-04-12 14:11:03 +00:00
ramapcsx2 cf9600fd9f SPU2-X:
Tweaks to async mixing, making the buffer stay closer to 50% filled and also making it more effective on sharp FPS drops.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4500 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-28 00:03:06 +00:00
sudonim1 22c1b30ed6 Fixed inconsistent newlines / added as many svn:eol-style=native properties as I could without killing myself.
Please set up auto-props in your svn client.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4488 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 05:06:49 +00:00
sudonim1 7d75a5a53b Missed some SPU2-X and all zzogl code in the last commit.
Fixed assumption that all paths received from pcsx2 end in the path separator.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4484 96395faa-99c1-11dd-bbfe-3dabce05a288
2011-03-25 01:09:18 +00:00