home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
S
/
SEXSCHAT.ZIP
/
CSSC.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1995-01-11
|
24KB
|
1,176 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 INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
Integer INTEGER014
Integer INTEGER015
String STRING010
String TSTRING011(4)
String STRING012
String TSTRING013(5)
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 TSTRING045(25)
String TSTRING046(25)
String STRING047
String STRING048
String STRING049
String STRING050
String TSTRING051(25)
String STRING052
String STRING053
String STRING054
;------------------------------------------------------------------------------
TSTRING011(1) = Chr(67)
TSTRING011(2) = Chr(83)
TSTRING011(3) = TSTRING011(2)
TSTRING011(4) = TSTRING011(1)
TSTRING013(1) = Chr(118)
TSTRING013(2) = Chr(50)
TSTRING013(3) = Chr(46)
TSTRING013(4) = TSTRING013(2)
TSTRING013(5) = Chr(48)
STRING010 = TSTRING011(1) + TSTRING011(2) + TSTRING011(3) + TSTRING011(4)
STRING012 = TSTRING013(1) + TSTRING013(2) + TSTRING013(3) + TSTRING013(4) + TSTRING013(5)
INTEGER006 = MinLeft()
INTEGER007 = INTEGER006
STRING026 = Mixed(U_Name())
STRING032 = PPEPath() + STRING010 + "." + "D" + "A" + "T"
STRING033 = "System Operator"
STRING052 = Chr(77) + Chr(105) + Chr(100) + Chr(110) + Chr(105) + Chr(103) + Chr(104) + Chr(116) + Space(1) + Chr(83) + Chr(108) + Chr(97) + Chr(115) + Chr(104) + Chr(101) + Chr(114)
STRING035 = "@" + "X" + "0" + "8"
STRING037 = "@" + "X" + "0" + "F"
STRING041 = "@" + "X" + "0" + "7"
If (Exist(STRING032)) Then
FOpen 1, STRING032, 0, 2
FGet 1, STRING033
FGet 1, INTEGER013
FGet 1, INTEGER014
FGet 1, INTEGER015
FClose 1
If ((INTEGER013 >= 1) && (INTEGER013 <= 9)) Then
STRING037 = "@" + "X" + "0" + String(INTEGER013)
Goto LABEL001
Endif
If (INTEGER013 == 10) Then
STRING037 = "@" + "X" + "0" + "A"
Goto LABEL001
Endif
If (INTEGER013 == 11) Then
STRING037 = "@" + "X" + "0" + "B"
Goto LABEL001
Endif
If (INTEGER013 == 12) Then
STRING037 = "@" + "X" + "0" + "C"
Goto LABEL001
Endif
If (INTEGER013 == 13) Then
STRING037 = "@" + "X" + "0" + "D"
Goto LABEL001
Endif
If (INTEGER013 == 14) Then
STRING037 = "@" + "X" + "0" + "E"
Goto LABEL001
Endif
If (INTEGER013 == 15) Then
STRING037 = "@" + "X" + "0" + "F"
Endif
:LABEL001
If ((INTEGER014 >= 1) && (INTEGER014 <= 9)) Then
STRING041 = "@" + "X" + "0" + String(INTEGER014)
Goto LABEL002
Endif
If (INTEGER014 == 10) Then
STRING041 = "@" + "X" + "0" + "A"
Goto LABEL002
Endif
If (INTEGER014 == 11) Then
STRING041 = "@" + "X" + "0" + "B"
Goto LABEL002
Endif
If (INTEGER014 == 12) Then
STRING041 = "@" + "X" + "0" + "C"
Goto LABEL002
Endif
If (INTEGER014 == 13) Then
STRING041 = "@" + "X" + "0" + "D"
Goto LABEL002
Endif
If (INTEGER014 == 14) Then
STRING041 = "@" + "X" + "0" + "E"
Goto LABEL002
Endif
If (INTEGER014 == 15) Then
STRING041 = "@" + "X" + "0" + "F"
Endif
:LABEL002
If ((INTEGER015 >= 1) && (INTEGER015 <= 9)) Then
STRING035 = "@" + "X" + "0" + String(INTEGER015)
Goto LABEL003
Endif
If (INTEGER015 == 10) Then
STRING035 = "@" + "X" + "0" + "A"
Goto LABEL003
Endif
If (INTEGER015 == 11) Then
STRING035 = "@" + "X" + "0" + "B"
Goto LABEL003
Endif
If (INTEGER015 == 12) Then
STRING035 = "@" + "X" + "0" + "C"
Goto LABEL003
Endif
If (INTEGER015 == 13) Then
STRING035 = "@" + "X" + "0" + "D"
Goto LABEL003
Endif
If (INTEGER015 == 14) Then
STRING035 = "@" + "X" + "0" + "E"
Goto LABEL003
Endif
If (INTEGER015 == 15) Then
STRING035 = "@" + "X" + "0" + "F"
Endif
Endif
:LABEL003
STRING034 = Len(STRING033)
Log "
" + STRING010 + " " + STRING012 + " " + "
" + "[" + "O" + "p" + "e" + "n" + "e" + "d: " + Left(Time(), 5) + "]", 0
Cls
StartDisp 1
Gosub LABEL034
STRING039 = 0
STRING040 = 6
STRING043 = 0
STRING044 = 15
:LABEL004
While (STRING038 <> Chr(27)) Do
STRING038 = ""
STRING042 = ""
STRING038 = KInkey()
STRING042 = MInkey()
If (STRING038 <> "") Gosub LABEL005
If (STRING042 <> "") Gosub LABEL012
If (Abort()) ResetDisp
EndWhile
Goto LABEL035
:LABEL005
If ((STRING040 == 13) && (STRING039 == 79)) Then
If (STRING038 == Chr(13)) Goto LABEL011
STRING047 = ScrText(79, 13, 1, 0)
If (Left(STRING047, 1) == " ") Then
Gosub LABEL021
Goto LABEL008
Endif
For INTEGER010 = 1 To 79
INTEGER011 = 80 - INTEGER010
STRING047 = ScrText(INTEGER011, 13, INTEGER010, 0)
If (Left(STRING047, 1) == " ") Goto LABEL006
Next
Goto LABEL007
:LABEL006
AnsiPos INTEGER011, 13
Print Space(INTEGER010)
Gosub LABEL021
STRING048 = STRING047
Print STRING037 + LTrim(STRING048, " ")
STRING039 = INTEGER010 - 1
ClrEol
Goto LABEL008
:LABEL007
Gosub LABEL021
Endif
:LABEL008
If (STRING039 == 79) Then
If (STRING038 == Chr(13)) Goto LABEL011
STRING047 = ScrText(79, GetY(), 1, 0)
If (Left(STRING047, 1) == " ") Then
STRING039 = 0
STRING040 = STRING040 + 1
Goto LABEL011
Endif
For INTEGER010 = 1 To 79
INTEGER011 = 80 - INTEGER010
STRING047 = ScrText(INTEGER011, GetY(), INTEGER010, 0)
If (Left(STRING047, 1) == " ") Goto LABEL009
Next
Goto LABEL010
:LABEL009
AnsiPos INTEGER011, GetY()
Print Space(INTEGER011)
STRING039 = 0
STRING040 = STRING040 + 1
STRING048 = STRING047
AnsiPos 1, STRING040
Print LTrim(STRING048, " ")
STRING039 = INTEGER010 - 1
Goto LABEL011
:LABEL010
STRING039 = 0
STRING040 = STRING040 + 1
Endif
:LABEL011
Select Case (STRING038)
Case Chr(13)
If (STRING040 >= 13) Then
Gosub LABEL021
ElseIf (STRING039 == 80) Then
STRING040 = STRING040 + 1
STRING039 = 0
AnsiPos STRING039, STRING040
Else
STRING040 = STRING040 + 1
STRING039 = 0
AnsiPos STRING039, STRING040
Endif
Case Chr(8), Chr(127)
If (STRING039 <> 0) Then
STRING039 = STRING039 + 1
AnsiPos STRING039, STRING040
Print Chr(8) + " " + Chr(8)
STRING039 = STRING039 - 2
Endif
Case "AL" + "T Q"
Gosub LABEL034
Case "AL" + "T E"
Goto LABEL022
Case "AL" + "T W"
For INTEGER010 = 6 To 13
AnsiPos 1, INTEGER010
ClrEol
Next
STRING039 = 0
STRING040 = 6
AnsiPos 1, 6
Case 0
STRING039 = STRING039 + 1
AnsiPos STRING039, STRING040
Print STRING037 + STRING038
End Select
Return
:LABEL012
If ((STRING044 == 22) && (STRING043 == 79)) Then
If (STRING042 == Chr(13)) Goto LABEL018
STRING049 = ScrText(79, 22, 1, 0)
If (Left(STRING049, 1) == " ") Then
Gosub LABEL020
Goto LABEL015
Endif
For INTEGER010 = 1 To 79
INTEGER011 = 80 - INTEGER010
STRING049 = ScrText(INTEGER011, 22, INTEGER010, 0)
If (Left(STRING049, 1) == " ") Goto LABEL013
Next
Goto LABEL014
:LABEL013
AnsiPos INTEGER011, 22
Print Space(INTEGER010)
Gosub LABEL020
STRING050 = STRING049
Print STRING041 + LTrim(STRING050, " ")
STRING043 = INTEGER010 - 1
ClrEol
Goto LABEL015
:LABEL014
Gosub LABEL020
Endif
:LABEL015
If (STRING043 == 79) Then
If (STRING042 == Chr(13)) Goto LABEL018
STRING049 = ScrText(79, GetY(), 1, 0)
If (Left(STRING049, 1) == " ") Then
STRING043 = 0
STRING044 = STRING044 + 1
Goto LABEL018
Endif
For INTEGER010 = 1 To 79
INTEGER011 = 80 - INTEGER010
STRING049 = ScrText(INTEGER011, GetY(), INTEGER010, 0)
If (Left(STRING049, 1) == " ") Goto LABEL016
Next
Goto LABEL017
:LABEL016
AnsiPos INTEGER011, GetY()
Print Space(INTEGER011)
STRING043 = 0
STRING044 = STRING044 + 1
STRING050 = STRING049
AnsiPos 1, STRING044
Print LTrim(STRING050, " ")
STRING043 = INTEGER010 - 1
Goto LABEL018
:LABEL017
STRING043 = 0
STRING044 = STRING044 + 1
Endif
:LABEL018
Select Case (STRING042)
Case Chr(13)
If (STRING044 >= 22) Then
Gosub LABEL020
ElseIf (STRING043 == 80) Then
STRING044 = STRING044 + 1
STRING043 = 0
AnsiPos STRING043, STRING044
Else
STRING044 = STRING044 + 1
STRING043 = 0
AnsiPos STRING043, STRING044
Endif
Case Chr(8), Chr(127)
If (STRING043 <> 0) Then
STRING043 = STRING043 + 1
AnsiPos STRING043, STRING044
Print Chr(8) + " " + Chr(8)
STRING043 = STRING043 - 2
Endif
Case "AL" + "T E"
AnsiPos 1, 4
Print STRING035 + "----------------Only fer SysOp------------------- " + STRING035 + " ------Editin'----------- " + STRING035 + " --D"
Delay 25
AnsiPos 1, 4
Print STRING035 + "----------------------------------------------------------------- Chattin' " + STRING035 + " --D"
Case "AL" + "T Q"
Gosub LABEL034
Case "AL" + "T W"
For INTEGER010 = 15 To 22
AnsiPos 1, INTEGER010
ClrEol
Next
STRING043 = 0
STRING044 = 15
AnsiPos 1, 15
Case Chr(27)
Goto LABEL035
If (Left(STRING042, 1) == "") Then
Goto LABEL019
Endif
Case 0
STRING043 = STRING043 + 1
AnsiPos STRING043, STRING044
Print STRING041 + STRING042
End Select
:LABEL019
Return
:LABEL020
TSTRING046(15) = ScrText(1, 20, 80, 0)
TSTRING046(16) = ScrText(1, 21, 80, 0)
TSTRING046(17) = ScrText(1, 22, 80, 0)
INTEGER005 = 17
If (TSTRING046(17) == Space(80)) Then
If (TSTRING046(16) == Space(80)) Then
Select Case (TSTRING046(15))
Case Space(80)
INTEGER005 = 14
TSTRING046(15) = ScrText(1, 20, 80, 1)
INTEGER005 = 15
Else
Case Space(80)
TSTRING046(15) = ScrText(1, 21, 80, 1)
TSTRING046(16) = ScrText(1, 22, 80, 1)
INTEGER005 = 16
TSTRING046(15) = ScrText(1, 20, 80, 1)
TSTRING046(16) = ScrText(1, 21, 80, 1)
TSTRING046(17) = ScrText(1, 22, 80, 1)
INTEGER005 = 17
Else
Case Space(80)
Case Space(80)
TSTRING046(15) = ScrText(1, 22, 80, 1)
INTEGER005 = 15
Case Else
TSTRING046(15) = ScrText(1, 21, 80, 1)
TSTRING046(16) = ScrText(1, 22, 80, 1)
INTEGER005 = 16
TSTRING046(15) = ScrText(1, 20, 80, 1)
TSTRING046(16) = ScrText(1, 21, 80, 1)
TSTRING046(17) = ScrText(1, 22, 80, 1)
Endif
Endif
End Select
For INTEGER012 = 15 To INTEGER005
AnsiPos 1, INTEGER012
PrintLn TSTRING046(INTEGER012)
Next
For INTEGER012 = INTEGER005 + 1 To 22
AnsiPos 1, INTEGER012
ClrEol
Next
STRING043 = 0
STRING044 = INTEGER005 + 1
AnsiPos 1, INTEGER005 + 1
Return
:LABEL021
TSTRING045(6) = ScrText(1, 11, 80, 0)
TSTRING045(7) = ScrText(1, 12, 80, 0)
TSTRING045(8) = ScrText(1, 13, 80, 0)
INTEGER004 = 8
If (TSTRING045(8) == Space(80)) Then
If (TSTRING045(7) == Space(80)) Then
Select Case (TSTRING045(6))
Case Space(80)
INTEGER004 = 5
TSTRING045(6) = ScrText(1, 11, 80, 1)
INTEGER004 = 6
Else
Case Space(80)
TSTRING045(6) = ScrText(1, 12, 80, 1)
TSTRING045(7) = ScrText(1, 13, 80, 1)
INTEGER004 = 7
TSTRING045(6) = ScrText(1, 11, 80, 1)
TSTRING045(7) = ScrText(1, 12, 80, 1)
TSTRING045(8) = ScrText(1, 13, 80, 1)
INTEGER004 = 8
Else
Case Space(80)
Case Space(80)
TSTRING045(6) = ScrText(1, 13, 80, 1)
INTEGER004 = 6
Case Else
TSTRING045(6) = ScrText(1, 12, 80, 1)
TSTRING045(7) = ScrText(1, 13, 80, 1)
INTEGER004 = 7
TSTRING045(6) = ScrText(1, 11, 80, 1)
TSTRING045(7) = ScrText(1, 12, 80, 1)
TSTRING045(8) = ScrText(1, 13, 80, 1)
Endif
Endif
End Select
For INTEGER012 = 6 To INTEGER004
AnsiPos 1, INTEGER012
PrintLn TSTRING045(INTEGER012)
Next
For INTEGER012 = INTEGER004 + 1 To 13
AnsiPos 1, INTEGER012
ClrEol
Next
STRING039 = 0
STRING040 = INTEGER004 + 1
AnsiPos 1, INTEGER004 + 1
Return
:LABEL022
Log "
" + STRING010 + " " + STRING012 + " " + "
" + "[" + ">U" + "s" + "er" + " " + "E" + "di" + "to" + "r<" + "]", 0
GetUser
STRING053 = U_Name()
AnsiPos 1, 4
Print "@X02+@X07-----------------@X02+ @X03Hold a sec. SysOp iz editin' yer shit. @X02+@X07------------------@X02+"
TSTRING051(6) = ScrText(1, 6, 80, 1)
TSTRING051(7) = ScrText(1, 7, 80, 1)
TSTRING051(8) = ScrText(1, 8, 80, 1)
TSTRING051(9) = ScrText(1, 9, 80, 1)
TSTRING051(10) = ScrText(1, 10, 80, 1)
TSTRING051(11) = ScrText(1, 11, 80, 1)
TSTRING051(12) = ScrText(1, 12, 80, 1)
TSTRING051(13) = ScrText(1, 13, 80, 1)
TSTRING051(14) = ScrText(1, 14, 80, 1)
TSTRING051(15) = ScrText(1, 15, 80, 1)
TSTRING051(16) = ScrText(1, 16, 80, 1)
TSTRING051(17) = ScrText(1, 17, 80, 1)
TSTRING051(18) = ScrText(1, 18, 80, 1)
TSTRING051(19) = ScrText(1, 19, 80, 1)
TSTRING051(20) = ScrText(1, 20, 80, 1)
TSTRING051(21) = ScrText(1, 21, 80, 1)
TSTRING051(22) = ScrText(1, 22, 80, 1)
SPrint "H"
SPrintLn "▐
╔═══════════════════════════════════════════════════════════════════════════
╗
▌"
SPrintLn "▐
║
[ESC]=Exit User Editor ║
▌"
SPrintLn "▐
╟───────────────────┬──────────────────────────┬────────────────────────────
╢
▌"
SPrintLn "▐
║
[
A
]
Security
:
│
[
H
]
Exp. Date
:
│
[O]
UL (Files)
:
║
▌"
SPrintLn "▐
║
[
B
]
Exp. Sec
:
│
[I]
Last Date
:
│
[P]
UL (Bytes)
:
║
▌"
SPrintLn "▐
║
[
C
]
Page Len
:
│
[J]
Last DIR
:
│
[
Q
]
DL (Files)
:
║
▌"
SPrintLn "▐
║
[
D
]
Protocol
:
│
[K]
Total Call
:
│
[
R
]
DL (Bytes)
:
║
▌"
SPrintLn "▐
║
[
E
]
Msg Clr.
:
│
[
L
]
FSE Editor
:
│
[
S
]
DL (Today)
:
║
▌"
SPrintLn "▐
║
[
F
]
Msg Scrl
:
│
[
M
]
FSE Prompt
:
│
[T]
MSGs Left
:
║
▌"
SPrintLn "▐
║
[
G
]
Expert
:
│
[
N
]
Msg Header
:
│
[U]
MSGs Read
:
║
▌"
SPrintLn "▐
╟───────────────────┴────────────┬─────────────┴────────────────────────────
╢
▌"
SPrintLn "▐
║
[
V
]
H/V Phone
:
│
[
Y
]
City
:
║
▌"
SPrintLn "▐
║
[
W
]
B/D Phone
:
│
[
Z
]
C #1
:
║
▌"
SPrintLn "▐
║
[
X
]
Password
:
│
[
!
]
C #2
:
║
▌"
SPrintLn "▐
╟────────────────────────────────┤
[
@
]
Alias-PSA
:
║
▌"
SPrintLn "▐
║
▌
D─ D = Jump 1
│
PGUP/DN = Jump 10
▐
│
[
#
]
VerifyPSA
:
║
▌"
SPrintLn "▐
╚
════════════════════════════════╧══════════════════════════════════════════╝
▌
"
Gosub LABEL036
STRING036 = ""
While (STRING036 <> Chr(27)) Do
STRING036 = ""
STRING036 = KInkey()
If (STRING036 <> "") Gosub LABEL023
If (Abort()) ResetDisp
EndWhile
Goto LABEL032
:LABEL023
STRING027 = ""
STRING028 = ""
Select Case (Upper(STRING036))
Case "PGUP"
GetAltUser U_RecNum(U_Name()) + 10
If (CurUser() == -1) Then
GetAltUser 1
Endif
Gosub LABEL036
Case "PGDN"
If (U_RecNum(U_Name()) == 1) Then
Goto LABEL024
Endif
If (U_RecNum(U_Name()) <= 10) Then
GetAltUser 1
Gosub LABEL036
Else
GetAltUser U_RecNum(U_Name()) - 10
Gosub LABEL036
Endif
:LABEL024
Case "LEFT"
If (U_RecNum(U_Name()) == 1) Then
Goto LABEL025
Endif
GetAltUser U_RecNum(U_Name()) - 1
Gosub LABEL036
:LABEL025
Case "RIGHT"
GetAltUser U_RecNum(U_Name()) + 1
If (CurUser() == -1) Then
GetAltUser 1
Endif
Gosub LABEL036
Case "A"
SPrint "8H" + Space(3) + "D"
INTEGER009 = 3
STRING014 = Mask_Num()
Gosub LABEL033
If (STRING028 <> "") Then
U_Sec = Upper(STRING028)
PutUser
Endif
SPrint "8H
" + Left(String(U_Sec), 3)
SPrint "H"
Case "B"
SPrint "18H" + Space(3) + "D"
INTEGER009 = 3
STRING014 = Mask_Num()
Gosub LABEL033
If (STRING028 <> "") Then
U_ExpSec = Upper(STRING028)
PutUser
Endif
SPrint "18H
" + Left(String(U_ExpSec), 3)
SPrint "H"
Case "C"
SPrint "18H" + Space(2) + "D"
INTEGER009 = 2
STRING014 = Mask_Num()
Gosub LABEL033
If (STRING028 <> "") Then
U_PageLen = Upper(STRING028)
PutUser
Endif
SPrint "18H
" + Left(String(U_PageLen), 2)
SPrint "H"
Case "D"
SPrint "18H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = Mask_AlNum()
Gosub LABEL033
If (STRING028 <> "") Then
U_Trans = Upper(STRING028)
PutUser
Endif
SPrint "18H
" + Left(String(U_Trans), 1)
SPrint "H"
Case "E"
SPrint "18H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = "YyNn"
Gosub LABEL033
If (STRING028 <> "") Then
If (Upper(STRING028) == "N") Then
U_Cls = 0
Goto LABEL026
Endif
U_Cls = 1
:LABEL026
PutUser
Endif
If (U_Cls == 0) Then
STRING017 = "N"
Else
STRING017 = "Y"
Endif
SPrint "18H
" + Left(STRING017, 1)
SPrint "H"
Case "F"
SPrint "18H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = "YyNn"
Gosub LABEL033
If (STRING028 <> "") Then
If (Upper(STRING028) == "N") Then
U_Scroll = 0
Goto LABEL027
Endif
U_Scroll = 1
:LABEL027
PutUser
Endif
If (U_Scroll == 0) Then
STRING018 = "N"
Else
STRING018 = "Y"
Endif
SPrint "18H
" + Left(STRING018, 1)
SPrint "H"
Case "G"
SPrint "18H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = "YyNn"
Gosub LABEL033
If (STRING028 <> "") Then
If (Upper(STRING028) == "N") Then
U_Expert = 0
Goto LABEL028
Endif
U_Expert = 1
:LABEL028
PutUser
Endif
If (U_Expert == 0) Then
STRING019 = "N"
Else
STRING019 = "Y"
Endif
SPrint "18H
" + Left(STRING019, 1)
SPrint "H"
Case "H"
SPrint "0H" + Space(8) + "D"
INTEGER009 = 8
STRING014 = Mask_Num() + "-"
Gosub LABEL033
If (STRING028 <> "") Then
U_ExpDate = Upper(STRING028)
PutUser
Endif
SPrint "0H
" + Left(String(U_ExpDate), 8)
SPrint "H"
Case "L"
SPrint "40H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = "YyNn"
Gosub LABEL033
If (STRING028 <> "") Then
If (Upper(STRING028) == "N") Then
U_FSE = 0
Goto LABEL029
Endif
U_FSE = 1
:LABEL029
PutUser
Endif
If (U_FSE == 0) Then
STRING021 = "N"
Else
STRING021 = "Y"
Endif
SPrint "40H
" + Left(STRING021, 1)
SPrint "H"
Case "M"
SPrint "40H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = "YyNn"
Gosub LABEL033
If (STRING028 <> "") Then
If (Upper(STRING028) == "N") Then
U_FSEP = 0
Goto LABEL030
Endif
U_FSEP = 1
:LABEL030
PutUser
Endif
If (U_FSEP == 0) Then
STRING022 = "N"
Else
STRING022 = "Y"
Endif
SPrint "40H
" + Left(STRING022, 1)
SPrint "H"
Case "N"
SPrint "40H" + Space(1) + "D"
INTEGER009 = 1
STRING014 = "SsLl"
Gosub LABEL033
If (STRING028 <> "") Then
If (Upper(STRING028) == "S") Then
U_LongHDR = 0
Goto LABEL031
Endif
U_LongHDR = 1
:LABEL031
PutUser
Endif
If (U_LongHDR == 0) Then
STRING023 = "S"
Else
STRING023 = "L"
Endif
SPrint "40H
" + Left(STRING023, 1)
SPrint "H"
Case "Q"
SPrint "67H" + Space(5) + "D"
INTEGER009 = 5
STRING014 = Mask_Num() + "-"
STRING030 = U_Fdl()
Gosub LABEL033
If (STRING028 <> "") Then
AdjTFiles Upper(STRING028) - STRING030
PutUser
Endif
SPrint "67H
" + Left(String(U_Fdl()), 5)
SPrint "H"
Case "R"
SPrint "67H" + Space(10) + "D"
INTEGER009 = 10
STRING014 = Mask_Num() + "-"
STRING029 = U_Bdl()
Gosub LABEL033
If (STRING028 <> "") Then
AdjTBytes Upper(STRING028) - STRING029
PutUser
Endif
SPrint "67H
" + Left(String(U_Bdl()), 10)
SPrint "H"
Case "S"
SPrint "67H" + Space(10) + "D"
INTEGER009 = 10
STRING014 = Mask_Num() + "-"
STRING031 = U_BdlDay()
Gosub LABEL033
If (STRING028 <> "") Then
AdjDBytes Upper(STRING028) - STRING031
PutUser
Endif
SPrint "67H
" + Left(String(U_BdlDay()), 10)
SPrint "H"
Case "V"
SPrint "19H" + Space(13) + "D"
INTEGER009 = 13
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_HVPhone = Upper(STRING028)
PutUser
Endif
SPrint "19H
" + Left(String(U_HVPhone), 13)
SPrint "H"
Case "W"
SPrint "19H" + Space(13) + "D"
INTEGER009 = 13
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_BDPhone = Upper(STRING028)
PutUser
Endif
SPrint "19H
" + Left(String(U_BDPhone), 13)
SPrint "H"
Case "X"
SPrint "19H" + Space(12) + "D"
INTEGER009 = 12
STRING014 = Mask_Pwd()
Gosub LABEL033
If (STRING028 <> "") Then
U_Pwd = Upper(STRING028)
PutUser
Endif
SPrint "19H
" + Left(String(U_Pwd), 12)
SPrint "H"
Case "Y"
SPrint "47H" + Space(24) + "D"
INTEGER009 = 24
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_City = Upper(STRING028)
PutUser
Endif
SPrint "47H
" + Left(String(U_City), 24)
SPrint "H"
Case "Z"
SPrint "47H" + Space(30) + "D"
INTEGER009 = 30
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_Cmnt1 = Upper(STRING028)
PutUser
Endif
SPrint "47H
" + Left(String(U_Cmnt1), 30)
SPrint "H"
Case "!"
SPrint "47H" + Space(30) + "D"
INTEGER009 = 30
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_Cmnt2 = Upper(STRING028)
PutUser
Endif
SPrint "47H
" + Left(String(U_Cmnt2), 30)
SPrint "H"
Case "@"
If (Psa(1)) Then
SPrint "52H" + Space(25) + "D"
INTEGER009 = 25
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_Alias = Upper(STRING028)
PutUser
Endif
STRING024 = U_Alias
SPrint "52H
" + Left(STRING024, 25)
SPrint "H"
Endif
Case "#"
Case
SPrint "52H" + Space(25) + "D"
INTEGER009 = 25
STRING014 = Mask_Ascii()
Gosub LABEL033
If (STRING028 <> "") Then
U_Ver = Upper(STRING028)
PutUser
Endif
STRING025 = U_Ver
SPrint "52H
" + Left(STRING025, 25)
SPrint "H"
End Select
Return
:LABEL032
For INTEGER012 = 6 To 22
AnsiPos 1, INTEGER012
Print TSTRING051(INTEGER012)
Next
AnsiPos 1, 4
Print "@X07| @X05 @BOARDNAME:20C@ @X07 |"
Goto LABEL004
:LABEL033
While (STRING027 <> Chr(13)) Do
STRING027 = KInkey()
If ((Upper(STRING027) == Chr(8)) || (Upper(STRING027) == Chr(127))) Then
If (Len(STRING028) <> 0) Then
SPrint Chr(8) + " " + Chr(8)
STRING028 = Left(STRING028, Len(STRING028) - 1)
Endif
ElseIf (InStr(STRING014, STRING027) <> 0) Then
If (Len(STRING028) < INTEGER009) Then
SPrint STRING027
STRING028 = STRING028 + STRING027
Endif
Endif
If (Abort()) ResetDisp
EndWhile
Return
:LABEL034
AnsiPos 1, 23
Print "@X02+@X07-----------------------------------------------------------------------------" + String(Len(U_Name()) + 9) + "D"
Print "@X07-@X02+@X05 " + STRING041 + STRING026 + STRING035 + " @X02+@X07----@X02+"
AnsiPos 1, 14
Print "@X02+@X07-----------------------------------------------------------------------------" + String(STRING034 + 8) + "D"
Print "@X07-@X02+@X05 " + STRING037 + STRING033 + STRING035 + " @X02+@X07----@X02+"
AnsiPos 1, 1
PrintLn "@X02+@X07----------------@X02+ @X13 AMi-X SYSChat SeX '95 · Code by HellRazoR @X07 @X02+@X07--------------@X02+"
PrintLn "@X07| @X04 Time : @SYSTIME:5@ · Date : @SYSDATE:8@ · Yer Time : @TIMELEFT:4@ @X07|"
PrintLn "@X02+@X07-----------------------------------------------------------------------------@X02+"
PrintLn "@X07| @X05 @BOARDNAME:20C@ @X07|"
PrintLn "@X02+@X07-----------------------------------------------------------------------------@X02+"
AnsiPos 79, 4
Return
:LABEL035
Log "
" + STRING010 + " " + STRING012 + "
Closed: " + Left(Time(), 5) + "]", 0
INTEGER008 = MinLeft()
If (INTEGER007 > INTEGER008) Then
AdjTime INTEGER007 - INTEGER008
Endif
DefColor
Cls
Cls
DefColor
StartDisp 2
KbdStuff Chr(27)
End
:LABEL036
If (U_Name() == STRING053) Then
STRING015 = U_MsgRd()
Else
STRING015 = "UNKNOWN"
Endif
If (U_Name() == STRING053) Then
STRING016 = U_MsgWr()
Else
STRING016 = "UNKNOWN"
Endif
If (Psa(1)) Then
STRING024 = U_Alias
Else
STRING024 = "[NOT INSTALLED]"
Endif
If (Psa(2)) Then
STRING025 = U_Ver
Else
STRING025 = "[NOT INSTALLED]"
Endif
If (U_LongHDR == 0) Then
STRING023 = "S"
Else
STRING023 = "L"
Endif
If (U_FSE == 0) Then
STRING021 = "N"
Else
STRING021 = "Y"
Endif
If (U_FSEP == 0) Then
STRING022 = "N"
Else
STRING022 = "Y"
Endif
If (U_Cls == 0) Then
STRING017 = "N"
Else
STRING017 = "Y"
Endif
If (U_Scroll == 0) Then
STRING018 = "N"
Else
STRING018 = "Y"
Endif
If (U_Expert == 0) Then
STRING019 = "N"
Else
STRING019 = "Y"
Endif
If (U_Sec == 0) Then
STRING020 = "Y"
Else
STRING020 = "N"
Endif
SPrint "H
[
" + String(U_RecNum(U_Name())) + "
]
" + Left(String(U_Name()), 25)
SPrint "8H
" + Left(String(U_Sec), 3)
SPrint "18H
" + Left(String(U_ExpSec), 3)
SPrint "18H
" + Left(String(U_PageLen), 2)
SPrint "18H
" + Left(String(U_Trans), 1)
SPrint "18H
" + Left(STRING017, 1)
SPrint "18H
" + Left(STRING018, 1)
SPrint "18H
" + Left(STRING019, 1)
SPrint "0H
" + Left(String(U_ExpDate), 8)
SPrint "40H
" + Left(String(U_LDate()), 8)
SPrint "40H
" + Left(String(U_LDir()), 8)
SPrint "40H
" + Left(String(U_Logons()), 5)
SPrint "40H
" + Left(STRING021, 1)
SPrint "40H
" + Left(STRING022, 1)
SPrint "40H
" + Left(STRING023, 1)
SPrint "7H
" + Left(String(U_Ful()), 5)
SPrint "67H
" + Left(String(U_Bul()), 10)
SPrint "67H
" + Left(String(U_Fdl()), 5)
SPrint "67H
" + Left(String(U_Bdl()), 10)
SPrint "67H
" + Left(String(U_BdlDay()), 10)
SPrint "67H
" + Left(String(STRING015), 10)
SPrint "67H
" + Left(String(STRING016), 10)
SPrint "19H
" + Left(String(U_HVPhone), 13)
SPrint "19H
" + Left(String(U_BDPhone), 13)
SPrint "19H
" + Left(String(U_Pwd), 12)
SPrint "47H
" + Left(String(U_City), 24)
SPrint "47H
" + Left(String(U_Cmnt1), 30)
SPrint "47H
" + Left(String(U_Cmnt2), 30)
SPrint "52H
" + Left(STRING024, 25)
SPrint "52H
" + Left(STRING025, 25)
SPrint "H"
Return
STRING054 = "@POS:50@@X08ßµ @X07[@X08HellRazoR@X07] @X05'95@X07 "
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 3 Cls
; 6 ClrEol
; 296 Goto
; 306 Let
; 21 Print
; 7 PrintLn
; 173 If
; 1 FOpen
; 1 FClose
; 4 FGet
; 3 ResetDisp
; 2 StartDisp
; 1 GetUser
; 22 PutUser
; 2 DefColor
; 1 AdjTime
; 3 Log
; 42 Gosub
; 8 Return
; 1 Delay
; 1 KbdStuff
; 33 AnsiPos
; 100 SPrint
; 17 SPrintLn
; 7 GetAltUser
; 1 AdjDBytes
; 1 AdjTBytes
; 1 AdjTFiles
;
;
; ■ Functions used :
;
; 2 -
; 308 +
; 17 -
; 117 ==
; 34 <>
; 12 <
; 15 <=
; 1 >
; 27 >=
; 159 !
; 27 &&
; 14 ||
; 5 Len(
; 50 Upper()
; 64 Left()
; 39 Space()
; 44 Chr()
; 3 InStr()
; 3 Abort()
; 4 LTrim()
; 2 Time()
; 14 U_Name()
; 1 U_LDate()
; 1 U_LDir()
; 1 U_Logons()
; 1 U_Ful()
; 3 U_Fdl()
; 3 U_BdlDay()
; 3 U_Bdl()
; 1 U_Bul()
; 42 String()
; 1 Mask_Pwd()
; 7 Mask_Num()
; 1 Mask_AlNum()
; 9 Mask_Ascii()
; 1 PPEPath()
; 1 U_MsgRd()
; 1 U_MsgWr()
; 2 MinLeft()
; 1 Exist()
; 6 GetY()
; 4 Psa()
; 3 KInkey()
; 1 MInkey()
; 8 U_RecNum()
; 55 ScrText()
; 1 Mixed()
; 2 CurUser()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WRAaH
;
; 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
;
; 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
;
; A - Adjust online time remaining ■ 5
; Program modify the amount of online time remaining, this may
; be a way to bypass time limits
; ■ Search for : ADJTIME
;
; a - Adjust ratio ■ 4
; User's ratio is adjusted by changing the amount of files/bytes
; uploaded. This may be normal for a user editor.
; ■ Search for : ADJBYTES, ADJDBYTES, ADJTBYTES, ADJTFILES
;
; 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
;
; 11 For/Next
; 3 While/EndWhile
; 97 If/Then or If/Then/Else
; 5 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------