64 lines
2.2 KiB
Mathematica
64 lines
2.2 KiB
Mathematica
|
ZIBNSSV ; IHS/ADC/GTH - NONSTANDARD SPECIAL VARIABLES ; [ 10/29/2002 7:42 AM ]
|
||
|
;;4.0;XB;;Jul 20, 2009;Build 2
|
||
|
; XB*3*8 - IHS/ASDST/GTH - Correct parsing for MSM Windows.
|
||
|
; XB*3*9 IHS/SET/GTH XB*3*9 10/29/2002 Cache' mods.
|
||
|
;
|
||
|
; Return Non-Standard ($Z) Special Variables.
|
||
|
;
|
||
|
; E.g.:
|
||
|
; W $$Z^ZIBNSSV("ERROR")
|
||
|
; will write the contents of the error message most recently
|
||
|
; produced by the OS.
|
||
|
;
|
||
|
; These are the variables supported:
|
||
|
;
|
||
|
; ERROR : Text of error message most recently produced.
|
||
|
; LEVEL : Number of the current nesting level.
|
||
|
; NAME : Name of routine currently loaded in memory.
|
||
|
; ORDER : Data value of the next global node that follows
|
||
|
; the current global reference.
|
||
|
; TRAP : Line label and routine name of the program that
|
||
|
; is to receive control when an error occurs.
|
||
|
; VERSION : Name and release of M implementation.
|
||
|
;
|
||
|
Z(NSSV) ;PEP - Return Non-Standard ($Z) Special Variables.
|
||
|
I '$L($G(NSSV)) Q "NONSTANDARD SPECIAL VAR NOT SPECIFIED."
|
||
|
I '$F("ERROR^LEVEL^NAME^ORDER^TRAP^VERSION",NSSV) Q "NONSTANDARD SPECIAL VAR '"_NSSV_"' NOT SUPPORTED."
|
||
|
NEW O
|
||
|
; S O=$P($G(^%ZOSF("OS")),"-",1) ; XB*3*8 - IHS/ASDST/GTH
|
||
|
;S O=$S($P($G(^%ZOSF("OS")),"^",1)["MSM":"MSM",1:"") ; XB*3*8 - IHS/ASDST/GTH;IHS/SET/GTH XB*3*9 10/29/2002
|
||
|
S O=$S($P($G(^%ZOSF("OS")),"^",1)["MSM":"MSM",^%ZOSF("OS")["OpenM":"CACHE",1:"") ; XB*3*8 - IHS/ASDST/GTH ;IHS/SET/GTH XB*3*9 10/29/2002
|
||
|
;I '$L($T(@(O))) Q "OPERATING SYSTEM '"_O_"' NOT SUPPORTED." ;IHS/SET/GTH XB*3*9 10/29/2002
|
||
|
I '$L(O) Q "OPERATING SYSTEM '"_^%ZOSF("OS")_"' NOT SUPPORTED." ;IHS/SET/GTH XB*3*9 10/29/2002
|
||
|
G @(O)
|
||
|
;
|
||
|
MSM ; Micronetics specific Non-Standard Special Variables.
|
||
|
NEW MSMSV
|
||
|
S MSMSV="MSMZ"_$E(NSSV)
|
||
|
I '$L($T(@MSMSV)) Q "Micronetics VALUE FOR '"_NSSV_"' NOT SUPPORTED."
|
||
|
G @(MSMSV)
|
||
|
;
|
||
|
MSMZE Q $ZE
|
||
|
MSMZL Q $ZL
|
||
|
MSMZN Q $ZN
|
||
|
MSMZO Q $ZO
|
||
|
MSMZR() ;PEP - MSM's last global reference.
|
||
|
; Going thru the "Z" entry point will re-set the global reference!
|
||
|
Q $ZR
|
||
|
MSMZT Q $ZT
|
||
|
MSMZV Q $ZV
|
||
|
;
|
||
|
;Begin New Code;IHS/SET/GTH XB*3*9 10/29/2002
|
||
|
CACHE ;
|
||
|
NEW %
|
||
|
S %="CACHEZ"_$E(NSSV)
|
||
|
I '$L($T(@%)) Q "Cache' VALUE FOR '"_NSSV_"' NOT SUPPORTED."
|
||
|
G @(%)
|
||
|
;
|
||
|
CACHEZE Q $ZE
|
||
|
CACHEZN Q $ZN
|
||
|
CACHEZO Q $ZO
|
||
|
CACHEZT Q $ZT
|
||
|
CACHEZV Q $ZV
|
||
|
;End New Code;IHS/SET/GTH XB*3*9 10/29/2002
|