PS2SDK
PS2 Homebrew Libraries
Loading...
Searching...
No Matches
mcserv.h
1/*
2# _____ ___ ____ ___ ____
3# ____| | ____| | | |____|
4# | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5#-----------------------------------------------------------------------
6# Copyright (c) 2009 jimmikaelkael
7# Licenced under Academic Free License version 2.0
8# Review ps2sdk README & LICENSE files for further details.
9*/
10
11#ifndef __MCSERV_H__
12#define __MCSERV_H__
13
14#include <loadcore.h>
15#include <intrman.h>
16#include <sysclib.h>
17#include <sifman.h>
18#include <sifcmd.h>
19#include <thbase.h>
20#include <stdio.h>
21#include <mcman.h>
22
23//#define DEBUG
24
25#define MODNAME "mcserv"
26#define MODVER 0x208
27
28#ifdef SIO_DEBUG
29 #include <sior.h>
30 #define DEBUG
31 #define DPRINTF(format, args...) \
32 sio_printf(MODNAME ": " format, ##args)
33#else
34 #ifdef DEBUG
35 #define DPRINTF(format, args...) \
36 printf(MODNAME ": " format, ##args)
37 #else
38 #define DPRINTF(format, args...)
39 #endif
40#endif
41
42
43// internal function prototypes
44void *cb_rpc_S_0400(u32 fno, void *buf, int size);
45void thread_rpc_S_0400(void* param);
46int sceMcInit(void);
47int sceMcOpen(void);
48int sceMcClose(void);
49int sceMcRead(void);
50int sceMcWrite(void);
51int sceMcSeek(void);
52int sceMcGetDir(void);
53int sceMcFormat(void);
54int sceMcGetInfo(void);
55int sceMcDelete(void);
56int sceMcFlush(void);
57int sceMcChDir(void);
58int sceMcSetFileInfo(void);
59int sceMcEraseBlock(void);
60int sceMcReadPage(void);
61int sceMcWritePage(void);
62int sceMcUnformat(void);
63int sceMcRead2(void);
64int sceMcGetInfo2(void);
65int sceMcGetEntSpace(void);
66int sceMcCheckBlock(void);
67
68int _McInit(void *rpc_buf);
69int _McOpen(void *rpc_buf);
70int _McClose(void *rpc_buf);
71int _McRead(void *rpc_buf);
72int _McWrite(void *rpc_buf);
73int _McSeek(void *rpc_buf);
74int _McGetDir(void *rpc_buf);
75int _McFormat(void *rpc_buf);
76int _McGetInfo(void *rpc_buf);
77int _McDelete(void *rpc_buf);
78int _McFlush(void *rpc_buf);
79int _McChDir(void *rpc_buf);
80int _McSetFileInfo(void *rpc_buf);
81int _McEraseBlock(void *rpc_buf);
82int _McReadPage(void *rpc_buf);
83int _McWritePage(void *rpc_buf);
84int _McUnformat(void *rpc_buf);
85int _McRead2(void *rpc_buf);
86int _McGetInfo2(void *rpc_buf);
87int _McGetEntSpace(void *rpc_buf);
88int _McCheckBlock(void *rpc_buf);
89
90// filename related mc command
91// used by: mcOpen, mcGetDir, mcChdir, mcDelete, mcSetFileInfo, mcRename, mcGetEntSpace
92typedef struct { // size = 1044
93 int port; // 0
94 int slot; // 4
95 int flags; // 8
96 int maxent; // 12
97 union {
98 sceMcTblGetDir *mcT; // 16
99 char *curdir;
100 };
101 char name[1024]; // 20
103
104#endif