home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.wwiv.com
/
ftp.wwiv.com.zip
/
ftp.wwiv.com
/
pub
/
BBS
/
TUC_PGR.ZIP
/
PAGER.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1995-02-18
|
6KB
|
384 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 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
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 TSTRING017(10)
Declare Procedure PROC001()
;------------------------------------------------------------------------------
Goto LABEL001
End
;------------------------------------------------------------------------------
Procedure PROC001()
Log "@X0EPLEASE REGISTER TuC-PGE.PPE", 1
EndProc
:LABEL001
STRING015 = 16
STRING008 = Chr(13)
STRING014 = 5
STRING011 = PPEPath() + "PAGER.cfg"
Cls
AnsiPos 20, 6
Delay 2
AnsiPos 20, 6
Delay 2
AnsiPos 20, 6
Delay 2
AnsiPos 20, 6
Delay 2
AnsiPos 20, 6
Delay 3
STRING002 = Time()
STRING006 = ReadLine(PCBDat(), 189)
STRING007 = ReadLine(PCBDat(), 190)
If ((STRING006 <= STRING002) && (STRING002 <= STRING007)) Then
:LABEL002
PROC001()
Cls
DispStr "%" + PPEPath() + "CHAT1.PCB"
PrintLn " "
PrintLn " "
InputStr "Make Yer Choice ", STRING016, 14, 2, "1234567890", 256 + 8 + 2
If (STRING016 == "1") Goto LABEL003
If (STRING016 == "2") Goto LABEL004
If (STRING016 == "3") Goto LABEL005
If (STRING016 == "4") Goto LABEL006
If (STRING016 == "5") Goto LABEL007
If (STRING016 == " ") Goto LABEL002
:LABEL003
PROC001()
Cls
PrintLn " "
PrintLn " "
PrintLn " "
DispStr "%" + PPEPath() + "SYSOP1.PCB"
PrintLn " "
PrintLn " "
PrintLn " "
InputStr "@X08·──@X07──@X0F══[ _", STRING001, 127, 32, Mask_Ascii(), 256 + 8
Select Case (STRING001)
Case ""
End
:LABEL004
Cls
PrintLn " "
PrintLn " "
PrintLn " "
DispStr "%" + PPEPath() + "SYSOP2.PCB"
PrintLn " "
PrintLn " "
PrintLn " "
InputStr "@X08·──@X07──@X0F══[ _", STRING001, 127, 32, Mask_Ascii(), 256 + 8
Case ""
End
:LABEL005
Cls
PrintLn " "
PrintLn " "
PrintLn " "
DispStr "%" + PPEPath() + "SYSOP3.PCB"
PrintLn " "
PrintLn " "
PrintLn " "
InputStr "@X08·──@X07──@X0F══[ _", STRING001, 127, 32, Mask_Ascii(), 256 + 8
Case ""
End
:LABEL006
Cls
PrintLn " "
PrintLn " "
PrintLn " "
DispStr "%" + PPEPath() + "SYSOP4.PCB"
PrintLn " "
PrintLn " "
PrintLn " "
InputStr "@X08·──@X07──@X0F══[ _", STRING001, 127, 32, Mask_Ascii(), 256 + 8
Case ""
End
:LABEL007
Cls
PrintLn " "
PrintLn " "
PrintLn " "
DispStr "%" + PPEPath() + "SYSOP5.PCB"
PrintLn " "
PrintLn " "
PrintLn " "
InputStr "@X08·──@X07──@X0F══[ _", STRING001, 127, 32, Mask_Ascii(), 256 + 8
Case ""
End
End Select
:LABEL008
STRING015 = 16
STRING014 = 5
If (Len(STRING001) < 5) Goto LABEL022
Cls
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn " @X70┌────────────────────────────────────────────────@X7F┐@X07"
PrintLn " @X70│@X7F Now Paging The Sysop │@X07"
PrintLn " @X70│@X7F @X08░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░@X7F │@X07"
PrintLn " @X70└@X7F────────────────────────────────────────────────┘@X07"
SPrintLn " Press (SPACE) to Acknowledge Page or Press (ENTER) to Silence Pager"
PageOn
:LABEL009
If (STRING015 == 48) Goto LABEL010
AnsiPos STRING015, 7
Print "@X01▓@X08"
Sound STRING014
Delay 3
STRING004 = Upper(KInkey())
If (STRING004 == Chr(13)) STRING014 = 0
If (STRING004 == Chr(32)) Then
Sound 3
Chat
End
Endif
STRING015 = STRING015 + 1
If (STRING014 == 0) Goto LABEL009
STRING014 = STRING014 + 40
Goto LABEL009
Endif
:LABEL010
FOpen 1, PPEPath() + "PAGER.CFG", 0, 0
FGet 1, STRING005
FGet 1, STRING009
FGet 1, STRING010
FClose 1
Cls
PrintLn " "
PrintLn "@X70┌──────────────────────────────────────────────────────────────────@X7F┐@X07"
PrintLn "@X70│@X7F I'm Sorry But That Sysop │@X07"
PrintLn "@X70└@X7F──────────────────────────────────────────────────────────────────┘@X07"
AnsiPos 28, 3
Print "@X7F", STRING005
Sound 2
Newline
Newline
Newline
STRING012 = GetY()
STRING012 = STRING012 - 1
If (Upper(ReadLine(STRING011, 2)) == "Y") Then
STRING010 = Upper(ReadLine(STRING011, 3))
Newline
:LABEL011
If (STRING013 == "5") End
AnsiPos 10, STRING012
Print "@X0FIs this an Emergency???? @X0EYes @X1FNo@X07"
:LABEL012
STRING001 = Inkey()
If (STRING001 == "LEFT") Goto LABEL013
If (STRING001 == "4") Goto LABEL013
If (STRING001 == "") Goto LABEL012
If (STRING001 == STRING008) Goto LABEL018
Goto LABEL012
:LABEL013
AnsiPos 10, STRING012
Print "@X0FIs this an Emergency? @X1FYes@X0F No@X07"
:LABEL014
STRING001 = Inkey()
If (STRING001 == "RIGHT") Goto LABEL011
If (STRING001 == "6") Goto LABEL011
If (STRING001 == "") Goto LABEL014
If (STRING001 == STRING008) Goto LABEL015
Goto LABEL014
:LABEL015
Cls
PrintLn " "
PrintLn " X0EPlease Enter the Emergency Password. │@X07"
PrintLn " "
InputStr "@X08·──@X07──@X0F══[ _", STRING003, 9, 15, Mask_Ascii(), 8 + 1
If (STRING003 == STRING010) Then
STRING001 = "@X74EMERGENCY!"
STRING013 = "5"
Goto LABEL008
:LABEL016
AnsiPos 10, 6
Print "@X0FWould you like to Leave Feedback? @X1FYes@X09 No@X07"
:LABEL017
STRING001 = Inkey()
If (STRING001 == "RIGHT") Goto LABEL018
If (STRING001 == "6") Goto LABEL018
If (STRING001 == "") Goto LABEL017
If (STRING001 == STRING008) Goto LABEL020
Goto LABEL017
Endif
:LABEL018
AnsiPos 10, 6
Print "@X0FWould you like to Leave Feedback? @X09Yes @X1FNo@X07"
:LABEL019
STRING001 = Inkey()
If (STRING001 == "LEFT") Goto LABEL016
If (STRING001 == "4") Goto LABEL016
If (STRING001 == "") Goto LABEL019
If (STRING001 == STRING008) Goto LABEL021
Goto LABEL019
:LABEL020
Cls
Goto LABEL023
End
:LABEL021
PrintLn " "
End
:LABEL022
Newline
Print "@X0FOh Gee Whiz!! You don't have even one thought in your head?"
Wait
Goto LABEL002
Endif
Newline
PrintLn "@X0FI@X07n@X08correct @X0FP@X07a@X08ssword"
End
:LABEL023
If (Exist(PPEPath() + "COMMENT.CFG")) Goto LABEL024
PrintLn "@BEEP@@X0C(COMMENT.CFG) not found!"
Goto LABEL027
:LABEL024
FOpen 2, PPEPath() + "COMMENT.CFG", 0, 0
INTEGER001 = 1
:LABEL025
If (Ferr(2)) Goto LABEL026
FGet 2, TSTRING017(INTEGER001)
If (TSTRING017(INTEGER001) == "<EOF>") Goto LABEL026
Inc INTEGER001
Goto LABEL025
:LABEL026
Newlines 2
PrintLn "@X0C # SysOp"
PrintLn "@X09▀▀▀ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀"
For INTEGER002 = 1 To INTEGER001 - 1
PrintLn " @X02" + String(INTEGER002) + ") @X0A" + TSTRING017(INTEGER002)
Next
Newline
InputStr "@X0CEnter the # of the SysOp you'd like to leave a message to: @X01[@X0F1@X01] > _", INTEGER003, 13, 2, "1234567890", 256
If (INTEGER003 > INTEGER001) INTEGER003 = INTEGER001 - 1
If (INTEGER003 == 0) INTEGER003 = 1
KbdStuff "E" + Chr(13) + TSTRING017(INTEGER003) + Chr(13) + "-* Comment to Sysop #" + String(INTEGER003) + " *-" + Chr(13) + "R" + Chr(13)
:LABEL027
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 12 End
; 11 Cls
; 1 Wait
; 51 Goto
; 27 Let
; 7 Print
; 53 PrintLn
; 42 If
; 2 FOpen
; 1 FClose
; 4 FGet
; 1 Log
; 8 InputStr
; 6 Delay
; 1 Inc
; 7 Newline
; 1 Newlines
; 1 KbdStuff
; 6 DispStr
; 11 AnsiPos
; 3 Sound
; 1 Chat
; 1 SPrintLn
; 1 PageOn
; 1 EndProc
;
;
; ■ Functions used :
;
; 39 +
; 4 -
; 36 ==
; 2 <
; 3 <=
; 1 >
; 2 >=
; 12 !
; 3 &&
; 1 ||
; 1 Len(
; 3 Upper()
; 1 Ferr()
; 7 Chr()
; 1 Time()
; 4 Inkey()
; 2 String()
; 6 Mask_Ascii()
; 2 PCBDat()
; 10 PPEPath()
; 4 ReadLine()
; 1 Exist()
; 1 GetY()
; 1 KInkey()
;
;------------------------------------------------------------------------------
;
; Analysis flags : d
;
; 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
;
; 1 For/Next
; 0 While/EndWhile
; 4 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------