SBORPS Random Fact 08
To find out the PSP model your code is running on you can call the function sceKernelGetModel(). People have been using it in homebrew to differentiate between 01g and 02g machines (fat and slim) to determine what their app will do depending on the model the user is running.
However, the sceKernelGetModel function can do a lot more than just determining whether you’re running fat or slim PSP, it can return values for:
-
01g – fat PSP
-
02g – slim PSP
-
03g – 3K PSP
-
04g – ??? (an updated 3K model? 4K perhaps?)
-
05g – PSP GO
-
06g – ???
-
07g – ???
-
08g – ???
-
-
/*
-
sceKernelGetModel() actually returns a value
-
from 0-7 to represent each model,
-
0 being the PSP fat,
-
1 being the PSP slim, etc.
-
all the way upto 7 for the 08g model.
-
*/
That’s three more models after the PSP GO! As well as a 4000 model after 3000.
The fw for 04g models is already out, it’s included with normal fw updaters (6.xx) and can be decrypted using the 3K keys. There’s also code already in the fw supporting 06g and 08g models (which seem to be GO-like models).
So for people thinking the PSP GO was a waste of a update or there wouldn’t be any more updates, prepare for three more models…
November 29th, 2009 at 12:55 am
Is there anything that uses the ATA drivers? How does the GO’s flash memory work?
November 29th, 2009 at 8:23 pm
Yes the PSP GO flash memory uses the ATA interface (also the UMD drive used ATA too).
The GO flash is an emulated HDD, it uses APA partitioning with the PFS filesystem on top (for anyone familiar with ps2dev this is the same partitioning/filesystem as the PS2 HDD, PFS = Playstation FileSystem).
A FAT filesystem driver runs on top of the emulated HDD to provide file access to the VSH and when you connect via USB to PC.
In a previous blog post I posted some sysreg NID’s that were added in 2.70 and this is the API the GO flash uses:
sceSysregAtahddIoEnable
sceSysregAtahddClkEnable
sceSysregAtahddBusClockEnable
sceSysregAtahddResetEnable
etc.
Note, this is a seperate ATA interface to the UMD interface in ata.prx (sceAta) which is used for the ATAPI protocol.
December 3rd, 2009 at 8:10 pm
That means it can be connected to a desktop IDE harddrive? Or we could cram an iPod HDD in it..
December 17th, 2009 at 9:24 am
I assume that the newer model revisions we see here are just upgraded packages with a higher capacity HDD?
December 18th, 2009 at 2:42 am
Why would you assume that? It could be anything, but still binary compatible with existing ones.
December 24th, 2009 at 4:00 am
I like the ipod hdd idea. A 60Gb psp would be very nice.