diff --git a/src/syncterm/syncterm.c b/src/syncterm/syncterm.c
index 7ebf7042424a1473ac3794cb17a6f1f217bbbfd5..ed770a7e56d99e870971b13536adcce14c351b60 100644
--- a/src/syncterm/syncterm.c
+++ b/src/syncterm/syncterm.c
@@ -1121,7 +1121,10 @@ int main(int argc, char **argv)
 
 	load_settings(&settings);
 	ciolib_mode=settings.output_mode;
-	text_mode=_ORIGMODE;
+	if(settings.startup_mode != SCREEN_MODE_CURRENT)
+		text_mode=screen_to_ciolib(settings.startup_mode);
+	else
+		text_mode=_ORIGMODE;
 
 	for(i=1;i<argc;i++) {
         if(argv[i][0]=='-'