home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
S
/
SCUMMAT1.ZIP
/
MATRIX.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-07-10
|
19KB
|
912 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 INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
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 STRING031
String STRING032
String STRING033
String STRING034
String STRING035
String STRING036
String STRING037
String STRING038
String STRING039
String STRING040
String STRING041
String STRING042
String STRING043
String STRING044
String STRING045
String STRING046
String STRING047
String STRING048
String STRING049
Time TIME001
Time TIME002
;------------------------------------------------------------------------------
STRING038 = Chr(7)
STRING039 = Chr(27) + "["
STRING040 = STRING039 + "0;0H"
STRING041 = STRING039 + "K"
STRING005 = "SYSOP.TXT"
TIME001 = ReadLine(PCBDat(), 189)
TIME002 = ReadLine(PCBDat(), 190)
STRING042 = Chr(10) + Chr(13)
STRING001 = Chr(13)
INTEGER006 = 0
INTEGER007 = 0
STRING043 = "00h"
STRING011 = "matrix.cfg"
If (Exist(PPEPath() + "matrix.cfg")) Goto LABEL001
PrintLn "[OH SHIT] Configuration file missing or corrupt."
Log "Config file missing or corrupt.", 0
Hangup
:LABEL001
FOpen 1, PPEPath() + "matrix.cfg", 0, 0
FGet 1, STRING022
FGet 1, STRING012
FGet 1, STRING013
FGet 1, STRING015
FGet 1, STRING016
FGet 1, INTEGER005
FGet 1, INTEGER006
FGet 1, STRING023
FGet 1, INTEGER008
FGet 1, STRING004
FClose 1
If (Exist(PPEPath() + "strings.cfg")) Goto LABEL002
Log "[MATRIX] StringFile not found... (default loaded)", 0
STRING025 = "@X09D:\LOGIN\NODE@NODE@>"
STRING026 = "@X09[SunOS]["
STRING027 = "]%"
STRING028 = "@X09Since this is @X0DUNIX, @X09Try @X0DLS @X09dumbass..."
STRING029 = "@X09Like you thought you could get warez..."
STRING030 = "@X09FUCK OFF FED."
STRING031 = "@X09What the fuck did you run @X0DAPPLY@X09 for then?!?"
STRING032 = "@X05Access Denied - Excessive Command Line Usage..."
STRING033 = "@X09What the fuck did you run @X0DSYSOP @X09for then?!?"
STRING034 = "@X09Picky, Picky..."
STRING035 = "@X09 Since this is @X0DDOS@X09, Try @X0DDIR@X09, Jerky..."
STRING036 = "@X09Please enter [@X0DYES@X09] If you understand and comply with the above,"
STRING037 = "@X09or [@X0DV@X09]iew to review the disclaimer..."
Goto LABEL003
:LABEL002
FOpen 3, PPEPath() + "strings.cfg", 0, 0
FGet 3, STRING025
FGet 3, STRING026
FGet 3, STRING027
FGet 3, STRING028
FGet 3, STRING029
FGet 3, STRING030
FGet 3, STRING031
FGet 3, STRING032
FGet 3, STRING033
FGet 3, STRING034
FGet 3, STRING035
FGet 3, STRING036
FGet 3, STRING037
FClose 3
:LABEL003
If ((STRING004 == "YES") || (STRING004 == "yes")) Then
Goto LABEL004
Else
Goto LABEL008
Endif
:LABEL004
PrintLn "@X08─@X05─@X08─@X05──@X08───@X05─@X08───────@X05──@X08─@X0D─@X08─────────────────────────────────────────────────@X0A─@X08─@X02──@X08──@X02─@X0A─@X08──@X08"
PrintLn "@X08LoGiN @X05DiSCLaIMeR @X0DPPE - By Charlie X [SCuM]"
PrintLn "@X0DCopyNight (C) 1994 Scum PPE Division"
PrintLn "@X08─@X05─@X08─@X05──@X08───@X05─@X08───────@X05──@X08─@X0D─@X08─────────────────────────────────────────────────@X0A─@X08─@X02──@X08──@X02─@X0A─@X08──@X08"
PrintLn
:LABEL005
INTEGER012 = 1
INTEGER013 = 1
DispFile PPEPath() + "disclaim.txt", 1
PrintLn "@X08─@X05─@X08─@X05──@X08───@X05─@X08───────@X05──@X08─@X0D─@X08─────────────────────────────────────────────────@X0A─@X08─@X02──@X08──@X02─@X0A─@X08──@X08"
PrintLn
:LABEL006
STRING044 = ""
PrintLn STRING036
PrintLn STRING037
InputStr "@X09Response:_", STRING044, 13, 3, "YESYUPVNNO", 256 + 8
If (STRING044 == "V") Then
Goto LABEL005
Endif
If (STRING044 == "YES") Then
Goto LABEL008
Endif
If (STRING044 == "YUP") Then
Goto LABEL008
Endif
If ((STRING044 == "NO") || (STRING044 == "N")) Then
Goto LABEL007
Endif
INTEGER012 = INTEGER012 + 1
If (INTEGER012 == 4) Then
Goto LABEL007
Endif
Goto LABEL006
:LABEL007
PrintLn
PrintLn
PrintLn "@X0AAccess @X02Denied @X05- @X08Failure to comply with disclaimer."
PrintLn
Hangup
:LABEL008
If (INTEGER008 == 0) Then
Goto LABEL009
Endif
INTEGER009 = Random(INTEGER008)
STRING024 = "welcome.an" + String(INTEGER009)
If ((INTEGER009 == 1) || (INTEGER009 == 0)) Then
STRING024 = "welcome.ans"
Endif
If (Exist(PPEPath() + STRING024)) Then
DispFile PPEPath() + STRING024, 1
Endif
:LABEL009
Cls
If ((STRING022 == "U") || (STRING022 == "u")) Then
Cls
PrintLn "@X09Trying @X0D" + STRING023 + " @X09(198.69.666.111)..."
PrintLn
PrintLn "@X09Escape Character is ""^["" "
PrintLn
PrintLn "@X09SunOS UNIX (" + STRING023 + ")"
PrintLn
PrintLn "@X09Login: anonymous"
PrintLn
PrintLn "@X09331 Guest login ok, type your name as password."
PrintLn
PrintLn "@X09Password:"
PrintLn
PrintLn "@X09230 Guest login ok, access restrictions apply."
PrintLn "@X09SunOS auto-login script executed at @X0D", Time()
PrintLn
Goto LABEL013
Else
Cls
PrintLn
PrintLn
PrintLn "@X05CHAoS os/2 @X09PC-Compatible DOS "
PrintLn "@X09Version 1.oO by Charlie X [SCuM]"
PrintLn "@X09(C) CopyNight @X051994 @X09Scum PPE Division"
PrintLn
Goto LABEL011
Endif
:LABEL010
If ((STRING022 == "U") || (STRING022 == "u")) Then
Goto LABEL012
Endif
PrintLn
PrintLn "@X09 Volume in drive D has no label"
PrintLn "@X09 Volume Serial Number is 1AA8-3001"
PrintLn "@X09 Directory of @X05D:\PCB\LOGIN\NODE@NODE@"
PrintLn
PrintLn "@X09. <DIR> 12-04-92 10:34p"
PrintLn "@X09.. <DIR> 03-13-93 7:02p"
PrintLn "@X09WAREZ <DIR> 04-03-93 9:35p"
PrintLn "@X09LOGIN EXE 8,732 03-16-94 11:49p"
PrintLn "@X09APPLY COM 4,534 04-11-94 11:52p"
PrintLn "@X09HANGUP BAT 1,080 04-11-94 11:52p"
PrintLn "@X09CHECK EXE 7,593 03-22-94 8:01p"
PrintLn "@X09VERSION EXE 4,669 03-22-94 11:14p"
PrintLn "@X09SYSOP COM 1,126 04-11-94 10:23p"
PrintLn "@X05 6 file(s) 27,734 bytes"
PrintLn "@X05 687,184,384 bytes free"
:LABEL011
INTEGER002 = 0
INTEGER003 = 0
INTEGER004 = 0
STRING008 = ""
STRING014 = ""
If (STRING022 == "U") Then
Goto LABEL012
Endif
If (INTEGER007 == INTEGER006) Then
Goto LABEL025
Endif
INTEGER007 = INTEGER007 + 1
Print STRING025
InputStr "_", STRING002, STRING043, 25, Mask_Ascii(), 1024 + 8 + 256
If (STRING002 == "CLS") Then
Cls
Goto LABEL011
Endif
If (STRING002 == "DIR") Then
Cls
Goto LABEL010
Endif
If (STRING002 == "?") Then
PrintLn STRING035
Goto LABEL011
Endif
If ((STRING002 == "DIR /W") || (STRING002 == "DIR/W")) Then
Cls
Goto LABEL010
Endif
If (STRING002 == "") Then
Goto LABEL011
Endif
If (STRING002 == "CD WAREZ") Then
Goto LABEL017
Endif
If (STRING002 == "LOGIN") Then
Goto LABEL018
Endif
If (STRING002 == "LOGIN.EXE") Then
Goto LABEL018
Endif
If (STRING002 == "APPLY") Then
Goto LABEL021
Endif
If (STRING002 == "APPLY.COM") Then
Goto LABEL021
Endif
If (STRING002 == "HANGUP") Then
Hangup
Endif
If (STRING002 == "HANGUP.BAT") Then
Hangup
Endif
If (STRING002 == "CHECK") Then
Goto LABEL014
Endif
If (STRING002 == "CHECK.EXE") Then
Goto LABEL014
Endif
If (STRING002 == "VERSION") Then
Goto LABEL027
Endif
If (STRING002 == "VERSION.EXE") Then
Goto LABEL027
Endif
If (STRING002 == "SYSOP") Then
Goto LABEL028
Endif
If (STRING002 == "SYSOP.COM") Then
Goto LABEL028
Endif
If (STRING002 == Chr(13)) Then
Goto LABEL011
Endif
PrintLn "@X09Bad command or filename"
Goto LABEL011
:LABEL012
Cls
PrintLn
PrintLn "@X0D200 @X09PORT command successful."
PrintLn "@X0D150 @X09Opening ASCII mode data connection for '/bin/ls'."
PrintLn "@X09total 8"
PrintLn "@X09d--x--x--x 2 root @X0D0 512 @X09Mar 15 17:26 ."
PrintLn "@X09d--x--x--x 2 root @X0D0 512 @X09Jan 30 14:33 warez"
PrintLn "@X09-rwxrwxrwx 4 root @X0D0 8,732 @X09May 29 19:49 login.exe"
PrintLn "@X09-rwxrwxrwx 4 root @X0D0 4,534 @X09May 29 19:49 apply.com"
PrintLn "@X09-rwxrwxrwx 4 root @X0D0 1,080 @X09May 29 19:49 hangup.bat"
PrintLn "@X09-rwxrwxrwx 4 root @X0D0 7,593 @X09May 29 19:49 check.exe"
PrintLn "@X09-rwxrwxrwx 4 root @X0D0 4,469 @X09May 29 19:49 version.exe"
PrintLn "@X09-rwxrwxrwx 4 root @X0D0 1,126 @X09May 29 19:49 sysop.com"
PrintLn "@X0D226 @X09Transfer complete."
PrintLn
:LABEL013
If (INTEGER007 == INTEGER006) Then
Goto LABEL025
Endif
INTEGER007 = INTEGER007 + 1
Print STRING026, INTEGER007, STRING027
InputStr "_", STRING002, STRING043, 25, Mask_Ascii(), 1024 + 8 + 256
If (STRING002 == "CLS") Then
Cls
Goto LABEL013
Endif
If (((STRING002 == "LS") || (STRING002 == "LS -A")) || (STRING002 == "LS-A")) Then
Cls
Goto LABEL012
Endif
If (STRING002 == "?") Then
PrintLn STRING028
Goto LABEL012
Endif
If (STRING002 == "DIR") Then
Cls
Goto LABEL012
Endif
If (STRING002 == "") Then
Goto LABEL013
Endif
If (STRING002 == "CD WAREZ") Then
Goto LABEL017
Endif
If (STRING002 == "LOGIN") Then
Goto LABEL018
Endif
If (STRING002 == "LOGIN.EXE") Then
Goto LABEL018
Endif
If (STRING002 == "APPLY") Then
Goto LABEL021
Endif
If (STRING002 == "APPLY.COM") Then
Goto LABEL021
Endif
If (STRING002 == "HANGUP") Then
Hangup
Endif
If (STRING002 == "HANGUP.BAT") Then
Hangup
Endif
If (STRING002 == "CHECK") Then
Goto LABEL014
Endif
If (STRING002 == "CHECK.EXE") Then
Goto LABEL014
Endif
If (STRING002 == "VERSION") Then
Goto LABEL027
Endif
If (STRING002 == "VERSION.EXE") Then
Goto LABEL027
Endif
If (STRING002 == "SYSOP") Then
Goto LABEL028
Endif
If (STRING002 == "SYSOP.COM") Then
Goto LABEL028
Endif
If (STRING002 == Chr(13)) Then
Goto LABEL013
Endif
PrintLn "210 Invalid command syntax."
Goto LABEL013
:LABEL014
Cls
PrintLn
PrintLn "@X05CHECK.EXE @X09- By Charlie X [SCuM]"
PrintLn "@X09CopyNight (C) 1994 Scum PPE Division"
PrintLn
PrintLn "@X09 Please enter your handle and your password."
PrintLn "@X09 You will be given the system password if you"
PrintLn "@X09 are worthy..."
PrintLn
InputStr "@X0DHandle »_", STRING003, STRING043, 25, Mask_Ascii(), 1024 + 256 + 128 + 8
INTEGER001 = U_RecNum(STRING003)
If (INTEGER001 == -1) Then
PrintLn "@X08────────────────────────────────────────────"
PrintLn "@X05Sorry. Handle does is not in the userfile. "
PrintLn "@X05You must have been deleted or need to apply."
PrintLn "@X08────────────────────────────────────────────"
PrintLn
Goto LABEL011
Endif
:LABEL015
GetAltUser INTEGER001
STRING010 = U_City
If (INTEGER002 == 3) Then
PrintLn
Goto LABEL011
Endif
InputStr "@X0DPassword »_", STRING007, STRING043, 25, Mask_Ascii(), 1024 + 256 + 128 + 1 + 8
STRING009 = U_Pwd
If (STRING009 == STRING007) Then
Goto LABEL016
Else
PrintLn "@X05WRONG!"
INTEGER002 = INTEGER002 + 1
Goto LABEL015
Endif
:LABEL016
If (U_Sec > INTEGER005) Then
PrintLn "@X08────────────────────────────────────────────"
PrintLn "@X09 Handle » @X0D", STRING003
PrintLn "@X09Location » @X0D", STRING010
PrintLn "@X09You have been granted access to this system."
PrintLn "@X09The System Password is: @X0D", STRING016
PrintLn "@X08────────────────────────────────────────────"
PrintLn
Goto LABEL011
Else
PrintLn "@X08─────────────────────────────────────────"
PrintLn "@X09 Handle » @X0D", STRING003
PrintLn "@X09Location » @X0D", STRING010
PrintLn "@X09SORRY! You have not yet been validated."
PrintLn "@X09Please check again later..."
PrintLn "@X08─────────────────────────────────────────"
PrintLn
Goto LABEL011
Endif
:LABEL017
PrintLn STRING029
PrintLn STRING030
PrintLn
Goto LABEL011
:LABEL018
Cls
PrintLn
PrintLn "@X05LOGIN.EXE @X09- By Charlie X [SCuM]"
PrintLn "@X09CopyNight (C) 1994 Scum PPE Division"
PrintLn "@X09Login procedure for @BOARDNAME@"
PrintLn
Select Case (STRING015)
Case "N", "NO"
PrintLn "@PAUSE@"
Case "n", "no"
PrintLn "@PAUSE@"
:LABEL019
If (INTEGER003 == 3) Then
PrintLn
PrintLn
Goto LABEL011
Endif
Cls
PrintLn
PrintLn
PrintLn
PrintLn
PrintLn "@X08 @X03┌┬────────────────────────────┬┐"
PrintLn "@X03 ││ @X05Chaos ■ Clearance Password @X03││@X08█"
PrintLn "@X08 @X03││ » ││@X08█"
PrintLn "@X08 @X03└┴────────────────────────────┴┘@X08█"
PrintLn "@X08 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ "
STRING019 = "System Pw:" + STRING016 + " Entered:" + STRING008
Gosub LABEL029
AnsiPos 28, 7
InputStr "_", STRING008, STRING043, 15, Mask_Ascii(), 1024 + 256 + 1 + 8
Case STRING016
AnsiPos 28, 7
PrintLn " "
AnsiPos 28, 7
PrintLn "@X05 Right!"
Case Else
STRING019 = "System Pw:" + STRING016 + " Entered:" + STRING008
Gosub LABEL029
AnsiPos 28, 7
PrintLn " "
AnsiPos 28, 7
PrintLn "@X05 Wrong!"
Delay 18
AnsiPos 28, 7
PrintLn " "
INTEGER003 = INTEGER003 + 1
Goto LABEL019
End Select
Cls
PrintLn
PrintLn
PrintLn
PrintLn
PrintLn "@X08 @X03┌┬────────────────────────────────────┬┐"
PrintLn "@X03 ││ @X05Chaos ■ User Login Procedure @X03││@X08█"
PrintLn "@X08 @X03│╞════════════════════════════════════╡│@X08█"
PrintLn "@X08 @X03││ @X0DAlias @X03» ││@X08█"
PrintLn "@X08 @X03││@X0DLocation @X03» ││@X08█"
PrintLn "@X08 @X03││@X0DPassword @X03» ││@X08█"
PrintLn "@X08 @X03└┴────────────────────────────────────┴┘@X08█"
PrintLn "@X08 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
PrintLn
AnsiPos 35, 8
InputStr "_", STRING003, STRING043, 25, Mask_Ascii(), 1024 + 8
If (STRING003 == "") Then
AnsiPos 35, 8
InputStr "_", STRING003, STRING043, 25, Mask_Ascii(), 1024 + 8
Endif
INTEGER001 = U_RecNum(STRING003)
If (INTEGER001 == -1) Then
AnsiPos 33, 8
PrintLn " "
AnsiPos 33, 8
PrintLn "@X05Invalid UserName!"
Delay 32
Cls
Goto LABEL011
Endif
GetAltUser INTEGER001
STRING019 = "Name: " + STRING003 + " Password: " + U_Pwd
Gosub LABEL029
STRING010 = U_City
STRING009 = U_Pwd
AnsiPos 35, 9
PrintLn STRING010
:LABEL020
If (INTEGER002 == 3) Then
PrintLn
PrintLn
Goto LABEL011
Endif
AnsiPos 35, 10
InputStr "_", STRING007, STRING043, 15, Mask_Ascii(), 1024 + 1 + 8
If (STRING007 == STRING009) Then
If (U_Sec < INTEGER005) Then
AnsiPos 35, 10
PrintLn " "
AnsiPos 35, 10
PrintLn
PrintLn
PrintLn
PrintLn "@X05Doh! Not Validated Yet!"
Delay 32
Cls
Goto LABEL011
Endif
AnsiPos 35, 10
PrintLn " "
AnsiPos 35, 10
PrintLn "@X05-/- Loading System -/-"
Delay 18
Goto LABEL023
Else
AnsiPos 35, 10
PrintLn " "
AnsiPos 35, 10
PrintLn "@X05Password Incorrect!"
Delay 18
AnsiPos 35, 10
PrintLn " "
INTEGER002 = INTEGER002 + 1
Goto LABEL020
Endif
:LABEL021
Cls
PrintLn
PrintLn "@X05APPLY.COM @X09- By Charlie X [SCuM]"
PrintLn "@X09CopyNight (C) 1994 Scum PPE Division"
PrintLn "@X09Application procedure for @BOARDNAME@"
PrintLn
InputYN "@X09Do you wish to apply [@X0DY/N@X09]", STRING017, 0
If (STRING017 == "N") Then
PrintLn
PrintLn STRING031
PrintLn
Goto LABEL011
Endif
:LABEL022
If ((STRING012 == "N") || (STRING012 == "NO")) Then
Goto LABEL026
Endif
If ((STRING012 == "n") || (STRING012 == "no")) Then
Goto LABEL026
Endif
Cls
If (INTEGER004 == 3) Then
Cls
PrintLn
PrintLn
PrintLn
PrintLn
PrintLn "@X08 @X03┌┬────────────────────────────────────┬┐"
PrintLn "@X03 ││ @X05Chaos ■ NUP Failure Message @X03││@X08█"
PrintLn "@X08 @X03│╞════════════════════════════════════╡│@X08█"
PrintLn "@X08 @X03││ @X0DYou must have the NUP to apply. @X03││@X08█"
PrintLn "@X08 @X03││ @X0DType SYSOP to leave a note and you @X03││@X08█"
PrintLn "@X08 @X03││ @X0Dmay be contacted with a valid NUP. @X03││@X08█"
PrintLn "@X08 @X03└┴────────────────────────────────────┴┘@X08█"
PrintLn "@X08 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
PrintLn
PrintLn
PrintLn
PrintLn "@PAUSE@"
STRING019 = ""
Gosub LABEL029
Goto LABEL011
Endif
PrintLn
PrintLn
PrintLn
PrintLn
PrintLn "@X08 @X03┌┬────────────────────────────┬┐"
PrintLn "@X03 ││ @X05Chaos ■ New Lamer Password @X03││@X08█"
PrintLn "@X08 @X03││ » ││@X08█"
PrintLn "@X08 @X03└┴────────────────────────────┴┘@X08█"
PrintLn "@X08 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ "
STRING019 = "NUP: " + STRING013 + " Entered: " + STRING014
Gosub LABEL029
AnsiPos 28, 7
InputStr "_", STRING014, STRING043, 25, Mask_Ascii(), 1024 + 1 + 8
If (STRING014 == STRING013) Then
Goto LABEL026
Else
INTEGER004 = INTEGER004 + 1
AnsiPos 28, 7
PrintLn " "
AnsiPos 28, 7
PrintLn "@X05Wrong!"
Delay 12
Goto LABEL022
Endif
PrintLn
Goto LABEL011
:LABEL023
STRING020 = ""
STRING019 = ""
Gosub LABEL029
If ((U_Sec == 110) && Exist(PPEPath() + "SYSOP.TXT")) Then
PrintLn
PrintLn
PrintLn
PrintLn
PrintLn
PrintLn "@X09There is new user mail to the sysop."
InputYN "@X09Read Matrix Mail ", STRING020, 0
If (STRING020 == "Y") Then
PrintLn
DispFile PPEPath() + "SYSOP.TXT", 1
PrintLn "-/\/- EOF -\/\-"
PrintLn
InputYN "@X09Delete Matrix Mail", STRING021, 0
If (STRING021 == "Y") Then
Delete PPEPath() + "sysop.txt"
PrintLn
PrintLn "@X09Mail Hosed."
Endif
Goto LABEL024
Endif
PrintLn
PrintLn "@X09Screw the lamers then..."
Endif
:LABEL024
PrintLn
PrintLn
PrintLn
INTEGER001 = InStr(STRING003, Chr(32))
If (INTEGER001 == 0) Then
KbdStuff STRING003 + STRING001 + STRING001 + STRING009 + STRING001
Else
KbdStuff STRING003 + STRING001 + STRING009 + STRING001
Endif
PrintLn "@PON@"
Goto LABEL030
:LABEL025
PrintLn STRING032
Hangup
End
:LABEL026
STRING019 = ""
Gosub LABEL029
AnsiPos 28, 7
PrintLn "@X09Log in as new user..."
PrintLn
PrintLn
PrintLn
PrintLn
End
:LABEL027
Cls
PrintLn "@X05CHAoS OS/2 @X09PC-Compatible DOS"
PrintLn "@X09Version 1.oO by Charlie X [SCuM]"
PrintLn "@X09(C) CopyNight @X051994 @X09Scum PPE Division"
PrintLn
PrintLn "@X08 ────────────────────────────────────"
PrintLn "@X09 Complete Code by @X05Charlie X [SCuM]"
PrintLn "@X09 Compiled in PCBoard PPLC 2.0"
PrintLn "@X09 Registered to: @X0D@BOARDNAME@"
PrintLn "@X08 ────────────────────────────────────"
PrintLn
PrintLn "@X09 Greets to: Liquidator"
PrintLn "@X09 Kurt Cobain (You're Dead)"
PrintLn "@X09 Nyquil (zzzz...)"
PrintLn
PrintLn
Goto LABEL011
:LABEL028
PrintLn "@X05SYSOP.EXE @X09- (C) 1994 Scum PPE Division"
PrintLn "@X09Matrix comment to SysOp procedure"
InputYN "@X09Do you wish to leave a messy [@X0DY/N@X09]", STRING018, 0
If (STRING018 == "N") Then
PrintLn
PrintLn STRING033
PrintLn "@PAUSE@"
PrintLn
Goto LABEL011
Endif
PrintLn
InputStr "@X09Handle »_", STRING003, STRING043, 25, Mask_Ascii(), 1024 + 8 + 256
InputStr "@X09 Title »_", STRING006, STRING043, 25, Mask_Ascii(), 1024 + 8 + 256 + 128
PrintLn
PrintLn "@X09Please write your message using @X055 @X09lines maximum and up to @X0575@X09 chars"
PrintLn "@X09per line... Be sure to include all important info so you don't get overlooked"
PrintLn "@X09and can be contacted if necessary... Hit [εNTεR] on extra lines..."
PrintLn "@X08───────────────────────────────────────────────────────────────────────────────"
InputStr "@X091»_", STRING045, STRING043, 75, Mask_Ascii(), 16 + 256 + 512
InputStr "@X092»_", STRING046, STRING043, 75, Mask_Ascii(), 16 + 256 + 512
InputStr "@X093»_", STRING047, STRING043, 75, Mask_Ascii(), 16 + 256 + 512
InputStr "@X094»_", STRING048, STRING043, 75, Mask_Ascii(), 16 + 256 + 512
InputStr "@X095»_", STRING049, STRING043, 75, Mask_Ascii(), 256
PrintLn
InputYN "@X09is this what you want [@X0DY/N@X09]", STRING018, 0
If (STRING018 == "N") Then
PrintLn
PrintLn STRING034
PrintLn
Delay 18
PrintLn
Goto LABEL011
Else
FAppend 2, PPEPath() + "sysop.txt", 2, 2
FPutLn 2, "┌───]MATRiX MAiL[──────· ·"
FPutLn 2, "│ FRoM│ " + STRING003
FPutLn 2, "│TiTLε│ " + STRING006
FPutLn 2, "│ DATε│ ", Date()
FPutLn 2, "│ TIMε│ ", Time()
FPutLn 2, "│"
FPutLn 2, "│1│" + STRING045
FPutLn 2, "│2│" + STRING046
FPutLn 2, "│3│" + STRING047
FPutLn 2, "│4│" + STRING048
FPutLn 2, "│5│" + STRING049
FPutLn 2, "╘════[END]═════───· ·"
FPutLn 2, "@PAUSE@" + STRING042
FClose 2
PrintLn
PrintLn "@X09Message to SysOp saved..."
PrintLn
Endif
Goto LABEL011
:LABEL029
INTEGER010 = GetX()
INTEGER011 = GetY()
SPrint STRING040, STRING041
SPrint STRING019
SPrint STRING039 + String(INTEGER011) + ";" + String(INTEGER010) + "H"
Return
:LABEL030
ShowOn
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 3 End
; 20 Cls
; 169 Goto
; 61 Let
; 2 Print
; 246 PrintLn
; 78 If
; 3 DispFile
; 2 FOpen
; 1 FAppend
; 3 FClose
; 23 FGet
; 13 FPutLn
; 7 Hangup
; 1 Delete
; 2 Log
; 17 InputStr
; 5 InputYN
; 7 Gosub
; 1 Return
; 7 Delay
; 2 KbdStuff
; 23 AnsiPos
; 3 SPrint
; 1 ShowOn
; 2 GetAltUser
;
;
; ■ Functions used :
;
; 2 -
; 92 +
; 85 ==
; 1 <
; 1 >
; 78 !
; 1 &&
; 12 ||
; 8 Chr()
; 1 InStr()
; 1 Random()
; 1 Date()
; 2 Time()
; 3 String()
; 16 Mask_Ascii()
; 2 PCBDat()
; 11 PPEPath()
; 2 ReadLine()
; 4 Exist()
; 1 GetX()
; 1 GetY()
; 2 U_RecNum()
;
;------------------------------------------------------------------------------
;
; Analysis flags : RBdH
;
; R - Read user ■ 5
; User records are read, this may signify that someone wants to get
; various informations about a user (for example his password), but
; this may also be normal for a program accessing user records (for
; example a User Editor)
; ■ Search for : GETALTUSER
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
; 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()
;
; H - Read Password or Password History ■ 5
; Program is reading the user's password or last password history
; This may be ok for a password manager, but it is very suspect. Check!
; ■ Search for : U_PWDHIST, U_PWD
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 73 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------