arcum42
59e37dad4b
Prevent t2reg from having a chance of being assigned to the same register as t1reg. Turn FPU_ADD_SUB_HACK off for 64 bit builds.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@432 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
1bb944821c
FPU Extra Overflow Clamping should be more accurate now. it should be the best mode for all games, but of course theres always those picky games...
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@431 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
9663ba4a83
fix for last revision.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@430 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
49cf52a0ab
added Nneeve's (q.w.e.r.t.y) fixed add/sub code. its on by default, theres a macro to turn it off. just set FPU_ADD_SUB_HACK to 0 to use the old way.
...
and i think i know a way to improve fpu clamping, i'm going to try and code it for my next update.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@429 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
arcum42
d2aabc8c2e
Clean up some Vif debugging code.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@428 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
arcum42
9f00a6ac66
Stop pcsx2 from crashing in Linux if a plugin is missing.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@427 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
89e18b2aa2
small VU optimization, and reverted the recent FPU changes. the reason being that they failed my test program, but old versions worked. if it fixed games, it was just a random occurrence; and it could just as easily break games (just that we haven't tested enough).
...
we might add the code as a special gamefix later.
Below is the ps2 code that failed with the latest build, but worked with earlier builds.
Notice the differences between the output of a real PS2 vs PPr423.
-------------------
float x = 1000000;
float j;
int z;
for (j = .3, z = 0; z <= 5; j*=j, z++) {
x-=j;
SysPrintf("%d \n", x);
}
--------------------
ps2 output:
999999.687500
999999.625000
999999.625000
999999.625000
999999.625000
PP r423
999999.750000
999999.687500
999999.687500
999999.687500
999999.687500
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@426 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
Jake.Stine
5a317846a5
Mostly added comments to some code. Also added a "safety" set of FreezeXMMRegs calls to gs.cpp, in a spot of code that should always be called from a frozen register state anyway (but better to be safe).
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@425 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
arcum42
be9d0ea954
Add a bin directory, with the normal files associated with it.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@424 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
ramapcsx2
6848cb6ff6
FPU again... This time it should work for all games. Thanks to q.w.e.r.t.y.1.2.3.4.5.6.7.8.9 (longest nick ever? :p ) for the precise add / sub implementation.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@423 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
arcum42
f77724d1fc
Tweak the Linux build to allow for local ini files and custom cflags.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@422 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
ramapcsx2
f0f68b1fe1
Reverted all changes for now :( The roundmode approach is fine for the ADD and SUB opcodes, but without fixing all arithmetic opcodes, we'll still get wrong results. As usual with pcsx2 the last commit made some games worse due to that...
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@421 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
ramapcsx2
c41edc94c2
Huge precision improvements for FPU. Add and Sub now calculate the same values as on the ps2. Mul is now closer to the ps2.
...
This commit fixes Tales of the Abyss, Rogue Galaxy and possibly many others :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@420 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
ramapcsx2
c12cb2c9ac
New logos and other misc changes.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@419 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
09e87e81c7
fixed a typo from r416 (code should never be run anyways, but just in case :p)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@418 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
629f628300
minor FPU opcode change.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@417 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
77a83aa5e7
minor changes
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@416 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
181dc6b04a
some FPU Compare opcode fixes. might fix some games that 'hang' waiting for certain conditions that never happen.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@415 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
cottonvibes
1a72fff008
fixed the other FTOI opcodes. they should all work perfectly now.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@414 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
cottonvibes
0a953edc88
more recVUMI_FTOI0 changes. should now return proper saturation.
...
too tired to fix the other FTOI opcodes today.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@413 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
71d9534e3f
Change most of the macros in MMI.c over to functions.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@412 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
9863f8095d
Sync with r410 for Linux. Give that GIF Warning that I get to see over and over again on the console a line break.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@411 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
c228e982cc
A couple minor GUI bug fixes: - DaZ mode is now disabled for SSE1 CPUs, preventing a crash when trying to OK the setting or run the Emulator with default settings. - Emulator no longer tries to run games when a BIOS hasn't been configured (usually led to a crash).
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@410 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
drkIIRaziel
43720a2d27
--fixed recCVT_W opcode saturation: now it gets correct results and its faster :p --fixed recVUMI_FTOI0/recVUMI_FTOI4/recVUMI_FTOI12/recVUMI_FTOI15: it does saturation now, but its still not 100% correct.Returns 0x7FFFFF80 instead of 0x7FFFFFFF.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@409 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
drkIIRaziel
d5270d22e7
--svn:eol-style=native, part2
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@408 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
drkIIRaziel
4c3679c96f
--Added svn:eol-style=native on svn properties
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@407 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
ramapcsx2
89befbf22c
SPU2Ghz: Readjusted initial volumes. These give correct volume levels for fmv, ingame sounds and speech. Boost volume is still not recommended but the default volume seems loud enough already :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@406 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
ramapcsx2
3db3e080f1
SPU2Ghz: Second part of the volume quirks update. Thanks to Gigaherz for fixing the core reset functions.
...
Note:
The plugin is now louder by default, so check your volume boost setting and disable it.
If the game is still too quiet, you can re-enable it again :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@405 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
7200d88431
Much to Guesseous distress, I have once again overlooked something small and obvious in my last commit. If I were using a table saw I'd be missing my arm at the elbow by now.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@404 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
b938d41e2b
SPU2ghz: Minor tweaks to the mixer that should help get rid of overflow problems. This is the first part of a 2 part commit that should help correct some old-timey volume inaccuracies in the plugin.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@403 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
2110a33996
Dah! A little snippet of debugging code made it into the last commit, which would have most assuredly broken any attempts at running the emulator. -_-
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@402 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
479795370e
Bugfix: SIO's DMA-Out cycle timing was way off the mark, and sometimes caused games to "lose" some SIO-related interrupts.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@401 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
7b2868c47b
Move various things that should be in Mdec.h there, rework the defines in VUflags.c to functions, put in 64 bit versions of the Interlocked functions I previously #if 0ed, some cleaning, and, not least, make it so Linux compiles after r399.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@400 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
f7fc484e58
MTGS now force-freezes all XMM/MMX registers prior to kernel calls (Sleep/SetEvent), because some versions of Windows and drivers like to muck with them.
...
FreezeMMXRegs / FreezeXMMRegs now track freezes and thaws, so that nested freezes won't end up unfreezing registers too early anymore. Plus several code cleanups and ugly macro removals to a handful of other modules.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@399 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
8ccd60b450
Minor Linux code cleanups.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@398 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
cottonvibes
3568b5cd1a
something drk||Raziel found that I forgot to commit. not very important, only effects non-MTGS/DC modes.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@397 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
64ca08f02f
Don't try to close non-existant threads. Prevents a crashing bug in Linux
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@396 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
d01a9c6918
Temporarily block out two functions that are not being used that cause the debug version not to compile.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@395 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
drkIIRaziel
1753d21df4
--Fixed some problems on the win32 threading code, handle can be NULL, the error value is INVALID_HANDLE_VALUE. --Don't call GS_SETEVENT from CSRwrite, because it calls SetEvent and thats a kernel function that sometimes corrupts the contents of the xmm regs.Since CSRwrite is called directly from the dynarec context without flushing the xmm regs that can lead to register corruption :p.Fixes PAL FFX on my pc [got broken on 376 and up]
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@394 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
b8e4a35de6
Major Fix: Found and fixed a big vmhack / COP0 bug. This should fix several games, including those in Issue 49, Issue 58, and possibly Issue 59 as well (testing of those issues and a confirmation is needed).
...
Code cleanup to iHw.c : Removed some rampant abuse of macros and quite a bit of unnecessary code bloat.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@393 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
e8366b171a
Tweaked frameskipper slightly. Behaves better when using 4 or higher as a skip setting (frameskip settings 0,0,2,4 for example)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@392 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
arcum42
389d42d83b
Various Linux cleanups to match recent Windows commits.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@391 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
3696028dbe
Fixed frameskipping when using a strict framerate setting (minfps==maxfps). The setting is ideal for users playing high-fps games as it allows you to disable the timestretching on your SPU2 plugin. :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@390 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
10ea6b9c05
Grr... accidentally left in a dud line of code that broke MTGS completely. :/
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@389 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
209e073b44
Working on a special end case scenario with the frameskipper, when minfps==maxfps (using 50/50/0/0 as frameskip settings, for example). Previous versions would skip constantly. This version is better, but maybe could be improved yet.
...
Also: Changed default frameskip options to be a little more aggressive. When using zeros (defaults) skipping starts around 95% instead of 90%. (57fps NTSC and 48 fps PAL). This seems to work a lot better with the new frameskipper. :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@388 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
61508452e7
Fixed frameskipping when using default framefate settings (it wouldn't skip until games got REALLY slow, heh). Win32: Fixed BIOS settings saving in the Configuration dialog. (rama)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@387 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:29 +02:00
Jake.Stine
9f70fb2612
Stabilized the framelimiting part of the frameskipper.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@386 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:28 +02:00
Jake.Stine
233559de5c
Repairing a minor foopah in my last commit.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@385 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:28 +02:00
Jake.Stine
61e983b695
Improved frameskipper when running under MTGS mode, by moving it from the EE thread to the MTGS thread. Also got rid of some highly unnecessary recompiler code in iGS.cpp. Register writes to SMODE1/SMODE2 now fall back on the new modeset code in GS.cpp. (that code is entirely *not* speed critical, and maintaining a bunch of rec code for it wasn't my idea of a good time).
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@384 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:28 +02:00
Jake.Stine
bc08e7397b
SPU2ghz: Improved "on exit" stability of the XA2 driver on WinXP machines, by covering up for things the driver is *supposed* to do itself (but apparently does not, in WinXp at least).
...
Also fixed a Pcsx2 compilation error when trying to enable the experimental IPU speedhack.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@383 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:28 +02:00