%%HP: T(3)A(D)F(.);
@ ARGUS by Volker Erb
\<<
GROB 174 64 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000008000000000000000000000000800000000000000000081000000000000000020000008000000000000000000C20000000000000000700000080000000000000000004200000001000000007000000C810000000000000000620EF1128300000008A000000460000000000000000026036212C2000000002000000C100000000000000000FFB1321266000000002000000600000000000000000814E0121234000000002000008300000000000000000804401A3F1400008000303000620000000000000000060C403BED060000810028C008130000000000000000020840EF008300000107240706010000000000000000010800E30008F10003C8340891810000000000000000C10000330EF700000630620060800000000000000000C0000011F10000000C00B10000E000000000000000000000F3B1000000008B102830083000000000000000000CFF00E00000000060302CE10C000000000000000000F3000000000000081060260707000000000000000000000000000000000600C1A30CD100000000000000000000000000000000810007F000700000000000000000000000000000000000000C300000000000000000000000000000000000000000002000000000000000000000000000000000000000000020000000400000000000000000000000000000000000200000008100000000000000000000000000008FFFFFFFFFFFFFF70000000000000000000000000000012480248012488100000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PICT STO (-4.7,3.2)
PVIEW (-2,1.2)
"V. 3.02" 1 \->GROB
PICT 3 ROLLD GOR .5
WAIT 4000 .2 BEEP
(-4.3,-.4)
"Sorry, takes about two Minutes"
1 \->GROB PICT 3
ROLLD GOR (-4.3,-1)
"to setup Your System  ..."
1 \->GROB PICT 3
ROLLD GOR .6 WAIT
253 .2 BEEP
(-4.7,-1.8)
"This is a shareware copy !"
1 \->GROB PICT 3
ROLLD GOR
(-4.7,-2.5)
"Send 15$ or Postcards or..."
1 \->GROB PICT 3
ROLLD GOR 3 WAIT
TEXT { Okay { } { }
No } MENU
"Did You save Your
Results in a Directory
not named RESULTS ?
If not, press <NO>,
rename Directory and
start again,else press
<OKAY> !"
1 DISP 3 FREEZE
  DO -1 WAIT
  UNTIL DUP DUP
11.1 SAME SWAP 14.1
SAME OR
  END
  IF 11.1 SAME
  THEN 2 MENU
  ELSE 2 MENU KILL
  END
  IFERR 'RESULTS'
PGDIR 'RESULTS'
CRDIR RESULTS RCLF
'Flags' STO PATH
'Path' STO { On { }
{ } Off } MENU
CLLCD
"Sound <ON> or <OFF>?"
1 DISP 3 FREEZE
    DO -1 WAIT
    UNTIL DUP DUP
11.1 SAME SWAP 14.1
SAME OR
    END
    IF 11.1 SAME
    THEN -56 CF
    ELSE -56 SF
    END { } MENU
    \<< "" # 5B15h
SYSEVAL PURGE
      \<<
      \>> "" # 5B15h
SYSEVAL STO
    \>> 'sc' STO
    \<< 220 .1 BEEP
    \>> 'T\Gt' STO
CLLCD PATH HOME
    \<< ERASE (-5,3)
(2.5,-3) BOX
(-6.5,3.2) PVIEW
(-5,2.3)
"   Argus was created"
1 \->GROB PICT 3
ROLLD GOR 1000 .1
BEEP (-5,1.6)
"       by " 1
\->GROB PICT 3 ROLLD
GOR 1500 .1 BEEP
(-5,.9)
"   Volker Erb" 1
\->GROB PICT 3 ROLLD
GOR 2000 .1 BEEP
(-5,.2)
"   Ernst-Reuter-Str.31"
1 \->GROB PICT 3
ROLLD GOR 2500 .1
BEEP (-5,-.5)
"   D-W6508 Alzey"
1 \->GROB PICT 3
ROLLD GOR 3000 .1
BEEP (-5,-1.2)
"   Germany" 1
\->GROB PICT 3 ROLLD
GOR 3500 .1 BEEP
(-5,-1.9)
"   Tel:01149-6731/8167"
1 \->GROB PICT 3
ROLLD GOR 100 .5
BEEP 3 FREEZE 1.5
WAIT
    \>> 'Adress' STO
