Jake.Stine
274c92b832
Hopefully fixed Linux/GCC compiles of vtlb.cpp with this update (should be no functional changes for Win32 users)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@465 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
c8e246fbfe
Fix everything else in Linux except for vtlb.cpp. Compilation is still broken, though.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@464 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
cottonvibes
f137821d9c
minor FPU min/max opcode fix. minor VU Clip opcode fix.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@463 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
cottonvibes
786eeee503
improved "Extra VU Overflow Checks" mode. this fixes the garbage in some tracks on GT4.
...
note: the game is still broken from r448, but you can use a saved-state to get past the intro where it hangs for now.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@462 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
26dfd9846c
Fix a bunch of compilation errors in Linux. (It still doesn't compile, but I wanted to commit these before more changes are made...)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@461 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
gigaherz
a946fad125
Hackish-fixed the crash when you run a game through run->execute in release builds. Some code is corrupting ebp and not preserving it, so I made execute() do that instead. Put a nice fixme in there in case anyone is worried. :p
...
Yes you read the nickname correctly.
Yes I did take the time to fix a problem in pcsx2.
No you are not dreaming, I was bored.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@460 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
Jake.Stine
0123e80888
Merged drk||Raziel's new VTLB codebase into Playground. It's a faster and more stable replacement for the old TLB build. It lacks the full suite of recompiler optimizations, so don't get too excited (yet). It'll get better though. :)
...
Important Note: VM and VTLB saves are incompatible!
Also in this revision: Part 1 of a major code cleanup to the EE recompiler. Adding namespaces and better/safer scoping, and the Standard, Special, and MMI instructions work through a single structured opcode table now. (other instructions will follow suite when I have the time).
Fixed some sloppiness in the R5900 disassemblers. Those also need more work yet.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@459 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
77392f06a7
Fixing linux build after 457, as requested. :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@458 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
cottonvibes
54b02f0f21
cleaned and organized some VU files; the big change is that i separated lower/upper instructions into their own files. still room for more cleanup/organization that i'll continue to work on.
...
linux builds will need to remove iVUmicro.c, and add iVUmicro.cpp, iVUmicroLower.cpp, and iVUmicroUpper.cpp
hopefully arcum42 will fix them soon :p
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@457 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
ef5d9a291d
Quick fix to r455 before I go to bed.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@456 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
93a4efc619
Add a few scripts for convenience.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@455 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
13fa966fa5
General cleanup. Get rid of some compiler warnings, change or correct a few messages, and remove a few unused variables.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@454 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
cottonvibes
5d14c71dfb
this might fix some vu1 memory overflow problems. not sure if it fixes Guitar Hero World Tour since i don't have the game, but if it doesn't then the problem lies elsewhere. also small cleanup of the files modified.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@453 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
7ade42c90c
Update the Linux gui to be in sync with recent changes. Make some chars const, to match what they are used for, and get rid of some annoying warnings.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@452 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
6ce0909c3a
Fix the Linux 32 debug & devbuild versions as well.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@451 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
f33d716691
Fix 32 bit Linux port. All _inlines are now __forceinlines.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@450 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
cottonvibes
a944a963d4
deleted some unused stuff, and fixed a VU bug that probably caused garbage in some games. i had originally done some major cleanups, but i made a bug somewhere in my code, and i couldn't find it, so i had to revert ><
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@449 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
ramapcsx2
7730d4a66d
Jake found the real problem with Tales of the Abyss. The cdvd seek command should take considerably longer than a normal block read. Added a fixed value for now (might include sector differences later), that gets rid of the vmhack crashes in that game.
...
Slightly adjusted the new cycle counting to better match the ps2 speed (Still not done yet).
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@448 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
Jake.Stine
cb79658661
Fixed VS 2008 Express compilation errors by changing afxres.h to afxresmw.h in pcsx2.rc. Added missing cycle ratio mods to some load/store instructions, and set up the cycle ratio mod to be a little more tweak-able.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@447 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
Jake.Stine
1a02e88997
Added somewhat more "accurate" cycle timings, by weighting mul/div and load/store instructions to more closely match typical/avg cycle counts for those instructions on the PS2. In addition to helping fix some obscure timing glitches, it also allows the emulator to run a little more efficiently. True accuracy is impossible since we can't realistically emulate the MIPs superscalar 8-stage pipeline, branch predictions, or data cache hits/misses. But at least the "average" cycle timings should be a little closer to the real thing now.
...
Improved stability of both EE/X2 and EE/X3 sync hacks. In particular, some FMVs that broke under the X2 hack should work a bit better now, and the X3 hack should behave a lot better now too (but will still break pretty much any FMV/audio sync).
X2 sync hack performance also improved, by maybe 6% or so.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@446 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
Jake.Stine
6696e776e5
Moved the default .sln file to a more convenient location. Maybe not more appropriate, but certainly more convenient. ;)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@445 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
Jake.Stine
8ebcc4c442
Added comments for my previous VU0 sync fix, along with some other code cleanups.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@444 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
ramapcsx2
1b8cd7c055
Enabled the slow dvd gamefix again. It makes Tales of the Abyss crash way less (no crashes encountered with it yet). We plan to fix this properly soon, once the real issue is found :)
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@443 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
arcum42
a4404b9515
Resolve compilation errors in Linux. Leave pages of linker errors.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@442 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:31 +02:00
Jake.Stine
41df49b70d
Improved EE/VU0 sync -- fixes 'new stage' crash in Naruto Ultimate Ninja 2 (part of Issue 58). Also rolled back some troubleshooting code that made it's way into the previous update.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@441 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
Jake.Stine
77f46f454e
Fixed a problem with EE's hsync-mode counters. They weren't detecting overflows and targets accurately. This most notably fixes several issues in Tales of the Abyss. Fixed debug mode build, it no longer causes an assertion immediately on starting a game. Removed the final warning from the new C++ build, and cleaned up some code along the way. Deleted the old SSE2EMU functions, which are no longer used since removing SSE1 support from the recompiler a while back.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@440 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
533a16116a
fixed a compiler warning, and removed the 2 'flag' speedhacks. no game seemed to need them; and i think i remember someone said it breaks a game.
...
by 'remove' it means that they act like they're always ON.
i.e. Overflow flags aren't set for calculations, since i've only seen this hurt games. (most likely due to the ps2's floats being able to contain twice as much values before overflowing; it also could be a problem with other opcodes not 'reseting' the overflow flags when they're supposed to.)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@439 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
Jake.Stine
96fb132655
Created a BSCPropagate class and cleaned out the #define mess in ir5900tables.c. Fixed TLB build compilation errors. Cleaned up some of the headers and #includes use.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@438 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
cottonvibes
e0fc41331e
fixed a warning in ir5900tables.c not 100% sure its correct, but it looks like what was wanted :p
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@437 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
ramapcsx2
1f63354774
Team decided to axe 2k5 project files :p
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@436 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
Jake.Stine
6ec2864e5e
Converted codebase to use the C++ compiler. The C++ option is force-enabled through the project files manually, instead of renaming files to *.cpp (files may be renamed at a later date).
...
Note: VC2005 project is currently broken, as is the Linux build. Both will be updated soon.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@435 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
ramapcsx2
fba8545c8e
Fix for the better FPU clamp, thanks to Zeydlitz.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@434 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
arcum42
89eea7c1fb
Let's not use -fomit-frame-pointer for the moment.
...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@433 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:30 +02:00
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