Commit Graph

36 Commits

Author SHA1 Message Date
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 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
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
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
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 9a9c41f59e SPU2-X: This should be more correct.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3327 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-27 14:39:28 +00:00
sudonim1 61f7a4ddab SPU2-X: Double IRQ prevention found on real hardware. Only affects developers who didn't read the SDK documentation properly, like me. Nothing fixed as far as we know.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3294 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-25 01:49:26 +00:00
Jake.Stine 0f39ecb725 SPU2-X: Comment gigaherz hack better and disable it by default. (doesn't seem to make much of a diff either way though)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3228 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-19 03:39:17 +00:00
Jake.Stine 29fc645157 SPU2-X: Reverb tweaks. Still shooting in the dark, so no promises on if this helps or hurts. -_-
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3227 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-19 03:33:41 +00:00
gigaherz 067b30caa0 SPU2-X: Experimental Reverb engine changes. Since I don't have any game that shows any obvious reverb usage, and I can't properly test this, I'll leave it here and let other people yell at me later if it makes any game noisy.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3217 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-06-17 01:17:41 +00:00
Jake.Stine d33e2edb48 SPU2-X: Fix for occasional reset/restart crashes caused by invalid regtable lookups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2909 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-27 12:48:14 +00:00
sudonim1 4457fe40fc Removed all trailing whitespace in *.c *.cpp *.h because it irritates me.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2897 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-04-25 00:31:27 +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 1cc740a9c0 SPU2-X: Revert Neill's x4 buffer indexers -- Fixes feedback. Update savestate version to fix prev savestates.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2089 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 14:08:25 +00:00
Jake.Stine da46df4d7c SPU2-X: More reverb work (mostly).
* Fixed some bugs from the prev rev that ended up disabling all reverb completely.
 * Expanded reverb buffers to x4, as per Neill Corlett's recommendation; this should give reverb a lot more "body"
 * Implemented what I suspect is correct behavior for EEA register handling.  When set to zero, effects are disabled.  This fixes nasty reverb and feedback loops in Digital Devil Saga.
 * Reverb down/up mix buffers are now processed even when effects disabled; fixes the reverb being cut off prematurely during the BIOS splash screen.
 * Fixed some silly clamping bugs (should fix distortion problems in some titles)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2086 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 05:50:50 +00:00
Jake.Stine 6032a142dd SPU2-X: Slightly better algo for the new reverb. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2084 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 08:58:07 +00:00
Jake.Stine 99c62c6501 SPU2-X: (experimental) New reverb implementation using a more correct downsampler, as borrowed from "sexypsf."
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2081 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 02:38:27 +00:00
Jake.Stine 158b01b58d SPU2-X:
* Potential Bugfix: Core1's DMA IRQ trigger was being ignored in some instances; might fix some hangs.
 * Major code cleanups, using C++ structure member methods and functions.
 * Improved gui / plugin api / core emulation code separation -- hoping to switch to wxWidgets eventually.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1930 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 19:18:50 +00:00
Jake.Stine c1dbdd7b62 SPU2-X: Upgraded license to the LPGLv3; and changed some #ifdef mess to #pragma once.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1419 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-21 11:00:53 +00:00
arcum42 1745eb2013 SPU2-X: These aren't the buildfiles you're looking for. Move along now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@556 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 21:48:59 +00:00
Jake.Stine dc306bf64c SPU2-X: more fixes to reverb. Digital Devil Saga sounds a lot nicer now. Updated savestate revision so that loading states from before my latest cleanup/optimization won't crash.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@529 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 16:47:06 +00:00
Jake.Stine d97cde6583 SPU2-X: Some bugfixes to reverb that were introduced in my last commit. Still some minor problems in this build. I'll fix them soon.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@527 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 14:20:06 +00:00
Jake.Stine 0ca2f4d2be SPU-X: Major code cleanups across the board, and optimizations to the reverb effects generator (possibly buggy yet)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@525 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 13:36:20 +00:00
Jake.Stine 340db13caa SPU2-X: Added a lowpass filter to the reverb output, which should produce more correct audio (still experimental). Plus many code cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@509 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 20:00:31 +00:00
Jake.Stine 042e904a65 SPU2-X: Introducing the new SPU2-X! After some talk with Gigaherz, It was decided to branch and rename Playground's mod of SPU2ghz to SPU2-X. This commit isn't just a copy. It includes a series of significant revisions. The most notable features are:
* Working Reverb.  Yes, you heard right.  Fully and completely implemented reverb effects!
* Automatic 5.1 speaker expansion.
* Some more bugfixes to volumes.
* All new configuration panels.
* Improved/Bugfixed XAudio2 drivers.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@497 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 05:15:39 +00:00