home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
EDSBK115.ZIP
/
PPE.ZIP
/
EUTMOD8.PPE
(
.txt
)
< prev
Wrap
PCBoard Programming Language Executable
|
1994-02-09
|
29KB
|
1,524 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
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Real REAL001
Real REAL002
Real REAL003
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
Byte BYTE001
Byte TBYTE002(5)
Byte BYTE003
Byte BYTE004
Byte BYTE005
Byte BYTE006
Byte BYTE007
Word WORD001
;------------------------------------------------------------------------------
If (TokCount() <> 1) Then
PrintLn
PrintLn "@X0CEUTMOD8 FATAL ERROR: INVALID COMMAND SEQUENCE!"
PrintLn
PrintLn "@X0AEUTMOD8 may only be ran from within EDSUtil!"
PrintLn
Goto LABEL034
Else
GetToken STRING001
Select Case (STRING001)
Case "1"
Gosub LABEL028
FSeek 2, 359, 0
FRead 2, STRING002, 75
FClose 2
Gosub LABEL007
Goto LABEL034
Case "2"
Gosub LABEL028
FSeek 2, 359, 0
FRead 2, STRING002, 75
FClose 2
Gosub LABEL011
Goto LABEL034
Case "3"
Gosub LABEL028
FSeek 2, 359, 0
FRead 2, STRING002, 75
FClose 2
Gosub LABEL003
Goto LABEL034
Case "4"
Gosub LABEL028
FSeek 2, 359, 0
FRead 2, STRING002, 75
FClose 2
Gosub LABEL001
Goto LABEL034
Case "5"
Gosub LABEL025
Goto LABEL034
Case "6"
Gosub LABEL017
Goto LABEL034
Case "7"
Gosub LABEL021
Goto LABEL034
Case Else
PrintLn
PrintLn "@X0CEUTMOD8 FATAL ERROR: INVALID COMMAND SEQUENCE!"
PrintLn
PrintLn "@X0AEUTMOD8 may only be ran from within EDSUtil!"
PrintLn
Goto LABEL034
Endif
End Select
:LABEL001
STRING005 = PPEPath() + "EDSALLOW.XPT"
STRING006 = PPEPath() + "EXPORT.RPT"
InputStr "Path & Filename to export to", STRING005, 15, 45, Mask_Path() + Mask_File(), 2 + 4 + 256
STRING005 = Strip(Upper(STRING005), " ")
If (STRING005 == "") Goto LABEL034
InputStr "Path & Filename for report file", STRING006, 15, 45, Mask_Path() + Mask_File(), 2 + 4 + 256
STRING006 = Strip(Upper(STRING006), " ")
If (STRING006 == "") Goto LABEL034
STRING002 = Trim(Upper(STRING002), " ")
If (Exist(STRING002)) Goto LABEL002
PrintLn
PrintLn "@X0C" + STRING002 + " does not exist!"
PrintLn
Delay 4
Goto LABEL034
:LABEL002
INTEGER003 = FileInf(STRING002, 4)
INTEGER002 = (INTEGER003 - 41) / 29
If (Exist(STRING005)) Then
FAppend 1, STRING005, 1, 2
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING005 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
Else
FCreate 1, STRING005, 1, 2
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING005 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
Endif
FOpen 2, STRING002, 0, 0
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
FClose 2
Return
Endif
If (Exist(STRING006)) Then
FAppend 3, STRING006, 1, 2
If (Ferr(3)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING006 + " @X0Cfile is currently inaccessible..."
FClose 1
FClose 2
FClose 3
Return
Endif
Else
FCreate 3, STRING006, 1, 2
If (Ferr(3)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING006 + " @X0Cfile is currently inaccessible..."
FClose 1
FClose 2
FClose 3
Return
Endif
FPutLn 3, "EDSBack v1.15 Allowed # Calling Exportation Report"
FPutLn 3, "Report generated at " + String(Time()) + " on " + String(Date())
FPutLn 3, "----------------------------------------------------------------------"
FPutLn 3
Endif
INTEGER001 = 1
Cls
PrintLn
PrintLn Space(17) + "@X0A(@X0FAllowed # Calling File Exportation Procedure@X0A)"
PrintLn
PrintLn
PrintLn "@X0BFrom :@X0E " + STRING002
PrintLn "@X0BTo :@X0E " + STRING005
PrintLn "@X0BReport :@X0E " + STRING006
PrintLn
Print "@X0CPlease wait, now exporting...@X0F "
FSeek 2, 41, 0
While (INTEGER001 <= INTEGER002) Do
FSeek 2, 1, 1
FRead 2, BOOLEAN005, 1
FRead 2, STRING003, 3
STRING003 = Strip(STRING003, " ")
FRead 2, STRING004, 4
STRING004 = Strip(STRING004, " ")
FSeek 2, 20, 1
If (BOOLEAN005) Then
FPutLn 3, "--------------------------------------------------------------------------"
FPutLn 3, "Record #" + String(INTEGER001) + " not exported because it is an international number..."
FPutLn 3, "CountryCode = " + STRING003
FPutLn 3, "CityCode = " + STRING004
Else
FPutLn 1, STRING003 + "-" + Left(STRING004 + Space(3), 3)
Endif
Gosub LABEL032
Inc INTEGER001
EndWhile
FClose 1
FClose 2
FClose 3
PrintLn
PrintLn "@X0BExporting process completed!"
Log "Allowed # calling file exported...", 0
Delay 4
Return
:LABEL003
PrintLn
STRING005 = ""
InputStr "Path & Filename to import", STRING005, 15, 50, Mask_Path() + Mask_File(), 2 + 4
STRING005 = Strip(Upper(STRING005), " ")
If (STRING005 == "") Goto LABEL034
Newline
If (Exist(STRING005)) Goto LABEL004
PrintLn
PrintLn "@X0C" + STRING005 + " does not exist!"
Delay 9
Return
:LABEL004
InputText "Name of template file to use for all imported numbers", STRING007, 15, 10
STRING007 = Trim(Upper(STRING007), " ")
Newline
FOpen 1, STRING005, 0, 0
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING005 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
If (Exist(STRING002)) Then
FOpen 2, STRING002, 1, 2
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
FClose 2
Return
Endif
FSeek 2, 0, 2
Else
FCreate 2, STRING002, 1, 2
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
FClose 2
Return
Endif
FWrite 2, " EDSBack v1.15 Allowed # Calling File" + Chr(13) + Chr(32) + Chr(10) + Chr(26), 41
Endif
Cls
PrintLn
PrintLn Space(19) + "@X0A(@X0FAllowed Numbers Calling List Importation@X0A)"
PrintLn
PrintLn "@X0BFrom :@X0E " + STRING005
PrintLn "@X0BTo :@X0E " + STRING002
PrintLn "@X0BTemplate :@X0E " + STRING007
PrintLn
PrintLn
Print "@X0FWriting record #@X0A1"
INTEGER004 = 1
INTEGER001 = 1
:LABEL005
If (Ferr(1)) Goto LABEL006
Backup Len(INTEGER001)
Print String(INTEGER004)
FGet 1, STRING001
STRING001 = Strip(Strip(Strip(Strip(Strip(STRING001, " "), ")"), "("), "-"), ".")
If (STRING001 <> "") Then
FWrite 2, 0, 1
FWrite 2, 0, 1
FWrite 2, Mid(STRING001, 1, 3), 3
FWrite 2, Mid(STRING001, 4, 3) + Space(1), 4
FWrite 2, STRING007, 10
FWrite 2, Space(10), 10
INTEGER001 = INTEGER004
Inc INTEGER004
Endif
Goto LABEL005
:LABEL006
FClose 1
FClose 2
PrintLn
PrintLn "@X0AFile successfully imported!"
PrintLn
Gosub LABEL025
Return
:LABEL007
If (Exist(STRING002)) Goto LABEL008
PrintLn
PrintLn "@X0C" + STRING002 + " does not exist!"
Delay 9
Return
:LABEL008
INTEGER003 = FileInf(STRING002, 4)
INTEGER002 = (INTEGER003 - 41) / 29
Cls
PrintLn
PrintLn Space(24) + "@X0A(@X0FPacking Allowed # Calling File@X0A)"
PrintLn
PrintLn
PrintLn "@X0F File Size = " + String(INTEGER003) + " bytes Number of Records = " + String(INTEGER002)
If (INTEGER002 <= 1) Then
PrintLn
PrintLn "@X0CTHERE MUST BE AT LEAST ONE RECORD PRESENT IN THE VALID CALLING FILE!"
PrintLn
Delay 18
Return
Endif
KbdChkOff
Rename STRING002, PPEPath() + String(PcbNode()) + "tc.$$$"
FCreate 1, STRING002, 1, 2
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
FOpen 2, PPEPath() + String(PcbNode()) + "tc.$$$", 0, 3
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + String(PcbNode()) + "tc.$$$ @X0Cfile is currently inaccessible..."
FClose 2
FClose 1
PrintLn
PrintLn "@X0ADeleting & renaming temporary files..."
Delete STRING002
Rename PPEPath() + String(PcbNode()) + "tc.$$$", STRING002
Return
Endif
BOOLEAN002 = 0
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.15 Allowed # Calling File" + Chr(13) + Chr(32) + Chr(10) + Chr(26), 41
PrintLn
PrintLn "@X0BPacking Allowed # Calling File..."
If (GrafMode() <> "N") Then
PrintLn
Print "@X0F0% @X07░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ @X0F100%"
BYTE001 = GetY()
Endif
INTEGER001 = 1
FSeek 2, 41, 0
While (INTEGER001 <= INTEGER002) Do
BOOLEAN002 = 0
BOOLEAN004 = 0
BOOLEAN005 = 0
STRING003 = Space(3)
STRING004 = Space(4)
STRING007 = Space(10)
FRead 2, BOOLEAN004, 1
If (BOOLEAN004) Then
BOOLEAN002 = 1
Else
BOOLEAN002 = 0
Endif
If (BOOLEAN002) Goto LABEL009
FWrite 1, BOOLEAN004, 1
FRead 2, BOOLEAN005, 1
FWrite 1, BOOLEAN005, 1
FRead 2, STRING003, 3
FWrite 1, STRING003, 3
FRead 2, STRING004, 4
FWrite 1, STRING004, 4
FRead 2, STRING007, 10
FWrite 1, STRING007, 10
FSeek 2, 10, 1
FWrite 1, Space(10), 10
Goto LABEL010
:LABEL009
FSeek 2, 28, 1
:LABEL010
If (GrafMode() <> "N") Gosub LABEL031
Inc INTEGER001
EndWhile
Color 7
FClose 1
FClose 2
PrintLn
PrintLn
PrintLn "@X0BDeleting temporary files..."
Delete PPEPath() + String(PcbNode()) + "tc.$$$"
PrintLn "@X0EChecking files..."
INTEGER003 = FileInf(STRING002, 4)
INTEGER002 = (INTEGER003 - 41) / 29
If (INTEGER002 < 1) Then
PrintLn
PrintLn "@X0C0 byte file! Recreating with a dummy record..."
FCreate 1, STRING002, 1, 2
FWrite 1, " EDSBack v1.15 Allowed # Calling File" + Chr(13) + Chr(32) + Chr(10) + Chr(26), 41
FWrite 1, 0, 1
FWrite 1, 0, 1
FWrite 1, "000", 3
FWrite 1, "000", 4
FWrite 1, "SAMPLE", 10
FWrite 1, Space(10), 10
FClose 1
PrintLn "@X0ANew allowed # calling file successfully created..."
Endif
PrintLn "@X0FAllowed # calling file successfully packed!"
Log "Allowed # calling file successfully packed!", 0
PrintLn
Gosub LABEL025
KbdChkOn
Return
:LABEL011
BOOLEAN002 = 0
BOOLEAN001 = 1
INTEGER001 = 1
INTEGER003 = FileInf(STRING002, 4)
If (Exist(PPEPath() + "TRASH.IDX")) Goto LABEL012
Cls
PrintLn
PrintLn Space(29) + "@X0F(@X0ABuilding Index File@X0F)"
PrintLn
Gosub LABEL025
:LABEL012
If (Exist(STRING002)) Goto LABEL013
PrintLn
PrintLn "@X0CCreating " + STRING002
FCreate 1, STRING002, 2, 2
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.15 Allowed # Calling File" + Chr(13) + Chr(32) + Chr(10) + Chr(26), 41
FWrite 1, 0, 1
FWrite 1, 0, 1
FWrite 1, "000", 3
FWrite 1, "000", 4
FWrite 1, "SAMPLE", 10
FWrite 1, Space(10), 10
INTEGER003 = 70
Goto LABEL014
:LABEL013
FOpen 1, STRING002, 2, 2
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
:LABEL014
FOpen 2, PPEPath() + "EDSALLOW.IDX", 2, 2
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0FEDSALLOW.IDX @X0Cfile is currently inaccessible..."
FClose 2
Return
Endif
INTEGER002 = (INTEGER003 - 41) / 29
:LABEL015
If (BOOLEAN002) Goto LABEL016
If (BOOLEAN001) Then
FSeek 1, 41 + INTEGER001 * 29 - 29, 0
FRead 1, BOOLEAN004, 1
FRead 1, BOOLEAN005, 1
FRead 1, STRING003, 3
FRead 1, STRING004, 4
FRead 1, STRING007, 10
STRING004 = Strip(STRING004, " ")
STRING003 = Strip(STRING003, " ")
STRING007 = Trim(STRING007, " ")
BOOLEAN001 = 0
Endif
PrintLn
PrintLn Space(23) + "@X0A(@X0FAllowed Calling Numbers Listing@X0A)"
PrintLn
PrintLn " @X0BRecord #@X0E" + String(INTEGER001) + "@X0B of @X0E" + String(INTEGER002)
Print " @X0F(@X09D@X0F)eleted : @X0C"
If (BOOLEAN004) Then
PrintLn "Yes"
Else
PrintLn "No "
Endif
PrintLn
Print " @X0F(@X09I@X0F)nternational : @X0C"
If (BOOLEAN005) Then
PrintLn "Yes"
Else
PrintLn "No "
Endif
PrintLn " @X0FArea(@X09C@X0F)ode/CountryCode : @X0C" + STRING003
PrintLn " @X0F(@X09P@X0F)refix/City Code : @X0C" + STRING004
PrintLn " @X0FDialing (@X09T@X0F)emplate name : @X0C" + STRING007
PrintLn
PrintLn " @X0F(@X09+@X0F) @X0BAdvance 1 record @X0F(@X09-@X0F) @X0BRetard 1 record"
PrintLn " @X0F(@X09J@X0F)@X0Bump to record @X0F(@X09A@X0F)@X0Bdd a record"
PrintLn " @X0F(@X09Q@X0F)@X0Buit @X0BEdit Temp@X0F(@X09L@X0F)@X0Bates"
PrintLn
InputStr "(H)elp, Enter command", STRING005, 10, 1, "DdCcPp+-JjAaQqRrIiLlTtHh", 2 + 4
Newline
STRING005 = Upper(STRING005)
Select Case (STRING005)
Case "Q", "R"
FClose 1
FClose 2
BOOLEAN001 = 0
BOOLEAN002 = 1
Case "H"
Print "@PON@"
DispFile PPEPath() + "EDSAE", 1 + 4
Print "@POFF@"
Cls
BOOLEAN001 = 0
BOOLEAN002 = 0
Case "+"
If (INTEGER001 >= INTEGER002) Then
INTEGER001 = 1
Else
Inc INTEGER001
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "-"
If (INTEGER001 <= 1) Then
INTEGER001 = INTEGER002
Else
Dec INTEGER001
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "J"
INTEGER004 = INTEGER002
InputInt "Enter record # to jump to", INTEGER004, 10
If (INTEGER004 > INTEGER002) Then
INTEGER001 = INTEGER002
ElseIf (INTEGER004 < 1) Then
INTEGER001 = 1
Else
INTEGER001 = INTEGER004
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "D"
FSeek 1, 41 + INTEGER001 * 29 - 29, 0
If (BOOLEAN004) Then
FWrite 1, 0, 1
Else
FWrite 1, 1, 1
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "A"
FSeek 1, 0, 2
FSeek 2, 0, 2
If (BOOLEAN005) Then
STRING001 = YesChar()
Else
STRING001 = NoChar()
Endif
InputYN "International (CountryCode & CityCode)", STRING001, 10
Newline
If (Upper(STRING001) == YesChar()) Then
BOOLEAN005 = 1
Else
BOOLEAN005 = 0
Endif
If (BOOLEAN005) Then
PrintLn "@X0C(XXX = Wildcard)"
InputStr "Country code", STRING003, 10, 3, Mask_Num() + "xX", 2 + 4
Newline
PrintLn "@X0C(XXXX = Wildcard)"
InputStr "City code", STRING004, 10, 4, Mask_Num() + "xX", 2 + 4
Else
PrintLn "@X0C(XXX = Wildcard)"
InputStr "Area code", STRING003, 10, 3, Mask_Num() + "xX", 2 + 4
Newline
PrintLn "@X0C(XXX = Wildcard)"
InputStr "Prefix", STRING004, 10, 3, Mask_Num() + "xX", 2 + 4
Endif
STRING003 = Upper(Strip(STRING003, " "))
STRING004 = Upper(Strip(STRING004, " "))
If (InStr(STRING003 + STRING004, "X") == 0) Then
INTEGER004 = S2I(STRING003, 10) + S2I(STRING004, 10)
Else
INTEGER004 = 0
Endif
Newline
InputText "Name of dialing template to use", STRING007, 10, 10
Newline
STRING007 = Trim(Upper(STRING007), " ")
PrintLn "@X0FCreating record..."
FWrite 1, 0, 1
FWrite 1, BOOLEAN005, 1
FWrite 1, STRING003, 3
FWrite 1, STRING004, 4
FWrite 1, STRING007, 10
FWrite 1, Space(10), 10
PrintLn "@X0FUpdating index..."
INTEGER002 = INTEGER002 + 1
INTEGER001 = INTEGER002
FWrite 2, INTEGER004, 4
FWrite 2, INTEGER001, 4
BOOLEAN001 = 1
BOOLEAN002 = 0
Case "C"
If (BOOLEAN005) Then
PrintLn "@X0C(XXX = Wildcard)"
InputStr "New country code", STRING003, 12, 3, Mask_Num() + "xX", 2 + 4 + 256
Else
PrintLn "@X0C(XXX = Wildcard)"
InputStr "New areacode", STRING003, 12, 3, Mask_Num() + "xX", 2 + 4 + 256
Endif
Newline
STRING003 = Upper(Strip(STRING003, " "))
If (InStr(STRING003 + STRING004, "X") == 0) Then
INTEGER004 = S2I(STRING003, 10) + S2I(STRING004, 10)
Else
INTEGER004 = 0
Endif
FSeek 1, 41 + INTEGER001 * 29 - 27, 0
FWrite 1, STRING003, 3
PrintLn "@X0FUpdating index..."
FSeek 2, 41 + INTEGER001 * 8 - 8, 0
FWrite 2, INTEGER004, 4
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "P"
If (BOOLEAN005) Then
PrintLn "@X0C(XXXX = Wildcard)"
InputStr "New city code", STRING004, 12, 4, Mask_Num() + "xX", 2 + 4 + 256
Else
PrintLn "@X0C(XXX = Wildcard)"
STRING004 = Mid(STRING004, 1, 3)
InputStr "New prefix", STRING004, 12, 3, Mask_Num() + "xX", 2 + 4 + 256
Endif
Newline
STRING004 = Upper(Strip(STRING004, " "))
If (InStr(STRING003 + STRING004, "X") == 0) Then
INTEGER004 = S2I(STRING003, 10) + S2I(STRING004, 10)
Else
INTEGER004 = 0
Endif
FSeek 1, 41 + INTEGER001 * 29 - 24, 0
FWrite 1, STRING004, 4
PrintLn "@X0FUpdating index..."
FSeek 2, 41 + INTEGER001 * 8 - 8, 0
FWrite 2, INTEGER004, 4
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "I"
If (BOOLEAN005) Then
STRING001 = NoChar()
Else
STRING001 = YesChar()
Endif
InputYN "International (CountryCode & CityCode)", STRING001, 10
Newline
If (Upper(STRING001) == YesChar()) Then
BOOLEAN005 = 1
Else
BOOLEAN005 = 0
Endif
FSeek 1, 41 + INTEGER001 * 29 - 28, 0
FWrite 1, BOOLEAN005, 1
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "T"
InputText "Name of dialing template to use", STRING007, 10, 10
Newline
STRING007 = Trim(Upper(STRING007), " ")
FSeek 1, 41 + INTEGER001 * 29 - 20, 0
FWrite 1, STRING007, 10
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "L"
PrintLn
INTEGER005 = INTEGER001
INTEGER006 = INTEGER002
STRING005 = ""
Gosub LABEL021
STRING005 = ""
INTEGER001 = INTEGER005
INTEGER002 = INTEGER006
BOOLEAN002 = 0
BOOLEAN001 = 1
End Select
Goto LABEL015
:LABEL016
FClose 1
FClose 2
STRING005 = YesChar()
PrintLn
InputYN "Regenerate index file", STRING005, 12
Newline
If (Upper(STRING005) == YesChar()) Gosub LABEL025
Return
:LABEL017
STRING002 = PPEPath() + "EDSDIAL.PLT"
If (Exist(STRING002)) Goto LABEL018
PrintLn
PrintLn "@X0C" + STRING002 + " does not exist!"
Delay 9
Return
:LABEL018
INTEGER003 = FileInf(STRING002, 4)
INTEGER002 = (INTEGER003 - 41) / 28
Cls
PrintLn
PrintLn Space(22) + "@X0A(@X0FDialing Template Packing Procedure@X0A)"
PrintLn
PrintLn
PrintLn "@X0F File Size = " + String(INTEGER003) + " bytes Number of Records = " + String(INTEGER002)
If (INTEGER002 <= 1) Then
PrintLn
PrintLn "@X0CTHERE MUST BE AT LEAST ONE RECORD PRESENT IN THE DIALING TEMPLATE FILE!"
PrintLn
Delay 18
Return
Endif
KbdChkOff
Rename STRING002, PPEPath() + String(PcbNode()) + "tc.$$$"
FCreate 1, STRING002, 1, 2
If (Ferr(1)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 1
Return
Endif
FOpen 2, PPEPath() + String(PcbNode()) + "tc.$$$", 0, 3
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + String(PcbNode()) + "tc.$$$ @X0Cfile is currently inaccessible..."
FClose 2
FClose 1
PrintLn
PrintLn "@X0ADeleting & renaming temporary files..."
Delete STRING002
Rename PPEPath() + String(PcbNode()) + "tc.$$$", STRING002
Return
Endif
BOOLEAN002 = 0
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.15 Dialing Templates " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 41
PrintLn
PrintLn "@X0BPacking Dialing Templates..."
If (GrafMode() <> "N") Then
PrintLn
Print "@X0F0% @X07░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ @X0F100%"
BYTE001 = GetY()
Endif
INTEGER001 = 1
FSeek 2, 41, 0
While (INTEGER001 <= INTEGER002) Do
BOOLEAN002 = 0
BOOLEAN004 = 0
BOOLEAN006 = 0
For INTEGER004 = 0 To 5
TBYTE002(INTEGER004) = 0
Next
STRING007 = Space(10)
BYTE003 = 0
BYTE004 = 0
WORD001 = 0
FRead 2, BOOLEAN004, 1
If (BOOLEAN004) Then
BOOLEAN002 = 1
Else
BOOLEAN002 = 0
Endif
If (BOOLEAN002) Goto LABEL019
FWrite 1, BOOLEAN004, 1
FRead 2, BOOLEAN006, 1
FWrite 1, BOOLEAN006, 1
For INTEGER004 = 0 To 5
FRead 2, TBYTE002(INTEGER004), 1
FWrite 1, TBYTE002(INTEGER004), 1
Next
FRead 2, STRING007, 10
FWrite 1, STRING007, 10
FRead 2, BYTE003, 1
FRead 2, BYTE004, 1
FRead 2, WORD001, 2
FWrite 1, BYTE003, 1
FWrite 1, BYTE004, 1
FWrite 1, WORD001, 2
FSeek 2, 6, 1
FWrite 1, Space(6), 6
Goto LABEL020
:LABEL019
FSeek 2, 27, 1
:LABEL020
If (GrafMode() <> "N") Gosub LABEL031
Inc INTEGER001
EndWhile
Color 7
FClose 1
FClose 2
PrintLn
PrintLn
PrintLn "@X0BDeleting temporary files..."
Delete PPEPath() + String(PcbNode()) + "tc.$$$"
PrintLn "@X0EChecking files..."
INTEGER003 = FileInf(STRING002, 4)
INTEGER002 = (INTEGER003 - 41) / 28
If (INTEGER002 < 1) Then
PrintLn
PrintLn "@X0C0 byte file! Recreating with a dummy record..."
FCreate 1, STRING002, 1, 2
FWrite 1, " EDSBack v1.15 Dialing Templates " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 41
FWrite 1, 0, 1
FWrite 1, 0, 1
For INTEGER004 = 0 To 5
FWrite 1, 0, 1
Next
FWrite 1, "SAMPLE", 10
FWrite 1, 0, 1
FWrite 1, 0, 1
FWrite 1, 0, 1
FWrite 1, Space(6), 6
FClose 1
PrintLn "@X0ANew dialing templates file successfully created..."
Endif
PrintLn "@X0FDialing templates file successfully packed!"
Log "Dialing templates file successfully packed!", 0
KbdChkOn
Return
:LABEL021
BOOLEAN002 = 0
BOOLEAN001 = 1
INTEGER001 = 1
STRING002 = PPEPath() + "EDSDIAL.PLT"
INTEGER003 = FileInf(STRING002, 4)
If (Exist(STRING002)) Goto LABEL022
PrintLn
PrintLn "@X0CCreating " + STRING002
FCreate 3, STRING002, 2, 2
If (Ferr(3)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " X0Cfile is currently inaccessible..."
FClose 3
Return
Endif
FSeek 3, 0, 0
FWrite 3, " EDSBack v1.15 Dialing Templates " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 41
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, "SAMPLE", 10
FWrite 3, 0, 1
FWrite 3, 0, 1
FWrite 3, 0, 2
FWrite 3, Space(6), 6
INTEGER003 = 69
Goto LABEL023
:LABEL022
FOpen 3, STRING002, 2, 2
If (Ferr(3)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " X0Cfile is currently inaccessible..."
FClose 3
Return
Endif
:LABEL023
If (BOOLEAN002) Goto LABEL024
If (BOOLEAN001) Then
FSeek 3, 41 + INTEGER001 * 28 - 28, 0
FRead 3, BOOLEAN004, 1
FRead 3, BOOLEAN006, 1
For INTEGER004 = 0 To 5
FRead 3, TBYTE002(INTEGER004), 1
Next
FRead 3, STRING007, 10
FRead 3, BYTE003, 1
FRead 3, BYTE004, 1
FRead 3, WORD001, 2
BOOLEAN001 = 0
Endif
PrintLn
INTEGER002 = (INTEGER003 - 41) / 28
PrintLn Space(26) + "@X0A(@X0FDialing Templates Listing@X0A)"
PrintLn
PrintLn " @X0BRecord #@X0E" + String(INTEGER001) + "@X0B of @X0E" + String(INTEGER002)
Print " @X0F(@X09D@X0F)eleted : @X0C"
If (BOOLEAN004) Then
PrintLn "Yes"
Else
PrintLn "No "
Endif
PrintLn
PrintLn " @X0F(@X09N@X0F)ame of template : @X0E" + STRING007
Print " @X0F(@X09L@X0F)ogoff user after callback : @X0E"
If (BOOLEAN006) Then
PrintLn "Yes"
Else
PrintLn "No "
Endif
PrintLn " @X0F(@X09S@X0F)ecurity level to upgrade to : @X0E" + String(BYTE003)
PrintLn " @X0F(@X09E@X0F)xpired Sec. Level to upgrade to: @X0E" + String(BYTE004)
PrintLn " @X0F(@X09#@X0F) of days till expiration : @X0E" + String(WORD001)
PrintLn " @X0F(@X09T@X0F)emplate to use when dialing : @X0E(See Below)"
STRING001 = ""
For INTEGER004 = 0 To 5
If (TBYTE002(INTEGER004) == 1) Then
STRING001 = STRING001 + "NUMPREFIX + "
Continue
Endif
If (TBYTE002(INTEGER004) == 2) Then
STRING001 = STRING001 + "LDACCESS + "
Continue
Endif
If (TBYTE002(INTEGER004) == 3) Then
STRING001 = STRING001 + "AREACODE/COUNTRYCODE + "
Continue
Endif
If (TBYTE002(INTEGER004) == 4) Then
STRING001 = STRING001 + "PREFIX/CITYCODE + "
Continue
Endif
If (TBYTE002(INTEGER004) == 5) Then
STRING001 = STRING001 + "NUMBER + "
Continue
Endif
If (TBYTE002(INTEGER004) == 6) Then
STRING001 = STRING001 + "NUMSUFFIX + "
Endif
Next
If (STRING001 == "") STRING001 = "TEMPLATE HAS NOT BEEN DEFINED"
STRING001 = Trim(Trim(STRING001, " "), "+")
PrintLn " " + STRING001
PrintLn
PrintLn " @X0F(@X09+@X0F) @X0BAdvance 1 record @X0F(@X09-@X0F) @X0BRetard 1 record"
PrintLn " @X0F(@X09J@X0F)@X0Bump to record @X0F(@X09A@X0F)@X0Bdd a record"
PrintLn " @X0F(@X09Q@X0F)@X0Buit"
PrintLn
InputStr "(H)elp, Enter command", STRING005, 10, 1, "Dd+-JjAaQqRrLlTtNn#EeSsHh", 2 + 4
Newline
STRING005 = Upper(STRING005)
Select Case (STRING005)
Case "Q", "R"
FClose 3
BOOLEAN001 = 0
BOOLEAN002 = 1
Case "H"
Print "@PON@"
DispFile PPEPath() + "EDSAD", 1 + 4
Print "@POFF@"
Cls
BOOLEAN001 = 0
BOOLEAN002 = 0
Case "+"
If (INTEGER001 >= INTEGER002) Then
INTEGER001 = 1
Else
Inc INTEGER001
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "-"
If (INTEGER001 <= 1) Then
INTEGER001 = INTEGER002
Else
Dec INTEGER001
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "J"
INTEGER004 = INTEGER002
InputInt "Enter record # to jump to", INTEGER004, 10
If (INTEGER004 > INTEGER002) Then
INTEGER001 = INTEGER002
ElseIf (INTEGER004 < 1) Then
INTEGER001 = 1
Else
INTEGER001 = INTEGER004
Endif
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "D"
FSeek 3, 41 + INTEGER001 * 28 - 28, 0
If (BOOLEAN004) Then
STRING001 = YesChar()
Else
STRING001 = NoChar()
Endif
InputYN "Delete record", STRING001, 10
Newline
If (Upper(STRING001) == YesChar()) Then
BOOLEAN004 = 1
Else
BOOLEAN004 = 0
Endif
FWrite 3, BOOLEAN004, 1
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "#"
InputInt "Number of days from callback till user expires (0=NO EXPIRATION DATE)", WORD001, 10
Newline
FSeek 3, 41 + INTEGER001 * 28 - 8, 0
FWrite 3, WORD001, 2
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "S"
InputInt "User's new security level after callback with this template", BYTE003, 10
Newline
FSeek 3, 41 + INTEGER001 * 28 - 10, 0
FWrite 3, BYTE003, 1
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "E"
InputInt "User's new expired security level after callback with this template", BYTE004, 10
Newline
FSeek 3, 41 + INTEGER001 * 28 - 9, 0
FWrite 3, BYTE004, 1
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "A"
FSeek 3, 0, 2
InputText "Template name", STRING007, 15, 10
STRING007 = Upper(Trim(STRING007, " "))
Newline
If (BOOLEAN006) Then
STRING001 = YesChar()
Else
STRING001 = NoChar()
Endif
InputYN "Logoff user after dialing with this template", STRING001, 10
Newline
If (Upper(STRING001) == YesChar()) Then
BOOLEAN006 = 1
Else
BOOLEAN006 = 0
Endif
InputInt "Number of days from callback till user expires (0=NO EXPIRATION DATE)", WORD001, 10
Newline
InputInt "User's new security level after callback with this template", BYTE003, 10
Newline
InputInt "User's new expired security level after callback with this template", BYTE004, 10
Newline
Gosub LABEL027
PrintLn "@X0FCreating record..."
FWrite 3, 0, 1
FWrite 3, BOOLEAN006, 1
For INTEGER004 = 0 To 5
FWrite 3, TBYTE002(INTEGER004), 1
Next
FWrite 3, STRING007, 10
FWrite 3, BYTE003, 1
FWrite 3, BYTE004, 1
FWrite 3, WORD001, 2
FWrite 3, Space(6), 6
INTEGER002 = INTEGER002 + 1
INTEGER003 = INTEGER003 + 28
INTEGER001 = INTEGER002
BOOLEAN001 = 1
BOOLEAN002 = 0
Case "L"
If (BOOLEAN006) Then
STRING001 = YesChar()
Else
STRING001 = NoChar()
Endif
InputYN "Logoff user after dialing with this template", STRING001, 10
Newline
If (Upper(STRING001) == YesChar()) Then
BOOLEAN006 = 1
Else
BOOLEAN006 = 0
Endif
FSeek 3, 41 + INTEGER001 * 28 - 27, 0
FWrite 3, BOOLEAN006, 1
BOOLEAN002 = 0
BOOLEAN001 = 1
Case "T"
Gosub LABEL027
FSeek 3, 41 + INTEGER001 * 28 - 26, 0
For INTEGER004 = 0 To 5
FWrite 3, TBYTE002(INTEGER004), 1
Next
Case "N"
InputText "Name of template", STRING007, 10, 10
FSeek 3, 41 + INTEGER001 * 28 - 20, 0
FWrite 3, STRING007, 10
End Select
Goto LABEL023
:LABEL024
FClose 3
Return
:LABEL025
Gosub LABEL028
FSeek 2, 359, 0
FRead 2, STRING002, 75
FClose 2
If (Exist(STRING002)) Goto LABEL026
PrintLn
PrintLn "@X0C" + STRING002 + " does not exist!"
Delay 9
Return
:LABEL026
INTEGER003 = FileInf(STRING002, 4)
INTEGER002 = (INTEGER003 - 41) / 29
PrintLn
PrintLn "@X0F File Size = " + String(INTEGER003) + " bytes Number of Records = " + String(INTEGER002)
KbdChkOff
FOpen 4, STRING002, 0, 0
If (Ferr(4)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0F" + STRING002 + " @X0Cfile is currently inaccessible..."
FClose 4
Return
Endif
FCreate 5, PPEPath() + "EDSALLOW.IDX", 1, 2
If (Ferr(5)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the @X0FEDSALLOW.IDX @X0Cfile is currently inaccessible..."
FClose 5
FClose 4
Return
Endif
BOOLEAN002 = 0
FSeek 4, 41, 0
FWrite 5, " EDSBack v1.15 Allowed # Index File " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 41
PrintLn
PrintLn "@X0BGenerating Allowed # Calling Index... "
If (GrafMode() <> "N") Then
PrintLn
Print "@X0F0% @X07░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ @X0F100%"
BYTE001 = GetY()
Endif
INTEGER001 = 1
While (INTEGER001 <= INTEGER002) Do
BOOLEAN002 = 0
BOOLEAN004 = 0
BOOLEAN005 = 0
STRING003 = Space(3)
STRING004 = Space(4)
STRING007 = Space(10)
FRead 4, BOOLEAN004, 1
FRead 4, BOOLEAN005, 1
FRead 4, STRING003, 3
FRead 4, STRING004, 4
FSeek 4, 20, 1
If (InStr(Upper(STRING003 + STRING004), "X")) Then
INTEGER004 = 0
Else
INTEGER004 = S2I(STRING003, 10) + S2I(STRING004, 10)
Endif
FWrite 5, INTEGER004, 4
FWrite 5, INTEGER001, 4
If (GrafMode() <> "N") Gosub LABEL031
Inc INTEGER001
EndWhile
Color 7
FClose 4
FClose 5
PrintLn
PrintLn "@X0FAllowed # Calling Index successfully created!"
Log "Allowed # Calling Index created!", 0
KbdChkOn
Return
:LABEL027
PrintLn
STRING001 = "R"
InputStr "@X0F(@X0ED@X0F)@X0Besign your own template or use a @X0F(@X0ER@X0F)@X0Beady-made", STRING001, 11, 1, "DdRr", 2 + 4 + 256
STRING001 = Upper(STRING001)
If (STRING001 == "R") Then
PrintLn
PrintLn
PrintLn "@X07 These ready-made templates are provided for a Quick-Setup of EDSBack."
PrintLn "If you have been using EDSBack for awhile and would like to create new "
PrintLn "templates, or simply modify your templates, then please read the EDSBack"
PrintLn "documentation that deals with (D)esigning your own templates."
PrintLn
PrintLn
PrintLn
PrintLn "@X0FThe following is a list of ready-made templates:"
PrintLn
PrintLn "@X0E(@X0AL@X0E)@X0Focal @X08--@X0C Template for dialing local numbers"
PrintLn "@X0FLong @X0E(@X0AD@X0E)@X0Fistance @X08--@X0C Template for dialing long distance numbers"
PrintLn "@X0E(@X0AT@X0E)@X0Foll @X08--@X0C Template for dialing toll numbers"
PrintLn
PrintLn
STRING001 = ""
InputStr "Template to use", STRING001, 10, 1, "LlDdTt", 2 + 4 + 256
STRING001 = Trim(Upper(STRING001), " ")
If (STRING001 == "") Return
PrintLn
Select Case (STRING001)
Case "L"
PrintLn "@X0FTemplate is using LOCAL ready-made parameters..."
TBYTE002(0) = 1
TBYTE002(1) = 4
TBYTE002(2) = 5
TBYTE002(3) = 6
TBYTE002(4) = 0
TBYTE002(5) = 0
Case "D"
PrintLn "@X0FTemplate is using LONGDIST ready-made parameters..."
TBYTE002(0) = 1
TBYTE002(1) = 2
TBYTE002(2) = 3
TBYTE002(3) = 4
TBYTE002(4) = 5
TBYTE002(5) = 6
Case "T"
PrintLn "@X0FTemplate is using TOLL ready-made parameters..."
TBYTE002(0) = 1
TBYTE002(1) = 2
TBYTE002(2) = 4
TBYTE002(3) = 5
TBYTE002(4) = 6
TBYTE002(5) = 0
End Select
Else
Cls
PrintLn
PrintLn "@X07You will now be asked to tell EDSBack how to dial a number when using this"
PrintLn "template. EDSBack will dial up to 6 different fields. Each field may contain"
PrintLn "a number for EDSBack to dial, or a setting of NONE telling EDSBack to dial "
PrintLn "to dial nothing for that field. For example, for a local number, you would "
PrintLn "tell EDSBack to dial the PREFIX/CITY CODE for field #1, the NUMBER for field"
PrintLn "#2, and NONE for fields 3 - 6."
PrintLn
PrintLn
PrintLn "@X0BThe next 6 fields contain the parameters for the dialing template:"
PrintLn
For INTEGER004 = 0 To 5
PrintLn "@X0FField #" + String(INTEGER004 + 1) + " of 6"
PrintLn
PrintLn "@X0A(@X0C0@X0A)@X0B None"
PrintLn "@X0A(@X0C1@X0A)@X0B NUMPREFIX (as defined in config settings)"
PrintLn "@X0A(@X0C2@X0A)@X0B LONG DISTANCE ACCESS CODE"
PrintLn "@X0A(@X0C3@X0A)@X0B AREACODE/COUNTRYCODE"
PrintLn "@X0A(@X0C4@X0A)@X0B PREFIX/CITYCODE"
PrintLn "@X0A(@X0C5@X0A)@X0B NUMBER"
PrintLn "@X0A(@X0C6@X0A)@X0B NUMSUFFIX (as defined in config settings)"
PrintLn
STRING001 = I2S(TBYTE002(INTEGER004), 10)
InputStr "Number to dial for field #" + String(INTEGER004 + 1), STRING001, 14, 1, "0123456", 2 + 4 + 256
TBYTE002(INTEGER004) = S2I(STRING001, 10)
PrintLn
Next
Endif
Return
:LABEL028
STRING001 = PPEPath() + "EDSBACK.XXX"
If (Exist(STRING001)) Then
FOpen 2, STRING001, 0, 0
Else
PrintLn
PrintLn "@X0FPath & filename to EDSBack config file @X0E(Enter Below)"
InputStr "", STRING001, 12, 75, Mask_Path() + Mask_File(), 2 + 4
If (Exist(STRING001)) Goto LABEL029
PrintLn
PrintLn "@X0C" + STRING001 + " DOES NOT EXIST! @X0AReturning to EDSUtil Main..."
Goto LABEL034
Goto LABEL030
:LABEL029
FOpen 2, STRING001, 0, 0
Endif
:LABEL030
If (Ferr(2)) Then
BOOLEAN003 = 1
Else
BOOLEAN003 = 0
Endif
If (BOOLEAN003) Then
PrintLn
PrintLn "@X0CSorry, the " + STRING001 + " @X0Cfile is currently inaccessible..."
FClose 2
Return
Endif
Return
:LABEL031
If (INTEGER001 == 1) BYTE007 = 0
If ((INTEGER001 <> 0) && (INTEGER002 <> 0)) Then
REAL002 = ToReal(INTEGER001) / ToReal(INTEGER002)
REAL003 = FmtReal(ToReal(35) * REAL002, 1, 0)
BYTE006 = ToByte(REAL003) - BYTE007
If (BYTE006 <> BYTE007) Then
Color 73
AnsiPos 4 + BYTE007, BYTE001
For BYTE007 = 1 To BYTE006
Print "▓"
Next
BYTE007 = ToByte(REAL003)
REAL002 = FmtReal(REAL002 * 100, 1, 0)
BYTE006 = (43 - Len(String(REAL002) + "%")) / 2
Color 11
REAL003 = ToReal(BYTE001) - 1
AnsiPos BYTE006, ToByte(REAL003)
Print String(REAL002) + "%"
AnsiPos 45, BYTE001
Endif
Endif
Return
:LABEL032
If ((INTEGER001 <> 0) && (INTEGER002 <> 0)) Then
If (INTEGER001 == 1) Then
BYTE005 = 0
Goto LABEL033
Endif
BYTE005 = REAL001
:LABEL033
REAL001 = ToReal(INTEGER001) / ToReal(INTEGER002)
REAL001 = FmtReal(REAL001 * 100, 1, 0)
If (BYTE005 <> REAL001) Then
Backup Len(String(BYTE005) + "%")
Print String(REAL001) + "%"
Endif
Endif
Return
:LABEL034
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 8 Cls
; 5 Color
; 294 Goto
; 291 Let
; 17 Print
; 239 PrintLn
; 172 If
; 2 DispFile
; 10 FCreate
; 11 FOpen
; 2 FAppend
; 54 FClose
; 1 FGet
; 9 FPutLn
; 4 Delete
; 4 Log
; 17 InputStr
; 6 InputYN
; 8 InputInt
; 23 Gosub
; 38 Return
; 8 Delay
; 7 Inc
; 2 Dec
; 24 Newline
; 1 GetToken
; 5 InputText
; 3 KbdChkOn
; 3 KbdChkOff
; 3 AnsiPos
; 2 Backup
; 4 Rename
; 40 FSeek
; 36 FRead
; 94 FWrite
;
;
; ■ Functions used :
;
; 19 *
; 11 /
; 251 +
; 27 -
; 60 ==
; 14 <>
; 13 <
; 17 <=
; 2 >
; 20 >=
; 162 !
; 20 &&
; 11 ||
; 3 Len(
; 23 Upper()
; 3 Mid()
; 1 Left()
; 25 Space()
; 21 Ferr()
; 36 Chr()
; 4 InStr()
; 9 Trim()
; 1 Date()
; 1 Time()
; 5 NoChar()
; 12 YesChar()
; 16 Strip()
; 33 String()
; 8 Mask_Num()
; 4 Mask_File()
; 4 Mask_Path()
; 18 PPEPath()
; 10 PcbNode()
; 13 Exist()
; 1 I2S()
; 9 S2I()
; 3 GetY()
; 6 GrafMode()
; 8 FileInf()
; 1 TokCount()
; 3 ToByte()
; 6 ToReal()
; 3 FmtReal()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 9 For/Next
; 4 While/EndWhile
; 100 If/Then or If/Then/Else
; 4 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------