
				CHAPTER I

				  EDIT11

THE PDP-11 DISK EDIT11 (EDIT11) IS A TEXT EDITING PROGRAM FOR USE WITH
THE PDP-11 DISK OPERATING SYSTEM.  OPERATED BY USER COMMANDS FROM THE
KEYBOARD, EDIT11 WILL READ ASCII FILES FROM ANY DEVICE, MAKE DIRECTED
CHANGES, AND WRITE ON ANY DEVICE.  IN ADDITION TO BASIC EDITING FUNC-
TIONS, EDIT11 PROVIDES FOR COMMAND MACROS AND MULTIPLE INPUT AND OUTPUT
FILES.

1.1	GENERAL DESCRIPTION

	AFTER INITIALIZATION, EDIT11 INDICATES READINESS TO ACCEPT A
	COMMAND STRING BY TYPING AN ASTERISK (*).  THE USER, THROUGH
	APPROPRIATE COMMANDS TYPED ON THE KEYBOARD, CAUSES EDIT11 TO
	(1) READ A "PAGE" OF TEXT FROM THE INPUT FILE, (2) LOCATE THAT
	TEXT IN THE BUFFER TO BE CHANGED, (3) EXECUTE AND VERIFY THOSE
	CHANGES, (4) OUTPUT THE PAGE ON THE OUTPUT FILE, (5) AND
	PROCEED IN THE SAME MANNER TO THE END OF HIS INPUT FILE.  AFTER
	THE LAST PAGE OF INPUT IS PROCESSED, THE USER CLOSES HIS OUTPUT
	FILE AND RETURNS TO DISK MONITOR CONTROL.  THE BASIC EDITING
	PROCESS ABOVE IS QUITE FLEXIBLE AND MADE SIMPLE BY EDIT11'S
	LARGE SET OF COMMANDS.

	EACH COMMAND TO EDIT11 CONSISTS OF ONE OR TWO LETTERS.  COMMANDS
	ARE TYPED IN A STRING AND SENT TO EDIT11 AS A COMMAND STRING
	WITH APPROPRIATE ARGUMENTS AND TEXT OBJECTS INCLUDED.  EDIT11
	EXECUTES THE COMMAND STRING, ACTING ON THE CONTENTS OF ITS
	INTERNAL PAGE BUFFER, IN WHICH THE INPUT SOURCE IS STORED.

	THE BASIC EDITING PROCESS CAN BE DIVIDED INTO THREE SEQUENTIAL
	STEPS:

	1.  READING OF INPUT TEXT INTO A BUFFER INTERNAL TO EDIT11.

	2.  CHANGES TO THE TEXT STORED IN THE BUFFER.

	3.  OUTPUT OF THE REVISED TEXT INTO A NEW FILE.


				CHAPTER II


2.1	COMMAND MODE AND TEXT MODE

	WHENEVER EDIT11 PRINTS AN * ON THE TELETYPE, IT IS WAITING TO
	RECEIVE A COMMAND STRING, AND IS SAID TO BE IN COMMAND MODE.
	WHILE MOST COMMANDS OPERATE EXCLUSIVELY IN COMMAND MODE, THERE
	ARE EIGHT COMMANDS IN THE EDIT11 COMMAND REPERTOIRE WHICH
	REQUIRE ADDITIONAL TEXT (THE TEXT OBJECT) TO OPERATE UPON.
	HENCE, ALTHOUGH ONE CAN DELETE N CHARACTERS BY SIMPLY TYPING
	ND, THE COMMAND TO INSERT TEXT, I, MUST BE FOLLOWED BY THE TEXT
	TO BE INSERTED, THE TEXT OBJECT.

	THERE ARE TWO WAYS TO PROVIDE THE REQUIRED TEXT OBJECT FOR A
	COMMAND.  IF THE TEXT OBJECT IS SMALL ENOUGH, EDIT11 CAN ACCEPT
	TEXT IN COMMAND MODE IF IT IS SEPARATED FROM THE REST OF THE
	COMMAND STRING BY DELIMITERS.  IF THE TEXT OBJECT IS LONG, OR
	CONTAINS <CR> (CARRIAGE RETURN) OR <LF> (LINE FEED) CHARACTERS,
	THEN THE USER MUST CAUSE EDIT11 TO ENTER TEXT MODE.
