Commit Graph

2641 Commits

Author SHA1 Message Date
cottonvibes 6b5e302f82 microVU: fixed 2 bugs in my preserve sign clamp code thanks to nneeve
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2317 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-06 09:13:57 +00:00
cottonvibes b866ff405e macroVU: Run vu0 on certain cases of recCTC2() like sVU's COP2 code does... this fixes Rachet and Clank's title screen's sps...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2316 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-06 06:13:01 +00:00
cottonvibes 316e7ffccc microVU:
- Added microVU_Clamp.inl to the project file which holds all of mVU's clamping routines.
- Added tmmk's optimized clamping method for sse4 (preserve sign clamp mode only) <-- untested
- Not using regalloc for preserved-sign non-sse4 code anymore since it seems to be bugged (thanks to nneeve for pointing it out)
- Extra mode was using preserve-sign code before; but changed it now to never preserve nan sign...
- Fixed a bug in extra clamp modes where it was clamping all 4 vectors on SS SSE instructions, destroying upper 3 vectors...

After these changes the compatibility of extra / preserve sign clamp modes have gone up.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2315 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-06 01:49:40 +00:00
arcum42 e01cfedd2b New dialog for internal hacks.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2314 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-05 09:40:32 +00:00
cottonvibes 3fcd2c9aee microVU: Implemented 'extra' clamp mode (it was doing the same as 'normal' before)
Note:
What extra clamp mode does is whenever an SSE ADD/SUB/MUL/DIV instruction is used in mVU, it will have its operands clamped.
Currently seems to cause sps in some games instead of fixing it...
There might be some reason for it that I'm not aware of yet, or it could be 'random' based on what a game is doing.

A quick explanation of what mVU's clamp modes do:
None   - Does no clamping (fast)
Normal - Clamp certain instructions which have proven to fix games
Extra  - Clamps every SSE instruction (slow)
Extra + Preserve Sign - Same as extra but preserves sign of the NaN (super slow)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2313 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-05 09:30:38 +00:00
cottonvibes cbc4ee26f6 microVU: added a flag to tell when its in COP2 mode.
macroVU: some clamping that may fix the ICO camera bug (not tested)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2312 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-05 09:04:20 +00:00
cottonvibes 7532c2969e microVU: Reorganized some clamping stuff...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2311 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-05 08:33:02 +00:00
arcum42 cf21dbf992 Get rid of Tags.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2310 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-05 08:13:04 +00:00
arcum42 1b42c82faf A continuation of what I was doing in r2305.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2309 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-05 08:01:00 +00:00
ramapcsx2 5ff94743c1 Disable Vsync when using the F9 renderer switch.
Explanation why in the source :p

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2308 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 22:37:20 +00:00
ramapcsx2 a97e97fbc6 GSdx:
- Let's use dx10 software rendering for the F9 renderer switch, if it's available.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2307 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 21:16:06 +00:00
Jake.Stine a6b00be571 Potential fix for Issue 495: missing keyboard handler in Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2306 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 14:30:13 +00:00
arcum42 8a4d58ff76 More Tag stuff, mainly in Gif and HwWrite.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2305 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 07:01:27 +00:00
arcum42 9736b4b854 And, as usual, Gcc makes me want to throw things...
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2304 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 05:18:07 +00:00
Jake.Stine cb066785cf Configuration panel code cleanups; supports slightly better handling of on-the-fly settings changes.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2303 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 04:52:15 +00:00
Jake.Stine 2675957851 GSdx: Implement DX9 "on the fly" vsync enabler/disabler, and fix some dx9 vsync bugs in legacy gui (hopefully)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2302 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 04:50:49 +00:00
Jake.Stine a3dee78c6c GSdx: Fix some vsync enable bugs. Add "GSsetExclusive" API, which is meant to be a hint for setting exclusive fullscreen mode in DX10 (no plans to support it in DX9 due to complications that would require significant changes to DX9 resource management).
I don't have DX10 so this is (as usual!) untested.  I'll be adding support for it to PCSX2 soon.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2301 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 03:24:59 +00:00
arcum42 3092808d04 Let's try that again.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2300 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 01:00:24 +00:00
arcum42 1dc47d5215 Compilation fixes for Linux.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2299 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-04 00:25:07 +00:00
ramapcsx2 60fd4beb5f GSdx: Small fix.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2298 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 23:30:59 +00:00
Jake.Stine 620c93cad7 Minor fixes for new framelimiter; add proper w32pthreads/gsdx dependencies to the MSVC solution.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2297 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 23:10:23 +00:00
Jake.Stine 97041701ae GSdx: SW rasterizer converted to use pthreads semaphores in the place of spinwaits. Performance mileage will vary on this; probably favors dual core machines over quads or i7's. Some tinkering might ink some more fps out of it and get it to be a speedup in all cases though.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2296 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 23:08:52 +00:00
Jake.Stine 2413af5b6e w32pthreads: Removed some unneeded cdecl specifiers on non-exported functions.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2295 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 23:05:49 +00:00
Jake.Stine 1e431fb69a wtf? A working framelimiter? Turbo and slowmo hotkeys? Frameskipping?! Why it's all here! Rejoice! And then find lots of bugs, too, I'm sure. Note: Frameskipping has no gui stuff yet... I'll do that soon.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2294 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 15:51:39 +00:00
Jake.Stine 9675fe8108 Add a vsync callback to GSdx, managed by PCSX2.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2293 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 15:49:12 +00:00
arcum42 271c7f7299 Minor fix for r2291.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2292 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 13:46:11 +00:00
arcum42 6d99798fad Start actually using tDMA_TAG. (IPU.h now uses it, and all the transfer code got moved to it.)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2291 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 13:01:17 +00:00
ramapcsx2 8d5caa300d Some more warnings enabled by default in devel builds.
It'll be good to know which games trigger these.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2290 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 12:06:39 +00:00
arcum42 ecabd7ff4d A new DMA tag structure.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2289 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-03 02:33:30 +00:00
Jake.Stine c42be1e8f6 Stupid SIF hack tricks 101. Class at 11am.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2288 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-02 15:18:24 +00:00
Jake.Stine 546d79bf4d yay sif hack mess fix
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2287 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-02 14:46:15 +00:00
ramapcsx2 ab2b0bc8d2 Another fix to the hack. Yea. :p
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2286 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-02 14:44:01 +00:00
ramapcsx2 5c0cbea1c2 Fix compile errors from last commit.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2285 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-02 14:33:13 +00:00
Jake.Stine 0f9a600cbd Fun little hack for Rama to play with, that should simulate the magic power of the PEOPS SPU2's "unstuck iop" spell.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2284 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-02 14:21:54 +00:00
ramapcsx2 f1f6236a02 GSdx:
- Re-enable the D3D10_CREATE_DEVICE_SINGLETHREADED flag, since it seems to be stable again.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2283 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 16:16:48 +00:00
Jake.Stine 97d52323d1 Implements support for Alt-Enter fullscreen switching, DX9 only! DX10 is still broken, will stay that way until some clever person figures out how to make it work. I've make some comment guidelines in source (see MTGS.cpp).
... also, it's possible DX10 fullscreen will work if bound to, say, Shift-F9 (ie, something beside alt-enter, which DX10 decides to wrangle full unrelenting control of, without our explicit consent, and needs some 20 lines of random COM chaos to disable).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2282 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 15:33:56 +00:00
Jake.Stine 62384ea56a GSdx: Remove some DXGI stuff, which is being moved to PCSX2.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2281 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 15:31:31 +00:00
arcum42 4bdb1e1dee Intercept calling the Patch configuration dialog until we actually have one.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2280 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 14:32:20 +00:00
Jake.Stine a34c09fe01 GSdx:
* Disable GSdx's internal AspectRatio setting when using GSOpen2 (pcsx2 0.9.7 controls aspect ratios internally now)
 * DX10 should be able to startup in fullscreen mode now, without needing to hit alt-enter (legacy 0.9.6 versions only)
 * Added some comments for a failed attempt to disable DX10's default Alt-Enter behavior.  If someone knows how to do that properly, please feel free to submit a patch because DX10/Com breaks my mind. (see GSDevice10.cpp)
 * Remove DX11 for now since it's entirely unfinished anyway.