EVAL sc Adress TEXT
RCLKEYS 'Keys' STO
sc { S T\Gt 21.1 T\Gt
21.2 T\Gt 21.3 T\Gt
22.1 T\Gt 22.2 T\Gt
22.3 T\Gt 24.1 T\Gt
24.2 T\Gt 24.3 T\Gt
24.6 T\Gt 25.2 T\Gt
25.3 T\Gt 25.6 T\Gt
26.1 T\Gt 31.2 T\Gt
31.3 T\Gt 32.3 T\Gt
33.1 T\Gt 35.2 T\Gt
36.2
    \<< CONT
    \>> 51.1 T\Gt 52.2
T\Gt 52.3 T\Gt 54.2 T\Gt
61.2 T\Gt 61.3 T\Gt
62.2 T\Gt 62.3 T\Gt
73.2 T\Gt 73.3 T\Gt
74.2 T\Gt 74.3 T\Gt
85.2 T\Gt 85.5
    \<< CONT
    \>> 91.1 T\Gt 93.2
T\Gt 93.3 T\Gt 93.5 T\Gt
93.6
    \<< CONT
    \>> 94.1 T\Gt 94.4
} STOKEYS -62 SF {
} 'STACK' STO { }
MENU TEXT
    \<< PICT STO { }
PVIEW
    \>> 'PVER' STO
    \<< \-> I15
      \<< I15 "." S\Gs
1 + + +
      \>>
    \>> 'SUBEx' STO
    \<< SUBEx "" S\Gs +
"." + S\Gs 1 + +
'Extent' STO DUP \->
I16
      \<< OBJ\->
        IFERR Tr
        THEN I16
Sort
        END
      \>>
    \>> 'Sort' STO
    \<< DROP2 DUP {
PURGE CONT } MENU
"Error in Subdirectory
\->'Var' <PURGE> <CONT>"
Disp STO
    \>> 'Check' STO
\GSDAT
    IF DUP TYPE 3
SAME
    THEN 'Data' STO
    ELSE DROP
    END T\Gt 0 'S\Gs'
STO { } 'TRASH' STO
{ TR YZ results
STACK SCans Tr S\Gs
Trash cst CST T\Gt
SUBEx Sort PVER
Check Data GARB
Disp sm sc Keys
HALt sto PPAR Path
Flags } 'GARB' STO
    \<< DUP 'TRASH'
STO+
    \>> 'TR' STO { }
'Trash' STO
    \<< DUP 'Trash'
STO+
    \>> 'Tr' STO
CLLCD
"This is a complet
Error Analysis with 
Features, like forming
 Errorequations and
    Statistics !
 (Next Version with
  Graphic Devices !)"
1 DISP 3 FREEZE {
CONT Quit } MENU
    \<< RCLF 'I72' TR
STO sc HALT I72
STOF
    \>> 'HALt' STO
    \<< TEXT 1 DISP 3
FREEZE T\Gt HALt sm
    \>> 'Disp' STO
    \<< CLLCD
"Just a Moment..."
3 DISP 3 FREEZE
    \>> 'sm' STO
    \<<
      IFERR RCLF \->
Z N IQ
        \<< Z N TR
STO N "" + Ex OBJ\->
Z SWAP STo IQ STOF
Z N
        \>>
      THEN { DROP
CONT } MENU CLLCD
"Remove Garbidge and
give a Value or Name
and press <CONT>!"
Disp SWAP YZ
      END
    \>> 'YZ' STO T\Gt {
} 'SCans' STO { }
'results' STO sc
    DO { TRASH EQ }
'TRASH' STO DEPTH
\->LIST 'STACK' STO+
STD 'S\Gs' INCR
      IF 1 \=/
      THEN 1
'Activ' TR STO
      END "" STD S\Gs
+ 'Extent' TR STO
      \<< Extent +
      \>> 'Ex' TR STO
'Res' Ex DUP 'LATE'
TR STO OBJ\->
      IFERR Tr
      THEN UPDIR
LATE Sort
      END DUP
'STORE' TR STO DUP
CRDIR EVAL 'PVER'
RCL 'PVER' STO
UPDIR
      \<< DUP2
        IFERR STORE
STO
        THEN Check
        END DROP2
UPDIR
      \>> 'STo' TR
STO RAD
      \<<
        IFERR CLEAR
          IF Data
DUP TYPE 3 SAME
          THEN
'\GSDAT' STO
          ELSE DROP
          END
          IF Activ
1 SAME
          THEN
            \<< I13
CONT
            \>>
'SAVE' TR STO
            \<< I14
CONT
            \>>
