home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
ASK01_B5.ZIP
/
PCBASK.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-02-15
|
15KB
|
625 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
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String TSTRING010(100)
String STRING011
String TSTRING012(100)
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
;------------------------------------------------------------------------------
STRING001 = "0.1 ßeta/5 (Public Beta)"
INTEGER002 = 34379
INTEGER003 = 14955
INTEGER004 = INTEGER002 + 90
INTEGER006 = 1
STRING002 = Chr(85) + Chr(78) + Chr(82) + Chr(69) + Chr(71) + Chr(73) + Chr(83) + Chr(84) + Chr(69) + Chr(82) + Chr(69) + Chr(68)
INTEGER009 = 32
For INTEGER009 = 32 To 255
STRING020 = STRING020 + Chr(INTEGER009)
Next
INTEGER009 = 1
INTEGER001 = 0
STRING024 = Chr(13)
STRING026 = 256
STRING027 = DefColor()
STRING021 = YesChar()
STRING022 = NoChar()
STRING023 = STRING021 + STRING022
Log "*PCBASK* Executed at " + Left(Time(), 5), 0
PrintLn "@X08PCBASK v" + STRING001
If (DbgLevel() > 0) Log "*PCBASK* Debug Mode is ON", 0
GetUser
STRING025 = GetToken()
If (INTEGER006 <> 0) Then
INTEGER007 = FileInf(PPEPath() + PPEName() + ".PPE", 2)
INTEGER005 = Date()
If (Len(Trim(STRING002, " ")) <> 12) Goto LABEL004
If (INTEGER005 > INTEGER004) Goto LABEL005
If (INTEGER005 + 3 == INTEGER004) Then
Newline
PrintLn "@X0CThis copy of PCBASK expires in @X8C3@X0C days!@X07"
Log "──── This copy of PCBASK expires in 3 days", 1
Log "──── Call Whitewater Systems - 312-743-4912 to", 1
Log "──── obtain a newer version", 1
ElseIf (INTEGER005 == INTEGER004) Then
Newline
PrintLn "@X0CThis copy of PCBASK expires after today!@X07"
Log "──── This copy of PCBASK expires after today!", 1
Log "──── Call Whitewater Systems - 312-743-4912 to", 1
Log "──── obtain a newer version", 1
Endif
If (INTEGER002 <> 0) Then
If (INTEGER007 <> INTEGER002) Then
Goto LABEL004
Endif
Endif
If (FileInf(PPEPath() + PPEName() + ".PPE", 4) <> INTEGER003) Then
Goto LABEL004
Endif
Else
If (INTEGER006 == 0) Then
INTEGER001 = 1
Endif
Endif
Gosub LABEL003
Gosub LABEL002
If (INTEGER001 <> 1) Then
Newline
PrintLn "@X07[@X0CThis version of PCBASK is " + STRING002 + "@X07]"
PrintLn "@X07[@X0ACall Whitewater Systems to register - 312-743-4912@X07]"
Log "(" + STRING002 + " version of PCBASK)", 0
Delay 20 * 18.2
Endif
Newline
If (Exist(STRING025)) Goto LABEL001
If (Exist(PPEPath() + Upper(Trim(STRING025, " ")))) Then
STRING025 = PPEPath() + Upper(Trim(STRING025, " "))
Else
Newline
PrintLn "@X0C" + STRING025 + " not found, please notify Sysop!"
Newline
Goto LABEL020
Endif
:LABEL001
FOpen 1, STRING025, 0, 2
Gosub LABEL007
Goto LABEL020
:LABEL002
STRING003 = ""
If (Mid(STRING006, 1, 1) == "B") Then
Newline
MPrintLn "@X07[@X0CThis version of PCBASK is " + STRING002 + "@X07]"
MPrintLn "@X07[@X0ACall Whitewater Systems to register - 312-743-4912@X07]"
Color 10
SPrintLn "Please register this copy of PCBASK."
Log "(Please register this copy of PCBASK)", 0
Delay 5 * 18.2
STRING003 = Chr(66) + String(Len(STRING005) - 1)
STRING003 = STRING003 + Chr(57) + String(Len(STRING005) - 9)
STRING003 = STRING003 + Chr(48) + String(Len(STRING005) - 5)
STRING003 = STRING003 + Chr(50) + String(Len(STRING004) - 5) + Chr(57)
If (Trim(STRING005, " ") <> Trim(Mid(ReadLine(PCBDat(), 94), 1, Len(STRING005)), " ")) INTEGER001 = 0
If (STRING006 <> STRING003) INTEGER001 = 0
If (Trim(STRING005, " ") == Trim(Mid(ReadLine(PCBDat(), 94), 1, Len(STRING005)), " ")) Then
If (STRING006 == STRING003) INTEGER001 = 1
Endif
Else
STRING003 = Chr(49) + String(Len(STRING005) - 3)
STRING003 = STRING003 + Chr(51) + String(Len(STRING005) - 7)
STRING003 = STRING003 + Chr(54) + String(Len(STRING005) - 3)
STRING003 = STRING003 + Chr(50) + String(Len(STRING004) - 5) + Chr(53)
If (Trim(STRING005, " ") <> Trim(Mid(ReadLine(PCBDat(), 94), 1, Len(STRING005)), " ")) INTEGER001 = 0
If (STRING006 <> STRING003) INTEGER001 = 0
If (Trim(STRING005, " ") == Trim(Mid(ReadLine(PCBDat(), 94), 1, Len(STRING005)), " ")) Then
If (STRING006 == STRING003) INTEGER001 = 1
Endif
Endif
Return
:LABEL003
If (Exist(PPEPath() + "PCBASK.CFG")) Then
FOpen 0, PPEPath() + "PCBASK.CFG", 0, 0
FGet 0, STRING004
FGet 0, STRING005
FGet 0, STRING006
FGet 0, STRING008
FGet 0, STRING007
FGet 0, STRING009
FClose 0
STRING004 = Upper(Trim(STRING004, " "))
STRING006 = Upper(Trim(STRING006, " "))
STRING008 = Upper(Trim(STRING008, " "))
STRING009 = Upper(Mid(STRING009, 1, 1))
Else
Log "Error: PCBASK.CFG Configuration file not found!", 0
Newlines 2
PrintLn "@X0CConfiguration file not found! Please Notify Sysop!"
Newlines 2
Wait
Goto LABEL020
Endif
Return
:LABEL004
Cls
Beep
Newlines 2
PrintLn "@X07[@X0CPCBASK is (c) Copyrighted Software by Whitewater Technologies, Inc.@X07]"
PrintLn "@X07[@X0FWhitewater Systems - 312-743-4912@X07]"
Newline
PrintLn "@X07[@X0CPCBASK's authentic seal has been altered!@X07]"
PrintLn "@X07[@X07Please call Whitewater Systems and download the newest release@X07]"
Log "*PCBASK* Seal has been ALTERED", 0
Newline
Goto LABEL020
:LABEL005
Newline
PrintLn "@X07[@X0CThis version of PCBASK has expired@X07]"
PrintLn "@X07[@X07Please tell the Sysop to obtain a newer version@X07]"
Newline
Log "──- This copy of PCBASK has EXPIRED!", 1
Log "──- Call Whitewater Systems to obtain a newer version", 1
Log "──- Whitewater Systems - 312-743-4912", 1
Goto LABEL020
:LABEL006
PrintLn "@X07[@X0CAn error has been encountered in PCBASK@X07]"
PrintLn "@X08─────────────────────────────────────────@X07"
PrintLn "@X07It may have been caused by one of the following:"
Newline
PrintLn " @X08■ @X0FImproper format of field(s):"
PrintLn " @X08- @X07Prompt length must be less than 80 characters"
PrintLn " @X08- @X07A ; must be separating parameters"
PrintLn " @X08- @X07A Y/N answer must be used to specify the forcing of a prompt"
Newlines 2
PrintLn "@X07The line that has been read contains:"
PrintLn "@X07[@X0F" + STRING013 + "@X07]"
Newline
PrintLn "@X07[@X0CPCBASK is aborting its execution - See the documentation for more help@X07]"
FPutLn 2, "── Error: Improper format of field(s) - Check configuration"
FPutLn 2, "── Call Whitewater Systems if you need further assistance."
FPutLn 2, "── Aborting ..."
FPutLn 2, ""
Goto LABEL020
:LABEL007
INTEGER008 = 0
STRING018 = "N"
If (Exist(PPEPath() + PPEName() + "." + String(PcbNode()))) Delete PPEPath() + PPEName() + "." + String(PcbNode())
FCreate 2, PPEPath() + PPEName() + "." + String(PcbNode()), 1, 3
FPutLn 2, "────────────────────────[ PCBASK - Q&A File ]────────────────────────"
:LABEL008
If (Ferr(1)) Goto LABEL017
Gosub LABEL019
FGet 1, STRING013
STRING013 = Trim(STRING013, " ")
If (STRING013 == "") Then
Newline
Else
Select Case (Mid(STRING013, 1, 1))
Case "%"
DispFile Trim(Mid(STRING013, 2, 80), " "), 1 + 2 + 4
Case ";"
FPutLn 2, "C: " + Trim(Mid(StripAtx(STRING013), 2, 200), " ")
If (Mid(STRING013, 1, 1) == ":") Then
Goto LABEL016
Endif
Case "ANSWERFILE="
STRING019 = Trim(Mid(STRING013, 12, 80), " ")
Case "WRITEMSG="
STRING018 = Upper(Mid(STRING013, 10, 1))
Case "FLAG="
If (Exist(Trim(Upper(Mid(STRING013, 6, 80)), " "))) Goto LABEL009
FPutLn 2, "-> " + Trim(Upper(Mid(STRING013, 6, 80)), " ") + " not found. (FLAG)"
Goto LABEL010
:LABEL009
Flag Trim(Upper(Mid(STRING013, 6, 80)), " ")
FPutLn 2, "-> Flagging " + Trim(Upper(Mid(STRING013, 6, 80)), " ") + " for download."
:LABEL010
Case "DOWNLOAD="
Download Trim(Upper(Mid(STRING013, 10, 80)), " ")
FPutLn 2, "-> Downloading " + Trim(Upper(Mid(STRING013, 10, 80)), " ") + "."
Case "KBDSTUFF="
KbdStuff Trim(Upper(Mid(STRING013, 10, 1)), " ") + STRING024
Case "INFO=USER"
FPutLn 2, "-> ======= User Information ======="
FPutLn 2, "-> User Name : " + U_Name() + " / Security: " + String(U_Sec)
FPutLn 2, "-> Voice Phone : " + U_HVPhone
FPutLn 2, "-> Data Phone : " + U_BDPhone
FPutLn 2, "-> User City : " + U_City
FPutLn 2, "-> User Comment : " + U_Cmnt1
FPutLn 2, "-> Sysop Comment: " + U_Cmnt2
FPutLn 2, "-> ================================"
Case "?"
Inc INTEGER008
Select Case (Upper(Mid(STRING013, 2, 1)))
Case "S", "B"
If (Mid(STRING013, 3, 1) <> ";") Goto LABEL006
STRING017 = Upper(Mid(STRING013, 4, 1))
If ((STRING017 <> "Y") && (STRING017 <> "N")) Goto LABEL006
STRING014 = Mid(STRING013, 6, 1)
If (Mid(STRING013, 7, 1) <> ";") Then
STRING014 = STRING014 + Mid(STRING013, 7, 1)
STRING011 = Trim(Mid(STRING013, 9, 200), " ")
ElseIf (Mid(STRING013, 7, 1) == ";") Then
STRING011 = Trim(Mid(STRING013, 8, 200), " ")
Endif
If (Mid(STRING013, 5 + 1 + Len(STRING014), 1) <> ";") Goto LABEL006
TSTRING012(0) = ""
Select Case (Upper(Mid(STRING013, 2, 1)))
Case "S"
If (STRING017 == "N") Then
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026
Else
While ((Len(TSTRING012(0)) == 0) && (STRING017 == "Y")) Do
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026
If (TSTRING012(0) == "") Then
DispText 117, 128 + 256
Newline
Endif
EndWhile
Endif
Case "B"
If (STRING017 == "N") Then
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026 + 2
Goto LABEL011
Endif
While ((Len(TSTRING012(0)) == 0) && (STRING017 == "Y")) Do
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026 + 2
If (TSTRING012(0) == "") Then
DispText 117, 128 + 256
Newline
Endif
EndWhile
End Select
:LABEL011
FPutLn 2, "Q: " + StripAtx(STRING011) + "?"
FPutLn 2, "A: " + TSTRING012(0)
Case "D", "E"
If (Mid(STRING013, 3, 1) <> ";") Goto LABEL006
STRING017 = Upper(Mid(STRING013, 4, 1))
If ((STRING017 <> "Y") && (STRING017 <> "N")) Goto LABEL006
STRING014 = Mid(STRING013, 6, 1)
If (Mid(STRING013, 7, 1) <> ";") Then
STRING014 = STRING014 + Mid(STRING013, 7, 1)
STRING011 = Trim(Mid(STRING013, 9, 200), " ")
ElseIf (Mid(STRING013, 7, 1) == ";") Then
STRING011 = Trim(Mid(STRING013, 8, 200), " ")
Endif
If (Mid(STRING013, 5 + 1 + Len(STRING014), 1) <> ";") Goto LABEL006
TSTRING012(0) = ""
Select Case (Upper(Mid(STRING013, 2, 1)))
Case "D"
If (STRING017 == "N") Then
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026 + 1
Else
While ((Len(TSTRING012(0)) == 0) && (STRING017 == "Y")) Do
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026 + 1
If (TSTRING012(0) == "") Then
DispText 117, 128 + 256
Newline
Endif
EndWhile
Endif
Case "E"
If (STRING017 == "N") Then
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026 + 2 + 1
Goto LABEL012
Endif
While ((Len(TSTRING012(0)) == 0) && (STRING017 == "Y")) Do
InputStr STRING011, TSTRING012(0), STRING027, STRING014, STRING020, STRING026 + 2 + 1
If (TSTRING012(0) == "") Then
DispText 117, 128 + 256
Newline
Endif
EndWhile
End Select
:LABEL012
FPutLn 2, "Q: " + StripAtx(STRING011) + "?"
FPutLn 2, "A: " + TSTRING012(0)
Case "Y", "N"
If (Mid(STRING013, 3, 1) <> ";") Goto LABEL006
STRING011 = Trim(Mid(STRING013, 4, 200), " ")
TSTRING012(0) = ""
Select Case (Upper(Mid(STRING013, 2, 1)))
Case "Y"
TSTRING012(0) = STRING021
Case "N"
TSTRING012(0) = STRING022
End Select
InputStr STRING011, TSTRING012(0), STRING027, 1, STRING023, STRING026 + 2 + 4
If (TSTRING012(0) == "") TSTRING012(0) = "(No answer given)"
FPutLn 2, "Q: " + StripAtx(STRING011) + "?"
FPutLn 2, "A: " + TSTRING012(0)
Case "L", "M"
If (Mid(STRING013, 3, 1) <> ";") Goto LABEL006
STRING015 = Mid(STRING013, 4, 1)
If (Mid(STRING013, 5, 1) <> ";") Then
STRING015 = STRING015 + Mid(STRING013, 5, 1)
If (Mid(STRING013, 6, 1) <> ";") Goto LABEL006
Endif
STRING014 = Mid(STRING013, 5 + Len(STRING015), 1)
If (Mid(STRING013, 6 + Len(STRING015), 1) <> ";") Then
STRING014 = STRING014 + Mid(STRING013, 6 + Len(STRING015), 1)
STRING011 = Trim(Mid(STRING013, 8 + Len(STRING015), 200), " ")
ElseIf (Mid(STRING013, 6 + Len(STRING015), 1) == ";") Then
STRING011 = Trim(Mid(STRING013, 8 + Len(STRING015), 200), " ")
Endif
INTEGER009 = 0
TSTRING012(INTEGER009) = ""
FPutLn 2, "Q: " + StripAtx(STRING011)
If (Upper(Mid(STRING013, 2, 1)) == "L") Then
PrintLn STRING011
TSTRING012(INTEGER009) = ""
While (Len(TSTRING012(INTEGER009)) == 0) Do
If (STRING015 == INTEGER009) Then
InputStr "@X0F: _", TSTRING012(INTEGER009), STRING027, STRING014, STRING020, STRING026 + 4
Goto LABEL013
Endif
InputStr "@X0F: _", TSTRING012(INTEGER009), STRING027, STRING014, STRING020, STRING026 + 4 + 512
:LABEL013
If (TSTRING012(INTEGER009) == "") Then
DispText 117, 128 + 256
Continue
Endif
FPutLn 2, "A: " + TSTRING012(INTEGER009)
EndWhile
Inc INTEGER009
For INTEGER009 = 1 To STRING015 - 1
TSTRING012(INTEGER009) = ""
If (STRING015 == INTEGER009) Then
InputStr "@X0F: _", TSTRING012(INTEGER009), STRING027, STRING014, STRING020, STRING026 + 4
Goto LABEL014
Endif
InputStr "@X0F: _", TSTRING012(INTEGER009), STRING027, STRING014, STRING020, STRING026 + 4 + 512
:LABEL014
If (Len(TSTRING012(INTEGER009)) == 0) Break
FPutLn 2, "A: " + TSTRING012(INTEGER009)
Next
Endif
Case "O", "P"
If (Mid(STRING013, 3, 1) <> ";") Goto LABEL006
STRING016 = Mid(STRING013, 4, 1)
If (Mid(STRING013, 5, 1) <> ";") Then
STRING016 = STRING016 + Mid(STRING013, 5, 1)
If (Mid(STRING013, 6, 1) <> ";") Goto LABEL006
Endif
STRING011 = Trim(Mid(STRING013, 5 + Len(STRING016), 200), " ")
FPutLn 2, "Q: " + StripAtx(STRING011)
INTEGER009 = 0
For INTEGER009 = 0 To 50
If (TSTRING010(INTEGER009) <> "") TSTRING010(INTEGER009) = ""
Next
INTEGER009 = 0
For INTEGER009 = 0 To STRING016
FGet 1, TSTRING010(INTEGER009)
PrintLn TSTRING010(INTEGER009)
Next
TSTRING012(0) = ""
If (Upper(Mid(STRING013, 2, 1)) == "O") Then
While (Len(TSTRING012(0)) == 0) Do
InputStr STRING011, TSTRING012(0), STRING027, Len(STRING016), Mask_Num(), STRING026
If ((TSTRING010(TSTRING012(0) - 1) == "") || (TSTRING012(0) == "0")) Then
PrintLn "@X0CInvalid Selection!"
TSTRING012(0) = ""
Continue
Endif
If (TSTRING012(0) == "") Then
DispText 117, 128 + 256
Continue
Endif
Newline
EndWhile
Goto LABEL015
Endif
If (Upper(Mid(STRING013, 2, 1)) == "P") Then
InputStr STRING011, TSTRING012(0), STRING027, Len(STRING016), Mask_Num(), STRING026
Endif
:LABEL015
FPutLn 2, "A: " + StripAtx(TSTRING010(TSTRING012(0) - 1))
End Select
Case "$"
Inc INTEGER008
FPutLn 2, "Q: " + StripAtx(STRING011) + "?"
FPutLn 2, "A: " + TSTRING012(0)
Case Else
PrintLn STRING013
Endif
End Select
:LABEL016
Goto LABEL008
:LABEL017
FPutLn 2, "─────────────────────────────────────────────────────────────────────"
FPutLn 2, " Statistics:"
FPutLn 2, " ■ Total Number of Questions asked: " + String(INTEGER008)
FPutLn 2, "─────────────────────────[ End of Q&A File ]─────────────────────────"
FClose 2
If (Exist(STRING019)) Goto LABEL018
FCreate 3, STRING019, 1, 3
FClose 3
:LABEL018
Append PPEPath() + PPEName() + "." + String(PcbNode()), STRING019
Return
:LABEL019
Return
:LABEL020
Log "*PCBASK* Ended at " + Left(Time(), 5), 0
Newline
Print "@X0ASaving your information ... "
If (STRING018 <> "N") Then
If ((STRING009 <> "N") && "R") Then
Log "*PCBASK* Message type is invalid!", 0
Log "*PCBASK* Message type will set to (R)", 0
STRING009 = "R"
Endif
Message STRING007, STRING008, "PCBASK [Node " + String(PcbNode()) + "]", "Re: " + U_Name(), STRING009, 0, 0, 0, PPEPath() + PPEName() + "." + String(PcbNode())
Log "*PCBASK* Saving message with information", 0
Endif
If (Exist(PPEPath() + PPEName() + "." + String(PcbNode()))) Delete PPEPath() + PPEName() + "." + String(PcbNode())
If (Exist(STRING025)) FClose 1
PrintLn "@X0FDone."
If (DbgLevel() > 0) DbgLevel 0
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 1 Cls
; 1 Wait
; 1 Color
; 147 Goto
; 89 Let
; 1 Print
; 28 PrintLn
; 103 If
; 1 DispFile
; 2 FCreate
; 2 FOpen
; 4 FClose
; 8 FGet
; 34 FPutLn
; 1 GetUser
; 2 Delete
; 19 Log
; 15 InputStr
; 4 Gosub
; 4 Return
; 2 Delay
; 3 Inc
; 20 Newline
; 4 Newlines
; 6 DispText
; 1 Beep
; 1 KbdStuff
; 1 Message
; 1 SPrintLn
; 2 MPrintLn
; 1 DbgLevel
; 1 Append
; 1 Flag
; 1 Download
;
;
; ■ Functions used :
;
; 2 *
; 154 +
; 12 -
; 68 ==
; 31 <>
; 4 <
; 4 <=
; 3 >
; 8 >=
; 76 !
; 15 &&
; 10 ||
; 31 Len(
; 41 Upper()
; 84 Mid()
; 2 Left()
; 1 Ferr()
; 24 Chr()
; 33 Trim()
; 1 Date()
; 2 Time()
; 2 U_Name()
; 1 NoChar()
; 1 YesChar()
; 8 StripAtx()
; 18 String()
; 2 Mask_Num()
; 4 PCBDat()
; 13 PPEPath()
; 8 PcbNode()
; 4 ReadLine()
; 1 GetToken()
; 8 Exist()
; 1 DefColor()
; 2 FileInf()
; 9 PPEName()
; 2 DbgLevel()
;
;------------------------------------------------------------------------------
;
; Analysis flags : Mfd
;
; M - Send text to modem only ■ 4
; Some informations are sent only to the modem, not to the local
; screen, this is a well known way to make stealth backdoors, Check!
; ■ Search for : SENDMODEM, MPRINT, MPRINTLN
;
; 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
;
; 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
;
; 4 For/Next
; 6 While/EndWhile
; 41 If/Then or If/Then/Else
; 5 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------