home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / M2000PWA.ZIP / MATRIX.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-04-11  |  32KB  |  1,583 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 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Boolean  BOOLEAN004
  23.     Integer  INTEGER001
  24.     Integer  INTEGER002
  25.     Integer  INTEGER003
  26.     Integer  INTEGER004
  27.     Integer  INTEGER005
  28.     Integer  INTEGER006
  29.     Integer  INTEGER007
  30.     Integer  INTEGER008
  31.     Integer  INTEGER009
  32.     Integer  TINTEGER010(5)
  33.     Integer  INTEGER011
  34.     Integer  INTEGER012
  35.     Integer  INTEGER013
  36.     Integer  INTEGER014
  37.     Integer  INTEGER015
  38.     Integer  INTEGER016
  39.     Integer  INTEGER017
  40.     Integer  INTEGER018
  41.     Integer  INTEGER019
  42.     Integer  INTEGER020
  43.     Integer  INTEGER021
  44.     Integer  INTEGER022
  45.     String   TSTRING001(20)
  46.     String   TSTRING002(9,3)
  47.     String   TSTRING003(5,4)
  48.     String   TSTRING004(50,4)
  49.     String   TSTRING005(6,3)
  50.     String   TSTRING006(5,50)
  51.     String   TSTRING007(7)
  52.     String   TSTRING008(36)
  53.     String   TSTRING009(28)
  54.     String   TSTRING010(9)
  55.     String   STRING011
  56.     String   STRING012
  57.     String   STRING013
  58.     String   STRING014
  59.     String   STRING015
  60.     String   STRING016
  61.     String   STRING017
  62.     String   STRING018
  63.     String   STRING019
  64.     String   STRING020
  65.     String   STRING021
  66.     String   STRING022
  67.     String   STRING023
  68.     String   TSTRING024(99)
  69.     String   STRING025
  70.     String   STRING026
  71.     String   STRING027
  72.     String   STRING028
  73.     String   STRING029
  74.     String   STRING030
  75.     String   STRING031
  76.     String   STRING032
  77.     String   STRING033
  78.     String   STRING034
  79.     String   STRING035
  80.     String   TSTRING036(67)
  81.     String   STRING037
  82.     String   STRING038
  83.     String   STRING039
  84.     String   STRING040
  85.  
  86. ;------------------------------------------------------------------------------
  87.  
  88.     TSTRING001(1) = PPEPath() + "MATRIX.CFG"
  89.     TSTRING001(2) = PPEPath() + "FORM.1"
  90.     TSTRING001(3) = PPEPath() + "FORM.2"
  91.     TSTRING001(4) = PPEPath() + "FORM.3"
  92.     TSTRING001(5) = PPEPath() + "FORM.4"
  93.     TSTRING001(6) = PPEPath() + "FORM.5"
  94.     TSTRING001(7) = PPEPath() + "CONFIG.1"
  95.     TSTRING001(8) = PPEPath() + "CONFIG.2"
  96.     TSTRING001(9) = PPEPath() + "CONFIG.3"
  97.     TSTRING001(10) = PPEPath() + "CONFIG.4"
  98.     TSTRING001(11) = PPEPath() + "CONFIG.5"
  99.     TSTRING001(12) = PPEPath() + "FORM.SCR"
  100.     TSTRING001(13) = PPEPath() + "COMMENT.TMP"
  101.     TSTRING001(14) = PPEPath() + "MATRIX.SCR"
  102.     TSTRING001(15) = PPEPath() + "TEXT.CFG"
  103.     TSTRING001(16) = PPEPath() + "LOGON.SCR"
  104.     TSTRING001(17) = PPEPath() + "NEWUSER.SCR"
  105.     TSTRING001(18) = PPEPath() + "BLACKLST.SCR"
  106.     TSTRING001(19) = PPEPath() + "MATRIX.TMP"
  107.     If (Exist(TSTRING001(1)) == 0) Then
  108.         PrintLn "@X07Configuration File Missing... (MATRIX.CFG)"
  109.         PrintLn "@X07Please report this to the Sysop..."
  110.         PrintLn 
  111.         Print "@X0FWhat is your Full Name"
  112.         End
  113.     Endif
  114.     If (Exist(TSTRING001(14)) == 0) Then
  115.         PrintLn "@X07Matrix Display File Missing... (MATRIX.SCR)"
  116.         PrintLn "@X07Please report this to the Sysop..."
  117.         PrintLn 
  118.         Print "@X0FWhat is your Full Name"
  119.         End
  120.     Endif
  121.     If (Exist(TSTRING001(15)) == 0) Then
  122.         PrintLn "@X07Text Configuration File Missing... (TEXT.CFG)"
  123.         PrintLn "@X07Please report this to the Sysop..."
  124.         PrintLn 
  125.         Print "@X0FWhat is your Full Name"
  126.         End
  127.     Endif
  128.     RdUNet PcbNode()
  129.     WrUNet PcbNode(), "U", UN_Name(), UN_City(), "User is Logging in using Matrix 2000!", ""
  130.     FOpen 15, TSTRING001(15), 0, 0
  131.     For INTEGER016 = 1 To 36
  132.         FGet 15, TSTRING008(INTEGER016)
  133.     Next
  134.     FClose 15
  135.     FOpen 1, TSTRING001(1), 0, 0
  136.     FGet 1, STRING023
  137.     FGet 1, STRING022
  138.     For INTEGER016 = 1 To 6
  139.         For INTEGER017 = 1 To 3
  140.             FGet 1, TSTRING005(INTEGER016, INTEGER017)
  141.         Next
  142.     Next
  143.     For INTEGER016 = 1 To 7
  144.         FGet 1, TSTRING007(INTEGER016)
  145.     Next
  146.     For INTEGER016 = 1 To 11
  147.         FGet 1, TSTRING009(INTEGER016)
  148.     Next
  149.     For INTEGER016 = 1 To 7
  150.         For INTEGER017 = 1 To 3
  151.             FGet 1, TSTRING002(INTEGER016, INTEGER017)
  152.         Next
  153.     Next
  154.     FGet 1, TSTRING002(8, 1)
  155.     FGet 1, TSTRING002(8, 2)
  156.     FGet 1, TSTRING002(9, 1)
  157.     FGet 1, TSTRING002(9, 2)
  158.     FGet 1, TSTRING002(9, 3)
  159.     For INTEGER016 = 12 To 16
  160.         FGet 1, TSTRING009(INTEGER016)
  161.     Next
  162.     FGet 1, STRING021
  163.     FGet 1, STRING020
  164.     For INTEGER016 = 1 To 5
  165.         For INTEGER017 = 1 To 4
  166.             FGet 1, TSTRING003(INTEGER016, INTEGER017)
  167.         Next
  168.     Next
  169.     For INTEGER016 = 17 To 24
  170.         FGet 1, TSTRING009(INTEGER016)
  171.     Next
  172.     For INTEGER016 = 1 To 36
  173.         FGet 1, STRING013
  174.     Next
  175.     FGet 1, STRING028
  176.     FGet 1, TSTRING009(25)
  177.     FGet 1, TSTRING009(26)
  178.     FGet 1, TSTRING009(27)
  179.     FClose 1
  180.     FOpen 1, TSTRING001(1), 0, 0
  181.     For INTEGER016 = 1 To 140
  182.         FGet 1, STRING013
  183.     Next
  184.     FGet 1, STRING033
  185.     FGet 1, STRING034
  186.     FGet 1, STRING035
  187.     FGet 1, INTEGER007
  188.     FClose 1
  189.     INTEGER022 = ReadLine(PCBDat(), 265)
  190.     If (INTEGER022 > TSTRING009(12)) TSTRING009(12) = INTEGER022
  191.     Select Case (Upper(TSTRING007(2)))
  192.         Case "W"
  193.             STRING026 = "@X07"
  194.             STRING025 = "@X0F"
  195.         Case "B"
  196.             STRING026 = "@X01"
  197.             STRING025 = "@X09"
  198.         Case "G"
  199.             STRING026 = "@X02"
  200.             STRING025 = "@X0A"
  201.         Case "C"
  202.             STRING026 = "@X03"
  203.             STRING025 = "@X0B"
  204.         Case "R"
  205.             STRING026 = "@X04"
  206.             STRING025 = "@X0C"
  207.         Case "P"
  208.             STRING026 = "@X05"
  209.             STRING025 = "@X0D"
  210.     End Select
  211.     TSTRING036(1) = ""
  212.     TSTRING036(2) = ""
  213.     TSTRING036(3) = ""
  214.     TSTRING036(4) = ""
  215.     TSTRING036(5) = ""
  216.     TSTRING036(6) = ""
  217.     TSTRING036(7) = ""
  218.     TSTRING036(8) = ""
  219.     TSTRING036(9) = ""
  220.     TSTRING036(10) = ""
  221.     TSTRING036(11) = "a"
  222.     TSTRING036(12) = "q"
  223.     TSTRING036(13) = "z"
  224.     TSTRING036(14) = "s"
  225.     TSTRING036(15) = "w"
  226.     TSTRING036(16) = "x"
  227.     TSTRING036(17) = "c"
  228.     TSTRING036(18) = "e"
  229.     TSTRING036(19) = "d"
  230.     TSTRING036(20) = ""
  231.     TSTRING036(21) = "v"
  232.     TSTRING036(22) = "r"
  233.     TSTRING036(23) = "f"
  234.     TSTRING036(24) = "g"
  235.     TSTRING036(25) = "t"
  236.     TSTRING036(26) = "b"
  237.     TSTRING036(27) = "h"
  238.     TSTRING036(28) = "y"
  239.     TSTRING036(29) = "n"
  240.     TSTRING036(30) = ""
  241.     TSTRING036(31) = "j"
  242.     TSTRING036(32) = "u"
  243.     TSTRING036(33) = "m"
  244.     TSTRING036(34) = "k"
  245.     TSTRING036(35) = "i"
  246.     TSTRING036(36) = "l"
  247.     TSTRING036(37) = "p"
  248.     TSTRING036(38) = "o"
  249.     TSTRING036(39) = "L"
  250.     TSTRING036(40) = ""
  251.     TSTRING036(41) = "P"
  252.     TSTRING036(42) = "O"
  253.     TSTRING036(43) = "K"
  254.     TSTRING036(44) = "M"
  255.     TSTRING036(45) = "N"
  256.     TSTRING036(46) = "J"
  257.     TSTRING036(47) = "I"
  258.     TSTRING036(48) = "H"
  259.     TSTRING036(49) = "B"
  260.     TSTRING036(50) = ""
  261.     TSTRING036(51) = "U"
  262.     TSTRING036(52) = "G"
  263.     TSTRING036(53) = "Y"
  264.     TSTRING036(54) = "V"
  265.     TSTRING036(55) = "F"
  266.     TSTRING036(56) = "C"
  267.     TSTRING036(57) = "T"
  268.     TSTRING036(58) = "D"
  269.     TSTRING036(59) = "R"
  270.     TSTRING036(50) = ""
  271.     TSTRING036(61) = "X"
  272.     TSTRING036(62) = "S"
  273.     TSTRING036(63) = "E"
  274.     TSTRING036(64) = "W"
  275.     TSTRING036(65) = "Q"
  276.     TSTRING036(66) = "Z"
  277.     TSTRING036(67) = "A"
  278.     Gosub LABEL071
  279.     STRING030 = Upper(TSTRING009(5))
  280.     :LABEL001
  281.     If (BOOLEAN002) Goto LABEL007
  282.     BOOLEAN004 = 0
  283.     BOOLEAN002 = 0
  284.     Color 15
  285.     Cls
  286.     DispFile TSTRING001(14), 1
  287.     AnsiPos TSTRING005(1, 3), TSTRING005(1, 2)
  288.     Print STRING023, TSTRING005(1, 1)
  289.     AnsiPos TSTRING005(2, 3), TSTRING005(2, 2)
  290.     Print STRING023, TSTRING005(2, 1)
  291.     AnsiPos TSTRING005(3, 3), TSTRING005(3, 2)
  292.     Print STRING023, TSTRING005(3, 1)
  293.     AnsiPos TSTRING005(4, 3), TSTRING005(4, 2)
  294.     Print STRING023, TSTRING005(4, 1)
  295.     AnsiPos TSTRING005(5, 3), TSTRING005(5, 2)
  296.     Print STRING023, TSTRING005(5, 1)
  297.     AnsiPos TSTRING005(6, 3), TSTRING005(6, 2)
  298.     Print STRING023, TSTRING005(6, 1)
  299.     AnsiPos TSTRING005(1, 3), TSTRING005(1, 2)
  300.     Print STRING022, TSTRING005(1, 1)
  301.     INTEGER013 = 1
  302.     :LABEL002
  303.     If (BOOLEAN004) Goto LABEL006
  304.     STRING027 = Inkey()
  305.     If (STRING027 == " ") Then
  306.         INTEGER013 = INTEGER013 + 1
  307.         If (INTEGER013 == 7) Then
  308.             INTEGER013 = 1
  309.             AnsiPos TSTRING005(6, 3), TSTRING005(6, 2)
  310.             Print STRING023, TSTRING005(6, 1)
  311.             AnsiPos TSTRING005(1, 3), TSTRING005(1, 2)
  312.             Print STRING022, TSTRING005(1, 1)
  313.             Goto LABEL003
  314.         Endif
  315.         AnsiPos TSTRING005(INTEGER013 - 1, 3), TSTRING005(INTEGER013 - 1, 2)
  316.         Print STRING023, TSTRING005(INTEGER013 - 1, 1)
  317.         AnsiPos TSTRING005(INTEGER013, 3), TSTRING005(INTEGER013, 2)
  318.         Print STRING022, TSTRING005(INTEGER013, 1)
  319.     Endif
  320.     :LABEL003
  321.     If ((STRING027 == "UP") || (STRING027 == "8")) Then
  322.         If (INTEGER013 == 1) Then
  323.             Goto LABEL004
  324.         Endif
  325.         INTEGER013 = INTEGER013 - 1
  326.         AnsiPos TSTRING005(INTEGER013 + 1, 3), TSTRING005(INTEGER013 + 1, 2)
  327.         Print STRING023, TSTRING005(INTEGER013 + 1, 1)
  328.         AnsiPos TSTRING005(INTEGER013, 3), TSTRING005(INTEGER013, 2)
  329.         Print STRING022, TSTRING005(INTEGER013, 1)
  330.     Endif
  331.     :LABEL004
  332.     If ((STRING027 == "DOWN") || (STRING027 == "2")) Then
  333.         If (INTEGER013 == 6) Then
  334.             Goto LABEL005
  335.         Endif
  336.         INTEGER013 = INTEGER013 + 1
  337.         AnsiPos TSTRING005(INTEGER013 - 1, 3), TSTRING005(INTEGER013 - 1, 2)
  338.         Print STRING023, TSTRING005(INTEGER013 - 1, 1)
  339.         AnsiPos TSTRING005(INTEGER013, 3), TSTRING005(INTEGER013, 2)
  340.         Print STRING022, TSTRING005(INTEGER013, 1)
  341.     Endif
  342.     :LABEL005
  343.     If (STRING027 == Chr(13)) BOOLEAN004 = 1
  344.     Goto LABEL002
  345.     :LABEL006
  346.     Select Case (INTEGER013)
  347.         Case 1
  348.             Gosub LABEL048
  349.         Case 2
  350.             Gosub LABEL008
  351.         Case 3
  352.             Gosub LABEL064
  353.         Case 4
  354.             Gosub LABEL059
  355.         Case 5
  356.             Gosub LABEL052
  357.         Case 6
  358.             Gosub LABEL067
  359.     End Select
  360.     BOOLEAN002 = 0
  361.     BOOLEAN004 = 0
  362.     Goto LABEL001
  363.     :LABEL007
  364.     End
  365.     :LABEL008
  366.     Color 15
  367.     Cls
  368.     If (Left(TSTRING008(31), 1) == "%") Then
  369.         STRING014 = TSTRING008(31)
  370.         STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  371.         DispFile STRING013, 1
  372.     Else
  373.         PrintLn TSTRING008(31)
  374.     Endif
  375.     PrintLn 
  376.     If (STRING028 == "1") Then
  377.         Goto LABEL009
  378.     Endif
  379.     AnsiPos 1, GetY()
  380.     ClrEol
  381.     Print TSTRING008(32)
  382.     STRING029 = ""
  383.     InputStr " _", STRING029, 15, 30, Mask_Ascii(), 1
  384.     If (Upper(STRING029) <> Upper(STRING028)) Return
  385.     :LABEL009
  386.     AdjTime TSTRING007(6)
  387.     Color 15
  388.     Cls
  389.     If (Left(TSTRING008(21), 1) == "%") Then
  390.         STRING014 = TSTRING008(21)
  391.         STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  392.         DispFile STRING013, 1
  393.     Else
  394.         PrintLn TSTRING008(21)
  395.     Endif
  396.     PrintLn 
  397.     More
  398.     Color 15
  399.     Cls
  400.     DispFile TSTRING001(17), 1
  401.     If (TSTRING002(1, 3) > 27) TSTRING002(1, 3) = 25
  402.     If (TSTRING002(1, 3) < 20) TSTRING002(1, 3) = 25
  403.     If (TSTRING002(2, 3) > 13) TSTRING002(1, 3) = 13
  404.     If (TSTRING002(2, 3) < 10) TSTRING002(1, 3) = 13
  405.     TSTRING002(3, 3) = TSTRING002(2, 3)
  406.     If (TSTRING002(4, 3) > 25) TSTRING002(1, 3) = 25
  407.     If (TSTRING002(4, 3) < 20) TSTRING002(1, 3) = 25
  408.     If (TSTRING002(5, 3) > 14) TSTRING002(1, 3) = 13
  409.     If (TSTRING002(5, 3) < 11) TSTRING002(1, 3) = 13
  410.     If (TSTRING002(6, 3) > 14) TSTRING002(1, 3) = 13
  411.     If (TSTRING002(6, 3) < 11) TSTRING002(1, 3) = 13
  412.     If (TSTRING002(7, 3) > 31) TSTRING002(1, 3) = 14
  413.     If (TSTRING002(7, 3) < 20) TSTRING002(1, 3) = 14
  414.     If (TSTRING002(9, 3) > 50) TSTRING002(1, 3) = 40
  415.     If (TSTRING002(9, 3) < 10) TSTRING002(1, 3) = 40
  416.     BOOLEAN004 = 0
  417.     :LABEL010
  418.     If (BOOLEAN004) Goto LABEL011
  419.     INTEGER011 = INTEGER011 + 1
  420.     AnsiPos TSTRING002(1, 2), TSTRING002(1, 1)
  421.     InputStr "_", STRING016, 15, TSTRING002(1, 3), Mask_Alpha() + " ", 0
  422.     If (STRING016 <> "") Then
  423.         STRING016 = Upper(STRING016)
  424.         If (U_RecNum(STRING016) == -1) Then
  425.             BOOLEAN004 = 1
  426.         Else
  427.             AnsiPos 1, TSTRING009(14)
  428.             Print TSTRING008(33)
  429.             Delay 18
  430.             AnsiPos 1, TSTRING009(14)
  431.             Print "                                                                                "
  432.             AnsiPos TSTRING002(1, 2), TSTRING002(1, 1)
  433.             For INTEGER016 = 1 To Len(STRING016)
  434.                 Print " "
  435.             Next
  436.             BOOLEAN004 = 0
  437.             STRING016 = ""
  438.         Endif
  439.     ElseIf (INTEGER011 == TSTRING009(13)) Then
  440.         AnsiPos 1, TSTRING009(14)
  441.         PrintLn TSTRING008(24)
  442.         PrintLn 
  443.         KbdStuff TSTRING009(15) + Chr(13)
  444.         Hangup
  445.         DtrOff
  446.     Endif
  447.     Goto LABEL010
  448.     :LABEL011
  449.     If (Exist(TSTRING001(18)) == 0) Then
  450.         Goto LABEL012
  451.     Endif
  452.     FOpen 1, TSTRING001(18), 2, 0
  453.     For INTEGER016 = 1 To 10000
  454.         FGet 1, STRING013
  455.         If (Upper(STRING016) == Upper(STRING013)) Then
  456.             Color 15
  457.             Cls
  458.             If (Left(TSTRING008(22), 1) == "%") Then
  459.                 STRING014 = TSTRING008(22)
  460.                 STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  461.                 DispFile STRING013, 1
  462.                 KbdStuff TSTRING009(15) + Chr(13)
  463.                 Hangup
  464.                 DtrOff
  465.                 End
  466.                 Continue
  467.             Endif
  468.             PrintLn TSTRING008(22)
  469.             KbdStuff TSTRING009(15) + Chr(13)
  470.             Hangup
  471.             DtrOff
  472.             End
  473.         Endif
  474.     Next
  475.     FClose 1
  476.     :LABEL012
  477.     BOOLEAN004 = 0
  478.     BOOLEAN002 = 0
  479.     INTEGER011 = 0
  480.     :LABEL013
  481.     If (BOOLEAN004) Goto LABEL016
  482.     :LABEL014
  483.     If (BOOLEAN002) Goto LABEL015
  484.     INTEGER011 = INTEGER011 + 1
  485.     AnsiPos TSTRING002(3, 2), TSTRING002(3, 1)
  486.     For INTEGER016 = 1 To TSTRING002(2, 3)
  487.         Print " "
  488.     Next
  489.     AnsiPos TSTRING002(2, 2), TSTRING002(2, 1)
  490.     For INTEGER016 = 1 To TSTRING002(2, 3)
  491.         Print " "
  492.     Next
  493.     AnsiPos TSTRING002(2, 2), TSTRING002(2, 1)
  494.     InputStr "_", TSTRING010(1), 15, TSTRING002(2, 3), Mask_Ascii(), 1
  495.     If (Len(TSTRING010(2)) > 3) BOOLEAN002 = 1
  496.     If (TSTRING010(1) <> "") Then
  497.         If (Len(TSTRING010(1)) >= TSTRING009(12)) Then
  498.             BOOLEAN002 = 1
  499.         Endif
  500.         If (Len(TSTRING010(1)) < TSTRING009(12)) Then
  501.             If (INTEGER011 == TSTRING009(13)) Then
  502.                 AnsiPos 1, TSTRING009(14)
  503.                 PrintLn TSTRING008(24)
  504.                 PrintLn 
  505.                 KbdStuff TSTRING009(15) + Chr(13)
  506.                 Hangup
  507.                 DtrOff
  508.             Endif
  509.             AnsiPos 1, TSTRING009(14)
  510.             Print TSTRING008(23)
  511.             Delay 18
  512.             AnsiPos 1, TSTRING009(14)
  513.             Print "                                                                                "
  514.         Endif
  515.     Endif
  516.     Goto LABEL014
  517.     :LABEL015
  518.     BOOLEAN002 = 0
  519.     AnsiPos TSTRING002(3, 2), TSTRING002(3, 1)
  520.     For INTEGER016 = 1 To TSTRING002(3, 3)
  521.         Print " "
  522.     Next
  523.     AnsiPos TSTRING002(3, 2), TSTRING002(3, 1)
  524.     InputStr "_", TSTRING010(2), 15, TSTRING002(2, 3), Mask_Ascii(), 1
  525.     If (Upper(TSTRING010(1)) == Upper(TSTRING010(2))) BOOLEAN004 = 1
  526.     Goto LABEL013
  527.     :LABEL016
  528.     BOOLEAN004 = 0
  529.     INTEGER011 = 0
  530.     :LABEL017
  531.     If (BOOLEAN004) Goto LABEL018
  532.     INTEGER011 = INTEGER011 + 1
  533.     AnsiPos TSTRING002(4, 2), TSTRING002(4, 1)
  534.     InputStr "_", TSTRING010(4), 15, TSTRING002(4, 3), Mask_Alpha() + " ,.-/", 0
  535.     If (TSTRING010(4) <> "") Then
  536.         BOOLEAN004 = 1
  537.     ElseIf (INTEGER011 == TSTRING009(13)) Then
  538.         AnsiPos 1, TSTRING009(14)
  539.         PrintLn TSTRING008(24)
  540.         PrintLn 
  541.         KbdStuff TSTRING009(15) + Chr(13)
  542.         Hangup
  543.         DtrOff
  544.     Endif
  545.     Goto LABEL017
  546.     :LABEL018
  547.     For INTEGER016 = 5 To 6
  548.         BOOLEAN004 = 0
  549.         INTEGER011 = 0
  550.         :LABEL019
  551.         If (BOOLEAN004) Continue
  552.         INTEGER011 = INTEGER011 + 1
  553.         AnsiPos TSTRING002(INTEGER016, 2), TSTRING002(INTEGER016, 1)
  554.         InputStr "_", TSTRING010(INTEGER016), 15, TSTRING002(INTEGER016, 3), Mask_Num() + "-", 0
  555.         If (TSTRING010(INTEGER016) <> "") Then
  556.             BOOLEAN004 = 1
  557.         ElseIf (INTEGER011 == TSTRING009(13)) Then
  558.             AnsiPos 1, TSTRING009(14)
  559.             PrintLn TSTRING008(24)
  560.             PrintLn 
  561.             KbdStuff TSTRING009(15) + Chr(13)
  562.             Hangup
  563.             DtrOff
  564.         Endif
  565.         Goto LABEL019
  566.     Next
  567.     BOOLEAN004 = 0
  568.     INTEGER011 = 0
  569.     :LABEL020
  570.     If (BOOLEAN004) Goto LABEL021
  571.     INTEGER011 = INTEGER011 + 1
  572.     AnsiPos TSTRING002(7, 2), TSTRING002(7, 1)
  573.     InputStr "_", TSTRING010(7), 15, TSTRING002(7, 3), Mask_Ascii(), 0
  574.     If (TSTRING010(7) <> "") Then
  575.         BOOLEAN004 = 1
  576.     ElseIf (INTEGER011 == TSTRING009(13)) Then
  577.         AnsiPos 1, TSTRING009(14)
  578.         PrintLn TSTRING008(24)
  579.         PrintLn 
  580.         KbdStuff TSTRING009(15) + Chr(13)
  581.         Hangup
  582.         DtrOff
  583.     Endif
  584.     Goto LABEL020
  585.     :LABEL021
  586.     AnsiPos TSTRING002(8, 2), TSTRING002(8, 1)
  587.     BOOLEAN004 = 0
  588.     :LABEL022
  589.     If (BOOLEAN004) Goto LABEL023
  590.     InputStr "_", TSTRING010(8), 15, 1, "YNyn", 16384
  591.     If (TSTRING010(8) <> "") BOOLEAN004 = 1
  592.     Goto LABEL022
  593.     :LABEL023
  594.     BOOLEAN004 = 0
  595.     INTEGER011 = 0
  596.     :LABEL024
  597.     If (BOOLEAN004) Goto LABEL025
  598.     INTEGER011 = INTEGER011 + 1
  599.     AnsiPos TSTRING002(9, 2), TSTRING002(9, 1)
  600.     InputStr "_", TSTRING010(9), 15, TSTRING002(9, 3), Mask_Ascii(), 0
  601.     If (TSTRING010(9) <> "") Then
  602.         BOOLEAN004 = 1
  603.     ElseIf (INTEGER011 == TSTRING009(13)) Then
  604.         AnsiPos 1, TSTRING009(14)
  605.         PrintLn TSTRING008(24)
  606.         PrintLn 
  607.         KbdStuff TSTRING009(15) + Chr(13)
  608.         Hangup
  609.         DtrOff
  610.     Endif
  611.     Goto LABEL024
  612.     :LABEL025
  613.     AnsiPos 1, TSTRING009(14)
  614.     More
  615.     If (TSTRING009(16) == 1) Then
  616.         Color 15
  617.         Cls
  618.         STRING017 = ""
  619.         For INTEGER016 = 1 To 99
  620.             TSTRING024(INTEGER016) = ""
  621.         Next
  622.         PrintLn 
  623.         PrintLn TSTRING008(2), " @X0F", TSTRING007(5)
  624.         PrintLn TSTRING008(3), " @X0F", STRING016
  625.         BOOLEAN004 = 0
  626.         INTEGER015 = 0
  627.         :LABEL026
  628.         If (BOOLEAN004) Goto LABEL028
  629.         InputStr TSTRING008(4) + " _", STRING017, 7, 30, Mask_Ascii(), 8
  630.         If (STRING017 == "") Then
  631.             BOOLEAN004 = 0
  632.             INTEGER015 = INTEGER015 + 1
  633.             STRING017 = ""
  634.             AnsiPos 1, GetY()
  635.             ClrEol
  636.             Goto LABEL027
  637.         Endif
  638.         BOOLEAN004 = 1
  639.         :LABEL027
  640.         Goto LABEL026
  641.         :LABEL028
  642.         FreshLine
  643.         PrintLn 
  644.         PrintLn STRING026, " ┌───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┐"
  645.         TSTRING007(1) = RTrim(TSTRING007(1), " ")
  646.         If (TSTRING007(1) > 9) Then
  647.             PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07               ", STRING026, "│"
  648.             Goto LABEL029
  649.         Endif
  650.         PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07              ", STRING026, "│"
  651.         :LABEL029
  652.         PrintLn STRING026, " │             @X0F· @X07(@X0F/S@X07) to Save Message @X0F· @X07(@X0F/A@X07) to Abort Message @X0F·               ", STRING026, "│"
  653.         PrintLn STRING026, " └───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┘"
  654.         PrintLn 
  655.         INTEGER012 = 0
  656.         BOOLEAN004 = 0
  657.         For INTEGER016 = 1 To 99
  658.             TSTRING024(INTEGER016) = ""
  659.         Next
  660.         :LABEL030
  661.         If (BOOLEAN004) Goto LABEL031
  662.         INTEGER012 = INTEGER012 + 1
  663.         InputStr STRING025 + "» _", TSTRING024(INTEGER012), 7, 76, Mask_Ascii(), 512
  664.         FreshLine
  665.         If (((INTEGER012 == TSTRING007(1)) || (Upper(TSTRING024(INTEGER012)) == "/S")) || (Upper(TSTRING024(INTEGER012)) == "/A")) Then
  666.             If (Upper(TSTRING024(INTEGER012)) == "/A") Then
  667.                 FreshLine
  668.                 PrintLn 
  669.                 PrintLn TSTRING008(5)
  670.                 Delay 18
  671.                 BOOLEAN004 = 1
  672.             Endif
  673.             If (Upper(TSTRING024(INTEGER012)) == "/S") Then
  674.                 FreshLine
  675.                 PrintLn 
  676.                 PrintLn TSTRING008(6)
  677.                 Delay 18
  678.                 INTEGER012 = INTEGER012 - 1
  679.                 FCreate 1, TSTRING001(13), 1, 0
  680.                 FOpen 1, TSTRING001(13), 2, 0
  681.                 If (INTEGER008 == -1) Then
  682.                     FPutLn 1, "This PPE is Unregistered!  Please Register!  Only $10"
  683.                     FPutLn 1, "─────────────────────────────────────────────────────"
  684.                     FPutLn 1, ""
  685.                 Endif
  686.                 For INTEGER017 = 1 To INTEGER012
  687.                     FPutLn 1, TSTRING024(INTEGER017)
  688.                 Next
  689.                 FClose 1
  690.                 Message TSTRING007(4), TSTRING007(5), STRING016, STRING017, "R", "@X0FComment Send VIA @X09New User Message", 0, 0, TSTRING001(13)
  691.                 INTEGER018 = INTEGER018 + 1
  692.                 Delete TSTRING001(13)
  693.                 BOOLEAN004 = 1
  694.             Endif
  695.         Endif
  696.         Goto LABEL030
  697.     Endif
  698.     :LABEL031
  699.     If (TSTRING009(17) == 1) Then
  700.         KeyFlush
  701.         :LABEL032
  702.         If (BOOLEAN002) Goto LABEL042
  703.         BOOLEAN004 = 0
  704.         BOOLEAN002 = 0
  705.         Color 15
  706.         Cls
  707.         DispFile TSTRING001(12), 1
  708.         AnsiPos TSTRING003(1, 3), TSTRING003(1, 2)
  709.         Print STRING021, TSTRING003(1, 1)
  710.         AnsiPos TSTRING003(2, 3), TSTRING003(2, 2)
  711.         Print STRING021, TSTRING003(2, 1)
  712.         AnsiPos TSTRING003(3, 3), TSTRING003(3, 2)
  713.         Print STRING021, TSTRING003(3, 1)
  714.         AnsiPos TSTRING003(4, 3), TSTRING003(4, 2)
  715.         Print STRING021, TSTRING003(4, 1)
  716.         AnsiPos TSTRING003(5, 3), TSTRING003(5, 2)
  717.         Print STRING021, TSTRING003(5, 1)
  718.         AnsiPos TSTRING003(1, 3), TSTRING003(1, 2)
  719.         Print STRING020, TSTRING003(1, 1)
  720.         INTEGER013 = 1
  721.         :LABEL033
  722.         If (BOOLEAN004) Goto LABEL038
  723.         STRING027 = Inkey()
  724.         If (STRING027 == " ") Then
  725.             INTEGER013 = INTEGER013 + 1
  726.             If (INTEGER013 == 6) Then
  727.                 INTEGER013 = 1
  728.                 AnsiPos TSTRING003(5, 3), TSTRING003(5, 2)
  729.                 Print STRING021, TSTRING003(5, 1)
  730.                 AnsiPos TSTRING003(1, 3), TSTRING003(1, 2)
  731.                 Print STRING020, TSTRING003(1, 1)
  732.                 Goto LABEL034
  733.             Endif
  734.             AnsiPos TSTRING003(INTEGER013 - 1, 3), TSTRING003(INTEGER013 - 1, 2)
  735.             Print STRING021, TSTRING003(INTEGER013 - 1, 1)
  736.             AnsiPos TSTRING003(INTEGER013, 3), TSTRING003(INTEGER013, 2)
  737.             Print STRING020, TSTRING003(INTEGER013, 1)
  738.         Endif
  739.         :LABEL034
  740.         If ((STRING027 == "UP") || (STRING027 == "8")) Then
  741.             If (INTEGER013 == 1) Then
  742.                 Goto LABEL035
  743.             Endif
  744.             INTEGER013 = INTEGER013 - 1
  745.             AnsiPos TSTRING003(INTEGER013 + 1, 3), TSTRING003(INTEGER013 + 1, 2)
  746.             Print STRING021, TSTRING003(INTEGER013 + 1, 1)
  747.             AnsiPos TSTRING003(INTEGER013, 3), TSTRING003(INTEGER013, 2)
  748.             Print STRING020, TSTRING003(INTEGER013, 1)
  749.         Endif
  750.         :LABEL035
  751.         If ((STRING027 == "DOWN") || (STRING027 == "2")) Then
  752.             If (INTEGER013 == 5) Then
  753.                 Goto LABEL036
  754.             Endif
  755.             INTEGER013 = INTEGER013 + 1
  756.             AnsiPos TSTRING003(INTEGER013 - 1, 3), TSTRING003(INTEGER013 - 1, 2)
  757.             Print STRING021, TSTRING003(INTEGER013 - 1, 1)
  758.             AnsiPos TSTRING003(INTEGER013, 3), TSTRING003(INTEGER013, 2)
  759.             Print STRING020, TSTRING003(INTEGER013, 1)
  760.         Endif
  761.         :LABEL036
  762.         If ((STRING027 == Chr(13)) && (TINTEGER010(INTEGER013) <> 1)) Then
  763.             If (TSTRING003(INTEGER013, 4) == 1) BOOLEAN004 = 1
  764.             Goto LABEL037
  765.         Endif
  766.         BOOLEAN004 = 0
  767.         :LABEL037
  768.         If ((STRING027 == Chr(27)) || (Upper(STRING027) == "Q")) Then
  769.             BOOLEAN004 = 1
  770.             BOOLEAN002 = 1
  771.             BOOLEAN001 = 1
  772.         Endif
  773.         Goto LABEL033
  774.         :LABEL038
  775.         If (BOOLEAN002 == 0) Then
  776.             Color 15
  777.             Cls
  778.             Color 7
  779.             DispFile TSTRING001(INTEGER013 + 1), 1
  780.             FOpen 10, TSTRING001(INTEGER013 + 6), 0, 0
  781.             FGet 10, INTEGER014
  782.             If (INTEGER014 > 50) INTEGER014 = 50
  783.             For INTEGER016 = 1 To INTEGER014
  784.                 For INTEGER017 = 1 To 4
  785.                     FGet 10, TSTRING004(INTEGER016, INTEGER017)
  786.                 Next
  787.             Next
  788.             FClose 10
  789.             For INTEGER016 = 1 To INTEGER014
  790.                 BOOLEAN003 = 0
  791.                 :LABEL039
  792.                 If (BOOLEAN003) Continue
  793.                 AnsiPos TSTRING004(INTEGER016, 4), TSTRING004(INTEGER016, 3)
  794.                 If (TSTRING004(INTEGER016, 1) == 1) Then
  795.                     InputStr "_", TSTRING006(INTEGER013, INTEGER016), 15, TSTRING004(INTEGER016, 2), Mask_Ascii(), 0
  796.                     Goto LABEL040
  797.                 Endif
  798.                 If (TSTRING004(INTEGER016, 1) == 2) Then
  799.                     InputStr "_", TSTRING006(INTEGER013, INTEGER016), 15, TSTRING004(INTEGER016, 2), Mask_Num() + "-", 0
  800.                     Goto LABEL040
  801.                 Endif
  802.                 If (TSTRING004(INTEGER016, 1) == 3) Then
  803.                     InputStr "_", TSTRING006(INTEGER013, INTEGER016), 15, TSTRING004(INTEGER016, 2), Mask_Alpha() + " ", 0
  804.                     Goto LABEL040
  805.                 Endif
  806.                 If (TSTRING004(INTEGER016, 1) == 4) Then
  807.                     InputStr "_", TSTRING006(INTEGER013, INTEGER016), 15, TSTRING004(INTEGER016, 2), Mask_AlNum() + " ", 0
  808.                     Goto LABEL040
  809.                 Endif
  810.                 If (Left(TSTRING004(INTEGER016, 1), 1) == 0) Then
  811.                     InputStr "_", TSTRING006(INTEGER013, INTEGER016), 15, TSTRING004(INTEGER016, 2), TSTRING004(INTEGER016, 1), 0
  812.                 Endif
  813.                 :LABEL040
  814.                 If (TSTRING006(INTEGER013, INTEGER016) == "") Then
  815.                     AnsiPos TSTRING004(INTEGER016, 4), TSTRING004(INTEGER016, 3)
  816.                     For INTEGER017 = 1 To TSTRING004(INTEGER016, 2)
  817.                         Print " "
  818.                     Next
  819.                     BOOLEAN003 = 0
  820.                     Goto LABEL041
  821.                 Endif
  822.                 BOOLEAN003 = 1
  823.                 :LABEL041
  824.                 Goto LABEL039
  825.             Next
  826.             STRING013 = ""
  827.             TINTEGER010(INTEGER013) = 1
  828.             If ((TINTEGER010(INTEGER013) == 1) && Len((TSTRING003(INTEGER013, 1) > 5))) Then
  829.                 For INTEGER016 = 1 To Len(TSTRING003(INTEGER013, 1))
  830.                     If (INTEGER016 == Len(TSTRING003(INTEGER013, 1)) - 1) Then
  831.                         STRING013 = STRING013 + "√"
  832.                         Continue
  833.                     Endif
  834.                     STRING013 = STRING013 + Mid(TSTRING003(INTEGER013, 1), INTEGER016, 1)
  835.                 Next
  836.             Endif
  837.             TSTRING003(INTEGER013, 1) = STRING013
  838.         Endif
  839.         Goto LABEL032
  840.         :LABEL042
  841.         If (BOOLEAN001 == 1) Then
  842.             STRING032 = Upper(STRING016)
  843.             STRING013 = Replace(STRING032, " ", "_")
  844.             INTEGER021 = INTEGER021 + 1
  845.             STRING011 = PPEPath() + "NUV\" + STRING013 + ".NUV"
  846.             STRING012 = PPEPath() + "NUV\" + STRING013 + ".NFO"
  847.             FCreate 10, STRING011, 1, 0
  848.             FCreate 10, STRING012, 1, 0
  849.             FOpen 10, STRING011, 1, 0
  850.             FPutLn 10, Upper(STRING016)
  851.             FPutLn 10, "0"
  852.             FPutLn 10, "0"
  853.             FPutLn 10, "0"
  854.             FPutLn 10, "0"
  855.             FPutLn 10, "0"
  856.             FClose 10
  857.             FOpen 10, STRING012, 1, 0
  858.             FPutLn 10, TINTEGER010(1)
  859.             FPutLn 10, TINTEGER010(2)
  860.             FPutLn 10, TINTEGER010(3)
  861.             FPutLn 10, TINTEGER010(4)
  862.             FPutLn 10, TINTEGER010(5)
  863.             FPutLn 10, "000-111-000"
  864.             If (TINTEGER010(1) == 1) Then
  865.                 INTEGER009 = ReadLine(TSTRING001(7), 1)
  866.                 FPutLn 10, INTEGER009
  867.                 For INTEGER016 = 1 To INTEGER009
  868.                     FPutLn 10, TSTRING006(1, INTEGER016)
  869.                 Next
  870.                 Goto LABEL043
  871.             Endif
  872.             FPutLn 10, "0"
  873.             :LABEL043
  874.             FPutLn 10, "000-222-000"
  875.             If (TINTEGER010(2) == 1) Then
  876.                 INTEGER009 = ReadLine(TSTRING001(8), 1)
  877.                 FPutLn 10, INTEGER009
  878.                 For INTEGER016 = 1 To INTEGER009
  879.                     FPutLn 1, TSTRING006(2, INTEGER016)
  880.                 Next
  881.                 Goto LABEL044
  882.             Endif
  883.             FPutLn 10, "0"
  884.             :LABEL044
  885.             FPutLn 10, "000-333-000"
  886.             If (TINTEGER010(3) == 1) Then
  887.                 INTEGER009 = ReadLine(TSTRING001(9), 1)
  888.                 FPutLn 10, INTEGER009
  889.                 For INTEGER016 = 1 To INTEGER009
  890.                     FPutLn 10, TSTRING006(3, INTEGER016)
  891.                 Next
  892.                 Goto LABEL045
  893.             Endif
  894.             FPutLn 10, "0"
  895.             :LABEL045
  896.             FPutLn 10, "000-444-000"
  897.             If (TINTEGER010(4) == 1) Then
  898.                 INTEGER009 = ReadLine(TSTRING001(10), 1)
  899.                 FPutLn 10, INTEGER009
  900.                 For INTEGER016 = 1 To INTEGER009
  901.                     FPutLn 10, TSTRING006(4, INTEGER016)
  902.                 Next
  903.                 Goto LABEL046
  904.             Endif
  905.             FPutLn 10, "0"
  906.             :LABEL046
  907.             FPutLn 10, "000-555-000"
  908.             If (TINTEGER010(5) == 1) Then
  909.                 INTEGER009 = ReadLine(TSTRING001(11), 1)
  910.                 FPutLn 10, INTEGER009
  911.                 For INTEGER016 = 1 To INTEGER009
  912.                     FPutLn 10, TSTRING006(5, INTEGER016)
  913.                 Next
  914.                 Goto LABEL047
  915.             Endif
  916.             FPutLn 10, "0"
  917.             :LABEL047
  918.             FPutLn 10, "END"
  919.             FClose 10
  920.         Endif
  921.     Endif
  922.     Color 15
  923.     Cls
  924.     PrintLn 
  925.     PrintLn TSTRING008(29)
  926.     PrintLn 
  927.     More
  928.     Color 15
  929.     Cls
  930.     If (Exist(TSTRING001(19)) == 0) Then
  931.         FCreate 1, TSTRING001(19), 1, 0
  932.         FOpen 1, TSTRING001(19), 2, 0
  933.         FPutLn 1, TSTRING009(15)
  934.         FPutLn 1, TSTRING008(27)
  935.         FPutLn 1, TSTRING010(9)
  936.         FClose 1
  937.     Else
  938.         Delete TSTRING001(19)
  939.         FCreate 1, TSTRING001(19), 1, 0
  940.         FOpen 1, TSTRING001(19), 2, 0
  941.         FPutLn 1, TSTRING009(15)
  942.         FPutLn 1, TSTRING008(27)
  943.         FPutLn 1, TSTRING010(9)
  944.         FClose 1
  945.     Endif
  946.     INTEGER020 = 0
  947.     For INTEGER016 = 1 To Len(STRING016)
  948.         If (Mid(STRING016, INTEGER016, 1) == " ") INTEGER020 = 1
  949.     Next
  950.     If (INTEGER020 == 1) Then
  951.         KbdStuff STRING016 + Chr(13)
  952.     Else
  953.         KbdStuff STRING016 + Chr(13)
  954.         KbdStuff Chr(13)
  955.     Endif
  956.     KbdStuff Chr(13)
  957.     KbdStuff Chr(13)
  958.     For INTEGER016 = 1 To 2
  959.         KbdStuff TSTRING010(INTEGER016) + Chr(13)
  960.     Next
  961.     For INTEGER016 = 4 To 8
  962.         KbdStuff TSTRING010(INTEGER016) + Chr(13)
  963.     Next
  964.     If (Psa(1)) Then
  965.         KbdStuff Chr(13)
  966.     Endif
  967.     If (Psa(3)) Then
  968.         KbdStuff Chr(13)
  969.         KbdStuff Chr(13)
  970.         KbdStuff Chr(13)
  971.         KbdStuff Chr(13)
  972.         KbdStuff Chr(13)
  973.         KbdStuff Chr(13)
  974.     Endif
  975.     If (Psa(4)) Then
  976.         KbdStuff "Unknown" + Chr(13)
  977.     Endif
  978.     KbdStuff "N" + Chr(13)
  979.     End
  980.     Return
  981.     :LABEL048
  982.     Color 15
  983.     Cls
  984.     If (Left(TSTRING008(17), 1) == "%") Then
  985.         INTEGER016 = 0
  986.         STRING014 = TSTRING008(17)
  987.         STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  988.         DispFile STRING013, 1
  989.     Else
  990.         PrintLn TSTRING008(17)
  991.     Endif
  992.     PrintLn 
  993.     If (STRING030 == "0") Then
  994.         Goto LABEL049
  995.     Endif
  996.     AnsiPos 1, GetY()
  997.     ClrEol
  998.     Print TSTRING008(18)
  999.     STRING031 = ""
  1000.     InputStr " _", STRING031, 15, 30, Mask_Ascii(), 1
  1001.     If (Upper(STRING031) <> Upper(STRING030)) Return
  1002.     :LABEL049
  1003.     DispFile PPEPath() + TSTRING008(14), 1
  1004.     DispFile PPEPath() + TSTRING008(15), 1
  1005.     DispFile PPEPath() + TSTRING008(16), 1
  1006.     BOOLEAN004 = 0
  1007.     Color 15
  1008.     Cls
  1009.     DispFile TSTRING001(16), 1
  1010.     AnsiPos TSTRING009(9), TSTRING009(8)
  1011.     STRING016 = ""
  1012.     STRING019 = ""
  1013.     InputStr "_", STRING016, 15, TSTRING002(1, 3), Mask_Ascii(), 0
  1014.     STRING019 = Upper(STRING016)
  1015.     If (U_RecNum(STRING019) <> -1) Then
  1016.         GetAltUser U_RecNum(STRING019)
  1017.         INTEGER011 = 0
  1018.         :LABEL050
  1019.         If (BOOLEAN004) Goto LABEL051
  1020.         INTEGER011 = INTEGER011 + 1
  1021.         STRING015 = ""
  1022.         AnsiPos TSTRING009(11), TSTRING009(10)
  1023.         InputStr "_", STRING015, 15, TSTRING002(2, 3), Mask_Ascii(), 1
  1024.         If (Upper(STRING015) == Upper(U_Pwd)) Then
  1025.             BOOLEAN004 = 1
  1026.         Else
  1027.             If (INTEGER011 == TSTRING009(13)) Then
  1028.                 AnsiPos 1, TSTRING009(25)
  1029.                 Print TSTRING008(20)
  1030.                 Delay 18
  1031.                 KbdStuff TSTRING009(15) + Chr(13)
  1032.                 Hangup
  1033.                 DtrOff
  1034.                 End
  1035.             Endif
  1036.             AnsiPos 1, TSTRING009(25)
  1037.             Print TSTRING008(19)
  1038.             Delay 18
  1039.             AnsiPos 1, TSTRING009(25)
  1040.             Print "                                                                            "
  1041.             AnsiPos TSTRING009(11), TSTRING009(10)
  1042.             For INTEGER016 = 1 To Len(STRING015)
  1043.                 Print " "
  1044.             Next
  1045.         Endif
  1046.         Goto LABEL050
  1047.         :LABEL051
  1048.     Else
  1049.         AnsiPos 1, TSTRING009(25)
  1050.         Print TSTRING008(34)
  1051.         Delay 18
  1052.         AnsiPos 1, TSTRING009(25)
  1053.         Print "                                                                            "
  1054.         Return
  1055.     Endif
  1056.     If (BOOLEAN004 == 0) Then
  1057.         Return
  1058.     Else
  1059.         INTEGER020 = 0
  1060.         For INTEGER016 = 1 To Len(STRING016)
  1061.             If (Mid(STRING016, INTEGER016, 1) == " ") INTEGER020 = 1
  1062.         Next
  1063.         If (INTEGER020 == 1) Then
  1064.             KbdStuff STRING016 + Chr(13)
  1065.             KbdStuff STRING015 + Chr(13)
  1066.         Else
  1067.             KbdStuff STRING016 + Chr(13)
  1068.             KbdStuff Chr(13)
  1069.             KbdStuff STRING015 + Chr(13)
  1070.         Endif
  1071.         End
  1072.     Endif
  1073.     :LABEL052
  1074.     If (INTEGER018 == TSTRING007(7)) Then
  1075.         AnsiPos 1, TSTRING009(14)
  1076.         Print TSTRING008(25)
  1077.         Delay 18
  1078.         AnsiPos 1, TSTRING009(14)
  1079.         Print "                                                                                "
  1080.         Return
  1081.     Else
  1082.         Color 15
  1083.         Cls
  1084.         PrintLn 
  1085.         If (Left(TSTRING008(1), 1) == "%") Then
  1086.             STRING014 = TSTRING008(1)
  1087.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1088.             DispFile STRING013, 1
  1089.         Else
  1090.             PrintLn TSTRING008(1)
  1091.         Endif
  1092.         PrintLn 
  1093.         PrintLn TSTRING008(2), " @X0F", TSTRING007(5)
  1094.         BOOLEAN004 = 0
  1095.         INTEGER015 = 0
  1096.         STRING016 = ""
  1097.         :LABEL053
  1098.         If (BOOLEAN004) Goto LABEL054
  1099.         InputStr TSTRING008(3) + " _", STRING016, 7, 30, Mask_Ascii(), 8
  1100.         If (TSTRING009(27) == "1") Then
  1101.             If (U_RecNum(STRING016) == -1) Then
  1102.                 BOOLEAN004 = 0
  1103.                 INTEGER015 = INTEGER015 + 1
  1104.                 STRING016 = ""
  1105.                 AnsiPos 1, GetY()
  1106.                 ClrEol
  1107.             Else
  1108.                 BOOLEAN004 = 1
  1109.             Endif
  1110.             If (INTEGER015 == 3) Return
  1111.         ElseIf (STRING016 <> "") Then
  1112.             BOOLEAN004 = 1
  1113.         Else
  1114.             AnsiPos 1, GetY()
  1115.             ClrEol
  1116.             INTEGER015 = INTEGER015 + 1
  1117.         Endif
  1118.         If (INTEGER015 == 3) Return
  1119.         Goto LABEL053
  1120.         :LABEL054
  1121.         If (TSTRING007(3) == 1) Then
  1122.             FreshLine
  1123.             BOOLEAN004 = 0
  1124.             INTEGER015 = 0
  1125.             :LABEL055
  1126.             If (BOOLEAN004) Goto LABEL056
  1127.             STRING017 = ""
  1128.             InputStr TSTRING008(4) + " _", STRING017, 7, 30, Mask_Ascii(), 8
  1129.             If (STRING017 == "") Then
  1130.                 BOOLEAN004 = 0
  1131.                 INTEGER015 = INTEGER015 + 1
  1132.                 STRING017 = ""
  1133.                 AnsiPos 1, GetY()
  1134.                 ClrEol
  1135.             Else
  1136.                 BOOLEAN004 = 1
  1137.             Endif
  1138.             If (INTEGER015 == 3) Return
  1139.             Goto LABEL055
  1140.             :LABEL056
  1141.         Else
  1142.             STRING017 = TSTRING007(3)
  1143.         Endif
  1144.         FreshLine
  1145.         PrintLn 
  1146.         PrintLn STRING026, " ┌───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┐"
  1147.         TSTRING007(1) = RTrim(TSTRING007(1), " ")
  1148.         If (TSTRING007(1) > 9) Then
  1149.             PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07               ", STRING026, "│"
  1150.         Else
  1151.             PrintLn STRING026, " │               @X0F· @X07Enter Your Message Now @X0F· @X07Maximum ", TSTRING007(1), " Lines @X0F· @X07              ", STRING026, "│"
  1152.         Endif
  1153.         PrintLn STRING026, " │             @X0F· @X07(@X0F/S@X07) to Save Message @X0F· @X07(@X0F/A@X07) to Abort Message @X0F·               ", STRING026, "│"
  1154.         PrintLn STRING026, " └───────────────────", STRING025, " ──────── ──── ─ ·  · ─ ──── ────────", STRING026, " ───────────────────┘"
  1155.         PrintLn 
  1156.         INTEGER012 = 0
  1157.         BOOLEAN004 = 0
  1158.         For INTEGER016 = 1 To 99
  1159.             TSTRING024(INTEGER016) = ""
  1160.         Next
  1161.         :LABEL057
  1162.         If (BOOLEAN004) Goto LABEL058
  1163.         INTEGER012 = INTEGER012 + 1
  1164.         InputStr STRING025 + "» _", TSTRING024(INTEGER012), 7, 76, Mask_Ascii(), 512
  1165.         FreshLine
  1166.         If (((INTEGER012 == TSTRING007(1)) || (Upper(TSTRING024(INTEGER012)) == "/S")) || (Upper(TSTRING024(INTEGER012)) == "/A")) Then
  1167.             If (Upper(TSTRING024(INTEGER012)) == "/A") Then
  1168.                 FreshLine
  1169.                 PrintLn 
  1170.                 PrintLn TSTRING008(5)
  1171.                 Delay 18
  1172.                 Return
  1173.             Endif
  1174.             If (Upper(TSTRING024(INTEGER012)) == "/S") Then
  1175.                 FreshLine
  1176.                 PrintLn 
  1177.                 PrintLn TSTRING008(6)
  1178.                 Delay 18
  1179.                 INTEGER012 = INTEGER012 - 1
  1180.                 FCreate 1, TSTRING001(13), 1, 0
  1181.                 FOpen 1, TSTRING001(13), 2, 0
  1182.                 If (INTEGER008 == -1) Then
  1183.                     FPutLn 1, "This PPE is Unregistered!  Please Register!  Only $10"
  1184.                     FPutLn 1, "─────────────────────────────────────────────────────"
  1185.                     FPutLn 1, ""
  1186.                 Endif
  1187.                 For INTEGER017 = 1 To INTEGER012
  1188.                     FPutLn 1, TSTRING024(INTEGER017)
  1189.                 Next
  1190.                 FClose 1
  1191.                 Message TSTRING007(4), TSTRING007(5), STRING016, STRING017, "R", "@X0FComment Send VIA @X09Matrix Feedback", 0, 0, TSTRING001(13)
  1192.                 INTEGER018 = INTEGER018 + 1
  1193.                 Delete TSTRING001(13)
  1194.                 Return
  1195.             Endif
  1196.         Endif
  1197.         Goto LABEL057
  1198.         :LABEL058
  1199.         AdjTime TSTRING009(6)
  1200.         Return
  1201.     Endif
  1202.     :LABEL059
  1203.     If (INTEGER019 == TSTRING009(1)) Then
  1204.         AnsiPos 1, TSTRING009(14)
  1205.         Print TSTRING008(25)
  1206.         Delay 18
  1207.         AnsiPos 1, TSTRING009(14)
  1208.         Print "                                                                                "
  1209.         Return
  1210.     Else
  1211.         Color 15
  1212.         Cls
  1213.         If (Left(TSTRING008(7), 1) == "%") Then
  1214.             STRING014 = TSTRING008(7)
  1215.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1216.             DispFile STRING013, 1
  1217.             PrintLn 
  1218.         Else
  1219.             PrintLn TSTRING008(7)
  1220.         Endif
  1221.         PrintLn 
  1222.         BOOLEAN004 = 0
  1223.         INTEGER015 = 0
  1224.         STRING016 = ""
  1225.         :LABEL060
  1226.         If (BOOLEAN004) Goto LABEL061
  1227.         InputStr TSTRING008(9) + " _", STRING016, 7, 30, Mask_Ascii(), 8
  1228.         If (TSTRING009(27) == "1") Then
  1229.             If (U_RecNum(STRING016) == -1) Then
  1230.                 BOOLEAN004 = 0
  1231.                 INTEGER015 = INTEGER015 + 1
  1232.                 STRING016 = ""
  1233.                 AnsiPos 1, GetY()
  1234.                 ClrEol
  1235.             Else
  1236.                 BOOLEAN004 = 1
  1237.             Endif
  1238.         ElseIf (STRING016 <> "") Then
  1239.             BOOLEAN004 = 1
  1240.         Else
  1241.             AnsiPos 1, GetY()
  1242.             ClrEol
  1243.             INTEGER015 = INTEGER015 + 1
  1244.         Endif
  1245.         If (INTEGER015 == 3) Return
  1246.         Goto LABEL060
  1247.         :LABEL061
  1248.         FreshLine
  1249.         BOOLEAN004 = 0
  1250.         INTEGER015 = 0
  1251.         :LABEL062
  1252.         If (BOOLEAN004) Goto LABEL063
  1253.         InputStr TSTRING008(8) + " _", STRING018, 7, 30, Mask_Ascii(), 8
  1254.         If (STRING018 == "") Then
  1255.             BOOLEAN004 = 0
  1256.             INTEGER015 = INTEGER015 + 1
  1257.             STRING018 = ""
  1258.             AnsiPos 1, GetY()
  1259.             ClrEol
  1260.         Else
  1261.             BOOLEAN004 = 1
  1262.         Endif
  1263.         If (INTEGER015 == 3) Return
  1264.         Goto LABEL062
  1265.         :LABEL063
  1266.         FreshLine
  1267.         PrintLn 
  1268.         SPrintLn TSTRING008(28)
  1269.         SPrintLn 
  1270.         Print TSTRING008(10)
  1271.         INTEGER019 = INTEGER019 + 1
  1272.         For INTEGER016 = 1 To TSTRING009(2)
  1273.             Print "@BEEP@" + TSTRING008(11)
  1274.             Delay 18
  1275.             If (KInkey() == " ") Then
  1276.                 Chat
  1277.                 Return
  1278.             Endif
  1279.         Next
  1280.         PrintLn 
  1281.         PrintLn 
  1282.         PrintLn TSTRING008(12)
  1283.         Delay 18
  1284.         Return
  1285.     Endif
  1286.     :LABEL064
  1287.     BOOLEAN004 = 0
  1288.     Color 15
  1289.     Cls
  1290.     DispFile TSTRING001(16), 1
  1291.     AnsiPos TSTRING009(9), TSTRING009(8)
  1292.     STRING016 = ""
  1293.     STRING019 = ""
  1294.     InputStr "_", STRING016, 15, TSTRING002(1, 3), Mask_Ascii(), 0
  1295.     STRING019 = Upper(STRING016)
  1296.     If (U_RecNum(STRING019) <> -1) Then
  1297.         GetAltUser U_RecNum(STRING019)
  1298.         INTEGER011 = 0
  1299.         :LABEL065
  1300.         If (BOOLEAN004) Goto LABEL066
  1301.         INTEGER011 = INTEGER011 + 1
  1302.         STRING015 = ""
  1303.         AnsiPos TSTRING009(11), TSTRING009(10)
  1304.         InputStr "_", STRING015, 15, TSTRING002(2, 3), Mask_Ascii(), 1
  1305.         If (Upper(STRING015) == Upper(U_Pwd)) Then
  1306.             BOOLEAN004 = 1
  1307.         Else
  1308.             If (INTEGER011 == TSTRING009(13)) Then
  1309.                 AnsiPos 1, TSTRING009(25)
  1310.                 Print TSTRING008(20)
  1311.                 Delay 18
  1312.                 KbdStuff TSTRING009(15) + Chr(13)
  1313.                 Hangup
  1314.                 DtrOff
  1315.                 End
  1316.             Endif
  1317.             AnsiPos 1, TSTRING009(25)
  1318.             Print TSTRING008(19)
  1319.             Delay 18
  1320.             AnsiPos 1, TSTRING009(25)
  1321.             Print "                                                                            "
  1322.             AnsiPos TSTRING009(11), TSTRING009(10)
  1323.             For INTEGER016 = 1 To Len(STRING015)
  1324.                 Print " "
  1325.             Next
  1326.         Endif
  1327.         Goto LABEL065
  1328.         :LABEL066
  1329.     Else
  1330.         AnsiPos 1, TSTRING009(25)
  1331.         Print TSTRING008(34)
  1332.         Delay 18
  1333.         AnsiPos 1, TSTRING009(25)
  1334.         Print "                                                                            "
  1335.         Return
  1336.     Endif
  1337.     AnsiPos 1, TSTRING009(25)
  1338.     If (U_Sec >= TSTRING009(26)) Then
  1339.         PrintLn TSTRING008(35)
  1340.         PrintLn 
  1341.         PrintLn TSTRING008(18) + " @X0F" + Upper(TSTRING009(5))
  1342.         PrintLn 
  1343.         More
  1344.     Else
  1345.         PrintLn TSTRING008(36)
  1346.         PrintLn 
  1347.         More
  1348.     Endif
  1349.     Return
  1350.     :LABEL067
  1351.     If (TSTRING009(4) == "1") Then
  1352.         AnsiPos 1, TSTRING009(3)
  1353.         Print TSTRING008(30)
  1354.         Print " "
  1355.         BOOLEAN004 = 0
  1356.         STRING013 = ""
  1357.         :LABEL068
  1358.         If (BOOLEAN004) Goto LABEL070
  1359.         STRING013 = Inkey()
  1360.         If (Len(STRING013)) Then
  1361.             If (Upper(STRING013) == "Y") Then
  1362.                 AnsiPos 1, TSTRING009(3)
  1363.                 ClrEol
  1364.                 If (Left(TSTRING008(13), 1) == "%") Then
  1365.                     STRING014 = TSTRING008(13)
  1366.                     STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1367.                     Color 15
  1368.                     Cls
  1369.                     DispFile STRING013, 1
  1370.                     PrintLn 
  1371.                     Goto LABEL069
  1372.                 Endif
  1373.                 AnsiPos 1, TSTRING009(3)
  1374.                 PrintLn TSTRING008(13)
  1375.                 :LABEL069
  1376.                 If (OnLocal() && (INTEGER007 == 1)) End
  1377.                 KbdStuff TSTRING009(15) + Chr(13)
  1378.                 Hangup
  1379.                 DtrOff
  1380.                 End
  1381.             Endif
  1382.             If (Upper(STRING013) == "N") Then
  1383.                 AnsiPos 1, TSTRING009(3)
  1384.                 ClrEol
  1385.                 BOOLEAN004 = 1
  1386.             Endif
  1387.         Endif
  1388.         Goto LABEL068
  1389.         :LABEL070
  1390.     Else
  1391.         If (Left(TSTRING008(13), 1) == "%") Then
  1392.             STRING014 = TSTRING008(13)
  1393.             STRING013 = PPEPath() + Right(STRING014, Len(STRING014) - 1)
  1394.             Color 15
  1395.             Cls
  1396.             DispFile STRING013, 1
  1397.             PrintLn 
  1398.         Else
  1399.             AnsiPos 1, TSTRING009(3)
  1400.             PrintLn TSTRING008(13)
  1401.         Endif
  1402.         KbdStuff TSTRING009(15) + Chr(13)
  1403.         If (OnLocal() && (INTEGER007 == 1)) End
  1404.         Hangup
  1405.         DtrOff
  1406.         End
  1407.     Endif
  1408.     Return
  1409.     :LABEL071
  1410.     STRING040 = Chr(75) + Chr(114) + Chr(104) + Chr(121) + Chr(112) + Chr(116) + Chr(105) + Chr(99)
  1411.     Color 7
  1412.     If (STRING033 == "NONE") Then
  1413.         PrintLn "@X09Ma@X01tr@X08ix @X0120@X0900 @X07· @X0FCoded by " + STRING040 + " @X07· @X0FU@X0Fn@X0Fr@X0Fe@X0Fg@X0Fi@X0Fs@X0Ft@X0Fe@X0Fr@X0Fe@X0Fd!"
  1414.         INTEGER008 = -1
  1415.         Delay 30
  1416.         Return
  1417.     Else
  1418.         INTEGER001 = STRING035
  1419.         STRING039 = Left(STRING034, 9)
  1420.         INTEGER003 = STRING039
  1421.         INTEGER002 = ((INTEGER003 / 3 - 42) * 2 - 2) / 2 + 1
  1422.         If (((((INTEGER002 == INTEGER001) || (INTEGER002 == INTEGER001 - 1)) || (INTEGER002 == INTEGER001 + 1)) || (INTEGER002 == INTEGER001 + 2)) || (INTEGER002 == INTEGER001 - 2)) Then
  1423.             INTEGER004 = Len(STRING034)
  1424.             INTEGER005 = 1
  1425.             BOOLEAN004 = 0
  1426.             :LABEL072
  1427.             If (BOOLEAN004) Goto LABEL073
  1428.             STRING037 = Mid(STRING034, INTEGER005, 2)
  1429.             INTEGER006 = STRING037
  1430.             If (Left(STRING037, 1) == "0") Then
  1431.                 STRING038 = STRING038 + " "
  1432.                 INTEGER005 = INTEGER005 + 1
  1433.             Else
  1434.                 STRING038 = STRING038 + TSTRING036(INTEGER006)
  1435.                 INTEGER005 = INTEGER005 + 2
  1436.             Endif
  1437.             If (INTEGER005 >= Len(STRING034)) BOOLEAN004 = 1
  1438.             Goto LABEL072
  1439.             :LABEL073
  1440.             If (STRING033 == STRING038) Then
  1441.                 PrintLn "@X09Ma@X01tr@X08ix @X0120@X0900 @X07· @X0FCoded by " + STRING040 + " @X07· @X0FR@X0Fe@X0Fg@X0Fi@X0Fs@X0Ft@X0Fe@X0Fr@X0Fe@X0Fd to " + STRING038
  1442.             ElseIf (STRING033 <> STRING038) Then
  1443.                 PrintLn "@X09Ma@X01tr@X08ix @X0120@X0900 @X07· @X0FCoded by " + STRING040 + " @X07· @X0FError in @X0FR@X0Fe@X0Fg@X0Fi@X0Fs@X0Ft@X0Fr@X0Fa@X0Ft@X0Fi@X0Fo@X0Fn Name!"
  1444.                 INTEGER008 = -1
  1445.             Endif
  1446.         Else
  1447.             PrintLn "@X09Ma@X01tr@X08ix @X0120@X0900 @X07· @X0FCoded by " + STRING040 + " @X07· @X0FError in @X0FR@X0Fe@X0Fg@X0Fi@X0Fs@X0Ft@X0Fr@X0Fa@X0Ft@X0Fi@X0Fo@X0Fn Codes!"
  1448.             INTEGER008 = -1
  1449.         Endif
  1450.         Delay 25
  1451.     Endif
  1452.     Return
  1453.  
  1454. ;------------------------------------------------------------------------------
  1455. ;
  1456. ; Usage report (before postprocessing)
  1457. ;
  1458. ; ■ Statements used :
  1459. ;
  1460. ;    14      End
  1461. ;    17      Cls
  1462. ;    11      ClrEol
  1463. ;    5       More
  1464. ;    19      Color 
  1465. ;    322     Goto 
  1466. ;    391     Let 
  1467. ;    63      Print 
  1468. ;    81      PrintLn 
  1469. ;    217     If 
  1470. ;    17      DispFile 
  1471. ;    6       FCreate 
  1472. ;    11      FOpen 
  1473. ;    11      FClose 
  1474. ;    30      FGet 
  1475. ;    46      FPutLn 
  1476. ;    12      Hangup
  1477. ;    3       Delete 
  1478. ;    2       AdjTime 
  1479. ;    26      InputStr 
  1480. ;    7       Gosub 
  1481. ;    22      Return
  1482. ;    12      DtrOff
  1483. ;    18      Delay 
  1484. ;    33      KbdStuff 
  1485. ;    1       RdUNet 
  1486. ;    1       WrUNet 
  1487. ;    89      AnsiPos 
  1488. ;    11      FreshLine
  1489. ;    2       Message 
  1490. ;    1       Chat
  1491. ;    2       SPrintLn 
  1492. ;    1       KeyFlush
  1493. ;    2       GetAltUser 
  1494. ;
  1495. ;
  1496. ; ■ Functions used :
  1497. ;
  1498. ;    10      -
  1499. ;    1       *
  1500. ;    2       /
  1501. ;    173     +
  1502. ;    29      -
  1503. ;    124     ==
  1504. ;    15      <>
  1505. ;    49      <
  1506. ;    41      <=
  1507. ;    13      >
  1508. ;    85      >=
  1509. ;    184     !
  1510. ;    86      &&
  1511. ;    54      ||
  1512. ;    28      Len(
  1513. ;    36      Upper()
  1514. ;    4       Mid()
  1515. ;    11      Left()
  1516. ;    8       Right()
  1517. ;    44      Chr()
  1518. ;    2       RTrim()
  1519. ;    1       Replace()
  1520. ;    3       Inkey()
  1521. ;    3       Mask_Alpha()
  1522. ;    2       Mask_Num()
  1523. ;    1       Mask_AlNum()
  1524. ;    18      Mask_Ascii()
  1525. ;    1       PCBDat()
  1526. ;    32      PPEPath()
  1527. ;    2       PcbNode()
  1528. ;    6       ReadLine()
  1529. ;    2       OnLocal()
  1530. ;    1       UN_Name()
  1531. ;    1       UN_City()
  1532. ;    5       Exist()
  1533. ;    9       GetY()
  1534. ;    3       Psa()
  1535. ;    1       KInkey()
  1536. ;    7       U_RecNum()
  1537. ;
  1538. ;------------------------------------------------------------------------------
  1539. ;
  1540. ; Analysis flags : RABdH
  1541. ;
  1542. ; R - Read user ■ 5
  1543. ;     User records are read, this may signify that someone wants to get
  1544. ;     various informations about a user (for example his password), but
  1545. ;     this may also be normal for a program accessing user records (for
  1546. ;     example a User Editor)
  1547. ;     ■ Search for : GETALTUSER
  1548. ;
  1549. ; A - Adjust online time remaining ■ 5
  1550. ;     Program modify the amount of online time remaining, this may
  1551. ;     be a way to bypass time limits
  1552. ;     ■ Search for : ADJTIME
  1553. ;
  1554. ; B - Brute hangup ■ 1
  1555. ;     Program hangup without notification. This may be a good way to
  1556. ;     disconnect a user, but if used randomly, may be very nasty
  1557. ;     ■ Search for : HANGUP, DTROFF
  1558. ;
  1559. ; d - Access PCBOARD.DAT ■ 2
  1560. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1561. ;     for many PPE so they can find various informations on the system
  1562. ;     (system paths, max number of lines in messages, ...) but it may also
  1563. ;     be a way to gather vital informations.
  1564. ;     ■ Search for : PCBDAT()
  1565. ;
  1566. ; H - Read Password or Password History ■ 5
  1567. ;     Program is reading the user's password or last password history
  1568. ;     This may be ok for a password manager, but it is very suspect. Check!
  1569. ;     ■ Search for : U_PWDHIST, U_PWD
  1570. ;
  1571. ;------------------------------------------------------------------------------
  1572. ;
  1573. ; Postprocessing report
  1574. ;
  1575. ;    41      For/Next
  1576. ;    0       While/EndWhile
  1577. ;    107     If/Then or If/Then/Else
  1578. ;    2       Select Case
  1579. ;
  1580. ;------------------------------------------------------------------------------
  1581. ;                 AEGiS Corp - Break the routines, code against the machines!
  1582. ;------------------------------------------------------------------------------
  1583.