'Delete' TR STO {
SAVE Delete } MENU
CLLCD
"Delete Everything
or Save Results ?"
Disp 0 DELKEYS Keys
STOKEYS -62 CF
Flags STOF
"Go and get some Coffee
it takes Time... !"
2 DISP 3 FREEZE
          ELSE 0
DELKEYS Keys
STOKEYS -62 CF
Flags STOF I14
          END
          IF I14
SAME
          THEN
STACK OBJ\-> DROP
UPDIR 'RESULTS'
PGDIR
          ELSE
STACK OBJ\-> DROP
GARB TRASH UNION
PURGE 2 MENU ""
# 5B15h SYSEVAL
PURGE
          END
Adress ARGUS 2 MENU
KILL
        THEN
ARGUS302
        END
      \>> 'Quit' TR
STO
      DO CLEAR
        DO CLLCD {
CONT { } { } { }
Quit } MENU
"Type Name of Function
and press <CONT>"
Disp
        UNTIL DEPTH
0 \=/
        END DUP
      UNTIL TYPE 6
SAME
      END 'Fx' YZ
STO Fx "" + \GD SWAP
+ OBJ\-> '\GDFx' YZ STO
      DO
        DO CLEAR
CLLCD { CONT { }
EVAL { } Quit }
MENU
"Type Equation like
   '\v/(A*B/COS(C))'
and <CONT> or use the
<EQUATION>-Writer and
 press first <EVAL> 
  and then <CONT>"
Disp
        UNTIL DEPTH
0 \=/
        END
      UNTIL DUP
TYPE 9 SAME
      END 'EQN' YZ
STO \GSDAT
      IF DUP TYPE 3
SAME
      THEN 'Data'
STO
      ELSE DROP
      END
      \<< 440 .1 BEEP
      \>> 'T\Gt' TR STO
      \<< y CONT
      \>> 'YES' TR
STO
      \<< n CONT
      \>> 'NO' TR STO
{ YES NO Quit }
MENU CLLCD { T\Gt 61
T\Gt 71 T\Gt 81 }
STOKEYS
"Simplified Erroreq.?
Takes Time!  "
Disp 'SIMP' TR STO
      IF SIMP y
SAME
      THEN
        \<< 'X3' STO
          IF X3
TYPE 6 SAME
          THEN T\Gt
          ELSE
            DO X3
DUP COLCT DUP 'X3'
STO
            UNTIL
BYTES DROP SWAP
BYTES DROP SAME
            END
          END X3
'X3' PURGE
        \>>
'Simplifier' TR STO
      END EQN
EQNVARS DROP DTAG
OBJ\-> \-> X1
      \<< { } 'ABC'
STO 1 X1
        FOR I1 DUP
\-> A1
          \<< "\GD" ""
A1 + +
          \>> OBJ\->
SWAP 'ABC' STO+
'ABC' STO+
        NEXT
      \>> ABC 'ABC'
YZ STO
      \<< 880 .1 BEEP
      \>> 'T\Gt' STO 0
'EEQ' STO ABC OBJ\->
2 / \-> I2
      \<< 1 I2
        FOR I3 EQN
SWAP \.d *
          IF SIMP y
SAME
          THEN
Simplifier
          END SQ
'EEQ' STO+
        NEXT
      \>> EEQ \v/ 'EEQ'
YZ STO 1 'Activ' TR
STO sc
      \<< 330 .1 BEEP
      \>> 'T\Gt' STO
      \<< 'D\Gd\Gl'
        IF DEPTH 2
\=/
        THEN CLEAR
        ELSE SWAP
        END CONT
      \>> 'OKAy' TR
STO
      DO
        DO CLEAR {
OKAy Quit } MENU
'D\Gd\Gl' PURGE CLLCD
"Give Number of Datas 
and press <OKAY> 
or press <QUIT> !"
Disp
        UNTIL DEPTH
2 SAME
        END
      UNTIL DUP
TYPE 0 SAME
      END SWAP YZ
STO { } 'R.LIST'
STO
      \<<
        IFERR SCI
        THEN T\Gt 1
'Q\Gn' TR STO
        END CONT
      \>> 'SCi' TR
STO
      \<<
        IFERR FIX
        THEN T\Gt 1
'Q\Gn' TR STO
        END CONT
      \>> 'FIx' TR
STO
      \<< STD CONT
      \>> 'STd' TR
STO RCLF \-> I15
      \<<
        DO
          DO 'Q\Gn'
PURGE CLEAR CLLCD {
SCi FIx STd } MENU
            IFERR
