Commit Graph
49 Commits
Author SHA1 Message Date
Unknown W. Brackets 543df7ca7a Refactor wait timeouts.
Also, make them not write the timeout ptr if the thread stopped waiting.
Feels safer.
2013-09-03 22:32:22 -07:00
Unknown W. Brackets 7349de55d1 Fix some initialization/sprintf warnings. 2013-09-01 01:15:07 -07:00
Henrik Rydgard 0d0b43818c Warning fixes and stuff 2013-08-30 20:14:16 +02:00
Unknown W. Brackets 686d893d5c Return more correct errors inside interrupts. 2013-08-28 22:35:06 -07:00
Unknown W. Brackets 61fae4e920 Return proper errors while dispatch disabled.
In at least the majority of waits.
2013-08-27 23:55:37 -07:00
Unknown W. Brackets 354dbfec6c Improve some reporting of options structs. 2013-08-25 16:43:47 -07:00
Unknown W. Brackets ec46fdd06c Warning fixes in msgpipes. 2013-08-24 15:36:24 -07:00
Unknown W. Brackets 4f7f963274 Correct sceKernelReferMsgPipeStatus(). 2013-08-18 18:45:43 -07:00
Unknown W. Brackets a53c5d291c Update result on non-buffer receive empty too. 2013-08-18 18:45:43 -07:00
Unknown W. Brackets 2d1b2bc769 Writing 0s on delete/cancel wasn't right after all. 2013-08-18 18:45:43 -07:00
Unknown W. Brackets 642e7b255e Drain as much as possible before waiting. 2013-08-18 18:45:42 -07:00
Unknown W. Brackets e6236a1d31 Fix sceKernelReceiveMsgPipe() with no buffer.
And simplify, reschedule correctly.
2013-08-18 18:45:42 -07:00
Unknown W. Brackets b7ea35b71d Add some error checking to msgpipe receives. 2013-08-18 18:38:14 -07:00
Unknown W. Brackets e2f0dfe243 Wrap sceKernelReceiveMsgPipe() and friends. 2013-08-18 18:38:14 -07:00
Unknown W. Brackets 6750794c8a Fix a weird sceKernelTrySendMsgPipe() edge case. 2013-08-18 18:38:12 -07:00
Unknown W. Brackets 769bac3acf Fix send of 0 bytes, more error handling. 2013-08-18 18:38:12 -07:00
Unknown W. Brackets 29067edf52 When sorting, also clear not waiting threads. 2013-08-18 18:38:11 -07:00
Unknown W. Brackets 23625eec30 Simplify and fix msgpipe send queuing logic.
Should reschedule, should wait in line, couple error messages.
2013-08-18 18:38:11 -07:00
Unknown W. Brackets 27268967f9 Sort msgpipe waits while waking (like others.) 2013-08-18 18:38:10 -07:00
Unknown W. Brackets 4be06d2432 Wrap the msgpipe send functions. 2013-08-18 18:38:10 -07:00
Unknown W. Brackets 653e0f9629 Don't wait on a msgpipe when timeout <= 2. 2013-08-18 18:38:09 -07:00
Unknown W. Brackets 8a5dadcf53 Start out with 0 written msgpipe bytes. 2013-08-18 18:38:09 -07:00
Unknown W. Brackets b06de35536 Verify msgpipe threads are waiting before waking. 2013-08-18 18:38:08 -07:00
Unknown W. Brackets b9a71640eb Implement basic timeouts for msg pipes. 2013-08-18 18:38:08 -07:00
Unknown W. Brackets 88b333bd16 Don't even try to allocate a 0 sized buffer. 2013-08-18 18:38:07 -07:00
Unknown W. Brackets fa73875c98 Clean up cancel and delete for msgpipes. 2013-08-18 18:38:07 -07:00
Unknown W. Brackets 23a48ba799 Return better results from msgpipe waits.
Not fully tested, but it's clearer to specify.  Delete and cancel are sure
to have been wrong.
2013-08-18 18:38:06 -07:00
Unknown W. Brackets 6577a7f920 Cleanup some minor usage in msgpipes. 2013-08-18 18:38:06 -07:00
Unknown W. Brackets 666cee4f6a Fix sceKernelCreateMsgPipe() and alloc psp memory.
Might not matter, but I'm not sure yet if it's expoesd somewhere.
2013-08-18 18:38:05 -07:00
Unknown W. Brackets 81f7103e0b Use *_le for the sceKernel* funcs. 2013-07-25 08:04:34 -07:00
Unknown W. Brackets 933c8abb55 Check kernel object types when looking up ids.
Some games misuse it, need to return an error.
2013-06-18 23:54:29 -07:00
Unknown W. Brackets 25f1001db3 Priority-based msgpipes never woke anyone.
Really need to write tests for this and get into it, I guess...

Fixes Final Fantasy Tactics.
2013-03-31 16:58:15 -07:00
Unknown W. Brackets 2a6457b6ab Cut down on h files including PointerWrap.
This makes changes to it a bit faster to build.
2013-02-04 08:26:59 -08:00
Unknown W. Brackets 1cb7a88137 Don't use a dynamic string for wait debugging.
Happens in release, and shows up on the profiler.
Not huge, but should save ~0.5% of cpu time.
2013-01-26 11:29:19 -08:00
Unknown W. Brackets 140fd171ef Fix some 64-bit type conversion warnings. 2013-01-19 13:48:20 -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 644e6b615c Fix memory leak in msgpipe when loading state. 2012-12-28 13:55:31 -08:00
Unknown W. Brackets 19aaca2705 Start save stating audio, plus minor fixes. 2012-12-28 13:55:29 -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 217bdc275e Fix some type-conversion warnings. 2012-12-21 16:07:38 -08:00
Arthur Blot e45ce3af96 Implemented message pipes (may have issues) 2012-11-10 23:17:15 +01: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