;;02-23-85 GTXT.DOC v1.1 06/18/85 Eric Gans French Department UCLA Los Angeles, CA 90024 Version 1.1 update: No longer messes up margin of tabbed files (v1.0 confused the BDOS column count - thanks to Irvin Block of Sea Cliff NY for catching this.) TXT.COM is one of those great ideas every programmer wishes he had found for himself. The idea of making a textfile into a COM file that requires just one command to print it on the screen is both practical and elegant. The enclosed files GTXT11.COM, GTXT11.000, 0.DAT and COM.SUB are more tributes to the ingenuity of TXT than attempts to surpass it. They nevertheless offer a couple of improvements. 1. GTXT11.COM is my version of TXT.COM. It accepts the following improvements of recent versions over the original: - exit via ^C (I didn't bother to offer other exit options; who needs them?) - zeroes high bit to read (say) WS doc mode files - allows printing of control characters using "^" (thus ^Z entered in the text will blank the screen when the COM file is run.) - page breaks can be forced with "~" In addition, it takes the trouble to count the lines and issue a "[More]" every 23 lines without your having to add "~" to the text; when you type a character the [More] is blanked out and doesn't waste a line on the screen. Version 1.1 backspaces over the [More] rather than doing a CR, which disturbs the BDOS column count and puts tabs in the wrong column. (This is more a bug in CP/M than in GTXT, but we have to work with CP/M, right?) ***** 2. GTXT11.000 is just GTXT11.COM with the 0 (=end) byte missing. It can be used like (G)TXT.COM: you read it into the text file with something like ^KR in WS and find some way of putting a binary 0 at the end. But its real purpose is for use with COM.SUB, which allows you to create a COM file from a pre- existing text file with no editing whatsoever. COM.SUB contains only one line: pip $1.com=gtxt.000,$1.$2,0.dat The point of renaming GTXT is that since it is not a COM file PIP will cut it off after the EOF marker (1AH) and not put extra (0 or other) bytes between it and the textfile you are COMing. The parameters $1 and $2 are, respectively, the filename and filetype of your textfile. They must be separated by a space. 0.DAT is a 2-byte text file that contains a binary 0 followed by 1AH; the 0 serves to mark the end of the read for the COM file you create. Example: suppose you have a little textfile called BLRK.TXT that you want to transform into a COM file. Just enter: submit (GSUB is faster) com blrk txt and you will have an executable file BLRK.COM while still retaining the original BLRK.TXT. All the features of GTXT.COM will be implemented. Just be careful that you have no (apparent) control characters in your text. In WS, for instance, if you underline with ^PS an ^S will remain in your text. This won't show up in the COM file (in fact, it'll remove the unsightly ^S's), but what if it were ^Z or ^P (which would toggle your printer)?