2014-10-17 21:26:07 +00:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
< title > uOFW: UsersystemLib Module< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "search/search.js" > < / script >
< script type = "text/javascript" >
$(document).ready(function() { searchBox.OnSelectItem(0); });
< / script >
< / head >
< body >
< div id = "top" > <!-- do not remove this div! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td style = "padding-left: 0.5em;" >
< div id = "projectname" > uOFW
< / div >
< div id = "projectbrief" > Reverse engineered PSP kernel 6.60.< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- Generated by Doxygen 1.7.6.1 -->
< script type = "text/javascript" >
var searchBox = new SearchBox("searchBox", "search",false,'Search');
< / script >
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "index.html" > < span > Main  Page< / span > < / a > < / li >
< li > < a href = "pages.html" > < span > Related  Pages< / span > < / a > < / li >
< li > < a href = "modules.html" > < span > Modules< / span > < / a > < / li >
< li > < a href = "annotated.html" > < span > Data  Structures< / span > < / a > < / li >
< li > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< li >
< div id = "MSearchBox" class = "MSearchBoxInactive" >
< span class = "left" >
< img id = "MSearchSelect" src = "search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
< input type = "text" id = "MSearchField" value = "Search" accesskey = "S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
< / span > < span class = "right" >
< a id = "MSearchClose" href = "javascript:searchBox.CloseResultsWindow()" > < img id = "MSearchCloseImg" border = "0" src = "search/close.png" alt = "" / > < / a >
< / span >
< / div >
< / li >
< / ul >
< / div >
< / div >
< div class = "header" >
< div class = "summary" >
< a href = "#func-members" > Functions< / a > < / div >
< div class = "headertitle" >
< div class = "title" > UsersystemLib Module< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< table class = "memberdecls" >
< tr > < td colspan = "2" > < h2 > < a name = "func-members" > < / a >
Functions< / h2 > < / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga20367eeefab6198dc1d7f6791d020075" > sceKernelCpuSuspendIntr< / a > (void)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga944ecd9597a355cc700f3f811d40d3ed" > sceKernelCpuResumeIntr< / a > (s32 intr)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gaeffc8cbe0a840a61390159b851b47cd4" > sceKernelCpuResumeIntrWithSync< / a > (s32 intr)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gab3c095a6d5704d3397f89d574d43954f" > sceKernelIsCpuIntrSuspended< / a > (s32 intr)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga4e6219082a8aeae96d8f6d3069747fed" > sceKernelIsCpuIntrEnable< / a > (void)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga638cd25b4d88295a7cb59c3dfd1dece4" > sub_00000208< / a > (s32 dlId, void *stall)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga3950cf6a6f0928b1bb6128ac8503a778" > sceGe_lazy_31129B95< / a > (s32 dlId, void *stall)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga77feb17d4ead3b4c81273467c4f602be" > sceKernelGetThreadId< / a > (void)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gac12c779057f2506ae4b41acb7d1d8871" > sceKernelCheckThreadStack< / a > (void)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gae3e05cc92fdaa57aabc4dd0d1cbd389d" > sceKernelGetTlsAddr< / a > (SceUID uid)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gacce75d90cafca598b1f1f67337a6cae5" > sceKernelTryLockLwMutex< / a > (SceLwMutex *mutex, s32 count)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gade39cec8bb18b4b48626c0ae4286d2dd" > sceKernelTryLockLwMutex_600< / a > (SceLwMutex *mutex, s32 count)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga92a64e28e82b7e8c1e96b2c528eb32fb" > sceKernelLockLwMutexCB< / a > (SceLwMutex *mutex, s32 count)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga823bc0a7670b969e44ac72955c25aa50" > sceKernelLockLwMutex< / a > (SceLwMutex *mutex, s32 count)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga4f12087591bceef908537a2617c28aa5" > sceKernelUnlockLwMutex< / a > (SceLwMutex *mutex, s32 count)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gac34f2ec2dd1b9079dd017aed7487a14a" > Kernel_Library_3AD10D4D< / a > (SceLwMutex *mutex)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > s32  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#ga01f06abbcc06e1ac48c2b9e38e496488" > sceKernelReferLwMutexStatus< / a > (SceLwMutex *mutex, u32 *addr)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gaeb89383520c91965b8b305a01b9075c5" > sceKernelMemcpy< / a > (void *dst, const void *src, SceSize size)< / td > < / tr >
< tr > < td class = "memItemLeft" align = "right" valign = "top" > void *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group__UsersystemLib.html#gacb4b6ca5c01c74e1c12bdaad428c38f5" > sceKernelMemset< / a > (void *dst, s8 val, SceSize size)< / td > < / tr >
< / table >
< hr / > < a name = "details" id = "details" > < / a > < h2 > Detailed Description< / h2 >
< dl class = "author" > < dt > < b > Author:< / b > < / dt > < dd > geecko < / dd > < / dl >
< dl class = "version" > < dt > < b > Version:< / b > < / dt > < dd > 6.60< / dd > < / dl >
< p > The usersystemlib.prx module RE'ing. < / p >
< hr / > < h2 > Function Documentation< / h2 >
< a class = "anchor" id = "ga20367eeefab6198dc1d7f6791d020075" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelCpuSuspendIntr" ref="ga20367eeefab6198dc1d7f6791d020075" args="(void)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga20367eeefab6198dc1d7f6791d020075" > sceKernelCpuSuspendIntr< / a > < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Suspends all interrupts.< / p >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > Current state of the interrupt controller. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga944ecd9597a355cc700f3f811d40d3ed" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelCpuResumeIntr" ref="ga944ecd9597a355cc700f3f811d40d3ed" args="(s32 intr)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void < a class = "el" href = "group__UsersystemLib.html#ga944ecd9597a355cc700f3f811d40d3ed" > sceKernelCpuResumeIntr< / a > < / td >
< td > (< / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > intr< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Resumes all interrupts.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > intr< / td > < td > A state returned by < a class = "el" href = "group__UsersystemLib.html#ga20367eeefab6198dc1d7f6791d020075" > sceKernelCpuSuspendIntr()< / a > . < / td > < / tr >
< / table >
< / dd >
< / dl >
< / div >
< / div >
< a class = "anchor" id = "gaeffc8cbe0a840a61390159b851b47cd4" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelCpuResumeIntrWithSync" ref="gaeffc8cbe0a840a61390159b851b47cd4" args="(s32 intr)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void < a class = "el" href = "group__UsersystemLib.html#gaeffc8cbe0a840a61390159b851b47cd4" > sceKernelCpuResumeIntrWithSync< / a > < / td >
< td > (< / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > intr< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Resumes all interrupts, with synchronization.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > intr< / td > < td > A state returned by < a class = "el" href = "group__UsersystemLib.html#ga20367eeefab6198dc1d7f6791d020075" > sceKernelCpuSuspendIntr()< / a > . < / td > < / tr >
< / table >
< / dd >
< / dl >
< / div >
< / div >
< a class = "anchor" id = "gab3c095a6d5704d3397f89d574d43954f" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelIsCpuIntrSuspended" ref="gab3c095a6d5704d3397f89d574d43954f" args="(s32 intr)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#gab3c095a6d5704d3397f89d574d43954f" > sceKernelIsCpuIntrSuspended< / a > < / td >
< td > (< / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > intr< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Checks if interrupts are suspended.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > intr< / td > < td > A state returned by < a class = "el" href = "group__UsersystemLib.html#ga20367eeefab6198dc1d7f6791d020075" > sceKernelCpuSuspendIntr()< / a > .< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > 1 if the state indicates that interrupts are suspended, otherwise 0. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga4e6219082a8aeae96d8f6d3069747fed" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelIsCpuIntrEnable" ref="ga4e6219082a8aeae96d8f6d3069747fed" args="(void)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga4e6219082a8aeae96d8f6d3069747fed" > sceKernelIsCpuIntrEnable< / a > < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Checks if interrupts are enabled.< / p >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > 1 if interrupts are enabled, otherwise 0. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga638cd25b4d88295a7cb59c3dfd1dece4" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sub_00000208" ref="ga638cd25b4d88295a7cb59c3dfd1dece4" args="(s32 dlId, void *stall)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga638cd25b4d88295a7cb59c3dfd1dece4" > sub_00000208< / a > < / td >
< td > (< / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > dlId< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void *  < / td >
< td class = "paramname" > < em > stall< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Calls sceGeListUpdateStallAddr.< / p >
< p > This is NOT an exported function because it is only used by < a class = "el" href = "group__UsersystemLib.html#ga3950cf6a6f0928b1bb6128ac8503a778" > sceGe_lazy_31129B95()< / a > . Its syscall instruction is patched at runtime by the GE module. < / p >
< / div >
< / div >
< a class = "anchor" id = "ga3950cf6a6f0928b1bb6128ac8503a778" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceGe_lazy_31129B95" ref="ga3950cf6a6f0928b1bb6128ac8503a778" args="(s32 dlId, void *stall)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga3950cf6a6f0928b1bb6128ac8503a778" > sceGe_lazy_31129B95< / a > < / td >
< td > (< / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > dlId< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void *  < / td >
< td class = "paramname" > < em > stall< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Updates the stall address.< / p >
< p > Calls sceGeListUpdateStallAddr with additional checks, limiting its call once out of 64 times. This function is only used by 'Genso Suikoden I & II'.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > dlId< / td > < td > The ID of the display list which stall address will be modified. < / td > < / tr >
< tr > < td class = "paramname" > stall< / td > < td > A new stall address.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > SCE_ERROR_OK on success, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga77feb17d4ead3b4c81273467c4f602be" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelGetThreadId" ref="ga77feb17d4ead3b4c81273467c4f602be" args="(void)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga77feb17d4ead3b4c81273467c4f602be" > sceKernelGetThreadId< / a > < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Gets the current thread ID.< / p >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > The current thread ID, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gac12c779057f2506ae4b41acb7d1d8871" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelCheckThreadStack" ref="gac12c779057f2506ae4b41acb7d1d8871" args="(void)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#gac12c779057f2506ae4b41acb7d1d8871" > sceKernelCheckThreadStack< / a > < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Checks how much stack space is left for the current thread.< / p >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > The current thread's stack space available, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gae3e05cc92fdaa57aabc4dd0d1cbd389d" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelGetTlsAddr" ref="gae3e05cc92fdaa57aabc4dd0d1cbd389d" args="(SceUID uid)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void* < a class = "el" href = "group__UsersystemLib.html#gae3e05cc92fdaa57aabc4dd0d1cbd389d" > sceKernelGetTlsAddr< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceUID  < / td >
< td class = "paramname" > < em > uid< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Gets a tls address.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > uid< / td > < td > Unique tls identifier.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > A pointer, otherwise NULL on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gacce75d90cafca598b1f1f67337a6cae5" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelTryLockLwMutex" ref="gacce75d90cafca598b1f1f67337a6cae5" args="(SceLwMutex *mutex, s32 count)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#gacce75d90cafca598b1f1f67337a6cae5" > sceKernelTryLockLwMutex< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > count< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Tries to lock a lightweight mutex.< / p >
< p > This function is non-blocking. If the mutex is flagged as recursive, count can be > 1. For more information, see < a href = "http://linux.die.net/man/3/pthread_mutex_trylock" > http://linux.die.net/man/3/pthread_mutex_trylock< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure. < / td > < / tr >
< tr > < td class = "paramname" > count< / td > < td > The lock counter increment.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > SCE_ERROR_OK on success, otherwise SCE_ERROR_KERNEL_LWMUTEX_LOCKED on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gade39cec8bb18b4b48626c0ae4286d2dd" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelTryLockLwMutex_600" ref="gade39cec8bb18b4b48626c0ae4286d2dd" args="(SceLwMutex *mutex, s32 count)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#gade39cec8bb18b4b48626c0ae4286d2dd" > sceKernelTryLockLwMutex_600< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > count< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Tries to lock a lightweight mutex (6.xx version).< / p >
< p > This function is non-blocking. It could return SCE_ERROR_KERNEL_LWMUTEX_LOCKED. Unlike < a class = "el" href = "group__UsersystemLib.html#gacce75d90cafca598b1f1f67337a6cae5" > sceKernelTryLockLwMutex()< / a > , the error codes are more informative. If the mutex is flagged as recursive, count can be > 1. For more information, see < a href = "http://linux.die.net/man/3/pthread_mutex_trylock" > http://linux.die.net/man/3/pthread_mutex_trylock< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure. < / td > < / tr >
< tr > < td class = "paramname" > count< / td > < td > The lock counter increment.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > SCE_ERROR_OK on success, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga92a64e28e82b7e8c1e96b2c528eb32fb" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelLockLwMutexCB" ref="ga92a64e28e82b7e8c1e96b2c528eb32fb" args="(SceLwMutex *mutex, s32 count)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga92a64e28e82b7e8c1e96b2c528eb32fb" > sceKernelLockLwMutexCB< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > count< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Locks a lightweight mutex (callback).< / p >
< p > This function can be blocking if the mutex is already locked. If the mutex is flagged as recursive, count can be > 1. For more information, see < a href = "http://linux.die.net/man/3/pthread_mutex_lock" > http://linux.die.net/man/3/pthread_mutex_lock< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure. < / td > < / tr >
< tr > < td class = "paramname" > count< / td > < td > The lock counter increment.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > SCE_ERROR_OK on success, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga823bc0a7670b969e44ac72955c25aa50" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelLockLwMutex" ref="ga823bc0a7670b969e44ac72955c25aa50" args="(SceLwMutex *mutex, s32 count)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga823bc0a7670b969e44ac72955c25aa50" > sceKernelLockLwMutex< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > count< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Locks a lightweight mutex.< / p >
< p > This function can be blocking if the mutex is already locked. If the mutex is flagged as recursive, count can be > 1. For more information, see < a href = "http://linux.die.net/man/3/pthread_mutex_lock" > http://linux.die.net/man/3/pthread_mutex_lock< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure. < / td > < / tr >
< tr > < td class = "paramname" > count< / td > < td > The lock counter increment.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > SCE_ERROR_OK on success, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga4f12087591bceef908537a2617c28aa5" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelUnlockLwMutex" ref="ga4f12087591bceef908537a2617c28aa5" args="(SceLwMutex *mutex, s32 count)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga4f12087591bceef908537a2617c28aa5" > sceKernelUnlockLwMutex< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > s32  < / td >
< td class = "paramname" > < em > count< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Unlocks a lightweight mutex.< / p >
< p > This function is non-blocking. If the mutex is flagged as recursive, count can be > 1. For more information, see < a href = "http://linux.die.net/man/3/pthread_mutex_unlock" > http://linux.die.net/man/3/pthread_mutex_unlock< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure. < / td > < / tr >
< tr > < td class = "paramname" > count< / td > < td > The lock counter decrement.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > SCE_ERROR_OK on success, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gac34f2ec2dd1b9079dd017aed7487a14a" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::Kernel_Library_3AD10D4D" ref="gac34f2ec2dd1b9079dd017aed7487a14a" args="(SceLwMutex *mutex)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#gac34f2ec2dd1b9079dd017aed7487a14a" > Kernel_Library_3AD10D4D< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Gets the lock count of a lightweight mutex.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > The mutex's lock count, otherwise < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "ga01f06abbcc06e1ac48c2b9e38e496488" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelReferLwMutexStatus" ref="ga01f06abbcc06e1ac48c2b9e38e496488" args="(SceLwMutex *mutex, u32 *addr)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > s32 < a class = "el" href = "group__UsersystemLib.html#ga01f06abbcc06e1ac48c2b9e38e496488" > sceKernelReferLwMutexStatus< / a > < / td >
< td > (< / td >
< td class = "paramtype" > SceLwMutex *  < / td >
< td class = "paramname" > < em > mutex< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > u32 *  < / td >
< td class = "paramname" > < em > addr< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Refers the lightweight mutex's status.< / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > mutex< / td > < td > Pointer to a lightweight mutex structure. < / td > < / tr >
< tr > < td class = "paramname" > addr< / td > < td > Unknown.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > Unknown, may be SCE_ERROR_OK on success and < 0 on error. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gaeb89383520c91965b8b305a01b9075c5" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelMemcpy" ref="gaeb89383520c91965b8b305a01b9075c5" args="(void *dst, const void *src, SceSize size)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void* < a class = "el" href = "group__UsersystemLib.html#gaeb89383520c91965b8b305a01b9075c5" > sceKernelMemcpy< / a > < / td >
< td > (< / td >
< td class = "paramtype" > void *  < / td >
< td class = "paramname" > < em > dst< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const void *  < / td >
< td class = "paramname" > < em > src< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > SceSize  < / td >
< td class = "paramname" > < em > size< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Copies a block of memory.< / p >
< p > See < a href = "http://www.cplusplus.com/reference/cstring/memcpy/" > http://www.cplusplus.com/reference/cstring/memcpy/< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > dst< / td > < td > Pointer to the memory block where the content will be copied. < / td > < / tr >
< tr > < td class = "paramname" > src< / td > < td > Pointer to the data source. < / td > < / tr >
< tr > < td class = "paramname" > size< / td > < td > Number of bytes to copy.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > Value of dst. < / dd > < / dl >
< / div >
< / div >
< a class = "anchor" id = "gacb4b6ca5c01c74e1c12bdaad428c38f5" > < / a > <!-- doxytag: member="usersystemlib_kernel.h::sceKernelMemset" ref="gacb4b6ca5c01c74e1c12bdaad428c38f5" args="(void *dst, s8 val, SceSize size)" -->
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void* < a class = "el" href = "group__UsersystemLib.html#gacb4b6ca5c01c74e1c12bdaad428c38f5" > sceKernelMemset< / a > < / td >
< td > (< / td >
< td class = "paramtype" > void *  < / td >
< td class = "paramname" > < em > dst< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > s8  < / td >
< td class = "paramname" > < em > val< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > SceSize  < / td >
< td class = "paramname" > < em > size< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div >
< div class = "memdoc" >
< p > Fills a block of memory.< / p >
< p > See < a href = "http://www.cplusplus.com/reference/cstring/memset/" > http://www.cplusplus.com/reference/cstring/memset/< / a > < / p >
< dl class = "params" > < dt > < b > Parameters:< / b > < / dt > < dd >
< table class = "params" >
< tr > < td class = "paramname" > dst< / td > < td > Pointer to the memory block to fill. < / td > < / tr >
< tr > < td class = "paramname" > val< / td > < td > Value to be set. < / td > < / tr >
< tr > < td class = "paramname" > size< / td > < td > Number of bytes to be set.< / td > < / tr >
< / table >
< / dd >
< / dl >
< dl class = "return" > < dt > < b > Returns:< / b > < / dt > < dd > Value of dst. < / dd > < / dl >
< / div >
< / div >
< / div > <!-- contents -->
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(0)" > < span class = "SelectionMark" >   < / span > All< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(1)" > < span class = "SelectionMark" >   < / span > Data Structures< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(2)" > < span class = "SelectionMark" >   < / span > Files< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(3)" > < span class = "SelectionMark" >   < / span > Variables< / a > < / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< iframe src = "javascript:void(0)" frameborder = "0"
name="MSearchResults" id="MSearchResults">
< / iframe >
< / div >
< hr class = "footer" / > < address class = "footer" > < small >
2016-08-03 00:15:35 +00:00
Generated on Wed Aug 3 2016 00:15:35 for uOFW by   < a href = "http://www.doxygen.org/index.html" >
2014-10-17 21:26:07 +00:00
< img class = "footer" src = "doxygen.png" alt = "doxygen" / >
< / a > 1.7.6.1
< / small > < / address >
< / body >
< / html >