forums.ps2dev.org Forum Index forums.ps2dev.org
Homebrew PS2, PSP & PS3 Development Discussions
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The PSP IO Drivers

 
Post new topic   Reply to topic    forums.ps2dev.org Forum Index -> PSP Development
View previous topic :: View next topic  
Author Message
moonlight



Joined: 26 Oct 2005
Posts: 567

PostPosted: Mon May 08, 2006 10:26 pm    Post subject: The PSP IO Drivers Reply with quote

The psp IO drivers and their locations in firmware 1.50 (in the order they are created).

driver lflash (sceLFatFs_Driver+0xE46C):
Code:

name = "lflash";
dev_type = 0x04;  (block device?)
unk2 = 0x0200; // 512 block size?
name2 = NULL;
funcs = sceLFatFs_Driver+0xE480

IoInit = sceLFatFs_Driver+0x0000A434;
IoExit = sceLFatFs_Driver+0x0000B0B4;
IoOpen = sceLFatFs_Driver+0x00008ED0;
IoClose = sceLFatFs_Driver+0x00009238;
IoRead = sceLFatFs_Driver+0x0000B164;
IoWrite = sceLFatFs_Driver+0x0000B2DC;
IoLseek = sceLFatFs_Driver+0x0000B410;
IoIoctl = sceLFatFs_Driver+0x0000B564;
IoRemove = sceLFatFs_Driver+0x0000B608
IoMkdir = sceLFatFs_Driver+0x0000B63c;
IoRmdir = sceLFatFs_Driver+0x0000B670;
IoDopen = sceLFatFs_Driver+0x0000B6A4;
IoDclose = sceLFatFs_Driver+0x0000B6D8;
IoDread = sceLFatFs_Driver+0x0000B714;
IoGetstat = sceLFatFs_Driver+0x0000B750;
IoChstat = sceLFatFs_Driver+0x0000B7A0;
IoRename = sceLFatFs_Driver+0x0000B7D4;
IoChdir = sceLFatFs_Driver+0x0000B808;
IoMount = sceLFatFs_Driver+0x0000B83c;
IoUmount = sceLFatFs_Driver+0x0000B848;
IoDevctl = sceLFatFs_Driver+0x0000B854;
IoUnk21 = sceLFatFs_Driver+0x0000B8B0;


driver flashfat sceLFatFs_Driver+0xE2FC
Code:

name= "flashfat";
dev_type = 0x10; // FileSystem
unk2 = 1; // size of unit? (byte)
name2 = "FAT over USB Mass"; // !?
funcs = sceLFatFs_Driver+0xE2A4;

IoInit = sceLFatFs_Driver+0x00001C24
IoExit = sceLFatFs_Driver+0x00001C48
IoOpen = sceLFatFs_Driver+0x00001C6C
IoClose = sceLFatFs_Driver+0x00001D80
IoRead = sceLFatFs_Driver+0x00001E68
IoWrite = sceLFatFs_Driver+0x00001F6C
IoLseek = sceLFatFs_Driver+0x00002074
IoIoctl = sceLFatFs_Driver+0x000021B0
IoRemove = sceLFatFs_Driver+0x000022E8
IoMkdir = sceLFatFs_Driver+0x000023E0
IoRmdir = sceLFatFs_Driver+0x000024E8
IoDopen = sceLFatFs_Driver+0x000025E0
IoDclose = sceLFatFs_Driver+0x000026D8
IoDread = sceLFatFs_Driver+0x000027FC
IoGetstat = sceLFatFs_Driver+0x000028F0
IoChstat = sceLFatFs_Driver+0x000029F4
IoRename = sceLFatFs_Driver+0x00002B0C
IoChdir = sceLFatFs_Driver+0x00002B4C
IoMount = sceLFatFs_Driver+0x00002B84
IoUmount = sceLFatFs_Driver+0x00002CB8
IoDevctl = sceLFatFs_Driver+0x00002DAC
IoUnk21 = sceLFatFs_Driver+0x00002EE8


driver irda sceSIRCS_IrDA_Driver+0x2070 (only for game mode):
Code:

name = "irda";
dev_type = 0x01; // ?
unk2 = 0; // ?
funcs = sceSIRCS_IrDA_Driver+0x20;

