Date: Sat, 27 Jun 1998 19:50:12 -0600 (MDT) Message-Id: <199806280150.TAA26737@kewlaid.highfiber.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: dos DOT support AT delorie DOT com From: raster AT highfiber DOT com (Charles Dye) Subject: Various bugs Cc: opendos AT delorie DOT com Precedence: bulk A few more obscure bugs, and one simple suggestion. 1. COMMAND.COM and SwitChar: the DR DOS version of COMMAND.COM misbehaves in various unpleasant ways when the SwitChar is set to anything but a forward slash. (See INT 21/3701.) For starters, COMMAND.COM no longer handles backslash correctly as a path separator -- DEL \TEST\*.* will attempt to delete files in the *current* directory, not necessarily in \TEST. If any files have duplicate names, it may succeed. (Also, the prompt is suppressed for some reason --?) In an apparently separate problem, if the SwitChar is anything but a forward slash, program pathnames (passed in the environment block) may contain forward slashes as path separators. This causes problems for many programs, including DR DOS EDIT.COM (hello, default color scheme!) and SETUP.EXE. Also, if SwitChar is changed, the DOS prompt is displayed in an odd fashion. The first backslash is replaced with a forward slash. Probably this was meant as a visual cue that SwitChar has been changed, but might cause compatibility problems for clever batch files which redirect the prompt to get the current directory. In short: SwitChar should only affect the switch character. Not the path separator character, please! And yes, these are all problems specifically with COMMAND.COM -- patching out the call to 21/3700 prevents them all. 2. DEBUG: The G ("go") command, as far as I can tell, never works right. If the program ends via INT 21/4Cxx, it will terminate DEBUG (not just the child process.) If it ends via INT 21/00 or INT 20 or RET, it will lock the machine up. DB (deposit bytes) in assembly mode, will occasionally give a "Token is too long" error for string data between quotes. (I know, who does this anyway?) The error message seems data-dependant, but it's not just the length of the string. Try: DB "000000000000000000000000000000" (thirty zeroes, fails) ... but change the zeroes to minus signs, and DEBUG accepts it. Weird. Unrelated: Attempting to run the sample debug script in DOSBOOK will leave the computer in an interesting state. (Error in the documentation, not in the code.) 3. Setup performance: Try adding a line BUFFERS=30 to the CONFIG.SYS file on Setup Disk #1. This can cut setup time considerably -- nearly 50% on one machine I tested! -- and also saves wear on the floppy mechanism. Easy improvement! raster AT highfiber DOT com