49 #if defined(F_SifLoadFileInit)
56 static int _rb_count = 0;
80 #if defined(F_SifLoadFileExit)
88 #ifdef F__SifLoadModule
89 struct _lf_module_load_arg {
99 int _SifLoadModule(
const char *path,
int arg_len,
const char *args,
int *modres,
100 int fno,
int dontwait)
102 struct _lf_module_load_arg arg;
107 memset(&arg, 0,
sizeof arg);
112 if (args && arg_len) {
114 memcpy(arg.args, args, arg.p.arg_len);
123 *modres = arg.modres;
129 #if defined(F_SifLoadModule)
130 int SifLoadModule(
const char *path,
int arg_len,
const char *args)
136 #if defined(F_SifLoadStartModule)
143 #if defined(F_SifLoadModuleEncrypted)
150 #ifdef F_SifStopModule
151 struct _lf_module_stop_arg {
164 int SifStopModule(
int id,
int arg_len,
const char *args,
int *mod_res)
166 struct _lf_module_stop_arg arg;
173 if (args && arg_len) {
175 memcpy(arg.args, args, arg.q.arg_len);
184 *mod_res = arg.q.modres;
190 #ifdef F_SifUnloadModule
191 union _lf_module_unload_arg {
198 union _lf_module_unload_arg arg;
212 #ifdef F_SifSearchModuleByName
213 struct _lf_search_module_by_name_arg {
222 struct _lf_search_module_by_name_arg arg;
236 #ifdef F_SifSearchModuleByAddress
237 struct _lf_search_module_by_address_arg {
246 struct _lf_search_module_by_address_arg arg;
259 #ifdef F__SifLoadElfPart
260 struct _lf_elf_load_arg {
269 struct _lf_elf_load_arg arg;
275 strncpy(arg.secname, secname,
LF_ARG_MAX - 1);
294 #if defined(F_SifLoadElfPart)
301 #if defined(F_SifLoadElf)
304 u32 secname = 0x6c6c61;
309 #if defined(F_SifLoadElfEncrypted)
312 u32 secname = 0x6c6c61;
317 #if defined(F_SifIopSetVal)
327 arg.val.b = (
u8)(
val & 0xff);
330 arg.val.s = (
u16)(
val & 0xffff);
350 #if defined(F_SifIopGetVal)
368 *(
u8 *)
val = (
u8)arg.p.result & 0xff;
371 *(
u16 *)
val = (
u16)arg.p.result & 0xffff;
374 *(
u32 *)
val = arg.p.result;
383 #ifdef F__SifLoadModuleBuffer
384 struct _lf_module_buffer_load_arg {
399 struct _lf_module_buffer_load_arg arg;
404 memset(&arg, 0,
sizeof arg);
407 if (args && arg_len) {
409 memcpy(arg.args, args, arg.q.arg_len);
419 *modres = arg.q.modres;
425 #if defined(F_SifLoadModuleBuffer)
432 #if defined(F_SifLoadStartModuleBuffer)
439 #if defined(F_SifExecModuleBuffer)
448 size = (size + 15) & -16;
454 dmat.
dest = iop_addr;
472 #if defined(F_SifExecModuleFile)
478 if ((fd = open(path, O_RDONLY)) < 0)
481 if ((size = lseek(fd, 0, SEEK_END)) < 0)
int SifLoadModuleEncrypted(const char *path, int arg_len, const char *args)
int SifLoadModule(const char *path, int arg_len, const char *args)
int SifLoadStartModuleBuffer(void *ptr, int arg_len, const char *args, int *mod_res)
void SifLoadFileExit(void)
int SifLoadElf(const char *path, t_ExecData *data)
int SifLoadElfPart(const char *path, const char *secname, t_ExecData *data)
int SifLoadElfEncrypted(const char *path, t_ExecData *data)
int SifExecModuleBuffer(void *ptr, u32 size, u32 arg_len, const char *args, int *mod_res)
int SifLoadFileInit(void)
int SifIopSetVal(u32 iop_addr, int val, int type)
int SifExecModuleFile(const char *path, u32 arg_len, const char *args, int *mod_res)
int _SifLoadModule(const char *path, int arg_len, const char *args, int *modres, int fno, int dontwait)
int SifIopGetVal(u32 iop_addr, void *val, int type)
int SifLoadModuleBuffer(void *ptr, int arg_len, const char *args)
int SifLoadStartModule(const char *path, int arg_len, const char *args, int *mod_res)
void * SifAllocIopHeap(int size)
int SifFreeIopHeap(void *addr)
int SifLoadIopHeap(const char *path, void *addr)
u32 SifSetDma(SifDmaTransfer_t *sdd, s32 len)
static void nopdelay(void)
SifRpcClientData_t _lf_cd
int _SifLoadModuleBuffer(void *ptr, int arg_len, const char *args, int *modres)
int _SifLoadElfPart(const char *path, const char *secname, t_ExecData *data, int fno)
int SifSearchModuleByName(const char *name)
int SifStopModule(int id, int arg_len, const char *args, int *mod_res)
@ LF_F_SEARCH_MOD_BY_NAME
@ LF_F_SEARCH_MOD_BY_ADDRESS
int SifUnloadModule(int id)
int SifSearchModuleByAddress(const void *ptr)
void SifWriteBackDCache(void *ptr, int size)
void SifInitRpc(int mode)
int SifBindRpc(SifRpcClientData_t *client, int rpc_number, int mode)
int SifCallRpc(SifRpcClientData_t *client, int rpc_number, int mode, void *send, int ssize, void *receive, int rsize, SifRpcEndFunc_t end_function, void *end_param)
struct t_SifRpcServerData * server
union _lf_iop_val_arg::@19 val
union _lf_iop_val_arg::@18 p