ScummVM API documentation
resdata.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef CHAMBER_RESDATA_H
23 #define CHAMBER_RESDATA_H
24 
25 namespace Chamber {
26 
27 typedef struct ResEntry_t {
28  char name[5 + 1 + 3 + 1];
29  void *buffer;
30 } ResEntry_t;
31 
32 typedef struct ResEntry_tp {
33  char name[5 + 1 + 3 + 1];
34  byte **buffer;
35 } ResEntry_tp;
36 
37 /* Max resource file size among all languages */
38 #define RES_ALEAT_MAX 256
39 #define RES_ANICO_MAX 667
40 #define RES_ANIMA_MAX 2046
41 #define RES_ARPLA_MAX 7910
42 #define RES_CARPC_MAX 384
43 #define RES_GAUSS_MAX 1449
44 #define RES_ICONE_MAX 2756
45 #define RES_LUTIN_MAX 2800
46 #define RES_MURSM_MAX 76
47 #define RES_SOUCO_MAX 424
48 #define RES_SOURI_MAX 1152
49 #define RES_TEMPL_MAX 27337
50 #define RES_ZONES_MAX 9014
51 #define RES_PUZZL_MAX 45671
52 #define RES_SPRIT_MAX 23811
53 #define RES_PERS1_MAX 14294
54 #define RES_PERS2_MAX 10587
55 #define RES_DESCI_MAX 10515
56 #define RES_DIALI_MAX 9636
57 #define RES_MOTSI_MAX 1082
58 #define RES_VEPCI_MAX 1345
59 
60 extern byte vepci_data[];
61 extern byte motsi_data[];
62 
63 extern byte puzzl_data[];
64 extern byte sprit_data[];
65 
66 extern byte pers1_data[];
67 extern byte pers2_data[];
68 
69 extern byte desci_data[];
70 extern byte diali_data[];
71 
72 extern byte *arpla_data;
73 extern byte *aleat_data;
74 extern byte *carpc_data;
75 extern byte *icone_data;
76 extern byte *souco_data;
77 extern byte *souri_data;
78 extern byte *templ_data;
79 extern byte *mursm_data;
80 extern byte *gauss_data;
81 extern byte *lutin_data;
82 extern byte *anima_data;
83 extern byte *anico_data;
84 extern byte *zones_data;
85 
86 byte *seekToEntry(byte *bank, uint16 num, byte **end);
87 byte *seekToEntryW(byte *bank, uint16 num, byte **end);
88 
89 uint16 loadFile(const char *filename, byte *buffer);
90 uint16 saveFile(char *filename, byte *buffer, uint16 size);
91 int16 loadFilesList(ResEntry_t *entries);
92 
93 int16 loadStaticData(void);
94 int16 loadFond(void);
95 int16 loadSpritesData(void);
96 int16 loadPersData(void);
97 
98 extern ResEntry_t res_texts[];
99 int16 loadVepciData(void);
100 
101 extern ResEntry_t res_desci[];
102 int16 loadDesciData(void);
103 
104 extern ResEntry_t res_diali[];
105 int16 loadDialiData(void);
106 
107 } // End of namespace Chamber
108 
109 #endif
Definition: anim.h:25
Definition: resdata.h:27
Definition: resdata.h:32