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.8 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 / Example .INI file..............................4 Chapter 4 / Changes since last version.....................5 Chapter 5 / The author.....................................6 Chapter 6 / Where to get new versions......................8 Chapter 7 / Copyrights and disclaimer......................9 ------------------------------------------------------------------- 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) * handy 4DIZ.INI file * nice helpscreen ------------------------------------------------------------------- 2 INSTALLATION FAST installation: (assuming 4DOS is installed ) 1) Put 4DIZ.EXE, 4DHELP.TXT and 4DIZ.INI in a directory. I'll assume here you call it C:\4DIZ\, but you may substitute this by any directory you'd like. 2) Add SET 4DIZ_PATH=C:\4DIZ to your AUTOEXEC.BAT. 3) Do one of the following: 1) make an alias 4DIZ=C:\4DIZ\4DIZ a) by adding "4DIZ C:\4DIZ\4DIZ" to your ALIAS.LST b) by adding "ALIAS 4DIZ=C:\4DIZ\4DIZ" to your AUTOEXEC.BAT 2) add C:\4DIZ to your PATH statement in AUTOEXEC.BAT 4) Edit 4DIZ.INI and change the options to your needs. You should at least change the "prog" settings. (The paths of these archivers probably aren't correct.) 5) Reboot. Now you've only to type 4DIZ *.* to describe all the files in the current directory. If you like this util, you could use your whole holiday to add DESCRIPTIONMAX=480 to your 4DOS.INI and to change the 4DIZ.INI file to your likings. ------------------------------------------------------------------- 3 CONFIGURATION To be short: try all options, see what they do and put the ones you like in your ALIAS. Remember: Using the 4DIZ.INI file is much more easier. These options override the options in the 4DIZ.INI file. Usage: 4DIZ [options] filename ... where options is a combination of: /q quiet mode (absolutely no text display) gives in combination with /d: no archive info /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 describe ALL files (not just those 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 program. (PKUNZIP -- -+ -) -o for .ZIP files) Therefore you MUST change the .INI file options starting with "ext", "prog" and "opt". 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 2000 files an (m)allocation error will occur. It's possible to use a 4DIZ.INI file. If the file isn't in the current path, the environment variable 4DIZ_INI will be used to find it. (i.e. SET 4DIZ_PATH=c:\4diz\). 4DIZ.INI can be used in addition to the command line options. Command-line options will overwrite the options from the INI-file. An example 4DIZ.INI is included in this package. See also the next chapter. My favourite command-line is: 4diz /t /v /m4 /c5 /d /q *.* this could be an alias: alias 4d = 4diz /t /v /m4 /c5 /d /q *.* But it can also be edited in an INI-file. Another nice try is: 4diz /b /e *.*. Now I only have to type 4d.....and all the files in my directory are described !!! ------------------------------------------------------------------- 4 EXAMPLE 4DIZ.INI ;4DIZ.INI ; ;Empty lines, lines starting with a ; and lines without a = are ignored. ;Please don't use spaces in the option-lines. ;No,nO,NO,Yes,yEs,yeS,YEs,YeS,yES and YES are not recognized: ;Please use only yes and no (lower-case) ;Archivers: ;ext1,ext2,...,ext9: ; extentions for the archives (to detect what program to use) ; without points, a digit indicates any digit ;prog1,prog2,...,prog9: ; path and program names ;opt1,opt2,...,opt9: ; options to use ext1=ARJ,A00,000 ext2=ZIP ext3=UC2 ext4=RAR ext5=CRU ext6=DWC ext7=LZH ext8=ARC prog1=f:\program\pak\arj\arj.exe prog2=f:\program\pak\infozip\unzip\unzip386.exe prog3=f:\program\pak\uc2\uuc.exe ;remember to start 4diz with "US 4DIZ [options] filename" prog4=f:\program\pak\rar\rar.exe prog5=f:\program\pak\crush\uncrush.exe prog6=f:\program\pak\dwc\dwc.exe prog7=f:\program\pak\lha\lha.exe prog8=f:\program\pak\arc\arc.exe opt1=x -y -v -ja1 opt2=-C -o opt3=e opt4=e -y -c- opt5=-q -e opt6=e! opt7=e opt8=e DestinationFile=DESCRIPT.ION ;Destination for descriptions. Default=DESCRIPT.ION. ;This file is hidden by default. DescriptionFiles=FILE_ID.DIZ,DESC.SDI ;Files to extract from the archives and to use to make the descript.ion. ;Default=FILE_ID.DIZ,DESC.SDI NoDesText=ÿ ;Text to use when no description is found. Default=ÿ. Quiet=no ;Very little text-display. Default is no. Display=yes ;Colorfull output-screen. Default is no. Truncate=yes ;Truncate lines that are too long too fit on the screen. Default is no. FillLines=yes ;Fill half empty lines up to the end with blanks Blanks=no ;If yes, blanks are 'normal' space-characters (#20). If no, ;Ascii 255 is used. Default is no. Mode=VerySmart ;Archive-family mode: Stupid( = default), Smart or VerySmart OnlyNewFiles=yes ;Describe only the undescribed files in the directory. Default is yes. ExcludeNonInfo=yes ;Exclude the lines with too little information. Default is no. CharactersNeeded=5 ;At least so many characters are needed to let a line be info. Default is 4. MaximumLines=4 ;The maximum amount of lines per file-description. Default is 12. ;Maximum is 100. RecurseSubdirs=no ;Recurse into subdirectory's. Default is no. Pause=no ;Pause after display mode. Default is no. ------------------------------------------------------------------- 5 CHANGES Changes since last distributed version (v1.7): 1) extended maximumlines from 12 to 100 (by user request) 2) bug fixed: extensions with a number other than zero weren't detected (i.e. UC2) v1.6 was not distributed Changes v1.5: 1) added "Max Line": a brown line which indicates where the description is truncated; no line is displayed when the description is shorter than maxlines lines and when maxlines >= 12 2) /q /d combination gives now "no archive info" 3) display bug fixed: after trying to describe a non-archive file some text was displayed on the lower half of the screen in stead of the upper half 4) added 4DIZ.INI file support with much extra options: * destination file can be chosen (in stead of descript.ion) * description files can be chosen (in stead of or in addition to FILE_ID.DIZ and DESC.SDI) * nodescription option: chose the description to add when the program can't find any description * added self-define archives: up to 9 archivers support 5) reversed working of /n option: if /n is used, all files will be described and if /n is omitted only files without a description will be described I did this because one user forgot to use /n and lost 20 descriptions. 6) improved /? /d combination (better help) 7) removed memory allocation bug 8) changed quiet option: this is really quiet now, but two times slower Changes since 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 v1.3 was not distributed 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) v1.1 was not distributed 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, but which probably will never be implemented: 1) /l : remove lines with words out of list-file 2) /c : edit every description 3) define exit-codes Known bugs (I'll try to fix them as soon as possible, please mail me to report these or other bugs) : 1) sometimes the error: "Null pointer assignment" is displayed along with some junk, maybe only when trying to describe all files, but only one file doesn't have a description ------------------------------------------------------------------- 6 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 adress (e-mail): mmweerdt@cs.ruu.nl MAIL ME ! Happy dizcribing ! ------------------------------------------------------------------- 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 It can also be found at Cyber City BBS (see below for more info). At least 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. I'll put it online as "4diz??.zip" with ??=versionnumber (i.e. 17 for v1.7). So this version can be found under "4diz17.zip". ------------------------------------------------------------------- 8 COPYRIGHTS AND DISCLAIMER Copyrights * This program is not in the public domain. You are hereby granted a limited right to copy the program and pass it on to friends and upload it to any bulletin board system, provided no fee is charged other than a nominal disk fee. You may use the program for up to YOUR WHOLE LIVE without registering it. If you use it for more than this, please register. Site licenses are available for corporate use. Contact the author for more information. Disclaimer * 4DIZ is distributed without warranty, expressed or implied, including without limitation the warranties of merchanta- bility and of fitness for a particular purpose. You, the user, assume full responsibility for the selection and use of 4DIZ to achieve your desired results. Another Introduction * 4DOS, the outstanding COMMAND.COM replacement created by J.P. Software, allows a file description of up to 512 characters to be created. The 4DOS file commands such as copy, move and delete cause the description to follow the file. In other words, if you copy a file with a description from the c: drive to the a: drive, the description will be added to the a: drive file automatically. The DIR command then displays the descriptions next to the files similar to the file lists on many BBS's. 4DOS provides a simple, command line editor for the descriptions. 4DIZ does not, however, require 4DOS. You may use it with or without 4DOS to create descriptions for disk catalog programs that support 4DOS style descriptions, such as 4Cat v. 1.40. * 4DOS is a trademark of J. P. Software * This last Chapter was copied from the documentation of FDE, an editor for 4DOS-descriptions, thanks Earl R. Davidson ! * Cyber City BBS is Located in Malaysia: ----------------------------------------------------------------------------- +60-3-758-7400 (8 lines) 24 hrs * PCBoard 15.22M/100 * 2400-28.8k (V34/VFC) Dist. Site for Morgul Player * Inertia Player * Terminate * GameBase Software Creations BBS #1810 * Critical Apps. Dist. List (CWSApps) M'sian BBSes List (MBBS) * Jojo's Top 100 Games Chart * Electric Storm Soft. TBH-Softworx * Ashrella/TXDS Doors * CommNet/Win/Win95 ========== Sales site for modems/peripherals, PCBoard BBS software ========= Email SysOp@cyberhq.po.my john-lim@cyberhq.po.my (CoSys) * FidoNet 6:609/73 -----------------------------------------------------------------------------