Commit Graph

1739 Commits

Author SHA1 Message Date
Jake.Stine 5b92054923 Better fix for zmuldefs. Less warnings in MSVC and GCC both. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1957 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 21:49:23 +00:00
Jake.Stine 4f6d7ca776 Linux: We don't need no stinkin' muldefs! (fyi, turns out the solution was to use the "inline" keyword on class member prototype definitions, yes that simple -_-)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1955 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 20:28:08 +00:00
arcum42 291be6bc60 Minor fix to r1953.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1954 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 20:20:50 +00:00
Jake.Stine e1c89dacdb Bind the cdvd's newDiskCB properly when changing CDVD sources; and more jASSUME->pxAssert change-overs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1953 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 15:34:40 +00:00
Jake.Stine db01c15977 Linux: Minor fixups!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1952 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 09:00:07 +00:00
Jake.Stine 8ba39b71de SPU2-X: Fix CDDA playback, which got broken a few revs back; and remove regression test code (ReadInput is pretty well confirmed to be good now, anything still broken is because of something else).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1951 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-04 08:47:43 +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 638740b53d Win32 build system:
* Re-enabled function-level linking in the shared properties sheets (applies to debug and devel builds, and is ignored in release builds).  Can't remember why it got disabled in the first place, but whatever errors it was causing seem to be gone now.
 * Removed the wxWidgets 2.9/3.0 copy of wxScopedPtr (wx/scopedptr.h), since we have a new superior implementation of our own.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1949 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-03 16:51:27 +00:00
Jake.Stine 4efb1ed9ca Added some DebugBreak generation (INT3 / 0xcc) to the PsxRec, for catching null pxsRegs.pc assignments from the recompiler (enabled in DEBUG builds only). These are usually more context-useful breakpoints than the assert() check in psxRecompile.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1948 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-03 13:36:19 +00:00
Jake.Stine 910669f937 SPU2-X: Fixed some more major bugs and typos; most sound *should* be working again now. Added a hackfix for a crash in the BIOS cased by what *should* be correct handling of IRQAs.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1947 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-03 13:32:23 +00:00
gigaherz d386ce0ac6 Just a tiny cosmetic change in the plugin name string.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1946 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 15:24:28 +00:00
gigaherz bdb20ebe29 Unbreak Debug too.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1945 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 15:21:09 +00:00
gigaherz 4f19b1036d Fix error on release build.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1944 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 15:04:48 +00:00
gigaherz 0672d6c00b Remove custom settings from the vcproj which were already globally defined in the vsprops.
Fix a silly bug too, and silence a warning.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1943 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 15:01:15 +00:00
gigaherz 7dde0087ad Properly add the project stuff so it "fits" with the build system used on all the other plugins.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1942 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 14:21:40 +00:00
gigaherz 985dd97aad Whoops missed 2 files.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1941 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 14:21:00 +00:00
gigaherz c440e41859 Undo my little mess. Fix it next commit
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1940 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 14:20:18 +00:00
gigaherz b6a19e6b2c Bring in cdvdGigaherz (step 1).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1939 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 13:40:22 +00:00
arcum42 941296b63c Fix Dualshock.h on Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1938 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-01 10:12:39 +00:00
arcum42 a45be47bea Fixed SPU2null.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1936 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-30 20:08:00 +00:00
Jake.Stine 0b027385b0 GIFpath: Making a note about the BIOS using the packed register address 0x7f, and disabling logging for that address, since it spams.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1935 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-30 12:35:40 +00:00
Jake.Stine 7b800cf290 wxWidgets (Win32): Disable debug trace logigng of Windows Messages, because it's really! slow. And not! useful.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1934 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-30 12:34:19 +00:00
Jake.Stine 03972b07de SPU2-X: Fixed a huge bug in my last commit that broke most everything except the bios -- Core indexes were set to -1 instead of 0 and 1 (heh). Also a Speedup: Switched to a lookup table for dispatching SPU hardware register writes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1933 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-30 05:35:37 +00:00
arcum42 3d789c5da3 Not particularly tested, but fix Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1931 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 22:05:21 +00:00
Jake.Stine 158b01b58d SPU2-X:
* Potential Bugfix: Core1's DMA IRQ trigger was being ignored in some instances; might fix some hangs.
 * Major code cleanups, using C++ structure member methods and functions.
 * Improved gui / plugin api / core emulation code separation -- hoping to switch to wxWidgets eventually.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1930 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 19:18:50 +00:00
Jake.Stine 15d2824d1b (work in progress -- some of this stuff still doesn't quite work as it should)
* Rewrote Savestate code, fixed lots of stuff in PersistentThread, and renamed most "Emu"s to "Sys".
 * Removed wxScopedPtr and whipped up our own ScopedPtr that doesn't use boost's fail-style function names (and made it more thread-safe).
 * Handling exceptions across threads: Added Clone() and Rethrow() methods to BaseException, and added a Rethrow() to PersistentThread.
 * Go rid of AppInvoke macros (those were nasty!)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1929 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 19:16:00 +00:00
Jake.Stine 893fcebf52 Implemented 64-bit writes for Counter registers -- Fixes uLaunchELF!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1928 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 17:15:34 +00:00
Jake.Stine abf0cbde47 More explicit C++ style type definition for PSXCLK, to ensure compilers avoid mathematical overflows. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1927 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 16:20:13 +00:00
Jake.Stine 44464b812a w32pthreads: add the missing project file. (thought for sure I added this >_<)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1926 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 14:33:56 +00:00
Jake.Stine a628c163d5 w32pthreads:
* Implemented a combination static link and dynamic link system; threads still benefit from DLL-level thread management, but speed-critical actions (semaphore and mutex locks) can now inline their "accelerated" interlocks properly.  Should be a nice speedup.
 * Implemented a highly optimized pthread_testcancel(), that typically performs its test in a single cycle. :)
 * Disabled static mutexes.  They aren't needed in C++ code, and reduce mutex locking overhead nicely.
 * Use intrin.h for Interlocked functions, instead of pthreads' built in ones.
 * Reverted my previous commit, since TLS isn't safe in DLLs.  (oops!)
 * Disabled pthread_spin API, it's not entirely cross-platform and shouldn't be used anyway (bad threading model for modern computing)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1925 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 14:21:12 +00:00
