44 44 III 44 DDDDDDD ZZZZZZZZZZZZZ 44 DDDDDDDD III ZZZZZZZZZZZZZZ 44 44 DD DD III ZZZ 44 44 DD DD III ZZZ 44 44 DD DD III ZZZ 444444444 DD DD III ZZZ 44444444 DD DD III ZZZ 44 DD DD III ZZZ 44 DDDDDDDD III ZZZZZZZZZZZZZ 44 DDDDDDD III ZZZZZZZZZZZZZ Version 1.5 4DIZcribe for 4DOS Documentation Developed By Mathijs de Weerdt Documentation By Mathijs de Weerdt Published By Mathijs de Weerdt e-mail: mmweerdt@cs.ruu.nl Holland CONTENTS ------------------------------------------------------------------- CONTENTS Introduction...............................................1 Chapter 1 / Installation...................................2 Chapter 2 / Configuration..................................3 Chapter 3 / Changes since last version.....................4 Chapter 4 / The author.....................................5 Chapter 5 / Copyrights.....................................6 Chapter 6 / Where to get new versions......................7 ------------------------------------------------------------------- 1 INTRODUCTION Since a few years I've been using, testing and (re)viewing archive files. As you all probably know, 4DOS gives us a lot of easy and fast extensions to the standard COMMAND.COM (read MS-DOS) features (i.e. descriptions which are shown with the DIR commando). So when I first saw 4DOS, I got addicted at once. In the archives (mostly .ZIP and some .ARJ) used to be a short description of the stored files, FILE_ID.DIZ. Then I ran into a short batch file from Donald Clancy (and I've seen many variants after that one). This .BTM-file extracted the FILE_ID.DIZ and pushed it into the 4DOS's DESCRIPT.ION file. So when executing the DIR command this short description was shown. There was only one real problem: the thing was quite slow. To be short, after some experimenting I decided to write such a program (in C). And here it is: * FILE_ID.DIZ's of every length can be imported * DESC.SDI's used when FILE_ID.DIZ's not found * up to 3000 file-descriptions supported in one dir * descriptions up to 12 lines (=12*40=480 chars) (limited by 4DOS) * FILE_ID.DIZ's/DESC.SDI's can be converted: v truncating lines (take only the first 40 characters of every line) v excluding lines with less than /c alphanumericals v excluding @X?? codes (used by PCB or so) v describing sets of archives (FILE_ID.DIZ is distributed over all files or only the first one is described) v maximum lines per file support v recurse into subdirectory's * new option: only files without a description will be converted * quiet option: less output (to screen) * different extractor names supported (ARJ.exe and PKUNZIP.exe by default) * very colorfull output screen: with (nearly) all the information you want (option /d) ------------------------------------------------------------------- 2 INSTALLATION FAST installation: (assuming 4DOS is installed ) 1) put 4DIZ.EXE, PKUNZIP.EXE and ARJ.EXE in a directory 2) add this directory to the PATH environment variable (in AUTOEXEC.BAT) 3) add "4D = 4DIZ /T /V /M4 /D *.*" to your alias.lst or add "ALIAS 4D = 4DIZ /T /V /M4 /D *.*" to your AUTOEXEC.BAT 4) reboot Now you've only to type 4D to describe all ARJ and ZIP archives in the current directory. If you like this util, you could use your whole holiday to add DESCRIPTIONMAX=480 to your 4DOS.INI. ------------------------------------------------------------------- 3 CONFIGURATION To be short: try all options, see what they do and put the ones you like in your ALIAS. Usage: 4DIZ [options] filename ... where options is a combination of: /q quiet mode (absolutely no text display) /t truncate lines /f fill in short lines with blanks /s smart describing: only the first one from a serie /v very smart describing: the first description is divided over the whole family /n just describe the files without any description /e exclude lines with less than /c alphanumerical characters (def. 4) and exclude the "@X**"-codes /c followed by the minimum amount of alphanumerical characters in a line /m followed by the maximum amount of lines of description per file /r recurse into subdirectory's /b (blanks) disable space convert to 255 (space is converted to ascii 255 because 4dos otherwise wraps the lines at the last space character and not at the 40th character) /d colorfull display with lots of useless/usefull information /p pause just before returning to DOS with the /d isplay option /h or /? this screen and filename ... is a list of filenames or wildcards (or both). It's possible to use other than the default extraction programs. (PKUNZIP -- -+ -) -o for .ZIP files and ARJ x -y for .ARJ files.) Set the following environment variables: 4DIZ_UNZIP for unzipping program 4DIZ_UNZIP_OPT for unzipping program options 4DIZ_ARJ for arj extracting program 4DIZ_ARJ_OPT for arj extracting program options (i.e. for infozip's zip: SET 4DIZ_UNZIP_OPT=-q -C -o and SET 4DIZ_UNZIP=c:\pak\infozip\unzip\unzip386 ) There is a limit to the amount of parameters: this program checks only the first 127 characters or so. (that's because of this *&#%^$! compiler) And there's also a limit to the amount of files to describe. When you are describing more than 3000 files an (m)allocation error will occur. My favourite command-line is: 4diz /t /v /m4 /c5 /d *.* of course this is an alias: alias 4d = 4diz /t /v /m4 /c5 /d *.* Another nice try is: 4diz /b /e *.*. And my favourite environment variables are: (for infozip's zip): SET 4DIZ_UNZIP_OPT=-q -C -o and SET 4DIZ_UNZIP=c:\pak\infozip\unzip\unzip386 Now I only have to type 4d.....and all the files in my directory are described !!! ------------------------------------------------------------------- 4 CHANGES Changes since last distributed version (v1.4): 1) added /b : disable "space to ascii 255 convert" (per request) 2) added /d : nice colorfull output screen 3) added /p : pause before leaving display screen 4) added DESC.SDI support ( when FILE_ID.DIZ can't be found ) 5) improved "same family" recoginizing with /v and /s 6) breaking the 100 files barrier ! It's now possible to describe directory's with about 3000 files ! 7) improved truncating options: try /t and /f (and /b) /w option removed Changes since v1.2: 1) finally got .arj multi-volume support right 2) added environment-variable usage: 4DIZ_UNZIP for unzipping program 4DIZ_UNZIP_OPT for unzipping program options 4DIZ_ARJ for arj extracting program 4DIZ_ARJ_OPT for arj extracting program options "old" options /z and /a will be removed in the near future this fixes the following "bug": a) lower case file_id.diz not found (just upper case) when using case-sensitive archives 3) added "recurse into subdirectory" option (/r) Changes since v1.0: 1) better error report 2) debug mode removed -> less code 3) bugs fixed: a) with long FILE_ID.DIZ's (near 8K) b) sort function didn't work (for multiple volume) c) /a and /z options didn't work as they should 4) added /c : minimum amount of characters per line (now default 4) 5) added /m : maximum amount of lines per file 6) added /n : only new files Things to do: 1) /l : remove lines with words out of list-file 2) /c : edit every descript.ion 3) define exit-codes ------------------------------------------------------------------- 5 THE AUTHOR Author: This util is made by Mathijs de Weerdt. (Yeah, that's me !) I'm born in Holland in 1976. And now I'm studying in Utrecht. (That's also in the Netherlands.) I'd like to hear what you think of my program. I'll fix all bugs (when reported) as soon as possible. Please mail me your suggestions etc. I'll be happy to code them and send you the new version..... My adres (e-mail): mmweerdt@cs.ruu.nl MAIL ME ! Happy dizcribing ! ------------------------------------------------------------------- 6 COPYRIGHTS oh .... btw this util is FREEWARE.....so copy it to all your (girl)friends ------------------------------------------------------------------- 7 WHERE You can get the newest version from the following URL (this can be accessed by almost every WWW-client) (preferrably using Netscape): http://huizen.dds.nl/~mmweerdt Every half version (1.0, 1.5, 2.0, etc.) will be uploaded to SimTel. So 4DIZ can be ftp'ed at every SimTel mirror. Ask a cyberpunk for your nearest SimTel mirror.