"Give Mode of 
Numberdisplay like
n SCI, n FIX or STD"
1 DISP 3 FREEZE T\Gt
HALT sm
            THEN T\Gt
1 'Q\Gn' TR STO
            END
          UNTIL Q\Gn
1 SAME NOT
          END
        UNTIL DEPTH
0 SAME
        END CLEAR
        IF D\Gd\Gl 0
SAME NOT
        THEN Fx \GDFx
P% 3 \->LIST ABC
UNION \->STR 'Gen'
STO 1 'I23' TR STO
y 'I26' TR STO ABC
'ABCD' TR STO { }
'ABC.UN' STO 1
'I99' TR STO 1 D\Gd\Gl
          FOR I4
            IF I23
1 SAME
            THEN {
YES NO } MENU CLLCD
"Do You wish to use
Units with Your 
Data-Values ?"
Disp 'I26' TR STO
            END
            IF I26
y SAME
            THEN
'SKEY' 26.1 ASN
              DO
ABC 42 MENU OBJ\-> \->
I24
\<< 1 I24
  FOR I25
    IF DUP const
SAME NOT
    THEN DUP "" + \->
I30 I31
      \<< DEPTH \->LIST
'I38' TR STO
        DO
          IFERR
            DO
              DO
CLEAR 42 MENU
"Give a Value for Xx !
Then press <SPC>-Key!"
"Xx" I31 REPLACE
CLLCD 1 DISP 3
FREEZE T\Gt HALt sm
              UNTIL
DEPTH 1 SAME
              END
            UNTIL
DUP TYPE 0 SAME
SWAP DUP TYPE 13
SAME ROT OR
            END
            IF I4 1
SAME
            THEN
              IF
DUP TYPE 13 SAME
              THEN
DUP OBJ\->
IF I25 2 / FP 0
SAME
THEN DROP I31 "\GD"
"" REPLACE ".UN" +
OBJ\-> * SWAP DROP
DUP
  IFERR OBJ\->
  THEN 1
  END I31 ".UN" +
OBJ\-> DUP 'ABC.UN'
STO+ YZ STO DROP
ELSE I31 ".UN" +
OBJ\-> DUP 'ABC.UN'
STO+ YZ STO DROP
END
              ELSE
IF I25 2 / FP 0
SAME
THEN I31 "\GD" ""
REPLACE ".UN" +
OBJ\-> * DUP
  IFERR OBJ\->
  THEN 1
  END I31 ".UN" +
OBJ\-> DUP 'ABC.UN'
STO+ YZ STO DROP
ELSE 1 I31 ".UN" +
OBJ\-> DUP 'ABC.UN'
STO+ YZ STO
END
              END
ABC.UN 'ABC.UN' YZ
STO
            ELSE
              IF
DUP TYPE 13 SAME
              THEN
OBJ\-> DROP I31 ".UN"
+ OBJ\-> *
              ELSE
I31 ".UN" + OBJ\-> *
              END
            END I30
STO 'I27' PURGE
          THEN ERRM
"
Try it again !"
+ CLLCD 1 DISP 3
FREEZE 1 'I27' TR
STO CLEAR ABC PURGE
ABC.UN PURGE
          END
        UNTIL I27 1
SAME NOT
        END CLEAR
I38 OBJ\-> DROP
      \>>
    ELSE DROP
    END
  NEXT
\>> CLEAR 0 'I34' TR
STO 0 'I35' TR STO
IFERR EQN EVAL
THEN CLEAR 1 'I35'
STO 1 'I27' STO
ELSE DUP
  IF DUP TYPE 13
SAME SWAP TYPE 0
SAME OR NOT
  THEN 1 'I27' TR
STO EQNVARS DROP
DTAG 1 'I34' STO
  END
END
IFERR EEQ EVAL
THEN CLEAR 1 'I35'
TR STO 1 'I27' STO
ELSE DUP
  IF DUP TYPE 13
SAME SWAP TYPE 0
SAME OR NOT
  THEN 1 'I27' TR
STO EQNVARS DROP
DTAG 1 'I34' STO
  END
END
IF I34 1 SAME
THEN
  IF DEPTH 2 SAME
  THEN UNION
  END DUP 'I33' TR
STO \->STR " " ","
REPLACE "{" " "
REPLACE "}" " "
REPLACE 'I32' TR
STO
END
              UNTIL
I27 1 SAME DUP
IF 1 SAME
THEN
  IF I34 1 SAME
  THEN
"Missing these Values:
XXX"
"XXX" I32 REPLACE
ABC PURGE ABC.UN
PURGE
  END
  IF I35 SAME
  THEN { Quit }
