Commit Graph

1584 Commits

Author SHA1 Message Date
cottonvibes 342da0e2a8 microVU:
- Added a new status-flag speedhack after learning how evil sVU is with status flags (mVU with both flag-speedhacks ON is less evil than sVU's default setting which does something even hackier)
- Minor Changes

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1246 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 12:40:01 +00:00
cottonvibes 995b9d1eaa microVU:
- Implemented the case where an Unconditional branch has the E-bit Set. This solves a few games from getting stuck in infinite loops. (I still need to handle conditional branches and jumps).
- Max/Mini Opcodes shouldn't set status/mac flags. This should be a minor speedup.
- Minor Changes/Cleanups...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1241 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 03:27:53 +00:00
arcum42 8e3d3080c0 Get rid of Decode_XA. A few minor changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1235 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-22 00:35:09 +00:00
arcum42 7922f33f4f Minor variable type changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1233 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-21 21:12:01 +00:00
cottonvibes 996440bab0 microVU:
- Fixed a problem that was causing microPrograms to be cached when they shouldn't be (introduced in r1209). This also fixes broken logging in some games, and is a small-speedup.
- Minor Changes


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1230 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-21 07:09:39 +00:00
cottonvibes 31c5c234ef microVU: minor changes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1229 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-20 23:18:19 +00:00
ramapcsx2 a0546736a1 mVU: minor fix for branches, improving compat a wee bit.. like lots :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1227 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-20 20:15:34 +00:00
cottonvibes 23c833e922 microVU:
- Fixed a Q/P instance bug. This fixed some graphical corruption in Haunting Ground, might fix some other games too.
- Minor Changes...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1225 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-20 03:05:36 +00:00
Jake.Stine faf535a461 Added COMI.SS/COMI.SD to the emitter (and moved UCOMI from moremovs to comparisons, where it belongs -- oops)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1224 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-19 23:37:20 +00:00
arcum42 134f02babb Linux/microVU: Uninline a function that isn't inlinable according to gcc, so microVU is compilable on Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1221 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-18 13:08:35 +00:00
cottonvibes 3019f7d02c microVU:
- Fixed the bugs with the logical min/max code (DaZ should work fine again)
- Optimized some lower instructions a bit.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1220 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-18 11:13:30 +00:00
cottonvibes a974cff9bd microVU:
- Raised the run-cycles amount. This fixes FFXII's missing geometry (the game appears perfect now :p)
- mVU prints a message to console now if games are exiting early due to infinite loops (I'm interested in games that do this, so post any game you find that does this. Dark Cloud does this for example...)
- Added some debug stuff to iVU1micro.cpp.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1216 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-18 06:24:12 +00:00
cottonvibes 4b5117c078 microVU:
- Fixed a bug with P-reg's instances; this fixes problems/SPS in a lot of games such as (FFXII, NaN3, Digimon Rumble Arena 2, etc...)

Note: All the games mentioned still have other problems (ffxii for example has missing geometry on characters, but looks a lot better than before :p).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1215 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-18 03:07:23 +00:00
cottonvibes 942e7e9231 microVU:
- Crashes when "microVU Error: Program went over its cache limit" message occurs should be fixed.
- Miscellaneous code changes and cleanups.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1211 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-17 11:34:00 +00:00
cottonvibes ac00db5dd5 microVU:
- Added partial program searching support (helps to recompile less in games that send a lot of small programs like Tekken 5)
- Optimized logical min/max code some more (knocked off 2 instructions)
- Fixed some cases where 'last_used' should have been set.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1209 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-17 08:22:00 +00:00
Jake.Stine f6ce237b8e Did some general cleanups to vtlb's memory protection and recompiled block integrity checking systems.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1208 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-17 03:57:18 +00:00
cottonvibes 2c3043862d microVU:
- Cached Program search is faster/smarter thanks to an idea Jake had to search recently used blocks first.
- Fixed a problem with block searching.
- Minor changes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1203 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-16 08:43:56 +00:00
arcum42 9d38252d0e Let's try that again...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1202 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-16 07:24:31 +00:00
arcum42 15821b465a Work on pcsx2's Makefiles a bit. Move CDVD*.* and CdRom.* to a separate subdirectory, to make things a bit less cluttered.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1201 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-16 04:26:10 +00:00
cottonvibes 9390d5583a microVU:
-implemented Jake's suggestion for proper alignment in the microVU struct.
-minor optimizations/changes

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1188 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-15 04:51:53 +00:00
arcum42 c67bfbe648 microVU: fixed up microVU so that it compiles in Linux if the appropriate defines are uncommented, and runs surrealistically.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1187 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-15 02:46:35 +00:00
arcum42 bddfd67bae Minor tweaks here and there. Removes a couple compiler warnings, adds in a -m32 flag I missed, and updates the Makefile a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1183 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-14 21:50:03 +00:00
Jake.Stine 729d90c1ce microVU:
* Smartened up the microprogram cache.  Programs are (quite accurately) selected based on how often and how recently they have been used.  Solves constant recompilation issues in games like FFXII and Tekken 5 [but not the SPS, sorry!].

* Changed memory allocation so that microprogram blocks are allocated *on demand* -- this saves a lot of memory and makes it possible to test 64-program caches (which would previously fail due to exceeding 2gb ram allocations!).  Also fixed a few small memory bugs in Init/Alloc, and made it so mVU only allocates memory once instead of on every reset. :)

* Tweaked uses of progSize in microVU.h so that it's consistent [all instances of progSize are (vumem_size / 4) now]

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1180 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-14 19:34:17 +00:00
cottonvibes 40447aabc1 microVU: fixed a bug in the Jump opcodes. this probably fixes a lot of problems in games (grandia 3 intro works properly now, ffxii shows more stuff in-game, etc...)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1178 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-14 08:56:50 +00:00
cottonvibes b3bdaab4f0 microVU:
- Implemented Nneeve's logical min/max algorithm. This should fix the problems with DaZ and mVU.
- Applied a patch by Gigaherz that more clearly distinguishes Immediate values in microProgram log files.
- Added a speedhack to disable the logical min/max code. (see below)

Note:
From my testing, using DaZ on mVU doesn't do much. However I have an AMD cpu, and they don't benefit as much as Intel C2D's from DaZ. So this could be effecting results.

The logical min/max code is SLOW, and the little-benefit I get with DaZ means I get better performance with DaZ off and the min/max speedhack (which disables the extra min/max code).

It would be nice is someone with an Intel C2D can compare the speed of:
-mVU normal without DaZ
-mVU normal with DaZ
-mVU min/max speedhack without DaZ
-mVU min/max speedhack with DaZ


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1177 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-14 07:36:10 +00:00
ramapcsx2 3c715556e9 microVU: due to the 2 flag fixes the hacks can go now :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1176 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-13 12:15:41 +00:00
sudonim1 8385a8166f And the same typo elsewhere.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1175 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-13 11:30:02 +00:00
sudonim1 b1ddb5990c Found the typo responsible for the clipping bug.
Changed a few lines from cotton's idea of readability to mine, at least 
until cotton reverts it.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1174 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-13 11:00:03 +00:00
cottonvibes d363c21e8f microVU:
-increased rec-cache so GOW2 should be happy (untested)
-hacked-fixed some problems for now that I'll be working on properly fixing over the next few days.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1173 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-13 05:43:40 +00:00
cottonvibes 9e1b3fb33e microVU: fixed a few problems...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1172 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-12 08:21:44 +00:00
cottonvibes ef01d581b0 microVU: coded a speedhack that optimizes out all status flag updates in a microprogram if the entire program doesn't read the status flags.
FFX's intro got a 8~10% speedup with the hack, and it should be safe for 90~95% of games.
It can be enabled in microVU_Misc.h


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1167 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-11 06:15:16 +00:00
cottonvibes d19229d334 microVU:
- Major flag algorithm rewrites (work in progress)
- Abused macros to create my tables, knocking off 800 lines of code.
- VU0 and VU1 have different dynarec cache sizes now (vu0's is 1/4 the size of vu1's)
- Minor changes...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1166 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-11 01:39:33 +00:00
cottonvibes f4c3560c75 microVU:
- mac flags now stored memory instead of in upper 16 bits of GPRs.
- minor changes...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1159 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-08 23:05:43 +00:00
arcum42 b57e5f5989 More cleanup on iVUzerorec.cpp. Fix a few things from the last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1155 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-08 05:46:53 +00:00
arcum42 e330c57556 Minor bug fixes. Reformat iVUzerorec.cpp & get rid of all occurrances of the FORIT macro.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1153 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-08 04:44:32 +00:00
cottonvibes afc5760e6c microVU: Cleanup and added microVU_Flags.inl to the project.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1152 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-08 04:16:25 +00:00
cottonvibes 912185348e microVU:
- Fixed up some code so blocks are recompiled less often.
- Tweaked flag code.
- Minor changes...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1151 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-08 02:12:02 +00:00
Jake.Stine 9c0a978d5c IopMem: Added FireWire port handling to the new IopHardware handlers (oops!).
EErec: Removed an instance of duplicated cycle counting for split blocks.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1146 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-07 15:56:10 +00:00
Jake.Stine 91a4ee79cc Made some tweaks to the EErec block manager in hopes of resolving Issue 208 [Soul Calibur 3 missing gfx], involving the willbranch3 logic path.
Emitter: Added xJcc8 / xJcc32 functions for doing modified jump targets.

Also: minor cleanup to recent counters fixes (nothing relevant, just reduced out some copy-paste jobs for clarity).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1143 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-07 08:21:57 +00:00
cottonvibes e6b9275c13 microVU: various minor fixes that effected big stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1141 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-07 01:57:13 +00:00
Jake.Stine 2bf04882e3 Some code cleanups for the new vtlb optimization (no intentional functional changes -- just deleted unused code and converted all of vtlb to the new emitter syntax. Let's hope I didn't typo anything!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1138 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-06 12:37:37 +00:00
Jake.Stine 1cf028ccf5 Optimized vtlb direct path memory operations using some crafty asm code. Expect 2-3% speedups in most things, and perhaps more in some FMVs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1137 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-06 02:15:43 +00:00
cottonvibes 6a075aca03 pcsx2:
- PCSX2 would repetitively call CDVDopen if loading an elf file and your cdvd plugin didn't have an ISO already pre-loaded. Basically I had to switch to CDVDnull whenever I wanted to load an elf... well not anymore xD

microVU:
- Implemented the VI regs thing where if an opcode tried to access vi regs 16~31, the VU's should return vi0~15 (viReg & 0xf); technically it should never happen, but from my tests the BIOS seems to do this... so maybe some rare games do it too... 
- Our VIF code apparently uses VU cycles for some stuff, so I now update the cycles variable VIF relies on.
- Minor Optimizations

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1136 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-05 02:25:48 +00:00
Jake.Stine a7cbcae4be Small speedup for the EE/IOP recompilers, by removing the legacy limit on the number of recompiled blocks (was causing recompilers to reset the code buffers way more than necessary).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1135 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-05 01:26:18 +00:00
sudonim1 002b9af006 This is why a type safe emitter is important.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1134 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-04 20:14:37 +00:00
sudonim1 db41e52940 Apparently the MSB of integer register specifications in VU micro instructions is ignored, making the upper 16 registers mirror the lower 16. Changed all relevant instructions to reflect this.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1132 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-04 18:21:44 +00:00
Jake.Stine 0238815248 wxGui: performing maintenance merge before weekend departure.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1120 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-02 14:06:06 +00:00
Jake.Stine a69cfcc464 Removed VU-Skip [helps simplify the frameskipper logic] -- Use the VU Cycle Stealer hack instead for better, faster, more stable speedups of the VU1 unit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1114 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-02 09:04:47 +00:00
cottonvibes f8f4c7f136 microVU: fixed some bugs in stall calculations.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1113 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-02 06:13:43 +00:00
cottonvibes b6ba2f050f minor microVU changes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1101 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-01 10:12:44 +00:00
arcum42 ecddd1dd6e wxGui: Type the letter 'L' a whole bunch of times.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1097 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-01 02:15:18 +00:00
Jake.Stine d14259b8b4 *experimental* Added forced block splitting at 4k code boundaries in PS2 memory. This fixes issues with frequent recompilation of certain uncounted manual blocks, and also allows for us to greatly simplify the memory protection and recompiler block management code, but *may* have performance penalties under specific conditions. So I've added a verbose log message to Devel builds so that we can look for any problem games that might invoke more than their fair share of tiny block splits.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1093 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-30 08:33:51 +00:00
Jake.Stine 9513be5476 Reverted BTS due to unexpected complications, but retained a minor optimization we developed during the BTS experiment. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1091 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-30 01:16:25 +00:00
Jake.Stine a2fd88d952 Fixed bugs in BTS instruction emitters, and working on fixing bugs in BTS memory protection.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1089 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 20:55:13 +00:00
Jake.Stine e81fbc728d Fixed a bug in the cpu mhz detection introduced in the prev revision, and improved the algo to be much quicker and generally more accurate than before (and with luck AMDs will agree!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1087 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 11:13:17 +00:00
Jake.Stine 41079415fa Improved SSE detection:
* SSE3 detection via cpuid implemented.  [fixes Linux -- the force_sse3 option should no longer be needed!]

 * Instruction tests are now done for SSE3, SSE4, and SSE4.1 to confirm cpuid results (I doubt this is necessary, but the old code did it for SSE3, so I figured I'd keep it and log results anytime an inconsistency is detected).

 * SSE4.2 and SSE4a detection added.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1086 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 10:10:33 +00:00
Jake.Stine 6e82c77e92 Bugfix for r1083. [Don't ask me what I was thinking when I wrote >>10 instead of >>12]
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1085 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 08:30:33 +00:00
arcum42 ad7aa893e9 All right, now that's just silly... (Fix Linux compilation.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1084 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 05:07:18 +00:00
Jake.Stine 31f0be6eb8 Merged drk||Raziel's "BTS Manual Protection" enhancement for the vtlb into /trunk, and combined it with Pseudonim's "Manual Block Clear" enhancement for an ideal two-phase protection system.
Most things should be a bit faster with this new system.  The system is more balanced than the previous one, in that it provides a better overall performance across most games, but some specific FMVs (like Disgaea 2's) will be a bit slower.  On the other hand, others like DQ8 and Kingdom Hearts 2 FMVs get a big speedup.  Almost all in-game stuff should be either the same or faster now.

Set a bunch of ignores for TortoiseSVN users, as suggested in Issue 166.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1083 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 04:24:46 +00:00
Jake.Stine 04beb1f29f wxGui branch: [linux] Minor fixes to the GUI -- Ok/Cancel buttons line up where they should now. :)
CodeBlocks Project Changes:
 * Fixed some absolute folder specifications (/home/pubuntu/) which went unnoticed.
 * Enabled Precompiled header support (speeds up compilation about 40% for me).

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1081 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-28 20:26:43 +00:00
Jake.Stine 01c01e9c34 wxGui branch: [linux] Added workspaces and projects for Code::Blocks IDE. Main workspace is currently located in pcsx2/linux/ (will move it to a top level later), and only Pcsx2/zlib projects are tested (and working!). Haven't gotten to any plugins yet.
The CodeBlocks project is tested for Debug builds only, and will generate the executable binary to /yoursvnroot/bin/ [same as the MSVC/Win32 build does].

* Note: The 'regular' build script is currently broken and I haven't a darnedest clue how to fix it, since my knowledge of Automake doesn't extend past the end of this sentence.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1079 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-28 05:56:22 +00:00
cottonvibes 2a47e807c3 microVU:
- fixed a bug in the logging system causing incorrect branch-to addresses.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1077 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 21:58:20 +00:00
ramapcsx2 7ecc0dd6a3 Fix xgkick delay mistake
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1073 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 19:40:07 +00:00
arcum42 172f933986 wxGui: Doesn't *quite* compile in Linux, but it's close.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1072 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 11:28:20 +00:00
cottonvibes 5183f1eb63 pcsx2:
- fixed the 5 warnings in hacksDlg.cpp

microVU:
- major changes to microprogram logging. logs are now in html format with color-coding, hyperlinks to branch addresses, horizontal rules separating blocks, etc...
- made mmx reg usage for VI regs toggable (off by default now)
- minor changes

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1071 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 10:00:58 +00:00
cottonvibes 13cda40ec8 microVU:
-Finished operand logging, so microprogram logs are very detailed.
-Apparently XGkick specifies the address divided by 16 (thats how zerorecs handles it), so now microVU does the same thing.
-Zerorecs also saves '(PC+16)/8' instead of 'PC+16' in BAL/JALR instructions, so I did the same with microVU...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1070 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 02:20:09 +00:00
Jake.Stine 5d36fe3839 wxGui branch: Holy crap! I converted it to unicode! This was an absolutely maddening experience. [also: Merged with /trunk]
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1069 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 02:04:31 +00:00
cottonvibes a6cbab677f microVU:
-fixed problems with branches jumping to incorrect addresses
-finished implementing clip flag instances
-started adding operand info to logging (also logs branch jump-to addresses)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1059 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-25 06:39:16 +00:00
sudonim1 7f096c63ad Break up very long recompiled blocks.
Perform a branch test before jumping to the next block.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1058 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-25 00:39:07 +00:00
Jake.Stine 4f08dc6bad Linux: A more complete rendition of the GCC compilation fix. Note: GCC requires non-const qualifiers on function pointers and function pointer-templated parameters, but not on void* (didn't know they were that different, did you?).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1057 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-24 13:49:00 +00:00
arcum42 e3b217c57a Remove some consts to appease the gcc 4.3.x gods.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1056 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-24 13:38:16 +00:00
Jake.Stine dff8cf5ac1 Save linux from the dastardly deeds of my previous commit, and fix one last remnant 'i' from the apple-like naming schemes of yesterweek.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1055 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-24 11:44:07 +00:00
Jake.Stine 7394e99ef6 Ok, I lied -- more work on the emitter. I forgot to fix up the Jump/Call api yesterday and, along the way, did lots of major cleanups. :)
(and broke linux, probably!)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1054 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-24 11:25:10 +00:00
arcum42 286c405ce9 Moved a few things around. Redid some of the work I did earlier on Hw with the non-obsolete version of the code. Changed some code not to use defines...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1053 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-24 02:28:14 +00:00
arcum42 52fcc69628 Apply r1046 to ZeroGS DX as well. Ifdef a few things from r1047 so Linux compiles. A few minor changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1048 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-23 13:15:44 +00:00
Jake.Stine ef565303a5 Finished the emitter, complete with code cleanups! :) (added last few SSE instructions, and inserted placebos for some future additions to the x86 portion, regarding xchg/xadd/etc).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1047 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-23 12:39:59 +00:00
Jake.Stine c258a8d776 Fixed a bug from r1038. PMADD and HADD instructions had inverted to/from fields. >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1045 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-22 18:35:44 +00:00
arcum42 e87d224cc9 Started consolidating the various Dump routines, most of which are broken, into one file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1044 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-22 13:25:26 +00:00
sudonim1 d7341d5b69 Protect manual pages again after running code in them for a while, should speed up some games and probably not significantly slow down any.
Related new speed hack, fast-forward a block starting at 0x81FC0 which some games (FFX) run a lot.  This block is also excluded from the previous feature.
Rearrange configuration file and speed hack dialog.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1040 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-21 23:30:06 +00:00
arcum42 bfe128cd41 Linux: Fix the last of the GCC compilation errors.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1039 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-21 21:42:33 +00:00
Jake.Stine 27a8f3aa9a Added PMADD/HADD/INSERT/EXTRACT instructions, and fixed more cross-compiler problems.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1038 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-21 21:30:47 +00:00
Jake.Stine 2dcee32079 Linux: Fix some GCC compilation errors. And update the msvc project (somehow didn't get committed last night, but only change header files so prolly didn't break anything).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1037 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-21 13:54:41 +00:00
Jake.Stine deb642af43 Fixed a small bug from my last commit (mostly only affected debug builds), and implemented PALIGNR/MOVSLDUP/PABS/PSIGN/PEXTR/PINS.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1036 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-21 05:29:14 +00:00
Jake.Stine 5c312c36c7 Added PMIN/PMAX/PMUL/PCMP/PSHUF/PUNPCK/UNPCK/PACK instructions to the new emitter [this basically finishes all MMX instructions -- just some SSE2/SSE3 and SSE4 mess left!]
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1035 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-21 01:40:45 +00:00
cottonvibes 50c4a95c06 microVU: added support for logging complete micro programs saved to the files microVU0.txt/microVU1.txt (in the logs folder)
note: currently the code only lists the opcodes without the operands.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1033 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 19:37:41 +00:00
Jake.Stine 73e50f49ea Emitter: Yay! More instructions! All forms of PADD/PSUB/PSRL/PSLL. I'm getting closer!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1032 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 19:25:35 +00:00
Jake.Stine cc48702b17 Emitter: Implemented SQRT/RSQRT/UCOM and all variations of SSE CVTs (omg those were a nightmare) [also patched old emitter to use new MOVD implementations -- missed those earlier].
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1031 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 15:22:02 +00:00
Jake.Stine 18c4765d31 Emitter: Changed a lot of 'i's into 'x's, because...
<JakeStine>sudonim says he likes xMOV better than iMOV as an emitter prefix. I'm wondering if I should go ahead and change it.
<JakeStine>I tend to favor logic, but everyone else just thinks it looks like iMac and iPod
<JakeStine>I just don't want to have to change it more than once.
<cotton>well 'x' is like the algebraic variable, which can be anything
<cotton>so it does kindoff make sense
<cotton>cuz like
<cotton>you have xSOMETHING, where SOMETHING is all the different emitter functions

... I'm sold. :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1030 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 03:10:05 +00:00
ramapcsx2 3ee59f3f4e More work on cycles. FPU is slower than assumed earlier.
Also added COP0 DIE bit handling, that disables the EE's dual issue capabilities.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1029 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 01:40:13 +00:00
Jake.Stine 28c81a2ff1 Bugfix for the new emitter: ([xmm/m128],xmm) form of MOVQ was generating the wrong opcode (introduced in r1011). [other changes are a work in progress for more instruction additions]
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1026 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 00:06:51 +00:00
refraction 457b78e70e Put a different fix for bad J/JALR jumps (Charlie and the Chocolate Factory)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1024 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 22:00:11 +00:00
cottonvibes b7ea57a5d9 microVU:
-implemented the ability to run VU's for x amount of cycles, instead of running till the microprogram is completed (some games can get stuck in infinite loops, so this is needed)
-fixed some errors...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1023 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 21:22:47 +00:00
arcum42 a2d305b9ab The things Visual C++ lets you get away with...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1022 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 20:34:32 +00:00
Jake.Stine 1bc6795200 Emitter :Implemented Packed logical operations (PAND/POR/ANDxx/ORxx/etc), ADDxx/SUBxx/MULxx/DIVxx, and iRCPPS/iRCPSS.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1021 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 20:14:53 +00:00
Jake.Stine d91eb6d1c8 Emitter: Fixed a GCC compilation error; Implemented MOVNT/MOVLH/MOVHL/PMOVMSKB, and tied in all old emitter references to MOVAPS/MOVDQA to the new versions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1020 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 16:34:29 +00:00
ramapcsx2 bb7dc87819 Silly bug made each EE branch count as 0 cycles.
Enjoy some "free" speedups :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1019 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 13:55:09 +00:00
cottonvibes 76e8b6586a microVU: fixed various typos
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1017 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 05:49:16 +00:00
arcum42 f32f705d1d Quick hack to fix Linux compiling. Delete some old code. Minor tweaks that I hadn't gotten around to committing.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1016 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 05:42:33 +00:00
Jake.Stine c19de231f6 Emitter: Implemented MOVAPS/MOVDQA, and renamed some vars/classes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1015 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 05:24:20 +00:00
cottonvibes a2a1d58b4b backup
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1012 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 02:54:56 +00:00
Jake.Stine 6f99ec45b9 Emitter: Fixed a small bug in the ModSib emitter logic which caused some forms of ESP to encode incorrectly. Implemented CALL/BSF/BSR [x86], MOVQ, MOVD, and MOVSS [mmx/xmm]. Renamed ix86_mmx.cpp and i86_sse.cpp to ix86_legacy_mmx.cpp and i8x_legacy_sse.cpp.
iMMI.cpp: Removed mucho dead pre-SSE2 code. (old code can be grabbed from a tagged revision, in case it's useful for future reference).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1011 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 02:14:50 +00:00
cottonvibes 924869f765 more microVU "stuff"
<gigaherz>if the commit log has "stuff" in it, it's vu work from cotton

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1009 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-18 23:56:32 +00:00
cottonvibes 45e9f544cd microVU: mostly block-linking/execution stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1003 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-18 04:28:24 +00:00
Nneeve 14f306a800 Fixes a mistake that I made in r927. Fixes regression issue 158
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1002 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-17 19:35:22 +00:00
Jake.Stine 029a94ce3f Emitter: Added BTS/SETcc/TEST instructions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1001 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-17 18:47:04 +00:00
ramapcsx2 984ca67042 -Scaled back the EE load/store cycle count to the theoretical minimum of 1 cycle. (Fixes Digital Devil Saga PAL fmv)
-Added a safety to the VU cycle stealing hack, so it doesn't go berserk :p

Note:
Due to the changed cycle count a lot of games will get "slower".
Especially FMV will be affected.
This is unfortunate, but correct emulation comes first.
You can however enable the ee sync speedhacks, as they're more stable now as well.
This can bring back the lost speed.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@999 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-17 12:39:22 +00:00
Jake.Stine 986683323e Extremely insignificant optimization applied to recADD/ADDI instructions (omg it might save a cpu cycle per minutes or something!)
Also: Reverted the addition of the ImplementationHelper<> class, since it failed miserably under GCC. -_-

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@998 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-17 01:54:35 +00:00
arcum42 4704ac9436 Reduce compiler warnings to a more reasonable level in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@994 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-17 00:35:55 +00:00
arcum42 ecbef93c6b Here we go again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@993 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-16 23:57:04 +00:00
Jake.Stine 1279fe2c21 Emitter: Implemented INC/DEC/NEG/NOT instructions. Plus: many code cleanups using a better form of template parameter inference.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@990 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-16 22:38:55 +00:00
Jake.Stine ac2f5713fc Emitter: fixed a bug in MOVSX/ZX's reg->reg form [resolves Issue 159 - missing geometry in DQ8], and moved some files around.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@988 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-16 14:45:13 +00:00
Jake.Stine 986b4fdf93 Forgot to add a new file from the last commit... >_< [ix86_impl_dwshift.h]
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@987 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-16 01:39:38 +00:00
Jake.Stine 4658529970 Emitter:
* Added MUL/DIV/IMUL/IDIV to the emitter, renamed as UMUL/SMUL respectively (to remove ambiguity of the instruction behaviors).
 * Fixed a bug in the shift instruction emitter that would have caused it to emit the wrong instruction type (like a SHR instead of a SHL, for example).
 * Added type strictness to the shift instructions that take the CL register as a parameter.  Passing anything other than CL will generate compile time errors now.
 * Fixed a syntax error in one of the legacy defines.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@986 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-16 01:34:09 +00:00
Jake.Stine f228a91c93 Added CMOV to the emitter, renamed x86Struct stuff to iStruct, renamed XMMREGS / X86REGS / MMXREGS defines to iRegCnt_XMM / iRegCnt_GPR / iRegCnt_MMX, and undid a couple u32 optimizations which could have caused unexpected behavior in the future, if we ever decided to employ some particularly obscure case of self-modifying code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@985 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 21:00:32 +00:00
sudonim1 4d2adcae9f New speed hack mainly targeting 3D geometry.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@984 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 20:31:58 +00:00
arcum42 fca65ba2ef Add an include so things compile.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@983 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 17:22:34 +00:00
Jake.Stine 74db1c8189 Implemented Jmp/Jcc and MOVSX/ZX instructions, and added 'i' prefix to most things (will add 'i' to a few more soon -- I think iRegister will be nicer than 'x86Register').
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@982 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 15:45:52 +00:00
cottonvibes af792b7694 zeroRecs:
-minor change

microVU:
-fixed a lot of various errors
-partially implemented some clip flag stuff
-partially implemented some branch/jump stuff

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@981 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 10:13:48 +00:00
arcum42 fa1a79b368 Cleaned a few things up, and moved a few things around.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@978 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 01:25:11 +00:00
arcum42 881b01c8d7 Linux: Fix the Makefile.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@976 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 14:14:40 +00:00
Jake.Stine be430d5d89 Fixed a bug in the Emitter the caused the VU1 to screw up a bit (bad gfx and freezeups and stuff). Also: Resolved some GCC/C++ troubles.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@974 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 12:37:48 +00:00
cottonvibes ac1ecd5812 microVU: more flag "stuff" xD
<JakeStine>cotton: your commits always contain "stuff"
<JakeStine>I think you should rename one of your files to "microVU_stuff"
<Dwarg>And maybe others called "microVU_junk" and "microVU_crap"
<Dwarg>Then you could be much clearer
<Dwarg>"Fixed some junk, broke some crap, added some stuff...."
<JakeStine>lol
<cotton>lol

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@972 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 03:34:47 +00:00
Jake.Stine 6cceed6268 Many Emitter updates:
* added implementations for MOV and Shift instructions (SHL, SHR, ROL, ROR, etc).
 * Improved compilation optimization considerably, by improving inlining selection in cases where constant propagation can be resolved reliably.
 * Moved lots of code around, so that the new emitter and the legacy emitter are more clearly separated; and renamed some vars.
 * Changed recompilers to initialize the recBlocks array to 0xcc instead of 0xcd (fills the blocks with the single-byte instruction INT3, which fixes the misalignment mess that would sometimes happen when using disasm views on the RecBlocks contents).
 * Switched back to /O2 (Optimize for Speed) instead of /Ox, since MSVC (for me) generally fails to optimize Thread-Local storage in /Ox mode.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@971 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 01:26:57 +00:00
cottonvibes 2711d14f0c microVU: bug fixes on some flag handling stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@970 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-14 00:15:18 +00:00
cottonvibes 6e1805de36 microVU: minor changes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@967 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-13 05:39:18 +00:00
cottonvibes 557564edc2 microVU: changed flag handling algorithms some more...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@966 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-13 03:46:19 +00:00
cottonvibes a3c1669024 microVU: more flag stuff (div/sqrt/rsqrt flags set at proper time)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@960 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 10:23:25 +00:00
cottonvibes 5b0d9b6723 microVU: fried my brain with some very-complex VU flag-handling logic/algorithms (hopefully they work as expected)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@959 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 08:29:53 +00:00
drkiiraziel f3370ce28f --updated to r956
--uses test8 instead of test32 when possible
--exception handling checks are a bit more strict

git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@957 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-12 02:49:23 +00:00
refraction 4df3f80d30 Optimized and split up the unpack call a bit so less checks are being run, should bring an overall speed increase. Also got rid of some duplicate pointer rubbish which was all over the place.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@955 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 17:45:14 +00:00
cottonvibes 076e9e5386 more microVU stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@953 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 09:25:47 +00:00
drkiiraziel 3fb09c2192 --BTS r/m+r added for emitter
--Uses BTS + bit arrays for manual block tracking, instead of full invalidation.It makes some games much much faster and doesn't seem to affect he rest (still, testing is needed).Okami that uses some sort of SMC works .. but i'm sure there are some bugs left in it


git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@951 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 20:26:43 +00:00
cottonvibes 653286a692 forgot to add microVU_Execution.inl in the last commit xD
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@949 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 19:47:13 +00:00
cottonvibes 6775b8a5cc microVU:
- added microVU_Execution.inl
- dispatcher stuff is now recompiled with pcsx2's emitter instead of using inline asm, its cleaner than inline asm and its more portable since the asm won't have to be ported to GCC.
- lots of first-pass implementation for lower opcodes
- implemented documented branch behavior (first pass stuff only)
Note: theres some undocumented stuff branches do according to Nneeve's tests, but i won't implement those for now since 99% of games shouldn't need it, and according to the tests, the behavior seems kind-of random/erratic.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@948 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 19:45:27 +00:00
arcum42 b1769a2061 Take care of Issue 139.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@942 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 01:50:31 +00:00
drkiiraziel f5e99af1ab --No longer uses 2 hacks/buffers, it just stores the info needed to generate the memops directly on the code
git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@936 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:01:56 +00:00
drkiiraziel 6c88e99cf2 --This breaks linux.
--Basic vtlb code rewrite for full mapping using exceptions
--This is buggy & leaks ram for now


git-svn-id: http://pcsx2.googlecode.com/svn/branches/vtlb-exp@934 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 20:44:26 +00:00
Nneeve 57f9c2bc64 Disabled a VU recompiler option that caused some SPS in Ratchet and Clank and didn't actually affect speed.
Modified VU stalling logic of MR32 and MTIR instructions and modified FDIV stalling.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@927 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 18:19:48 +00:00
ramapcsx2 f4e9178c06 backing up some changes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@926 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 17:15:51 +00:00
arcum42 08c6f68aba Fix Linux again (and again and again and again...)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@925 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 13:34:51 +00:00
cottonvibes e3a87fecd9 microVU:
-fixed rm instructions to work with Jake's emitter changes
-implemented the case where upper and lower instructions write to same reg at once (the lower instruction's result is discarded)
-implemented more first pass analyzing stuff
-fixed various bugs...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@924 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 10:07:14 +00:00
Jake.Stine 3dd99a0932 More updates to the new emitter: switched over some Push/Pop instructions, did a fully compliant implementation of LEa (both 16 and 32!), and fixed a couple small bugs in the ModRM/Sib encoder regarding EBP as an [index*scale] formation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@923 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 06:25:40 +00:00
Jake.Stine 920e99145e Implemented the 16 bit forms of Group 1 instructions into the new emitter.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@922 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-07 23:48:43 +00:00
Jake.Stine 5f354c3cee Reverted the emitter back to a c/cpp form from inl files (probably wasn't necessary, but I don't like having code in header/inl files when I can help it). Also:
* Fixed a couple potential bugs in some Rm forms of MMX instructions.
* Improved compilation times by isolating BaseBlockEx.h to the files the needed it (it uses STL junks).
* Removed some dead code form emitters and BaseBlockEx.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@921 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-07 21:54:50 +00:00
ramapcsx2 1d9adee468 couple of changes, very minor speedup
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@920 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-07 17:35:09 +00:00
Jake.Stine bf3d124e23 Switched the emitter over to using Thread-Local storage (TLS), which removes all the templates and brings us back to a more traditional-looking, macro-free, and intellisense-friendly implementation. Plus it's a lot less prone to errors and will make debugging easier down the road. (next commit will rename the files back to .cpp and get them out of the header includes)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@919 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-07 16:54:02 +00:00
arcum42 5f35577543 Linux compiles again. Added back in potentially obsolete code, since it's still called.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@918 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-07 12:25:56 +00:00
Jake.Stine 2588dc0309 Emitter renovations of a large scale sort (only up to phase 1). Intel's 'group 1' instructions now use a completely new ModRM/SIB encoder, along with a nicely object-oriented interface. I created some macros to retain backward compat for now, and will continue implementing the rest of the instructions later as I have time.
Also: Removed x86/64 instructions from the emitter.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@917 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-07 08:42:25 +00:00
cottonvibes 923802f936 microVU: more recompiler first-pass implementation stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@915 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-06 07:32:10 +00:00
sudonim1 4d8769ecc5 Implemented another block lookup method.
Fixed an unused instruction in the emitter.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@913 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-05 14:19:13 +00:00
Jake.Stine 29d876dfac wxGui branch: Finished merge, and added a new wxConfig28 project file that allows the wxCore and wxBase libraries to compile in parallel on multi-core CPUs.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@909 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 17:28:05 +00:00
Jake.Stine 25185c75c1 wxGui branch: Merged with trunk up to r903, and resolved some Win32 compilation/link errors.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@908 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 16:05:14 +00:00
mattmenke a6d330448c Fixed a simple bug from one of arcum42's cleanups.
Cleaned up multitap code a little in both PCSX2 and LilyPad.

Some extra safety checks in LilyPad when loading state.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@906 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 11:21:35 +00:00
arcum42 7744205a58 Assorted cleanup. A few compilation errors went away, a few useless variables are gone, a few if statements are now case statements. Added comments on a few potential problem areas.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@904 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 07:48:50 +00:00
cottonvibes ebcedccf23 pcsx2:
- removed some obsolete 'iCWstate' code.

microVU:
- implemented more rec first pass stuff for the lower instructions.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@903 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 06:20:48 +00:00
Nneeve 006b81aabf VU:
fixed 1-cycle branch delays
fixed an issue with FDIV instructions whose operands are vf00
EE:
fixed recompilation of SRA and SRL when shift amount is 0
fixed conditional recompilation #defines a bit

(as an aside, this fixes a crash in Ratchet and Clank, but the game has other issues)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@895 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 18:49:23 +00:00
ramapcsx2 e39dec6ddb Oh well, a problem with the T/D flag code made the bios screw up.
Since it can't be fixed without further code in superVU, full revert for now :/

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@888 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 22:01:16 +00:00
ramapcsx2 2caebe0069 T/D flag interrupting was missing on the VUs.
Nneeve implemented it :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@886 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 21:04:45 +00:00
Jake.Stine a8d9cbc25d Final pass of today's vtlb optimizations: Improved the codegen for const-propagated direct reads and writes (very minor optimization).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@885 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 15:17:47 +00:00
Jake.Stine d60718e79d More vtlb optimizations: Switched over to full const resolution of the TLB, and added a shortcut for the INTC_STAT register (replacing the one rama added to HwRead.cpp a couple days ago).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@884 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 14:50:19 +00:00
Jake.Stine 4c8cf52c94 Implemented some more vtlb optimizations: Regalloc should be working a bit better now, and removed some unneeded code on the LWL/SDL/etc interpreter callbacks.
Emitter: Added Rm/RmOffset forms for AND32 - Untested.  I'm pretty sure they're valid instructions but I could be wrong.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@883 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 13:42:30 +00:00
cottonvibes a547ef4cea <cotton>for april fools i can put on my next commit that microVU is finished and doubles fps
<cotton>but i guess i shouldn't do that on the svn :D
<cotton>or maybe i can >.> <.< >.>

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@878 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-01 08:26:35 +00:00
Jake.Stine cf0c53f152 wxGui branch: Merged with trunk (2 weeks of changes!)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@876 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-31 15:54:14 +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
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
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
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
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
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
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
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
Jake.Stine 6ce8ac189c wxgui branch: Full merge of trunk into the new wxgui, including a revision from way long ago that somehow got missed (when I renamed Windows folders in some plugin dirs)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@821 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 12:14:37 +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
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
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
sudonim1 43c0d895ad Removed unnecessary rs flushes for loads and stores
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@807 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-17 20:07:17 +00:00
Jake.Stine 6c13dcdb41 Fixed a bug in the vtlb constprop support (stores weren't using the right macro).
Reduced the BIOS rom warnings from gaudy red text and stars to simple yellow warnings (since they really don't matter).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@805 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-17 18:15:02 +00:00
cottonvibes 2c0f8fe41e more W.I.P. stuff..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@801 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-17 03:34:26 +00:00
sudonim1 c2e3536818 Emitter: encode negative 8 bit immediates for some instructions and EAX forms for MOV
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@800 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-17 00:57:59 +00:00
cottonvibes 2fa30cabf4 work in progress stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@797 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-16 08:19:46 +00:00
cottonvibes 0deb44c70d seems i had misunderstood ACC's pipeline rules.
turns out there only needs to be 1 instance of it, so i had to fix all opcodes that use ACC.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@795 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-16 01:43:13 +00:00
ramapcsx2 3f87ae7078 Looks like the new PCR/TIMR code wasn't called correctly in recMFC0.
This broke Fatal Frame (yes, again..).
Thanks to Nneeve for finding and fixing it so fast :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@793 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 12:24:24 +00:00
cottonvibes 7a0e3dca12 implemented all vu lower instructions (second pass).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@792 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 10:03:34 +00:00
sudonim1 64a1b3fb45 Forgot this.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@785 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 19:13:24 +00:00
tmkkmac 9ad464377a Removed a VU Clip gamefix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@784 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 18:50:46 +00:00
tmkkmac 2b843ce49d Fixed a problem around the VU clip code, introduced in r659. GoW and Persona (and more) now work without a gamefix.
I'll remove the gamefix if there is no problem.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@783 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 16:59:03 +00:00
sudonim1 c483f17331 Rewrite immediate jumps from the block manager instead of having dispatchers to do this at execution time.
Should be a tad faster.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@782 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 16:30:35 +00:00
sudonim1 17298b7e6b Made constant register saving more simple and certain. Grandia 2 is probably the only game that this would've fixed, but maybe there are others.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@778 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 02:06:18 +00:00
sudonim1 1689b73c77 Realised that I probably broke MOVZ/N with my last commit and tried again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@776 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 01:21:13 +00:00
sudonim1 e248cf8cf0 Grandia 2 is playable again. The old block manager was incorrectly clearing a block which didn't need clearing and thus masking this constprop bug.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@774 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 00:21:35 +00:00
sudonim1 3aedd8acb2 Further work on the block manager.
Grandia 2 is still broken but this is a little faster, less clear happy and "impossible block clearing failures" shouldn't occur any more.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@770 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 18:23:28 +00:00
cottonvibes 43d7191927 cleanup: moved 'software emulate mul' to gamefixes section since it seems to only be needed by 1 game.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@765 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 07:20:04 +00:00
Jake.Stine 915fe28c23 pcsx2-wxgui: maintenence merging of trunk revisions into the brance (always a good idea to update branches after header file renames)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@764 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 06:14:08 +00:00
arcum42 e0347fd285 Some header work, get rid of some dead code, and rename PsxCommon.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@762 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 04:49:23 +00:00
Jake.Stine 3821425442 Minor fixes to the IOP Interpeter and const prop regarding the SLTIU instruction.
Removed the rest of the references to the UseGui global boolean since it wasn't used anymore.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@761 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 04:21:50 +00:00
cottonvibes cbe108e99d implemented some more opcodes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@760 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 02:03:18 +00:00
arcum42 71c4561f86 Linux: memcpy_fast seems stable enough on Linux, so I'm removing the switch, and turning it on by default.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@759 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 01:39:54 +00:00
arcum42 12cd3f8b6c Linux: Fix Final Fantasy XII. (memcmp_mmx appeared to be freezing MMX and not thawing it, and it didn't freeze it in Windows.) Comment out some unused code. Remove some code I commented earlier. And consolidate some of the calls to FreezeXMMRegs/FreezeMMXRegs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@757 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 01:05:43 +00:00
cottonvibes 13c56743c1 microVU recs: fixed a bug in LQ, and implemented LQI and LQD.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@754 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-12 14:46:42 +00:00
cottonvibes b894a7a217 some tweaks based on some optimization tips jake found.
the idea is that with SSE, doing operations that don't modify all the vectors can give false-dependencies, and in some situations prevent CPU's out-of-order execution (slows things down).
so the solution is to only use stuff like "movss" when you need to preserve the upper 3 vectors, if not, its always better(faster) to use movaps.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@751 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-12 05:32:27 +00:00
cottonvibes 3870debc22 implemented ERCPR (seems i forgot about it on my last update).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@750 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-11 23:59:51 +00:00
cottonvibes 93b85af339 optimized some stuff, and implemented all EFU opcodes.
note: most of the microVU EFU opcodes are implemented with completely different algorithms than zerorecs. this might prove to be more accurate, but i mainly did it to avoid using x87 FPU instructions (since i'm using mmx regs for storage).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@749 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-11 23:49:39 +00:00
Jake.Stine 5d93b6bbe9 Minor PERF fixups -- moved the diagnostic msg to a less spamming-like area (on PCCR assignment, rather than on PCR update).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@748 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-11 19:08:08 +00:00
Jake.Stine dc3d9f4bfc Fixed the bug in r740 that broke speedhacks; and improved the PERF support a bit more using bitfields and more correct mode tests.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@745 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-11 07:40:23 +00:00
cottonvibes 0bcb9cc0e3 nneeve fixed min/max FPU opcodes to be more precise when running in "Full" clamp mode.
he also cleaned up some other stuff in iFPUd.cpp

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@744 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 23:50:17 +00:00
cottonvibes 4620f4c5aa cleaned up some code (knocked off 100+ lines in Alloc.inl), and implemented 'ESUM' opcode.
<drk||Razi>cotton2: write more helpful logs kthx ;p
<cotton2>doesn't matter, no-one cares what i write since it doesn't effect anything for now
<Krakatos>cotton, stop posting those useless commit comments XD
<feal87>no no, please continue. they're fun, i look forward to read them
<feal87>from time to time
<feal87>:°D
<cotton2>lol :D
<Dwarg>Please spend more time making them more amusing.
<drk||Razi>cotton2: it does matter
<cotton2>dwarg: yeah i know!
<Dwarg>drk||Raz:  Why?  They're useless for reversion testing
<cotton2>i have to think of good stuff to write :O
<drk||Razi>when the next vu coders (if any, ever ;p) want to look at your code .. and the history is full of crap
<drk||Razi>that won't be much useful
<drk||Razi>;p
<cotton2>there won't be a next vu coder!
<Dwarg>Comments in the actual code would be more useful, wouldn't they?
<cotton2>my code is perfect!
<drk||Razi>lol
<cotton2>>.> <.<
<cotton2>but seriously
<cotton2>i don't think it can get better
<cotton2>unless like
<Dwarg>Rather than going back and comparing SVN comments to changes made way back when
<cotton2>you want to support AVX
<cotton2>or w/e intel's new SSE thing is called
<feal87>and anyway AVX is like 3 years away
<feal87>in that timeline pcsx2 i think will be stabilized
<feal87>:°D
<cotton2>yeah
<drk||Razi>cotton2: just log kthx
<drk||Razi>implemented y,x,z
<drk||Razi>:>
<cotton2>thats what the diffs are for!
<feal87>and anyway really its useless for this stage
<drk||Razi>yea i know
<feal87>until microVU is active and used by PCSX2
<cotton2>i'm just implementing different opcodes though, its not like i'm chaning features
<drk||Razi>you can tell anything from the code -- no comments or changelog needed.Right ? ;p
<feal87>then every change should be documented for regression testing
<cotton2>drk: yup!
<cotton2>well
<cotton2>its not like i'm changing stuff
<cotton2>i'm just implementing things that havn't been coded
<cotton2>so theres nothing to regress to
<feal87>yep

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@742 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 21:02:44 +00:00
tmkkmac 68ec2f25a8 Fixed my stupid mistakes in the previous commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@741 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 20:16:13 +00:00
Jake.Stine 03a6406ff0 Added some preliminary exception handler code to the PCR's. No point in finishing it right now since the rest of the EE's exception handler is still in flux, but at least it's ready for a quick upgrade now. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@740 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 20:03:49 +00:00
tmkkmac 7425f1bb6e Fixed a problem in the new VU clip flag code that a history of the flag is cleared wrongly in a certain situation. Unfortunately the problem in GoW is still there :(
MMI: Optimizations for some opcodes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@739 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 19:44:32 +00:00
Jake.Stine 15901551b4 Improved PCR/TIMR support -- fixed a case where games would try and read from the PCR multiple times in the same recompiled block, reuslting in bogus values, and fixed some sign extension errors on the interpreted version of MFC0.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@738 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 19:21:54 +00:00
arcum42 cef77785cb Fix the yuv2rgb.cpp issues, per Zeydlitz's patch in issue 100. fast_memcpy works in Linux now as of r727, so I'll leave it enabled for a while, and if it seems stable, I'll remove the switch for it, and have it permanently enabled.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@735 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 12:25:45 +00:00
Jake.Stine 0bf5d1c43b Pcsx2-wxGui: Initial commit of "non-functional" gui (WIP). It compiles but doesn't do anything yet (none of the menus have been bound to actions, except for the GameHacks dialog). Initial wxWidgets project additions and prepwork are courtesy of Feat87.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@732 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 11:35:24 +00:00
Jake.Stine aef3af8a29 nneeve improves the software-emulated FPU accuracy ("Full" mode in Advanced Dialog).
Appended notes:
 * ADD in iFPUd should be bit accurate (unless it isn't. needs TESTING)
 * MUL in iFPUd with Software Emulate MUL is as much as I could get near bit accurate (not quite enough, probably. needs TESTING)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@728 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 23:54:38 +00:00
Jake.Stine 5dc76238bf Fixed a bug in memcpy_fast that caused memory corruption on blocks not aligned to 32-bits in length (this might fix the linux memcpy fast problem too).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@727 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 21:52:33 +00:00
cottonvibes 04fba65901 something.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@726 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 19:53:41 +00:00
cottonvibes a5d95b75c5 more lower instructions implemented
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@725 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 11:09:44 +00:00
cottonvibes 80f3dc5840 started on the lower instructions
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@724 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 08:24:52 +00:00
cottonvibes a44c6f0f83 microVU's upper instruction implementations (second pass) finished (except for clip instruction)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@723 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 05:28:37 +00:00
Jake.Stine ca4ce225a0 Linux: inline asm fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@720 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 23:28:39 +00:00
Jake.Stine 71e2dc2fb4 Many small bugfixes and optimizations:
* Fixed Memcard init so that Memcard1 isn't default in both slots (oops!)
 * Fixed Memcard path logic so that cards outside your pcsx2 folder can be browsed/selected.
 * Fixed CDVD-to-BIOS time sync (I simply forgot a function call!)
 * Optimized yuvrgb_sse2, by using Mod/RM form instructions.
 * Win32: Same optimization applied to FreezeXMMRegs and FreezeMMXRegs (linux already had this optimization)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@719 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 20:10:09 +00:00
arcum42 25df8958b2 Linux: Straighten up or remove a few Windows/Linux differences in the code (experamental), remove some dead code, fix a mistake in the Linux version of memcpy_amd_ (still broken, though), and change optimization levels due to gcc optimization induced errors.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@718 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 12:37:35 +00:00
cottonvibes 804050aaef A frog in a well won't know the ocean.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@717 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 09:05:53 +00:00
Jake.Stine dacfe85189 SPU2-X: Fixed some problems with saving/loading states, when loading from old savestate versions.
Pcsx2: Small speedup for the IOP's recClearMem (used a forceinline to cure MSVC's laxidazical inlining)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@714 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 19:04:37 +00:00
tmkkmac 60b7edd273 A fix for some VU clamp functions, by Nneeve.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@711 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 11:42:45 +00:00
cottonvibes c904878257 implemented more microVU 'crap' :D
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@710 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 04:21:26 +00:00
cottonvibes 4f63ac1101 implemented alot of microVU shit...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@708 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 02:38:05 +00:00
arcum42 56f802c80f Linux: Fix up the .S files to match recent changes. Make changes to SafeArray to avoid compiler warnings on every file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@706 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-07 00:48:57 +00:00
ramapcsx2 4b3d1ccab3 More block manager fixes/optimizations by Pseudonym.
This should be the last one (but you never know :p ).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@703 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 21:03:39 +00:00
Jake.Stine 97cdf187e5 Nneeve patch for "Full" FPU, improves some clamping and adds missing values to the savestate info.
Savestates: Pcsx2 now errors when it encounters a savestate made by a newer version of pcsx2.

Added a new SafeList type to the SafeArray collection (not well tested yet).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@701 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 19:01:30 +00:00
ramapcsx2 801d71f7f0 Fixes for the new block manager optimizations by Pseudonym.
There's a bit more speed even :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@700 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 17:14:30 +00:00
arcum42 3880bf5a14 Move the configuration section of Misc.h to a new file, Pcsx2Config.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@699 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 15:09:42 +00:00
arcum42 5d971b5931 Linux: Some work on the plugin code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@697 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 07:20:16 +00:00
Jake.Stine 8d5b2cf6a9 Added missing files from prev commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@696 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 01:45:43 +00:00
Jake.Stine 23e0ca1b1f Added googlecode's sparsehash / densehash classes, which may or may not be useful in the future.
Removed various instances of legacy VM code that is no longer needed for reference purposes.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@695 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 01:11:17 +00:00
arcum42 3ae6ff0856 Remove lots of evil %'s.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@693 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 21:35:26 +00:00
arcum42 a09157ab59 Patch up the last few commits for Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@691 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 20:43:36 +00:00
Jake.Stine 1b95a52b1e Better implementation of MSVC's _SCL_SECURE macro, plus some PrecompiledHeader.h cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@690 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 20:06:38 +00:00
Jake.Stine 8092692047 Linux: Quick fixes to the new .S files, and did a mild cleanup of the recLUT macros.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@688 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 18:27:16 +00:00
Jake.Stine 482505d241 Pseudonym Crazy-Opts Projects Inc presents: Improved block managers for EE/IOP recompilers! Basic asm optimizations combined with a technique of replacing NULL/invalid pointer checks with a direct link to a JIT dispatcher. A collab effort on irc produced this gem, which improves speed on all accounts, and even makes the linux .S files uber-simple and clean. (no more wondering if they're broke or not!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@687 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 18:13:14 +00:00
cottonvibes 76dd2488a1 microVU stuff
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@685 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 06:39:24 +00:00
Jake.Stine fc84ade01d IPU Bug/Feature fix: Pseudonym has coded a new yuv2rgb decoder which is up to IPU spec (which differs slightly from MPEG spec). Improves color hue/saturation on many vids, and is a bit faster too.
Dynarec: Removed RET2().

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@683 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 02:21:07 +00:00
cottonvibes 7fd0f67f93 pork chop sandwiches!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@682 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-05 01:19:54 +00:00
arcum42 1492382253 Linux: Get everything compiling again. There is still a nasty crahing bug or two from r675, in particular when using the menus for load and save states rather then keyboard commands. I'll work on fixing that tomorrow, but wanted it to at least compile and run.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@679 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 20:58:41 +00:00
Jake.Stine a7fcdbaafa Savestate version upgrade and stability fix -- added some vars that the SPRdma might like to preserve between states, and removed some old hacky VM-related stuff while I was at it.
Fixed up the Saveslot detection somewhat (File:Load > menu now greys out unavailable saveslots).

Applied ICC fixup patch from Issue 84. :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@677 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 13:00:32 +00:00
Jake.Stine cc930f86c5 Major GUI API Cleanups. Most likely buggy as all hell.
* Moved most of the shared code between the two GUIs into platform independent source modules (System.cpp, Saveslots.cpp, and RecoverySystem.cpp)
 * Created two new namespaces which house functions that need to be implemented by OS/platforms: HostGui and HostSys.  HostGui is useful -- HostSys I'm not sure I'll keep around in the long run.
 * Moved keyEvent struct from PS2Edefs.h to PS2Etypes.h
 * Many improvements to the logic flow of the GUI (should be a little less fallible).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@675 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 11:33:45 +00:00
cottonvibes 900d4bd485 i assume these headers aren't needed anymore but were accidentally left in VS project file :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@674 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 07:57:34 +00:00
cottonvibes b0217bd38a necessary change to properly compile microVU's templates (c++ is picky with templates :p)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@673 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 07:38:14 +00:00
cottonvibes 2add61d729 backup, just ignore this
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@672 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 07:11:59 +00:00
cottonvibes b019dc6884 minor emitter fix and dialog text tweaking.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@670 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 16:42:43 +00:00
arcum42 c4aec82c00 Fix Linux, and update to match gui changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@668 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 14:32:18 +00:00
tmkkmac 6a3bf0c644 Added Nneeve's fix for some issues in VU pipeline. SPS in Arc The Lad will be fixed.
Added a temporary gamefix option for God of War, which has been broken since r659. Anyway I'll fix this problem in a proper way.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@667 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 12:02:38 +00:00
ramapcsx2 223156a29a You might need this one as well :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@666 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 09:37:09 +00:00
ramapcsx2 4286c20dda Nneeve coded a new FPU clamp mode "Full" that can help some games which wouldn't work with the other modes.
This fixes the Digimon menu for example (Gamefix will stay a while longer though, until we confirm ingame is fine as well).
He also updated the advanced dialog a bit.

Remember that this mode can break games if VU clamp is below "Extra + preserve sign"

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@665 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 09:27:58 +00:00
tmkkmac 6372375800 Fixed the problem in recompiled version of PPAC5/PEXT5. I forgot about the case with Rt == Rd.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@663 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-03 03:14:23 +00:00
Jake.Stine 1f2509edcf Fixed a bug in r658 caused by some sloppy macros.
Win32: Moved various debugger-related dialogs into a new debugger.rc file, to help reduce clutter between both the std resources and the debugger resources.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@660 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 20:08:12 +00:00
tmkkmac 699cdbba1e Fixed a problem that VU clip flag wasn't propagated correctly between recompiled blocks in some cases. SPS in Rule of Rose will be fixed by this.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@659 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 18:45:19 +00:00
Jake.Stine 79cde4c09e Set up the x86 emitter so that it always uses MOVAPS over MOVDQA. This generates slightly faster code since movaps is 1 byte shorter than movdqa (both instructions are functionally identical). The optimization is optional via AlwaysUseMovaps defined in ix86_sse.inl
Enabled optimization stuff for zlib and bzip2 projects (Release/Devel build targets).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@658 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-02 18:39:29 +00:00
Jake.Stine f270064b41 Committing the beginnings of a new PS2 Exception Handler! This is very much a work in progress, but it shouldn't really break (or fix) anything in its current state.
EE Interpreters: Fixed some signed/unsigned mistakes in some instructions, namely DIVU, DIVU1, unsigned Traps, and a couple unsigned right shifts.  (all of these were already emulated correctly in the recs)

Also: Removed the ThreadPriority stuff from Pcsx2, since it was a throwback to the days of Win95's unstable multitasker. If you really really feel like you need to change the thread priority of Pcsx2, use the Windows Task Manager or a third party util.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@654 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 21:49:17 +00:00
arcum42 b0c3151aca Fix a few typos, as well as Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@653 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 21:42:09 +00:00
Jake.Stine 2cf4bc3920 Added the second part of emitter macro functionality, by making the emitter instance configurable. We can't actually use it yet tho, since everything shares iCore, and thus everything needs to share the same emitter instance (for now!).
Fixed new emitter so it compiles in Debug builds, cleaned up the header files a bit.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@652 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 20:44:48 +00:00
tmkkmac b6f3f8e415 MMI: Added recompiled version of PPAC5/PEXT5, and optimized PADDUW a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@651 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 16:01:53 +00:00
cottonvibes 8fa5c65884 minor VU fix thanks to nneeve
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@650 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 15:03:18 +00:00
cottonvibes 0990cf3ccb accidentally deleted this file and didn't include some other file ><
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@649 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 14:50:27 +00:00
cottonvibes af2e99c196 these files aren't needed anymore
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@648 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 14:44:00 +00:00
cottonvibes e2d583c7fe major pcsx2 emitter change.
the emitter is now 'templified' so that you can run multiple instances such as:
eMOVRtoR<0>(EAX, ESP);
this uses emitter instance #0
to use another instance you can simply change the number in the brackets like:
eMOVRtoR<1>(EAX, ESP);
will use instance #1.

all old-functions are mapped to instance #0 by macros.
like:
#define MOVRtoR eMOVRtoR<0>


why do this to the emitter?
so we can have thread safety, and eventually thread the recompilers using different emitter instances.


note: this took me forever to get working (around 12 hours of non-stop coding).
however for some reason debug build is being extra-picky and still giving compile errors.
hopefully Jake or someone else can fix this, because i tried a few stuff, and just got more compile errors ><

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@647 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 14:42:31 +00:00
arcum42 9deff96c78 A few minor changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@646 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 11:38:05 +00:00
arcum42 abbaa90a7d Get the Linux side of things ready for when cotton's done with microVU. I'm sure I'll have to make significant changes at that point, but it's good to have the framework in place...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@645 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 09:47:16 +00:00
arcum42 2270ba4eee Finish the Linux implementation of memcpy_fast_. I've disabled it by default until I'm sure it's working right, but it can easily be enabled in build.sh. Should be a speed boost in Linux (which Windows already had), but I haven't tested it enough to be able to tell yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@643 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 08:21:14 +00:00
arcum42 ad0705de56 90% of an implementation of memcpy_fast_ for Linux. And fix debug mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@642 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 06:31:33 +00:00
arcum42 88f95dd22e Fix Linux. Move most of the externs for functions in .S files in Linux to one header, and reenable using memcmp_mmx in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@638 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 04:28:17 +00:00
cottonvibes e87d55f153 microVU rec stuff
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@637 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 03:36:52 +00:00
Jake.Stine da25976c6b Re-re-fixed the Windows.h mess. PsxCommon.h still had a win32 include, and cdvd.cpp and misc.cpp had some win/linux code which I relocated. Also, cleaned up the vtlb's SysExceptionHandler stuff -- moved the platform-specific portions to WinSysExec and LnxSysExec, and moved the shared code portion to a new function in Memory.cpp.
(Yes, Linux is probably broken again.)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@636 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 03:30:19 +00:00
arcum42 0acef23784 Clean up Jakes commit in r634, and get rid of some dead code in the assembly files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@635 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 01:03:16 +00:00
Jake.Stine ebb5339418 Yay more header file cleanup chores! Removed most of the Windows.h dependencies from non-Win32 specific files, and fixed the annoying ARRAYSIZE warnings. Let's say it together: "We all should love C's archaic include system, because it makes Jake and Arcum work really hard for no good reason."
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@634 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 20:55:53 +00:00
ramapcsx2 a801b6f091 Bring in the ICC patch that makes pcsx2 build on that compiler.
Thanks to fea for this one ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@633 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 20:16:28 +00:00
tmkkmac 35386b1d2a MMI: Fixed a minor issue in PSUBUB/PSUBUH, and implemented recompiled opcodes for PMTHL/PSUBUW.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@632 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 09:55:18 +00:00
arcum42 19e56dc33e Linux: Quick fix for the last revision.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@629 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 23:18:01 +00:00
Jake.Stine 377830b3a9 IOP Fixes/Optimizations:
* Fixed the IOP's recExecute so that it correctly preserves X86 registers (EDI and EBX were not preserved!)
 * Optimized the recExecute procedure, seems like a nice speedup in FMVs and some games that are IOP intensive.
 * Renamed psxMemRead to iopMemRead, added new Virt/Phys functions, and fixed several instances of DMAs using translated addresses (DMAs are always physical maps).  Our IOP doesn't really emulate the tlb so it won't fix anything, but it's more correct in cas stuff is better supported in the future.
 * Removed unneeded FreezeMMXRegs, since the IOPrec doesn't use any mmx/xmm regs anyway.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@628 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 18:12:59 +00:00
Jake.Stine e205999744 Minor Optimization: Added Const support to Vtlb's Load and Store implementations.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@627 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 06:40:05 +00:00
Jake.Stine 5b09d81f36 Fixed a bug in the savestate system that caused memcards to eject when they shouldn't have (had uint instead of u64 >_<).
Developers: Changed the way PCSX2_ALIGNED16 macros work, so that they're more friendly to MSVC and Visual Assist X intellisense (more more red squigglies on vars like cpuRegs!)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@618 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 01:43:43 +00:00
refraction b372f359b5 Small fix for a regression i caused in r604 with Ridge Racer V, also fixed a bug in MAXbc on the VUrecs and added an optimization for MINIbc
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@605 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-26 02:13:51 +00:00
ramapcsx2 bf31172d07 Ico gamefix not needed anymore.
(It's still there for Linux, I better don't touch that :p )

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@598 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-25 15:07:09 +00:00
tmkkmac b50b9df3cf Applied SUPERVU_VIBRANCHDELAY fix to IBGEZ/IBGTZ/IBLEZ/IBLTZ opcodes. ICO SPS will be gone without gamefix now :)
WinGUI: Added SSSE3 detection message into a CPU config dialog.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@596 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-25 09:22:36 +00:00
Jake.Stine 2110018e58 New Feature: Press TAB to toggle the framelimiter on/off (as a substitute for hitting F4 several times). Usable as a "turbo" feature, similar to other emus.
Many minor code cleanups to logging and constants.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@595 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-25 01:36:06 +00:00
ramapcsx2 8d87a3660d Revert a cdvd timing change from playground. Fixes some games that depend on longer seek times.
Also removed one more console log from release builds.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@592 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 17:00:25 +00:00
tmkkmac 1f01b45833 Now calmping code added in r579 is enabled only in "extra" setting or above, because it slows down some games
WinGUI: Disabled arguments menu in release build, for sure :p
Buildsystem: Made pcsx2 dependent on zlib, and changed post-build script a bit

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@591 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 15:35:10 +00:00
arcum42 53bfe7cab1 Linux: Get the main program compiling again. I'll work on the plugins later.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@590 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 13:10:59 +00:00
tmkkmac 986f2a1a71 Changed a behavior of recUpdateFlags a bit; now it also clamps results when flag updating is skipped.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@579 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 19:30:07 +00:00
tmkkmac ad5c6cff48 Fixed a minor issue in MADDiq/MADDAiq VU opcode.
(when _Fs_ == 0)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@578 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 17:08:33 +00:00
tmkkmac 5870bb43e9 Code cleanup of some VU clamp functions for SSE4, and reverted my previous useless commit :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@576 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 11:54:24 +00:00
tmkkmac 44d1ff527c Fixed some potential dangerous situations in VU rec
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@575 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 10:58:53 +00:00
cottonvibes 4cc6662246 some more vu clamping fixes by nneeve (fixes problems with the non-sse4 code)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@573 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 05:33:23 +00:00
cottonvibes 09d581217d - nneeve fixed some bugs when VU extra/extra+sign clamp modes were enabled.
- i added paths.h to the vs2008 project file.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@572 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 03:42:39 +00:00
cottonvibes 61ef2143bc minor vu changes
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@566 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 21:15:54 +00:00
tmkkmac a22035664d Modified EE opcode table to make add/sub require sign-extended operands. This fixes a crash in Unlimited SaGa.
WinGUI: Fixed a minor issue when changing language.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@564 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 18:07:15 +00:00
cottonvibes de2e939fcc FPU fixes:
tweaked the fpu compare clamping so now gt4 works again.
made the digimon rumble arena 2 fix into a gamefix.
tekken 5 doesn't need a gamefix anymore.

VU fixes:
fixed 2 opcodes thanks to nneeve.
optimized FCOR a bit.
changed the way ICO gamefix works so its less hacky (just always sets VI to 1 instead of setting VI to the opposite of the 'correct' result)

General fix:
there was some odd bug with the autogenerated TEXTINCLUDE stuff.
if you edited a resource, it would generate 
#include "afxresmw.h 
instead of
#include "afxresmw.h"
(a quotation mark was missing so you'd get compile errors)

so i fixed that ;p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@563 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-21 17:33:10 +00:00
cottonvibes c669407b33 minor FMAND VU opcode change thanks to nneeve
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@548 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 05:43:18 +00:00
cottonvibes 7e065afb4d tweaked FPU compare opcode clamping.
this fixes a bug with Digimon rumble arena 2.
thanks to Nneeve for figuring out the problem.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@547 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 05:37:01 +00:00
cottonvibes 32a8bef206 minor change
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@543 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 03:12:27 +00:00
refraction e9e9a2c273 Seems my last commit change didnt quite do what i expected and broke FFXII. Reverted it.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@539 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-20 00:31:29 +00:00
Jake.Stine 243e4fba9f Added several important variables to the VIFdma savestate, relating to it's SSE unpacker; which should make the gifdone savestate hack obsolete (it broke savestates for most FMVs and some games). Seeing how important the unpacker tables are, it's a miracle VIFdma ever recovered from a savestate without them ;)
Fixed a bug in the memorycard hotswapper.  It wasn't reloading the cards correctly after changes.

Improved the new INTC hack slightly, and changed its description since it's not quite as universally awesome as Pseudonym and I had hoped when we worked on it last night. -_-

Added __fastcall and __forceinline to some of the VIF's unpack functions, where appropriate (very small speedup).

Removed some code I added to the MULT/DIV instructions, since it wasn't needed afterall, and fixed some typos in vtlb's API.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@538 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-19 22:48:05 +00:00
refraction 23336fe987 Fixed a small bug in FCOR under the VUrecs, also put a hack in there for ICO to cure the SPS, this can be selected in the gamefixes dialog.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@537 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-19 22:17:58 +00:00
ramapcsx2 68aaf91b5d Tmkk managed to fix a huge hack in the superVU delay slot handling.
This new code properly handles these situations now, removing the need 
for the magna carta gamefix, and also fixing problems in dragon quest 8(jp).
Thanks again, tmkk :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@536 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-19 15:56:07 +00:00
Jake.Stine 3532ebada0 Added Nneeve's fix for recMADDU (it was using the IMUL instruction which would have produced potentially incorrect results in rare cases).
Cleaned up some of the signed/unsigned ambiguity surrounding MULT/MULTU instructions.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@533 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-19 09:59:02 +00:00
ramapcsx2 460a2b4edf Small change - removed 2 console logs from release builds
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@528 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 16:11:30 +00:00
ramapcsx2 058ec7db30 A few fixes for MMI stuff by tmkk, and disabled a logging printf in release builds.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@526 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 14:03:35 +00:00
ramapcsx2 bee40a2948 Re-enabled the superVU optimization (It had problems with FFX on non SSE4 cpus, likely a bug in AssignVFRegs).
To make up for the speed loss in Tekken5 and Persona4 the vu cache size is now bigger.
This means another 10% more speed for Tekken, and a whooping 30% for Persona :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@524 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-18 13:35:55 +00:00
ramapcsx2 33d5c66ac7 Lots of work from tmkk. This update adds recompiling for several MMI opcodes, fixes bugs and adds SSSE3 detection.
Thanks again, tmkk! :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@522 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 23:29:47 +00:00
ramapcsx2 af89808f8f Disabled a superVU optimization that slowed down VU intense games lots.
Big speedup for Persona4 and Tekken5 :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@521 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-17 23:20:10 +00:00
Jake.Stine fe6f45e45e Updated the Copyright to reflect the passing of another year. :)
Updated the pcsx2_suite_2008.sln; changed SPU2ghz to SPU2-X.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@502 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 23:23:46 +00:00
Jake.Stine 11abea2d5a Pcsx2 now correctly sends CRC info to the GS plugin when using Run->Execute to boot games through the BIOS. And, Omg! The X button in the about box was broken! Thank goodness I fixed it before someone got hurt! ;)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@500 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 12:31:49 +00:00
cottonvibes c7deaad3c6 coded the microVU opcode tables, this took me all-day to get right lol xD
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@498 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 09:10:24 +00:00
arcum42 6e22fe3557 More cleanup on Patch.cpp.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@482 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-13 03:21:38 +00:00
cottonvibes 0e9629b01e minor microVU rec changes
note to pcsx2 users: for those that still don't know, these are new VU recompilers i'm working on. They're not working yet, and won't be for at least a few months. So don't expect noticeable changes when i update microVU stuff, since currently they're not being used (when they're in a semi-working/usable state, i'll be sure to put a note in the revision message ;p)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@478 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-12 03:15:46 +00:00
refraction 29fe1673ba Fixed Fatal Frame once and for all due to a DMA issue which it shouldnt have been doing ;p Also fixed the COP0 condition for the Recompiler and Interpreter, this was stopping Mojib Ribbon and Shadow of Colossus (after the Fatal Frame fix) from running. Int some how worked but it was wrong lol :P
Also fixed some Copy n Pasta typos

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@477 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-11 22:57:37 +00:00
arcum42 fd4f5bab0b Various minor cleanup. Get rid of those annoying extra newlines in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@474 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-11 13:25:17 +00:00
cottonvibes 0f0cf9d84d some microVU work
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@466 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-10 09:18:57 +00:00
Jake.Stine 6ebfae8ef1 Re-Added eol-style:native properties to the repository. The settings got lost when we merged from Playground to Official.
Added interface.cpp (plugin/pcsx2 interface) and savestate.cpp to SPU2ghz, to help clean up SPU2.cpp.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@463 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 21:15:56 +00:00
ramapcsx2 71c16d061d A new VU MIN / MAX code by Nneeve allows more games to use DaZ on the VUs.
We'll test if any game still needs DaZ off, and if not so, make that default to on.

DaZ is a more correct behavior for the VU's, and only bugs prevented it from working as expected.

Thanks to Nneeve for his hard work :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@461 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 18:50:10 +00:00
ramapcsx2 25459ba1fc Changed the Magna Carta gamefix to something more plausible.
Thanks to tmkk for spotting this :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@460 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 18:04:31 +00:00
cottonvibes 9f454da8d6 - fixed a warning from last revision
- made "framelimit" mode default, instead of "normal" mode (was discussed by team)
- some more microVU rec work...


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@452 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-08 07:21:56 +00:00
Jake.Stine 63d5ce867b Yay! Fixed a memory corruption bug in the SuperVU that caused several "VU-intense" games to crash randomly: Tekken 5, Persona 4, and God of War to name a few.
Changed the Hw FiFo to use what should be a more correct register addressing scheme.  The entire contents of each page of the FIFO is mirrored into the lowest register(s).  For example, any address between 0x10006010 and 0x10006ff0 should always be treated as address 0x10006000.

Code cleanups and minor optimizations to hw.cpp, FiFo.cpp, and gs.cpp.

Added some additional utility functions to the Path namespace, for splitting paths into files/folders parts.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@451 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-08 06:29:43 +00:00
Jake.Stine 22bacc999e Modified the build system so that both the original and new "revisioned" copies of EXE/DLL files are copied into the target build folder. Example: When compiling Release, pcsx2.exe will always reflect the most recent successful compilation.
Fixed COP0's recompiled branch instructions (BC0F, BC0T, etc) -- the conditional was not implemented correctly (thanks to Refraction for spotting that one).

Used a better method of clearing the errorlevel during the Pre/Post Build steps.  Should be a little less error-prone (pun?)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@447 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-07 20:11:13 +00:00
Jake.Stine 2cf8006ab0 Fixes some various compilation problems (people without TortoiseSvn installed won't get errors anymore)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@444 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-07 15:14:23 +00:00
cottonvibes 9f75e5b825 minor update - i forgot to rename a few things
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@440 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-07 01:25:16 +00:00
cottonvibes 73d6a8aca0 - renamed pcsx2pg.ini to pcsx2.ini
- made pcsx2 to default to MTGS mode "on" instead of "off"
- renamed "Mega VU" recs to "Micro VU" recs since the team thought "Mega" sounded lame ;p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@439 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-07 01:20:44 +00:00
refraction aa94c30dc3 Should be the last of the trunk, gotta finish the branches/tags, but thats the main bulk transferred.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@426 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-06 20:04:37 +00:00
refraction 57616b8916 git-svn-id: http://pcsx2.googlecode.com/svn/trunk@407 96395faa-99c1-11dd-bbfe-3dabce05a288 2009-02-06 18:28:52 +00:00
laurence.muller a2791d843e Using standard SVN folder structure
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@398 96395faa-99c1-11dd-bbfe-3dabce05a288
2008-11-06 23:27:06 +00:00