Commit Graph

910 Commits

Author SHA1 Message Date
cottonvibes 96f7911d26 microVU:
- Second try at a status flag optimization. Still needs tweaking but too tired xD

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1309 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-03 09:22:25 +00:00
cottonvibes d8fb66f143 microVU:
- Minor Changes/Cleanup

Super VU:
- Used the Linux SysMmapEx address for windows as well.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1308 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-03 06:50:13 +00:00
Jake.Stine 510a23f190 Quick cleanup of my prev commit -- changed some u32's to u64's, and deleted some code made obsolete by the new cpu detection.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1307 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-03 01:28:19 +00:00
Jake.Stine 074a87eadc Improved the cpu speed/ghz detection. It should be a bit more accurate, and is faster (pcsx2 startup times are near instantaneous now).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1306 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-03 01:06:26 +00:00
cottonvibes 8c5b6ae749 microVU:
- Implemented some bizarre behavior where conditional branches will read old VI-reg values if the previous instructions continuously read+write to the VI reg.

example from zerorec's comments:
SQI vi5++
SQI vi5++
IBNE vi4, vi5

vi5's value in the branch should be the value before all the SQI's...
more examples in iVUzerorec.cpp

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1304 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-02 00:50:37 +00:00
cottonvibes a8266a48d8 microVU:
- Non-functional change... just storing some IR info I'll need to use later.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1303 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-01 22:29:27 +00:00
cottonvibes a336e6b277 microVU:
- reverted to r1299

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1302 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-01 05:09:28 +00:00
cottonvibes 28f52a3f12 microVU:
- Backing up some changes before I revert...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1301 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-01 04:58:06 +00:00
cottonvibes ebff9ec1c5 microVU:
- Tried a complex optimization with status flag updating.
Didn't seem to work out as well as I thought.

I need some benchmarks of mVU (w/o hacks) before this update and after this update to see how effective it is.
If its not much faster I might just revert the change (because I'm sure no-one is going to understand how it works this way).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1300 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-01 01:21:01 +00:00
cottonvibes e85124dff5 microVU:
- Fixed a bug from r1254. (Fixes weird circles on the logo of ffxii after selecting new-game)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1299 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-31 10:37:20 +00:00
cottonvibes eb3b31c525 microVU:
- Gave the rec a better IR (intermediate representation) implementation.
- Renamed microVU_Alloc to microVU_IR


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1298 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-31 05:45:59 +00:00
arcum42 1694eecf2f Assorted cleanup involving VifDma, the Hw files, IopMem and Fifo.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1297 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 22:25:23 +00:00
arcum42 0028fefcbc Various VifDma cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1296 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 18:54:51 +00:00
refraction 4fc4a634b3 Fixing up Fatal Frame, removed redundant path3 masking code from the olden days!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1295 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 16:57:15 +00:00
arcum42 187dffc5f4 Zeropad: Fixes a minor mistake in r1286.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1294 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 12:11:21 +00:00
arcum42 ccd89d199b microVU/Linux: Since __mVUdumpProgram is of type microVUx, vuIndex is already defined, and shouldn't be redefined. Fixes Linux compilation.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1293 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 11:50:05 +00:00
cottonvibes cf1f7eda8c microVU:
- Fixed a bug with my xgkick delay code from r1282. Fixes GT4.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1292 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 08:33:29 +00:00
cottonvibes 51ab9a6888 microVU:
- It took a while, but I managed to convert 100's of template functions to normal functions, reducing release link times by about ~50% again.
pcsx2 takes about ~2 mins to link on release build, which is a lot more tolerable than ~10 minutes from a few days ago...


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1291 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-30 04:16:45 +00:00
refraction 1600dc1764 From 1289 you can use MTGS mode in VUint, but the new code was enabled :P now disabled it so MTGS will work
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1290 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 18:58:06 +00:00
refraction aa64a21e93 Couple of fixes, one for Kingdom Hearts 2 Issue 239, others might help textures in the GT games (maybe!)
Also prepared some code to add support for VU looping in MTGS mode, this will require a GS Spec update, so its commented out for now until i can sync an update with Gabest.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1289 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 18:44:42 +00:00
arcum42 e384d001da Zeropad: Windows is back to compiling, though the config dialog is still broken.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1288 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 08:39:32 +00:00
cottonvibes 6d6e7fba36 microVU:
- Changed 'recPass' from a template param to a function param. Halves MSVC linking-time in release modes, but still slow (from ~10 minutes to ~5 minutes to link on my PC). I'll continue working on this later... the next change will probably reduce Release link-times to 1~2 minutes (or less than 1 minute for you guys with macho-pc's ;p).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1287 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 08:32:54 +00:00
arcum42 71480b3124 Zeropad: A bunch of refactoring and cleanup. The Windows port probably won't compile right now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1286 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 06:33:56 +00:00
gabest11 65b90bce83 GSdx: there was a bug in unaligned 4/8 bit transfer, small texture glitches may be fixed (simpson game, car logos in gt4).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1285 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 06:26:46 +00:00
cottonvibes 7fef12a4cb microVU:
- fixed a bug from r1281 when the tri-ace gamefix is unchecked xD

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1284 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 04:33:06 +00:00
cottonvibes 949c02ed45 microVU:
- Small Optimization...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1283 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 04:18:09 +00:00
cottonvibes 12ca3898d6 microVU:
- Added a 1-cycle xgkick delay, fixes SO3 graphic corruption and flickering.

Theres still VU stuff the game does that isn't implemented, but the game seems to run fine w/o the implementation (only tested the beginning though).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1282 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 03:02:21 +00:00
cottonvibes c3ae30f250 microVU:
- Implemented the tri-ace gamefix.

