!VTEDIT - V00.00-8!

@^U0/<U7 Q7"G 0;' >/
128,0ETETU0 0,2048+32+8ET
@^U5/U9283Q9/!Hack!
@^U6/.U8 ZU4 -3U6 HM5 13 KM5 10 KM5 13 :G4
 < M0 !F! Q7 ZJ Q7I Q7-13"E 10I 10U7 Q7'
  Q7-10"E 13 KM5 -1%6'
  Q7-21"E Q6W 0U7 0;'
  Q7-127"E -D Z-Q4"N -1AU9 -D Q9-27"E 32U9'
   Q9-31"G DM5 KM5 1+' 0"E
    13 -Q6-2< KM5 AM5 > 10 13 :G4 Q4,ZT'
  ''
  Q7-27"E M0 Q7-27"E !F0! 27I Q4,ZX4 HM5 13 -1U7 0;'
   Q7-?"E M0 OF0' OF'
 > Q4,ZK Q8J Q7/
0,0X7 0,0X9
0U2
HM5 13 =M5
<!A! 0U4 0U6 !B! 1U5
U7 Q7"L -1W M0 '
!V!
Q7-127"E .-Q5"L .U5' -Q5D OA'
Q7-31"G Q7I 0U2 OA'
Q7-26"E 0;'
Q7-21"E 0K OA'
Q7-11"E Q5K OA'
Q7-8"E Q5L .-1"G 2R' OA'
Q7-4"E Q5K 13I 10I 2R OA'
Q7-3"E 0;'
Q7-27"N Q7I Q7-13"E10I' OA'
M0
 Q7-C"E Z-.-Q5"L Z-.U5' Q5C OA'
 Q7-D"E .-Q5"L .U5' Q5R OA'
 Q7-?"E M0Q7&31#32U7
  Q7-0"E Q5L OA'
  Q7-1"E Q5-1"E 0U5' Q5J OA'
  Q7-2"E ZJ OA'
  Q7-3"E 0L OA'
  Q7-4"E -Q5L OA'
  Q7-5"E Z-.-Q5"L Z-.U5' Q5D OA'
  Q7-6"E .-Q2"L0,.X30,.K OA' .-Q2,.X3 .-Q2,.K OA'
  Q7-7"E Q5< 13I 10I 2R > OA'
  Q7-8"E Q5P OA'
  Q7-9"E Q5-1"E M0Q7U5' Q5I OA'
  Q7-045"E ISearch: .-8,.X4-8D M6"F OA'.U3 I@:S 0I.U2
   G4-2D .-Q2U1 0I Q3,.X8 Q3,.K OS'
  Q7-."E 0U6 !S!Q1U2 Q5M8"F0U2' Q6"N Q6W' OA'
  OA
'
  Q7"D0U5<!X!Q5*10+Q7-48U5 M0 Q7"D OX ' 0;>OV'
 0U8
 Q7-A"E -1U8'
 Q7-B"E 1U8'
 Q8"N Q8"L -Q5U5' Q6"E 0U7 .U8 0L
  Q8-.%6< 0A-32"L 0A-27"N 0A-9"E 6-(Q7&7)%6 -2U7' %7 1%6'' C %7 >'
  Q5L -Q6U9 0U7 Q6< .-Z; 0A-32"L 0A-13"E 0;'
  0A-27"N 0A-9"E 6-(Q7&7)%9 -2U7' %7 1%9'' C %7 1%9"G R' Q9; >
  0U4 OB'
 Q7-Q"E ICommand: .-9,.X4-9DM6"F OA' .U3 G4 Q3,.X9Q3,.K Working...OC'
 Q7-27"E 0U6 !C! M9 -1EU
  Q6"N Q6W' OA'
 Q7-R"E .U4 G7 .-Q4U2 OA'
 Q7-P"E Q4"E .+1U4' Q5L Q4-1,.X7 .-Q4+1U2 0U6 OB'
>
>M5 YM5 23+32 0+32 KM5 13 Q0ET
!Z!

!Q-reg	Text		Numeric
0	read char	holds initial ET setting
1			length of last search string
2			length of last string gotten
3	deleted string	temp
4	arg to M6	cut buffer start
5	prints esc seq	repeat count
6	mini editor	# of lines destroyed at top
7	cut buffer	current char
8	search command	temp
9			arg to M5

Hacks:

ESCAPE is sent literally to the terminal via the 27+256^T command
which fakes out TECO into sending the character literally.
This avoids the necessity of doing a 0,1ET command which will swap
in an overlay on 16K machines.

Macro M0 is used to read a character and wait until it is available
even though read with no wait is enabled.
To temporarily turn off read with no wait via the 32,0ET command
would require swapping in an overlay on 16K machines.  Note that
the current algorithm is terribly inefficient on systems where
OS/8 is running under timesharing.  In such a case, OS/8 should be
run in a 20K partition and macro 0 should be initialized to
	32,0ET ^TU7 0,32ET
!
