Commit Graph
14343 Commits
Author SHA1 Message Date
Unknown W. Brackets 5e363bcbd2 Don't allow gpu->Flush() to be called publicly. 2013-08-09 22:57:54 -07:00
Unknown W. Brackets 1226c3dbd9 Try to prevent a deadlock if CPU doesn't NEXTFRAME. 2013-08-09 22:57:53 -07:00
Unknown W. Brackets e71cf2ec7e Don't queue Flush() etc. while on GPU thread.
Oops, that makes it not actually flush properly of course.

Also made a simpler guard wrapper to avoid extra braces in too many
places.  Reduced contention areas slightly.
2013-08-09 22:57:52 -07:00
Unknown W. Brackets e76f945c7e Use the native cond vars for the CPU thread. 2013-08-09 22:57:51 -07:00
Unknown W. Brackets 4803f72b36 Add a "multithreaded" UI option on Windows.
Not on other platforms since not yet tested.
2013-08-09 22:57:50 -07:00
Unknown W. Brackets b0e6967697 Rename UseCPUThread to SeparateCPUThread. 2013-08-09 22:41:33 -07:00
Unknown W. Brackets a56cac1eb3 Bail when CPU thread disabled to ensure good perf. 2013-08-09 22:41:32 -07:00
Unknown W. Brackets 3819886e2e Add a way to synchronize with the GPU thread. 2013-08-09 22:41:32 -07:00
Unknown W. Brackets 02e301e5fe Add a simple message event system to the GE.
With this, the CPU thread feature now mostly works.
2013-08-09 22:41:31 -07:00
Unknown W. Brackets e7c7c5b3db Add a setting to launch a separate CPU thread. 2013-08-09 22:41:30 -07:00
CPkmn 8547eecd31 Update PGF.cpp 2013-08-09 18:49:01 -07:00
CPkmn c067c48585 Sanity checks for shadow glyphs
Partially fixes text, huds and videos in Jeanne d'Arc.
These changes shouldn't negatively impact other games since all it does is makes sure shadow glyphs are within the vector sizes.
The text, huds and videos still don't fully display, but that's because of something else.
2013-08-09 17:52:01 -07:00
The Dax 8b6790187d Fix some translation issues and change a variable name(it was supposed to be iSFXVolume, but for some reason it never got changed over). 2013-08-09 08:04:13 -04:00
The Dax 01e9111ac5 Remove Stream VBO option. 2013-08-09 05:18:24 -04:00
Henrik Rydgard 174223c42b Fix VCMP (VC_TR) and optimize a little 2013-08-08 21:03:40 +02:00
CPkmn 1cf0b62e70 Try fixing sceJpegGetOutputInfo again
I guess the colour info address isn't supposed to be updated if the jpeg errors out, or I think so based on reports from the God Eater Burst thread in the forums. This shouldn't affect working jpegs since the address is still being updated before returning, just not if it errors out. If this doesn't work for the save from the forums, it would have never worked in PPSSPP builds up to today (it basically makes the function _only_ return null without updating the colour address, making it the equivalent of the only implementation other than mine, which was a stub, if it errors out). The previous commit I made worked in the Japanese version, but still bounced back in the US version (wtf?).
2013-08-07 16:39:42 -07:00
Henrik Rydgard bc00a7e302 Process frame timing on frame boundaries instead of flips. Frameskipping works better in many games. 2013-08-07 23:32:28 +02:00
Henrik Rydgard 51ffdfa132 Rename gpuStats.numFrames to numVBlanks. Switch to using numFlips for things like cache expirations. 2013-08-07 22:34:00 +02:00
Henrik Rydgard 8714240519 Fix vf2i properly on x86. 2013-08-07 21:30:57 +02:00
Henrik Rydgard dce3c9449b Attempt to quickfix vf2i but failed, so disabling it. Should fix #3084 2013-08-07 18:07:49 +02:00
CPkmn 76dbd9c22b Fix sceJpegGetOutputInfo
Return better responses for errors (should allow weird God Eater Burst saves from real PSPs to not bounce back to the titlescreen). Not sure why some God Eater Burst saves would send bad jpeg data. The data sent through sceJpeg is supposed to be a normal jpeg (ie it should be perfectly viewable in photoshop or whatever image viewer/editor). The reason it doesn't send a good, decodable jpeg should still be researched but in the meantime let's not push users getting that error back to the titlescreen. Returning getYCbCrBufferSize(0, 0) on error seems like it would be more correct as well (or, at least God Eater Burst recognises that as an error unlike 0xC000...I didn't think that error code was right but no saves gave me bad jpeg data before).
2013-08-07 08:08:12 -07:00
Unknown W. Brackets b1344f8254 Get rid of CoreTiming::AdvanceQuick().
It basically existed for savestates, so no longer needed.
Fixes issues with events not running when they should.
2013-08-07 00:32:29 -07:00
Unknown W. Brackets dc56ab9e83 Treat savestates specially, no longer using events.
This makes it easier to run them on the GPU thread anyway, which is best
if they reset GPU caches etc., and should remove any timing related
issues.
2013-08-07 00:32:29 -07:00
Unknown W. Brackets 7a2ef728cb Schedule ts events using the same time frame. 2013-08-07 00:32:28 -07:00
Unknown W. Brackets b298432e8f Use threadsafe events for GE communication.
Hopefully this doesn't cause problems again for 3rd Birthday or FF Type-0.
Kinda need it.
2013-08-07 00:32:28 -07:00
Unknown W. Brackets 7dfee29d49 Fix threadsafe event removal. 2013-08-07 00:32:27 -07:00
Henrik Rydgård 1c39d50068 Merge pull request #3072 from lioncash/master
Fix a possible memory leak in BlockDevices.cpp.
2013-08-07 00:28:26 -07:00
Henrik Rydgård 456114648f Merge pull request #3073 from thedax/headlessBuildFix
Fix headless build error and abstract OSK bypass.
2013-08-07 00:27:55 -07:00
Unknown W. Brackets fff0af844b Fix bounds check in sceKernelPrintf().
Wasn't allowing a string ending in %08x.
2013-08-06 23:52:38 -07:00
Unknown W. Brackets 04e2a78f82 Fix table checks in sceCcc.
Was checking for the wrong table.
2013-08-06 23:39:12 -07:00
The Dax d549337080 Tidy up some newlines. 2013-08-06 19:40:59 -04:00
The Dax f9067e15c9 Remove old comment, change another one, and change MenuScreens.cpp to use the new class Host's InputBoxGetString. 2013-08-06 19:36:51 -04:00
The Dax 40b1c6298a Fix Headless build error introduced by #3063. 2013-08-06 19:28:43 -04:00
Lioncash 998ac27bf0 Fix a possible memory leak in BlockDevices.cpp. 2013-08-06 19:03:38 -04:00
Henrik Rydgard a281c1a899 ARMjit: vmin/vmax 2013-08-06 23:17:10 +02:00
Henrik Rydgard 201282f28c JIT: Implement vf2i (truncate mode only) 2013-08-06 19:08:15 +02:00
Henrik Rydgard 993d3b01de Android buildfix 2013-08-06 19:00:32 +02:00
Henrik Rydgård f203997c6e Merge pull request #3063 from thedax/win32OSKBypass
Win32: Allow user to change emulated PSP nickname, and add an OSK "bypass"
2013-08-06 09:04:34 -07:00
Henrik Rydgard c71b304ba1 Fix a classic bug again (now in armjit), + a minor opt 2013-08-06 15:22:19 +02:00
Henrik Rydgard 1d81698728 JIT (both): Implement VCMOV 2013-08-06 13:29:17 +02:00
Henrik Rydgard 140d12c3db ARMJIT: Fix and enable cross product 2013-08-06 11:55:11 +02:00
Henrik Rydgard d2c9919573 Vcmp: Fix ARM, optimize x86 slightly 2013-08-06 11:49:10 +02:00
Henrik Rydgard 2f1e6f81bb Android buildfix 2013-08-06 11:24:48 +02:00
Henrik Rydgard 2f0cdc6988 ARMJIT: disable vi2f, it seems buggy. preliminary disabled impl of vcrsp.t. 2013-08-06 11:10:26 +02:00
The Dax 4a2605d85e Switch to strncat instead of sprintf. 2013-08-05 23:46:00 -04:00
The Dax b9541d9a15 Switch to size_t instead of u32. 2013-08-05 23:29:59 -04:00
The Dax 1da0454508 Add support for changing the InputBox's title to the description text provided by the game(or the emulator itself). If none is provided(empty string), fall back to a default string. 2013-08-05 23:17:26 -04:00
The Dax 22bceea46c Remove old comment, and change length value. 2013-08-05 22:49:04 -04:00
The Dax 4570d83c05 Fix crash in InputBox.cpp by offering an overloaded func which takes a size, and use it in MenuScreens.cpp / PSPOskDialog.cpp. 2013-08-05 22:45:51 -04:00
The Dax d20ac3c4c2 Fall back on "VALUE" if for some reason we can't get the initial text. 2013-08-05 22:15:10 -04:00