home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
T
/
THTMT224.ZIP
/
MATRIX.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-02-06
|
27KB
|
1,580 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
Date DATE001
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
Integer INTEGER022
Integer INTEGER023
Integer INTEGER024
Integer INTEGER025
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
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String STRING031
String STRING032
String STRING033
String STRING034
String TSTRING035(10)
String STRING036
String STRING037
String STRING038
String STRING039
String STRING040
String STRING041
String STRING042
String STRING043
String STRING044
String STRING045
String STRING046
String STRING047
String STRING048
String STRING049
String STRING050
String STRING051
String STRING052
String STRING053
String STRING054
String STRING055
String STRING056
String STRING057
String STRING058
String STRING059
String STRING060
String STRING061
String STRING062
String STRING063
String STRING064
String STRING065
String STRING066
String STRING067
String STRING068
String STRING069
String STRING070
String STRING071
String STRING072
String STRING073
String STRING074
String STRING075
String STRING076
String STRING077
String STRING078
String STRING079
String STRING080
String STRING081
String STRING082
String STRING083
String STRING084
String STRING085
String STRING086
String STRING087
String STRING088
String STRING089
String STRING090
String STRING091
String STRING092
String STRING093
String STRING094
String STRING095
String STRING096
String STRING097
String STRING098
String STRING099
String STRING100
String STRING101
String STRING102
String STRING103
String STRING104
String STRING105
String STRING106
String STRING107
String STRING108
String STRING109
String TSTRING110(50,7)
String TSTRING111(50)
String TSTRING112(50)
String TSTRING113(50)
String TSTRING114(50)
String STRING115
String STRING116
String STRING117
String STRING118
String STRING119
Time TIME001
Time TIME002
;------------------------------------------------------------------------------
STRING108 = Chr(48) + Chr(50) + "-" + Chr(48) + Chr(54) + "-" + Chr(57) + Chr(52)
STRING087 = Chr(50) + Chr(46) + Chr(50) + Chr(52)
STRING098 = Chr(64) + Chr(88) + Chr(48) + Chr(57) + Chr(67) + Chr(111) + Chr(100) + Chr(101) + Chr(100) + "@X04 " + Chr(66) + Chr(121) + "@X0B " + Chr(84) + Chr(104) + Chr(101) + "@X01 " + Chr(77) + Chr(97) + Chr(115) + Chr(116) + Chr(101) + Chr(114)
STRING052 = Chr(64) + Chr(88) + Chr(48) + Chr(69) + Chr(84) + Chr(72) + Chr(84) + Chr(45) + Chr(77) + Chr(97) + Chr(116) + Chr(114) + Chr(105) + Chr(120) + " " + Chr(64) + Chr(88) + Chr(48) + Chr(57) + Chr(118) + STRING087 + " " + Chr(64) + Chr(88) + Chr(48) + Chr(69) + Chr(67) + Chr(111) + Chr(109) + Chr(112) + Chr(105) + Chr(108) + Chr(101) + Chr(100) + " " + Chr(111) + Chr(110) + " " + Chr(64) + Chr(88) + Chr(48) + Chr(67) + STRING108 + Chr(64) + Chr(88) + Chr(48) + Chr(55)
STRING097 = Chr(64) + Chr(88) + Chr(56) + Chr(67) + Chr(60) + Chr(60) + Chr(60) + Chr(64) + Chr(88) + Chr(56) + Chr(67) + Chr(85) + Chr(110) + Chr(82) + Chr(101) + Chr(103) + Chr(105) + Chr(115) + Chr(116) + Chr(101) + Chr(114) + Chr(101) + Chr(100) + Chr(64) + Chr(88) + Chr(56) + Chr(67) + Chr(62) + Chr(62) + Chr(62)
BOOLEAN002 = 0
DATE001 = Chr(48) + Chr(50) + "-" + Chr(50) + Chr(53) + "-" + Chr(57) + Chr(52)
FDefIn 1
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) Delete PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
If (STRING052 <> Chr(64) + Chr(88) + Chr(48) + Chr(69) + Chr(84) + Chr(72) + Chr(84) + Chr(45) + Chr(77) + Chr(97) + Chr(116) + Chr(114) + Chr(105) + Chr(120) + " " + Chr(64) + Chr(88) + Chr(48) + Chr(57) + Chr(118) + STRING087 + " " + Chr(64) + Chr(88) + Chr(48) + Chr(69) + Chr(67) + Chr(111) + Chr(109) + Chr(112) + Chr(105) + Chr(108) + Chr(101) + Chr(100) + " " + Chr(111) + Chr(110) + " " + Chr(64) + Chr(88) + Chr(48) + Chr(67) + STRING108 + Chr(64) + Chr(88) + Chr(48) + Chr(55)) Then
Delete PPEPath() + PPEName() + Chr(46) + Chr(112) + Chr(112) + Chr(101)
PrintLn "Hacked Copy"
Delay 30
Else
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".mal")) Delete PPEPath() + PPEName() + String(PcbNode()) + ".mal"
STRING100 = Upper(ReadLine(PCBDat(), 2))
STRING101 = Upper(ReadLine(PCBDat(), 94))
Cls
PrintLn "@X0ELoading " + Chr(64) + Chr(88) + Chr(48) + Chr(67) + Chr(60) + Chr(60) + Chr(64) + Chr(88) + Chr(48) + Chr(69) + Chr(84) + Chr(72) + Chr(84) + Chr(64) + Chr(88) + Chr(48) + Chr(67) + Chr(62) + Chr(62) + " @X0EMatrix @X0F!"
STRING020 = ""
FOpen 1, PPEPath() + PPEName() + ".cfg", 0, 0
FDGet INTEGER006
FDGet STRING031
FDGet STRING032
FDGet STRING033
FDGet STRING026
FDGet INTEGER004
FDGet STRING034
FDGet INTEGER013
FDGet STRING037
FDGet STRING059
FDGet STRING061
FDGet STRING063
FDGet STRING062
FDGet STRING060
FDGet STRING093
FDGet STRING064
FDGet STRING041
FDGet STRING071
FDGet STRING072
FDGet STRING073
FDGet STRING074
FDGet STRING075
FDGet STRING076
FDGet STRING077
FDGet STRING078
FDGet STRING070
FDGet STRING042
FDGet STRING043
FDGet STRING054
FDGet STRING057
FDGet STRING029
FDGet STRING055
FDGet STRING044
FDGet STRING045
FDGet STRING056
FDGet STRING046
FDGet STRING090
FDGet STRING089
FDGet STRING091
FDGet STRING092
FDGet STRING094
FDGet STRING095
FDGet STRING096
FDGet INTEGER014
For STRING028 = 1 To INTEGER014
FDGet TSTRING035(STRING028)
Next
FDGet STRING104
FDGet STRING105
FDGet STRING107
FDGet STRING008
FClose 1
For STRING028 = 0 To 64
AnsiPos 26, 1
Print "@X0E|"
STRING100 = Strip(STRING100, Chr(STRING028))
AnsiPos 26, 1
Print "@X0C/"
AnsiPos 26, 1
Print "@X0F-"
AnsiPos 26, 1
Print "@X0E|"
STRING101 = Strip(STRING101, Chr(STRING028))
AnsiPos 26, 1
Print "@X0F-"
AnsiPos 26, 1
Print "@X0C\"
Next
For STRING028 = 85 To 96
AnsiPos 26, 1
Print "@X0E|"
STRING100 = Strip(STRING100, Chr(STRING028))
AnsiPos 26, 1
Print "@X0C/"
AnsiPos 26, 1
Print "@X0F-"
AnsiPos 26, 1
Print "@X0E|"
STRING101 = Strip(STRING101, Chr(STRING028))
AnsiPos 26, 1
Print "@X0F-"
AnsiPos 26, 1
Print "@X0C\"
Next
For STRING028 = 117 To 255
AnsiPos 26, 1
Print "@X0E|"
STRING100 = Strip(STRING100, Chr(STRING028))
AnsiPos 26, 1
Print "@X0C/"
AnsiPos 26, 1
Print "@X0F-"
AnsiPos 26, 1
Print "@X0E|"
STRING101 = Strip(STRING101, Chr(STRING028))
AnsiPos 26, 1
Print "@X0F-"
AnsiPos 26, 1
Print "@X0C\"
Next
AnsiPos 26, 1
Print " "
INTEGER021 = Len(STRING100)
If (INTEGER021 < 2) STRING100 = Chr(109) + Chr(101)
STRING100 = Right(STRING100, 2)
INTEGER020 = Len(STRING101)
If (INTEGER020 < 2) STRING101 = Chr(109) + Chr(101)
STRING101 = Right(STRING101, 2)
STRING102 = STRING100 + STRING101 + Chr(77) + Chr(65)
If (INTEGER006 == S2I(STRING102, 34)) Goto LABEL001
If (STRING097 <> Chr(64) + Chr(88) + Chr(56) + Chr(67) + Chr(60) + Chr(60) + Chr(60) + Chr(64) + Chr(88) + Chr(56) + Chr(67) + Chr(85) + Chr(110) + Chr(82) + Chr(101) + Chr(103) + Chr(105) + Chr(115) + Chr(116) + Chr(101) + Chr(114) + Chr(101) + Chr(100) + Chr(64) + Chr(88) + Chr(56) + Chr(67) + Chr(62) + Chr(62) + Chr(62)) Then
Delete PPEPath() + PPEName() + Chr(46) + Chr(112) + Chr(112) + Chr(101)
Delay 90
Else
:LABEL001
FOpen 1, PPEPath() + "CHECK.cnf", 0, 0
FDGet STRING058
FDGet STRING018
FDGet STRING019
FDGet STRING017
FClose 1
STRING030 = STRING037
:LABEL002
BOOLEAN002 = 0
If (INTEGER006 == S2I(STRING102, 34)) Goto LABEL003
If (Date() > DATE001) Then
PrintLn "@X0FOut of Date Copy of THT-MATRIX v2.23"
Delay 30
Else
:LABEL003
BOOLEAN001 = 0
STRING037 = STRING030
StartDisp 1
:LABEL004
If (BOOLEAN001) Goto LABEL069
If (Upper(STRING037) == "D") Goto LABEL008
If (Upper(STRING037) == "L") Goto LABEL006
If (Upper(STRING037) == "B") Then
:LABEL005
STRING079 = Random(5)
If (STRING079 == "1") Goto LABEL006
If (STRING079 == "2") Goto LABEL008
If (STRING079 == "3") Goto LABEL006
If (STRING079 == "4") Goto LABEL008
If (STRING079 == "5") Goto LABEL006
If (STRING079 == "0") Goto LABEL008
If (STRING079 < "0") Goto LABEL005
Endif
:LABEL006
FClose 1
FOpen 1, PPEPath() + PPEName() + "1.cfg", 2, 0
FDGet INTEGER018
STRING037 = "L"
:LABEL007
STRING038 = Random(INTEGER018 + 1)
If (STRING038 == 0) Goto LABEL007
If (STRING038 > INTEGER018) Goto LABEL007
For STRING028 = 1 To STRING038
FDGet STRING068
FDGet INTEGER015
FDGet INTEGER016
FDGet STRING049
FDGet STRING069
Next
FClose 1
Goto LABEL014
:LABEL008
DefColor
Cls
STRING048 = ""
:LABEL009
DefColor
FreshLine
DispFile PPEPath() + "menu.ans", 4 + 2
AnsiPos 1, 1
Print STRING052 + " " + STRING098
If (INTEGER006 == S2I(STRING102, 34)) Goto LABEL010
AnsiPos 60, 1
Print STRING097
:LABEL010
INTEGER015 = 23
:LABEL011
If (BOOLEAN001) Goto LABEL013
:LABEL012
DefColor
Inc INTEGER015
AnsiPos 1, INTEGER015
InputStr STRING056 + String(PcbNode()) + ">_", STRING050, "", 13, Mask_Ascii(), 1024 + 8
If ((STRING050 == "DIR") || (STRING050 == "DIR/P")) Goto LABEL009
If (STRING050 == "DIR/W") Goto LABEL013
If (STRING050 == "REGIT") Goto LABEL071
If (STRING050 == "FORMAT") Then
FreshLine
DispFile PPEPath() + "format", 0
Goto LABEL012
Endif
If (STRING050 == "") Then
STRING048 = ScrText(1, INTEGER015, 15, 1)
FreshLine
Inc INTEGER015
Goto LABEL012
Endif
If (STRING050 == "VER") Then
FreshLine
DispFile PPEPath() + "VER", 0
Goto LABEL012
Endif
If (STRING050 == "HELP") Then
FreshLine
DispFile PPEPath() + "help", 0
Goto LABEL012
Endif
If (STRING050 == "CHAT") Then
Goto LABEL068
Endif
If (STRING050 == "WHO") Then
Cls
FreshLine
Call PPEPath() + "who.ppe"
AnsiPos 1, 20
Wait
Cls
DefColor
FreshLine
Goto LABEL012
Endif
If (STRING050 == "CLS") Then
Cls
INTEGER015 = 0
Goto LABEL012
Endif
If (STRING050 == "SYSTEM") Then
Goto LABEL018
Endif
Select Case (STRING050)
Case "CHECK"
STRING050 = 2
Case "APPLY"
STRING050 = 3
If (((STRING050 == "LOGOFF") || (STRING050 == "G")) || (STRING050 == "BYE")) Then
Goto LABEL063
Endif
If (STRING050 == "FEEDBACK") Then
Goto LABEL064
Endif
If ((STRING050 == "PAGE") && (STRING093 == YesChar())) Then
Goto LABEL068
If ((STRING057 == YesChar()) && (STRING050 == STRING029)) Goto LABEL076
Else
Inc INTEGER015
Print STRING048
FreshLine
PrintLn "@X0FUnknown Command" + " " + """" + STRING050 + """"
Newline
Goto LABEL012
Endif
Goto LABEL011
:LABEL013
DispFile PPEPath() + "menuw.ans", 4 + 2
Goto LABEL012
:LABEL014
STRING051 = 1
STRING050 = ""
STRING048 = ""
DefColor
Cls
DispFile PPEPath() + STRING068, 4
AnsiPos 1, 1
Print STRING052 + " " + STRING098
If (INTEGER006 == S2I(STRING102, 34)) Goto LABEL015
AnsiPos 60, 1
Print STRING097
:LABEL015
INTEGER019 = INTEGER016
AnsiPos INTEGER015, INTEGER016
Print STRING059
Inc INTEGER016
Inc STRING051
AnsiPos INTEGER015, INTEGER016
Print STRING061
Inc INTEGER016
Inc STRING051
AnsiPos INTEGER015, INTEGER016
Print STRING063
Inc INTEGER016
Inc STRING051
AnsiPos INTEGER015, INTEGER016
Print STRING060
Inc INTEGER016
Inc STRING051
AnsiPos INTEGER015, INTEGER016
Print STRING062
If (STRING093 == YesChar()) Then
Inc INTEGER016
Inc STRING051
AnsiPos INTEGER015, INTEGER016
Print STRING064
Endif
If (STRING055 == YesChar()) Then
Inc INTEGER016
Inc STRING051
AnsiPos INTEGER015, INTEGER016
Print STRING044
Endif
INTEGER016 = INTEGER019
KbdStuff Chr(32)
:LABEL016
If (BOOLEAN001) Goto LABEL018
STRING047 = Inkey()
STRING047 = Upper(STRING047)
If (STRING047 == Chr(13)) Then
STRING050 = INTEGER016 - INTEGER019
If (STRING050 == 1) Goto LABEL018
If (STRING050 == 2) Goto LABEL019
If (STRING050 == 3) Goto LABEL019
If (STRING050 == 4) Goto LABEL063
If (STRING050 == 5) Goto LABEL064
If ((STRING050 == 6) && (STRING093 == YesChar())) Goto LABEL068
If ((STRING050 == 6) && (STRING093 == NoChar())) Goto LABEL071
If (STRING050 == 7) Goto LABEL071
Endif
If ((STRING057 == YesChar()) && (STRING047 == STRING029)) Goto LABEL076
If (((((((((STRING047 == Chr(32)) || (STRING047 == "UP")) || (STRING047 == "DOWN")) || (STRING047 == "LEFT")) || (STRING047 == "RIGHT")) || (STRING047 == "A")) || (STRING047 == "a")) || (STRING047 == "Z")) || (STRING047 == "z")) Then
AnsiPos INTEGER015, INTEGER016
If (INTEGER016 == INTEGER019) Then
Print STRING048
AnsiPos INTEGER015, INTEGER016
Goto LABEL017
Endif
AnsiPos INTEGER015, INTEGER016 - 1
Print STRING048
:LABEL017
If (INTEGER016 == INTEGER019 + STRING051) INTEGER016 = INTEGER016 - STRING051
AnsiPos INTEGER015, INTEGER016
STRING048 = ScrText(INTEGER015, INTEGER016, STRING049, 1)
Print STRING070 + ScrText(INTEGER015, INTEGER016, STRING049, 0)
Inc INTEGER016
Endif
Goto LABEL016
:LABEL018
INTEGER002 = 0
DefColor
Cls
If (STRING037 == "L") Then
DispFile PPEPath() + PPEName() + ".dsp", 0
AnsiPos 6, 4
Endif
InputStr STRING026, STRING020, 0, 13, Mask_Pwd(), 1024 + 1 + 8
Case STRING031
BOOLEAN002 = 1
Case STRING032
AdjTime INTEGER013
BOOLEAN002 = 1
Case STRING033
BOOLEAN002 = 1
Case Else
INTEGER002 = INTEGER002 + 1
If (INTEGER002 > STRING054) Hangup
Goto LABEL002
End Select
:LABEL019
STRING101 = ReadLine(PCBDat(), 94)
DefColor
If (STRING037 == "L") Then
If (BOOLEAN002 == 0) Cls
If (BOOLEAN002 == 0) DispFile PPEPath() + PPEName() + ".dsp", 0
AnsiPos 6, 4
Print Space(40)
AnsiPos 7, 4
INTEGER022 = GetY()
Else
FreshLine
Endif
STRING039 = ""
InputStr STRING071, STRING039, "", 30, Mask_Ascii(), 8
If (STRING039 == "") Goto LABEL002
Tokenize STRING039
If (TokCount() <> 1) Then
Goto LABEL020
Endif
If (STRING037 == "L") Then
AnsiPos 7, INTEGER022 + 1
Inc INTEGER022
Else
FreshLine
Endif
STRING040 = ""
InputStr STRING072, STRING040, "", 30, Mask_Ascii(), 8
:LABEL020
If (TokCount() == 1) Then
STRING066 = STRING039 + " " + STRING040
Else
STRING066 = STRING039
Endif
INTEGER017 = U_RecNum(STRING066)
If (INTEGER017 <> -1) Then
Goto LABEL045
Else
If (STRING037 == "L") Then
AnsiPos 7, 7
If (STRING104 == YesChar()) Then
InputStr STRING107, STRING106, "", 30, Mask_Ascii(), 8 + 1
If (STRING106 <> STRING105) Then
Goto LABEL002
Endif
Endif
FreshLine
PromptStr 53, STRING065, 1, "CR", 0 + 8
If (STRING065 == "C") Goto LABEL022
If (STRING065 == "R") Goto LABEL002
Else
FreshLine
If (STRING104 == YesChar()) Then
InputStr STRING107, STRING106, "", 30, Mask_Ascii(), 8 + 1
If (STRING106 <> STRING105) Then
Goto LABEL002
Endif
Endif
FreshLine
PromptStr 53, STRING065, 1, "CR", 0 + 8
If (STRING065 == "C") Goto LABEL022
If (STRING065 == "R") Goto LABEL002
Endif
If ((STRING050 == 2) && (STRING037 == "L")) Then
AnsiPos 7, 7
PrintLn "@X0CYou Are not a USER "
AnsiPos 7, 8
If (STRING104 == YesChar()) Then
InputStr STRING107, STRING106, "", 30, Mask_Ascii(), 8 + 1
If (STRING106 <> STRING105) Goto LABEL002
Endif
STRING067 = YesChar()
If (STRING104 == YesChar()) AnsiPos 7, 9
InputYN "@X0CDo you Wish to Apply", STRING067, ""
If (STRING067 == YesChar()) Then
Goto LABEL022
Goto LABEL021
Endif
Goto LABEL002
Endif
:LABEL021
If ((STRING050 == 2) && (STRING037 <> "L")) Then
If (STRING104 == YesChar()) Then
FreshLine
InputStr STRING107, STRING106, "", 30, Mask_Ascii(), 8 + 1
If (STRING106 <> STRING105) Goto LABEL002
Endif
FreshLine
PrintLn "@X0CYou Are not a USER "
FreshLine
STRING067 = YesChar()
InputYN "@X0CDo you Wish to Apply", STRING067, ""
If (STRING067 == YesChar()) Then
Goto LABEL022
Goto LABEL022
Endif
Goto LABEL002
Endif
:LABEL022
AdjTime 5
DispFile PPEPath() + PPEName() + ".NEW", 0
STRING050 = 3
FCreate 5, PPEPath() + PPEName() + String(PcbNode()) + ".tmp", 1, 0
:LABEL023
INTEGER015 = 3
DefColor
INTEGER009 = ReadLine(PCBDat(), 265)
STRING086 = INTEGER009
STRING036 = ""
AnsiPos 13, INTEGER015
InputStr "_", STRING036, "", 12, Mask_Pwd(), 8 + 1
AnsiPos 4, 20
Print Space(60)
INTEGER010 = Len(STRING036)
If (INTEGER010 < INTEGER009) Then
AnsiPos 5, 20
ClrEol
PrintLn "Password has to be " + STRING086 + " Charcters Long"
Goto LABEL023
Endif
For STRING028 = 3 To 8
If (Right(STRING036, STRING028) == Right(STRING066, STRING028)) Then
AnsiPos 4, 20
DispText 709, 2048
Goto LABEL023
Endif
If (Left(STRING036, STRING028) == Left(STRING066, STRING028)) Then
AnsiPos 4, 20
DispText 709, 2048
Goto LABEL023
Endif
If (Left(STRING036, STRING028) == Right(STRING066, STRING028)) Then
AnsiPos 4, 20
DispText 709, 2048
Goto LABEL023
Endif
If (Right(STRING036, STRING028) == Left(STRING066, STRING028)) Then
AnsiPos 4, 20
DispText 709, 2048
Goto LABEL023
Endif
Next
Inc INTEGER015
AnsiPos 13, INTEGER015
InputStr "_", STRING085, "", 12, Mask_Pwd(), 8 + 1
If (STRING036 <> STRING085) Then
AnsiPos 5, 20
ClrEol
PrintLn STRING090
Goto LABEL023
Endif
FPut 5, Chr(13) + Chr(10)
FPut 5, Chr(13) + Chr(10)
FPutLn 5, STRING036
FPutLn 5, STRING085
Inc INTEGER015
:LABEL024
STRING080 = ""
AnsiPos 13, INTEGER015
InputStr "_", STRING080, "", 24, Mask_Ascii(), 4
If (STRING080 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL024
Endif
FPutLn 5, STRING080
Inc INTEGER015
:LABEL025
STRING081 = ""
AnsiPos 13, INTEGER015
InputStr "_", STRING081, "", 15, "1234567890-", 4
If (STRING081 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL025
Endif
FPutLn 5, STRING081
Inc INTEGER015
:LABEL026
STRING082 = ""
AnsiPos 14, INTEGER015
InputStr "_", STRING082, "", 15, "1234567890-", 4
If (STRING082 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL026
Endif
FPutLn 5, STRING082
Inc INTEGER015
:LABEL027
STRING084 = ""
AnsiPos 2, INTEGER015
InputStr STRING096, STRING084, "", 20, Mask_Ascii(), 4
If (STRING084 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL027
Endif
FPutLn 5, STRING084
Inc INTEGER015
:LABEL028
STRING083 = ""
AnsiPos 29, INTEGER015
InputYN "", STRING083, 1
If (STRING083 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL028
Endif
FPutLn 5, STRING083
AnsiPos 78, 11
SaveScrn
Cls
GetToken STRING109
If (Exist(ReadLine(PCBDat(), 45))) Goto LABEL029
Newline
Print "@X0CError reading PCBPROT.DAT! Aborting ... @X07"
Delay 50
Log "Error reading PCBPROT.DAT!", 0
FreshLine
End
Goto LABEL032
:LABEL029
STRING119 = "N"
FOpen 1, ReadLine(PCBDat(), 45), 0, 0
:LABEL030
If (Ferr(1)) Goto LABEL031
FGet 1, STRING115
If (Len(STRING115)) Then
STRING115 = Replace(STRING115, Chr(32), Chr(255))
Inc INTEGER024
STRING115 = Replace(STRING115, ",", ";")
Tokenize STRING115
While (TokCount() > 0) Do
Inc INTEGER023
GetToken TSTRING110(INTEGER024, INTEGER023)
EndWhile
TSTRING111(INTEGER024) = TSTRING110(INTEGER024, 1)
TSTRING113(INTEGER024) = TSTRING110(INTEGER024, 2)
TSTRING114(INTEGER024) = Replace(TSTRING110(INTEGER024, 4), Chr(255), Chr(32))
TSTRING112(INTEGER024) = TSTRING110(INTEGER024, 5)
Endif
INTEGER023 = 0
Goto LABEL030
:LABEL031
FClose 1
If (Right(STRING091, (1 <> "\"))) STRING091 = STRING091 + "\"
STRING117 = STRING091 + "PCBS"
STRING118 = STRING091 + "PCBR"
If (Strip(STRING109, Chr(32)) <> "") Then
STRING109 = Strip(STRING109, Chr(32))
For STRING028 = 1 To INTEGER024
STRING116 = STRING116 + TSTRING111(STRING028)
Next
INTEGER025 = InStr(STRING116, STRING109)
If (STRING109 == "N") Goto LABEL038
Gosub LABEL036
Endif
Gosub LABEL033
:LABEL032
Goto LABEL038
:LABEL033
Newline
PrintLn "@X70┌────────────────────────────────────────────────────────@X7F┐@X07"
PrintLn "@X70│ @X7BP R O T O C O L S A V A I L A B L E@POS:58@@X7F│@X07"
PrintLn "@X70└@X7F────────────────────────────────────────────────────────┘@X07"
Newline
PrintLn "@X70┌@X7F────────────────────────────────────────────────────────┐@X07"
For STRING028 = 1 To INTEGER024
If (((TSTRING113(STRING028) <> "I") && !Exist(STRING117 + TSTRING111(STRING028) + ".BAT")) && !Exist(STRING118 + TSTRING111(STRING028) + ".BAT")) BOOLEAN003 = 1
If (!BOOLEAN003 || (TSTRING111(STRING028) == "N")) Then
STRING116 = STRING116 + TSTRING111(STRING028)
If (TSTRING111(STRING028) == U_Trans) Then
PrintLn "@X70│ @XF4=> @X71(@X7E" + TSTRING111(STRING028) + "@X71) " + TSTRING114(STRING028) + "@POS:58@@X7F│@X07"
Goto LABEL034
Endif
PrintLn "@X70│ @X71(@X7E" + TSTRING111(STRING028) + "@X71) " + TSTRING114(STRING028) + "@POS:58@@X7F│@X07"
Endif
:LABEL034
BOOLEAN003 = 0
Next
PrintLn "@X70└────────────────────────────────────────────────────────@X7F┘@X07"
PromptStr 198, STRING119, 1, STRING116, 2 + 4 + 8 + 128 + 256 + 8192
If (Len(STRING119) && (STRING119 <> U_Trans)) Then
STRING109 = Left(STRING119, 1)
If (STRING109 == "N") Goto LABEL038
INTEGER025 = InStr(STRING116, STRING109)
Goto LABEL036
Goto LABEL035
Endif
:LABEL035
Return
:LABEL036
If (((TSTRING113(INTEGER025) <> "I") && !Exist(STRING117 + TSTRING111(INTEGER025) + ".BAT")) && !Exist(STRING118 + TSTRING111(INTEGER025) + ".BAT")) BOOLEAN003 = 1
If ((STRING109 == TSTRING111(INTEGER025)) && !BOOLEAN003) Then
If (TSTRING112(INTEGER025) == YesChar()) Then
If (ErrCorrect()) Goto LABEL037
Newlines 2
PrintLn "@X0CProtocol Unavailable - Modem Type Wrong!"
End
Endif
:LABEL037
Else
Return
Endif
:LABEL038
If (Strip(STRING109, Chr(32)) <> "") Then
Endif
FPutLn 5, STRING109
RestScrn
If (Psa(3)) Then
Inc INTEGER015
Inc INTEGER015
AnsiPos 1, INTEGER015
DispFile PPEPath() + PPEName() + "1.NEW", 0
Inc INTEGER015
Inc INTEGER015
:LABEL039
AnsiPos 17, INTEGER015
InputStr "_", U_Addr(0), "", 25, Mask_Ascii(), 4
If (U_Addr(0) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL039
Endif
FPutLn 5, U_Addr(0)
Inc INTEGER015
AnsiPos 17, INTEGER015
InputStr "_", U_Addr(1), "", 25, Mask_Ascii(), 4
FPutLn 5, U_Addr(1)
Inc INTEGER015
:LABEL040
AnsiPos 8, INTEGER015
InputStr "_", U_Addr(2), "", 15, Mask_Ascii(), 4
If (U_Addr(2) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL040
Endif
FPutLn 5, U_Addr(2)
Inc INTEGER015
:LABEL041
AnsiPos 9, INTEGER015
InputStr "_", U_Addr(3), "", 15, Mask_Ascii(), 4
If (U_Addr(3) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL041
Endif
FPutLn 5, U_Addr(3)
Inc INTEGER015
:LABEL042
AnsiPos 12, INTEGER015
InputStr "_", U_Addr(4), "", 15, "1234567890-", 4
If (U_Addr(4) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL042
Endif
FPutLn 5, U_Addr(4)
Inc INTEGER015
:LABEL043
AnsiPos 11, INTEGER015
InputStr "_", U_Addr(5), "", 15, Mask_Ascii(), 4
If (U_Addr(5) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL043
Endif
FPutLn 5, U_Addr(5)
Endif
If (Psa(2)) Then
Inc INTEGER015
AnsiPos 1, INTEGER015
DispFile PPEPath() + PPEName() + ".als", 0
:LABEL044
U_Ver = ""
AnsiPos 2, INTEGER015
InputStr STRING095, U_Ver, "", 25, Mask_Ascii(), 4
If (U_Ver == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL070
Goto LABEL044
Endif
FPutLn 5, U_Ver
Endif
FClose 5
Goto LABEL073
Goto LABEL045
Goto LABEL002
Endif
:LABEL045
GetAltUser INTEGER017
If (U_Sec == "0") Then
AnsiPos 5, 20
PrintLn STRING089
WaitFor "shit", STRING027, 3
Hangup
Endif
:LABEL046
AnsiPos 7, 3
Print STRING008 + STRING101
If (STRING037 == "L") Then
AnsiPos 7, INTEGER022 + 1
Print " "
AnsiPos 7, INTEGER022 + 1
InputStr STRING092, STRING036, "", 12, Mask_Pwd(), 8 + 1
Else
FreshLine
InputStr STRING092, STRING036, "", 12, Mask_Pwd(), 8 + 1
Endif
If ((STRING036 <> U_Pwd) && (STRING037 == "L")) Then
AnsiPos 7, 8
DispText 92, 2048
INTEGER003 = INTEGER003 + 1
If (INTEGER003 == 3) Then
If (ReadLine(PCBDat(), 196) == -1) Then
DispText 595, 2048 + 64
PromptStr 596, STRING067, 1, "YyNy", 4 + 8
If (STRING067 == YesChar()) Then
STRING103 = YesChar()
Goto LABEL065
Goto LABEL047
Endif
Hangup
:LABEL047
Goto LABEL048
Endif
Hangup
Endif
:LABEL048
Goto LABEL046
Endif
If ((STRING036 <> U_Pwd) && (STRING037 <> "L")) Then
FreshLine
DispText 92, 2048
INTEGER003 = INTEGER003 + 1
If (INTEGER003 == 3) Then
If (ReadLine(PCBDat(), 196) == -1) Then
DispText 595, 0 + 64
PromptStr 596, STRING067, 1, "YyNy", 4 + 8
If (STRING067 == YesChar()) Then
STRING103 = YesChar()
Goto LABEL065
Goto LABEL049
Endif
Hangup
:LABEL049
Goto LABEL050
Endif
Hangup
Endif
:LABEL050
Goto LABEL046
Endif
If (STRING058 == NoChar()) Goto LABEL061
If (U_Sec >= STRING041) Goto LABEL061
INTEGER007 = 0
INTEGER008 = 0
FOpen 1, PPEPath() + "tht-info.cfg", 0, 0
FDGet STRING003
STRING004 = STRING003
FClose 1
Tokenize U_Name()
If (TokCount() == 3) Then
GetToken STRING014
GetToken STRING015
GetToken STRING016
STRING014 = Strip(STRING014, " ")
STRING016 = Strip(STRING016, " ")
STRING014 = Strip(STRING014, ".")
STRING016 = Strip(STRING016, ".")
STRING014 = Left(STRING014, 3)
STRING015 = Right(STRING016, 4)
Else
GetToken STRING014
GetToken STRING015
STRING014 = Strip(STRING014, " ")
STRING015 = Strip(STRING015, " ")
STRING014 = Strip(STRING014, ".")
STRING015 = Strip(STRING015, ".")
STRING014 = Left(STRING014, 3)
STRING015 = Right(STRING015, 4)
Endif
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".vot")) Then
FOpen 2, PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".vot", 0, 0
:LABEL051
If (Ferr(2)) Goto LABEL052
FGet 2, STRING009
Tokenize STRING009
If (TokCount() == 4) Then
GetToken STRING010
GetToken STRING011
GetToken STRING012
GetToken STRING013
If (STRING013 == "Y") Inc INTEGER007
If (STRING013 == "N") Inc INTEGER008
If (INTEGER007 >= STRING018) Goto LABEL052
If (INTEGER008 >= STRING019) Goto LABEL052
Endif
If (TokCount() == 3) Then
GetToken STRING010
GetToken STRING011
GetToken STRING012
If (STRING012 == "Y") Inc INTEGER007
If (STRING012 == "N") Inc INTEGER008
If (INTEGER007 >= STRING018) Goto LABEL052
If (INTEGER008 >= STRING019) Goto LABEL052
Endif
If (TokCount() == 2) Then
GetToken STRING010
GetToken STRING011
If (STRING011 == "Y") Inc INTEGER007
If (STRING011 == "N") Inc INTEGER008
If (INTEGER007 >= STRING018) Goto LABEL052
If (INTEGER008 >= STRING019) Goto LABEL052
Endif
Goto LABEL051
:LABEL052
FClose 2
STRING006 = INTEGER007
STRING007 = INTEGER008
AnsiPos 7, 4
PrintLn Space(43)
AnsiPos 7, 5
PrintLn Space(43)
AnsiPos 7, 6
PrintLn Space(43)
AnsiPos 7, 7
PrintLn Space(43)
AnsiPos 7, 8
PrintLn Space(43)
AnsiPos 7, 5
PrintLn "" + U_Name() + "@POS:25@" + "Your Current Stats"
AnsiPos 7, 6
PrintLn "You Need " + STRING018 + " Votes to gain Access to the Board"
AnsiPos 7, 7
PrintLn " Votes for You> " + STRING006
AnsiPos 7, 8
PrintLn " Votes against You> " + STRING007
Newlines 4
If (INTEGER007 >= STRING018) Goto LABEL053
If (INTEGER008 >= STRING019) Goto LABEL057
Goto LABEL061
:LABEL053
U_Sec = STRING017
PutUser
AnsiPos 6, 14
PrintLn "@X0EYou have been accepted as a @X0CUSER @X0Eon this Board@X07"
Newlines 4
Wait
FClose 1
FClose 2
FOpen 1, PPEPath() + "apps\waiting.app", 2, 0
FAppend 2, PPEPath() + "apps\waiting.tmp", 1, 0
:LABEL054
If (Ferr(1)) Goto LABEL056
FDGet STRING005
If (STRING005 == "") Goto LABEL056
If (STRING005 == U_Name()) Then
PrintLn
Goto LABEL055
Endif
FPutLn 2, STRING005
:LABEL055
Goto LABEL054
:LABEL056
FClose 1
FClose 2
Copy PPEPath() + "APPS\waiting.tmp", PPEPath() + "APPS\waiting.app"
Delete PPEPath() + "APPS\waiting.tmp"
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".vot")) Delete PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".vot"
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".grp")) Delete PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".grp"
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".cmt")) Delete PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".cmt"
For STRING028 = STRING004 To 1 Step -1
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + "." + STRING028)) Delete PPEPath() + "apps\" + STRING014 + "_" + STRING015 + "." + STRING028
Next
Goto LABEL061
:LABEL057
AnsiPos 8, 9
PrintLn "@X0CSorry but your Application has been Refused@X8C!!!!@X07"
Newlines 5
Wait
FClose 1
FClose 2
FOpen 1, PPEPath() + "apps\waiting.app", 2, 0
FAppend 2, PPEPath() + "apps\waiting.tmp", 1, 0
:LABEL058
If (Ferr(1)) Goto LABEL060
FDGet STRING005
If (STRING005 == "") Goto LABEL060
If (STRING005 == U_Name()) Then
PrintLn
Goto LABEL059
Endif
FPutLn 2, STRING005
:LABEL059
Goto LABEL058
:LABEL060
FClose 2
FClose 1
Copy PPEPath() + "APPS\waiting.tmp", PPEPath() + "APPS\waiting.app"
Delete PPEPath() + "APPS\waiting.tmp"
DelUser
U_Sec = "0"
PutUser
Hangup
Endif
:LABEL061
If (STRING058 == NoChar()) Goto LABEL062
If (U_Sec < STRING041) Then
AnsiPos 8, 9
PrintLn STRING074
Newlines 7
Wait
Goto LABEL002
Endif
:LABEL062
If (STRING037 == "L") Then
AnsiPos 7, 4
If (BOOLEAN002 == 0) PrintLn Space(47)
AnsiPos 7, 4
If (BOOLEAN002 == 0) PrintLn STRING073
AnsiPos 7, 5
If (BOOLEAN002 == 0) PrintLn Space(47)
AnsiPos 7, 6
If (BOOLEAN002 == 0) PrintLn Space(47)
AnsiPos 7, 7
If (BOOLEAN002 == 0) PrintLn Space(47)
AnsiPos 7, 8
If (BOOLEAN002 == 0) PrintLn Space(47)
AnsiPos 7, 6
If (BOOLEAN002 == 0) PrintLn STRING075 + " " + STRING031 + "@X07"
If (STRING057 == YesChar()) Then
AnsiPos 7, 7
Print STRING046 + STRING029
Endif
AnsiPos 20, 20
Wait
Goto LABEL073
Else
FreshLine
If (BOOLEAN002 == 0) PrintLn STRING073
FreshLine
If (BOOLEAN002 == 0) PrintLn STRING075 + " " + STRING031 + "@X07"
If (STRING057 == YesChar()) Then
FreshLine
Print STRING046 + STRING029
Endif
Newline
Wait
Goto LABEL073
:LABEL063
DefColor
Cls
PrintLn "@X0EGoodbye from " + Chr(64) + Chr(88) + Chr(48) + Chr(67) + Chr(60) + Chr(60) + Chr(64) + Chr(88) + Chr(48) + Chr(69) + Chr(84) + Chr(72) + Chr(84) + Chr(64) + Chr(88) + Chr(48) + Chr(67) + Chr(62) + Chr(62) + "@X0F Matrix!"
Log " User logged out via MATRIX at " + Time(), 0
Hangup
:LABEL064
DefColor
Cls
If (INTEGER014 == 1) Then
KbdStuff "1" + Chr(13)
Else
DispFile PPEPath() + "sysops.dsp", 0
PrintLn " @X08 D@X07e@X0Ffault will Be (@X071@X08)"
For STRING028 = 1 To INTEGER014
PrintLn "@X0F" + STRING028 + "@X08. @X0F" + TSTRING035(STRING028)
Next
Endif
STRING021 = 1
Input "@X0F[@X0C@SYSTIME@@X0F] @X0EMATRIX Mail Command? _", STRING021
If ((STRING021 < 1) || (STRING021 > INTEGER014)) Goto LABEL064
Newlines 2
STRING022 = ""
InputStr STRING042, STRING022, "", 20, Mask_Ascii(), 2 + 8
If (STRING022 == "") Goto LABEL002
STRING023 = ""
Newlines 2
InputStr STRING043, STRING023, "", 20, Mask_Ascii(), 2
If (STRING023 == "") Goto LABEL002
:LABEL065
If (STRING103 == YesChar()) Then
STRING021 = "1"
STRING022 = STRING066
STRING023 = "Forgot My Passsword"
Endif
Cls
STRING053 = ReadLine(PCBDat(), 109)
DispFile PPEPath() + "message.dsp", 0
AnsiPos 3, 2
PrintLn "@X04To : " + "@X0E" + """" + TSTRING035(STRING021) + """"
AnsiPos 32, 2
PrintLn "@X0F" + STRING053
AnsiPos 3, 3
PrintLn "@X04From @X0F: " + """" + STRING022 + """"
AnsiPos 32, 3
PrintLn "@X0ESubject @X0F: " + STRING023
FClose 1
FAppend 1, PPEPath() + PPEName() + String(PcbNode()) + ".mal", 1, 0
BOOLEAN001 = 0
AnsiPos 1, 6
INTEGER012 = 6
:LABEL066
If (BOOLEAN001) Goto LABEL067
STRING024 = ""
InputStr "_", STRING024, "", 78, Mask_Ascii(), 512 + 256
Inc INTEGER012
If (INTEGER012 >= 23) Then
Gosub LABEL072
Endif
If (Upper(STRING024) == "/A") Then
BOOLEAN001 = 1
FClose 1
Endif
If (Upper(STRING024) == "/S") Then
BOOLEAN001 = 1
PrintLn "Sending Message to " + TSTRING035(STRING021)
FClose 1
Message INTEGER004, TSTRING035(STRING021), STRING022, STRING023, "R", 0, 0, 0, PPEPath() + PPEName() + String(PcbNode()) + ".mal"
Endif
FPutLn 1, STRING024
Goto LABEL066
:LABEL067
If (STRING103 == YesChar()) Hangup
Goto LABEL002
:LABEL068
TIME001 = ReadLine(PCBDat(), 189)
TIME002 = ReadLine(PCBDat(), 190)
If ((Time() > TIME001) || (Time() < TIME002)) Then
INTEGER003 = INTEGER003 + 1
If (INTEGER003 > STRING054) Then
PrintLn
PrintLn STRING034
Hangup
Endif
DefColor
If (STRING037 == "L") Then
Cls
DispFile PPEPath() + PPEName() + ".dsp", 0
AnsiPos 7, 4
STRING025 = ""
Input STRING078, STRING025
If (STRING025 == "") Goto LABEL002
PageOn
AnsiPos 7, 6
Print "Page ends in 10 seconds"
Else
FreshLine
STRING025 = ""
Input STRING078, STRING025
If (STRING025 == "") Goto LABEL002
PageOn
FreshLine
Print "Page ends in 10 seconds"
Endif
For STRING028 = 1 To 10
Print "."
Sound 110
Delay 2
Sound 220
Delay 2
Sound 440
Delay 2
Sound 880
Delay 2
Sound 110
Delay 2
Sound 220
Delay 2
Sound 440
Delay 2
Sound 880
Delay 2
Sound 0
Delay 10
If (Inkey() == " ") Then
Chat
Goto LABEL002
Endif
Next
INTEGER002 = INTEGER002 + 1
If (INTEGER002 > STRING054) BOOLEAN001 = 1
Else
DefColor
Cls
DispText 128, 0 + 64
PromptStr 571, STRING067, 1, "YyNy", 4 + 8
If (STRING067 == YesChar()) Goto LABEL064
Endif
Endif
Goto LABEL004
:LABEL069
Goto LABEL002
:LABEL070
DispText 117, 2048
Return
:LABEL071
Call STRING045
Goto LABEL002
:LABEL072
INTEGER011 = 7
For STRING028 = 1 To 17
STRING088 = ScrText(1, INTEGER011, 78, 1)
AnsiPos 1, INTEGER011 - 1
Print STRING088
Inc INTEGER011
Next
AnsiPos 1, INTEGER011 - 2
Print Space(77) + Chr(13)
Return
:LABEL073
Tokenize STRING066
INTEGER005 = ReadLine(PCBDat(), 195)
If (INTEGER005 == -1) Then
If (STRING050 == 3) Then
KbdStuff STRING066 + Chr(13) + Chr(13) + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Goto LABEL074
Endif
If (TokCount() == 1) Then
KbdStuff STRING066 + Chr(13) + Chr(13) + Chr(13) + STRING036 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Goto LABEL074
Endif
KbdStuff STRING066 + Chr(13) + Chr(13) + STRING036 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Endif
:LABEL074
If (INTEGER005 == 0) Then
If (STRING050 == 3) Then
KbdStuff STRING066 + Chr(13) + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Goto LABEL075
Endif
If (TokCount() == 1) Then
KbdStuff STRING066 + Chr(13) + Chr(13) + STRING036 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Goto LABEL075
Endif
KbdStuff STRING066 + Chr(13) + STRING036 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Endif
:LABEL075
STRING099 = " Do Not HEX-Edit This File !!! <<<THT>>>"
Endif
Endif
Endif
:LABEL076
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 14 Cls
; 13 ClrEol
; 6 Wait
; 301 Goto
; 162 Let
; 46 Print
; 50 PrintLn
; 223 If
; 14 DispFile
; 3 Input
; 1 FCreate
; 8 FOpen
; 3 FAppend
; 19 FClose
; 2 FGet
; 2 FPut
; 18 FPutLn
; 1 StartDisp
; 10 Hangup
; 2 PutUser
; 12 DefColor
; 10 Delete
; 1 DelUser
; 2 AdjTime
; 2 Log
; 26 InputStr
; 3 InputYN
; 14 Gosub
; 4 Return
; 6 PromptStr
; 13 Delay
; 43 Inc
; 5 Newline
; 7 Newlines
; 5 Tokenize
; 16 GetToken
; 10 DispText
; 8 KbdStuff
; 2 Call
; 6 KbdFile
; 1 WaitFor
; 114 AnsiPos
; 24 FreshLine
; 1 Message
; 1 SaveScrn
; 1 RestScrn
; 9 Sound
; 1 Chat
; 2 PageOn
; 1 FDefIn
; 62 FDGet
; 2 Copy
; 1 GetAltUser
;
;
; ■ Functions used :
;
; 7 -
; 531 +
; 5 -
; 163 ==
; 19 <>
; 19 <
; 12 <=
; 8 >
; 34 >=
; 138 !
; 39 &&
; 26 ||
; 5 Len(
; 8 Upper()
; 7 Left()
; 9 Right()
; 13 Space()
; 4 Ferr()
; 269 Chr()
; 2 InStr()
; 2 Random()
; 1 Date()
; 3 Time()
; 4 U_Name()
; 3 NoChar()
; 25 YesChar()
; 3 Replace()
; 17 Strip()
; 2 Inkey()
; 20 String()
; 5 Mask_Pwd()
; 18 Mask_Ascii()
; 12 PCBDat()
; 60 PPEPath()
; 20 PcbNode()
; 12 ReadLine()
; 18 Exist()
; 4 S2I()
; 1 GetY()
; 2 Psa()
; 29 PPEName()
; 9 TokCount()
; 1 U_RecNum()
; 4 ScrText()
; 1 ErrCorrect()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WRDABCdH
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
; 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 - Delete user ■ 5
; Program is deleting account(s)... Check!
; ■ Search for : DELUSER
;
; A - Adjust online time remaining ■ 5
; Program modify the amount of online time remaining, this may
; be a way to bypass time limits
; ■ Search for : ADJTIME
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
; 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()
;
; H - Read Password or Password History ■ 5
; Program is reading the user's password or last password history
; This may be ok for a password manager, but it is very suspect. Check!
; ■ Search for : U_PWDHIST, U_PWD
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 12 For/Next
; 1 While/EndWhile
; 100 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------