Commit Graph

911 Commits

Author SHA1 Message Date
Jake.Stine 635596c412 wxgui: another sync with trunk to pick up more of those cdvd fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1711 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-30 01:48:08 +00:00
cottonvibes 7c7dfa2f58 Finished mVU macro, and set it on by default.
Basically this means whenever COP2 recs are used, its calling mVU instructions instead of sVU instructions.

Note: Theres a very-minor incompatibility problem when using interpreters/sVU for VU0 with mVU Macro. But I'll fix it later (and it probably doesn't effect much).


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1710 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-29 23:07:03 +00:00
Jake.Stine b4b292d219 More CDVD fixes. I *think* this revision might provide some noticeable speedups when running games directly from cd drives. Also built-in CDVD blockdumps work now (DVD images only, legacy CdRom games still don't blockdump right unless you use the cdvdiso plugin).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1701 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-28 21:23:32 +00:00
Jake.Stine 915d0c6953 More CDVD and cdvdiso bugfixes: cd-rom images should work now (ie, the old school non-DVD sort!), and improved the error and async read handling (possibly affects people running games from dvdrom)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1697 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-28 14:57:51 +00:00
Jake.Stine 396783957e wxgui:
* synched with trunk to pick up all new cdvdiso fixes.
 * configuration wizard now starts if pcsx2.ini is missing/deleted.
 * changed GetWindowChild (MSW specific?) to FindWindow.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1696 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-28 13:06:06 +00:00
arcum42 282abf816d wxgui: A few Linux related changes.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1692 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-28 01:20:40 +00:00
Jake.Stine d77ac4786d Major Fixes!
* Fixed like a gazillion bugs in the new CDVD system; memory corruption, memory leaks, failed resets, and who knows what else.
 * New commandline parameters!!  Added -skipbios/-nodisc/-usecdvd/-elf [file] options, intended replacements for the now obsolete -bootmode (bootmode should still work as it used to).
 * fixed a bug that kept -help from working, and updated -help to display all the new command lines.
 * -nogui command line now causes PCSX2 to close on escape, instead of escaping back to the GUI.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1684 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-27 02:00:25 +00:00
Jake.Stine 9303bc5bf2 wxgui: Prepped the R5900 recompiler for the new wxWidgets-enhanced dedicated emulation thread design, and removed the old boolean-based re-entrant event checking mess.
Note: Nearly have a successfully booting branch! (bios crashes when it reaches CDVD api callbacks, should be a simple fix but it'll have to wait until later >_<)

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1680 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-25 15:38:48 +00:00
cottonvibes a3f0ba5315 microVU:
- Started implementing VU macro mode (code off by default)
- Disabled Constant Propagation for Jump Addresses (this rarely was a speedup, and it slowed down recompilation time a lot in some games causing bad slowdowns (GoW))

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1675 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-24 02:48:50 +00:00
Jake.Stine db3e81504e wxgui: The Linux side compiles and runs again. Note: Removed "Open in Explorer" buttons for folders since there seems no reliable way to do that in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1661 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-20 23:05:26 +00:00
Jake.Stine e25db2a0ba wxgui: sync with trunk (boooring)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1660 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-20 16:19:33 +00:00
Jake.Stine 4b320294fc wxgui: Fixed most of the trivial bugs from the prev commit.
* Removed NoncopyableObject class and replaced it with a DeclareNoncopyableObject() macro -- which reports saner C++ compilation errors when the object copy is attempted.
 * Improved first run wizard and several configuration panels.
 * Moved the BIOS selector to its own menu item and dialog box, separate of the Settings panel.
 * Fixed various bugs preventing configuration changes from being saved.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1658 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-20 14:34:48 +00:00
Jake.Stine 3c4b1afb49 wxgui: All kinds of mess, but still not up to running games yet.
* Borrowed wxScopedPtr from wxWidgets 2.9
 * Fixed up first-time startup procedures and folder selection
 * Implemented most of the rest of the missing configuration options, and cleaned up some ambiguities regarding bool types and bitfields.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1649 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-18 19:47:00 +00:00
Jake.Stine c415d8d694 wxgui:
* Major cleanups and improvements to the Threading namespace.
 * Created CoreEmuThread class framework, which currently runs the EEcore, IOP, and VUs with threadsafe suspension, reset, and resume features.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1624 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-15 06:17:43 +00:00
gabest11 ab010b2b4c forgot to set function level linking..., that trims more unused code and dlls deps, any good revision number ahead to reach? :D
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1620 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-12 23:27:22 +00:00
gabest11 0d40e9963e vs2010 project files for pcsx2 (plugins later)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1617 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-12 22:11:06 +00:00
Jake.Stine 3544bcd118 wxgui: maintenance sync with trunk.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1604 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-04 13:34:52 +00:00
Jake.Stine 4836aac1f5 wxgui: separated core emulation options from user interface options (mostly! some interdependencies remain), and stripped out some of the old framelimiting toggle/cycle code, which will be replaced with a better framelimiter system soon.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1602 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-04 08:21:10 +00:00
Jake.Stine bafd21140f wxgui:
* finished most of the new plugin system (branch is buildable and runnable again, but no significant functionality has been added yet).
 * Removed STGS code from the branch since I planned to kill it off anyway and it was more work to code proper support for it in wx than to remove it.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1595 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-08-02 16:48:03 +00:00
arcum42 a4e0009a7e Stub out some functions in the cache code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1588 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-30 23:50:39 +00:00
Jake.Stine 71490981bf wxgui: synced with trunk, and started work on an improved plugin initialization procedure. (branch currently does NOT compile, sorry)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1582 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-29 14:00:00 +00:00
Jake.Stine b93f5bf91a More new plugin api work.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1581 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-29 13:54:49 +00:00
Jake.Stine 16fb25c1ed NewPluginApi: Some tweaks as per Gabest suggestion; probably a tired disaster in need much review.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1579 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-28 07:34:49 +00:00
Jake.Stine 3935927a99 Cleaned up some loose ends I left behind in my initial rough draft of PluginCallbacks.h, and added some eol-style:native properties to /common/include files that lacked them.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1577 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-28 01:25:51 +00:00
Jake.Stine 2cbb853535 Working on a brand new plugin interface, based on passing APIs via structure instead of individually binding each function (which is generally cumbersome and limited in a number of ways).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1576 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-27 23:51:52 +00:00
arcum42 56a98ca922 Converted a few of the file paths to strings, and moved the generic file manipulation functions in IsoFileFormats to their own file.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1562 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-24 03:08:14 +00:00
arcum42 a9999cbffa Reworked a few things in PcsxConfig, to make things a little more organized, and make path changes later easier. (May have broken Linux temporarily. If so, I'll fix it in a bit.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1560 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-24 00:53:40 +00:00
arcum42 20b95fd187 Added a few new calls to PathUtils, and used them to get rid of some platform specific code in the new Iso code. I also modified some other code to use the new calls, and fixed a few microVU compiler warnings.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1559 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-23 23:30:19 +00:00
Jake.Stine 3751c928d3 wxgui: synced with trunk (to acquire new CDVD/ISO api)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1558 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-23 14:58:17 +00:00
Jake.Stine 2814323298 wxgui: Tons of updates and fixes ...
* Mostly finalized the i18n system.
 * fully implemented the speedhacks dialog.
 * improved the wxHelpers quite a lot.
 * added a new gamefixes icon as put together by gigaherz.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1554 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-23 02:11:45 +00:00
Jake.Stine aaf1acf58d wxgui: Added more functionality to configuration dialogs and more options are saved to ini.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1544 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-20 00:39:38 +00:00
Jake.Stine ccdb5d84b9 wxgui: Optimizations and improvements to the console logger's threading model.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1535 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-17 03:43:45 +00:00
gigaherz de976b8234 Remove the bool from the GS exports, as Jake said.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1531 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-16 12:38:42 +00:00
Jake.Stine 657660371c wxgui: Fixed crash-on-exit problem in Release builds and made the console logger thread-safe (uses messages instead of direct wxFrame method invocations).
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1529 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-16 09:58:17 +00:00
gigaherz 63a01f76ac Matsuri sent me a cleanup of his previous patch. No changes in functionality.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1528 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-16 03:34:30 +00:00
ramapcsx2 258dc05529 Plugin interface / GSdx changes that binds the GSdx vsync option to the pcsx2 framelimiter.
This patch by matsuri makes playing with vsync a lot nicer, so thanks for that one ;)

Note: For now its directx 10 only, due to dx9 needing a swapchain reset..

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1526 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-15 19:44:06 +00:00
gigaherz e2c31ae72a Now that having internal CDVD interfaces is easy, I added a NODISC interface, with a menu option to run the BIOS with no disc.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1513 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-15 01:17:28 +00:00
gigaherz 3f28c12fe7 Start improving the CDVD interface. Change the internal ISO interface to use it.
I will later work on getting the typical plugins to support these new functions.
I have tried to also update the linux side, but I can't compile or test it so it might not work properly.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1511 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-15 00:27:27 +00:00
Jake.Stine 94a4897624 wxgui: fixed up linux size (and omg it was easy for once!)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1507 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-14 14:22:40 +00:00
Jake.Stine 8505e4a7e7 wxgui: Added plugin selection dialog (complete with plugin enumeration and an exceedingly fancy progress bar), fixed some menus, added isofile recent lists, and lots more stuff is correctly saved and loaded from the configuration file.
* Dev note: Re-enabled USE_STL in wxWidgets since that's required to ensure thread safety.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1505 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-14 06:18:52 +00:00
gigaherz 43f8746906 Implemented WIP code to run a ISO image from within pcsx2, ignoring the currently selected cdvd plugin.
I tried it and it seems to work, but I can't assure it's bugfree.
Next step is to implement internal blockdump creation and loading, and fix any problems ppl might have with this.
(And sorry for breaking linux on every commit I do. :P)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1496 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-12 17:17:57 +00:00
ramapcsx2 0fb4e89fe2 Removed the wait cycles hack, and made it effectively always on.
The magic values for this setting were made for the old, sometimes failing system.
It should not be needed anymore, and testing confirmed that.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1485 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-11 15:43:28 +00:00
Jake.Stine 3c195e9f9a wxgui: more of the slowly progressing.
* Implemented internationalization (i18n) framework.
 * Made a pretty configuration dialog box!
 * Many minor bugfixes.
 * Removed most of the old Win32 and Linux/GTK gui code because it was causing gettext cataloging to grab about 500 non-relevant strings (can always reference trunk for them anyway).

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1484 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-11 08:31:38 +00:00
Jake.Stine b0bfce8735 wxGui branch: [linux] Fixes for previous commits; one of my project files hadn't been saved properly before committing >_<
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1461 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-04 04:39:19 +00:00
Jake.Stine fb6a8939b0 wxgui: Moved some more files around in Common/Utilities, and merged against trunk.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1460 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-03 20:48:11 +00:00
Jake.Stine aceefaf812 wxGui branch: [linux] Updated projects, added Utilities and x86emitter libraries.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1459 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-03 20:12:33 +00:00
Jake.Stine da691894c3 wxgui branch: Maintenance merge against trunk, plus many cleanups and project-level changes.
* Moved the x86 emitter to /common, so that plugins can link against it if they wish.
 * Created a new "utility" class in /common which houses string utils, fast memcpy, common exception classes, and other handy dandies.
 * Removed old-style linux automake files from the pcsx2 dir since they were hopelessly out of date (and their multi-file-per-line format makes svn merging impossible >_<)

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1454 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-07-03 00:49:40 +00:00
cottonvibes 6b2c26a617 Added 2 gamefixes to the Windows Side (untested since I don't have the games xD):
- DMA Execution hack - Fixes Fatal frame problems by ignoring dma transfers while another one is being executed.
- VU XGkick hack - Fixes Erementar Gerad by delaying XGkick. Similar to what SO3 needs, except this game needs more delay. Emulating this correctly is impossible with the current DMAC system, and will most-likely never be fixed correctly. The best (and fastest) way to simulate proper behavior is with a gamefix. (Super VU was doing this by a CRC hack, but I changed it to use this gamefix instead along with microVU.)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1437 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-26 04:27:18 +00:00
arcum42 89dc306861 The Gust fix is back in. The previous behavior is in as a gamehack for Fatal Frame, and any other games adversely affected. Checkbox not yet implemented for Windows.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1436 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-26 03:12:36 +00:00
arcum42 816e39851a Linux: Quick fixes to get the Linux build working with the changes in r1388.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1389 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 09:32:35 +00:00
Jake.Stine b974b815ff Major Build System changes:
* Changed w32pthreads library into a DLL so that it can be used from plugins correctly. (NOTE: you will need to make sure to build and copy w32pthreads.dll into your pcsx2 folder).
 * Switched pcsx2 from static CRT to shared CRT linking (needed to ensure correct exception handling behavior in multithreaded DLL environments).
 * Switched all standard plugins in the Suite to the shared CRT, to match pcsx2's new style. :)
 * Renamed _DEBUG (depreciated) to PCSX2_DEBUG (excluding Gabest projects since the ATL still uses it).
 * Added intrin.h to Pcsx2Defs.h (so that it is included universally), and added intrin_x86.h for GCC compatibility.

Notes:
 * Current plugin version compatibility status should be unaffected.  The new shared-CRT plugins work fine with older versions of Pcsx2, and the older plugins should work fine with the new shared-CRT version of pcsx2; so long as the necessary CRT DLLs are available on the user's system.
 * All future packagings of pcsx2 will include w32pthreads.dll and the Common Runtimes (CRTs).
 * Existing users who do not have MSVC installed can obtain the CRTs by downloading the Microsoft Visual C++ 2008 Redistributable Package (anyone with msvc installed should already have all they need).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1388 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-18 08:20:19 +00:00
cottonvibes 07a4eb3491 microVU/pcsx2:
- Removed flaghack1 since it didn't do much over flaghack2 (except break games :p).
Flaghack2 is now renamed to "Status Flag Hack", and so-far we haven't found a single game it breaks, so compatibility is high.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1313 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-06-03 23:51:23 +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
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
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
Jake.Stine 3ff7f2f191 Meaningless Commits Inc presents: Made jASSUME to be more scope-proof, and fixed a minor signed/unsigned warning in cdvd.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1240 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-23 01:11:28 +00:00
arcum42 9eda5dc951 Linux: Fear and Loathing in GCC 4.4.0...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1222 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-19 13:25:09 +00:00
Jake.Stine 1f67f63ed5 Removed the microVU enabler define (oops >_<), and removed some SPU2 counters message since the code in question is behaving as intended.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1181 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-14 19:40:54 +00:00
Jake.Stine 729d90c1ce microVU:
* Smartened up the microprogram cache.  Programs are (quite accurately) selected based on how often and how recently they have been used.  Solves constant recompilation issues in games like FFXII and Tekken 5 [but not the SPS, sorry!].

* Changed memory allocation so that microprogram blocks are allocated *on demand* -- this saves a lot of memory and makes it possible to test 64-program caches (which would previously fail due to exceeding 2gb ram allocations!).  Also fixed a few small memory bugs in Init/Alloc, and made it so mVU only allocates memory once instead of on every reset. :)

* Tweaked uses of progSize in microVU.h so that it's consistent [all instances of progSize are (vumem_size / 4) now]

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1180 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-14 19:34:17 +00:00
Jake.Stine 8ab8adabf1 Improved handling of jNO_DEFAULT so that it performs a sanity check in Devel builds [currently applies to Pcsx2 only since we don't have a standard define macro for devbuild in the plugins].
Cleaned up and abbreviated logging for the new IOP HwRead/Write handlers.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1131 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-04 14:12:21 +00:00
Jake.Stine 0238815248 wxGui: performing maintenance merge before weekend departure.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1120 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-02 14:06:06 +00:00
Jake.Stine a69cfcc464 Removed VU-Skip [helps simplify the frameskipper logic] -- Use the VU Cycle Stealer hack instead for better, faster, more stable speedups of the VU1 unit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1114 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-02 09:04:47 +00:00
arcum42 bc9e0b08ad Some work on CDVD.cpp. Slight change to the branch statements in Interpreter.cpp. Restore a change to Pcsx2Defs.h that got reverted.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1102 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-05-01 11:06:52 +00:00
arcum42 d8617c1ee8 Get rid of duplicated code in PS2Etypes.h. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1088 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-29 11:47:05 +00:00
Jake.Stine 04beb1f29f wxGui branch: [linux] Minor fixes to the GUI -- Ok/Cancel buttons line up where they should now. :)
CodeBlocks Project Changes:
 * Fixed some absolute folder specifications (/home/pubuntu/) which went unnoticed.
 * Enabled Precompiled header support (speeds up compilation about 40% for me).

git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1081 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-28 20:26:43 +00:00
Jake.Stine d9f367f03f wxGui Branch: [Linux] Fixes for various warnings and errors.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1078 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 22:00:56 +00:00
Jake.Stine 5d36fe3839 wxGui branch: Holy crap! I converted it to unicode! This was an absolutely maddening experience. [also: Merged with /trunk]
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@1069 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-27 02:04:31 +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
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
Jake.Stine 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.
iMMI.cpp: Removed mucho dead pre-SSE2 code. (old code can be grabbed from a tagged revision, in case it's useful for future reference).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1011 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-19 02:14:50 +00:00
sudonim1 4d2adcae9f New speed hack mainly targeting 3D geometry.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@984 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-15 20:31:58 +00:00
cottonvibes 6775b8a5cc microVU:
- added microVU_Execution.inl
- dispatcher stuff is now recompiled with pcsx2's emitter instead of using inline asm, its cleaner than inline asm and its more portable since the asm won't have to be ported to GCC.
- lots of first-pass implementation for lower opcodes
- implemented documented branch behavior (first pass stuff only)
Note: theres some undocumented stuff branches do according to Nneeve's tests, but i won't implement those for now since 99% of games shouldn't need it, and according to the tests, the behavior seems kind-of random/erratic.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@948 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 19:45:27 +00:00
refraction 756127d096 Fixed recently discovered bug from VIF which could have potentially happened anywhere jNODEFAULT is used (nobody noticed lol)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@946 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-04-10 13:29:20 +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
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 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
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 e9d722ba1a Set zlib to use fast compression for savestate (big speedup for when making savestates).
Disabled Edit and Continue and re-enabled optimizations in devel mode (thought I disabled Edit and Continue earlier, but I guess it didn't get saved/committed correctly).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@865 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-30 18:19:05 +00:00
mattmenke 74dcf7d8a9 Forgot to remove a couple debug lines.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@856 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:48:18 +00:00
mattmenke e3b40d1933 LilyPad, Plugin APIs: Slightly changed how multitap API additions work. Now enabling is handled completely by the pad plugin. If anyone ever really feels like adding support for more memcards, can move it over to PCSX2 itself.
Also add some documentation to PadApi.h.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@853 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-29 06:14:59 +00:00
arcum42 0feb9de523 General cleanup in Gif.cpp && IPU.cpp. Did a bit of refactoring in Gif.cpp. Moved the path3hack to patches.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@850 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-28 06:53:18 +00:00
ramapcsx2 0e61bd6b35 - Nneeve fixed the Tri-Ace gamefix so Gradius5 doesn't crash with it enabled anymore.
- Moved one global variable for the VU interpreters, which surprisingly speeds up Star Ocean 3 for me.
- Set Flush to Zero for FPU and VU back to on. Let's see how long it lasts this time :p
- Removed the FFX hack from pcsx2! It's still toggled in the GS plugins, the correct behaviour is having it always on.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@848 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-27 23:52:17 +00:00
ramapcsx2 157e696182 - Various fixes to MMI and more changes to opcodes to mimic ps2 behavior, thanks to Nneeve.
- Brought back a gamefix for Persona games. They still have missing geometry without it (VU clip flag problem)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@835 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-22 19:40:43 +00:00
Jake.Stine 9528571ea3 Buildsystem improvements - Added two new property sheets for Incremental Linking and Global Linking. Incremental Linking is fast and allows for Edit and Continue debugging (debug/devel builds), Global Linking is for Release builds.
Applied new property sheets to Pcsx2, SPU2-X, ZeroStuff, and NULLs.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@829 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-21 04:01:44 +00:00
Jake.Stine 6ce8ac189c wxgui branch: Full merge of trunk into the new wxgui, including a revision from way long ago that somehow got missed (when I renamed Windows folders in some plugin dirs)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@821 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 12:14:37 +00:00
arcum42 382431ebcb Linux: Make some of the assembly look a bit better. Change the PCSX2_ALIGNED_EXTERN defs a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@820 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 11:11:30 +00:00
Jake.Stine c5b366095a Fix for some random slowdown introduced in 815 (bad cacheline coloring caused a random 30% speed drop when not using speedhacks) >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@819 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-19 10:20:56 +00:00
mattmenke 0efde91a92 Save States: Added PADfreeze calls to PCSX2, though they're currently only implemented by LilyPad. Also fixed a bug where a save state would failed to load when the last plugin's freeze function actually saved something. Minor changes to new plugin API as well.
Because of a convenient bug in load state function, older save states with no saved pad info should still work.  Don't blame me if they don't, though.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@791 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 09:30:31 +00:00
arcum42 85a1c605fa Plugin APIs: Added the changes in r788 to PluginCallbacks.h. Changed the config path function to be one of the general functions, not plugin specific, and it now passes the whole pcsx2 config, not just the ini path. I can see all sorts of uses for that...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@789 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 05:57:16 +00:00
mattmenke 579a907edf Plugin APIs: Now that I've figured out how multitaps work, fixed SIO API so it can theoretically actually work.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@788 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-15 03:18:31 +00:00
tmkkmac 9ad464377a Removed a VU Clip gamefix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@784 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 18:50:46 +00:00
arcum42 d793d84860 The joys of unrestrained find/replace. :(
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@781 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 02:43:40 +00:00
arcum42 ceaee3748e Plugin APIs: Corrected a few things that got missed when I committed initially. Moved the ini path passing to a separate function. Restored a few functions I'd deleted, and depreciated them instead.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@780 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 02:39:40 +00:00
mattmenke 04b49b108e Plugin APIs: Restored pDsp, renamed to pDisplay for clarity (Though arcum42's right and about needing documentation). Renamed PADinit for psx emulator compatibility. Played around a bit with SIO api, thinking for simplicity best to just use one plugin of each type (SIO PAD/MTAP, remote, and memcard. Could even be separate types, but no real need for it). Added PADFreeze() and its friend SIOFreeze().
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@779 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-14 02:12:17 +00:00
cottonvibes 2d0dd6b0b2 forgot to commit this...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@768 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 07:57:23 +00:00
arcum42 551d02721a Forgot two files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@767 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 07:27:52 +00:00
arcum42 c15b3129d4 Preliminary work on a new version of the plugin api. Not hooked up, and very subject to change. Mainly committed both for backup, and for other devs to mess with...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@766 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-13 07:25:00 +00:00
Jake.Stine 0bf5d1c43b Pcsx2-wxGui: Initial commit of "non-functional" gui (WIP). It compiles but doesn't do anything yet (none of the menus have been bound to actions, except for the GameHacks dialog). Initial wxWidgets project additions and prepwork are courtesy of Feat87.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/wxgui@732 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-10 11:35:24 +00:00
Jake.Stine aef3af8a29 nneeve improves the software-emulated FPU accuracy ("Full" mode in Advanced Dialog).
Appended notes:
 * ADD in iFPUd should be bit accurate (unless it isn't. needs TESTING)
 * MUL in iFPUd with Software Emulate MUL is as much as I could get near bit accurate (not quite enough, probably. needs TESTING)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@728 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-09 23:54:38 +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
arcum42 3880bf5a14 Move the configuration section of Misc.h to a new file, Pcsx2Config.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@699 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-06 15:09:42 +00:00
Jake.Stine cc930f86c5 Major GUI API Cleanups. Most likely buggy as all hell.
* Moved most of the shared code between the two GUIs into platform independent source modules (System.cpp, Saveslots.cpp, and RecoverySystem.cpp)
 * Created two new namespaces which house functions that need to be implemented by OS/platforms: HostGui and HostSys.  HostGui is useful -- HostSys I'm not sure I'll keep around in the long run.
 * Moved keyEvent struct from PS2Edefs.h to PS2Etypes.h
 * Many improvements to the logic flow of the GUI (should be a little less fallible).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@675 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-03-04 11:33:45 +00:00
Jake.Stine ebb5339418 Yay more header file cleanup chores! Removed most of the Windows.h dependencies from non-Win32 specific files, and fixed the annoying ARRAYSIZE warnings. Let's say it together: "We all should love C's archaic include system, because it makes Jake and Arcum work really hard for no good reason."
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@634 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-28 20:55:53 +00:00
Jake.Stine 5b09d81f36 Fixed a bug in the savestate system that caused memcards to eject when they shouldn't have (had uint instead of u64 >_<).
Developers: Changed the way PCSX2_ALIGNED16 macros work, so that they're more friendly to MSVC and Visual Assist X intellisense (more more red squigglies on vars like cpuRegs!)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@618 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-27 01:43:43 +00:00
tmkkmac 1f01b45833 Now calmping code added in r579 is enabled only in "extra" setting or above, because it slows down some games
WinGUI: Disabled arguments menu in release build, for sure :p
Buildsystem: Made pcsx2 dependent on zlib, and changed post-build script a bit

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@591 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 15:35:10 +00:00
Jake.Stine ba803d575e Forgot a set of quotes. Build system should be able to cope with spaces in project folders now.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@586 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 09:59:50 +00:00
Jake.Stine 7ffd3d3aea Restructured the build system from the ground up. 3rdparty libs have been moved back into a /3rdparty folder, and are compiled as libraries. Most relevant plugins are part of the pcsx2_suite_2008.sln. Revision tagging of filenames is still there, but is now disabled by default. Pathnames with spaces shouldn't break the buildscripts anymore. Removed tons and tons of files in an effort to simplify the repository and build system management. So if a solution file you're used to using is missing, it's missing for a good reason (means the project can be built either from the Suite solution, or by double-clicking the project file from explorer, from which MSVC creates a new solution for you).
I'll put up a wiki soon which covers new compilation features and stuff, like how to re-enable revision tagging, and how you can direct compiled exe/dlls to be copied to any destination of your choice (yay!) -- plus many other compiling tips (if I can remember them all! >_<)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@581 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-24 02:08:37 +00:00
Jake.Stine 84099c097f Added GSdx to the pcsx2_suite_2008.sln. It defaults to SSE2, you'll have to manually configure the build targets to use SSSE3 or SSE4 (hopefully we'll find a better solution to that in the near future).
Upgraded GSdx's use of svnrev to match other plugins in the pcsx2 repository; so that it no longer requires TortoiseSVN, and will also compile correctly from folders with spaces (ala '/program files/username/my documents/projects').

Removed the /3rdparty and /common folders since they aren't used anymore, and it was potentially confusing or misleading to leave them in since they were out-of-date (they were once referenced by svn:externals, and we opted out of using those here due to slowness).

SPU2-X: Fixed a minor overflow in the reverb that would cause infrequent crackles in a select few games.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@503 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-02-16 04:32:03 +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 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