Commit Graph

169 Commits

Author SHA1 Message Date
gigaherz 954847fca4 Initial work on vs2010 project files for PCSX2 and plugins.
The *null projects don't build, and neither do ZZOgl or ZeroSPU2.
Pcsx2 project has some issues with Resources' custom build steps not being run.
Only Debug target tested.
Needs work before it's usable.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2843 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-14 19:44:04 +00:00
ramapcsx2 a1706ed9f4 Tweaking the GS frame a bit, and reverse the meaning of that SPU2-X timestretch enable boolean. Hate double negations! :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2840 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-13 11:07:18 +00:00
ramapcsx2 d6c2ba9a44 SPU2-X:
A few more adjustments.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2839 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-12 18:38:29 +00:00
sudonim1 bb80927cc3 SPU2-X: Reduce buffer overruns by, um, making the buffer bigger. Apparently I was the first to think of this. (Also force time stretching off when the new sync hack is on)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2838 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-12 17:13:30 +00:00
ramapcsx2 048c1c7573 SPU2-X:
Safer values for the new mix mode.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2837 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-12 15:12:31 +00:00
ramapcsx2 a45c013ff3 SPU2-X:
Moved the async mixing toggle into the ini.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2836 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-12 01:44:59 +00:00
ramapcsx2 ab2897a417 SPU2-X:
New "Peops SPU2-like" async mixing mode.
Can only be toggled in source for now, as it will lower compatibility.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2835 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-11 22:08:32 +00:00
gigaherz 294705aea6 Build on the preivous dsp fix so that it can work with dsp plugins that return partial blocks. It's not tested properly since I don't know of any plugin which does that.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2789 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-28 21:27:53 +00:00
ramapcsx2 db63162c0d SPU2-X:
- Various small changes and a fix by gigaherz for dsp plugins when timestretching is disabled.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2788 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-28 20:48:52 +00:00
sudonim1 6dd23f3c8d SPU2-X: Re-enable resets, the games that were buggy with them enabled now seem to be fixed. This fixes music in Fatal Frame, FMVs in Devil May Cry PAL, and may fix music looping in God of War when run without the BIOS skip hack (or that might work without this change).
SPU2-X: Disable IRQs on reset.  This is a guess, but it fixes the BIOS with resets re-enabled.
SPU2-X: More detailed IRQ logging.
CDVD: Ignore the disc type reported by the plugin, we have our own test and it's working more reliably.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2779 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-26 22:31:34 +00:00
gigaherz 3e6b6c86c1 Prevent the WASAPI code from trying to compile in linux/mac, and add a setting to enable exclusive mode selection from the settings (.ini only for now)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2756 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-19 21:47:24 +00:00
ramapcsx2 86dcb0a1a9 SPU2-X:
Work on support for Wasapi's exclusive mode. Not enabled yet.
Also lower (/8) sound out packet size. Helps the timestretcher 
responsiveness and quality.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2755 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-19 20:28:10 +00:00
arcum42 1f2f855f36 Get SoundTouch working in Linux again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2737 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-18 23:43:34 +00:00
ramapcsx2 ccfb4e1ea9 Updated the SoundTouch library to version 1.5.
It works fine and without further modifications in Windows, for SPU2-X and ZeroSPU2.
Linux is untested, but hopefully also fine :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2734 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-18 20:04:51 +00:00
arcum42 70a3940d75 spu2-x: Update the Linux dialog with the new interpolation options.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2733 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-18 08:30:52 +00:00
Jake.Stine a24e08fe83 SPU2-X: Stupid typo fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2731 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-17 19:59:14 +00:00
Jake.Stine cc4b78d7ae SPU2-X: Optimized interpolation to use a switch-template-based lookup table.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2730 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-17 19:55:35 +00:00
Jake.Stine c173002be0 SPU2-X: Added IRQA testing to Reverb Effects Processing.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2729 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-17 15:26:31 +00:00
Jake.Stine 4c700bc17e SPU2-X: Remove unsaturated version of the XA-ADPCM decoder (unused for a while now). As it turns out, saturation is definitely part of the spec, and some encoders expect/rely on it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2728 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-17 14:11:38 +00:00
Jake.Stine 48fae1a824 SPU2-X: Better version of pseudonym's bugfix.
Details: Properly initialize SCurrent in V_Core::Reset so that it need not be checked during Dummy processing, and add some asserts to test for SCurrent validity.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2727 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-17 14:07:25 +00:00
sudonim1 58b9768c61 SPU2-X: Voices that have never been started have SCurrent=0, which broke the dead voice handling. Fixing this should reduce stray interrupts and improve FPS slightly. Apparently the interrupts affect Wizardry: Tale of The Forsaken Land's music, but the game is quite broken anyway.
Also fixed small timing error in dead voices, probably doesn't affect any game.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2726 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-17 11:49:36 +00:00
ramapcsx2 8c3ea7d766 SPU2-X:
- Altered interpolation descriptions based on testing. Also fixed slight issue with Hermite interpolation.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2725 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 19:30:14 +00:00
gigaherz 50dfe253e7 More interpolators. Implemented Catmull-Rom interpolation. It's simpler than hermite, but doesn't really sound "better" than cubic as far as I can tell.
Feel free to test them.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2724 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 18:48:06 +00:00
gigaherz 329617d351 HIGHLY EXPERIMENTAL implementation of Hermite interpolation method.
Test at your own risk. Tension can be changed in the code.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2723 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 15:33:59 +00:00
gigaherz ad4bbbf920 This should properly fix cubic interpolation. If it seems to dull the audio, it's because it's meant to.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2722 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 14:39:36 +00:00
ramapcsx2 cbad1f9bd5 Small cleanups: Fixed a typo in HwWrite.cpp (could fix games) and removed double system reset call.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2709 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 22:29:14 +00:00
arcum42 58c75437d4 Take care of a few compiler warnings, and get rid of a bit of redundancy in the codeblocks projects.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2701 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-12 09:06:12 +00:00
Jake.Stine 001a286415 SPU2-X: Attempt to fix Cubic Interp mode; plus some cleanups to the XA Decoder.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2700 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-12 02:55:30 +00:00
ramapcsx2 77a40e3c6e Increase version of SPU2-X and GSdx, as enough changes have accumulated.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2693 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 06:46:19 +00:00
ramapcsx2 ba8495dc94 SPU2-X:
- More fixes to "slides". The few games using them should sound mostly correct now.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2686 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-09 19:18:48 +00:00
ramapcsx2 a7aac122d6 SPU2-X:
- Fix Silent Hill Origins, Max Payne 2 and a few others. This was a really old bug :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2681 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-08 02:19:58 +00:00
ramapcsx2 0244097a26 SPU2-X:
- Fixed the clipping audio in many game's sound effects by using a saturating XA decoder.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2679 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-07 02:38:33 +00:00
arcum42 39a628ab9a Get spu2-x working in Linux again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2677 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-06 06:06:45 +00:00
Jake.Stine 1461281f5f SPU2-X: Improved fix for wave recoding crashes; using thread-safe mutex locks. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2662 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-03 19:06:22 +00:00
feal87 db616b0690 SPU2-X : The safe_delete on the WaveDump wasn't "safe" enough and was causing the error on end of wav dump.
Test it and tell me if it works fine now. (F12 is the key for start-end)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2659 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-02 15:52:03 +00:00
arcum42 e6bb0125ec spu2-x: In Linux, add a Debug dialog. Add frames to the other dialogs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2646 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-26 11:48:15 +00:00
arcum42 8fef9fc0c3 spu2-x: Start working on the debug settings a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2645 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-26 09:07:26 +00:00
arcum42 d3311db6df spu2-x: Advanced dialog box implemented in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2644 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-26 07:39:08 +00:00
arcum42 7a254b5308 spu2-x: It'd help if we actually check the value of OutputModules.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2641 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-26 06:04:16 +00:00
arcum42 59459a5df5 spu2-x: Implement most of the configuration dialog in Linux (minus logging and advanced).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2640 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-26 05:45:52 +00:00
sudonim1 ea766db4ce I guess I should've tried this from the beginning. Actually, I did, but it wasn't quite the same code and rama benchmarked it instead of me. Other optimisations are irrelevant, speed is now within measuring error of r2634, I feel like an idiot.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2638 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-25 07:32:55 +00:00
sudonim1 a564d4bbae Runaway voices should be faster with this. My previous ideas for optimising this were based on the principles that there's no way a game could rely on this feature other than requiring interrupts to fire when the muted voice hits the interrupt address. Well... Fatal Frame 2 proved me wrong. SPU2 interrupts aren't even enabled. I have no idea what it's doing.
Rougher granularity than this probably doesn't break anything, this is the finest that should have observable effects.

