| View previous topic :: View next topic |
| Author |
Message |
moonlight
Joined: 26 Oct 2005 Posts: 567
|
Posted: Fri Jun 16, 2006 4:20 am Post subject: Three new nids (two from ModuleManager and 1 from LoadCore) |
|
|
The names of the 3 functions were in plain text in the 1.50 modulemgr.prx.
All of them are only available for 1.50 and greater.
The two from ModuleMgr, available for both, user and kernel mode:
0xF0A26395
| Code: |
/**
* Gets the UID of the module calling the function
*
* @returns The UID of the module calling the function on success, otherwise < 0
*/
SceUID sceKernelGetModuleId(void);
|
0xD8B73127
| Code: |
/**
* Gets the UID of a module from an address.
*
* @param addr - Address somewhere within the module.
*
* @returns The UID of the module on success, otherwise < 0
*/
SceUID sceKernelGetModuleIdByAddress(unsigned int addr);
|
And the one from LoadCore, available only for kernel mode:
0x929B5C69 - sceKernelGetModuleListWithAlloc
I have not looked at this one, but its not very difficult to guess what it does. |
|
| Back to top |
|
 |
moonlight
Joined: 26 Oct 2005 Posts: 567
|
Posted: Fri Jun 16, 2006 7:39 pm Post subject: |
|
|
A bit more of hunt in LoadCoreForKernel
0x5248a98f - sceKernelLoadModuleBootLoadCore (2.50 and greater i guess)
0x52a86c21 - sceKernelGetModuleFromUID (1.50 and greater)
0x05d915db - sceKernelGetModuleIdListForKernel (1.50 and greater) |
|
| Back to top |
|
 |
groepaz

Joined: 01 Sep 2005 Posts: 305
|
|
| Back to top |
|
 |
moonlight
Joined: 26 Oct 2005 Posts: 567
|
Posted: Sat Jun 17, 2006 3:53 am Post subject: |
|
|
Today i have nothing more to do, so a lot more of nids. I have finally found the name of the function that executes homebrew.
LoadCoreForKernel:
0x31df42bf - sceKernelLoadExecVSHMs1
This function is the one that the vsh uses to execute the update from the memory stick.
0x28d0d249 - sceKernelLoadExecVSHMs2
This function is the one that the vsh uses to execute the games/homebrew from the memory stick.
0x70901231 - sceKernelLoadExecVSHMs3
This function... seems that is never called :S
All of them share the same structure:
A first parameter indicating the path of the program to execute, and a second parameter, that is a pointer to a SceKernelLoadExecVSHParam struct, which is like a standar SceKernelLoadExecParam with some extra fields that specifiy the parameters for vshmain at the return.
And now from sceVshBridge, the equivalents to these functions and some others:
0x04aec74c - vshKernelLoadExecVSHDiscDebug
0xb7c46dca - vshKernelLoadExecVSHDiscUpdater
0x68be3316 - vshKernelLoadExecBufferVSHUsbWlanDebug
0xf35bfb7d - vshKernelLoadExecVSHMs1
0x97fb006f - vshKernelLoadExecVSHMs2
0x029ef6c9 - vshKernelLoadExecVSHMs3
As a curiosity, the name of the equivalent of sceKernelLoadExecVSHDisc (sceVshBridge_F4873F4D) is not called vshKernelLoadExecVSHDisc :S It still has no name.
All of those functions are available in all firmwares (at least from 1.00-2.50), except vshKernelLoadExecVSHDiscDebug which is not available in 1.00
Well, if someone with access to the svn want to update the libdoc and the sdk. The nids are not safe in my computer ;)
| groepaz wrote: | | interisting....could be useful for pspinside (if i ever get my lazy ass up again and work on it :=P) |
I love that program. The only problem it has is that a lot of elf's cannot be loaded... Probably because they are statically loaded to some address where pspinside is also loaded. Maybe a fix for this could be to put the code in a kernel prx, with a simple bootloaderelf that load the prx, and is then unloaded, like psplink does. |
|
| Back to top |
|
 |
dot_blank

Joined: 28 Sep 2005 Posts: 498 Location: Brasil
|
Posted: Sat Jun 17, 2006 8:01 am Post subject: |
|
|
very good stuff moony :)
sceKernelLoadExecVSHMs3 might this be for game sharing _________________ 10011011 00101010 11010111 10001001 10111010 |
|
| Back to top |
|
 |
groepaz

Joined: 01 Sep 2005 Posts: 305
|
Posted: Sat Jun 17, 2006 8:08 am Post subject: |
|
|
| Quote: | | I love that program. The only problem it has is that a lot of elf's cannot be loaded... Probably because they are statically loaded to some address where pspinside is also loaded. Maybe a fix for this could be to put the code in a kernel prx, with a simple bootloaderelf that load the prx, and is then unloaded, like psplink does. |
yep, thats on my (rather long) todo list :=P _________________ http://www.hitmen-console.org
http://hitmen.c02.at/files/yapspd/ |
|
| Back to top |
|
 |
|