home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Pier Shareware 6
/
The_Pier_Shareware_Number_6_(The_Pier_Exchange)_(1995).iso
/
005
/
dmsppe1a.zip
/
EOMATTCH.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-11-21
|
5KB
|
328 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
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
String STRING001
String TSTRING002(4)
String TSTRING003(4)
String STRING004
String STRING005
String TSTRING006(4)
String TSTRING007(4)
String STRING008
String STRING009
Int INT001
Int INT002
Int INT003
Int INT004
Int TINT005(4)
Int TINT006(4)
Int INT007
Int INT008
;------------------------------------------------------------------------------
INT002 = 4
STRING005 = PPEPath()
TSTRING002(1) = "F"
TSTRING002(2) = "V"
TSTRING002(3) = "I"
TSTRING002(4) = "H"
TSTRING003(1) = "F"
TSTRING003(2) = "V"
TSTRING003(3) = "I"
TSTRING003(4) = "H"
BOOLEAN001 = AnsiOn()
If (BOOLEAN001) Then
Gosub LABEL001
Else
Gosub LABEL005
Endif
Newline
Select Case (STRING001)
Case "F"
KbdFile STRING005 + "FLAG.KBD"
Case "V"
KbdFile STRING005 + "VIEW.KBD"
End Select
End
:LABEL001
INT004 = CurColor()
TINT006(1) = 1
TINT006(2) = 1
TINT006(3) = 1
TINT006(4) = 1
STRING008 = "@X0AAttached file -> "
TSTRING006(1) = "@X0B @X0EF@X0Blag "
TSTRING006(2) = "@X0B @X0EV@X0Biew "
TSTRING006(3) = "@X0B @X0EI@X0Bgnore "
TSTRING006(4) = "@X0B @X0EH@X0Belp "
TSTRING007(1) = "@X3F @X3EF@X3Flag "
TSTRING007(2) = "@X3F @X3EV@X3Fiew "
TSTRING007(3) = "@X3F @X3EI@X3Fgnore "
TSTRING007(4) = "@X3F @X3EH@X3Felp "
INT007 = 1
INT008 = 1
Gosub LABEL011
:LABEL002
If (INT001 == 13) Goto LABEL004
STRING004 = ""
BOOLEAN002 = 0
While (STRING004 == "") Do
STRING004 = Inkey()
EndWhile
If (Len(STRING004) == 1) Then
STRING004 = Upper(STRING004)
INT001 = Asc(STRING004)
Else
INT001 = 0
Endif
If ((Left(STRING004, 5) == "RIGHT") || (INT001 == 32)) Then
INT008 = INT007 + 1
If (INT008 > INT002) Then
INT008 = 1
Endif
BOOLEAN002 = 1
ElseIf ((Left(STRING004, 4) == "LEFT") || (INT001 == 8)) Then
INT008 = INT007 - 1
If (INT008 == 0) Then
INT008 = INT002
Endif
BOOLEAN002 = 1
ElseIf (Left(STRING004, 4) == "HOME") Then
INT008 = 1
BOOLEAN002 = 1
ElseIf (Left(STRING004, 3) == "END") Then
INT008 = INT002
BOOLEAN002 = 1
ElseIf (INT001 == 13) Then
STRING001 = TSTRING003(INT008)
Else
For INT003 = 1 To INT002
If (STRING004 == TSTRING002(INT003)) Then
INT008 = INT003
BOOLEAN002 = 1
INT003 = INT002
Endif
Next
If (BOOLEAN002) Goto LABEL003
If (OnLocal()) Then
Sound 920
Delay 3
Sound 0
Else
MPrint Chr(7)
Endif
Endif
:LABEL003
If (BOOLEAN002) Then
Gosub LABEL012
Endif
If ((INT001 == 13) && (INT007 == INT002)) Then
Gosub LABEL010
INT008 = 1
Gosub LABEL012
INT001 = 0
Endif
Goto LABEL002
:LABEL004
Color INT004
Return
:LABEL005
Gosub LABEL011
INT001 = 0
:LABEL006
If (INT001 == 13) Goto LABEL009
STRING004 = ""
While (STRING004 == "") Do
STRING004 = Inkey()
EndWhile
STRING004 = Upper(STRING004)
INT001 = Asc(STRING004)
Select Case (INT001)
Case 8
INT001 = 0
If (STRING001 == "") Goto LABEL007
Backup 1
Print Space(1)
Backup 1
STRING001 = ""
:LABEL007
Case 13
If (STRING001 == "H") Then
Backup 1
Print Space(1)
Backup 1
Gosub LABEL010
INT001 = 0
STRING001 = ""
Goto LABEL008
Endif
:LABEL008
Case ""
For INT003 = 1 To INT002
If (STRING004 == TSTRING002(INT003)) Then
Print TSTRING002(INT003)
STRING001 = TSTRING003(INT003)
INT003 = INT002
Endif
Next
Case
Sound 920
Delay 3
Sound 0
Case Else
MPrint Chr(7)
End Select
Goto LABEL006
:LABEL009
Return
:LABEL010
STRING009 = PPEPath() + "EOMATTCH.HLP"
Backup GetX() - 1
ClrEol
SaveScrn
Cls
PrintLn "@X0AAttached File Prompt - @X0BUNREGISTERED @X0ACopyright 1994 Data Management Systems"
PrintLn " All Rights Reserved"
PrintLn
PrintLn
PrintLn " @X03Help is available only with the registered version of this software."
PrintLn " Please remind your sysop to register this shareware product (@X02DMSPPE10@X03)."
PrintLn
PrintLn
If (OnLocal()) Then
Sound 920
Delay 3
Sound 0
Else
MPrint Chr(7)
Endif
Wait
Cls
RestScrn
Gosub LABEL011
Return
:LABEL011
If (BOOLEAN001) Then
Print STRING008
For INT003 = 1 To INT002
TINT005(INT003) = GetX()
If (INT003 == INT007) Then
Print TSTRING007(INT003)
Continue
Endif
Print TSTRING006(INT003)
Next
Backup GetX() - 1
Forward TINT005(INT007) + TINT006(INT007) - 1
Color INT004
Else
Print "Attached file -> (F)lag (V)iew (I)gnore (H)elp ? "
Endif
Return
:LABEL012
Backup GetX() - 1
Forward TINT005(INT007) - 1
Print TSTRING006(INT007)
Backup GetX() - 1
Forward TINT005(INT008) - 1
Print TSTRING007(INT008)
Backup GetX() - 1
Forward TINT005(INT008) + TINT006(INT008) - 1
INT007 = INT008
Color INT004
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 2 Cls
; 1 ClrEol
; 1 Wait
; 3 Color
; 57 Goto
; 69 Let
; 9 Print
; 8 PrintLn
; 33 If
; 9 Gosub
; 5 Return
; 3 Delay
; 1 Newline
; 2 KbdFile
; 9 Backup
; 4 Forward
; 1 SaveScrn
; 1 RestScrn
; 6 Sound
; 3 MPrint
;
;
; ■ Functions used :
;
; 9 +
; 10 -
; 25 ==
; 3 <
; 3 <=
; 1 >
; 6 >=
; 33 !
; 7 &&
; 5 ||
; 1 Len(
; 2 Upper()
; 4 Left()
; 2 Space()
; 3 Chr()
; 2 Asc()
; 2 Inkey()
; 2 PPEPath()
; 3 OnLocal()
; 1 AnsiOn()
; 6 GetX()
; 1 CurColor()
;
;------------------------------------------------------------------------------
;
; Analysis flags : M
;
; M - Send text to modem only ■ 4
; Some informations are sent only to the modem, not to the local
; screen, this is a well known way to make stealth backdoors, Check!
; ■ Search for : SENDMODEM, MPRINT, MPRINTLN
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 3 For/Next
; 2 While/EndWhile
; 18 If/Then or If/Then/Else
; 2 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------