Commit Graph

112 Commits

Author SHA1 Message Date
arcum42 b78944866b Fix a if statement I missed in the last commit, and add in a couple functions for printing structs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2262 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-27 15:25:26 +00:00
arcum42 f11a138ce9 Change the return values on some Vif functions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2261 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-27 13:49:37 +00:00
arcum42 2b1a9277ee Various tag stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2258 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-27 05:31:32 +00:00
arcum42 ba37f31849 Trim and tweak a bunch of includes, and a few headers.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2197 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-14 12:02:56 +00:00
arcum42 e0cef88d54 A couple misc changes. Converted a few more lines to the new register format, fixed spelling in a few comments, and so on...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1997 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-11 08:40:44 +00:00
arcum42 88185fc276 Chop up VifDma into a few pieces.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1981 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-08 06:15:11 +00:00
arcum42 436638af5b Still doing register stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1970 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-06 09:08:36 +00:00
arcum42 6a52fa119d More Vif register stuff.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1968 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-05 21:24:22 +00:00
Jake.Stine 6412271470 Renamed PCSX2_ALIGNED to __aligned and removed the need for excess parenthesis and oddball qualifiers. Left the old macros in Pcsx2defs.h for now, just in case. Redid some of the storage organization of microVU and iFPU consts and temporaries while I was at it, using structs instead of naked vars -- should improve cpu cache behavior a wee bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1959 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-05 02:15:49 +00:00
Jake.Stine 653d09e821 Lots of new code maintenance stuffs:
* Completely new assertion macros: pxAssert, pxAssertMsg, and pxFail, pxAssertDev (both which default to using a message).  These replace *all* wxASSERT, DevAssert, and jASSUME varieties of macros.  New macros borrow the best of all assertion worlds: MSVCRT, wxASSERT, and AtlAssume. :)
 * Rewrote the Console namespace as a structure called IConsoleWriter, and created several varieties of ConsoleWriters for handling different states of log and console availability (should help reduce overhead of console logging nicely).
 * More improvements to the PersistentThread model, using safely interlocked "Do*" style callbacks for starting and cleaning up threads.
 * Fixed console logs so that they're readable in Win32 notepad again (the log writer adds CRs to naked LFs).
 * Added AppInit.cpp -- contains constructor, destructor, OnInit, and command line parsing mess.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1950 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 08:27:27 +00:00
