Commit Graph

2255 Commits

Author SHA1 Message Date
refraction ef20c1a93f Implemented freaky VIF Unpack operation for V2 and V3 unpacks, games such as Lemmings and And1 Streetball require this to be determinate! Tested on the PS2 and it certainly is determinate.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2735 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-18 22:15:58 +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
cottonvibes c53ecee572 Fixed a bug in the newVif unpack dynarec with filling writes...
(was some optimization i had, but only was working correctly for skipping writes...)

Fixes half-life...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2732 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-18 04:52:57 +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 5087099871 Default VSync to off, change default Turbo to 200% and Slowmo to 50%.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2721 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 09:53:17 +00:00
cottonvibes 236d40b2e1 Minor change...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2720 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 03:02:41 +00:00
gigaherz 80fa74532a Removed idct_mmx.obj from the svn and updated the project to reflect the change.
The file was only available as a compiled .obj, with no sourcecode, and wasn't used in any platform or configuration, so me & pseudonym decided it was best not to even have it.
Left a comment in the idct.cpp file explaining it.



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2719 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-16 02:53:56 +00:00
sudonim1 b9fc6d43e9 Fixed error in blending table. Mostly white displays in Ghost Rider and Silent Hill: Origins now display correctly. Large diff because I reformatted comments to make it easier to verify, only rows changed are 0112 and 0210.
Added logging for blending modes that can't be handled natively.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2718 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-15 21:07:58 +00:00
sudonim1 bda5b06e37 Made resources recompile when a shader is modified, though I'm not happy with the solution.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2717 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-15 19:13:51 +00:00
sudonim1 3657bebe9e Fixed trap instructions by using the old implementation for now.
Added INT and INTO to the emitter.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2716 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-15 14:15:40 +00:00
ramapcsx2 7f6f27b9d9 One of these days I'll get it right. Sigh :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2715 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-14 21:34:16 +00:00
ramapcsx2 d29b968e51 GSdx:
- Moved the offset hack to CreateSource(), it can work a bit more selectively there.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2714 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-14 19:35:10 +00:00
sudonim1 ee467127eb Forgot to save before committing. Just a comment.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2713 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-14 11:35:42 +00:00
sudonim1 ad21a894fc GSDx: Fixed channel masking in DX9 HW. The red and blue channels were reversed.
GSDx: Removed discards from partial colclamp support as it wasn't doing much good and definitely won't be necessary with the next stage of support.  No significant functional change probably.

As before, please do a full rebuild of gsdx.  I hate it as much as you but don't know how to make VS smarter about this.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2712 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-14 11:33:12 +00:00
refraction 95af4c133e Fixed small VIF Stalling bug which caused Max Payne to crash
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2711 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-14 01:11:08 +00:00
refraction 30c0b0f923 Only a small commit i know, but highly frustrating for Tekken Tag players (slows it down a bit). Im back! sort of, just getting familiar with the code again :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2710 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-14 00:55: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
sudonim1 27b32ab8ab Removed *.res from msvc cleanup script because it cleans *.resx too due to this: http://support.microsoft.com/default.aspx?scid=KB;en-us;q164351
Removed Release (no SSE specification) target for solution because I spent half an hour trying to work out why GSDx was failing to build because of it.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2708 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 22:19:09 +00:00
ramapcsx2 95c272b81b Let's preserve XMM/MMX registers on dma functions again.
Fixes Fatal Frame 1 missing geometry. 
The game should be fully working again, even without the gamefix :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2707 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 13:11:22 +00:00
cottonvibes ef33b22114 Attempted fix to get gust games and fatal frame working w/o a gamefix hack.
I was only able to test Ar Tonelico which worked with this fix, comment if this breaks fatal frame (or a gust game or anything else...)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2706 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 08:23:07 +00:00
sudonim1 3f36d66116 I'm an idiot and committed with the crippling macros uncommented, undoing the work in r2702 and taking the software renderer down a peg.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2705 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 02:19:06 +00:00
arcum42 02497e0d41 Sif: Check if there is anything in the fifo before reading from it, and if there is any free space in it before writing to it. Tweak logging a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2704 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-13 00:48:02 +00:00
sudonim1 3f45a3b8b1 GSDX: added a couple of macros to cripple gsdx for developer use in diagnosing problems.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2703 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-12 22:47:59 +00:00
sudonim1 e8c73cef42 GSDX: Partial COLCLAMP support.
Fixes shadows in Ico and Shadow of the Colossus and hopefully fixes more effects in other games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2702 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-12 19:01:05 +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
Jake.Stine 34eb64c3fe More minor bugfixes to startup/init and directory/ini junk.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2699 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-12 02:27:31 +00:00
ramapcsx2 ee6b27aeb8 A few fixes to resets and shutdowns. Fixes a few memory leaks.
Thanks a bunch, ksi3zyc :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2698 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 21:16:35 +00:00
sudonim1 72ce9993d2 GSDX: unify blending tables. No functional change, but one may be coming soon if I can make it work.
Also, screw you, Stroustrup! You don't make me cast short to int, so don't make me cast int to an enum! PS: arithmetic operators, you stingy bastard.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2697 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 18:41:31 +00:00
sudonim1 7fb8d0316b Subtle bug in iR5900Arit.cpp rewrite and a little more cleaning.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2696 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 17:19:54 +00:00
arcum42 f1c2dee343 Quick Linux fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2695 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 11:05:10 +00:00
sudonim1 bf933b0af9 Rewrote the instructions in iR5900Arit.cpp.
Nothing dramatic, this doesn't seem to be measurably faster or slower and I didn't find any more bugs in the old version.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2694 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 07:53:07 +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
cottonvibes 8978e463ec mVU: fixed some memleaks and fixed some rare bugs in microprogram range detection...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2692 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-11 04:03:08 +00:00
sudonim1 956d041212 Removed old versions of instructions with no constprop support . Nothing seems to boot if I disable constprop now but that may indicate a recompiler bug so I'm committing it anyway as a reminder to find it. Doesn't affect normal compiles.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2691 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-10 20:59:43 +00:00
sudonim1 d846c8709f Started rewriting arithmetic instructions because of the disgusting state of the code, went mad and stripped the main case for the liveness optimisation from the recompiler. It would be very nice if it worked and wasn't such a mess but it hasn't for a long time or never did. Didn't revert the one function I rewrote, next commit will likely be the rest of the file.
While doing this, spotted and fixed a couple of bugs with doubleword add/sub when one operand is a constant propagated from earlier in the block and has 0 in the upper word; the instructions weren't performing the carry/borrow in this case.  Likely doesn't fix any game.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2690 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-10 14:56:30 +00:00
sudonim1 d8ef7a4171 Killed the R5900 register sign extension flag (upper 32 bits of the lower 64) as it's checked in literally one instruction and probably isn't exactly well tested. Tracking this is important to liveness optimisations (and the fact that it's never checked may be why liveness isn't really helping), but I noticed it was being set erroneously in some places and decided it's best just to scrap it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2689 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-10 12:05:35 +00:00
ramapcsx2 d3716fd295 Avoid using MMX in EErec operations where possible. This bypasses hangs in Bully for now.
The problem needs to be fixed more thoroughly in the future, by rewriting several opcodes.

You can find all changed locations via the comment "// Fixme: MMX problem".

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2688 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-10 10:59:10 +00:00
ramapcsx2 6c4c4e316d GSdx:
- Hopefully hacked up the "wall of fog" problem in GoW2. Used an adapted patch from ZeroGravity.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2687 96395faa-99c1-11dd-bbfe-3dabce05a288
2010-03-10 10:10:36 +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