home *** CD-ROM | disk | FTP | other *** search
/ Groovy Bytes: Behind the Moon / groovybytes.iso / GROOVY / PPE / DIAMOND / CKDIZ130.ZIP / PCB151.ZIP / DIZ.PPE (.txt) next >
Encoding:
PCBoard Programming Language Executable  |  1994-11-30  |  35.4 KB  |  1,543 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.     Boolean  BOOLEAN005
  24.     Boolean  BOOLEAN006
  25.     Boolean  TBOOLEAN007(60)
  26.     Boolean  BOOLEAN008
  27.     Boolean  BOOLEAN009
  28.     Boolean  BOOLEAN010
  29.     Integer  INTEGER001
  30.     Integer  INTEGER002
  31.     Integer  INTEGER003
  32.     Integer  INTEGER004
  33.     Integer  INTEGER005
  34.     Integer  INTEGER006
  35.     Integer  INTEGER007
  36.     Integer  INTEGER008
  37.     Integer  INTEGER009
  38.     Integer  INTEGER010
  39.     Integer  INTEGER011
  40.     Integer  INTEGER012
  41.     Integer  INTEGER013
  42.     Integer  INTEGER014
  43.     Integer  INTEGER015
  44.     Integer  INTEGER016
  45.     String   STRING001
  46.     String   STRING002
  47.     String   STRING003
  48.     String   STRING004
  49.     String   STRING005
  50.     String   STRING006
  51.     String   STRING007
  52.     String   TSTRING008(99)
  53.     String   STRING009
  54.     String   STRING010
  55.     String   STRING011
  56.     String   STRING012
  57.     String   STRING013
  58.     String   STRING014
  59.     String   STRING015
  60.     String   TSTRING016(2)
  61.     String   STRING017
  62.     String   STRING018
  63.     String   STRING019
  64.     String   STRING020
  65.     String   STRING021
  66.     String   STRING022
  67.     String   STRING023
  68.     String   STRING024
  69.     String   STRING025
  70.     String   STRING026
  71.     String   STRING027
  72.     String   STRING028
  73.     String   STRING029
  74.     String   STRING030
  75.     String   STRING031
  76.     String   TSTRING032(10)
  77.     String   STRING033
  78.     String   STRING034
  79.     String   STRING035
  80.     String   STRING036
  81.     String   STRING037
  82.     String   STRING038
  83.     String   STRING039
  84.     String   STRING040
  85.     String   STRING041
  86.     String   STRING042
  87.     String   STRING043
  88.     String   STRING044
  89.     String   STRING045
  90.     String   STRING046
  91.     String   STRING047
  92.     String   STRING048
  93.     String   STRING049
  94.  
  95. ;------------------------------------------------------------------------------
  96.  
  97.     CdChkOff
  98.     Print "@POFF@"
  99.     STRING017 = "CHECK/DiZ 1.30"
  100.     STRING002 = PcbNode()
  101.     If (STRING002 == 0) STRING002 = ""
  102.     STRING006 = ReadLine(PCBDat(), 31) + ".@@@"
  103.     STRING003 = ReadLine(PCBDat(), 179) + "UPDESC." + STRING002
  104.     INTEGER004 = ReadLine(PCBDat(), 198)
  105.     STRING040 = ReadLine(PCBDat(), 205)
  106.     BOOLEAN006 = 1
  107.     If (LangExt() == ".AMI") BOOLEAN001 = 1
  108.     STRING049 = " !" + Chr(34) + "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■"
  109.     FClose -1
  110.     If (Exist(PPEPath() + "DIZ-FLD")) STRING011 = "DIZ-FLD"
  111.     If (Exist(PPEPath() + "DIZ-FLD" + GrafMode())) STRING011 = "DIZ-FLD" + GrafMode()
  112.     If (Exist(PPEPath() + "DIZ-FLD" + LangExt())) STRING011 = "DIZ-FLD" + LangExt()
  113.     If (Exist(PPEPath() + "DIZ-FLD" + GrafMode() + LangExt())) STRING011 = "DIZ-FLD" + GrafMode() + LangExt()
  114.     If (BOOLEAN001 == 1) Then
  115.         STRING009 = "@X0"
  116.         STRING010 = "@X0"
  117.         If (GrafMode() == "A") Then
  118.             TSTRING032(1) = ".--ACTiViTY--."
  119.             TSTRING032(2) = "`------------'"
  120.             TSTRING032(3) = ".--NEWEST--."
  121.             TSTRING032(4) = "`----------'"
  122.             TSTRING032(5) = ".--OLDEST--."
  123.             TSTRING032(6) = "`----------'"
  124.             TSTRING032(7) = ".-FiLEiD.DiZ-."
  125.             TSTRING032(8) = "`------------'"
  126.             TSTRING032(9) = ".-NEWEST NFO-."
  127.             TSTRING032(10) = "`------------'"
  128.         Endif
  129.         If ((GrafMode() == "G") || (GrafMode() == "R")) Then
  130.             TSTRING032(1) = ".--ACTiViTY--."
  131.             TSTRING032(2) = "`------------'"
  132.             TSTRING032(3) = ".--NEWEST--."
  133.             TSTRING032(4) = "`----------'"
  134.             TSTRING032(5) = ".--OLDEST--."
  135.             TSTRING032(6) = "`----------'"
  136.             TSTRING032(7) = ".-FiLEiD.DiZ-."
  137.             TSTRING032(8) = "`------------'"
  138.             TSTRING032(9) = ".-NEWEST NFO-."
  139.             TSTRING032(10) = "`------------'"
  140.         Endif
  141.     Endif
  142.     If (BOOLEAN001 == 0) Then
  143.         STRING009 = "@X7"
  144.         STRING010 = "@XF"
  145.         If (GrafMode() == "A") Then
  146.             TSTRING032(1) = "┌-─ACTiViTY─-┐"
  147.             TSTRING032(2) = "└-─-─-──-─-─-┘"
  148.             TSTRING032(3) = "┌-─NEWEST─-┐"
  149.             TSTRING032(4) = "└-─-─--─-─-┘"
  150.             TSTRING032(5) = "┌-─OLDEST─-┐"
  151.             TSTRING032(6) = "└-─-─--─-─-┘"
  152.             TSTRING032(7) = "┌-FiLEiD.DiZ-┐"
  153.             TSTRING032(8) = "└-─-─-──-─-─-┘"
  154.             TSTRING032(9) = "┌-NEWEST NFO-┐"
  155.             TSTRING032(10) = "└-─-─-──-─-─-┘"
  156.         Endif
  157.         If ((GrafMode() == "G") || (GrafMode() == "R")) Then
  158.             TSTRING032(1) = "-ACTiViTY-"
  159.             TSTRING032(2) = "└-─-─-──-─-─-┘"
  160.             TSTRING032(3) = "-NEWEST-"
  161.             TSTRING032(4) = "└-─-─--─-─-┘"
  162.             TSTRING032(5) = "-OLDEST-"
  163.             TSTRING032(6) = "└-─-─--─-─-┘"
  164.             TSTRING032(7) = "-FiLEiD.DiZ-"
  165.             TSTRING032(8) = "└-─-─-──-─-─-┘"
  166.             TSTRING032(9) = "-NEWEST NFO-"
  167.             TSTRING032(10) = "└-─-─-──-─-─-┘"
  168.         Endif
  169.     Endif
  170.     FOpen 1, PPEPath() + "DIZ-CFG", 0, 0
  171.     FGet 1, INTEGER008
  172.     FGet 1, INTEGER014
  173.     FGet 1, STRING013
  174.     FGet 1, STRING014
  175.     FGet 1, STRING024
  176.     STRING024 = Strip(STRING024, " ")
  177.     FGet 1, STRING042
  178.     STRING042 = Strip(STRING042, " ")
  179.     FGet 1, STRING023
  180.     FGet 1, STRING021
  181.     STRING021 = Mid(Upper(STRING021), 1, 1)
  182.     FGet 1, STRING025
  183.     STRING025 = Mid(Upper(STRING025), 1, 1)
  184.     FGet 1, STRING022
  185.     STRING022 = Mid(Upper(STRING022), 1, 1)
  186.     FGet 1, STRING031
  187.     STRING031 = Mid(Upper(STRING031), 1, 1)
  188.     FGet 1, STRING033
  189.     STRING033 = Mid(Upper(STRING033), 1, 1)
  190.     FGet 1, STRING034
  191.     STRING034 = Mid(Upper(STRING034), 1, 1)
  192.     FGet 1, STRING035
  193.     STRING035 = Mid(Upper(STRING035), 1, 1)
  194.     FGet 1, STRING029
  195.     FGet 1, STRING030
  196.     FGet 1, TSTRING016(1)
  197.     If (Mid(Upper(TSTRING016(1)), 1, 1) == "Y") BOOLEAN009 = 1
  198.     FGet 1, STRING044
  199.     FGet 1, STRING045
  200.     FGet 1, STRING046
  201.     STRING048 = STRING046 + "CHECKDIZ." + STRING002
  202.     FGet 1, STRING047
  203.     FGet 1, STRING043
  204.     STRING043 = Mid(Upper(STRING043), 1, 1)
  205.     FGet 1, STRING036
  206.     STRING036 = Mid(Upper(STRING036), 1, 1)
  207.     TSTRING016(1) = ""
  208.     FClose 1
  209.     If ((INTEGER014 <> 0) && !Exist(PPEPath() + "USERS\CHECKDIZ.OUT")) Then
  210.         FCreate 1, "DATA.BAT", 2, 0
  211.         FPutLn 1, "@ECHO OFF"
  212.         FPutLn 1, "MD " + PPEPath() + "USERS"
  213.         FPutLn 1, "REM > " + PPEPath() + "USERS\CHECKDIZ.OUT"
  214.         FClose 1
  215.         SaveScrn
  216.         Shell 1, STRING005, "DATA.BAT", 0
  217.         RestScrn
  218.         Delete "DATA.BAT"
  219.     Endif
  220.     If ((INTEGER014 <> 0) && (CurSec() >= INTEGER014)) Then
  221.         For INTEGER001 = 1 To Len(U_Name())
  222.             STRING037 = STRING037 + Asc(Mid(Mixed(U_Name()), INTEGER001, 1)) / 4
  223.         Next
  224.         STRING039 = Strip(U_Name(), " ")
  225.         STRING039 = Strip(STRING039, ".")
  226.         If (Len(U_Name()) < 14) STRING038 = STRING039 + "." + STRING037
  227.         If (STRING038 <> "") Goto LABEL001
  228.         STRING038 = Mid(STRING039, 1, 1)
  229.         STRING038 = STRING038 + Mid(STRING039, 3, 1)
  230.         STRING038 = STRING038 + Mid(STRING039, 5, 1)
  231.         STRING038 = STRING038 + Mid(STRING039, 7, 1)
  232.         STRING038 = STRING038 + Mid(STRING039, 9, 1)
  233.         STRING038 = STRING038 + Mid(STRING039, 11, 1)
  234.         STRING038 = STRING038 + Mid(STRING039, 13, 1)
  235.         STRING038 = STRING038 + Mid(STRING039, 15, 1)
  236.         STRING038 = STRING038 + "." + STRING037
  237.         :LABEL001
  238.         If (Exist(PPEPath() + "USERS\" + STRING038)) Goto LABEL002
  239.         If ((CDOn() == 1) || (OnLocal() == 1)) Call PPEPath() + "SENT.PPE"
  240.         :LABEL002
  241.         If (Exist(PPEPath() + "USERS\" + STRING038)) Then
  242.             STRING041 = ReadLine(PPEPath() + "USERS\" + STRING038, 1)
  243.             FClose -1
  244.         Endif
  245.         If (!Exist(PPEPath() + "USERS\" + STRING038)) STRING041 = "Uploaded by: " + Mixed(U_Name())
  246.     Endif
  247.     If ((Strip(STRING024, " ") <> "") && !Exist(STRING024)) Then
  248.         FCreate 1, STRING024, 2, 0
  249.         FClose 1
  250.     Endif
  251.     If (!Exist(STRING003)) BOOLEAN005 = 1
  252.     If (BOOLEAN005 == 0) Then
  253.         STRING004 = Mid(ReadLine(STRING003, 1), 1, 33)
  254.         FClose -1
  255.         RdUNet PcbNode()
  256.         WrUNet PcbNode(), "U", UN_Name(), UN_City(), "CHECK/DiZ VERiFiES " + Strip(Mid(STRING004, 1, 13), " ") + " ...", ""
  257.         STRING015 = Mid(STRING004, InStr(Mid(STRING004, 1, 12), ".") + 1, 3)
  258.     Endif
  259.     If (BOOLEAN005 == 1) Then
  260.         Print "@OPTEXT@"
  261.         Backup 80
  262.         INTEGER011 = GetY()
  263.         STRING004 = ScrText(1, INTEGER011, 13, 0)
  264.         ClrEol
  265.         STRING015 = Mid(STRING004, InStr(Mid(STRING004, 1, 12), ".") + 1, 3)
  266.         FClose -1
  267.     Endif
  268.     If ((((STRING015 == "ARJ") || (STRING015 == "LHA")) || (STRING015 == "LZH")) || (STRING015 == "ZIP")) BOOLEAN008 = 1
  269.     If (((((((((STRING015 <> "ARJ") && (STRING015 <> "DMS")) && (STRING015 <> "EXE")) && (STRING015 <> "LHA")) && (STRING015 <> "LZH")) && (STRING015 <> "TXT")) && (STRING015 <> "DOC")) && (STRING015 <> "NFO")) && (STRING015 <> "ZIP")) Then
  270.         Print STRING023
  271.         BOOLEAN006 = 0
  272.     Else
  273.         If ((GrafMode() == "N") || (STRING031 == "N")) If (BOOLEAN006 == 1) Print STRING023
  274.         If (BOOLEAN005 == 1) Then
  275.             FOpen 1, STRING006, 0, 0
  276.             FSeek 1, CurConf() * 548 + 517, 1
  277.             FGet 1, STRING028
  278.             FClose 1
  279.             FOpen 1, STRING028, 0, 0
  280.             :LABEL003
  281.             If (Ferr(1)) Goto LABEL004
  282.             FGet 1, STRING028
  283.             If (Exist(STRING028 + STRING004)) Goto LABEL004
  284.             Goto LABEL003
  285.             :LABEL004
  286.             FClose 1
  287.             STRING007 = Strip(STRING028 + STRING004, " ")
  288.             STRING001 = FileInf(STRING007, 4)
  289.             STRING004 = STRING004 + STRING001
  290.         Endif
  291.         If (BOOLEAN005 == 0) Then
  292.             FOpen 1, STRING006, 0, 0
  293.             FSeek 1, CurConf() * 548 + 243, 1
  294.             FGet 1, STRING028
  295.             FClose 1
  296.             STRING007 = Strip(STRING028 + Mid(STRING004, 1, 12), " ")
  297.         Endif
  298.         If (BOOLEAN005 == 1) Then
  299.             If (InStr(Upper(ReadLine(STRING003, 1)), "/FILE ATTACHMENT") > 0) Then
  300.                 FClose -1
  301.                 End
  302.             Endif
  303.             FClose -1
  304.         Endif
  305.         If (Exist("FiLE_iD.DiZ")) Then
  306.             FCreate 1, "DATA.BAT", 2, 0
  307.             FPutLn 1, "@ECHO OFF"
  308.             FPutLn 1, "ATTRIB FiLE_iD.DiZ -r -s -h -a"
  309.             FClose 1
  310.             SaveScrn
  311.             Shell 1, STRING005, "DATA.BAT", 0
  312.             RestScrn
  313.             Delete "FiLE_iD.DiZ"
  314.             Delete "DATA.BAT"
  315.         Endif
  316.         If (Exist("DESC.SDI")) Then
  317.             FCreate 1, "DATA.BAT", 2, 0
  318.             FPutLn 1, "@ECHO OFF"
  319.             FPutLn 1, "ATTRIB DESC.SDI -r -s -h -a"
  320.             FClose 1
  321.             SaveScrn
  322.             Shell 1, STRING005, "DATA.BAT", 0
  323.             RestScrn
  324.             Delete "DESC.SDI"
  325.             Delete "DATA.BAT"
  326.         Endif
  327.         If (Exist("FLID.")) Delete "FLID."
  328.         If (Exist("FAILED.DIZ")) Delete "FAILED.DIZ"
  329.         If (Exist("VIRUS!!!.DIZ")) Delete "VIRUS!!!.DIZ"
  330.         If (Exist("DIZDATA1." + STRING002)) Delete "DIZDATA1." + STRING002
  331.         If (Exist("DIZDATA2." + STRING002)) Delete "DIZDATA2." + STRING002
  332.         If (Exist("DIZDATA3." + STRING002)) Delete "DIZDATA3." + STRING002
  333.         If ((GrafMode() <> "N") && (STRING031 == "Y")) Then
  334.             Gosub LABEL021
  335.             Gosub LABEL025
  336.         Endif
  337.         INTEGER016 = ScrText(66, 25, 3, 0)
  338.         If ((OnLocal() == 1) && (CDOn() <> 1)) Then
  339.             Color 7
  340.             SaveScrn
  341.         Endif
  342.         If (STRING015 == "ARJ") INTEGER015 = 170
  343.         If (STRING015 == "DOC") INTEGER015 = 100
  344.         If (STRING015 == "DMS") INTEGER015 = 140
  345.         If (STRING015 == "EXE") INTEGER015 = 100
  346.         If (STRING015 == "LHA") INTEGER015 = 170
  347.         If (STRING015 == "LZH") INTEGER015 = 170
  348.         If (STRING015 == "TXT") INTEGER015 = 100
  349.         If (STRING015 == "NFO") INTEGER015 = 100
  350.         If (STRING015 == "ZIP") INTEGER015 = 120
  351.         Gosub LABEL052
  352.         If (BOOLEAN002 == 1) Goto LABEL005
  353.         If (STRING015 == "ARJ") Gosub LABEL034
  354.         If (STRING015 == "DOC") Gosub LABEL042
  355.         If (STRING015 == "DMS") Gosub LABEL035
  356.         If (STRING015 == "EXE") Gosub LABEL036
  357.         If (STRING015 == "LHA") Gosub LABEL041
  358.         If (STRING015 == "LZH") Gosub LABEL041
  359.         If (STRING015 == "TXT") Gosub LABEL042
  360.         If (STRING015 == "NFO") Gosub LABEL042
  361.         If (STRING015 == "ZIP") Gosub LABEL043
  362.         :LABEL005
  363.         If ((OnLocal() == 1) && (CDOn() <> 1)) RestScrn
  364.         If ((GrafMode() <> "N") && (STRING031 == "Y")) Gosub LABEL019
  365.         If (Exist("VIRUS!!!.DIZ")) BOOLEAN010 = 1
  366.         If (Exist("FAILED.DIZ")) BOOLEAN004 = 1
  367.         Gosub LABEL024
  368.         Gosub LABEL022
  369.         If (BOOLEAN003 == 1) Goto LABEL008
  370.         If (Exist("FiLE_iD.DiZ")) Then
  371.             If (FileInf("FiLE_iD.DiZ", 4) < 4) Goto LABEL031
  372.             BOOLEAN003 = 1
  373.             If ((GrafMode() <> "N") && (STRING031 == "Y")) Then
  374.                 AnsiPos 47, 21
  375.                 Print STRING009 + "FFiLE_iD.DiZ"
  376.             Endif
  377.             INTEGER001 = 0
  378.             FOpen 2, "FiLE_iD.DiZ", 0, 0
  379.             :LABEL006
  380.             If (Ferr(2)) Goto LABEL007
  381.             Inc INTEGER001
  382.             FGet 2, TSTRING008(INTEGER001)
  383.             If (Len(TSTRING008(INTEGER001)) > 46) TSTRING008(INTEGER001) = Mid(TSTRING008(INTEGER001), 1, 46)
  384.             If (Strip(TSTRING008(INTEGER001), Chr(32)) == "") Dec INTEGER001
  385.             If (STRING036 == "Y") TSTRING008(INTEGER001) = StripAtx(TSTRING008(INTEGER001))
  386.             If (INTEGER001 >= INTEGER004) Goto LABEL007
  387.             Goto LABEL006
  388.             :LABEL007
  389.             If (Strip(TSTRING008(INTEGER001), " ") == "") INTEGER003 = INTEGER001 - 1
  390.             If (Strip(TSTRING008(INTEGER001), " ") <> "") INTEGER003 = INTEGER001
  391.             FClose 2
  392.             :LABEL008
  393.             If ((GrafMode() <> "N") && (STRING031 == "Y")) Then
  394.                 Print "@X07"
  395.                 For INTEGER001 = 1 To INTEGER003
  396.                     If (INTEGER001 > 16) Break
  397.                     AnsiPos 30, INTEGER001 + 3
  398.                     If (TBOOLEAN007(INTEGER001) == 1) Print "@X0B"
  399.                     If (TBOOLEAN007(INTEGER001) == 0) Print "@X07"
  400.                     Print Left(RTrim(TSTRING008(INTEGER001), Chr(32)), 45)
  401.                     If ((TBOOLEAN007(INTEGER001) == 1) && (GrafMode() == "A")) Print "*"
  402.                 Next
  403.             Endif
  404.             If (STRING031 == "N") Goto LABEL053
  405.             If ((CurSec() < INTEGER008) || (GrafMode() == "N")) Goto LABEL053
  406.             If ((OnLocal() == 0) && (CDOn() == 0)) Goto LABEL053
  407.             If (Exist("FAILED.DIZ")) Goto LABEL053
  408.             If (BOOLEAN003 == 0) Goto LABEL053
  409.             If (INTEGER003 < 2) Goto LABEL053
  410.             Gosub LABEL029
  411.             INTEGER005 = 1
  412.             INTEGER006 = 1
  413.             INTEGER010 = Time() + 40
  414.             INTEGER013 = 1
  415.             INTEGER012 = 1
  416.             :LABEL009
  417.             AnsiPos 30, INTEGER012 + 3
  418.             If (TBOOLEAN007(INTEGER006) == 1) Print "@X0B"
  419.             If (TBOOLEAN007(INTEGER006) == 0) Print "@X07"
  420.             Print Left(RTrim(TSTRING008(INTEGER006), Chr(32)), 45)
  421.             If ((TBOOLEAN007(INTEGER006) == 1) && (GrafMode() == "A")) Print "+"
  422.             If ((TBOOLEAN007(INTEGER006) == 0) && (GrafMode() == "A")) Print " "
  423.             AnsiPos 30, INTEGER013 + 3
  424.             If (TBOOLEAN007(INTEGER005) == 1) Print "@X7B"
  425.             If (TBOOLEAN007(INTEGER005) == 0) Print "@X70"
  426.             Print Left(RTrim(TSTRING008(INTEGER005), Chr(32)), 45)
  427.             If ((TBOOLEAN007(INTEGER005) == 1) && (GrafMode() == "A")) Print "X"
  428.             If ((TBOOLEAN007(INTEGER005) == 0) && (GrafMode() == "A")) Print "*"
  429.             :LABEL010
  430.             If (Time() >= INTEGER010) Then
  431.                 AnsiPos 25, 23
  432.                 Print "@X0F                                                       "
  433.                 Goto LABEL053
  434.             Endif
  435.             STRING001 = Inkey()
  436.             If (STRING001 <> "") Goto LABEL011
  437.             Goto LABEL010
  438.             :LABEL011
  439.             INTEGER010 = Time() + 40
  440.             INTEGER006 = INTEGER005
  441.             INTEGER012 = INTEGER013
  442.             If (STRING001 == "8") Goto LABEL014
  443.             If (STRING001 == "4") Goto LABEL014
  444.             If (STRING001 == "UP") Goto LABEL014
  445.             If (STRING001 == "LEFT") Goto LABEL014
  446.             If (STRING001 == "RIGHT") Goto LABEL015
  447.             If (STRING001 == "DOWN") Goto LABEL015
  448.             If (STRING001 == "6") Goto LABEL015
  449.             If (STRING001 == "2") Goto LABEL015
  450.             If (STRING001 == Chr(32)) Goto LABEL012
  451.             If ((STRING001 == Chr(13)) && (INTEGER005 == INTEGER003)) Goto LABEL012
  452.             If ((STRING001 == Chr(13)) && (INTEGER005 < INTEGER003)) Goto LABEL013
  453.             If (Upper(STRING001) == "H") Goto LABEL018
  454.             If (Upper(STRING001) == "Q") Then
  455.                 AnsiPos 25, 23
  456.                 Print "@X0F                                                       "
  457.                 Goto LABEL053
  458.             Endif
  459.             Goto LABEL010
  460.             :LABEL012
  461.             If (TBOOLEAN007(INTEGER005) == 0) Then
  462.                 TBOOLEAN007(INTEGER005) = 1
  463.                 Goto LABEL009
  464.             Endif
  465.             If (TBOOLEAN007(INTEGER005) == 1) Then
  466.                 TBOOLEAN007(INTEGER005) = 0
  467.                 Goto LABEL009
  468.             Endif
  469.             :LABEL013
  470.             If (INTEGER005 == INTEGER003) Goto LABEL012
  471.             If (INTEGER005 < INTEGER003) Then
  472.                 Inc INTEGER013
  473.                 If (TBOOLEAN007(INTEGER005) == 0) Then
  474.                     TBOOLEAN007(INTEGER005) = 1
  475.                     If (INTEGER005 < INTEGER003) Inc INTEGER005
  476.                     If (INTEGER013 > 16) Goto LABEL017
  477.                     If (INTEGER013 <= 16) Goto LABEL009
  478.                 Endif
  479.                 If (TBOOLEAN007(INTEGER005) == 1) Then
  480.                     TBOOLEAN007(INTEGER005) = 0
  481.                     If (INTEGER005 < INTEGER003) Inc INTEGER005
  482.                     If (INTEGER013 > 16) Goto LABEL017
  483.                     If (INTEGER013 <= 16) Goto LABEL009
  484.                 Endif
  485.             Endif
  486.             :LABEL014
  487.             If (INTEGER005 == 1) Goto LABEL010
  488.             If (INTEGER005 > 1) Dec INTEGER005
  489.             Dec INTEGER013
  490.             If (INTEGER013 < 1) Then
  491.                 INTEGER013 = 1
  492.                 Goto LABEL016
  493.             Endif
  494.             Goto LABEL009
  495.             :LABEL015
  496.             If (INTEGER005 == INTEGER003) Goto LABEL010
  497.             If (INTEGER005 < INTEGER003) Inc INTEGER005
  498.             Inc INTEGER013
  499.             If (INTEGER013 > 16) Then
  500.                 INTEGER013 = 16
  501.                 Goto LABEL017
  502.             Endif
  503.             Goto LABEL009
  504.             :LABEL016
  505.             AnsiPos 30, 4
  506.             If (TBOOLEAN007(INTEGER005) == 1) Print "@X7B"
  507.             If (TBOOLEAN007(INTEGER005) == 0) Print "@X70"
  508.             Print Left(RTrim(TSTRING008(INTEGER005), Chr(32)), 45)
  509.             If ((TBOOLEAN007(INTEGER005) == 1) && (GrafMode() == "A")) Print "X"
  510.             If ((TBOOLEAN007(INTEGER005) == 0) && (GrafMode() == "A")) Print "*"
  511.             INTEGER002 = INTEGER005 + 1
  512.             For INTEGER001 = 1 To 15
  513.                 AnsiPos 30, INTEGER001 + 4
  514.                 If (TBOOLEAN007(INTEGER002) == 1) Print "@X0B"
  515.                 If (TBOOLEAN007(INTEGER002) == 0) Print "@X07"
  516.                 Print Left(RTrim(TSTRING008(INTEGER002), Chr(32)), 45)
  517.                 If ((TBOOLEAN007(INTEGER002) == 1) && (GrafMode() == "A")) Print "*"
  518.                 Inc INTEGER002
  519.             Next
  520.             AnsiPos 75, 4
  521.             Goto LABEL010
  522.             :LABEL017
  523.             INTEGER002 = INTEGER005 - 15
  524.             For INTEGER001 = 1 To 15
  525.                 AnsiPos 30, INTEGER001 + 3
  526.                 If (TBOOLEAN007(INTEGER002) == 1) Print "@X0B"
  527.                 If (TBOOLEAN007(INTEGER002) == 0) Print "@X07"
  528.                 Print Left(RTrim(TSTRING008(INTEGER002), Chr(32)), 45)
  529.                 If ((TBOOLEAN007(INTEGER002) == 1) && (GrafMode() == "A")) Print "*"
  530.                 Inc INTEGER002
  531.             Next
  532.             AnsiPos 30, 19
  533.             If (TBOOLEAN007(INTEGER005) == 1) Print "@X7B"
  534.             If (TBOOLEAN007(INTEGER005) == 0) Print "@X70"
  535.             Print Left(RTrim(TSTRING008(INTEGER005), Chr(32)), 45)
  536.             If ((TBOOLEAN007(INTEGER005) == 1) && (GrafMode() == "A")) Print "X"
  537.             If ((TBOOLEAN007(INTEGER005) == 0) && (GrafMode() == "A")) Print "*"
  538.             If (INTEGER013 > 16) INTEGER013 = 16
  539.             Goto LABEL010
  540.             :LABEL018
  541.             Print "@X07"
  542.             Call PPEPath() + "HELP.PPE"
  543.             Gosub LABEL021
  544.             Goto LABEL008
  545.             :LABEL019
  546.             AnsiPos 1, 1
  547.             For INTEGER001 = 1 To 22
  548.                 SPrintLn ReadLine(PPEPath() + STRING011, INTEGER001)
  549.             Next
  550.             AnsiPos 5, 20
  551.             SPrint "" + STRING017 + ""
  552.             Gosub LABEL020
  553.             If (LangExt() == ".AMI") Then
  554.                 AnsiPos 18 - Len(Strip(Mid(STRING004, 1, 13), " ")), 6
  555.                 SPrint "" + Strip(Mid(STRING004, 1, 13), " ") + ""
  556.                 AnsiPos 16 - Len(Strip(Mid(STRING004, 13, 9), " ")), 8
  557.                 SPrint "" + Strip(Mid(STRING004, 13, 9), " ") + ""
  558.             Endif
  559.             If (LangExt() <> ".AMI") Then
  560.                 AnsiPos 18 - Len(Strip(Mid(STRING004, 1, 13), " ")), 6
  561.                 SPrint "" + Strip(Mid(STRING004, 1, 13), " ") + ""
  562.                 AnsiPos 16 - Len(Strip(Mid(STRING004, 13, 9), " ")), 8
  563.                 SPrint "" + Strip(Mid(STRING004, 13, 9), " ") + ""
  564.             Endif
  565.             FClose -1
  566.             Return
  567.             :LABEL020
  568.             If (BOOLEAN008 == 1) Then
  569.                 If ((STRING021 == "Y") || (STRING025 == "Y")) Then
  570.                     AnsiPos 5, 10
  571.                     SPrint TSTRING032(1)
  572.                     AnsiPos 5, 11
  573.                     SPrint TSTRING032(2)
  574.                     If ((STRING025 == "Y") && (STRING021 == "N")) Then
  575.                         AnsiPos 5, 13
  576.                         SPrint TSTRING032(7)
  577.                         AnsiPos 5, 14
  578.                         SPrint TSTRING032(8)
  579.                         AnsiPos 5, 15
  580.                         SPrint TSTRING032(9)
  581.                         AnsiPos 5, 16
  582.                         SPrint TSTRING032(10)
  583.                     Endif
  584.                     If ((STRING025 == "Y") && (STRING021 == "Y")) Then
  585.                         AnsiPos 5, 13
  586.                         SPrint TSTRING032(7)
  587.                         AnsiPos 5, 14
  588.                         SPrint TSTRING032(8)
  589.                         AnsiPos 5, 15
  590.                         SPrint TSTRING032(9)
  591.                         AnsiPos 5, 16
  592.                         SPrint TSTRING032(10)
  593.                     Endif
  594.                     If ((STRING025 == "N") && (STRING021 == "Y")) Then
  595.                         AnsiPos 6, 13
  596.                         SPrint TSTRING032(3)
  597.                         AnsiPos 6, 14
  598.                         SPrint TSTRING032(4)
  599.                         AnsiPos 6, 15
  600.                         SPrint TSTRING032(5)
  601.                         AnsiPos 6, 16
  602.                         SPrint TSTRING032(6)
  603.                     Endif
  604.                 Endif
  605.                 If ((STRING021 <> "Y") && (STRING025 <> "Y")) Then
  606.                     AnsiPos 5, 12
  607.                     SPrint TSTRING032(1)
  608.                     AnsiPos 5, 13
  609.                     SPrint TSTRING032(2)
  610.                 Endif
  611.                 Return
  612.             Endif
  613.             If (BOOLEAN008 == 0) Then
  614.                 AnsiPos 5, 12
  615.                 SPrint TSTRING032(1)
  616.                 AnsiPos 5, 13
  617.                 SPrint TSTRING032(2)
  618.             Endif
  619.             Gosub LABEL024
  620.             Return
  621.             :LABEL021
  622.             Print "@X07"
  623.             Cls
  624.             DispFile PPEPath() + STRING011, 0
  625.             AnsiPos 5, 20
  626.             Print "@X08" + STRING017
  627.             AnsiPos 18 - Len(Strip(Mid(STRING004, 1, 13), " ")), 6
  628.             Print STRING009 + "F" + Strip(Mid(STRING004, 1, 13), " ")
  629.             AnsiPos 16 - Len(Strip(Mid(STRING004, 13, 9), " ")), 8
  630.             Print STRING009 + "F" + Strip(Mid(STRING004, 13, 9), " ")
  631.             Gosub LABEL023
  632.             Gosub LABEL022
  633.             Gosub LABEL024
  634.             Return
  635.             :LABEL022
  636.             If (BOOLEAN003 == 1) Then
  637.                 AnsiPos 47, 21
  638.                 Print STRING009 + "FFiLE_iD.DiZ"
  639.             Endif
  640.             Return
  641.             :LABEL023
  642.             If (BOOLEAN008 == 1) Then
  643.                 If ((STRING021 == "Y") || (STRING025 == "Y")) Then
  644.                     AnsiPos 5, 10
  645.                     Print TSTRING032(1)
  646.                     AnsiPos 5, 11
  647.                     Print TSTRING032(2)
  648.                     If ((STRING025 == "Y") && (STRING021 == "N")) Then
  649.                         AnsiPos 5, 13
  650.                         Print TSTRING032(7)
  651.                         AnsiPos 5, 14
  652.                         Print TSTRING032(8)
  653.                         AnsiPos 5, 15
  654.                         Print TSTRING032(9)
  655.                         AnsiPos 5, 16
  656.                         Print TSTRING032(10)
  657.                     Endif
  658.                     If ((STRING025 == "Y") && (STRING021 == "Y")) Then
  659.                         AnsiPos 5, 13
  660.                         Print TSTRING032(7)
  661.                         AnsiPos 5, 14
  662.                         Print TSTRING032(8)
  663.                         AnsiPos 5, 15
  664.                         Print TSTRING032(9)
  665.                         AnsiPos 5, 16
  666.                         Print TSTRING032(10)
  667.                     Endif
  668.                     If ((STRING025 == "N") && (STRING021 == "Y")) Then
  669.                         AnsiPos 6, 13
  670.                         Print TSTRING032(3)
  671.                         AnsiPos 6, 14
  672.                         Print TSTRING032(4)
  673.                         AnsiPos 6, 15
  674.                         Print TSTRING032(5)
  675.                         AnsiPos 6, 16
  676.                         Print TSTRING032(6)
  677.                     Endif
  678.                 Endif
  679.                 If ((STRING021 <> "Y") && (STRING025 <> "Y")) Then
  680.                     AnsiPos 5, 12
  681.                     Print TSTRING032(1)
  682.                     AnsiPos 5, 13
  683.                     Print TSTRING032(2)
  684.                 Endif
  685.                 Return
  686.             Endif
  687.             If (BOOLEAN008 == 0) Then
  688.                 AnsiPos 5, 12
  689.                 Print TSTRING032(1)
  690.                 AnsiPos 5, 13
  691.                 Print TSTRING032(2)
  692.             Endif
  693.             Return
  694.             :LABEL024
  695.             If (BOOLEAN008 == 1) Then
  696.                 If ((STRING021 == "Y") || (STRING025 == "Y")) Then
  697.                     Print STRING009 + "F"
  698.                     If ((STRING025 == "Y") && (STRING021 == "N")) Then
  699.                         AnsiPos 8, 14
  700.                         Print STRING026
  701.                         AnsiPos 8, 16
  702.                         Print STRING027
  703.                     Endif
  704.                     If ((STRING025 == "Y") && (STRING021 == "Y")) Then
  705.                         AnsiPos 8, 14
  706.                         Print STRING026
  707.                         AnsiPos 8, 16
  708.                         Print STRING027
  709.                     Endif
  710.                     If ((STRING025 == "N") && (STRING021 == "Y")) Then
  711.                         AnsiPos 8, 14
  712.                         Print STRING019
  713.                         AnsiPos 8, 16
  714.                         Print STRING018
  715.                     Endif
  716.                 Endif
  717.             Endif
  718.             Return
  719.             :LABEL025
  720.             Gosub LABEL030
  721.             Print STRING010 + "4<" + STRING009 + "FTESTiNG!" + STRING010 + "4>"
  722.             Return
  723.             :LABEL026
  724.             If (BOOLEAN006 == 1) Then
  725.                 Gosub LABEL030
  726.                 Print STRING010 + "4<" + STRING009 + "F!PASSED!" + STRING010 + "4>"
  727.             Endif
  728.             Return
  729.             :LABEL027
  730.             If (BOOLEAN006 == 1) Then
  731.                 Gosub LABEL030
  732.                 Print STRING010 + "4<" + STRING009 + "F!FAILED!" + STRING010 + "4>"
  733.             Endif
  734.             Return
  735.             :LABEL028
  736.             If (BOOLEAN006 == 1) Then
  737.                 Gosub LABEL030
  738.                 Print STRING010 + "4<" + STRING009 + "FINFECTED" + STRING010 + "4>"
  739.             Endif
  740.             Return
  741.             :LABEL029
  742.             Gosub LABEL030
  743.             Print STRING009 + "F<EDiTiNG!>"
  744.             AnsiPos 62, 2
  745.             Print STRING009 + "F(EDiT MODE)"
  746.             AnsiPos 25, 23
  747.             If (LangExt() == ".AMI") Print "@X0FUSE CURSOR KEYS - SPACE/ENTER=SELECT LiNE TO BE DELETED"
  748.             If (LangExt() <> ".AMI") Print "@X08US@X07E@X0F CURSOR KEYS - SPACE/ENTER=SELECT LiNE TO BE DEL@X07ET@X08ED"
  749.             AnsiPos 1, 20
  750.             If (LangExt() == ".AMI") Print "@X0F(H)ELP / (Q)UiT - EXiT"
  751.             If (LangExt() <> ".AMI") Print "@X08(H@X07)E@X0FLP / (Q)UiT - @X07EX@X08iT"
  752.             Return
  753.             :LABEL030
  754.             If (BOOLEAN008 == 1) Then
  755.                 If ((STRING021 == "Y") || (STRING025 == "Y")) Then
  756.                     AnsiPos 7, 11
  757.                 Endif
  758.                 If ((STRING021 <> "Y") && (STRING025 <> "Y")) Then
  759.                     AnsiPos 7, 13
  760.                 Endif
  761.             Endif
  762.             If (BOOLEAN008 == 0) Then
  763.                 AnsiPos 7, 13
  764.             Endif
  765.             Return
  766.         Endif
  767.         :LABEL031
  768.         INTEGER001 = 0
  769.         If (BOOLEAN005 == 0) Then
  770.             FOpen 1, STRING003, 0, 0
  771.             :LABEL032
  772.             If (Ferr(1)) Goto LABEL033
  773.             Inc INTEGER001
  774.             FGet 1, TSTRING008(INTEGER001)
  775.             TSTRING008(INTEGER001) = Mid(TSTRING008(INTEGER001), 34, 45)
  776.             If (Strip(TSTRING008(INTEGER001), Chr(32)) == "") Dec INTEGER001
  777.             If (INTEGER001 > INTEGER004) Goto LABEL033
  778.             Goto LABEL032
  779.             :LABEL033
  780.             FClose 1
  781.         Endif
  782.         INTEGER003 = INTEGER001
  783.         Goto LABEL008
  784.         :LABEL034
  785.         FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  786.         FPutLn 1, "@ECHO OFF"
  787.         FPutLn 1, "CLS"
  788.         FPutLn 1, "ECHO."
  789.         If (STRING043 <> "Y") Then
  790.             If (BOOLEAN009 == 0) Then
  791.                 FPutLn 1, "ECHO -«■»- TESTiNG " + STRING007 + " ..."
  792.                 FPutLn 1, "ARJ T -Y " + STRING007 + " > FAILED.DIZ"
  793.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  794.             Endif
  795.             If (BOOLEAN009 == 1) Then
  796.                 FPutLn 1, "MD " + STRING048
  797.                 FPutLn 1, "ECHO -«■»- EXTRACTiNG " + STRING007 + " ..."
  798.                 FPutLn 1, "ARJ E -Y " + STRING007 + " " + STRING048 + " > FAILED.DIZ"
  799.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  800.                 FPutLn 1, "IF EXIST " + STRING048 + "\FiLE_iD.DiZ COPY " + STRING048 + "\FiLE_iD.DiZ .\. > NUL"
  801.                 FPutLn 1, "IF EXIST " + STRING048 + "\DESC.SDI COPY " + STRING048 + "\DESC.SDI .\. > NUL"
  802.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.ARJ ARJ E -Y " + STRING048 + "\*.ARJ " + STRING048 + " > FAILED.DIZ"
  803.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  804.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.LZH LHA E -a -m " + STRING048 + "\*.LZH " + STRING048 + "\ > FAILED.DIZ"
  805.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  806.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.ZIP PKUNZIP -O " + STRING048 + "\*.ZIP " + STRING048 + " > FAILED.DIZ"
  807.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  808.                 FPutLn 1, "ECHO -«■»- SCANNiNG " + STRING007 + " FOR ViRUSES ..."
  809.                 FPutLn 1, STRING044 + " " + STRING048 + " " + STRING045 + " > VIRUS!!!.DIZ"
  810.                 FPutLn 1, "IF ERRORLEVEL == " + STRING047 + " GOTO END"
  811.                 FPutLn 1, "IF EXIST VIRUS!!!.DIZ DEL VIRUS!!!.DIZ"
  812.                 FPutLn 1, "IF EXIST DESC.SDI ATTRIB DESC.SDI -r -a -s -h"
  813.                 FPutLn 1, "IF EXIST FILE_ID.DIZ ATTRIB FILE_ID.DIZ -r -a -s -h"
  814.                 FPutLn 1, "IF NOT EXIST FILE_ID.DIZ IF EXIST DESC.SDI REN DESC.SDI FILE_ID.DIZ"
  815.                 FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  816.                 FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  817.                 FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  818.             Endif
  819.             FPutLn 1, "IF EXIST FAILED.DIZ DEL FAILED.DIZ"
  820.         Endif
  821.         If ((BOOLEAN009 == 0) || (STRING043 == "Y")) Then
  822.             FPutLn 1, "ECHO -«■»- CHECKiNG " + Strip(STRING007, " ") + " FOR iMBEDDED FiLE_iD.DiZ !"
  823.             FPutLn 1, "ARJ E -A -Y " + STRING007 + " FiLE_iD.DiZ > NUL"
  824.             FPutLn 1, "IF NO EXIST FILE_ID.DIZ ARJ E -A -Y " + STRING007 + " DESC.SDI > NUL"
  825.             FPutLn 1, "IF EXIST FILE_ID.DIZ ATTRIB FILE_ID.DIZ -r -a -s -h"
  826.             FPutLn 1, "IF EXIST DESC.SDI ATTRIB DESC.SDI -r -a -s -h"
  827.             FPutLn 1, "IF NOT EXIST FILE_ID.DIZ IF EXIST DESC.SDI REN DESC.SDI FILE_ID.DIZ"
  828.             FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  829.             FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  830.             FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  831.         Endif
  832.         If (STRING021 == "Y") Then
  833.             FPutLn 1, "ECHO -«■»- SEARCHiNG FOR THE NEWEST AND OLDEST FiLE ..."
  834.             FPutLn 1, "ARJ L -Y " + STRING007 + " > DIZDATA1." + STRING002
  835.             FPutLn 1, PPEPath() + "ARJTEST DIZDATA1." + STRING002 + " DIZDAT1." + STRING002
  836.             FPutLn 1, "DEL DIZDATA1." + STRING002
  837.         Endif
  838.         If (STRING025 == "Y") Then
  839.             FPutLn 1, "ECHO -«■»- LOOKiNG FOR THE DATE OF FiLE_iD.DiZ AND THE NEWEST *.NFO FiLE ..."
  840.             FPutLn 1, "ARJ L -Y " + STRING007 + " FiLE_iD.DiZ > DIZDATA2." + STRING002
  841.             FPutLn 1, "ARJ L -Y " + STRING007 + " *.NFO > DIZDATA3." + STRING002
  842.             FPutLn 1, PPEPath() + "ARJTEST DIZDATA2." + STRING002 + " DIZDAT2." + STRING002
  843.             FPutLn 1, PPEPath() + "ARJTEST DIZDATA3." + STRING002 + " DIZDAT3." + STRING002
  844.             FPutLn 1, "DEL DIZDATA2." + STRING002
  845.             FPutLn 1, "DEL DIZDATA3." + STRING002
  846.         Endif
  847.         If (((STRING042 <> "") && Exist(STRING042)) && (BOOLEAN005 == 0)) Then
  848.             FPutLn 1, "ECHO -«■»- ADDiNG YOUR BBS ADVERTS TO " + STRING007
  849.             FPutLn 1, "ARJ A -Y " + STRING007 + " !" + STRING042
  850.         Endif
  851.         If (Strip(STRING024, " ") <> "") Then
  852.             FPutLn 1, "IF EXIST FiLE_iD.DiZ ECHO -«■»- STRiPPiNG LAME BBS ADDS FROM THE FiLE_iD.DiZ ..."
  853.             FPutLn 1, "IF EXIST FiLE_iD.DiZ " + PPEPath() + "STRIP.EXE FiLE_iD.DiZ " + STRING024
  854.         Endif
  855.         If ((BOOLEAN005 == 0) && (Strip(STRING013, " ") <> "")) Then
  856.             FPutLn 1, "ECHO -«■»- ADDiNG YOUR BBS COMMERCiAL TO " + STRING007
  857.             FPutLn 1, "ARJ C -Y " + STRING007 + " -Z" + STRING013 + " > NUL"
  858.         Endif
  859.         FPutLn 1, ":END"
  860.         If (STRING043 <> "Y") Then
  861.             If (BOOLEAN009 == 1) Then
  862.                 FPutLn 1, "ECHO -«■»- REMOViNG TEMPORARY FiLES ..."
  863.                 FPutLn 1, PPEPath() + "FASTDEL " + STRING048
  864.             Endif
  865.         Endif
  866.         FClose 1
  867.         Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  868.         Delete "TST-" + STRING002 + ".BAT"
  869.         If ((STRING021 == "Y") && Exist("DIZDAT1." + STRING002)) Then
  870.             FOpen 1, "DIZDAT1." + STRING002, 0, 0
  871.             FGet 1, STRING019
  872.             FGet 1, STRING018
  873.             FGet 1, STRING020
  874.             FClose 1
  875.             Delete "DIZDAT1." + STRING002
  876.             STRING019 = Strip(STRING019, " ")
  877.             STRING018 = Strip(STRING018, " ")
  878.             STRING020 = Strip(STRING020, " ")
  879.         Endif
  880.         If (((STRING025 == "Y") && Exist("DIZDAT2." + STRING002)) && Exist("DIZDAT3." + STRING002)) Then
  881.             FOpen 2, "DIZDAT2." + STRING002, 0, 0
  882.             FGet 2, STRING026
  883.             FClose 2
  884.             Delete "DIZDAT2." + STRING002
  885.             STRING026 = Strip(STRING026, " ")
  886.             FOpen 3, "DIZDAT3." + STRING002, 0, 0
  887.             FGet 3, STRING027
  888.             FClose 3
  889.             Delete "DIZDAT3." + STRING002
  890.             STRING027 = Strip(STRING027, " ")
  891.         Endif
  892.         Return
  893.         :LABEL035
  894.         FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  895.         FPutLn 1, "@ECHO OFF"
  896.         FPutLn 1, "CLS"
  897.         FPutLn 1, "ECHO."
  898.         If (STRING043 <> "Y") Then
  899.             FPutLn 1, "ECHO -«■»- TESTiNG " + STRING007 + " !"
  900.             FPutLn 1, PPEPath() + "TEST-DMS.EXE " + STRING007 + " > FAILED.DIZ"
  901.             FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  902.         Endif
  903.         FPutLn 1, "ECHO -«■»- CHECKiNG " + Strip(STRING007, " ") + " FOR iMBEDDED FiLE_iD.DiZ !"
  904.         FPutLn 1, PPEPath() + "DMS-DIZ.EXE " + STRING007
  905.         FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  906.         FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  907.         FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  908.         If (Strip(STRING024, " ") <> "") FPutLn 1, "IF EXIST FiLE_iD.DiZ " + PPEPath() + "STRIP.EXE FiLE_iD.DiZ " + STRING024
  909.         FPutLn 1, "IF EXIST FAILED.DIZ DEL FAILED.DIZ"
  910.         FPutLn 1, ":END"
  911.         FClose 1
  912.         Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  913.         Delete "TST-" + STRING002 + ".BAT"
  914.         Return
  915.         :LABEL036
  916.         FOpen 1, STRING007, 0, 0
  917.         FSeek 1, Strip(Mid(STRING004, 14, 8), " ") - 2, 0
  918.         FRead 1, STRING012, 1
  919.         If (STRING012 <> Chr(3)) Then
  920.             FClose 1
  921.         Else
  922.             FRead 1, STRING012, 1
  923.             If (STRING012 <> Chr(242)) Then
  924.                 FClose 1
  925.             Else
  926.                 FSeek 1, Strip(Mid(STRING004, 14, 8), " ") - 1000, 0
  927.                 INTEGER009 = 0
  928.                 :LABEL037
  929.                 FRead 1, STRING012, 1
  930.                 Inc INTEGER009
  931.                 If (INTEGER009 > 1000) Goto LABEL040
  932.                 Select Case (STRING012)
  933.                     Case "F"
  934.                         FRead 1, STRING012, 1
  935.                         Inc INTEGER009
  936.                     Case "L"
  937.                         FRead 1, STRING012, 1
  938.                         Inc INTEGER009
  939.                     Case "I"
  940.                         FRead 1, STRING012, 1
  941.                         Inc INTEGER009
  942.                         If (STRING012 == "D") Goto LABEL038
  943.                 End Select
  944.                 Goto LABEL037
  945.                 :LABEL038
  946.                 INTEGER009 = 0
  947.                 For INTEGER001 = 1 To INTEGER004
  948.                     For INTEGER002 = 1 To 45
  949.                         FRead 1, STRING012, 1
  950.                         Inc INTEGER009
  951.                         If (STRING012 == "") Then
  952.                             BOOLEAN003 = 1
  953.                             INTEGER003 = INTEGER001 - 1
  954.                             Goto LABEL039
  955.                         Endif
  956.                         If (INTEGER002 > 45) Break
  957.                         If (STRING012 == Chr(10)) Break
  958.                         If (STRING012 == Chr(13)) Break
  959.                         If (INTEGER009 > 45 * INTEGER004) Then
  960.                             BOOLEAN003 = 1
  961.                             INTEGER003 = INTEGER001
  962.                             Goto LABEL039
  963.                         Endif
  964.                         TSTRING008(INTEGER001) = TSTRING008(INTEGER001) + STRING012
  965.                     Next
  966.                 Next
  967.                 BOOLEAN003 = 1
  968.                 :LABEL039
  969.                 FClose 1
  970.                 If (BOOLEAN003 == 1) Then
  971.                     FCreate 1, "FiLE_iD.DiZ", 2, 0
  972.                     For INTEGER001 = 1 To INTEGER003
  973.                         FPutLn 1, TSTRING008(INTEGER001)
  974.                     Next
  975.                     FClose 1
  976.                     If (Strip(STRING024, " ") <> "") Then
  977.                         FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  978.                         FPutLn 1, "@ECHO OFF"
  979.                         FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  980.                         FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  981.                         FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  982.                         FPutLn 1, "IF EXIST FiLE_iD.DiZ " + PPEPath() + "STRIP.EXE FiLE_iD.DiZ " + STRING024
  983.                         FClose 1
  984.                         Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  985.                         Delete "TST-" + STRING002 + ".BAT"
  986.                     Endif
  987.                 Endif
  988.                 :LABEL040
  989.                 BOOLEAN003 = 0
  990.                 FClose 1
  991.                 Return
  992.             Endif
  993.         Endif
  994.         If (STRING043 <> "Y") Then
  995.             If (BOOLEAN009 == 1) Then
  996.                 FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  997.                 FPutLn 1, "@ECHO OFF"
  998.                 FPutLn 1, "CLS"
  999.                 FPutLn 1, "ECHO -«■»- SCANNiNG " + STRING007 + " FOR ViRUSES ..."
  1000.                 FPutLn 1, STRING044 + " " + STRING007 + " " + STRING045 + " > VIRUS!!!.DIZ"
  1001.                 FPutLn 1, "IF ERRORLEVEL == " + STRING047 + " GOTO END"
  1002.                 FPutLn 1, "IF EXIST VIRUS!!!.DIZ DEL VIRUS!!!.DIZ"
  1003.                 FPutLn 1, ":END"
  1004.                 FClose 1
  1005.                 Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  1006.                 Delete "TST-" + STRING002 + ".BAT"
  1007.             Endif
  1008.         Endif
  1009.         Return
  1010.         :LABEL041
  1011.         FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  1012.         FPutLn 1, "@ECHO OFF"
  1013.         FPutLn 1, "CLS"
  1014.         FPutLn 1, "ECHO."
  1015.         If (STRING043 <> "Y") Then
  1016.             If ((BOOLEAN009 == 0) || (STRING015 == "LHA")) Then
  1017.                 FPutLn 1, "ECHO -«■»- TESTiNG " + STRING007 + " ..."
  1018.                 FPutLn 1, "LHA -m T " + STRING007 + " > FAILED.DIZ"
  1019.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1020.             Endif
  1021.             If ((BOOLEAN009 == 1) && (STRING015 == "LZH")) Then
  1022.                 FPutLn 1, "MD " + STRING048
  1023.                 FPutLn 1, "ECHO -«■»- EXTRACTiNG " + STRING007 + " ..."
  1024.                 FPutLn 1, "LHA E -a -m " + STRING007 + " " + STRING048 + "\ > FAiLED.DIZ"
  1025.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1026.                 FPutLn 1, "IF EXIST " + STRING048 + "\FiLE_iD.DiZ COPY " + STRING048 + "\FiLE_iD.DiZ .\. > NUL"
  1027.                 FPutLn 1, "IF EXIST " + STRING048 + "\DESC.SDI COPY " + STRING048 + "\DESC.SDI .\. > NUL"
  1028.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.ARJ ARJ E -Y " + STRING048 + "\*.ARJ " + STRING048 + " > FAILED.DIZ"
  1029.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1030.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.LZH LHA E -a -m " + STRING048 + "\*.LZH " + STRING048 + "\ > FAILED.DIZ"
  1031.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1032.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.ZIP PKUNZIP -O " + STRING048 + "\*.ZIP " + STRING048 + " > FAILED.DIZ"
  1033.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1034.                 FPutLn 1, "ECHO -«■»- SCANNiNG " + STRING007 + " FOR ViRUSES ..."
  1035.                 FPutLn 1, STRING044 + " " + STRING048 + " " + STRING045 + " > VIRUS!!!.DIZ"
  1036.                 FPutLn 1, "IF ERRORLEVEL == " + STRING047 + " GOTO END"
  1037.                 FPutLn 1, "IF EXIST VIRUS!!!.DIZ DEL VIRUS!!!.DIZ"
  1038.                 FPutLn 1, "IF EXIST DESC.SDI ATTRIB DESC.SDI -r -a -s -h"
  1039.                 FPutLn 1, "IF EXIST FILE_ID.DIZ ATTRIB FILE_ID.DIZ -r -a -s -h"
  1040.                 FPutLn 1, "IF NOT EXIST FILE_ID.DIZ IF EXIST DESC.SDI REN DESC.SDI FILE_ID.DIZ"
  1041.                 FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  1042.                 FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  1043.                 FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  1044.             Endif
  1045.             FPutLn 1, "IF EXIST FAILED.DIZ DEL FAILED.DIZ"
  1046.         Endif
  1047.         If (((BOOLEAN009 == 0) || (STRING043 == "Y")) || (STRING015 == "LHA")) Then
  1048.             FPutLn 1, "ECHO -«■»- CHECKiNG " + Strip(STRING007, " ") + " FOR iMBEDDED FiLE_iD.DiZ !"
  1049.             FPutLn 1, "LHA E -a -m " + STRING007 + " FiLE_iD.DiZ"
  1050.             FPutLn 1, "IF NOT EXIST FILE_ID.DIZ LHA E -a -m " + STRING007 + " DESC.SDI"
  1051.             FPutLn 1, "IF EXIST FILE_ID.DIZ ATTRIB FILE_ID.DIZ -r -a -s -h"
  1052.             FPutLn 1, "IF EXIST DESC.SDI ATTRIB DESC.SDI -r -a -s -h"
  1053.             FPutLn 1, "IF NOT EXIST FILE_ID.DIZ IF EXIST DESC.SDI REN DESC.SDI FILE_ID.DIZ"
  1054.             FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  1055.             FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  1056.             FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  1057.         Endif
  1058.         If (STRING021 == "Y") Then
  1059.             FPutLn 1, "ECHO -«■»- SEARCHiNG FOR THE NEWEST AND OLDEST FiLE ..."
  1060.             FPutLn 1, "LHA -m " + STRING007 + " > DIZDATA1." + STRING002
  1061.             FPutLn 1, PPEPath() + "LHATEST DIZDATA1." + STRING002 + " DIZDAT1." + STRING002
  1062.             FPutLn 1, "DEL DIZDATA1." + STRING002
  1063.         Endif
  1064.         If (STRING025 == "Y") Then
  1065.             FPutLn 1, "ECHO -«■»- LOOKiNG FOR THE DATE OF FiLE_iD.DiZ AND THE NEWEST *.NFO FiLE ..."
  1066.             FPutLn 1, "LHA -m " + STRING007 + " FiLE_iD.DiZ > DIZDATA2." + STRING002
  1067.             FPutLn 1, "LHA -m " + STRING007 + " *.NFO > DIZDATA3." + STRING002
  1068.             FPutLn 1, PPEPath() + "LHATEST DIZDATA2." + STRING002 + " DIZDAT2." + STRING002
  1069.             FPutLn 1, PPEPath() + "LHATEST DIZDATA3." + STRING002 + " DIZDAT3." + STRING002
  1070.             FPutLn 1, "DEL DIZDATA2." + STRING002
  1071.             FPutLn 1, "DEL DIZDATA3." + STRING002
  1072.         Endif
  1073.         If (((STRING042 <> "") && Exist(STRING042)) && (STRING015 == "LZH")) Then
  1074.             FPutLn 1, "ECHO -«■»- ADDiNG YOUR BBS ADDVERTS TO " + STRING007
  1075.             FPutLn 1, "LHA A " + STRING007 + " @" + STRING042
  1076.         Endif
  1077.         FPutLn 1, ":END"
  1078.         If (STRING043 <> "Y") Then
  1079.             If ((BOOLEAN009 == 1) && (STRING015 == "LZH")) Then
  1080.                 FPutLn 1, "ECHO -«■»- REMOViNG TEMPORARY FiLES ..."
  1081.                 FPutLn 1, PPEPath() + "FASTDEL " + STRING048
  1082.             Endif
  1083.         Endif
  1084.         FClose 1
  1085.         Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  1086.         Delete "TST-" + STRING002 + ".BAT"
  1087.         If ((STRING021 == "Y") && Exist("DIZDAT1." + STRING002)) Then
  1088.             FOpen 1, "DIZDAT1." + STRING002, 0, 0
  1089.             FGet 1, STRING019
  1090.             FGet 1, STRING018
  1091.             FGet 1, STRING020
  1092.             STRING019 = Strip(STRING019, " ")
  1093.             STRING018 = Strip(STRING018, " ")
  1094.             STRING020 = Strip(STRING020, " ")
  1095.             FClose 1
  1096.             Delete "DIZDAT1." + STRING002
  1097.         Endif
  1098.         If (((STRING025 == "Y") && Exist("DIZDAT2." + STRING002)) && Exist("DIZDAT3." + STRING002)) Then
  1099.             FOpen 2, "DIZDAT2." + STRING002, 0, 0
  1100.             FGet 2, STRING026
  1101.             STRING026 = Strip(STRING026, " ")
  1102.             FClose 2
  1103.             Delete "DIZDAT2." + STRING002
  1104.             FOpen 3, "DIZDAT3." + STRING002, 0, 0
  1105.             FGet 3, STRING027
  1106.             STRING027 = Strip(STRING027, " ")
  1107.             FClose 3
  1108.             Delete "DIZDAT3." + STRING002
  1109.         Endif
  1110.         Return
  1111.         :LABEL042
  1112.         FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  1113.         FPutLn 1, "@ECHO OFF"
  1114.         FPutLn 1, "CLS"
  1115.         FPutLn 1, "ECHO."
  1116.         FPutLn 1, "ECHO -«■»- CHECKiNG " + Strip(STRING007, " ") + " FOR iMBEDDED FiLE_iD.DiZ !"
  1117.         FPutLn 1, PPEPath() + "TXT-DIZ.EXE " + STRING007 + " > NUL"
  1118.         FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  1119.         FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  1120.         FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  1121.         If (Strip(STRING024, " ") <> "") FPutLn 1, "IF EXIST FiLE_iD.DiZ " + PPEPath() + "STRIP.EXE FiLE_iD.DiZ " + STRING024
  1122.         FClose 1
  1123.         Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  1124.         Delete "TST-" + STRING002 + ".BAT"
  1125.         Return
  1126.         :LABEL043
  1127.         FCreate 1, "TST-" + STRING002 + ".BAT", 2, 0
  1128.         FPutLn 1, "@ECHO OFF"
  1129.         FPutLn 1, "CLS"
  1130.         FPutLn 1, "ECHO."
  1131.         If (STRING043 <> "Y") Then
  1132.             If (BOOLEAN009 == 0) Then
  1133.                 FPutLn 1, "ECHO -«■»- TESTiNG " + STRING007 + " ..."
  1134.                 FPutLn 1, "PKUNZIP -T -O " + STRING007 + " > FAILED.DIZ"
  1135.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1136.             Endif
  1137.             If (BOOLEAN009 == 1) Then
  1138.                 FPutLn 1, "MD " + STRING048
  1139.                 FPutLn 1, "ECHO -«■»- EXTRACTiNG " + STRING007 + " ..."
  1140.                 FPutLn 1, "PKUNZIP -O " + STRING007 + " " + STRING048 + "\ > FAiLED.DIZ"
  1141.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1142.                 FPutLn 1, "IF EXIST " + STRING048 + "\FiLE_iD.DiZ COPY " + STRING048 + "\FiLE_iD.DiZ .\. > NUL"
  1143.                 FPutLn 1, "IF EXIST " + STRING048 + "\DESC.SDI COPY " + STRING048 + "\DESC.SDI .\. > NUL"
  1144.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.ARJ ARJ E -Y " + STRING048 + "\*.ARJ " + STRING048 + " > FAILED.DIZ"
  1145.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1146.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.LZH LHA E -a -m " + STRING048 + "\*.LZH " + STRING048 + "\ > FAILED.DIZ"
  1147.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1148.                 FPutLn 1, "IF EXIST " + STRING048 + "\*.ZIP PKUNZIP -O " + STRING048 + "\*.ZIP " + STRING048 + " > FAILED.DIZ"
  1149.                 FPutLn 1, "IF ERRORLEVEL == 1 GOTO END"
  1150.                 FPutLn 1, "ECHO -«■»- SCANNiNG " + STRING007 + " FOR ViRUSES ..."
  1151.                 FPutLn 1, STRING044 + " " + STRING048 + " " + STRING045 + " > VIRUS!!!.DIZ"
  1152.                 FPutLn 1, "IF ERRORLEVEL == " + STRING047 + " GOTO END"
  1153.                 FPutLn 1, "IF EXIST VIRUS!!!.DIZ DEL VIRUS!!!.DIZ"
  1154.                 FPutLn 1, "IF EXIST DESC.SDI ATTRIB DESC.SDI -r -a -s -h"
  1155.                 FPutLn 1, "IF EXIST FILE_ID.DIZ ATTRIB FILE_ID.DIZ -r -a -s -h"
  1156.                 FPutLn 1, "IF NOT EXIST FILE_ID.DIZ IF EXIST DESC.SDI REN DESC.SDI FILE_ID.DIZ"
  1157.                 FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  1158.                 FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  1159.                 FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  1160.             Endif
  1161.             FPutLn 1, "IF EXIST FAILED.DIZ DEL FAILED.DIZ"
  1162.         Endif
  1163.         If ((BOOLEAN009 == 0) || (STRING043 == "Y")) Then
  1164.             FPutLn 1, "ECHO -«■»- CHECKiNG " + Strip(STRING007, " ") + " FOR iMBEDDED FiLE_iD.DiZ !"
  1165.             FPutLn 1, "PKUNZIP -O " + STRING007 + " FiLE_iD.DiZ > NUL"
  1166.             FPutLn 1, "IF NOT EXIST FILE_ID.DIZ PKUNZIP -O " + STRING007 + " DESC.SDI > NUL"
  1167.             FPutLn 1, "IF EXIST FILE_ID.DIZ ATTRIB FILE_ID.DIZ -r -a -s -h"
  1168.             FPutLn 1, "IF EXIST DESC.SDI ATTRIB DESC.SDI -r -a -s -h"
  1169.             FPutLn 1, "IF NOT EXIST FILE_ID.DIZ IF EXIST DESC.SDI REN DESC.SDI FILE_ID.DIZ"
  1170.             FPutLn 1, "IF EXIST FILE_ID.DIZ " + PPEPath() + "AMI2PC FILE_ID.DIZ FLID."
  1171.             FPutLn 1, "IF EXIST FLID. DEL FILE_ID.DIZ"
  1172.             FPutLn 1, "IF EXIST FLID. REN FLID. FILE_ID.DIZ"
  1173.         Endif
  1174.         If (Strip(STRING024, " ") <> "") Then
  1175.             FPutLn 1, "IF EXIST FiLE_iD.DiZ ECHO -«■»- STRiPPiNG LAME BBS ADDS FROM THE FiLE_iD.DiZ ..."
  1176.             FPutLn 1, "IF EXIST FiLE_iD.DiZ " + PPEPath() + "STRIP.EXE FiLE_iD.DiZ " + STRING024
  1177.         Endif
  1178.         If (Strip(STRING014, " ") <> "") Then
  1179.             FPutLn 1, "ECHO -«■»- DELETiNG LAME FiLES FROM " + STRING007 + " ..."
  1180.             FPutLn 1, "PKZIP -D " + STRING007 + " @" + STRING014 + " > NUL"
  1181.         Endif
  1182.         If (STRING021 == "Y") Then
  1183.             FPutLn 1, "ECHO -«■»- SEARCHiNG FOR THE NEWEST AND OLDEST FiLE ..."
  1184.             FPutLn 1, "PKUNZIP -V -O " + STRING007 + " > DIZDATA1." + STRING002 + " -ED"
  1185.         Endif
  1186.         If (STRING025 == "Y") Then
  1187.             FPutLn 1, "ECHO -«■»- LOOKiNG FOR THE DATE OF FiLE_iD.DiZ AND THE NEWEST *.NFO FiLE ..."
  1188.             FPutLn 1, "PKUNZIP -V -O " + STRING007 + " FiLE_iD.DiZ > DIZDATA2." + STRING002 + " -ED"
  1189.             FPutLn 1, "PKUNZIP -V -O " + STRING007 + " *.NFO > DIZDATA3." + STRING002 + " -EDR"
  1190.         Endif
  1191.         If (((STRING042 <> "") && Exist(STRING042)) && (BOOLEAN005 == 0)) Then
  1192.             FPutLn 1, "ECHO -«■»- ADDiNG YOUR BBS ADVERTS TO " + STRING007
  1193.             FPutLn 1, "PKZIP " + STRING007 + " @" + STRING042
  1194.         Endif
  1195.         If ((Strip(STRING013, " ") <> "") && (BOOLEAN005 == 0)) Then
  1196.             FPutLn 1, "ECHO -«■»- ADDiNG YOUR BBS COMMERCiAL TO " + STRING007
  1197.             FPutLn 1, "PKZIP -Z " + STRING007 + " < " + STRING013 + " > NUL"
  1198.         Endif
  1199.         FPutLn 1, ":END"
  1200.         If (STRING043 <> "Y") Then
  1201.             If (BOOLEAN009 == 1) Then
  1202.                 FPutLn 1, "ECHO -«■»- REMOViNG TEMPORARY FiLES ..."
  1203.                 FPutLn 1, PPEPath() + "FASTDEL " + STRING048
  1204.             Endif
  1205.         Endif
  1206.         FClose 1
  1207.         Shell 1, STRING005, "TST-" + STRING002 + ".BAT", 0
  1208.         Delete "TST-" + STRING002 + ".BAT"
  1209.         If (Exist("DIZDATA1." + STRING002)) Then
  1210.             FOpen 1, "DIZDATA1." + STRING002, 0, 0
  1211.             :LABEL044
  1212.             If (Ferr(1)) Goto LABEL047
  1213.             FGet 1, TSTRING016(1)
  1214.             If (TSTRING016(1) == " ------  ------   ----- -----   ----    ----   -------- ----  ----") Then
  1215.                 FGet 1, TSTRING016(1)
  1216.                 STRING018 = Strip(Mid(TSTRING016(1), 30, 10), " ")
  1217.                 :LABEL045
  1218.                 If (Ferr(1)) Goto LABEL046
  1219.                 FGet 1, TSTRING016(1)
  1220.                 If (TSTRING016(1) == " ------          ------  ---                                  -------") Then
  1221.                     STRING019 = Strip(Mid(TSTRING016(2), 30, 10), " ")
  1222.                     FGet 1, TSTRING016(1)
  1223.                     STRING020 = Strip(Mid(TSTRING016(1), 63, 7), " ")
  1224.                 Endif
  1225.                 TSTRING016(2) = TSTRING016(1)
  1226.                 Goto LABEL045
  1227.             Endif
  1228.             :LABEL046
  1229.             Goto LABEL044
  1230.             :LABEL047
  1231.             FClose 1
  1232.             Delete "DIZDATA1." + STRING002
  1233.         Endif
  1234.         If (Exist("DIZDATA2." + STRING002)) Then
  1235.             FOpen 2, "DIZDATA2." + STRING002, 0, 0
  1236.             :LABEL048
  1237.             If (Ferr(2)) Goto LABEL049
  1238.             FGet 2, TSTRING016(1)
  1239.             If (TSTRING016(1) == " ------  ------   ----- -----   ----    ----   -------- ----  ----") Then
  1240.                 FGet 2, TSTRING016(1)
  1241.                 STRING026 = Strip(Mid(TSTRING016(1), 30, 10), " ")
  1242.             Endif
  1243.             Goto LABEL048
  1244.             :LABEL049
  1245.             FClose 2
  1246.             Delete "DIZDATA2." + STRING002
  1247.         Endif
  1248.         If (Exist("DIZDATA3." + STRING002)) Then
  1249.             FOpen 3, "DIZDATA3." + STRING002, 0, 0
  1250.             :LABEL050
  1251.             If (Ferr(3)) Goto LABEL051
  1252.             FGet 3, TSTRING016(1)
  1253.             If (TSTRING016(1) == " ------  ------   ----- -----   ----    ----   -------- ----  ----") Then
  1254.                 FGet 3, TSTRING016(1)
  1255.                 STRING027 = Strip(Mid(TSTRING016(1), 30, 10), " ")
  1256.             Endif
  1257.             Goto LABEL050
  1258.             :LABEL051
  1259.             FClose 3
  1260.             Delete "DIZDATA3." + STRING002
  1261.         Endif
  1262.         Return
  1263.         :LABEL052
  1264.         If (STRING040 == "0") Then
  1265.             If (INTEGER016 < 170) Then
  1266.                 Print "@X0C"
  1267.                 Cls
  1268.                 PrintLn "@BEEP@@X0CWARNiNG ! NOT ENOUGH MEMORY !"
  1269.                 Log "NOT ENOUGH MEMORY TO TEST " + Upper(STRING015) + " FiLES ! - " + STRING017 + "", 1
  1270.                 BOOLEAN002 = 1
  1271.             Endif
  1272.         Endif
  1273.         Return
  1274.     Endif
  1275.     :LABEL053
  1276.     If (Strip(STRING024, " ") <> "") Then
  1277.         FAppend 2, STRING024, 2, 0
  1278.         For INTEGER001 = 1 To INTEGER003
  1279.             If (TBOOLEAN007(INTEGER001) == 1) FPutLn 2, TSTRING008(INTEGER001)
  1280.         Next
  1281.         FClose 2
  1282.     Endif
  1283.     If (BOOLEAN005 == 1) Goto LABEL054
  1284.     If (BOOLEAN006 == 1) Then
  1285.         Delete STRING003
  1286.         FCreate 1, STRING003, 2, 0
  1287.         For INTEGER001 = 1 To INTEGER003
  1288.             If (TBOOLEAN007(INTEGER001) == 0) FPutLn 1, STRING004 + TSTRING008(INTEGER001)
  1289.             If (TBOOLEAN007(INTEGER001) == 0) Break
  1290.             If (INTEGER001 == INTEGER003) FPutLn 1, STRING004 + TSTRING008(1)
  1291.         Next
  1292.         INTEGER007 = INTEGER001 + 1
  1293.         If (STRING034 == "Y") Then
  1294.             For INTEGER001 = INTEGER007 To INTEGER003
  1295.                 If (TBOOLEAN007(INTEGER001) == 0) FPutLn 1, " |@POS:34@" + TSTRING008(INTEGER001)
  1296.             Next
  1297.         Endif
  1298.         If (STRING034 == "N") Then
  1299.             For INTEGER001 = INTEGER007 To INTEGER003
  1300.                 If (TBOOLEAN007(INTEGER001) == 0) FPutLn 1, "                               | " + TSTRING008(INTEGER001)
  1301.             Next
  1302.         Endif
  1303.     Endif
  1304.     If (BOOLEAN006 == 0) FAppend 1, STRING003, 2, 0
  1305.     If (STRING035 == "Y") Then
  1306.         If (STRING021 == "Y") Then
  1307.             If (BOOLEAN008 == 1) Then
  1308.                 If (Strip(STRING019, " ") == "") STRING019 = STRING018
  1309.                 If (((STRING020 <> "") && (STRING019 <> "")) && (STRING018 <> "")) FPutLn 1, " |@POS:34@" + STRING029 + "Files: " + STRING030 + STRING020 + STRING029 + "  Newest: " + STRING030 + STRING019 + STRING029 + "  Oldest: " + STRING030 + STRING018
  1310.             Endif
  1311.         Endif
  1312.         If (STRING025 == "Y") Then
  1313.             If (BOOLEAN008 == 1) Then
  1314.                 If (Strip(STRING026, " ") == "") STRING026 = "None"
  1315.                 If (Strip(STRING027, " ") == "") STRING027 = "None"
  1316.                 FPutLn 1, " |@POS:34@" + STRING029 + "File_id.Diz: " + STRING030 + STRING026 + STRING029 + " - Newest .Nfo: " + STRING030 + STRING027
  1317.             Endif
  1318.         Endif
  1319.         If (STRING022 == "Y") Then
  1320.             If (STRING002 == "") FPutLn 1, " |@POS:34@" + STRING029 + "Uploaded at " + STRING030 + Mid(Time(), 1, 8)
  1321.             If (STRING002 <> "") FPutLn 1, " |@POS:34@" + STRING029 + "Uploaded at " + STRING030 + Mid(Time(), 1, 8) + STRING029 + " on Node " + STRING030 + "#" + STRING002
  1322.         Endif
  1323.         If ((INTEGER014 <> 0) && (CurSec() < INTEGER014)) FPutLn 1, " |@POS:34@Uploaded by: " + Mixed(U_Name())
  1324.         If ((INTEGER014 <> 0) && (CurSec() >= INTEGER014)) FPutLn 1, " |@POS:34@" + STRING041
  1325.         If (BOOLEAN010 == 1) FPutLn 1, " |@POS:34@@X8CWARNiNG : THiS FiLE iS INFECTED BY A ViRUS !"
  1326.         If (STRING033 == "Y") FPutLn 1, " |"
  1327.     Endif
  1328.     If (STRING035 == "N") Then
  1329.         If (STRING021 == "Y") Then
  1330.             If (BOOLEAN008 == 1) Then
  1331.                 If (Strip(STRING019, " ") == "") STRING019 = STRING018
  1332.                 If (((STRING020 <> "") && (STRING019 <> "")) && (STRING018 <> "")) FPutLn 1, "                               | Files: " + STRING020 + "  Newest: " + STRING019 + "  Oldest: " + STRING018
  1333.             Endif
  1334.         Endif
  1335.         If (STRING025 == "Y") Then
  1336.             If (BOOLEAN008 == 1) Then
  1337.                 If (Strip(STRING026, " ") == "") STRING026 = "None"
  1338.                 If (Strip(STRING027, " ") == "") STRING027 = "None"
  1339.                 FPutLn 1, "                               | File_id.Diz: " + STRING026 + " - Newest .Nfo: " + STRING027
  1340.             Endif
  1341.         Endif
  1342.         If (STRING022 == "Y") Then
  1343.             If (STRING002 == "") FPutLn 1, "                               | Uploaded at " + Mid(Time(), 1, 8)
  1344.             If (STRING002 <> "") FPutLn 1, "                               | Uploaded at " + Mid(Time(), 1, 8) + " on Node #" + STRING002
  1345.         Endif
  1346.         If ((INTEGER014 <> 0) && (CurSec() < INTEGER014)) FPutLn 1, "                               | Uploaded by: " + Mixed(U_Name())
  1347.         If ((INTEGER014 <> 0) && (CurSec() >= INTEGER014)) FPutLn 1, "                               | " + STRING041
  1348.         If (BOOLEAN010 == 1) FPutLn 1, "                               | @X8CTHiS FiLE iS INFECTED BY A ViRUS !"
  1349.         If (STRING033 == "Y") FPutLn 1, "                               |"
  1350.     Endif
  1351.     FClose 1
  1352.     :LABEL054
  1353.     If (BOOLEAN010 == 1) Then
  1354.         If ((GrafMode() <> "N") && (STRING031 == "Y")) Gosub LABEL028
  1355.         Delete "FAILED.DIZ"
  1356.         FCreate 1, "FAILED.DIZ", 2, 0
  1357.         FPutLn 1, ""
  1358.         FClose 1
  1359.         Log "FOUND A ViRUS iN " + Strip(Mid(STRING004, 1, 13), " ") + " !", 1
  1360.         FCreate 1, "FAILED", 2, 0
  1361.         FPutLn 1, "VIRUS"
  1362.         FPutLn 1, STRING017
  1363.         FPutLn 1, Strip(Mid(STRING004, 1, 12), " ")
  1364.         FPutLn 1, Strip(Mid(STRING004, 13, 9), " ")
  1365.         FClose 1
  1366.         Call PPEPath() + "FAILED.PPE"
  1367.         If (Exist("VIRUS!!!.DIZ")) Delete "VIRUS!!!.DIZ"
  1368.         End
  1369.     Endif
  1370.     If (BOOLEAN004 == 1) Then
  1371.         If (BOOLEAN003 == 1) Then
  1372.             If ((GrafMode() <> "N") && (STRING031 == "Y")) Gosub LABEL027
  1373.             If (Exist("FiLE_iD.DiZ")) Delete "FiLE_iD.DiZ"
  1374.         Endif
  1375.         FCreate 1, "FAILED", 2, 0
  1376.         FPutLn 1, "FAILED"
  1377.         FPutLn 1, STRING017
  1378.         FPutLn 1, Strip(Mid(STRING004, 1, 12), " ")
  1379.         FPutLn 1, Strip(Mid(STRING004, 13, 9), " ")
  1380.         FClose 1
  1381.         Call PPEPath() + "FAILED.PPE"
  1382.         Delete "FAILED.DIZ"
  1383.         FCreate 1, "FAILED.DIZ", 2, 0
  1384.         FPutLn 1, ""
  1385.         FClose 1
  1386.         End
  1387.     Endif
  1388.     If ((((BOOLEAN003 == 0) && (BOOLEAN004 == 1)) && (GrafMode() <> "N")) && (STRING031 == "Y")) Gosub LABEL027
  1389.     If ((BOOLEAN003 == 1) && (BOOLEAN004 == 0)) Then
  1390.         If ((GrafMode() <> "N") && (STRING031 == "Y")) Gosub LABEL026
  1391.         If (Exist("DESC.SDI")) Delete "DESC.SDI"
  1392.         If (Exist("FiLE_iD.DiZ")) Delete "FiLE_iD.DiZ"
  1393.         If (BOOLEAN005 == 0) Log "FiLE_iD iN " + Strip(Mid(STRING004, 1, 13), " ") + " - PASSED " + STRING017 + "", 0
  1394.     Endif
  1395.     If ((BOOLEAN003 == 0) && (BOOLEAN004 == 0)) Then
  1396.         If ((GrafMode() <> "N") && (STRING031 == "Y")) Gosub LABEL026
  1397.         If (BOOLEAN005 == 0) Log "" + Strip(Mid(STRING004, 1, 13), " ") + " PASSED " + STRING017 + "", 0
  1398.     Endif
  1399.     Print "@X07"
  1400.     If (BOOLEAN006 == 1) Then
  1401.         If ((GrafMode() <> "N") && (STRING031 == "Y")) AnsiPos 1, 23
  1402.         If ((INTEGER014 <> 0) && (CurSec() >= INTEGER014)) Then
  1403.             If (BOOLEAN001 == 1) Then
  1404.                 Newline
  1405.                 PrintLn "@X0FIF YOU WANT TO EDiT YOUR @X07`@X0F" + STRING041 + "@X07'@X0F STRiNG"
  1406.                 PrintLn "@X0FYOU HAVE TO ENTER @X07'@X0FSENT@X07'@X0F FROM THE MAIN PROMPT !"
  1407.             Endif
  1408.             If (BOOLEAN001 == 0) Then
  1409.                 Newline
  1410.                 PrintLn "@X08I@X07F @X0FYOU WANT TO EDiT YOUR @X07`@X0F" + STRING041 + "@X07'@X0F STR@X07IN@X08G"
  1411.                 PrintLn "@X08Y@X07OU@X0F HAVE TO ENTER @X07`@X0FSENT@X07'@X0F FROM THE MAIN PROMP@X07T @X08!"
  1412.             Endif
  1413.         Endif
  1414.     Endif
  1415.     End
  1416.  
  1417. ;------------------------------------------------------------------------------
  1418. ;
  1419. ; Usage report (before postprocessing)
  1420. ;
  1421. ; ■ Statements used :
  1422. ;
  1423. ;    4       End
  1424. ;    2       Cls
  1425. ;    1       ClrEol
  1426. ;    1       Color 
  1427. ;    247     Goto 
  1428. ;    195     Let 
  1429. ;    83      Print 
  1430. ;    5       PrintLn 
  1431. ;    328     If 
  1432. ;    1       DispFile 
  1433. ;    17      FCreate 
  1434. ;    16      FOpen 
  1435. ;    2       FAppend 
  1436. ;    44      FClose 
  1437. ;    46      FGet 
  1438. ;    240     FPutLn 
  1439. ;    34      Delete 
  1440. ;    4       Log 
  1441. ;    32      Gosub 
  1442. ;    22      Return
  1443. ;    1       CdChkOff
  1444. ;    14      Inc 
  1445. ;    4       Dec 
  1446. ;    2       Newline
  1447. ;    10      Shell 
  1448. ;    4       Call 
  1449. ;    1       RdUNet 
  1450. ;    1       WrUNet 
  1451. ;    70      AnsiPos 
  1452. ;    1       Backup 
  1453. ;    4       SaveScrn
  1454. ;    4       RestScrn
  1455. ;    23      SPrint 
  1456. ;    1       SPrintLn 
  1457. ;    4       FSeek 
  1458. ;    7       FRead 
  1459. ;
  1460. ;
  1461. ; ■ Functions used :
  1462. ;
  1463. ;    7       -
  1464. ;    3       *
  1465. ;    1       /
  1466. ;    576     +
  1467. ;    11      -
  1468. ;    261     ==
  1469. ;    71      <>
  1470. ;    25      <
  1471. ;    14      <=
  1472. ;    12      >
  1473. ;    30      >=
  1474. ;    169     !
  1475. ;    102     &&
  1476. ;    29      ||
  1477. ;    10      Len(
  1478. ;    14      Upper()
  1479. ;    58      Mid()
  1480. ;    7       Left()
  1481. ;    7       Ferr()
  1482. ;    17      Chr()
  1483. ;    1       Asc()
  1484. ;    3       InStr()
  1485. ;    7       RTrim()
  1486. ;    7       Time()
  1487. ;    8       U_Name()
  1488. ;    1       StripAtx()
  1489. ;    68      Strip()
  1490. ;    1       Inkey()
  1491. ;    2       CurConf()
  1492. ;    4       PCBDat()
  1493. ;    44      PPEPath()
  1494. ;    3       PcbNode()
  1495. ;    8       ReadLine()
  1496. ;    4       OnLocal()
  1497. ;    1       UN_Name()
  1498. ;    1       UN_City()
  1499. ;    7       CurSec()
  1500. ;    39      Exist()
  1501. ;    4       CDOn()
  1502. ;    11      LangExt()
  1503. ;    1       GetY()
  1504. ;    33      GrafMode()
  1505. ;    2       FileInf()
  1506. ;    2       ScrText()
  1507. ;    4       Mixed()
  1508. ;
  1509. ;------------------------------------------------------------------------------
  1510. ;
  1511. ; Analysis flags : SCd
  1512. ;
  1513. ; S - Shell to DOS ■ 5
  1514. ;     This may be normal if the PPE need to execute an external command,
  1515. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  1516. ;     or usefull (sorting, maintenance,...). Check!
  1517. ;     ■ Search for : SHELL
  1518. ;
  1519. ; C - Call child PPE ■ 3
  1520. ;     This is usually normal, but may be a tricky way to launch some
  1521. ;     sysop-only commands.
  1522. ;     ■ Search for : CALL
  1523. ;
  1524. ; d - Access PCBOARD.DAT ■ 2
  1525. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  1526. ;     for many PPE so they can find various informations on the system
  1527. ;     (system paths, max number of lines in messages, ...) but it may also
  1528. ;     be a way to gather vital informations.
  1529. ;     ■ Search for : PCBDAT()
  1530. ;
  1531. ;------------------------------------------------------------------------------
  1532. ;
  1533. ; Postprocessing report
  1534. ;
  1535. ;    12      For/Next
  1536. ;    0       While/EndWhile
  1537. ;    142     If/Then or If/Then/Else
  1538. ;    1       Select Case
  1539. ;
  1540. ;------------------------------------------------------------------------------
  1541. ;                 AEGiS Corp - Break the routines, code against the machines!
  1542. ;------------------------------------------------------------------------------
  1543.