100 INPUT "FILE TO BE SORTED";F$ :L%=512% :F%=1% 110 OPEN F$ FOR INPUT AS FILE 1% 120 INPUT "ASCENDING OR DESCENDING ORDER";C$ 130 IF LEFT(C$,1%)="A" THEN A%=0% ELSE IF LEFT(C$,1%)="D" THEN A%=-1% ELSE 120 140 INPUT "BY SUBFIELD";C$ 150 IF LEFT(C$,1%)="N" THEN 180 ELSE IF LEFT(C$,1%)<>"Y" THEN 140 160 INPUT "FIRST,LAST";F%,L% 170 IF F%<1% OR L%512% THEN 160 180 OPEN "SORT.TMP" FOR OUTPUT AS FILE 2% 190 ON ERROR GOTO 300 200 REM BEGIN SORTING 210 INPUT LINE #1%,L$ 212 C%=C%+1% 215 L$=LEFT(L$,LEN(L$)-2%) 217 T%=1% 220 INPUT LINE #1%,L1$ :P%=0% :T%=T%+1% 221 L1$=LEFT(L1$,LEN(L1$)-2%) 230 IF A% THEN 250 240 IF MID(L1$,F%,L%-F%+1%)>MID(L$,F%,L%-F%+1%) THEN 260 ELSE GOSUB 295 : GOTO 260 250 IF MID(L1$,F%,L%-F%+1%)