Commit Graph

3470 Commits

Author SHA1 Message Date
Jake.Stine cd5265edca Added Console and MenuItem interfaces to the new Plugin API design (work in progress).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2093 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-30 01:11:17 +00:00
Jake.Stine 0a4745863c Changed most instances of wxString::FromAscii to fromUTF8, which is generally more correct (may fix Issue 460, please confirm).
Rationale: FromAscii should only be used on old-style DOS/ANSI character strings that use the upper 128 characters for drawing pictures or writing umlauts, which is pretty much nothing at all as far as PCSX2 is concerned.  Chances are even the japanese console logs coming from the PS2 itself use UTF8. 

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2092 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-29 13:51:49 +00:00
Jake.Stine 7d458d583c Revamped some console log stuff.
* Added more colors!
 * VM's EE/IOP logs (the ones that come from the emulated games themselves) are colored accordingly: EE are faint cyan, IOP are faint yellow.  They're intentionally "hard to read" because 99% of the time they're meaningless trivia (but still cool since it's what the actual devs would have used for developing the games!).

Dev Notes:
 * Removed Console.Status (specify blue/green colors manually if you want them).
 * Renamed Console.Notice to Console.Warning.
 * I changed the overloads so that both char* and wxChar* versions work like printf now (no need to use wxsFormat when working with unicode strings).  I also removed wxString& versions of the overloads.  This should (I hope) also be an easier port to wx2.9 or 3.0, when that time comes.
 * Default log color is now black instead of gray; typically you'll want to manually specify Color_Gray when doing high volume logging (like the EErec's block tracking in debug builds).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2091 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-29 13:32:40 +00:00
ramapcsx2 fdde56115c The Digital Devil Saga reverb fix "fixed" too much. It's gone :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2090 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 23:44:08 +00:00
Jake.Stine 1cc740a9c0 SPU2-X: Revert Neill's x4 buffer indexers -- Fixes feedback. Update savestate version to fix prev savestates.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2089 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 14:08:25 +00:00
MattMenke b0b928d4f4 LilyPad: Minor fix for redundant initialization of critical section.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2088 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 07:06:19 +00:00
Jake.Stine 7e63cc820d LilyPad: Better fix for the stuck pad keys (Issue 458). Fully re-implemented the GS window message pump stuffs. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2087 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 06:52:18 +00:00
Jake.Stine da46df4d7c SPU2-X: More reverb work (mostly).
* Fixed some bugs from the prev rev that ended up disabling all reverb completely.
 * Expanded reverb buffers to x4, as per Neill Corlett's recommendation; this should give reverb a lot more "body"
 * Implemented what I suspect is correct behavior for EEA register handling.  When set to zero, effects are disabled.  This fixes nasty reverb and feedback loops in Digital Devil Saga.
 * Reverb down/up mix buffers are now processed even when effects disabled; fixes the reverb being cut off prematurely during the BIOS splash screen.
 * Fixed some silly clamping bugs (should fix distortion problems in some titles)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2086 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-27 05:50:50 +00:00
