	Subroutine	goXY(x,y)

	include		'SCRLIB.INC'
	integer*2	x,y

	if(x.lt.0.or.x.gt.80)goto 10
	if(y.lt.0.or.y.gt.24)goto 10

	write(xpos,1000) x
	write(ypos,1000) y
1000	format(I2)

	if(xpos(1:1).eq.' ')xpos(1:1)='0'
	if(ypos(1:1).eq.' ')ypos(1:1)='0'

	type 1010,esc,ypos,xpos
1010	format('+',a1,'[',A2,';',A2,'H',$)
	return

10	type 1020,esc,bell,x,y
1020	format('0',A,'[0J',A,'Invalid (x,y) set : (',I5,',',I5,')')
	stop 'GOXY-F-Fatal error'

	end

	function	Length(s)

	character*82	s
	include		'SCRLIB.INC'

	length=index(s,'|')
	if(length.le.0.or.length.gt.80)then
	  call goXY(1,24)
	  type 1000,esc,bell,s
1000	  format('+',A,'[0K',A,'LENGTH-F-String length error in ',A,$)
	  s=' |'
	  length=1
	else
	  length=length-1
	endif

	return
	end
	subroutine	gobot()
c	Internal

	character*1	esc
	data		esc/"033/

	type 1000,esc
1000	format('+',A,'[24;1H',$)
	return

	end