git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2279 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 05:59:43 +00:00
Jake.Stine 3dfdf5029c Lilypad: bugfix for crashes when used with pcsx2 0.9.6
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2278 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-12-01 05:13:38 +00:00
Jake.Stine 1ea29b0e62 Lilypad: Implemented full support for child-window GS viewports (fixes windows messaging being broken from the prev rev).
DevNotes: The main change here was to turn WndProcEater into a class and create multiple instances of it, so that it could manage the WndProcs for multiple windows concurrently.  The "frame" (top-level window) gets a WndProc that sets title and handles screensaver/alt-enter hacks.  The "viewport" (provided by PCSX2) gets the usual keyboard input handler WndProc.  Config buttons also have their own WndProc that avoid fuzzy logic conflicts with the other two.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2277 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-30 20:52:09 +00:00
Jake.Stine ee4d5075db project file fix for devel and release mode targets
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2276 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-30 03:03:04 +00:00
Jake.Stine 64c12f5a7a Video/GS Window and Panel Options (partly!) implemented:
* Aspect ratio and mouse cursor hiding features should be mostly functional.
 * Mouse cursor by default hides after 1.75 seconds of inactivity, when in the area of the GS window.  Can be forced to always hidden in the control panel.  Unlike the liilypad hack, this one won't hide the mouse in the main window or title bars.  (and it should work for Linux too!!)
 * GS window position and size should be remembered between sessions.

Console Logger window z-order is now "bound" to the main window.  When clicking either window to bring it to focus, the other window follows (implemented for Win32 only, since wxWidgets doesn't have a cross-platform implementation of the necessary SetWindowPos call).

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2275 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-29 22:50:55 +00:00
Jake.Stine 45ca512437 wxWidgets/Win32: Re-introduce wxWidgets resources for blank mouse cursor (actually never existed in our packaged copy as originally borrowed from Dolphin).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2274 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-29 22:46:45 +00:00
arcum42 867bc0fb17 Simplified transfers. Removed some extraneous code, and moved some enums to Dmac.h.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2273 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-29 14:06:38 +00:00
arcum42 80f99f09d6 Let's not override WriteText in Linux for the moment.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2272 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-29 03:49:12 +00:00
Jake.Stine 740777ec1e Maybe better console log behavior when dragging scrollbars; move some code out of ConsoleLogger.cpp into new files to reduce clutter and mammoth file size.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2271 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-28 17:16:10 +00:00
ramapcsx2 97332663c2 GSdx:
- Let's try that pixel cropping again. Hope it doesn't blur ffx this time.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2270 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-28 15:46:51 +00:00
Jake.Stine 295d751f4a Using the Console Log scrollbars to read back history will automatically throttle emulation temporarily, until the scrollbar is released.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2269 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-28 15:44:33 +00:00
arcum42 b0db54ae35 Merging LSNtoMSF and lsn_to_msf reversed the order of the results in one spot. Change the order back.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2268 96395faa-99c1-11dd-bbfe-3dabce05a288
2009-11-28 10:51:17 +00:00