diff --git a/1990/tbr/Makefile b/1990/tbr/Makefile index ed855ad53..7454381f8 100644 --- a/1990/tbr/Makefile +++ b/1990/tbr/Makefile @@ -113,8 +113,8 @@ OBJ= ${PROG}.o DATA= TARGET= ${PROG} # -ALT_OBJ= ${PROG}.alt.o -ALT_TARGET= ${PROG}.alt +ALT_OBJ= +ALT_TARGET= ################# diff --git a/1990/tbr/README.md b/1990/tbr/README.md index 9224eb261..0e651b082 100644 --- a/1990/tbr/README.md +++ b/1990/tbr/README.md @@ -1,16 +1,16 @@ # Best Utility - Byron Rakitzis - Princeton University - 5707 Old Lodge Dr. - Houston, TX 77066 - USA +Byron Rakitzis +Princeton University +5707 Old Lodge Dr. +Houston, TX 77066 +USA - Sean Dorward - Princeton University - 10274 Burleigh Cottage Lane - Ellicott City, MD 21043 - USA +Sean Dorward +Princeton University +10274 Burleigh Cottage Lane +Ellicott City, MD 21043 +USA ## To build: @@ -27,7 +27,8 @@ expression so this wouldn't even compile. Cody also changed the code to use due to the warning being interspersed with the program's output. Thank you Cody for your assistance! -For the original version with `gets()` see the alternate code section below. +For the original version with `gets()` see the [archive +tarball](/archive-1990.tar.bz2). ## To run: @@ -54,19 +55,6 @@ or ctrl-c (or kill it from another terminal :-) ). What happens if you try using `cd -` to return to previous directory? What about `cd` with no args? -## Alternate code: - -If you wish to see the original source (fixed so it can compile) that uses -`gets()` instead of `fgets()` you can look at [tbr.alt.c](tbr.alt.c). To compile -it: - -```sh -make alt -``` - -Use `tbr.alt` as you would `tbr`. You'll likely get a warning about the usage of -`gets()` and with macOS it will mess up output of the first line. - ## Judges' comments: diff --git a/1990/tbr/tbr.alt.c b/1990/tbr/tbr.alt.c deleted file mode 100644 index 70c39ee19..000000000 --- a/1990/tbr/tbr.alt.c +++ /dev/null @@ -1,23 +0,0 @@ - -#define D ,close( - -char *c,q [512 ],m[ 256 -],*v[ 99], **u, *i[3];int f[2],p;main (){for - (m[m [60]= m[62 ]=32 ]=m[* m=124 [m]= 9]=6; - e(-8) ,gets (1+( c=q) )|| (exit (0),0); r(0,0) - )for( ;*++ c;); }r(t, o){ *i=i [2]= 0;for - (u=v +98 ;m[*--c] ^9;m [*c] &32 ?i[*c - &2]= *u,u- v^98 &&++u: - - 3 )if(!m[*c]){for(*++c=0;!m[*--c];); - * --u= ++c;}u-v^98?strcmp(*u,"cd")?*c?pipe(f),o=f[ - 1 ]: - 4 ,(p=fork())?e(p),o?r(o,0)D o)D*f): - 1 ,wait(0):(o?dup2(*f,0)D*f)D o):*i? - 5 D 0),e(open(*i,0)): - 9 ,t?dup2(t,1)D t):i[ - 2 ]? - 6 D 1),e(creat(i[2],438)): - 5 ,e(execvp(*u,u))):e(chdir(u[1])*2): - 3 ;}e(x){x<0?write(2,"?\n$ "-x/4,2),x+1||(exit(1),0): - 5 ;}