: MAKEDIR :  : Convert Tandy 600 Disk Directory LISTings9 : to FILE database format.E :w : Copyright (C) 1988 by : Rick Richmond [70641,47] : : Permission is Hereby Granted to Use and1  : Duplicate this Program without Restriction.=  :H  :l  FID$() : FTYPE%()  DIRDATE%() : UPDATE%()  QUERY(d)  8J  PROG$"MAKEDIR" : VERS$"V01.00"  : PROG$,VERS$, :   :  FID$()"DISK" : FID$()"POSN" : FID$()"FILENAME" : FID$()"RHA" : FID$()"DATE" : FID$()"SIZE" : FID$()"COMMENT" : FID$()"UPDATE"e  FTYPE%() : FTYPE%() : FTYPE%() : FTYPE%() : FTYPE%() : FTYPE%() : FTYPE%() : FTYPE%()o  :  FSPEC$"DBCALLS.LIB" : FSPEC$ : PROGEND%  : FSPEC$ @ : J UPDATE$ : UPTIME$y T UPDATE%()((UPDATE$,,)) : UPDATE%()((UPDATE$,,)) : UPDATE%()((UPDATE$,,)) ^ UPDATE%()((UPTIME$,,)) : UPDATE%()((UPTIME$,,)) : UPDATE%() : UPDATE%()((UPTIME$,,))  :  : "Directory files available:" : : "*.DIR" : : FSPEC0$"" : "Filespec: ";FSPEC0$  FSPEC0$""  : FSPEC0%(FSPEC0$)C I%(FSPEC0$)   : (FSPEC0$,I%,)"." FSPEC0%I% I% : I% FSPEC0% : BYTE%((FSPEC0$,I%,)) : BYTE%` BYTE%{ (FSPEC0$,I%,)(BYTE% _)  I%^  FSPEC1$FSPEC0$".DIR" : FSPEC1$ AS 1 : FSPEC2$FSPEC0$".DAT" POSN# : FSPEC2$ : DBOPEN(FSPEC2$,,HANDLE%) : 4  : "Is ";FSPEC2$;" a NEW file (Y/N) "; : AN$ : AN$(AN$"N",) : AN$"Y" AN$"y" FSPEC$FSPEC2$ : ' : PROGEND% * AN$"Y" AN$"y" t' : DBOPEN(FSPEC2$,,HANDLE%)4 :;> #, DIR$ : ()  : POSN#POSN#H DIRSPEC$(DIR$,, ) : DIRRHA$(DIR$,,)(DIR$,,)(DIR$,,)R DIRDATE%()((DIR$,&,)) : DIRDATE%()((DIR$,#,)) : DIRDATE%()((DIR$, ,))\ DIRDATE%()((DIR$,.,)) : DIRDATE%()((DIR$,+,)) : (DIR$,1,)"P" DIRDATE%()DIRDATE%() : DIRDATE%() DIRDATE%()f DIRSIZ#((DIR$,B,))Fp QSTART(HANDLE%,QUERY()) : QFIELD(HANDLE%,QUERY(),,,,DIRSPEC$)z RFOUND% : RFIND(HANDLE%,,,QUERY(),RCD%) : RFOUND% RFOUND% ROPEN(HANDLE%,RCD%) : RCREATE(HANDLE%) FPUT(HANDLE%,,FSPEC0$) : FPUT(HANDLE%,,POSN#) : FPUT(HANDLE%,,DIRSPEC$) : FPUT(HANDLE%,,DIRRHA$) : FPUT(HANDLE%,,DIRDATE%()) : FPUT(HANDLE%,,DIRSIZ#) : FPUT(HANDLE%,,UPDATE%()) RCLOSE(HANDLE%) DIRSPEC$;$ (()) 4. :i QEND(HANDLE%,QUERY()) : RNUMF(HANDLE%,RCD%) I%RCD%   : FRGET(HANDLE%,I%,,DIRDATE%()) : OLD%? J%  : DIRDATE%(J%)UPDATE%(J%) OLD%$ J% : OLD% RDELETE(HANDLE%,I%). I%8 DBCLOSE(HANDLE%)B  : FSPEC1$ :' : : ?' : TRANSFER FILE FROM A: TO MEMORY ' : : "Put disk with ";FSPEC$;" in A: and" : "press , or press to quit: ";?$' AN$ : AN$"" $' : (AN$) PROGEND% : j'.' "A:"FSPEC$ : "A:"FSPEC$ AS 3  : FSPEC$ AS 4  : ,  AS F1$ : ,  AS F2$ 8'  : F2$F1$ :  : (()) 8'B' , j' Et' : CREATE DATABASE FILE ~' DBCREATE(FSPEC2$,HANDLE%) : DBCLOSE(HANDLE%) : DBOPEN(FSPEC2$,,HANDLE%)' I%  : FCREATE(HANDLE%,FID$(I%),FTYPE%(I%),FID%(I%)) : I%' 8J :GBJ [ DBERROR(ERCODE%)LJ 5  ' : VJ 5  FSPEC0$"" : `J   jJ   8tJ .' 'b~J  z zJ ERCODE%B z , N [ DBERROR(ERCODE%) : : "Database CALL error";ERCODE%;"at line";;"in ";PROG$ : gN : "Error";;"at line";;"in ";PROG$ : p :x