Commit Graph
5276 Commits
Author SHA1 Message Date
Unknown W. Brackets 879efb25cc Don't allow unlocking someone else's mutex. 2012-11-21 00:28:29 -08:00
Unknown W. Brackets fa9b9840d0 Implement LwMutex locking and unlocking. 2012-11-21 00:21:25 -08:00
Unknown W. Brackets db16f9309e Don't crash if something goes wrong with mutexes.
Probably can't happen but being defensive is good.
2012-11-20 22:57:14 -08:00
Henrik Rydgård 2a56d36b12 glViewport calls need to be in pixel coordinates. 2012-11-20 16:48:24 +01:00
Henrik Rydgard 4b87da74cb windows gui option for buffered rendering. Misc fixes, prettier checkbox on android. 2012-11-20 11:35:48 +01:00
Unknown W. Brackets b71d998a20 Broadcast a threadend event to wake mutexes. 2012-11-20 02:20:16 -08:00
Unknown W. Brackets dd3db71b61 Forget mutex waiting threads when they timeout. 2012-11-20 02:20:16 -08:00
Unknown W. Brackets 8da2fb074c For mutexes/semaphores, register a global timer.
Instead of leaking one per each.  Should be faster.
Since we can only wait on one thing per thread at a time, this is fine.
2012-11-20 02:20:16 -08:00
Unknown W. Brackets a81c138004 Create and Delete LwMutex funcs. 2012-11-20 02:20:15 -08:00
Unknown W. Brackets 619a9906de Remove threads from semaphores when they timeout.
This makes wait tests *almost* pass.  There's some timing
related issues left, though.
2012-11-20 02:20:15 -08:00
Unknown W. Brackets fd41851503 Implement timeouts on semaphores too. 2012-11-20 02:20:14 -08:00
Unknown W. Brackets 4d71e32193 Update the value when mutexes timeout. 2012-11-20 02:20:14 -08:00
Unknown W. Brackets aad7e48a1a Oops, turns out mutex timeouts are in micro.
Found it documented as milli somewhere, but it was wrong.
2012-11-20 02:20:14 -08:00
Unknown W. Brackets d88fa153b7 Implement timeouts on mutexes.
Still need to set timeoutPtr after they expire.
Pretty sure I did this the right way, seems CoreTiming does already
allow/use multiple events for the same type?
2012-11-20 02:20:13 -08:00
Unknown W. Brackets b9bb5c4cce Make sceKernelStartThread() reschedule.
Mutexes and semaphores are wrong, duh.
2012-11-20 02:20:13 -08:00
Unknown W. Brackets 7b9a8bf766 Minor correctness on create mutex. 2012-11-20 02:20:12 -08:00
Unknown W. Brackets 7fa388952e Refactor mutex locking to simplify. 2012-11-20 02:20:12 -08:00
Unknown W. Brackets 0681c8e5c5 Add overflow error to mutex locking. 2012-11-20 02:20:12 -08:00
Unknown W. Brackets 40a6ebfabe Fix sceKernelCancelSema() to handle any negative.
So the test isn't failing.
2012-11-20 02:19:21 -08:00
Unknown W. Brackets 2290397b94 sceKernelTryLockMutex() and fix other locking. 2012-11-20 02:19:21 -08:00
Unknown W. Brackets 4bfa24eca8 Fix sceKernelCreateMutex() to match tests.
Still have an issue where reusing threads doesn't work.
2012-11-20 02:19:21 -08:00
Unknown W. Brackets a539580195 Reschedule after acquiring a lock.
This matches the actual test results.
2012-11-20 02:19:20 -08:00
Unknown W. Brackets 2613ed8806 Cleanup mutex func types.
Looks like mutexes reschedule when they lock, so switch to void.
2012-11-20 02:19:20 -08:00
Unknown W. Brackets 429ac9de87 Oops, CreateMutex was missing a parameter. 2012-11-20 02:19:19 -08:00
Unknown W. Brackets 4bab714db5 Mutexes go in FIFO order as expected.
The test was wrong.
2012-11-20 02:19:19 -08:00
Unknown W. Brackets 4cddd3092a Implement basic locking for sceKernel mutexes.
Test still not passing, due to odd order the mutex is unlocked in?
But, at least, it does lock now.
2012-11-20 02:19:19 -08:00
Henrik Rydgard f378f959e1 Fix issues with games that don't call sceDisplaySet mode. Add option to run without FBOs, may be useful on slow devices. 2012-11-20 10:59:23 +01:00
Henrik Rydgard f226afc3ca Implement a missing time function 2012-11-20 01:04:39 +01:00
Henrik Rydgard 45d42f09a1 Remove x86disasm, experiment with build order 2012-11-20 00:48:13 +01:00
Henrik Rydgard ee32db47b9 Assorted FBO fixes 2012-11-20 00:31:19 +01:00
Henrik Rydgard 4a49b8ee36 Workaround for motogp setting a bogus framebuffer address. 2012-11-19 23:53:38 +01:00
Henrik Rydgard 8b67975a47 GL: Framebuffer management using FBOs. Fixes flicker in Lumines and many others. 2012-11-19 23:29:14 +01:00
Henrik Rydgard 91e1cce17e Some reorg in preparation for FBO work 2012-11-19 21:23:29 +01:00
Henrik Rydgård 14a59fdc75 Found a better way to do the previous change. Allow JIT on mac/linux. 2012-11-19 14:51:47 +01:00
Henrik Rydgård fb25b7405c Synchronize the mainloop to the display end-of-frame on nonWindows
platforms.
2012-11-19 14:16:37 +01:00
Henrik Rydgård ec2cb15c38 Merge branch 'master' of github.com:hrydgard/ppsspp
Conflicts:
	Core/HLE/sceKernelInterrupt.cpp
	native
2012-11-19 11:35:53 +01:00
Henrik Rydgard 1f48dc380a gitignore, comments, upgrade native. 2012-11-19 09:25:50 +01:00
Henrik Rydgard 2d431d27e7 Crashfix for a buggy game that misuses sceUtility 2012-11-19 00:29:41 +01:00
Henrik Rydgard 8e3148587a Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-18 23:40:35 +01:00
Henrik Rydgard d572d40c36 More warning fixing 2012-11-18 23:35:02 +01:00
Henrik Rydgard e2c3f26f1b Reformat some code, fix some warnings 2012-11-18 23:34:37 +01:00
Henrik Rydgard fa05713456 misc cleanup 2012-11-18 23:14:50 +01:00
Henrik Rydgard f326c36220 Some cleanup, re-enable some apparently disabled jit ops 2012-11-18 23:14:22 +01:00
Henrik Rydgård 739b747e02 Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-18 23:00:13 +01:00
kev :) bcb0cbe7ea make sceUtilitySavedataInitStart return 0
Makes a few other games get further
2012-11-18 21:45:14 +00:00
kev :) d04fb7cb50 A bit more clean up on umd callbacks
Just error checking based on some tests
2012-11-18 21:28:26 +00:00
kev :) 7c30646605 Don't append / when there is already one
Was causing marvel allience 2 to crash
2012-11-18 21:07:40 +00:00
kev :) 03bc871f56 sceDisplayWaitVblankStartMultiCB()
This is wrong but better than having nothing in the method. The one game
I have found that uses this seems to be ok with this implementation.
2012-11-18 20:13:27 +00:00
kev :) 9257b28c15 Limit thread name
Seems this needs to be limited
2012-11-18 19:34:53 +00:00
kev :) 48bd2ccc08 Attempt at UMD callbacks.
Helps a few games but needs more work.
2012-11-18 19:34:10 +00:00