reboot psp and load a custom ipl

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

reboot psp and load a custom ipl

Post by phobox »

is it possible?

let me explain you.. I want to be able to lauch the 1.50 fw installed on ms (with time machine) by lauching an user application from the "game" menu, because afaik i need to manually remove and reinsert the battery...
if not 1.50 also ddc with "test m33" feature are ok

I think this would be a cool feature for developers in order to test programs on different firmwares and with a easy access to virtual f0...

so i think that the problem can be solved by rebooting the psp and make (how? is it possible somehow) the psp read the ipl from the MS...

is it possible to create such a thing?
Ciao! from Italy
jojojoris
Posts: 255
Joined: Sun Mar 30, 2008 4:06 am

Post by jojojoris »

afaik the ipl is the fisrt thing that is loaded when you start the psp. So i don't think you can make a program that starts a different ipl.

I use timemachine the normal way. I hacked my battery so every time when i start my psp it loads the ipl on the memorystick.

I don't have to reinsert my battery every time. I can switch FW by restart my psp with one the the buttons pressed down.

Code: Select all

int main(){
     SetupCallbacks();
     makeNiceGame();
     sceKernelExitGame();
}
m0skit0
Posts: 191
Joined: Tue Jun 02, 2009 8:58 pm

Post by m0skit0 »

jojojoris wrote:So i don't think you can make a program that starts a different ipl.
Yes you can. But then you'll have to suspend-resume or cold reboot to make this new IPL executed by the pre-IPL. But to use a custom IPL (the way CFW does) you'll have to exploit the pre-IPL to get it loaded, because of encryption checking.
The Incredible Bill Gates wrote:The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers.
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

Post by phobox »

jojojoris how did you managed to do that? i mean not to reinsert the battery?
Ciao! from Italy
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

phobox wrote:jojojoris how did you managed to do that? i mean not to reinsert the battery?
I don't know what you mean exactly, but if you want to boot 1.50 with Time Machine then just hold the power switch for 3 seconds till its shuts down, then start it again pressing the corresponding hotkey in Time Machine for 1.50. There is no need to remove the battery at all.

Or use the Shutdown option from VSH menu to instantly shutdown. Then reboot pressing hotkey for 1.50. Or replace one of the icon's in XMB with a shutdown PRX.
phobox
Posts: 127
Joined: Mon Mar 24, 2008 6:22 pm

Post by phobox »

oh, i did't know i don't have to remove and reinsert the battery to make te msipl to be loaded.

now, my question is: is it possible to create an application to start a firmware installed on the memory stick (link the 1.50 from timemachine or the DDC ones)?

i thought that to do this i had to "reboot the psp with a custom ipl", and this is what it does if there is a pandora battery! (i didn't know that..)
Ciao! from Italy
m0skit0
Posts: 191
Joined: Tue Jun 02, 2009 8:58 pm

Post by m0skit0 »

I think you can, but you'll have to install a custom IPL on flash first if you don't want to use Pandora. Then have the IPL load the necessary PRXs from MS. I'm assuming we have MS access at IPL stage, which might be a wrong assumption.
The Incredible Bill Gates wrote:The obvious mathematical breakthrough would be development of an easy way to factor large prime numbers.
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

phobox wrote:now, my question is: is it possible to create an application to start a firmware installed on the memory stick (link the 1.50 from timemachine or the DDC ones)?

i thought that to do this i had to "reboot the psp with a custom ipl", and this is what it does if there is a pandora battery! (i didn't know that..)
phobox wrote:now, my question is: is it possible to create an application to start a firmware installed on the memory stick (link the 1.50 from timemachine or the DDC ones)?

i thought that to do this i had to "reboot the psp with a custom ipl", and this is what it does if there is a pandora battery! (i didn't know that..)
This is basically what devhook did. But if you want to boot into a "clean" new firmware, then you'll need to execute the IPL of the new firmware. Executing another IPL from an application will have too many complications.

When the PSP recovers from suspend mode, most of the hardware is reset and it loads the IPL again from scratch. If it was launched in service mode, then it will continue to read the IPL from Memory Stick for every suspend & resume. The IPL will take another code branch if it detects that its booting from suspend instead of coldboot (how?) and restores the previous state from RAM. If this branch is forced to coldboot path then the PSP will reboot to XMB when you suspend & resume.

You can make a program to set an alarm to wake up the PSP after 1 second and then suspend it. It will reboot to the MSIPL. You'll need to use a custom IPL on the memory stick to ignore the suspend state and load another firmware IPL normally. How will this custom IPL know whether you want it ignore suspend/load nand firmware/load another firmware ? It'll involve holding buttons again (or maybe you can store info in some fixed address of unused memory?). Or you'll need to write a new MSIPL before you suspend the PSP to load your firmware.

You might as well shutdown and restart instead :P
phobox wrote:I'm assuming we have MS access at IPL stage, which might be a wrong assumption.
Without Pandora the MS must be powered on manually in the custom IPL. In service mode it is already enabled by pre-IPL.
User avatar
Torch
Posts: 825
Joined: Wed May 28, 2008 2:50 am

Post by Torch »

An easier solution will be to just rewrite the Time Machine config.txt to boot another firmware as default action and shutdown the PSP. (You cannot simply software restart as this will load the IPL starting from the current firmwares IPL not from the beginning of MSIPL.)
Post Reply