IoInit = sceSIRCS_IrDA_Driver+0x00001488
IoExit = sceSIRCS_IrDA_Driver+0x000014D4
IoOpen = sceSIRCS_IrDA_Driver+0x00001500
IoClose = sceSIRCS_IrDA_Driver+0x0000151C
IoRead = sceSIRCS_IrDA_Driver+0x00001538
IoWrite = sceSIRCS_IrDA_Driver+0x00001558
IoLseek = NULL;
IoIoctl = sceSIRCS_IrDA_Driver+0x000007C0
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = NULL;
IoDclose = NULL;
IoDread = NULL;
IoGetstat = NULL;
IoChstat = NULL;
IoRename = NULL;
IoChdir = NULL;
IoMount = NULL;
IoUmount = NULL;
IoDevctl = sceSIRCS_IrDA_Driver+0x00000948
IoUnk21 = NULL;


driver umd sceUmd9660_driver+0x6318:
Code:

name = "umd";
dev_type = 0x04; // block device?
unk2 = 0x0800; // 2048 block size?
name2 = "UMD9660";
funcs = sceUmd9660_driver+0x62c0

IoInit = sceUmd9660_driver+0x00000A44
IoExit = sceUmd9660_driver+0x00000434
IoOpen = sceUmd9660_driver+0x000004E8
IoClose = sceUmd9660_driver+0x00000134
IoRead = sceUmd9660_driver+0x000001BC
IoWrite = NULL;
IoLseek = sceUmd9660_driver+0x00000000
IoIoctl = sceUmd9660_driver+0x000007C4
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = NULL;
IoDclose = NULL;
IoDread = NULL;
IoGetstat = NULL;
IoChstat = NULL;
IoRename = NULL;
IoChdir = NULL;
IoMount = sceUmd9660_driver+0x00001DD4
IoUmount = sceUmd9660_driver+0x00001DE0
IoDevctl = sceUmd9660_driver+0x00000860
IoUnk21 = NULL;


driver isofs sceIsofs_driver+0x8E78:
Code:

name = "isofs";
dev_type = 0x10; // FileSystem
unk2 = 0x0800; // 2048 block size?
name2 = "ISOFS";
funcs = sceIsofs_driver+0x8E20;

IoInit = sceIsofs_driver+0x000052B4
IoExit = sceIsofs_driver+0x00006390
IoOpen = sceIsofs_driver+0x000067B0
IoClose = sceIsofs_driver+0x00006088
IoRead = sceIsofs_driver+0x00006A84
IoWrite = NULL;
IoLseek = sceIsofs_driver+0x00006CA4
IoIoctl = sceIsofs_driver+0x00006E00
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = sceIsofs_driver+0x0000598C
IoDclose = sceIsofs_driver+0x00006160
IoDread = sceIsofs_driver+0x00005CD4
IoGetstat = sceIsofs_driver+0x0000646C
IoChstat = NULL;
IoRename = NULL;
IoChdir = sceIsofs_driver+0x00005154
IoMount = sceIsofs_driver+0x00005440
IoUmount = sceIsofs_driver+0x0000624C
IoDevctl = sceIsofs_driver+0x00006F88
IoUnk21 = NULL;


driver mscmhc sceMScm_Driver+0x6F60:
Code:

name = "mscmhc";
dev_type = 0x01; // ?
unk2 = 0; // ?
name2 = "MS host controller";
funcs = sceMScm_Driver+0x6EB0;

IoInit = sceMScm_Driver+0x000055EC
IoExit = sceMScm_Driver+0x000055F4
IoOpen = sceMScm_Driver+0x00005650
IoClose = sceMScm_Driver+0x000056E4
IoRead = NULL;
IoWrite = NULL;
IoLseek = NULL;
IoIoctl = NULL;
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = NULL;
IoDclose = NULL;
IoDread = NULL;
IoGetstat = NULL;
IoChstat = NULL;
IoRename = NULL;
IoChdir = NULL;
IoMount = NULL;
IoUmount = NULL;
IoDevctl = sceMScm_Driver+0x000056EC
IoUnk21 = NULL;


driver mscm sceMScm_Driver+0x6F74:
Code:

name = "mscm";
dev_type = 0x01; // ?
unk2 = 0; // ?
name2 = "MS class manager";
funcs = sceMScm_Driver+0x6F08;

