Some functions added

This commit is contained in:
Nekotekina 2015-01-30 00:42:53 +03:00
parent 6c40dc0631
commit 74b6d5c2ed
15 changed files with 2167 additions and 331 deletions

View file

@ -4,6 +4,79 @@
extern psv_log_base sceFiber;
typedef vm::psv::ptr<void(u32 argOnInitialize, u32 argOnRun)> SceFiberEntry;
union SceFiber
{
static const uint size = 128;
static const uint align = 8;
u64 padding[size / sizeof(u64)];
};
union SceFiberOptParam
{
static const uint size = 128;
static const uint align = 8;
u64 padding[size / sizeof(u64)];
};
union SceFiberInfo
{
static const uint size = 128;
static const uint align = 8;
u64 padding[size / sizeof(u64)];
struct
{
SceFiberEntry entry;
u32 argOnInitialize;
vm::psv::ptr<void> addrContext;
s32 sizeContext;
char name[32];
};
};
s32 _sceFiberInitializeImpl(vm::psv::ptr<SceFiber> fiber, vm::psv::ptr<const char> name, SceFiberEntry entry, u32 argOnInitialize, vm::psv::ptr<void> addrContext, u32 sizeContext, vm::psv::ptr<const SceFiberOptParam> optParam, u32 buildVersion)
{
throw __FUNCTION__;
}
s32 sceFiberOptParamInitialize(vm::psv::ptr<SceFiberOptParam> optParam)
{
throw __FUNCTION__;
}
s32 sceFiberFinalize(vm::psv::ptr<SceFiber> fiber)
{
throw __FUNCTION__;
}
s32 sceFiberRun(vm::psv::ptr<SceFiber> fiber, u32 argOnRunTo, vm::psv::ptr<u32> argOnReturn)
{
throw __FUNCTION__;
}
s32 sceFiberSwitch(vm::psv::ptr<SceFiber> fiber, u32 argOnRunTo, vm::psv::ptr<u32> argOnRun)
{
throw __FUNCTION__;
}
s32 sceFiberGetSelf(vm::psv::ptr<vm::psv::ptr<SceFiber>> fiber)
{
throw __FUNCTION__;
}
s32 sceFiberReturnToThread(u32 argOnReturn, vm::psv::ptr<u32> argOnRun)
{
throw __FUNCTION__;
}
s32 sceFiberGetInfo(vm::psv::ptr<SceFiber> fiber, vm::psv::ptr<SceFiberInfo> fiberInfo)
{
throw __FUNCTION__;
}
#define REG_FUNC(nid, name) reg_psv_func(nid, &sceFiber, #name, name)
psv_log_base sceFiber("SceFiber", []()
@ -12,15 +85,15 @@ psv_log_base sceFiber("SceFiber", []()
sceFiber.on_unload = nullptr;
sceFiber.on_stop = nullptr;
//REG_FUNC(0xF24A298C, _sceFiberInitializeImpl);
REG_FUNC(0xF24A298C, _sceFiberInitializeImpl);
//REG_FUNC(0xC6A3F9BB, _sceFiberInitializeWithInternalOptionImpl);
//REG_FUNC(0x7D0C7DDB, _sceFiberAttachContextAndRun);
//REG_FUNC(0xE00B9AFE, _sceFiberAttachContextAndSwitch);
//REG_FUNC(0x801AB334, sceFiberOptParamInitialize);
//REG_FUNC(0xE160F844, sceFiberFinalize);
//REG_FUNC(0x7DF23243, sceFiberRun);
//REG_FUNC(0xE4283144, sceFiberSwitch);
//REG_FUNC(0x414D8CA5, sceFiberGetSelf);
//REG_FUNC(0x3B42921F, sceFiberReturnToThread);
//REG_FUNC(0x189599B4, sceFiberGetInfo);
REG_FUNC(0x801AB334, sceFiberOptParamInitialize);
REG_FUNC(0xE160F844, sceFiberFinalize);
REG_FUNC(0x7DF23243, sceFiberRun);
REG_FUNC(0xE4283144, sceFiberSwitch);
REG_FUNC(0x414D8CA5, sceFiberGetSelf);
REG_FUNC(0x3B42921F, sceFiberReturnToThread);
REG_FUNC(0x189599B4, sceFiberGetInfo);
});