[613] | 1 | ZVEMSGD ;DJB,VSHL**VShell Global - ZR,ZS,ZT ; 9/6/02 7:56am
|
---|
| 2 | ;;12;VPE;;COPYRIGHT David Bolduc @1993
|
---|
| 3 | ;
|
---|
| 4 | ZR ;;;Load ^%ZVEMS("ZR")
|
---|
| 5 | NEW CD,FLAGCLH,PROMPT,Y S:'$D(VEE("IOM")) VEE("IOM")=80 X ^%ZVEMS("ZR",2) S CD="",FLAGCLH=">>" D SCREEN^%ZVEMKEA(PROMPT,0,VEE("IOM")-2) X ^%ZVEMS("ZR",4),^%ZVEMS("ZR",3)
|
---|
| 6 | X:$D(^%ZOSF("UCI"))&($D(^%ZVEMS("PARAM",VEE("ID"),"PROMPT"))) ^%ZOSF("UCI") S PROMPT=$G(Y)_">>" X ^%ZVEMS("ZR",5)
|
---|
| 7 | S VEESHC=$S(VEESHC="<RET>":CD,VEESHC?1"<".E1">".E&(CD']""):VEESHC,1:"")
|
---|
| 8 | I VEESHC="TOO LONG" W ! D CLHSET^%ZVEMSCL("VSHL",CD) S VEESHC=""
|
---|
| 9 | KILL ^%ZVEMS("ERROR",VEE("ID"))
|
---|
| 10 | ;;;***
|
---|
| 11 | ZS ;;;Load ^%ZVEMS("ZS")
|
---|
| 12 | NEW % S ^%ZVEMS("%",$J_$G(^%ZVEMS("SY")))=+$H_"^Scratch Area" X ^%ZVEMS("ZS",7)
|
---|
| 13 | Q:$G(^%ZVEMS("%",$J_$G(^%ZVEMS("SY")),"SV"))="" X ^%ZVEMS("ZS",8)
|
---|
| 14 | X ^%ZVEMS("ZS",2) D BS^%ZVEMKY1 NEW I F I=1:1:9 KILL @("%"_I) ;kill parameter variables
|
---|
| 15 | Q:VEESHC?1"<".E1">"!(",^,H,h,HALT,halt,"[(","_VEESHC_",")) NEW CHK,X S CHK=0,X=$G(^%ZVEMS("CLH",VEE("ID"),"VSHL")) X ^%ZVEMS("ZS",6) Q:CHK X ^%ZVEMS("ZS",5)
|
---|
| 16 | S X=$G(^%ZVEMS("CLH",VEE("ID"),"VSHL"))+1,^("VSHL")=X,^("VSHL",X)=VEESHC I X>20 S X=$O(^%ZVEMS("CLH",VEE("ID"),"VSHL","")) KILL ^(X)
|
---|
| 17 | I X>0,$G(^%ZVEMS("CLH",VEE("ID"),"VSHL",X))=VEESHC!($G(^(X-1))=VEESHC) S CHK=1
|
---|
| 18 | NEW %,LIST,VAR X ^%ZVEMS("ZS",9) S ^%ZVEMS("%",$J_$G(^%ZVEMS("SY")),"SV")="" F %=1:1:$L(LIST,"^") S VAR=$P(LIST,"^",%) S ^("SV")=^("SV")_$S($D(@VAR)#2:@VAR,1:"")_"^"
|
---|
| 19 | NEW %,LIST X ^%ZVEMS("ZS",9) F %=1:1:$L(LIST,"^") S @($P(LIST,"^",%)_"=$P(^%ZVEMS(""%"",$J_$G(^%ZVEMS(""SY"")),""SV""),""^"",%)")
|
---|
| 20 | S LIST="VEE(""ID"")^VEE(""EON"")^VEE(""EOFF"")^VEE(""IOF"")^VEE(""IOSL"")^VEE(""OS"")^VEE(""IO"")^VEE(""IOM"")^VEE(""TRMON"")^VEE(""TRMOFF"")^VEE(""TRMRD"")^VEE(""$ZE"")"
|
---|
| 21 | ;;;***
|
---|
| 22 | ZT ;;;Shell timed out
|
---|
| 23 | S VEESHC=$G(^%ZVEMS("QU",VEE("ID"),"TO")) Q:VEESHC="" S:VEESHC="HALT"!(VEESHC="halt") VEESHC="^"
|
---|
| 24 | ;;;***
|
---|