XPCBPATH version 1.2 June 8, 1994 ----------------------------------------------------------------------------- FREEWARE from: Key Software Products BBS: (415) 364-9847 440 Ninth Avenue (evenings & wknds) Menlo Park, CA 94025 E-Mail: tech.support@ksp.com ----------------------------------------------------------------------------- WHAT: Extends PCBoard's 30 character limit on paths and filespecs. WHY: The Internet INFO CD-ROM from Walnut Creek CD-ROM uses a very deeply nested directory structure on the CD. This requires path names in the corresponding DIR.LST and DLPATH.LST files that need to be as much as 80 characters long; PCSetUp only allows for 30 characters in any path or filespec. HOW: XPCBPATH is a TSR that intercepts calls to MS/DOS functions 3Bh (Set Current Directory), 3Dh (Open File), 4300h (Get File Attributes), and 4Eh (Find First). XPCBPATH compares the beggining of the ASCIIZ string pointed to by DS:DX against an internal list of substrings. If a match is found, XPCBPATH substitutes a (longer) replacement string for the matched prefix. For example, if the internal table contained: Look For Replace With -------- ------------ Z:\$DIR1 D:\ANSWERS\FAQS\INTERNET\TRAFFIC and the DS:DX string was: Z:\$DIR1\DATA\ Then it would be replaced by: D:\ANSWERS\FAQS\INTERNET\TRAFFIC\DATA\ USAGE: XPCBPATH expects a single command line argument which should be the name of a text file. The file should consists of up to 100 lines of text. Each line is a replacement specification containing a pair of strings ("Look For", followed by "Replace With") separated by one or more spaces or tabs. Extra space at the beginning or end of a line is ignored. NOTES: If you have a network of machines running multiple PCBoard nodes, you must install XPCBPATH on each node. XPCBPATH does NOT intercept MS/DOS functions 41h (Delete File), 4301h (Set File Attributes), 56h (Rename File), 5Ah (Create Temporary File), 5Bh (Create New File), 39h (Create Directory), or 3Ah (Delete Directory). In other words, it is expected to be used ONLY with pre-existing files and directories. Execute XPCBPATH only once per boot! It does NOT include a check to see if it is already resident, and excuting it a second time will cause a second copy to become resident. HISTORY: 1.0 Initial release 1.1 Changed replacement search from first match to longest match. Eliminated problems when there are two entries of the form: Look For Replace With -------- ------------ Z:\$DIR1 D:\ANSWERS\FAQS\INTERNET\TRAFFIC Z:\$DIR11 D:\ANSWERS\FAQS\KA9Q Increased DOS_SIZE from 64 to 80. DOS places a limit of 64 on the path length, but this does not include the drive letter (1), colon (1), a slash (1) after the path (64) and before the file name, the filename itself (12), and the terminating ASCIIZ null (1). 1.2 Presorted data before installing TSR to accelerate search. Corrected a problem that left interrupts disabled.