PS2SDK
PS2 Homebrew Libraries
|
#include <libmc-common.h>
Go to the source code of this file.
Data Structures | |
struct | mcIcon |
struct | _sceMcTblGetDir |
struct | mcTable |
struct | mcTable._create |
struct | mcTable._modify |
Macros | |
#define | MC_WAIT 0 |
#define | MC_NOWAIT 1 |
#define | MC_TYPE_PSX sceMcTypePS1 |
#define | MC_TYPE_PS2 sceMcTypePS2 |
#define | MC_TYPE_POCKET sceMcTypePDA |
#define | MC_TYPE_NONE sceMcTypeNoCard |
#define | MC_FORMATTED 1 |
#define | MC_UNFORMATTED 0 |
#define | MC_ATTR_READABLE sceMcFileAttrReadable |
#define | MC_ATTR_WRITEABLE sceMcFileAttrWriteable |
#define | MC_ATTR_EXECUTABLE sceMcFileAttrExecutable |
#define | MC_ATTR_PROTECTED sceMcFileAttrDupProhibit |
#define | MC_ATTR_FILE sceMcFileAttrFile |
#define | MC_ATTR_SUBDIR sceMcFileAttrSubdir |
#define | MC_ATTR_OBJECT (sceMcFileAttrFile|sceMcFileAttrSubdir) |
#define | MC_ATTR_CLOSED sceMcFileAttrClosed |
#define | MC_ATTR_PDAEXEC sceMcFileAttrPDAExec |
#define | MC_ATTR_PSX sceMcFileAttrPS1 |
#define | MC_ATTR_HIDDEN sceMcFileAttrHidden |
#define | MC_TYPE_MC 0 |
#define | MC_TYPE_XMC 1 |
Typedefs | |
typedef int | iconIVECTOR[4] |
typedef float | iconFVECTOR[4] |
Enumerations | |
enum | MC_FUNC_NUMBERS { MC_FUNC_NONE = 0x00 , MC_FUNC_GET_INFO , MC_FUNC_OPEN , MC_FUNC_CLOSE , MC_FUNC_SEEK , MC_FUNC_READ , MC_FUNC_WRITE , MC_FUNC_FLUSH = 0x0A , MC_FUNC_MK_DIR , MC_FUNC_CH_DIR , MC_FUNC_GET_DIR , MC_FUNC_SET_INFO , MC_FUNC_DELETE , MC_FUNC_FORMAT , MC_FUNC_UNFORMAT , MC_FUNC_GET_ENT , MC_FUNC_RENAME , MC_FUNC_CHG_PRITY , MC_FUNC_ERASE_BLOCK = 0x5A , MC_FUNC_READ_PAGE , MC_FUNC_WRITE_PAGE } |
enum | MCICON_TYPES { MCICON_TYPE_SAVED_DATA = 0 , MCICON_TYPE_SOFTWARE_PS2 , MCICON_TYPE_SOFTWARE_PKT , MCICON_TYPE_SETTINGS_DATA , MCICON_TYPE_SYSTEM_DRIVER } |
Functions | |
struct _sceMcTblGetDir | __attribute__ ((aligned(64))) |
aligned (64))) | |
int | mcInit (int type) |
int | mcGetInfo (int port, int slot, int *type, int *free, int *format) |
int | mcOpen (int port, int slot, const char *name, int mode) |
int | mcClose (int fd) |
int | mcSeek (int fd, int offset, int origin) |
int | mcRead (int fd, void *buffer, int size) |
int | mcWrite (int fd, const void *buffer, int size) |
int | mcFlush (int fd) |
int | mcMkDir (int port, int slot, const char *name) |
int | mcChdir (int port, int slot, const char *newDir, char *currentDir) |
int | mcGetDir (int port, int slot, const char *name, unsigned mode, int maxent, sceMcTblGetDir *table) |
int | mcSetFileInfo (int port, int slot, const char *name, const sceMcTblGetDir *info, unsigned flags) |
int | mcDelete (int port, int slot, const char *name) |
int | mcFormat (int port, int slot) |
int | mcUnformat (int port, int slot) |
int | mcGetEntSpace (int port, int slot, const char *path) |
int | mcRename (int port, int slot, const char *oldName, const char *newName) |
int | mcEraseBlock (int port, int slot, int block, int mode) |
int | mcReadPage (int port, int slot, unsigned int page, void *buffer) |
int | mcWritePage (int port, int slot, int page, const void *buffer) |
int | mcChangeThreadPriority (int level) |
int | mcSync (int mode, int *cmd, int *result) |
int | mcReset (void) |
Variables | |
sceMcStDateTime | _Create |
sceMcStDateTime | _Modify |
u32 | FileSizeByte |
u16 | AttrFile |
u16 | Reserve1 |
u32 | Reserve2 |
u32 | PdaAplNo |
unsigned char | EntryName [32] |
Macros, structures & function prototypes for mclib.
Definition in file libmc.h.
struct mcIcon |
struct _sceMcTblGetDir |
Data Fields | ||
---|---|---|
sceMcStDateTime | _Create | |
sceMcStDateTime | _Modify | |
u32 | FileSizeByte | |
u16 | AttrFile | |
u16 | Reserve1 | |
u32 | Reserve2 | |
u32 | PdaAplNo | |
unsigned char | EntryName[32] | |
char | EntryName[32] |
struct mcTable |
Data Fields | ||
---|---|---|
struct mcTable._createstruct mcTable | _create | |
struct mcTable._modify | _modify | |
unsigned | fileSizeByte |
File size (bytes). For a directory entry: 0 |
unsigned short | attrFile |
File attribute |
unsigned short | unknown3 | |
unsigned | unknown4[2] | |
unsigned char | name[32] |
Entry name |
struct mcTable._create |
struct mcTable._modify |
#define MC_ATTR_OBJECT (sceMcFileAttrFile|sceMcFileAttrSubdir) |
#define MC_ATTR_HIDDEN sceMcFileAttrHidden |
enum MC_FUNC_NUMBERS |
enum MCICON_TYPES |
int mcInit | ( | int | type | ) |
init memcard lib
type | MC_TYPE_MC = use MCSERV/MCMAN; MC_TYPE_XMC = use XMCSERV/XMCMAN |
Definition at line 230 of file libmc.c.
References _iop_reboot_count, g_currentCmd, g_mclibInited, g_mcType, mcReset(), and mcRpcCmd.
int mcGetInfo | ( | int | port, |
int | slot, | ||
int * | type, | ||
int * | free, | ||
int * | format | ||
) |
get memcard state mcSync result: 0 = same card as last getInfo call -1 = formatted card inserted since last getInfo call -2 = unformatted card inserted since last getInfo call < -2 = memcard access error (could be due to accessing psx memcard)
port | port number |
slot | slot number |
type | pointer to get memcard type |
free | pointer to get number of free clusters |
format | pointer to get whether or not the card is formatted (Note: Originally, sceMcGetInfo didn't have a 5th argument for returning the format status. As this is emulated based on the return value of sceMcSync() when rom0:MCSERV is used, please keep track of the return value from sceMcSync instead!) |
Definition at line 336 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcGetInfoApdx(), mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcOpen | ( | int | port, |
int | slot, | ||
const char * | name, | ||
int | mode | ||
) |
open a file on memcard mcSync returns: 0 or more = file descriptor (success) < 0 = error
port | port number |
slot | slot number |
name | filename to open |
mode | open file mode (O_RDWR, O_CREAT, etc) |
Definition at line 378 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
Referenced by mcMkDir().
int mcClose | ( | int | fd | ) |
close an open file on memcard mcSync returns: 0 if closed successfully < 0 = error
fd | file descriptor of open file |
Definition at line 403 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcSeek | ( | int | fd, |
int | offset, | ||
int | origin | ||
) |
move memcard file pointer mcSync returns: 0 or more = offset of file pointer from start of file < 0 = error
fd | file descriptor |
offset | number of bytes from origin |
origin | initial position for offset |
Definition at line 424 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcRead | ( | int | fd, |
void * | buffer, | ||
int | size | ||
) |
read from file on memcard mcSync returns: 0 or more = number of bytes read from memcard < 0 = error
fd | file descriptor |
buffer | buffer to read to |
size | number of bytes to read |
Definition at line 447 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcReadFixAlign(), mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcWrite | ( | int | fd, |
const void * | buffer, | ||
int | size | ||
) |
write to file on memcard mcSync returns: 0 or more = number of bytes written to memcard < 0 = error
fd | file descriptor |
buffer | to write from write |
size | number of bytes to read |
Definition at line 473 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcFlush | ( | int | fd | ) |
flush file cache to memcard mcSync returns: 0 if ok < 0 if error
fd | file descriptor |
Definition at line 511 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcMkDir | ( | int | port, |
int | slot, | ||
const char * | name | ||
) |
create a dir mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
name | directory name |
Definition at line 532 of file libmc.c.
References g_currentCmd, and mcOpen().
int mcChdir | ( | int | port, |
int | slot, | ||
const char * | newDir, | ||
char * | currentDir | ||
) |
change current dir (can also get current dir) mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
newDir | new dir to change to |
currentDir | buffer to get current dir (use 0 if not needed) |
Definition at line 541 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, mcStoreDir(), and SIF_RPC_M_NOWAIT.
int mcGetDir | ( | int | port, |
int | slot, | ||
const char * | name, | ||
unsigned | mode, | ||
int | maxent, | ||
sceMcTblGetDir * | table | ||
) |
get memcard filelist mcSync result: 0 or more = number of file entries obtained (success) -2 = unformatted card -4 = dirname error
port | port number of memcard |
slot | slot number of memcard |
name | filename to search for (can use wildcard and relative dirs) |
mode | mode: 0 = first call, otherwise = followup call |
maxext | maximum number of entries to be written to filetable in 1 call |
table | mc table array |
Definition at line 567 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcSetFileInfo | ( | int | port, |
int | slot, | ||
const char * | name, | ||
const sceMcTblGetDir * | info, | ||
unsigned | flags | ||
) |
change file information mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
name | filename to access |
info | data to be changed |
flags | flags to show which data is valid |
Definition at line 595 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcDelete | ( | int | port, |
int | slot, | ||
const char * | name | ||
) |
delete file mcSync returns: 0 if deleted successfully < 0 if error
port | port number to delete from |
slot | slot number to delete from |
name | filename to delete |
Definition at line 624 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcFormat | ( | int | port, |
int | slot | ||
) |
format memory card mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
Definition at line 649 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcUnformat | ( | int | port, |
int | slot | ||
) |
unformat memory card mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
Definition at line 671 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcGetEntSpace | ( | int | port, |
int | slot, | ||
const char * | path | ||
) |
get free space info mcSync returns: 0 or more = number of free entries (success) < 0 if error
port | port number |
slot | slot number |
path | path to be checked |
Definition at line 693 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcRename | ( | int | port, |
int | slot, | ||
const char * | oldName, | ||
const char * | newName | ||
) |
rename file or dir on memcard Note: rom0:MCSERV does not support this. mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
oldName | name of file/dir to rename |
newName | new name to give to file/dir |
Definition at line 717 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcEraseBlock | ( | int | port, |
int | slot, | ||
int | block, | ||
int | mode | ||
) |
Erases a block on the memory card. Note: rom0:XMCSERV does not support this. mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
block | Block number of the block to be erased. |
mode | Mode: -1 to inhibit ECC recalculation of the erased block's pages (useful if sceMcWritePage is used to fill in its contents later on), 0 for normal operation. |
Definition at line 746 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcReadPage | ( | int | port, |
int | slot, | ||
unsigned int | page, | ||
void * | buffer | ||
) |
Reads a page from the memory card. Note: rom0:XMCSERV does not support this. mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
page | Page number of the page to be read. |
buffer | Pointer to buffer that will contain the read data. |
Definition at line 789 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcWritePage | ( | int | port, |
int | slot, | ||
int | page, | ||
const void * | buffer | ||
) |
Writes a page to the memory card. (The block which the page resides on must be erased first!) Note: rom0:XMCSERV does not support this. mcSync returns: 0 if ok < 0 if error
port | port number |
slot | slot number |
page | Page number of the page to be written. |
buffer | Pointer to buffer containing data to be written. |
Definition at line 814 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcChangeThreadPriority | ( | int | level | ) |
change mcserv thread priority (I don't think this is implemented properly) Note: rom0:MCSERV does not support this. mcSync returns: 0 if ok < 0 if error
level | thread priority |
Definition at line 843 of file libmc.c.
References g_currentCmd, g_mclibInited, g_mcType, mcRpcCmd, and SIF_RPC_M_NOWAIT.
int mcSync | ( | int | mode, |
int * | cmd, | ||
int * | result | ||
) |
wait for mc functions to finish or check if they have finished yet
mode | mode 0=wait till function finishes, 1=check function status |
cmd | pointer for storing the number of the currenlty processing function |
result | pointer for storing result of function if it finishes |
Definition at line 866 of file libmc.c.
References g_currentCmd.
int mcReset | ( | void | ) |
Reset (force deinit) of library
Definition at line 908 of file libmc.c.
References g_mclibInited.
Referenced by mcInit().
sceMcStDateTime _Create |
sceMcStDateTime _Modify |