diff --git a/src/sbbs3/jsexec.c b/src/sbbs3/jsexec.c
index b8079d6e6c2277fba74618f4448990d050567f09..5d45249a571318d8e1f7e9b0fb7035cc01d9753a 100644
--- a/src/sbbs3/jsexec.c
+++ b/src/sbbs3/jsexec.c
@@ -202,6 +202,8 @@ raw_tty(void)
 		raw_input(&term);
 		tcsetattr(fileno(stdin), TCSANOW, &term);
 #elif defined _WIN32
+		SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), 0);
+#else
 		#warning Can't set the tty as raw on this platform
 #endif
 	}
@@ -1133,10 +1135,8 @@ int main(int argc, char **argv, char** environ)
 	if(isatty(fileno(stdin))) {
 #ifdef __unix__
 		tcgetattr(fileno(stdin), &orig_term);
-		raw_tty();
-#else
-		SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), 0);
 #endif
+		raw_tty();
 		statfp=stderr;
 	}
 	else	/* if redirected, don't send status messages to stderr */