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
refraction
60e7428671
Did some testing on the V3_# unpacks, they do some strange stuff for what goes in the W vector every 6qw of original data. Also fixed the use of the size variable so Xmen works again.
...
Note: Nobody will notice this as SSE unpacks are forced on (for now)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@916 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-06 23:48:59 +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
mattmenke
014b5c6671
LilyPad: Fixed "Swap with Pad 1"
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@914 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-05 18:37:06 +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
arcum42
87412c8d5d
Fix the breakage on Ape Escape 3 from r900. Clean up the unpacking code some more while I'm at it.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@912 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-05 10:29:54 +00:00
Jake.Stine
7cf7a118b7
Revered Misc.cpp and vssprintf.cpp from r904. See r904 comments for details.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@911 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 19:50:34 +00:00
refraction
47759b0a46
Found a small typo in IPU, don't know what videos it will effect, but it could have potentially stopped them working :P
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@910 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 19:09:02 +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
Jake.Stine
915c827a63
wxGui branch: Removed several unneeded files from the Win32 builds (removing them since I can reference them from trunk, and if they're deleted I won't have to spend time merging possible changes and stuff later).
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@907 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 15:29:56 +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
Jake.Stine
cffa379f9c
wxGui branch: Did some heavy work on the configuration/ini stuff.
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@905 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-04 08:26:52 +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
arcum42
12cba61302
Fix typo in r900.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@902 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 23:18:11 +00:00
Jake.Stine
9c3bf215bf
wxGui branch: Removed some win32 platform-specific code in main.cpp.
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@901 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 22:56:06 +00:00
arcum42
fdcff57365
Reworked the unpacking code in Vif.cpp.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@900 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 22:51:51 +00:00
Jake.Stine
30339b5ca8
wxGui branch: Added the About box, and embedded images/icons into the exe. Since images are embedded now, I moved them from the /bin folder to the /pcsx2/resources folder.
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@899 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 22:24:57 +00:00
refraction
6b6ceb3c95
Further fix for crash n burn (videos were invisible) hopefully fixes ATV too, but i dont have it to test.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@898 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 19:30:53 +00:00
refraction
4c41d6abb1
went a bit mental lol :P
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@897 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 19:17:40 +00:00
refraction
1e9f8b3c6c
Fixed devel building again, assumably as jake turned the optimizations back on that he didnt want them off.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@896 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 19:09:38 +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
Jake.Stine
6562396612
wxGui branch: Finished the About Box!
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@894 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 17:25:57 +00:00
mattmenke
33d7e6e4f4
Multitap should now work in BIOS (Oops).
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@893 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 11:17:33 +00:00
arcum42
c2d3f78ee1
Patch r891 so the release build builds.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@892 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 02:43:49 +00:00
arcum42
b44d1590ca
Fiddle with ProcessFKeys a bit, and hack in a key to turn logging on and off(F10).
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@891 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 01:05:28 +00:00
Jake.Stine
f0a97d3633
wxGui branch: Fixed Release build errors, removed WinMain.cpp and Remote Debugger stuff from the build project (slowly but surely eliminating dependencies on old code!!), and added AboutBoxDialog files, which I plan to work on next. (gotta have an about box!)
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@890 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-03 00:50:39 +00:00
Jake.Stine
3b570f8a2b
Fixed a bug from an earlier vtlb commit that caused some slowdown when INTC_HACK was disabled. Turns out games spinning on INTC_STAT don't do it in a way that allows the recompiler to propagate consts.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@889 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 22:22:02 +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
gabest11
35655edb47
GSdx: the BoF5 speed fix
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@887 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 21:22:37 +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
Jake.Stine
00528b3be3
wxGui branch: Moved and renamed some files and classes. I'm quite a bit more fond of the C# / Java naming schemes for forms and dialogs over the wxGlade frm/dlg prefixes. Namespaced all dialogs into Dialogs::. (all two of them at this point, but many more will come! .. someday)
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@882 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 11:54:19 +00:00
Jake.Stine
2c3c5401e8
wxGui branch: major progress on many fronts!
...
* Added new files AppConfig.cpp and StringUtils.cpp, and removed memzero.h (we'll use the win/linux platform dependent implementations)
* Enabled wxWidgets memory tracing since we don't use a memory trace util of our own.
* Switched many instances of std::string to wxString.
* Added preliminary support for configuration settings and ini file creation.
* Added a set of parsing and splitting tools to StringUtils.
* Set it up so that the Console log is attachable to the main window, when dragging (fun!)
* Main window and console log window record and restore window positions between runs (only partially implemented yet)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@881 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-02 11:30:23 +00:00
arcum42
a0146d9db1
How that compiled with a space missing, I may never know...
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@880 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-01 12:28:21 +00:00
arcum42
65a4061c3a
Still messing with Sif, Vif, and SPR.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@879 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-01 11:55:29 +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
ramapcsx2
1e4f48437f
Shortcut for intc_stat reads. Speeds up games that use it a lot.
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@877 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-31 18:52:43 +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
Jake.Stine
b3043d4c41
wxGui Branch: Added some console logging code (not yet finished). Can't really use wxWidgets built in version because it's not extensible (grr).
...
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@875 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-31 15:27:42 +00:00
ramapcsx2
149f84b00d
A few tweaks to more often called functions = general speedup :)
...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@874 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-31 15:06:27 +00:00