!      REPLCT.BAS      HUFFMAN LABORATORIES     5/26/87
     !                   Kevin Wills and Ed Huffman
     !                AM100L System running AMOSL 1.3B
     !
     !          Program will examine a directory file for files having
     !      identical hash values.  This is handy for avoiding wasteful
     !      replications.  The directory file REPLCT.LST must be gen-
     !      erated using DIR with the /D/H swithces in order for this
     !      program to recognize the data format.  The directory file,
     !      REPLCT.LST, is sorted by hash value into REPLCT.HSH.  The
     !      sorted file is examined for adjacent entries having identi-
     !      cal hash values.  All replicate files are placed back into
     !      REPLCT.LST for examination.
     !
     !      Example directory specification:
     !      .DIR REPLCT.LST=/D/H DSK0:[],DSK2:[]
     !

     STRSIZ 80

     START=TIME/60

     OPEN #1,"REPLCT.LST",INPUT
     OPEN #2,"REPLCT.HSH",OUTPUT
     PRINT
     PRINT "SORTING REPLCT.LST TO REPLCT.HSH"

     !      AMSORT.SYS   Should be loaded into system or user memory

     XCALL BASORT,1,2,48,3,31,0,3,35,0,3,39,0
     CLOSE #1
     CLOSE #2
     PRINT "SORTED TO REPLCT.HSH   ELAPSED TIME=";TIME/60-START;"MIN"

     OPEN #1,"REPLCT.HSH",INPUT
     OPEN #2,"REPLCT.LST",OUTPUT
     PRINT
     PRINT "CREATING REPLICATE LISTING"
     REMEMBER=0
     CURR$=""

LOOP: IF EOF(1)=1 THEN GOTO FIN
          PREV$=CURR$
          INPUT LINE #1,CURR$
          MATCH=0
          IF RIGHT$(CURR$,22)=RIGHT$(PREV$,22) THEN MATCH=1
          IF MATCH=1 THEN PRINT #2,PREV$
          IF (REMEMBER=1) AND (MATCH=0) THEN PRINT #2,PREV$
          REMEMBER=MATCH
     GOTO LOOP

FIN:  PRINT "LISTING IN REPLCT.LST  TOTAL TIME=";TIME/60-START;"MIN"

     CLOSE #1
     CLOSE #2

     END