home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / S / SEXCHAT2.ZIP / CDCHAT.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1995-03-03  |  28KB  |  1,411 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 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN006
  20.     Boolean  BOOLEAN007
  21.     Integer  INTEGER004
  22.     Integer  INTEGER005
  23.     Integer  INTEGER006
  24.     Integer  INTEGER007
  25.     Integer  INTEGER008
  26.     Integer  INTEGER009
  27.     Integer  INTEGER010
  28.     Integer  INTEGER011
  29.     Integer  INTEGER012
  30.     Integer  INTEGER013
  31.     Integer  INTEGER014
  32.     Integer  INTEGER015
  33.     Integer  INTEGER016
  34.     Integer  INTEGER017
  35.     Integer  INTEGER018
  36.     Integer  INTEGER019
  37.     Integer  INTEGER020
  38.     Integer  INTEGER021
  39.     String   STRING006
  40.     String   STRING007
  41.     String   STRING008
  42.     String   STRING009
  43.     String   STRING010
  44.     String   STRING011
  45.     String   STRING012
  46.     String   STRING013
  47.     String   STRING014
  48.     String   STRING015
  49.     String   STRING016
  50.     String   STRING017
  51.     String   STRING018
  52.     String   STRING019
  53.     String   STRING020
  54.     String   STRING021
  55.     String   STRING022
  56.     String   TSTRING023(15)
  57.     String   TSTRING024(15)
  58.     String   STRING025
  59.     String   STRING026
  60.     String   STRING027
  61.     String   STRING028
  62.     String   STRING029
  63.     String   STRING030
  64.     String   STRING031
  65.     String   STRING032
  66.     String   STRING033
  67.     String   STRING034
  68.     String   STRING035
  69.     String   STRING036
  70.     String   STRING037
  71.     String   STRING038
  72.     String   STRING039
  73.     String   STRING040
  74.     String   STRING041
  75.     String   STRING042
  76.     String   STRING043
  77.     String   STRING044
  78.     String   STRING045
  79.     String   STRING046
  80.     String   STRING047
  81.     String   STRING048
  82.     String   STRING049
  83.     String   STRING050
  84.     String   STRING051
  85.     String   STRING052
  86.     String   STRING053
  87.  
  88. ;------------------------------------------------------------------------------
  89.  
  90.     STRING006 = "@X0CYou are fu@X04cking shit, do@X08nt you have anthing better t@X04o do than deco@X0Cmpiling!"
  91.     If (!PPEPath() + "DSFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF") Delay 0
  92.     Gosub LABEL082
  93.     Cls
  94.     StartDisp 1
  95.     AnsiPos 1, 2
  96.     If (Exist(PPEPath() + "CDCHAT.PCB")) DispFile PPEPath() + "CDCHAT.PCB", 2 + 1
  97.     PrintLn " @X07                    - SysChat v2.01 Code and Design By: Cyber Demon [@X07SEX]@X07"
  98.     PrintLn "                     - Registered to : " + STRING008
  99.     PrintLn "                     - Serial number : " + STRING007
  100.     BOOLEAN006 = 1
  101.     STRING030 = Upper(ReadLine(PPEPath() + "CDCHAT.CFG", 34))
  102.     STRING031 = ReadLine(PPEPath() + "CDCHAT.CFG", 35)
  103.     STRING033 = ReadLine(PPEPath() + "CDCHAT.CFG", 36)
  104.     INTEGER009 = 1
  105.     INTEGER004 = GetY()
  106.     INTEGER005 = GetY()
  107.     AnsiPos 1, INTEGER004 + 1
  108.     If (Exist(PPEPath() + "SYSOP.MCR")) Goto LABEL001
  109.     FCreate 1, PPEPath() + "SYSOP.MCR", 1, 0
  110.     FClose 1
  111.     :LABEL001
  112.     FOpen 1, PPEPath() + "SYSOP.MCR", 0, 0
  113.     :LABEL002
  114.     FGet 1, TSTRING023(INTEGER009)
  115.     If ((TSTRING023(INTEGER009) == "") || (INTEGER009 == 16)) Goto LABEL003
  116.     INTEGER009 = INTEGER009 + 1
  117.     Goto LABEL002
  118.     :LABEL003
  119.     FClose 1
  120.     INTEGER015 = 1
  121.     If (!Exist(PPEPath() + "USER\MACROUSR." + String(U_RecNum(U_Name())))) FCreate 1, PPEPath() + "USER\MACROUSR." + String(U_RecNum(U_Name())) , 1, 0
  122.     FCloseAll
  123.     FOpen 1, PPEPath() + "USER\MACROUSR." + String(U_RecNum(U_Name())), 0, 0
  124.     FGet 1, TSTRING024(1)
  125.     FGet 1, TSTRING024(2)
  126.     FGet 1, TSTRING024(3)
  127.     FGet 1, TSTRING024(4)
  128.     FGet 1, TSTRING024(5)
  129.     FGet 1, TSTRING024(6)
  130.     FGet 1, TSTRING024(7)
  131.     FGet 1, TSTRING024(8)
  132.     FGet 1, TSTRING024(9)
  133.     FGet 1, TSTRING024(10)
  134.     FGet 1, TSTRING024(11)
  135.     FGet 1, TSTRING024(12)
  136.     FGet 1, TSTRING024(13)
  137.     FGet 1, TSTRING024(14)
  138.     FGet 1, TSTRING024(15)
  139.     FClose 1
  140.     :LABEL004
  141.     STRING011 = ""
  142.     STRING012 = ""
  143.     STRING011 = MInkey()
  144.     STRING012 = KInkey()
  145.     If (STRING012 == "") Then
  146.         If (BOOLEAN006 == 0) Goto LABEL004
  147.         If (STRING011 == "") Then
  148.             Goto LABEL004
  149.         Endif
  150.         If (Len(STRING032) == Left(Right(ReadLine(PPEPath() + "CDCHAT.CFG", 31), 3), 2)) Then
  151.             FreshLine
  152.             PrintLn Left(ReadLine(PPEPath() + "CDCHAT.CFG", 31), Len(ReadLine(PPEPath() + "CDCHAT.CFG", 31)) - 4)
  153.             STRING012 = Chr(32)
  154.             STRING032 = ""
  155.             Goto LABEL004
  156.         Endif
  157.         If (STRING011 == Chr(13)) Newline
  158.         If (STRING011 == "") Goto LABEL004
  159.         If (STRING011 == Chr(8)) Then
  160.             If (GetX() == 1) Then
  161.                 AnsiPos 80, GetY() - 1
  162.                 Goto LABEL004
  163.             Endif
  164.             Backup 1
  165.             Print " "
  166.             Backup 1
  167.             STRING032 = Left(STRING032, Len(STRING032) - 1)
  168.             Goto LABEL004
  169.         Endif
  170.         If (STRING011 == "LEFT") Then
  171.             If (GetX() == 1) Goto LABEL004
  172.             Backup 1
  173.             Goto LABEL004
  174.         Endif
  175.         If (STRING011 == "RIGHT") Then
  176.             If (GetX() == 80) Goto LABEL004
  177.             AnsiPos GetX() + 1, GetY()
  178.             Goto LABEL004
  179.         Endif
  180.         If (STRING011 == "UP") Then
  181.             AnsiPos GetX(), GetY() - 1
  182.             Goto LABEL004
  183.         Endif
  184.         If (STRING011 == "DOWN") Then
  185.             AnsiPos GetX(), GetY() + 1
  186.             Goto LABEL004
  187.         Endif
  188.         If (STRING011 == "HOME") Then
  189.             AnsiPos 1, GetY()
  190.             Goto LABEL004
  191.         Endif
  192.         If (STRING011 == Chr(9)) Goto LABEL078
  193.         If (STRING011 == "BADKEY") Goto LABEL004
  194.         If (STRING011 == "PGDN") Goto LABEL004
  195.         If (STRING011 == "PGUP") Goto LABEL004
  196.         If (STRING011 == "DEL") Goto LABEL004
  197.         If (STRING011 == "INS") Goto LABEL004
  198.         If (STRING011 == "END") Goto LABEL004
  199.         If (STRING011 == "") Goto LABEL068
  200.         If (STRING011 == "") Goto LABEL080
  201.         If (STRING011 == "") Goto LABEL045
  202.         If (STRING011 == "") Goto LABEL081
  203.         STRING032 = STRING032 + STRING011
  204.         If ((STRING011 == Chr(32)) || (STRING011 == Chr(13))) STRING032 = ""
  205.         INTEGER010 = 0
  206.         :LABEL005
  207.         INTEGER010 = INTEGER010 + 1
  208.         Tokenize TSTRING024(INTEGER010)
  209.         STRING025 = GetToken()
  210.         STRING026 = GetToken()
  211.         STRING032 = Upper(STRING032)
  212.         If (!(STRING032 == "") && (STRING032 == STRING025)) Then
  213.             If (80 - GetX() < Len(STRING026)) Then
  214.                 Backup Len(STRING032)
  215.                 ClrEol
  216.                 FreshLine
  217.                 Print Replace(STRING026, "ª", " ")
  218.                 Goto LABEL004
  219.             Endif
  220.             Backup Len(STRING032) - 1
  221.             ClrEol
  222.             Print Replace(STRING026, "ª", " ")
  223.             Goto LABEL004
  224.         Endif
  225.         If ((TSTRING024(INTEGER010) == "") || (INTEGER010 == 16)) Goto LABEL006
  226.         Goto LABEL005
  227.         :LABEL006
  228.         If ((GetX() == 80) && (STRING011 <> " ")) Then
  229.             Backup Len(STRING032)
  230.             ClrEol
  231.             FreshLine
  232.             Print STRING032
  233.             Goto LABEL004
  234.         Endif
  235.         If (Asc(STRING011) < 31) Goto LABEL004
  236.         Print STRING033 + STRING011
  237.         Goto LABEL004
  238.     Endif
  239.     If (STRING012 == Chr(32)) Goto LABEL007
  240.     If (Len(STRING022) == Left(Right(ReadLine(PPEPath() + "CDCHAT.CFG", 31), 3), 2)) Then
  241.         FreshLine
  242.         PrintLn Left(ReadLine(PPEPath() + "CDCHAT.CFG", 31), Len(ReadLine(PPEPath() + "CDCHAT.CFG", 31)) - 4)
  243.         STRING012 = Chr(32)
  244.         STRING022 = ""
  245.         Goto LABEL004
  246.     Endif
  247.     If (STRING012 == "UP") Then
  248.         AnsiPos GetX(), GetY() - 1
  249.         Goto LABEL004
  250.     Endif
  251.     If (STRING012 == "DOWN") Then
  252.         AnsiPos GetX(), GetY() + 1
  253.         Goto LABEL004
  254.     Endif
  255.     If (STRING012 == "LEFT") Then
  256.         Backup 1
  257.         Goto LABEL004
  258.     Endif
  259.     If (STRING012 == "RIGHT") Then
  260.         If (GetX() == 80) Goto LABEL004
  261.         AnsiPos GetX() + 1, GetY()
  262.         Goto LABEL004
  263.     Endif
  264.     If (STRING012 == Chr(8)) Then
  265.         STRING022 = Left(STRING022, Len(STRING022) - 1)
  266.         If ((GetY() == INTEGER005 + 1) && (GetX() == 1)) Goto LABEL004
  267.         If (GetX() == 1) Then
  268.             AnsiPos 80, GetY() - 1
  269.             Print " "
  270.             AnsiPos 80, GetY() - 1
  271.             Goto LABEL004
  272.         Endif
  273.         Print Chr(8) + " " + Chr(8)
  274.         Goto LABEL004
  275.     Endif
  276.     If (STRING012 == "DEL") Goto LABEL004
  277.     If (STRING012 == "INS") Goto LABEL004
  278.     If (STRING012 == "HOME") Then
  279.         AnsiPos 1, GetY()
  280.         Goto LABEL004
  281.     Endif
  282.     If (STRING012 == "END") Goto LABEL004
  283.     If (STRING012 == "PGUP") Goto LABEL004
  284.     If (STRING012 == "PGDN") Goto LABEL004
  285.     If (STRING012 == Chr(9)) Goto LABEL010
  286.     If (STRING012 == Chr(13)) Newline
  287.     If (STRING012 == Chr(27)) Then
  288.         KbdStuff Chr(27)
  289.         Newline
  290.         PrintLn "Discussion ended at @SYSTIME@"
  291.         Log "Chat ended at : " + Time(), 1
  292.         End
  293.     Endif
  294.     If (STRING012 == "") Goto LABEL012
  295.     If (STRING012 == "") Goto LABEL045
  296.     If (STRING012 == "") Goto LABEL046
  297.     If (STRING012 == "") Then
  298.         If (BOOLEAN006 == 0) Then
  299.             BOOLEAN006 = 1
  300.             FreshLine
  301.             Print ReadLine(PPEPath() + "CDCHAT.CFG", 33)
  302.             Goto LABEL004
  303.         Endif
  304.         If (BOOLEAN006 == 1) Then
  305.             BOOLEAN006 = 0
  306.             FreshLine
  307.             PrintLn ReadLine(PPEPath() + "CDCHAT.CFG", 32)
  308.             Goto LABEL004
  309.         Endif
  310.     Endif
  311.     If (STRING012 == "") Goto LABEL047
  312.     If (STRING012 == "") Goto LABEL049
  313.     If (STRING012 == "") Goto LABEL052
  314.     If (STRING012 == "") Goto LABEL068
  315.     If (STRING012 == "") Goto LABEL076
  316.     If (STRING012 == "") Goto LABEL004
  317.     :LABEL007
  318.     STRING022 = STRING022 + STRING012
  319.     If (STRING012 == " ") STRING022 = ""
  320.     If ((GetX() == 80) && !(STRING022 == "")) Then
  321.         Backup Len(STRING022)
  322.         ClrEol
  323.         FreshLine
  324.         Print Trim(STRING022, " ")
  325.         Goto LABEL004
  326.     Endif
  327.     If (STRING012 == Chr(13)) STRING022 = ""
  328.     INTEGER009 = 0
  329.     :LABEL008
  330.     INTEGER009 = INTEGER009 + 1
  331.     Tokenize TSTRING023(INTEGER009)
  332.     STRING025 = GetToken()
  333.     STRING026 = GetToken()
  334.     If (STRING030 == "NO") Then
  335.         STRING022 = Upper(STRING022)
  336.     Endif
  337.     If (!(STRING022 == "") && (STRING022 == STRING025)) Then
  338.         If (80 - GetX() < Len(STRING026)) Then
  339.             Backup Len(STRING022)
  340.             ClrEol
  341.             FreshLine
  342.             Print Replace(STRING026, "ª", " ")
  343.             Goto LABEL004
  344.         Endif
  345.         Backup Len(STRING022) - 1
  346.         ClrEol
  347.         Print Replace(STRING026, "ª", " ")
  348.         Goto LABEL004
  349.     Endif
  350.     If ((TSTRING023(INTEGER009) == "") || (INTEGER009 == 16)) Goto LABEL009
  351.     Goto LABEL008
  352.     :LABEL009
  353.     If (Asc(STRING012) < 31) Goto LABEL004
  354.     Print STRING031 + STRING012
  355.     Goto LABEL004
  356.     :LABEL010
  357.     SaveScrn
  358.     FreshLine
  359.     PrintLn ReadLine(PPEPath() + "CDCHAT.CFG", 30)
  360.     AnsiPos 1, 1
  361.     SPrintLn "         Ultimate full screen chat Coded By Cyber Demon  ■ Help Screen ■       "
  362.     SPrintLn "                                                                               "
  363.     SPrintLn "  CTRL + C   Clear Screen               CTRL + E     User Editor               "
  364.     SPrintLn "  CTRL + P   Page User                  CTRL + U     User Log View 'release 3.2"
  365.     SPrintLn "  CTRL + G   God Mode                   CTRL + F     Display file              "
  366.     SPrintLn "  CTRL + W   Write Sysop's macro        CTRL + Q     Execute the PPE           "
  367.     SPrintLn "  CTRL + O   Who is online              CTRL + T     System Time               "
  368.     SPrintLn "                                                                               "
  369.     SPrintLn "  Press ESC to return                                                           "
  370.     :LABEL011
  371.     STRING013 = KInkey()
  372.     If (STRING013 <> Chr(27)) Goto LABEL011
  373.     RestScrn
  374.     Goto LABEL004
  375.     :LABEL012
  376.     SaveScrn
  377.     FreshLine
  378.     PrintLn ReadLine(PPEPath() + "CDCHAT.CFG", 29)
  379.     FreshLine
  380.     INTEGER007 = 26
  381.     AnsiPos 1, 1
  382.     SPrintLn ".-----------------------------------------------------------------------------."
  383.     SPrintLn "(AHandle......(.........................) AMi-X User Editor For Ultimate|"
  384.     SPrintLn "(BUserNote....(.........................) FS Chat Coded By Cyber Demon. |"
  385.     SPrintLn ")-----------------------------------------------------------------------------("
  386.     SPrintLn "(CMsgs Read...(...................(OLast DIR Listing.(..........|"
  387.     SPrintLn "(DMsgs Left...(...................(PLast Date On.....(..........|"
  388.     SPrintLn "(EB/D Phone...(...................(QLast Time On.....(..........|"
  389.     SPrintLn "(FH/V Phone...(...................(RByte Ratio.......(..........|"
  390.     SPrintLn "(GPassword....(...................(SNumber Times On..(..........|"
  391.     SPrintLn "(HSecurity....(...................(TNumber Uploads...(..........|"
  392.     SPrintLn "(IExpert......(...................(UNumber Downloads.(..........|"
  393.     SPrintLn "(JProtocol....(...................(VDaily Download...(..........|"
  394.     SPrintLn "(KPage Len....(...................(WTotal Upload.....(..........|"
  395.     SPrintLn "(LReg Ex Date.(...................(XTotal Download...(..........|"
  396.     SPrintLn "(MExpired Sec.(...................(YLong Headers.....(..........|"
  397.     SPrintLn "(NMsg Clear...(...................(ZFull Scrn Editor.(..........|"
  398.     SPrintLn "|------------------------------(  User  Comments  )---------------------------|"
  399.     SPrintLn "|  Comment 1......(...................)     Comment 2........(..........|"
  400.     SPrintLn "`-----------------------------------------------------------------------------'"
  401.     :LABEL013
  402.     AnsiPos 1, 20
  403.     SPrint "                                                                              "
  404.     AnsiPos 1, 20
  405.     SPrint "(U)ser Name (R)ecord number : "
  406.     :LABEL014
  407.     STRING017 = KInkey()
  408.     If (!(((Upper(STRING017) == "U") || (Upper(STRING017) == "R")) || (Upper(STRING017) == Chr(13)))) Goto LABEL014
  409.     STRING017 = Upper(STRING017)
  410.     If (STRING017 == "R") Goto LABEL015
  411.     If (STRING017 == "U") Goto LABEL019
  412.     If (STRING017 == Chr(13)) Goto LABEL044
  413.     :LABEL015
  414.     AnsiPos 1, 20
  415.     SPrint "                                                            "
  416.     AnsiPos 1, 20
  417.     SPrint "[ Record number ] : "
  418.     STRING014 = ""
  419.     :LABEL016
  420.     STRING020 = KInkey()
  421.     If (STRING020 == "") Goto LABEL016
  422.     If (STRING020 == Chr(13)) Goto LABEL018
  423.     If (STRING020 == Chr(8)) Goto LABEL017
  424.     If (Len(STRING014) == 3) Goto LABEL016
  425.     INTEGER006 = STRING020
  426.     If (INTEGER006 == 0) Goto LABEL016
  427.     SPrint STRING020
  428.     STRING014 = STRING014 + STRING020
  429.     Goto LABEL016
  430.     :LABEL017
  431.     If (Len(STRING014) == 0) Goto LABEL016
  432.     AnsiPos 21, 20
  433.     STRING014 = ""
  434.     SPrint "                                                         "
  435.     AnsiPos 21, 20
  436.     Goto LABEL016
  437.     :LABEL018
  438.     If (Len(STRING014) == 0) Goto LABEL013
  439.     STRING020 = STRING014
  440.     Goto LABEL020
  441.     :LABEL019
  442.     AnsiPos 1, 20
  443.     SPrint "                                          "
  444.     AnsiPos 1, 20
  445.     SPrint "User Name ] : "
  446.     Gosub LABEL040
  447.     STRING018 = STRING014
  448.     If (STRING018 == "") Goto LABEL013
  449.     STRING018 = Upper(STRING018)
  450.     STRING020 = U_RecNum(STRING018)
  451.     If (STRING020 == -1) Then
  452.         AnsiPos 33, 22
  453.         SPrint "User Not Found!"
  454.         Delay 5
  455.         AnsiPos 33, 22
  456.         SPrint "                    "
  457.         Goto LABEL013
  458.         Goto LABEL020
  459.     Endif
  460.     :LABEL020
  461.     GetAltUser STRING020
  462.     AnsiPos 22, 2
  463.     SPrint "(.........................)"
  464.     AnsiPos 22, 2
  465.     SPrint "" + Mixed(U_Name())
  466.     AnsiPos 21, 3
  467.     SPrint "(.........................)"
  468.     AnsiPos 22, 3
  469.     SPrint "" + U_City
  470.     AnsiPos 22, 5
  471.     STRING019 = U_MsgRd()
  472.     STRING019 = "" + STRING019
  473.     SPrint STRING019
  474.     AnsiPos 22, 6
  475.     STRING019 = U_MsgWr()
  476.     STRING019 = "" + STRING019
  477.     SPrint STRING019
  478.     AnsiPos 21, 7
  479.     SPrint "(...................)"
  480.     AnsiPos 22, 7
  481.     STRING019 = "" + U_BDPhone
  482.     STRING019 = Trim(STRING019, " ")
  483.     SPrint STRING019
  484.     AnsiPos 21, 8
  485.     SPrint "(...................)"
  486.     AnsiPos 22, 8
  487.     STRING019 = "" + U_HVPhone
  488.     STRING019 = Trim(STRING019, " ")
  489.     SPrint STRING019
  490.     AnsiPos 21, 9
  491.     SPrint "(...................)"
  492.     AnsiPos 22, 9
  493.     SPrint "" + U_Pwd
  494.     AnsiPos 21, 10
  495.     SPrint "(...................)"
  496.     AnsiPos 22, 10
  497.     STRING019 = U_Sec
  498.     STRING019 = "" + STRING019
  499.     SPrint STRING019
  500.     AnsiPos 21, 11
  501.     SPrint "(...................)"
  502.     AnsiPos 22, 11
  503.     STRING019 = "Enabled"
  504.     If (U_Expert == 0) STRING019 = "Disabled"
  505.     SPrint STRING019
  506.     AnsiPos 21, 12
  507.     SPrint "(...................)"
  508.     AnsiPos 22, 12
  509.     STRING019 = U_Trans
  510.     STRING019 = Trim(STRING019, " ")
  511.     If (((U_Trans == "N") || (U_Trans == "")) || (U_Trans == " ")) STRING019 = "None"
  512.     STRING019 = "" + STRING019
  513.     SPrint STRING019
  514.     AnsiPos 21, 13
  515.     SPrint "(...................)"
  516.     AnsiPos 22, 13
  517.     STRING019 = U_PageLen
  518.     STRING019 = "" + STRING019
  519.     SPrint STRING019
  520.     AnsiPos 21, 14
  521.     SPrint "(...................)"
  522.     AnsiPos 22, 14
  523.     STRING019 = U_ExpDate
  524.     STRING046 = Strip(U_ExpDate, "-")
  525.     If (STRING046 == "000000") STRING019 = "Disabled"
  526.     STRING019 = "" + STRING019
  527.     SPrint STRING019
  528.     AnsiPos 21, 15
  529.     SPrint "(...................)"
  530.     AnsiPos 22, 15
  531.     STRING019 = U_ExpSec
  532.     STRING019 = "" + STRING019
  533.     SPrint STRING019
  534.     AnsiPos 21, 16
  535.     SPrint "(...................)"
  536.     AnsiPos 22, 16
  537.     STRING019 = "Enabled"
  538.     If (U_Cls == 0) STRING019 = "Disabled"
  539.     SPrint STRING019
  540.     AnsiPos 67, 5
  541.     STRING019 = U_LDir()
  542.     STRING019 = "" + STRING019
  543.     SPrint STRING019
  544.     AnsiPos 67, 6
  545.     SPrint U_LDate()
  546.     AnsiPos 67, 7
  547.     SPrint U_LTime()
  548.     AnsiPos 67, 8
  549.     SPrint String(U_Bul() / U_Bdl()) + ":1"
  550.     AnsiPos 66, 9
  551.     SPrint "(..........)"
  552.     AnsiPos 67, 9
  553.     STRING019 = U_Logons()
  554.     STRING019 = "" + STRING019
  555.     SPrint STRING019
  556.     AnsiPos 67, 10
  557.     STRING019 = U_Ful()
  558.     If (U_Ful() == 0) STRING019 = "None"
  559.     SPrint "" + STRING019
  560.     AnsiPos 66, 11
  561.     SPrint "(..........)"
  562.     AnsiPos 67, 11
  563.     STRING019 = U_Fdl()
  564.     If (U_Fdl() == 0) STRING019 = "None"
  565.     SPrint "" + STRING019
  566.     AnsiPos 66, 12
  567.     SPrint "(..........)"
  568.     AnsiPos 67, 12
  569.     If (U_BdlDay() == 0) STRING019 = "None"
  570.     If (U_BdlDay() <> 0) STRING019 = U_BdlDay()
  571.     SPrint "" + STRING019
  572.     AnsiPos 66, 13
  573.     SPrint "(..........)"
  574.     AnsiPos 67, 13
  575.     STRING019 = U_Bul()
  576.     If (U_Bul() == 0) STRING019 = "None"
  577.     SPrint "" + STRING019
  578.     AnsiPos 66, 14
  579.     SPrint "(..........)"
  580.     AnsiPos 67, 14
  581.     STRING019 = U_Bdl()
  582.     If (U_Bdl() == 0) STRING019 = "None"
  583.     SPrint "" + STRING019
  584.     AnsiPos 66, 15
  585.     SPrint "(..........)"
  586.     AnsiPos 67, 15
  587.     STRING019 = "Enabled"
  588.     If (U_LongHDR == 0) STRING019 = "Disabled"
  589.     SPrint "" + STRING019
  590.     AnsiPos 66, 16
  591.     SPrint "(..........)"
  592.     AnsiPos 67, 16
  593.     If (U_FSEP == 1) Goto LABEL021
  594.     If (U_FSE == 0) SPrint "No"
  595.     If (U_FSE == 1) SPrint "Yes"
  596.     Goto LABEL022
  597.     :LABEL021
  598.     AnsiPos 67, 16
  599.     If (U_FSEP == 1) SPrint "Ask"
  600.     :LABEL022
  601.     AnsiPos 22, 18
  602.     STRING019 = U_Cmnt1
  603.     If ((U_Cmnt1 == 0) || (U_Cmnt1 == "")) STRING019 = "None"
  604.     STRING019 = Trim(STRING019, " ")
  605.     SPrint STRING019
  606.     AnsiPos 67, 18
  607.     STRING019 = U_Cmnt2
  608.     If ((U_Cmnt2 == 0) || (U_Cmnt1 == "")) STRING019 = "None"
  609.     STRING019 = Trim(STRING019, " ")
  610.     SPrint STRING019
  611.     AnsiPos 1, 20
  612.     STRING048 = ""
  613.     SPrint "                                                             "
  614.     AnsiPos 1, 20
  615.     SPrint "Item to change ] :"
  616.     Gosub LABEL040
  617.     STRING048 = STRING014
  618.     AnsiPos 1, 20
  619.     SPrint "                                                  "
  620.     STRING048 = Upper(STRING048)
  621.     If (STRING048 == "A") Goto LABEL023
  622.     If (STRING048 == "B") Goto LABEL024
  623.     If (STRING048 == "C") Goto LABEL023
  624.     If (STRING048 == "D") Goto LABEL023
  625.     If (STRING048 == "E") Goto LABEL025
  626.     If (STRING048 == "F") Goto LABEL026
  627.     If (STRING048 == "G") Goto LABEL027
  628.     If (STRING048 == "H") Goto LABEL028
  629.     If (STRING048 == "I") Goto LABEL029
  630.     If (STRING048 == "J") Goto LABEL030
  631.     If (STRING048 == "K") Goto LABEL031
  632.     If (STRING048 == "L") Goto LABEL032
  633.     If (STRING048 == "M") Goto LABEL033
  634.     If (STRING048 == "N") Goto LABEL034
  635.     If (STRING048 == "O") Goto LABEL023
  636.     If (STRING048 == "P") Goto LABEL023
  637.     If (STRING048 == "Q") Goto LABEL023
  638.     If (STRING048 == "R") Goto LABEL023
  639.     If (STRING048 == "S") Goto LABEL023
  640.     If (STRING048 == "T") Goto LABEL023
  641.     If (STRING048 == "U") Goto LABEL035
  642.     If (STRING048 == "V") Goto LABEL036
  643.     If (STRING048 == "W") Goto LABEL023
  644.     If (STRING048 == "X") Goto LABEL037
  645.     If (STRING048 == "Y") Goto LABEL038
  646.     If (STRING048 == "Z") Goto LABEL039
  647.     Goto LABEL013
  648.     :LABEL023
  649.     AnsiPos 1, 20
  650.     SPrint "This is Dos Performing function Only ]"
  651.     Delay 15
  652.     Goto LABEL020
  653.     :LABEL024
  654.     AnsiPos 1, 20
  655.     STRING047 = ""
  656.     SPrint "User Note ] : "
  657.     Gosub LABEL040
  658.     STRING047 = STRING014
  659.     If (STRING047 == "") Goto LABEL020
  660.     U_City = STRING047
  661.     PutUser
  662.     Goto LABEL020
  663.     :LABEL025
  664.     AnsiPos 1, 20
  665.     STRING047 = ""
  666.     SPrint "Data phone ] : "
  667.     Gosub LABEL040
  668.     STRING047 = STRING014
  669.     If (STRING047 == "") Goto LABEL020
  670.     U_BDPhone = STRING047
  671.     PutUser
  672.     Goto LABEL020
  673.     :LABEL026
  674.     AnsiPos 1, 20
  675.     STRING047 = ""
  676.     SPrint "[  Voice phone ] : "
  677.     Gosub LABEL040
  678.     STRING047 = STRING014
  679.     If (STRING047 == "") Goto LABEL020
  680.     U_HVPhone = STRING047
  681.     PutUser
  682.     Goto LABEL020
  683.     :LABEL027
  684.     AnsiPos 1, 20
  685.     STRING047 = ""
  686.     SPrint "New Password ] : "
  687.     Gosub LABEL040
  688.     STRING047 = STRING014
  689.     If (STRING047 == "") Goto LABEL020
  690.     U_Pwd = STRING047
  691.     PutUser
  692.     Goto LABEL020
  693.     :LABEL028
  694.     AnsiPos 1, 20
  695.     STRING047 = ""
  696.     SPrint "Security Level ] : "
  697.     Gosub LABEL040
  698.     STRING047 = STRING014
  699.     If (STRING047 == "") Goto LABEL020
  700.     U_Sec = STRING047
  701.     PutUser
  702.     Goto LABEL020
  703.     :LABEL029
  704.     AnsiPos 1, 20
  705.     STRING047 = ""
  706.     SPrint "Expert Mode Enabled/Disabled ] : "
  707.     Gosub LABEL040
  708.     STRING047 = STRING014
  709.     STRING047 = Upper(STRING047)
  710.     If (STRING047 == "") Goto LABEL020
  711.     If (STRING047 == "E") STRING047 = 1
  712.     If (STRING047 == "D") STRING047 = 0
  713.     U_Expert = STRING047
  714.     PutUser
  715.     Goto LABEL020
  716.     :LABEL030
  717.     AnsiPos 1, 20
  718.     STRING047 = ""
  719.     SPrint "Default Protocol ] : "
  720.     Gosub LABEL040
  721.     STRING047 = STRING014
  722.     STRING047 = Upper(STRING047)
  723.     U_Trans = STRING047
  724.     PutUser
  725.     Goto LABEL020
  726.     :LABEL031
  727.     AnsiPos 1, 20
  728.     STRING047 = ""
  729.     SPrint "Page Length ] :"
  730.     Gosub LABEL040
  731.     STRING047 = STRING014
  732.     If (STRING047 == "") Goto LABEL020
  733.     U_PageLen = STRING047
  734.     PutUser
  735.     Goto LABEL020
  736.     :LABEL032
  737.     AnsiPos 1, 20
  738.     STRING047 = ""
  739.     SPrint "Epiration date ] : "
  740.     Gosub LABEL040
  741.     STRING047 = STRING014
  742.     If (STRING047 == "") Goto LABEL020
  743.     U_ExpDate = STRING047
  744.     PutUser
  745.     Goto LABEL020
  746.     :LABEL033
  747.     AnsiPos 1, 20
  748.     STRING047 = ""
  749.     SPrint "Expierd Security Level ] : "
  750.     Gosub LABEL040
  751.     STRING047 = STRING014
  752.     If (STRING047 == "") Goto LABEL020
  753.     U_ExpSec = STRING047
  754.     PutUser
  755.     Goto LABEL020
  756.     :LABEL034
  757.     AnsiPos 1, 20
  758.     STRING047 = ""
  759.     SPrint "Clear Screen Between Messages Enable/Disable ] : "
  760.     Gosub LABEL040
  761.     STRING047 = STRING014
  762.     If (STRING047 == "") Goto LABEL020
  763.     STRING047 = Upper(STRING047)
  764.     If (STRING047 == "E") STRING047 = 1
  765.     If (STRING047 == "D") STRING047 = 0
  766.     U_Cls = STRING047
  767.     PutUser
  768.     Goto LABEL020
  769.     :LABEL035
  770.     AnsiPos 1, 20
  771.     SPrint "Number Downloads ] : "
  772.     Gosub LABEL040
  773.     STRING047 = STRING014
  774.     If (STRING047 == "") Goto LABEL020
  775.     STRING047 = STRING047 - U_Fdl()
  776.     AdjTFiles STRING047
  777.     PutUser
  778.     Goto LABEL020
  779.     :LABEL036
  780.     AnsiPos 1, 20
  781.     STRING047 = ""
  782.     SPrint "Bytes Down Today ] : "
  783.     Gosub LABEL040
  784.     STRING047 = STRING014
  785.     If (STRING047 == "") Goto LABEL020
  786.     STRING047 = STRING047 - U_BdlDay()
  787.     AdjDBytes STRING047
  788.     PutUser
  789.     Goto LABEL020
  790.     :LABEL037
  791.     AnsiPos 1, 20
  792.     STRING047 = ""
  793.     SPrint "Bytes Down ] : "
  794.     Gosub LABEL040
  795.     STRING047 = STRING014
  796.     If (STRING047 == "") Goto LABEL020
  797.     STRING047 = STRING047 - U_Bdl()
  798.     AdjBytes STRING047
  799.     PutUser
  800.     Goto LABEL020
  801.     :LABEL038
  802.     AnsiPos 1, 20
  803.     STRING047 = ""
  804.     SPrint "Long Headers ] : "
  805.     Gosub LABEL040
  806.     STRING047 = STRING014
  807.     If (STRING047 == "") Goto LABEL020
  808.     STRING047 = Upper(STRING047)
  809.     If (STRING047 == "E") STRING047 = 1
  810.     If (STRING047 == "D") STRING047 = 0
  811.     U_LongHDR = STRING047
  812.     PutUser
  813.     Goto LABEL020
  814.     :LABEL039
  815.     AnsiPos 1, 20
  816.     SPrint "Full Scrn Editor Yes/No/Ask ] : "
  817.     Gosub LABEL040
  818.     STRING047 = STRING014
  819.     If (STRING047 == "") Goto LABEL020
  820.     STRING047 = Upper(STRING047)
  821.     If (STRING047 == "A") U_FSEP = 1
  822.     If (STRING047 == "A") U_FSE = 0
  823.     If (STRING047 == "Y") U_FSEP = 0
  824.     If (STRING047 == "Y") U_FSE = 1
  825.     If (STRING047 == "N") U_FSEP = 0
  826.     If (STRING047 == "N") U_FSE = 0
  827.     PutUser
  828.     Goto LABEL020
  829.     :LABEL040
  830.     STRING014 = ""
  831.     :LABEL041
  832.     STRING015 = KInkey()
  833.     If (STRING015 == "INS") Goto LABEL041
  834.     If (STRING015 == "DEL") Goto LABEL041
  835.     If (STRING015 == "END") Goto LABEL041
  836.     If (STRING015 == "HOME") Goto LABEL041
  837.     If (STRING015 == "PGUP") Goto LABEL041
  838.     If (STRING015 == "PGDN") Goto LABEL041
  839.     If (STRING015 == "LEFT") Goto LABEL041
  840.     If (STRING015 == "RIGHT") Goto LABEL041
  841.     If (STRING015 == "UP") Goto LABEL041
  842.     If (STRING015 == "DOWN") Goto LABEL041
  843.     If (STRING015 == "F1") Goto LABEL041
  844.     If (STRING015 == "F2") Goto LABEL041
  845.     If (STRING015 == "F3") Goto LABEL041
  846.     If (STRING015 == "F4") Goto LABEL041
  847.     If (STRING015 == "F5") Goto LABEL041
  848.     If (STRING015 == "F6") Goto LABEL041
  849.     If (STRING015 == "F7") Goto LABEL041
  850.     If (STRING015 == "F8") Goto LABEL041
  851.     If (STRING015 == "F9") Goto LABEL041
  852.     If (STRING015 == "F10") Goto LABEL041
  853.     If (STRING015 == "F11") Goto LABEL041
  854.     If (STRING015 == "F12") Goto LABEL041
  855.     If (STRING015 == Chr(8)) Goto LABEL043
  856.     If (STRING015 == Chr(13)) Goto LABEL042
  857.     If (STRING015 == "") Goto LABEL041
  858.     If (Len(STRING014) == INTEGER007) Goto LABEL041
  859.     SPrint STRING015
  860.     STRING014 = STRING014 + STRING015
  861.     Goto LABEL041
  862.     :LABEL042
  863.     If (STRING014 == "") Return
  864.     Return
  865.     :LABEL043
  866.     INTEGER006 = GetX()
  867.     STRING016 = GetY()
  868.     If (Len(STRING014) == 0) Goto LABEL040
  869.     STRING014 = Left(STRING014, Len(STRING014) - 1)
  870.     AnsiPos INTEGER006 - 1, STRING016
  871.     SPrint " "
  872.     AnsiPos INTEGER006 - 1, STRING016
  873.     Goto LABEL041
  874.     :LABEL044
  875.     Cls
  876.     RestScrn
  877.     Goto LABEL004
  878.     :LABEL045
  879.     Cls
  880.     Goto LABEL004
  881.     :LABEL046
  882.     Print "@BEEP@"
  883.     Delay 2
  884.     Print "@BEEP@"
  885.     Delay 2
  886.     Print "@BEEP@"
  887.     Goto LABEL004
  888.     :LABEL047
  889.     SaveScrn
  890.     AnsiPos 1, 2
  891.     SPrintLn "                                                                              "
  892.     AnsiPos 1, 1
  893.     SPrintLn "[-----------------------------------------------------------------------------]"
  894.     INTEGER007 = 48
  895.     SPrint "Path & Filename to display : "
  896.     Gosub LABEL040
  897.     STRING049 = STRING014
  898.     If (Exist(STRING049)) Goto LABEL048
  899.     FreshLine
  900.     SPrint "File doesn't exist!!!"
  901.     Delay 15
  902.     RestScrn
  903.     Goto LABEL004
  904.     :LABEL048
  905.     RestScrn
  906.     DispFile STRING049, 2 + 1
  907.     Goto LABEL004
  908.     :LABEL049
  909.     SaveScrn
  910.     AnsiPos 1, 1
  911.     SPrintLn "[-----------------------------------------------------------------------------]"
  912.     SPrint "PPE path & Name to execute : "
  913.     INTEGER007 = 49
  914.     Gosub LABEL040
  915.     If (Exist(STRING014)) Goto LABEL050
  916.     FreshLine
  917.     SPrint "File doesn't exist!!!"
  918.     Delay 10
  919.     RestScrn
  920.     Goto LABEL004
  921.     Goto LABEL051
  922.     :LABEL050
  923.     Call STRING014
  924.     RestScrn
  925.     Goto LABEL004
  926.     :LABEL051
  927.     Goto LABEL004
  928.     :LABEL052
  929.     SaveScrn
  930.     AnsiPos 1, 1
  931.     SPrintLn "                                                                               "
  932.     SPrintLn "                                                                               "
  933.     SPrintLn "                                                                               "
  934.     SPrintLn "                                                                               "
  935.     SPrintLn "                                                                               "
  936.     SPrintLn "                                                                               "
  937.     SPrintLn "                                                                               "
  938.     SPrintLn "                                                                               "
  939.     SPrintLn "                                                                               "
  940.     SPrintLn "                                                                               "
  941.     SPrintLn "                                                                               "
  942.     SPrintLn "                                                                               "
  943.     SPrintLn "                                                                               "
  944.     SPrintLn "                                                                               "
  945.     SPrintLn "                                                                               "
  946.     SPrintLn "                                                                               "
  947.     SPrintLn "                                                                               "
  948.     SPrintLn "                                                                               "
  949.     SPrintLn "                                                                               "
  950.     SPrintLn "                                                                               "
  951.     SPrintLn "                                                                               "
  952.     SPrintLn "                                                                               "
  953.     SPrintLn "                                                                               "
  954.     AnsiPos 1, 1
  955.     SPrintLn "        Ultimate Chat Coded By Cyber Demon v1.00    ■ Macro List ■"
  956.     FreshLine
  957.     SPrintLn "-------------------------------------------------------------------------------"
  958.     INTEGER009 = 1
  959.     :LABEL053
  960.     FreshLine
  961.     SPrint "     " + String(INTEGER009) + ".        " + Replace(Replace(TSTRING023(INTEGER009), " ", "="), "ª", " ")
  962.     ClrEol
  963.     INTEGER009 = INTEGER009 + 1
  964.     If ((INTEGER009 == 16) || (TSTRING023(INTEGER009) == "")) Goto LABEL054
  965.     Goto LABEL053
  966.     :LABEL054
  967.     FreshLine
  968.     SPrintLn "-------------------------------------------------------------------------------"
  969.     FreshLine
  970.     SPrint "(A)dd new macro (#) to perform action on  (Q)uit : "
  971.     INTEGER013 = GetY()
  972.     INTEGER014 = GetX()
  973.     :LABEL055
  974.     AnsiPos INTEGER014, INTEGER013
  975.     SPrint "     "
  976.     AnsiPos INTEGER014, INTEGER013
  977.     STRING014 = ""
  978.     INTEGER007 = 2
  979.     Gosub LABEL041
  980.     If (Upper(STRING014) == "Q") Goto LABEL067
  981.     STRING035 = STRING014
  982.     INTEGER012 = STRING035
  983.     If ((INTEGER012 == 0) && !(Upper(STRING035) == "A")) Goto LABEL055
  984.     If (Upper(STRING035) == "A") Goto LABEL058
  985.     If (Upper(STRING035) == "Q") Goto LABEL067
  986.     If (INTEGER012 > 15) Goto LABEL055
  987.     FreshLine
  988.     Goto LABEL056
  989.     Goto LABEL055
  990.     :LABEL056
  991.     StartDisp 1
  992.     SPrintLn "Macro Loaded : " + Replace(Replace(TSTRING023(STRING035), " ", "="), "ª", " ")
  993.     SPrintLn "                                "
  994.     SPrint "Response     (D)elete (A)dd new : "
  995.     :LABEL057
  996.     STRING027 = KInkey()
  997.     If (Upper(STRING027) == "A") Goto LABEL058
  998.     If (Upper(STRING027) == "D") Goto LABEL062
  999.     If (Upper(STRING027) == "Q") Goto LABEL067
  1000.     Goto LABEL057
  1001.     :LABEL058
  1002.     INTEGER007 = 20
  1003.     If (TSTRING023(15) == "") Goto LABEL059
  1004.     FreshLine
  1005.     SPrint "Macro set is full, delete macro in order to add any"
  1006.     Delay 15
  1007.     Goto LABEL067
  1008.     :LABEL059
  1009.     FreshLine
  1010.     SPrint "Enter new macro      : "
  1011.     Gosub LABEL040
  1012.     STRING028 = STRING014
  1013.     If (STRING028 == "") Goto LABEL067
  1014.     FreshLine
  1015.     SPrint "Enter the Defenition : "
  1016.     INTEGER007 = ReadLine(PPEPath() + "CDCHAT.CFG", 37)
  1017.     Gosub LABEL040
  1018.     STRING029 = STRING014
  1019.     FAppend 3, PPEPath() + "SYSOP.MCR", 1, 0
  1020.     FPutLn 3, STRING028 + " " + Replace(STRING029, " ", "ª")
  1021.     FClose 3
  1022.     FOpen 1, PPEPath() + "SYSOP.MCR", 0, 0
  1023.     INTEGER009 = 1
  1024.     :LABEL060
  1025.     FGet 1, TSTRING023(INTEGER009)
  1026.     If ((TSTRING023(INTEGER009) == "") || (INTEGER009 == 16)) Goto LABEL061
  1027.     INTEGER009 = INTEGER009 + 1
  1028.     Goto LABEL060
  1029.     :LABEL061
  1030.     FClose 1
  1031.     Goto LABEL067
  1032.     :LABEL062
  1033.     TSTRING023(STRING035) = ""
  1034.     Delete PPEPath() + "SYSOP.MCR"
  1035.     FOpen 1, PPEPath() + "SYSOP.MCR", 1, 0
  1036.     INTEGER011 = 1
  1037.     :LABEL063
  1038.     If (TSTRING023(INTEGER011) == "") Goto LABEL064
  1039.     FPutLn 1, TSTRING023(INTEGER011)
  1040.     :LABEL064
  1041.     INTEGER011 = INTEGER011 + 1
  1042.     If (INTEGER011 == 16) Goto LABEL065
  1043.     Goto LABEL063
  1044.     :LABEL065
  1045.     FClose 1
  1046.     FOpen 1, PPEPath() + "SYSOP.MCR", 0, 0
  1047.     INTEGER009 = 1
  1048.     :LABEL066
  1049.     FGet 1, TSTRING023(INTEGER009)
  1050.     INTEGER009 = INTEGER009 + 1
  1051.     If ((TSTRING023(INTEGER009) == "") || (INTEGER009 == 16)) Goto LABEL067
  1052.     Goto LABEL066
  1053.     :LABEL067
  1054.     FClose 1
  1055.     RestScrn
  1056.     Goto LABEL004
  1057.     :LABEL068
  1058.     FreshLine
  1059.     STRING010 = ReadLine(PPEPath() + "cdchat.cfg", 28)
  1060.     If (STRING010 == "0") Goto LABEL004
  1061.     Gosub LABEL069
  1062.     Gosub LABEL070
  1063.     For INTEGER008 = 1 To STRING010
  1064.         Gosub LABEL072
  1065.     Next
  1066.     Gosub LABEL071
  1067.     Goto LABEL075
  1068.     :LABEL069
  1069.     If (ReadLine(PCBDat(), 90) == "0") Then
  1070.         Newline
  1071.         PrintLn "Don't be stupid this is 1 node board..."
  1072.         Newline
  1073.     Else
  1074.         Return
  1075.         :LABEL070
  1076.         STRING021 = PPEPath() + "CDCHAT.CFG"
  1077.         PrintLn "@X01.---∙----------------------∙--------------------------∙-----------------------."
  1078.         PrintLn "|@X06Nd#@X01| @X06Name/Handle          @X01| @X06Location/Group           @X01| @X06Action                @X01|"
  1079.         PrintLn ")---*----------------------*--------------------------*-----------------------("
  1080.         Return
  1081.         :LABEL071
  1082.         PrintLn "@X01|---*----------------------*--------------------------*-----------------------|"
  1083.         PrintLn "@X01`-------@X07[ @X08Ultimate Chat WHO Door Coded By Cyber Demon [PWA] (c) 1995 @X07]@X01--------'"
  1084.         Return
  1085.         :LABEL072
  1086.         RdUNet INTEGER008
  1087.         If (UN_Stat() == "") Then
  1088.             PrintLn "@POS:1@@X01|@X07 ", INTEGER008, "@POS:4@@X01 |@POS:28@@X01|@POS:55@@X01| " + Left(ReadLine(STRING021, 1), 21) + "@POS:78@ @X01|"
  1089.             Return
  1090.         Endif
  1091.         Print "@POS:1@@X01|@X07 "
  1092.         Print INTEGER008
  1093.         If (PcbNode() == INTEGER008) Then
  1094.             PrintLn "@POS:4@@X01 | @X05" + Mixed(UN_Name()) + "@POS:28@@X01| @X05" + UN_City() + "@POS:55@@X01| " + Left(ReadLine(STRING021, 2), 21) + "@POS:78@ @X01|"
  1095.             Return
  1096.         Endif
  1097.         If ((UN_Stat() == " ") || (UN_Stat() == "V")) Then
  1098.             PrintLn "@POS:4@@X01 |@POS:28@@X01| @X05" + UN_City() + "@POS:55@@X01| " + Left(ReadLine(STRING021, 3), 21) + "@POS:78@ @X01|"
  1099.             Return
  1100.         Endif
  1101.         If (UN_Stat() == "Y") Then
  1102.             PrintLn "@POS:4@@X01 | @X05" + Mixed(UN_Name()) + "@POS:28@@X01| @X05" + UN_City() + "@POS:55@@X01| " + Left(ReadLine(STRING021, 4), 21) + "@POS:78@ @X01|"
  1103.             Return
  1104.         Endif
  1105.         If (UN_Stat() == "O") Then
  1106.             PrintLn "@POS:4@@X01 |@POS:28@@X01|@POS:55@@X01| " + Left(ReadLine(STRING021, 5), 21) + "@POS:78@ @X01|"
  1107.             Return
  1108.         Endif
  1109.         If (!(UN_Name() == "") || !(UN_City() == "")) Then
  1110.             Print "@POS:4@@X01 | @X05" + Mixed(UN_Name()) + "@POS:28@@X01| @X05" + UN_City()
  1111.             Gosub LABEL073
  1112.         Endif
  1113.         Return
  1114.         :LABEL073
  1115.         Select Case (UN_Stat())
  1116.             Case "A"
  1117.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 6), 21) + "@POS:78@ @X01| "
  1118.             Case "U"
  1119.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 7), 21) + "@POS:78@ @X01| "
  1120.             Case "O"
  1121.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 8), 21) + "@POS:78@ @X01| "
  1122.             Case "S"
  1123.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 9), 21) + "@POS:78@ @X01| "
  1124.             Case "B"
  1125.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 10), 21) + "@POS:78@ @X01| "
  1126.             Case "T"
  1127.                 Gosub LABEL074
  1128.             Case "D"
  1129.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 11), 21) + "@POS:78@ @X01| "
  1130.             Case "C"
  1131.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 12), 21) + "@POS:78@ @X01| "
  1132.             Case "G"
  1133.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 13), 21) + "@POS:78@ @X01| "
  1134.             Case "M"
  1135.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 14), 21) + "@POS:78@ @X01| "
  1136.             Case "E"
  1137.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 15), 21) + "@POS:78@ @X01| "
  1138.             Case "P"
  1139.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 16), 21) + "@POS:78@ @X01| "
  1140.             Case "W"
  1141.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 17), 21) + "@POS:78@ @X01| "
  1142.             Case "R"
  1143.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 18), 21) + "@POS:78@ @X01| "
  1144.             Case "L"
  1145.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 19), 21) + "@POS:78@ @X01| "
  1146.             Case "X"
  1147.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 20), 21) + "@POS:78@ @X01| "
  1148.             Case "F"
  1149.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 21), 21) + "@POS:78@ @X01| "
  1150.             Case "N"
  1151.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 22), 21) + "@POS:78@ @X01| "
  1152.             Case "Z"
  1153.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 23), 21) + "@POS:78@ @X01| "
  1154.             Case Else
  1155.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 24), 21) + "@POS:78@ @X01| "
  1156.         End Select
  1157.         Return
  1158.         :LABEL074
  1159.         STRING009 = Left(UN_Oper(), 3)
  1160.         Select Case (STRING009)
  1161.             Case "(U)"
  1162.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 25), 21) + "@POS:78@ @X01| "
  1163.             Case "(D)"
  1164.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 26), 21) + "@POS:78@ @X01| "
  1165.             Case Else
  1166.                 Print "@POS:55@@X01| " + Left(ReadLine(STRING021, 27), 21) + "@POS:78@ @X01| "
  1167.         End Select
  1168.         Return
  1169.         PrintLn "Configuration file not found"
  1170.         Goto LABEL075
  1171.     Endif
  1172.     :LABEL075
  1173.     Goto LABEL004
  1174.     :LABEL076
  1175.     SaveScrn
  1176.     AnsiPos 1, 1
  1177.     SPrintLn "Now it is : " + String(TimeAp(Time())) + "    /  " + String(Date())
  1178.     SPrintLn "Press (ANYkey to continue"
  1179.     :LABEL077
  1180.     STRING019 = Inkey()
  1181.     If (STRING019 == "") Goto LABEL077
  1182.     RestScrn
  1183.     Goto LABEL004
  1184.     FreshLine
  1185.     Goto LABEL004
  1186.     :LABEL078
  1187.     SaveScrn
  1188.     AnsiPos 1, 1
  1189.     PrintLn "@X70   Ultilmate full screen chat Coded by Cyber Demon [PWA] ■ User Help Screen ■@POS:80@"
  1190.     PrintLn "@POS:80@"
  1191.     PrintLn "     CTRL + D   Display User Stats        CTRL + O   Who is online @POS:80@"
  1192.     PrintLn "     CTRL + C   Clear screen              CTRL + P   Page " + ReadLine(PCBDat(), 2) + "@POS:80@"
  1193.     PrintLn "     Press a Key to continue                             @POS:80@"
  1194.     Print "@X08"
  1195.     :LABEL079
  1196.     STRING034 = Inkey()
  1197.     If (STRING034 == "") Goto LABEL079
  1198.     RestScrn
  1199.     Goto LABEL004
  1200.     :LABEL080
  1201.     FreshLine
  1202.     STRING036 = ReadLine(PPEPath() + "CDCHAT.CFG", 38)
  1203.     STRING037 = ReadLine(PPEPath() + "CDCHAT.CFG", 39)
  1204.     STRING038 = ReadLine(PPEPath() + "CDCHAT.CFG", 40)
  1205.     STRING039 = ReadLine(PPEPath() + "CDCHAT.CFG", 41)
  1206.     STRING040 = ReadLine(PPEPath() + "CDCHAT.CFG", 42)
  1207.     STRING041 = ReadLine(PPEPath() + "CDCHAT.CFG", 43)
  1208.     STRING042 = ReadLine(PPEPath() + "CDCHAT.CFG", 44)
  1209.     STRING043 = ReadLine(PPEPath() + "CDCHAT.CFG", 45)
  1210.     STRING044 = ReadLine(PPEPath() + "CDCHAT.CFG", 46)
  1211.     STRING045 = ReadLine(PPEPath() + "CDCHAT.CFG", 47)
  1212.     PrintLn "@X07Handle@X04............@X03: " + STRING036 + U_Name()
  1213.     PrintLn "@X07User Note@X04.........@X03: " + STRING037 + U_City
  1214.     PrintLn "@X07Connects@X04..........@X03: " + STRING038 + String(U_Logons())
  1215.     PrintLn "@X07Bytes Upped@X04.......@X03: " + STRING039 + String(U_Bul())
  1216.     PrintLn "@X07Files Upped@X04.......@X03: " + STRING040 + String(U_Ful())
  1217.     PrintLn "@X07Bytes down@X04........@X03: " + STRING041 + String(U_Bdl())
  1218.     PrintLn "@X07Files down@X04........@X03: " + STRING042 + String(U_Fdl())
  1219.     PrintLn "@X07Bytes down today@X04..@X03: " + STRING043 + String(U_BdlDay())
  1220.     PrintLn "@X07Messages Left@X04.....@X03: " + STRING044 + String(U_MsgWr())
  1221.     PrintLn "@X07Messages read@X04.....@X03: " + STRING045 + String(U_MsgRd())
  1222.     Goto LABEL004
  1223.     :LABEL081
  1224.     Sound 440
  1225.     Delay 2
  1226.     Sound 440
  1227.     Delay 2
  1228.     Sound 220
  1229.     Goto LABEL004
  1230.     :LABEL082
  1231.     STRING051 = ReadLine(PCBDat(), 2)
  1232.     INTEGER016 = Len(STRING051)
  1233.     FreshLine
  1234.     STRING050 = ReadLine(PCBDat(), 94)
  1235.     INTEGER017 = Len(STRING050)
  1236.     INTEGER018 = Asc(Left(STRING050, 1))
  1237.     INTEGER019 = Asc(Right(STRING050, 1))
  1238.     INTEGER020 = Asc(Left(STRING051, 1))
  1239.     INTEGER021 = Asc(Right(STRING051, 1))
  1240.     STRING052 = (INTEGER018 * INTEGER019) * INTEGER020 + INTEGER021
  1241.     STRING053 = STRING052
  1242.     If (ReadLine(PPEPath() + "CDCHAT.CFG", 49) == STRING053) Goto LABEL083
  1243.     STRING007 = "@X04< @X8CUNREGISTERED @X04>"
  1244.     STRING008 = "0000-00000@DELAY:36@"
  1245.     BOOLEAN007 = 1
  1246.     Goto LABEL084
  1247.     :LABEL083
  1248.     STRING008 = "@BOARDNAME@"
  1249.     STRING007 = ReadLine(PPEPath() + "CDCHAT.CFG", 49) + "-" + ReadLine(PPEPath() + "CDCHAT.CFG", 50)
  1250.     :LABEL084
  1251.     BOOLEAN007 = 0
  1252.     Return
  1253.  
  1254. ;------------------------------------------------------------------------------
  1255. ;
  1256. ; Usage report (before postprocessing)
  1257. ;
  1258. ; ■ Statements used :
  1259. ;
  1260. ;    1       End
  1261. ;    3       Cls
  1262. ;    7       ClrEol
  1263. ;    310     Goto 
  1264. ;    225     Let 
  1265. ;    41      Print 
  1266. ;    36      PrintLn 
  1267. ;    238     If 
  1268. ;    2       DispFile 
  1269. ;    2       FCreate 
  1270. ;    5       FOpen 
  1271. ;    1       FAppend 
  1272. ;    7       FClose 
  1273. ;    18      FGet 
  1274. ;    2       FPutLn 
  1275. ;    2       StartDisp 
  1276. ;    16      PutUser
  1277. ;    1       Delete 
  1278. ;    1       Log 
  1279. ;    30      Gosub 
  1280. ;    14      Return
  1281. ;    10      Delay 
  1282. ;    5       Newline
  1283. ;    2       Tokenize 
  1284. ;    1       KbdStuff 
  1285. ;    1       Call 
  1286. ;    1       RdUNet 
  1287. ;    104     AnsiPos 
  1288. ;    10      Backup 
  1289. ;    25      FreshLine
  1290. ;    7       SaveScrn
  1291. ;    9       RestScrn
  1292. ;    3       Sound 
  1293. ;    92      SPrint 
  1294. ;    61      SPrintLn 
  1295. ;    1       AdjBytes 
  1296. ;    1       GetAltUser 
  1297. ;    1       AdjDBytes 
  1298. ;    1       AdjTFiles 
  1299. ;    1       FCloseAll
  1300. ;
  1301. ;
  1302. ; ■ Functions used :
  1303. ;
  1304. ;    1       -
  1305. ;    2       *
  1306. ;    1       /
  1307. ;    195     +
  1308. ;    19      -
  1309. ;    244     ==
  1310. ;    3       <>
  1311. ;    5       <
  1312. ;    1       <=
  1313. ;    1       >
  1314. ;    2       >=
  1315. ;    140     !
  1316. ;    8       &&
  1317. ;    16      ||
  1318. ;    22      Len(
  1319. ;    21      Upper()
  1320. ;    37      Left()
  1321. ;    4       Right()
  1322. ;    23      Chr()
  1323. ;    6       Asc()
  1324. ;    6       Trim()
  1325. ;    1       Date()
  1326. ;    2       Time()
  1327. ;    5       U_Name()
  1328. ;    1       U_LDate()
  1329. ;    1       U_LTime()
  1330. ;    1       U_LDir()
  1331. ;    2       U_Logons()
  1332. ;    3       U_Ful()
  1333. ;    4       U_Fdl()
  1334. ;    5       U_BdlDay()
  1335. ;    5       U_Bdl()
  1336. ;    4       U_Bul()
  1337. ;    1       TimeAp()
  1338. ;    9       Replace()
  1339. ;    1       Strip()
  1340. ;    2       Inkey()
  1341. ;    15      String()
  1342. ;    4       PCBDat()
  1343. ;    43      PPEPath()
  1344. ;    2       U_MsgRd()
  1345. ;    2       U_MsgWr()
  1346. ;    1       PcbNode()
  1347. ;    59      ReadLine()
  1348. ;    24      UN_Stat()
  1349. ;    4       UN_Name()
  1350. ;    5       UN_City()
  1351. ;    1       UN_Oper()
  1352. ;    4       GetToken()
  1353. ;    5       Exist()
  1354. ;    18      GetX()
  1355. ;    16      GetY()
  1356. ;    6       KInkey()
  1357. ;    1       MInkey()
  1358. ;    4       U_RecNum()
  1359. ;    4       Mixed()
  1360. ;
  1361. ;------------------------------------------------------------------------------
  1362. ;
  1363. ; Analysis flags : WRCadH
  1364. ;
  1365. ; W - Write user ■ 5
  1366. ;     Program writes a user record. Although this may be normal for a
  1367. ;     User Editor, it may also be a way to modify an account level.
  1368. ;     ■ Search for : PUTUSER
  1369. ;
  1370. ; R - Read user ■ 5
  1371. ;     User records are read, this may signify that someone wants to get
  1372. ;     various informations about a user (for example his password), but
  1373. ;     this may also be normal for a program accessing user records (for
  1374. ;     example a User Editor)
  1375. ;     ■ Search for : GETALTUSER
  1376. ;
  1377. ; C - Call child PPE ■ 3
  1378. ;     This is usually normal, but may be a tricky way to launch some
  1379. ;     sysop-only commands.
  1380. ;     ■ Search for : CALL
  1381. ;
  1382. ; a - Adjust ratio ■ 4
  1383. ;     User's ratio is adjusted by changing the amount of files/bytes
  1384. ;     uploaded. This may be normal for a user editor.
  1385. ;     ■ Search for : ADJBYTES, ADJDBYTES, ADJTBYTES, ADJTFILES
  1386. ;
  1387. ; d - Access PCBOARD.DAT ■ 2
  1388. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1389. ;     for many PPE so they can find various informations on the system
  1390. ;     (system paths, max number of lines in messages, ...) but it may also
  1391. ;     be a way to gather vital informations.
  1392. ;     ■ Search for : PCBDAT()
  1393. ;
  1394. ; H - Read Password or Password History ■ 5
  1395. ;     Program is reading the user's password or last password history
  1396. ;     This may be ok for a password manager, but it is very suspect. Check!
  1397. ;     ■ Search for : U_PWDHIST, U_PWD
  1398. ;
  1399. ;------------------------------------------------------------------------------
  1400. ;
  1401. ; Postprocessing report
  1402. ;
  1403. ;    1       For/Next
  1404. ;    0       While/EndWhile
  1405. ;    37      If/Then or If/Then/Else
  1406. ;    2       Select Case
  1407. ;
  1408. ;------------------------------------------------------------------------------
  1409. ;                 AEGiS Corp - Break the routines, code against the machines!
  1410. ;------------------------------------------------------------------------------
  1411.