arcum42
8958959fcf
Bring in the neccessary SoundTouch changes as well.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@693 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
arcum42
50040eb4fb
Get the plugins to compile in Linux after the reorg, and bring the game fixes dialog up to date in Linux.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@692 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
cottonvibes
cb52374106
fixed some potential VU micromem clearing problems. i don't know if the fixes effect the current recs (most likely they do), but they definitely effect the new ones i'm working on :/
...
Devs: when writing to vu micromem
1) remember to vuMicro->clear (preferably with size being a multiple of 8, since micromem holds vu instructions, and the instructions are 8 bytes (64 bits))
2) clear before the write to memory! not after... (if the recs cache old microprograms (like mine will, and i think current ones do), and you clear after the write, then they're caching corrupt data :/)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@691 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
arcum42
3fcb3a4143
Fix Windows again.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@690 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
arcum42
1de54165b5
Thanks to a patch by Zeydlitz, the Linux build of pcsx2 works! (The plugins still need fixing from the reorg, but I'll get that later.)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@689 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
ramapcsx2
cc0053c1e7
Nneeve and tmkk fixed 2 MMI opcodes, supposedly fixing Naruto Shippuuden Narutimate Accel 2. Can't test that game here, but the code is solid. Thanks again to those 2! :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@688 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
046ff317f7
Fixed ZeroSPU2's solution/project link, and updated Linux makefiles (think they should work now, but haven't tested)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@687 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
a5ef038c53
Removed some files from ZeroSPU2's Win32 project that didn't exist. They were left over from my attempt to upgrade SoundTouch, unfortunately latest version of SoundTouch doesn't handle the Pcsx2's need for dynamic on-the-fly tempo changes very well. :(
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@686 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
36cc4fa08c
All plugins now compile correctly under Win32. Upgraded ZeroSPU2 to use a newer version of SoundTouch in the process.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@685 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
36a2178e68
Part Two of plugin folder structure reorganization. Pcsx2 and SPU2ghz compile fine now, other plugins might need a wee bit of work yet.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@684 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
0b00f96040
*BROKEN BUILD* *DOES NOT COMPILE* Cleaning up the plugin directory structures, using svn:externals to share 3rd party libraries, and re-configuring the svnrev feature so that it won't error out anymore if you try checking out just a specific plugin. Have to commit this broken code and re-update to get the svn:external bindings to resolve though.
...
A working directory/project structure will be committed soon. :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@683 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
a92fc9900f
SPU2ghz: Third try's the charm? This is an even better yet fix for the crackling sound in SO3. Note: This revision upgrades spu2ghz savestates to 0x101. Old states should still load fine for the most part.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@682 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
ramapcsx2
ef489b45bd
Revert the Fatal Frame VIF related hacks. The game does not recover from the bad dma transfers anyway, so the hack just delayed crashes.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@681 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
a68b78fbc2
SPU2ghz: Did a better fix for SO3 crackling sounds (probably improves sound quality in some other games too). Changed the IRQ events so that they're raised for *both* cores, if enabled, regardless of which core actually accesses the SPU2 memory address; it should be more correct this way. Unknown if it actually fixes anything tho.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@680 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
f8b274ddfe
Implemented a new optimized version of recPLZCW, though it probably doesn't make much actual difference to performance (but it was fun! :)
...
Applied a small patch from Pseudonym that repairs the Debugger (sorta).
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@679 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
6ec4518d35
SPU2ghz: Fixed some problems with the PCM cache that caused crackling sound in Star Ocean 3.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@678 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
ramapcsx2
60c3fe80f5
Tmkk could reduce the needed number of instructions for VU clamping a bit. Small speedup on SSE4 CPU's.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@677 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
5f42a79cec
Reverted some changes related to dyna_block_discard that appears to cause random crashing. Also improved the deci2Call behavior to be more correct.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@676 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
ramapcsx2
8594b87177
The PLZCW bug was quickly found :p Re-enabled the recompiler with the fix.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@675 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
ramapcsx2
9c9d67b3d8
One of the recompiled MMI opcodes (PLZCW) is broken. Since the interpreter isn't slower it's used now instead.
...
Enjoy God of War :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@674 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
46f1df20f4
Fixed a potential cause of random-ish crashes during emulation startup, caused by a small typo in the new SysMmap in System.cpp.
...
Fixed another potential cause of randomish-crashes during dyna_block_discards, by removing some obsolete debug/troubleshooting hacks from when we had register corruption issues. Also removed if(s_pDispatchBlock == NULL) checks in the Dispatchers, which were added during the same period of register corruption paranoia.
Added a check for null pointers in Deci2Call. Fixes crashes in some games (Samurai Warriors 2 XL, possibly others?)
Changed over most uses of memset to memzero_obj.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@673 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
271eee8dea
Removed most of the cluttery code that used PCSX2_VIRTUAL_MEM. Left in various parts of VM code which could be useful for reference in the future.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@672 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
cottonvibes
e8e5eb320a
some more clamping changes by tmkk.
...
i also fixed a small bug in SysMmap()
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@671 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
cottonvibes
167399c52c
added various VU optimizations by tmkk, including different clamping optimizations.
...
i also fixed some VU functions to use appropriate clampmodes, that i had forgotten to change in the past.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@670 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
arcum42
7adb8c864f
A few quick changes to get Linux compiling again. And the 0x8000000 in vtlb_malloc does turn out to be neccessary...
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@669 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
Jake.Stine
5fbaf63663
More work on the Linux side of things. This blind coding without being able to test stuff is challenging. >_< Also did some cleanups and error corrections in the way recs and vtlb allocate memory.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@668 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
arcum42
65a1ef18c8
Linux: Commit the latest aR5900-32.S patch, and a few Linux Gui changes.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@667 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:40 +02:00
arcum42
b9fe352299
Remove an obsolete change that made it in on the last commit...
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@666 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
arcum42
30554896ec
Linux: Bring in changes from various patches, and get it compiling again.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@665 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
e41d18164e
Made some quick fixes to the Linux block manager for the EErec (aR5900-32.S)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@664 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
arcum42
347e6c44bb
ZeroSPU2: Refactor a few things, break up a few files, and fix a fencepost issue when clamping.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@663 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
ramapcsx2
1ace722861
Added a game fix that handles delay slots differently in the VUrec. If enabled, it fixes Kingdom Hearts 2 (the gray screen bug, and the slowness) and also Tri-Ace games SPS.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@662 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
672bdb5a60
Implemented Aligned Realloc for Linux, fixed VUmicroMemInit so that it's Linux friendly, and added a new function vtlb_malloc(), which allocates memory blocks below 0x80000000 (which keeps vtlb happy). It's used by PS2, IOP, and VU memory allocators.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@661 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
2cba5081b3
Implemented COP2's branching instructions in the recompiler (BC2F, BC2T, BC2FL, BC2TL), and fixed a bug where Branch-Likely instructions were not recompiled correctly for COP1 and COP0 branches.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@660 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
66733f5a6d
Bugfix for emu crash after deleting the ini file.
...
Added more correct support for hwWrite16 to counters registers (hwWrite16s to the counters were being completely ignored until now)
Added x86AlignExecutable() to the emitter -- generates an executable instruction to pad an area to a given alignment. It's not used yet but could be useful as an optimization in some rare cases in the future.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@659 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
24ef7776fd
Fixed a logic flaw in r657 that caused a bottleneck in the MTGS ringbuffer stream. It was killing MTGS performance on games like FFXII, BoF5, and other GPU-intensive titles.
...
Moved GIf/GifDma code into its own file: Gif.cpp. GS.cpp is a lot more manageable now :D
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@658 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
cottonvibes
240defef4e
some clamping optimizations that also 'prevent' some XMM reg corruptions. current VU recs seem to not allocate VF0 for the opcodes, expecting 'special case' implementations i suppose. this fixes FFXII to work with DaZ according to Nneeve.
...
also changed min/max opcodes to always 'preserve sign' when clamping.
this lets you 'see' the menu's in GT4 w/o having to use Extra clamping, however you still need Extra Clamping if you don't want SPS in-game.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@657 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
b5f952fc5e
Fixed a bug that caused old pre1.8 versions of Gsdx to crash at startup, and fixed some instability problems when loading savestates.
...
Cleaned up some MTGS code, and improved performance a bit, especially for games that tend to stress the GPU (when Gsdx registers 70%+ cpu).
Programmer notes: Several code cleanups to header files. Added MemcpyFast.h and SafeArray.h, and removed a couple more ugly #include inter-dependencies. :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@656 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
b32d84516a
Made several modifications to the MTGS and Threading portions of Pcsx2. This should fix some problems in select games that use VIF FIFO 1 (downloads data from GS to EE, forcing an MTGS stall), and should also fix occasional MTGS freezeups during emulation init/exit. MTGS uses pthread's semaphores now instead of pthread_cond (Which as it turns out isn't really doing what I thought it should do). The semaphores are faster and more stable, so it's a win-win. :)
...
Programmer notes: Added a new u128 type to PS2Etypes.h, and a new SafeAlignedArray<> class to System.h.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@655 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
gigaherz@gmail.com
d55f680bde
pseudonym just made a patch with some changes to the debugger so it works again.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@654 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
cottonvibes
9223be5a30
enabled the FPU extra-flags code after reviewing it. ZEROx told me it fixes some freezes in MGS3 as well.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@653 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
f4404bc1d1
Made a quick hackfix that should solve TlbMiss crashes in a few games, such as .Hack/GU (Issue 87). The real problem is that the VifDma1 happily overwrites past the end of VU1 memory, which spills over into the EE's recLUT tables, which causes rapid death. I fixed it by allocating an extra "cushion" of data at the end of VU1 memory.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@652 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
9a5da04452
Optimized VTLB's mappings for VU0/VU1. Seems like a pretty big speedup to me, but my PC sucks too much on VU1-intensive games for me to be sure. :)
...
Bugfix: VUSkip works again! However, frameskipping is still not where it should be... seems to like to skip too much (grr!)
Linux: Committed a new version of aR5900-32.S, which should work better than the old version (but I can't really test it).
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@651 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
e4e8b6dbaf
Made some significant optimizations to VTLB. Between this and the last couple revision opts, VTLB is now as fast or faster than VM builds (with many more potential optimizations in the queue!).
...
Removed VM build targets from the Win32 solutions, because it no longer compiles and there's no point anymore in doing the work needed to make it compile. The optimization style of VTLB is completely incompatible from VM so it would require lots of newly branched code to maintain VM builds.
Commented out a VU0micro Stall warning which was causing a lot of spam in some games. The games have been noted and the issue will be looked into further in the future.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@650 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
arcum42
4575351e36
ZeroSPU2: Fix saving options in the Windows version.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@649 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
c09f69f242
Implemented MMX/XMM optimizations for VTLB's vtlb_DynGenRead function (small speedup).
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@648 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
3bc7465b23
Rewrote hwRead32 in HW.cpp, which should give another little bit of speedup. Commented the daylights out of it while I was at it. :D
...
Fixed another small bug in the CRC display of the console.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@647 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
01ecf48a6c
Applied eol-style:native to some Linux files.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@646 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
1f3bdd4a08
Various fixes related to the last 2 revisions. :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@645 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00
Jake.Stine
636e4a8b42
Fixed a speed bottleneck introduced in r643, which required retooling the way the Console::Write API passes parameters. The C++ compiler doesn't optimize const string objects very well, which was leading to a lot of redundancy object creation and exception handling.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@644 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:39 +02:00