VIDEO: SDL init/quit gamecontroller subsystem implies joystick.
This commit is contained in:
parent
f5a9bed34c
commit
8b64e5df1a
1 changed files with 14 additions and 7 deletions
15
sim_video.c
15
sim_video.c
|
@ -564,19 +564,24 @@ static t_stat vid_init_controllers (void)
|
||||||
vid_gamepad_ok = (ver.major > 2 ||
|
vid_gamepad_ok = (ver.major > 2 ||
|
||||||
(ver.major == 2 && (ver.minor > 0 || ver.patch >= 4)));
|
(ver.major == 2 && (ver.minor > 0 || ver.patch >= 4)));
|
||||||
|
|
||||||
SDL_InitSubSystem(SDL_INIT_JOYSTICK);
|
|
||||||
if (vid_gamepad_ok)
|
if (vid_gamepad_ok)
|
||||||
SDL_InitSubSystem(SDL_INIT_GAMECONTROLLER);
|
SDL_InitSubSystem(SDL_INIT_GAMECONTROLLER);
|
||||||
|
else
|
||||||
|
SDL_InitSubSystem(SDL_INIT_JOYSTICK);
|
||||||
|
|
||||||
if (SDL_JoystickEventState (SDL_ENABLE) < 0) {
|
if (SDL_JoystickEventState (SDL_ENABLE) < 0) {
|
||||||
SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
|
if (vid_gamepad_ok)
|
||||||
SDL_QuitSubSystem(SDL_INIT_GAMECONTROLLER);
|
SDL_QuitSubSystem(SDL_INIT_GAMECONTROLLER);
|
||||||
|
else
|
||||||
|
SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
|
||||||
return SCPE_IOERR;
|
return SCPE_IOERR;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vid_gamepad_ok && SDL_GameControllerEventState (SDL_ENABLE) < 0) {
|
if (vid_gamepad_ok && SDL_GameControllerEventState (SDL_ENABLE) < 0) {
|
||||||
SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
|
if (vid_gamepad_ok)
|
||||||
SDL_QuitSubSystem(SDL_INIT_GAMECONTROLLER);
|
SDL_QuitSubSystem(SDL_INIT_GAMECONTROLLER);
|
||||||
|
else
|
||||||
|
SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
|
||||||
return SCPE_IOERR;
|
return SCPE_IOERR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -661,8 +666,10 @@ if (vid_active) {
|
||||||
vid_gamepad_inited = 0;
|
vid_gamepad_inited = 0;
|
||||||
memset (motion_callback, 0, sizeof motion_callback);
|
memset (motion_callback, 0, sizeof motion_callback);
|
||||||
memset (button_callback, 0, sizeof button_callback);
|
memset (button_callback, 0, sizeof button_callback);
|
||||||
SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
|
if (vid_gamepad_ok)
|
||||||
SDL_QuitSubSystem(SDL_INIT_GAMECONTROLLER);
|
SDL_QuitSubSystem(SDL_INIT_GAMECONTROLLER);
|
||||||
|
else
|
||||||
|
SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
|
||||||
|
|
||||||
vid_active = FALSE;
|
vid_active = FALSE;
|
||||||
if (vid_ready) {
|
if (vid_ready) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue