home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
URT_TP52.ZIP
/
TOP.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-02-19
|
11KB
|
588 lines
;------------------------------------------------------------------------------
; .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 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
String STRING001
String TSTRING002(5)
String STRING003
String STRING004
String TSTRING005(5)
String TSTRING006(5)
String TSTRING007(5)
String TSTRING008(5)
String TSTRING009(5)
String STRING010
String TSTRING011(5)
String TSTRING012(5)
String TSTRING013(5)
String TSTRING014(5)
String TSTRING015(5)
String TSTRING016(5)
String TSTRING017(5)
String TSTRING018(5)
String TSTRING019(5)
String STRING020
String STRING021
String STRING022
;------------------------------------------------------------------------------
STRING022 = "@X0FT" + "o" + "p" + " " + "S" + "y" + "s" + "t" + "e" + "m" + " " + "I" + "n" + "f" + "o" + " " + "@X01(" + "@X09c" + "@X03)" + " @X0F" + "1" + "9" + "9" + "4" + " " + "O" + "v" + "e" + "r" + "t" + "h" + "r" + "o" + "w" + "n" + " " + "R" + "u" + "l" + "e" + "r" + " @X07" + "°" + "@X0F" + "U" + "A" + "R" + "T" + "@X07"
Print "@POFF@"
FOpen 2, PPEPath() + "TOP.CFG", 2, 0
FGet 2, STRING020
FGet 2, STRING021
FGet 2, STRING001
FClose 2
STRING001 = Upper(STRING001)
While (STRING010 <> Chr(27)) Do
INTEGER004 = 1
For INTEGER003 = 1 To 5
TSTRING007(INTEGER003) = 0
TSTRING008(INTEGER003) = 0
TSTRING009(INTEGER003) = 0
TSTRING011(INTEGER003) = 0
TSTRING012(INTEGER003) = STRING020
TSTRING013(INTEGER003) = STRING021
TSTRING014(INTEGER003) = 0
TSTRING015(INTEGER003) = STRING020
TSTRING016(INTEGER003) = STRING021
TSTRING017(INTEGER003) = 0
TSTRING018(INTEGER003) = STRING020
TSTRING019(INTEGER003) = STRING021
Next
STRING010 = ""
DispFile PPEPath() + "TOP.ANS", 0
While ((STRING010 <> Chr(13)) && (STRING010 <> Chr(27))) Do
STRING010 = ""
STRING010 = Upper(Inkey())
If ((STRING010 == "UP") || (STRING010 == "A")) Then
If (INTEGER004 == 2) Then
AnsiPos 29, 11
PrintLn "@X78 Top Major DN/L'ers @X07"
AnsiPos 29, 10
PrintLn "@X1F Top Major UP/L'ers @X07"
INTEGER004 = 1
Goto LABEL001
Endif
If (INTEGER004 == 3) Then
AnsiPos 29, 12
PrintLn "@X78 Top Major Callers! @X07"
AnsiPos 29, 11
PrintLn "@X1F Top Major DN/L'ers @X07"
INTEGER004 = 2
Endif
Endif
:LABEL001
If ((STRING010 == "DOWN") || (STRING010 == "Z")) Then
If (INTEGER004 == 1) Then
AnsiPos 29, 10
PrintLn "@X78 Top Major UP/L'ers @X07"
AnsiPos 29, 11
PrintLn "@X1F Top Major DN/L'ers @X07"
INTEGER004 = 2
Continue
Endif
If (INTEGER004 == 2) Then
AnsiPos 29, 11
PrintLn "@X78 Top Major DN/L'ers @X07"
AnsiPos 29, 12
PrintLn "@X1F Top Major Callers! @X07"
INTEGER004 = 3
Endif
Endif
EndWhile
If ((INTEGER004 == 1) && (STRING010 <> Chr(27))) Then
Cls
PrintLn "@X0F▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07▄"
PrintLn "@X7F▒@X70 TOP 5 PPE [UART] @X08▓@X07"
PrintLn "@X07▀@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
Print "@X07Please wait, Gathering Data..."
Gosub LABEL004
Endif
If ((INTEGER004 == 2) && (STRING010 <> Chr(27))) Then
Cls
PrintLn "@X0F▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07▄"
PrintLn "@X7F▒@X70 TOP 5 PPE [UART] @X08▓@X07"
PrintLn "@X07▀@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
Print "@X07Please wait, Gathering Data..."
Gosub LABEL002
Endif
If ((INTEGER004 == 3) && (STRING010 <> Chr(27))) Then
Cls
PrintLn "@X0F▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07▄"
PrintLn "@X7F▒@X70 TOP 5 PPE [UART] @X08▓@X07"
PrintLn "@X07▀@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
Print "@X07Please wait, Gathering Data..."
Gosub LABEL006
Endif
Cls
EndWhile
End
:LABEL002
INTEGER003 = 1
INTEGER001 = 1
GetAltUser INTEGER003
While ((CurUser() > 0) || (INTEGER003 == 1)) Do
If (INTEGER001 == 6) INTEGER001 = 1
If ((INTEGER003 <> 1) || (STRING001 == "Y")) Then
Gosub LABEL008
If (U_Bdl() > TSTRING011(1)) Then
TSTRING011(5) = TSTRING011(4)
TSTRING012(5) = TSTRING012(4)
TSTRING013(5) = TSTRING013(4)
TSTRING007(5) = TSTRING007(4)
TSTRING011(4) = TSTRING011(3)
TSTRING012(4) = TSTRING012(3)
TSTRING013(4) = TSTRING013(3)
TSTRING007(4) = TSTRING007(3)
TSTRING011(3) = TSTRING011(2)
TSTRING012(3) = TSTRING012(2)
TSTRING013(3) = TSTRING013(2)
TSTRING007(3) = TSTRING007(2)
TSTRING011(2) = TSTRING011(1)
TSTRING012(2) = TSTRING012(1)
TSTRING013(2) = TSTRING013(1)
TSTRING007(2) = TSTRING007(1)
TSTRING011(1) = U_Bdl()
TSTRING012(1) = Mixed(U_Name())
TSTRING013(1) = U_City
TSTRING007(1) = TSTRING002(INTEGER001)
Goto LABEL003
Endif
If (U_Bdl() > TSTRING011(2)) Then
TSTRING011(5) = TSTRING011(4)
TSTRING012(5) = TSTRING012(4)
TSTRING013(5) = TSTRING013(4)
TSTRING007(5) = TSTRING007(4)
TSTRING011(4) = TSTRING011(3)
TSTRING012(4) = TSTRING012(3)
TSTRING013(4) = TSTRING013(3)
TSTRING007(4) = TSTRING007(3)
TSTRING011(3) = TSTRING011(2)
TSTRING012(3) = TSTRING012(2)
TSTRING013(3) = TSTRING013(2)
TSTRING007(3) = TSTRING007(2)
TSTRING011(2) = U_Bdl()
TSTRING012(2) = Mixed(U_Name())
TSTRING013(2) = U_City
TSTRING007(2) = TSTRING002(INTEGER001)
Goto LABEL003
Endif
If (U_Bdl() > TSTRING011(3)) Then
TSTRING011(5) = TSTRING011(4)
TSTRING012(5) = TSTRING012(4)
TSTRING013(5) = TSTRING013(4)
TSTRING007(5) = TSTRING007(4)
TSTRING011(4) = TSTRING011(3)
TSTRING012(4) = TSTRING012(3)
TSTRING013(4) = TSTRING013(3)
TSTRING007(4) = TSTRING007(3)
TSTRING011(3) = U_Bdl()
TSTRING012(3) = Mixed(U_Name())
TSTRING013(3) = U_City
TSTRING007(3) = TSTRING002(INTEGER001)
Goto LABEL003
Endif
If (U_Bdl() > TSTRING011(4)) Then
TSTRING011(5) = TSTRING011(4)
TSTRING012(5) = TSTRING012(4)
TSTRING013(5) = TSTRING013(4)
TSTRING007(5) = TSTRING007(4)
TSTRING011(4) = U_Bdl()
TSTRING012(4) = Mixed(U_Name())
TSTRING013(4) = U_City
TSTRING007(4) = TSTRING002(INTEGER001)
Goto LABEL003
Endif
If (U_Bdl() > TSTRING011(5)) Then
TSTRING011(5) = U_Bdl()
TSTRING012(5) = Mixed(U_Name())
TSTRING013(5) = U_City
TSTRING007(5) = TSTRING002(INTEGER001)
Endif
Endif
:LABEL003
Inc INTEGER003
Inc INTEGER001
GetAltUser INTEGER003
EndWhile
DispFile PPEPath() + "TOPDL.ANS", 0
INTEGER002 = GetY()
AnsiPos 15, 2
PrintLn STRING022
For INTEGER003 = 1 To 5
AnsiPos 3, 6 + INTEGER003
PrintLn TSTRING012(INTEGER003)
AnsiPos 31, 6 + INTEGER003
PrintLn TSTRING013(INTEGER003)
AnsiPos 78 - Len(TSTRING007(INTEGER003)), 6 + INTEGER003
PrintLn TSTRING007(INTEGER003)
Next
AnsiPos 1, INTEGER002
Wait
Return
:LABEL004
INTEGER003 = 1
INTEGER001 = 1
GetAltUser INTEGER003
While ((CurUser() > 0) || (INTEGER003 == 1)) Do
If (INTEGER001 == 6) INTEGER001 = 1
If ((INTEGER003 <> 1) || (STRING001 == "Y")) Then
Gosub LABEL009
If (U_Bul() > TSTRING014(1)) Then
TSTRING014(5) = TSTRING014(4)
TSTRING015(5) = TSTRING015(4)
TSTRING016(5) = TSTRING016(4)
TSTRING008(5) = TSTRING008(4)
TSTRING014(4) = TSTRING014(3)
TSTRING015(4) = TSTRING015(3)
TSTRING016(4) = TSTRING016(3)
TSTRING008(4) = TSTRING008(3)
TSTRING014(3) = TSTRING014(2)
TSTRING015(3) = TSTRING015(2)
TSTRING016(3) = TSTRING016(2)
TSTRING008(3) = TSTRING008(2)
TSTRING014(2) = TSTRING014(1)
TSTRING015(2) = TSTRING015(1)
TSTRING016(2) = TSTRING016(1)
TSTRING008(2) = TSTRING008(1)
TSTRING014(1) = U_Bul()
TSTRING015(1) = Mixed(U_Name())
TSTRING016(1) = U_City
TSTRING008(1) = TSTRING005(INTEGER001)
Goto LABEL005
Endif
If (U_Bul() > TSTRING014(2)) Then
TSTRING014(5) = TSTRING014(4)
TSTRING015(5) = TSTRING015(4)
TSTRING016(5) = TSTRING016(4)
TSTRING008(5) = TSTRING008(4)
TSTRING014(4) = TSTRING014(3)
TSTRING015(4) = TSTRING015(3)
TSTRING016(4) = TSTRING016(3)
TSTRING008(4) = TSTRING008(3)
TSTRING014(3) = TSTRING014(2)
TSTRING015(3) = TSTRING015(2)
TSTRING016(3) = TSTRING016(2)
TSTRING008(3) = TSTRING008(2)
TSTRING014(2) = U_Bul()
TSTRING015(2) = Mixed(U_Name())
TSTRING016(2) = U_City
TSTRING008(2) = TSTRING005(INTEGER001)
Goto LABEL005
Endif
If (U_Bul() > TSTRING014(3)) Then
TSTRING014(5) = TSTRING014(4)
TSTRING015(5) = TSTRING015(4)
TSTRING016(5) = TSTRING016(4)
TSTRING008(5) = TSTRING008(4)
TSTRING014(4) = TSTRING014(3)
TSTRING015(4) = TSTRING015(3)
TSTRING016(4) = TSTRING016(3)
TSTRING008(4) = TSTRING008(3)
TSTRING014(3) = U_Bul()
TSTRING015(3) = Mixed(U_Name())
TSTRING016(3) = U_City
TSTRING008(3) = TSTRING005(INTEGER001)
Goto LABEL005
Endif
If (U_Bul() > TSTRING014(4)) Then
TSTRING014(5) = TSTRING014(4)
TSTRING015(5) = TSTRING015(4)
TSTRING016(5) = TSTRING016(4)
TSTRING008(5) = TSTRING008(4)
TSTRING014(4) = U_Bul()
TSTRING015(4) = Mixed(U_Name())
TSTRING016(4) = U_City
TSTRING008(4) = TSTRING005(INTEGER001)
Goto LABEL005
Endif
If (U_Bul() > TSTRING014(5)) Then
TSTRING014(5) = U_Bul()
TSTRING015(5) = Mixed(U_Name())
TSTRING016(5) = U_City
TSTRING008(5) = TSTRING005(INTEGER001)
Endif
Endif
:LABEL005
Inc INTEGER003
Inc INTEGER001
GetAltUser INTEGER003
EndWhile
DispFile PPEPath() + "TOPUL.ANS", 0
INTEGER002 = GetY()
AnsiPos 15, 2
PrintLn STRING022
For INTEGER003 = 1 To 5
AnsiPos 3, 6 + INTEGER003
PrintLn TSTRING015(INTEGER003)
AnsiPos 31, 6 + INTEGER003
PrintLn TSTRING016(INTEGER003)
AnsiPos 78 - Len(TSTRING008(INTEGER003)), 6 + INTEGER003
PrintLn TSTRING008(INTEGER003)
Next
AnsiPos 1, INTEGER002
Wait
Return
:LABEL006
INTEGER003 = 1
INTEGER001 = INTEGER003
GetAltUser INTEGER003
While ((CurUser() > 0) || (INTEGER003 == 1)) Do
If (INTEGER001 == 6) INTEGER001 = 1
If ((INTEGER003 <> 1) || (STRING001 == "Y")) Then
Gosub LABEL010
If (U_Logons() > TSTRING017(1)) Then
TSTRING017(5) = TSTRING017(4)
TSTRING018(5) = TSTRING018(4)
TSTRING019(5) = TSTRING019(4)
TSTRING009(5) = TSTRING009(4)
TSTRING017(4) = TSTRING017(3)
TSTRING018(4) = TSTRING018(3)
TSTRING019(4) = TSTRING019(3)
TSTRING009(4) = TSTRING009(3)
TSTRING017(3) = TSTRING017(2)
TSTRING018(3) = TSTRING018(2)
TSTRING019(3) = TSTRING019(2)
TSTRING009(3) = TSTRING009(2)
TSTRING017(2) = TSTRING017(1)
TSTRING018(2) = TSTRING018(1)
TSTRING019(2) = TSTRING019(1)
TSTRING009(2) = TSTRING009(1)
TSTRING017(1) = U_Logons()
TSTRING018(1) = Mixed(U_Name())
TSTRING019(1) = U_City
TSTRING009(1) = TSTRING006(INTEGER001)
Goto LABEL007
Endif
If (U_Logons() > TSTRING017(2)) Then
TSTRING017(5) = TSTRING017(4)
TSTRING018(5) = TSTRING018(4)
TSTRING019(5) = TSTRING019(4)
TSTRING009(5) = TSTRING009(4)
TSTRING017(4) = TSTRING017(3)
TSTRING018(4) = TSTRING018(3)
TSTRING019(4) = TSTRING019(3)
TSTRING009(4) = TSTRING009(3)
TSTRING017(3) = TSTRING017(2)
TSTRING018(3) = TSTRING018(2)
TSTRING019(3) = TSTRING019(2)
TSTRING009(3) = TSTRING009(2)
TSTRING017(2) = U_Logons()
TSTRING018(2) = Mixed(U_Name())
TSTRING019(2) = U_City
TSTRING009(2) = TSTRING006(INTEGER001)
Goto LABEL007
Endif
If (U_Logons() > TSTRING017(3)) Then
TSTRING017(5) = TSTRING017(4)
TSTRING018(5) = TSTRING018(4)
TSTRING019(5) = TSTRING019(4)
TSTRING009(5) = TSTRING009(4)
TSTRING017(4) = TSTRING017(3)
TSTRING018(4) = TSTRING018(3)
TSTRING019(4) = TSTRING019(3)
TSTRING009(4) = TSTRING009(3)
TSTRING017(3) = U_Logons()
TSTRING018(3) = Mixed(U_Name())
TSTRING019(3) = U_City
TSTRING009(3) = TSTRING006(INTEGER001)
Goto LABEL007
Endif
If (U_Logons() > TSTRING017(4)) Then
TSTRING017(5) = TSTRING017(4)
TSTRING018(5) = TSTRING018(4)
TSTRING019(5) = TSTRING019(4)
TSTRING009(5) = TSTRING009(4)
TSTRING017(4) = U_Logons()
TSTRING018(4) = Mixed(U_Name())
TSTRING019(4) = U_City
TSTRING009(4) = TSTRING006(INTEGER001)
Goto LABEL007
Endif
If (U_Logons() > TSTRING017(5)) Then
TSTRING017(5) = U_Logons()
TSTRING018(5) = Mixed(U_Name())
TSTRING019(5) = U_City
TSTRING009(5) = TSTRING006(INTEGER001)
Endif
Endif
:LABEL007
Inc INTEGER003
Inc INTEGER001
GetAltUser INTEGER003
EndWhile
DispFile PPEPath() + "TOPCALL.ANS", 0
INTEGER002 = GetY()
AnsiPos 15, 2
PrintLn STRING022
For INTEGER003 = 1 To 5
AnsiPos 3, 6 + INTEGER003
PrintLn TSTRING018(INTEGER003)
AnsiPos 31, 6 + INTEGER003
PrintLn TSTRING019(INTEGER003)
AnsiPos 78 - Len(TSTRING009(INTEGER003)), 6 + INTEGER003
PrintLn TSTRING009(INTEGER003)
Next
AnsiPos 1, INTEGER002
Wait
Return
:LABEL008
TSTRING002(INTEGER001) = I2S(U_Bdl(), 10)
STRING003 = TSTRING002(INTEGER001)
TSTRING002(INTEGER001) = ""
If (Len(STRING003) > 3) Then
BOOLEAN001 = 1
Else
BOOLEAN001 = 0
TSTRING002(INTEGER001) = STRING003
Endif
While (BOOLEAN001) Do
STRING004 = Right(STRING003, 3)
TSTRING002(INTEGER001) = "," + STRING004 + TSTRING002(INTEGER001)
STRING003 = Left(STRING003, Len(STRING003) - 3)
If (Len(STRING003) < 4) Then
BOOLEAN001 = 0
TSTRING002(INTEGER001) = STRING003 + TSTRING002(INTEGER001)
Endif
EndWhile
Return
:LABEL009
TSTRING005(INTEGER001) = I2S(U_Bul(), 10)
STRING003 = TSTRING005(INTEGER001)
TSTRING005(INTEGER001) = ""
If (Len(STRING003) > 3) Then
BOOLEAN001 = 1
Else
BOOLEAN001 = 0
TSTRING005(INTEGER001) = STRING003
Endif
While (BOOLEAN001) Do
STRING004 = Right(STRING003, 3)
TSTRING005(INTEGER001) = "," + STRING004 + TSTRING005(INTEGER001)
STRING003 = Left(STRING003, Len(STRING003) - 3)
If (Len(STRING003) < 4) Then
BOOLEAN001 = 0
TSTRING005(INTEGER001) = STRING003 + TSTRING005(INTEGER001)
Endif
EndWhile
Return
:LABEL010
TSTRING006(INTEGER001) = I2S(U_Logons(), 10)
STRING003 = TSTRING006(INTEGER001)
TSTRING006(INTEGER001) = ""
If (Len(STRING003) > 3) Then
BOOLEAN001 = 1
Else
BOOLEAN001 = 0
TSTRING006(INTEGER001) = STRING003
Endif
While (BOOLEAN001) Do
STRING004 = Right(STRING003, 3)
TSTRING006(INTEGER001) = "," + STRING004 + TSTRING006(INTEGER001)
STRING003 = Left(STRING003, Len(STRING003) - 3)
If (Len(STRING003) < 4) Then
BOOLEAN001 = 0
TSTRING006(INTEGER001) = STRING003 + TSTRING006(INTEGER001)
Endif
EndWhile
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 4 Cls
; 3 Wait
; 74 Goto
; 255 Let
; 4 Print
; 29 PrintLn
; 48 If
; 4 DispFile
; 1 FOpen
; 1 FClose
; 3 FGet
; 6 Gosub
; 6 Return
; 6 Inc
; 23 AnsiPos
; 6 GetAltUser
;
;
; ■ Functions used :
;
; 75 +
; 6 -
; 20 ==
; 9 <>
; 7 <
; 4 <=
; 21 >
; 8 >=
; 45 !
; 12 &&
; 12 ||
; 12 Len(
; 2 Upper()
; 3 Left()
; 3 Right()
; 6 Chr()
; 15 U_Name()
; 11 U_Logons()
; 11 U_Bdl()
; 11 U_Bul()
; 1 Inkey()
; 5 PPEPath()
; 3 I2S()
; 3 GetY()
; 15 Mixed()
; 3 CurUser()
;
;------------------------------------------------------------------------------
;
; Analysis flags : R
;
; 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
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 4 For/Next
; 8 While/EndWhile
; 33 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------