Commit Graph

69 Commits

Author SHA1 Message Date
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
3ed2045f6b Add state saving to tertiary kernel modules. 2012-12-28 13:55:25 -08:00
Unknown W. Brackets
2197d96989 Run save state operations at next Advance().
Should take some question marks out of things.
2012-12-28 13:55:23 -08:00
Unknown W. Brackets
abeaaa9105 Add Verify() method to quickly test states work. 2012-12-28 13:55:22 -08:00
Unknown W. Brackets
d6d3688c8c Fix a warning if loading wrong version / etc. 2012-12-28 13:55:22 -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
a2f4c83c90 Initial state saving for kernelObjects. 2012-12-28 13:52:51 -08:00
Henrik Rydgård
d95dbca9be Cleanup GPU init/shutdown a bit 2012-12-25 22:42:19 +01:00
Unknown W. Brackets
d378b1c324 Deallocate properly in shutdown, not in init. 2012-12-24 01:41:15 -08:00
Unknown W. Brackets
41db5c46a5 Fix random modules not reseting on shutdown. 2012-12-23 22:52:40 -08:00
Unknown W. Brackets
9ba0ed46fd Always create CoreTiming timers during kernel init. 2012-12-23 21:27:26 -08:00
Henrik Rydgård
4a4d126dc7 Init/shutdown mutex 2012-12-23 11:19:55 +01:00
Unknown W. Brackets
ec753a3575 Fix some ignored error / shadowing warnings. 2012-12-21 16:23:21 -08:00
Unknown W. Brackets
6a9a183dd3 Use sceKernelDcache*() to invalidate the texcache.
Also in the block transfer code.
2012-12-21 14:10:57 -08:00
Henrik Rydgard
4d4370232c Assorted minor cleanup and fixes. 2012-12-21 10:20:22 +01:00
Unknown W. Brackets
aadbe50357 Implement the basic functionality of alarms.
They only fire the once though, and the use of subintr might be
a bit naive, may need internal funcs.
2012-12-20 20:07:53 -08:00
Henrik Rydgard
5a11d4d9c5 Implement sceKernelGetThreadmanIdList (partially) 2012-12-17 22:21:17 +01:00
Henrik Rydgard
a60d487d8d Create files for sceUsb 2012-12-17 21:45:32 +01:00
Unknown W. Brackets
599465ee6e Correct priority handling for Mbx funcs.
Also, moved to correctly updating the linked list.
It's possible a game might follow it since it's there.
2012-12-16 21:36:53 -08:00
Unknown W. Brackets
94094f99bf Cleanup basic Mbx implementation, create func. 2012-12-16 21:36:51 -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
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
TMaul
bbdeef5115 Fix some tabs in sceKernel.cpp 2012-12-09 20:49:16 +00:00
Unknown W. Brackets
f145bafc7a Wrap a few of the sceKernel*Thread funcs. 2012-12-09 01:04:54 -08:00
Unknown W. Brackets
3d57a4c838 Cleanup some wrappers now that rescheds defer. 2012-12-09 01:04:54 -08:00
Unknown W. Brackets
15c05dc08c Implement sceKernelTerminateThread(), not fully.
It's mostly correct but needs some tests and TLC.
This allows threads to be restarted.
2012-12-07 00:46:19 -08:00
TMaul
9bcb67f90b Add some missing sce* Functions
Add the missing functions to sceHttp
Create sceOpenPSID and add what jpcsp is doing
Create sceParseHttp.cpp
Create sceParseUri.cpp
Create sceSsl.cpp and add what jpcsp is doing
reindent some files.

in an attempt to try and get a few games doing more.
2012-12-06 18:02:55 +00:00
Unknown W. Brackets
fd2d666191 Add ctrl sampling (vblank).
This makes it work like the PSP does with number of buffers, etc.
Still doesn't wait yet.
2012-12-02 15:44:23 -08:00
Unknown W. Brackets
a81c138004 Create and Delete LwMutex funcs. 2012-11-20 02:20:15 -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
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
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
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 Rydgård
739b747e02 Merge branch 'master' of github.com:hrydgard/ppsspp 2012-11-18 23:00:13 +01:00
Henrik Rydgard
e37a1fb1d3 Add internal 2D drawing library that goes through the Ge emulation for portability.
To be used for things like sceUtility* and other overlays like FPS and stats.
2012-11-18 13:04:49 +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
184d5b9443 Merge branch 'sema-cleanup' of https://github.com/unknownbrackets/ppsspp into unknownbrackets-sema-cleanup
Conflicts:
	pspautotests
2012-11-17 15:05:30 +01:00
Unknown W. Brackets
157858819b Additional semaphore fixes with updated tests. 2012-11-17 01:43:01 -08:00
Henrik Rydgård
509ae819ab Merge pull request #54 from unknownbrackets/sema-cleanup
Semaphore func cleanup
2012-11-16 02:33:09 -08:00
Unknown W. Brackets
0ab19c18e5 Wrap sceKernelCreateSema(). 2012-11-16 00:06:44 -08:00
Henrik Rydgard
90654bcd0e VFPU fixes, misc 2012-11-15 10:15:40 +01:00
Unknown W. Brackets
f37dd7fefe Fix $v0 on wrong thread in semaphore funcs.
Need to RETURN() prior to switching threads or it will write to the
wrong thread, oops.
2012-11-12 07:24:40 -08:00
Unknown W. Brackets
a0cacc7eb9 Merge remote-tracking branch 'upstream/master' 2012-11-12 01:35:38 -08:00
Unknown W. Brackets
e7b6487c4e Wrap sceKernel DeleteSema and CancelSema.
Also fix copy/paste mistake from SignalSema func.
2012-11-11 18:30:13 -08:00
Unknown W. Brackets
8e2fff97bf Wrap a few semaphore sceKernel* funcs. 2012-11-11 17:57:35 -08:00
Diogo Franco (Kovensky)
d2a0fcc38e Wrappers for LoadExecForUser 2012-11-12 00:43:48 +00:00