Commit Graph

270 Commits

Author SHA1 Message Date
cottonvibes 3774eedbae some fpu interpreter changes...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@170 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
cottonvibes 34a196376b made the code i commented-out in r167 work correctly. games that had problems when the "disable underflow" speedhack was left Un-Checked, should now be fixed.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@169 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
cottonvibes e5ca03fc17 nasty error... i was clamping incorrect reg-vectors in recUpdateFlags(), so this could have caused problems...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@168 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
cottonvibes 0875c6ef55 commented out some code for now. now, i know why leaving "disable underflow speedhack" unchecked sometimes breaks games.
i'll have to fix it later, but for now the speedhack is always on (this is more compatible)

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@167 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
cottonvibes a85045b60f according to psxAuthor, branches wrap around when the result is less than zero; so i'm trying this. should fix some possible graphic problems/errors caused by incorrect VU branch addresses...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@166 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:23 +02:00
cottonvibes 9e850224c2 forgot to change this...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@165 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes ee5d3d02fb fixed possible allocation problems...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@164 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes ac7da51968 fixed some possible allocation problems... Fixes rockstar games that were broken in the last revisions..
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@163 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes a7a53d6205 very minor change...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@162 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 56255ae461 reverted something i commented-out along time ago.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@161 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 842b472a40 re-recoded the VU div opcode lol. now its more efficient, faster, and 1/6 the size :D
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@160 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes ae714c14b3 fix for last revision.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@159 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 55879992d8 some cleanup... this file is a mess...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@158 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes c3f5932904 optimized some retarded code...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@157 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 8039cdd8b7 Corrected a bug in a memory write function. Thanks to drk||Razi for spotting this one.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@156 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 937f8835c5 should fix x64 build compilation problems...
Note:
seems iR5900-64.c is pretty much a copy of iR5900-32.c just with a few x64 specific changes...
so any code-change made to iR5900-32.c will have to be mirrored to iR5900-64.c... sigh pretty annoying...

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@155 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes fe00d7871c minor change: lets x64 build use FPU interpreter if the processor doesn't support SSE...
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@154 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 42ce99eb21 major code clean-up for FPUs, removed alot of old/useless code, and organized stuff better. trying to clean-up pcsx2 a bit..
*note: FPU reg caching is always on now; which means you need a SSE processor to run the FPU recs, if not it will just run the interpreter code instead (not really a bad thing, the int-code isn't much slower)

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@153 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes e961ab6591 minor fix for linux.
btw, we have a new member on the team, drkIIRaziel :D
he's one of the author's of nullDC (a dreamcast emu) so this is good news :p

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@152 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 e6162687c1 One more inline hint and (hopefully) fixed Linux (again :p)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@151 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 88ea5fb921 messed around with some DMA functions, might fix DMA errors. GIFdma should also be faster, since now it only freezes MMX and XMM regs when it needs to. also did some very minor code cleanups.
p.s. GIFdma() is a mess, it needs to get cleaned-up in the future.

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@150 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 7a70299529 more inlining hints, more speed :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@149 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 1480f022b3 forgot those
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@148 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 c9d64d63e9 SSE opcodes now all inlined. Changed all new inlining hints to _inline.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@147 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 d477c720e7 Modified opcodes headers and files so all functions use __forceinline now. This brings a nice, free speedboost of about 5% in all games :)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@146 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 437ac552f1 Changed pDsp so it *should* compile fine under Linux. (Can't test this :p )
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@145 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 c7ab67d8ce better x64 fix
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@144 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 ad1f8a9e0f -Odd bug on PsxHw.c -Added "FreezeXMMRegs" before recompiling psx code in places that had that missing. (Fixes x64 builds a bit)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@143 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 69e59aee38 Converted 64bit VS2k5 project files to VS2k8 and put the same optimizations as in the 32bit version.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@142 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 4a1fbd5279 reverted last revisions to prevent possible syncing problems/crashes.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@141 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 5eb9108814 The last update was too aggressive, some games didn't save states anymore. This does nearly the same, but saves work again.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@140 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 4b192421b1 Commented out gsWaitGS() code, which stops and syncs the gs when loading/saving savestates and also when some Vif counter is (supposedly) too big.
This helps regain audio after loading a savestate with ZeroSPU2 and a few games run faster
(Dragonquest 8, Dawn of Mana, Final Fantasy 12).

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@139 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 4d1280c69b speedhacks now have "compatibility" and "speed" profiles to help avoid confusion.
compatibility mode: most games will work with this setting.
speed mode: fast settings, will break games.

note:
some games will still require manually tweaking the hacks. GT4 for example needs "Extra VU Overflow Checks" (greyed checkbox)
but the majority of games should work with "compatibility" mode.
there are also some odd games that will work better with "speed" mode, Rogue Galaxy for example.

anyways, hopefully these profiles will help avoid confusion.

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@138 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes e7bc472969 took me a while, but i managed to do some nice recupdateflag() optimizations :D
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@137 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes d3764fc97d minor change: some "vu overflow checks" were only being called when "disable extra vu flags" was disabled. the 2 speedhacks should be independent of each other.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@136 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 94d0e20d26 minor change: small optimization and fixed a typo.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@135 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 b0c4145950 Corrected the UpdateVSyncRate functions to properly set a NTSC framerate of 59.94fps. When framelimiting is enabled on NTSC games, the SPU2 plugin now does not need to stretch constantly.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@134 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 7509047e20 very minor changes
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@133 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes dd53f35d36 minor FPU changes
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@132 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 5c2c09caf0 Rule Of Rose now works with the FPU recs :D
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@131 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 0bab1b1e8c changed the way the slowdvd gamefix works.
the slowdvd hack makes dvd reads at 1x instead of 4x speed.
this is untested, i think it should help TOA just like the old method.

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@130 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 6c8ed786d6 Better "Slow DVD" hack. Now fixes ToA and Digital Devil Saga (one video only though :p)
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@129 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 27c5c735ad "Fixed" the slow FMV in games that use cd-read, also Xenosaga's Intro FMV works again. Note: dvd and cd readspeeds are not emulated correctly. Needs more fixing.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@128 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 40aae5a70e ugly error, pcsx2 was reading cds as dvd's sometimes. so it was reading them 9x faster than it should be lol.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@127 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes f5f27e83dc optimized the cd-read algorithm by removing extra un-needed variables. it still does the same thing though :p
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@126 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes c3b21e8af0 minor change.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@125 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
cottonvibes 73c15f56bd fixed a possible zerorec branching error.
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@124 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 8edd66c662 Added hacks to VU interpreters, only accessible via source. Note: these hacks are more like a reference, they help show what makes interpreters so slow. Most games break with these enabled, but my testing game is fine. Speedup in it is about 30%.
Note2: I'll remove these hacks, once interpreters are fast enough.

git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@123 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:22 +02:00
ramapcsx2 79d632c69b small problem that always bugged me..
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@122 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:21 +02:00
cottonvibes 6f1fa0ec7a some changes, should be a bit faster with "disable extra VU flags" checked
git-svn-id: http://pcsx2-playground.googlecode.com/svn/trunk@121 a6443dda-0b58-4228-96e9-037be469359c
2016-05-24 22:40:21 +02:00