TKDEV ;PG&A,TK-CONFIG,2.25,TOOLKIT DEVICE MAINTENANCE;20FEB95 1:04P;;;05AUG99 13:27 [ 11/22/2000 10:47 AM ] ;Copyright (C) 1985, Patterson, Gray and Assoc., Inc. D:$D(^TK)=0 ^TKINIT K TK D INIT BEG W !!!,"PG&A Toolkit Software Device Maintenance Options",! X "F I=1:1:26 W ""===""" W "=" W !!?5,"1. Select Terminal Type for an I/O Port",!?5,"2. Create and Edit New Device Type",!?5,"3. Edit Function Key Definitions",! WHICH R " ? ",A Q:A="" I A<1!(A>3) W " ???",! G WHICH W ! G DEV^TKDEV3:A=1 I A=3 D ^TKDEV3,INIT G TKDEV W ! NAME W $C(13),"Enter Device name (""*"" = wildcard, ? for List) > " R DV G BEG:DV="",LIST:DV["?" I $L(DV)>15 W " 15 character maximum",$C(7) H 2 S I=$L(DV)+22 D ERASE G NAME I DV'["*" G NEW:$D(^TK(0,DV))=0,EDIT S DV=$P(DV,"*"),N=$O(^TK(0,DV)) I N=""!($E(N,1,$L(DV))'=DV) W " ???" D ERASE G NAME I $E($O(^(N)),1,$L(DV))'=DV S DV=N G EDIT G LIST NEW R " New Device? (No)> ",*Y S I=$S(Y=89:"es",Y=78:"o",Y=13:"No",1:" ???") W I I Y'=89 H 2 S I=$L(DV)+$L(I)+20 D ERASE G NAME EDIT W !!!!,"PG&A Toolkit" S X="*** "_DV_" ***" W ?(80-$L(X)/2),X S X="Device Definition" W ?(79-$L(X)),X,! X "F I=1:1:26 W ""===""" W "=" S H="" S:$D(^TK(0,DV,"V")) H=^("V") W !!,"Is this device a Video terminal or a Printer? (V or P) > " I H'="" S H=$E("PV",H+1) W "(",H,") " SEQ1 R E#1 I H=""&(E=""!("PV"'[E))!(H'=""&(E'="")&("PV"'[E)) W " ???",$C(7) S I=6 H 2 D ERASE G SEQ1 G ^TKDEV1 OK W !!?5,"O.K. (Yes)> " O1 R *X G EDIT:X=78 I X=13!(X=89) W !! G NAME W " ???",$C(7) H 2 S I=6 D ERASE G O1 EXIT K NC,CN,CT,C,XC,Q,D,O,SB,T,X,I,H,DV,D,C,A,B,E Q ERASE X "F I=I:-1:1 W $C(8,32,8)" Q W ! Q ; LIST W !! S N="" F I=0:0 S N=$O(^TK(0,N)) Q:N="" W N,$J("",19-$L(N)) W:$X>70 ! W !! G NAME ; INIT K TK S TK(3)=$S($D(TKUSER):TKUSER,1:$$IO^cQ5) K:$D(^TK("$I")) ^TK(TK(3)) I $D(^TK(TK(3))),$D(^TK(0,^(TK(3))))=0 K ^TK(TK(3)) INIT2 D ^TKINIT:$D(^TK(0))=0 S TK=$O(^TK(0,"")) I $O(^(TK))="" S ^TK(TK(3))=TK G INIT1 I $I'=1,TK["PC" S TK=$O(^TK(0,TK)) I $O(^(TK))="",TK["VT" S ^TK(TK(3))=TK G INIT1 I $D(^TK(TK(3))) G INIT1 D VT I A'="",$D(^TK(0,A)) S ^TK(TK(3))=A G INIT1 S A=$O(^TK(0,TK)) I A["VT",$O(^(A))="" S ^TK(TK(3))=TK G INIT1 W !!,"This device is not defined to the PG&A Toolkits",!! S (A,AA)=TK(3) D DEV1^TKDEV3 S TK(3)=AA G INIT2 INIT1 S TK=$S($D(TKDEVICE):TKDEVICE,1:^TK(TK(3))),TK("d")=$S('$D(^("DATEF")):0,1:^("DATEF")),TK("T")=^("TERMST"),TK(1)=0,TKP=^(0,TK,"P") F TKI=0:1:5 I $D(^(TKI)) X ^(TKI) S:$D(^TK(0,TK,"a")) TK("a")=^("a"),TK("RON")="",TK("ROF")="",TK("UO")="",TK("UF")="" W ^("SET") H:$L(^("SET"))>20 2 X:$D(^TK(.1,TK,1)) ^(1) K TKI Q ; FUNC D INIT:'$D(TK) S TKY=^TK(.3),TKX=^(.3,TK,0) Q ; VT S A="",TK(1)=1 X ^TK("TERM-OFF"),^TK("ECHO-OFF") W $C(27),"[c" F J=0:1:70 R *B:2 Q:'$T S:J A=A_$C(B) X ^TK("TERMST") S:ZF'="" A=A_ZF Q:B=99 Q:$E(A,$L(A))="c" X ^TK("ECHO-ON") S A=$TR(A,$C(0),""),A=$S(A["1;8c"&($D(^TK(0,"MSMPC COLOR"))):"MSMPC COLOR",A["42c"&$D(^TK(0,"3153")):"3153",A["?63;2c"&$D(^TK(0,"VT220T")):"VT220T",A["?":"VT220",A?.E1";".E1"c":"VT220",1:"") Q