Jake.Stine 6c0afe7c48 w32pthreads: minor optimization using _declspec(thread) for internal thread handles, instead of TlsAlloc.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1924 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-29 05:04:55 +00:00
Jake.Stine 93d4f5a39c GSdx: Force the plugin to terminate via PostQuitMessage() when running GSReplay (fixes bug where GSdx would remain loaded in the background indefinitely).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1923 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-28 11:13:40 +00:00
arcum42 c97498d1f6 Assorted header cleanup.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1921 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-27 00:11:09 +00:00
mattmenke c252b0f4df LilyPad: Default deadzone increased. Note that will only apply to new bindings, or ones from inis made before I added deadzone support. Hope it's high enough for most cases, but not high enough to break anything...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1920 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-26 18:21:57 +00:00
mattmenke c82cb222d7 LilyPad: Less sensitive (Higher pre-set deadzone) for copying analog state to d-pad state when in digital mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1919 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-26 18:06:39 +00:00
mattmenke 2193e5aec6 LilyPad: Fix for non-pressure sensitive buttons with dead zone < 0.0625 or so.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1918 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 19:34:59 +00:00
mattmenke 8bc0ffaefb Workaround for bug in plugin loader with GS plugins that don't support GSopen2().
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1916 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 11:22:46 +00:00
mattmenke ff60b3b882 LilyPad: Give "credit" where credit is due...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1915 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 10:20:32 +00:00
mattmenke 3a0ad40159 LilyPad: Experimental deadzone code. Old pressure sensitive button bindings must be rebound (DS3 buttons, XInput triggers).
Currently anything below deadzone is mapped to 0.  deadzone and above are mapped as if the control's true zero is 0 and 1/sensitivity is fully down (As opposed to deadzone being zero).  May change in the future.
Modified precompiled header to fix no-CRT build.
List of bindings noew automatically jumps to new bindings.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1914 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-25 08:36:42 +00:00
Jake.Stine 6b9ffd8132 Renamed memzero_obj to memzero. Been meaning to do that for a while. Also, Savestates *almost* work, but it's just not going to happen. See everyone in 5 days or so. -_-
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1913 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 12:53:32 +00:00
Jake.Stine 32550ef6a0 Removed two redundant/unneeded conditional checks from GIFpath processing.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1912 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 12:17:53 +00:00
arcum42 5ad7b00261 Fix compilation on Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1911 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 12:11:37 +00:00
Jake.Stine fd7e17b5df Fix compilation errors from my prev commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1910 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 11:51:41 +00:00
ramapcsx2 4a1b52a22a SPU2-X:
Just changed the config dialog a bit to prevent performance seeking users from disabling timestretching (and then posting threads about bad sound :p ).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1909 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 10:24:47 +00:00
Jake.Stine aaa3b773c6 Improved MTGS (added better suspend/resume support), and work on savestates a bit (still not working tho)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1908 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 09:53:21 +00:00
mattmenke 2046b8e7b4 wxWidgets: Added multitap toggles to config menu. Note that currently have to enable multitap both in Pcsx2 and LilyPad for extra pads to work.
Also added suggested interface for plugins for whenever the plugin apis are updated.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1907 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 05:50:23 +00:00
mattmenke cd7f88aa73 LilyPad: Another pair of fixes for related bugs in the thread safety stuff. First could cause crashes when stopping/resuming/restarting emulation, second would cause devices to fail to restart properly (Or, more accurately, restart too early) when doing the same.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1906 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 05:19:17 +00:00
mattmenke cfaeb06c05 LilyPad: Quick fix to bug in the thread stuff from last update.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1905 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-23 04:37:15 +00:00
Jake.Stine 39bd850f72 win32pthreads: Changed from _beginthreadex to CreateThread, which is the preferred method of creating threads when using dynamic CRT linking.
PCSX2/Win32:
 * Assigned names to the threads so that they show up nicely in the debugger.
 * Added more error checking in the new stdout/stderr PipeRedirection code, hopefully fixing Issue 422 (but can't reproduce the error here to be sure).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1904 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-22 17:28:48 +00:00
Jake.Stine 0fe6bd16f3 Fixed a re-entry condition when trying to use the SysCoreThread::ApplySettings() directly; and fixed some threading issues in the resume code too.
Dev Note: EmuConfig is now *const*, and can *only* be modified by a call to ApplySettings(), which itself cannot be called from its own thread.  This protects against accidental thread-unsafe on-the-fly settings changes.  Amazingly we had only one such settings change in the existing trunk.  I fixed it ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1903 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-09-22 11:50:27 +00:00