home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Hack-Phreak Scene Programs
/
cleanhpvac.zip
/
cleanhpvac
/
DCMV220.ZIP
/
DCM.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-02-07
|
8KB
|
365 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
Boolean BOOLEAN002
Boolean BOOLEAN003
DWord DWORD001
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
;------------------------------------------------------------------------------
GetToken STRING001
If (STRING001 <> "") Then
Join STRING001 + " " + GetToken() + " " + GetToken()
Else
BOOLEAN001 = 1
BOOLEAN002 = 0
BOOLEAN003 = 0
STRING005 = "@X7E"
STRING006 = "@X7F"
STRING007 = "@X70"
STRING008 = "@X7B"
STRING009 = "@X74"
STRING010 = "@X77"
STRING011 = "@X71"
STRING012 = Chr(64) + Chr(88) + Chr(70) + Chr(69)
STRING013 = "@X0E(@X0C@TIMELEFT@@X0E min left) (@X0C#@X0E), (@X0CA@X0E)ll, (@X0CF@X0E)lag, (@X0CH@X0E)elp, (enter=quit)"
STRING014 = "@X0E(@X0C@TIMELEFT@@X0E min left) (@X0C#@X0E), (@X0CF@X0E)lag, (@X0CS@X0E)earch, (@X0CH@X0E)elp, More"
STRING015 = "Listing ALL Conferences Together"
STRING018 = Chr(42) + Chr(42) + Chr(42) + Chr(32) + Chr(85) + Chr(78) + Chr(82) + Chr(69) + Chr(71) + Chr(73) + Chr(83) + Chr(84) + Chr(69) + Chr(82) + Chr(69) + Chr(68) + Chr(32) + Chr(42) + Chr(42) + Chr(42)
STRING018 = STRING018 + " " + STRING018 + " " + STRING018
STRING018 = STRING012 + "@POS:" + String((80 - Len(STRING018)) / 2) + "@" + STRING018
FOpen 1, PPEPath() + "DCM.CFG", 0, 0
FDefIn 1
:LABEL001
If (Ferr(1)) Goto LABEL003
FDGet STRING002
If (Left(STRING002, 1) <> ";") Then
If (InStr(Upper(STRING002), "NOCLEAR") <> 0) Then
BOOLEAN001 = 0
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "NETWORKPROMPT=") <> 0) Then
STRING013 = ReplaceStr(Upper(STRING002), "NETWORKPROMPT=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "CONFERENCEPROMPT=") <> 0) Then
STRING014 = ReplaceStr(Upper(STRING002), "CONFERENCEPROMPT=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "TEXTCOLOR=") <> 0) Then
STRING005 = ReplaceStr(Upper(STRING002), "TEXTCOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "BORDERLEFTCOLOR=") <> 0) Then
STRING006 = ReplaceStr(Upper(STRING002), "BORDERLEFTCOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "BORDERRIGHTCOLOR=") <> 0) Then
STRING007 = ReplaceStr(Upper(STRING002), "BORDERRIGHTCOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "HEADERCOLOR=") <> 0) Then
STRING008 = ReplaceStr(Upper(STRING002), "HEADERCOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "NUMBERCOLOR=") <> 0) Then
STRING009 = ReplaceStr(Upper(STRING002), "NUMBERCOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "BLANKCOLOR=") <> 0) Then
STRING010 = ReplaceStr(Upper(STRING002), "BLANKCOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "NAMECOLOR=") <> 0) Then
STRING011 = ReplaceStr(Upper(STRING002), "NAMECOLOR=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "ALLNETS=") <> 0) Then
STRING015 = ReplaceStr(Upper(STRING002), "ALLNETS=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "SYSOPNAME=") <> 0) Then
STRING016 = ReplaceStr(Upper(STRING002), "SYSOPNAME=", "")
Goto LABEL002
Endif
If (InStr(Upper(STRING002), "SERIALNUM=") <> 0) Then
STRING017 = ReplaceStr(Upper(STRING002), "SERIALNUM=", "")
Endif
Endif
:LABEL002
Goto LABEL001
:LABEL003
FClose 1
DWORD001 = 988
INTEGER003 = 0
While (Len(STRING016) <> INTEGER003) Do
Inc INTEGER003
DWORD001 = DWORD001 + Asc(Upper(Mid(STRING016, INTEGER003, 1))) + INTEGER003
EndWhile
DWORD001 = DWORD001 * 988
If (String(DWORD001) == STRING017) BOOLEAN002 = 1
:LABEL004
INTEGER001 = 0
FOpen 1, PPEPath() + "NETS.DCM", 0, 0
FDefIn 1
:LABEL005
If (Ferr(1)) Goto LABEL006
FDGet STRING002
Inc INTEGER001
Goto LABEL005
:LABEL006
FClose 1
Dec INTEGER001
If (INTEGER001 < 2) Then
STRING003 = "CONFS1.DCM"
INTEGER004 = 1
BOOLEAN003 = 1
Else
If (BOOLEAN001) Then
Color 1
Cls
Endif
PrintLn "@POFF@"
PrintLn STRING006 + "┌─────────────────────────────────────────────────────────────────────────────" + STRING007 + "┐@X01"
PrintLn STRING006 + "│" + STRING010 + " " + STRING007 + "┌──" + STRING006 + "┐" + STRING010 + " " + STRING007 + "┌────────────────────────────────────────────────────────────" + STRING006 + "┐" + STRING010 + " " + STRING007 + "┌─────" + STRING006 + "┐" + STRING010 + " " + STRING007 + "│@X01"
PrintLn STRING006 + "│" + STRING010 + " " + STRING007 + "│" + STRING005 + "##" + STRING006 + "│" + STRING010 + " " + STRING007 + "│" + STRING005 + " NETWORK DESCRIPTION " + STRING006 + "│" + STRING010 + " " + STRING007 + "│" + STRING005 + "CONFS" + STRING006 + "│" + STRING010 + " " + STRING007 + "│@X01"
PrintLn STRING006 + "│" + STRING010 + " " + STRING007 + "└" + STRING006 + "──┘" + STRING010 + " " + STRING007 + "└" + STRING006 + "────────────────────────────────────────────────────────────┘" + STRING010 + " " + STRING007 + "└" + STRING006 + "─────┘" + STRING010 + " " + STRING007 + "│@X01"
PrintLn STRING006 + "│" + STRING010 + " " + STRING007 + "┌──" + STRING006 + "┐" + STRING010 + " " + STRING007 + "┌────────────────────────────────────────────────────────────" + STRING006 + "┐" + STRING010 + " " + STRING007 + "┌─────" + STRING006 + "┐" + STRING010 + " " + STRING007 + "│@X01"
INTEGER002 = 1
STRING002 = ReadLine(PPEPath() + "NETS.DCM", INTEGER002)
While (STRING002 <> "") Do
PrintLn STRING002
Inc INTEGER002
STRING002 = ReadLine(PPEPath() + "NETS.DCM", INTEGER002)
EndWhile
PrintLn STRING006 + "│" + STRING010 + " " + STRING007 + "└" + STRING006 + "──┘" + STRING010 + " " + STRING007 + "└" + STRING006 + "────────────────────────────────────────────────────────────┘" + STRING010 + " " + STRING007 + "└" + STRING006 + "─────┘" + STRING010 + " " + STRING007 + "│@X01"
PrintLn STRING006 + "└" + STRING007 + "─────────────────────────────────────────────────────────────────────────────┘@X01"
PrintLn "@PON@"
STRING004 = ""
InputStr STRING013, STRING004, CurColor(), 5, Mask_AlNum(), 8 + 32
Select Case (Left(STRING004, 1))
Case "H"
Gosub LABEL010
Goto LABEL004
Case "F"
Gosub LABEL009
Goto LABEL004
Case "A"
STRING003 = "CONFSALL.DCM"
INTEGER004 = 999
Case 0, INTEGER001
STRING003 = "CONFS" + String(S2I(STRING004, 10)) + ".DCM"
INTEGER004 = S2I(STRING004, 10)
Case Else
Goto LABEL012
Endif
End Select
INTEGER002 = 1
:LABEL007
Gosub LABEL011
PrintLn STRING006 + "┌─────────────────────────────────────────────────────────────────────────────" + STRING007 + "┐@X01"
For INTEGER003 = INTEGER002 To INTEGER002 + 14
STRING002 = ReadLine(PPEPath() + STRING003, INTEGER003)
If (STRING002 <> "") Then
PrintLn STRING002
Continue
Endif
INTEGER003 = INTEGER002 + 14
Next
PrintLn STRING006 + "└" + STRING007 + "─────────────────────────────────────────────────────────────────────────────┘@X01@PON@"
PrintLn
STRING004 = ""
InputStr STRING014, STRING004, CurColor(), 5, Mask_AlNum(), 8 + 32
Select Case (Left(STRING004, 1))
Case "N", "Q"
Goto LABEL012
Case "F"
Gosub LABEL009
Goto LABEL007
Case "H"
Gosub LABEL010
Goto LABEL007
Case "S"
Goto LABEL008
Case 0, ""
Join S2I(STRING004, 10)
Goto LABEL012
End Select
INTEGER002 = INTEGER002 + 15
If (STRING002 <> "") Goto LABEL007
If (BOOLEAN003) Goto LABEL012
Goto LABEL004
:LABEL008
Join "S"
Goto LABEL012
:LABEL009
If (BOOLEAN001) Then
Color 1
Cls
Else
PrintLn
Endif
DispFile PPEPath() + "DCMFLG", 4 + 2 + 1
Flag PPEPath() + "CONFSTXT.DCM"
Wait
Return
:LABEL010
If (BOOLEAN001) Then
Color 1
Cls
Else
PrintLn
Endif
DispFile PPEPath() + "DCMHLP", 4 + 2 + 1
Wait
Return
:LABEL011
If (BOOLEAN001) Then
Color 1
Cls
Else
PrintLn
Endif
PrintLn STRING006 + "@POFF@┌─────────────────────────────────────────────────────────────────────────────" + STRING007 + "┐@X01"
Print STRING006 + "│"
If (BOOLEAN002) Then
If (INTEGER004 <> 999) Then
STRING018 = RTrim(Mid(ReadLine(PPEPath() + "NETS.DCM", INTEGER004), 41, 60), "·")
Else
STRING018 = STRING015
Endif
STRING018 = STRING005 + "@POS:" + String((80 - Len(STRING018)) / 2) + "@" + STRING018
Print STRING018
Else
Print STRING018
Endif
PrintLn "@POS:79@" + STRING007 + "│@X01"
PrintLn STRING006 + "└" + STRING007 + "─────────────────────────────────────────────────────────────────────────────┘@X01"
PrintLn
Return
Endif
:LABEL012
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 4 Cls
; 2 Wait
; 4 Color
; 82 Goto
; 57 Let
; 3 Print
; 21 PrintLn
; 40 If
; 2 DispFile
; 2 FOpen
; 2 FClose
; 2 InputStr
; 5 Gosub
; 3 Return
; 3 Inc
; 1 Dec
; 1 GetToken
; 3 Join
; 2 FDefIn
; 2 FDGet
; 1 Flag
;
;
; ■ Functions used :
;
; 1 *
; 2 /
; 204 +
; 2 -
; 9 ==
; 21 <>
; 2 <
; 2 <=
; 1 >
; 3 >=
; 37 !
; 4 &&
; 2 ||
; 3 Len(
; 26 Upper()
; 2 Mid()
; 9 Left()
; 2 Ferr()
; 24 Chr()
; 1 Asc()
; 13 InStr()
; 1 RTrim()
; 4 String()
; 2 Mask_AlNum()
; 9 PPEPath()
; 4 ReadLine()
; 2 GetToken()
; 6 S2I()
; 2 CurColor()
; 12 ReplaceStr()
;
;------------------------------------------------------------------------------
;
; Analysis flags : f
;
; f - Flag files for download ■ 3
; This may be normal if a PPE needs to send some files, but since
; this statement allows flagging of any file on the hard disk, you
; have to be carefull. Check!
; ■ Search for : FLAG
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 1 For/Next
; 2 While/EndWhile
; 23 If/Then or If/Then/Else
; 2 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------