home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
EDSBK115.ZIP
/
PPE.ZIP
/
EDSBACK.PPE
(
.txt
)
next >
Wrap
PCBoard Programming Language Executable
|
1994-02-09
|
57KB
|
3,487 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
Boolean BOOLEAN004
Boolean BOOLEAN005
Boolean BOOLEAN006
Boolean BOOLEAN007
Boolean BOOLEAN008
Boolean BOOLEAN009
Boolean BOOLEAN010
Boolean BOOLEAN011
Boolean BOOLEAN012
Boolean BOOLEAN013
Boolean BOOLEAN014
Boolean BOOLEAN015
Boolean BOOLEAN016
Boolean BOOLEAN017
Boolean BOOLEAN018
Boolean BOOLEAN019
Boolean BOOLEAN020
Boolean BOOLEAN021
Boolean BOOLEAN022
Boolean BOOLEAN023
Boolean TBOOLEAN024(4)
Boolean TBOOLEAN025(3)
Boolean BOOLEAN026
Boolean BOOLEAN027
Boolean BOOLEAN028
Boolean BOOLEAN029
Date DATE002
Date DATE003
Date TDATE004(5)
Date DATE005
Date DATE006
Date DATE007
Date DATE008
Date DATE009
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
Real REAL001
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 TSTRING024(6)
String STRING025
String TSTRING026(11)
String STRING027
String STRING028
String STRING029
Time TIME001
Time TTIME002(5)
Time TIME003
Time TIME004
Time TIME005
Byte BYTE001
Byte BYTE002
Byte BYTE003
Byte BYTE004
Byte BYTE005
Byte BYTE006
Byte BYTE007
Byte BYTE008
Byte BYTE009
Byte BYTE010
Byte BYTE011
Byte BYTE012
Byte BYTE013
Byte BYTE014
Byte BYTE015
Byte BYTE016
Byte BYTE017
Byte TBYTE018(1)
Byte BYTE019
Byte BYTE020
Byte TBYTE021(5)
Byte BYTE022
Word WORD001
Word WORD002
Word WORD003
Word WORD004
Word WORD005
Word WORD006
Word WORD007
Word WORD008
Word WORD009
BOOLEAN015 = 0
GetUser
BOOLEAN001 = 0
BOOLEAN002 = 0
STRING025 = ReadLine(PCBDat(), 53)
STRING020 = Strip(Strip(Strip(Strip(U_HVPhone, " "), "("), ")"), "-")
STRING021 = Strip(Strip(Strip(Strip(U_BDPhone, " "), ")"), "("), "-")
DATE009 = 0
BOOLEAN008 = 0
GetToken STRING008
If (Strip(Upper(STRING008), " ") == "CBONLY") BOOLEAN008 = 1
If (Exist(PPEPath() + "EDSBTXT" + LangExt())) Goto LABEL003
If (Exist(PPEPath() + "EDSBTXT")) Goto LABEL001
PrintLn "@X0CEDSBACK FATAL ERROR: EDSBTXT" + LangExt() + " not found!"
Log "EDSBACK FATAL ERROR: EDSBTXT" + LangExt() + " not found!", 0
Delay 4
Goto LABEL105
Goto LABEL002
:LABEL001
FOpen 5, PPEPath() + "EDSBTXT", 0, 0
If (Ferr(5)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSBTXT"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSBTXT", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 5
Else
:LABEL002
Goto LABEL004
:LABEL003
FOpen 5, PPEPath() + "EDSBTXT" + LangExt(), 0, 0
If (Ferr(5)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSBTXT" + LangExt()
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSBTXT" + LangExt() , 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 5
Else
:LABEL004
WORD004 = 1
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 60
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + String(Time()) , 0
Gosub LABEL063
RdUNet PcbNode()
If (BOOLEAN005) Then
WrUNet PcbNode(), "B", UN_Name(), "EDSBack v1.15 ", "EDSBack Initializing...", ""
Else
WrUNet PcbNode(), UN_Stat(), UN_Name(), "EDSBack v1.15 ", "EDSBack Initializing...", ""
Endif
RdUNet PcbNode()
If (BOOLEAN023) Gosub LABEL094
AdjTime WORD008
BYTE019 = 1
Gosub LABEL091
If (BOOLEAN022) Then
PrintLn
WORD004 = 58
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 59
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
Else
Gosub LABEL083
Gosub LABEL085
Gosub LABEL087
:LABEL005
If (BOOLEAN001) Goto LABEL010
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "EDSBack Main Menu", ""
DispFile PPEPath() + "EDSWC", 2 + 1 + 4
WORD004 = 15
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
STRING008 = "C"
BOOLEAN011 = 0
InputStr STRING012, STRING008, 0, 1, "RrCcGgEeHh", 2 + 4 + 256
Select Case (Upper(STRING008))
Case "R"
BOOLEAN011 = 0
If (TBOOLEAN025(1)) Then
BOOLEAN001 = 1
Goto LABEL105
Else
WORD004 = 54
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
BOOLEAN001 = 0
Endif
STRING008 = "R"
Case "H"
BOOLEAN001 = 0
BOOLEAN011 = 0
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Viewing Help File...", ""
DispFile TSTRING026(7), 1 + 2 + 4
STRING008 = "H"
Case "G"
BOOLEAN011 = 0
If (TBOOLEAN025(0)) Then
BOOLEAN001 = 1
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Goodbye in EDSBack...", ""
Bye
Else
BOOLEAN001 = 0
WORD004 = 54
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Endif
STRING008 = "G"
Case "E"
BOOLEAN001 = 0
BOOLEAN011 = 0
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Viewing Information...", ""
Gosub LABEL065
STRING008 = "E"
Case "C"
BOOLEAN001 = 0
BOOLEAN011 = 1
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Selecting Number...", ""
Gosub LABEL066
STRING008 = "C"
End Select
If (BOOLEAN011) Then
Cls
DispFile PPEPath() + "SCDISP", 1 + 4
WORD004 = 2
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028 + " "
KbdChkOff
Gosub LABEL071
Gosub LABEL072
If (BOOLEAN014) Then
WORD004 = 32
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 35
Gosub LABEL101
If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING019 + " " + STRING028, 0
Delay 15
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BOOLEAN006) Then
Gosub LABEL106
Bye
Goto LABEL006
Endif
Goto LABEL105
Endif
:LABEL006
PrintLn
Gosub LABEL075
WORD004 = 70
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BOOLEAN018 && !TBOOLEAN025(2)) Then
If (TBOOLEAN025(3)) Then
WORD004 = 3
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
OpText STRING027
WORD004 = 55
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
OpText String(DATE003)
WORD004 = 56
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
OpText String(TIME001)
WORD004 = 57
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Newline
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Newline
Wait
Goto LABEL007
Endif
WORD004 = 3
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Newline
Wait
:LABEL007
Goto LABEL105
Endif
If (BOOLEAN017 && BOOLEAN012) Then
BYTE019 = 2
BOOLEAN022 = 0
Gosub LABEL091
If (BOOLEAN022) Then
WORD004 = 48
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 28
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL105
Endif
If (BOOLEAN014) Then
OpText String(BYTE007)
WORD004 = 4
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL105
Endif
Else
If (BOOLEAN014) Goto LABEL008
BYTE019 = 2
BOOLEAN022 = 0
Gosub LABEL091
If (BOOLEAN022) Then
OpText String(BYTE007)
WORD004 = 48
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 28
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL105
Endif
Goto LABEL009
:LABEL008
If (BOOLEAN014) Then
OpText String(BYTE007)
WORD004 = 4
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 5
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL105
Endif
Endif
:LABEL009
Else
Goto LABEL005
:LABEL010
Goto LABEL105
Endif
Color 7
If (BOOLEAN012 && BOOLEAN017) Then
OpText STRING017 + "-" + STRING006 + "-" + STRING007
Else
OpText STRING010 + "-" + STRING011 + "-" + STRING019
Endif
DispFile PPEPath() + "EDSCAL", 1 + 4
WORD004 = 36
Gosub LABEL101
Delay 50
If (BOOLEAN027) Log STRING028 + " " + String(Time()) , 0
If (BOOLEAN012 && BOOLEAN017) Then
STRING008 = "(" + STRING018 + ") " + STRING017 + "-" + STRING006 + "-" + STRING007
Else
STRING008 = "(" + STRING018 + ") " + STRING010 + "-" + STRING011 + "-" + STRING019
Endif
WrUNet PcbNode(), UN_Stat(), UN_Name(), "Undergoing callback...", STRING008, ""
Gosub LABEL102
BOOLEAN020 = 0
BYTE004 = 0
If (OnLocal()) Goto LABEL023
CdChkOff
While (!BOOLEAN020 && (BYTE004 < BYTE003)) Do
KeyFlush
DtrOff
BOOLEAN002 = 0
INTEGER006 = 0
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
Color 7
While (!BOOLEAN002 && (INTEGER006 < BYTE012)) Do
Inc INTEGER006
INTEGER010 = 0
While (INTEGER010 <= WORD003) Do
Inc INTEGER010
Delay 1
If (CDOn()) Then
BOOLEAN002 = 0
Continue
Endif
BOOLEAN002 = 1
INTEGER010 = WORD003 + 1
EndWhile
EndWhile
Delay 65
If (BYTE004 >= 1) Delay 30
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
If (BOOLEAN002) Goto LABEL011
Color 7
SPrint Chr(27) + "[11;15H"
Color 27
SPrint "Hangup failed... Dropping carrier... "
Delay 4
Gosub LABEL106
Bye
:LABEL011
Delay 7
Color 7
SPrint Chr(27) + "[16;64H"
Color 28
SPrint "NONE "
Color 7
SPrint Chr(27) + "[19;64H"
Color 28
SPrint "NONE "
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
DtrOn
KeyFlush
BOOLEAN019 = 0
If ((STRING022 <> "") && (STRING022 <> "NONE")) Then
SPrint "Initializing modem... "
Delay 4
STRING022 = Trim(Upper(STRING022), " ")
SendModem STRING022 + Chr(13)
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
STRING008 = ""
INTEGER006 = 0
While ((Len(STRING008) < 2) && (INTEGER006 <= 100)) Do
STRING008 = STRING008 + Chr(MGetByte())
STRING008 = Strip(Strip(Strip(STRING008, Chr(10)), Chr(13)), " ")
Delay 1
Inc INTEGER006
EndWhile
If (Mid(STRING008, 1, 2) == "OK") Then
BOOLEAN019 = 1
Goto LABEL012
Endif
BOOLEAN019 = 0
:LABEL012
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
If (BOOLEAN019) Goto LABEL013
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Error occurred during initialization... Halting... "
WORD004 = 37
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + String(Time()) , 0
Delay 10
KeyFlush
Gosub LABEL106
Bye
:LABEL013
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
Delay 5
KeyFlush
Endif
STRING008 = ""
For INTEGER006 = 0 To 5
If (TBYTE021(INTEGER006) == 1) Then
STRING008 = STRING008 + STRING014
Continue
Endif
If (TBYTE021(INTEGER006) == 2) Then
STRING008 = STRING008 + STRING023
Continue
Endif
If (TBYTE021(INTEGER006) == 3) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING008 + STRING017
Goto LABEL014
Endif
STRING008 = STRING008 + STRING010
:LABEL014
Continue
Endif
If (TBYTE021(INTEGER006) == 4) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING008 + STRING006
Goto LABEL015
Endif
STRING008 = STRING008 + STRING011
:LABEL015
Continue
Endif
If (TBYTE021(INTEGER006) == 5) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING008 + STRING007
Goto LABEL016
Endif
STRING008 = STRING008 + STRING019
:LABEL016
Continue
Endif
If (TBYTE021(INTEGER006) == 6) Then
STRING008 = STRING008 + STRING015
Endif
Next
STRING008 = Upper(Strip(STRING008, " "))
If (STRING008 == "") Then
Color 7
SPrint Chr(27) + "[11;40H"
Color 23
SPrint "Dialing template does not contain dialing info! "
Delay 10
Log "EDSBack could not dial! No info defined!", 0
Goto LABEL106
Bye
Endif
If (BYTE004 == 0) Then
SPrint Left("Dialing " + STRING008 + Space(55), 55)
Delay 9
WORD004 = 63
Gosub LABEL101
Log STRING028 + String(Time()), 0
Delay 5
Endif
Inc BYTE004
If (BYTE004 > 1) Then
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint Left("Redialing " + STRING008 + Space(55), 55)
Delay 9
Color 7
SPrint Chr(27) + "[11;40H"
Color 23
SPrint "Try #" + String(BYTE004) + " "
WORD004 = 38
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + String(Time()) , 0
Delay 4
Endif
WORD004 = 49
Gosub LABEL101
Log STRING028 + Upper(STRING016) + STRING008, 0
Delay 9
KeyFlush
SendModem Upper(STRING016) + STRING008 + Chr(13)
Delay 9
WORD001 = 0
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
Delay 54
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Waiting for connection... Countdown: "
SPrint Chr(27) + "[11;53H"
Color 28
SPrint String(WORD002)
STRING009 = ""
KeyFlush
While (WORD001 <= WORD002) Do
Color 28
STRING008 = STRING008 + Chr(MGetByte())
STRING008 = Upper(Trim(STRING008, " "))
SPrint Chr(27) + "[11;53H"
SPrint String(WORD002 - WORD001)
INTEGER007 = Len(String(WORD002)) - Len(String(WORD002 - WORD001))
SPrint Space(INTEGER007)
If ((Len(STRING008) > 3) && (Mid(STRING008, Len(STRING008), 1) == Chr(10))) Then
STRING008 = Strip(Strip(STRING008, Chr(10)), Chr(13))
STRING009 = STRING009 + STRING008
STRING008 = Strip(STRING008, " ")
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
If (STRING008 == "BUSY") Then
SPrintLn "Number is Busy... "
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL022
Endif
If (STRING008 == "RING") Then
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL022
Endif
If (STRING008 == "NODIALTONE") Then
SPrintLn "No Dialtone was Detected... "
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL022
Endif
If (STRING008 == "NOCARRIER") Then
SPrintLn "No carrier detected... "
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL022
Endif
If (Mid(STRING008, 1, 4) == "CONN") Then
WORD001 = 0
BOOLEAN026 = 0
SPrintLn "Link established... Pausing "
Color 7
SPrint Chr(27) + "[16;64H"
Color 28
SPrint Left(Trim(STRING025, " ") + Space(8), 8)
Color 7
SPrint Chr(27) + "[19;64H"
Color 28
SPrint Left(String(Carrier()) + Space(8), 8)
WrUNet PcbNode(), UN_Stat(), UN_Name(), "Undergoing verification...", "CONNECT : " + Trim(STRING025, " ") + " CARRIER : " + String(Carrier()), ""
:LABEL017
If (BOOLEAN026) Goto LABEL019
SPrint Chr(27) + "[11;44H"
SPrint String(WORD005 - WORD001)
INTEGER007 = Len(String(WORD005)) - Len(String(WORD005 - WORD001))
SPrint Space(INTEGER007)
If (WORD001 >= WORD005) Then
BOOLEAN026 = 1
Goto LABEL018
Endif
BOOLEAN026 = 0
:LABEL018
Delay 1
Inc WORD001
Goto LABEL017
:LABEL019
WORD004 = 39
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + String(Time()) , 0
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
Delay 40
If (Carrier() < 4800) Delay 30
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
BOOLEAN020 = 1
KeyFlush
If (BOOLEAN008) Goto LABEL020
Gosub LABEL056
CdChkOn
KbdChkOn
Gosub LABEL057
Gosub LABEL026
Goto LABEL105
Goto LABEL021
:LABEL020
Gosub LABEL093
CdChkOn
KbdChkOn
Goto LABEL105
:LABEL021
Goto LABEL022
Endif
STRING008 = ""
Endif
:LABEL022
Delay 1
Inc WORD001
EndWhile
EndWhile
If (!BOOLEAN020 && (BYTE004 >= BYTE003)) Then
Gosub LABEL106
Bye
Endif
Goto LABEL025
:LABEL023
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Local caller detected... Press any key to continue "
While (KInkey() == "") Do
EndWhile
If (BOOLEAN008) Goto LABEL024
Gosub LABEL056
CdChkOn
KbdChkOn
Gosub LABEL057
Gosub LABEL026
Goto LABEL105
Goto LABEL025
:LABEL024
Gosub LABEL093
CdChkOn
KbdChkOn
Goto LABEL105
:LABEL025
Goto LABEL105
:LABEL026
If ((BYTE020 <> 0) || (Trim(TSTRING026(11), " ") <> "")) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Executing external extension...", ""
SaveScrn
WORD004 = 67
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE020 == 1) Then
Call TSTRING026(11)
Goto LABEL027
Endif
If (BYTE020 == 2) Then
WrUSys
Shell 1, INTEGER006, TSTRING026(11), ""
RdUSys
Endif
:LABEL027
RestScrn
WORD004 = 68
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + TSTRING026(11) , 0
Endif
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Upgrading user...", ""
If (!OnLocal() || BOOLEAN004) Then
STRING027 = Upper(U_Name())
DATE003 = Date()
TIME001 = Time()
If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
FOpen 1, PPEPath() + "EDSSTATS.DAT", 2, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL028
Endif
BOOLEAN019 = 0
:LABEL028
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSSTATS.DAT", 0
WORD004 = 10
Gosub LABEL101
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING028, 0
Goto LABEL029
Endif
Log STRING010 + STRING011 + STRING019 + " " + STRING028, 0
:LABEL029
FClose 1
Return
Endif
FSeek 1, 47, 0
FRead 1, INTEGER006, 4
Inc INTEGER006
FSeek 1, -4, 1
FWrite 1, INTEGER006, 4
FSeek 1, 39, 1
FRead 1, STRING008, 25
FRead 1, DATE005, 2
FRead 1, TIME003, 4
For INTEGER006 = 1 To 4
FSeek 1, -62, 1
FWrite 1, STRING008, 25
FWrite 1, DATE005, 2
FWrite 1, TIME003, 4
FSeek 1, 31, 1
FRead 1, STRING008, 25
FRead 1, DATE005, 2
FRead 1, TIME003, 4
Next
FSeek 1, -62, 1
FWrite 1, STRING008, 25
FWrite 1, DATE005, 2
FWrite 1, TIME003, 4
FWrite 1, STRING027, 25
FWrite 1, DATE003, 2
FWrite 1, TIME001, 4
Goto LABEL032
Endif
FCreate 1, PPEPath() + "EDSSTATS.DAT", 2, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL030
Endif
BOOLEAN019 = 0
:LABEL030
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSSTATS.DAT", 0
WORD004 = 10
Gosub LABEL101
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING028, 0
Goto LABEL031
Endif
Log STRING010 + STRING011 + STRING019 + " " + STRING028, 0
:LABEL031
FClose 1
Return
Endif
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.15 Statistical Control File " + Chr(13) + Chr(10) + Chr(32) + Chr(26) + Chr(0), 47
FWrite 1, 1, 4
FWrite 1, 0, 4
FWrite 1, 0, 4
For INTEGER006 = 1 To 5
FWrite 1, "N/A", 25
FWrite 1, 0, 2
FWrite 1, 0, 4
Next
FWrite 1, Upper(U_Name()), 25
FWrite 1, Date(), 2
FWrite 1, Time(), 4
FWrite 1, Space(20), 20
:LABEL032
FClose 1
If (Exist(TSTRING026(0))) Then
INTEGER006 = (FileInf(TSTRING026(0), 4) - 37) / 59
BOOLEAN026 = 1
Goto LABEL033
Endif
INTEGER006 = 0
BOOLEAN026 = 0
:LABEL033
FOpen 1, TSTRING026(0), 1, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL034
Endif
BOOLEAN019 = 0
:LABEL034
If (BOOLEAN019) Then
OpText TSTRING026(0)
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + TSTRING026(0) , 0
WORD004 = 10
Gosub LABEL101
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING028, 0
Goto LABEL035
Endif
Log STRING010 + STRING011 + STRING019 + " " + STRING028, 0
:LABEL035
FClose 1
Return
Endif
If (Exist(PPEPath() + "TRASH.IDX")) Then
FOpen 2, PPEPath() + "TRASH.IDX", 1, 2
If (Ferr(2)) Then
BOOLEAN019 = 1
Goto LABEL036
Endif
BOOLEAN019 = 0
:LABEL036
If (BOOLEAN019) Then
OpText PPEPath() + "TRASH.IDX"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + PPEPath() + "TRASH.IDX", 0
WORD004 = 10
Gosub LABEL101
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING028, 0
Goto LABEL037
Endif
Log STRING010 + STRING011 + STRING019 + " " + STRING028, 0
:LABEL037
FClose 1
FClose 2
Return
Endif
FSeek 2, 0, 2
Goto LABEL040
Endif
FCreate 2, PPEPath() + "TRASH.IDX", 1, 2
If (Ferr(2)) Then
BOOLEAN019 = 1
Goto LABEL038
Endif
BOOLEAN019 = 0
:LABEL038
If (BOOLEAN019) Then
OpText PPEPath() + "TRASH.IDX"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + PPEPath() + "TRASH.IDX", 0
WORD004 = 10
Gosub LABEL101
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING028, 0
Goto LABEL039
Endif
Log STRING010 + STRING011 + STRING019 + " " + STRING028, 0
:LABEL039
FClose 1
FClose 2
Return
Endif
FSeek 2, 0, 0
FWrite 2, " EDSBack v1.15 Trash File Index " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 37
:LABEL040
If (BOOLEAN026) Then
FSeek 1, 0, 2
Goto LABEL041
Endif
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.15 Binary Trash File" + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 37
:LABEL041
FWrite 1, 0, 1
Inc INTEGER006
If (BOOLEAN017 && BOOLEAN012) Then
FWrite 1, 1, 1
FWrite 1, STRING017, 3
FWrite 1, STRING006, 4
FWrite 1, STRING007, 8
STRING008 = Upper(U_Name() + Space(25 - Len(U_Name())))
FWrite 1, STRING008, 25
FWrite 1, Date(), 2
FWrite 1, Time(), 4
INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10) + S2I(STRING007, 10)
Goto LABEL042
Endif
FWrite 1, 0, 1
FWrite 1, STRING010, 3
FWrite 1, STRING011, 4
FWrite 1, STRING019, 8
STRING008 = Upper(U_Name())
STRING008 = STRING008 + Space(25 - Len(U_Name()))
FWrite 1, STRING008, 25
FWrite 1, Date(), 2
FWrite 1, Time(), 4
INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10) + S2I(STRING019, 10)
:LABEL042
FWrite 2, INTEGER006, 4
FWrite 2, INTEGER003, 4
FWrite 1, Space(11), 11
FClose 1
FClose 2
WORD004 = 7
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE001 <> 0) U_Sec = BYTE001
If (DATE002 <> 0) U_ExpDate = DATE002
If (BYTE002 <> 0) U_ExpSec = BYTE002
If (BOOLEAN007) Then
If (BOOLEAN017 && BOOLEAN012) Then
U_BDPhone = STRING017 + STRING006 + STRING007
Goto LABEL043
Endif
U_BDPhone = STRING010 + "-" + STRING011 + "-" + STRING019
Endif
:LABEL043
If ((BYTE011 == 1) || (BYTE011 == 3)) Then
If (TBYTE018(0) == 1) Then
U_Cmnt1 = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Goto LABEL044
Endif
If (TBYTE018(0) == 2) Then
U_Cmnt2 = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Goto LABEL044
Endif
If (TBYTE018(0) == 10) Then
If (Psa(6)) U_Notes(0) = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Goto LABEL044
Endif
If (TBYTE018(0) == 20) Then
If (Psa(6)) U_Notes(1) = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Goto LABEL044
Endif
If (TBYTE018(0) == 30) Then
If (Psa(6)) U_Notes(2) = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Goto LABEL044
Endif
If (TBYTE018(0) == 40) Then
If (Psa(6)) U_Notes(3) = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Goto LABEL044
Endif
If (TBYTE018(0) == 50) Then
If (Psa(6)) U_Notes(4) = String(Date()) + " " + String(Time()) + " EDSBack v1.15 "
Endif
Endif
:LABEL044
If ((BYTE011 == 2) || (BYTE011 == 3)) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING017 + "-" + STRING006 + "-" + STRING007 + " EDSBack v1.15 "
Goto LABEL045
Endif
STRING008 = "(" + STRING010 + ")" + " " + STRING011 + "-" + STRING019 + " EDSBack v1.15 "
:LABEL045
If (TBYTE018(1) == 1) Then
U_Cmnt1 = STRING008
Goto LABEL046
Endif
If (TBYTE018(1) == 2) Then
U_Cmnt2 = STRING008
Goto LABEL046
Endif
If (TBYTE018(1) == 10) Then
If (Psa(6)) U_Notes(0) = STRING008
Goto LABEL046
Endif
If (TBYTE018(1) == 20) Then
If (Psa(6)) U_Notes(1) = STRING008
Goto LABEL046
Endif
If (TBYTE018(1) == 30) Then
If (Psa(6)) U_Notes(2) = STRING008
Goto LABEL046
Endif
If (TBYTE018(1) == 40) Then
If (Psa(6)) U_Notes(3) = STRING008
Goto LABEL046
Endif
If (TBYTE018(1) == 50) Then
If (Psa(6)) U_Notes(4) = STRING008
Endif
Endif
:LABEL046
PutUser
If (BYTE009 == 1) Then
FCreate 1, TempPath() + "EDS" + String(PcbNode()) + ".WRK", 1, 3
FPutLn 1, " @X0B" + U_Name() + " @X07 was verified on @X0C" + String(Date()) + " @X07at@X0C " + String(Time())
FPutLn 1, "@X07You may wish to give this user a personal greeting... His/Her new"
If (BYTE001 <> 0) Then
STRING008 = String(BYTE001)
Goto LABEL047
Endif
STRING008 = "N/A"
:LABEL047
FPutLn 1, "security level is @X09" + STRING008 + "@X07."
FPutLn 1
FPutLn 1, "Also, here are the user's address & phone numbers:"
FPutLn 1
If (Psa(3)) Goto LABEL048
FPutLn 1, "@X09Address PSA not installed..."
FPutLn 1
Goto LABEL049
:LABEL048
FPutLn 1, "@X07Address Line 1: @X09" + U_Addr(0)
FPutLn 1, "@X07Address Line 2: @X09" + U_Addr(1)
FPutLn 1, "@X07City: @X09" + U_Addr(2) + " @X07State: @X09" + U_Addr(3) + " @X07Zip: @X09" + U_Addr(4)
FPutLn 1, "@X07Country: @X09" + U_Addr(5)
FPutLn 1
:LABEL049
FPutLn 1, "@X07VOICE phone: @X0E" + U_HVPhone
FPutLn 1, "@X07DATA phone : @X0E" + U_BDPhone
FPutLn 1
FPutLn 1, "@X0CThank you for using EDSBack v1.15!"
FPutLn 1
FPutLn 1, "@X0A---"
FPut 1, " # EDSBack v1.15 " + String(FileInf(PPEPath() + PPEName() + ".PPE", 2))
FPutLn 1, " " + String(FileInf(PPEPath() + PPEName() + ".PPE", 3))
FPutLn 1, " # @BOARDNAME@"
FClose 1
Message 0, "SYSOP", "EDSBACK v1.15", "USER VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TempPath() + "EDS" + String(PcbNode()) + ".WRK"
Delete TempPath() + "EDS" + String(PcbNode()) + ".WRK"
Goto LABEL050
Endif
If (BYTE009 == 2) Then
If ((TSTRING026(4) <> "") && (TSTRING026(4) <> "NONE")) Message 0, "SYSOP", "EDSBACK v1.15", "USER VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TSTRING026(4)
Endif
:LABEL050
If (BYTE010 == 1) Then
FCreate 1, TempPath() + "EDSU" + String(PcbNode()) + ".WRK", 1, 3
FPutLn 1, " Thanks for calling @FIRST@!"
FPutLn 1, "We hope you find your stay here enjoyable and we hope you call back"
FPutLn 1, "frequently! Your first time on here was on @X0B@LOGDATE@ @X07at@X0B @LOGTIME@@X07."
FPutLn 1
FPutLn 1, "@X0A---"
FPut 1, " # EDSBack v1.15 " + String(FileInf(PPEPath() + PPEName() + ".PPE", 2))
FPutLn 1, " " + String(FileInf(PPEPath() + PPEName() + ".PPE", 3))
FPutLn 1, " # @BOARDNAME@"
FClose 1
Message 0, U_Name(), "SYSOP", "VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TempPath() + "EDSU" + String(PcbNode()) + ".WRK"
Delete TempPath() + "EDSU" + String(PcbNode()) + ".WRK"
Goto LABEL051
Endif
If (BYTE010 == 2) Then
If ((TSTRING026(5) <> "") && (TSTRING026(5) <> "NONE")) Message 0, U_Name() , "SYSOP", "VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TSTRING026(5)
Endif
:LABEL051
If (EvtTimeAdj()) Goto LABEL053
If (BOOLEAN016) Then
AdjTime INTEGER005
Goto LABEL052
Endif
AdjTime INTEGER005 - MinLeft()
:LABEL052
Goto LABEL054
:LABEL053
WORD004 = 40
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 34
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
:LABEL054
AdjDBytes INTEGER015
AdjTBytes INTEGER016
AdjTFiles WORD009
WORD004 = 29
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BOOLEAN013) Then
WORD004 = 42
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + String(Time()) , 0
WORD004 = 30
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Delay 15
Gosub LABEL106
Bye
Goto LABEL055
Endif
If ((TSTRING026(10) <> "") && (TSTRING026(10) <> "NONE")) Then
OpText FileInf(TSTRING026(10), 8)
WORD004 = 33
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Flag TSTRING026(10)
WORD004 = 41
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + FileInf(TSTRING026(10), 8) , 0
Delay 15
If (BOOLEAN029) Download ""
Endif
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Endif
:LABEL055
Return
:LABEL056
KeyFlush
Color 7
Cls
PrintLn "@X0F @X10┌──────────────────────────────────────@X19┐@X07"
PrintLn "@X0F @X10│ @X1AEDSBack v1.15 @X19│@X07"
PrintLn "@X0F @X10│ @X1FCopyright (@X1Bc@X1F) 1994 by Eric D. Scales @X19│@X07"
PrintLn "@X0F @X10└@X19──────────────────────────────────────┘@X07"
PrintLn
Print "@X0C@BOARDNAME:80C@"
PrintLn
PrintLn "@X0C @X40┌───────────────────────────────────────────────────────────────────────@X4C┐@X07"
Print "@X0F @X40│ @X4FName : @X4E"
If (TBOOLEAN024(0)) Then
Print "N/A" + Space(24)
Else
Print "@REAL:27@"
Endif
Print "@X4FFrom : @X4E"
If (TBOOLEAN024(3)) Then
Print "N/A" + Space(26)
Else
Print "@CITY:29@"
Endif
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
Print "@X0F @X40│ @X4FCurrent Sec. Level : @X4E@SECURITY:11@"
Print "@X4FUpgraded Security Level : @X4E"
If (BYTE001 <> 0) Then
STRING008 = String(BYTE001)
Else
STRING008 = "N/A"
Endif
Print Left(STRING008 + Space(7), 7)
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
Print "@X0F @X40│ @X4FNew Expiration Date : @X4E"
Print Left(String(DATE002) + Space(11), 11)
Print "@X4FNew Expired Security Level : @X4E"
If (BYTE002 <> 0) Then
STRING008 = String(BYTE002)
Else
STRING008 = "N/A"
Endif
Print Left(STRING008 + Space(7), 7)
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
Print "@X0F @X40│ @X4FNumber Connect Tries : @X4E"
Print Left(String(BYTE004) + Space(8), 8)
Print "@X4F Hangup After Verification : @X4E"
If (BOOLEAN013) Then
Print "Yes "
Else
Print "No "
Endif
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
PrintLn "@X0F @X40└@X4C───────────────────────────────────────────────────────────────────────┘@X07"
PrintLn
Return
:LABEL057
Delay 18
INTEGER006 = 0
STRING008 = ""
BOOLEAN019 = 0
If (TBOOLEAN024(0)) Then
STRING009 = YesChar()
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying name...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE005)) Do
If (STRING009 == YesChar()) Inc INTEGER006
WORD004 = 11
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
KeyFlush
InputText STRING012, STRING008, 0, 25
If (TBOOLEAN024(4) && (Strip(STRING008, " ") <> "")) Then
If (Upper(U_Name()) == Upper(STRING008)) Then
STRING009 = YesChar()
PrintLn
PrintLn "@X07" + U_Name()
PrintLn U_City
PrintLn
KeyFlush
PromptStr 598, STRING009, 1, " ", 2 + 4 + 16384
If (Upper(STRING009) <> Upper(YesChar())) Then
PrintLn
Continue
Endif
Goto LABEL058
Endif
If ((Psa(1) && Alias()) && (Upper(U_Alias) == Upper(STRING008))) Then
STRING009 = YesChar()
PrintLn
PrintLn "@X07" + U_Alias
PrintLn U_City
PrintLn
KeyFlush
PromptStr 598, STRING009, 1, " ", 2 + 4 + 16384
If (Upper(STRING009) <> Upper(YesChar())) Then
PrintLn
Continue
Endif
Endif
Endif
:LABEL058
If (Upper(U_Name()) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
If ((Psa(1) && Alias()) && (Upper(U_Alias) == Upper(STRING008))) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE005 - INTEGER006)
WORD004 = 12
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL059
WORD004 = 44
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 13
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Gosub LABEL106
Bye
Endif
:LABEL059
BOOLEAN019 = 0
INTEGER006 = 0
If (TBOOLEAN024(1)) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying password...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE006)) Do
Inc INTEGER006
STRING008 = ""
KeyFlush
PromptStr 148, STRING008, 12, Mask_Pwd(), 1 + 2 + 4 + 256
If (Upper(U_Pwd) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE006 - INTEGER006)
WORD004 = 14
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL060
WORD004 = 45
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 13
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Gosub LABEL106
Bye
Endif
:LABEL060
BOOLEAN019 = 0
INTEGER006 = 0
If (TBOOLEAN024(2) && Psa(2)) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying verification string...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE013)) Do
Inc INTEGER006
STRING008 = ""
KeyFlush
PromptStr 707, STRING008, 25, Mask_Ascii(), 2 + 4
If (Upper(U_Ver) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE013 - INTEGER006)
WORD004 = 52
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL061
WORD004 = 24
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 13
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Gosub LABEL106
Bye
Endif
:LABEL061
BOOLEAN019 = 0
INTEGER006 = 0
If (TBOOLEAN024(3)) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying city...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE015)) Do
Inc INTEGER006
STRING008 = ""
KeyFlush
PromptStr 265, STRING008, 24, Mask_Ascii(), 2 + 4
If (Upper(U_City) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE015 - INTEGER006)
WORD004 = 53
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL062
WORD004 = 51
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 13
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Gosub LABEL106
Bye
Endif
:LABEL062
BOOLEAN019 = 1
Return
:LABEL063
If (Exist(PPEPath() + "EDSBACK.XXX")) Goto LABEL064
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: @X0FEDSBACK.XXX DOES NOT EXIST!"
Log "EDSBack Fatal Error: EDSBACK.XXX does not exist!", 0
Delay 4
Goto LABEL105
:LABEL064
FOpen 1, PPEPath() + "EDSBACK.XXX", 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSBACK.XXX"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSBACK.XXX", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Else
WORD006 = 0
FSeek 1, 43, 0
FRead 1, STRING006, 3
FRead 1, BOOLEAN012, 1
FRead 1, STRING013, 25
FRead 1, INTEGER004, 4
FRead 1, STRING016, 30
FRead 1, STRING014, 30
FRead 1, STRING015, 30
FRead 1, BYTE003, 1
FRead 1, WORD002, 2
FRead 1, BOOLEAN016, 1
FRead 1, INTEGER005, 4
FRead 1, STRING022, 75
FRead 1, WORD003, 2
FRead 1, STRING023, 30
FRead 1, BYTE007, 1
FRead 1, TBYTE018(0), 1
FRead 1, TBYTE018(1), 1
For INTEGER006 = 0 To 11
FRead 1, TSTRING026(INTEGER006), 75
Next
FRead 1, BYTE005, 1
FRead 1, BYTE006, 1
FRead 1, BYTE013, 1
FRead 1, BYTE015, 1
FRead 1, BYTE009, 1
FRead 1, BYTE010, 1
FRead 1, INTEGER008, 4
FRead 1, INTEGER009, 4
FRead 1, BYTE011, 1
For INTEGER006 = 0 To 4
FRead 1, TBOOLEAN024(INTEGER006), 1
Next
FRead 1, BYTE012, 1
For INTEGER006 = 0 To 3
FRead 1, TBOOLEAN025(INTEGER006), 1
Next
FRead 1, WORD005, 2
FRead 1, BYTE020, 1
FRead 1, BOOLEAN004, 1
FRead 1, BOOLEAN005, 1
FRead 1, BOOLEAN006, 1
FRead 1, WORD008, 2
FRead 1, BYTE014, 1
FRead 1, BOOLEAN007, 1
FRead 1, INTEGER015, 4
FRead 1, INTEGER016, 4
FRead 1, WORD009, 2
FRead 1, BOOLEAN029, 1
FRead 1, BOOLEAN023, 1
FRead 1, BYTE008, 1
FRead 1, WORD006, 2
FClose 1
If (WORD006 <> 0) Then
DATE009 = Date() + WORD006
WORD006 = 0
Else
DATE009 = 0
WORD006 = 0
Endif
Return
:LABEL065
If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
FOpen 1, PPEPath() + "EDSSTATS.DAT", 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSSTATS.DAT", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Return
Endif
FSeek 1, 47, 0
FRead 1, INTEGER011, 4
FClose 1
Else
INTEGER011 = 0
Endif
Cls
PrintLn " @X10┌────────────────────────────────────────────────────────────────────────────@X19┐@X07"
PrintLn " @X10│ @X1F EDSBack v1.15 Informational Status Display @X19│@X07"
PrintLn " @X10└@X19────────────────────────────────────────────────────────────────────────────┘@X07"
PrintLn " @X10┌─────────────────────@X19┐ @X10┌───────────────────────────────────────────────────@X19┐@X07"
PrintLn " @X10│ @X1AExecutable Status @X19│ @X10│ @X1AEDSBack System File Stats @X19│@X07"
PrintLn " @X10│ @X1FName @X13" + Left(PPEName() + ".PPE" + Space(13), 13) + "@X19│ @X10│@X1EName Bytes Records @X19│@X07"
Print " @X10│ @X1FDate @X13" + String(FileInf(PPEPath() + PPEName() + ".PPE", 2)) + " @X19│ @X10│@X1FUsed # Trash @X13 " + Left(String(FileInf(TSTRING026(0), 4)) + Space(19), 19)
INTEGER003 = (FileInf(TSTRING026(0), 4) - 37) / 59
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
Print " @X10│ @X1FTime @X13" + String(FileInf(PPEPath() + PPEName() + ".PPE", 3)) + " @X19│ @X10│@X1FBad # Trash @X13" + Left(String(FileInf(TSTRING026(3), 4)) + Space(19), 19)
INTEGER003 = (FileInf(TSTRING026(3), 4) - 41) / 19
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
Print " @X10│ @X1FBytes @X13" + Left(String(FileInf(PPEPath() + PPEName() + ".PPE", 4)) + Space(13), 13) + "@X19│ @X10│@X1FAllowed #s @X13" + Left(String(FileInf(TSTRING026(1), 4)) + Space(19), 19)
INTEGER003 = (FileInf(TSTRING026(1), 4) - 41) / 29
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
Print " @X10└@X19─────────────────────┘ @X10│@X1FDialing Templates @X13" + Left(String(FileInf(PPEPath() + "EDSDIAL.PLT", 4)) + Space(19), 19)
INTEGER003 = (FileInf(PPEPath() + "EDSDIAL.PLT", 4) - 41) / 28
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
PrintLn " @X10┌─────────────────@X19┐ @X10└@X19───────────────────────────────────────────────────┘@X07"
PrintLn " @X10│ @X1FUsers Verified @X19└@X10──────────────────────────────────────@X19┐ @X10┌─────────────────@X19┐@X07"
STRING008 = ReadLine(PCBDat(), 29)
INTEGER003 = FileInf(STRING008, 4) / 400
PrintLn " @X10│ @X1F0%························50%·····················100% @X19│ @X10│@X1FUsers @X13" + Left(String(INTEGER003) + Space(8), 8) + "@X19│@X07"
If ((INTEGER011 <> 0) && (INTEGER003 <> 0)) Then
REAL001 = FmtReal((ToReal(INTEGER011) / ToReal(INTEGER003)) * ToReal(54), 1, 0)
Else
REAL001 = 0
Endif
Color 7
Print " @X10│ @X1C"
For INTEGER006 = 1 To ToInt(REAL001)
Print "▓"
Next
PrintLn "@X0C" + Space(54 - ToInt(REAL001)) + "@X10 @X19│ @X10│@X1FVerified @X13" + Left(String(INTEGER011) + Space(8), 8) + "@X19│@X07"
PrintLn " @X10└@X19────────────────────────────────────────────────────────┘ @X10└@X19─────────────────┘@X07"
PrintLn " @X10┌────────────────────────────────────────────────────────────────────────────@X19┐@X07"
PrintLn " @X10│ @X1ARegistration Status @X19│@X07"
If (BOOLEAN015) Then
PrintLn " @X10│ @X1FSysop Name @X13" + Left(STRING013 + Space(28), 28) + "@X1EPlease thank your SysOp for @X19│@X07"
PrintLn " @X10│ @X1FReg. Code @X13" + Left(String(INTEGER004) + Space(28), 28) + "@X1Esupporting the shareware concept! @X19│@X07"
Else
PrintLn " @X10│ @X1FSysop Name @X13UNREGISTERED" + Space(16) + "@X1EPlease ask your SysOp how you can @X19│@X07"
PrintLn " @X10│ @X1FReg. Code @X13 COPY " + Space(16) + "@X1Ehelp register this product! @X19│@X07"
Endif
PrintLn " @X10└@X19────────────────────────────────────────────────────────────────────────────┘@X07"
PrintLn
Wait
Return
:LABEL066
BOOLEAN002 = 0
:LABEL067
If (BOOLEAN002) Goto LABEL069
BYTE017 = 0
BOOLEAN017 = 0
STRING008 = NoChar()
If (BOOLEAN012) Then
WORD004 = 16
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
InputYN STRING012, STRING008, 0
Endif
If (BOOLEAN012 && (STRING008 == YesChar())) Then
STRING017 = ""
STRING006 = ""
STRING007 = ""
WORD004 = 17
While (Strip(STRING017, " ") == "") Do
If (BOOLEAN027) DispStr STRING028
InputStr STRING012, STRING017, 0, 3, "1234567890", 4 + 2 + 256
If ((Strip(STRING017, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 0
Break
Continue
Endif
If ((Strip(STRING017, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
WORD004 = 18
Gosub LABEL101
While (Strip(STRING006, " ") == "") Do
If (BOOLEAN027) DispStr STRING028
InputStr STRING012, STRING006, 0, 4, "1234567890", 4 + 2 + 256
If ((Strip(STRING006, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 0
Break
Continue
Endif
If ((Strip(STRING006, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
WORD004 = 19
Gosub LABEL101
While (Strip(STRING007, " ") == "") Do
If (BOOLEAN027) DispStr STRING028
InputStr STRING012, STRING007, 0, 8, "1234567890", 4 + 2 + 256
If ((Strip(STRING007, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 0
Break
Continue
Endif
If ((Strip(STRING007, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
STRING008 = YesChar()
If (Len(Strip(STRING017 + STRING006 + STRING007, " ")) >= BYTE014) Then
OpText " " + STRING017 + "-" + STRING006 + "-" + STRING007
WORD004 = 20
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
InputYN STRING012, STRING008, 0
Select Case (Upper(STRING008))
Case NoChar()
BOOLEAN002 = 0
Case YesChar()
BOOLEAN002 = 1
BYTE017 = 3
BOOLEAN017 = 1
End Select
Else
OpText String(BYTE014)
WORD004 = 61
Gosub LABEL101
DispStr STRING028
WORD004 = 62
Gosub LABEL101
Log STRING028, 0
BOOLEAN002 = 0
Delay 15
Endif
Else
If ((BOOLEAN012 && (STRING008 == NoChar())) || ((Len(STRING020) <> 10) || (Len(STRING021) <> 10))) Then
STRING006 = ""
STRING007 = ""
Gosub LABEL070
If (!BOOLEAN011) Return
Else
DispFile TSTRING026(6), 2 + 1 + 4
STRING008 = "D"
WORD004 = 25
Gosub LABEL101
DispStr STRING028
If (BOOLEAN027) InputStr STRING012, STRING008, 0, 1, "DdHhEeRr", 2 + 4 + 8192 + 256
Select Case (Upper(STRING008))
Case "D"
BOOLEAN002 = 1
BYTE017 = 1
Case "H"
BOOLEAN002 = 1
BYTE017 = 2
Case "R"
BOOLEAN002 = 1
BOOLEAN011 = 0
Return
Case "E"
Gosub LABEL070
If (BOOLEAN011) Goto LABEL068
BOOLEAN011 = 1
BOOLEAN002 = 0
Endif
Endif
End Select
:LABEL068
Goto LABEL067
:LABEL069
Return
:LABEL070
STRING007 = STRING006
STRING006 = ""
WORD004 = 26
Gosub LABEL101
While (Strip(STRING006, " ") == "") Do
If (BOOLEAN027) DispStr STRING028
STRING006 = STRING007
InputStr STRING012, STRING006, 0, 3, "1234567890", 2 + 4 + 256
If ((Strip(STRING006, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 1
BOOLEAN011 = 0
Return
Continue
Endif
If ((Strip(STRING006, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
STRING007 = ""
WORD004 = 19
Gosub LABEL101
While (Strip(STRING007, " ") == "") Do
If (BOOLEAN027) DispStr STRING028
InputStr STRING012, STRING007, 0, 8, "123456789-0 ", 2 + 4 + 256
If ((Strip(STRING007, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 1
BOOLEAN011 = 0
Return
Continue
Endif
If ((Strip(STRING007, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
If (Len(Strip(STRING006 + STRING007, " ")) >= BYTE014) Then
STRING008 = YesChar()
OpText " (" + STRING006 + ")" + " " + STRING007
WORD004 = 20
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
InputYN STRING012, STRING008, 0
PrintLn
Select Case (Upper(STRING008))
Case NoChar()
BOOLEAN002 = 0
Case YesChar()
BOOLEAN002 = 1
BYTE017 = 3
STRING007 = Strip(Strip(Strip(Strip(STRING007, " "), "-"), "("), ")")
End Select
Else
OpText String(BYTE014)
WORD004 = 61
Gosub LABEL101
DispStr STRING028
WORD004 = 62
Gosub LABEL101
Log STRING028, 0
BOOLEAN002 = 0
Delay 15
Endif
Return
:LABEL071
If (BOOLEAN017 == 0) Then
Select Case (BYTE017)
Case 1
STRING010 = Mid(STRING021, 1, 3)
STRING011 = Mid(STRING021, 4, 3)
STRING019 = Mid(STRING021, 7, 4)
Case 2
STRING010 = Mid(STRING020, 1, 3)
STRING011 = Mid(STRING020, 4, 3)
STRING019 = Mid(STRING020, 7, 4)
Case 3
STRING010 = STRING006
STRING011 = Mid(STRING007, 1, 3)
STRING019 = Mid(STRING007, 4, 4)
End Select
Else
STRING017 = Strip(STRING017, " ")
STRING006 = Strip(STRING006, " ")
STRING007 = Strip(STRING007, " ")
Endif
Return
:LABEL072
BOOLEAN014 = 0
If (Exist(TSTRING026(3))) Then
INTEGER003 = FileInf(TSTRING026(3), 4)
INTEGER006 = (INTEGER003 - 41) / 19
INTEGER013 = INTEGER006
INTEGER012 = 1
INTEGER010 = 1
FOpen 1, TSTRING026(3), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL073
Endif
BOOLEAN019 = 0
:LABEL073
If (BOOLEAN019) Then
OpText TSTRING026(3)
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + TSTRING026(3) , 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Goto LABEL105
Endif
While (INTEGER010 <= INTEGER006) Do
STRING029 = ""
FSeek 1, 41 + INTEGER010 * 19 - 19, 0
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL074
FRead 1, BOOLEAN026, 1
FRead 1, WORD007, 2
If ((PcbNode() == WORD007) || (WORD007 == 0)) Then
If (BOOLEAN017 && BOOLEAN012) Then
If (BOOLEAN026) Then
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING017)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING017, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 4
For BYTE016 = 1 To Len(STRING006)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING006, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 8
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING007)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING007, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
If (STRING017 + STRING006 + STRING007 == STRING029) Then
BOOLEAN014 = 1
FClose 1
Return
Endif
Endif
Goto LABEL074
Endif
If (BOOLEAN026) Goto LABEL074
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING010)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING010, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING011)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING011, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FSeek 1, 1, 1
FRead 1, STRING008, 4
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING019)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING019, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
If (STRING010 + STRING011 + STRING019 == STRING029) Then
BOOLEAN014 = 1
FClose 1
Return
Endif
Endif
:LABEL074
Gosub LABEL103
Inc INTEGER012
Inc INTEGER010
EndWhile
Color 7
FClose 1
Endif
Return
:LABEL075
BOOLEAN009 = 1
BOOLEAN010 = 1
BOOLEAN018 = 0
BOOLEAN014 = 1
If (Exist(TSTRING026(1)) && Exist(PPEPath() + "EDSALLOW.IDX")) Then
If (Exist(PPEPath() + "EDSDIAL.PLT")) Goto LABEL076
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: NO DIALING TEMPLATE FILE EXISTS!"
PrintLn
Log "EDSBACK FATAL ERROR: NO DIALING TEMPLATE FILE!", 0
PrintLn "@X0FPlease ask your SysOp to create the dialing template file..."
Delay 4
Goto LABEL105
:LABEL076
WORD004 = 47
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028 + " "
FOpen 1, TSTRING026(1), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING026(1)
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + TSTRING026(1) , 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Goto LABEL105
Endif
FOpen 2, PPEPath() + "EDSDIAL.PLT", 0, 0
If (Ferr(2)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSDIAL.PLT"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + PPEPath() + "EDSDIAL.PLT", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
FClose 2
Goto LABEL105
Endif
FOpen 3, PPEPath() + "EDSALLOW.IDX", 0, 0
If (Ferr(3)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSALLOW.IDX"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + PPEPath() + "EDSALLOW.IDX", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
FClose 2
FClose 3
Goto LABEL105
Endif
INTEGER014 = FileInf(PPEPath() + "EDSALLOW.IDX", 4)
INTEGER013 = (INTEGER014 - 41) / 8
If (BOOLEAN017) Then
INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10)
Else
INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10)
Endif
INTEGER007 = 0
INTEGER012 = 1
FSeek 3, 41, 0
While (INTEGER012 <= INTEGER013) Do
FRead 3, INTEGER006, 4
FRead 3, INTEGER010, 4
If ((INTEGER006 == 0) || (INTEGER006 == INTEGER003)) Then
Inc INTEGER007
FSeek 1, 41 + INTEGER012 * 29 - 29, 0
STRING029 = ""
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL079
FRead 1, BOOLEAN026, 1
If (BOOLEAN017 && BOOLEAN012) Then
If (BOOLEAN026) Then
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING017)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING017, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 4
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING006)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING006, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING018, 10
STRING018 = Trim(STRING018, " ")
If (STRING017 + STRING006 == STRING029) Then
FreshLine
Gosub LABEL089
If (BOOLEAN014) Then
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: " + STRING018 + " TEMPLATE NOT FOUND!"
PrintLn
Log STRING018 + " TEMPLATE NOT FOUND! EDSBACK HALTED!", 0
PrintLn "@X0FPlease ask your SysOp to check his/her dialing templates for accuracy..."
Delay 4
FClose 1
FClose 2
FClose 3
Goto LABEL105
Goto LABEL077
Endif
FClose 1
FClose 2
FClose 3
:LABEL077
Break
Endif
Endif
Goto LABEL079
Endif
If (BOOLEAN026) Goto LABEL079
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING010)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING010, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING011)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING029 = STRING029 + Mid(STRING011, BYTE016, 1)
Continue
Endif
STRING029 = STRING029 + Mid(STRING008, BYTE016, 1)
Next
FSeek 1, 1, 1
FRead 1, STRING018, 10
STRING018 = Trim(STRING018, " ")
If (STRING010 + STRING011 == STRING029) Then
FreshLine
Gosub LABEL089
If (BOOLEAN014) Then
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: " + STRING018 + " TEMPLATE NOT FOUND!"
PrintLn
Log STRING018 + " TEMPLATE NOT FOUND! EDSBACK HALTED!", 0
PrintLn "@X0FPlease ask your SysOp to check his/her dialing templates for accuracy..."
Delay 4
FClose 1
FClose 2
FClose 3
Goto LABEL105
Goto LABEL078
Endif
FClose 1
FClose 2
FClose 3
:LABEL078
Break
Endif
Endif
:LABEL079
Gosub LABEL103
Inc INTEGER012
EndWhile
Color 7
FClose 1
FClose 2
FClose 3
Dec INTEGER012
Log "EDSBack Allowed #s (Scanned: " + String(INTEGER012) + " Searched: " + String(INTEGER007) + ")", 0
Else
PrintLn
PrintLn
PrintLn "@X0CYour SysOp has not yet created the allowed # calling index file..."
PrintLn "@X0ANotifying SysOp of this problem..."
PrintLn
PrintLn "@X0FEDSBACK HALTING: INDEX FILE NOT PRESENT"
Log "EDSBack Allowed # Index file not present... PLEASE CREATE!", 1
FClose 1
FClose 2
FClose 3
Goto LABEL105
Endif
If (BOOLEAN014) Then
WORD004 = 46
Gosub LABEL101
If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING019 + " " + STRING028, 0
Endif
If ((Exist(TSTRING026(0)) && !TBOOLEAN025(2)) && (!BOOLEAN014 && !BOOLEAN008)) Then
If (Exist(PPEPath() + "TRASH.IDX")) Then
WORD004 = 69
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028 + " "
INTEGER007 = FileInf(PPEPath() + "TRASH.IDX", 4)
INTEGER013 = (INTEGER007 - 37) / 8
FOpen 1, TSTRING026(0), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING026(0)
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + TSTRING026(0) , 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Goto LABEL105
Endif
FOpen 2, PPEPath() + "TRASH.IDX", 0, 0
If (Ferr(2)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "TRASH.IDX"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + PPEPath() + "TRASH.IDX", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
FClose 2
Goto LABEL105
Endif
If (BOOLEAN017) Then
INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10) + S2I(STRING007, 10)
Else
INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10) + S2I(STRING019, 10)
Endif
INTEGER012 = 1
FSeek 2, 37, 0
INTEGER007 = 0
While (INTEGER012 <= INTEGER013) Do
FRead 2, INTEGER010, 4
FRead 2, INTEGER006, 4
If (INTEGER006 == INTEGER003) Then
Inc INTEGER007
FSeek 1, 37 + INTEGER010 * 59 - 59, 0
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL080
FRead 1, BOOLEAN026, 1
FRead 1, STRING021, 3
FRead 1, STRING008, 4
STRING021 = STRING021 + STRING008
FRead 1, STRING008, 8
STRING021 = STRING021 + STRING008
STRING021 = Strip(STRING021, " ")
FRead 1, STRING027, 25
STRING027 = Trim(STRING027, " ")
FRead 1, DATE003, 2
FRead 1, TIME001, 4
If (BOOLEAN017 == 0) Then
If (STRING021 == STRING010 + STRING011 + STRING019) Then
WORD004 = 50
Gosub LABEL101
BOOLEAN018 = 1
FClose 1
FClose 2
If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING019 + " " + STRING028, 0
Break
Endif
Goto LABEL080
Endif
If (STRING021 == STRING017 + STRING006 + STRING007) Then
WORD004 = 50
Gosub LABEL101
BOOLEAN018 = 1
FClose 1
FClose 2
If (BOOLEAN027) Log STRING017 + "-" + STRING006 + "-" + STRING007 + " " + STRING028, 0
Break
Endif
Endif
:LABEL080
Gosub LABEL103
Inc INTEGER012
EndWhile
Color 7
FClose 1
FClose 2
Newline
PrintLn
Dec INTEGER012
Log "EDSBack Used # File (Scanned: " + String(INTEGER012) + " Searched: " + String(INTEGER007) + ")", 0
Else
PrintLn
PrintLn
PrintLn "@X0CYour SysOp has not yet created the trash index file..."
PrintLn "@X0ANotifying SysOp of this problem..."
PrintLn
PrintLn "@X0FEDSBACK HALTING: INDEX FILE NOT PRESENT"
Log "EDSBack Trash Index file not present... PLEASE CREATE!", 1
FClose 1
FClose 2
Else
Endif
If (BOOLEAN018) Goto LABEL082
For INTEGER006 = 0 To 5
TSTRING024(INTEGER006) = ""
TTIME002(INTEGER006) = 0
TDATE004(INTEGER006) = 0
Next
If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
INTEGER007 = FileInf(PPEPath() + "EDSSTATS.DAT", 4)
FOpen 1, PPEPath() + "EDSSTATS.DAT", 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL081
Endif
BOOLEAN019 = 0
:LABEL081
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " EDSSTATS.DAT", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Return
Endif
FSeek 1, 47, 0
FRead 1, INTEGER011, 4
FSeek 1, 8, 1
For INTEGER006 = 0 To 5
FRead 1, TSTRING024(INTEGER006), 25
FRead 1, TDATE004(INTEGER006), 2
FRead 1, TTIME002(INTEGER006), 4
Next
FClose 1
Endif
For INTEGER006 = 0 To 5
If (Trim(TSTRING024(INTEGER006), " ") == "") Then
TSTRING024(INTEGER006) = " N/A"
TDATE004(INTEGER006) = 0
TTIME002(INTEGER006) = 0
Endif
Next
:LABEL082
Return
:LABEL083
If (!Exist(TSTRING026(2))) Return
INTEGER003 = FileInf(TSTRING026(2), 4)
INTEGER006 = (INTEGER003 - 39) / 28
INTEGER010 = 1
FOpen 1, TSTRING026(2), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING026(2)
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + TSTRING026(2) , 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Else
While (INTEGER010 <= INTEGER006) Do
FSeek 1, 39 + INTEGER010 * 28 - 28, 0
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL084
FRead 1, WORD007, 2
If ((WORD007 == PcbNode()) || (WORD007 == 0)) Then
FRead 1, STRING008, 25
STRING008 = Upper(Trim(STRING008, " "))
If (InStr(Upper(U_Name()), STRING008) <> 0) Then
WORD004 = 22
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 23
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
FClose 1
STRING008 = ""
Goto LABEL105
Endif
Endif
:LABEL084
Inc INTEGER010
EndWhile
FClose 1
STRING008 = ""
Return
:LABEL085
If (!Exist(TSTRING026(9))) Return
INTEGER003 = FileInf(TSTRING026(9), 4)
INTEGER006 = (INTEGER003 - 39) / 4
INTEGER010 = 1
FOpen 1, TSTRING026(9), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING026(9)
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + TSTRING026(9) , 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Else
While (INTEGER010 <= INTEGER006) Do
FSeek 1, 39 + INTEGER010 * 4 - 4, 0
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL086
FRead 1, WORD007, 2
If ((WORD007 == PcbNode()) || (WORD007 == 0)) Then
FRead 1, BYTE016, 1
If (U_Sec == BYTE016) Then
WORD004 = 22
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 23
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
FClose 1
Goto LABEL105
Endif
Endif
:LABEL086
Inc INTEGER010
EndWhile
FClose 1
Return
:LABEL087
INTEGER006 = 0
INTEGER010 = 0
STRING009 = ""
STRING009 = Strip(Upper(STRING013), " ")
For INTEGER010 = 1 To Len(STRING009)
INTEGER006 = INTEGER006 + Asc(Mid(STRING009, INTEGER010, 1))
Next
INTEGER006 = INTEGER006 + 5427
Inc INTEGER006
INTEGER010 = INTEGER006 / 2
INTEGER006 = INTEGER010 + INTEGER006
INTEGER006 = INTEGER006 + Len(STRING009)
INTEGER010 = INTEGER008
INTEGER006 = INTEGER006 + INTEGER010
INTEGER006 = INTEGER006 + INTEGER009
INTEGER006 = INTEGER006 - 34
BOOLEAN015 = 0
If (INTEGER004 == INTEGER006) Then
BOOLEAN015 = 1
Else
BOOLEAN015 = 0
Endif
If (BOOLEAN015) Goto LABEL088
Cls
PrintLn "@X0AEDSBack v1.15 @X0FCopyright (@X07c@X0F) 1994 by Eric D. Scales"
PrintLn
Print "@X0CUNREGISTERED @X07delaying @X0E10"
Backup 2
INTEGER006 = 9
While ((INTEGER006 < 10) && (INTEGER006 >= 0)) Do
Delay 18
Print String(INTEGER006) + " "
Dec INTEGER006
Backup 2
EndWhile
PrintLn
:LABEL088
Return
:LABEL089
INTEGER003 = FileInf(PPEPath() + "EDSDIAL.PLT", 4)
INTEGER006 = (INTEGER003 - 41) / 28
INTEGER010 = 1
FSeek 2, 41, 0
While (INTEGER010 <= INTEGER006) Do
FRead 2, BOOLEAN003, 1
FRead 2, BOOLEAN026, 1
For BYTE016 = 0 To 5
FRead 2, TBYTE021(BYTE016), 1
Next
FRead 2, STRING008, 10
FRead 2, BYTE001, 1
FRead 2, BYTE002, 1
FRead 2, WORD006, 2
STRING008 = Trim(STRING008, " ")
FSeek 2, 6, 1
If (BOOLEAN003) Goto LABEL090
If (STRING008 == STRING018) Then
BOOLEAN014 = 0
If (BOOLEAN026) Then
BOOLEAN013 = 1
Else
BOOLEAN013 = 0
Endif
If (BOOLEAN008) BOOLEAN013 = 0
If (WORD006 <> 0) DATE002 = Date() + WORD006
Return
Else
BOOLEAN014 = 1
Endif
:LABEL090
Inc INTEGER010
EndWhile
Return
:LABEL091
PrintLn
Select Case (BYTE019)
Case 1
STRING009 = TSTRING026(8)
Case 2
STRING009 = PPEPath() + Mid(STRING018, 1, 8) + ".TBL"
STRING009 = Strip(Upper(STRING009), " ")
End Select
If (Exist(STRING009)) Then
INTEGER003 = FileInf(STRING009, 4)
INTEGER006 = (INTEGER003 - 43) / 25
FOpen 1, STRING009, 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL092
Endif
BOOLEAN019 = 0
:LABEL092
If (BOOLEAN019) Then
OpText STRING009
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + STRING009, 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
FClose 1
Goto LABEL105
Endif
BOOLEAN021 = 0
BOOLEAN022 = 0
INTEGER010 = 1
FSeek 1, 43, 0
While (!BOOLEAN021 && (INTEGER010 <= INTEGER006)) Do
FRead 1, BOOLEAN003, 1
FRead 1, WORD007, 2
FRead 1, DATE006, 2
FRead 1, TIME004, 4
FRead 1, DATE007, 2
FRead 1, TIME005, 4
FSeek 1, 10, 1
If ((!BOOLEAN003 && ((PcbNode() == WORD007) || (WORD007 == 0))) && (DATE006 + DATE007 + TIME004 + TIME005 <> 0)) Then
If (DATE006 == 0) DATE005 = Date()
If (DATE007 == 0) DATE008 = Date()
If (DATE005 <= Date()) Then
If (DATE008 >= Date()) Then
TIME003 = Time()
If (TIME004 <= TIME003) Then
If (TIME005 > TIME003) Then
BOOLEAN021 = 1
BOOLEAN022 = 1
Endif
Endif
Endif
Endif
Endif
Inc INTEGER010
EndWhile
FClose 1
Endif
Return
:LABEL093
If (Exist(PPEPath() + "EDSBACK.CAL")) Then
FAppend 1, PPEPath() + "EDSBACK.CAL", 1, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSBACK.CAL"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + PPEPath() + "EDSBACK.CAL", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
Log "USER WAS CALLED BACK IN CBONLY MODE!", 0
FClose 1
Goto LABEL105
Endif
Else
FCreate 1, PPEPath() + "EDSBACK.CAL", 1, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSBACK.CAL"
WORD004 = 9
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
WORD004 = 8
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + PPEPath() + "EDSBACK.CAL", 0
WORD004 = 27
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
Log "USER WAS CALLED BACK IN CBONLY MODE!", 0
FClose 1
Goto LABEL105
Endif
FPutLn 1, "EDSBack v1.15 Call-Back Only Mode Log"
FPutLn 1, "Log created at " + String(Time()) + " on " + String(Date())
FPutLn 1, "----------------------------------------------------------------"
FPutLn 1
Endif
FPutLn 1, U_Name() + " at " + String(Time()) + " on " + String(Date())
If (BOOLEAN017 && BOOLEAN012) Then
FPutLn 1, "Number called: " + STRING017 + "-" + STRING006 + "-" + STRING007
Else
FPutLn 1, "Number called: " + STRING010 + "-" + STRING011 + "-" + STRING019
Endif
FPutLn 1, "----------------------------------------------------------------"
FClose 1
Return
:LABEL094
If (InStr(CallId(), STRING021) <> 0) Then
WORD004 = 64
Gosub LABEL101
DispStr STRING028
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 7
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE007 <> 0) U_Sec = BYTE007
If (DATE009 <> 0) U_ExpDate = DATE009
If (BYTE008 <> 0) U_ExpSec = BYTE008
PutUser
If (EvtTimeAdj()) Goto LABEL096
If (BOOLEAN016) Then
AdjTime INTEGER005
Goto LABEL095
Endif
AdjTime INTEGER005 - MinLeft()
:LABEL095
Goto LABEL097
:LABEL096
WORD004 = 40
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 34
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
:LABEL097
AdjDBytes INTEGER015
AdjTBytes INTEGER016
AdjTFiles WORD009
WORD004 = 29
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If ((TSTRING026(10) <> "") && (TSTRING026(10) <> "NONE")) Then
OpText FileInf(TSTRING026(10), 8)
WORD004 = 33
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Flag TSTRING026(10)
WORD004 = 41
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + FileInf(TSTRING026(10), 8) , 0
Delay 9
If (BOOLEAN029) Download ""
Endif
Endif
WORD004 = 65
Gosub LABEL101
Log STRING028, 0
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Goto LABEL105
Else
If (InStr(CallId(), STRING020) <> 0) Then
WORD004 = 64
Gosub LABEL101
DispStr STRING028
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 7
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If (BYTE007 <> 0) U_Sec = BYTE007
If (DATE009 <> 0) U_ExpDate = DATE009
If (BYTE008 <> 0) U_ExpSec = BYTE008
PutUser
If (EvtTimeAdj()) Goto LABEL099
If (BOOLEAN016) Then
AdjTime INTEGER005
Goto LABEL098
Endif
AdjTime INTEGER005 - MinLeft()
:LABEL098
Goto LABEL100
:LABEL099
WORD004 = 40
Gosub LABEL101
If (BOOLEAN027) Log STRING028, 0
WORD004 = 34
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
:LABEL100
AdjDBytes INTEGER015
AdjTBytes INTEGER016
AdjTFiles WORD009
WORD004 = 29
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
If ((TSTRING026(10) <> "") && (TSTRING026(10) <> "NONE")) Then
OpText FileInf(TSTRING026(10), 8)
WORD004 = 33
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Flag TSTRING026(10)
WORD004 = 41
Gosub LABEL101
If (BOOLEAN027) Log STRING028 + " " + FileInf(TSTRING026(10), 8) , 0
Delay 9
If (BOOLEAN029) Download ""
Endif
Endif
WORD004 = 65
Gosub LABEL101
Log STRING028, 0
WORD004 = 31
Gosub LABEL101
If (BOOLEAN027) DispStr STRING028
Goto LABEL105
Endif
Endif
Return
:LABEL101
FSeek 5, 39 + WORD004 * 97 - 97, 0
FSeek 5, 1, 1
FRead 5, BOOLEAN027, 1
FRead 5, STRING012, 4
FRead 5, STRING028, 75
FRead 5, BOOLEAN028, 1
If (BOOLEAN028) PrintLn
Return
:LABEL102
Color 1
SPrint Chr(27) + "[2J"
SPrint " "
Print "@POFF@"
Color 16
SPrint "┌────────────────────────────────────────────────────────────────────────────"
Color 25
SPrint "┐"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 30
SPrint "Caller : "
Color 27
SPrint Left(Upper(U_Name()) + Space(29), 29)
Color 30
SPrint "From : "
Color 27
SPrint Left(Upper(U_City) + Space(30), 30)
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 30
SPrint "Upgraded Lvl : "
Color 27
If (BYTE001 <> 0) Then
STRING008 = String(BYTE001)
Else
STRING008 = "N/A"
Endif
SPrint Left(STRING008 + Space(23), 23)
Color 30
SPrint "New Exp. Date : "
Color 27
SPrint Left(String(DATE002) + Space(21), 21)
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 30
SPrint "Password: "
Color 27
SPrint Left(U_Pwd + Space(28), 28)
Color 30
SPrint "Node : "
Color 27
SPrint Left(PcbNode() + Space(30), 30)
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "┌────────────────────────────────────────────────────────────────────"
Color 16
SPrint "┐ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 31
SPrint "Total # Callbacks: "
Color 27
SPrint Left(String(INTEGER011) + Space(13), 13)
Color 31
SPrint "Delaying : "
Color 27
SPrint "No "
Color 31
SPrint "Date : "
Color 27
SPrint Left(String(Date()) + Space(9), 9)
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 31
SPrint "Dialing Template : "
Color 27
SPrint Left(STRING018 + Space(15), 15)
Color 31
SPrint "Logoff : "
Color 27
If (BOOLEAN013) Then
SPrint "Yes "
Else
SPrint "No "
Endif
Color 31
SPrint "Overseas: "
Color 27
If (BOOLEAN012 && BOOLEAN017) Then
SPrint "Yes "
Else
SPrint "No "
Endif
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 31
SPrint "Comment(s) to add: "
Color 27
Select Case (BYTE011)
Case 0
SPrint "None "
Case 1
SPrint "Date/Time "
Case 2
SPrint "Phone # "
Case 3
SPrint "Both (D/T/#) "
End Select
Color 31
SPrint " Message : "
Color 27
Select Case (BYTE010)
Case 1
SPrint "INT "
Case 2
SPrint "EXT "
Case 3
SPrint "None "
End Select
Color 27
If (BOOLEAN017 && BOOLEAN012) Then
SPrint Left(STRING017 + "-" + STRING006 + "-" + STRING007 + Space(19), 19)
Else
SPrint Left(STRING010 + "-" + STRING011 + "-" + STRING019 + Space(19), 19)
Endif
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "┌─────────────────────────────────────────────────────────"
Color 25
SPrint "┐ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 26
SPrint "ACTION"
Color 16
SPrint "│ "
Color 23
SPrint "Please wait, disconnecting caller... "
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "└"
Color 25
SPrint "─────────────────────────────────────────────────────────┘ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 29
SPrint "Last 5 verifications "
Color 30
STRING008 = ReadLine(PCBDat(), 52)
STRING008 = Strip(STRING008, ":")
STRING008 = Strip(STRING008, " ")
If (STRING008 <> "NONE") Then
If (Mid(STRING008, 1, 1) == "C") Then
SPrint Mid(STRING008, 1, 3)
SPrint " "
SPrint Left(Mid(STRING008, 4, Len(STRING008) - 3) + Space(7), 7)
Else
Backup 1
SPrint Mid(STRING008, 1, 4)
SPrint " "
SPrint Left(Mid(STRING008, 5, Len(STRING008) - 4) + Space(7), 7)
Endif
Else
SPrint "LOCAL "
Endif
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "┌───────────────────────────────────────────────"
Color 25
SPrint "┐ "
Color 16
SPrint "┌────────────"
Color 25
SPrint "┐ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING024(5), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(5)) + Space(3)
Color 31
SPrint String(TTIME002(5))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 26
SPrint "CONNECT "
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING024(4), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(4)) + Space(3)
Color 31
SPrint String(TTIME002(4))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 28
STRING008 = ""
STRING008 = ReadLine(PCBDat(), 53)
STRING008 = Strip(STRING008, " ")
SPrint Left(STRING008 + Space(9), 9)
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING024(3), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(3)) + Space(3)
Color 31
SPrint String(TTIME002(3))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "────────── │ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING024(2), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(2)) + Space(3)
Color 31
SPrint String(TTIME002(2))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 26
SPrint "CARRIER "
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING024(1), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(1)) + Space(3)
Color 31
SPrint String(TTIME002(1))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 28
SPrint Left(String(Carrier()) + Space(9), 9)
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "└"
Color 25
SPrint "───────────────────────────────────────────────┘ "
Color 16
SPrint "└"
Color 25
SPrint "────────────┘ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "└"
Color 16
SPrint "────────────────────────────────────────────────────────────────────┘ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 26
SPrint "EDSBack v1.15 Copyright ("
Color 24
SPrint "c"
Color 26
SPrint ") 1994 by Eric D. Scales "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "└"
Color 25
SPrint "────────────────────────────────────────────────────────────────────────────┘"
Color 7
Return
:LABEL103
If ((INTEGER012 <> 0) && (INTEGER013 <> 0)) Then
If (INTEGER012 == 1) Then
BYTE022 = 0
Goto LABEL104
Endif
BYTE022 = REAL001
:LABEL104
REAL001 = ToReal(INTEGER012) / ToReal(INTEGER013)
REAL001 = FmtReal(REAL001 * 100, 1, 0)
If (BYTE022 <> REAL001) Then
Backup Len(String(BYTE022) + "%")
Print String(REAL001) + "%"
Endif
Endif
Return
Endif
Endif
Endif
Endif
Endif
Endif
Endif
:LABEL105
Gosub LABEL106
End
:LABEL106
FClose 5
KeyFlush
KbdChkOn
Color 7
Cls
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 5 Cls
; 3 Wait
; 245 Color
; 598 Goto
; 616 Let
; 29 Print
; 98 PrintLn
; 533 If
; 5 DispFile
; 5 FCreate
; 17 FOpen
; 1 FAppend
; 71 FClose
; 2 FPut
; 36 FPutLn
; 1 GetUser
; 7 PutUser
; 2 Delete
; 7 AdjTime
; 91 Log
; 7 InputStr
; 3 InputYN
; 203 Gosub
; 37 Return
; 5 PromptStr
; 1 DtrOn
; 1 DtrOff
; 4 CdChkOn
; 1 CdChkOff
; 44 Delay
; 2 SendModem
; 23 Inc
; 3 Dec
; 4 Newline
; 1 GetToken
; 1 Shell
; 1 InputText
; 1 Call
; 11 Bye
; 5 KbdChkOn
; 1 KbdChkOff
; 40 OpText
; 91 DispStr
; 2 RdUNet
; 15 WrUNet
; 4 Backup
; 2 FreshLine
; 1 WrUSys
; 1 RdUSys
; 4 Message
; 1 SaveScrn
; 1 RestScrn
; 256 SPrint
; 26 SPrintLn
; 30 FSeek
; 109 FRead
; 41 FWrite
; 19 KeyFlush
; 3 Flag
; 3 Download
; 3 AdjDBytes
; 3 AdjTBytes
; 3 AdjTFiles
;
;
; ■ Functions used :
;
; 3 -
; 8 *
; 16 /
; 615 +
; 37 -
; 128 ==
; 56 <>
; 31 <
; 34 <=
; 3 >
; 51 >=
; 362 !
; 112 &&
; 39 ||
; 39 Len(
; 56 Upper()
; 48 Mid()
; 42 Left()
; 58 Space()
; 21 Ferr()
; 50 Chr()
; 1 Asc()
; 3 InStr()
; 16 Trim()
; 25 Date()
; 22 Time()
; 15 U_Name()
; 4 NoChar()
; 11 YesChar()
; 56 Strip()
; 99 String()
; 1 Mask_Pwd()
; 2 Mask_Ascii()
; 4 PCBDat()
; 56 PPEPath()
; 28 PcbNode()
; 4 ReadLine()
; 8 OnLocal()
; 14 UN_Stat()
; 15 UN_Name()
; 11 UN_City()
; 3 MinLeft()
; 2 CallId()
; 18 Exist()
; 16 S2I()
; 4 Carrier()
; 1 CDOn()
; 6 LangExt()
; 14 Psa()
; 31 FileInf()
; 8 PPEName()
; 1 KInkey()
; 6 TempPath()
; 2 MGetByte()
; 5 ToReal()
; 3 ToInt()
; 2 Alias()
; 3 EvtTimeAdj()
; 2 FmtReal()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WABMSCafdH
;
; 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
;
; 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
;
; 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
;
; S - Shell to DOS ■ 5
; This may be normal if the PPE need to execute an external command,
; but may be actually anything... nasty (formating HD, rebooting,...)
; or usefull (sorting, maintenance,...). Check!
; ■ Search for : SHELL
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
; a - Adjust ratio ■ 4
; User's ratio is adjusted by changing the amount of files/bytes
; uploaded. This may be normal for a user editor.
; ■ Search for : ADJBYTES, ADJDBYTES, ADJTBYTES, ADJTFILES
;
; 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()
;
; 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
;
; 22 For/Next
; 23 While/EndWhile
; 232 If/Then or If/Then/Else
; 8 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------