IoInit = sceMScm_Driver+0x000055EC
IoExit = sceMScm_Driver+0x000055F4
IoOpen = sceMScm_Driver+0x00005650
IoClose = sceMScm_Driver+0x000056E4
IoRead = NULL;
IoWrite = NULL;
IoLseek = NULL;
IoIoctl = NULL;
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = NULL;
IoDclose = NULL;
IoDread = NULL;
IoGetstat = NULL;
IoChstat = NULL;
IoRename = NULL;
IoChdir = NULL;
IoMount = NULL;
IoUmount = NULL;
IoDevctl = sceMScm_Driver+0x00005E6C
IoUnk21 = NULL;


driver fatms sceMSFAT_Driver+0x01B6A4:
Code:

name = "fatms";
dev_type = 0x10; // File System
unk2 = 0x0800; // 2048 block size?
name2 = "FATMS";
funcs = sceMSFAT_Driver+0x01B738;

IoInit = sceMSFAT_Driver+0x0000322C
IoExit = sceMSFAT_Driver+0x00003248
IoOpen = sceMSFAT_Driver+0x00003264
IoClose = sceMSFAT_Driver+0x00003298
IoRead = sceMSFAT_Driver+0x000032B4
IoWrite = sceMSFAT_Driver+0x000032D0
IoLseek = sceMSFAT_Driver+0x000032EC
IoIoctl = sceMSFAT_Driver+0x00003308
IoRemove = sceMSFAT_Driver+0x0000333C
IoMkdir = sceMSFAT_Driver+0x00003370
IoRmdir = sceMSFAT_Driver+0x000033A4
IoDopen = sceMSFAT_Driver+0x000033D8
IoDclose = sceMSFAT_Driver+0x0000340C
IoDread = sceMSFAT_Driver+0x00003428
IoGetstat = sceMSFAT_Driver+0x0000345C
IoChstat = sceMSFAT_Driver+0x00003490
IoRename = sceMSFAT_Driver+0x000034C4
IoChdir = sceMSFAT_Driver+0x000034F8
IoMount = sceMSFAT_Driver+0x00003514
IoUmount = sceMSFAT_Driver+0x00003530
IoDevctl = sceMSFAT_Driver+0x0000354C
IoUnk21 = sceMSFAT_Driver+0x000035B8


driver fatmsOem sceMSFAT_Driver+0x01B790:
Code:

name = "fatmsOem";
dev_type = 0x10; // FileSystem
unk2 = 0x0800; // 2048 block size?
name2 = "FATMSOEM";
funcs = sceMSFAT_Driver+0x01B824;

IoInit = sceMSFAT_Driver+0x000035D4
IoExit = sceMSFAT_Driver+0x00003624
IoOpen = sceMSFAT_Driver+0x00003674
IoClose = sceMSFAT_Driver+0x000036A8
IoRead = sceMSFAT_Driver+0x000036C4
IoWrite = sceMSFAT_Driver+0x000036E0
IoLseek = sceMSFAT_Driver+0x000036FC
IoIoctl = sceMSFAT_Driver+0x00003718
IoRemove = sceMSFAT_Driver+0x0000374C
IoMkdir = sceMSFAT_Driver+0x00003780
IoRmdir = sceMSFAT_Driver+0x000037B4
IoDopen = sceMSFAT_Driver+0x000037E8
IoDclose = sceMSFAT_Driver+0x0000381C
IoDread = sceMSFAT_Driver+0x00003838
IoGetstat = sceMSFAT_Driver+0x0000386C
IoChstat = sceMSFAT_Driver+0x000038A0
IoRename = sceMSFAT_Driver+0x000038D4
IoChdir = sceMSFAT_Driver+0x00003908
IoMount = sceMSFAT_Driver+0x00003924
IoUmount = sceMSFAT_Driver+0x00003940
IoDevctl = sceMSFAT_Driver+0x0000395C
IoUnk21 = sceMSFAT_Driver+0x000039D0


driver msstor sceMSstor_Driver+0x8BCC:
Code:

name = "msstor";
dev_type = 0x04; // block device?
unk2 = 0; // ?
name2 = "MSstor whole dev";
funcs = sceMSstor_Driver+0x8B1C;

IoInit = sceMSstor_Driver+0x0000492C
IoExit = sceMSstor_Driver+0x00004A14
IoOpen = sceMSstor_Driver+0x00004A90
IoClose = sceMSstor_Driver+0x00004C88
IoRead = sceMSstor_Driver+0x00004ED8
IoWrite = sceMSstor_Driver+0x00005008
IoLseek = sceMSstor_Driver+0x00005258
IoIoctl = sceMSstor_Driver+0x000055D0
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = NULL;
IoDclose = NULL;
IoDread = NULL;
IoGetstat = NULL;
IoChstat = NULL;
IoRename = NULL;
IoChdir = NULL;
IoMount = NULL;
IoUmount = NULL;
IoDevctl = sceMSstor_Driver+0x00005F20
IoUnk21 = NULL;


