home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DP Tool Club 15
/
CD_ASCQ_15_070894.iso
/
vrac
/
caplnk94.zip
/
CAPLINK.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-05-28
|
13KB
|
591 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
Integer INTEGER014
Integer INTEGER015
Integer INTEGER016
Integer INTEGER017
Integer INTEGER018
Integer INTEGER019
Integer INTEGER020
Integer INTEGER021
Integer INTEGER022
Integer INTEGER023
Integer INTEGER024
Integer INTEGER025
Integer INTEGER026
Integer INTEGER027
Integer INTEGER028
Integer INTEGER029
Integer INTEGER030
Integer INTEGER031
Integer INTEGER032
Integer INTEGER033
Integer INTEGER034
Integer INTEGER035
Integer INTEGER036
Integer INTEGER037
Integer INTEGER038
Integer INTEGER039
Integer INTEGER040
Integer INTEGER041
Integer INTEGER042
Integer INTEGER043
Integer INTEGER044
Integer INTEGER045
Integer INTEGER046
Integer INTEGER047
Integer INTEGER048
Integer INTEGER049
Integer INTEGER050
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String TSTRING031(16)
String TSTRING032(6)
String TSTRING033(10)
;------------------------------------------------------------------------------
FOpen 1, PPEPath() + "CAPLINK.CNF", 0, 0
If (Ferr(1)) Then
PrintLn "@CLS@Error occured trying to open configuration file."
Log "Error opening configuration file.", 0
End
Endif
FGet 1, STRING002
FGet 1, INTEGER002
FGet 1, INTEGER004
FGet 1, STRING001
FGet 1, STRING004
FClose 1
STRING003 = ReadLine(PCBDat(), 179)
TSTRING031(1) = "PCBoard "
TSTRING031(2) = "Wildcat "
TSTRING031(3) = "GAP "
TSTRING031(4) = "Spitfire"
TSTRING031(5) = "Auntie "
TSTRING031(6) = "TriBBS "
TSTRING031(7) = "MajorBBS"
TSTRING031(8) = "UltraBBS"
TSTRING031(9) = "RBBS "
TSTRING031(10) = "QBBS "
TSTRING031(11) = "PowerBBS"
TSTRING031(12) = "Searchlt"
TSTRING031(13) = "WWIV "
TSTRING031(14) = "Renegade"
TSTRING031(15) = "Other"
TSTRING032(1) = "v.32bis "
TSTRING032(2) = "HST "
TSTRING032(3) = "D/S 14.4"
TSTRING032(4) = "D/S 16.8"
TSTRING032(5) = "v.32terbo"
TSTRING032(6) = "V.FC"
TSTRING032(7) = "Zylex "
TSTRING032(8) = "Other "
TSTRING033(1) = "Rosemail"
TSTRING033(2) = "Qnet"
TSTRING033(3) = "Rnet"
TSTRING033(4) = "Cam-Mail"
TSTRING033(5) = "Tnet"
TSTRING033(6) = "Gapnet"
TSTRING033(7) = "Trinet"
TSTRING033(8) = "Jnet"
TSTRING033(9) = "QWiKerNet"
TSTRING033(10) = "FIDO"
INTEGER011 = 15
INTEGER012 = 1
INTEGER013 = 20
INTEGER014 = 3
INTEGER015 = 20
INTEGER016 = 5
INTEGER017 = 20
INTEGER018 = 7
INTEGER019 = 66
INTEGER020 = 3
INTEGER021 = 66
INTEGER022 = 5
INTEGER023 = 66
INTEGER024 = 7
INTEGER025 = 45
INTEGER026 = 10
INTEGER027 = 45
INTEGER028 = 13
INTEGER029 = 62
INTEGER030 = 15
INTEGER031 = 65
INTEGER032 = 17
INTEGER033 = 65
INTEGER034 = 19
INTEGER035 = 20
INTEGER036 = 9
INTEGER037 = 20
INTEGER038 = 11
INTEGER039 = 24
INTEGER040 = 13
INTEGER041 = 19
INTEGER042 = 15
INTEGER043 = 29
INTEGER044 = 17
INTEGER045 = 20
INTEGER046 = 19
INTEGER047 = 21
INTEGER048 = 21
INTEGER049 = 61
INTEGER050 = 21
GetUser
INTEGER010 = U_PageLen
If (AnsiOn()) Goto LABEL001
PrintLn "@CLS@This application program requires that you have ANSI"
PrintLn "capabilities. Please change to ANSI mode and try again."
U_PageLen = INTEGER010
End
:LABEL001
INTEGER005 = Month(Date())
INTEGER006 = Mid(Year(Date()), 3, 2)
If ((INTEGER005 >= 1) && (INTEGER005 <= 9)) Then
STRING005 = "0" + String(INTEGER005)
Else
STRING005 = String(INTEGER005)
Endif
Log "CAPLink Mail Network Application Started.", 0
PrintLn "@CLS@@X0CStandby while we get the information needed..."
SaveScrn
Shell 0, INTEGER009, STRING004 + "PKUNZIP.EXE", STRING001 + "CAP_" + String(INTEGER006) + STRING005 + " *.PCB " + STRING003 + " -O"
RestScrn
If (INTEGER009 <> 0) Then
PrintLn "@CLS@"
PrintLn "@X0AError occured extracting the information from the packet."
PrintLn "Please inform the System Operator so it can be corrected."
Log "Error during extraction. Error: " + String(INTEGER009), 0
U_PageLen = INTEGER010
End
Endif
If (TokCount() <> 1) Then
Goto LABEL005
Else
STRING029 = GetToken()
Endif
Select Case (Upper(STRING029))
Case "APPLY"
Goto LABEL002
Case "RULES"
Goto LABEL006
Case "NODES"
Goto LABEL007
Case "PACKET"
Goto LABEL003
Case Else
Goto LABEL005
End Select
:LABEL002
PrintLn "@CLS@"
STRING030 = "Y"
InputYN "Are you applying for CAPLink now", STRING030, 14
Select Case (STRING030)
Case "N", "n"
Log "Application Aborted.", 0
STRING016 = U_Name()
PrintLn "@CLS@@X0B" + STRING016 + " @X0Eshall we begin..."
PrintLn " "
DispFile STRING003 + "RULES.CAP", 1
STRING030 = "Y"
PrintLn " "
PrintLn " "
InputYN "Do you agree with the above set of rules for CAPLink", STRING030, 14
Case "N", "n"
Log "User did not agree with rules for CAPLink. Aborted", 0
Case Else
PrintLn " "
FCreate 1, PPEPath() + "CAPAPP" + String(PcbNode()), 1, 0
FPutLn 1, "CAPLink Administration: "
FPutLn 1, " "
FPutLn 1, STRING016 + " is applying for CAPLink. Please review the information."
PrintLn "@CLS@"
DispFile PPEPath() + "CAPAPPLY.SCN", 1
AnsiPos INTEGER011, INTEGER012
InputStr "", STRING006, 14, 17, Mask_Ascii(), 2 + 4
If ((STRING006 == "") || (Len(STRING006) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER013, INTEGER014
InputStr "", STRING007, 14, 3, Mask_Num(), 2 + 4
If (STRING007 == "") Then
Goto LABEL004
Endif
AnsiPos INTEGER015, INTEGER016
InputStr "", STRING008, 14, 3, Mask_Num(), 2 + 4
If (STRING008 == "") Then
Goto LABEL004
Endif
AnsiPos INTEGER017, INTEGER018
InputStr "", STRING009, 14, 4, Mask_Num(), 2 + 4
If (((Len(STRING007) == 0) || (Len(STRING008) == 0)) || (Len(STRING009) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER019, INTEGER020
InputStr "", STRING011, 14, 3, Mask_Num(), 2 + 4
If (STRING011 == "") Then
Goto LABEL004
Endif
AnsiPos INTEGER021, INTEGER022
InputStr "", STRING012, 14, 3, Mask_Num(), 2 + 4
If (STRING012 == "") Then
Goto LABEL004
Endif
AnsiPos INTEGER023, INTEGER024
InputStr "", STRING013, 14, 4, Mask_Num(), 2 + 4
If (((Len(STRING011) == 0) || (Len(STRING012) == 0)) || (Len(STRING013) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER025, INTEGER026
InputStr "", STRING017, 14, 25, Mask_Ascii(), 2 + 4
STRING017 = Mixed(STRING017)
If ((STRING017 == "") || (Len(STRING017) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER027, INTEGER028
InputStr "", STRING018, 14, 13, Mask_Ascii(), 2 + 4
STRING018 = Mixed(STRING018)
If ((STRING018 == "") || (Len(STRING018) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER029, INTEGER030
InputStr "", STRING019, 14, 3, Mask_Ascii(), 8 + 2 + 4
If ((STRING019 == "") || (Len(STRING019) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER031, INTEGER032
InputStr "", STRING021, 14, 10, Mask_Ascii(), 2 + 4
If ((STRING021 == "") || (Len(STRING021) == 0)) Then
Goto LABEL004
Endif
AnsiPos INTEGER033, INTEGER034
InputStr "", STRING020, 14, 10, Mask_Ascii(), 2 + 4
If ((STRING020 == "") || (Len(STRING020) == 0)) Then
Goto LABEL004
Endif
AnsiPos 80, 24
SaveScrn
DispFile PPEPath() + "SYSTEM.DSP", 4
PrintLn " "
Wait
RestScrn
INTEGER003 = 1
AnsiPos INTEGER035, INTEGER036
InputStr "", INTEGER003, 14, 2, Mask_Num(), 2 + 4
If ((INTEGER003 <= 0) || (INTEGER003 > 15)) Then
Goto LABEL004
Else
STRING010 = TSTRING031(INTEGER003)
Endif
AnsiPos 80, 24
SaveScrn
DispFile PPEPath() + "MODEM.DSP", 4
PrintLn " "
Wait
RestScrn
AnsiPos INTEGER037, INTEGER038
INTEGER008 = 8
InputStr "", INTEGER008, 14, 2, Mask_Num(), 2 + 4
If ((INTEGER008 <= 0) || (INTEGER008 > 8)) Then
Goto LABEL004
Else
STRING015 = TSTRING032(INTEGER008)
Endif
INTEGER007 = 1
AnsiPos 80, 24
SaveScrn
DispFile PPEPath() + "TOSSER.DSP", 4
PrintLn " "
Wait
RestScrn
AnsiPos INTEGER039, INTEGER040
InputStr "", INTEGER007, 14, 2, Mask_Num(), 2 + 4
If ((INTEGER007 <= 0) || (INTEGER007 > 10)) Then
Goto LABEL004
Else
STRING022 = TSTRING033(INTEGER007)
Endif
Select Case (INTEGER007)
Case 1
AnsiPos INTEGER041, INTEGER042
InputStr "", STRING023, 14, 20, Mask_Ascii(), 2 + 4
AnsiPos INTEGER043, INTEGER044
InputStr "", STRING024, 14, 10, Mask_Num(), 2 + 4
Case 10
AnsiPos INTEGER045, INTEGER046
InputStr "", STRING027, 14, 10, Mask_Ascii(), 2 + 4
End Select
AnsiPos 80, 24
SaveScrn
PrintLn "@CLS@"
PrintLn "@X0FAt this time we need to know what system you would like to call to"
PrintLn "get your mail from. If you do not know the system that you would like"
PrintLn "get the mail from you will now have a change to view the node list and"
PrintLn "pick the Hub/Regional/Super Regional."
PrintLn " "
Wait
PrintLn "@CLS@@PON@"
DispFile STRING003 + "NODELIST.CAP", 4
PrintLn " "
Wait
RestScrn
AnsiPos INTEGER047, INTEGER048
InputStr "", STRING014, 14, 17, Mask_Ascii(), 2 + 4
AnsiPos INTEGER049, INTEGER050
InputStr "", STRING026, 14, 12, Mask_Pwd(), 2 + 4
If (STRING026 == "") Then
Goto LABEL004
Endif
PrintLn "@CLS@"
InputStr "Enter your level you wish. {S)uper, R)egional, H)ub, N)ode}", STRING025, 14, 1, Mask_Alpha(), 2 + 4 + 8 + 64
Select Case (STRING025)
Case "S"
STRING025 = "Super Regional"
Case "R"
STRING025 = "Regional"
Case "H"
STRING025 = "Hub"
Case Else
STRING025 = "Node"
End Select
SaveScrn
PrintLn " "
DispFile PPEPath() + "ACCOUNT.INF", 4
PrintLn " "
PrintLn " "
InputStr "Enter the password for CAPLINK ADMIN", STRING028, 14, 12, Mask_Pwd(), 2 + 4 + 64
If (STRING028 == "") Then
Goto LABEL004
Endif
FPutLn 1, " "
FPutLn 1, "SYSOP : " + STRING016
FPutLn 1, " "
FPutLn 1, "BBS Name : " + STRING006
FPutLn 1, "BBS Phone Number : (" + STRING007 + ") " + STRING008 + "-" + STRING009
FPutLn 1, "BBS Software : " + STRING010
FPutLn 1, " "
FPutLn 1, "Modem Type : " + STRING015
FPutLn 1, " "
FPutLn 1, "Netmail Software : " + STRING022
Select Case (INTEGER007)
Case 1
FPutLn 1, "Rosemail Serial No. : " + STRING024
FPutLn 1, "Rosemail ID : " + STRING023
Case 10
FPutLn 1, "FIDO Address : " + STRING027
End Select
FPutLn 1, " "
FPutLn 1, "Voice Phone Number : (" + STRING011 + ") " + STRING012 + "-" + STRING013
FPutLn 1, "Address : " + STRING017
FPutLn 1, "City, State : " + STRING018 + ", " + STRING019
FPutLn 1, "Zip Code : " + STRING021
FPutLn 1, "Country : " + STRING020
FPutLn 1, " "
FPutLn 1, "System to Call : " + STRING014
FPutLn 1, "Password for System : " + STRING026
FPutLn 1, "Level Requested : " + STRING025
FPutLn 1, " "
FPutLn 1, "Password for A/C : " + STRING028
FClose 1
PrintLn "@CLS@@X0BInformation recorded. Sending to Administrator, please wait..."
Log "Sending Application to Conference " + String(INTEGER004) + ".", 0
Message INTEGER004, "CAPLINK ADMIN", "", "CAPLink Application", "N", 0, 0, 1, PPEPath() + "CAPAPP" + String(PcbNode())
Log "Message sent. CAPLink Application Completed.", 0
:LABEL003
PrintLn "@CLS@"
PrintLn "@X0FWe are now going to send you the latest CAPLINK Information Packet...."
PrintLn " "
Join 0
Download "CAP_" + String(INTEGER006) + STRING005 + ".ZIP"
End Select
:LABEL004
Shell 1, INTEGER009, "DEL ", STRING003 + "*.PCB"
RestScrn
U_PageLen = INTEGER010
Cls
End
:LABEL005
DispFile PPEPath() + "CAPLINK.MNU", 1 + 4
PrintLn " "
STRING030 = ""
InputStr "Enter your selection (Enter=Quit)", STRING030, 14, 1, Mask_Num(), 2 + 4
PrintLn " "
Select Case (STRING030)
Case ""
Goto LABEL004
Case "1"
Goto LABEL002
Case "2"
Goto LABEL006
Case "3"
Goto LABEL007
Case Else
Goto LABEL004
End Select
:LABEL006
PrintLn "@CLS@"
DispFile STRING003 + "OVERVIEW.PCB", 1
DispFile STRING003 + "RULES.PCB", 1
PrintLn " "
PrintLn " "
Wait
Goto LABEL005
:LABEL007
PrintLn "@CLS@"
DispFile STRING003 + "NODELIST.PCB", 1
PrintLn " "
PrintLn " "
Wait
Goto LABEL005
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 4 End
; 1 Cls
; 7 Wait
; 89 Goto
; 99 Let
; 41 PrintLn
; 39 If
; 11 DispFile
; 1 FCreate
; 1 FOpen
; 2 FClose
; 5 FGet
; 28 FPutLn
; 1 GetUser
; 7 Log
; 23 InputStr
; 2 InputYN
; 2 Shell
; 1 Join
; 24 AnsiPos
; 1 Message
; 6 SaveScrn
; 6 RestScrn
; 1 Download
;
;
; ■ Functions used :
;
; 90 +
; 43 ==
; 2 <>
; 4 <=
; 3 >
; 1 >=
; 39 !
; 1 &&
; 15 ||
; 12 Len(
; 4 Upper()
; 1 Mid()
; 1 Ferr()
; 2 Date()
; 1 U_Name()
; 1 Year()
; 1 Month()
; 8 String()
; 2 Mask_Pwd()
; 1 Mask_Alpha()
; 11 Mask_Num()
; 9 Mask_Ascii()
; 1 PCBDat()
; 9 PPEPath()
; 2 PcbNode()
; 1 ReadLine()
; 1 GetToken()
; 1 AnsiOn()
; 1 TokCount()
; 2 Mixed()
;
;------------------------------------------------------------------------------
;
; Analysis flags : Sd
;
; 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
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 21 If/Then or If/Then/Else
; 6 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------