MENU
"There might be some
Units inconsistant !

Sorry, You have to 
quit and to check 
the equation's 
units. Then rerun!"
  END CLLCD 1 DISP
3 FREEZE HALt ABC
PURGE ABC.UN PURGE
END NOT
              END
            ELSE
CLEAR
            END
            IF I26
y SAME NOT
            THEN
'SKEY' 26.1 ASN 1 2
              FOR
I21
IF I21 1 SAME
THEN EQN EVAL
ELSE
  IF I23 3 SAME NOT
  THEN ABC OBJ\-> \->
I58
    \<< 1 I58
      FOR I59
        IF I59 2 /
FP 0 SAME NOT
        THEN DROP
        ELSE PURGE
        END
      NEXT
    \>>
  END EEQ EVAL DUP
TYPE 'I102' TR STO
END STEQ 30 MENU
DO CLEAR
  IF I23 1 SAME
  THEN 0 'I23' STO
CLLCD
"Type for each Variable
a Value without Units
and press its Key.
Go to next Set of 
Error Values by
pressing <SPC>-Key !"
1 DISP 3 FREEZE T\Gt
HALt
  ELSE
    IF I21 1 SAME
    THEN CLLCD
"And now the Values
for the next Equation
Variable Set !
Go to Tolerance Value
Set by pressing
     <SPC>-Key !"
1 DISP 3 FREEZE T\Gt
HALt
    ELSE
      IF I102 9
SAME
      THEN CLLCD
"Ready for a new Set
of Tolerance Values!

Go to next Equation
Set by pressing
    <SPC>-Key !"
1 DISP 3 FREEZE T\Gt
HALt
      END
    END
  END
UNTIL sm CLEAR ABC
OBJ\-> 'I50' TR STO 1
I50
  FOR I51 \-> I52
    \<<
      CASE I52 EVAL
TYPE 13 SAME
        THEN DUP
OBJ\-> DROP SWAP STO
        END I52
EVAL DUP TYPE 6
SAME SWAP TYPE 0
SAME OR NOT
        THEN
"What's about Zz ?"
"Zz" I52 \->STR
REPLACE 3 DISP 3
FREEZE T\Gt 2 WAIT
PLACEBO I52 STO
        END
      END
    \>>
  NEXT
  IF I21 1 SAME
  THEN EQN
  ELSE EEQ
  END EVAL DUP DUP
  IF TYPE 1 SAME
  THEN DEPTH \->LIST
'I40' TR STO
    \<< 30 MENU
"Press <SPC>-Key to
continue !"
1 DISP 3 FREEZE
HALt CLEAR
    \>> 'solve' TR
STO { CONT solve }
MENU CLLCD
"Sorry, but this will
end with a  
   COMPLEX RESULT !
Use <SOLVE>-Menu for
getting this Value !"
Disp I40 \->OBJ DROP
  END TYPE 0 SAME
DUP
  IF 0 SAME
  THEN SWAP DROP {
} MENU CLLCD
"Try it again !" 1
DISP 3 FREEZE 1
WAIT 30 MENU
  END
END
IF I21 1 SAME
THEN 'I22' TR STO
ELSE I22 SWAP
END
              NEXT
            END 2
\->LIST DUP 'Rr' TR
STO DUP OBJ\-> DROP
SWAP / 100 * ABS
'PRO' TR STO PRO
"(" SWAP RCLF \-> I7
            \<< 1 FIX
"" + I7 STOF
            \>> + "%"
+ ")" + SWAP OBJ\->
DROP "\177" SWAP "" +
+ SWAP "" + SWAP +
"
" + SWAP + "'"
" " REPLACE 1 \->LIST
R.LIST SWAP
'R.LIST' STO
'R.LIST' STO+
R.LIST 'R.LIST' TR
DUP2 STo STO Rr
OBJ\-> DROP PRO ABCD
EVAL DEPTH 'I18' TR
STO 1 I18
            FOR I19
I18 ROLL UVAL
            NEXT
I18 \->ARRY Rr OBJ\->
ABC OBJ\-> \-> I20
            \<< I20
DROPN ABC EVAL I20
3 + \->LIST \->STR "
"
SWAP + Gen SWAP
'Gen' STO 'Gen'
STO+
            \>>
            IF I4
D\Gd\Gl \=/
            THEN \GS+
            ELSE \GS+
\GSDAT 'Mat' YZ STO
CL\GS Gen 'Gen' YZ
PURGE DROP
            END
            IF I23
