home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
WP110.ZIP
/
WP.PPE
(
.txt
)
< prev
Wrap
PCBoard Programming Language Executable
|
1994-03-18
|
5KB
|
306 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
Integer INTEGER005
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String TSTRING008(21)
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
Time TIME001
;------------------------------------------------------------------------------
INTEGER003 = 0
STRING001 = "WHO Professional v1.10"
Log "■ " + STRING001, 0
If (Exist(PPEPath() + "wp.cfg")) Then
FOpen 1, PPEPath() + "wp.cfg", 0, 0
FGet 1, STRING006
FGet 1, STRING009
FGet 1, STRING010
FGet 1, STRING011
FGet 1, STRING012
FGet 1, STRING013
FGet 1, STRING014
FGet 1, STRING015
FGet 1, TSTRING008(1)
FGet 1, TSTRING008(2)
FGet 1, TSTRING008(3)
FGet 1, TSTRING008(4)
FGet 1, TSTRING008(5)
FGet 1, TSTRING008(6)
FGet 1, TSTRING008(7)
FGet 1, TSTRING008(8)
FGet 1, TSTRING008(9)
FGet 1, TSTRING008(10)
FGet 1, TSTRING008(11)
FGet 1, TSTRING008(12)
FGet 1, TSTRING008(13)
FGet 1, TSTRING008(14)
FGet 1, TSTRING008(15)
FGet 1, TSTRING008(16)
FGet 1, TSTRING008(17)
FGet 1, TSTRING008(18)
FGet 1, TSTRING008(19)
FGet 1, TSTRING008(20)
FGet 1, TSTRING008(21)
Else
PrintLn "@X0DConfiguration file WHO.CFG not found, aborting..."
Stop
Endif
STRING002 = TokenStr()
Tokenize STRING002
If (TokCount() == 1) Then
INTEGER003 = S2I(GetToken(), 10) * 3
Endif
For INTEGER002 = 1 To 21
TSTRING008(INTEGER002) = Trim(TSTRING008(INTEGER002), " ")
INTEGER004 = Len(TSTRING008(INTEGER002))
TSTRING008(INTEGER002) = Space(12 - INTEGER004 / 2) + TSTRING008(INTEGER002)
TSTRING008(INTEGER002) = TSTRING008(INTEGER002) + Space(25 - Len(TSTRING008(INTEGER002)))
If (Len(TSTRING008(INTEGER002)) > 25) Then
TSTRING008(INTEGER002) = Left(TSTRING008(INTEGER002), 25)
Endif
Next
BOOLEAN001 = 0
INTEGER001 = S2I(STRING006, 10)
If (Upper(STRING014) == "YES") Then
STRING003 = ReadLine(PCBDat(), 30)
Endif
KbdChkOff
:LABEL001
If (BOOLEAN001) Goto LABEL002
Cls
PrintLn "@X0F▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07"
PrintLn "@X77 @X74NODE ACTIVITY USERNAME LOCATION @X07"
PrintLn "@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
For INTEGER002 = 1 To INTEGER001
RdUNet INTEGER002
If (INTEGER002 > 99) Then
STRING005 = String(INTEGER002)
ElseIf (INTEGER002 > 9) Then
STRING005 = " " + String(INTEGER002)
Else
STRING005 = " " + String(INTEGER002)
Endif
Print STRING009, " ", STRING005, " ", STRING010
Select Case (UN_Stat())
Case " "
Print TSTRING008(1)
Case "A"
Print TSTRING008(2)
Case "B"
Print TSTRING008(3)
Case "C"
Print TSTRING008(4)
Case "D"
Print TSTRING008(5)
Case "E"
Print TSTRING008(6)
Case "F"
Print TSTRING008(7)
Case "G"
Print TSTRING008(8)
Case "L"
Print TSTRING008(9)
Case "M"
Print TSTRING008(10)
Case "N"
Print TSTRING008(11)
Case "O"
Print TSTRING008(12)
Case "P"
Print TSTRING008(13)
Case "R"
Print TSTRING008(14)
Case "S"
Print TSTRING008(15)
Case "T"
If (Left(UN_Oper(), 3) == "(U)") Then
Print TSTRING008(16)
Else
Print TSTRING008(17)
Endif
Case "U"
If (INTEGER002 == PcbNode()) Then
Print TSTRING008(2)
Else
Print TSTRING008(18)
Endif
Case "W"
Print TSTRING008(19)
Case "X"
Print TSTRING008(20)
Case Else
Print TSTRING008(21)
End Select
If (((UN_Stat() == " ") && (Upper(STRING014) == "YES")) && Exist(STRING003 + String(INTEGER002))) Then
TIME001 = FileInf(STRING003 + String(INTEGER002), 3)
INTEGER005 = Time() - TIME001
If (INTEGER005 < 0) Then
INTEGER005 = INTEGER005 + 86400
Endif
TIME001 = INTEGER005
STRING007 = "Idle for " + String(TIME001) + " hrs"
INTEGER004 = Len(STRING007)
STRING007 = Space(12 - INTEGER004 / 2) + STRING007
STRING007 = STRING007 + Space(24 - Len(STRING007))
Print STRING013, STRING007
Else
INTEGER004 = Len(UN_Name())
STRING007 = Space(12 - INTEGER004 / 2) + UN_Name()
STRING007 = STRING007 + Space(24 - Len(STRING007))
Print STRING011, STRING007
Endif
GetUser
If ((UN_Name() == Trim(U_Alias, " ")) && (Upper(STRING015) == "YES")) Then
INTEGER004 = Len(U_City)
STRING007 = Space(12 - INTEGER004 / 2) + U_City
STRING007 = STRING007 + Space(24 - Len(STRING007))
PrintLn STRING012, STRING007
Continue
Endif
INTEGER004 = Len(UN_City())
STRING007 = Space(12 - INTEGER004 / 2) + UN_City()
STRING007 = STRING007 + Space(24 - Len(STRING007))
PrintLn STRING012, STRING007
Next
INTEGER002 = 0
If (INTEGER003 > 0) Then
While ((INTEGER002 < INTEGER003) && !BOOLEAN001) Do
STRING004 = Inkey()
If (STRING004 <> "") Then
BOOLEAN001 = 1
Endif
Delay 6
Inc INTEGER002
EndWhile
Else
BOOLEAN001 = 1
Endif
Goto LABEL001
:LABEL002
PrintLn
PrintLn "@X08", "■ ", STRING001, " (Mike Paschen)"
KbdChkOn
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 1 Cls
; 67 Goto
; 40 Let
; 25 Print
; 8 PrintLn
; 36 If
; 1 FOpen
; 29 FGet
; 1 GetUser
; 1 Log
; 1 Delay
; 1 Inc
; 1 Tokenize
; 1 Stop
; 1 KbdChkOn
; 1 KbdChkOff
; 1 RdUNet
;
;
; ■ Functions used :
;
; 1 *
; 5 /
; 22 +
; 11 -
; 27 ==
; 1 <>
; 4 <
; 2 <=
; 4 >
; 4 >=
; 37 !
; 8 &&
; 2 ||
; 11 Len(
; 3 Upper()
; 2 Left()
; 10 Space()
; 2 Trim()
; 1 Time()
; 1 Inkey()
; 6 String()
; 1 PCBDat()
; 2 PPEPath()
; 1 PcbNode()
; 1 ReadLine()
; 20 UN_Stat()
; 3 UN_Name()
; 2 UN_City()
; 1 UN_Oper()
; 1 GetToken()
; 2 Exist()
; 2 S2I()
; 1 TokenStr()
; 1 FileInf()
; 1 TokCount()
;
;------------------------------------------------------------------------------
;
; Analysis flags : d
;
; 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
;
; 2 For/Next
; 1 While/EndWhile
; 13 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------