Jake.Stine f460985004 Same general cleanups (mostly to the VU interpreters), but on trunk this time. :) Also Fixes Issue 417 (I hope)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1900 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-21 14:19:49 +00:00
arcum42 8f4538ae0c Rbor, rbsr, and other such things.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1887 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-20 01:47:45 +00:00
Jake.Stine d2fbb22076 Upgraded PCSX2 core and utilities to GPLv3.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1783 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-08 12:08:10 +00:00
Jake.Stine 3b10771c36 Got rid of that old 'params' mess on console logs. Not needed anymore since wxwidgets has nicer built in formatting options (never liked it anyway)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1782 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-08 05:37:40 +00:00
arcum42 2b57f23634 Changed the chcr stuff over to bitfields, and got various other bitfield stuff ready for later on.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1705 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-29 00:35:20 +00:00
arcum42 33d64faa5e Lets use the Gif stat enums, too. And set some of the dmac irqs to have more accurate names, and misc other things.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1672 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-22 21:03:02 +00:00
arcum42 44bb5cdbb5 Odds and ends. Various defines involving vif->stat are now enums, and are now used in various places. Added a new file to GSnull. Moved the new Vif functions to Vif.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1670 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-22 09:52:00 +00:00
cottonvibes 90b89dfc2d pcsx2: removed some warnings from the new dma tag code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1655 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-20 01:13:42 +00:00
arcum42 4509e085c6 Convert Sif.cpp & Vif.cpp to use the Tags.h code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1646 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-17 20:41:32 +00:00
arcum42 fb3f07b2d6 Link in Tags.h, use one of my new enums in various places, and move some code in IPU.h to a new function of it's own.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1623 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-15 04:37:01 +00:00
refraction 57066d229b Fix for Tekken 4 black screen hang, removed some code which doesn't seem to be needed for Art of Fighting anymore, however this game has another problem which seems GS related.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1446 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-01 18:47:57 +00:00
arcum42 7f00193900 Various changes, mainly Gif related cleanup. Fixed SafeArray.h to work with Linux again while I'm at it...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1432 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-26 00:30:19 +00:00
refraction 0f30bf62b5 COP0.cpp: Updated the commented out Perf counter code to work on the newer builds, also removed the line which stopped them updating at all if the interrupt wasnt on.
Others: Fixed a couple of unpack bugs, tried to tackle an MFIFO bug with Tekken Tag. Also re-jiggled a few bits on my recent changed, please negative if it breaks anything.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1400 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-19 03:13:03 +00:00
refraction 4184b31ada MFIFO fixes for Project Altered Beast - Issue 155, Tekken Tag should be better now too (second time lucky!)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1394 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 17:19:01 +00:00
arcum42 f7aae60371 Fixed Linux, and merged a few minor changes I had lying around that I hadn't committed yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1336 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-06 09:24:10 +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
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
arcum42 f32f705d1d Quick hack to fix Linux compiling. Delete some old code. Minor tweaks that I hadn't gotten around to committing.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1016 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 05:42:33 +00:00
refraction 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
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1008 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-18 23:36:01 +00:00
arcum42 a661c80a4a Some work on Vif & Hw.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@979 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 04:41:42 +00:00
arcum42 fa1a79b368 Cleaned a few things up, and moved a few things around.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@978 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 01:25:11 +00:00
refraction 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.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@955 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-11 17:45:14 +00:00
refraction e1bf40546f Why this broke Tekken 5 i don't know! (answers on a postcard) anyhow, fixed :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@945 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:15:52 +00:00
refraction 432b060109 Fix for one small bug, doesnt fix tekken 5 tho :(
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@944 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:08:19 +00:00
arcum42 f127f69b3e A few tweaks to the unpacking code. _UNPACKPart isn't really neccessary anymore, and optimised writeXYZW a little.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@941 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 01:34:04 +00:00
arcum42 98258eeffe Yes, more Vif work. writeX, writeY, writeZ, and writeW are all merged into one function.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@939 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:57:58 +00:00
refraction ccacbedc50 last silly mistake, promise :P
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@938 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:20:13 +00:00
refraction 08d6f10d57 Slap my wrists for the silliest error ever :p only thing that gave it away was the sirens on top of the heads in Ape Escape 3 had no light lol
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@937 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 23:06:11 +00:00
refraction feaed9f4fa The last changes to clean up Vif wouldn't have worked in some situations, tried to rearrange it and space things out and skipping unnecessary checks
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@935 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 21:02:37 +00:00
arcum42 88ae29ac56 More Vif Unpacking cleanup. (And probably not the last of it.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@931 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-09 15:22:59 +00:00
refraction 1250953ff0 Fixed Gradius V, had to destroy the templates arcum did a bit to get it to work without ape escape crashing (sorry mate lol. Took out my V3_# discovery, ape escape is getting spikey now, so ill just remove it. Also altered V2_# to work slightly different incase the packet starts on the Y vector, it now wont suffer underrunning (possible bad data)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@928 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-08 21:19:50 +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
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
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
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
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
refraction 66fe03ad0d Fix for crash of the titans, unbroke FF12 in my last commit, fixed a couple of other things. Now handles DMAs which are enabled while the DMAC is stopped, so they start when the DMAC is re-enabled. Might need some testing to make sure stuff isnt broke :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@866 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-30 21:10:22 +00:00
arcum42 8a99bf1d63 More cleanup. Ran Artistic Vision on a few of the files rama had suggested, and did a few changes that make things easier to read. Still more work to be done here...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@862 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-30 13:21:15 +00:00
arcum42 007c34a8b0 Since WriteLn is used for logging, and it automatically appends newlines, remove a bunch of legacy newlines from various logging functions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@844 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 06:34:51 +00:00
arcum42 4ea9d9292f Replaced more SysPrintf's with Console:: functions then I want to think about. A few minor changes in passing, mainly format-related.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@843 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 01:42:51 +00:00
refraction c8f3a36d66 Made a rough start to what will hopefully be helpful in the future with dma timing and control. So VIF1 (and MFIFO) now have a restructured layout, i have left old code in place for the moment just incase its all a waste of time :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@777 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 01:34:16 +00:00
Jake.Stine 71e2dc2fb4 Many small bugfixes and optimizations:
* Fixed Memcard init so that Memcard1 isn't default in both slots (oops!)
 * Fixed Memcard path logic so that cards outside your pcsx2 folder can be browsed/selected.
 * Fixed CDVD-to-BIOS time sync (I simply forgot a function call!)
 * Optimized yuvrgb_sse2, by using Mod/RM form instructions.
 * Win32: Same optimization applied to FreezeXMMRegs and FreezeMMXRegs (linux already had this optimization)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@719 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-08 20:10:09 +00:00
refraction 056d8c8417 Fix for games which start VIF1 off while the DMA is paused (Crash of the Titans being one of them)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@704 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 22:59:01 +00:00
Jake.Stine 2cf4bc3920 Added the second part of emitter macro functionality, by making the emitter instance configurable. We can't actually use it yet tho, since everything shares iCore, and thus everything needs to share the same emitter instance (for now!).
Fixed new emitter so it compiles in Debug builds, cleaned up the header files a bit.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@652 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-01 20:44:48 +00:00
Jake.Stine 2110018e58 New Feature: Press TAB to toggle the framelimiter on/off (as a substitute for hitting F4 several times). Usable as a "turbo" feature, similar to other emus.
Many minor code cleanups to logging and constants.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@595 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-25 01:36:06 +00:00
refraction a5eab9da86 Implemented a fix for Art of Fighting, MFIFO was clearing our counted size when it shouldn't have been.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@580 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-23 19:59:22 +00:00
Jake.Stine 243e4fba9f Added several important variables to the VIFdma savestate, relating to it's SSE unpacker; which should make the gifdone savestate hack obsolete (it broke savestates for most FMVs and some games). Seeing how important the unpacker tables are, it's a miracle VIFdma ever recovered from a savestate without them ;)
Fixed a bug in the memorycard hotswapper.  It wasn't reloading the cards correctly after changes.

Improved the new INTC hack slightly, and changed its description since it's not quite as universally awesome as Pseudonym and I had hoped when we worked on it last night. -_-

Added __fastcall and __forceinline to some of the VIF's unpack functions, where appropriate (very small speedup).

Removed some code I added to the MULT/DIV instructions, since it wasn't needed afterall, and fixed some typos in vtlb's API.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@538 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-19 22:48:05 +00:00
Jake.Stine fe6f45e45e Updated the Copyright to reflect the passing of another year. :)
Updated the pcsx2_suite_2008.sln; changed SPU2ghz to SPU2-X.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@502 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-15 23:23:46 +00:00
refraction 2cc719d5b0 Slight modification to the MFIFO's to prevent potential situations which could cause bad data to be copied.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@490 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-13 23:57:39 +00:00
Jake.Stine 6ebfae8ef1 Re-Added eol-style:native properties to the repository. The settings got lost when we merged from Playground to Official.
Added interface.cpp (plugin/pcsx2 interface) and savestate.cpp to SPU2ghz, to help clean up SPU2.cpp.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@463 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 21:15:56 +00:00
refraction d2ef18113c Removed my VIF tests, put some other means of protection in place that seems to work. Should fix Issue 22 which was introduced in r454. Also fixed a vif mfifo bug which has been there god knows how long..
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@462 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-09 20:45:14 +00:00
refraction aa94c30dc3 Should be the last of the trunk, gotta finish the branches/tags, but thats the main bulk transferred.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@426 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-06 20:04:37 +00:00