VOLUME 40 Various utilities, disk cataloging system, modem programs. NUMBER SIZE NAME COMMENTS -CATALOG.040 CONTENTS OF CP/M VOL. 40 ABSTRACT.040 Abstract on some of the files. 40.1 1K /.COM Quickie submit; Example: 40.2 1K /.DOC / asm foo.bbz;load b:foo 40.3 1K ALLOC.COM Prints bit map of disk usage.. 40.4 1K ALLOC.DOC ..(update of prev 1.3 only one) 40.5 37K BOOTER.ASM Pascal boot for Tarbell & Delta 40.6 1K CAT.COM Part of master cataloging sys. 40.7 1K CAT2.COM Part of master cataloging sys. 40.8 5K CATALOG.DOC Doc on master cataloging system 40.9 1K CK-FIX.COM File checksum program 40.10 1K CK-FIX.DOC DOC on above 40.11 4K COMPARE.ASM See if two files match exactly (Uses MAC and MAC's SEQIO) 40.12 2K COMPARE.COM COM of above 'cause many macros 40.13 8K CV.ASM Split screen VDM 2 file compare 40.14 1K CV.COM ..(requires MAC for assembly) 40.15 1K CV.DOC DOC on above 40.16 1K D.COM Shows what files are different 40.17 1K D.DOC ..on a disk from some prev time 40.18 14K DI.ASM Directory listing program. (req's MACRO.LIB from disk 38) 40.19 2K DI.COM COM of above 40.20 26K DU.ASM Disk utility: scan, patch, etc. 40.21 4K DU.COM COM of above. 40.22 1K DU.DOC DOC of above 40.23 1K EJECT.ASM "EJECT n" pages on CPM list dev 40.24 1K FMAP.COM File map (standalone, and part 40.25 1K FMAP.DOC of cataloging system) 40.26 9K HEXDUMP.ASM Binary to Hex (RequiresTDL asm) 40.27 1K MAST.CAT Sample master catalog 40.28 40K MODEM4.ASM Checksummed blocked file xfer 40.29 7K MODEM4.DOC DOC on above. PMMI/Hayes/serl 40.30 3K NSBOOT.ASM Boot for National Semi 8221 40.31 12K NSCBIOS.ASM CBIOS for National Semi 8221 40.32 3K PBOOT.ASM Pascal boot loader for Tarbell 40.33 5K PGEN.ASM Boot mods for 512 long sectors 40.34 17K PMMIBYE3.ASM Dial in remote console prog. 40.35 7K SPASCAL.DOC Sam Singer's PASCAL mods 40.36 2K UCAT.COM Update catalog program 40.37 3K VDMSAVE.ASM Write VDM lines to a file -------------------- VOLUME 40 ABSTRACTS ---------------------- TITLE: UTILITIES, MODEM FILE TRANSFER, ADAPTABLE PASCAL /.COM by Ward Christensen, is an 'on-line' submit command. It is used to build a command file without having to edit a .SUB file. For example, typing / ED FOO.ASM;ASM FOO.BBZ;LOAD B:FOO will cause CP/M to execute ED, ASM, and LOAD. This should be useful to anyone who regularly uses submit. Source code cannot be provided, but documentation is contained in /.DOC. Works only with CP/M 1.4. Reviewed by Robert A. Van Valzah. ALLOC.COM by Ward Christensen is a utility which prints the bit map used by CP/M to allocate free space on the disk. This is a revision of a previously released version which worked only with CP/M 1.3. The new ALLOC.COM works with CP/M 1.4. This utility would be useful to a hacker was curious how the disk space was allocated. Reviewed by Robert A. Van Valzah. BOOTER.ASM, PBOOT.ASM, and PGEN.ASM are source files used to adapt UCSD Pascal for use with disks other than standard single density IBM format. Using a disk formatted for 512 byte sectors can speed up Pascal disk I/O significantly. This code is still under development and may contain some bugs. It is provided for use by tinkerers. What documentation there is is in SPASCAL.DOC. Reviewed by Robert A. Van Valzah. CLEANUP.COM helps clean up a full disk by typing each selected name, and allowing you to erase the file, skip the file, type the file, or quit out of CLEANUP.COM. Allows ambiguous file names, such as *.ASM. A generally useful utility. Reviewed by its author, Ward Christensen. FMAP.COM, UCAT.COM, CAT.COM, and CAT2.COM by Ward Christensen, comprise a master disk cataloging system. This system is useful if you have a large number of disks and have a hard time keeping track of what file you left where. Earlier versions the components of this system have appeared in earlier releases. The complete system is collected here in its current version for convienence. Reviewed by Robert A. Van Valzah. CV.ASM contains source for a split screen video file comparison utility. It requires a VDM or SOL like display for operation. One file is displayed on the top 8 lines of the screen and the other is displayed on the bottom 8 lines. Either half may be independently scrolled 1, 4, or 7 lines, or continuously. A compare mode compares the files byte-by- byte while scrolling. Once a miscomparison is found, each half screen can be scrolled independently until the files are 'in sync' again. This utility is most useful to those who have a tendency to have 5 copies of the same file sitting around wondering what is differnt about them. CV.COM contains the assembled object code. What little documentation there is can be found at the start of the .ASM file. CV requires MAC for assembly. The source code is weak on comments but is fairly well structured. Reviewed by Robert A. Van Valzah. DI.ASM contains source for a utility which displays the directory of a disk in a three column format with the size of each file indicated in K bytes. It is useful to those who keep a large number files on a disk or those who have a video terminal with a limited number of lines per screen. This program currently reads the directory by bypassing the BDOS and may not work with some double density or with mini floppy systems. The file name has been changed to DI.ASM from D.ASM so as not to conflict with D.ASM as written by Ward Christensen. DI.ASM requires MAC and the file MACRO.LIB for assembly. The code is well written and should be easy to modify. Reviewed by Robert A. Van Valzah. D.COM by Ward Christensen is a utility which prints the directory of a disk without printing files which are ever present (like PIP and STAT). The idea is that you put D.COM on to a disk and type D SET. It then re-writes itself and thus remembers the current directory. As files are added to and removed from the disk, these changes will be shown by executing D.COM. You may individually ADD or DEL names in D.COM, or re-set it with D SET. This is just the thing if you use the 'system disk' concept and are forever trying to keep it 'clean'. Reviewed by Robert A. Van Valzah. Mod. by WLC DU.ASM contains the source for a Disk Utility. It has commands to read a disk a sector at a time by track, sector, and group number. It can also search for ASCII strings, map the disk (what file occupies what group) etc. Data may be patched in ASCII or hex. It might almost be said to suffer from "rampant-feature-itis". This is most useful if you have to re- create blown directories very often. DU probably won't work correctly if you have anything other than a standard CP/M system because it has to do hard I/O calls to the CBIOS. In order to use the utility correctly you would have to be a 'hacker' and have a fairly good understanding of the directory structure used by CP/M. Documentation is provided at the start of the .ASM file (definitly not a tutorial) and there is a good 'help' function built into the .COM file if you forget any of it. The source code is weak on on-line comments but is well structured. Reviewed by Robert A. Van Valzah. Mod. by WLC HEXDUMP.ASM contatins source for a transient which takes an object file (say .COM) and produces an Intel hex format file (.HEX). Perhaps a more appropriate name would be UNLOAD, as it performs the inverse operation of LOAD.COM. No documentation has been provided, but it appears that it can send the hex to disk or to the list device. The source is in TDL macro assembler format and does use some Z-80 opcodes. Comments are a bit sparse. This program is most useful to those who wish to send 8-bit object code over the phone lines (say to a timesharing service) or other 7-bit medium. Reviewed by Robert A. Van Valzah. MODEM.ASM (version 4) contains the source for a modem com- munications utility. It has the ability to transfer any CP/M file to or from another machine also using MODEM.COM. The file is transfered in a blocked format with checksums and automatic retry on block failure. It is very useful for software exchange and also for conversion from CP/M on one media to CP/M on another. Modes are provided for terminal like communication with another computer. This is an extension and rewrite of the earlier CP/M U.G. MODEM program. It supports the S-100 modem boards made by PMMI and D. C. Hays with variable baud rate and disconnect control. It can be used with modems interfaced with just a serial port too. Assembly switches provide for use with Heathkit CP/M. Documentation is provided in MODEM.DOC. The source is well written and easy to modify. Reviewed by Robert A. Van Valzah. PMMIBYE3.ASM contains source for a utility which allows remote access to your CP/M system. It requires the PMMI modem for operation, although it could be adapted for other modems. The source is fairly well commented. BYE requires a small amount of memory above the normal CP/M system in which to locate itself. BYE effectively connects the modem as the CP/M console device and monitors for loss of carrier etc. Reviewed by Robert A. Van Valzah. NSCBIOS.ASM contains a CBIOS to put CP/M up on the National Semiconductor BLC 8221 disk controller. NSBOOT.ASM contains a companion cold boot loader. Both are based on the equivalent software distributed with CP/M and published in the CP/M System Alteration Guide. These files would be useful to anyone with the aformentioned disk controller or with a Starplex system which, I believe, uses the same controller. Both files may be assembled with ASM.COM. The code is fairly well written and commented and should be fairly easy to adapt as needed. Reviewed by Robert A. Van Valzah. PTSRCNVT is used to convert files that were used with Processor Technology Software Package 1 and ALS8 assemblers to a format that is CP/M assembler compatible. Input is read from disk so you must have a way to load the PT format source into memory at 0100H and save it. Documentation is provided in PTSRCNVT.DOC. The source code is a little light on comments but shouldn't have to be modified. In order to assemble PTSRCNVT.ASM, you will need MAC and MACRO.LIB from volume 24. Reviewed by Robert A. Van Valzah.