List of utilities for support of BASIC / Visual BASIC projects.
by Dale Thorn -- Revised 04.10.2002


PRIMARY UTILITIES
-------------------------------------------------------------------------------

Part 1 - Utilities for VB projects.
-------------------------------------------------------------------------------
Callist1.bas  Create procedures list from VB projects.
              Procedures list is used by Callist2.bas.
Callist2.bas  Generate call tree for all procedures called by a
              VB module, recursively, to the lowest call level.
Indent.bas    Auto-indent Visual BASIC/DOS BASIC code.
Rcmt.bas      Remove comments from BASIC modules.
Xcmt.bas      Extract comments from BASIC modules.


Part 2 - Utilities for searching/replacing text and binary data.
-------------------------------------------------------------------------------
Tfnd.bas      Multi-file text search utility.  Has options to
              show result line numbers and byte offsets, and to
              exclude intervening characters (text-wrap effect).
              Report results are column-aligned for easy sorting.
Tfno.bas      Same as Tfnd.bas but uses NOT instead of AND logic.
Tfor.bas      Same as Tfnd.bas but uses OR instead of AND logic.
Findall.bas   Multi-directory text search utility.  Uses Tfnd.bas
              code in multi-directory search; report-style output.
Tfndall.bas   Same as Tfnd.bas w/o prompts; called by Findall.bas.
Replb.bas     Search and replace text in binary files.
Replt.bas     Search and replace text in text files.


Part 3 - Utilities for manipulating text.
-------------------------------------------------------------------------------
Icol.bas      Insert text column into text file.
Mcol.bas      Move text column within text file.
Rcol.bas      Remove text column from text file.
Xcol.bas      Extract text column from text file.
Xcolb.bas     Extract text column from binary file.
Rdup.bas      Remove duplicate lines from text list.
Xdup.bas      Extract duplicate lines from text list.
Xdupn.bas     Extract duplicates and show # occurrences.
Splf.bas      Split a file into specified segment sizes.
Xseg.bas      Extract a segment from a binary/text file.
Srtf.bas      Multi-column binary/text file sorting. Option to
              exclude intervening bytes as in Tfnd.bas utility.
Case.bas      Upper/lowercase all A-Z characters in a text file.
Pnam.bas      Uppercase first character in a given substring
              within a text line, and lowercase all others.
Leftjust.bas  Left justify all text lines in a text file.
Ritejust.bas  Right justify all text lines in a text file.
Masc.bas      Extract readable text from any binary-type file.
Wrap.bas      Word-wrap a text file at a specified no. of columns.
Wcnt.bas      Display total occurrences of a text string (substring)
              in a text file, and how many of those are "whole" words.
Wtot.bas      Display the total number of "words" in a text file.


Part 4 - Utilities for bit-level processing.
-------------------------------------------------------------------------------
Bcrp.bas      BASIC language encryption program.  Virtually identical to
              'Ccrp.c' "C" language program; latest version is resistant
              to plaintext attacks.
Bitdump.bas   Dump bit values "1" & "0" to a viewable text file.
Bpad.bas      Bit-"pad" 7-bit text files to equalize the number of
              zero and one bits in a file. Formerly part of Bcrp.bas.
Fxor.bas      XOR (mask) a file using a pseudorandom bitstream extracted
              from the pseudorandom number generator used by Bcrp.bas.


Part 5 - Miscellaneous utilities.
-------------------------------------------------------------------------------

(a) Performance testing
---------------------------------
Disktest.bas  Test random-access seek time for large datasets. Shows
              the net effect of drive cacheing when accessing files
              much larger than RAM size (large databases, etc.).
Numtest.bas   Test numeric processing performance relative to base
              test standard (80286, 8 mhz, no numeric coprocessor).
Strtest.bas   Test text processing performance relative to base
              test standard (80286, 8 mhz).
Shel.bas      Call DOS process in a SHELL, and display elapsed time.

(b) File validation
---------------------------------
Ccnt.bas      Display total occurrences of each ASCII byte in any file.
Ctst.bas      Display sum of all ASCII byte values in any file (this
              is the simplest form of "checksum" for file validation).
Diff.bas      Compare two different files, or multiple files in two
              directories.  Similar to COMP utility in DOS systems.
Schr.bas      Display all 256 ASCII characters on 50-line DOS screen.
Schr1.bas     Display ASCII characters 0-127 on 25-line DOS screen.
Schr2.bas     Display ASCII characters 128-255 on 25-line DOS screen.
View.bas      Browse any file with a binary (literal) byte view. Each
              byte in the file is one text cell on the DOS screen
              (25x80 = 2000 bytes). Wrap display at various widths.

(c) Directory and file processing
---------------------------------
Dir2name.bas  Build formatted directory and file listing where all
              columns (path, filename, date, etc.) can be sorted.
Dir2nm5x.bas  Same as Dir2name but used with DOS 8+3 filenames only.
Dirm9x.bas    Match two directories, with options to copy, delete,
              move, compare, and view (text, binary, picture) files.
              Use on Win9x and WinME systems only.
