TECO IN C FOR FREE 645 Ohio Ave, # 30 Long Beach, Ca. 90814 Long Beach, Ca. 90814 Page 2 Teco User's Guide, DEC order number DEC-11-UTECA-B-D. It was written using the Guide as a specification. DEC-11-UTECA-B-D. It was written ing the Guide as a specification. Undocumented features of TECO-11 and TECO-C 1. 8192 bit in ET flag causes ' character to be ESCAPE 2. Q-registers named ".x" are local to the current macro level. 3. HELP Page 3 TECO-C vs. TECO-11 in rough order of importance TECO-C TECO-11 pay for (maybe bugs) u exhaustively tested pay for (maybe bugs) more soon (until VMS v5.0) mode more soon (until VMS v5.0) and no /SCROLL qualifier supports /SCROLL o and and no /SCROLL qualifier supports /SCROLL q-registers y buffer and 100k total bytes q-registers faster slower not parsed with macro parsed with a TECO macro not parsed with macro parsed with a TECO macro 32-bit numeric values 16-bit numeric values want LF and BS immediate comm want LF and BS immediate commands q-registers (E% and EQ) not implemented q-registers (E% and EQ) HELP file, interactive move around help tree HELP file, interactive move around help tree help libraries system settable HELP library help libraries EO returns 100 EO returns 39, 40, etc. correct case sensitivity thinks { is same as [, etc. no -P, -N, -Y has -P, -N, -Y no filename switches has them, like /CR and /FT other very minor differences Page 4 TECO-C portability 1. 283 files, 32 are system-dependent CPM-68k r VAX/VMS, almost runs under XENIX, once ran under CPM-68k system-dependent files. conditionally compiled code in system-dependent files. 4. Almost no terminal dependencies. 5. Uses RMS under VMS, fopen/fclose/fgets etc. under XENIX. and to C code under XENIX. which maps to OTS$MOVC3 under VMS and to C code under XENIX. dependent upon the system. For instance, RMS error messages are reported from VAX code. For instance, RMS error messages are reported from VAX code. accessing command-line arguments. nd C's standard way of accessing command-line arguments. Page 5 Implementation of TECO-C 1. Edit buffer gap scheme instead of a contiguous edit buffer. command character. by indexing into a jump table using the command character. 3. Memory is managed with calloc/realloc/free calls. 4. One function per file. 5. Function names are 6 characters or less. little parameter passing. o global variables: there is very little parameter passing. 7. System-dependent function names start with a "Z". entry/exit text as TECO-C runs. Can be controlled with ^P command and is conditionally compiled. be controlled with ^P command and is conditionally compiled. written to compare TECO-C's behavior to TECO-11's. hey were written to compare TECO-C's behavior to TECO-11's. Page 6 Helpful files in TECO-C save set used from TECO-11. than TECO-11's help library, and can be used from TECO-11. 2. CHANGE.TEC is like VMS SEARCH, but changes the string. of TECO-C commands. ut COMMANDS.TXT contains a "wall chart" of TECO-C commands. algorithms and data structures used in TECO-C. h describes algorithms and data structures used in TECO-C. ideas. .TXT contains desciptions of known bugs and some ideas. *.TEC. They are undocumented. be found in files named *.TEC. They are undocumented. Page 7 Future of TECO-C it like EDT or TPU means depending on a DEC-style keyboard. Making it like EMACS is REALLY re-inventing the wheel. oard. Making it like EMACS is REALLY re-inventing the wheel. VAX-dependent. If I use curses, then it's UNIX-dependent. If I write my own, then it will support a small number of terminals. y own, then it will support a small number of terminals. possible. cements that cause several "flavors" to exist, if possible. submitted to the DECUS Software Library. Other TECO-related elements of the library will be combined into a single Library entry. library will be combined into a single Library entry.