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
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
gabest11
270c8ee3d2
GSdx: more alpha test magic
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1076 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 21:19:50 +00:00
gabest11
752db6056f
GSdx: just restoring the vcproj from two revisions ago...
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1075 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 20:34:11 +00:00
gabest11
1245659eee
GSdx: fixed Issue 182 (narrowed the neq alpha test range to +/-0.4f/255, scream if something broke), and re-enabled something to make DATE faster (counting min/max of the vertices outperforms stencil buffer clearing when there are many small primitive batches).
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1074 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 20:17:06 +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
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
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
gigaherz
e22a50a7c8
So.. I got an "unlazy" day, and coded a bit more of my iop dma handler.
...
It's disabled in the code, so that it wont' affect normal users.
The code isn't working properly yet. Only handlers for cdvd and spu2 are in it:
- the cdvd one doesn't work because of the way pcsx2 handles cdvd currently
- the spu2 one seems to work, but it's not implemented in the plugin interface, so ATM it's just "faking" it using the old functions.
So really nothing worth testing, just commiting to let people know I'm actually working on it... with long pauses in between. xD
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1052 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-24 01:14:25 +00:00
ramapcsx2
2ac355eb03
Nothing happened here.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1051 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-23 22:05:34 +00:00
ramapcsx2
e843712f58
Reverted the last GIF/IPU change, as per request.
...
Timing this stuff is evil :/
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1050 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-23 21:58:09 +00:00
refraction
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
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1049 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-23 19:51:34 +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
arcum42
ac0768e9a3
ZeroGS: Apply Zeydlitz's patch from Issue 174.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1046 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-23 10:18:43 +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
arcum42
5bb89fef92
Linux: Minor fix for the hack dialog box.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1043 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-22 10:16:41 +00:00
arcum42
9380ccc85b
Linux: Clean up the hack dialog in Linux.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1042 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-22 03:19:30 +00:00
arcum42
5744306a8f
Linux: Fix compilation, and add in the new hack. I may work on making the dialog look better in a bit...
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1041 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-22 02:31:31 +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
mattmenke
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).
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1034 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 23:14:32 +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
refraction
b21b81df9f
Resolved Issue 168 with FFXII crashing with DMA error due to cancelling a scratchpad transfer before it happened, how silly of me :p
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1028 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 00:31:03 +00:00
refraction
adf6dfdcd4
Fixed Tekken 5 regression causing black screens and missing text
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1027 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-20 00:11:34 +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
mattmenke
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.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1025 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 23:04:21 +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