Dirm5x.bas    Same as Dirm9x except does not use quoted filespecs.
              Use on non-Win9x systems only. Note that this utility
              works on WinNT/2k/XP systems for DOS 8+3 filenames,
              but for long filename support use 'Dmnt.exe'.
Dmnt.bas      Similar to Dirm9x but for WinNT/2k/XP systems only.
Ngen.bas      Generate list of filenames with embedded sequential
              numbers. Useful for mass-renaming of archived files.
Sdir.bas      1. Display filesize statistics with cluster sizes and
                 actual sizes for a given set of files or directory.
              2. Display the sum of a column of numbers in a text file.

(d) Formatting and printing
---------------------------------
Ltot.bas      Preview pagesize, fontsize, and total pages for auto-
              matic formatting and printing by PSET utility.  Note
              that the settings can be overridden before printing.
Prnt.c        Send text to laser printer without controls.  Error
              processing enables waiting for off-line conditions.
Pset.bas      Optimize text output to laser printers.  Automatic
              best-fit page formatting, or use manual overrides.

(e) Automation
---------------------------------
Paus.bas      Pause processing of batch files between calls for a
              specified number of seconds.  Useful in preventing
              file corruption when certain processes might not
              terminate as planned before other processes begin.
Proc.bas      Process DOS command on multiple files.  Similar to
              batch-file processing, but with much less editing.

(f) System-level processing
---------------------------------
Unhide9x.bas  Unhide "hidden" and "system" files on Win9x O/S's.
              Usable on WinME if O/S is "fixed" with MFDDME13.zip.
Unhide5x.bas  Same as Unhide9x except does not use quoted filespecs.
              Use on non-Win9x systems only. Note that this utility
              works on WinNT/2k/XP systems using DOS 8+3 filenames.

(g) Miscellaneous
---------------------------------
Bublsort.bas  Bubble Sort (functions and sample usage program).
Quiksort.bas  Quicksort (functions and sample usage program).
Shelsort.bas  Shell-Metzner Sort (functions and sample usage program).
              Note that the above three modules include code for
              zero- and one-based index arrays.


Part 6 - Other utilities (called by programs listed above).
-------------------------------------------------------------------------------
Brow.exe      Generic text browser; called by many utilities to display output.

NOTE: Dirm9x.bas and Dirm5x.bas call LXPIC.COM (Win9x only) to view certain
      picture files, and also call VD.EXE to compare two text-only files.
      The former can be obtained on the Internet by searching for 'LXPIC'.
      The latter can be substituted with any comparable text-comparison
      program (see DIRM.DOC).



PRIMARY SUPPORTING (INCLUDE-FILE) FUNCTIONS (primary code engines, etc.)
  Note that all '.bas' files below have a corresponding '.h' file, except:
  1. Clrparm.bas and Scrnparm.bas have no corresponding '.h' files.
  2. Getdir.bas, Getdir9x.bas, Getdirnt.bas, Getdirw.bas use 'Getdir.h'.
-------------------------------------------------------------------------------
Basdef.bas    Misc. functions & MBF-IEEE conversions.
Bitops.bas    Functions to set & return bit values.
Celledit.bas  Functions to edit fields on DOS screen.
Filecomp.bas  Functions to do binary compare of two files.
Filekill.bas  Function to kill non-wildcard filespec.
Fileopen.bas  Function to open file in various modes.
Getdir.bas    Functions to get & return filespec data (Win9x / DOS - short filenames only).
Getdir9x.bas  Functions to get & return filespec data (used by Unhide5x.bas/Unhide9x.bas).
Getdirnt.bas  Functions to get & return filespec data (WinNT/2k/XP - long filenames only).
Getdirw.bas   Functions to get & return filespec data (Win9x - long filenames if available).
Getline.bas   Function to get binary mode text lines.
Gettime.bas   Functions to display elapsed processing time.
Lsort.bas     Functions used by Srtf utility.
Midchar.bas   Replacement for Crescent Software PDQ function.
Parmstr1.bas  Functions to parse command-line parameters (returns short filenames).
Parmstr2.bas  Functions to parse command-line parameters (returns long filenames).
String.bas    Functions for parsing BASIC string buffers.
Tfind.bas     Search engine called by text search utilities.


SECONDARY SUPPORTING (INCLUDE-FILE) FUNCTIONS (patches for old code, etc.)
-------------------------------------------------------------------------------
Clrparm.bas   Standard color for b/w or color screens.
Longname.bas  Change Win9x filename to DOS filename.
Messages.bas  Function to displays message on DOS screen.
Scrnparm.bas  Offsets/positioning for various screen sizes.
Bcpy.frm      Copies long filenames in WinNT/2k/XP systems.
              (called by Dmnt.bas utility).
Bdir.frm      Creates directory list in WinNT/2k/XP systems.
              (called by Dmnt.bas utility).
