Commit Graph

850 Commits

Author SHA1 Message Date
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
cottonvibes a8094d5786 microVU:
- Implemented an idea by Jake to use a GPR as a reg-offset index to save a few bytes from reg-moves (only did it for VI regs, didn't have enough free GPR's to do it for VF regs)
- Fixed a minor problem with micro-program logs

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1254 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-24 12:20:33 +00:00
arcum42 7519fb8113 Some quick fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1252 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-24 04:34:23 +00:00
arcum42 08d3360376 ZeroGS: Strictly in the interests of maintainability, I'm moving these functions to a separate file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1251 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-24 00:31:46 +00:00
gabest11 081006bcbe GSdx: dx9 hw mode got a vertex buffer too (as dx10), it was an old TODO...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1250 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 23:52:53 +00:00
arcum42 20f0e52a1a Zeropad: All around my hat...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1249 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 23:07:53 +00:00
arcum42 f1be4728ba Zeropad: Fix a glitch in the new esc code, and the hat code should not save in the same spots as the axis code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1248 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 22:20:16 +00:00
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
arcum42 ecfed766cd ZeroPad: Refactor a bunch of code. Escape now sets the key value to 'Unknown' when configuring. Work some more on the hat code (still disabled).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1245 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 11:57:28 +00:00
arcum42 fea158f392 PadNull: A bit more work on the Windows side.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1244 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 06:50:10 +00:00
arcum42 a180b105d3 PadNull: It compiles in Windows. (It does not pass key events, such as escape, though, so should not be used yet.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1243 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 06:11:48 +00:00