ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/padSDL/psemu.h
Revision: 1.1.1.1 (vendor branch)
Committed: 2003-02-06T21:54:03Z (21 years, 2 months ago) by cebix
Content type: text/plain
Branch: MAIN, cebix
CVS Tags: start, HEAD
Changes since 1.1: +0 -0 lines
Log Message:
imported sources

File Contents

# User Rev Content
1 cebix 1.1 /*
2     PSEmu Plugin Developer Kit Header definition
3    
4     (C)1998 Vision Thing
5    
6     This file can be used only to develop PSEmu Plugins
7     Other usage is highly prohibited.
8     */
9    
10    
11     // IMPORTANT!!!
12     // This file will be used by PSEmu version >= 1.0.3
13     // so, please, develop Plugins w/o using this header file now
14     // if you want to add return codes (any) just drop mail to
15     // duddie@psemu.com
16    
17     #ifndef _PSEMU_PLUGIN_DEFS_H
18     #define _PSEMU_PLUGIN_DEFS_H
19    
20    
21     // header version
22     #define _PPDK_HEADER_VERSION 1
23    
24     #define PLUGIN_VERSION 1
25    
26     // plugin type returned by PSEgetLibType (types can be merged if plugin is multi type!)
27     #define PSE_LT_CDR 1
28     #define PSE_LT_GPU 2
29     #define PSE_LT_SPU 4
30     #define PSE_LT_PAD 8
31    
32    
33     // every function in DLL if completed sucessfully should return this value
34     #define PSE_ERR_SUCCESS 0
35     // undefined error but fatal one, that kills all functionality
36     #define PSE_ERR_FATAL -1
37    
38    
39     // XXX_Init return values
40     // Those return values apply to all libraries
41    
42     // initialization went OK
43     #define PSE_INIT_ERR_SUCCESS 0
44    
45     // this driver is not configured
46     #define PSE_INIT_ERR_NOTCONFIGURED -2
47    
48     // this driver can not operate properly on this hardware or hardware is not detected
49     #define PSE_INIT_ERR_NOHARDWARE -3
50    
51    
52     /* GPU PlugIn */
53    
54    
55     // GPU_Test return values
56    
57     // sucess, everything configured, and went OK.
58     #define PSE_GPU_ERR_SUCCESS 0
59    
60     // this driver is not configured
61     #define PSE_GPU_ERR_NOTCONFIGURED 1
62    
63    
64    
65     // GPU_Query - will be implemented in v2
66    
67     typedef struct
68     {
69     unsigned long flags;
70     unsigned long status;
71     HWND window;
72     unsigned char reserved[100];
73     } gpuQueryS;
74    
75     // gpuQueryS.flags
76     // this driver requests windowed mode,
77     #define PSE_GPU_FLAGS_WINDOWED 1
78    
79     // gpuQueryS.status
80     // this driver cannot operate in this windowed mode
81     #define PSE_GPU_STATUS_WINDOWWRONG 1
82    
83     // GPU_Query End - will be implemented in v2
84    
85    
86     /* CDR PlugIn */
87    
88     // CDR_Test return values
89    
90     // sucess, everything configured, and went OK.
91     #define PSE_CDR_ERR_SUCCESS 0
92    
93     // ERRORS
94     #define PSE_CDR_ERR -40
95     // this driver is not configured
96     #define PSE_CDR_ERR_NOTCONFIGURED PSE_CDR_ERR - 0
97     // if this driver is unable to read data from medium
98     #define PSE_CDR_ERR_NOREAD PSE_CDR_ERR - 1
99    
100     // WARNINGS
101     #define PSE_CDR_WARN 40
102     // if this driver emulates lame mode ie. can read only 2048 tracks and sector header is emulated
103     // this might happen to CDROMS that do not support RAW mode reading - surelly it will kill many games
104     #define PSE_CDR_WARN_LAMECD PSE_CDR_WARN + 0
105    
106    
107    
108    
109     /* SPU PlugIn */
110    
111     // some info retricted (now!)
112    
113     // sucess, everything configured, and went OK.
114     #define PSE_SPU_ERR_SUCCESS 0
115    
116     // ERRORS
117     // this error might be returned as critical error but none of below
118     #define PSE_SPU_ERR -60
119    
120     // this driver is not configured
121     #define PSE_SPU_ERR_NOTCONFIGURED PSE_SPU_ERR - 1
122     // this driver failed Init
123     #define PSE_SPU_ERR_INIT PSE_SPU_ERR - 2
124    
125    
126     // WARNINGS
127     // this warning might be returned as undefined warning but allowing driver to continue
128     #define PSE_SPU_WARN 60
129    
130    
131    
132    
133     /* PAD PlugIn */
134    
135     // PADquery responses (notice - values ORed)
136     // PSEmu will use them also in PADinit to tell Plugin which Ports will use
137     // notice that PSEmu will call PADinit and PADopen only once when they are from
138     // same plugin
139    
140     // might be used in port 1 (must support PADreadPort1() function)
141     #define PSE_PAD_USE_PORT1 1
142     // might be used in port 2 (must support PADreadPort2() function)
143     #define PSE_PAD_USE_PORT2 2
144    
145    
146    
147     // MOUSE SCPH-1030
148     #define PSE_PAD_TYPE_MOUSE 1
149     // NEGCON - 16 button analog controller SLPH-00001
150     #define PSE_PAD_TYPE_NEGCON 2
151     // GUN CONTROLLER - gun controller SLPH-00014 from Konami
152     #define PSE_PAD_TYPE_GUN 3
153     // STANDARD PAD SCPH-1080, SCPH-1150
154     #define PSE_PAD_TYPE_STANDARD 4
155     // ANALOG JOYSTICK SCPH-1110
156     #define PSE_PAD_TYPE_ANALOGJOY 5
157     // GUNCON - gun controller SLPH-00034 from Namco
158     #define PSE_PAD_TYPE_GUNCON 6
159     // ANALOG CONTROLLER SCPH-1150
160     #define PSE_PAD_TYPE_ANALOGPAD 7
161    
162    
163     // sucess, everything configured, and went OK.
164     #define PSE_PAD_ERR_SUCCESS 0
165     // general plugin failure (undefined error)
166     #define PSE_PAD_ERR_FAILURE -1
167    
168    
169     // ERRORS
170     // this error might be returned as critical error but none of below
171     #define PSE_PAD_ERR -80
172     // this driver is not configured
173     #define PSE_PAD_ERR_NOTCONFIGURED PSE_PAD_ERR - 1
174     // this driver failed Init
175     #define PSE_PAD_ERR_INIT PSE_PAD_ERR - 2
176    
177    
178     // WARNINGS
179     // this warning might be returned as undefined warning but allowing driver to continue
180     #define PSE_PAD_WARN 80
181    
182    
183     typedef struct
184     {
185     // controler type - fill it withe predefined values above
186     unsigned char controllerType;
187    
188     // status of buttons - every controller fills this field
189     unsigned short buttonStatus;
190    
191     // for analog pad fill those next 4 bytes
192     // values are analog in range 0-255 where 128 is center position
193     unsigned char rightJoyX, rightJoyY, leftJoyX, leftJoyY;
194    
195     // for mouse fill those next 2 bytes
196     // values are in range -128 - 127
197     unsigned char moveX, moveY;
198    
199     unsigned char reserved[91];
200    
201     } PadDataS;
202    
203    
204     #endif // _PSEMU_PLUGIN_DEFS_H