Mercurial > sdl-ios-xcode
annotate docs/html/sdllistmodes.html @ 914:bbf8dcc8aed6
Date: Wed, 23 Jun 2004 17:05:33 -0400
From: Chris Nelson
Subject: [SDL] [Patch] WiseGroup MP-8800 / MP-8866 (PS2 Joystick)
In the current cvs version, SDL doesn't handle these Playstation2
controller => USB adapters correctly, in linux.
It will always assume that the maximum number of joysticks (2 in the
case of the MP-8866, 4 in the case of the 8800) are plugged in. This is
bad not only because it allows SDL to exaggerate the number of logical
joysticks, but primarily because the joystick axes are mapped
incorrectly, all over the place, such that the devices are effectively
unusable unless you have the maximum number of joysticks plugged in.
My changes to src/joystick/linux/SDL_sysjoystick.c build on another's
previous work (which was a special case for this very joystick,
actually), and fix both of these problems, as well as making the current
code a little more general, to allow for others to more easily drop in
code for quirky joysticks such as these.
I've tested this code under 2.6.7 as well as 2.4.24... Both work as
advertised (provided you load the JOYDEV linux code as a module,
otherwise they won't work at all, new code or old, but that's another
issue entirely).
Though this sounds horribly formal, you have my permission to distribute
all of my work on this issue under the LGPL. So there.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 25 Jul 2004 18:31:50 +0000 |
parents | 355632dca928 |
children |
rev | line source |
---|---|
0 | 1 <HTML |
2 ><HEAD | |
3 ><TITLE | |
4 >SDL_ListModes</TITLE | |
5 ><META | |
6 NAME="GENERATOR" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ |
0 | 8 "><LINK |
9 REL="HOME" | |
10 TITLE="SDL Library Documentation" | |
11 HREF="index.html"><LINK | |
12 REL="UP" | |
13 TITLE="Video" | |
14 HREF="video.html"><LINK | |
15 REL="PREVIOUS" | |
16 TITLE="SDL_VideoDriverName" | |
17 HREF="sdlvideodrivername.html"><LINK | |
18 REL="NEXT" | |
19 TITLE="SDL_VideoModeOK" | |
20 HREF="sdlvideomodeok.html"></HEAD | |
21 ><BODY | |
22 CLASS="REFENTRY" | |
23 BGCOLOR="#FFF8DC" | |
24 TEXT="#000000" | |
25 LINK="#0000ee" | |
26 VLINK="#551a8b" | |
27 ALINK="#ff0000" | |
28 ><DIV | |
29 CLASS="NAVHEADER" | |
30 ><TABLE | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
31 SUMMARY="Header navigation table" |
0 | 32 WIDTH="100%" |
33 BORDER="0" | |
34 CELLPADDING="0" | |
35 CELLSPACING="0" | |
36 ><TR | |
37 ><TH | |
38 COLSPAN="3" | |
39 ALIGN="center" | |
40 >SDL Library Documentation</TH | |
41 ></TR | |
42 ><TR | |
43 ><TD | |
44 WIDTH="10%" | |
45 ALIGN="left" | |
46 VALIGN="bottom" | |
47 ><A | |
48 HREF="sdlvideodrivername.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
49 ACCESSKEY="P" |
0 | 50 >Prev</A |
51 ></TD | |
52 ><TD | |
53 WIDTH="80%" | |
54 ALIGN="center" | |
55 VALIGN="bottom" | |
56 ></TD | |
57 ><TD | |
58 WIDTH="10%" | |
59 ALIGN="right" | |
60 VALIGN="bottom" | |
61 ><A | |
62 HREF="sdlvideomodeok.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
63 ACCESSKEY="N" |
0 | 64 >Next</A |
65 ></TD | |
66 ></TR | |
67 ></TABLE | |
68 ><HR | |
69 ALIGN="LEFT" | |
70 WIDTH="100%"></DIV | |
71 ><H1 | |
72 ><A | |
73 NAME="SDLLISTMODES" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
74 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
75 >SDL_ListModes</H1 |
0 | 76 ><DIV |
77 CLASS="REFNAMEDIV" | |
78 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
79 NAME="AEN1159" |
0 | 80 ></A |
81 ><H2 | |
82 >Name</H2 | |
83 >SDL_ListModes -- Returns a pointer to an array of available screen dimensions for | |
84 the given format and video flags</DIV | |
85 ><DIV | |
86 CLASS="REFSYNOPSISDIV" | |
87 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
88 NAME="AEN1162" |
0 | 89 ></A |
90 ><H2 | |
91 >Synopsis</H2 | |
92 ><DIV | |
93 CLASS="FUNCSYNOPSIS" | |
94 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
95 NAME="AEN1163" |
0 | 96 ></A |
97 ><P | |
98 ></P | |
99 ><PRE | |
100 CLASS="FUNCSYNOPSISINFO" | |
101 >#include "SDL.h"</PRE | |
102 ><P | |
103 ><CODE | |
104 ><CODE | |
105 CLASS="FUNCDEF" | |
106 >SDL_Rect **<B | |
107 CLASS="FSFUNC" | |
108 >SDL_ListModes</B | |
109 ></CODE | |
110 >(SDL_PixelFormat *format, Uint32 flags);</CODE | |
111 ></P | |
112 ><P | |
113 ></P | |
114 ></DIV | |
115 ></DIV | |
116 ><DIV | |
117 CLASS="REFSECT1" | |
118 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
119 NAME="AEN1169" |
0 | 120 ></A |
121 ><H2 | |
122 >Description</H2 | |
123 ><P | |
124 >Return a pointer to an array of available screen dimensions for the given | |
125 format and video flags, sorted largest to smallest. Returns | |
126 <TT | |
127 CLASS="LITERAL" | |
128 >NULL</TT | |
129 > if there are no dimensions available for a particular | |
130 format, or <SPAN | |
131 CLASS="RETURNVALUE" | |
132 >-1</SPAN | |
133 > if any dimension is okay for | |
134 the given format.</P | |
135 ><P | |
136 >If <TT | |
137 CLASS="PARAMETER" | |
138 ><I | |
139 >format</I | |
140 ></TT | |
141 > is <TT | |
142 CLASS="LITERAL" | |
143 >NULL</TT | |
144 >, the mode list | |
145 will be for the format returned by <A | |
146 HREF="sdlgetvideoinfo.html" | |
147 >SDL_GetVideoInfo()</A | |
148 >-><TT | |
149 CLASS="STRUCTFIELD" | |
150 ><I | |
151 >vfmt</I | |
152 ></TT | |
153 >. The <TT | |
154 CLASS="PARAMETER" | |
155 ><I | |
156 >flag</I | |
157 ></TT | |
158 > parameter is an OR'd combination of <A | |
159 HREF="sdlsurface.html" | |
160 >surface</A | |
161 > flags. The flags are the same as those used <A | |
162 HREF="sdlsetvideomode.html" | |
163 ><TT | |
164 CLASS="FUNCTION" | |
165 >SDL_SetVideoMode</TT | |
166 ></A | |
167 > and they play a strong role in deciding what modes are valid. For instance, if you pass <TT | |
168 CLASS="LITERAL" | |
169 >SDL_HWSURFACE</TT | |
170 > as a flag only modes that support hardware video surfaces will be returned.</P | |
171 ></DIV | |
172 ><DIV | |
173 CLASS="REFSECT1" | |
174 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
175 NAME="AEN1184" |
0 | 176 ></A |
177 ><H2 | |
178 >Example</H2 | |
179 ><PRE | |
180 CLASS="PROGRAMLISTING" | |
181 >SDL_Rect **modes; | |
182 int i; | |
183 . | |
184 . | |
185 . | |
186 | |
187 /* Get available fullscreen/hardware modes */ | |
188 modes=SDL_ListModes(NULL, SDL_FULLSCREEN|SDL_HWSURFACE); | |
189 | |
190 /* Check is there are any modes available */ | |
191 if(modes == (SDL_Rect **)0){ | |
192 printf("No modes available!\n"); | |
193 exit(-1); | |
194 } | |
195 | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
196 /* Check if our resolution is restricted */ |
0 | 197 if(modes == (SDL_Rect **)-1){ |
198 printf("All resolutions available.\n"); | |
199 } | |
200 else{ | |
201 /* Print valid modes */ | |
202 printf("Available Modes\n"); | |
203 for(i=0;modes[i];++i) | |
204 printf(" %d x %d\n", modes[i]->w, modes[i]->h); | |
205 } | |
206 . | |
207 .</PRE | |
208 ></DIV | |
209 ><DIV | |
210 CLASS="REFSECT1" | |
211 ><A | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
212 NAME="AEN1187" |
0 | 213 ></A |
214 ><H2 | |
215 >See Also</H2 | |
216 ><P | |
217 ><A | |
218 HREF="sdlsetvideomode.html" | |
219 ><TT | |
220 CLASS="FUNCTION" | |
221 >SDL_SetVideoMode</TT | |
222 ></A | |
223 >, | |
224 <A | |
225 HREF="sdlgetvideoinfo.html" | |
226 ><TT | |
227 CLASS="FUNCTION" | |
228 >SDL_GetVideoInfo</TT | |
229 ></A | |
230 >, | |
231 <A | |
232 HREF="sdlrect.html" | |
233 ><SPAN | |
234 CLASS="STRUCTNAME" | |
235 >SDL_Rect</SPAN | |
236 ></A | |
237 >, | |
238 <A | |
239 HREF="sdlpixelformat.html" | |
240 ><SPAN | |
241 CLASS="STRUCTNAME" | |
242 >SDL_PixelFormat</SPAN | |
243 ></A | |
244 ></P | |
245 ></DIV | |
246 ><DIV | |
247 CLASS="NAVFOOTER" | |
248 ><HR | |
249 ALIGN="LEFT" | |
250 WIDTH="100%"><TABLE | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
251 SUMMARY="Footer navigation table" |
0 | 252 WIDTH="100%" |
253 BORDER="0" | |
254 CELLPADDING="0" | |
255 CELLSPACING="0" | |
256 ><TR | |
257 ><TD | |
258 WIDTH="33%" | |
259 ALIGN="left" | |
260 VALIGN="top" | |
261 ><A | |
262 HREF="sdlvideodrivername.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
263 ACCESSKEY="P" |
0 | 264 >Prev</A |
265 ></TD | |
266 ><TD | |
267 WIDTH="34%" | |
268 ALIGN="center" | |
269 VALIGN="top" | |
270 ><A | |
271 HREF="index.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
272 ACCESSKEY="H" |
0 | 273 >Home</A |
274 ></TD | |
275 ><TD | |
276 WIDTH="33%" | |
277 ALIGN="right" | |
278 VALIGN="top" | |
279 ><A | |
280 HREF="sdlvideomodeok.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
281 ACCESSKEY="N" |
0 | 282 >Next</A |
283 ></TD | |
284 ></TR | |
285 ><TR | |
286 ><TD | |
287 WIDTH="33%" | |
288 ALIGN="left" | |
289 VALIGN="top" | |
290 >SDL_VideoDriverName</TD | |
291 ><TD | |
292 WIDTH="34%" | |
293 ALIGN="center" | |
294 VALIGN="top" | |
295 ><A | |
296 HREF="video.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
297 ACCESSKEY="U" |
0 | 298 >Up</A |
299 ></TD | |
300 ><TD | |
301 WIDTH="33%" | |
302 ALIGN="right" | |
303 VALIGN="top" | |
304 >SDL_VideoModeOK</TD | |
305 ></TR | |
306 ></TABLE | |
307 ></DIV | |
308 ></BODY | |
309 ></HTML | |
310 > |