Commit | Line | Data |
---|---|---|
ef79bbde P |
1 | /***************************************************************************\r |
2 | * Copyright (C) 2007 Ryan Schultz, PCSX-df Team, PCSX team *\r | |
3 | * *\r | |
4 | * This program is free software; you can redistribute it and/or modify *\r | |
5 | * it under the terms of the GNU General Public License as published by *\r | |
6 | * the Free Software Foundation; either version 2 of the License, or *\r | |
7 | * (at your option) any later version. *\r | |
8 | * *\r | |
9 | * This program is distributed in the hope that it will be useful, *\r | |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of *\r | |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *\r | |
12 | * GNU General Public License for more details. *\r | |
13 | * *\r | |
14 | * You should have received a copy of the GNU General Public License *\r | |
15 | * along with this program; if not, write to the *\r | |
16 | * Free Software Foundation, Inc., *\r | |
17 | * 51 Franklin Street, Fifth Floor, Boston, MA 02111-1307 USA. *\r | |
18 | ***************************************************************************/\r | |
19 | \r | |
20 | #ifndef __PLUGINS_H__\r | |
21 | #define __PLUGINS_H__\r | |
22 | \r | |
23 | #ifdef __cplusplus\r | |
24 | extern "C" {\r | |
25 | #endif\r | |
26 | \r | |
27 | #include "psxcommon.h"\r | |
78de2879 | 28 | #include "psemu_plugin_defs.h"\r |
ef79bbde P |
29 | \r |
30 | //#define ENABLE_SIO1API 1\r | |
31 | \r | |
003cfc63 | 32 | typedef long (CALLBACK *GPUopen)(unsigned long *, char *, char *);\r |
33 | typedef long (CALLBACK *SPUopen)(void);\r | |
34 | typedef long (CALLBACK *PADopen)(unsigned long *);\r | |
35 | typedef long (CALLBACK *NETopen)(unsigned long *);\r | |
36 | typedef long (CALLBACK *SIO1open)(unsigned long *);\r | |
37 | \r | |
ef79bbde | 38 | #include "spu.h"\r |
ef79bbde P |
39 | #include "decode_xa.h"\r |
40 | \r | |
41 | int LoadPlugins();\r | |
42 | void ReleasePlugins();\r | |
43 | int OpenPlugins();\r | |
44 | void ClosePlugins();\r | |
1df403c5 | 45 | int ReloadCdromPlugin();\r |
ef79bbde P |
46 | \r |
47 | typedef unsigned long (CALLBACK* PSEgetLibType)(void);\r | |
48 | typedef unsigned long (CALLBACK* PSEgetLibVersion)(void);\r | |
49 | typedef char *(CALLBACK* PSEgetLibName)(void);\r | |
50 | \r | |
51 | // GPU Functions\r | |
52 | typedef long (CALLBACK* GPUinit)(void);\r | |
53 | typedef long (CALLBACK* GPUshutdown)(void);\r | |
54 | typedef long (CALLBACK* GPUclose)(void);\r | |
55 | typedef void (CALLBACK* GPUwriteStatus)(uint32_t);\r | |
56 | typedef void (CALLBACK* GPUwriteData)(uint32_t);\r | |
57 | typedef void (CALLBACK* GPUwriteDataMem)(uint32_t *, int);\r | |
58 | typedef uint32_t (CALLBACK* GPUreadStatus)(void);\r | |
59 | typedef uint32_t (CALLBACK* GPUreadData)(void);\r | |
60 | typedef void (CALLBACK* GPUreadDataMem)(uint32_t *, int);\r | |
fae38d7a | 61 | typedef long (CALLBACK* GPUdmaChain)(uint32_t *,uint32_t, uint32_t *);\r |
ef79bbde P |
62 | typedef void (CALLBACK* GPUupdateLace)(void);\r |
63 | typedef long (CALLBACK* GPUconfigure)(void);\r | |
64 | typedef long (CALLBACK* GPUtest)(void);\r | |
65 | typedef void (CALLBACK* GPUabout)(void);\r | |
66 | typedef void (CALLBACK* GPUmakeSnapshot)(void);\r | |
67 | typedef void (CALLBACK* GPUkeypressed)(int);\r | |
68 | typedef void (CALLBACK* GPUdisplayText)(char *);\r | |
69 | typedef struct {\r | |
70 | uint32_t ulFreezeVersion;\r | |
71 | uint32_t ulStatus;\r | |
72 | uint32_t ulControl[256];\r | |
73 | unsigned char psxVRam[1024*512*2];\r | |
74 | } GPUFreeze_t;\r | |
75 | typedef long (CALLBACK* GPUfreeze)(uint32_t, GPUFreeze_t *);\r | |
76 | typedef long (CALLBACK* GPUgetScreenPic)(unsigned char *);\r | |
77 | typedef long (CALLBACK* GPUshowScreenPic)(unsigned char *);\r | |
72e5023f | 78 | typedef void (CALLBACK* GPUvBlank)(int, int);\r |
80bc1426 | 79 | typedef void (CALLBACK* GPUgetScreenInfo)(int *, int *);\r |
ef79bbde P |
80 | \r |
81 | // GPU function pointers\r | |
82 | extern GPUupdateLace GPU_updateLace;\r | |
83 | extern GPUinit GPU_init;\r | |
84 | extern GPUshutdown GPU_shutdown; \r | |
85 | extern GPUconfigure GPU_configure;\r | |
86 | extern GPUtest GPU_test;\r | |
87 | extern GPUabout GPU_about;\r | |
88 | extern GPUopen GPU_open;\r | |
89 | extern GPUclose GPU_close;\r | |
90 | extern GPUreadStatus GPU_readStatus;\r | |
91 | extern GPUreadData GPU_readData;\r | |
92 | extern GPUreadDataMem GPU_readDataMem;\r | |
93 | extern GPUwriteStatus GPU_writeStatus; \r | |
94 | extern GPUwriteData GPU_writeData;\r | |
95 | extern GPUwriteDataMem GPU_writeDataMem;\r | |
96 | extern GPUdmaChain GPU_dmaChain;\r | |
97 | extern GPUkeypressed GPU_keypressed;\r | |
98 | extern GPUdisplayText GPU_displayText;\r | |
99 | extern GPUmakeSnapshot GPU_makeSnapshot;\r | |
100 | extern GPUfreeze GPU_freeze;\r | |
101 | extern GPUgetScreenPic GPU_getScreenPic;\r | |
102 | extern GPUshowScreenPic GPU_showScreenPic;\r | |
72e5023f | 103 | extern GPUvBlank GPU_vBlank;\r |
80bc1426 | 104 | extern GPUgetScreenInfo GPU_getScreenInfo;\r |
ef79bbde P |
105 | \r |
106 | // CD-ROM Functions\r | |
107 | typedef long (CALLBACK* CDRinit)(void);\r | |
108 | typedef long (CALLBACK* CDRshutdown)(void);\r | |
109 | typedef long (CALLBACK* CDRopen)(void);\r | |
110 | typedef long (CALLBACK* CDRclose)(void);\r | |
111 | typedef long (CALLBACK* CDRgetTN)(unsigned char *);\r | |
112 | typedef long (CALLBACK* CDRgetTD)(unsigned char, unsigned char *);\r | |
d2e271b2 | 113 | typedef boolean (CALLBACK* CDRreadTrack)(unsigned char *);\r |
ef79bbde | 114 | typedef unsigned char* (CALLBACK* CDRgetBuffer)(void);\r |
0eacae49 | 115 | typedef unsigned char* (CALLBACK* CDRgetBufferSub)(int sector);\r |
ef79bbde P |
116 | typedef long (CALLBACK* CDRconfigure)(void);\r |
117 | typedef long (CALLBACK* CDRtest)(void);\r | |
118 | typedef void (CALLBACK* CDRabout)(void);\r | |
2e88c317 | 119 | typedef long (CALLBACK* CDRplay)(unsigned char *);\r |
ef79bbde P |
120 | typedef long (CALLBACK* CDRstop)(void);\r |
121 | typedef long (CALLBACK* CDRsetfilename)(char *);\r | |
122 | struct CdrStat {\r | |
123 | uint32_t Type;\r | |
124 | uint32_t Status;\r | |
125 | unsigned char Time[3];\r | |
126 | };\r | |
127 | typedef long (CALLBACK* CDRgetStatus)(struct CdrStat *);\r | |
128 | typedef char* (CALLBACK* CDRgetDriveLetter)(void);\r | |
129 | struct SubQ {\r | |
130 | char res0[12];\r | |
131 | unsigned char ControlAndADR;\r | |
132 | unsigned char TrackNumber;\r | |
133 | unsigned char IndexNumber;\r | |
134 | unsigned char TrackRelativeAddress[3];\r | |
135 | unsigned char Filler;\r | |
1df403c5 | 136 | unsigned char AbsoluteAddress[3];\r |
ef79bbde P |
137 | unsigned char CRC[2];\r |
138 | char res1[72];\r | |
139 | };\r | |
140 | typedef long (CALLBACK* CDRreadCDDA)(unsigned char, unsigned char, unsigned char, unsigned char *);\r | |
141 | typedef long (CALLBACK* CDRgetTE)(unsigned char, unsigned char *, unsigned char *, unsigned char *);\r | |
142 | \r | |
143 | // CD-ROM function pointers\r | |
144 | extern CDRinit CDR_init;\r | |
145 | extern CDRshutdown CDR_shutdown;\r | |
146 | extern CDRopen CDR_open;\r | |
147 | extern CDRclose CDR_close; \r | |
148 | extern CDRtest CDR_test;\r | |
149 | extern CDRgetTN CDR_getTN;\r | |
150 | extern CDRgetTD CDR_getTD;\r | |
151 | extern CDRreadTrack CDR_readTrack;\r | |
152 | extern CDRgetBuffer CDR_getBuffer;\r | |
153 | extern CDRgetBufferSub CDR_getBufferSub;\r | |
154 | extern CDRplay CDR_play;\r | |
155 | extern CDRstop CDR_stop;\r | |
156 | extern CDRgetStatus CDR_getStatus;\r | |
157 | extern CDRgetDriveLetter CDR_getDriveLetter;\r | |
158 | extern CDRconfigure CDR_configure;\r | |
159 | extern CDRabout CDR_about;\r | |
160 | extern CDRsetfilename CDR_setfilename;\r | |
161 | extern CDRreadCDDA CDR_readCDDA;\r | |
162 | extern CDRgetTE CDR_getTE;\r | |
163 | \r | |
164 | // SPU Functions\r | |
165 | typedef long (CALLBACK* SPUinit)(void); \r | |
166 | typedef long (CALLBACK* SPUshutdown)(void); \r | |
167 | typedef long (CALLBACK* SPUclose)(void); \r | |
650adfd2 | 168 | typedef void (CALLBACK* SPUwriteRegister)(unsigned long, unsigned short, unsigned int);\r |
6183ddf9 | 169 | typedef unsigned short (CALLBACK* SPUreadRegister)(unsigned long, unsigned int);\r |
650adfd2 | 170 | typedef void (CALLBACK* SPUwriteDMAMem)(unsigned short *, int, unsigned int);\r |
171 | typedef void (CALLBACK* SPUreadDMAMem)(unsigned short *, int, unsigned int);\r | |
cdaef86c | 172 | typedef void (CALLBACK* SPUplayADPCMchannel)(xa_decode_t *, unsigned int, int);\r |
6e52baf5 | 173 | typedef void (CALLBACK* SPUregisterCallback)(void (CALLBACK *callback)(int));\r |
2b30c129 | 174 | typedef void (CALLBACK* SPUregisterScheduleCb)(void (CALLBACK *callback)(unsigned int cycles_after));\r |
6c62131f | 175 | typedef struct {\r |
176 | unsigned char PluginName[8];\r | |
177 | uint32_t PluginVersion;\r | |
178 | uint32_t Size;\r | |
179 | } SPUFreezeHdr_t;\r | |
ef79bbde P |
180 | typedef struct {\r |
181 | unsigned char PluginName[8];\r | |
182 | uint32_t PluginVersion;\r | |
183 | uint32_t Size;\r | |
184 | unsigned char SPUPorts[0x200];\r | |
185 | unsigned char SPURam[0x80000];\r | |
186 | xa_decode_t xa;\r | |
24dbf983 | 187 | unsigned char *unused;\r |
ef79bbde | 188 | } SPUFreeze_t;\r |
650adfd2 | 189 | typedef long (CALLBACK* SPUfreeze)(uint32_t, SPUFreeze_t *, uint32_t);\r |
190 | typedef void (CALLBACK* SPUasync)(uint32_t, uint32_t);\r | |
cdaef86c | 191 | typedef int (CALLBACK* SPUplayCDDAchannel)(short *, int, unsigned int, int);\r |
ef79bbde P |
192 | \r |
193 | // SPU function pointers\r | |
ef79bbde P |
194 | extern SPUinit SPU_init;\r |
195 | extern SPUshutdown SPU_shutdown;\r | |
ef79bbde P |
196 | extern SPUopen SPU_open;\r |
197 | extern SPUclose SPU_close;\r | |
ef79bbde P |
198 | extern SPUwriteRegister SPU_writeRegister;\r |
199 | extern SPUreadRegister SPU_readRegister;\r | |
ef79bbde P |
200 | extern SPUwriteDMAMem SPU_writeDMAMem;\r |
201 | extern SPUreadDMAMem SPU_readDMAMem;\r | |
202 | extern SPUplayADPCMchannel SPU_playADPCMchannel;\r | |
203 | extern SPUfreeze SPU_freeze;\r | |
204 | extern SPUregisterCallback SPU_registerCallback;\r | |
2b30c129 | 205 | extern SPUregisterScheduleCb SPU_registerScheduleCb;\r |
ef79bbde P |
206 | extern SPUasync SPU_async;\r |
207 | extern SPUplayCDDAchannel SPU_playCDDAchannel;\r | |
208 | \r | |
209 | // PAD Functions\r | |
210 | typedef long (CALLBACK* PADconfigure)(void);\r | |
211 | typedef void (CALLBACK* PADabout)(void);\r | |
212 | typedef long (CALLBACK* PADinit)(long);\r | |
213 | typedef long (CALLBACK* PADshutdown)(void); \r | |
214 | typedef long (CALLBACK* PADtest)(void); \r | |
215 | typedef long (CALLBACK* PADclose)(void);\r | |
216 | typedef long (CALLBACK* PADquery)(void);\r | |
e288923d | 217 | typedef long (CALLBACK* PADreadPort1)(PadDataS*);\r |
218 | typedef long (CALLBACK* PADreadPort2)(PadDataS*);\r | |
ef79bbde P |
219 | typedef long (CALLBACK* PADkeypressed)(void);\r |
220 | typedef unsigned char (CALLBACK* PADstartPoll)(int);\r | |
1e774d8e | 221 | typedef unsigned char (CALLBACK* PADpoll)(unsigned char, int *);\r |
ef79bbde P |
222 | typedef void (CALLBACK* PADsetSensitive)(int);\r |
223 | \r | |
224 | // PAD function pointers\r | |
225 | extern PADconfigure PAD1_configure;\r | |
226 | extern PADabout PAD1_about;\r | |
227 | extern PADinit PAD1_init;\r | |
228 | extern PADshutdown PAD1_shutdown;\r | |
229 | extern PADtest PAD1_test;\r | |
230 | extern PADopen PAD1_open;\r | |
231 | extern PADclose PAD1_close;\r | |
232 | extern PADquery PAD1_query;\r | |
233 | extern PADreadPort1 PAD1_readPort1;\r | |
234 | extern PADkeypressed PAD1_keypressed;\r | |
235 | extern PADstartPoll PAD1_startPoll;\r | |
236 | extern PADpoll PAD1_poll;\r | |
237 | extern PADsetSensitive PAD1_setSensitive;\r | |
238 | \r | |
239 | extern PADconfigure PAD2_configure;\r | |
240 | extern PADabout PAD2_about;\r | |
241 | extern PADinit PAD2_init;\r | |
242 | extern PADshutdown PAD2_shutdown;\r | |
243 | extern PADtest PAD2_test;\r | |
244 | extern PADopen PAD2_open;\r | |
245 | extern PADclose PAD2_close;\r | |
246 | extern PADquery PAD2_query;\r | |
247 | extern PADreadPort2 PAD2_readPort2;\r | |
248 | extern PADkeypressed PAD2_keypressed;\r | |
249 | extern PADstartPoll PAD2_startPoll;\r | |
250 | extern PADpoll PAD2_poll;\r | |
251 | extern PADsetSensitive PAD2_setSensitive;\r | |
252 | \r | |
253 | // NET Functions\r | |
254 | typedef long (CALLBACK* NETinit)(void);\r | |
255 | typedef long (CALLBACK* NETshutdown)(void);\r | |
256 | typedef long (CALLBACK* NETclose)(void);\r | |
257 | typedef long (CALLBACK* NETconfigure)(void);\r | |
258 | typedef long (CALLBACK* NETtest)(void);\r | |
259 | typedef void (CALLBACK* NETabout)(void);\r | |
260 | typedef void (CALLBACK* NETpause)(void);\r | |
261 | typedef void (CALLBACK* NETresume)(void);\r | |
262 | typedef long (CALLBACK* NETqueryPlayer)(void);\r | |
263 | typedef long (CALLBACK* NETsendData)(void *, int, int);\r | |
264 | typedef long (CALLBACK* NETrecvData)(void *, int, int);\r | |
265 | typedef long (CALLBACK* NETsendPadData)(void *, int);\r | |
266 | typedef long (CALLBACK* NETrecvPadData)(void *, int);\r | |
267 | \r | |
268 | typedef struct {\r | |
269 | char EmuName[32];\r | |
270 | char CdromID[9]; // ie. 'SCPH12345', no \0 trailing character\r | |
271 | char CdromLabel[11];\r | |
272 | void *psxMem;\r | |
273 | GPUshowScreenPic GPU_showScreenPic;\r | |
274 | GPUdisplayText GPU_displayText;\r | |
275 | PADsetSensitive PAD_setSensitive;\r | |
276 | char GPUpath[256]; // paths must be absolute\r | |
277 | char SPUpath[256];\r | |
278 | char CDRpath[256];\r | |
279 | char MCD1path[256];\r | |
280 | char MCD2path[256];\r | |
281 | char BIOSpath[256]; // 'HLE' for internal bios\r | |
282 | char Unused[1024];\r | |
283 | } netInfo;\r | |
284 | \r | |
285 | typedef long (CALLBACK* NETsetInfo)(netInfo *);\r | |
286 | typedef long (CALLBACK* NETkeypressed)(int);\r | |
287 | \r | |
288 | // NET function pointers \r | |
289 | extern NETinit NET_init;\r | |
290 | extern NETshutdown NET_shutdown;\r | |
291 | extern NETopen NET_open;\r | |
292 | extern NETclose NET_close; \r | |
293 | extern NETtest NET_test;\r | |
294 | extern NETconfigure NET_configure;\r | |
295 | extern NETabout NET_about;\r | |
296 | extern NETpause NET_pause;\r | |
297 | extern NETresume NET_resume;\r | |
298 | extern NETqueryPlayer NET_queryPlayer;\r | |
299 | extern NETsendData NET_sendData;\r | |
300 | extern NETrecvData NET_recvData;\r | |
301 | extern NETsendPadData NET_sendPadData;\r | |
302 | extern NETrecvPadData NET_recvPadData;\r | |
303 | extern NETsetInfo NET_setInfo;\r | |
304 | extern NETkeypressed NET_keypressed;\r | |
305 | \r | |
306 | #ifdef ENABLE_SIO1API\r | |
307 | \r | |
308 | // SIO1 Functions (link cable)\r | |
309 | typedef long (CALLBACK* SIO1init)(void);\r | |
310 | typedef long (CALLBACK* SIO1shutdown)(void);\r | |
311 | typedef long (CALLBACK* SIO1close)(void);\r | |
312 | typedef long (CALLBACK* SIO1configure)(void);\r | |
313 | typedef long (CALLBACK* SIO1test)(void);\r | |
314 | typedef void (CALLBACK* SIO1about)(void);\r | |
315 | typedef void (CALLBACK* SIO1pause)(void);\r | |
316 | typedef void (CALLBACK* SIO1resume)(void);\r | |
317 | typedef long (CALLBACK* SIO1keypressed)(int);\r | |
318 | typedef void (CALLBACK* SIO1writeData8)(unsigned char);\r | |
319 | typedef void (CALLBACK* SIO1writeData16)(unsigned short);\r | |
320 | typedef void (CALLBACK* SIO1writeData32)(unsigned long);\r | |
321 | typedef void (CALLBACK* SIO1writeStat16)(unsigned short);\r | |
322 | typedef void (CALLBACK* SIO1writeStat32)(unsigned long);\r | |
323 | typedef void (CALLBACK* SIO1writeMode16)(unsigned short);\r | |
324 | typedef void (CALLBACK* SIO1writeMode32)(unsigned long);\r | |
325 | typedef void (CALLBACK* SIO1writeCtrl16)(unsigned short);\r | |
326 | typedef void (CALLBACK* SIO1writeCtrl32)(unsigned long);\r | |
327 | typedef void (CALLBACK* SIO1writeBaud16)(unsigned short);\r | |
328 | typedef void (CALLBACK* SIO1writeBaud32)(unsigned long);\r | |
329 | typedef unsigned char (CALLBACK* SIO1readData8)(void);\r | |
330 | typedef unsigned short (CALLBACK* SIO1readData16)(void);\r | |
331 | typedef unsigned long (CALLBACK* SIO1readData32)(void);\r | |
332 | typedef unsigned short (CALLBACK* SIO1readStat16)(void);\r | |
333 | typedef unsigned long (CALLBACK* SIO1readStat32)(void);\r | |
334 | typedef unsigned short (CALLBACK* SIO1readMode16)(void);\r | |
335 | typedef unsigned long (CALLBACK* SIO1readMode32)(void);\r | |
336 | typedef unsigned short (CALLBACK* SIO1readCtrl16)(void);\r | |
337 | typedef unsigned long (CALLBACK* SIO1readCtrl32)(void);\r | |
338 | typedef unsigned short (CALLBACK* SIO1readBaud16)(void);\r | |
339 | typedef unsigned long (CALLBACK* SIO1readBaud32)(void);\r | |
340 | typedef void (CALLBACK* SIO1registerCallback)(void (CALLBACK *callback)(void));\r | |
341 | \r | |
342 | // SIO1 function pointers \r | |
343 | extern SIO1init SIO1_init;\r | |
344 | extern SIO1shutdown SIO1_shutdown;\r | |
345 | extern SIO1open SIO1_open;\r | |
346 | extern SIO1close SIO1_close; \r | |
347 | extern SIO1test SIO1_test;\r | |
348 | extern SIO1configure SIO1_configure;\r | |
349 | extern SIO1about SIO1_about;\r | |
350 | extern SIO1pause SIO1_pause;\r | |
351 | extern SIO1resume SIO1_resume;\r | |
352 | extern SIO1keypressed SIO1_keypressed;\r | |
353 | extern SIO1writeData8 SIO1_writeData8;\r | |
354 | extern SIO1writeData16 SIO1_writeData16;\r | |
355 | extern SIO1writeData32 SIO1_writeData32;\r | |
356 | extern SIO1writeStat16 SIO1_writeStat16;\r | |
357 | extern SIO1writeStat32 SIO1_writeStat32;\r | |
358 | extern SIO1writeMode16 SIO1_writeMode16;\r | |
359 | extern SIO1writeMode32 SIO1_writeMode32;\r | |
360 | extern SIO1writeCtrl16 SIO1_writeCtrl16;\r | |
361 | extern SIO1writeCtrl32 SIO1_writeCtrl32;\r | |
362 | extern SIO1writeBaud16 SIO1_writeBaud16;\r | |
363 | extern SIO1writeBaud32 SIO1_writeBaud32;\r | |
364 | extern SIO1readData8 SIO1_readData8;\r | |
365 | extern SIO1readData16 SIO1_readData16;\r | |
366 | extern SIO1readData32 SIO1_readData32;\r | |
367 | extern SIO1readStat16 SIO1_readStat16;\r | |
368 | extern SIO1readStat32 SIO1_readStat32;\r | |
369 | extern SIO1readMode16 SIO1_readMode16;\r | |
370 | extern SIO1readMode32 SIO1_readMode32;\r | |
371 | extern SIO1readCtrl16 SIO1_readCtrl16;\r | |
372 | extern SIO1readCtrl32 SIO1_readCtrl32;\r | |
373 | extern SIO1readBaud16 SIO1_readBaud16;\r | |
374 | extern SIO1readBaud32 SIO1_readBaud32;\r | |
375 | extern SIO1registerCallback SIO1_registerCallback;\r | |
376 | \r | |
377 | #endif\r | |
378 | \r | |
ef79bbde P |
379 | void SetIsoFile(const char *filename);\r |
380 | const char *GetIsoFile(void);\r | |
381 | boolean UsingIso(void);\r | |
382 | void SetCdOpenCaseTime(s64 time);\r | |
383 | \r | |
bdeee1a1 | 384 | int padFreeze(void *f, int Mode);\r |
385 | \r | |
1e774d8e | 386 | extern void pl_gun_byte2(int port, unsigned char byte);\r |
387 | extern void plat_trigger_vibrate(int pad, int low, int high);\r | |
a11d0b9d | 388 | extern void plat_get_psx_resolution(int *xres, int *yres);\r |
1e774d8e | 389 | \r |
ef79bbde P |
390 | #ifdef __cplusplus\r |
391 | }\r | |
392 | #endif\r | |
393 | #endif\r |