/[pcsx2_0.9.7]/trunk/pcsx2/CDVD/IsoFileFormats.h
ViewVC logotype

Contents of /trunk/pcsx2/CDVD/IsoFileFormats.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 31 - (show annotations) (download)
Tue Sep 7 03:24:11 2010 UTC (10 years, 7 months ago) by william
File MIME type: text/plain
File size: 1860 byte(s)
committing r3113 initial commit again...
1 /* PCSX2 - PS2 Emulator for PCs
2 * Copyright (C) 2002-2010 PCSX2 Dev Team
3 *
4 * PCSX2 is free software: you can redistribute it and/or modify it under the terms
5 * of the GNU Lesser General Public License as published by the Free Software Found-
6 * ation, either version 3 of the License, or (at your option) any later version.
7 *
8 * PCSX2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
9 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
10 * PURPOSE. See the GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License along with PCSX2.
13 * If not, see <http://www.gnu.org/licenses/>.
14 */
15
16 #ifndef __LIBISO_H__
17 #define __LIBISO_H__
18
19 #include "CDVD.h"
20 #include "IsoFileTools.h"
21
22 enum isoType
23 {
24 ISOTYPE_ILLEGAL = 0,
25 ISOTYPE_CD,
26 ISOTYPE_DVD,
27 ISOTYPE_AUDIO,
28 ISOTYPE_DVDDL
29 };
30
31 enum isoFlags
32 {
33 ISOFLAGS_Z = 0x0001,
34 ISOFLAGS_Z2 = 0x0002,
35 ISOFLAGS_BLOCKDUMP_V2 = 0x0004,
36 ISOFLAGS_MULTI = 0x0008,
37 ISOFLAGS_BZ2 = 0x0010,
38 ISOFLAGS_BLOCKDUMP_V3 = 0x0020
39 };
40
41 static const int CD_FRAMESIZE_RAW = 2448;
42
43 struct _multih
44 {
45 u32 slsn;
46 u32 elsn;
47 void *handle;
48 };
49
50 struct isoFile
51 {
52 char filename[256];
53 isoType type;
54 u32 flags;
55 s32 offset;
56 s32 blockofs;
57 u32 blocksize;
58 u32 blocks;
59 void *handle;
60 void *htable;
61 char *Ztable;
62 u32 *dtable;
63 int dtablesize;
64 _multih multih[8];
65 int buflsn;
66 u8 *buffer;
67 };
68
69
70 extern isoFile *isoOpen(const char *filename);
71 extern isoFile *isoCreate(const char *filename, int mode);
72 extern bool isoSetFormat(isoFile *iso, int blockofs, uint blocksize, uint blocks);
73 extern bool isoDetect(isoFile *iso);
74 extern bool isoReadBlock(isoFile *iso, u8 *dst, uint lsn);
75 extern bool isoWriteBlock(isoFile *iso, u8 *src, uint lsn);
76 extern void isoClose(isoFile *iso);
77
78 #endif /* __LIBISO_H__ */

  ViewVC Help
Powered by ViewVC 1.1.22