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
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
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
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
- 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
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
[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
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
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
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
Fix the timestretch "Reset Defaults" Button to actually work (Winodws. Linux already works, I think.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4436 96395faa-99c1-11dd-bbfe-3dabce05a288
- Set default interpolation mode to "Catmull-Rom". It most closely mimics the original sound.
- Bit of documentation and a fix for Async mixing core resets.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4330 96395faa-99c1-11dd-bbfe-3dabce05a288
Fixed an ENDX register bug and switched the dealias filter with the frequency response filter.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4322 96395faa-99c1-11dd-bbfe-3dabce05a288
* fix linux compilation debug build
* Add a linux option to select the API output of portaudio (ALSA, JACK and OSS)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4224 96395faa-99c1-11dd-bbfe-3dabce05a288
* resolve a namespace conflict between std::count (due to a 'using namespatce std;' directive) [debug builds only]
* switch all MSW-specific code to be unicode compliant so that unicode-only Utilities lib can be used under Windows. [should work, but needs proper testing]
* fix some properties sheets so that windows-specific DLL dependencies (common controls and UUID stuff provided by Windows) are linked automatically into wx/utils based plugins.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4140 96395faa-99c1-11dd-bbfe-3dabce05a288
Adapted the de-alias and frequency response filters from nenolod's "UPSE", a high quality PSF player.
(http://nenolod.net/projects/upse/)
These 2 filters are present on the real SPU(2) as well and are meant to increase the audio quality
by fixing aliasing and then equalizing the final result.
It currently mostly seems to accentuate the presence and highs.
Thanks a ton for hinting at this and for letting us adapt your code for SPU2-X, nenolod! :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4118 96395faa-99c1-11dd-bbfe-3dabce05a288
Fix ADMA not getting read when in spdif bitstream mode (which some games offer for FMVs).
This option would cause them to hang indefinitely.
There's something wrong with the read audio but at least it doesn't die ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4055 96395faa-99c1-11dd-bbfe-3dabce05a288
* Copy wavfile back to spu2x directory. Note I shrink the file to only usefull feature to keep it small.
Rationale: Wavfile is not delivered by the soundtouch library (it is an example).
git-svn-id: http://pcsx2.googlecode.com/svn/branches/GregMiscellaneous@3948 96395faa-99c1-11dd-bbfe-3dabce05a288
Spu2x: Use a standard destructor (POD safe stuff). Fix various segmentation faults (Issue 846)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3702 96395faa-99c1-11dd-bbfe-3dabce05a288
* move machine optimization in the global setup. In same time use i686 instead of i486
* Also build the debug with fvisibility=hidden No reason to use it only on devel. (actually same as codeblock)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3628 96395faa-99c1-11dd-bbfe-3dabce05a288
Add 2 attributes to the interfaces functions
- externally_visible: avoid gcc to remove the function when lto is enabled
- visibility("default"): default == public... Allow to hide all others symbols: see http://gcc.gnu.org/wiki/Visibility for details
onepad:
* Remove __cplusplus define, everythings is in C
* define 2 interfaces functions with EXPORT_C_ instead of CALLBACK.
cmake:
* add recent added .h files
* add fvisibility optimization. Plugins size was reduced of ~10% much more than expected :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3611 96395faa-99c1-11dd-bbfe-3dabce05a288
DevNotes: DevCon logs are now available in *Release* builds as well as Devel builds, and can be enabled from the Console window's "Sources" menu. They are disabled by default in Release builds, and are always enabled regardless of the ini setting in devel builds. Debug logs are still strictly available in debug builds only.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3609 96395faa-99c1-11dd-bbfe-3dabce05a288
- Remove the DSound output module hardware buffer option which caused more harm than good.
Also fixed that IOPx2 hack leftover.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3597 96395faa-99c1-11dd-bbfe-3dabce05a288
* Major rework of the linker flags. Use some globals flags for -s and -m32
Add a USER_CMAKE_LD_FLAGS variable. Easier to play with advanced link flags for future gcc version (>=4.5)
* Remove useless stub file
[debian]
* minor dependency fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3475 96395faa-99c1-11dd-bbfe-3dabce05a288
* Add missing copyright according issue 792
* Miss few files from the previous commit ^^
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3429 96395faa-99c1-11dd-bbfe-3dabce05a288
[plugins] remove __forceinline on variadic function that has been broken by the removal of -fPIC.
[debian] update readme about fpic status. And add some lintian overrides.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3395 96395faa-99c1-11dd-bbfe-3dabce05a288
* EEA / ESA writes are ignored when Effects are enabled.
* When effects are disabled, reverb does not process IRQs or produce sound.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3326 96395faa-99c1-11dd-bbfe-3dabce05a288
- Some preliminary work on better resets. Also some commented out yet changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3318 96395faa-99c1-11dd-bbfe-3dabce05a288
Revert all reverb area tryouts, caused bleeps in many games (breaking Ys and that shonen jump game, but oh well).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3315 96395faa-99c1-11dd-bbfe-3dabce05a288
* Print a fatal_error when users do not source the good CMakeLists file.
* Do not search system libraries if the user force the internal libraries
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3269 96395faa-99c1-11dd-bbfe-3dabce05a288
- Double the audio output volume before sending it to the output modules. Was way too quiet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3261 96395faa-99c1-11dd-bbfe-3dabce05a288
* Fullscreen mode should be remembered/applied properly now.
* implemented --fullscreen and --windowed options
* Made the --help popup a lot prettier
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3249 96395faa-99c1-11dd-bbfe-3dabce05a288
- Clamp requested pitch values to 0x3fff. Fixes games that set a too big pitch, run that voice and expect it to hit an IRQA (Romancing Saga).
- Gigaherz and Pseudonym worked out better modulation support. Should make some sounds better (FFX battle sound, etc).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3242 96395faa-99c1-11dd-bbfe-3dabce05a288
We're free to put the ESA wherever we want. So let's use an area that makes the game Ys not die. :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3234 96395faa-99c1-11dd-bbfe-3dabce05a288
-ADMA can now be logged undependable from DMA.
-Visual core activity display works again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3218 96395faa-99c1-11dd-bbfe-3dabce05a288
If there's any regression we should look at what CAUSES it, instead of hacking it back.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3214 96395faa-99c1-11dd-bbfe-3dabce05a288
Details: (0x1800 to 0x1fff were being mis-written to 0x2000->0x2800, roughly).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3206 96395faa-99c1-11dd-bbfe-3dabce05a288
[cmake]:
* Update to use the above patch.
* Remove a52. Need to use system version.
* Remove stub file. Append pcsx2 to 3rparty library to ease futur support.
Important Note: codeblock will probably need some update. (add 3rdparty/soundtouch_linux_include in include path)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3200 96395faa-99c1-11dd-bbfe-3dabce05a288
[spu2x]: explain why one inline fail on linux
[cmake]: Prepare some include directory updates
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3185 96395faa-99c1-11dd-bbfe-3dabce05a288
* align cmake flags with codeblock one. (note spu2x may still fail to compile with inline problem)
* Some final cleaning. You must be able to see your reflection now ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3169 96395faa-99c1-11dd-bbfe-3dabce05a288
DevNotes: converted some code from wstring to wxString to work a little toward cross-platformness. ... and probably broke the Linux build.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3115 96395faa-99c1-11dd-bbfe-3dabce05a288
Added the Async Mix mode to the configuration dialog.
Users can select between Timestretch, Async Mix or no sync now.
There's a warning for the Async mode, as it breaks games that can't cope
with a variable speed SPU2.
SVN revision users:
Please remember to delete your SPU2-X.ini when switching to this revision (to clear the Sync mode setting).
Linux:
It's missing GTK implementation yes (global vars are already changed though), sorry :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3077 96395faa-99c1-11dd-bbfe-3dabce05a288
KrossX3 coded user selectable audio expansion (Still Xaudio2 only) support.
Since the automatic detection fails on some systems, this is the next best option.
Tested and works as expected. Thanks a bunch, KrossX3 ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3041 96395faa-99c1-11dd-bbfe-3dabce05a288
Committing a patch by KrossX3 that should fix the stereo expansion option for *most* people.
Of course on my setup it fails to grab the correct number of speakers, so will have to think about it..
The code is correct though, so it should fix it for some people :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3035 96395faa-99c1-11dd-bbfe-3dabce05a288
Fixes an issue where they could not access their config files in restrained PCSX2 installs.
Fixes issue 686.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3005 96395faa-99c1-11dd-bbfe-3dabce05a288
* Added DX11 support. DX11 enabled cards now give a +~40% speedup
* New SSE-X instructions we invented for PCSX2. Give a +200% speedup even on old CPUs.
* Full 64bit support. If you have 64 bit windows, be prepared for a 300% speed up.
* Implemented new DMAC, so far we have ~15 games that show improvements.
* Added support for USB-enabled vibrators. Feel the full pleasure of gaming, now also with PCSX2!
* SPU2-X now decodes Dolby Digital 7.1!
* Please test to find any bugs in the 24-thread code, it's a bit complex so some tiny bugs might have crept in.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3000 96395faa-99c1-11dd-bbfe-3dabce05a288
Changes: Fixed all compile errors in VS 2010. Added support for new w32pthreads.v4. Fixed all MSB8012 warnings. Fixed LNK419 warnings with /DELAYLOAD. Fixed issues when compiling Devel before Release. Added GSdx Devel target. Minor cleanups.
Thanks a bunch, blood :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2930 96395faa-99c1-11dd-bbfe-3dabce05a288
Some more wxCore fixes.
Fixed also inter-project dependency warnings.
Also some other fixed to get devel/release compiling.
Oh and apparently my VCproject folder got messed up and detached itself from svn, so it wasn't commiting with the rest...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2849 96395faa-99c1-11dd-bbfe-3dabce05a288
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
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
- 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
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
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
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
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
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
- 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
- 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
- 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
- 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
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
- 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
- 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