Commit Graph

469 Commits

Author SHA1 Message Date
arcum42 8a99bf1d63 More cleanup. Ran Artistic Vision on a few of the files rama had suggested, and did a few changes that make things easier to read. Still more work to be done here...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@862 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-30 13:21:15 +00:00
cottonvibes fa134fb61b microVU: some lower opcode changes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@861 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-30 07:43:37 +00:00
cottonvibes e0c3ecbc8f miscellaneous microVU changes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@860 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-30 01:00:38 +00:00
mattmenke 99b0019d1b LilyPad: Fixed a binding bug due to old debug code still hanging around, added ability to swap pad bindings (Right-click context menu).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@859 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 18:03:42 +00:00
arcum42 4af9d5be57 Add dmaIPU0 & dmaIPU1 externs. :(
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@858 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 12:29:08 +00:00
arcum42 c8ee95b39f More work on Gif.cpp & IPU.cpp. Got fed up with straightening IPU.cpp up by hand, so I ran Artistic Style on it, and then strightened the results out.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@857 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 11:10:44 +00:00
mattmenke 74dcf7d8a9 Forgot to remove a couple debug lines.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@856 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:48:18 +00:00
mattmenke 8661323a0a LilyPad: One more quick bug fix in mtap stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@855 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:30:34 +00:00
mattmenke ee7008ded8 Pcsx2: Added experimental mtap support, must be enabled through pad plugin. Fixed bug in default PADfreeze function that would fail to load states created with LilyPad when using other pad plugins. Added support for disconnected pads (Mostly a convenience for mtap support, for games that use pad presence to assign pads to players).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@854 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:24:28 +00:00
mattmenke e3b40d1933 LilyPad, Plugin APIs: Slightly changed how multitap API additions work. Now enabling is handled completely by the pad plugin. If anyone ever really feels like adding support for more memcards, can move it over to PCSX2 itself.
Also add some documentation to PadApi.h.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@853 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:14:59 +00:00
arcum42 de86b1dba7 ZeroGS OpenGL/Linux: Took out the FFX hack, and turned it on by default. Removed a few options that weren't doing anything, and added a few into the Linux list that were missing.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@852 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 04:18:21 +00:00
mattmenke d1ac2a8700 LilyPad: Fixed bug detecting enabled multitap pads. Multitap support now seems to be working on the LilyPad side of things now. At least it seems to work with the one game I've tested, after modifying PCSX2. Necessary PCSX2 changes have *not* been committed.
Still need to hook it up to the PCSX2 GUI and figure out how to say the extra memcard slots are all empty.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@851 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 03:57:08 +00:00
arcum42 0feb9de523 General cleanup in Gif.cpp && IPU.cpp. Did a bit of refactoring in Gif.cpp. Moved the path3hack to patches.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@850 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-28 06:53:18 +00:00
ramapcsx2 2a570c5f91 Fix the vu interpreter thing again. This should be right now (according to cotton, blame him if its not!) :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@849 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-28 00:42:37 +00:00
ramapcsx2 0e61bd6b35 - Nneeve fixed the Tri-Ace gamefix so Gradius5 doesn't crash with it enabled anymore.
- Moved one global variable for the VU interpreters, which surprisingly speeds up Star Ocean 3 for me.
- Set Flush to Zero for FPU and VU back to on. Let's see how long it lasts this time :p
- Removed the FFX hack from pcsx2! It's still toggled in the GS plugins, the correct behaviour is having it always on.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@848 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 23:52:17 +00:00
mattmenke 1df68eca73 LilyPad: PADfreeze() now saves state of current poll, just in case it hasn't been completed. In practice, state never seems to be saved in the middle of a poll, but best to be safe.
Note that this "breaks" old LilyPad savestates, but that just means you'll need to wait for your pad to be initialized before loading older states for picky games, like you do when using states saved with other pad plugins.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@845 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 06:58:00 +00:00
arcum42 007c34a8b0 Since WriteLn is used for logging, and it automatically appends newlines, remove a bunch of legacy newlines from various logging functions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@844 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 06:34:51 +00:00
arcum42 4ea9d9292f Replaced more SysPrintf's with Console:: functions then I want to think about. A few minor changes in passing, mainly format-related.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@843 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 01:42:51 +00:00
arcum42 5969bcc621 Linux: A little bit of catchup with Windows; Add the VU Clip hack back in for Persona.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@842 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-26 12:16:31 +00:00
gabest11 9a1c89cb4f GSdx: persona 4 character shadow error fixed, might break other things (hope it doesn't :P)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@841 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-24 13:13:51 +00:00
gabest11 0c90ff1eb6 GSdx: disabled blurring can be re-enabled in the settings or with the END key, the image shifting is corrected back to 1 pixel even if the internal rendering resolution is upscaled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@840 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-24 09:11:03 +00:00
mattmenke e0d7e180ac LilyPad: Fixed logging bug, log slightly more data.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@839 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-24 00:12:39 +00:00
mattmenke fd8a28543b LilyPad: Loading savestates made with other pad plugins should work a bit better.
Attempt to fix keyboard input sometimes not working until window is unfocused/refocused.  Happened to me once (And only once), when I was experimenting with disabling read input in GS thread.  There are a number of potential causes of this, and I've added workarounds for several of them.
Slightly updated code to determine when to update pad state - added both a timer, so read state less when fast forwarding, and Multitap support (to that particular chunk of code).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@838 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-23 23:29:27 +00:00
cottonvibes 235b19c858 microVU: backing up current code, going to have to rethink some things :/
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@836 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-23 04:11:39 +00:00
ramapcsx2 157e696182 - Various fixes to MMI and more changes to opcodes to mimic ps2 behavior, thanks to Nneeve.
- Brought back a gamefix for Persona games. They still have missing geometry without it (VU clip flag problem)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@835 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-22 19:40:43 +00:00
gabest11 95c7ce1dbc GSdx:
- more thorough blur detection
- makesnapshot delayed until the next vsync (so shift+f8 won't crash randomly)

xpad:
- fixed "Issue 38: Bad performance with Xpad"

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@834 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-22 13:10:31 +00:00
arcum42 c96334ddf2 Linux: All right, this will have to be fixed properly at some point, but hack in a printf so that Linux users can at least see the exact exception games crash on if they crash (Though it won't get logged at the moment).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@833 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-22 11:01:35 +00:00
arcum42 267d964126 Linux: Fix up console logging so it both doesn't insert newlines every time the color is changed, and doesn't log the color change codes in logs, as unless you are using a console based text editor, it's harder to read.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@832 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-22 09:14:53 +00:00
cottonvibes 3e3ffef417 microVU: moved stuff around, and implemented some other stuff... also added the file microVU_Analyze.inl to project.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@831 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-22 07:36:02 +00:00
cottonvibes df95ec6b87 microVU: implemented CLIP instruction + minor changes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@830 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-21 04:03:14 +00:00
Jake.Stine 9528571ea3 Buildsystem improvements - Added two new property sheets for Incremental Linking and Global Linking. Incremental Linking is fast and allows for Edit and Continue debugging (debug/devel builds), Global Linking is for Release builds.
Applied new property sheets to Pcsx2, SPU2-X, ZeroStuff, and NULLs.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@829 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-21 04:01:44 +00:00
ramapcsx2 2afa8bb7b3 2 more things by Nneeve. Let's see:
A few changes to the full fpu mode, so it behaves as erratical as the ps2 fpu.
And a fix for a MMI opdcode.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@828 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 18:50:54 +00:00
arcum42 65822fbfdc Linux/SPU2-X: A bit more work on the Linux port of SPU2-X.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@827 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 10:13:19 +00:00
gabest11 2baace0895 GSdx: a few games should be sharper (example: persona 4, guitar hero), blurring effect done inside the output merger is overridden when detectable, hope nothing got broken by it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@826 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 09:10:37 +00:00
cottonvibes d5b88723d2 microVU: implemented first pass for upper instructions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@825 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 04:00:15 +00:00
mattmenke 96bc118b1c LilyPad: Fixed PADfreeze bug. Also some stuff that shouldn't do much yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@824 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 01:27:24 +00:00
arcum42 78520b9a24 Get rid of some duplicated code in cpuException...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@823 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-20 01:26:38 +00:00
ramapcsx2 aea075320b Nneeve worked a bit on our lovely floating point cpu's (mis)ability to do rsqrt the way the ps2 does.
Should be better now ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@822 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 19:47:06 +00:00
arcum42 382431ebcb Linux: Make some of the assembly look a bit better. Change the PCSX2_ALIGNED_EXTERN defs a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@820 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 11:11:30 +00:00
Jake.Stine c5b366095a Fix for some random slowdown introduced in 815 (bad cacheline coloring caused a random 30% speed drop when not using speedhacks) >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@819 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 10:20:56 +00:00
arcum42 774929b273 Linux: Fix a minor breakage in the gui code I just noticed...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@818 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 09:44:57 +00:00
Jake.Stine ce6dcd3871 A few very minor comment cleanups; getting all my code branches in sync for when I hit the road today.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@817 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 08:28:00 +00:00
mattmenke e172d0e104 LilyPad: Svn release builds now have svn numbers, some configuration load/save/populate code cleanup. Two additional checkboxes that at the moment do absolutely nothing useful, so don't get too excited, probably be quite a while before I get around to hooking everything up...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@816 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 06:28:23 +00:00
Jake.Stine 1f36e97927 Major overhaul of the savestate system!
Since backwards compat of savestates got totally broken a few revisions ago anyway, I decided to take this opportunity to revamp the savestate system with some significant cleanups (yes it loses all backward compat once again).  Improvements include:

 * Reduced state size by removing some unneeded data (faster saves now too!)
 * Added string tags to varios "sections" of the states to assist in troubleshooting and retaining savestate compat in future versions.
 * Better error handling and fewer memory leaks.
 * Removed some unused/obsolete data from psxRegs, Counters, and psxCounters structures.
 * Removed all old savestate versioning code, since none of the old versions are supported anymore anyways.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@815 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 04:16:24 +00:00
Jake.Stine a51b407cdb More changes to the IOP's memory model. Some of these are experimental and might cause problems (needs testing). Quick rundown:
* The R3000 does not have a TLB, and has no valid addresses mapped above page 0x2000 in physical memory [lower 512M].  Thus all addresses can have the top 6 bits masked off and still retain full validity.  For example, address 0xbfc0 is simply a mirror of physical address 0x1fc0.  Technically speaking, a full emulation of the IOP memory model would raise bus error exceptions for accesses between 0x2000 to 0x8000 segments (instead of treating them as mirrors of the lower 0x2000 segment), but buss errors are generally fatal (unrecoverable) program errors that would never happen within the context of game emulation.

* The IOP's SIF register space is only 256 bytes, and then mirrored repeatedly through it's 64k page at 0x1d00.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@814 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 03:59:25 +00:00
Jake.Stine f2477537f9 Implemented more correct support for the IOP's "isc bit" (bit 16 on the COP0 status register), which in turn allowed me to simpify some of the IOP's memory access and paging logic.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@813 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-18 22:38:36 +00:00
Jake.Stine 1bbcf07a22 Added a BastTaskThread class to the threading tools.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@812 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-18 18:56:03 +00:00
cottonvibes 996f229cbf pcsx2: got rid of the compile warning.
microVU: minor changes/cleanup.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@811 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-18 08:22:01 +00:00
Jake.Stine d1ae92e203 Minor optimizations to vssprintf.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@809 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-18 06:39:55 +00:00
sudonim1 fa3288971f Save a few bytes on const flushing using 5 byte eax movs for 0 and -1 instead of 10 byte immediate movs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@808 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-17 20:58:59 +00:00