Hi,
SDL is great. However, in some ways SDL is not as flexible as it could
be, some of my concept suggestions could solve some of these issues:
I would like to see SDL more modular, currently SDL_INIT_VIDEO starts
the keyboard code. This makes it difficult to debug remotely and to
debug non-video SDL code. Without passing it with a working display but
not initalising a surface.
Removing the constraint of SDL_INIT_VIDEO being required for events?
Perhaps this could be abstracted from SDL? Something like
SDL_Init(SDL_INIT); could initalise only the event
system and no specific SDL modules.
I would like to SDL supporting more video game consoles, with their
specific features, e.g. Video flags (PAL & NTSC) etc could be added etc.
How to get host info when SDL is running? such as the
mipsel-unknown-linux-gnu style output from ./config.guess? Is this
stored somewhere when SDL is compiled? ARCH is set in makefiles.
Regarding joysticks/joypads:
Something that I think would be a good addition is a way to send two
axes in one event, this has been reasonably common in my previous video
game console work and I think the current position of sending the axis
separately might be an issue at some point. All four axes on the PS2
Controller are available, however I believe only one SDL_JOYAXISMOTION
event can be read per SDL_PollEvent(&event). (Hat events are already
combined)
Also I would be interested to know why hats do not support
RELEASED/PRESSED? (as the other digital buttons do)
The force feedback API, I will write another email about this when my
concept ideas are typed up.
A way to find out what joystick module is currently in use.
What do you all think? I know everyone has their own favorite concepts
they would like SDL to feature. If we can work out the best way to
convert concepts to cross platform abstractions these should all be
possible.
Cheers
JG