diff --git a/src/sdl/i_system.c b/src/sdl/i_system.c
index f8517618323186349aec82e39b2b101f82198be1..2154a070b9b9e337578491b5bf7e22b1080417ab 100644
--- a/src/sdl/i_system.c
+++ b/src/sdl/i_system.c
@@ -2166,6 +2166,12 @@ void I_InitJoystick(void)
 	if (M_CheckParm("-nojoy"))
 		return;
 
+	if (M_CheckParm("-noxinput"))
+		SDL_SetHintWithPriority("SDL_XINPUT_ENABLED", "0", SDL_HINT_OVERRIDE);
+
+	if (M_CheckParm("-nohidapi"))
+		SDL_SetHintWithPriority("SDL_JOYSTICK_HIDAPI", "0", SDL_HINT_OVERRIDE);
+
 	if (SDL_WasInit(SDL_INIT_JOYSTICK) == 0)
 	{
 		CONS_Printf("I_InitJoystick()...\n");