+int parse_args(int argc, char **argv)
+{
+ int i;
+
+ for(i=1; i<argc; i++) {
+ if(argv[i][0] == '-') {
+ if(argv[i][2] == 0) {
+ switch(argv[i][1]) {
+ case 't':
+ termfile = argv[++i];
+ break;
+
+ case 'b':
+ use_bell = 1;
+ break;
+
+ case 'h':
+ print_usage(argv[0]);
+ exit(0);
+
+ default:
+ fprintf(stderr, "invalid option: %s\n", argv[i]);
+ print_usage(argv[0]);
+ return -1;
+ }
+ } else {
+ fprintf(stderr, "invalid option: %s\n", argv[i]);
+ print_usage(argv[0]);
+ return -1;
+ }
+ } else {
+ fprintf(stderr, "unexpected argument: %s\n", argv[i]);
+ print_usage(argv[0]);
+ return -1;
+ }
+ }
+ return 0;
+}
+
+void print_usage(const char *argv0)
+{
+ printf("Usage: %s [options]\n", argv0);
+ printf("Options:\n");
+ printf(" -t <dev>: terminal device (default: /dev/tty)\n");
+ printf(" -b: use bell for sound ques (default: off)\n");
+ printf(" -h: print usage information and exit\n");
+}
+