Note: I've only tested SO3 so-far and it has some ugly graphical problems with mVU. SO3 does some evil VU stuff that it shouldn't be doing, but it does them anyways xD
I know the cause of the problems, so I just have to code the solutions sometime in the future...

P.S. SO3 looks really funny with the FlagHack1 speedhack! The characters turn into floating heads effectively turning the game into PacMan xD

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1281 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-29 00:32:51 +00:00
gabest11 4bc698d698 GSdx: just fixing slow texture uploads with dx9... (odin sphere back to 40-50 fps)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1279 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-28 02:57:01 +00:00
cottonvibes 50332c1cd1 microVU: minor optimizations/changes...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1278 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-28 02:27:08 +00:00
arcum42 a1cd98bc59 Linux: Revise the speed hack and cpu dialogs a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1277 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 20:20:33 +00:00
ramapcsx2 fa0e10557a mVU: Disabled breaking execution on bad programs since it's not needed anymore and costs speed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1276 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 14:27:50 +00:00
arcum42 e8ae911664 Linux: Hack microVU into the Gui.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1275 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 13:10:43 +00:00
ramapcsx2 477f5fa674 Minor changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1274 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 10:26:36 +00:00
cottonvibes 58c45c42ca microVU is now selectable as a GUI option from the CPU dialog box.
microVU speedhacks are also available in the speedhacks dialog.

All the GUI stuff took me a few hours, so hopefully I didn't bug anything.

Note to users:
Please remember that microVU is a W.I.P. and will have bugs; but it also fixes some games Super VU has problems with. So have fun testing.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1273 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 09:14:43 +00:00
gabest11 3e12966919 GSdx: Even more alpha test voodoo magic, it must be nailed now!
And there is even an explanation. 

The tfx functions calculate At * Af >> 7, which means modulating by 0x80 should return At as the result. 

With the evil floating point pixel shader however 0x80 translates to 128/255 (0.502), not exactly 0.5, modulation as At' * Af' * 2 (' means 0 - 1.0 range) is not the same as with integers.

At' = Af' = 0.502
At' * Af' * 2 = 0.504

If the alpha test happens to be "not equal to 0x80", then abs(0.504 - 128/255) < 0.5/255 will just miss.

Solution is to re-scale those values to the integer range, do the calculations, and then back to float again, but in the end it just simplifies down to At' * Af' * 255/128, doh...

At * Af >> 7 => ((At' * 255) * (Af' * 255) / 128) / 255 => At' * Af' * 255/128

At' = Af' = 0.502
0.502 * 0.502 * 255/128 = 0.502 (w00t!)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1272 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 05:55:32 +00:00
cottonvibes b1eadad216 microVU:
- Increased mVU run cycles (Fixes Kloana 2's Inf Loop messages)
- Fixed some potential problems with the log code that would cause some games to crash.
- Minor Changes...

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1271 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 05:33:36 +00:00
cottonvibes 47bdb31473 microVU:
- Fixed a big bug with the help of sudonim and rama which greatly increases mVU's compatibility!


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1270 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 02:29:52 +00:00
Jake.Stine 5f1cc131c8 Bugfix for Issue 241. Also increased the EErec's stack memory from 64k to 128k, since there's no reason to be frugal there anymore.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1269 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-27 01:49:48 +00:00
ramapcsx2 12e258ac16 mVU: Fix for a bug that would cause stall cycles to be counted 2 times.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1268 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-26 14:03:29 +00:00
gabest11 6c58f3039a GSdx: bit more work on the vertex buffer, and broken ffxii fmv fixed again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1266 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-26 03:40:31 +00:00
cottonvibes 22535ad886 microVU:
- Properly fixed problems from r1254, a lot of games should be fixed.

pcsx2/microVU:
- Added some debug code that runs sVU and mVU, and compares their results. If they differ, then the game is halted, and debug info is given. (this can be enabled in iVU1micro.cpp with the DEBUG_COMPARE2 macro)... the code is a bit messy, but it gets the job done for now.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1265 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-26 01:00:38 +00:00
refraction 0900ef5420 Added VIF wait to MFIFO, fixes Crash of the Titans graphics
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1264 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 22:09:18 +00:00
sudonim1 a46f1538f0 Another µVU typo, fixes silent hill 2 but probably not nothing else.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1263 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 14:43:15 +00:00
refraction 0c5c45061b Guess im just a jackass, do do do, oh *ahem*... This fixes Jackass :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1262 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 14:13:57 +00:00
refraction ed963ae5ea Temp fix for Soul Calibur 3 so i can close Issue 233.
Other small fixes

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1261 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 13:29:48 +00:00
refraction 1d4ad79349 Fixed GIF MFIFO for Front Mission 4
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1260 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 12:16:02 +00:00
refraction f8505c9eaf Altered time between GIF resume checks, 2 cycles was a bit ambitious, 16 cycles (8 qw's transferred) is much more realistic and doesnt slow games down as much.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1259 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 10:42:26 +00:00
refraction 44378b31f7 Path3 Masking mystery solved, Simpsons (Issue 24) GT4 (Issue 211), tenchu and many many other path3 masking games should be fixed. This will only work on MTGS.
Also semi-removed my gifsplit thing to resolve the tekken 5 menus Issue 209

Note: GT4 is still missing its logo, this is down to a really bizzare timing issue i cant pinpoint.

Removed redundant path3hack

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1257 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 07:07:59 +00:00
arcum42 bd9886b332 Zeropad: Yes it's a bunch *more* cleanup work on Zeropad.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1256 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-25 01:59:17 +00:00