2.1  CONT.

	EDIT11 PROCESSING BEGINS IN COMMAND MODE.  WHEN YOU TYPE A
	COMMAND STRING, NO ACTION OCCURS UNTIL YOU COMPLETE THE STRING
	BY STRIKING THE RETURN KEY (OFTEN SYMBOLIZED AS  ).  WHAT
	HAPPENS NEXT DEPENDS ON THE LAST CHARACTER IN THE COMMAND STRING.
	IF THE LAST CHARACTER IN THE STRING IS A COMMAND REQUIRING A
	TEXT OBJECT, EDIT11 WILL ENTER TEXT MODE.  IF THE LAST CHARACTER
	IS NOT A TEXT COMMAND, EDIT11 EXPECTS TO FIND ANY NECESSARY
	TEXT OBJECTS EMBEDDED IN THE COMMAND STRING ITSELF, AND WILL 
	STAY IN COMMAND MODE AS IT EXECUTES THE COMMAND STRING.

	TEXT CAN BE ACCEPTED IN COMMAND MODE IF THE TEXT CONTAINS NO
	RETURN OR LINE FEED CHARACTERS, AND IS SMALL ENOUGH TO FIT ON A
	SINGLE TYPED LINE WITH THE COMMAND STRING.  WHEN EDIT11 FINDS A
	TEXT COMMAND WHICH IS NOT THE LAST COMMAND IN THE COMMAND STRING,
	IT LOOKS AT THE NEXT CHARACTER IN THE STRING AS A TEXT DELIMITER.
	ALL THE CHARACTERS BETWEEN THIS AND THE NEXT OCCURANCE OF THE
	DELIMITER ARE CONSIDERED THE TEXT OBJECT FOR THE COMMAND.  THUS,
	ANY ASCII CHARACTER WHICH DOES NOT APPEAR IN THE TEXT OBJECT IS
	A VALID DELIMITER.

	EXAMPLE:

	  THE FOLLOWING EXAMPLE WILL INSERT "OBJECT", THEN TYPE THE
	  ENTIRE BUFFER ON THE TELETYPE.  NOTE THE DELIMITERS (#) OF
	  THE TEXT OBJECT, (OBJECT), FOR THE INSERT COMMAND (I)

		*I#OBJECT# B /L

	IF THE TEXT OBJECT IS LENGTHY OR CONTAINS RETURN OR LINE FEED
	CHARACTERS, IT CAN ONLY BE ACCEPTED  IF EDIT11 IS IN TEXT
	MODE.  TO ENTER TEXT MODE, TYPE THE TEXT COMMAND OF INTEREST
	AS THE LAST CHARACTER IN THE COMMAND STRING.  WHEN EDIT11
	EXECUTES THIS COMMAND, IT WILL ENTER TEXT MODE, AND ACCEPT TEXT INPUT.
	IT CONTINUES TO ACCEPT TEXT UNTIL THE USER TERMINATES
	TEXT MODE AND RE-ENTERS COMMAND MODE BY TYPING A LINE FEED 
	CHARACTER (SYMBOLIZED AS <LF>).

	NOTE THAT TYPING THE RETURN KEY ALWAYS CAUSES THE PHYSICAL RETURN
	OF THE CARRIAGE TO THE BEGINNING OF THE LINE, AND AUTOMATICALLY
	GENERATES A LINE FEED THEREBY ADVANCING THE CARRIAGE TO A NEW
	LINE.  IN TEXT MODE, THE RETURN KEY SERVES THESE MECHANICAL
	FUNCTIONS, ALLOWING YOU TO CONTINUE TYPING AT THE BEGINNING OF
	A NEW LINE, AND AT THE SAME TIME ENTERS A CARRIAGE RETURN AND
	LINE FEED INTO THE TEXT.  THESE ARE BOTH COUNTED AS CHARACTERS
	EVEN THOUGH THEY DO NOT PRINT.  WHEN YOU WISH TO TERMINATE TEXT
	MODE AND REENTER COMMAND MODE, YOU MUST TYPE THE LINE FEED KEY.
	A TYPED LINE FEED IS NOT CONSIDERED TO BE PART OF THE TEXT
	UNLESS IT IS THE FIRST CHARACTER ENTERED IN TEXT MODE.

	2.1 CONT.

	EXAMPLE:

	  THE FOLLOWING EXAMPLE INSERTS 3 LINES OF TEXT INTO THE BUFFER
	  BY ENTERING TEXT MODE.  NOTE THAT EDIT11 SIGNIFIES ITS RETURN
	  TO COMMAND MODE BY TYPING *.

		*I <CR>

		  BLOOP:	MOV	#17000,(R3)+ <CR>
				BIT	(R4)+,MASK   <CR>
				BNE	BLOOP	     <CR>
		  <LF>
		*

	THE COMMANDS WHICH REQUIRE TEXT OBJECTS ARE INSERT, GET, WHOLE,
	EDIT WHOLE, POSITION, EDIT POSITION, CHANGE AND EXCHANGE.


				CHAPTER III


3.	COMMAND SYNTAX

3.1	THE CHARACTER LOCATION POINTER (DOT)

	ALMOST ALL EDIT11 COMMANDS FUNCTION WITH RESPECT TO A MOVABLE
	REFERENCE POINT, DOT.  THIS CHARACTER POINTER IS NORMALLY LOCATED
	BETWEEN THE MOST RECENT CHARACTER OPERATED UPON AND THE NEXT
	CHARACTER; AND, AT ANY GIVEN TIME, CAN BE THOUGHT OF AS "WHERE
	EDIT11 IS" IN YOUR TEXT.  AS WILL BE SEEN SHORTLY, THERE ARE
	COMMANDS WHICH MOVE DOT ANYWHERE IN THE TEXT, THEREBY REDEFINING
	THE "CURRENT LOCATION" AND ALLOWING GREATER FACILITY IN THE USE
	OF THE OTHER COMMANDS.

3.2	MARK

	IN ADDITION TO DOT, A SECONDARY CHARACTER POINTER KNOWN AS 
	MARK ALSO EXISTS IN EDIT11.  THIS LESS AGILE POINTER IS USED
	WITH GREAT EFFECT TO MARK OR REMEMBER A LOCATION BY MOVING 
	TO DOT AND CONDITIONALLY REMAINING THERE WHILE DOT MOVES ON.
	THUS IT IS POSSIBLE TO THINK OF DOT AS "HERE" AD MARK AS "THERE".
	POSITIONING OF MARK, WHICH IS REFERENCED BY MEANS OF THE ARGUMENT
	@, IS DISCUSSED BELOW IN SEVERAL COMMANDS.

3.3	CHARACTER ORIENTED COMMAND PROPERTIES

	MANY EDIT11 COMMANDS ARE CHARACTER ORIENTED; THAT IS THE ARGUMENT
	TO THE COMMAND SPECIFIES THE NUMBER OF CHARACTERS IN THE TEXT
	BUFFER THE COMMAND IS TO ACT ON.  HENCE, THE NUMBER OF CHARACTERS
	SPECIFIED BY THE ARGUMENT N IS THE SAME IN THE FORWARD (N) AND
	BACKWARD (-N) DIRECTION.  <CR> AND <LF> CHARACTERS EMBEDDED 
	BETWEEN TEXT LINES ARE COUNTED IN CHARACTER ORIENTED COMMANDS,
	AND ARE INDISTINGUISHABLE FROM OTHER CHARACTERS.

3.4	LINE-ORIENTED COMMAND PROPERTIES

	EDIT11 RECOGNIZES A LINE AS A UNIT BY DETECTING A LINE-TERMINATOR
	IN THE TEXT.  THIS MEANS THAT ENDS OF LINES (LINE FEED OR FORM
	FEED CHARACTERS) ARE COUNTED IN LINE-ORIENTED COMMANDS.  THIS IS
	IMPORTANT TO KNOW, PARTICULARLY IF DOT, WHICH IS A CHARACTER 
	LOCATION POINTER, IS NOT POINTING AT THE FIRST CHARACTER OF A
	LINE.  IN SUCH A CASE, AN ARGUMENT N WILL NOT AFFECT THE SAME
	NUMBER OF LINES (FORWARD) AS ITS NEGATIVE (BACKWARD).  FOR
	EXAMPLE, THE ARGUMENT -1 APPLIES TO THE CHARACTER STRING BEGIN-
	NING WITH THE FIRST CHARACTER FOLLOWING THE SECOND PREVIOUS
	END-OF-LINE CHARACTER AND ENDING AT DOT.  ARGUMENT +1 APPLIES
	TO THE CHARACTER STRING BEGINNING AT DOT AND ENDING AT THE
	FIRST END-OF-LINE CHARACTER.  IF DOT IS LOCATED, SAY, IN THE
	CENTER OF A LINE, NOTICE THAT THIS WOULD AFFECT 1-1/2 LINES
	BACK OR 1/2 LINE FORWARD RESPECTIVELY.

3.5	THE PAGE UNIT OF INPUT

	INPUT FILES TO EDIT11 ARE DIVIDED INTO SMALLER, MORE MANAGEABLE
	SEGMENTS CALLED "PAGES".  A PAGE IS TERMINATED, AND THEREFORE
	DEFINED BY A FORM FEED ENTERED INTO THE TEXT WHENEVER A PAGE
	DIVISION IS DESIRED.  A FORM FEED IS ENTERED BY HOLDING DOWN THE
	CTRL KEY AND TYPING L.  ALTHOUGH THE UNIT OF OUTPUT IS THE LINE,
	THE UNIT OF INPUT TO EDIT11 IS THE PAGE, AND IN ORDER TO MAKE
	AN ASCII FILE MORE USABLE, THE USER DIVIDES IT INTO SMALL
	SEGMENTS BY INSERTING FORM FEEDS IN DESIRED PLACES BEFORE OUTPUT
	OCCURS.

3.6	ARGUMENTS

	SOME EDIT11 COMMANDS REQUIRE AN ARGUMENT TO SPECIFY THE PARTICULAR
	PORTION OF TEXT TO BE AFFECTED BY THE COMMAND OR HOW MANY TIMES 
	TO PERFORM THE COMMAND.  IN OTHER COMMANDS THIS SPECIFICATION IS
	IMPLICIT AND ARGUMENTS ARE NOT ALLOWED.

	THE ED-11 COMMAND ARGUMENTS ARE DESCRIBED AS FOLLOWS:

	1.  N STANDS FOR ANY NUMBER FROM 1 TO 32767(10)(2(15)-1) AND MAY,
	    EXCEPT WHERE NOTED, BE PRECEDED BY A + OR -.  IF NO SIGN
	    PRECEDES N, IT IS ASSUMED TO BE A POSITIVE NUMBER.

	    WHERE AN ARGUMENT IS ACCEPTABLE, ITS ABSENCE IMPLIES AN
	    ARGUMENT OF 1 (OR -1 IF A - IS PRESENT).  THE ROLE OF N
	    VARIES ACCORDING TO THE COMMAND IT IS ASSOCIATED WITH.

	2.  0 REFERS TO THE BEGINNING OF THE CURRENT LINE.

	3.  @ REFERS TO A MARKED (DESIGNATED) CHARACTER LOCATION (SEE
	    SECTION 3.2).

	4.  / REFERS TO THE END OF THE PAGE BUFFER.

	THE ROLES OF ALL ARGUMENTS WILL BE EXPLAINED FURTHER WITH THE
	CORRESPONDING COMMANDS WHICH QUALIFY THEM.

3.7	COMMAND STRINGS

	A COMMAND STRING TO EDIT11 CONSISTS OF ONE OR MORE COMMANDS 
	TYPED ON THE SAME LINE.  SPACES ARE NOT ALLOWED BETWEEN A
	COMMAND AND ITS ASSOCIATED ARGUMENT, ALTHOUGH SPACES MAY BE
	INSERTED BETWEEN COMMANDS THEMSELVES IN THE COMMAND STRING.
	THE COMMAND STRING, INCLUDING EMBEDDED TEXT OBJECTS, MUST BE 
	LESS THAN 72 CHARACTERS AND IS TERMINATED BY STRIKING THE
	RETURN KEY.

	****NOTE**** CAUTION MUST BE EXERCISED WHEN USING SPACES IN
	TEXT COMMANDS.  IF A SPACE SEPARATES A TEXT COMMAND FROM ITS
	OBJECT, THE SPACE IS CONSIDERED THE DELIMITER.  HENCE:

	1.  I OBJECT B /L IS LEGAL.

	2.  I #OBJECT#B /L WILL USE #OBJECT#B AS THE TEXT OBJECT.

	3.  I !OBJECT!B/L IS ILLEGAL BECAUSE THERE IS NO SECOND DELIMITER.

	EXAMPLES:
	THE FOLLOWING ARE ALL LEGAL COMMAND STRINGS.

		*B /L B G#OBJECT# <CR>

		*B/L BG#OBJECT#I#TEXT# B/L  <CR>

		*BSKB3L  <CR>

		*-3J -4C#TEXT# 0A L

	WHEN THE USER TYPES A COMMAND STRING TO EDIT11, NOTHING HAPPENS
	UNTIL HE STRIKES THE RETURN KEY.  UPON RECEIPT OF THE RETURN
	CHARACTER, EDIT11 STARTS AT THE BEGINNING OF THE COMMAND STRING
	AND PROCESSES THE COMMANDS ONE AT A TIME.  SHOULD AN ERROR BE
	ENCOUNTERED IN THE MIDDLE OF THE STRING, THOSE COMMANDS BEFORE
	THE ERROR WOULD BE SUCCESSFULLY COMPLETED, AND THOSE FOLLOWING
	THE COMMAND IN ERROR WOULD NOT BE EXECUTED.  IN EFFECT, THE
	COMMAND STRING IS TRUNCATED AT THE ERROR POINT.

3.8	ERROR MESSAGES

	WHENEVER EDIT11 RECEIVES A SYNTACTICALLY INCORRECT COMMAND, OR
	CANNOT EXECUTE A COMMAND PROPERLY, IT RETURNS AN ERROR MESSAGE
	OF THE FORM:

		?XY  WHERE XY IS A NUMERICAL ERROR CODE. (SEE APPENDIX 1, SEC 8.1)

	IF THE ERROR OCCURS AFTER THE FIRST COMMAND IN A COMMAND STRING,
	EDIT11 WILL FOLLOW THE ERROR CODE WITH A SECOND LINE.  THE
	SECOND LINE WILL BE A COPY OF THE COMMAND STRING BEING EXECUTED,
	WITH A _ POINTING TO THE CHARACTER WHERE EDIT11 FOUND THE ERROR.
	THE COMMANDS PRINTED COMPLETELY WERE EXECUTED, THE COMMAND
	POINTED TO IS IN ERROR, AND THE COMMANDS NOT PRINTED ARE NOT
	EXECUTED.  EDIT11 THEN PRINTS AN * AND AWAITS ANOTHER COMMAND
	STRING.

3.8 CONT.

	EXAMPLE:

		*B /L G#TEXT# 6EF I#MORE#  <CR>
		?19
		B /L G#TEXT# 6EF_
		*

	IN MOST CASES, EDIT11 PERFORMS NO ACTION ON RECEIPT OF AN ILLEGAL
	COMMAND.


				CHAPTER IV


4.	INPUT/OUTPUT

	WHEN EDIT11 IS INITIALIZED, IT ASKS FOR A COMMAND STRING TO
	SPECIFY THE INPUT AND OUTPUT DEVICES AND FILES IT WILL USE.
	IN THIS COMMAND STRING, THE USER MUST SPECIFY A PRIMARY INPUT
	AND PRIMARY OUTPUT FILE, AND MAY SPECIFY AN ADDITIONAL INPUT
	AND OUTPUT FILE IF DESIRED.  SEE SECTION 6.2.

4.1	PRIMARY INPUT AND OUTPUT

	THE FIRST INPUT FILE SPECIFIED IS THE PRIMARY INPUT FILE.  THIS
	FILE IS THE ASCII FILE YOU WANT TO EDIT, AND CAN ONLY BE READ.
	THE FIRST OUTPUT FILE SPECIFIED IS THE PRIMARY OUTPUT FILE
	AND IT IS INTO THIS FILE THAT CORRECTED TEXT WILL BE WRITTEN.
	ESSENTIALLY, EDIT11 WILL TRANSFORM THE PRIMARY INPUT FILE INTO
	THE PRIMARY OUTPUT FILE UNDER USER DIRECTION.  IF THE PRIMARY
	INPUT AND OUTPUT FILES HAVE THE SAME NAME AND ARE ON THE SAME
	DEVICE, EDIT11 CREATES THE FILE EDIT11.TMP FOR OUTPUT.  WHEN
	THIS FILE IS CLOSED (BY THE EX OR EF COMMANDS), THE INPUT
	FILE IS RENAMED WITH .BAK AS IT'S EXTENSION.  THE OUTPUT FILE,
	EDIT11 .TMP IS THEN RENAMED TO THE DESIRED NAME.  THIS BACKUP
	FACILITY IS AUTOMATIC, BUT IT CAN BE SUPPRESSED WITH THE /B
	OPTION.  SEE 6.2.

	NOTE:
	----

	DON'T CREATE A FILE OF YOUR OWN WITH THE NAME EDIT11.TMP.
	IT WILL BE DELETED THE NEXT TIME EDIT11 NEEDS THE NAME.

4.2	SECONDARY INPUT AND OUTPUT

	IF A SECOND INPUT OR OUTPUT FILE (OR BOTH) IS SPECIFIED, EDIT11
	WILL ALLOW TEXT TO BE WRITTEN OR READ FROM THESE FILES ALSO.
	THESE FILES ARE UTILITY FILES, DESIGNED TO EASE THE PROCESS OF
	EDITING.  THEY ARE CONTROLLED BY COMMANDS DISTINCT FROM PRIMARY
	INPUT AND OUTPUT COMMANDS.

				CHAPTER V


5.	COMMANDS

5.1	INPUT AND OUTPUT COMMANDS

	FIVE COMMANDS ARE AVAILABLE FOR READING IN A PAGE OF TEXT:
	THE READ AND EDIT READ COMMANDS (SEC 5.1.1)
	ARE SPECIALIZED INPUT COMMANDS; THE NEXT COMMAND (SECTION 5.1.3)
	READS IN A PAGE AFTER WRITING OUT THE PREVIOUS PAGE; AND THE
	WHOLE AND EDIT WHOLE COMMANDS (SEC 5.2.2.2 AND 5.2.2.3)
	READ IN AND WRITE OUT TEXT AS PART OF A SEARCH FOR A SPECIFIED
	CHARACTER STRING.

	OUTPUT COMMANDS EITHER LIST TEST ON THE TELETYPE OR WRITE TEXT
	INTO AN OUTPUT FILE.  THE LIST COMMAND CAUSES SPECIFIED LINES
	OF TEXT TO BE OUTPUT ON THE TELEPRINTER SO THAT THEY MAY BE
	EXAMINED.  WRITE COMMANDS, (NEXT, WHOLE, AND EDIT WHOLE ALSO
	PERFORM INPUT), PROVIDE FOR THE OUTPUT OF SPECIFIED PAGES, LINES,
	FORM FEEDS (FOR CHANGING THE AMOUNT OF DATA THAT CONSTITUTES
	A GIVEN PAGE), AND LEADER/TRAILER.

5.1.1	READ AND EDIT READ

	ONE WAY OF GETTING TEXT INTO STORAGE SO THAT IT CAN BE EDITED
	IS BY MEANS OF THE READ (R) AND EDIT READ (ER) COMMANDS.  THE
	COMMAND R CAUSES A PAGE OF TEXT TO BE READ FROM THE PRIMARY
	INPUT FILE, WHILE THE COMMAND ER READS A PAGE FROM THE
	SECONDARY INPUT FILE.  THE READ TEXT IS APPENDED TO THE CONTENTS
	(IF ANY) OF THE PAGE BUFFER.

	TEXT WILL BE READ IN UNTIL EITHER:

	1.  A FORM FEED CHARACTER (CTRL/L) IS ENCOUNTERED;
	2.  THE PAGE BUFFER IS 128 CHARACTERS FROM BEING FILLED, OR A
	    LINE FEED IS ENCOUNTERED AFTER THE BUFFER HAS COME WITHIN
	    500 CHARACTERS FROM BEING FULL;

	3.  AN END OF FILE OR END OF MEDIUM IS DETECTED ON THE INPUT
	    DEVICE.

	FOLLOWING EXECUTION OF AN R COMMAND, DOT AND MARK WILL BE
	LOCATED AT THE BEGINNING OF THE PAGE BUFFER.

	AN 8K SYSTEM CAN ACCOMMODATE ABOUT 4000 CHARACTERS OF TEXT.
	ALL ADDITIONAL CORE MEMORY IS AVAILABLE FOR TEXT STORAGE, I.E.,
	ABOUT 8000 CHARACTERS OF TEXT FOR EACH ADDITIONAL MEMORY BANK.

				NOTE

	AN ATTEMPT TO OVERFLOW THE STORAGE AREA WILL CAUSE THE COMMAND
	(IN THIS CASE, R) TO STOP EXECUTING.  A ? 5 ERROR MESSAGE WILL
	BE PRINTED.  NO DATA WILL BE LOST.

5.1.2	LIST, WRITE AND EDIT WRITE

	OUTPUT COMMANDS LIST, WRITE, AND EDIT WRITE CAN BE DESCRIBED
	TOGETHER, AS THEY DIFFER ONLY IN THE DEVICE AND FILE ADDRESSED
	LIST (L) OUTPUTS TO THE TELEPRINTER, WRITE (W) OUTPUTS TO THE
	PRIMARY INPUT FILE, AND EDIT WRITE (EW) OUTPUTS TO THE
	SECONDARY INPUT FILE.

	NL	LISTS				THE CHARACTER STRING
	NW	WRITES ON PRIMARY OUTPUT	BEGINNING AT DOT AND
	NEW	WRITES ON SECONDARY OUTPUT	ENDING WITH THE NTH
						END OF LINE

	-NL	LISTS				THE CHARACTER STRING BEGINNING
	-NW	WRITES ON PRIMARY OUTPUT	WITH THE FIRST CHARACTER
	-NEW	WRITES IN SECONDARY OUTPUT	FOLLOWING THE (N+1)TH PREVIOUS
						END OF LINE AND TERMINATING
						AT N.

	0L	LISTS				THE CHARACTER STRING BEGINNING
	0W	WRITES ON PRIMARY OUTPUT	WITH THE FIRST CHARACTER OF
	0EW	WRITES ON SECONDARY OUTPUT	THE CURRENT LINE AND 
						ENDING AT DOT.

	@L	LISTS				THE CHARACTER STRING
	@W	WRITES ON PRIMARY OUTPUT	BETWEEN DOT AND THE
	@EW	WRITES ON SECONDARY OUTPUT	MARKED LOCATION.

	/	LISTS				THE CHARACTER STRING
	/W	WRITES ON PRIMARY OUTPUT	BEGINNING AT DOT AND
	/EW	WRITES ON SECONDARY OUTPUT	ENDING WITH THE LAST
						CHARACTER IN THE PAGE
						BUFFER.

	IN ADDITION TO THE ABOVE LIST COMMANDS, THERE IS A SPECIAL LIST
	COMMAND THAT ACCEPTS NO ARGUMENTS.

	V	LISTS THE ENTIRE LINE CONTAINING DOT

5.1.3	NEXT

	TYPING NN WRITES, ONTO THE PRIMARY OUTPUT FILE, THE ENTIRE
	CONTENTS OF THE PAGE BUFFER (FOLLOWED BY A TRAILER OR NULL
	CHARACTERS IF A FORM FEED IS THE LAST CHARACTER IN THE BUFFER),
	DELETES THE CONTENTS OF THE BUFFER, AND READS THE NEXT PAGE
	FROM THE PRIMARY INPUT FILE INTO THE BUFFER.  IT PERFORMS THIS
	SEQUENCE N TIMES.  FOLLOWING EXECUTION, DOT AND MARK WILL BE
	LOCATED AT THE BEGINNING OF THE PAGE BUFFER.

5.1.4	FORM FEED AND TRAILER

	F	WRITES A FORM FEED CHARACTER (CTRL/L) AND FOUR
		INCHES OF NULL CHARACTERS INTO THE PRIMARY OUTPUT
		FILE.

	NT	WRITES FOUR INCHES OF TRAILER (NULL CHARACTERS)
		N TIMES ON THE PRIMARY OUTPUT DEVICE.

5.2	EDITING COMMANDS

5.2.1	COMMANDS TO MOVE DOT AND MARK

	5.2.1.1	BEGINNING

		B	MOVES DOT TO THE BEGINNING OF THE PAGE BUFFER.

	5.2.1.2	JUMP AND ADVANCE

		NJ		MOVES DOT FORWARD PAST N CHARACTERS.

		NA		MOVES DOT FORWARD PAST N ENDS-OF-LINES TO THE
				BEGINNING OF THE SUCCEEDING LINE.

		-NJ		MOVES DOT BACKWARD PAST N CHARACTERS.

		-NA		MOVES DOT BACKWARD TO THE FIRST CHARACTER 
				FOLLOWING THE (N+1)TH PREVIOUS END-OF-LINE

		0J OR 0A	MOVES DOT TO THE BEGINNING OF THE CURRENT LINE.

		@J OR @A	MOVES DOT TO THE MARKED LOCATION
		@A

		/J OR /A	MOVES DOT TO THE END OF THE PAGE BUFFER

	NOTICE THAT WHILE N MOVES DOT N CHARACTERS IN THE JUMP COMMAND,
	ITS ROLE BECOMES THAT OF A LINE COUNTER IN THE ADVANCE COMMAND.
	HOWEVER, BECAUSE 0, @, AND / ARE ABSOULTE, THEIR USE 
	WITH THESE COMMANDS OVERRIDES LINE/CHARACTER DISTINCTIONS.  THAT
	IS, JUMP AND ADVANCE PERFORM IDENTICAL FUNCTIONS IF BOTH HAVE
	EITHER 0,@, OR / FOR AN ARGUMENT.

	5.2.1.3	MARK

		THE M COMMAND MARKS (REMEMBERS) THE CURRENT POSITION OF
		DOT FOR LATER REFERENCE IN A COMMAND USING THE ARGUMENT @.
		NOTE THAT ONLY ONE POSITION AT A TIME CAN BE IN A MARKED
		STATE.  MARK IS ALSO AFFECTED BY THE EXECUTION OF THE
		FOLLOWING COMMANDS:

			C D H I K N R X EH ER

5.2.2	SEARCH COMMANDS

	5.2.2.1	GET
		THE BASIC SEARCH COMMAND NG STARTS AT DOT AND GETS THE
		NTH OCCURANCE OF THE SPECIFIED TEXT OBJECT IN THE CURRENT
		PAGE BUFFER.  IF NO ARGUMENT IS PRESENT, IT IS ASSUMED
		TO BE 1.  IF THE OBJECT IS TO FOLLOW THE G COMMAND IN THE
		COMMAND STRING, IT MUST BE PROPERLY SET OFF BY DELIMITERS.
		IF G IS THE LAST CHARACTER TYPED IN THE COMMAND STRING,
		EDIT11 WILL ENTER TEXT MODE AND ACCEPT A SEARCH OBJECT OF
		UP TO 72 CHARACTERS.

		THIS COMMAND SETS DOT TO THE POSITION IMMEDIATELY FOLLOWING
		THE FOUND CHARACTER STRING.

		IF THE SEARCH IS UNSUCCESSFUL, DOT WILL BE AT THE END
		OF THE PAGE BUFFER AND A SEARCH?  <CR><LF> ? 13 WILL
		BE PRINTED ON THE TELEPRINTER BEFORE EDIT11 PRINTS AN *.

	5.2.2.2	WHOLE

		A SECOND SEARCH COMMAND, NH, STARTS AT DOT AND LOOKS 
		THROUGH THE WHOLE TEXT FILE FOR THE NTH OCCURRENCE OF THE
		CHARACTER STRING YOU HAVE SPECIFIED AS TEXT OBJECT.
		IT COMBINES A GET AND A NEXT SUCH THAT IF THE SEARCH IS
		NOT SUCCESSFUL IN THE CURRENT PAGE BUFFER, THE CONTENTS
		OF THE BUFFER ARE WRITTEN IN THE PRIMARY OUTPUT FILE,
		THE BUFFER CONTENTS ARE DELETED, AND A NEW PAGE IS READ IN
		FROM THE PRIMARY INPUT, WHERE THE SEARCH IS CONTINUED.
		THIS WILL PROCEED UNTIL THE SEARCH OBJECT IS FOUND
		OR UNTIL THE COMPLETE SOURCE TEXT HAS BEEN SEARCHED.
		IN EITHER CASE MARK WILL BE AT THE BEGINNING OF THE PAGE BUFFER.

		IF THE SEARCH OBJECT IS FOUND, DOT WILL BE LOCATED IMMEDIATELY
		FOLLOWING IT.  AS IN THE GET COMMAND, IF THE SEARCH IS
		NOT SUCCESSFUL DOT WILL BE AT THE END OF THE BUFFER AND
		A ? 13 WILL APPEAR ON THE TELEPRINTER.  UPON COMPLETION
		OF THE COMMAND, EDIT11 WILL BE IN COMMAND MODE.  NOTE
		THAT AN H COMMAND SPECIFYING A NONEXISTENT SEARCH OBJECT
		CAN BE USED TO CLOSE OUT AN EDIT, I.E., COPY ALL
		REMAINING TEXT FROM THE PRIMARY INPUT FILE TO THE
		PRIMARY OUTPUT FILE.

	5.2.2.3	EDIT WHOLE

		A WHOLE SEARCH CAN BE PERFORMED THROUGH THE SECONDARY
		INPUT FILE WITH THE EH COMMAND.  THE EH SEARCH IS
		IDENTICAL TO THE WHOLE COMMAND, EXCEPT THAT THE FILE
		SEARCHED IS THE SECONDARY INPUT, WHILE THE FILE WRITTEN
		INTO IS THE PRIMARY OUTPUT.  NOTE THAT AN EH SEARCH
		FOR A NON-EXISTENT OBJECT IS A METHOD FOR READING
		THE ENTIRE SECONDARY INPUT FILE INTO THE CENTER OR
		ONTO THE END OF THE PRIMARY OUTPUT FILE.

	5.2.2.4	POSITION

		A FOURTH SEARCH COMMAND, NP, IS USED TO POSITION EDIT11
		IN THE PRIMARY INPUT FILE SO THAT A READ COMMAND CAN
		READ THE DESIRED PAGE.  POSITION COMBINES THE GET AND
		READ COMMANDS SO THAT IF THE SEARCH OBJECT IS NOT FOUND
		THE PAGE BUFFER IS CLEARED AND A NEW PAGE IS READ
		FROM THE PRIMARY INPUT AND SEARCHED.  THIS PROCESS
		CONTINUES UNTIL THE SEARCH OBJECT IS FOUND OR
		THE END OF THE FILE IS REACHED.  THE POSITION SEARCH
		IS A WHOLE SEARCH IN WHICH THERE IS DESTRUCTION OF
		UNSUCCESSFULLY SEARCHED PAGES.

		THE POSITION COMMAND WORKS AS FOLLOWS:

		1.  THE CURRENT BUFFER, IF ANY, IS OUTPUT TO THE
		    PRIMARY OUTPUT DEVICE AND CLEARED.
		2.  A PAGE IS READ INTO THE BUFFER AND SEARCHED.
		3.  IF THE SEARCH IS UNSUCCESSFULL, THE PAGE BUFFER
		    IS CLEARED AND STEP 2 IS REPEATED.
		4.  IF THE NTH OCCURANCE IS FOUND, EDIT11 RETURNS
		    WITH THE PAGE IN WHICH THE NTH OCCURANCE RESIDES IN
		    THE BUFFER AND DOT AND MARK AT THE BEGINNING.

		NOTE THAT BEFORE THE SEARCH BEGINS, THE CURRENT PAGE
		BUFFER IS SAVED BY EDIT11 AUTOMATICALLY IN THE PRIMARY
		OUTPUT FILE.  IF THIS BUFFER IS NOT DESIRED, IT MUST BE
		DELETED PRIOR TO SEARCHING.

		NOTE ALSO THAT THE POSITION COMMAND IS MOST USEFUL AS
		A MEANS OF PLACING EDIT11 IN THE INPUT FILE.  IF THE
		EDITING SESSION WISHES TO CREATE A NEW FILE OUT OF THE
		SECOND HALF OF THE INPUT FILE, A POSITION SEARCH WILL
		SAVE TIME.

	5.2.2.5	EDIT POSITION

		THE NEP COMMAND IS IDENTICAL TO THE POSITION COMMAND,
		EXCEPT THAT THE INPUT FILE READ FROM AND SEARCHED IS THE
		SECONDARY INPUT FILE.  NOTE THAT ANY TEXT IN THE BUFFER
		IS OUTPUT TO THE PRIMARY OUTPUT FILE BEFORE THE
		SEARCH BEGINS.

5.2.3	COMMANDS TO MODIFY THE TEXT

	5.2.3.1	INSERT

		THE INSERT COMMAND (I) ALLOWS TEXT TO BE INSERTED AT
		DOT.  AFTER I IS TYPED, EDIT11 NEEDS THE TEXT OBJECT
		TO BE INSERTED.  IF TEXT MODE IS USED, UP TO 72
		CHARACTERS PER LINE ARE ACCEPTABLE, AND EXECUTION OF THE
		COMMAND OCCURS WHEN LINE FEED (WHICH IS NOT INSERTED
		UNLESS IT IS THE FIRST CHARACTER TYPED IN TEXT MODE)
		IS TYPED TERMINATING TEXT MODE.  AT THIS POINT, DOT IS
		LOCATED IN THE POSITION IMMEDIATELY FOLLOWING THE LAST
		INSERTED TEXT CHARACTER.  IF THE MARKED LOCATION WAS
		ANYWHERE AFTER THE TEXT TO BE INSERTED, DOT BECOMES
		THE NEW MARKED LOCATION.

		AS WITH THE READ COMMAND, AN ATTEMPT TO OVERFLOW
		THE PAGE BUFFER WILL CAUSE A ? 5 TO BE PRINTED OUT
		FOLLOWED BY AN * ON THE NEXT LINE INDICATING THAT A
		COMMAND MAY BE TYPED.  ALL OR PART OF THE LAST
		TYPED LINE MAY BE LOST.  ALL PREVIOUSLY TYPED LINES
		WILL BE INSERTED.

	5.2.3.2	DELETE AND KILL COMMANDS

		THE COMMANDS IN THIS CATEGORY ARE CLOSELY RELATED TO
		EACH OTHER.  THE DELETE COMMAND DIFFERS FROM THE KILL
		COMMAND ONLY IN THAT THE FORMER ACCEPTS AN ARGUMENT,
		+ OR - N, THAT COUNTS CHARACTERS TO BE REMOVED, WHILE
		THE LATTER ACCEPTS AN ARGUMENT, + OR - N,
		THAT COUNTS LINES TO BE REMOVED.  0,@, AND / ARE ALSO
		ALLOWED AS ARGUMENTS (SEE SECTION 3.6).  AFTER EXECUTION
		OF EITHER OF THESE COMMANDS, DOT BECOMES THE MARKED
		LOCATION.

	5.2.3.3	CHANGE AND EXCHANGE

		THE CHANGE (C) AND EXCHANGE (X) COMMANDS CAN BE THOUGHT
		OF AS TWO-PHASE COMMANDS COMBINING, RESPECTIVELY,
		AN INSERT FOLLOWED BY A DELETE, AND AN INSERT
		FOLLOWED BY A KILL.  AFTER THE CHANGE OR EXCHANGE
		COMMAND IS TYPED, A TEXT OBJECT IS REQUIRED TO BE
		INSERTED.  IF +N IS USED AS THE ARGUMENT, IT IS THEN
		INTERPRETED AS IN THE DELETE (CHARACTER-ORIENTED) OR
		KILL (LINE-ORIENTED), AND ACCORDINGLY REMOVES THE
		INDICATED TEXT. 0,@, AND / ARE ALSO ALLOWED AS
		ARGUMENTS.

		FOLLOWING EXECUTION OF A CHANGE OR EXCHANGE, DOT IS
		NORMALLY LOCATED JUST AFTER THE INSERTED TEXT.  HOWEVER,
		IN THE CASE OF NEGATIVE ARGUMENTS (I.E.,@, WHENEVER
		MARK IS BEFORE DOT; OR -N AT ALL TIMES), DOT WILL BE
		LOCATED JUST BEFORE THE INSERTED TEXT.  IN EITHER
		INSTANCE, DOT BECOMES THE MARKED LOCATION (SEE SECTION
		3.3.4.4).

	5.2.3.4	SUMMARY OF TEXT REMOVING AND REPLACING COMMANDS

		CHARACTER ORIENTED	CORRESPONDING LINE ORIENTED

	ND	DELETES	THE FOLLOWING	NK	KILLS		THE CHARACTER STRING
	NC#	CHANGES	N CHARACTERS	NX#	EXCHANGES	BEGINNING AT DOT AND
								ENDING AT THE NTH END-
								OF-LINE

	-ND	DELETES	THE PREVIOUS	-NK	KILLS		THE CHARACTER STRING
	-NC#	CHANGES	N CHARACTERS	-NX#	EXCHANGES	BEGINNING WITH THE FIRST
								CHARACTER FOLLOWING
								THE (N+1)TH PREVIOUS
								END-OF-LINE AND END-
								ING AT DOT.

		0D OR 0K	REMOVES		THE CURRENT LINE UP TO DOT
		0C# OF 0X#	REPLACES

		@D OR @K	REMOVES		THE CHARACTER STRING BOUNDED
		@C#3 OR @X#	REPLACES	BY DOT AND THE MARKED LOCATION

		/D OR /K	REMOVES		THE CHARACTER STRING BEGIN-
		/C# OR /X#	REPLACES	NING AT DOT AND ENDING WITH
						THE LAST CHARACTER OF THE PAGE
						BUFFER.

		AGAIN, THE USE OF ABSOLUTE ARGUMENTS 0, @, AND /
		OVERRIDES THE LINE/CHARACTER DISTINCTIONS THAT N
		AND -N PRODUCE IN COMMAND PAIRS DELETE AND KILL, AND
		CHANGE AND EXCHANGE.  EDIT-11 PERFORMS AN M FOLLOWING
		THESE COMMANDS, MOVING MARK TO DOT.

		IF THE INSERT PORTION OF THESE COMMANDS IS TERMINATED BECAUSE
		OF ATTEMPTING TO OVERFLOW THE PAGE BUFFER, DATA FROM
		THE LATEST LINE MAY HAVE BEEN LOST, AND TEXT REMOVAL
		WILL NOT OCCUR.  SUCH BUFFER OVERFLOW MIGHT BE AVOIDED
		BY SEPARATELY EXECUTING A DELETE OR KILL FOLLOWED BY 
		AN INSERT, RATHER THAN A CHANGE OR EXCHANGE, WHICH
		DOES AN INSERT FOLLOWED BY A DELETE OR KILL.

		#SIGNIFYS A COMMAND WHICH REQUIRES A TEXT OBJECT

5.2.4	UTILITY COMMANDS

	THE FOLLOWING COMMANDS PROVIDE EASIER PATHS FOR MORE GENERAL
	EDITING FUNCTIONS.

	5.2.4.1	SAVE

		THE NS COMMAND COPIES THE N LINES BEGINNING AT DOT INTO
		AN EXTERNAL BUFFER CALLED THE SAVE BUFFER.  DOT DOES NOT
		CHANGE, NOR IS THE SAVED TEXT DELETED.  ANY PREVIOUS
		CONTENTS OF THE SAVE BUFFER ARE DESTROYED.  IF THERE
		IS NOT ENOUGH ROOM IN STORAGE TO COPY THE TEXT SPECIFIED,
		A ? 8 ERROR MESSAGE WILL BE PRINTED AND NONE OF THE
		TEXT WILL BE SAVED.  NOTE THAT SAVE IS A LINE ORIENTED
		COMMAND, AND OPERATES ONLY IN THE FORWARD DIRECTION
		THAT IS, NEGATIVE ARGUMENTS ARE NOT ALLOWED.

	5.2.4.2	UNSAVE

		THE U COMMAND INSERTS THE ENTIRE CONTENTS OF THE SAVE
		BUFFER AT DOT ;AND DOT MOVES TO FOLLOW THE LAST CHARACTER
		UNSAVED.  THE SAVE BUFFER INSELF IS RETAINED, AND THE
		SAME SAVE BUFFER CAN BE UNSAVED AS OFTEN AS DESIRED.
		IF THE ACTION OF UNSAVING WOULD RESULT IN OVERFLOW
		OF THE PAGE BUFFER, A ? 15 ERROR MESSAGE IS PRINTED
		AND THE UNSAVE DOES NOT OCCUR.

		NOTE THAT SAVE AND UNSAVE PROVIDE CONVENIENT TOOLS FOR
		MOVING BLOCKS OF TEXT OR INSERTING THE SAME BLOCK
		OF TEXT IN SEVERAL PLACES.

	5.2.4.3	EXECUTE MACRO

		THE NEM COMMAND IS A MEANS OF PERFORMING THE SAME 
		EDIT11 COMMAND STRING N TIMES.  WHEN THE EM COMMAND
		IS RECEIVED, THE CONTENTS OF THE SAVE BUFFER UP TO THE
		FIRST <CR> CHARACTER IS INTERPRETED AS A COMMAND STRING
		AND EXECUTED N TIMES.  THE MACRO IS SUBJECT TO THE
		SAME RULES AS ANY TYPED COMMAND STRING, AND IN ADDITION,
		A MACRO STRING MAY NOT CONTAIN ANOTHER MACRO CALL.

		THUS, TO EXECUTE A MACRO, IT IS REQUIRED TO INSERT
		THE MACRO IN THE PAGE BUFFER, SAVE IT, THEN EXECUTE.

		EXAMPLE:

		THE FOLLOWING SEQUENCE OF COMMANDS WILL CHANGE THE FIRST
		15 OCCURANCES OF .CSECT IN THE BUFFER TO .ASECT.

			* BI
			  B G#.CSECT# -5C#ASECT#<CR>
			  <LF>
			* BSK15EM

	5.2.4.4	EDIT OPEN

		THE EO COMMAND WILL CLOSE THE SECONDARY INPUT FILE
		AND RE-OPEN IT AT THE BEGINNING.  THEREFORE, ALTHOUGH
		EDIT11 IS A ONE PASS EDIT11, THAT IS, IT IS CAPABLE OF
		MAKING ONLY ONE TRIP THROUGH THE PRIMARY INPUT FILE
		PER JOB, IT IS POSSIBLE TO MAKE MANY PASSES THROUGH
		THE SUBSIDIARY INPUT FILE WITH THE EO COMMAND.  EO
		HAS NO EFFECT ON THE TEXT.

	5.2.4.5	END FILE

		THE EF COMMAND WILL CLOSE THE PRIMARY OUTPUT FILE TO
		ANY FURTHER OUTPUT, AND RENAME IT IF A BACKUP FILE IS
		TO BE CREATED.  THE PRIMARY INPUT, PRIMARY OUTPUT, AND
		SECONDARY INPUT FILES REMAIN OPEN FOR FURTHER EDITING.
		NOTE THAT THIS COMMAND IS USEFUL TO CREATE A TRUNCATED
		OUTPUT FILE FROM A LARGE INPUT FILE.  IT IS ALSO USED
		AS THE LAST COMMAND BEFORE THE EDITING JOB IS KILLED
		TO KEEP FILES NAMED CORRECTLY.

	5.2.4.6	EXIT

		THE EX COMMAND IS THE MOST COMMON WAY TO TERMINATE AN
		EDITING SESSION.  EXIT COPIES THE REMAINDER OF THE PRIMARY INPUT
		FILE INTO THE PRIMARY OUTPUT FILE, CLOSES ALL FILES,
		AND RETURNS TO MONITOR CONTROL.  THE COMMAND STRING
		EQUIVALENT TO EX IS 10,000 N ^CK.

				CHAPTER VI

6.	OPERATING INSTRUCTIONS

6.1	STARTING

	TO START EDIT11, LOAD THE PDP-11 DISK OPERATING SYSTEM (IF IT
	IS NOT RUNNING ALREADY) AND LOGIN.  THEN TYPE:

		$R EDIT11

	UPON RECEIPT OF THIS COMMAND, THE DOS WILL LOAD EDIT11 AND BEGIN
	IT'S EXECUTION.  THE FIRST THING EDIT11 NEEDS IS INPUT OUTPUR
	SPECIFICATIONS FOR THIS EDITING SESSION.  AFTER BEING LOADED
	AND STARTED, EDIT11 RESPONDS WIHT >, INDICATING A REQUEST FOR
	A COMMAND STRING.  THE USER RESPONDS WITH A COMMAND STRING OF THE
	FORM:

	#DEV:FILE1.EXT[UIC],DEV:FILE2.EXT[UIC]<DEV:FILE3.EXT/B[UIC],DEV:FILE4.EXT[UIC]

	
	IN THE ABOVE SPECIFICATION, FILE 1 IS THE PRIMARY OUTPUT AND FILE3
	IS THE PRIMARY INPUT, WHILE FILE2 AND FILE4 ARE THE SECONDARY
	OUTPUT AND INPUT RESPECTIVELY.  NOTE THE FOLLOWING:

	1.  A MINIMUM OF ONE INPUT AND ONE OUTPUT MUST BE SPECIFIED, AND
	    A MAXIMUM OF 2 INPUT AND 2 OUTPUT MAY BE SPECIFIED.  HENCE
	    FILE2 AND FILE4 ABOVE ARE OPTIONAL.

	2.  DEV: IS THE DEVICE NAME AND IS OPTIONAL; DISK IS ASSUMED
	    IF NONE IS SPECIFIED.

	3.  FILE1.EXT IS THE APPROPRIATE FILE NAME.

	4.  (UIC) IS THE USER CODE FOR THE OWNER OF THE FILE, AND NEED
	    NOT BE SPECIFIED IF THE FILE IN QUESTION IS YOUR FILE.

	5.  [PROT] IS THE PROTECT CODE FOR THE FILE AND NEED ONLY BE
	    SPECIFIED IF A NON-ZERO PROTECT CODE IS DESIRED.

	6.  /B IS THE BACKUP SWITCH.  IF /B IS SPECIFIED, NO BACKUP FILE
	    WILL BE CREATED, OTHERWISE THE BACKUP FACILITY WILL BE USED.
	    (SEE SECTION 4.1).  NOTE THAT IF THE /B SWITCH IS USED, IT 
	    MUST FOLLOW THE PRIMARY INPUT FILE SPECIFICATION.

	7.  IF FILE1 AND FILE3 ARE THE SAME FILE ON ONE DEVICE, FILE3
	    WILL BE RENAMED FILE3.BAK UNLESS THE /B SWITCH IS USED.
	    FILE2 AND FILE4 CANNOT BE THE SAME FILE.

	WHEN EDIT11 RECEIVES A SYNTACTICALLY CORRECT SPECIFICATION, IT
	PERFORMS INTERNAL INITIALIZATION, THEN TYPES AN *, INDICATING ITS
	READINESS TO RECEIVE THE FIRST COMMAND.

6.2	RESTARTING

	TO RESTART EDIT11, CALL THE MONITOR, TYPE A KILL COMMAND, THEN
	RUN EDIT11.

		*^C
		.K
		$R EDIT11

	TO RESTART THE EDIT11 AND MAINTAIN THE PRESENT BUFFER INTACT, ONE
	MUST USE THE MONITOR RESTART COMMAND AFTER ISSUING A ^C

		*^C
		.RE
		*

	NOTE THAT THE ABOVE METHOD OF RESTARTING ENABLES YOU TO STOP
	A COMMAND EXECUTION IF DESIRED.

6.3	FINISHING AN EDIT

	THERE ARE TWO WAYS TO FINISH AN EDITING SESSION AND RETURN TO DISK
	NONITOR CONTROL.

	1.  USE THE EF COMMAND FOLLOWED BY A CTRL/C AND THEN A KILL 
	    COMMAND THE MONITOR.

	2.  USE THE EX COMMAND.

	NOTE

	ANY OTHER WAY OF LEAVING AN EDITING SESSION WILL RESULT IN THE
	INPUT AND OUTPUT FILES NOT BEING PROPERLY CLOSED.  A FILE NOT
	PROPERLY CLOSED CANNOT BE USED BY ANY SYSTEM PROGRAM UNTIL CORRECTLY
	CLOSED BY THE (?) OPTION IN PIP.  THEREFORE, IF AN EDIT IS TER-
	MINATED WITHOUT AN EF OR EX COMMAND (THE PLUG FOR THE COMPUTER
	WAS PULLED OUT, THE MONITOR CRASHED, OR YOU EXECUTED ANOTHER MONITOR
	COMMAND AFTER A ^C), THE INPUT AND OUTPUT FILES MUST BE RESTORED
	BY PIP BEFORE ATTEMPTING TO EDIT AGAIN.

6.4	ERROR RECOVERY

	DURING THE COURSE OF EDITING A PAGE OF THE PROGRAM, IT MAY BECOME
	NECESSARY TO CORRECT MISTAKES IN THE COMMANDS THEMSELVES.  THERE
	ARE TWO SPECIAL COMMANDS WHICH DO THIS:

	1.  TYPING THE RUBOUT KEY REMOVES THE PRECEDING TYPED CHARACTER,
	    IF IT IS ON THE CURRENT LINE.

	2.  THE CTRL/U COMBINATION (HOLDING DOWN THE CNTRL KEY AND TYPING
	    U) REMOVES ALL THE CHARACTERS IN THE CURRENT LINE.

	IF, DURING THE COURSE OF A COMMAND STRING EXECUTION, A SERIOUS
	ERROR IS DISCOVERED, THE RESTART CAPABILITY CAN BE USED TO TERMINATE
	THE COMMAND.  (SECTION 6.2)

6.5	PROCEDURE WITH LOW-SPEED PUNCH

	IF THE LOW-SPEED PUNCH IS ONE OF THE OUTPUT DEVICES, EDIT11 PAUSES
	BEFORE EXECUTING ANY COMMAND TO WRITE ON THE PUNCH.  THE PUNCH
	MUST BE TURNED ON AT THIS TIME, AFTER WHICH STRIKING ANY KEY ON
	THE KEYBOARD INITIATES THE OUTPUT.  FOLLOWING COMPLETION OF THE
	OPERATION, EDIT11 PAUSES AGAIN TO ALLOW YOU TO TURN THE PUNCH OFF.
	WHEN THE PUNCH HAS BEEN TURNED OFF, TYPE ANY KEY AND EDIT11 WILL
	RETURN TO COMMAND MODE.

			CHAPTER 7 

7.	IMPLEMENTATION NOTES

7.1	MACRO USAGE

	USE OF THE EM MACRO IF MOST EFFICIENT IS THE TEXT INVOLVED IS 
	SMALL ENOUGH TO FIT WITHIN THE MACRO ITSELF.  LARGE AMOUNTS
	OF TEXT CAN BE INSERTED BY A MACRO, HOWEVER, IF USE IS MADE OF
	THE FACT THAT THE MACRO ITSELF IS ONLY THE FIRST LINE OF THE 
	SAVE BUFFER.

	FOR EXAMPLE, SUPPOSE IT IS DESIRABLE TO INSERT
		JSR	R5,RSAVE
		JSR	R5,RELOAD
	AFTER EVERY OCCURANCE OF EMT  40 IN YOUR PROGRAM.  THE TEXT TO
	BE INSERTED IS TOO LONG TO ENTER IN COMMAND MODE, AND THERE IS NO
	WAY TO ENTER TEXT MODE FROM A MACRO.  USE CAN BE MADE, HOWEVER,
	OF THE UNSAVE COMMAND.

	TO ACCOMPLISH THE ABOVE, THE COMMANDS WOULD LOOK LIKE:

		*BI
		G;EMT 40; A U -3A K
		     JSR    R5,RSAVE
		     JSR    R5,RELOAD
		<LF>
		*B3S3K 5000EM

	THE FIRST COMMAND INSERTS THE 3 LINES INTO THE TEXT BUFFER THAT
	WE NEED TO SAVE.  NOTE THAT THE FIRST OF THE 3 LINES IS THE MACRO,
	WHILE THE LAST TWO ARE THE COMMON CODE.  THE MACRO ITSELF CONTAINS
	THE GET COMMAND TO LOOK FOR THE EMT 40, FOLLOWED BY AN ADVANCE
	COMMAND TO ADVANCE DOT TO THE NEXT LINE.  THE NEXT COMMAND IS THE
	UNSAVE COMMAND, WHICH WILL UNSAVE THE THREE LINES IN THE SAVE
	BUFFER.  SINCE THE MACRO IS BY DEFINITION THE FIRST LINE OF THE
	SAVE BUFFER, IT IS UNSAVED ALONG WITH THE OTHER TWO AND HAS TO
	BE DELETED.  THE -3A AND KILL COMMANDS ACCOMPLISH THIS.  THE SECOND
	COMMAND STRING SAVES THE MACRO AND COMMON TEXT, DELETES THEM
	FROM THE TEXT BUFFER, AND EXECUTES THE MACRO 5000 TIMES.  5000
	IS AN ARBITRARILY LARGE NUMBER WHICH ASSURES WE GET ALL THE OCCURANCES
	OF EMT 40 IN THE BUFFER.  WHEN THE SEARCH FAILS, THE MACRO WILL
	BE HALTED AND AN ERROR RETURNED AS EDIT11 PREPARES TO ACCEPT
	ANOTHER USER COMMAND STRING.

7.2	DELIMITER USAGE

	WHEN ENTERING TEXT IN COMMAND MODE, ANY ASCII CHARACTER IS 
	ACCEPTABLE AS A DELIMITER.  SOME, HOWEVER, ARE BETTER THAN OTHERS, AND 
	HERE ARE SOME SUGGESTIONS WHEN USING DELIMITERS.

	1.  USE THE SAME DELIMITER ALL THE TIME.  (EXCEPT WHEN YOU
	    CAN'T BECAUSE IT APPEARS IN THE TEXT ITSELF).  IF YOU
	    PICK AN UNCOMMONLY USED CHARACTER THAT IS EASY TO TYPE, SUCH AS
	    Q OR ; TYPEING THE DELIMITER WILL BECOME SECOND NATURE.

	2.  AVOID DELIMITERS THAT ARE VALID ARGUMENTS OR COMMANDS.  USE
	    OF /,@ AND VALID COMMANDS AS DELIMITERS IS AN ERROR PRONE
	    PRACTICE.  AVOID SPACES MOST OF ALL, AS FORGETTING THAT
	    THERE IS A SPACE IN THE TEXT STRING WILL RESULT IN THE EXECTUION
	    OF UNDESIRED COMMANDS, AND THIS IS A COMMON ERROR.

	EXAMPLE

		*G SAVE /DUMMY/ I$TEXT$

	ALTHOUGH THE USER WANTED TO GET "SAVE /DUMMY/", HE WILL ACTUALLY
	GET "SAVE", DELETETO THE END OF THE BUFFER, UNSAVE, MARK, 
	MARK AGAIN, THEN RECEIVE AN ERROR MESSAGE FOR THE ILLEGAL Y COMMAND.

7.3	SUBSIDIARY I/O

	SUBSIDIARY I/O CAN SERVE SEVERAL PURPOSES.  HERE ARE SOME
	SUGGESTIONS ON HOW IT MIGHT BE USED.

	1.  IF YOUR SECONDARY OUTPUT FILE IS A LINE PRINTER OR SCOPE, YOU
	    CAN LOOK AT THE ENTIRE PAGE BUFFER VERY QUICKLY.  AFTER TYPEING
	    IN A LONG INSERT, LOOK AT IT VIA THE B/EW COMMAND AND CHECK FOR
	    MISTAKES.

	2.  USE OF TWO OUTPUT FILES IS IDEAL FOR DIVIDING A SINGLE 
	    INPUT FILE INTO TWO SMALLER FILES.

	3.  IF YOU WANT TO MOVE A VERY LONG SECTION OF TEXT, OR YOU
	    WANT TO SAVE TEXT FOR INSERTION LATER BUT ALSO WANT THE
	    SAVE BUFFER FREE, USE THE HSR AND HSP AS YOUR SUBSIDIARY
	    I/O.  PUNCH THE DESIRED TEXT, THEN READ IT IN WHEREVER DESIRED.

	4.  TWO INPUT FILES ARE IDEAL FOR CONCATENTION ALSO; WHOLE
	    SEARCH FOR A NONEXISTENT OBJECT THROUGH THE PRIMARY INPUT.
	    THEN DO THE SAME THROUGH SECONDARY INPUT.

7.4	SAVE AND UNSAVE

	EDIT11 SAVES TEXT DURING THE SAVE COMMAND BY SETTING ASIDE A
	BUFFER LARGE ENOUGH TO ACCOMODATE THE SAVED TEXT.  THIS DECREASES
	THE TOTAL CORE AVAILABLE TO THE PAGE BUFFER, RESULTING IN THE
	POSSIBILITY THAT THERE MIGHT NOT BE ENOUGH FREE CORE LEFT TO 
	UNSAVE THE TEXT.  EDIT11 GUARDS AGAINST THIS SITUATION BY ALLOWING
	YOU TO SAVE ONLY TEXT THAT IS SHORT ENOUGH TO GUARANTEE A LEAST
	ENOUGH ROOM TO INSERT IT AGAIN.  THAT IS, YOU ARE GUARANTEED THERE
	WILL BE ENOUGH ROOM TO UNSAVE AT LEAST ONCE FOLLOWING EVERY SAVE
	COMMAND THAT COMPLETES SUCCESSFULLY.  OF COURSE IF YOU READ
	OR INSERT A LARGE AMOUNT OF TEXT BETWEEN SAVE AND UNSAVE, YOU
	MIGHT DECREASE THE SPACE AVAILABLE TOO MUCH AND NOT BE ABLE TO
	UNSAVE.  IN THIS CASE, PART OF THE BUFFER WILL HAVE TO BE WRITTEN
	INTO THE OUTPUT FILE TO MAKE ROOM.  YOU WILL BE SAFE IF YOU DO ALL
	YOUR UNSAVES IMMEDIATELY FOLLOWING THE CORRESPONDING SAVE COMMANDS.
			CHAPTER 8

			APPENDICES
			----------

8.1	ERROR DIAGNOSTICS

	ERROR CODE	MEANING		CAUSE
	----------	-------		-----

	     1		ILLEGAL		EDIT11 DOES NOT RECOGNIZE A CHARACTER
			CHARACTER	TYPED IN COMMAND STRING

	     2		ILLEGAL 	COMMAND DOES NOT ACCEPT
			ARGUMENT	ARGUMENT GIVEN.

	     3		ILLEGAL		USUALLY CAUSED BY MISSING 
			TEXT STRING	SECOND DELIMITER

	     4		ILLEGAL		EDIT11 CAN'T EXECUTE COMMAND
			COMMAND		AS REQUESTED.  USUALLY CAUSED
					BY SECONDARY I/O COMMANDS WHEN
					NO SECONDARY I/O WAS SPECIFIED
					AT INITIALIZATION TIME.

	     5		PGB OVERFLOW	NO MORE ROOM IN CORE FOR TEXT.

	     6		CIB OVERFLOW	COMMAND STRING IS TOO LONG.

	     7		TIB OVERFLOW	TEXT OBJECT FOR A SEARCH 
					COMMAND IS TOO LONG

	     8		SVB OVERFLOW	NOT ENOUGH CORE LEFT TO SAVE
					THE TEXT REQUESTED.

	     9		END OF		END OF INPUT MEDIUM OR END OF INPUT
			DATA		FILE REACHED DURING READ BEFORE
					END OF FILE OR FORM FEED WAS ENCOUNTERED.

	    10		INVALID FILE	A SYNTACTICAL ERROR WAS
			COMMAND STRING	ENCOUNTERED IN THE INITIALIZATION
			SYNTAX		COMMAND STRING.

	    11		MACRO 		MACRO AS STORED IN SAVE BUFFER
			OVERFLOW	IS TOO LONG TO EXECUTE

	    12		RECURSIVE	MACRO CONTAINS AN EM COMMAND.
			MACRO

	    13		SEARCH		NTH OCCURANCE OF SEARCH OBJECT
			FAILURE		WAS NOT FOUND IN AVAILABLE TEXT.

	    14		EMPTY SUB	AN EM OR U COMMAND WAS ISSUED
					WITH NOTHING RESIDING IN SAVE 
					BUFFER

	    15		NO ROOM TO	NOT ENOUGH AVAILABLE CORE TO
			UNSAVE		UNSAVE REQUIRED TEXT.

	    16		PGB ALMOST	THE PAGE BUFFER IS WITH 128
			FULL		CHARACTERS FROM BEING FULL.

	ERROR CODE	MEANING		CAUSE
	----------	-------		-----

	    17		ILLEGAL LINE	A LINE FEED CHARACTER WAS EN-
			FEED		COUNTERED IN COMMAND STRING.

	    18		ILLEGAL		THE COMMAND SPECIFIED DOES NOT
			NEGATIVE	ACCEPT NEGATIVE ARGUMENTS.
			ARGUMENT

	    19		NO ARGUMENTS	THE COMMAND SPECIFIED DOES NOT
			ALLOWED		RECOGNIZE ANY ARGUMENT.

	    20		NO PRIMARY	A PRIMARY INPUT SPECIFICATION DID
			INPUT SPECIFIED	NOT APPEAR IN THE FILE COMMAND STRING.

	    21		ILLEGAL		A SWITCH APPEARED IN THE FILE COMMAND
			SWITCH		STRING WHICH WAS NOT EQUAL TO /B OR
					WHICH FOLLOWED A FILE OTHER THAN
					PRIMARY INPUT.

	    22		TOO MANY	MORE THAN 2 INPUT FILES WERE  SPECIFIED
			INPUT FILES	OR A SWITCH FOLLOWED THE SECONDARY
					INPUT.

	    23		NO PRIMARY 	A PRIMARY OUTPUT FILE SPECIFICATION
			OUTPUT SPECIFIED DID NOT APPEAR IN THE FILE COMMAND
					STRING.

	    24		TOO MANY	MORE THAN 1 SWITCH APPEARED AFTER
			SWITCHES	PRIMARY INPUT.

	    25		TOO MANY	MORE THAN 2 OUTPUT FILES WERE
			OUTPUT FILES	SPECIFIED OR A SWITCH APPEARED AFTER
					SECONDARY OUTPUT.


	    26		ILLEGAL		THE SECONDARY INPUT AND OUTPUT FILES
			SPECIFICATION	ARE THE SAME FILE.

	    27		ILLEGAL FILE	THE SECONDARY INPUT AND PRIMARY
			SPECIFICATION	OUTPUT FILES ARE THE SAME FILE.

	    28		ILLEGAL FILE	THE PRIMARY INPUT AND SECONDARY 
			SPECIFICATION	OUTPUT FILES ARE THE SAME FILE.

	    29		ILLEGAL FILE	THE PRIMARY AND SECONDARY INPUT
			SPECIFICATION	FILES ARE THE SAME FILE.

	    30		ILLEGAL FILE	THE PRIMARY OUTPUT AND SECONDARY
			SPECIFICATION	OUTPUT FILES ARE THE SAME FILE.
 		


8.2	COMMANDS

	IN THE FOLLOWING TABLE, # REPRESENTS ANY LEGAL TEXT DELIMITER,
	<CR> REPRESENTS A RETURN CHARACTER, AND <LF> REPRESENTS A LINE
	FEED CHARACTER.

	COMMAND		FORMAT		RESULT
	-------		------		------

	READ		R		READ FROM PRIMARY INPUT FILE
					UNTIL FORM FEED ENCOUNTERED

	EDIT READ	ER		READ FROM SECONDARY INPUT FILE
					UNTIL FORM FEED ENCOUNTERED.

	WRITE		NW		WRITE N LINES INTO PRIMARY OUT-
					PUT FILE

	EDIT WRITE	NEW		WRITE N LINES INTO SECONDARY
					OUTPUT FILE.

	FORM FEED	F		WRITE FORM FEED INTO PRIMARY
					OUTPUT FILE.

	TRAILER		NT		WRITE 40 NULL CHARACTERS AS
					TRAILER ON THE PRIMARY OUTPUT
					DEVICE.

	NEXT		NN		WRITE THE CONTENTS OF THE PAGE
					BUFFER ONTO THE PRIMARY OUTPUT
					FILE, KILL THE BUFFER, AND READ
					A PAGE OF TEXT FROM THE PRIMARY
					INPUT FILE.  REPEAT N TIMES.
					EQUIVALENT TO B/W B/D R

	BEGINNING	B		MOVE DOT TO THE BEGINNING OF THE
					PAGE BUFFER

	ADVANCE		NA		ADVANCE DOT N LINES.  LEAVES
					DOT AT BEGINNING OF LINE.

	JUMP		NJ		MOVE DOT OVER N CHARACTERS.

	DELETE		ND		DELETE N CHARACTERS FROM TEXT

	KILL		NK		KILL N LINES FROM TEXT

	MARK		M		MARK THE CURRENT LOCATION OF DOT.

	SAVE		NS		SAVE THE NEXT N LINES IN THE
					SAVE BUFFER.

	UNSAVE		U		COPY THE CONTENTS OF THE SAVE
					BUFFER INTO PAGE BUFFER AT DOT.

	LIST		NL		LIST N LINES ON TELEPRINTER

	VERIFY		V		LIST THE PRESENT LINE ON 
					TELEPRINTER

	COMMAND		FORMAT		RESULT
	-------		------		------

	GET		NG#XXXXX#	SEARCH FOR THE NTH OCCURANCE 
			   OR		XXXXX.  RETURN WITH DOT FOLLOWING
			NG<CR>		XXXXX
			XXXX<CR>
			<LF>

	WHOLE		NH#XXXXX#	SEARCH FOR THE NTH OCCURANCE OF
			   OR		XXXXX.  IF FOUND, RETURN WITH DOT
			NH<CR>		FOLLOWING XXXXX.  IF NOT FOUND,
			XXXXX<CR>	EXECUTE AN N COMMAND AND 
			<LF>		CONTINUE SEARCH.

	EDIT WHOLE	NEH#XXXXX#	PERFORM A WHOLE SEARCH FOR THE
			   OR		NTH OCCURANCE OF XXXXX, USING
			NEH<CR>		THE SECONDARY INPUT AND PRIMARY
			XXXX		OUTPUT FILES.		
			<LF>

	POSITION	NP#XXXXX#	PERFORM A NEXT COMMAND, THEN
			   OR		SEARCH FOR THE NTH OCCURANCE 
			NP<CR>		OF XXXXX.  IF FOUND, RETURN WITH
			XXXX		DOT FOLLOWING XXXX.  IF NOT 
			<LF>		FOUND, CLEAR THE BUFFER, READ
					ANOTHER PAGE, AND CONTINUE 
					SEARCH.

	EDIT POSITION	NEP#XXXXX#	PERFORM A POSITION SEARCH 
			   OR		USING SECONDARY INPUT RATHER
			NEP<CR>		THAN PRIMARY INPUT FILE.
			XXXX
			<LF>

	INSERT		I#XXXXX#	INSERT THE TEXT XXXXX AT DOT.
			   OR		MOVE DOT TO FOLLOW XXXXX.
			I<CR>
			XXXXX<CR>
			<LF>

	CHANGE		NC#XXXXX#	CHANGE N CHARACTERS INTO XXXXX.
			<LF>
			   OR		EQUIVALENT TO INSERT FOLLOWED BY
			C<CR>		NDELETE
			XXXXX<CR>
			<LF>

	EXCHANGE	NX#XXXXX#	EXCHANGE N LINES FOR XXXXX.
			   OR		EQUIVALENT TO INSERT FOLLOWED
			NX<CR>		BY N KILL.
			XXXXX<CR>
			<LF>

	EXECUTE MACRO	NEM		EXECUTE THE FIRST LINE OF THE
					SAVE BUFFER AS A COMMAND STRING
					N TIMES.

	EXIT		EX		PERFORM CONSECUTIVE NEXT COM-
					MANDS UNTIL EOM OR EOF REACHED,
					CLOSE ALL FILES, AND RETURN TO 
					MONITOR.

	EDIT OPEN	EO		MOVE TO THE BEGINNING OF THE 
					SECONDARY INPUT FILE.  MUST 
					FOLLOW AN EOM OR EOF MESSAGE
					BEFORE AN ER CAN BE EXECUTED.

	END FILE	EF		CLOSE THE PRIMARY OUTPUT FILE 
					TO ANY FURTHER OUTPUT.
@                                                                                                                                  