1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-11 23:53:12 +00:00
PDP-10.its/doc/_teco_/oteco.order
Lars Brinkhoff adf69681c0 Move TECO 335 to .TECO and make it assemble.
Need to expunge the EDIT symbol and increase the size of the symbol
table.
2019-03-10 06:47:26 +01:00

903 lines
31 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

LIST OF TECO COMMANDS.
LAST UPDATED 8 SEPTEMBER 1972. Z=32856
^A EXCLUSIVE OR.
^B TURN ON LINE PRINTER OUTPUT.
:^B TURNS ON LPT OUTPUT AND RETURNS
VAL=-1 IF SUCCESSFUL (I.E., LPT WAS
AVAILABLE), VAL=0 OTHERWISE. ^B
WITHOUT : CAUSES ERROR IF LPT BUSY.
NOTE: ^B INSIDE SEARCH STRING IS A
SPECIAL CHAR WHICH IS MATCHED BY ANY
NON-SQUOZE CODE CHAR (I.E., NOT A-Z,
0-9 . $ OR %).
^B IN FILE NAME SPECIFICATION GETS
SECOND DEFAULT FILE NAME.
^C WHEN TYPED IN FROM CONSOLE, TERMINATES THE
COMMAND STRING, AND STARTS EXECUTION. IF
THE COMMAND TERMINATES WITHOUT ERROR, TECO
RETURNS TO DDT WITHOUT FLUSHING THE TYPEIN
BUFFER. WHEN PROCEDED, IT WILL AUTOMATICALLY
REDISPLAY THE BUFFER ON DATAPOINTS.
A ^C ENCOUNTERED AS A COMMAND IS AN ERROR.
^D WITH ARG, SET DISPLAY SIZE ON 340
DISPLAY (-1<ARG<4); WITHOUT ARG,
COMPLEMENT STATUS OF 340 DISPLAY
USAGE.
^E TURN OFF LINE PRINTER OUTPUT.
^F VAL=CONTENTS OF PDP-10 DATA SWITCHES.
^G QUIT: STOP I/O AT END OF PAGE, STOP
COMMAND EXECUTION IMMEDIATELY, STOP
TYPEIN AND TYPEOUT IMMEDIATELY.
NOTE: UNLIKE THE OTHER COMMAND CHARS,
THIS IS INTERPRETED IMMEDIATELY UPON
TYPEIN, SO IF YOU TYPE IT IN THE
MIDDLE OF A COMMAND STRING, WHATEVER
YOU TYPED BEFORE IT WILL BE LOST.
IN PARTICULAR, IT CANNOT BE PART OF
A TEXT STRING.
^H BACKSPACE; SELF-INSERTING CHARACTER.
^I TAB; SELF-INSERTING CHARACTER.
^J LINE FEED; FLUSHES CURRENT VALUE.
^K IF NO FOLLOWING TEXT STRING, CLOSE
ALL I/O CHANNELS AND RETURN TO DDT.
IF THE ^K IS FOLLOWED BY A
TEXT STRING (I.E., THE NEXT CHAR IS
NOT ALTMODE), THE STRING WILL BE
GIVEN TO DDT AS A COMMAND STRING WITH
DOLLAR SIGNS REPLACED BY ALTMODES.
IF THE COMMAND STRING CONTAINS A $P
COMMAND, COMMAND EXECUTION WILL
CONTINUE WITH THE CHARACTER AFTER THE
ALTMODE ENDING THE TEXT STRING OF
THE ^K.
^L FORM FEED; CLEAR SCREEN ON
DATAPOINTS. ECHOES AS CLEAR SCREEN ON
ARDS. I.E., TYPE ^L TO CLEAR
SCREEN ON ARDS, ^L ALTMODE ALTMODE
TO CLEAR SCREEN ON DATAPOINT.
^M CARRIAGE RETURN; FLUSHES CURRENT VAL.
^N SET THE NUMBER OF LINES ON EACH SIDE
OF POINTER DISPLAYED ON 340,
DATAPOINT TO ARG.
:^N ENTERS AND LEAVES MODE IN WHICH
THE BUFFER IS DISPLAYED AFTER EVERY COMMAND STRING
EVEN ON PRINTING TERMINALS,
WITH -!- AS THE CURSOR.
IN THIS MODE, E-COMMANDS DO NOT DISPLAY THE DIRECTORY.
USE ARG^N TO SET NUMBER OF LINES TYPED ON
EITHER SIDE OF THE CURSOR TO ARG.
USE ARG,^N TO SET THE TERMINAL'S LINESZE TO ARG
(SHOULDN'T BE DONE ON DATAPOINTS)
(IS USED TO DETERMINE WHEN TO CONTINUETHE LINE
ON PRINTIN TERMINALS)
NOTE: ^N IN A SEARCH STRING IS A
SPECIAL CHAR WHICH IS MATCHED BY
ANY CHAR OTHER THAN THE CHAR AFTER
THE ^N IN THE SEARCH STRING.
^O IF ARG<1, TAKE FOLLOWING FILE NAME
AND BIGPRINT ON DEVICE OPEN FOR
OUTPUT. IF ARG>0 OR NO ARG (=1),
PRODUCE ARG COPIES OF ASSEMBLY
LISTING OF LAST FILE ER'ED OR EF'ED
ON DEVICE OPEN FOR OUTPUT.
NOTE: ^O IN A SEARCH STRING IS A
SPECIAL CHARACTER SIGNIFYING "OR"
I.E., IT DIVIDES THE SEARCH STRING
INTO TWO STRINGS EITHER OF WHICH WILL
SATISFY THE SEARCH.
^P ALPHABETIC (ASCII)SORT COMMAND.
THE ENTIRE BUFFER IS
SORTED, AFTER BEING DIVIDED INTO
SORT RECORDS (I.E., THINGS TO BE
SORTED) ON THE BASIS OF THE ARGUMENTS
GIVEN TO THE COMMAND IN THE FORM OF
THREE TECO COMMAND STRINGS FOLLOWING
THE ^P, SEPARATED BY ALTMODES.
(NOTES: (1) TWO SUCCESSIVE NULL ARGS
WILL RESULT IN A PREMATURE END OF
COMMAND INPUT, SO USE SPACES WHERE
NEEDED. (2) A DOLLAR SIGN IN ANY
ARG WILL BE REPLACED BY AN ALTMODE.)
THE THREE COMMAND STRINGS ARE USED
TO DIVIDE THE BUFFER INTO SORT
RECORDS, EACH OF WHICH HAS A SORT KEY
(WHICH MAY BE ANY PART OF THE RECORD,
OR OUTSIDE THE RECORD). THIS IS DONE
AS FOLLOWS:
1. THE POINTER IS MOVED TO THE
BEGINNING OF THE BUFFER, WHICH IS THE
BEGINNING OF THE FIRST SORT RECORD.
2. THE FIRST COMMAND STRING IS
EXECUTED. THIS SHOULD MOVE THE
POINTER FROM THE BEGINNING OF ANY
RECORD TO THE BEGINNING OF ITS KEY.
3. THE SECOND COMMAND STRING IS
EXECUTED. THIS SHOULD MOVE THE
POINTER FROM THE BEGINNING OF ANY KEY
TO THE END OF THAT KEY.
4. THE LAST COMMAND STRING IS
EXECUTED. THIS SHOULD MOVE THE
POINTER FROM THE END OF ANY SORT
KEY TO THE END OF THE RECORD, I.E.,
THE BEGINNING OF THE NEXT RECORD.
5. IF STEP 3 OR 4 LEAVES THE POINTER
AT THE END OF THE BUFFER, OR
EXECUTES A SEARCH WHICH FAILS (THIS
WILL NOT CAUSE AN ERROR; THOSE
STEPS ARE DONE AS IF INSIDE AN
ITERATION), THE CREATION OF SORT
RECORDS IS COMPLETE, AND THE SORT
TAKES PLACE. OTHERWISE, GO BACK
TO STEP 2.
SORT RECORDS AND KEYS MAY BE
VARIABLE LENGTH. NO CHAR (I.E., A
SHORTER KEY) SORTS BEFORE .
THERE IS NOTHING TO PREVENT RECORDS
FROM OVERLAPPING OR OTHER SUCH
LOSSES, BUT IT'LL PROBABLY LOSE.
NOTE: THE COMMAND STRINGS MAY NOT
DO ANYTHING WHICH WOULD MOVE CHARS
IN THE BUFFER. IN PARTICULAR, TEXT
INSERTIONS FROM Q-REGS IS NOT
ALLOWED, BUT NUMERIC USE OF Q-REGS
IS OK.
^Q ^Q IN A SEARCH STRING CAUSES
THE NEXT CHAR TO BE "QUOTED" I.E.,
IT IS TREATED AS AN ORDINARY CHAR
EVEN IF IT NORMALLY HAS A SPECIAL
MEANING. (^Q^Q IS A NORMAL ^Q;
RUBOUT AND THE TEXT TERMINATOR CANNOT
BE ^Q'ED.) THIS ALSO WORKS
INSIDE FILE NAME SPECIFICATIONS.
^R REAL TIME EDIT FEATURE. FROM DATAPOINTS, WILL
DISPLAY THE CURRENT LINE AND THE TWO LINES ON
EITHER SIDE. A SEPERATE SET OF COMMANDS CONTROLS
THE ACTION ON THE LINE. ALL NON-CONTROL-NON-RUBOUT
CHARACTERS ARE SELF INSERTING. COMMANDS ARE AS
FOLLOWS:
^B GO BACK OVER PREVIOUS CHARACTER
^C COMPLEMENTS THE STATE OF THE COMMENT MODE
SWITCH. WHEN ENTERING COMMENT MODE, THE
POINTER WILL MOVE TO THE END OF LINE,
AND ENOUGH TABS WILL BE INSERTED TO MOVE
THE POINTER AT LEAST TO A PRESELECTED TAB
STOP. IF NO TAB STOP HAS BEEN SELECTED, THEN
A SINGLE TAB FOLLOWED BY A SEMICOLON WILL BE
INSERTED. ALSO, WHILE IN COMMENT MODE, ALL
LINE CHANGES, INCLUDING INSERTING A CRLF,
WILL CAUSE THE TAB-SEMICOLON HACERY TO BE
DONE. WHEN CHANGING LINES, AND UPON LEAVING
COMMENT MODE BY TYPING ANOTHER ^C, MEANING-
LESS TAB-SEMI'S WILL BE REMOVED.
^D DELETES THE NEXT CHARACTER AFTER .
^F GOES FORWARD OVER THE NEXT CHARACTER
^G FLUSHES EVERYTHING DONE SINCE THE LAST
LINE CHANGE.
^H DELETES PREVIOUS CHARACTER (AT .-1)
^J INSERTS A LINE FEED
^K KILLS TO EOL (SAME AS TECO'S 1K)
^L REDISPLAYS THE SCREEN (USED TO RECOVER FROM
GROSS DATAPOINT LOSSAGE
^M INSERTS A CARRAGE RETURN-LINE FEED. (DOESN'T
CAUSE A LINE CHANGE BUT DOES COMMENT HACKERY)
^N GOES TO NEXT LINE
^P GOES TO PREVIOUS LINE
^Q INSERTS THE FOLLING CHARACTER DIRECTLY
REGARDLESS OF ANY SPECIAL MEANING AS
A COMMAND
^R CAUSES ALL FOLLOWING COMMENTS TO BEGIN AT
THE CURRENT TAB STOP
^S SEARCHES THROUGH WINDOW FOR ARGTH OCCURANCE OF
THE CHARACTER TYPED AFTER THE ^S. A MINUS ARG
SEARCHES BACKWARDS THROUGH THE WINDOW. IF NO
ARG, ARG DEFAULTS TO 1.
^T SEARCHES LIKE ^S, ONLY BACKWARDS THROUGH THE
WINDOW WITHOUT HAVING TO SPECIFY A NEGATIVE
ARGUMENT.
^W KILLS FROM AFTER THE PREVIOUS LF TO .
LIKE 0K
^X CAUSES ARGUMENT ENTRY. THE CURSOR WILL GO TO
THE BOTTOM OF THE SCREEN, ECHOING NUMBERS
TYPED THERE. RUBOUT WILL DELETE ONE
DECIMAL DIGIT. IF THE NUMBER IS OVER-RUBBED
OUT, THEN NOTHING HAPPENS. - NEGATES THE
ARGUMENT. TWO -'S CANCEL. TO TURN OF
DISPLAY HACKERY, USE ^^
^[ (ALTMODE) TERMINATES EDIT
^\ TERMINATES EDIT, AND PREVENTS TECO FROM
DISPLAYING THE BUFFER IF AT TOP LEVEL
^^ COMPLEMENTS THE STATE OF THE SWITCH
ALLOWING ARGUMENT DISPLAY DURING ASSEMBLY
^S IF ARG>0, SLEEP FOR ARG 30THS OF A
SECOND. IF ARG<0, SLEEP UNTIL SYSTEM
RUN TIME (WHAT ^@ GETS) = -ARG.
^T ENTER REAL-TIME EDIT MODE. IF ^T IS
TYPED AS THE FIRST CHARACTER IN THE
INPUT STRING, REAL-TIME EDIT STARTS IMMEDIATELY,
OTHERWISE IT STARTS WHEN EXECUTED.
IT FLUSHES ANYTHING FOLLOWING IN COMMAND LINE.
IN REAL-TIME EDIT MODE, YOU EDIT AS YOU TYPE.
ANY CHARACTER WHOSE ASCII CODE IS MORE THAN
37 OCTAL IS ENTERED DIRECTLY INTO THE
LINE BEING EDITED. ANY OTHER
CHARACTER IS INTERPRETED AS A COMMAND
THERE ARE TWO ENTER MODES: INSERT
MODE AND OVERLAY MODE. IN INSERT MODE,
INSERTED CHARACTERS ARE INSERTED AT THE POINTER.
IN OVERLAY MODE INSERTED CHARACTERS ARE
OVERLAYED OVER THE CHARACTER TO THE RIGHT OF THE
POINTER. IN EITHER CASE, THE POINTER MOVES AFTER
THE INSERTED CHARACTER. INITIAL MODE IS
OVERLAY MODE. THE ^P COMMAND CHANGES THE
MODE.
COMMANDS ARE AS FOLLOWS:
^C MOVE POINTER 1 CHARACTER ECHOING
AS CHARACTER MOVED OVER
^D DELETE CHARACTER FOLLOWING POINTER
ECHOING AS %
^F HELP. 1) TYPE '#'
2) TYPE FROM POINTER TO FIRST LINEFEED
3) TYPE FROM PREVIOUS LINEFEED TO POINTER
^G QUIT.
^I TAB. INSERT IN CURRENT MODE.
^J LINEFEED. INSERT IN CURRENT MODE
^L TERMINATE EDIT.
^M CARRIAGE RETURN. DELETE TO NEXT LINEFEED
AND TERMINATE EDIT.
^N MOVE POINTER BEFORE 1ST SPACE FOLLOWING
A NONSPACE.
^O DELETE TO AFTER NEXT SPACE, TYPING % FOR EACH DELETED
CHARACTER.
^P SEE ABOVE. CHANGES INSERT MODE.
^U DISPLAY ON 340 OR DATAPOINT THE FILE
DIRECTORY OF DECTAPE # ARG,
0<ARG<5; THE DISK, ARG=0; OR THE
CURRENT DEFAULT DEVICE, NO ARG.
^V TURN OFF OUTPUT TO EW'ED DEVICE
(DOES NOT TURN OFF LINE PRINTER).
^W TURN ON OUTPUT TO EW'ED DEVICE.
^X ONLY DEFINED INSIDE MACRO. VAL=
FIRST ARG OF THE M COMMAND WHICH
STARTED MACRO.
NOTE: ^X IN SEARCH STRING IS A
SPECIAL CHAR WHICH IS MATCHED BY ANY
CHARACTER.
^Y LIKE ^X, ONLY SECOND OR ONLY ARG OF
M COMMAND. IF ^Y IS THE FIRST CHAR
TYPED IN IN A COMMAND STRING, THE
PREVIOUSLY TYPED COMMAND STRING IS
INSERTED IN THE BUFFER. THIS IS A
LOSS RECOVERY PROCEDURE.
^Z NORMALLY CAUSES AN INTERRUPT TO DDT WHEN TYPED.
HOWEVER, ONE CAN BE GIVEN TO TECO BY QUOTING IT
WITH ^_ , IN WHICH CASE IT IS A NORMAL COMMAND:
ARG^Z MEANS INSERT ARG "RANDOM" (SO SAYS RSL) CHARS.
THIS COMMAND APPEARS TO GENERATE LETTERS ONLY.
ALTMODE TERMINATES FOLLOWING TEXT ARGUMENT TO
CERTAIN COMMANDS; TWO SUCCESSIVE
ALTMODES TERMINATES COMMAND STRING
AND BEGINS COMMAND EXECUTION.
IF EXECUTED, AN ALTMODE WILL CAUSE TECO
TO RETURN IMMEDIATELY TO TOP LEVEL.
^\ (CTL SHIFT L) IF NO ARG, VAL=
CONDITIONS REGISTER OF 760 DEVICE.
IF ARG, SETS CON REG OF 760 TO ARG.
(760 DEVICE IS FOR TEMPORARY SENSE
CROCKS WIRED TO MACHINE. THIS
COMMAND IS BASICALLY USELESS.)
^] THIS IS NOT REALLY A COMMAND. IT
IS EXECUTED WHEN TECO READS A
CHARACTER FROM THE COMMAND BUFFER.
(IE. BEFORE ANYTHING LIKE
INSERTION OR INTERPRETATION IS DONE
TO THE CHARACTER.) IT GOBBLES THE
FOLLOWING CHARACTER AND PROCEEDS
AS FOLLOWS:
^F SET THE ONE CHARACTER FLAG (SEE BELOW)
THEN READ ANOTHER CHARACTER AND CONTINUE
INTERPRETING IT AS IF IT HAD BEEN TYPED
AFTER A ^].
^Q GOBBLES ANOTHER CHARACTER AND RETURNS
IT TO TECO SUPERQUOTED (I.E. IT WILL
NOT ACT AS A TEXT TERMINATOR, IN A
SEARCH STRING, IT WILL HAVE NO SPECIAL
EFFECT, ETC.
^S CAUSE THE SUPERQUOTE FLAG TO BE TURNED ON
(SEE BELOW) THEN READ ANOTHER CHARACTER AS IN ^F
^T CAUSE THE DELIMITER FLAG TO BE TURNED OFF
(SEE BELOW) THEN READ ANOTHER CHARACTER AS IN ^F
^X PUSH THE CURRENT COMMAND BUFFER ONTO A
SPECIAL PDL. THEN CAUSE THE NORMAL MACRO PDL
TO BE POPPED ONE LEVEL. (THE MACRO PDL IS
PUSHED ONTO EACH TIME AN M COMMAND IS EXECUTED.
IT IS ALSO PUSHED ONTO BY ^]<Q-REG NAME> (SEE BELOW))
TECO WILL THEN PROCEED NORMALLY, READING FROM
WHAT IS ESSENTIALLY A STRING ARGUMENT TO THE
CURRENT MACRO, UNTIL AN ALTMODE IS ENCOUNTERED.
THIS ALTMODE WILL NOT BE PASSED TO TECO, BUT WILL
INSTEAD CAUSE THE COMMAND BUFFER TO BE REPUSHED
ON THE MACRO PDL AND THE SPECIAL PDL TO BE
POPPED, THUS RESTORING THE STATE OF THE WORLD.
IF A REAL ALTMODE IS DESIRED IN A STRING
ARGUMENT, ^]$ (DOLLAR SIGN) SHOULD BE
USED.
IF TECO HAD BEEN IN ANY STATE OTHER THAN READING
COMMANDS (I.E. READING A STRING TO BE INSERTED)
THEN THE CHARACTERS READ IN THE STRING ARGUMENT
WILL BE PROTECTED FROM BEING TAKEN AS TEXT DELIMITERS.
THUS I^]^X$ IS GUARENTEED NOT TO TERMINATE SOMEWHERE
IN THE MACRO ARGUMENT. IF THIS IS FOR SOME REASON
UNDESIRABLE, A ^T (SEE ABOVE) SHOULD BE USED BETWEEN
THE ^] AND THE ^X (^]^T^X). CHARACTERS ARE
NOT NORMALLY PROTECTED FROM BEING INTERPRETED
SPECIALLY IN SEARCHES, ETC. IF THIS IS DESIRED,
USE ^S.
(EG. ER^]^S^X BAR$ WILL CAUSE THE FILE
<MACRO ARGUMENT> BAR TO BE SELECTED FOR READ,
EVEN IF THE MACRO ARGUMENT HAS SPACES,
SEMICOLONS, ETC. IN IT.)
IF THE ONE CHARACTER FLAG HAD BEEN ON
ONLY ONE CHARACTER WILL BE READ AS AN ARGUMENT
INSTEAD OF AN ENTIRE STRING. (THIS DOESN WORK YET,
BUT WILL SHORTLY)
^Y ACTS LIKE ^]^X, BUT ONLY ONE CHARACTER IS TAKEN
FROM THE PREVIOUS COMMAND LEVEL. HAS THE SAME
EFFECT AS ^]^F^X. ADDITIONAL ^] CALLS WILL BE
CHAINED THROUGH, WITH THE FINAL CHARACTER COM-
MING FROM THE LAST COMMAND LEVEL NOT INDIRECTED.
$ (ALTMODE) PASS A SUPERQUOTED ALTMODE
BACK TO TECO (SAME AS ^]^Q$ )
^] PASS AN ACTUAL ^] TO TECO
$ (DOLLARSIGN) PASS AN ORDINARY
ALTMODE BACK TO TECO (SEE ^X ABOVE)
0-9 THE CURRENT COMMAND BUFFER IS PUSHED ONTO
THE MACRO PDL, AND THE Q-REGISTER NAMED
BY THE CHARACTER READ BECOMES THE NEW
COMMAND BUFFER. (EG. I^]1$ IS THE SAME
AS G1.) PROTECTION (SUPERQUOTING) IS THE SAME AS IN
^X (QV)
@ @ CAUSES FOLLOWING CHARACTERS
TO BE INTERPRETED AS IF THEY HAD A ^] PRECEDING THEM
THEN THE ^] WHICH THE @ WAS A PART OF CONTINUES
READING FROM THE NEW COMMAND BUFFER.
A-Z LIKE 0-9 (INSERT Q-REG)
THERE ARE PROBABLY SEVERAL BUGS IN ^] CURRENTLY. IF
YOU ENCOUNTER ANY, INFORM RSL OR CMM. SUGGESTIONS/
CRITICISMS ARE WELCOME.
^^ (CTL SHIFT N) VAL=7-BIT ASCII
VALUE OF IMMEDIATELY FOLLOWING
CHAR IN COMMAND STRING.
^@ (CTL SHIFT P) VAL=TIME SYS HAS BEEN
RUNNING IN 60THS OF A SECOND.
SPACE SAME AS +
! !LABEL! DEFINES LABEL FOR USE BY
O COMMAND (Q.V.).
" IF NEXT CHAR IS E, N, G, OR L,
COMPARES ARG TO 0 AND EXECUTES
COMMANDS UP TO MATCHING ' ONLY IF
COMPARISON SUCCEEDS (ARG =, NOT =,
>, < 0). IF FOLLOWING CHAR IS C,
EXECUTE COMMANDS UP TO MATCHING '
ONLY IF ARG IS THE 7-BIT ASCII VALUE
OF A SQUOZE CODE CHAR (LETTERS,
DIGITS, . $ (DOLLAR, NOT ALTMODE) OR
%).
# INCLUSIVE OR
$ (DOLLAR SIGN) SET TTY I/O MODE: -1$
CAUSES (UPPER CASE) LETTERS TYPED
AT DATAPOINT OR 35 TTY TO BE TREATED
AS LOWER CASE LETTERS UNLESS PRECEDED
BY SLASH (TYPE // TO ENTER /). ON
TYPEOUT, UPPER CASE LETTERS AND /
WILL BE PRECEDED BY /. 1$ ENTERS
MODE WHEREIN LOWER CASE LETTERS TYPED
IN ARE TREATED AS UPPER CASE. 0$ IS
NORMAL MODE.
% TAKES FOLLOWING CHAR AS Q-REGISTER
NAME (A-Z OR 0-9), ADDS ONE TO # IN
THAT Q-REGISTER, AND RETURNS VAL=NEW
VALUE OF Q-REG. MEANINGLESS IF
Q-REG CONTAINS TEXT RATHER THAN #.
& LOGICAL AND
' TERMINATES COMMAND STRING
CONDITIONALLY EXECUTED BY
MATCHING " (Q.V.).
(,) FILL USUAL ROLE OF PARENTHESES IN
ARITHMETIC CALCULATIONS.
* MULTIPLICATION
+ ADDITION
, SEPARATES ARGUMENTS FOR COMMANDS
TAKING TWO NUMERIC ARGUMENTS
- SUBTRACTION
. VAL=NUMBER OF CHARS TO LEFT OF
POINTER IN BUFFER.
/ DIVISION
0-9 A STRING OF DIGITS IS A COMMAND
WHOSE VALUE IS A DECIMAL INTEGER,
WITH OPTIONAL PRECEDING -. IF THE
STRING OF DIGITS IS FOLLOWED BY A
. IT RETURNS VAL=OCTAL NUMBER WITH
THAT STRING OF DIGITS.
: USED IMMEDIATELY BEFORE CERTAIN
COMMANDS (I.E., AFTER ARG IF ANY),
MODIFIES FUNCTION OF THAT COMMAND
IN A WAY DESCRIBED SEPARATELY FOR
EACH SUCH COMMAND. IF THE FOLLOWING
COMMAND DOES NOT USE THE COLON, IT WILL
PROBABLY MIGRATE TO THE NEXT COMMAND.
; DOES NOTHING IF ARG<0. OTHERWISE
SENDS COMMAND EXECUTION TO CHAR
AFTER NEXT > (SEE < DESCRIPTION).
IF NO ARG, USES VALUE RETURNED BY
LAST SEARCH (SEE S) AS ARG.
< BEGIN ITERATION. COMMANDS FROM HERE
TO MATCHING > ARE EXECUTED ARG TIMES
IF THERE IS AN ARG OR INDEFINITELY IF
NO ARG. EXECUTION OF ITERATION CAN
BE TERMINATED BY ; COMMAND (Q.V.).
= TYPES OUT VALUE OF ARG IN DECIMAL
> END OF ITERATION (SEE <)
? IF THIS IS THE FIRST CHAR INPUT AFTER
TYPEOUT OF AN ERROR MESSAGE FROM TECO
SEVERAL COMMAND CHARS BEFORE THE ONE
CAUSING THE ERROR WILL BE TYPED.
OTHERWISE, ENTER TRACE MODE:
WHEN IN TRACE MODE ALL COMMAND
CHARS ARE TYPED OUT AS THEY ARE
EXECUTED. TYPE TWO SUCCESSIVE ?'S
TO GET OUT OF TRACE MODE.
A IF NO ARG, APPEND NEXT PAGE OF
INPUT FILE TO CURRENT CONTENTS OF
BUFFER, I.E., LIKE Y ONLY DON'T
EMPTY BUFFER FIRST. IF ARG, VAL=
7-BIT ASCII VALUE OF CHAR ARG CHARS
TO THE RIGHT OF THE POINTER. NOTE THAT
0A IS THE CHARACTER IMMEDIATELY TO THE LEFT OF
THE POINTER AND -<ARG>A IS THE CHARACTER <ARG>+1
CHARACTERS LEFT OF THE POINTER.
B VAL=0
C MOVE POINTER ARG CHARS TO THE RIGHT
(ONE IF NO ARG).
D DELETE ARG CHARS TO RIGHT OF POINTER.
IF ARG<0, DELETE TO LEFT OF POINTER.
E FIRST CHAR OF 2-CHAR COMMAND NAME:
E^U DISPLAY ON 340 OR DATAPOINT FILE
DIRECTORY OF DEVICE SPECIFIED BY
FOLLOWING TEXT STRING, E.G., E^UDSK$.
E_ E-<SHIFT OH> COPY FILE SPECIFIED BY
FIRST TEXT STRING FOLLOWING INTO
FILE SPECIFIED BY SECOND TEXT STRING
FOLLOWING.
EA DO .ASSIGN ON DECTAPE DRIVE ARG
(0<ARG<5), I.E., DO NOT LET ANY
PROGRAM WITH A SYSTEM NAME OTHER
THAN THE USER NAME OF THIS PROGRAM
WRITE ON THAT TAPE.
EB DISPLAY FILE DIRECTORY OF DEVICE SPECIFIED
BY ARGUMENT (SEE EI) ONLY WORKS IF LAST
COMMAND IN COMMAND STRING. OTHERWISE,
THIS IS A COMPLETE NO-OP.
ED DELETE FILE SPECIFIED BY FOLLOWING
TEXT STRING.
EE LIKE INFINITY P COMMANDS THEN EF.
EF FILE OUTPUT ACCUMULATED BY PW AND
P COMMANDS WITH FILE NAME SPECIFIED
BY FOLLOWING TEXT STRING. (PW AND
P COMMANDS MUST HAVE BEEN PRECEDED BY
EW OR EI TO SET OUTPUT DEVICE.)
EG INSERT IN BUFFER THE CURRENT DATE,
CURRENT TIME, CURRENT SYSTEM NAME OF
THIS JOB, AND DEFAULT FILE NAMES
FOR READING.
EI OPEN FOR WRITING DECTAPE # ARG IF
0<ARG<5, DSK IF ARG=0, OR LAST
DEVICE OPENED FOR WRITING IF NO ARG.
EK UNLOAD DECTAPE # ARG (0<ARG<5).
EL TYPE FILE DIRECTORY OF DEVICE
SPECIFIED BY ARG AS IN EI.
EM INSERT IN BUFFER FILE DIRECTORY OF
DEVICE SPECIFIED AS IN EI.
EN RENAME FILE SPECIFIED BY FIRST
FOLLOWING TEXT STRING WITH NAME IN
SECOND FOLLOWING TEXT STRING.
EO SET THE .DMPCHK BIT OF SPECIFIED FILE
(AS IF IT HAD ALREADY BEEN DUMPED ON TAPE).
EP DOES ER, THEN BIGPRINTS FILE NAME
TWICE ON DEVICE(S) OPEN FOR WRITING.
EQ ESTABLISH LINK WITH NAME SPECIFIED
BY FIRST FOLLOWING TEXT STRING TO
FILE SPECIFIED BY SECOND FOLLOWING
TEXT STRING. DEVICE IS DSK UNLESS
DEV: NOTATION IS USED IN FIRST FILE
SPECIFICATION.
ER OPEN FOR READING FILE SPECIFIED BY
FOLLOWING TEXT STRING. (PRECEDING
ARG MAY BE USED TO SPECIFY DEVICE
AS IN EI.)
ES RENAME DECTAPE: TAKES NUMERIC ARG AS
DRIVE NUMBER, AND 3-CHAR TEXT ARG
(FOLLOWED BY ALTMODE) AS TAPE NAME.
ET READS IN A FILE-SPEC STRING ARG BUT IS OTHERWISE
A NO-OP. USEFUL FOR SETTING THE DEFAULTS.
ALSO DISPLAYS THE DIRECTORY IF AT END OF COMMAND STRING.
EU DEASSIGN DECTAPE # ARG (SEE EA).
EW LIKE EI BUT DEVICE SPECIFIED BY
FOLLOWING TEXT STRING RATHER THAN
PRECEDING ARG.
EX 1ST, READS IN A STRING ARGUMENT AS A FILE NAME.
THEN, IF AN OUTPUT FILE IS OPEN, ACTS LIKE EE.
(IN THIS CASE, THE ARG MAY NOT HAVE A DEVICE OR SNAME)
THEN, TELLS DDT TO TELL MIDAS TO
ASSEMBLE THE PROGRAM, AND TO LOAD
IT INTO A JOB NAMED DEBUG.
WHEN TECO IS PROCEDED LATER THE SCREEN WILL BE CLEARED
AND THE EXECUTION OF THE COMMAND STRING WILL CONTINUE.
:EX IS SIMILAR BUT WILL DIRECT MIDAS TO CREF THE
PROGRAM AND DDT TO RUN CREF, OUTPUTTING TO THE TPL,
AND ALSO CAUSES TECO TO RUN WITHOUT THE TTY,
GENERATING AN @-STYLE LISTING.
EY LIKE EL BUT TEXT DEVICE, NOT ARG
EZ LIKE EM BUT ETC.
E[ PUSH INPUT TRANSACTION
NOTE: FOR THIS AND THE NEXT
THREE COMMONDS (E], E\, E^),
THE FILE OPEN FOR INPUT MUST BE
RANDOMLY ACCESSIBLE (=DSK). THE ONE
OPEN FOR OUTPUT NEED NOT BE.
E] POP INTO INPUT TRANSACTION - QUIT
ANY TRANSACTION
IN PROGRESS AND RESTORE THE LAST
INPUT TRANSACTION PUSHED.
(SEE E[.)
E\ PUSH OUTPUT TRANSACTION.
(SEE E[.)
E^ E-UPARROW) POP INTO OUTPUT TRANSACTION
QUIT ANY OUTPUT IN PROGRESS
(FILING AS .TECO. OUTPUT) AND
RESTORE THE LAST OUTPUT TRANSACTION
PUSHED.
(SEE E[.)
F IN NON-TIMESHARING, FEED THE PAPER TAPE
IN TIMESHARING, DECODED BY FIRST CHARACTER AS
FOLLOWS:
F^D SAME AS FS 340 SCALE$
F$ SAME AS FS LOWER CASE$
FC TAKES ARGUMENTS LIKE K AND
CONVERTS THE SPECIFIED PORTION OF THE BUFFER TO
LOWER-CASE. SLASHES CAUSE THE FOLLOWING CHARACTER
NOT TO BE CONVERTED. THE SLASHES THEMSELVES ARE FLUSHED
BY THE COMMAND
FI INPUT ONE CHARACTER FROM THE TTY AND RETURN ITS
ASCII VALUE. (SAME AS VW WITHOUT THE V)
FJ INSERT THE JOB'S COMMAND STRING AS READ FROM DDT
IN THE BUFFER. WILL NORMALLY END WITH A CR-LF
BUT MAY BE NULL.
FK -MINUS THE LENGTH OF THE LAST
SEARCH STRING FOUND (POSITIVE THE LENGTH IF THE LAST SEARCH
WAS NEGATIVE) THUS SFOO$FKC
WILL MOVE TO THE BEGINNING OF THE FOO FOUND.
FL USED FOR HACKING LISTS. IT IS FURTHER DECODED BY
A THIRD LETTER, AS FOLLOWS:
FLC "CAREFUL" DELETE. GOBBLES THE NEXT
CHARACTER FROM THE COMMAND BUFFER AND USES IT AS
A Q-REGISTER NAME. IT THEN MOVES RIGHT
OVER ARG LISTS (LEFT IF ARG <0) AND
PUTS THEM INTO THE Q-REGISTER. (IF THE COMMAND
IS PRECEEDED BY A COLON, IT MOVES
TO THE FRONT OF THE LAST LIST
INSTEAD OF MOVING OVER IT. FINALLY,
IT DELETES THE LISTS FROM THE BUFFER.
A LIST IS DEFINED AS A GROUP
OF CHARACTERS SURROUNDED BY PARENTHESES
WHERE THE CHARACTERS ARE BALANCED WITH
RESPECT TO PARENTHESES. PARENTHESES PRECEDED
BY A SLASH ARE NOT CONSIDERED "REAL" PARENTHESES.
FLD MOVE RIGHT FROM . UNTIL
THE NUMBER OF ( EXCEEDS THE NUMBER OF ) BY ARG.
IF ARG IS NEGATIVE, MOVE LEFT.
FLK DO AN FLC, WITHOUT SAVING IN A QREGISTER
FLL MOVE LEFT OVER ARG LISTS (RIGHT IF ARG IS NEGATIVE)
FLR MOVE RIGHT OVER ARG LISTS (LEFT IF ARG IS NEGATIVE)
FLU MOVE RIGHT FROM . UNTIL THE NUMBER OF )'S EXCEEDS
THE NUMBER OF ('S BY ARG (LEFT IF ARG IS NEGATIVE)
FLX DO AN FLC, WITHOUT DELETING THE LISTS.
FQ TAKES A Q-REGISTER NAME, AND RETURNS THE NUMBER
OF CHARACTERS IN THAT Q-REGISTER. (-1 IS RETURNED IF
THE Q-REGISTER DOESN'T CONTAIN A STRING)
FS READS IN A FLAG NAME AS A TEXT ARGUMENT.
FLAG NAMES MAY BE ANY LENGTH, BUT ONLY THE
FIRST SIX CHARACTERS ARE SIGNIFICANT.
SPACES ARE TOTALLY IGNORED. ONLY ENOUGH
OF THE FLAG NAME TO MAKE IT NON-AMBIGUOUS
IS REQUIRED. THE RESULT OF THE FS IS THE
CURRENT VALUE OF THE FLAG. IF AN
ARGUMENT IS GIVEN TO THE FS, THE FLAG
IS THEN SET TO THAT VALUE. FLAGS CURRENTLY
IMPLEMENTED ARE:
FS 340 OR IF TECO HAS THE 340, THE VALUE IS THE SCALE
FS 340 SCALE OTHERWISE THE VALUE IS -1
FS CHCTWN IF NON-ZERO, CAUSE CONTINUATION TO HAPPEN
ON THE FIRST CHARACTER THAT DOESN'T FIT
RATHER THAN THE LAST CHARACTER THAT FITS.
(YOU PROBABLY DONT WANT TO CHANGE THIS
ON DATAPOINTS)
FS HEIGHT NUMBER OF LINES ON A DATAPOINT
OR OTHER GRAPHICS TERMINAL. (INCLUDING
--MORE-- AND COMMAND LINES.) THIS
FLAG DOESN'T WANT TO BE CHANGED.
FS H POSITION RETURNS THE NUMBER OF CHARACTER POSITIONS
THERE WOULD BE TO THE LEFT OF THE TYPE BALL
IF THE CONTENTS OF THE BUFFER (OR AT LEAST
EVERYTHING AFTER THE PREVIOUS CARRET) WERE
PRINTED ON A HARDCOPY TERMINAL WITH HARDWARE
8 CHARACTER TABBING AND BACKSPACE.
FS INSLEN LENGTH OF LAST STRING INSERTED INTO EITHER
A Q-REGISTER OR THE BUFFER
FS LINES THE WINDOW SIZE (NUMBER OF LINES ON
EITHER SIDE OF THE CURSOR TO BE TYPED/DISPLAYED
(THIS IS WHAT THE ^N COMMAND SETS)
FS LOWER CASE THIS CONTROLS THE MODE AS SET BY THE
$ COMMAND. (Q.V.)
FS RGETTY 0 IF PRINTING CONSOLE, OTHERWISE NON-ZERO
FS SEARCH THE VALUE STORED BY THE
LAST S WITHIN AN ITERATION (-1 IF WON, 0 IF LOST)
FS TOP LINE NON-ZERO IF THE TOP LINE OF A
DATAPOINT IS USEABLE. (THIS DATES BACK TO
THE DAYS OF LOSING DATAPOINTS.)
FS TRUNCATE NON-ZERO TO TRUNCATE INSTEAD OF
CONTINUING.
FS TTMODE NON-ZERO CAUSES A) DIRECTORIES NOT TO BE DISPLAYED
AND B) THE BUFFER TO BE DISPLAYED ON TTY'S.
FS VERSION THE CURRENT TECO VERSION NUMBER
(THIS FLAG CAN NOT BE WRITTEN INTO.)
FS WIDTH NUMBER OF HORIZONTAL POSITIONS BEFORE CONTINUING
OR TRUNCATING
FT TYPES ITS STRING ARGUMENT.
FV DISPLAYS ITS STRING ARGUMENT.
FW SIMILAR TO FL BUT HACKS WORDS INSTEAD.
A WORD IS DEFINED AS ANY SEQUENCE OF CHARACTERS
WHICH ARE EITHER NON-BREAK CHARACTERS OR
APOSTROPHES. (NOTE THAT FLD AND FLU DON'T EXIST)
G INSERT IN BUFFER TO LEFT OF POINTER
THE TEXT IN Q-REGISTER SPECIFIED BY
FOLLOWING CHAR IN COMMAND STRING.
IF Q-REG SPECIFIED CONTAINS # RATHER
THAN TEXT, DECIMAL REPRESENTATION
THEREOF WILL BE INSERTED.
H EQUVALENT TO B,Z; I.E., SPECIFIES
WHOLE BUFFER TO COMMANDS TAKING TWO
ARGS FOR CHARACTER POSITIONS LIKE
K, T, OR V.
I IF NO ARG, INSERT FOLLOWING CHARS
UP TO ALTMODE IN BUFFER TO RIGHT OF
POINTER. IF PRECEDED BY SHIFT N
(OR CIRCUMFLEX ON MODEL 37 TTY),
FOLLOWING CHAR IS DELIMITER TO END
TEXT STRING INSTEAD OF ALTMODE,
E.G., ^I/TEXT/.
THE COMMAND :I WORKS LIKE I BUT TAKES
A Q-REGISTER NAME IMMEDIATELY AFTER
THE I AND INSERTS INTO THAT Q-REG,
REPLACING THE PREVIOUS CONTENTS.
UPARROW (SHIFT N) WORKS AS WITH THE
NORMAL I COMMAND, WITH THE DELIMITER
FOLLOWING THE Q-REG NAME. :I WILL
NOT TAKE A NUMERIC ARG (SEE BELOW),
NOR WILL SELF-INSERTING CHARS TAKE
THE COLON MODIFIER.
IF ARG, INSERT CHAR WITH 7-BIT ASCII
VALUE ARG AFTER POINTER.
J POSITION POINTER AFTER ARGTH CHAR
IN BUFFER. IF NO ARG, ARG=0.
K IF NO ARG OR ONE ARG, KILL CHARS
FROM POINTER TO ARGTH LINE FEED
FOLLOWING. (NO ARG, ARG=1; NEGATIVE
ARG, BACK UP OVER 1-ARG LINE FEEDS,
SPACE OVER LAST LINE FEED FOUND, AND
KILL FROM THERE TO POINTER. A COLON
BEFORE THE ARG WILL MOVE BACK OVER
CARRIAGE RETURN+LINEFEED BEFORE DELETING.
IF NO CARRIAGE RETURN EXISTS,
TECO WILL ONLY MOVE BACK ONE CHARACTER.
THERE IS AN IMPLICIT LINE-FEED AT THE END OF
THE BUFFER. (NOTE: THIS IS THE ACTION COLON
FOR ALL COMMANDS WHICH TAKE
ONE OR TWO ARGS LIKE K.)
TWO ARGS, KILL FROM ARG1+1TH TO
ARG2TH CHAR IN BUFFER. MOVE POINTER
TO WHERE DELETION TOOK PLACE.
L MOVE TO BEGINNING OF ARGTH LINE AFTER
POINTER. (0L IS BEGINNING OF CURRENT
LINE.) COLON ACTS AS IN THE K COMMAND.
NOTE THAT :L MOVES TO END OF CURRENT LINE
0:L MOVES TO END OF PREVIOUS LINE
AND -:L MOVES TO END OF LINE BEFORE
PREVIOUS LINE
M EXECUTE TEXT IN Q-REGISTER NAMED BY
NEXT CHAR AS TECO COMMANDS. ONE OR
TWO ARGS TO M COMMAND MAY BE
USED BY THE MACRO BY USING ^X AND ^Y
COMMANDS. NOTE: THE EFFECT IS TO
INSERT THE TEXT IN THE Q-REG INTO THE
COMMAND STRING IN PLACE OF THE M,
I.E., ANY ACCUMULATED VALUE BEFORE M
(ARG OF M) WILL BE SEEN BY THE
MACRO'S FIRST COMMAND.
:M DOES THE SAME THING AS M, EXCEPT THAT
IT IS A JRST INSTEAD OF A PUSHJ. IE.,
WHEN A :M-CALLED MACRO TERMINATES, IT
ACTS AS IF THE MACRO CALLING IT
HAD TERMINATED. :M DOES NOT SET ^X AND ^Y -
THESE RETURN THE SAME THING AS THEY DID
IN THE CALLING MACRO.
N DOES SEARCH (SEE S) BUT IF END OF
BUFFER IS REACHED DOES P AND
CONTINUES SEARCH.
O SENDS COMMAND EXECUTION TO CHAR AFTER
LABEL SPECIFIED BY FOLLOWING TEXT
STRING, I.E., OX$ GOES TO !X!.
LABEL MUST BE ON SAME ITERATION
LEVEL AS O COMMAND, I.E., NO
UNMATCHED < OR > BETWEEN O AND !.
P OUTPUT CONTENTS OF BUFFER TO DEVICE
OPEN FOR WRITING, FOLLOWED BY FORM
FEED (^L); CLEAR BUFFER AND READ
INTO BUFFER FROM FILE OPEN FOR
READING UNTIL NEXT FORM FEED OR END
OF FILE. TAKES ONE ARG, MEANING
DO IT ARG TIMES, OR TWO ARGS, MEANING
OUTPUT SPECIFIED PORTION OF BUFFER
(ARGS AS IN K COMMAND) WITHOUT
FOLLOWING FORM FEED, AND WITHOUT
CLEARING BUFFER OR DOING INPUT.
NOTE: IF NEXT COMMAND CHAR
IS W, THIS IS NOT P COMMAND BUT
PW WHICH OUTPUTS LIKE P BUT DOES NOT
CLEAR BUFFER OR DO INPUT. TAKES
ARG, MEANING DO IT ARG TIMES.
Q VAL=NUMBER IN Q-REGISTER SPECIFIED
BY NEXT CHAR.
R MOVE POINTER LEFT ARG CHARS (NO ARG,
ARG=1).
S SEARCH. TAKES FOLLOWING TEXT STRING
AND LOOKS FOR IT IN THE BUFFER,
STARTING FROM THE POINTER. IF IT
FINDS IT, IT POSITIONS THE
POINTER AFTER THE STRING. IF IT
DOES NOT FIND IT, IT DOES NOT
MOVE THE POINTER BUT GENERATES AN
ERROR MESSAGE UNLESS THE SEARCH IS
INSIDE AN ITERATION (SEE <). IF
THE SEARCH IS INSIDE AN ITERATION,
THE VALUE PRODUCED BY :S (READ ON)
WILL BE SAVED WHETHER OR NOT THE
COLON IS USED, FOR USE BY THE ;
COMMAND. A POSITIVE ARG
MEANS DO IT ARG TIMES, I.E., FIND THE
ARGTH APPEARANCE OF THE STRING; A
NEGATIVE ARG MEANS SEARCH THE BUFFER
BACKWARDS FROM THE POINTER AND
POSITION THE POINTER TO THE LEFT OF
THE STRING IF SUCCESSFUL. IF THE S IS
PRECEDED BY SHIFT N, THE CHAR AFTER
THE S IS USED TO DELIMIT THE TEXT
STRING INSTEAD OF ALTMODE. IF THE
S IS PRECEDED BY :, VAL=-1 IF THE
SEARCH IS SUCCESSFUL AND VAL=0 IF
NOT--THERE IS NO ERROR CONDITION.
NOTE ALSO N AND _ COMMANDS.
THERE ARE SOME SPECIAL CHARACTERS
USED INSIDE SEARCH STRINGS WHICH
DO NOT HAVE THEIR USUAL MEANINGS:
^B MATCHES ANY CHAR OTHER THAN
A-Z, 0-9, AND . $ AND %.
^N MATCHES ANY CHAR OTHER THAN
THE CHAR FOLLOWING IT IN THE SEARCH
STRING (I.E., "NOT").
^O DIVIDES THE STRING INTO SUBSTRINGS
SEARCHED FOR SIMULTANEOUSLY. ANY ONE
OF THESE STRINGS, IF FOUND, SATISFIES
THE SEARCH. IF :S IS USED,
FINDING THE NTH SUBSTRING SETS VAL=-N.
^Q QUOTES THE FOLLOWING CHAR, I.E.,
DEPRIVES IT OF SPECIAL SIGNIFICANCE.
THE DELIMITER AND RUBOUT CANNOT
BE QUOTED.
^X MATCHES ANY CHAR.
NOTE THAT SFOO^O$ WILL MOVE THE POINTER
OVER THE NEXT THREE CHARACTERS
IF AND ONLY IF THEY ARE FOO. IT WILL ALWAYS
SUCCEED. HOWEVER, -2-:SFOO^O$ DOES THE
RIGHT THINGS.
T TYPE: TAKES ONE OR TWO ARGS LIKE K
AND TYPES OUT THE SELECTED CHARS.
U SETS VALUE IN Q-REGISTER NAMED BY
FOLLOWING CHAR TO ARG.
V TAKES ARG LIKE K AND DISPLAYS CHARS
ON 340 OR DATAPOINT, REPRESENTING THE CURSOR
BY "/\" OR "!" DEPENDING ON DESTINATION OF OUTPUT.
NOTHING IS TYPED ON ORDINARY TTYS.
IF FOLLOWED BY W BECOMES
VW WHICH DOES V, THEN WAITS FOR TTY
INPUT OF ONE CHAR WHOSE 7-BIT ASCII
VALUE IS RETURNED AS VAL.
W FLUSHES CURRENT VALUE EXCEPT WHEN
PART OF VW, WHICH SETS VAL.
X TAKES ONE OR TWO ARGS LIKE K AND
ENTERS SELECTED CHARS AS TEXT INTO
Q-REGISTER NAMED BY NEXT CHAR IN
COMMAND STRING. CAN BE RETRIEVED
BY G COMMAND, Q.V.
THE MAXIMUM NUMBER OF CHARACTERS
THAT CAN BE CONTAINED BY A Q-REG
IS 16,384. (40000 OCTAL)
UPARROW (SHIFT N) X ACTS LIKE X BUT
APPENDS TEXT TO Q-REG RATHER THAN
REPLACING Q-REG CONTENTS. NOTE: ARGS
GO BETWEEN UPARROW AND X. IF Q-REG
DOES NOT ALREADY CONTAIN TEXT THIS
WORKS LIKE ORDINARY X.
SEE ALSO :I.
Y CLEARS BUFFER AND READS INTO IT
FROM FILE OPEN FOR READING UP TO
FORM FEED OR END OF FILE.
Z VAL=NUMBER OF CHARS IN BUFFER
[ (SHIFT K) PUSH TEXT OR NUMBER IN
Q-REGISTER NAMED BY NEXT CHAR ONTO
Q-REG PDL. NOTE: THERE IS ONLY
ONE Q-REG PDL, NOT ONE PER Q-REG.
\ (SHIFT L) IF NO ARG, VAL=NUMBER
REPRESENTED AS OPTIONALLY SIGNED
DECIMAL OR OCTAL-WITH-POINT DIGITS
TO RIGHT OF POINTER IN BUFFER.
MOVES POINTER TO RIGHT OF NUMBER.
IF ONE ARG, INSERTS DECIMAL
REPRESENTATION OF ARG IN BUFFER TO
RIGHT OF POINTER. IF TWO ARGS, FIRST
SPECIFIES FIELD SIZE SUCH THAT IF
2ND IS SHORTER THAN THAT MANY CHARS
LEADING BLANKS WILL BE ADDED.
] (SHIFT M) POP FROM Q-REGISTER PDL
INTO Q-REG NAMED BY NEXT CHAR.
^ (SHIFT N) USED WITH I, N, S,
AND _ COMMANDS TO SPECIFY TEXT
DELIMITER OTHER THAN ALTMODE.
_ (SHIFT OH) LIKE S, ONLY AT END
OF BUFFER DO Y COMMAND
AND CONTINUE SEARCH UNTIL END
OF FILE ON INPUT OR UNTIL
TEXT STRING FOUND.
@ (SHIFT P) SAME AS ^O, BUT OUTPUT IS TO
LINE PRINTER ONLY REGARDLESS OF
WHAT DEVICE(S) IS OPEN FOR WRITING
(USES PSEUDO-LPT IF LPT BUSY).
DOESN'T TAKE ARGUMENT<0.
RUBOUT DELETES LAST CHAR TYPED IN, AND TYPES
DELETED CHAR. DONE DURING TYPEIN,
NOT DURING COMMAND EXECUTION.
LOWER CASE LETTERS ARE INTERPRETED LIKE
UPPER CASE LETTERS WHEN THEY ARE COMMANDS.
INSIDE INSERT AND SEARCH STRINGS THEY ARE
TREATED AS THEMSELVES.
":TECO FOO BAR
" TYPED AT DDT CAUSES
ET FOO BAR $ EI ER$ Y$$
TO BE DONE BY TECO -- THAT IS, TECO STARTS EDITING FOO BAR.
":TECO FOO
" EDITS FOO > . THIS IS THE ONLY TIME TECO TREATS
A SINGLE FILE NAME AS THE 1ST NAME RATHER THAN THE SECOND.
THIS WILL HAPPEN ONLY IF THERE IS NO .TECO. (INIT) FILE.
IF THERE IS ONE, IT CAN READ THE COMMAND STRING WITH THE FJ
COMMAND AND DO WHATEVER IT WANTS TO.