[comp.terminals] Tek 4209

hpn@occrsh.ATT.COM (10/04/90)

Can anyone out there reference me to any PD sources for programs that can
utilize a Tektronix 4209 ?

Huy Nguyen
okcusr!hpn@mwood.att.com
hpn@occrsh.att.com
attcc!hpn@mwood.att.com

quan@sol.surv.utas.oz (Stephen Quan) (10/20/90)

hpn@occrsh.ATT.COM writes:
>Can anyone out there reference me to any PD sources for programs that can
>utilize a Tektronix 4209 ?

>Huy Nguyen
>okcusr!hpn@mwood.att.com
>hpn@occrsh.att.com
>attcc!hpn@mwood.att.com


Sorry, can't suggest PD sources, can offer you the following :
Simon Pigot, Julian Dermoudy at out department compiled the following
termcap information for our TEK machines (Tek4111) :


X1|4111|tek4111|tektronix 4111:\
	:al=\E[L:AL=\E[%dL:bs:bt=\E[Z:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
	:cm=\E[%i%d;%dH:co#132:da:db:dc=\E[P:DC=\E[%dP:dl=\E[M:DL=\E[%dM:\
	:do=\E[B:DO=\E[%dB:ei=\E[4l:ho=\E[H:im=\E[4h:k0=\E[A:k1=\E[B:\
	:k2=\E[D:k3=\E[C:k4=\EOP:k5=\EOQ:k6=\EOR:k7=\EOS:k8=\Es1:k9=\Es2:\
	:KA=\Es3:KB=\Es4:KC=\Es5:KD=\Es6:KE=\Es7:KF=\Es8:kb=^H:ku=\E[A:\
	:kd=\E[B:kh=\EOP:kl=\E[D:kr=\E[C:l0=f1:l1=f2:l2=f3:l3=f4:l4=f5:\
	:l6=f7:l7=f8:l8=F1:l9=F2:lA=F3:lB=F4:lC=F5:lD=F6:lE=F7:lF=F8:\
	:LE=\E[%dD:li#48:mb=\E[5m:md=\E[1m:me=\E[m:mr=\E[7m:\
	:nd=\E[C:pt:rc=\E8:RI=\E[%dC:sc=\E7:se=\E[m:so=\E[7m:sr=\EM:\
	:te=\E%\!0\ENF3\ELBL7\ELV1\E%\!1\E[?7h:\
	:ti=\E%\!0\ENF0\ELBC0\ELV1\E%\!1\E[?7l:\
	:ue=\E[m:up=\E[A:UP=\E[%dA:us=\E[4m:\
	:is=\E%\!0\ENF3\ELBL7\ELCH4\ELLC0\ELV1\E%\!1\E[m\E[4l\E[?7h:
gt|grif|Tek 4012 term emulator for Macintosh:\
	:db:os:eo:bs:bc=^O:cl=\E^L:cm=\EY%+ %+ :co#80:li#26:\
	:sf=\EU:sr=\ED:kh=^A:nd=^N:up=^K:kl=^O:kr=^N:kd=^J:\
	:ce=\EK:cd=\Ek:al=\EM:dl=\El:ic=\EF:dc=\EE:


Here is some PASCAL code for graphics on TEKs.  I don't know if it works on
all TEKs however.  Although its in PASCAL, shouldn't be difficult to figure
out whats going on, and translation to other language should be easy.


procedure clear;
  begin
    write(chr(27)); write(chr(12));
  end;

procedure home;
  begin
    write(chr(1));
  end;

procedure alpha;
  begin
    write(chr(31));  {for writing letters during graphics mode}
  end;

procedure graph;
  begin
    write(chr(29));
  end;

procedure exitgraphics;
  begin
    write(chr(24));  {not sure}
  end;

procedure draw(x, y:integer);
  var
    hiy,loy,hix,lox: integer;
  begin
    lox := 64 + (x mod 32);
    hix := 32 + (x div 32);
    loy := 96 + (y mod 32);
    hiy := 32 + (y div 32);
    write(chr(hiy), chr(loy), chr(hix), chr(lox))
  end;

procedure move(x, y: integer);
  begin
    graph;
    draw(x,y)
  end;


Stephen Quan,
University of Tasmania.