ramapcsx2 62d2532a1e GSdx:
- More work on the configuration, preparing for some reorganization.
- 8 Bit textures default to off again, since there are issue reports (mainly from ATI users).
- Add a gamefix that allows users to set an amount of "bad" frames to be skipped.
Add gamefix_skipdraw = x to the GSdx.ini to enable. (More work on this soon)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2085 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 15:52:45 +00:00
Jake.Stine 6032a142dd SPU2-X: Slightly better algo for the new reverb. :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2084 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 08:58:07 +00:00
Jake.Stine f016eca844 * PCSX2 paths save to ini correctly now (sometimes they'd save as blanks).
* Added some comments for the Dialogs::ExtensibleConfirmation class.
 * Removed a redundant call to PADupdate in the MTGS (not needed anymore in the single-PAD plugin design added in pcsx2wx)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2083 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 08:57:30 +00:00
Jake.Stine 16be400a71 LilyPad: Bugfixed cause of occasional hangs and lost input. Also, I've implemented an experimental fix for Issue 458 (laggy/sticky controls every 10-20 seconds).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2082 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 07:36:04 +00:00
Jake.Stine 99c62c6501 SPU2-X: (experimental) New reverb implementation using a more correct downsampler, as borrowed from "sexypsf."
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2081 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-26 02:38:27 +00:00
Jake.Stine eea8ff9767 Fix some 'o dat Linux thang!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2080 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 23:21:46 +00:00
Jake.Stine 581e8a30a7 Small bugfixes to settings handling at startup, fixed a memleak when opening multiple dialog boxes, and some other minor interface code cleanups.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2079 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 22:33:23 +00:00
Jake.Stine eae4643a40 Fix Dev/Release mode compilation errors from prev rev.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2078 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 20:05:36 +00:00
Jake.Stine a6d716b351 Replace assert() with pxAssert() in pcsx2 core and recompilers.
Rationale: assert() is not thread safe on win32 (the modal popup can block user input or hang the program), and is neigh useless on Linux (just does a DebugBreak/Trap).  Furthermore, pxAssert() registers stack traces and supports more detailed textual descriptions.  I considered just #undef/#define on the assert macro, but MSVC's assert.h also does #undef/#define so it'd be too prone to accidentally calling MSVC's problematic version if some nested header included <assert.h> (which many do).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2077 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 15:07:43 +00:00
Jake.Stine 6db222ff56 Account for GIFtag register 0xEE, which is (un)used by .hack//Infection [removes console spam].
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2076 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 11:55:53 +00:00
arcum42 f62172410f Blind commit. Should fix my last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2075 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 10:51:38 +00:00
arcum42 22c76d3ce8 Fix the trunk for gcc 4.4 (haven't looked at 4.3 yet), and add a few log changes I hadn't committed yet.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2074 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-25 04:48:16 +00:00
Jake.Stine d8ba450d9c Aligned Stack for sVU in linux/gcc (missed the .S file in the last commit).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2073 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 23:36:40 +00:00
Jake.Stine b96ab5621f Implemented Aligned Stack for microVU and superVU (mVUs is currently ifdef'd for GCC only, since implementing aligned stack for other compilers that don't automatically assume it requires some complexity and overhead).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2072 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 23:33:11 +00:00
Jake.Stine 984e79ae03 Attempt for the GCC 4.3 compilation errors introduced in r2063/2064, by selectively disabling __fastcall for the functions being used as listeners... hope it works. >_<
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2071 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 22:32:25 +00:00
Jake.Stine 1cd5e52023 wxWidgets/win32: Removed another sneaky inclusion of Windows.h into wx's global namespace.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2070 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 21:44:14 +00:00
Jake.Stine ada3d9ed8a Emitter rewrite, Part 2 of 5: Converted SSE comparisons and SSE conversions to constructor-less structs.
(also includes some header file prepwork for my next wxWidgets windows.h commit fix)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2069 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 21:43:28 +00:00
Jake.Stine beed14bfee SPU2-X: Added SVN revision info to the SPU2-X name reported back to PCSX2, so that it shows up in the plugin lists. (previously only did so in dev/debug builds, now does it for release too).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2068 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 19:18:44 +00:00
Jake.Stine 6fdaea2c79 Emitter rewrite, part 1 of 5 (or so...): Re-tooled SSE arithmetic instructions to be class/template free.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2067 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 19:06:11 +00:00
ramapcsx2 e8d858c675 GSdx: Some fixes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2066 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 18:39:36 +00:00
Jake.Stine 66d92503aa Attempted fix for GCC compilation errors in previous revision. Also:
* Removed some unused sealed class container mess that liked to cause compilation errors on GCC 4.2
 * Added a macro for efficient invocation of static recompiled code buffers.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2065 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-24 16:28:48 +00:00
Jake.Stine aa2e053366 Fix the usual myriad of Linux compilation errors.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2064 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-23 21:05:32 +00:00
Jake.Stine efc35405f8 Reorganized the exception/signal handlers, setjmp/longjmp, and SysCoreThread stuff:
* Exception/Signal handling now uses an EventSource, so that multiple handlers can be registered.  This is in preparation for (eventual) more complete MIPS TLB support in the VTLB memory model.
 * Improved code isolation, so that recompiler-specific code is primarily in iR5900-32.cpp (cleans up Counters.cpp and SysCoreThread.cpp)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2063 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-23 20:24:59 +00:00
Jake.Stine cdb2d8f276 w32pthreads: Fixed some minor bugs in the pthread_testcancel optimization I implemented some weeks ago; ifdef'd out some code that was specific to __CLEANUP_C mode.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2062 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-23 20:09:16 +00:00
ramapcsx2 2ede953125 GSdx:
- Worked on the configuration dialog, bringing in the scaler option
- Changed the DeviceSize code to use Jake's kinda better method. Fixes some odd resolution games :)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2061 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-23 14:32:01 +00:00
arcum42 06d3e01efe One last pass on the register freezing code for now, and remove the remnants of the iVif workaround code.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2060 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-22 13:00:59 +00:00
Jake.Stine 1a09a7792f Compilation errors fix: MSVC needs 'extern' qualifiers on functions declared as __forceinline, otherwise it assumes static/local scope when it compiles them.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2059 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-22 11:07:21 +00:00
ramapcsx2 6a2cca9795 GSdx:
- The Xenosaga fix was wrong, this is better.
- Disabled the pitch conversion code, it's too broken to be used :/

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2058 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-22 01:52:41 +00:00
arcum42 537801e466 Just cleaning up the changes in r2056 a bit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2057 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-22 01:35:58 +00:00
arcum42 8e493ad2d2 Revamp the FreezeRegs functions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2056 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-22 01:20:22 +00:00
ramapcsx2 fb2169f64d GSdx:
Added a somewhat more accurate upscale option via GSdx.ini. Not tested much! :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2055 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 22:57:20 +00:00
Jake.Stine e4330ee0ee Reintegrated 'aligned_stack' branch. General summary [interesting to Devs only, really]:
* EEcore recompiler aligns the stack on entry for all platforms.
 * IOP recompiler aligns stack for GCC/Mac by default (can be force-enabled for all platforms via compiler define)
 * Added setjmp/longjmp to the EEcore recompiler, used by GCC to exit the recompiler in efficient form (Win32 platforms use SEH).
 * aR3000a.S and aR5900.S removed and replaced with x86Emitter generated dispatchers.
 * All C functions called from recompiled code use __fastcall (simple, fast, retains stack alignment in neat fashion)


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2054 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 21:16:07 +00:00
Jake.Stine d0ffa6bbc0 aligned_stack: sync with trunk, preping for merge.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2053 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 19:38:22 +00:00
Jake.Stine 1cb9a908e8 Why didn't I think of this sooner? Added a pre-alpha announce when starting PCSX2 0.9.7 for the first time.
Also: Minor fixes to the console logger (Win7 report of corrupted cursor)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2052 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 19:19:12 +00:00
Jake.Stine 5b279e629d GSdx: Fixed a memory leak in m_weavebob when changing interlacing modes (same thing that caused the m_merge leak -- I chose to delete instead of recycle since I doubt the texture would be useful for anything besides the 1-time interlacing setup, so no point cluttering the pool with it).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2051 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 13:06:41 +00:00
ramapcsx2 81bdda2d27 GSdx:
Fix Xenosaga 2 and 3 fog effect, not sure it's handled correctly but at least it's handled.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2050 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 12:36:32 +00:00
Jake.Stine f172829737 aligned_stack:
* Added -fno-strict-aliasing to the ever growing list of gcc optimizations that can potentially cause perfectly good C code to generate entirely broken results.
 * Removed the preferred-stack=2, since this branch *should* run fine without it now.
 * Have Release builds in Linux SIGKILL when encountering an unexpected SIGSEGV.
 * Fixed some deadlock issues with the new console logger (it introduced cancel points, which is a good thing!  unless you're the EE recompiler and you swallow up any attempt by GCC to cancel a thread)
 * Compilation error fixes.

git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2049 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 08:57:05 +00:00
Jake.Stine 51999656ab aligned_stack: Implement full compliment of stack alignment options for the IOP (untested in gcc/linux yet); and fix a compiler error in MSVC.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2048 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 07:10:30 +00:00
Jake.Stine 54f8f33257 aligned_stack: Linux has never worked so well!
* made a workaround for some obscure GCC templating bug
 * Fixes the assert from PersistentThread when starting the emu

git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2047 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 02:23:42 +00:00
Jake.Stine 00461fdac6 aligned_stack: synced with trunk, to bring in the new console code for additional testing under a (properly working!) linux.
git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2046 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-21 01:25:55 +00:00
Jake.Stine 3e1c1f939c aligned_stack: Finished conversion of all CALLFunc and _callFunctionArg1 functions to aligned-stack safe __fastcall invocations; only IOP's psxExecute and dispatchers remain to be done. (rev is fully functional in this state tho, on win32 at least)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/aligned_stack@2045 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-20 20:02:07 +00:00
Jake.Stine 43bac9c6a9 Brand new approach to console logging, should be a lot more efficient, and is relatively deadlock-free. Also fixes most of the scrolling issues from prev versions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2044 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-10-20 19:34:57 +00:00