|
|
researchv10 Norman
#include <stdio.h>
int dbg;
int jpflag;
char foo;
main(argc, argv)
char *argv[];
{
FILE *f, *popen();
FILE *tojerq, *fromjerq;
int c;
char buf[100], fname[100];
while (argc > 1 && argv[1][0] == '-') {
switch (argv[1][1]) {
case 'd':
dbg = 1;
break;
case 'j':
jpflag = 1;
break;
}
argc--;
argv++;
}
if (argc > 1)
strcpy(fname, argv[1]);
if (jpflag == 0)
system("run /usr/cvw/ideal/idfilt/iderq");
/*
if ((pfp = popen("/usr/cvw/ideal/ideal -n >/dev/tty5", "w")) == NULL) {
fprintf(stderr, "jdeal: can't open ideal\n");
exit(2);
}
*/
if ((tojerq = fopen ("/dev/tty5", "w")) == NULL) {
fprintf (stderr, "jdeal: can't talk to jerq\n");
exit(2);
}
if ((fromjerq = fopen ("/dev/tty5", "r")) == NULL) {
fprintf (stderr, "jdeal: can't hear jerq\n");
exit (3);
}
while (fgets(buf, sizeof buf, stdin) != NULL) {
switch (buf[0]) {
case 'q':
exit(0);
break;
case '\n':
case 'p':
f = fopen(fname, "r");
fprintf (stderr, "got here\n");
while (((foo = getc(fromjerq)) != EOF) && ((c = getc(f)) != EOF)) {
fprintf (stderr, "%c", c);
putc(c, tojerq);
}
fflush(tojerq);
fclose(f);
break;
case 'e':
if (sscanf(buf, "%*s %s", fname) > 0)
printf("editing file %s\n", fname);
else
sprintf(buf, "e %s", fname);
system(buf);
break;
case 'f':
sscanf(buf, "%*s %s", fname);
printf("%s\n", fname);
break;
case '!':
system(buf+1);
printf("!\n");
break;
default:
printf("eh?\n");
break;
}
}
}
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.