Mercurial > sdl-ios-xcode
annotate BUGS @ 934:af585d6efec8
Date: Thu, 17 Jun 2004 11:38:51 -0700 (PDT)
From: Eric Wing <ewing2121@yahoo.com>
Subject: New OS X patch (was Re: [SDL] Bug with inverted mouse coordinates in
I have a new patch for OS X I would like to submit.
First, it appears no further action has been taken on
my fix from Apple on the OpenGL windowed mode mouse
inversion problem. The fix would reunify the code, and
no longer require case checking for which version of
the OS you are running. This is probably a good fix
because the behavior with the old code could change
again with future versions of the OS, so those fixes
are included in this new patch.
But in addition, when I was at Apple, I asked them
about the ability to distinguish between the modifier
keys on the left and right sides of the keyboard (e.g.
Left Shift, Right Shift, Left/Right Alt, L/R Cmd, L/R
Ctrl). They told me that starting with Panther, the OS
began supporting this feature. This has always been a
source of annoyance for me when bringing a program
that comes from Windows or Linux to OS X when the
keybindings happened to need distinguishable left-side
and right-side keys. So the rest of the patch I am
submitting contains new code to support this feature
on Panther (and presumably later versions of the OS).
So after removing the OS version checks for the mouse
inversion problem, I reused the OS version checks to
activate the Left/Right detection of modifier keys. If
you are running Panther (or above), the new code will
attempt to distinguish between sides. For the older
OS's, the code path reverts to the original code.
I've tested with Panther on a G4 Cube, G5 dual
processor, and Powerbook Rev C. The Cube and G5
keyboards demonstrated the ability to distinguish
between sides. The Powerbook seems to only have
left-side keys, but the patch was still able to handle
it by producing the same results as before the patch.
I also wanted to test a non-Apple keyboard.
Unfortunately, I don't have any PC USB keyboards.
However, I was able to borrow a Sun Microsystems USB
keyboard, so I tried that out on the G5, and I got the
correct behavior for left and right sides. I'm
expecting that if it worked with a Sun keyboard, most
other keyboards should work with no problems.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Fri, 20 Aug 2004 22:35:23 +0000 |
parents | abe872771687 |
children | 9867f3d86e44 |
rev | line source |
---|---|
0 | 1 |
2 All: | |
3 Audio rate conversion is only implemented by multiplying or dividing | |
4 by a power of two. This is a side-effect of the requirement that the | |
5 raw audio buffer size be a power of two, and can hopefully be fixed. | |
6 This means 8 KHz audio converted to 22 KHz ends up being 16 KHz. :-/ | |
7 | |
8 When the implementation is writing directly to video memory the mouse | |
9 cursor doesn't work properly. Applications which do this should use | |
10 their own mouse cursor and call SDL_ShowCursor(0) to hide the system | |
11 cursor. | |
12 | |
13 Linux: | |
14 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
15 It requires handling of keyboard mapping events and using the XIM | |
16 input translation extension. I will implement it as requested. | |
17 Latin-1 keyboard input works fine. | |
18 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
19 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
20 |
0 | 21 The AAlib, GGI, and SVGAlib video drivers are not heavily tested. |
22 | |
23 Win32: | |
24 The MCI driver can't tell if the CD-ROM drive is paused or stopped. | |
25 | |
26 The SDL_INIT_EVENTTHREAD flag is not supported on Win32 | |
27 (Idea: create a separate DirectInput polling thread) | |
28 The main purpose of this flag is for smooth cursor motion in | |
29 fullscreen environments. | |
30 | |
31 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
32 This requires the ToUnicode() API which is only implemented on | |
33 Windows NT/2000, not on Windows 95/98. | |
34 Latin-1 keyboard input works fine. | |
35 | |
36 Joysticks are only supported under the Win32 MultiMedia API, | |
37 DirectInput support is not yet implemented. | |
38 | |
39 BeOS: | |
40 BePPC is not supported, apparently not even by Be Inc. | |
41 | |
42 SDL_WM_GrabInput() is not implemented. | |
43 Does anyone know how to do this? SDL_WM_GrabInput() is designed | |
44 to prevent the user from switching input and mouse focus away from | |
45 the SDL application. | |
46 | |
47 Continuous relative mouse motion is not implemented. | |
48 | |
49 Wide UNICODE character input (Kanji, etc.) has not been tested. | |
50 Latin-1 keyboard input works fine. | |
51 | |
52 MacOS: | |
53 Palette handling isn't implemented in windowed mode yet. | |
54 | |
55 Audio hasn't been extensively tested, in particular the locking | |
56 isn't implemented and mixer routines may not call malloc() or free() | |
57 because they are called at interrupt time. | |
58 | |
59 SDL_WM_GrabInput() is not implemented. | |
60 Does anyone know how to do this? SDL_WM_GrabInput() is designed | |
61 to prevent the user from switching input and mouse focus away from | |
62 the SDL application. | |
63 | |
64 Continuous relative mouse motion is not implemented. | |
65 | |
66 SDL_AddTimer() and SDL_RemoveTimer() haven't been implemented yet. | |
67 | |
68 Not all of the keys are properly recognized on the keyboard. | |
69 | |
70 MacOS X: | |
47
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
71 Depth switching for windowed mode isn't implemented yet. |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
72 |
0 | 73 Palette handling isn't implemented in windowed mode yet. |
47
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
74 |
390
19e73568a75c
Date: Sat, 1 Jun 2002 17:56:45 -0500
Sam Lantinga <slouken@libsdl.org>
parents:
279
diff
changeset
|
75 Command-line arguments dialog is not implemented yet. |
0 | 76 |
47
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
77 Fullscreen drawing has some artifacts. |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
78 |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
79 Fullscreen OpenGL for the software renderer is broken. |
0 | 80 |
47
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
81 Some OpenGL parameters are not accounted for, for example color bits customization. |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
82 |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
83 Continuous mouse motion perhaps is not as smooth as it should be. |
0 | 84 |
47
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
85 SDL_WM_GrabInput() is implemented, but it "freezes" the hardware |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
86 cursor in the center of the window/screen. Also, mouse moved events |
45b1c4303f87
Added initial support for Quartz video (thanks Darrell!)
Sam Lantinga <slouken@lokigames.com>
parents:
27
diff
changeset
|
87 are not generated, and the keyboard cannot be grabbed. |
0 | 88 |
89 MacOS X seems to have a broken pthread_cancel() implementation. | |
931
abe872771687
*** empty log message ***
Sam Lantinga <slouken@libsdl.org>
parents:
777
diff
changeset
|
90 Actually, it just only has one cancellation point defined. |
abe872771687
*** empty log message ***
Sam Lantinga <slouken@libsdl.org>
parents:
777
diff
changeset
|
91 http://lists.apple.com/archives/darwin-development/2004/Jun/24/killingapthread.001.txt |
0 | 92 |
93 FreeBSD: | |
94 pthread_cancel() isn't supported by FreeBSD 3.X, so threads don't | |
95 work on versions of FreeBSD earlier than 4.0. | |
96 | |
97 The CD-ROM handling doesn't work completely. | |
98 | |
99 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
100 It requires handling of keyboard mapping events and using the XIM | |
101 input translation extension. I will implement it as requested. | |
102 Latin-1 keyboard input works fine. | |
103 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
104 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
105 |
0 | 106 Solaris: |
107 The joystick functions are not implemented yet. | |
108 | |
109 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
110 It requires handling of keyboard mapping events and using the XIM | |
111 input translation extension. I will implement it as requested. | |
112 Latin-1 keyboard input works fine. | |
113 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
114 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
115 |
0 | 116 IRIX: |
117 The CD-ROM handling doesn't work completely. | |
118 | |
119 The joystick functions are not implemented yet. | |
120 | |
121 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
122 It requires handling of keyboard mapping events and using the XIM | |
123 input translation extension. I will implement it as requested. | |
124 Latin-1 keyboard input works fine. | |
125 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
126 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
127 |
250
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
128 EPOC: |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
129 Only Crystal version of Epoc/SymbianOS is currently supported. |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
130 |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
131 SDL is implemented in static library only. SDL uses static/global |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
132 variables and that is not allowed in EPOC dll libraries. |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
133 |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
134 Sound is not yet supported. |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
135 |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
136 Joystick, OpenGL and cdrom is not supported (think about cdrom in a cell phone:-). |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
137 |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
138 No console output screen. Printing to stdout do not have any effect. |
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
139 |
663
8bedd6d61642
Date: Sat, 2 Aug 2003 16:22:51 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
571
diff
changeset
|
140 QNX: |
692
04dd6c6d7c30
Date: Fri, 15 Aug 2003 09:13:59 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
663
diff
changeset
|
141 Fullscreen switch doesn't work (disabled for now). |
663
8bedd6d61642
Date: Sat, 2 Aug 2003 16:22:51 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
571
diff
changeset
|
142 |
8bedd6d61642
Date: Sat, 2 Aug 2003 16:22:51 +0300
Sam Lantinga <slouken@libsdl.org>
parents:
571
diff
changeset
|
143 |
0 | 144 OpenBSD: -= NOT YET SUPPORTED =- |
145 This is reported to work, but I haven't verified this. | |
146 | |
147 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
148 It requires handling of keyboard mapping events and using the XIM | |
149 input translation extension. I will implement it as requested. | |
150 Latin-1 keyboard input works fine. | |
151 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
152 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
153 |
0 | 154 OSF/Tru64: -= NOT YET SUPPORTED =- |
155 The audio functions are not implemented yet. | |
156 | |
157 Joysticks and CD-ROM functions are not implemented yet. | |
158 | |
159 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
160 It requires handling of keyboard mapping events and using the XIM | |
161 input translation extension. I will implement it as requested. | |
162 Latin-1 keyboard input works fine. | |
163 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
164 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
165 |
0 | 166 AIX: -= NOT YET SUPPORTED =- |
167 This port has only been tested with AIX 4.3.3 | |
168 | |
169 The OpenGL support doesn't work yet. | |
170 | |
171 The joystick subsystem isn't implemented yet. | |
172 | |
173 Endian detection doesn't work yet - needs a unique CPP symbol. | |
174 | |
175 Wide UNICODE character input (Kanji, etc.) is not yet supported. | |
176 It requires handling of keyboard mapping events and using the XIM | |
177 input translation extension. I will implement it as requested. | |
178 Latin-1 keyboard input works fine. | |
179 | |
27
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
180 The keyboard modifiers are not set to the correct state on startup. |
a7e598a8d8be
The keyboard modifiers are not set to the correct state on X11 startup.
Sam Lantinga <slouken@lokigames.com>
parents:
21
diff
changeset
|
181 |
0 | 182 The AIX port was done by Carsten.Griwodz@KOM.tu-darmstadt.de |
183 More information on this port is available at: | |
184 http://www.kom.e-technik.tu-darmstadt.de/~griff/SDL/ | |
185 | |
186 AmigaOS: -= NOT YET SUPPORTED =- | |
187 The OpenGL support isn't implemented yet. | |
188 | |
189 SDL_WM_GrabInput() is not implemented. | |
190 Does anyone know how to do this? SDL_WM_GrabInput() is designed | |
191 to prevent the user from switching input and mouse focus away from | |
192 the SDL application. | |
193 | |
194 Continuous relative mouse motion is not implemented. | |
195 | |
196 The AmigaOS port was done by Gabriele.Greco@galactica.it | |
250
74a8f672f2f8
Added support for building SDL for EPOC/SymbianOS 6.0 (thanks Hannu!)
Sam Lantinga <slouken@libsdl.org>
parents:
172
diff
changeset
|
197 |