- setupterm((char *) 0, STDOUT_FILENO, (int *) 0);
- if (clear_screen == (char *) 0)
- return EXIT_FAILURE;
- tputs(clear_screen, lines > 0 ? lines : 1, putch);
- return EXIT_SUCCESS;
+ TTY tty_settings;
+ int fd;
+
+ _nc_progname = _nc_rootname(argv[0]);
+
+ fd = save_tty_settings(&tty_settings);
+
+ setupterm((char *) 0, fd, (int *) 0);
+
+ ExitProgram((clear_cmd() == ERR)
+ ? EXIT_FAILURE
+ : EXIT_SUCCESS);