1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
/* GSnull
* Copyright (C) 2002-2010 PCSX2 Dev Team
*
* PCSX2 is free software: you can redistribute it and/or modify it under the terms
* of the GNU Lesser General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* PCSX2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with PCSX2.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __GS_H__
#define __GS_H__
struct _keyEvent;
typedef struct _keyEvent keyEvent;
#include <stdio.h>
#include "Pcsx2Defs.h"
#ifdef _WIN32
#include "Windows/GSwin.h"
#endif
#ifdef __linux__
#include "Linux/GSLinux.h"
#endif
#define GSdefs
#include "PS2Edefs.h"
#include "PS2Eext.h"
#include "GifTransfer.h"
#include "null/GSnull.h"
#ifdef _MSC_VER
#define EXPORT_C_(type) extern "C" type CALLBACK
#else
#define EXPORT_C_(type) extern "C" __attribute__((stdcall, externally_visible, visibility("default"))) type
#endif
//#define GS_LOG GSLog::Log
extern const unsigned char version;
extern const unsigned char revision;
extern const unsigned char build;
typedef struct
{
int Log;
bool path3;
} Config;
typedef struct
{
u32 CSRw;
pathInfo path[4];
bool Path3transfer;
float q;
u32 imageTransfer;
int MultiThreaded;
int nPath3Hack;
GIFReg regs;
GIFCTXTReg ctxt_regs[2];
} GSVars;
extern GSVars gs;
extern Config conf;
extern u32 GSKeyEvent;
extern bool GSShift, GSAlt;
extern void (*GSirq)();
namespace GSLog
{
extern bool Open();
extern void Close();
extern void Log(const char *fmt, ...);
extern void Message(const char *fmt, ...);
extern void Print(const char *fmt, ...);
extern void WriteLn(const char *fmt, ...);
};
extern void SaveConfig();
extern void LoadConfig();
#endif
|