Commit Graph

76 Commits

Author SHA1 Message Date
Unknown W. Brackets 43c8726554 Oops, 0 is a valid timer id. 2013-01-18 01:38:14 -08:00
Henrik Rydgård 95c4e0b9c4 Quick build fix for gcc 2012-12-28 23:33:00 +01:00
Unknown W. Brackets bcecd881b1 Savestate cleanup + be more careful with vectors.
For some reason I debugged it going into std::string so I just made
them all more explicit which fixed everything.
2012-12-28 13:55:31 -08:00
Unknown W. Brackets 3ed2045f6b Add state saving to tertiary kernel modules. 2012-12-28 13:55:25 -08:00
Unknown W. Brackets 595759ef78 Implement a factory for kernel objects.
Couldn't think of a better way to do this, maybe there's some fancy
one I don't know about.

Also finished up a couple left over kernel objects.

Maybe a quarter the way there?
2012-12-28 13:55:22 -08:00
Unknown W. Brackets 991243fffd Add basic DoState() to tertiary kernel objects. 2012-12-28 13:52:52 -08:00
Unknown W. Brackets 9ba0ed46fd Always create CoreTiming timers during kernel init. 2012-12-23 21:27:26 -08:00
Unknown W. Brackets 99b24720b8 Oops, not a real pointer, use 0 not NULL. 2012-12-20 20:07:55 -08:00
Unknown W. Brackets 87fcdc9080 Use KERNELOBJECT_MAX_NAME_LENGTH for name length.
Just avoiding magic numbers, didn't know there was a constant.
2012-12-16 21:36:52 -08:00
Unknown W. Brackets 70cbf98a20 Support WAITCLEARALL on event flag wait/poll.
Thanks to @B1ackDaemon for catching this.
2012-12-15 10:06:56 -08:00
Unknown W. Brackets bb10140728 Oops, event flags weren't always deleting properly.
Added some comments to explain why removal from waitingThreads is
deferred.  Also had to move things around so the right outBitsPtr
is always written to on timeouts.
2012-12-15 01:36:53 -08:00
Unknown W. Brackets d20b507796 Clarify these flags slightly. 2012-12-14 23:36:18 -08:00
Unknown W. Brackets 67f7f6b05d Oops, these flags can be or'd together of course. 2012-12-14 23:24:04 -08:00
Unknown W. Brackets 45258bb61f Cleanup behavior in sceKernel*EventFlag() funcs.
Biggest change is just that sceKernelSetEventFlag() rescheds.
2012-12-14 21:25:29 -08:00
Unknown W. Brackets 18bd6cdc98 Cleanup errors and timing for waiting on flags. 2012-12-14 12:05:16 -08:00
Unknown W. Brackets eb22f6bb78 Wake threads when an event flag is deleted. 2012-12-14 12:05:15 -08:00
Unknown W. Brackets 2ea992f2c4 Validate attr for mutexes, semas, and events. 2012-12-14 12:05:15 -08:00
Unknown W. Brackets d2d82196b7 Add timeouts for event flags.
Makes the threads/events/events test pass.

Still needs more tests, most likely several things are currently a
bit incorrect, like delete not waking threads.
2012-12-14 12:05:14 -08:00
Unknown W. Brackets fda41752e8 Simplify the API for HLE funcs to do callbacks.
__KernelWaitCurThread() already (ultimately) calls __KernelCheckCallbacks.
2012-12-09 01:04:52 -08:00
Diogo Franco (Kovensky) af74d30790 Wrappers for sceKernelEventFlag 2012-11-12 00:43:48 +00:00
Henrik Rydgard aea0580297 More reworking of Callbacks, plus some other little fixes. 2012-11-07 15:44:48 +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 Rydgard 4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00