Commit Graph

  • e22a50a7c8 So.. I got an "unlazy" day, and coded a bit more of my iop dma handler. gigaherz 2009-04-24 01:14:25 +0000
  • 2ac355eb03 Nothing happened here. ramapcsx2 2009-04-23 22:05:34 +0000
  • e843712f58 Reverted the last GIF/IPU change, as per request. Timing this stuff is evil :/ ramapcsx2 2009-04-23 21:58:09 +0000
  • 9c7aed9ad4 Readjusted my Gifsplit nonsense to refix Gradius V videos again, its more the value i originally wanted it now anyway :P Fixed Issue 176 refraction 2009-04-23 19:51:34 +0000
  • 52fcc69628 Apply r1046 to ZeroGS DX as well. Ifdef a few things from r1047 so Linux compiles. A few minor changes. arcum42 2009-04-23 13:15:44 +0000
  • 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). Jake.Stine 2009-04-23 12:39:59 +0000
  • ac0768e9a3 ZeroGS: Apply Zeydlitz's patch from Issue 174. arcum42 2009-04-23 10:18:43 +0000
  • c258a8d776 Fixed a bug from r1038. PMADD and HADD instructions had inverted to/from fields. >_< Jake.Stine 2009-04-22 18:35:44 +0000
  • e87d224cc9 Started consolidating the various Dump routines, most of which are broken, into one file. arcum42 2009-04-22 13:25:26 +0000
  • 5bb89fef92 Linux: Minor fix for the hack dialog box. arcum42 2009-04-22 10:16:41 +0000
  • 9380ccc85b Linux: Clean up the hack dialog in Linux. arcum42 2009-04-22 03:19:30 +0000
  • 5744306a8f Linux: Fix compilation, and add in the new hack. I may work on making the dialog look better in a bit... arcum42 2009-04-22 02:31:31 +0000
  • 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. sudonim1 2009-04-21 23:30:06 +0000
  • bfe128cd41 Linux: Fix the last of the GCC compilation errors. arcum42 2009-04-21 21:42:33 +0000
  • 27a8f3aa9a Added PMADD/HADD/INSERT/EXTRACT instructions, and fixed more cross-compiler problems. Jake.Stine 2009-04-21 21:30:47 +0000
  • 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). Jake.Stine 2009-04-21 13:54:41 +0000
  • deb642af43 Fixed a small bug from my last commit (mostly only affected debug builds), and implemented PALIGNR/MOVSLDUP/PABS/PSIGN/PEXTR/PINS. Jake.Stine 2009-04-21 05:29:14 +0000
  • 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!] Jake.Stine 2009-04-21 01:40:45 +0000
  • cb57386d85 LilyPad, Sio.cpp both modified to never allow pads in first slot on either port to be unplugged, as it broke things. Unplugging pads from other slots seems to work fine, when using multitap (When not, obviously no such pads in the first place). mattmenke 2009-04-20 23:14:32 +0000
  • 50c4a95c06 microVU: added support for logging complete micro programs saved to the files microVU0.txt/microVU1.txt (in the logs folder) cottonvibes 2009-04-20 19:37:41 +0000
  • 73e50f49ea Emitter: Yay! More instructions! All forms of PADD/PSUB/PSRL/PSLL. I'm getting closer! Jake.Stine 2009-04-20 19:25:35 +0000
  • 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]. Jake.Stine 2009-04-20 15:22:02 +0000
  • 18c4765d31 Emitter: Changed a lot of 'i's into 'x's, because... Jake.Stine 2009-04-20 03:10:05 +0000
  • 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. ramapcsx2 2009-04-20 01:40:13 +0000
  • b21b81df9f Resolved Issue 168 with FFXII crashing with DMA error due to cancelling a scratchpad transfer before it happened, how silly of me :p refraction 2009-04-20 00:31:03 +0000
  • adf6dfdcd4 Fixed Tekken 5 regression causing black screens and missing text refraction 2009-04-20 00:11:34 +0000
  • 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] Jake.Stine 2009-04-20 00:06:51 +0000
  • 256d32037c LilyPad: Fixed a potential threading issue when read input in gs thread is disabled. Odds of the issue being a problem, while perhaps significantly greater than 1/<number of atoms in the universe>, weren't too high. mattmenke 2009-04-19 23:04:21 +0000
  • 457b78e70e Put a different fix for bad J/JALR jumps (Charlie and the Chocolate Factory) refraction 2009-04-19 22:00:11 +0000
  • 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... cottonvibes 2009-04-19 21:22:47 +0000
  • a2d305b9ab The things Visual C++ lets you get away with... arcum42 2009-04-19 20:34:32 +0000
  • 1bc6795200 Emitter :Implemented Packed logical operations (PAND/POR/ANDxx/ORxx/etc), ADDxx/SUBxx/MULxx/DIVxx, and iRCPPS/iRCPSS. Jake.Stine 2009-04-19 20:14:53 +0000
  • 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. Jake.Stine 2009-04-19 16:34:29 +0000
  • bb7dc87819 Silly bug made each EE branch count as 0 cycles. Enjoy some "free" speedups :p ramapcsx2 2009-04-19 13:55:09 +0000
  • ecfe0b5011 Change some magic numbers to enums and defines and rearrange things a little... arcum42 2009-04-19 07:42:36 +0000
  • 76e8b6586a microVU: fixed various typos cottonvibes 2009-04-19 05:49:16 +0000
  • f32f705d1d Quick hack to fix Linux compiling. Delete some old code. Minor tweaks that I hadn't gotten around to committing. arcum42 2009-04-19 05:42:33 +0000
  • c19de231f6 Emitter: Implemented MOVAPS/MOVDQA, and renamed some vars/classes. Jake.Stine 2009-04-19 05:24:20 +0000
  • 5fb6505e9d LilyPad: Oops. mattmenke 2009-04-19 03:50:04 +0000
  • 1d2ae02c97 LilyPad: More minor fixes to failure detection in raw input initialization code. Gabest already fixed the big one. mattmenke 2009-04-19 03:33:32 +0000
  • a2a1d58b4b backup cottonvibes 2009-04-19 02:54:56 +0000
  • 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. Jake.Stine 2009-04-19 02:14:50 +0000
  • 924869f765 more microVU "stuff" cottonvibes 2009-04-18 23:56:32 +0000
  • 07c22b357c Resolved Issue 165 so the scratchpad syncs with the MFIFO drain (this was the cause of the Tekken issue). and some other misc tweaks for unpack errors n such refraction 2009-04-18 23:36:01 +0000
  • a4abcf1206 Regression fix for GT4, crashes presumably due to the zero division on this check refraction 2009-04-18 15:02:41 +0000
  • 71e391d010 GSdx: Issue 149 (GoW2 crc) and removed the dx9 flag to enable tv-out, which might have been the cause for limited fps in recent revisions. gabest11 2009-04-18 09:51:42 +0000
  • 94e2bd9409 GSdx: adapted to ref's changes to the image transfer, it was a bug in GSdx but not triggered by the old way, also the data overflow is now ignored, no idea what it may cause, look out for missing or fixed textures. gabest11 2009-04-18 09:34:25 +0000
  • f51e6b7d91 LilyPad: fixed a crash under remote desktop, GetRawInputDeviceInfo may return -1, the buffer size it wants is around a megabyte and gets filled with junk, just ignoring it seems fine. gabest11 2009-04-18 09:31:16 +0000
  • 45e9f544cd microVU: mostly block-linking/execution stuff... cottonvibes 2009-04-18 04:28:24 +0000
  • 14f306a800 Fixes a mistake that I made in r927. Fixes regression issue 158 Nneeve 2009-04-17 19:35:22 +0000
  • 029a94ce3f Emitter: Added BTS/SETcc/TEST instructions. Jake.Stine 2009-04-17 18:47:04 +0000
  • 62604d359a Commented out my bodge to XGKick on the VU interpreter, Gabest has now solved this issue in his latest gsdx build. Happy 1000th commit :) refraction 2009-04-17 18:02:49 +0000
  • 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 ramapcsx2 2009-04-17 12:39:22 +0000
  • 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. -_- Jake.Stine 2009-04-17 01:54:35 +0000
  • 8865ee398b GSdx: reworked the gs transfer function a bit, and removed the nloop hack, which does not seem to be necessary anymore. gabest11 2009-04-17 01:06:27 +0000
  • 0bf914833f Bring the new speed hack to Linux. (I just quickly hacked it in, so I may make it look nicer later.) arcum42 2009-04-17 00:58:20 +0000
  • 170acd854a Added a check to make sure the unpack REALLY overflows, sometimes it can be dead on the limit or count the skip, so it doesn't need to break to slower code. refraction 2009-04-17 00:54:53 +0000
  • 4704ac9436 Reduce compiler warnings to a more reasonable level in Linux. arcum42 2009-04-17 00:35:55 +0000
  • ecbef93c6b Here we go again. arcum42 2009-04-16 23:57:04 +0000
  • f4d57faf77 Look out, the monkey is back refraction 2009-04-16 23:33:05 +0000
  • 7308ae1b71 Fixed Issue 157 removed redundant code arcum pointed out I'd committed refraction 2009-04-16 23:28:18 +0000
  • 1279fe2c21 Emitter: Implemented INC/DEC/NEG/NOT instructions. Plus: many code cleanups using a better form of template parameter inference. Jake.Stine 2009-04-16 22:38:55 +0000
  • dfd433993f Minor bugfix for unpack mode 2 Fixed split videos in Gradius V Fixed Spyro hanging problem in Issue 112 Put in a hacky fix for FFX videos into IPU to compensate the spyro fix (which is actually correct). Implementing unpack overflow protection (Guitar Hero 3 & Toni Hawks Project 8) Writing XGKick to a temp buffer before sending to the GS (part of the GH3 / THP8 fix) refraction 2009-04-16 22:33:18 +0000
  • ac2f5713fc Emitter: fixed a bug in MOVSX/ZX's reg->reg form [resolves Issue 159 - missing geometry in DQ8], and moved some files around. Jake.Stine 2009-04-16 14:45:13 +0000
  • 986b4fdf93 Forgot to add a new file from the last commit... >_< [ix86_impl_dwshift.h] Jake.Stine 2009-04-16 01:39:38 +0000
  • 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. Jake.Stine 2009-04-16 01:34:09 +0000
  • 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. Jake.Stine 2009-04-15 21:00:32 +0000
  • 4d2adcae9f New speed hack mainly targeting 3D geometry. sudonim1 2009-04-15 20:31:58 +0000
  • fca65ba2ef Add an include so things compile. arcum42 2009-04-15 17:22:34 +0000
  • 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'). Jake.Stine 2009-04-15 15:45:52 +0000
  • af792b7694 zeroRecs: -minor change cottonvibes 2009-04-15 10:13:48 +0000
  • 5e87ea3127 Fix compiler warning. arcum42 2009-04-15 05:12:03 +0000
  • a661c80a4a Some work on Vif & Hw. arcum42 2009-04-15 04:41:42 +0000
  • fa1a79b368 Cleaned a few things up, and moved a few things around. arcum42 2009-04-15 01:25:11 +0000
  • 12adbcc061 Port 2 Multitap should be fixed (PCSX2 bug). mattmenke 2009-04-14 18:46:59 +0000
  • 881b01c8d7 Linux: Fix the Makefile. arcum42 2009-04-14 14:14:40 +0000
  • b748068b38 LilyPad: Changed how device updates are handled to be more multithreaded friendly. Mutexes when "read input in GS thread" is disabled removed, as they should (hopefully) no longer be needed. May just ditch the option entirely in the future, since enabling it doesn't seem to make much difference, and slows things down for some people. mattmenke 2009-04-14 13:40:28 +0000
  • 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. Jake.Stine 2009-04-14 12:37:48 +0000
  • ac1ecd5812 microVU: more flag "stuff" xD cottonvibes 2009-04-14 03:34:47 +0000
  • 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. Jake.Stine 2009-04-14 01:26:57 +0000
  • 2711d14f0c microVU: bug fixes on some flag handling stuff. cottonvibes 2009-04-14 00:15:18 +0000
  • 44446b47e7 fixed a minor bug from saqib's earlier commit refraction 2009-04-13 12:15:31 +0000
  • b14881769a SPU2-X: Small cleanup and made it a bit faster. ramapcsx2 2009-04-13 09:48:28 +0000
  • 6e1805de36 microVU: minor changes... cottonvibes 2009-04-13 05:39:18 +0000
  • 557564edc2 microVU: changed flag handling algorithms some more... cottonvibes 2009-04-13 03:46:19 +0000
  • c43412948f Added a check to to clear QWC register if the upper 16bits are set. This fixes most of the broken backgrounds in movies. msakhtar 2009-04-12 23:31:59 +0000
  • 7471f251d7 Added a check to to clear QWC register if the upper 16bits are set. This fixes most of the broken backgrounds in movies. msakhtar 2009-04-12 23:31:27 +0000
  • ad6dce5e9c SPU2-X: Worked on savestate support a bit. It now remembers an update timing variable more (could fix a few crashes). This increases the savestate version though, so make sure you have a memory card save ready before upgrading! ramapcsx2 2009-04-12 21:19:29 +0000
  • 6830f07f27 GSdx: GoW2, try #3 gabest11 2009-04-12 19:46:42 +0000
  • 85cf1ab6dc Fix for MGS3 corruption from r955, i don't know why but where vifRegs was set previously, it was completely ignored, regardless of the fact the code has run through there before doing anything else O_o refraction 2009-04-12 15:51:24 +0000
  • a3c1669024 microVU: more flag stuff (div/sqrt/rsqrt flags set at proper time) cottonvibes 2009-04-12 10:23:25 +0000
  • 5b0d9b6723 microVU: fried my brain with some very-complex VU flag-handling logic/algorithms (hopefully they work as expected) cottonvibes 2009-04-12 08:29:53 +0000
  • 97fac9e635 resolves Issue 143 Altered Beast refraction 2009-04-12 04:56:06 +0000
  • f3370ce28f --updated to r956 --uses test8 instead of test32 when possible --exception handling checks are a bit more strict drkiiraziel 2009-04-12 02:49:23 +0000
  • e100933069 Look over there! A THREE HEADED MONKEY! refraction 2009-04-11 19:23:39 +0000
  • 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. refraction 2009-04-11 17:45:14 +0000
  • a388d2969c Fixed bug from Issue 144. refraction 2009-04-11 13:23:05 +0000
  • 076e9e5386 more microVU stuff... cottonvibes 2009-04-11 09:25:47 +0000
  • 9c8a9712a9 GSdx: GoW2 fix #2, pal version this time gabest11 2009-04-11 08:54:48 +0000
  • 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 drkiiraziel 2009-04-10 20:26:43 +0000