Commit Graph

92 Commits

Author SHA1 Message Date
Unknown W. Brackets d6048dc646 Don't burn the cpu while idle in multithread. 2013-11-09 23:08:45 -08:00
Unknown W. Brackets 113146302b Don't schedule a finish event when not running.
Otherwise it'll get it when it does run, and stop early.
2013-11-09 23:08:44 -08:00
Unknown W. Brackets afafa5fcd6 Make sure the gpu thread has a chance to run.
If the scheduler puts it on the same core, it may not even do anything
before we check if the framebuffer is dirty, so SyncThread will quit since
it's not even running.

Instead, let's wait until it's at least done something.
2013-11-09 23:08:28 -08:00
Unknown W. Brackets 879060f008 Use a CORE_POWERUP state when starting.
Otherwise, we could startup in CORE_POWERDOWN in a second game, which is
confusing.
2013-11-09 23:07:52 -08:00
Unknown W. Brackets 712b582d26 Remove coreParam.disableG3Dlog and enableDebugging.
One was uninitialized, the other one unused.
2013-11-09 11:02:12 -08:00
Unknown W. Brackets 82706ef82d Fix a crash if the gpu doesn't load.
E.g. for invalid files with multithreading enabled.
2013-11-06 07:49:32 -08:00
adrian17 0a086915f5 We don't need to reset the counter as it's already done in Reset() 2013-10-23 19:05:08 +02:00
Sacha fafe4fc4f2 Fix multi-threading crashes on shutdown with Linux and Blackberry. Fixes issue #3133 -- thanks @unknown 2013-10-17 17:39:04 +10:00
The Dax 845a25e897 Whoops. Forgot to push this. 2013-10-15 03:41:11 -04:00
The Dax b549a4e6e5 Assume g_Config.memCardDirectory will have a trailing slash. Make InitSysDirectories for Win32 only. 2013-10-15 03:41:10 -04:00
The Dax 6efd5b33f7 We don't really need DIRECTORY_FLASH0 or DIRECTORY_MEMSTICK. 2013-10-15 03:41:10 -04:00
The Dax c7bdeb3084 Eliminate GetSysDirectories and instead provide a new function: GetSysDirectory.
On Win32, call InitSysDirectories before the emuthread starts just to be safe.
2013-10-15 03:41:10 -04:00
The Dax 22e7b64df3 Don't write files before creating the directory in the first place. 2013-10-14 17:28:27 -04:00
The Dax 45d6ab9d7b Support more than just UTF-8. 2013-10-14 02:46:05 -04:00
The Dax 702c355cb6 Use a C++ version. 2013-10-14 02:24:02 -04:00
The Dax 81e7f1204c Support unicode paths in installed.txt.
The only caveat is it has to be saved as a UTF-8 file or it won't work properly.
Also, make some variables const since they're not changed.
2013-10-14 00:12:17 -04:00
The Dax 54de8739f1 Fix critical bug with GetSysDirectories. 2013-10-13 19:30:07 -04:00
The Dax 823b6ee465 Clean up GetSysDirectories. File::GetExeDirectory is much cleaner. 2013-10-13 19:01:53 -04:00
The Dax 85f6d6bf0e If the custom directory or the current directory is read-only, fall back on the Documents directory.
After that point(if Documents is somehow read-only), we'd be screwed anyway, so there's no need to bother checking it..
2013-10-13 18:22:04 -04:00
The Dax d8a0adf50c If installed.txt has a path in it, use that instead of the detected Documents directory. 2013-10-13 17:43:01 -04:00
The Dax b3018eb37f Allow Win32 to store its saves, config files, etc., elsewhere.
If installed.txt exists(or the executable directory is read-only), use the user's My Documents(XP) or Documents(7/8/8.1) directory to search for everything. If it doesn't, or we can't determine the directory for some reason, use the old behaviour.
2013-10-13 16:45:59 -04:00
Unknown W. Brackets 479a9801d4 Shutdown issues: the legend continues.
If the gpu was slow (softgpu for example), it might still be accessing
memory.  Need to let it wake, and ignoring coreState too.
2013-10-13 09:35:02 -07:00
Henrik Rydgård cdba174ab7 Merge pull request #4148 from unknownbrackets/config-files
Allow config files and fonts to be on the memstick
2013-10-13 04:01:01 -07:00
Unknown W. Brackets b54e557d19 Actually, let's not wait at all in Core_Stop().
It just triggers the action on the other thread.
2013-10-12 23:20:27 -07:00
Unknown W. Brackets af2ccbb9da Rename flashDirectory to flash0Directory. 2013-10-12 16:08:39 -07:00
Unknown W. Brackets a79b168acc Make sure the cpu thread ends on Core_Stop().
Sometimes it didn't, which was just a bit confusing.
2013-10-12 10:55:31 -07:00
Unknown W. Brackets 90c49befd4 Fix a possible race on shutdown. 2013-10-12 02:08:00 -07:00
Unknown W. Brackets 093255a895 Avoid an unlikely buffer overflow. 2013-10-05 11:13:40 -07:00
Unknown W. Brackets 086294b495 Listen for shutdown in thread loops.
This way we don't need to use wait_for(), much better.
Also because there are slightly more correct cond vars on win32.
2013-09-28 00:45:54 -07:00
Unknown W. Brackets 4b9056fa02 Shutdown cleanly even when GE debugger is paused. 2013-09-28 00:32:45 -07:00
Unknown W. Brackets 418d6c1e83 Reset the game when loading a state fails.
This way it doesn't crash.
2013-09-14 21:19:10 -07:00
Unknown W. Brackets 2ac5bcff1f Process savestates during single stepping.
This way we can handle them on the same thread, without weird delays.
2013-09-14 18:43:23 -07:00
Unknown W. Brackets 38e30e5a67 Fix bugs when memory size is 0x04C00000/etc.
Was experimenting with trying to match my non-phat's ram size.
2013-09-09 00:25:10 -07:00
Unknown W. Brackets bbf714c361 Provide for GPU init failure, kill a warning. 2013-09-07 22:30:30 -07:00
Unknown W. Brackets 08b41df6a2 Change a few more log types. 2013-09-07 13:31:14 -07:00
Henrik Rydgard 55aa3d13c7 Win32: Switch to a UNICODE build. This took quite a bit of fixing. 2013-08-26 19:00:16 +02:00
Unknown W. Brackets 1ed8edb0d3 Avoid some dangerous hex constant widths. 2013-08-22 23:23:48 -07:00
Henrik Rydgård a526b7ca7c Merge pull request #3300 from thedax/fixWin32Folders
Win32: Fix flash0/memstick folder locations.
2013-08-21 07:16:55 -07:00
The Dax 76f7ecbcac Remove some code that was screwing with Win32's ability to find its own flash0/memstick folders. WTF was that stuff anyway? :\ 2013-08-21 10:08:49 -04:00
Henrik Rydgard 87e51a5c04 Fix some window title issues, etc. 2013-08-20 17:21:25 +02:00
The Dax 75f03b4d8a NewUI: Don't init audio if sound is disabled. And remove some stray newlines. 2013-08-14 09:05:24 -04:00
The Dax 5b2483ee73 Fix a bug where sound would never be initialised if a game is started with it off, then later enabled. 2013-08-14 08:47:10 -04:00
Unknown W. Brackets fe8850b34d Set the IO thread's name for debugging. 2013-08-11 12:22:01 -07:00
Unknown W. Brackets 169fbeaca6 As a safety, especially for win32, cap the wait. 2013-08-10 21:27:51 -07:00
Henrik Rydgård 85e17f03cc Merge pull request #3118 from unknownbrackets/io-async
Prep work for pspFileSystem and two small fixes
2013-08-10 14:32:59 -07:00
Unknown W. Brackets 00ae811446 Shutdown the filesystem after HLE. 2013-08-10 14:01:44 -07:00
Henrik Rydgard d32e10ff0b Error handling improvements 2013-08-10 19:56:47 +02:00
Unknown W. Brackets 7e56dcf665 Ignore changes to SeparateCPUThread after startup. 2013-08-10 03:36:22 -07:00
Henrik Rydgard c6956c299a Don't leak cpuThread objects 2013-08-10 11:39:53 +02:00
Unknown W. Brackets 1226c3dbd9 Try to prevent a deadlock if CPU doesn't NEXTFRAME. 2013-08-09 22:57:53 -07:00