home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
T
/
THTMT212.ZIP
/
MATRIX.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1993-12-31
|
31KB
|
1,717 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
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
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 TSTRING101(50,7)
String TSTRING102(50)
String TSTRING103(50)
String TSTRING104(50)
String TSTRING105(50)
String STRING106
String STRING107
String STRING108
String STRING109
String STRING110
Time TIME001
Time TIME002
;------------------------------------------------------------------------------
AdjTime 5
FDefIn 1
FDefOut 2
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) Delete PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
STRING096 = "@X09" + 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 = "@X0E" + Chr(84) + Chr(72) + Chr(84) + "-" + Chr(77) + Chr(97) + Chr(116) + Chr(114) + Chr(105) + Chr(120) + " @X09v" + Chr(50) + "." + Chr(49) + Chr(50) + " " + "@X0ECompiled on @X0C12-31-93@X07"
If (STRING052 <> "@X0ETHT-Matrix @X09v2.12" + " " + "@X0ECompiled on @X0C12-31-93@X07") Goto LABEL070
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".mal")) Delete PPEPath() + PPEName() + String(PcbNode()) + ".mal"
STRING097 = ReadLine(PCBDat(), 2)
STRING097 = Strip(STRING097, "<")
STRING097 = Strip(STRING097, ">")
STRING097 = Strip(STRING097, "*")
STRING097 = Strip(STRING097, ")")
STRING097 = Strip(STRING097, "(")
STRING097 = Strip(STRING097, "{")
STRING097 = Strip(STRING097, "}")
STRING097 = Strip(STRING097, "[")
STRING097 = Strip(STRING097, "]")
STRING097 = Strip(STRING097, "~")
STRING097 = Strip(STRING097, "!")
STRING097 = Strip(STRING097, "@")
STRING097 = Strip(STRING097, "#")
STRING097 = Strip(STRING097, "$")
STRING097 = Strip(STRING097, "%")
STRING097 = Strip(STRING097, "^")
STRING097 = Strip(STRING097, "&")
STRING097 = Strip(STRING097, ":")
STRING097 = Strip(STRING097, ";")
STRING097 = Strip(STRING097, "'")
STRING097 = Strip(STRING097, ".")
STRING097 = Strip(STRING097, ",")
STRING097 = Strip(STRING097, "?")
STRING097 = Strip(STRING097, "/")
STRING097 = Strip(STRING097, "|")
STRING097 = Strip(STRING097, "\")
STRING097 = Strip(STRING097, "+")
STRING097 = Strip(STRING097, "=")
STRING097 = Strip(STRING097, ".")
STRING097 = Strip(STRING097, "«")
STRING097 = Strip(STRING097, "»")
STRING097 = Strip(STRING097, "Ü")
STRING097 = Strip(STRING097, "┤")
STRING097 = Strip(STRING097, "│")
STRING097 = Strip(STRING097, "╡")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, " ")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "")
STRING097 = Strip(STRING097, "Ç")
STRING097 = Strip(STRING097, "É")
STRING097 = Strip(STRING097, "á")
STRING097 = Strip(STRING097, "░")
STRING097 = Strip(STRING097, "ü")
STRING097 = Strip(STRING097, "æ")
STRING097 = Strip(STRING097, "í")
STRING097 = Strip(STRING097, "▒")
STRING097 = Strip(STRING097, "é")
STRING097 = Strip(STRING097, "Æ")
STRING097 = Strip(STRING097, "ó")
STRING097 = Strip(STRING097, "▓")
STRING097 = Strip(STRING097, "â")
STRING097 = Strip(STRING097, "ô")
STRING097 = Strip(STRING097, "ú")
STRING097 = Strip(STRING097, "│")
STRING097 = Strip(STRING097, "ä")
STRING097 = Strip(STRING097, "ö")
STRING097 = Strip(STRING097, "ñ")
STRING097 = Strip(STRING097, "┤")
STRING097 = Strip(STRING097, "à")
STRING097 = Strip(STRING097, "ò")
STRING097 = Strip(STRING097, "Ñ")
STRING097 = Strip(STRING097, "╡")
STRING097 = Strip(STRING097, "å")
STRING097 = Strip(STRING097, "û")
STRING097 = Strip(STRING097, "ª")
STRING097 = Strip(STRING097, "╢")
STRING097 = Strip(STRING097, "ç")
STRING097 = Strip(STRING097, "ù")
STRING097 = Strip(STRING097, "º")
STRING097 = Strip(STRING097, "╖")
STRING097 = Strip(STRING097, "ê")
STRING097 = Strip(STRING097, "ÿ")
STRING097 = Strip(STRING097, "¿")
STRING097 = Strip(STRING097, "╕")
STRING097 = Strip(STRING097, "ë")
STRING097 = Strip(STRING097, "Ö")
STRING097 = Strip(STRING097, "⌐")
STRING097 = Strip(STRING097, "╣")
STRING097 = Strip(STRING097, "è")
STRING097 = Strip(STRING097, "Ü")
STRING097 = Strip(STRING097, "¬")
STRING097 = Strip(STRING097, "║")
STRING097 = Strip(STRING097, "ï")
STRING097 = Strip(STRING097, "¢")
STRING097 = Strip(STRING097, "½")
STRING097 = Strip(STRING097, "╗")
STRING097 = Strip(STRING097, "î")
STRING097 = Strip(STRING097, "£")
STRING097 = Strip(STRING097, "¼")
STRING097 = Strip(STRING097, "╝")
STRING097 = Strip(STRING097, "ì")
STRING097 = Strip(STRING097, "¥")
STRING097 = Strip(STRING097, "¡")
STRING097 = Strip(STRING097, "╜")
STRING097 = Strip(STRING097, "Ä")
STRING097 = Strip(STRING097, "₧")
STRING097 = Strip(STRING097, "«")
STRING097 = Strip(STRING097, "╛")
STRING097 = Strip(STRING097, "Å")
STRING097 = Strip(STRING097, "ƒ")
STRING097 = Strip(STRING097, "»")
STRING097 = Strip(STRING097, "┐")
STRING097 = Strip(STRING097, " ")
STRING097 = Strip(STRING097, "└")
STRING097 = Strip(STRING097, "╨")
STRING097 = Strip(STRING097, "α")
STRING097 = Strip(STRING097, "≡")
STRING097 = Strip(STRING097, "┴")
STRING097 = Strip(STRING097, "╤")
STRING097 = Strip(STRING097, "ß")
STRING097 = Strip(STRING097, "±")
STRING097 = Strip(STRING097, "┬")
STRING097 = Strip(STRING097, "╥")
STRING097 = Strip(STRING097, "Γ")
STRING097 = Strip(STRING097, "≥")
STRING097 = Strip(STRING097, "├")
STRING097 = Strip(STRING097, "╙")
STRING097 = Strip(STRING097, "π")
STRING097 = Strip(STRING097, "≤")
STRING097 = Strip(STRING097, "─")
STRING097 = Strip(STRING097, "╘")
STRING097 = Strip(STRING097, "Σ")
STRING097 = Strip(STRING097, "⌠")
STRING097 = Strip(STRING097, "┼")
STRING097 = Strip(STRING097, "╒")
STRING097 = Strip(STRING097, "σ")
STRING097 = Strip(STRING097, "⌡")
STRING097 = Strip(STRING097, "╞")
STRING097 = Strip(STRING097, "╓")
STRING097 = Strip(STRING097, "µ")
STRING097 = Strip(STRING097, "÷")
STRING097 = Strip(STRING097, "╟")
STRING097 = Strip(STRING097, "╫")
STRING097 = Strip(STRING097, "τ")
STRING097 = Strip(STRING097, "≈")
STRING097 = Strip(STRING097, "╚")
STRING097 = Strip(STRING097, "╪")
STRING097 = Strip(STRING097, "Φ")
STRING097 = Strip(STRING097, "°")
STRING097 = Strip(STRING097, "╔")
STRING097 = Strip(STRING097, "┘")
STRING097 = Strip(STRING097, "Θ")
STRING097 = Strip(STRING097, "∙")
STRING097 = Strip(STRING097, "╩")
STRING097 = Strip(STRING097, "┌")
STRING097 = Strip(STRING097, "Ω")
STRING097 = Strip(STRING097, "·")
STRING097 = Strip(STRING097, "╦")
STRING097 = Strip(STRING097, "█")
STRING097 = Strip(STRING097, "δ")
STRING097 = Strip(STRING097, "√")
STRING097 = Strip(STRING097, "╠")
STRING097 = Strip(STRING097, "▄")
STRING097 = Strip(STRING097, "∞")
STRING097 = Strip(STRING097, "ⁿ")
STRING097 = Strip(STRING097, "═")
STRING097 = Strip(STRING097, "▌")
STRING097 = Strip(STRING097, "φ")
STRING097 = Strip(STRING097, "²")
STRING097 = Strip(STRING097, "╬")
STRING097 = Strip(STRING097, "▐")
STRING097 = Strip(STRING097, "ε")
STRING097 = Strip(STRING097, "■")
STRING097 = Strip(STRING097, "╧")
STRING097 = Strip(STRING097, "▀")
STRING097 = Strip(STRING097, "∩")
STRING097 = Strip(STRING097, " ")
STRING097 = Right(STRING097, 2)
STRING098 = ReadLine(PCBDat(), 94)
STRING098 = Strip(STRING098, "<")
STRING098 = Strip(STRING098, ">")
STRING098 = Strip(STRING098, "*")
STRING098 = Strip(STRING098, ")")
STRING098 = Strip(STRING098, "(")
STRING098 = Strip(STRING098, "{")
STRING098 = Strip(STRING098, "}")
STRING098 = Strip(STRING098, "[")
STRING098 = Strip(STRING098, "]")
STRING098 = Strip(STRING098, "~")
STRING098 = Strip(STRING098, "!")
STRING098 = Strip(STRING098, "@")
STRING098 = Strip(STRING098, "#")
STRING098 = Strip(STRING098, "$")
STRING098 = Strip(STRING098, "%")
STRING098 = Strip(STRING098, "^")
STRING098 = Strip(STRING098, "&")
STRING098 = Strip(STRING098, ":")
STRING098 = Strip(STRING098, ";")
STRING098 = Strip(STRING098, "'")
STRING098 = Strip(STRING098, ".")
STRING098 = Strip(STRING098, ",")
STRING098 = Strip(STRING098, "?")
STRING098 = Strip(STRING098, "/")
STRING098 = Strip(STRING098, "|")
STRING098 = Strip(STRING098, "\")
STRING098 = Strip(STRING098, "+")
STRING098 = Strip(STRING098, "=")
STRING098 = Strip(STRING098, ".")
STRING098 = Strip(STRING098, "«")
STRING098 = Strip(STRING098, "»")
STRING098 = Strip(STRING098, "Ü")
STRING098 = Strip(STRING098, "┤")
STRING098 = Strip(STRING098, "│")
STRING098 = Strip(STRING098, "╡")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, " ")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "")
STRING098 = Strip(STRING098, "Ç")
STRING098 = Strip(STRING098, "É")
STRING098 = Strip(STRING098, "á")
STRING098 = Strip(STRING098, "░")
STRING098 = Strip(STRING098, "ü")
STRING098 = Strip(STRING098, "æ")
STRING098 = Strip(STRING098, "í")
STRING098 = Strip(STRING098, "▒")
STRING098 = Strip(STRING098, "é")
STRING098 = Strip(STRING098, "Æ")
STRING098 = Strip(STRING098, "ó")
STRING098 = Strip(STRING098, "▓")
STRING098 = Strip(STRING098, "â")
STRING098 = Strip(STRING098, "ô")
STRING098 = Strip(STRING098, "ú")
STRING098 = Strip(STRING098, "│")
STRING098 = Strip(STRING098, "ä")
STRING098 = Strip(STRING098, "ö")
STRING098 = Strip(STRING098, "ñ")
STRING098 = Strip(STRING098, "┤")
STRING098 = Strip(STRING098, "à")
STRING098 = Strip(STRING098, "ò")
STRING098 = Strip(STRING098, "Ñ")
STRING098 = Strip(STRING098, "╡")
STRING098 = Strip(STRING098, "å")
STRING098 = Strip(STRING098, "û")
STRING098 = Strip(STRING098, "ª")
STRING098 = Strip(STRING098, "╢")
STRING098 = Strip(STRING098, "ç")
STRING098 = Strip(STRING098, "ù")
STRING098 = Strip(STRING098, "º")
STRING098 = Strip(STRING098, "╖")
STRING098 = Strip(STRING098, "ê")
STRING098 = Strip(STRING098, "ÿ")
STRING098 = Strip(STRING098, "¿")
STRING098 = Strip(STRING098, "╕")
STRING098 = Strip(STRING098, "ë")
STRING098 = Strip(STRING098, "Ö")
STRING098 = Strip(STRING098, "⌐")
STRING098 = Strip(STRING098, "╣")
STRING098 = Strip(STRING098, "è")
STRING098 = Strip(STRING098, "Ü")
STRING098 = Strip(STRING098, "¬")
STRING098 = Strip(STRING098, "║")
STRING098 = Strip(STRING098, "ï")
STRING098 = Strip(STRING098, "¢")
STRING098 = Strip(STRING098, "½")
STRING098 = Strip(STRING098, "╗")
STRING098 = Strip(STRING098, "î")
STRING098 = Strip(STRING098, "£")
STRING098 = Strip(STRING098, "¼")
STRING098 = Strip(STRING098, "╝")
STRING098 = Strip(STRING098, "ì")
STRING098 = Strip(STRING098, "¥")
STRING098 = Strip(STRING098, "¡")
STRING098 = Strip(STRING098, "╜")
STRING098 = Strip(STRING098, "Ä")
STRING098 = Strip(STRING098, "₧")
STRING098 = Strip(STRING098, "«")
STRING098 = Strip(STRING098, "╛")
STRING098 = Strip(STRING098, "Å")
STRING098 = Strip(STRING098, "ƒ")
STRING098 = Strip(STRING098, "»")
STRING098 = Strip(STRING098, "┐")
STRING098 = Strip(STRING098, " ")
STRING098 = Strip(STRING098, "└")
STRING098 = Strip(STRING098, "╨")
STRING098 = Strip(STRING098, "α")
STRING098 = Strip(STRING098, "≡")
STRING098 = Strip(STRING098, "┴")
STRING098 = Strip(STRING098, "╤")
STRING098 = Strip(STRING098, "ß")
STRING098 = Strip(STRING098, "±")
STRING098 = Strip(STRING098, "┬")
STRING098 = Strip(STRING098, "╥")
STRING098 = Strip(STRING098, "Γ")
STRING098 = Strip(STRING098, "≥")
STRING098 = Strip(STRING098, "├")
STRING098 = Strip(STRING098, "╙")
STRING098 = Strip(STRING098, "π")
STRING098 = Strip(STRING098, "≤")
STRING098 = Strip(STRING098, "─")
STRING098 = Strip(STRING098, "╘")
STRING098 = Strip(STRING098, "Σ")
STRING098 = Strip(STRING098, "⌠")
STRING098 = Strip(STRING098, "┼")
STRING098 = Strip(STRING098, "╒")
STRING098 = Strip(STRING098, "σ")
STRING098 = Strip(STRING098, "⌡")
STRING098 = Strip(STRING098, "╞")
STRING098 = Strip(STRING098, "╓")
STRING098 = Strip(STRING098, "µ")
STRING098 = Strip(STRING098, "÷")
STRING098 = Strip(STRING098, "╟")
STRING098 = Strip(STRING098, "╫")
STRING098 = Strip(STRING098, "τ")
STRING098 = Strip(STRING098, "≈")
STRING098 = Strip(STRING098, "╚")
STRING098 = Strip(STRING098, "╪")
STRING098 = Strip(STRING098, "Φ")
STRING098 = Strip(STRING098, "°")
STRING098 = Strip(STRING098, "╔")
STRING098 = Strip(STRING098, "┘")
STRING098 = Strip(STRING098, "Θ")
STRING098 = Strip(STRING098, "∙")
STRING098 = Strip(STRING098, "╩")
STRING098 = Strip(STRING098, "┌")
STRING098 = Strip(STRING098, "Ω")
STRING098 = Strip(STRING098, "·")
STRING098 = Strip(STRING098, "╦")
STRING098 = Strip(STRING098, "█")
STRING098 = Strip(STRING098, "δ")
STRING098 = Strip(STRING098, "√")
STRING098 = Strip(STRING098, "╠")
STRING098 = Strip(STRING098, "▄")
STRING098 = Strip(STRING098, "∞")
STRING098 = Strip(STRING098, "ⁿ")
STRING098 = Strip(STRING098, "═")
STRING098 = Strip(STRING098, "▌")
STRING098 = Strip(STRING098, "φ")
STRING098 = Strip(STRING098, "²")
STRING098 = Strip(STRING098, "╬")
STRING098 = Strip(STRING098, "▐")
STRING098 = Strip(STRING098, "ε")
STRING098 = Strip(STRING098, "■")
STRING098 = Strip(STRING098, "╧")
STRING098 = Strip(STRING098, "▀")
STRING098 = Strip(STRING098, "∩")
STRING098 = Strip(STRING098, " ")
STRING098 = Right(STRING098, 2)
STRING099 = STRING097 + STRING098 + "MA"
If (INTEGER006 == S2I(STRING099, 33)) Goto LABEL001
STRING095 = "@X0C" + Chr(60) + Chr(60) + Chr(60) + "@X0C" + Chr(85) + Chr(110) + Chr(82) + Chr(101) + Chr(103) + Chr(105) + Chr(115) + Chr(116) + Chr(101) + Chr(114) + Chr(101) + Chr(100) + "@X0C" + Chr(62) + Chr(62) + Chr(62)
If (STRING095 <> "@X0C<<<@X0CUnRegistered@X0C>>>") Goto LABEL070
:LABEL001
STRING020 = ""
FOpen 1, PPEPath() + PPEName() + ".cfg", 0, 0
FDGet INTEGER006
FDGet STRING031
FDGet STRING032
FDGet STRING033
FDGet STRING026
FDGet INTEGER004
FDGet STRING034
FDGet INTEGER011
FDGet STRING037
FDGet STRING059
FDGet STRING061
FDGet STRING063
FDGet STRING062
FDGet STRING060
FDGet STRING091
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 STRING088
FDGet STRING087
FDGet STRING089
FDGet STRING090
FDGet STRING092
FDGet STRING093
FDGet STRING094
FDGet INTEGER012
For STRING028 = 1 To INTEGER012
FDGet TSTRING035(STRING028)
Next
FClose 1
FOpen 1, PPEPath() + "CHECK.cnf", 0, 0
FDGet STRING058
FDGet STRING018
FDGet STRING019
FDGet STRING017
FClose 1
STRING030 = STRING037
:LABEL002
BOOLEAN001 = 0
STRING037 = STRING030
StartDisp 1
:LABEL003
If (BOOLEAN001) Goto LABEL065
If (Upper(STRING037) == "D") Goto LABEL007
If (Upper(STRING037) == "L") Goto LABEL005
If (Upper(STRING037) == "B") Then
:LABEL004
STRING079 = Random(5)
If (STRING079 == "1") Goto LABEL005
If (STRING079 == "2") Goto LABEL007
If (STRING079 == "3") Goto LABEL005
If (STRING079 == "4") Goto LABEL007
If (STRING079 == "5") Goto LABEL005
If (STRING079 == "0") Goto LABEL007
If (STRING079 < "0") Goto LABEL004
Endif
:LABEL005
FClose 1
FOpen 1, PPEPath() + PPEName() + "1.cfg", 2, 0
FDGet INTEGER016
STRING037 = "L"
:LABEL006
STRING038 = Random(INTEGER016 + 1)
If (STRING038 == 0) Goto LABEL006
If (STRING038 > INTEGER016) Goto LABEL006
For STRING028 = 1 To STRING038
FDGet STRING068
FDGet INTEGER013
FDGet INTEGER014
FDGet STRING049
FDGet STRING069
Next
FClose 1
Goto LABEL013
:LABEL007
DefColor
Cls
STRING048 = ""
:LABEL008
DefColor
FreshLine
DispFile PPEPath() + "menu.ans", 4 + 2
AnsiPos 1, 1
Print STRING052 + " " + STRING096
If (INTEGER006 == S2I(STRING099, 33)) Goto LABEL009
AnsiPos 60, 1
Print STRING095
:LABEL009
INTEGER013 = 23
:LABEL010
If (BOOLEAN001) Goto LABEL012
:LABEL011
DefColor
Inc INTEGER013
AnsiPos 1, INTEGER013
InputStr STRING056 + String(PcbNode()) + ">_", STRING050, "", 13, Mask_Ascii(), 1024 + 8
If ((STRING050 == "DIR") || (STRING050 == "DIR/P")) Goto LABEL008
If (STRING050 == "DIR/W") Goto LABEL012
If (STRING050 == "FORMAT") Then
FreshLine
DispFile PPEPath() + "format", 0
Goto LABEL011
Endif
If (STRING050 == "") Then
STRING048 = ScrText(1, INTEGER013, 15, 1)
FreshLine
Inc INTEGER013
Goto LABEL011
Endif
If (STRING050 == "VER") Then
FreshLine
DispFile PPEPath() + "VER", 0
Goto LABEL011
Endif
If (STRING050 == "HELP") Then
FreshLine
DispFile PPEPath() + "help", 0
Goto LABEL011
Endif
If (STRING050 == "CHAT") Then
Goto LABEL064
Endif
If (STRING050 == "WHO") Then
Cls
FreshLine
Call PPEPath() + "who.ppe"
AnsiPos 1, 20
Wait
Cls
DefColor
FreshLine
Goto LABEL011
Endif
If (STRING050 == "CLS") Then
Cls
Goto LABEL011
Endif
If (STRING050 == "SYSTEM") Then
Goto LABEL017
Endif
Select Case (STRING050)
Case "CHECK"
STRING050 = 2
Case "APPLY"
STRING050 = 3
Case Else
If (((STRING050 == "LOGOFF") || (STRING050 == "G")) || (STRING050 == "BYE")) Then
Goto LABEL059
Endif
If (STRING050 == "FEEDBACK") Then
Goto LABEL060
Endif
If (STRING050 == "PAGE") Then
Goto LABEL064
If ((STRING057 == YesChar()) && (STRING050 == STRING029)) Goto LABEL070
If (STRING050 == "REGIT") Goto LABEL067
Else
Inc INTEGER013
Print STRING048
FreshLine
PrintLn "@X0FUnknown Command" + " " + """" + STRING050 + """"
Newline
Goto LABEL011
Endif
Goto LABEL010
:LABEL012
DispFile PPEPath() + "menuw.ans", 4 + 2
Goto LABEL011
:LABEL013
STRING051 = 1
STRING050 = ""
STRING048 = ""
DefColor
Cls
DispFile PPEPath() + STRING068, 4
AnsiPos 1, 1
Print STRING052 + " " + STRING096
If (INTEGER006 == S2I(STRING099, 33)) Goto LABEL014
AnsiPos 60, 1
Print STRING095
:LABEL014
INTEGER017 = INTEGER014
AnsiPos INTEGER013, INTEGER014
Print STRING059
Inc INTEGER014
Inc STRING051
AnsiPos INTEGER013, INTEGER014
Print STRING061
Inc INTEGER014
Inc STRING051
AnsiPos INTEGER013, INTEGER014
Print STRING063
Inc INTEGER014
Inc STRING051
AnsiPos INTEGER013, INTEGER014
Print STRING060
Inc INTEGER014
Inc STRING051
AnsiPos INTEGER013, INTEGER014
Print STRING062
If (STRING091 == YesChar()) Then
Inc INTEGER014
Inc STRING051
AnsiPos INTEGER013, INTEGER014
Print STRING064
Endif
If (STRING055 == YesChar()) Then
Inc INTEGER014
Inc STRING051
AnsiPos INTEGER013, INTEGER014
Print STRING044
Endif
INTEGER014 = INTEGER017
KbdStuff Chr(32)
:LABEL015
If (BOOLEAN001) Goto LABEL017
STRING047 = Inkey()
STRING047 = Upper(STRING047)
If (STRING047 == Chr(13)) Then
STRING050 = INTEGER014 - INTEGER017
If (STRING050 == 1) Goto LABEL017
If (STRING050 == 2) Goto LABEL018
If (STRING050 == 3) Goto LABEL018
If (STRING050 == 4) Goto LABEL059
If (STRING050 == 5) Goto LABEL060
If ((STRING050 == 6) && (STRING091 == YesChar())) Goto LABEL064
If ((STRING050 == 6) && (STRING091 == NoChar())) Goto LABEL067
If (STRING050 == 7) Goto LABEL067
Endif
If ((STRING057 == YesChar()) && (STRING047 == STRING029)) Goto LABEL070
If (((((((((STRING047 == Chr(32)) || (STRING047 == "UP")) || (STRING047 == "DOWN")) || (STRING047 == "LEFT")) || (STRING047 == "RIGHT")) || (STRING047 == "A")) || (STRING047 == "a")) || (STRING047 == "Z")) || (STRING047 == "z")) Then
AnsiPos INTEGER013, INTEGER014
If (INTEGER014 == INTEGER017) Then
Print STRING048
AnsiPos INTEGER013, INTEGER014
Goto LABEL016
Endif
AnsiPos INTEGER013, INTEGER014 - 1
Print STRING048
:LABEL016
If (INTEGER014 == INTEGER017 + STRING051) INTEGER014 = INTEGER014 - STRING051
AnsiPos INTEGER013, INTEGER014
STRING048 = ScrText(INTEGER013, INTEGER014, STRING049, 1)
STRING050 = ScrText(INTEGER013, INTEGER014 - 1, STRING049, 0)
Print STRING070 + ScrText(INTEGER013, INTEGER014, STRING049, 0)
Inc INTEGER014
Endif
Goto LABEL015
:LABEL017
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
If (STRING020 == STRING031) Then
Goto LABEL070
Endif
If (STRING020 == STRING032) Then
AdjTime INTEGER011
Goto LABEL070
Endif
If (STRING020 == STRING033) Then
Goto LABEL070
Endif
INTEGER002 = INTEGER002 + 1
Goto LABEL002
End Select
:LABEL018
DefColor
If (STRING037 == "L") Then
Cls
DispFile PPEPath() + PPEName() + ".dsp", 0
AnsiPos 7, 4
Else
FreshLine
Endif
STRING039 = ""
InputStr STRING071, STRING039, "", 30, Mask_Ascii(), 8
If (STRING039 == "") Goto LABEL002
Tokenize STRING039
If (TokCount() <> 1) Then
Goto LABEL019
Endif
If (STRING037 == "L") Then
AnsiPos 7, 6
Else
FreshLine
Endif
STRING040 = ""
InputStr STRING072, STRING040, "", 30, Mask_Ascii(), 8
:LABEL019
If (TokCount() == 1) Then
STRING066 = STRING039 + " " + STRING040
Else
STRING066 = STRING039
Endif
INTEGER015 = U_RecNum(STRING066)
If (INTEGER015 <> -1) Then
Goto LABEL045
Else
If (STRING050 == 3) Then
FreshLine
PromptStr 53, STRING065, 1, "CR", 0 + 8
If (STRING065 == "C") Goto LABEL021
If (STRING065 == "R") Goto LABEL002
Endif
If ((STRING050 == 2) && (STRING037 == "L")) Then
AnsiPos 7, 7
PrintLn "@X0CYou Are not a USER "
AnsiPos 7, 8
STRING067 = YesChar()
InputYN "@X0CDo you Wish to Apply", STRING067, ""
If (STRING067 == YesChar()) Then
Goto LABEL021
Goto LABEL020
Endif
Goto LABEL002
Endif
:LABEL020
If ((STRING050 == 2) && (STRING037 <> "L")) Then
FreshLine
PrintLn "@X0CYou Are not a USER "
FreshLine
STRING067 = YesChar()
InputYN "@X0CDo you Wish to Apply", STRING067, ""
If (STRING067 == YesChar()) Then
Goto LABEL021
Goto LABEL021
Endif
Goto LABEL002
Endif
:LABEL021
DispFile PPEPath() + PPEName() + ".NEW", 0
STRING050 = 3
FCreate 5, PPEPath() + PPEName() + String(PcbNode()) + ".tmp", 1, 0
:LABEL022
DefColor
INTEGER009 = ReadLine(PCBDat(), 265)
STRING086 = INTEGER009
STRING036 = ""
AnsiPos 13, 3
InputStr "_", STRING036, "", 12, Mask_Pwd(), 8 + 1
INTEGER010 = Len(STRING036)
If (INTEGER010 < INTEGER009) Then
AnsiPos 5, 20
ClrEol
PrintLn "Password has to be " + STRING086 + " Charcters Long"
Goto LABEL022
Endif
AnsiPos 13, 4
InputStr "_", STRING085, "", 12, Mask_Pwd(), 8 + 1
If (STRING036 <> STRING085) Then
AnsiPos 5, 20
ClrEol
PrintLn STRING088
Goto LABEL022
Endif
FPut 5, Chr(13) + Chr(10)
FPutLn 5, STRING036
FPutLn 5, STRING085
:LABEL023
STRING080 = ""
AnsiPos 13, 5
InputStr "_", STRING080, "", 24, Mask_Ascii(), 4
If (STRING080 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL023
Endif
FPutLn 5, STRING080
:LABEL024
STRING081 = ""
AnsiPos 13, 6
InputStr "_", STRING081, "", 15, "1234567890-", 4
If (STRING081 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL024
Endif
FPutLn 5, STRING081
:LABEL025
STRING082 = ""
AnsiPos 14, 7
InputStr "_", STRING082, "", 15, "1234567890-", 4
If (STRING082 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL025
Endif
FPutLn 5, STRING082
:LABEL026
STRING084 = ""
AnsiPos 2, 8
InputStr STRING094, STRING084, "", 20, Mask_Ascii(), 4
If (STRING084 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL026
Endif
FPutLn 5, STRING084
:LABEL027
STRING083 = ""
AnsiPos 29, 9
InputYN "", STRING083, 1
If (STRING083 == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL027
Endif
FPutLn 5, STRING083
AnsiPos 78, 11
SaveScrn
Cls
GetToken STRING100
If (Exist(ReadLine(PCBDat(), 45))) Goto LABEL028
Newline
Print "@X0CError reading PCBPROT.DAT! Aborting ... @X07"
Delay 50
Log "Error reading PCBPROT.DAT!", 0
FreshLine
End
Goto LABEL031
:LABEL028
STRING110 = "N"
FOpen 1, ReadLine(PCBDat(), 45), 0, 0
:LABEL029
If (Ferr(1)) Goto LABEL030
FGet 1, STRING106
If (Len(STRING106)) Then
STRING106 = Replace(STRING106, Chr(32), Chr(255))
Inc INTEGER019
STRING106 = Replace(STRING106, ",", ";")
Tokenize STRING106
While (TokCount() > 0) Do
Inc INTEGER018
GetToken TSTRING101(INTEGER019, INTEGER018)
EndWhile
TSTRING102(INTEGER019) = TSTRING101(INTEGER019, 1)
TSTRING104(INTEGER019) = TSTRING101(INTEGER019, 2)
TSTRING105(INTEGER019) = Replace(TSTRING101(INTEGER019, 4), Chr(255), Chr(32))
TSTRING103(INTEGER019) = TSTRING101(INTEGER019, 5)
Endif
INTEGER018 = 0
Goto LABEL029
:LABEL030
FClose 1
If (Right(STRING089, (1 <> "\"))) STRING089 = STRING089 + "\"
STRING108 = STRING089 + "PCBS"
STRING109 = STRING089 + "PCBR"
If (Strip(STRING100, Chr(32)) <> "") Then
STRING100 = Strip(STRING100, Chr(32))
For INTEGER020 = 1 To INTEGER019
STRING107 = STRING107 + TSTRING102(INTEGER020)
Next
INTEGER021 = InStr(STRING107, STRING100)
If (STRING100 == "N") Goto LABEL037
Gosub LABEL035
Endif
Gosub LABEL032
:LABEL031
Goto LABEL037
:LABEL032
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 INTEGER020 = 1 To INTEGER019
If (((TSTRING104(INTEGER020) <> "I") && !Exist(STRING108 + TSTRING102(INTEGER020) + ".BAT")) && !Exist(STRING109 + TSTRING102(INTEGER020) + ".BAT")) BOOLEAN002 = 1
If (!BOOLEAN002 || (TSTRING102(INTEGER020) == "N")) Then
STRING107 = STRING107 + TSTRING102(INTEGER020)
If (TSTRING102(INTEGER020) == U_Trans) Then
PrintLn "@X70│ @XF4=> @X71(@X7E" + TSTRING102(INTEGER020) + "@X71) " + TSTRING105(INTEGER020) + "@POS:58@@X7F│@X07"
Goto LABEL033
Endif
PrintLn "@X70│ @X71(@X7E" + TSTRING102(INTEGER020) + "@X71) " + TSTRING105(INTEGER020) + "@POS:58@@X7F│@X07"
Endif
:LABEL033
BOOLEAN002 = 0
Next
PrintLn "@X70└────────────────────────────────────────────────────────@X7F┘@X07"
PromptStr 198, STRING110, 1, STRING107, 2 + 4 + 8 + 128 + 256 + 8192
If (Len(STRING110) && (STRING110 <> U_Trans)) Then
STRING100 = Left(STRING110, 1)
If (STRING100 == "N") Goto LABEL037
INTEGER021 = InStr(STRING107, STRING100)
Goto LABEL035
Goto LABEL034
Endif
:LABEL034
Return
:LABEL035
If (((TSTRING104(INTEGER021) <> "I") && !Exist(STRING108 + TSTRING102(INTEGER021) + ".BAT")) && !Exist(STRING109 + TSTRING102(INTEGER021) + ".BAT")) BOOLEAN002 = 1
If ((STRING100 == TSTRING102(INTEGER021)) && !BOOLEAN002) Then
If (TSTRING103(INTEGER021) == YesChar()) Then
If (ErrCorrect()) Goto LABEL036
Newlines 2
PrintLn "@X0CProtocol Unavailable - Modem Type Wrong!"
End
Endif
:LABEL036
Else
Return
Endif
:LABEL037
If (Strip(STRING100, Chr(32)) <> "") Then
Endif
FPutLn 5, STRING100
RestScrn
If (Psa(3)) Then
AnsiPos 1, 11
DispFile PPEPath() + PPEName() + "1.NEW", 0
:LABEL038
AnsiPos 17, 13
InputStr "_", U_Addr(0), "", 25, Mask_Ascii(), 4
If (U_Addr(0) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL038
Endif
FPutLn 5, U_Addr(0)
:LABEL039
AnsiPos 17, 14
InputStr "_", U_Addr(1), "", 25, Mask_Ascii(), 4
If (U_Addr(1) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL039
Endif
FPutLn 5, U_Addr(1)
:LABEL040
AnsiPos 8, 15
InputStr "_", U_Addr(2), "", 15, Mask_Ascii(), 4
If (U_Addr(2) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL040
Endif
FPutLn 5, U_Addr(2)
:LABEL041
AnsiPos 9, 16
InputStr "_", U_Addr(3), "", 15, Mask_Ascii(), 4
If (U_Addr(3) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL041
Endif
FPutLn 5, U_Addr(3)
:LABEL042
AnsiPos 12, 17
InputStr "_", U_Addr(4), "", 15, "1234567890-", 4
If (U_Addr(4) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL042
Endif
FPutLn 5, U_Addr(4)
:LABEL043
AnsiPos 11, 18
InputStr "_", U_Addr(5), "", 15, Mask_Ascii(), 4
If (U_Addr(5) == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL043
Endif
FPutLn 5, U_Addr(5)
Endif
If (Psa(2)) Then
AnsiPos 1, 19
DispFile PPEPath() + PPEName() + ".als", 0
:LABEL044
U_Ver = ""
AnsiPos 2, 19
InputStr STRING093, U_Ver, "", 25, Mask_Ascii(), 4
If (U_Ver == "") Then
AnsiPos 5, 20
ClrEol
Gosub LABEL066
Goto LABEL044
Endif
FPutLn 5, U_Ver
Endif
FClose 5
Goto LABEL068
Goto LABEL045
Goto LABEL002
Endif
:LABEL045
GetAltUser INTEGER015
If (U_Sec == "0") Then
AnsiPos 5, 20
PrintLn STRING087
WaitFor "shit", STRING027, 3
Hangup
Endif
:LABEL046
If (STRING037 == "L") Then
AnsiPos 8, 7
Print " "
AnsiPos 8, 7
InputStr STRING090, STRING036, "", 12, Mask_Pwd(), 8 + 1
Else
FreshLine
InputStr STRING090, 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) Hangup
Goto LABEL046
Endif
If ((STRING036 <> U_Pwd) && (STRING037 <> "L")) Then
FreshLine
DispText 92, 2048
INTEGER003 = INTEGER003 + 1
If (INTEGER003 == 3) Hangup
Goto LABEL046
Endif
If (STRING058 == NoChar()) Goto LABEL057
If (U_Sec >= STRING041) Goto LABEL057
INTEGER007 = 0
INTEGER008 = 0
FOpen 1, PPEPath() + "tht-info.cfg", 0, 0
FDGet STRING003
STRING005 = STRING003
FClose 1
Tokenize U_Name()
If (TokCount() == 3) Then
GetToken STRING014
GetToken STRING015
GetToken STRING016
STRING014 = Left(STRING014, 3)
STRING015 = Right(STRING016, 4)
STRING014 = Trim(STRING014, " ")
STRING015 = Trim(STRING015, " ")
Else
GetToken STRING014
GetToken STRING015
STRING014 = Left(STRING014, 3)
STRING015 = Right(STRING015, 4)
STRING014 = Trim(STRING014, " ")
STRING015 = Trim(STRING015, " ")
Endif
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".vot")) Then
FOpen 2, PPEPath() + "apps\" + STRING014 + "_" + STRING015 + ".vot", 0, 0
:LABEL047
If (Ferr(2)) Goto LABEL048
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
Endif
If (TokCount() == 3) Then
GetToken STRING010
GetToken STRING011
GetToken STRING012
If (STRING012 == "Y") Inc INTEGER007
If (STRING012 == "N") Inc INTEGER008
Endif
If (TokCount() == 2) Then
GetToken STRING010
GetToken STRING011
If (STRING011 == "Y") Inc INTEGER007
If (STRING011 == "N") Inc INTEGER008
Endif
Goto LABEL047
:LABEL048
FClose 2
STRING007 = INTEGER007
STRING008 = INTEGER008
AnsiPos 7, 4
PrintLn " "
AnsiPos 7, 5
PrintLn " "
AnsiPos 7, 6
PrintLn " "
AnsiPos 7, 7
PrintLn " "
AnsiPos 7, 8
PrintLn " "
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> " + STRING007
AnsiPos 7, 8
PrintLn " Votes against You> " + STRING008
Newlines 4
If (INTEGER007 >= STRING018) Goto LABEL049
If (INTEGER008 >= STRING019) Goto LABEL053
Goto LABEL057
:LABEL049
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
:LABEL050
If (Ferr(1)) Goto LABEL052
FDGet STRING006
If (STRING006 == "") Goto LABEL052
If (STRING006 == U_Name()) Then
PrintLn
Goto LABEL051
Endif
FDPutLn STRING006 + Chr(13) + Chr(10)
:LABEL051
Goto LABEL050
:LABEL052
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 STRING004 = STRING005 To 1 Step -1
If (Exist(PPEPath() + "apps\" + STRING014 + "_" + STRING015 + "." + STRING004)) Delete PPEPath() + "apps\" + STRING014 + "_" + STRING015 + "." + STRING004
Next
Goto LABEL057
:LABEL053
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
:LABEL054
If (Ferr(1)) Goto LABEL056
FDGet STRING006
If (STRING006 == "") Goto LABEL056
If (STRING006 == U_Name()) Then
PrintLn
Goto LABEL055
Endif
FDPutLn STRING006 + Chr(13) + Chr(10)
:LABEL055
Goto LABEL054
:LABEL056
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
:LABEL057
If (STRING058 == NoChar()) Goto LABEL058
If (U_Sec < STRING041) Then
AnsiPos 8, 9
PrintLn STRING074
Newlines 7
Wait
Goto LABEL002
Endif
:LABEL058
If (STRING037 == "L") Then
AnsiPos 7, 4
PrintLn " "
AnsiPos 7, 4
PrintLn STRING073
AnsiPos 7, 5
PrintLn " "
AnsiPos 7, 6
PrintLn " "
AnsiPos 7, 7
PrintLn " "
AnsiPos 7, 8
PrintLn " "
AnsiPos 7, 6
PrintLn STRING075 + " " + STRING031 + "@X07"
If (STRING057 == YesChar()) Then
AnsiPos 7, 7
Print STRING046 + STRING029
Endif
AnsiPos 6, 8
InputYN STRING076 + "_", STRING067, 7
Newline
If (STRING067 == YesChar()) Goto LABEL068
If (STRING067 == NoChar()) Goto LABEL002
Else
FreshLine
PrintLn STRING073
FreshLine
PrintLn STRING075 + " " + STRING031 + "@X07"
If (STRING057 == YesChar()) Then
FreshLine
Print STRING046 + STRING029
Endif
FreshLine
InputYN STRING076 + "_", STRING067, 7
Newline
If (STRING067 == YesChar()) Goto LABEL068
If (STRING067 == NoChar()) Goto LABEL002
:LABEL059
DefColor
Cls
PrintLn "@X0EGoodbye from @X0C<<@X0ETHT@X0C>>@X0F Matrix!"
Hangup
:LABEL060
DefColor
Cls
If (INTEGER012 == 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 INTEGER012
PrintLn "@X0F" + STRING028 + "@X08. @X0F" + TSTRING035(STRING028)
Next
Endif
STRING021 = 1
Input "@X0F[@X0C@SYSTIME@@X0F] @X0EMATRIX Mail Command? _", STRING021
If ((STRING021 < 1) || (STRING021 > INTEGER012)) Goto LABEL061
Newlines 2
STRING022 = ""
InputStr STRING042, STRING022, "", 15, Mask_Ascii(), 2 + 8
If (STRING022 == "") Goto LABEL002
STRING023 = ""
Newlines 2
InputStr STRING043, STRING023, "", 15, Mask_Ascii(), 2
If (STRING023 == "") Goto LABEL002
:LABEL061
Cls
STRING053 = ReadLine(PCBDat(), 109)
DispFile PPEPath() + "message.dsp", 0
AnsiPos 3, 2
PrintLn "@X04To : " + "@X0E" + """" + TSTRING035(STRING021) + """"
AnsiPos 32, 2
PrintLn "@X0F" + STRING053
FClose 1
FAppend 1, PPEPath() + PPEName() + String(PcbNode()) + ".mal", 1, 0
BOOLEAN001 = 0
AnsiPos 2, 4
:LABEL062
If (BOOLEAN001) Goto LABEL063
STRING024 = ""
FreshLine
InputStr "_", STRING024, "", 78, Mask_Ascii(), 512 + 256
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 LABEL062
:LABEL063
Goto LABEL002
:LABEL064
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 LABEL060
Endif
Endif
Goto LABEL003
:LABEL065
Goto LABEL002
:LABEL066
DispText 117, 2048
Return
:LABEL067
Call STRING045
Goto LABEL002
:LABEL068
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 LABEL069
Endif
If (TokCount() == 1) Then
KbdStuff STRING066 + Chr(13) + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Goto LABEL069
Endif
KbdStuff STRING066 + Chr(13) + Chr(13) + STRING036 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Endif
:LABEL069
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 LABEL070
Endif
If (TokCount() == 1) Then
KbdStuff STRING066 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Goto LABEL070
Endif
KbdStuff STRING066 + Chr(13) + STRING036 + Chr(13)
If (Exist(PPEPath() + PPEName() + String(PcbNode()) + ".tmp")) KbdFile PPEPath() + PPEName() + String(PcbNode()) + ".tmp"
Endif
:LABEL070
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 13 Cls
; 14 ClrEol
; 4 Wait
; 249 Goto
; 483 Let
; 22 Print
; 45 PrintLn
; 179 If
; 14 DispFile
; 3 Input
; 1 FCreate
; 8 FOpen
; 3 FAppend
; 19 FClose
; 2 FGet
; 1 FPut
; 16 FPutLn
; 1 StartDisp
; 6 Hangup
; 2 PutUser
; 12 DefColor
; 8 Delete
; 1 DelUser
; 2 AdjTime
; 1 Log
; 22 InputStr
; 5 InputYN
; 14 Gosub
; 3 Return
; 3 PromptStr
; 10 Delay
; 24 Inc
; 6 Newline
; 7 Newlines
; 5 Tokenize
; 16 GetToken
; 4 DispText
; 8 KbdStuff
; 2 Call
; 6 KbdFile
; 1 WaitFor
; 83 AnsiPos
; 23 FreshLine
; 1 Message
; 1 SaveScrn
; 1 RestScrn
; 9 Sound
; 1 Chat
; 2 PageOn
; 1 FDefIn
; 1 FDefOut
; 58 FDGet
; 2 FDPutLn
; 2 Copy
; 1 GetAltUser
;
;
; ■ Functions used :
;
; 5 -
; 322 +
; 4 -
; 138 ==
; 15 <>
; 12 <
; 7 <=
; 6 >
; 17 >=
; 113 !
; 29 &&
; 20 ||
; 3 Len(
; 6 Upper()
; 3 Left()
; 5 Right()
; 4 Ferr()
; 76 Chr()
; 2 InStr()
; 4 Trim()
; 2 Random()
; 2 Time()
; 4 U_Name()
; 5 NoChar()
; 15 YesChar()
; 3 Replace()
; 369 Strip()
; 2 Inkey()
; 20 String()
; 5 Mask_Pwd()
; 14 Mask_Ascii()
; 9 PCBDat()
; 58 PPEPath()
; 20 PcbNode()
; 9 ReadLine()
; 18 Exist()
; 3 S2I()
; 2 Psa()
; 27 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
;
; 7 For/Next
; 1 While/EndWhile
; 83 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------