driver msstor0p sceMSstor_Driver+0x8BE0:
Code:

name = "msstor0p";
dev_type = 0x04 // block device?
unk2 = 0; // ?
name2 = "MSstor partition #1";
funcs = sceMSstor_Driver+0x8B74

IoInit = sceMSstor_Driver+0x00004A00
IoExit = sceMSstor_Driver+0x00004A88
IoOpen = sceMSstor_Driver+0x00004B30
IoClose = sceMSstor_Driver+0x00004C88
IoRead = sceMSstor_Driver+0x00004F70
IoWrite = sceMSstor_Driver+0x000050A0
IoLseek = sceMSstor_Driver+0x00005410
IoIoctl = sceMSstor_Driver+0x00005794
IoRemove = NULL;
IoMkdir = NULL;
IoRmdir = NULL;
IoDopen = NULL;
IoDclose = NULL;
IoDread = NULL;
IoGetstat = NULL;
IoChstat = NULL;
IoRename = NULL;
IoChdir = NULL;
IoMount = NULL;
IoUmount = NULL;
IoDevctl = sceMSstor_Driver+0x00005F20
IoUnk21 = NULL;
Back to top
View user's profile Send private message
dot_blank



Joined: 28 Sep 2005
Posts: 498
Location: Brasil

PostPosted: Tue May 09, 2006 3:53 am    Post subject: Reply with quote

wonderful bro thank you :)
_________________
10011011 00101010 11010111 10001001 10111010
Back to top
View user's profile Send private message
HaQue



Joined: 25 Nov 2005
Posts: 91
Location: Adelaide, Australia

PostPosted: Tue May 09, 2006 6:46 pm    Post subject: Reply with quote

Thats great!

Do you have any info about the wlan driver?
_________________
www.smartwave-wireless.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
0okm0000



Joined: 13 Jan 2006
Posts: 116

PostPosted: Tue May 09, 2006 8:00 pm    Post subject: Reply with quote

Quote:
driver flashfat sceLFatFs_Driver+0xE2FC
...
name2 = "FAT over USB Mass"; // !?
...

access flash fat over USB ?
_________________
PSP hardware hack
http://0okm.blogspot.com/
Back to top
View user's profile Send private message Visit poster's website
moonlight



Joined: 26 Oct 2005
Posts: 567

PostPosted: Tue May 09, 2006 8:47 pm    Post subject: Reply with quote

0okm0000 wrote:
Quote:
driver flashfat sceLFatFs_Driver+0xE2FC
...
name2 = "FAT over USB Mass"; // !?
...

access flash fat over USB ?


The flashfat driver is the one responsable of the file system for flash0 and flash1. I don't know why it has that rare name with the USB word... :O
Back to top
View user's profile Send private message
dark_zarkon



Joined: 11 Jan 2006
Posts: 26

PostPosted: Tue May 09, 2006 9:14 pm    Post subject: Reply with quote

moonlight wrote:
0okm0000 wrote:
Quote:
driver flashfat sceLFatFs_Driver+0xE2FC
...
name2 = "FAT over USB Mass"; // !?
...

access flash fat over USB ?


The flashfat driver is the one responsable of the file system for flash0 and flash1. I don't know why it has that rare name with the USB word... :O


this doesn't mean that flash0 is accessible with a usb cable?
_________________
i'm italian...
forgive me for my english! :)
Back to top
View user's profile Send private message
groepaz



Joined: 01 Sep 2005
Posts: 305

PostPosted: Wed May 10, 2006 5:33 am    Post subject: Reply with quote

interistingly. that "fat over usb mass" can be found in the IPL aswell... *shrug*
_________________
http://www.hitmen-console.org
http://hitmen.c02.at/files/yapspd/
Back to top
View user's profile Send private message Visit poster's website
moonlight



Joined: 26 Oct 2005
Posts: 567

PostPosted: Sat May 13, 2006 4:26 pm    Post subject: Reply with quote

HaQue wrote:
Thats great!

Do you have any info about the wlan driver?


aargh. i forgot wlan and usb. I don't actually know if they create IoFileMgr drivers, but i will find out it.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    forums.ps2dev.org Forum Index -> PSP Development All times are GMT + 10 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group