| 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 |
| 28 | \r |
| 29 | //#define ENABLE_SIO1API 1\r |
| 30 | \r |
| 31 | #ifndef _WIN32\r |
| 32 | \r |
| 33 | typedef void* HWND;\r |
| 34 | #define CALLBACK\r |
| 35 | \r |
| 36 | #else\r |
| 37 | \r |
| 38 | #define WIN32_LEAN_AND_MEAN\r |
| 39 | #include <windows.h>\r |
| 40 | \r |
| 41 | #endif\r |
| 42 | \r |
| 43 | typedef long (CALLBACK *GPUopen)(unsigned long *, char *, char *);\r |
| 44 | typedef long (CALLBACK *SPUopen)(void);\r |
| 45 | typedef long (CALLBACK *PADopen)(unsigned long *);\r |
| 46 | typedef long (CALLBACK *NETopen)(unsigned long *);\r |
| 47 | typedef long (CALLBACK *SIO1open)(unsigned long *);\r |
| 48 | \r |
| 49 | #include "spu.h"\r |
| 50 | \r |
| 51 | #include "psemu_plugin_defs.h"\r |
| 52 | #include "decode_xa.h"\r |
| 53 | \r |
| 54 | int LoadPlugins();\r |
| 55 | void ReleasePlugins();\r |
| 56 | int OpenPlugins();\r |
| 57 | void ClosePlugins();\r |
| 58 | int ReloadCdromPlugin();\r |
| 59 | \r |
| 60 | typedef unsigned long (CALLBACK* PSEgetLibType)(void);\r |
| 61 | typedef unsigned long (CALLBACK* PSEgetLibVersion)(void);\r |
| 62 | typedef char *(CALLBACK* PSEgetLibName)(void);\r |
| 63 | \r |
| 64 | // GPU Functions\r |
| 65 | typedef long (CALLBACK* GPUinit)(void);\r |
| 66 | typedef long (CALLBACK* GPUshutdown)(void);\r |
| 67 | typedef long (CALLBACK* GPUclose)(void);\r |
| 68 | typedef void (CALLBACK* GPUwriteStatus)(uint32_t);\r |
| 69 | typedef void (CALLBACK* GPUwriteData)(uint32_t);\r |
| 70 | typedef void (CALLBACK* GPUwriteDataMem)(uint32_t *, int);\r |
| 71 | typedef uint32_t (CALLBACK* GPUreadStatus)(void);\r |
| 72 | typedef uint32_t (CALLBACK* GPUreadData)(void);\r |
| 73 | typedef void (CALLBACK* GPUreadDataMem)(uint32_t *, int);\r |
| 74 | typedef long (CALLBACK* GPUdmaChain)(uint32_t *,uint32_t);\r |
| 75 | typedef void (CALLBACK* GPUupdateLace)(void);\r |
| 76 | typedef long (CALLBACK* GPUconfigure)(void);\r |
| 77 | typedef long (CALLBACK* GPUtest)(void);\r |
| 78 | typedef void (CALLBACK* GPUabout)(void);\r |
| 79 | typedef void (CALLBACK* GPUmakeSnapshot)(void);\r |
| 80 | typedef void (CALLBACK* GPUkeypressed)(int);\r |
| 81 | typedef void (CALLBACK* GPUdisplayText)(char *);\r |
| 82 | typedef struct {\r |
| 83 | uint32_t ulFreezeVersion;\r |
| 84 | uint32_t ulStatus;\r |
| 85 | uint32_t ulControl[256];\r |
| 86 | unsigned char psxVRam[1024*512*2];\r |
| 87 | } GPUFreeze_t;\r |
| 88 | typedef long (CALLBACK* GPUfreeze)(uint32_t, GPUFreeze_t *);\r |
| 89 | typedef long (CALLBACK* GPUgetScreenPic)(unsigned char *);\r |
| 90 | typedef long (CALLBACK* GPUshowScreenPic)(unsigned char *);\r |
| 91 | typedef void (CALLBACK* GPUclearDynarec)(void (CALLBACK *callback)(void));\r |
| 92 | typedef void (CALLBACK* GPUvBlank)(int, int);\r |
| 93 | \r |
| 94 | // GPU function pointers\r |
| 95 | extern GPUupdateLace GPU_updateLace;\r |
| 96 | extern GPUinit GPU_init;\r |
| 97 | extern GPUshutdown GPU_shutdown; \r |
| 98 | extern GPUconfigure GPU_configure;\r |
| 99 | extern GPUtest GPU_test;\r |
| 100 | extern GPUabout GPU_about;\r |
| 101 | extern GPUopen GPU_open;\r |
| 102 | extern GPUclose GPU_close;\r |
| 103 | extern GPUreadStatus GPU_readStatus;\r |
| 104 | extern GPUreadData GPU_readData;\r |
| 105 | extern GPUreadDataMem GPU_readDataMem;\r |
| 106 | extern GPUwriteStatus GPU_writeStatus; \r |
| 107 | extern GPUwriteData GPU_writeData;\r |
| 108 | extern GPUwriteDataMem GPU_writeDataMem;\r |
| 109 | extern GPUdmaChain GPU_dmaChain;\r |
| 110 | extern GPUkeypressed GPU_keypressed;\r |
| 111 | extern GPUdisplayText GPU_displayText;\r |
| 112 | extern GPUmakeSnapshot GPU_makeSnapshot;\r |
| 113 | extern GPUfreeze GPU_freeze;\r |
| 114 | extern GPUgetScreenPic GPU_getScreenPic;\r |
| 115 | extern GPUshowScreenPic GPU_showScreenPic;\r |
| 116 | extern GPUclearDynarec GPU_clearDynarec;\r |
| 117 | extern GPUvBlank GPU_vBlank;\r |
| 118 | \r |
| 119 | // CD-ROM Functions\r |
| 120 | typedef long (CALLBACK* CDRinit)(void);\r |
| 121 | typedef long (CALLBACK* CDRshutdown)(void);\r |
| 122 | typedef long (CALLBACK* CDRopen)(void);\r |
| 123 | typedef long (CALLBACK* CDRclose)(void);\r |
| 124 | typedef long (CALLBACK* CDRgetTN)(unsigned char *);\r |
| 125 | typedef long (CALLBACK* CDRgetTD)(unsigned char, unsigned char *);\r |
| 126 | typedef boolean (CALLBACK* CDRreadTrack)(unsigned char *);\r |
| 127 | typedef unsigned char* (CALLBACK* CDRgetBuffer)(void);\r |
| 128 | typedef unsigned char* (CALLBACK* CDRgetBufferSub)(void);\r |
| 129 | typedef long (CALLBACK* CDRconfigure)(void);\r |
| 130 | typedef long (CALLBACK* CDRtest)(void);\r |
| 131 | typedef void (CALLBACK* CDRabout)(void);\r |
| 132 | typedef long (CALLBACK* CDRplay)(void);\r |
| 133 | typedef long (CALLBACK* CDRstop)(void);\r |
| 134 | typedef long (CALLBACK* CDRsetfilename)(char *);\r |
| 135 | struct CdrStat {\r |
| 136 | uint32_t Type;\r |
| 137 | uint32_t Status;\r |
| 138 | unsigned char Time[3];\r |
| 139 | };\r |
| 140 | typedef long (CALLBACK* CDRgetStatus)(struct CdrStat *);\r |
| 141 | typedef char* (CALLBACK* CDRgetDriveLetter)(void);\r |
| 142 | struct SubQ {\r |
| 143 | char res0[12];\r |
| 144 | unsigned char ControlAndADR;\r |
| 145 | unsigned char TrackNumber;\r |
| 146 | unsigned char IndexNumber;\r |
| 147 | unsigned char TrackRelativeAddress[3];\r |
| 148 | unsigned char Filler;\r |
| 149 | unsigned char AbsoluteAddress[3];\r |
| 150 | unsigned char CRC[2];\r |
| 151 | char res1[72];\r |
| 152 | };\r |
| 153 | typedef long (CALLBACK* CDRreadCDDA)(unsigned char, unsigned char, unsigned char, unsigned char *);\r |
| 154 | typedef long (CALLBACK* CDRgetTE)(unsigned char, unsigned char *, unsigned char *, unsigned char *);\r |
| 155 | \r |
| 156 | // CD-ROM function pointers\r |
| 157 | extern CDRinit CDR_init;\r |
| 158 | extern CDRshutdown CDR_shutdown;\r |
| 159 | extern CDRopen CDR_open;\r |
| 160 | extern CDRclose CDR_close; \r |
| 161 | extern CDRtest CDR_test;\r |
| 162 | extern CDRgetTN CDR_getTN;\r |
| 163 | extern CDRgetTD CDR_getTD;\r |
| 164 | extern CDRreadTrack CDR_readTrack;\r |
| 165 | extern CDRgetBuffer CDR_getBuffer;\r |
| 166 | extern CDRgetBufferSub CDR_getBufferSub;\r |
| 167 | extern CDRplay CDR_play;\r |
| 168 | extern CDRstop CDR_stop;\r |
| 169 | extern CDRgetStatus CDR_getStatus;\r |
| 170 | extern CDRgetDriveLetter CDR_getDriveLetter;\r |
| 171 | extern CDRconfigure CDR_configure;\r |
| 172 | extern CDRabout CDR_about;\r |
| 173 | extern CDRsetfilename CDR_setfilename;\r |
| 174 | extern CDRreadCDDA CDR_readCDDA;\r |
| 175 | extern CDRgetTE CDR_getTE;\r |
| 176 | \r |
| 177 | // SPU Functions\r |
| 178 | typedef long (CALLBACK* SPUinit)(void); \r |
| 179 | typedef long (CALLBACK* SPUshutdown)(void); \r |
| 180 | typedef long (CALLBACK* SPUclose)(void); \r |
| 181 | typedef void (CALLBACK* SPUplaySample)(unsigned char); \r |
| 182 | typedef void (CALLBACK* SPUwriteRegister)(unsigned long, unsigned short, unsigned int);\r |
| 183 | typedef unsigned short (CALLBACK* SPUreadRegister)(unsigned long);\r |
| 184 | typedef void (CALLBACK* SPUwriteDMA)(unsigned short);\r |
| 185 | typedef unsigned short (CALLBACK* SPUreadDMA)(void);\r |
| 186 | typedef void (CALLBACK* SPUwriteDMAMem)(unsigned short *, int, unsigned int);\r |
| 187 | typedef void (CALLBACK* SPUreadDMAMem)(unsigned short *, int, unsigned int);\r |
| 188 | typedef void (CALLBACK* SPUplayADPCMchannel)(xa_decode_t *);\r |
| 189 | typedef void (CALLBACK* SPUregisterCallback)(void (CALLBACK *callback)(void));\r |
| 190 | typedef void (CALLBACK* SPUregisterScheduleCb)(void (CALLBACK *callback)(unsigned int cycles_after));\r |
| 191 | typedef long (CALLBACK* SPUconfigure)(void);\r |
| 192 | typedef long (CALLBACK* SPUtest)(void);\r |
| 193 | typedef void (CALLBACK* SPUabout)(void);\r |
| 194 | typedef struct {\r |
| 195 | unsigned char PluginName[8];\r |
| 196 | uint32_t PluginVersion;\r |
| 197 | uint32_t Size;\r |
| 198 | unsigned char SPUPorts[0x200];\r |
| 199 | unsigned char SPURam[0x80000];\r |
| 200 | xa_decode_t xa;\r |
| 201 | unsigned char *SPUInfo;\r |
| 202 | } SPUFreeze_t;\r |
| 203 | typedef long (CALLBACK* SPUfreeze)(uint32_t, SPUFreeze_t *, uint32_t);\r |
| 204 | typedef void (CALLBACK* SPUasync)(uint32_t, uint32_t);\r |
| 205 | typedef int (CALLBACK* SPUplayCDDAchannel)(short *, int);\r |
| 206 | \r |
| 207 | // SPU function pointers\r |
| 208 | extern SPUconfigure SPU_configure;\r |
| 209 | extern SPUabout SPU_about;\r |
| 210 | extern SPUinit SPU_init;\r |
| 211 | extern SPUshutdown SPU_shutdown;\r |
| 212 | extern SPUtest SPU_test;\r |
| 213 | extern SPUopen SPU_open;\r |
| 214 | extern SPUclose SPU_close;\r |
| 215 | extern SPUplaySample SPU_playSample;\r |
| 216 | extern SPUwriteRegister SPU_writeRegister;\r |
| 217 | extern SPUreadRegister SPU_readRegister;\r |
| 218 | extern SPUwriteDMA SPU_writeDMA;\r |
| 219 | extern SPUreadDMA SPU_readDMA;\r |
| 220 | extern SPUwriteDMAMem SPU_writeDMAMem;\r |
| 221 | extern SPUreadDMAMem SPU_readDMAMem;\r |
| 222 | extern SPUplayADPCMchannel SPU_playADPCMchannel;\r |
| 223 | extern SPUfreeze SPU_freeze;\r |
| 224 | extern SPUregisterCallback SPU_registerCallback;\r |
| 225 | extern SPUregisterScheduleCb SPU_registerScheduleCb;\r |
| 226 | extern SPUasync SPU_async;\r |
| 227 | extern SPUplayCDDAchannel SPU_playCDDAchannel;\r |
| 228 | \r |
| 229 | // PAD Functions\r |
| 230 | typedef long (CALLBACK* PADconfigure)(void);\r |
| 231 | typedef void (CALLBACK* PADabout)(void);\r |
| 232 | typedef long (CALLBACK* PADinit)(long);\r |
| 233 | typedef long (CALLBACK* PADshutdown)(void); \r |
| 234 | typedef long (CALLBACK* PADtest)(void); \r |
| 235 | typedef long (CALLBACK* PADclose)(void);\r |
| 236 | typedef long (CALLBACK* PADquery)(void);\r |
| 237 | typedef long (CALLBACK* PADreadPort1)(PadDataS*);\r |
| 238 | typedef long (CALLBACK* PADreadPort2)(PadDataS*);\r |
| 239 | typedef long (CALLBACK* PADkeypressed)(void);\r |
| 240 | typedef unsigned char (CALLBACK* PADstartPoll)(int);\r |
| 241 | typedef unsigned char (CALLBACK* PADpoll)(unsigned char);\r |
| 242 | typedef void (CALLBACK* PADsetSensitive)(int);\r |
| 243 | \r |
| 244 | // PAD function pointers\r |
| 245 | extern PADconfigure PAD1_configure;\r |
| 246 | extern PADabout PAD1_about;\r |
| 247 | extern PADinit PAD1_init;\r |
| 248 | extern PADshutdown PAD1_shutdown;\r |
| 249 | extern PADtest PAD1_test;\r |
| 250 | extern PADopen PAD1_open;\r |
| 251 | extern PADclose PAD1_close;\r |
| 252 | extern PADquery PAD1_query;\r |
| 253 | extern PADreadPort1 PAD1_readPort1;\r |
| 254 | extern PADkeypressed PAD1_keypressed;\r |
| 255 | extern PADstartPoll PAD1_startPoll;\r |
| 256 | extern PADpoll PAD1_poll;\r |
| 257 | extern PADsetSensitive PAD1_setSensitive;\r |
| 258 | \r |
| 259 | extern PADconfigure PAD2_configure;\r |
| 260 | extern PADabout PAD2_about;\r |
| 261 | extern PADinit PAD2_init;\r |
| 262 | extern PADshutdown PAD2_shutdown;\r |
| 263 | extern PADtest PAD2_test;\r |
| 264 | extern PADopen PAD2_open;\r |
| 265 | extern PADclose PAD2_close;\r |
| 266 | extern PADquery PAD2_query;\r |
| 267 | extern PADreadPort2 PAD2_readPort2;\r |
| 268 | extern PADkeypressed PAD2_keypressed;\r |
| 269 | extern PADstartPoll PAD2_startPoll;\r |
| 270 | extern PADpoll PAD2_poll;\r |
| 271 | extern PADsetSensitive PAD2_setSensitive;\r |
| 272 | \r |
| 273 | // NET Functions\r |
| 274 | typedef long (CALLBACK* NETinit)(void);\r |
| 275 | typedef long (CALLBACK* NETshutdown)(void);\r |
| 276 | typedef long (CALLBACK* NETclose)(void);\r |
| 277 | typedef long (CALLBACK* NETconfigure)(void);\r |
| 278 | typedef long (CALLBACK* NETtest)(void);\r |
| 279 | typedef void (CALLBACK* NETabout)(void);\r |
| 280 | typedef void (CALLBACK* NETpause)(void);\r |
| 281 | typedef void (CALLBACK* NETresume)(void);\r |
| 282 | typedef long (CALLBACK* NETqueryPlayer)(void);\r |
| 283 | typedef long (CALLBACK* NETsendData)(void *, int, int);\r |
| 284 | typedef long (CALLBACK* NETrecvData)(void *, int, int);\r |
| 285 | typedef long (CALLBACK* NETsendPadData)(void *, int);\r |
| 286 | typedef long (CALLBACK* NETrecvPadData)(void *, int);\r |
| 287 | \r |
| 288 | typedef struct {\r |
| 289 | char EmuName[32];\r |
| 290 | char CdromID[9]; // ie. 'SCPH12345', no \0 trailing character\r |
| 291 | char CdromLabel[11];\r |
| 292 | void *psxMem;\r |
| 293 | GPUshowScreenPic GPU_showScreenPic;\r |
| 294 | GPUdisplayText GPU_displayText;\r |
| 295 | PADsetSensitive PAD_setSensitive;\r |
| 296 | char GPUpath[256]; // paths must be absolute\r |
| 297 | char SPUpath[256];\r |
| 298 | char CDRpath[256];\r |
| 299 | char MCD1path[256];\r |
| 300 | char MCD2path[256];\r |
| 301 | char BIOSpath[256]; // 'HLE' for internal bios\r |
| 302 | char Unused[1024];\r |
| 303 | } netInfo;\r |
| 304 | \r |
| 305 | typedef long (CALLBACK* NETsetInfo)(netInfo *);\r |
| 306 | typedef long (CALLBACK* NETkeypressed)(int);\r |
| 307 | \r |
| 308 | // NET function pointers \r |
| 309 | extern NETinit NET_init;\r |
| 310 | extern NETshutdown NET_shutdown;\r |
| 311 | extern NETopen NET_open;\r |
| 312 | extern NETclose NET_close; \r |
| 313 | extern NETtest NET_test;\r |
| 314 | extern NETconfigure NET_configure;\r |
| 315 | extern NETabout NET_about;\r |
| 316 | extern NETpause NET_pause;\r |
| 317 | extern NETresume NET_resume;\r |
| 318 | extern NETqueryPlayer NET_queryPlayer;\r |
| 319 | extern NETsendData NET_sendData;\r |
| 320 | extern NETrecvData NET_recvData;\r |
| 321 | extern NETsendPadData NET_sendPadData;\r |
| 322 | extern NETrecvPadData NET_recvPadData;\r |
| 323 | extern NETsetInfo NET_setInfo;\r |
| 324 | extern NETkeypressed NET_keypressed;\r |
| 325 | \r |
| 326 | #ifdef ENABLE_SIO1API\r |
| 327 | \r |
| 328 | // SIO1 Functions (link cable)\r |
| 329 | typedef long (CALLBACK* SIO1init)(void);\r |
| 330 | typedef long (CALLBACK* SIO1shutdown)(void);\r |
| 331 | typedef long (CALLBACK* SIO1close)(void);\r |
| 332 | typedef long (CALLBACK* SIO1configure)(void);\r |
| 333 | typedef long (CALLBACK* SIO1test)(void);\r |
| 334 | typedef void (CALLBACK* SIO1about)(void);\r |
| 335 | typedef void (CALLBACK* SIO1pause)(void);\r |
| 336 | typedef void (CALLBACK* SIO1resume)(void);\r |
| 337 | typedef long (CALLBACK* SIO1keypressed)(int);\r |
| 338 | typedef void (CALLBACK* SIO1writeData8)(unsigned char);\r |
| 339 | typedef void (CALLBACK* SIO1writeData16)(unsigned short);\r |
| 340 | typedef void (CALLBACK* SIO1writeData32)(unsigned long);\r |
| 341 | typedef void (CALLBACK* SIO1writeStat16)(unsigned short);\r |
| 342 | typedef void (CALLBACK* SIO1writeStat32)(unsigned long);\r |
| 343 | typedef void (CALLBACK* SIO1writeMode16)(unsigned short);\r |
| 344 | typedef void (CALLBACK* SIO1writeMode32)(unsigned long);\r |
| 345 | typedef void (CALLBACK* SIO1writeCtrl16)(unsigned short);\r |
| 346 | typedef void (CALLBACK* SIO1writeCtrl32)(unsigned long);\r |
| 347 | typedef void (CALLBACK* SIO1writeBaud16)(unsigned short);\r |
| 348 | typedef void (CALLBACK* SIO1writeBaud32)(unsigned long);\r |
| 349 | typedef unsigned char (CALLBACK* SIO1readData8)(void);\r |
| 350 | typedef unsigned short (CALLBACK* SIO1readData16)(void);\r |
| 351 | typedef unsigned long (CALLBACK* SIO1readData32)(void);\r |
| 352 | typedef unsigned short (CALLBACK* SIO1readStat16)(void);\r |
| 353 | typedef unsigned long (CALLBACK* SIO1readStat32)(void);\r |
| 354 | typedef unsigned short (CALLBACK* SIO1readMode16)(void);\r |
| 355 | typedef unsigned long (CALLBACK* SIO1readMode32)(void);\r |
| 356 | typedef unsigned short (CALLBACK* SIO1readCtrl16)(void);\r |
| 357 | typedef unsigned long (CALLBACK* SIO1readCtrl32)(void);\r |
| 358 | typedef unsigned short (CALLBACK* SIO1readBaud16)(void);\r |
| 359 | typedef unsigned long (CALLBACK* SIO1readBaud32)(void);\r |
| 360 | typedef void (CALLBACK* SIO1registerCallback)(void (CALLBACK *callback)(void));\r |
| 361 | \r |
| 362 | // SIO1 function pointers \r |
| 363 | extern SIO1init SIO1_init;\r |
| 364 | extern SIO1shutdown SIO1_shutdown;\r |
| 365 | extern SIO1open SIO1_open;\r |
| 366 | extern SIO1close SIO1_close; \r |
| 367 | extern SIO1test SIO1_test;\r |
| 368 | extern SIO1configure SIO1_configure;\r |
| 369 | extern SIO1about SIO1_about;\r |
| 370 | extern SIO1pause SIO1_pause;\r |
| 371 | extern SIO1resume SIO1_resume;\r |
| 372 | extern SIO1keypressed SIO1_keypressed;\r |
| 373 | extern SIO1writeData8 SIO1_writeData8;\r |
| 374 | extern SIO1writeData16 SIO1_writeData16;\r |
| 375 | extern SIO1writeData32 SIO1_writeData32;\r |
| 376 | extern SIO1writeStat16 SIO1_writeStat16;\r |
| 377 | extern SIO1writeStat32 SIO1_writeStat32;\r |
| 378 | extern SIO1writeMode16 SIO1_writeMode16;\r |
| 379 | extern SIO1writeMode32 SIO1_writeMode32;\r |
| 380 | extern SIO1writeCtrl16 SIO1_writeCtrl16;\r |
| 381 | extern SIO1writeCtrl32 SIO1_writeCtrl32;\r |
| 382 | extern SIO1writeBaud16 SIO1_writeBaud16;\r |
| 383 | extern SIO1writeBaud32 SIO1_writeBaud32;\r |
| 384 | extern SIO1readData8 SIO1_readData8;\r |
| 385 | extern SIO1readData16 SIO1_readData16;\r |
| 386 | extern SIO1readData32 SIO1_readData32;\r |
| 387 | extern SIO1readStat16 SIO1_readStat16;\r |
| 388 | extern SIO1readStat32 SIO1_readStat32;\r |
| 389 | extern SIO1readMode16 SIO1_readMode16;\r |
| 390 | extern SIO1readMode32 SIO1_readMode32;\r |
| 391 | extern SIO1readCtrl16 SIO1_readCtrl16;\r |
| 392 | extern SIO1readCtrl32 SIO1_readCtrl32;\r |
| 393 | extern SIO1readBaud16 SIO1_readBaud16;\r |
| 394 | extern SIO1readBaud32 SIO1_readBaud32;\r |
| 395 | extern SIO1registerCallback SIO1_registerCallback;\r |
| 396 | \r |
| 397 | #endif\r |
| 398 | \r |
| 399 | void CALLBACK clearDynarec(void);\r |
| 400 | \r |
| 401 | void SetIsoFile(const char *filename);\r |
| 402 | const char *GetIsoFile(void);\r |
| 403 | boolean UsingIso(void);\r |
| 404 | void SetCdOpenCaseTime(s64 time);\r |
| 405 | \r |
| 406 | #ifdef __cplusplus\r |
| 407 | }\r |
| 408 | #endif\r |
| 409 | #endif\r |