2014-05-16

Citra threading Git (2014/05/16)

EmuCR: CitraCitra threading Git (2014/05/16) is compiled. Citra threading is a branch of Citra. Citra is an experimental open-source Nintendo 3DS emulator/debugger written in C++. At this time, it only emulates a very small subset of 3DS hardware, and therefore is only useful for booting/debugging very simple homebrew demos. Citra is licensed under the GPLv2. Refer to the license.txt file included.

Citra threading Git Changelog:
* - added SVC stubs for QueryMemory and GetThreadId
- added SVC structs MemoryInfo and PageInfo
* added memory mapped region for system mem - sdk demos load a segment here on ELF load
* added ability to load AXF files (same as ELF)
* completely gutted/refactored threading code to be simpler
* changed "UID" to "Handle" to be a little more consistent with CTR naming
* - added ThreadContext struct
- cleaned up CreateThread svc
* added ThreadQueueList class to common (taken from PPSSPP)
* - added helper function for __KernelCreateThread
- added __KernelSwitchToThread for enabling a thread
- added __KernelRotateThreadReadyQueue
* changed primary thread priority to 0x30 - this is typical, not 0x31
* added function stubs for EatCycles and ReSchedule
* fixed thread reset to not set stack address
* various cleanups / remove unused code
* added a bunch of threading code, recycled from PPSSPP, with lots of hacks in for 3DS... doesn't really do much yet. Just a jumping off point
* changed loader to use __KernelLoadExec
* added CreateThread, CreateMutex, and ReleaseMutex SVC stubs (just parameter decoding for now)
* - added __KernelLoadExec function
- fixed some logging

Download: Citra threading Git (2014/05/16) x86
Source: Here

0 Comments

Post a Comment