home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Hack-Phreak Scene Programs
/
cleanhpvac.zip
/
cleanhpvac
/
JR-WUI1.ZIP
/
SCUM-WUI.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-09-11
|
7KB
|
542 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 TINTEGER002(2)
Integer TINTEGER003(2)
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
String TSTRING006(10)
String STRING007
String STRING008
String STRING009
String TSTRING010(3)
String STRING011
String STRING012
;------------------------------------------------------------------------------
If (AnsiOn() == 0) Then
Print "@X07@CLS@"
PrintLn "WRiTE-USER-iNFO v1.o does not do a single thing without ANSI !"
Newline
End
Endif
STRING009 = PPEPath() + "SCUM-WUI.CFG"
TSTRING006(1) = " GROUP/AFFiL. "
TSTRING006(2) = " PASSWORD "
TSTRING006(3) = " DATA NUMBER "
TSTRING006(4) = " VOiCE NUMBER "
TSTRING006(5) = " EXPERT MODE TOGGLE "
TSTRING006(6) = " PAGE LENGTH "
TSTRING006(7) = " DEFAULT PROTOCOL "
TSTRING006(8) = " CLEAR SCREEN "
TSTRING006(9) = " FULL SCREEN EDITOR "
TSTRING006(10) = " EXiT PROGRAM "
TINTEGER002(1) = 7
TINTEGER003(1) = 4
INTEGER004 = 10
TSTRING010(1) = "@X07"
TSTRING010(2) = "@X1F"
TSTRING010(3) = "@X09"
INTEGER005 = 1
Gosub LABEL023
StartDisp 1
DispFile PPEPath() + "SCUM-WUI.PCB", 0
GetUser
Gosub LABEL020
Gosub LABEL012
:LABEL001
Gosub LABEL013
If (STRING008 <> "SELECT") Then
Gosub LABEL011
If (STRING008 == Chr(27)) Then
PutUser
ResetDisp
Print "@X07@CLS@"
Newline
Print "@X0F @X09WRiTE@X01-@X09USER@X01-@X09iNFO @X01v@X091@X01.@X09o @X01- @X09Coded by@X01: @X09JoLLY RoGeR@X01/@X09SCuM '94@X07"
Newlines 2
End
Endif
Else
Gosub LABEL002
Endif
Goto LABEL001
ResetDisp
End
:LABEL002
If (INTEGER005 == 1) Then
INTEGER008 = 30
INTEGER009 = 4
INTEGER010 = 24
INTEGER011 = 1
STRING012 = U_City
STRING007 = ""
Gosub LABEL021
Gosub LABEL022
If (STRING007 == "") Then
U_City = STRING012
Goto LABEL003
Endif
U_City = STRING007
:LABEL003
PutUser
Endif
If (INTEGER005 == 2) Then
INTEGER008 = 30
INTEGER009 = 5
INTEGER010 = 12
INTEGER011 = 3
STRING012 = U_Pwd
STRING007 = ""
Gosub LABEL021
Gosub LABEL022
If (STRING007 == "") Then
U_Pwd = STRING012
Goto LABEL004
Endif
U_Pwd = STRING007
:LABEL004
PutUser
Endif
If (INTEGER005 == 3) Then
INTEGER008 = 30
INTEGER009 = 6
INTEGER010 = 13
INTEGER011 = 2
STRING012 = U_BDPhone
STRING007 = ""
Gosub LABEL021
Gosub LABEL022
If (STRING007 == "") Then
U_BDPhone = STRING012
Goto LABEL005
Endif
U_BDPhone = STRING007
:LABEL005
PutUser
Endif
If (INTEGER005 == 4) Then
INTEGER008 = 30
INTEGER009 = 7
INTEGER010 = 13
INTEGER011 = 2
STRING012 = U_HVPhone
STRING007 = ""
Gosub LABEL021
Gosub LABEL022
If (STRING007 == "") Then
U_HVPhone = STRING012
Goto LABEL006
Endif
U_HVPhone = STRING007
:LABEL006
PutUser
Endif
If (INTEGER005 == 5) Then
INTEGER008 = 30
INTEGER009 = 8
If (U_Expert == 1) Then
STRING007 = "OFF"
U_Expert = 0
Goto LABEL007
Endif
STRING007 = "ON "
U_Expert = 1
:LABEL007
Gosub LABEL022
PutUser
Endif
If (INTEGER005 == 6) Then
INTEGER008 = 30
INTEGER009 = 9
INTEGER010 = 2
INTEGER011 = 2
STRING012 = U_PageLen
STRING007 = ""
Gosub LABEL021
Gosub LABEL022
If (STRING007 == "") Then
U_PageLen = STRING012
Goto LABEL008
Endif
U_PageLen = STRING007
:LABEL008
PutUser
Endif
If (INTEGER005 == 7) Then
INTEGER008 = 30
INTEGER009 = 10
INTEGER010 = 1
INTEGER011 = 5
STRING012 = U_Trans
STRING007 = ""
Gosub LABEL021
Gosub LABEL022
If (STRING007 == "") Then
U_Trans = STRING012
Goto LABEL009
Endif
U_Trans = STRING007
:LABEL009
PutUser
Endif
If (INTEGER005 == 8) Then
INTEGER008 = 30
INTEGER009 = 11
INTEGER010 = 2
INTEGER011 = 2
STRING012 = U_PageLen
STRING007 = ""
If (U_Cls == 1) Then
STRING007 = "NO "
U_Cls = 0
Goto LABEL010
Endif
STRING007 = "YES"
U_Cls = 1
:LABEL010
Gosub LABEL022
PutUser
Endif
If (INTEGER005 == 9) Then
INTEGER008 = 30
INTEGER009 = 12
If ((U_FSE == 1) && (U_FSEP == 0)) Then
STRING007 = "ASK"
U_FSE = 0
U_FSEP = 1
Gosub LABEL022
PutUser
Return
Endif
If ((U_FSE == 0) && (U_FSEP == 0)) Then
STRING007 = "YES"
U_FSE = 1
U_FSEP = 0
Gosub LABEL022
PutUser
Return
Endif
If ((U_FSE == 0) && (U_FSEP == 1)) Then
STRING007 = "NO "
U_FSE = 0
U_FSEP = 0
Gosub LABEL022
PutUser
Return
Endif
Endif
If (INTEGER005 == 10) Then
PutUser
ResetDisp
Print "@X07@CLS@"
Newline
Print "@X0F @X09WRiTE@X01-@X09USER@X01-@X09iNFO @X01v@X091@X01.@X09o @X01- @X09Coded by@X01: @X09JoLLY RoGeR@X01/@X09SCuM '94@X07"
Newlines 2
End
Endif
Return
:LABEL011
AnsiPos TINTEGER002(1), TINTEGER003(1) + INTEGER006 - 1
Print TSTRING010(1) + TSTRING006(INTEGER006)
AnsiPos TINTEGER002(1), TINTEGER003(1) + INTEGER005 - 1
Print TSTRING010(2) + TSTRING006(INTEGER005)
AnsiPos TINTEGER002(1), TINTEGER003(1) + INTEGER005 - 1
Return
:LABEL012
For INTEGER007 = 1 To INTEGER004
AnsiPos TINTEGER002(1), TINTEGER003(1) + INTEGER007 - 1
If (INTEGER005 == INTEGER007) Then
Print TSTRING010(2) + TSTRING006(INTEGER007)
Continue
Endif
Print TSTRING010(1) + TSTRING006(INTEGER007)
Next
AnsiPos TINTEGER002(1), TINTEGER003(1) + INTEGER005 - 1
Return
:LABEL013
STRING007 = ""
STRING008 = ""
KbdFlush
While (STRING007 == "") Do
STRING007 = Inkey()
EndWhile
If (Left(STRING007, 2) == "UP") Then
If (INTEGER005 > 1) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER006 - 1
STRING008 = "UP"
Goto LABEL014
Endif
INTEGER006 = INTEGER005
INTEGER005 = INTEGER004
Endif
:LABEL014
If (Left(STRING007, 4) == "HOME") Then
If (INTEGER005 > 1) Then
INTEGER006 = INTEGER005
INTEGER005 = 1
STRING008 = "UP"
Endif
Endif
If (Left(STRING007, 4) == "LEFT") Then
If (INTEGER005 > 1) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER006 - 1
STRING008 = "UP"
Goto LABEL015
Endif
INTEGER006 = INTEGER005
INTEGER005 = INTEGER004
Endif
:LABEL015
If (Upper(STRING007) == "A") Then
If (INTEGER005 > 1) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER006 - 1
STRING008 = "UP"
Goto LABEL016
Endif
INTEGER006 = INTEGER005
INTEGER005 = INTEGER004
Endif
:LABEL016
If (Left(STRING007, 4) == "DOWN") Then
If (INTEGER005 < INTEGER004) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER006 + 1
STRING008 = "DOWN"
Goto LABEL017
Endif
INTEGER006 = INTEGER005
INTEGER005 = 1
Endif
:LABEL017
If (Left(STRING007, 3) == "END") Then
If (INTEGER005 < INTEGER004) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER004
STRING008 = "DOWN"
Endif
Endif
If (Left(STRING007, 5) == "RIGHT") Then
If (INTEGER005 < INTEGER004) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER006 + 1
STRING008 = "DOWN"
Goto LABEL018
Endif
INTEGER006 = INTEGER005
INTEGER005 = 1
Endif
:LABEL018
If (Upper(STRING007) == "Z") Then
If (INTEGER005 < INTEGER004) Then
INTEGER006 = INTEGER005
INTEGER005 = INTEGER006 + 1
STRING008 = "DOWN"
Goto LABEL019
Endif
INTEGER006 = INTEGER005
INTEGER005 = 1
Endif
:LABEL019
If (STRING007 == Chr(13)) Then
STRING008 = "SELECT"
Endif
If (Left(STRING007, 5) == "ENTER") Then
STRING008 = "SELECT"
Endif
If (Left(STRING007, 6) == "RETURN") Then
STRING008 = "SELECT"
Endif
If (STRING008 == "") Then
STRING008 = STRING007
Endif
Return
:LABEL020
AnsiPos 30, 4
Print TSTRING010(3) + U_City
AnsiPos 30, 5
Print TSTRING010(3) + U_Pwd
AnsiPos 30, 6
Print TSTRING010(3) + U_BDPhone
AnsiPos 30, 7
Print TSTRING010(3) + U_HVPhone
AnsiPos 30, 8
If (U_Expert == 1) Then
Print TSTRING010(3) + "ON "
Else
Print TSTRING010(3) + "OFF"
Endif
AnsiPos 30, 9
Print TSTRING010(3) + U_PageLen
AnsiPos 30, 10
Print TSTRING010(3) + U_Trans
AnsiPos 30, 11
If (U_Cls == 1) Then
Print TSTRING010(3) + "YES"
Else
Print TSTRING010(3) + "NO "
Endif
If ((U_FSE == 1) && (U_FSEP == 0)) Then
STRING011 = "YES"
Endif
If ((U_FSE == 0) && (U_FSEP == 0)) Then
STRING011 = "NO "
Endif
If ((U_FSE == 0) && (U_FSEP == 1)) Then
STRING011 = "ASK"
Endif
AnsiPos 30, 12
Print TSTRING010(3) + STRING011
Return
:LABEL021
AnsiPos INTEGER008, INTEGER009
Print "@X07" + Space(INTEGER010 + 2)
AnsiPos INTEGER008, INTEGER009
If (INTEGER011 == 1) Then
InputStr "_", STRING007, "@X0F", INTEGER010, Mask_Ascii(), 0
Endif
If (INTEGER011 == 2) Then
InputStr "_", STRING007, "@X0F", INTEGER010, Mask_Num() + ".-", 0
Endif
If (INTEGER011 == 3) Then
InputStr "_", STRING007, "@X0F", INTEGER010, Mask_Pwd(), 0 + 8
Endif
If (INTEGER011 == 4) Then
InputStr "_", STRING007, "@X0F", INTEGER010, Mask_Num(), 0
Endif
If (INTEGER011 == 5) Then
InputStr "_", STRING007, "@X0F", INTEGER010, Mask_Ascii(), 8
Endif
Return
:LABEL022
AnsiPos INTEGER008, INTEGER009
If (STRING007 == "") Then
Print TSTRING010(3) + STRING012
Else
Print TSTRING010(3) + STRING007
Endif
AnsiPos TINTEGER002(1), TINTEGER003(1) + INTEGER005 - 1
Return
:LABEL023
If (Exist(STRING009) == 0) Then
Print "@X07@CLS@"
Newline
PrintLn "@X0FHmm, no config file, using default!@X07"
Newline
Wait
Newline
Return
Endif
TINTEGER002(1) = ReadLine(STRING009, 1)
TINTEGER003(1) = ReadLine(STRING009, 2)
TSTRING010(1) = ReadLine(STRING009, 3)
TSTRING010(2) = ReadLine(STRING009, 4)
TSTRING010(3) = ReadLine(STRING009, 5)
Return
STRING011 = "■■■ A JoLLY RoGeR PPE - SCuM '94 PPE Division ■■■"
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 4 End
; 1 Wait
; 81 Goto
; 147 Let
; 24 Print
; 2 PrintLn
; 59 If
; 1 DispFile
; 3 ResetDisp
; 1 StartDisp
; 1 GetUser
; 13 PutUser
; 5 InputStr
; 23 Gosub
; 12 Return
; 6 Newline
; 2 Newlines
; 18 AnsiPos
; 1 KbdFlush
;
;
; ■ Functions used :
;
; 33 +
; 9 -
; 55 ==
; 1 <>
; 5 <
; 1 <=
; 4 >
; 2 >=
; 59 !
; 8 &&
; 1 ||
; 2 Upper()
; 8 Left()
; 1 Space()
; 2 Chr()
; 1 Inkey()
; 1 Mask_Pwd()
; 2 Mask_Num()
; 2 Mask_Ascii()
; 2 PPEPath()
; 5 ReadLine()
; 1 Exist()
; 1 AnsiOn()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WH
;
; 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
;
; 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
;
; 1 For/Next
; 1 While/EndWhile
; 57 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------