1 SAME I99 1 SAME
OR D\Gd\Gl 1 SAME NOT
AND
            THEN 2
'I23' STO 2 'I99'
STO { YES NO } MENU
CLLCD
"Do You want to keep
some of the Values
constant ?"
Disp
              IF y
SAME
              THEN
3 'I23' STO ABC { }
'ABC' STO OBJ\-> \->
I39
\<< 1 I39
  FOR I40 DUP \->STR
"Keep Yy-Value 
   constant ? "
SWAP "Yy" SWAP
REPLACE CLLCD Disp
    IF y SAME
      IF I26 y SAME
      THEN NOT
      END
    THEN 'ABC' STO+
    ELSE
      IF I26 y SAME
NOT
      THEN PURGE
      ELSE DROP
      END 'const'
'ABC' STO+
    END
  NEXT
\>>
              ELSE
ABCD PURGE
              END
            END
          NEXT ABCD
PURGE { ABCD ABC }
PURGE ABC.UN
'ABC.UN' YZ STO T\Gt
I15 STOF
        END
      \>> 'CST' PURGE
1 MENU CLEAR
      \<< CST 'cst'
STO { CONT } MENU
R.LIST OBJ\-> \-> I6
        \<< I6 DROPN
"Press <CONT> to scan 
chosen Results ! "
1 DISP 3 FREEZE -1
WAIT DROP
          IF I6 0
SAME NOT
          THEN 1 I6
            FOR I7
R.LIST I7 GET
PROMPT
            NEXT
          END
        \>> { Yes { }
{ } { } { } No }
MENU CLLCD 1 MENU
"See Equations ?
Switch with <ATTN> !"
1 DISP 3 FREEZE -1
WAIT
        IF 11.1
SAME
        THEN Eqn
Eeq
        END cst
'CST' 'cst' PURGE
STO 1 MENU
      \>> 'Scan' DUP2
STo TR STO
"\<< XXX Scan UPDIR \>>"
"XXX" LATE REPLACE
OBJ\-> "Scn" Ex OBJ\->
DUP 'SCans' STO+ TR
STO T\Gt Fx EQN =
'Fx' YZ STO T\Gt
CLLCD
"Create Equation Grob.."
1 DISP 3 FREEZE .6
WAIT Fx 0 \->GROB
'EQG' DUP2 STo YZ
STO \GDFx EEQ = '\GDFx'
YZ STO T\Gt \GDFx CLLCD
"Create Errorequation
  Grob ..."
1 DISP 3 FREEZE .6
WAIT 0 \->GROB 'EEG'
DUP2 STo YZ STO
"\<< X Y PVER  Z \>>"
DUP "X" " " REPLACE
"Z" " " REPLACE DUP
"Y" "EQG" Ex
REPLACE OBJ\-> 'Eqn'
YZ T\Gt SWAP \->STR
"EQG" Ex "EQG"
REPLACE OBJ\-> SWAP
STo T\Gt "Y" "EEG" Ex
REPLACE OBJ\-> 'Eeq'
YZ T\Gt SWAP \->STR
"EEG" Ex "EEG"
REPLACE OBJ\-> SWAP
STo T\Gt "X" LATE
REPLACE DUP "Y"
"EQG" Ex REPLACE
"Z" " UPDIR "
REPLACE OBJ\-> "Eqn"
Ex OBJ\-> DUP
'results' STO+ TR
STO T\Gt "Y" "EEG" Ex
REPLACE "Z"
" UPDIR " REPLACE
OBJ\-> "Eeq" Ex OBJ\->
DUP 'results' STO+
TR STO T\Gt { YES NO
} MENU
"See Results ?"
Disp
      IF y SAME
      THEN { CONT }
SCans UNION results
UNION MENU CLLCD
"Here They Are !"
Disp
      END { YES NO
} MENU CLLCD
"Next Data Analysis ?"
PROMPT { 61 71 81 }
DELKEYS
    UNTIL n SAME
    END SCans
results UNION TRASH
SDIFF 'TRASH' STO
Quit
  THEN
    IF Data DUP
TYPE 3 SAME
    THEN '\GSDAT' STO
    ELSE DROP
    END 0 DELKEYS
Keys STOKEYS -62 CF
Flags STOF STACK
OBJ\-> DROP GARB
TRASH UNION PURGE 2
MENU "" # 5B15h
SYSEVAL PURGE
Adress ARGUS 2 MENU
  END
\>>
