add stubs for svc 0x61, 0x63, 0x64
This commit is contained in:
parent
c71637d9ca
commit
a1c1b44dfd
@ -42,6 +42,13 @@ typedef enum {
|
|||||||
ARBITER_KERNEL4 =4,
|
ARBITER_KERNEL4 =4,
|
||||||
} ArbitrationType;
|
} ArbitrationType;
|
||||||
|
|
||||||
|
typedef struct{
|
||||||
|
u32 type;
|
||||||
|
u32 tid;
|
||||||
|
u32 unknown[2];
|
||||||
|
u32 eventdata[6];
|
||||||
|
} DebugEventInfo;
|
||||||
|
|
||||||
static inline void* getThreadLocalStorage(void)
|
static inline void* getThreadLocalStorage(void)
|
||||||
{
|
{
|
||||||
void* ret;
|
void* ret;
|
||||||
@ -52,7 +59,7 @@ static inline void* getThreadLocalStorage(void)
|
|||||||
static inline u32* getThreadCommandBuffer(void)
|
static inline u32* getThreadCommandBuffer(void)
|
||||||
{
|
{
|
||||||
return (u32*)((u8*)getThreadLocalStorage() + 0x80);
|
return (u32*)((u8*)getThreadLocalStorage() + 0x80);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 svcControlMemory(u32* addr_out, u32 addr0, u32 addr1, u32 size, MemOp op, MemPerm perm);
|
s32 svcControlMemory(u32* addr_out, u32 addr0, u32 addr1, u32 size, MemOp op, MemPerm perm);
|
||||||
s32 svcQueryMemory(MemInfo* info, PageInfo* out, u32 addr);
|
s32 svcQueryMemory(MemInfo* info, PageInfo* out, u32 addr);
|
||||||
@ -92,6 +99,9 @@ s32 svcGetThreadId(u32 *out, Handle handle);
|
|||||||
s32 svcOutputDebugString(const char* str, int length);
|
s32 svcOutputDebugString(const char* str, int length);
|
||||||
Result svcCreatePort(Handle* portServer, Handle* portClient, const char* name, s32 maxSessions);
|
Result svcCreatePort(Handle* portServer, Handle* portClient, const char* name, s32 maxSessions);
|
||||||
Result svcDebugActiveProcess(Handle* debug, u32 processId);
|
Result svcDebugActiveProcess(Handle* debug, u32 processId);
|
||||||
|
Result svcBreakDebugProcess(Handle debug);
|
||||||
|
Result svcGetProcessDebugEvent(DebugEventInfo *info, Handle debug);
|
||||||
|
Result svcContinueDebugEvent(Handle debug, u32 flags);
|
||||||
Result svcGetProcessList(s32* processCount, u32* processIds, s32 processIdMaxCount);
|
Result svcGetProcessList(s32* processCount, u32* processIds, s32 processIdMaxCount);
|
||||||
Result svcReadProcessMemory(void* buffer, Handle debug, u32 addr, u32 size);
|
Result svcReadProcessMemory(void* buffer, Handle debug, u32 addr, u32 size);
|
||||||
Result svcMapProcessMemory(Handle process, u32 startAddr, u32 endAddr);
|
Result svcMapProcessMemory(Handle process, u32 startAddr, u32 endAddr);
|
||||||
|
@ -319,6 +319,24 @@ svcDebugActiveProcess:
|
|||||||
str r1, [r2]
|
str r1, [r2]
|
||||||
bx lr
|
bx lr
|
||||||
|
|
||||||
|
.global svcBreakDebugProcess
|
||||||
|
.type svcBreakDebugProcess, %function
|
||||||
|
svcBreakDebugProcess:
|
||||||
|
svc 0x61
|
||||||
|
bx lr
|
||||||
|
|
||||||
|
.global svcGetProcessDebugEvent
|
||||||
|
.type svcGetProcessDebugEvent, %function
|
||||||
|
svcGetProcessDebugEvent:
|
||||||
|
svc 0x63
|
||||||
|
bx lr
|
||||||
|
|
||||||
|
.global svcContinueDebugEvent
|
||||||
|
.type svcContinueDebugEvent, %function
|
||||||
|
svcContinueDebugEvent:
|
||||||
|
svc 0x64
|
||||||
|
bx lr
|
||||||
|
|
||||||
.global svcGetProcessList
|
.global svcGetProcessList
|
||||||
.type svcGetProcessList, %function
|
.type svcGetProcessList, %function
|
||||||
svcGetProcessList:
|
svcGetProcessList:
|
||||||
|
Loading…
Reference in New Issue
Block a user