home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Pier Shareware 6
/
The_Pier_Shareware_Number_6_(The_Pier_Exchange)_(1995).iso
/
005
/
cw_hh_36.zip
/
HOWHEARD.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-09-30
|
9KB
|
398 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
;------------------------------------------------------------------------------
Date DATE002
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
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
;------------------------------------------------------------------------------
If (INTEGER020 == 1) Then
INTEGER020 = "CRW"
Beep
Endif
INTEGER021 = 36
STRING019 = PPEPath() + PPEName() + ".CNF"
STRING027 = 58053
STRING025 = "N"
STRING028 = "U" + "n" + "r" + "e" + "g" + "i" + "s" + "t" + "e" + "r" + "e" + "d"
If (PPEName() == "SUBSCRIP") STRING026 = 46554
If (PPEName() == "FONE-VER") STRING026 = 34479
If (PPEName() == "PRO-VOTE") STRING026 = 57877
If (PPEName() == "CONFMENU") STRING026 = 27062
If (PPEName() == "FILEMENU") STRING026 = 14513
If (PPEName() == "MAINMENU") STRING026 = 25781
If (PPEName() == "DOORMENU") STRING026 = 44910
If (PPEName() == "AUTOPOST") STRING026 = 61482
If (PPEName() == "BBSLISTR") STRING026 = 11832
If (PPEName() == "REMINDME") STRING026 = 54925
If (PPEName() == "TIMEZONE") STRING026 = 38318
If (PPEName() == "USERNEWS") STRING026 = 31171
If (PPEName() == "MSGQUEST") STRING026 = 50024
If (PPEName() == "BIRTHDAY") STRING026 = 19645
If (PPEName() == "HOWHEARD") STRING026 = 42868
If (PPEName() == "WELCOMAT") STRING026 = 23034
If (Exist(STRING019)) Then
FOpen 1, STRING019, 0, 0
FGet 1, STRING014
FGet 1, INTEGER024
FGet 1, INTEGER023
FClose 1
Else
Select Case (PPEName())
Case "MAINT"
STRING019 = PPEPath() + "PRO-VOTE.CNF"
Case "CMW"
STRING019 = PPEPath() + "CONFMENU.CNF"
Case "INTELAPP"
STRING019 = PPEPath() + "INTELEC.CNF"
Case Else
PrintLn "@X0CError - Config file not found - Please notify SysOp"
End
Endif
End Select
Tokenize STRING014
GetToken STRING023
GetToken STRING024
If (INTEGER024 == 0) Then
STRING025 = "N"
Goto LABEL003
Else
Goto LABEL001
Endif
:LABEL001
STRING020 = Left(STRING023, 1)
STRING021 = Left(STRING024, 2)
STRING022 = STRING020 + STRING021
If (STRING020 == "A") INTEGER025 = 8408
If (STRING020 == "B") INTEGER025 = 9119
If (STRING020 == "C") INTEGER025 = 6619
If (STRING020 == "D") INTEGER025 = 4820
If (STRING020 == "E") INTEGER025 = 7325
If (STRING020 == "F") INTEGER025 = 2928
If (STRING020 == "G") INTEGER025 = 2031
If (STRING020 == "H") INTEGER025 = 1934
If (STRING020 == "I") INTEGER025 = 5534
If (STRING020 == "J") INTEGER025 = 4737
If (STRING020 == "K") INTEGER025 = 9242
If (STRING020 == "L") INTEGER025 = 3743
If (STRING020 == "M") INTEGER025 = 6546
If (STRING020 == "N") INTEGER025 = 8355
If (STRING020 == "O") INTEGER025 = 2859
If (STRING020 == "P") INTEGER025 = 4660
If (STRING020 == "Q") INTEGER025 = 7463
If (STRING020 == "R") INTEGER025 = 1164
If (STRING020 == "S") INTEGER025 = 6471
If (STRING020 == "T") INTEGER025 = 3973
If (STRING020 == "U") INTEGER025 = 5674
If (STRING020 == "V") INTEGER025 = 5782
If (STRING020 == "W") INTEGER025 = 3885
If (STRING020 == "X") INTEGER025 = 8287
If (STRING020 == "Y") INTEGER025 = 7591
If (STRING020 == "Z") INTEGER025 = 1096
INTEGER022 = S2I(STRING022, INTEGER021) + INTEGER024 + STRING026 + INTEGER025
INTEGER026 = S2I(STRING022, INTEGER021) + INTEGER024 + STRING027 + INTEGER025
If (INTEGER023 == INTEGER022) Goto LABEL002
If (INTEGER023 == INTEGER026) Goto LABEL002
Goto LABEL013
:LABEL002
STRING025 = "Y"
If (Len(INTEGER024) == 1) STRING016 = "000"
If (Len(INTEGER024) == 2) STRING016 = "00"
If (Len(INTEGER024) == 3) STRING016 = "0"
If (Len(INTEGER024) == 4) STRING016 = ""
STRING017 = INTEGER024
STRING018 = STRING016 + STRING017
STRING015 = Space(30 - Len(STRING014))
:LABEL003
STRING029 = "CRW"
STRING012 = "3.6 "
STRING013 = PPEPath() + "PROMPTS.HH"
If (GrafMode() == "R") STRING013 = PPEPath() + "PROMPTS.HHR"
If (STRING025 == "N") STRING009 = "@X0BHowHeard v" + STRING012 + " # " + "@X0C" + STRING028 + "@X0B" + " ■ " + STRING014 + " ■ "
If (STRING025 == "Y") STRING009 = "@X0BHowHeard v" + STRING012 + " #@X0F" + STRING018 + "@X0B ■ " + STRING014 + " ■ "
FOpen 1, STRING019, 0, 0
FGet 1, STRING011
FGet 1, STRING011
FGet 1, STRING011
FGet 1, STRING007
FGet 1, STRING008
FGet 1, INTEGER018
FGet 1, INTEGER007
FGet 1, STRING002
FGet 1, INTEGER013
FGet 1, INTEGER002
FGet 1, INTEGER008
FGet 1, STRING003
FGet 1, INTEGER014
FGet 1, INTEGER003
FGet 1, INTEGER009
FGet 1, STRING004
FGet 1, INTEGER015
FGet 1, INTEGER004
FGet 1, INTEGER010
FGet 1, STRING005
FGet 1, INTEGER016
FGet 1, INTEGER005
FGet 1, INTEGER011
FGet 1, STRING006
FGet 1, INTEGER017
FGet 1, INTEGER006
FGet 1, INTEGER012
FClose 1
INTEGER019 = 0
If (STRING002 == "Other") INTEGER019 = 1
If (STRING003 == "Other") INTEGER019 = 2
If (STRING004 == "Other") INTEGER019 = 3
If (STRING005 == "Other") INTEGER019 = 4
If (STRING006 == "Other") INTEGER019 = 5
INTEGER018 = INTEGER018 - 1
GetUser
:LABEL004
Cls
STRING010 = " "
DispFile STRING007, 4 + 2 + 1
InputStr ReadLine(STRING013, 1), STRING010, 14, 1, "12345", 10
PrintLn
If (STRING010 == "1") Goto LABEL005
If (STRING010 == "2") Goto LABEL006
If (STRING010 == "3") Goto LABEL007
If (STRING010 == "4") Goto LABEL008
If (STRING010 == "5") Goto LABEL009
If (STRING010 == " ") Goto LABEL012
If (STRING010 == "") Goto LABEL012
:LABEL005
If (INTEGER019 == 1) Goto LABEL011
PrintLn
U_Notes(INTEGER018) = STRING002
If (!(INTEGER013 == "")) U_Sec = INTEGER013
If (!(INTEGER008 == "")) ConfFlag INTEGER008, 1
If (INTEGER002 == "0") DATE002 = 0 - 0 - 0
If (!(INTEGER002 == "") && !(INTEGER002 == 0)) DATE002 = Date() + INTEGER002
U_ExpDate = DATE002
Goto LABEL012
:LABEL006
If (INTEGER019 == 2) Goto LABEL011
PrintLn
If (INTEGER007 < 2) Goto LABEL010
U_Notes(INTEGER018) = STRING003
If (!(INTEGER014 == "")) U_Sec = INTEGER014
If (!(INTEGER009 == "")) ConfFlag INTEGER009, 1
If (INTEGER003 == "0") DATE002 = 0 - 0 - 0
If (!(INTEGER003 == "") && !(INTEGER003 == 0)) DATE002 = Date() + INTEGER003
U_ExpDate = DATE002
Goto LABEL012
:LABEL007
If (INTEGER019 == 3) Goto LABEL011
PrintLn
If (INTEGER007 < 3) Goto LABEL010
U_Notes(INTEGER018) = STRING004
If (!(INTEGER015 == "")) U_Sec = INTEGER015
If (!(INTEGER010 == "")) ConfFlag INTEGER010, 1
If (INTEGER004 == "0") DATE002 = 0 - 0 - 0
If (!(INTEGER004 == "") && !(INTEGER004 == 0)) DATE002 = Date() + INTEGER004
U_ExpDate = DATE002
Goto LABEL012
:LABEL008
If (INTEGER019 == 4) Goto LABEL011
PrintLn
If (INTEGER007 < 4) Goto LABEL010
U_Notes(INTEGER018) = STRING005
If (!(INTEGER016 == "")) U_Sec = INTEGER016
If (!(INTEGER011 == "")) ConfFlag INTEGER011, 1
If (INTEGER005 == "0") DATE002 = 0 - 0 - 0
If (!(INTEGER005 == "") && !(INTEGER005 == 0)) DATE002 = Date() + INTEGER005
U_ExpDate = DATE002
Goto LABEL012
:LABEL009
If (INTEGER019 == 5) Goto LABEL011
PrintLn
If (INTEGER007 < 5) Goto LABEL010
U_Notes(INTEGER018) = STRING006
If (!(INTEGER017 == "")) U_Sec = INTEGER017
If (!(INTEGER012 == "")) ConfFlag INTEGER012, 1
If (INTEGER006 == "0") DATE002 = 0 - 0 - 0
If (!(INTEGER006 == "") && !(INTEGER006 == 0)) DATE002 = Date() + INTEGER006
U_ExpDate = DATE002
Goto LABEL012
:LABEL010
PrintLn
PrintLn ReadLine(STRING013, 2)
PrintLn
Delay 50
Goto LABEL004
:LABEL011
STRING010 = ""
Cls
DispFile STRING008, 4 + 2 + 1
InputStr "", STRING010, 11, 60, Mask_Alpha() + Mask_Num() + Mask_Ascii(), 2
If (Len(STRING010) < 1) Then
Cls
PrintLn ReadLine(STRING013, 3)
Delay 36
Goto LABEL011
Else
U_Notes(INTEGER018) = STRING010
PrintLn
Goto LABEL012
Endif
:LABEL012
PutUser
PrintLn STRING009
Delay 45
End
:LABEL013
Cls
PrintLn
PrintLn " @X5D┌──────────────────────────────@X50┐@X07"
PrintLn " @X5D│ @X5AHowHeard v", STRING012, " @X50│@X07"
PrintLn " @X5D│ @X50│@X07"
PrintLn " @X5D│ @X5BAborting Operation @X50│@X07"
PrintLn " @X5D│ @X50│@X07"
PrintLn " @X5D│ @X5BInvalid Registration Code! @X50│@X07"
PrintLn " @X5D└@X50──────────────────────────────┘@X07"
Beep
Delay 182
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 3 End
; 4 Cls
; 42 Goto
; 106 Let
; 21 PrintLn
; 99 If
; 5 ConfFlag
; 2 DispFile
; 2 FOpen
; 2 FClose
; 30 FGet
; 1 GetUser
; 1 PutUser
; 2 InputStr
; 4 Delay
; 1 Tokenize
; 2 GetToken
; 2 Beep
;
;
; ■ Functions used :
;
; 51 +
; 12 -
; 98 ==
; 5 <
; 27 !
; 5 &&
; 6 Len(
; 2 Left()
; 1 Space()
; 5 Date()
; 1 Mask_Alpha()
; 1 Mask_Num()
; 1 Mask_Ascii()
; 6 PPEPath()
; 3 ReadLine()
; 1 Exist()
; 2 S2I()
; 1 GrafMode()
; 20 PPEName()
;
;------------------------------------------------------------------------------
;
; Analysis flags : FW
;
; F - Change conference flags status ■ 2
; This may be normal for a SELECT replacement but it may also be
; a way to get access to conferences a user is not allowed to.
; ■ Search for : CONFFLAG, CONFUNFLAG
;
; 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
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 4 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------