home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / MT_MTX12.ZIP / DRIVE-D.PPE (.txt) < prev    next >
Encoding:
PCBoard Programming Language Executable  |  1993-08-19  |  17.8 KB  |  924 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 1.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     String   STRING001
  20.     String   STRING002
  21.     String   STRING003
  22.     String   STRING004
  23.     String   STRING005
  24.     String   STRING006
  25.     String   STRING007
  26.     String   STRING008
  27.     String   STRING009
  28.     String   STRING010
  29.     String   STRING011
  30.     String   STRING012
  31.     String   STRING013
  32.     String   STRING014
  33.     String   STRING015
  34.     String   STRING016
  35.     String   STRING017
  36.     String   STRING018
  37.     String   STRING019
  38.     String   STRING020
  39.     String   STRING021
  40.     String   STRING022
  41.     String   STRING023
  42.     String   STRING024
  43.     String   STRING025
  44.     String   STRING026
  45.     String   STRING027
  46.     String   STRING028
  47.     String   STRING029
  48.     String   STRING030
  49.     String   STRING031
  50.     String   STRING032
  51.     String   STRING033
  52.     String   STRING034
  53.     String   STRING035
  54.     String   STRING036
  55.     String   STRING037
  56.     String   STRING038
  57.     String   STRING039
  58.     String   STRING040
  59.     String   STRING041
  60.     String   STRING042
  61.     String   STRING043
  62.     String   STRING044
  63.     String   STRING045
  64.     String   STRING046
  65.     String   STRING047
  66.     String   STRING048
  67.     String   STRING049
  68.     String   STRING050
  69.     String   STRING051
  70.     String   STRING052
  71.     String   STRING053
  72.     String   STRING054
  73.     String   STRING055
  74.     String   STRING056
  75.     String   STRING057
  76.     String   STRING058
  77.     String   STRING059
  78.     String   STRING060
  79.     String   STRING061
  80.     String   STRING062
  81.     String   STRING063
  82.     String   STRING064
  83.     String   STRING065
  84.     String   STRING066
  85.     String   STRING067
  86.     String   STRING068
  87.     String   STRING069
  88.     String   STRING070
  89.     String   STRING071
  90.     String   STRING072
  91.     String   STRING073
  92.     String   STRING074
  93.     String   STRING075
  94.     String   STRING076
  95.     String   STRING077
  96.     String   STRING078
  97.     String   STRING079
  98.     String   STRING080
  99.     String   STRING081
  100.     String   STRING082
  101.     String   STRING083
  102.     String   STRING084
  103.     String   STRING085
  104.     String   STRING086
  105.     String   STRING087
  106.     String   STRING088
  107.     String   STRING089
  108.     String   STRING090
  109.     String   STRING091
  110.     String   STRING092
  111.     String   STRING093
  112.     String   STRING094
  113.     String   STRING095
  114.     String   STRING096
  115.     String   STRING097
  116.     String   STRING098
  117.     String   STRING099
  118.     String   STRING100
  119.     String   STRING101
  120.     String   STRING102
  121.     String   STRING103
  122.     String   STRING104
  123.     String   STRING105
  124.     String   STRING106
  125.     String   STRING107
  126.     String   STRING108
  127.     String   STRING109
  128.     String   STRING110
  129.     String   STRING111
  130.     String   STRING112
  131.     String   STRING113
  132.     String   STRING114
  133.     String   STRING115
  134.     String   STRING116
  135.     String   STRING117
  136.     String   STRING118
  137.     String   STRING119
  138.     String   STRING120
  139.     String   STRING121
  140.     String   STRING122
  141.     String   STRING123
  142.     String   STRING124
  143.     String   STRING125
  144.     String   STRING126
  145.     String   STRING127
  146.     String   STRING128
  147.     String   STRING129
  148.     String   STRING130
  149.     String   STRING131
  150.     String   STRING132
  151.     String   STRING133
  152.     String   STRING134
  153.     String   STRING135
  154.     String   STRING136
  155.     String   STRING137
  156.     String   STRING138
  157.     String   STRING139
  158.     String   STRING140
  159.     String   STRING141
  160.     String   STRING142
  161.     String   STRING143
  162.     String   STRING144
  163.     String   STRING145
  164.     String   STRING146
  165.     String   STRING147
  166.     String   STRING148
  167.     String   STRING149
  168.     String   STRING150
  169.     String   STRING151
  170.     String   STRING152
  171.     String   STRING153
  172.     String   STRING154
  173.     String   STRING155
  174.     String   STRING156
  175.     String   STRING157
  176.     String   STRING158
  177.     String   STRING159
  178.     String   STRING160
  179.     String   STRING161
  180.     String   STRING162
  181.     String   STRING163
  182.     String   STRING164
  183.     String   STRING165
  184.     String   STRING166
  185.     String   STRING167
  186.     String   STRING168
  187.     String   STRING169
  188.  
  189. ;------------------------------------------------------------------------------
  190.  
  191.     STRING002 = ""
  192.     If (Exist(PPEPath() + "MATRIX.CNF") == 0) Then
  193.         PrintLn 
  194.         PrintLn "Error!  File MATRIX.CNF not found!"
  195.         PrintLn "This File includes all Matrix Paramaters and is required"
  196.         PrintLn "for MT-Matrix (Pre-Login-Shell for PCBoard)  to work!"
  197.         PrintLn "Please notify SysOp..."
  198.         FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  199.         FPutLn 1, "  ERROR! MATRIX.CNF File Not Found...  Matrix Aborted!"
  200.         FClose 1
  201.         PrintLn 
  202.         Wait
  203.         End
  204.     Endif
  205.     FOpen 1, PPEPath() + "MATRIX.CNF", 0, 0
  206.     FGet 1, STRING003
  207.     FGet 1, STRING004
  208.     FGet 1, STRING005
  209.     FGet 1, STRING006
  210.     FGet 1, STRING007
  211.     FGet 1, STRING008
  212.     FGet 1, STRING009
  213.     FGet 1, STRING010
  214.     FGet 1, STRING011
  215.     FGet 1, STRING012
  216.     FGet 1, STRING013
  217.     FGet 1, STRING014
  218.     FGet 1, STRING015
  219.     FGet 1, STRING016
  220.     FGet 1, STRING017
  221.     FGet 1, STRING018
  222.     FGet 1, STRING019
  223.     FGet 1, STRING020
  224.     FGet 1, STRING021
  225.     FGet 1, STRING022
  226.     FGet 1, STRING023
  227.     FGet 1, STRING024
  228.     FGet 1, STRING025
  229.     FGet 1, STRING026
  230.     FClose 1
  231.     If (Exist(PPEPath() + "COMMANDS.CNF") == 0) Then
  232.         PrintLn 
  233.         PrintLn "Error!  File COMMANDS.CNF not found!"
  234.         PrintLn "This file contains all the Matrix Commands <as chosen by the"
  235.         PrintLn "sysop> and is needed for MT-Matrix to work properly!"
  236.         PrintLn "Please notify SysOp..."
  237.         FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  238.         FPutLn 1, "  ERROR!  COMMANDS.CNF file NOT FOUND...  Matrix Aborted!"
  239.         FClose 1
  240.         PrintLn 
  241.         Wait
  242.         End
  243.     Endif
  244.     FOpen 2, PPEPath() + "COMMANDS.CNF", 0, 0
  245.     FGet 2, STRING028
  246.     FGet 2, STRING029
  247.     FGet 2, STRING030
  248.     FGet 2, STRING031
  249.     FGet 2, STRING032
  250.     FGet 2, STRING033
  251.     FGet 2, STRING034
  252.     FGet 2, STRING035
  253.     FGet 2, STRING036
  254.     FGet 2, STRING037
  255.     FGet 2, STRING038
  256.     FGet 2, STRING039
  257.     FGet 2, STRING040
  258.     FGet 2, STRING041
  259.     FGet 2, STRING042
  260.     FGet 2, STRING043
  261.     FGet 2, STRING044
  262.     FGet 2, STRING045
  263.     FGet 2, STRING046
  264.     FGet 2, STRING047
  265.     FGet 2, STRING048
  266.     FGet 2, STRING049
  267.     FGet 2, STRING050
  268.     FClose 2
  269.     If (Exist(PPEPath() + "PROMPTS.CNF") == 0) Then
  270.         PrintLn 
  271.         PrintLn "Error!  File PROMPTS.CNF not found!"
  272.         PrintLn "This file contains all the Matrix Prompts <as chosen by the"
  273.         PrintLn "sysop> and is needed for MT-Matrix to work properly!"
  274.         PrintLn "Please notify SysOp..."
  275.         FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  276.         FPutLn 1, "  ERROR!  PROMPTS.CNF File NOT FOUND...  Matrix Aborted!"
  277.         FClose 1
  278.         PrintLn 
  279.         Wait
  280.         End
  281.     Endif
  282.     FOpen 3, PPEPath() + "PROMPTS.CNF", 0, 0
  283.     FGet 3, STRING051
  284.     FGet 3, STRING052
  285.     FGet 3, STRING053
  286.     FGet 3, STRING054
  287.     FGet 3, STRING055
  288.     FGet 3, STRING056
  289.     FGet 3, STRING057
  290.     FGet 3, STRING058
  291.     FGet 3, STRING059
  292.     FGet 3, STRING060
  293.     FGet 3, STRING061
  294.     FGet 3, STRING062
  295.     FGet 3, STRING063
  296.     FGet 3, STRING064
  297.     FGet 3, STRING065
  298.     FGet 3, STRING066
  299.     FGet 3, STRING067
  300.     FGet 3, STRING068
  301.     FGet 3, STRING069
  302.     FGet 3, STRING070
  303.     FGet 3, STRING071
  304.     FGet 3, STRING072
  305.     FGet 3, STRING073
  306.     FGet 3, STRING074
  307.     FGet 3, STRING075
  308.     FGet 3, STRING076
  309.     FGet 3, STRING077
  310.     FGet 3, STRING078
  311.     FGet 3, STRING079
  312.     FGet 3, STRING080
  313.     FGet 3, STRING081
  314.     FGet 3, STRING082
  315.     FGet 3, STRING083
  316.     FGet 3, STRING084
  317.     FGet 3, STRING085
  318.     FGet 3, STRING086
  319.     FGet 3, STRING087
  320.     FGet 3, STRING088
  321.     FGet 3, STRING089
  322.     FGet 3, STRING090
  323.     FGet 3, STRING091
  324.     FGet 3, STRING092
  325.     FGet 3, STRING093
  326.     FGet 3, STRING094
  327.     FGet 3, STRING095
  328.     FGet 3, STRING096
  329.     FGet 3, STRING097
  330.     FGet 3, STRING098
  331.     FGet 3, STRING099
  332.     FGet 3, STRING100
  333.     FGet 3, STRING101
  334.     FGet 3, STRING102
  335.     FGet 3, STRING103
  336.     FGet 3, STRING104
  337.     FGet 3, STRING105
  338.     FGet 3, STRING106
  339.     FGet 3, STRING107
  340.     FGet 3, STRING108
  341.     FGet 3, STRING109
  342.     FGet 3, STRING110
  343.     FGet 3, STRING111
  344.     FGet 3, STRING112
  345.     FGet 3, STRING113
  346.     FGet 3, STRING114
  347.     FGet 3, STRING115
  348.     FGet 3, STRING116
  349.     FGet 3, STRING117
  350.     FGet 3, STRING118
  351.     FGet 3, STRING119
  352.     FGet 3, STRING120
  353.     FGet 3, STRING121
  354.     FGet 3, STRING122
  355.     FGet 3, STRING123
  356.     FGet 3, STRING124
  357.     FGet 3, STRING125
  358.     FGet 3, STRING126
  359.     FGet 3, STRING127
  360.     FGet 3, STRING128
  361.     FGet 3, STRING129
  362.     FGet 3, STRING130
  363.     FGet 3, STRING131
  364.     FGet 3, STRING132
  365.     FGet 3, STRING133
  366.     FGet 3, STRING134
  367.     FGet 3, STRING135
  368.     FGet 3, STRING136
  369.     FGet 3, STRING137
  370.     FGet 3, STRING138
  371.     FGet 3, STRING139
  372.     FGet 3, STRING140
  373.     FGet 3, STRING141
  374.     FGet 3, STRING142
  375.     FClose 3
  376.     If (Exist(PPEPath() + "PPE.CNF") == 0) Then
  377.         PrintLn 
  378.         PrintLn "Error!  File PPE.CNF not found!"
  379.         PrintLn "This file contains all the Matrix External PPE commands"
  380.         PrintLn "and configurations parameters for any EXTERNAL PPE files"
  381.         PrintLn "you might want to run, and is reqired for MT-Matrix Extra"
  382.         PrintLn "PPE properly to work properly!    Please notify SysOp..."
  383.         FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  384.         FPutLn 1, "  ERROR!  PPE.CNF File NOT FOUND...  Matrix Aborted!"
  385.         FClose 1
  386.         PrintLn 
  387.         Wait
  388.         End
  389.     Endif
  390.     FOpen 4, PPEPath() + "PPE.CNF", 0, 0
  391.     FGet 4, STRING143
  392.     FGet 4, STRING153
  393.     FGet 4, STRING144
  394.     FGet 4, STRING154
  395.     FGet 4, STRING145
  396.     FGet 4, STRING155
  397.     FGet 4, STRING146
  398.     FGet 4, STRING156
  399.     FGet 4, STRING147
  400.     FGet 4, STRING157
  401.     FGet 4, STRING148
  402.     FGet 4, STRING158
  403.     FGet 4, STRING149
  404.     FGet 4, STRING159
  405.     FGet 4, STRING150
  406.     FGet 4, STRING160
  407.     FGet 4, STRING151
  408.     FGet 4, STRING161
  409.     FGet 4, STRING152
  410.     FGet 4, STRING162
  411.     FClose 4
  412.     STRING027 = STRING025 - 1
  413.     If (Exist(PPEPath() + "DRIVES.CNF") == 0) Then
  414.         PrintLn 
  415.         PrintLn "Error!  File DRIVES.CNF not found!"
  416.         PrintLn "This file contains all the Matrix-(Simulated) Drives Letters"
  417.         PrintLn "configurations parameters and is reqired for MT-Matrix Extra"
  418.         PrintLn "Simulated Drives to work properly!    Please notify SysOp..."
  419.         FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  420.         FPutLn 1, "  ERROR!  DRIVES.CNF File NOT FOUND...  Matrix Aborted!"
  421.         FClose 1
  422.         PrintLn 
  423.         Wait
  424.         End
  425.     Endif
  426.     FOpen 4, PPEPath() + "DRIVES.CNF", 0, 0
  427.     FGet 4, STRING163
  428.     FGet 4, STRING164
  429.     FGet 4, STRING167
  430.     FGet 4, STRING169
  431.     FClose 4
  432.     STRING027 = STRING025 - 1
  433.     :LABEL001
  434.     FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  435.     If (STRING001 == "") Then
  436.         STRING001 = "NOT AVAILABLE"
  437.     Endif
  438.     FPutLn 1, "  (", "", ") Cmd used by: (", STRING001, ") at: (", Time(), ")"
  439.     FClose 1
  440.     PrintLn 
  441.     :LABEL002
  442.     ResetDisp
  443.     STRING165 = ""
  444.     InputStr STRING164 + " _", STRING165, 15, 110, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~!@#$%^&*()_+|`1234567890-=<>?/\;':., ", 2 + 4 + 8 + 64
  445.     If (STRING165 == "") Gosub LABEL002
  446.     If (STRING165 == "BULLETIN") Gosub LABEL024
  447.     If (STRING165 == "BLT") Gosub LABEL024
  448.     If (STRING165 == "QUIT") Gosub LABEL015
  449.     If (STRING165 == STRING028) Goto LABEL003
  450.     If (STRING165 == STRING029) Goto LABEL003
  451.     If (STRING165 == STRING030) Goto LABEL004
  452.     If (STRING165 == STRING031) Goto LABEL037
  453.     If (STRING165 == STRING032) Goto LABEL036
  454.     If (STRING165 == STRING033) Goto LABEL005
  455.     If (STRING165 == STRING034) Goto LABEL006
  456.     If (STRING165 == STRING035) Goto LABEL007
  457.     If (STRING165 == STRING036) Goto LABEL008
  458.     If (STRING165 == STRING037) Goto LABEL009
  459.     If (STRING165 == STRING038) Goto LABEL009
  460.     If (STRING165 == STRING039) Goto LABEL010
  461.     If (STRING165 == STRING040) Goto LABEL011
  462.     If (STRING165 == STRING041) Goto LABEL035
  463.     If (STRING165 == STRING043) Goto LABEL014
  464.     If (STRING165 == STRING044) Goto LABEL034
  465.     If (STRING165 == STRING045) Goto LABEL031
  466.     If (STRING165 == STRING046) Goto LABEL031
  467.     If (STRING165 == STRING047) Goto LABEL032
  468.     If (STRING165 == STRING048) Goto LABEL012
  469.     If (STRING165 == STRING049) Goto LABEL013
  470.     If (STRING165 == STRING050) Goto LABEL029
  471.     If (Upper(STRING165) == STRING011) Goto LABEL004
  472.     If (Lower(STRING165) == STRING011) Goto LABEL004
  473.     If (Upper(STRING165) == STRING024) Goto LABEL016
  474.     If (Lower(STRING165) == STRING024) Goto LABEL016
  475.     If (Upper(STRING165) == "CD " + STRING024) Goto LABEL016
  476.     If (Lower(STRING165) == "CD " + STRING024) Goto LABEL016
  477.     If (Upper(STRING165) == STRING163) Goto LABEL002
  478.     If (Lower(STRING165) == STRING163) Goto LABEL002
  479.     If (Upper(STRING165) == "CD D:" + STRING163) Goto LABEL002
  480.     If (Lower(STRING165) == "CD D:" + STRING163) Goto LABEL002
  481.     If (Upper(STRING165) == "CD D: " + STRING163) Goto LABEL002
  482.     If (Lower(STRING165) == "CD D: " + STRING163) Goto LABEL002
  483.     If (Upper(STRING165) == "CD C:" + STRING163) Goto LABEL002
  484.     If (Lower(STRING165) == "CD C:" + STRING163) Goto LABEL002
  485.     If (Upper(STRING165) == "CD C: " + STRING163) Goto LABEL002
  486.     If (Lower(STRING165) == "CD C: " + STRING163) Goto LABEL002
  487.     If (Upper(STRING165) == "DIR " + STRING024) Goto LABEL038
  488.     If (Lower(STRING165) == "DIR " + STRING024) Goto LABEL038
  489.     If (Upper(STRING165) == "DIR C:" + STRING024) Goto LABEL038
  490.     If (Lower(STRING165) == "DIR C:" + STRING024) Goto LABEL038
  491.     If (Upper(STRING165) == "DIR C: " + STRING024) Goto LABEL038
  492.     If (Lower(STRING165) == "DIR C: " + STRING024) Goto LABEL038
  493.     If (Upper(STRING165) == "DIR D:" + STRING024) Goto LABEL038
  494.     If (Lower(STRING165) == "DIR D:" + STRING024) Goto LABEL038
  495.     If (Upper(STRING165) == "DIR D: " + STRING024) Goto LABEL038
  496.     If (Lower(STRING165) == "DIR D: " + STRING024) Goto LABEL038
  497.     If (Upper(STRING165) == "DIR " + STRING163) Goto LABEL037
  498.     If (Lower(STRING165) == "DIR " + STRING163) Goto LABEL037
  499.     If (Upper(STRING165) == "DIR D:" + STRING163) Goto LABEL037
  500.     If (Lower(STRING165) == "DIR D:" + STRING163) Goto LABEL037
  501.     If (Upper(STRING165) == "DIR D: " + STRING163) Goto LABEL037
  502.     If (Lower(STRING165) == "DIR D: " + STRING163) Goto LABEL037
  503.     If (Upper(STRING165) == "DIR C:" + STRING163) Goto LABEL037
  504.     If (Lower(STRING165) == "DIR C:" + STRING163) Goto LABEL037
  505.     If (Upper(STRING165) == "DIR C: " + STRING163) Goto LABEL037
  506.     If (Lower(STRING165) == "DIR C: " + STRING163) Goto LABEL037
  507.     If (STRING165 == "LOGOFF") Gosub LABEL031
  508.     If (STRING165 == "BYE") Gosub LABEL031
  509.     If (STRING165 == "HANGUP") Gosub LABEL031
  510.     If (STRING165 == "DIR") Gosub LABEL037
  511.     If (STRING165 == "DIR /P") Gosub LABEL037
  512.     If (STRING165 == "DIR /W") Gosub LABEL039
  513.     If (STRING165 == "DIR/P") Gosub LABEL037
  514.     If (STRING165 == "DIR/W") Gosub LABEL039
  515.     If (STRING165 == "DIR D:") Gosub LABEL037
  516.     If (STRING165 == "DIR C:") Gosub LABEL038
  517.     If (STRING165 == "DIR C: /P") Gosub LABEL038
  518.     If (STRING165 == "DIR C: /W") Gosub LABEL038
  519.     If (STRING165 == "DIR C /P") Gosub LABEL038
  520.     If (STRING165 == "DIR C /W") Gosub LABEL038
  521.     If (STRING165 == "CD \") Gosub LABEL041
  522.     If (STRING165 == "COPY") Gosub LABEL041
  523.     If (STRING165 == "CD \") Gosub LABEL041
  524.     If (STRING165 == "CD\") Gosub LABEL041
  525.     If (STRING165 == "CD..") Gosub LABEL041
  526.     If (STRING165 == "CD ..") Gosub LABEL041
  527.     If (STRING165 == "CD") Gosub LABEL041
  528.     If (STRING165 == "DEL") Gosub LABEL041
  529.     If (STRING165 == "DELETE") Gosub LABEL041
  530.     If (STRING165 == "ERASE") Gosub LABEL041
  531.     If (STRING165 == "ERASE.EXE") Gosub LABEL041
  532.     If (STRING165 == "DELETE") Gosub LABEL041
  533.     If (STRING165 == "RUN ") Gosub LABEL041
  534.     If (STRING165 == "RUN") Gosub LABEL042
  535.     If (STRING165 == "TYPE") Gosub LABEL042
  536.     If (STRING165 == "DELETE.EXE") Gosub LABEL041
  537.     If (STRING165 == "DELETE") Gosub LABEL041
  538.     If (STRING165 == "DEL *.*") Gosub LABEL041
  539.     If (STRING165 == "DEL *") Gosub LABEL041
  540.     If (STRING165 == "VERSION") Gosub LABEL030
  541.     If (STRING165 == "VER") Gosub LABEL030
  542.     If (STRING165 == "EXIT") Gosub LABEL033
  543.     If (STRING165 == "A:") Gosub LABEL040
  544.     If (STRING165 == "B:") Gosub LABEL040
  545.     If (STRING165 == "C:") Gosub LABEL016
  546.     If (STRING165 == "D:") Gosub LABEL002
  547.     If (STRING165 == "E:") Gosub LABEL040
  548.     If (STRING165 == "F:") Gosub LABEL040
  549.     If (STRING165 == "G:") Gosub LABEL040
  550.     If (STRING165 == "H:") Gosub LABEL040
  551.     If (STRING165 == "I:") Gosub LABEL040
  552.     If (STRING165 == "K:") Gosub LABEL040
  553.     If (STRING165 == "L:") Gosub LABEL040
  554.     If (STRING165 == "M:") Gosub LABEL040
  555.     If (STRING165 == "N:") Gosub LABEL040
  556.     If (STRING165 == "O:") Gosub LABEL040
  557.     Goto LABEL043
  558.     :LABEL003
  559.     KbdStuff STRING028 + Chr(13)
  560.     End
  561.     :LABEL004
  562.     KbdStuff STRING011 + Chr(13)
  563.     End
  564.     :LABEL005
  565.     KbdStuff STRING033 + Chr(13)
  566.     End
  567.     :LABEL006
  568.     KbdStuff STRING034 + Chr(13)
  569.     End
  570.     :LABEL007
  571.     KbdStuff STRING035 + Chr(13)
  572.     End
  573.     :LABEL008
  574.     KbdStuff STRING036 + Chr(13)
  575.     End
  576.     :LABEL009
  577.     KbdStuff STRING038 + Chr(13)
  578.     End
  579.     :LABEL010
  580.     KbdStuff STRING039 + Chr(13)
  581.     End
  582.     :LABEL011
  583.     KbdStuff STRING040 + Chr(13)
  584.     End
  585.     :LABEL012
  586.     KbdStuff STRING048 + Chr(13)
  587.     End
  588.     :LABEL013
  589.     KbdStuff STRING049 + Chr(13)
  590.     End
  591.     :LABEL014
  592.     KbdStuff STRING043 + Chr(13)
  593.     End
  594.     :LABEL015
  595.     PrintLn 
  596.     PrintLn "@X07Quitting Back to @X02(@X0F" + STRING024 + "@X02)@X07"
  597.     PrintLn 
  598.     End
  599.     :LABEL016
  600.     PrintLn 
  601.     End
  602.     PrintLn "@X07" + STRING129 + "@X07"
  603.     Delay 25
  604.     PrintLn 
  605.     Cls
  606.     :LABEL017
  607.     PrintLn STRING021 + STRING004 + "  ■ [File Transfers]@X07"
  608.     If (Exist(PPEPath() + "DIR")) Then
  609.         PrintLn 
  610.         DispFile PPEPath() + "DIR", 4 + 2 + 1
  611.     Endif
  612.     If (Exist(STRING169 + "DIR")) DispFile STRING169 + "DIR", 4 + 2 + 1
  613.     :LABEL018
  614.     STRING168 = ""
  615.     PrintLn "@PON@"
  616.     InputStr "@X07" + STRING130, STRING168, 15, 2, "dDuUrRqQ 1234567890", 2 + 8 + 64
  617.     PrintLn "@X07"
  618.     If (STRING168 == "R") Gosub LABEL017
  619.     If (STRING168 == "U") Gosub LABEL023
  620.     If (STRING168 == "D") Gosub LABEL022
  621.     If (STRING168 == "1") Gosub LABEL021
  622.     If (STRING168 == "2") Gosub LABEL021
  623.     If (STRING168 == "3") Gosub LABEL021
  624.     If (STRING168 == "4") Gosub LABEL021
  625.     If (STRING168 == "5") Gosub LABEL021
  626.     If (STRING168 == "6") Gosub LABEL021
  627.     If (STRING168 == "7") Gosub LABEL021
  628.     If (STRING168 == "8") Gosub LABEL021
  629.     If (STRING168 == "9") Gosub LABEL021
  630.     If (STRING168 == "10") Gosub LABEL021
  631.     If (STRING168 == "11") Gosub LABEL021
  632.     If (STRING168 == "12") Gosub LABEL021
  633.     If (STRING168 == "13") Gosub LABEL021
  634.     If (STRING168 == "14") Gosub LABEL021
  635.     If (STRING168 == "15") Gosub LABEL021
  636.     If (STRING168 == "16") Gosub LABEL021
  637.     If (STRING168 == "17") Gosub LABEL021
  638.     If (STRING168 == "18") Gosub LABEL021
  639.     If (STRING168 == "19") Gosub LABEL021
  640.     If (STRING168 == "20") Gosub LABEL021
  641.     If (STRING168 == "21") Gosub LABEL021
  642.     If (STRING168 == "22") Gosub LABEL021
  643.     If (STRING168 == "23") Gosub LABEL021
  644.     If (STRING168 == "24") Gosub LABEL021
  645.     If (STRING168 == "25") Gosub LABEL021
  646.     If (STRING168 == "26") Gosub LABEL021
  647.     If (STRING168 == "27") Gosub LABEL021
  648.     If (STRING168 == "28") Gosub LABEL021
  649.     If (STRING168 == "29") Gosub LABEL021
  650.     If (STRING168 == "30") Gosub LABEL021
  651.     If (STRING168 == "Q") Gosub LABEL019
  652.     If (STRING168 == "") Gosub LABEL019
  653.     If (STRING168 == "0") Gosub LABEL019
  654.     Goto LABEL020
  655.     :LABEL019
  656.     Print "@X07" + STRING131
  657.     Delay 2
  658.     Print " ."
  659.     Delay 2
  660.     Print " ."
  661.     Delay 2
  662.     Print " ."
  663.     PrintLn "@X07"
  664.     Goto LABEL001
  665.     :LABEL020
  666.     PrintLn "@X0CMatrix File Directory (@X0F" + STRING168 + "@X0C) is an invalid selection@X07"
  667.     Goto LABEL018
  668.     :LABEL021
  669.     If (Exist(PPEPath() + "DIR" + STRING168)) Then
  670.         PrintLn 
  671.         DispFile PPEPath() + "DIR" + STRING168, 4 + 2 + 1
  672.     Endif
  673.     If (Exist(STRING169 + "DIR" + STRING168)) DispFile STRING169 + "DIR" + STRING168, 4 + 2 + 1
  674.     FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  675.     FPutLn 1, "  Matrix Files Directory (DIR.", STRING168, ") Viewed"
  676.     FClose 1
  677.     Goto LABEL018
  678.     :LABEL022
  679.     Cls
  680.     PrintLn STRING021 + STRING004 + "  ■ Transfers [Download]@X07"
  681.     PrintLn 
  682.     Delay 45
  683.     PrintLn "Sorry Matrix Downloads are currently disabled"
  684.     Goto LABEL018
  685.     :LABEL023
  686.     Cls
  687.     PrintLn STRING021 + STRING004 + "  ■ Transfers [Upload]@X07"
  688.     PrintLn 
  689.     Delay 35
  690.     PrintLn "Sorry Matrix Uploads are currently disabled"
  691.     Goto LABEL018
  692.     :LABEL024
  693.     Delay 10
  694.     FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  695.     If (STRING001 == "") Then
  696.         STRING001 = "NOT AVAILABLE"
  697.     Endif
  698.     FPutLn 1, "  (", STRING165, ") Cmd used by: (", STRING001, ") at: (", Time(), ")"
  699.     FClose 1
  700.     Cls
  701.     STRING166 = ""
  702.     PrintLn STRING021 + STRING004 + "  ■ [Bulletins]@X07"
  703.     PrintLn "@PON@"
  704.     STRING166 = ""
  705.     If (Exist(PPEPath() + "BLT")) Then
  706.         PrintLn 
  707.         DispFile PPEPath() + "BLT", 4 + 2 + 1
  708.     Endif
  709.     If (Exist(STRING167 + "BLT")) DispFile STRING167 + "BLT", 4 + 2 + 1
  710.     :LABEL025
  711.     PrintLn 
  712.     STRING166 = ""
  713.     InputStr "@X07" + STRING132, STRING166, 15, 2, "rRqQ 1234567890", 2 + 8 + 64
  714.     If (STRING166 == "") Goto LABEL026
  715.     If (STRING166 == "Q") Goto LABEL026
  716.     If (STRING166 == "R") Gosub LABEL024
  717.     If (STRING166 == "1") Gosub LABEL028
  718.     If (STRING166 == "2") Gosub LABEL028
  719.     If (STRING166 == "3") Gosub LABEL028
  720.     If (STRING166 == "4") Gosub LABEL028
  721.     If (STRING166 == "5") Gosub LABEL028
  722.     If (STRING166 == "6") Gosub LABEL028
  723.     If (STRING166 == "7") Gosub LABEL028
  724.     If (STRING166 == "8") Gosub LABEL028
  725.     If (STRING166 == "9") Gosub LABEL028
  726.     If (STRING166 == "10") Gosub LABEL028
  727.     If (STRING166 == "11") Gosub LABEL028
  728.     If (STRING166 == "12") Gosub LABEL028
  729.     If (STRING166 == "13") Gosub LABEL028
  730.     If (STRING166 == "14") Gosub LABEL028
  731.     If (STRING166 == "15") Gosub LABEL028
  732.     If (STRING166 == "16") Gosub LABEL028
  733.     If (STRING166 == "17") Gosub LABEL028
  734.     If (STRING166 == "18") Gosub LABEL028
  735.     If (STRING166 == "19") Gosub LABEL028
  736.     If (STRING166 == "20") Gosub LABEL028
  737.     If (STRING166 == "21") Gosub LABEL028
  738.     If (STRING166 == "22") Gosub LABEL028
  739.     If (STRING166 == "23") Gosub LABEL028
  740.     If (STRING166 == "24") Gosub LABEL028
  741.     If (STRING166 == "25") Gosub LABEL028
  742.     If (STRING166 == "26") Gosub LABEL028
  743.     If (STRING166 == "27") Gosub LABEL028
  744.     If (STRING166 == "28") Gosub LABEL028
  745.     If (STRING166 == "29") Gosub LABEL028
  746.     If (STRING166 == "30") Gosub LABEL028
  747.     Goto LABEL027
  748.     :LABEL026
  749.     PrintLn 
  750.     Print "@X07" + STRING133
  751.     Delay 2
  752.     Print " ."
  753.     Delay 2
  754.     Print " ."
  755.     Delay 2
  756.     Print " ."
  757.     PrintLn "@X07"
  758.     Goto LABEL001
  759.     :LABEL027
  760.     PrintLn "@X09Bulletin (@X0F" + STRING166 + "@X09) is an invalid selection@X07"
  761.     Goto LABEL025
  762.     :LABEL028
  763.     If (Exist(PPEPath() + "BLT" + STRING166)) Then
  764.         PrintLn 
  765.         DispFile PPEPath() + "BLT" + STRING166, 4 + 2 + 1
  766.     Endif
  767.     If (Exist(STRING167 + "BLT" + STRING166)) DispFile STRING167 + "BLT" + STRING166, 4 + 2 + 1
  768.     FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  769.     FPutLn 1, "  Matrix Bulletin (BLT.", STRING166, ") Viewed"
  770.     FClose 1
  771.     Goto LABEL025
  772.     :LABEL029
  773.     KbdStuff STRING050 + Chr(13)
  774.     End
  775.     :LABEL030
  776.     PrintLn 
  777.     PrintLn STRING021 + "MT-Matrix (v1.20) /Standard  ■ 08-18-93@X07"
  778.     PrintLn 
  779.     Goto LABEL002
  780.     :LABEL031
  781.     PrintLn 
  782.     PrintLn "@X07" + STRING120 + "@X07"
  783.     FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  784.     FPutLn 1, "  Normal Matrix LogOff Completed at: (", Time(), ")"
  785.     FClose 1
  786.     Hangup
  787.     :LABEL032
  788.     Cls
  789.     Goto LABEL002
  790.     :LABEL033
  791.     Cls
  792.     PrintLn STRING021 + "MT-Matrix (v1.20) /Standard  ■ 08-18-93@X07"
  793.     PrintLn STRING021 + "Copyright (c) 1993 Modern Technology (tm)"
  794.     PrintLn 
  795.     Goto LABEL002
  796.     :LABEL034
  797.     Cls
  798.     PrintLn STRING021 + STRING004 + "  ■ Drive D: [Help]@X07"
  799.     PrintLn "@PON@@X07"
  800.     If (Exist(PPEPath() + "HELP-D")) Then
  801.         DispFile PPEPath() + "HELP-D", 4 + 2 + 1
  802.     Else
  803.         If (Exist(PPEPath() + "HELP")) DispFile PPEPath() + "HELP", 4 + 2 + 1
  804.     Endif
  805.     PrintLn "@X07"
  806.     Goto LABEL002
  807.     :LABEL035
  808.     Cls
  809.     PrintLn STRING021 + STRING004 + "  ■ Drive D: [Info]@X07"
  810.     If (Exist(PPEPath() + "INFO-D")) Then
  811.         DispFile PPEPath() + "INFO-D", 4 + 2 + 1
  812.     Else
  813.         If (Exist(PPEPath() + "INFO")) DispFile PPEPath() + "INFO", 4 + 2 + 1
  814.     Endif
  815.     PrintLn 
  816.     Goto LABEL002
  817.     :LABEL036
  818.     If (Exist(PPEPath() + "FORMAT")) DispFile PPEPath() + "FORMAT", 4 + 2 + 1
  819.     FAppend 1, PPEPath() + "NODE" + String(PcbNode()) + ".LOG", 1, 2
  820.     FPutLn 1, "  Caller Logged Off System.  Luzer used the FORMAT Command"
  821.     FClose 1
  822.     Hangup
  823.     :LABEL037
  824.     PrintLn "@POFF@@X07"
  825.     If (Exist(PPEPath() + "MENU-D")) DispFile PPEPath() + "MENU-D", 4 + 2 + 1
  826.     PrintLn "@PON@@X07"
  827.     Goto LABEL002
  828.     PrintLn "@POFF@@X07"
  829.     If (Exist(PPEPath() + "MENU-D")) DispFile PPEPath() + "MENU-D", 4 + 2 + 1
  830.     PrintLn "@PON@@X07"
  831.     Goto LABEL016
  832.     :LABEL038
  833.     PrintLn "@POFF@@X07"
  834.     If (Exist(PPEPath() + "MENU")) DispFile PPEPath() + "MENU", 4 + 2 + 1
  835.     PrintLn "@PON@@X07"
  836.     Goto LABEL002
  837.     :LABEL039
  838.     PrintLn "@POFF@@X07"
  839.     If (Exist(PPEPath() + "MENU-D")) DispFile PPEPath() + "MENU-D", 4 + 2 + 1
  840.     PrintLn "@PON@@X07"
  841.     Goto LABEL002
  842.     :LABEL040
  843.     PrintLn "@X07" + STRING123 + "@X07"
  844.     PrintLn 
  845.     Goto LABEL002
  846.     :LABEL041
  847.     PrintLn "@X07" + STRING124 + "@X07"
  848.     PrintLn 
  849.     Goto LABEL002
  850.     :LABEL042
  851.     PrintLn "@X07" + STRING125 + "@X07"
  852.     PrintLn 
  853.     Goto LABEL002
  854.     :LABEL043
  855.     Delay 5
  856.     PrintLn "@X07" + STRING126 + "@X07"
  857.     PrintLn 
  858.     Goto LABEL002
  859.  
  860. ;------------------------------------------------------------------------------
  861. ;
  862. ; Usage report (before postprocessing)
  863. ;
  864. ; ■ Statements used :
  865. ;
  866. ;    20      End
  867. ;    8       Cls
  868. ;    5       Wait
  869. ;    100     Goto 
  870. ;    10      Let 
  871. ;    8       Print 
  872. ;    88      PrintLn 
  873. ;    205     If 
  874. ;    17      DispFile 
  875. ;    5       FOpen 
  876. ;    11      FAppend 
  877. ;    16      FClose 
  878. ;    163     FGet 
  879. ;    11      FPutLn 
  880. ;    1       ResetDisp
  881. ;    2       Hangup
  882. ;    3       InputStr 
  883. ;    121     Gosub 
  884. ;    11      Delay 
  885. ;    13      KbdStuff 
  886. ;
  887. ;
  888. ; ■ Functions used :
  889. ;
  890. ;    207     +
  891. ;    2       -
  892. ;    188     ==
  893. ;    13      !
  894. ;    18      Lower()
  895. ;    18      Upper()
  896. ;    13      Chr()
  897. ;    3       Time()
  898. ;    11      String()
  899. ;    47      PPEPath()
  900. ;    11      PcbNode()
  901. ;    22      Exist()
  902. ;
  903. ;------------------------------------------------------------------------------
  904. ;
  905. ; Analysis flags : B
  906. ;
  907. ; B - Brute hangup ■ 1
  908. ;     Program hangup without notification. This may be a good way to
  909. ;     disconnect a user, but if used randomly, may be very nasty
  910. ;     ■ Search for : HANGUP, DTROFF
  911. ;
  912. ;------------------------------------------------------------------------------
  913. ;
  914. ; Postprocessing report
  915. ;
  916. ;    0       For/Next
  917. ;    0       While/EndWhile
  918. ;    13      If/Then or If/Then/Else
  919. ;    0       Select Case
  920. ;
  921. ;------------------------------------------------------------------------------
  922. ;                 AEGiS Corp - Break the routines, code against the machines!
  923. ;------------------------------------------------------------------------------
  924.