Commit graph

12954 commits

Author SHA1 Message Date
kev :)
68d644306e Rename and retype a variable 2012-11-25 00:22:39 +00:00
kev :)
7e85df9c0f Update sceRtcSetTick based on test cases 2012-11-25 00:14:14 +00:00
Unknown W. Brackets
063f914ff3 Fix project files so things build again. 2012-11-24 09:20:53 -08:00
Henrik Rydgard
863bc863c9 Some more arm work 2012-11-24 17:51:10 +01:00
Unknown W. Brackets
3642c02562 Add some guards to audio funcs on channel.
The atrac test was crashing.
2012-11-23 16:25:26 -08:00
kev :)
fcfeeb8319 add sceKernelMemcpy & sceRtcSetTick
Untested apart from via games. gets bemani going further.
2012-11-23 18:51:36 +00:00
Henrik Rydgard
265e70a498 Just some sketchwork on a JIT for ARM. When completed, will bring speed to mobile devices. 2012-11-23 19:41:35 +01:00
Henrik Rydgard
a97f66766d Add "slightly faster interpreter", optimizing the most common instrs. Not as helpful as I thought it would be on Android, really need a proper JIT. 2012-11-23 12:42:35 +01:00
Henrik Rydgard
f3aeadedfa Remove audio rate throttling, it's better to frame rate throttle. Gets rid of the slowdown that audio caused. 2012-11-23 10:35:28 +01:00
Henrik Rydgard
a385ec6056 MIPSDis cleanup, allow mfv zero, 255 (appears to be used to flush VFPU state or something) 2012-11-23 10:35:28 +01:00
Unknown W. Brackets
ad116632bf Implement sceRtcGetTick().
Unfortunately, this fixes things so that rtc/rtc is correctly failing.
2012-11-22 23:49:23 -08:00
Unknown W. Brackets
c40d8a4fbe Implement sceRtcGetCurrentClock().
Not sure if this needs some kind of DST handling for the tz?
2012-11-22 23:48:12 -08:00
Unknown W. Brackets
965eeaf9da Add error handling to sceRtcGetDaysInMonth(). 2012-11-22 23:48:12 -08:00
Unknown W. Brackets
21398bfcf8 Fix sceRtc module name so the right funcs are run.
Makes rtc/rtc pass again.
2012-11-22 23:48:12 -08:00
Unknown W. Brackets
6a4a26d4bf No need for these headers anymore. 2012-11-22 23:48:11 -08:00
Unknown W. Brackets
d3f2d9d10b Use u64 here to avoid warnings, better precision.
The timeout value is u32 anyway, so an int was already a loss.
2012-11-22 16:40:26 -08:00
Unknown W. Brackets
c2c2b77792 Fix threads locking more than one mutex at a time.
Duh, of course they can.  Even my test did, I'm stupid.
2012-11-22 16:33:16 -08:00
Henrik Rydgard
d141d205f8 Delete old textures, to prevent memory usage from growing indefinitely. 2012-11-22 23:07:15 +01:00
Henrik Rydgård
272bce83d6 Merge pull request #79 from unknownbrackets/master
Remove some warnings, fix old proj files
2012-11-22 13:31:41 -08:00
Henrik Rydgard
08f8f4b323 Cleanup sceRtc, move sceFont to its own file. 2012-11-22 22:30:44 +01:00
Henrik Rydgard
772b599041 Resurrect vmfvc/vmtvc, they are different from mfvc/mtvc 2012-11-22 22:30:44 +01:00
Unknown W. Brackets
a6a47c0c3e Don't complain when PPGe wasn't init yet.
This was causing BlockAllocator complaints if you closed right away.
2012-11-22 13:21:47 -08:00
kev :)
03c5e83953 Some sceUtility wrapping
Minus OSK and netconf
2012-11-22 20:46:22 +00:00
Henrik Rydgard
8f33837de9 Bug fixing mtv/mfv, add comment 2012-11-22 20:14:24 +01:00
Henrik Rydgard
232b84cd10 Assorted FPU/VFPU fixes, after adding more tests. 2012-11-22 18:13:48 +01:00
Diogo Franco (Kovensky)
6108e36ae9 Several fixes to build under stricter C++11
Add missing #include to various files.

strings.h isn't provided by MSVC so we don't include it there; it's needed
for other OSes/compilers.

Get rid of pre-ISO-C malloc.h includes; malloc is provided by stdlib.h.

Fixes some linuxisms.

Prepend __builtin_ to __clear_cache, calling it without the prefix is a
GNU extension.
2012-11-21 14:33:50 -03:00
Unknown W. Brackets
1bf04790e9 Darn, buildfix for debug. 2012-11-21 07:28:54 -08:00
Henrik Rydgård
3934876908 Merge pull request #70 from unknownbrackets/mutexes
Mutexes
2012-11-21 01:48:44 -08:00
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