Basic.System DIFF external command by Doug Reeder DIFF.CMD shows the differences between two similar files. It is useful primarily for text files, since the differences are displayed as ASCII characters, but it is also useful to see if two binary files are identical or not. Note that Applesoft BASIC programs are not text files. DIFF.CMD works on a line-by-line basis, displaying the lines that differ and their line numbers, breaking the lines if they are too long. These lines are sent to the standard output, and thus may be redirected to the printer, for example, with PR#1. DIFF.CMD comes as a self-installing BIN file. To install, simply BRUN DIFF.CMD. Syntax: DIFF , [,Ln] [,Sn] [,Dn] The optional L parameter selects the number of lines DIFF.CMD will look forward to find a matching line. The default is 8, and when L is set, it remains at that value until changed again. For example, if you forget what changes you made to your program between versions three and four, you could type: DIFF SPAM3.S,SPAM4.S,L10 MOVE.CMD is free for non-commercial use. You may give it to other people, but you must give them this documentation file as well, and you may not charge them for it, except of course for media and normal connect-time charges. Corporate licences are $5. If you like MOVE.CMD, write me and tell me how wonderful it is. MOVE.CMD and this document are copyright 1989 and 1990 by Doug Reeder. Doug Reeder 1718 Birch Richland, WA 99352 BITNET: REEDER@REED.BITNET USENET: ...!tektronix!reed!reeder Basic.System MOVE command by Doug Reeder MOVE.CMD moves a file to another directory on the same disk. MOVE.CMD only changes the directory entries, and thus does not need to copy the file body. It is faster than a copy command and puts a trifle less wear and tear on your disk. The real strength of MOVE.CMD is its ability to move directory files, allowing you to restructure the subdirectory tree on you disk without copying the individual files. To install: BRUN MOVE.CMD syntax: MOVE , [,Sn] [,Dn] may be anything, including a subdirectory, except the volume directory itself. The destination directory must be on the same disk. When MOVE.CMD is installed, CAT will not work without a volume name. This does not appear to hurt anything, and the data structures on the disk remain absolutely correct. Moving a file to the directory it is currently in does strange things, usually unhappy. Moving a directory inside itself, or inside one of its own subdirectories will make it disappear, requiring you to repair the disk with a disk editor (the information and directories are still there, and will not be overwritten by other disk access, because their blocks are still in the bitmap). MOVE.CMD is free for non-commercial use. You may give it to other people, but you must give them this documentation file as well, and you may not charge them for it, except of course for media and normal connect-time charges. Corporate licences are $5. If you like MOVE.CMD, write me and tell me how wonderful it is. MOVE.CMD and this document are copyright 1989 and 1990 by Doug Reeder. Doug Reeder 1718 Birch Richland, WA 99352 BITNET: REEDER@REED.BITNET USENET: ...!tektronix!reed!reeder SPOOL.CMD - a background print spooler that runs under BASIC.SYSTEM documentation for version 8 (Basic) Unpack using BinSCII then ShrinkIt to get a BIN file named SPOOL.CMD and a TXT file named SPOOL.CMD.DOC. You must enable interrupts on your Super Serial Card by setting DIP switch 2-6 to ON. To install: BRUN SPOOL.CMD to start a document printing in the background: SPOOL SPOOL.CMD is shareware: Try it out for two weeks, and if you decide to keep it, send $5 to: Doug Reeder 1718 Birch Richland, WA 99352 Otherwise, delete it from your disks. You may pass it on to other people, but you must not give them a modified copy and you must give them all the files, and they must also pay the shareware fee if they keep it. You may not charge to distribute SPOOL.CMD, including as part of a collection, without permission in writing from me. You may charge for media and postage, of course, and you may upload SPOOL.CMD to pay-access electronic bullitin boards, as long as no charge is made for downloading. Versions are being written for all the popular ProDOS shells, and one $5 shareware fee is good for all versions. Comments on file formatting paradigms (filter programs or command line options?) are welcome. Money talks. Syntax: SPOOL [,Fn] [,Sn] [,Dn] The F(orce) parameter is optional. F1 will force the presently spooling file to stop, and will then attempt to spool the new file specified. If you do not wish to spool a new file, give the name of a file that does not exist. F2 will re-enable interrupts, allowing a disrupted (usually by reset) spooling to continue. If a SPOOL.CMD is trying to spool a file, the filename will be parsed but ignored. If not, the new file will be spooled. SPOOL.CMD should work on any Apple or clone as new or newer than a II+ with an Apple Super Serial Card or the equivalent hardware in slot 1 (e.g. the IIc's serial printer port). Specifically, it requires a Synertek 6551 ACIA (that's the chip that does the serial stuff) with it's registers mapped to the same addresses as the SSC. It does not depend on the serial firmware at all, nor does it interact with the standard input or output. Documents may be spooled from any disk drive, though spooling from ramdisk is optimal. SPOOL.CMD should run on a GS in 8-bit emulation mode with a SSC in slot 1. It will not work with the GS's built-in serial port. Bug reports should be sent to the address at the end of this document, and MUST describe EXACTLY what commands were used and EXACTLY what the computer and printer did in response (did the disk drive spin?), and of course should list the hardware used. On II+'s and IIe's, do not use the system monitor program while a document is spooling, as interrupts trash location $45, which the monitor uses. SPOOL.CMD sets the Super Serial Card to 8 data bits and no parity. It reads the DIP switches on the SSC to determine baud rate, numer of stop bits, and whether or not to add line feeds after carriage returns. For the IIc, it sets 9600 baud, 1 stop bit and line feeds enabled, which is standard for Imagewriter I's and II's. At present, these parameters are not settable though software and SPOOL.CMD does no other formatting, including breaking lines wider than your printer can handle. It assumes your SSC or equivalent is in slot (port) 1. If you need a different configuration, send me the shareware fee, and I'll send you a modified version. I won't cash your check 'till you have a version that works for you. Future versions will be easier to configure and will include formatting of some kind. The ideal paradigm would be to run the file through a formatting filter to a copy on ramdisk, an spool it from there. Send compatibility reports to the address at the end of this document. Errors: If there is not enough memory for SPOOL.CMD to install itself, it will report PROGRAM TOO LARGE. Problems with starting a document spooling will give you the appropriate BASIC.SYSTEM error message. The most common problems are a mistyped or unavailable file, and being unable to install a new interrupt routine because too many are already active (probably because one was left dangling by a reset). Any error while reading the file will terminate spooling with no message. If the printer appears to be unready, SPOOL.CMD will wait as long as neccesary, giving no message. Reset will disable interrupts and suppress spooling. To continue spooling the current file, use SPOOL ,F2 If you attempt to spool a second document while another is spooling (including a spooling suppressed by reset), you will get the message 'busy'. If you wish to terminate the current spooling and begin another, use SPOOL ,F1 SPOOL.CMD and this document are copyright 1990 by Doug Reeder. Send the shareware fee of $5 to: Doug Reeder 1718 Birch Richland, WA 99352 Bug reports, compability reports, and comments can also be sent to: USENET: ...!tektronix!reed!reeder BITNET: REEDER@REED.BITNET Money talks.