;------------------------------------------------------------------------------
;PCBoard Programming Language Decompiler 3.00 (C)1994-95 Chicken / Tools4Fools
;------------------------------------------------------------------------------
;
;PCBoard Programming Language Executable 3.10 detected.
;
;Source Code:
;------------------------------------------------------------------------------
STRING VAR001(1,10)
STRING VAR002
STRING VAR003
STRING VAR004
STRING VAR005
STRING VAR006
STRING VAR007
STRING VAR008
STRING VAR009
STRING VAR010
STRING VAR011
STRING VAR012
STRING VAR013
STRING VAR014(1,17)
STRING VAR015
STRING VAR016
STRING VAR017
STRING VAR018(1,10)
STRING VAR019
STRING VAR020
STRING VAR021
STRING VAR022
BOOLEAN VAR023
INTEGER VAR024
INTEGER VAR025
INTEGER VAR026
INTEGER VAR027
INTEGER VAR028
INTEGER VAR029
INTEGER VAR030
INTEGER VAR031
;------------------------------------------------------------------------------
LET VAR002=""
LET VAR003=""
LET VAR004=""
LET VAR006=""
LET VAR007=" "
LET VAR008=""
LET VAR009=""
LET VAR015=""
LET VAR016=""
LET VAR011="@POS:3@@X7F│@X70@POS:68@│@X08█@X07"
LET VAR019="@POS:3@@X7F│@POS:12@Press @X7AENTER @X7Fto Edit, @X74ESC @X7Fto Save Changes or Abort@X70@POS:68@│@X08█@X07"
LET VAR020="@POS:3@@X7F│@POS:17@Press @X71S @X7Fto @X71SAVE @X7For @X7EA @X7Fto @X7EABORT @X7FChanges@X70@POS:68@│@X08█@X07"
LET VAR021="@POS:3@@X7F│@POS:14@@X7EYour changes have been successfully saved!@X70@POS:68@│@X08█@X07"
LET VAR022="@POS:3@@X7F│@X7E@POS:5@-@X74ABORTED@X7E-@POS:17@@X70Your changes have been NOT been saved!@X7E@POS:58@-@X74ABORTED@X7E-@X70@POS:68@│@X08█@X07"
LET VAR010="INTERNET E-MAIL PERSONAL PHONEBOOK"
LET VAR012="Registered to :"
LET VAR017="@X7F [@XF4UNREGISTERED@X7F] @X71Register this for only $5.00 @X7F[@XF4UNREGISTERED@X7F] @X7F@X07"
LET VAR018(1,1)="empty"
LET VAR018(1,2)="empty ┐"
LET VAR018(1,3)="empty ┤ ALL of these remaining 9 entries"
LET VAR018(1,4)="empty ┤ will be available to the users"
LET VAR018(1,5)="empty ┤ of this BBS if the SYSOP decides"
LET VAR018(1,6)="empty ┤ to register this software!"
LET VAR018(1,7)="empty ┤ ────────────────────────────"
LET VAR018(1,8)="empty ┤"
LET VAR018(1,9)="empty ┤ The Registration Fee is only"
LET VAR018(1,10)="empty ┘ $5.00 CDN"
LET VAR023=0
LET VAR024=1
LET VAR025=0
LET VAR013=0
LET VAR026=1
LET VAR027=0
LET VAR028=0
LET VAR030=0
LET VAR031=0
GOSUB LABEL043
GOSUB LABEL057
GOSUB LABEL049
GOSUB LABEL000
GOSUB LABEL005
GOSUB LABEL016
GOSUB LABEL024
GOTO LABEL071
:LABEL000
IF (!PSA(3)) GOTO LABEL003
LET VAR024=1
GETUSER
LET VAR003=MID(U_NAME(),1,4)
:LABEL001
IF (!(VAR005<>" ")) GOTO LABEL002
LET VAR005=MID(U_NAME(),VAR024,1)
LET VAR024=VAR024+1
GOTO LABEL001
:LABEL002
LET VAR004=MID(U_NAME(),VAR024,4)
LET VAR002=VAR003+VAR004
GOTO LABEL004
:LABEL003
PRINTLN ""
PRINTLN "@X0FYou must have the @X0CAddress PSA Installed@X0F.@X07"
PRINTLN "@X0ERun PCBSM.EXE@X0F, and set up this PSA before re-running this PPE@X07"
PRINTLN ""
PRINTLN "@X0FThanks for using the @X03Internet E-Mail Phonebook PPE@X0F!@X07"
PRINTLN ""
GOTO LABEL071
:LABEL004
RETURN
:LABEL005
IF (!EXIST(PPEPATH()+VAR002+".IEM")) GOTO LABEL006
GOSUB LABEL010
GOTO LABEL009
:LABEL006
LET VAR024=1
FCREATE 1,PPEPATH()+VAR002+".IEM",O_WR,S_DW
:LABEL007
IF (!(VAR024<11)) GOTO LABEL008
FPUTLN 1,"empty"
LET VAR024=VAR024+1
GOTO LABEL007
:LABEL008
FCLOSE 1
GOSUB LABEL010
:LABEL009
RETURN
:LABEL010
IF (!VAR023) GOTO LABEL013
LET VAR024=1
FOPEN 1,PPEPATH()+VAR002+".IEM",O_RW,S_DW
:LABEL011
IF (!(VAR024<11)) GOTO LABEL012
FGET 1,VAR006
LET VAR001(1,VAR024)=VAR006
LET VAR024=VAR024+1
GOTO LABEL011
:LABEL012
FCLOSE 1
GOTO LABEL015
:LABEL013
LET VAR024=1
FOPEN 1,PPEPATH()+VAR002+".IEM",O_RW,S_DW
FGET 1,VAR006
LET VAR001(1,VAR024)=VAR006
FCLOSE 1
LET VAR024=VAR024+1
:LABEL014
IF (!(VAR024<11)) GOTO LABEL015
LET VAR001(1,VAR024)=VAR018(1,VAR024)
LET VAR024=VAR024+1
GOTO LABEL014
:LABEL015
RETURN
:LABEL016
LET VAR024=1
GOSUB LABEL019
:LABEL017
IF (!(VAR024<11)) GOTO LABEL018
ANSIPOS 6,6+VAR024
PRINTLN "@X71"+VAR001(1,VAR024)+"@X07"
LET VAR024=VAR024+1
GOTO LABEL017
:LABEL018
RETURN
:LABEL019
PRINTLN "@CLS@@POFF@"
DISPFILE PPEPATH()+"EMAIL.GRD",2+1+4
ANSIPOS 1,2
PRINTLN " @X7F┌────────────────────────────────────────────────────────────────@X70┐@X07 "
PRINTLN " @X7F│@X7E "+VAR010+" @X70@POS:68@│@X08█@X07"
PRINTLN VAR011
IF (!VAR023) GOTO LABEL020
PRINTLN " @X7F│ "+VAR012+" @X71"+VAR016+", "+VAR015+" @POS:68@@X70│@X08█@X07"
GOTO LABEL021
:LABEL020
PRINTLN " @X7F│ @X7E"+VAR017+"@X70@POS:68@│@X08█@X07"
:LABEL021
PRINTLN " @X7F│ ────────────────────────────────────────────────────────────── @X70│@X08█@X07"
LET VAR013=1
:LABEL022
IF (!(((1<0)&(VAR013>=10))|((1>=0)&(VAR013<=10)))) GOTO LABEL023
LET VAR014(1,(VAR013+4))=VAR011
PRINTLN VAR011
LET VAR013=VAR013+1
GOTO LABEL022
:LABEL023
PRINTLN " @X7F│ ────────────────────────────────────────────────────────────── @X70│@X08█@X07"
PRINTLN VAR019
PRINTLN " @X7F└@X70────────────────────────────────────────────────────────────────┘@X08█@X07"
PRINTLN " @X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07@PON@"
RETURN
:LABEL024
LET VAR024=1
:LABEL025
LET VAR025=LEN(VAR001(1,VAR024))
LET VAR031=LEN(VAR018(1,VAR024))
IF (!VAR023) GOTO LABEL026
ANSIPOS 6,6+VAR024
PRINT "@X1F"+VAR001(1,VAR024)+LEFT(VAR007,(60-VAR025))+"@X07"
GOTO LABEL028
:LABEL026
IF (!(VAR024=1)) GOTO LABEL027
ANSIPOS 6,6+VAR024
PRINT "@X1F"+VAR001(1,VAR024)+LEFT(VAR007,(60-VAR025))+"@X07"
GOTO LABEL028
:LABEL027
ANSIPOS 6,6+VAR024
PRINT "@X1F"+VAR018(1,VAR024)+LEFT(VAR007,(60-VAR031))+"@X07"
:LABEL028
GOSUB LABEL029
GOTO LABEL025
:LABEL029
IF (!(VAR008<>CHR(27))) GOTO LABEL035
LET VAR008=INKEY()
IF (!(VAR008=CHR(13))) GOTO LABEL030
GOSUB LABEL040
RETURN
:LABEL030
IF (!(((VAR008="DOWN")|(VAR008="z"))|(VAR008="Z"))) GOTO LABEL032
IF (!(VAR024=10)) GOTO LABEL031
GOSUB LABEL036
LET VAR024=1
RETURN
:LABEL031
GOSUB LABEL036
LET VAR024=VAR024+1
RETURN
:LABEL032
IF (!(((VAR008="UP")|(VAR008="a"))|(VAR008="A"))) GOTO LABEL034
IF (!(VAR024=1)) GOTO LABEL033
GOSUB LABEL036
LET VAR024=10
RETURN
:LABEL033
GOSUB LABEL036
LET VAR024=VAR024-1
RETURN
:LABEL034
GOTO LABEL029
:LABEL035
GOTO LABEL059
:LABEL036
IF (!VAR023) GOTO LABEL037
ANSIPOS 6,6+VAR024
PRINT "@X71"+VAR001(1,VAR024)+LEFT(VAR007,(60-VAR025))+"@X07"
GOTO LABEL039
:LABEL037
IF (!(VAR024=1)) GOTO LABEL038
ANSIPOS 6,6+VAR024
PRINT "@X71"+VAR001(1,VAR024)+LEFT(VAR007,(60-VAR025))+"@X07"
GOTO LABEL039
:LABEL038
ANSIPOS 6,6+VAR024
PRINT "@X71"+VAR018(1,VAR024)+LEFT(VAR007,(60-VAR031))+"@X07"
:LABEL039
RETURN
:LABEL040
ANSIPOS 6,6+VAR024
PRINT "@X07"+VAR007+"@X07"
ANSIPOS 4,6+VAR024
INPUTSTR "@X77",VAR009,7,60,"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_=+[]{}\|/?,.><`~;:'",NEWLINE
IF (!(VAR009="")) GOTO LABEL041
GOTO LABEL042
:LABEL041
LET VAR001(1,VAR024)=VAR009
LET VAR009=""
:LABEL042
RETURN
:LABEL043
IF (!(VAR013<51)) GOTO LABEL046
LET VAR030=VAR030+(ASC(MID(VAR010,VAR013,1))*3)
LET VAR030=VAR030+(ASC(MID(VAR017,VAR013,1))*3)
LET VAR013=VAR013+1
LET VAR029=2
:LABEL044
IF (!(((1<0)&(VAR029>=10))|((1>=0)&(VAR029<=10)))) GOTO LABEL045
LET VAR030=VAR030+((ASC(MID(VAR018(1,VAR029),VAR013,1))*4)*9)
LET VAR029=VAR029+1
GOTO LABEL044
:LABEL045
GOTO LABEL043
:LABEL046
IF (!(VAR030=(150*8132+1152))) GOTO LABEL047
GOTO LABEL048
:LABEL047
GOTO LABEL058
:LABEL048
RETURN
:LABEL049
LET VAR026=1
:LABEL050
IF (!(VAR026<41)) GOTO LABEL054
IF (!((((VAR026=2)|(VAR026=8))|(VAR026=12))|(VAR026=18))) GOTO LABEL051
LET VAR027=VAR027+(ASC(MID(VAR016,VAR026,1))*7)
LET VAR027=VAR027+(ASC(MID(VAR015,VAR026,1))*4)
LET VAR027=((ASC(MID(VAR015,VAR026,1))*14)*(ASC(MID(VAR015,VAR026,1))*26)-5837)*6+VAR027
LET VAR026=VAR026+1
GOTO LABEL053
:LABEL051
IF (!((((VAR026=3)|(VAR026=7))|(VAR026=14))|(VAR026=16))) GOTO LABEL052
LET VAR027=VAR027+(ASC(MID(VAR016,VAR026,1))*10)
LET VAR027=VAR027+(ASC(MID(VAR015,VAR026,1))*2)
LET VAR027=((ASC(MID(VAR015,VAR026,1))*17)*(ASC(MID(VAR015,VAR026,1))*92)-1)*1436+VAR027
LET VAR026=VAR026+1
GOTO LABEL053
:LABEL052
LET VAR027=VAR027+(ASC(MID(VAR016,VAR026,1))*9)
LET VAR027=VAR027+(ASC(MID(VAR015,VAR026,1))*22)
LET VAR027=((ASC(MID(VAR015,VAR026,1))*137)*(ASC(MID(VAR015,VAR026,1))*47)-29571)*91+VAR027
LET VAR026=VAR026+1
:LABEL053
GOTO LABEL050
:LABEL054
LET VAR027=(VAR027+1.90585e+10)*4+(ASC(MID(VAR016,5,1))*4986)+17580
IF ((VAR027=VAR028)) GOTO LABEL055
LET VAR023=1
GOTO LABEL056
:LABEL055
LET VAR023=0
:LABEL056
LET VAR026=0
LET VAR027=0
RETURN
:LABEL057
FOPEN 1,PPEPATH()+"EMAIL.CFG",O_RD,S_DW
FGET 1,VAR016
FGET 1,VAR015
FGET 1,VAR028
FCLOSE 1
RETURN
:LABEL058
PRINTLN "@CLS@"
PRINTLN ""
PRINTLN ""
PRINTLN "@X04 ********* @X0CW A R N I N G @X04*********@X07"
PRINTLN ""
PRINTLN "@X0EThis program has been @X0FHACKED @X0Eor @X0FMODIFIED @X0Efrom it's original form@X07"
PRINTLN "@X0Eand for your safety @X0FWILL NO LONGER @X0EFunction!@X07"
PRINTLN ""
PRINTLN "@X0BPlease @X0ADELETE @X0Bthis version @X0AIMMEDIATELY@X0B!@X07"
PRINTLN ""
PRINTLN ""
PRINTLN "@X09You can download an original copy of this PPE at any@X07"
PRINTLN "@X09of the authorized distribution sites listed in the documentation@X07"
PRINTLN "@X09file.@X07"
PRINTLN " @X0FThomas Christoph@X07"
PRINTLN " @X0FINTERNET E-MAIL PHONEBOOK@X07"
PRINTLN " @X0FA WILD PPE Production@X07"
GOTO LABEL071
:LABEL059
ANSIPOS 1,18
PRINTLN "@POFF@"+VAR020+"@PON@"
LET VAR008=""
:LABEL060
IF (!(VAR008<>CHR(27))) GOTO LABEL063
LET VAR008=INKEY()
IF (!((VAR008="a")|(VAR008="A"))) GOTO LABEL061
ANSIPOS 1,18
PRINTLN VAR022
DELAY 5
ANSIPOS 1,21
GOTO LABEL071
:LABEL061
IF (!((VAR008="s")|(VAR008="S"))) GOTO LABEL062
ANSIPOS 1,18
PRINTLN VAR021
GOSUB LABEL064
ANSIPOS 1,21
GOTO LABEL071
:LABEL062
GOTO LABEL060
:LABEL063
GOTO LABEL059
:LABEL064
LET VAR024=1
FCREATE 1,PPEPATH()+VAR002+".IEM",O_WR,S_DN
:LABEL065
IF (!(VAR024<11)) GOTO LABEL070
IF (!VAR023) GOTO LABEL066
FPUTLN 1,VAR001(1,VAR024)
LET VAR024=VAR024+1
GOTO LABEL069
:LABEL066
IF (!(VAR024=1)) GOTO LABEL067
FPUTLN 1,VAR001(1,VAR024)
GOTO LABEL068
:LABEL067
FPUTLN 1,VAR018(1,1)
:LABEL068
LET VAR024=VAR024+1
:LABEL069
GOTO LABEL065
:LABEL070
FCLOSE 1
RETURN
:LABEL071
;------------------------------------------------------------------------------
;Statements used:
;
; 70 GOTO
; 96 LET
; 7 PRINT
; 39 PRINTLN
; 34 IF
; 1 DISPFILE
; 2 FCREATE
; 3 FOPEN
; 5 FCLOSE
; 5 FGET
; 4 FPUTLN
; 1 GETUSER
; 1 INPUTSTR
; 17 GOSUB
; 16 RETURN
; 1 DELAY
; 15 ANSIPOS
;
;Functions used:
;
; 25 *
; 90 +
; 10 -
; 27 =
; 3 <>
; 9 <
; 2 <=
; 4 >=
; 34 !
; 4 &
; 14 |
; 2 LEN
; 19 MID
; 6 LEFT
; 3 CHR
; 16 ASC
; 3 U_NAME
; 2 INKEY
; 7 PPEPATH
; 1 EXIST
; 1 PSA
;
;------------------------------------------------------------------------------
;Thank you for using PPLD T4F - We Create Your Needs Of Tommorow !
;------------------------------------------------------------------------------