APT : glanceparameter/receiveparameter
This commit is contained in:
parent
d09a8f2e83
commit
021911976f
@ -14,6 +14,8 @@ Result APT_Enable(Handle handle, u32 a);
|
||||
Result APT_PrepareToJumpToHomeMenu(Handle handle);
|
||||
Result APT_JumpToHomeMenu(Handle handle, u32 a, u32 b, u32 c);
|
||||
Result APT_InquireNotification(Handle handle, u32 appID, u8* signalType);
|
||||
Result APT_NotifyToWait(Handle handle, u32 a);
|
||||
Result APT_NotifyToWait(Handle handle, NS_APPID appID);
|
||||
Result APT_GlanceParameter(Handle handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize);
|
||||
Result APT_ReceiveParameter(Handle handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize);
|
||||
|
||||
#endif
|
||||
|
@ -87,14 +87,50 @@ Result APT_JumpToHomeMenu(Handle handle, u32 a, u32 b, u32 c)
|
||||
return cmdbuf[1];
|
||||
}
|
||||
|
||||
Result APT_NotifyToWait(Handle handle, u32 a)
|
||||
Result APT_NotifyToWait(Handle handle, NS_APPID appID)
|
||||
{
|
||||
u32* cmdbuf=getThreadCommandBuffer();
|
||||
cmdbuf[0]=0x430040; //request header code
|
||||
cmdbuf[1]=a;
|
||||
cmdbuf[1]=appID;
|
||||
|
||||
Result ret=0;
|
||||
if((ret=svc_sendSyncRequest(handle)))return ret;
|
||||
|
||||
return cmdbuf[1];
|
||||
}
|
||||
|
||||
Result APT_GlanceParameter(Handle handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize)
|
||||
{
|
||||
u32* cmdbuf=getThreadCommandBuffer();
|
||||
cmdbuf[0]=0xE0080; //request header code
|
||||
cmdbuf[1]=appID;
|
||||
cmdbuf[2]=bufferSize;
|
||||
|
||||
cmdbuf[0+0x100/4]=(bufferSize<<14)|2;
|
||||
cmdbuf[1+0x100/4]=(u32)buffer;
|
||||
|
||||
Result ret=0;
|
||||
if((ret=svc_sendSyncRequest(handle)))return ret;
|
||||
|
||||
if(actualSize)*actualSize=cmdbuf[4];
|
||||
|
||||
return cmdbuf[1];
|
||||
}
|
||||
|
||||
Result APT_ReceiveParameter(Handle handle, NS_APPID appID, u32 bufferSize, u32* buffer, u32* actualSize)
|
||||
{
|
||||
u32* cmdbuf=getThreadCommandBuffer();
|
||||
cmdbuf[0]=0xD0080; //request header code
|
||||
cmdbuf[1]=appID;
|
||||
cmdbuf[2]=bufferSize;
|
||||
|
||||
cmdbuf[0+0x100/4]=(bufferSize<<14)|2;
|
||||
cmdbuf[1+0x100/4]=(u32)buffer;
|
||||
|
||||
Result ret=0;
|
||||
if((ret=svc_sendSyncRequest(handle)))return ret;
|
||||
|
||||
if(actualSize)*actualSize=cmdbuf[4];
|
||||
|
||||
return cmdbuf[1];
|
||||
}
|
||||
|
@ -87,13 +87,13 @@ svc_waitSynchronization1:
|
||||
.global svc_waitSynchronizationN
|
||||
.type svc_waitSynchronizationN, %function
|
||||
svc_waitSynchronizationN:
|
||||
stmfd sp!, {r5}
|
||||
str r5, [sp, #-4]!
|
||||
mov r5, r0
|
||||
ldr r0, [sp, #0x4]
|
||||
ldr r4, [sp, #0x4+0x4]
|
||||
svc 0x25
|
||||
str r1, [r5]
|
||||
ldmfd sp!, {r5}
|
||||
ldr r5, [sp], #4
|
||||
bx lr
|
||||
|
||||
.global svc_connectToPort
|
||||
|
Loading…
Reference in New Issue
Block a user