home *** CD-ROM | disk | FTP | other *** search
- ;------------------------------------------------------------------------------
- ; .ss.
- ; `²²'
- ; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
- ; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
- ; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
- ; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
- ; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
- ; .sS²°$$$²²°"' d²°'
- ; .$$² .$$'
- ; $$$.,d$$'
- ; `²S$$S²'
- ;------------------------------------------------------------------------------
- ; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
- ;------------------------------------------------------------------------------
- ; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
- ;------------------------------------------------------------------------------
-
- Integer INTEGER001
- Integer INTEGER002
- Integer INTEGER003
- Integer INTEGER004
- Integer INTEGER005
- Integer INTEGER006
- Integer INTEGER007
- Integer INTEGER008
- Integer INTEGER009
- Integer INTEGER010
- Integer INTEGER011
- Integer INTEGER012
- Integer INTEGER013
- Integer INTEGER014
- Integer INTEGER015
- Integer INTEGER016
- Integer INTEGER017
- Integer INTEGER018
- Integer INTEGER019
- Integer INTEGER020
- Integer INTEGER021
- String TSTRING001(23)
- String STRING002
- String STRING003
- String STRING004
- String TSTRING005(23)
- String TSTRING006(4)
- String TSTRING007(2)
- String TSTRING008(2)
- String TSTRING009(2)
- String STRING010
- String STRING011
- String STRING012
- String STRING013
- String STRING014
- String STRING015
- String STRING016
- String STRING017
- String STRING018
- String STRING019
- String STRING020
- String STRING021
- String STRING022
- String STRING023
- String TSTRING024(2)
- String STRING025
- String STRING026
- String TSTRING027(3)
- BigStr BIGSTR001
- Declare Procedure PROC001()
- Declare Procedure PROC003()
- Declare Procedure PROC004()
- Declare Procedure PROC005()
- Declare Procedure PROC006()
-
- ;------------------------------------------------------------------------------
-
- Delete PPEPath() + "user.dat"
- Delete PPEPath() + "search.dat"
- FCreate 2, PPEPath() + "search.dat", 1, 0
- FCreate 1, PPEPath() + "user.dat", 1, 0
- STRING010 = PPEPath() + "user.dat"
- INTEGER006 = 0
- STRING015 = FileInf(ReadLine(PCBDat(), 29), 4)
- STRING014 = STRING015 / 400
- PROC003()
- End
-
- ;------------------------------------------------------------------------------
-
- Procedure PROC003()
-
- WrUNet PcbNode(), "Q", UN_Name(), UN_City(), "Using MST User Lister", " "
- Cls
- STRING017 = Upper(ReadLine(PPEPath() + "user.cfg", 9))
- TSTRING007(0) = "@X08"
- TSTRING007(1) = "@X07"
- TSTRING007(2) = "@X0F"
- STRING011 = "NO"
- TSTRING006(0) = "\"
- TSTRING006(1) = "│"
- TSTRING006(2) = "/"
- TSTRING006(3) = "─"
- STRING003 = "YES"
- STRING004 = "NO"
- PrintLn "@X08[@X07PIE@X08] @X0F/ @X07User Lister By Main Stream"
- PrintLn "@X8F■@X07 Please Wait While Compiling List @X07[ @X0F%@X07]"
- For INTEGER001 = 1 To 10000
- GetAltUser INTEGER001
- If (STRING017 == "NO") STRING018 = "N/A"
- If (STRING017 == "YES") STRING018 = String(U_Sec)
- If ((INTEGER001 * 100) / STRING014 < 10) AnsiPos 39, 2
- If ((INTEGER001 * 100) / STRING014 >= 10) Then
- AnsiPos 38, 2
- Else
- If ((INTEGER001 * 100) / STRING014 == 100) AnsiPos 37, 2
- Endif
- Print (INTEGER001 * 100) / STRING014
- Inc INTEGER004
- If (CurUser() == -1) Break
- FPut 1, Left("@X08│ ", 6)
- FPut 1, Left("@X0F", 4)
- FPut 1, Left(Mixed(U_Name()), 25)
- FPut 1, Left("@X08 │ ", 7)
- FPut 1, Left("@X07", 4)
- FPut 1, Left(U_City, 24)
- FPut 1, Left("@X08 │ ", 7)
- FPut 1, Left("@X08", 4)
- FPut 1, Left(STRING018, 3)
- FPut 1, Left(" │@X07 ", 7)
- FPut 1, Left("@X0F", 4)
- FPut 1, Left(U_LDate(), 8)
- FPutLn 1, Left("@X08 │", 6)
- Next
- FPutLn 1, "END"
- FClose 1
- STRING014 = I2S(INTEGER001 - 1, 10)
- Cls
- TSTRING008(0) = ReadLine(PPEPath() + "TOP.PCB", 1)
- TSTRING008(1) = ReadLine(PPEPath() + "TOP.PCB", 2)
- TSTRING008(2) = ReadLine(PPEPath() + "TOP.PCB", 3)
- TSTRING009(0) = ReadLine(PPEPath() + "BOT.PCB", 1)
- TSTRING009(1) = ReadLine(PPEPath() + "BOT.PCB", 2)
- TSTRING009(2) = ReadLine(PPEPath() + "BOT.PCB", 3)
- For INTEGER001 = 0 To 2
- AnsiPos 1, INTEGER001 + 1
- Print TSTRING008(INTEGER001)
- Next
- For INTEGER001 = 0 To 2
- AnsiPos 1, 21 + INTEGER001
- Print TSTRING009(INTEGER001)
- Next
- INTEGER002 = 1
- :LABEL001
- STRING003 = "YES"
- For INTEGER001 = 1 To 17
- TSTRING001(INTEGER001) = ReadLine(STRING010, INTEGER001 + INTEGER002 - 1)
- If (TSTRING001(INTEGER001) == "END") STRING003 = "NO"
- If (INTEGER002 <> 1) STRING004 = "YES"
- If (INTEGER002 == 1) STRING004 = "NO"
- If (TSTRING001(INTEGER001) == "END") Then
- INTEGER005 = INTEGER001 - 1
- TSTRING001(INTEGER001) = "└─@X07─@X0F────────────────────────@X07E@X0F─@X07N@X0F─@X07D@X0F───@X07O@X0F─@X07F@X0F───@X07L@X0F─@X07i@X0F─@X07S@X0F─@X07T@X0F──────────────────────@X07─@X08─┘"
- TSTRING001(INTEGER001 + 1) = " @X0F─@X07─@X08[@X0FTotal Users : " + STRING014 + "@X08]@X07─@X0F─ "
- For INTEGER004 = INTEGER001 + 2 To 17
- TSTRING001(INTEGER004) = " "
- Next
- INTEGER001 = 16
- Break
- Endif
- Next
- INTEGER003 = 4
- For INTEGER001 = 1 To 17
- AnsiPos 1, INTEGER003
- Print " " + TSTRING001(INTEGER001)
- Inc INTEGER003
- Next
- While (Upper(STRING002) <> "Q") Do
- STRING002 = Inkey()
- If ((STRING002 == "DOWN") && (STRING003 <> "NO")) Then
- INTEGER002 = INTEGER002 + 17
- Goto LABEL001
- Endif
- If ((STRING002 == "UP") && (STRING004 <> "NO")) Then
- INTEGER002 = INTEGER002 - 17
- Goto LABEL001
- Endif
- If (Upper(STRING002) == "L") Then
- AnsiPos 1, 22
- Print ReadLine(PPEPath() + "user.cfg", 5)
- PROC001()
- Endif
- If (Upper(STRING002) == "S") Then
- PROC006()
- Goto LABEL001
- Endif
- If (Upper(STRING002) == "Q") Then
- WrUNet PcbNode(), "Q", UN_Name(), UN_City(), "Browsing Arround", " "
- Print "@X0F"
- Cls
- Endif
- EndWhile
-
- EndProc
-
-
- ;------------------------------------------------------------------------------
-
- Procedure PROC001()
-
- String STRING019
- String STRING020
- String STRING021
- Integer INTEGER007
- Integer INTEGER008
- Integer INTEGER009
- Integer INTEGER010
-
- STRING020 = ReadLine(PPEPath() + "user.cfg", 7)
- STRING019 = "@X0F"
- INTEGER007 = 4
- INTEGER008 = 4
- INTEGER010 = 1
- AnsiPos INTEGER007, INTEGER008
- Print STRING020 + StripAtx(TSTRING001(1))
- While (STRING021 <> Chr(27)) Do
- If (STRING003 == "YES") If ((STRING021 == "DOWN") && (INTEGER010 < 17)) INTEGER010 = INTEGER010 + 1
- If (STRING003 == "NO") If ((STRING021 == "DOWN") && (INTEGER010 < INTEGER005)) INTEGER010 = INTEGER010 + 1
- If ((STRING021 == "UP") && (INTEGER010 > 1)) INTEGER010 = INTEGER010 - 1
- If (INTEGER007 - INTEGER009 + INTEGER010 <> INTEGER010) Then
- If (STRING021 == "DOWN") Then
- AnsiPos INTEGER007, INTEGER008 - 1 + INTEGER010 - 1
- Print STRING019 + TSTRING001(INTEGER010 - 1)
- AnsiPos INTEGER007, INTEGER008 - 1 + INTEGER010
- Print STRING020 + StripAtx(TSTRING001(INTEGER010))
- INTEGER009 = INTEGER010 + INTEGER007
- Endif
- If (STRING021 == "UP") Then
- AnsiPos INTEGER007, INTEGER008 + INTEGER010
- Print STRING019 + TSTRING001(INTEGER010 + 1)
- AnsiPos INTEGER007, INTEGER008 + INTEGER010 - 1
- Print STRING020 + StripAtx(TSTRING001(INTEGER010))
- INTEGER009 = INTEGER010 + INTEGER007
- Endif
- Endif
- STRING021 = Inkey()
- INTEGER009 = INTEGER007 + INTEGER010
- If (STRING021 == Chr(13)) Then
- AnsiPos 1, 1
- For INTEGER001 = 1 To 23
- TSTRING005(INTEGER001) = ScrText(1, INTEGER001, 79, 1)
- Next
- STRING012 = ""
- If (STRING011 == "NO") GetAltUser INTEGER002 + INTEGER010 - 1
- If (STRING011 == "YES") Then
- AnsiPos 1, 22
- Print ReadLine(PPEPath() + "user.cfg", 6)
- STRING013 = ScrText(6, INTEGER010 + INTEGER008 - 1, 24, 1)
- STRING013 = StripAtx(STRING013)
- For INTEGER001 = 1 To Len(STRING013)
- STRING012 = STRING012 + Mid(STRING013, INTEGER001, 1)
- If ((Mid(STRING013, INTEGER001 + 1, 1) == " ") && (Mid(STRING013, INTEGER001 + 2, 1) == " ")) Break
- Next
- For INTEGER001 = 1 To 10000
- GetAltUser INTEGER001
- If (U_Name() == Upper(STRING012)) Break
- If (CurUser() == -1) Goto LABEL002
- Next
- Endif
- Print "@X0F"
- Cls
- PROC004()
- Cls
- For INTEGER001 = 1 To 23
- Print TSTRING005(INTEGER001)
- AnsiPos 1, GetY() + 1
- Next
- Endif
- EndWhile
- :LABEL002
- AnsiPos INTEGER007, INTEGER008 + INTEGER010 - 1
- Print TSTRING001(INTEGER010)
- AnsiPos 1, 22
- Print TSTRING009(1)
-
- EndProc
-
- INTEGER011 = GetX()
- INTEGER012 = GetY()
- For INTEGER013 = 0 To 2
- AnsiPos INTEGER011, INTEGER012
- Print TSTRING007(INTEGER013) + ""
- Delay 2
- Next
-
- EndProc
-
-
- ;------------------------------------------------------------------------------
-
- Procedure PROC006()
-
- String STRING022
- String STRING023
- String TSTRING024(2)
- String STRING025
- String STRING026
- String TSTRING027(3)
- Integer INTEGER014
- Integer INTEGER015
- Integer INTEGER016
- Integer INTEGER017
- Integer INTEGER018
- Integer INTEGER019
- Integer INTEGER020
-
- FClose 2
- STRING011 = "YES"
- INTEGER014 = 0
- INTEGER015 = 0
- TSTRING027(0) = "─"
- TSTRING027(1) = "\"
- TSTRING027(2) = "│"
- TSTRING027(3) = "/"
- TSTRING024(0) = ReadLine(PPEPath() + "user.cfg", 4)
- AnsiPos 1, 20
- INTEGER016 = 21
- INTEGER019 = ReadLine(PPEPath() + "user.cfg", 3)
- AnsiPos 1, 22
- Print ReadLine(PPEPath() + "user.cfg", 1)
- AnsiPos ReadLine(PPEPath() + "user.cfg", 2), 22
- While (STRING022 <> Chr(13)) Do
- STRING022 = Inkey()
- If (Len(STRING022) == 1) Then
- If ((STRING022 == Chr(8)) && (STRING023 <> "")) Then
- STRING023 = Left(STRING023, Len(STRING023) - 1)
- Print Chr(8) + TSTRING024(0) + " "
- AnsiPos GetX() - 1, GetY()
- Continue
- Endif
- If ((Len(STRING023) <> INTEGER019) && (STRING022 <> Chr(8))) Then
- If (STRING022 == Chr(32)) STRING022 = " "
- If (STRING022 <> Chr(13)) STRING023 = STRING023 + STRING022
- If (STRING022 == Chr(32)) Print TSTRING024(0) + " "
- If (STRING022 <> Chr(32)) Print TSTRING024(0) + STRING022
- Endif
- Endif
- EndWhile
- STRING025 = ""
- STRING026 = ""
- INTEGER020 = 1
- If (Len(STRING023) <> 0) Then
- STRING010 = PPEPath() + "search.dat"
- FCreate 2, PPEPath() + "search.dat", 1, 0
- FSeek 2, 0, 0
- For INTEGER018 = 1 To 10000
- STRING025 = ""
- STRING026 = ""
- If ((INTEGER018 * 100) / STRING014 < 10) AnsiPos 75, 22
- If ((INTEGER018 * 100) / STRING014 >= 10) Then
- AnsiPos 74, 22
- Goto LABEL003
- Endif
- If ((INTEGER018 * 100) / STRING014 == 100) AnsiPos 73, 22
- :LABEL003
- Print TSTRING024(0)
- Print (INTEGER018 * 100) / STRING014
- Print "%"
- Inc INTEGER020
- GetAltUser INTEGER018
- If (STRING017 == "NO") STRING018 = "N/A"
- If (STRING017 == "YES") STRING018 = String(U_Sec)
- If (CurUser() == -1) Break
- INTEGER017 = 1
- While (Mid(U_Name(), INTEGER017, 1) <> Chr(32)) Do
- STRING025 = STRING025 + Mid(U_Name(), INTEGER017, 1)
- Inc INTEGER017
- EndWhile
- Inc INTEGER017
- While (Mid(U_Name(), INTEGER017, 1) <> Chr(32)) Do
- STRING026 = STRING026 + Mid(U_Name(), INTEGER017, 1)
- Inc INTEGER017
- EndWhile
- If (((STRING025 == Upper(STRING023)) || (STRING026 == Upper(STRING023))) || (STRING025 + " " + STRING026 == Upper(STRING023))) Then
- Inc INTEGER014
- INTEGER015 = 1
- FPut 2, Left("@X08│ ", 6)
- FPut 2, Left("@X0F", 4)
- FPut 2, Left(Mixed(U_Name()), 25)
- FPut 2, Left("@X08 │ ", 7)
- FPut 2, Left("@X07", 4)
- FPut 2, Left(U_City, 24)
- FPut 2, Left("@X08 │ ", 7)
- FPut 2, Left("@X08", 4)
- FPut 2, Left(STRING018, 3)
- FPut 2, Left(" │@X07 ", 7)
- FPut 2, Left("@X0F", 4)
- FPut 2, Left(U_LDate(), 8)
- FPutLn 2, Left("@X08 │", 6)
- Endif
- Next
- If (INTEGER015 == 0) Then
- AnsiPos 1, 22
- Print ReadLine(PPEPath() + "user.cfg", 8)
- STRING011 = "NO"
- STRING010 = PPEPath() + "user.dat"
- FClose 2
- Delay 20
- Goto LABEL004
- Endif
- AnsiPos 1, 22
- Print TSTRING009(1)
- FPutLn 2, "END"
- FClose 2
- AnsiPos 70, 22
- INTEGER002 = 1
- Endif
- :LABEL004
- AnsiPos 1, 22
- Print TSTRING009(1)
-
- EndProc
-
-
- ;------------------------------------------------------------------------------
-
- Procedure PROC004()
-
- BigStr BIGSTR001
- Integer INTEGER021
-
- BIGSTR001 = PPEPath() + "info.pcb"
- STRING016 = ReadLine(BIGSTR001, INTEGER021)
- INTEGER021 = 1
- While (STRING016 <> "[EOF]") Do
- STRING016 = ReadLine(BIGSTR001, INTEGER021)
- If (STRING016 <> "[EOF]") PROC005()
- If (STRING016 == "[EOF]") Break
- Inc INTEGER021
- EndWhile
- Wait
-
- EndProc
-
-
- EndProc
-
-
- ;------------------------------------------------------------------------------
-
- Procedure PROC005()
-
- STRING016 = ReplaceStr(STRING016, "%USER%", U_Name())
- STRING016 = ReplaceStr(STRING016, "%CITY%", U_City)
- STRING016 = ReplaceStr(STRING016, "%SEC%", U_Sec)
- STRING016 = ReplaceStr(STRING016, "%BUL%", U_Bul())
- STRING016 = ReplaceStr(STRING016, "%BDL%", U_Bdl())
- STRING016 = ReplaceStr(STRING016, "%FILEDN%", U_Fdl())
- STRING016 = ReplaceStr(STRING016, "%FILEUP%", U_Ful())
- STRING016 = ReplaceStr(STRING016, "%NUMTIMES%", U_Logons())
- STRING016 = ReplaceStr(STRING016, "%LASTTIME%", U_LTime())
- STRING016 = ReplaceStr(STRING016, "%LASTDATE%", U_LDate())
- PrintLn STRING016
-
- EndProc
-
-
- ;------------------------------------------------------------------------------
- ;
- ; Usage report (before postprocessing)
- ;
- ; ■ Statements used :
- ;
- ; 1 End
- ; 5 Cls
- ; 1 Wait
- ; 69 Goto
- ; 125 Let
- ; 27 Print
- ; 3 PrintLn
- ; 65 If
- ; 3 FCreate
- ; 4 FClose
- ; 24 FPut
- ; 4 FPutLn
- ; 2 Delete
- ; 2 Delay
- ; 8 Inc
- ; 2 WrUNet
- ; 29 AnsiPos
- ; 1 FSeek
- ; 4 GetAltUser
- ; 7 EndProc
- ;
- ;
- ; ■ Functions used :
- ;
- ; 3 -
- ; 8 *
- ; 9 /
- ; 78 +
- ; 16 -
- ; 39 ==
- ; 17 <>
- ; 16 <
- ; 12 <=
- ; 1 >
- ; 26 >=
- ; 37 !
- ; 32 &&
- ; 14 ||
- ; 6 Len(
- ; 9 Upper()
- ; 7 Mid()
- ; 27 Left()
- ; 12 Chr()
- ; 8 U_Name()
- ; 3 U_LDate()
- ; 1 U_LTime()
- ; 1 U_Logons()
- ; 1 U_Ful()
- ; 1 U_Fdl()
- ; 1 U_Bdl()
- ; 1 U_Bul()
- ; 4 StripAtx()
- ; 3 Inkey()
- ; 2 String()
- ; 1 PCBDat()
- ; 24 PPEPath()
- ; 2 PcbNode()
- ; 19 ReadLine()
- ; 2 UN_Name()
- ; 2 UN_City()
- ; 1 I2S()
- ; 2 GetX()
- ; 3 GetY()
- ; 1 FileInf()
- ; 2 ScrText()
- ; 10 ReplaceStr()
- ; 2 Mixed()
- ; 3 CurUser()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Analysis flags : Rd
- ;
- ; R - Read user ■ 5
- ; User records are read, this may signify that someone wants to get
- ; various informations about a user (for example his password), but
- ; this may also be normal for a program accessing user records (for
- ; example a User Editor)
- ; ■ Search for : GETALTUSER
- ;
- ; d - Access PCBOARD.DAT ■ 2
- ; Program gets the full pathname to PCBOARD.DAT, this may be usefull
- ; for many PPE so they can find various informations on the system
- ; (system paths, max number of lines in messages, ...) but it may also
- ; be a way to gather vital informations.
- ; ■ Search for : PCBDAT()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Postprocessing report
- ;
- ; 12 For/Next
- ; 6 While/EndWhile
- ; 19 If/Then or If/Then/Else
- ; 0 Select Case
- ;
- ;------------------------------------------------------------------------------
- ; AEGiS Corp - Break the routines, code against the machines!
- ;------------------------------------------------------------------------------
-