Not running voices when they're in a special sentinel block may also help games... but not Fatal Frame 2.  It resets the loop register constantly.  I really have no idea what it's playing at and it's driving me crazy.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2637 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-25 07:04:28 +00:00
ramapcsx2 155c96c0aa SPU2-X:
- Pseudonym made the voice free-run system a bit faster. Also fixes some odd sound skips introduced with the first version of this fix.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2636 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-25 05:32:51 +00:00
ramapcsx2 b13e917eb2 SPU2-X:
- Continue voice processing even if the voice is off, as per SPU2 specs.
This fixes Fatal Frame 2 (and likely 3 as well). A really long standing bug we had :) 

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2635 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-25 01:18:27 +00:00
arcum42 f86876f9fe Spu2-x: Hack in some ini file support for Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2630 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-23 13:45:36 +00:00
ramapcsx2 5dba50645b SPU2-X:
- Added a configurable reverb volume boost, sounds nice in some games :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2620 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-21 17:44:48 +00:00
arcum42 df39878a9e Spu2-X: And we have sound in Linux! (Uses PortAudio; Absolutely no configuration right now. Not even in an ini file.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2618 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-21 08:33:49 +00:00
arcum42 5a564ab7b6 Clean up the last commit a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2617 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-21 08:18:25 +00:00
arcum42 dcb76739c8 Hack at spu2-x until it compiles in Linux, and is usable as a null plugin. (No, no sound yet, or configuration dialogs. It's a step in the right direction, though.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2616 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-21 08:04:45 +00:00
ramapcsx2 42cb1c4bb1 SPU2-X:
- Ok, that interrupt commit in r2600 was silly. The "special register write" is a simple set audio to max volume. We don't interrupt those :p
NEW IOP DMAC:
- Make the adma interrupts happen early, as in the previous commit for old dmac.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2602 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-02-17 22:37:13 +00:00