| 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 |  ;;;***
 | 
|---|