-
-#include <termio.h>
-
-FILE *cin;
-/* sparc and other have broken termios support: use old termio handling. */
-struct termio initial_settings, new_settings;
-
-void gotsig(int sig)
+# if #cpu(sparc)
+# include <termio.h>
+# define termios termio
+# define setTermSettings(fd,argp) ioctl(fd,TCSETAF,argp)
+# define getTermSettings(fd,argp) ioctl(fd,TCGETA,argp)
+# else
+# include <termios.h>
+# define setTermSettings(fd,argp) tcsetattr(fd,TCSANOW,argp)
+# define getTermSettings(fd,argp) tcgetattr(fd, argp);
+# endif
+
+static FILE *cin;
+
+static struct termios initial_settings, new_settings;
+
+static void gotsig(int sig)