Commit graph

30 commits

Author SHA1 Message Date
Unknown W. Brackets
a8c9c31e16 Add a registry for actions so they can be stated.
Also add late loaders to ensure things are hooked up properly.
2012-12-28 13:55:26 -08:00
Unknown W. Brackets
db787d266d Require interrupt handlers to be registered.
This allows it to be save stated sanely.
2012-12-28 13:55:25 -08:00
Unknown W. Brackets
036f0f3ad9 Properly clear interrupt state on shutdown. 2012-12-23 22:08:53 -08:00
Henrik Rydgård
ce214b3943 Assorted warning fixes 2012-12-23 09:44:43 +01:00
Florent Castelli
c33eafd430 Warning fixes 2012-12-21 23:02:35 +01:00
Unknown W. Brackets
12fb91b7b5 Don't run interrupts while they're suspended. 2012-12-20 22:49:48 -08:00
Unknown W. Brackets
4fb6c8c0ac Reschedule after interrupts run.
It'll reschedule anyway, so this will just give us a message.

Hardware seems to reschedule, not just go back to the original
thread, but there may be more to it than that.
2012-12-20 21:59:10 -08:00
Unknown W. Brackets
9034cfbfd3 Defer HLE interrupts, vblank only when enabled.
Based on tests, vblank doesn't queue up (makes sense) while
interrupts are disabled.

I'm not 100% sure about the GPU stuff but it seems to only come
from HLE via sceGe, so this should fix those return values.
2012-12-20 21:54:40 -08:00
Unknown W. Brackets
529818c9cd Handle interrupt return values. 2012-12-20 20:07:54 -08:00
Unknown W. Brackets
d6d1f687a8 Make the intr handler public, will need for timers.
The idea here is that alarm/vtimers/etc. can implement a subclass
to pass more arguments / do whatever they need to.
2012-12-20 20:07:53 -08:00
Unknown W. Brackets
35a38ac6b9 Ensure interrupts don't run on real threads.
If a thread waits on a sema, and an interrupt (such as an alarm) happens,
and the interrupt signals or deletes the sema, it needs to return the
value correctly.

For callbacks, it's injected, since they run on thread.  But interrupts
aren't supposed to run on thread anyway, so this switches to idle.
2012-12-18 01:49:53 -08:00
Unknown W. Brackets
3d57a4c838 Cleanup some wrappers now that rescheds defer. 2012-12-09 01:04:54 -08:00
Ced2911
6db4ea2ad1 less Memory::GetPointer 2012-11-27 10:18:36 +01:00
kev :)
fcfeeb8319 add sceKernelMemcpy & sceRtcSetTick
Untested apart from via games. gets bemani going further.
2012-11-23 18:51:36 +00:00
Unknown W. Brackets
fa9b9840d0 Implement LwMutex locking and unlocking. 2012-11-21 00:21:25 -08: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
d572d40c36 More warning fixing 2012-11-18 23:35:02 +01:00
Henrik Rydgård
f002fe8db3 Merge branch 'master' of github.com:hrydgard/ppsspp
Conflicts:
	Core/HLE/HLE.h
	Core/HLE/sceKernel.h
	Core/HLE/sceKernelInterrupt.cpp
2012-11-17 20:11:54 +01:00
Henrik Rydgard
90654bcd0e VFPU fixes, misc 2012-11-15 10:15:40 +01:00
Henrik Rydgard
3ed790e6a3 Interrupts should not be triggered if disabled 2012-11-07 17:01:57 +01:00
Henrik Rydgard
aea0580297 More reworking of Callbacks, plus some other little fixes. 2012-11-07 15:44:48 +01:00
Henrik Rydgard
83fb5e96de Logging, stubs and fixes 2012-11-06 20:56:19 +01:00
Henrik Rydgard
8a082f91cc Ge Callbacks seem to be working now. 2012-11-06 18:14:09 +01:00
Henrik Rydgard
28879934d6 Add some missing HLE functions, fix loading unencrypted EBOOT.BIN 2012-11-06 16:20:13 +01:00
Henrik Rydgard
b214a1a1da Revert "Better wrapper system, and fixed warnings"
This reverts commit a00b1855cb.

Conflicts:

	Core/HLE/FunctionWrappers.h
	Core/HLE/sceCtrl.cpp
	Core/HLE/sceKernelModule.cpp
2012-11-05 10:05:09 +01:00
Henrik Rydgard
6bed1afb72 Merge branch 'master' of https://github.com/artart78/ppsspp into artart78-master 2012-11-04 23:59:26 +01:00
Henrik Rydgard
64cc573703 Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK. 2012-11-04 23:24:00 +01:00
Arthur Blot
a00b1855cb Better wrapper system, and fixed warnings 2012-11-04 15:08:23 +01:00
Henrik Rydgård
794dd9567b Warning fixes 2012-11-04 13:27:11 +01:00
Henrik Rydgard
4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00