home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
GIFCOL29.ZIP
/
GIFCOLL.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-03-28
|
10KB
|
467 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
Integer INTEGER014
Integer INTEGER015
Integer INTEGER016
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String TSTRING006(11)
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
;------------------------------------------------------------------------------
STRING001 = "14½ùÜ▀╕╢╣ÖÜì▀╜╜¼ "
STRING002 = "Y"
STRING002 = YesChar()
INTEGER007 = 15
STRING008 = ReadLine(PCBDat(), 179)
STRING009 = ""
STRING009 = GetEnv("PCBNODE")
If (STRING009 == "") STRING009 = ReadLine(PCBDat(), 91)
STRING010 = STRING009
STRING011 = STRING010
If (STRING010 < 100) Then
STRING011 = "0" + STRING009
If (STRING010 < 10) Then
STRING011 = "00" + STRING009
Endif
Endif
STRING012 = ReadLine(PCBDat(), 94)
STRING015 = Random(9999)
If (STRING015 > 9980) Then
STRING015 = 9980
Endif
STRING016 = "FLIST"
If (Exist("FLIST." + STRING009)) Then
STRING016 = "FLIST." + STRING009
Endif
Log "GIF Collage processor command entered.", 0
If (TokCount() == 0) Then
PrintLn "@X0C Download path not specified on PPE command line."
Log "Download path not specified on GIFCOLL PPE command line.", 0
PrintLn "@X0F "
PrintLn "GIF Collage Processor Environment error - Inform your SysOp"
More
End
Endif
STRING014 = GetToken()
If (Exist("GIFCOLL." + STRING011)) Then
Delete "GIFCOLL." + STRING011
Endif
FOpen 1, "GIFCOLL." + STRING011, 1, 3
FPut 1, STRING012
FClose 1
Shell 1, INTEGER016, PPEPath() + "GIFCOL0.EXE " + STRING011 + STRING001, ""
INTEGER016 = 1
If (Exist("GIFCOLL." + STRING011)) Then
INTEGER016 = 0
Delete "GIFCOLL." + STRING011
Endif
If (Exist(PPEPath() + "GIFCOLL." + STRING010)) Then
Delete PPEPath() + "GIFCOLL." + STRING010
Endif
Cls
PrintLn " "
PrintLn "@X38┌────────────────────────────────────────────────────────────────────────────@X3B┐@X0B"
If (INTEGER016 == 0) Then
PrintLn "@X38│@X39 GIF Collage Builder - Registered v2.9 @X3B│@X0B"
Else
PrintLn "@X38│@X3E GIF Collage Builder - Shareware v2.9 @X3B│@X0B"
PrintLn "@X38│@X3E Unregistered Evaluation Copy @X3B│@X0B"
Endif
PrintLn "@X38└@X3B────────────────────────────────────────────────────────────────────────────┘@X0F"
If (Exist("GIFCOLL." + STRING011)) Delete "GIFCOLL." + STRING011
If (Exist(STRING016)) Goto LABEL001
Log "PCBoard control file " + STRING016 + " not found, nothing flagged.", 0
Goto LABEL007
:LABEL001
STRING005 = "FLIST" + STRING011 + ".WRK"
If (Exist(STRING005)) Delete STRING005
FOpen 1, STRING016, 0, 0
FOpen 2, STRING005, 1, 1
:LABEL002
If (Ferr(1)) Goto LABEL003
FRead 1, STRING013, 129
FWrite 2, STRING013, 129
Goto LABEL002
:LABEL003
FClose 1
FClose 2
SaveScrn
Shell 1, INTEGER001, PPEPath() + "GIFCOL1.EXE " + STRING011 + STRING009, ""
RestScrn
INTEGER001 = 0
If (Exist("GIFCOLL." + STRING011)) Then
Goto LABEL004
Endif
Log "Unable to read PCBoard control file " + STRING016, 0
Log "Probable installation error.", 0
Log "Be sure that you have SHARE loaded.", 0
Goto LABEL007
:LABEL004
FOpen 1, "GIFCOLL." + STRING011, 0, 0
FGet 1, STRING013
:LABEL005
If (Ferr(1)) Goto LABEL006
INTEGER001 = INTEGER001 + 1
FGet 1, STRING013
Goto LABEL005
:LABEL006
FClose 1
If (INTEGER001 > 1) Then
INTEGER001 = INTEGER001 / 2
Endif
If (INTEGER001 > 0) Then
Goto LABEL008
Endif
:LABEL007
PrintLn " "
PrintLn "@X0EYou have not flagged any @X0CGIF@X0E files for a collage.@X0F"
PrintLn " "
DispFile HelpPath() + "GIF", 1 + 4
End
:LABEL008
If (INTEGER001 > 99) Then
PrintLn "@X0AYou have ", INTEGER001, " GIF's flagged - 99 is the max for this command."
PrintLn "The first 99 of them can be placed in collage files."
InputStr "@X0EDo you wish to continue (@X0CY@X0E/@X0CN@X0E)", STRING002, 14, 1, "", 8192 + 16384
If (Upper(STRING002) == "N") Then
Cls
End
Endif
INTEGER001 = 99
Endif
INTEGER008 = INTEGER001
If (INTEGER016 == 0) Then
Goto LABEL009
Endif
PrintLn " "
Print "@X0EAsk your SysOp to register this program to get rid of this delay. "
Print "@X0C"
For INTEGER002 = 1 To INTEGER007
Print "/"
Delay 4
Backup 1
Print "-"
Delay 5
Backup 1
Print "\"
Delay 4
Backup 1
Print "|"
Backup 1
Delay 5
Next
Backup 66
ClrEol
Goto LABEL010
:LABEL009
PrintLn " "
:LABEL010
PrintLn "@X0FYou have @X0A", INTEGER008, "@X0F GIF files flagged."
PrintLn " "
INTEGER013 = INTEGER008 / 9 + 1
INTEGER014 = INTEGER008 * 20 + INTEGER013 * 13
INTEGER011 = INTEGER014 / 60
If (INTEGER011 == 0) Then
INTEGER011 = 1
Endif
INTEGER012 = INTEGER011 + 1
If (INTEGER012 < 3) Then
PrintLn "@X0FIt will take 1-2 minutes to build your collage. Please be patient."
PrintLn
Else
If (MinLeft() < INTEGER012) Then
If (INTEGER013 < 10) Then
PrintLn "@X0AYou do not have enough time left to build the collage file."
Goto LABEL011
Endif
PrintLn "@X0AYou do not have enough time left to build the collage files."
:LABEL011
PrintLn "@X0F"
End
Endif
If (INTEGER001 < 10) Then
PrintLn "@X0FIt may take @X0E", INTEGER011, "-", INTEGER012, " minutes@X0F to build the collage file."
Else
PrintLn "@X0FIt may take @X0E", INTEGER011, "-", INTEGER012, " minutes@X0F to build the collage files."
Endif
InputStr "@X0EDo you wish to continue (@X0CY@X0E/@X0CN@X0E)", STRING002, 14, 1, "", 8192 + 16384
If (Upper(STRING002) == "N") Then
Cls
End
Endif
Newline
PrintLn " "
PrintLn "@X0AOK, here we go....."
PrintLn " "
Endif
If (Exist("GIFDEDK.CMD")) Goto LABEL012
Copy PPEPath() + "GIFDESK.CMD", "GIFDESK.CMD"
:LABEL012
For INTEGER002 = 1 To 11
TSTRING006(INTEGER002) = "*"
Next
INTEGER015 = 1
SaveScrn
Shell 1, INTEGER002, "ATTRIB -r " + STRING008 + "*.GIF", ""
Shell 1, INTEGER002, "DEL " + STRING008 + "*.GIF", ""
RestScrn
If (Exist("GIFDSK00.GIF")) Delete "GIFDSK00.GIF"
FOpen 1, "GIFCOLL." + STRING011, 0, 0
INTEGER010 = 0
INTEGER003 = GetX()
INTEGER004 = GetY()
:LABEL013
INTEGER009 = 9
If (INTEGER001 < 10) Then
INTEGER009 = INTEGER001
Endif
INTEGER001 = INTEGER001 - INTEGER009
INTEGER010 = INTEGER010 + 1
Print "@X0EPreparing @X0C", INTEGER009, "@X0E files for collage #", INTEGER010, ":@X0A"
INTEGER005 = GetX()
INTEGER006 = GetY()
For INTEGER002 = 1 To INTEGER009
FGet 1, STRING013
STRING003 = STRING013
FGet 1, STRING013
STRING004 = STRING008 + STRING013
AnsiPos INTEGER005, INTEGER006
ClrEol
Print " Frame ", INTEGER002, " is ", STRING013
Copy STRING003, STRING004
Next
AnsiPos INTEGER003, INTEGER004
ClrEol
:LABEL014
STRING015 = STRING015 + 1
STRING004 = STRING015
STRING003 = "C" + STRING010 + STRING004 + ".GIF"
INTEGER002 = 1
While (INTEGER002 < INTEGER015 + 1) Do
If (STRING003 == TSTRING006(INTEGER002)) Then
Goto LABEL014
Endif
INTEGER002 = INTEGER002 + 1
EndWhile
Print "@X0EBuilding GIF collage #", INTEGER010, " (", STRING003, ") - Please stand by....."
SaveScrn
Shell 1, INTEGER002, PPEPath() + "GIFDESK.EXE " + STRING008 + "*.gif", ""
RestScrn
If (Exist("GIFDSK00.GIF")) Goto LABEL015
PrintLn "@X0AGIFDESK collage build failed - Notify your SysOp."
Log "GIFDESK did not build the collage.", 0
PrintLn " "
PrintLn "@PAUSE@"
End
:LABEL015
AnsiPos INTEGER003, INTEGER004
ClrEol
PrintLn "@X0AGIF collage #", INTEGER010, " (", STRING003, ") is ready and being moved to a download area."
INTEGER003 = GetX()
INTEGER004 = GetY()
TSTRING006(INTEGER015) = STRING003
INTEGER015 = INTEGER015 + 1
STRING004 = STRING014 + "\" + STRING003
STRING003 = "GIFDSK00.GIF"
Copy STRING003, STRING004
Delete "GIFDSK00.GIF"
SaveScrn
Shell 1, INTEGER002, "ATTRIB -r " + STRING008 + "*.GIF", ""
Shell 1, INTEGER002, "DEL " + STRING008 + "*.GIF", ""
RestScrn
AnsiPos INTEGER003, INTEGER004
If (INTEGER001 > 0) Then
Goto LABEL013
Endif
FClose 1
Delete "GIFCOLL." + STRING011
PrintLn " "
PrintLn "@X0AYour collage file(s) are ready to download. @X0CIf you do not want to download"
PrintLn "the GIF files that have been placed in the collage file(s), answer @X0FN@X0C to the"
PrintLn "@X0EDownload Flagged Files@X0C question. @X0AIf you do want to download them along with"
PrintLn "the collage file(s), then answer @X0FY@X0A to the question."
STRING007 = TSTRING006(1)
INTEGER015 = 2
While (TSTRING006(INTEGER015) <> "*") Do
STRING007 = STRING007 + ";" + TSTRING006(INTEGER015)
INTEGER015 = INTEGER015 + 1
If (INTEGER015 > 11) Then
Break
Endif
EndWhile
Download STRING007
INTEGER015 = 1
While (TSTRING006(INTEGER015) <> "*") Do
Delete STRING014 + "\" + TSTRING006(INTEGER015)
INTEGER015 = INTEGER015 + 1
If (INTEGER015 > 11) Then
Break
Endif
EndWhile
If (INTEGER016 <> 0) Then
Cls
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn "@X38┌────────────────────────────────────────────────────────────────────────────@X3B┐@X0B"
PrintLn "@X38│ @X39GIF Collage Builder v2.9 @X3B│@X0B"
PrintLn "@X38│@X3E @X3B│@X0B"
PrintLn "@X38│@X3E Thank you for using the GIF Collage processor command. If you find this @X3B│@X0B"
PrintLn "@X38│@X3E PCBoard add on command usefull, please ask your SysOp to register it today!@X3B│@X0B"
PrintLn "@X38│@X3E You could even offer to share the small cost to get rid of that annoying @X3B│@X0B"
PrintLn "@X38│@X3E delay when it starts along with this irritating screen. @X3B│@X0B"
PrintLn "@X38│@X3E @X3B│@X0B"
PrintLn "@X38│@X39 Remember, Shareware is NOT Freeware! @X3B│@X0B"
PrintLn "@X38│@X3E @X3B│@X0B"
PrintLn "@X38└@X3B────────────────────────────────────────────────────────────────────────────┘@X0F"
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn " "
PrintLn "@PAUSE@"
Endif
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 7 End
; 4 Cls
; 4 ClrEol
; 1 More
; 60 Goto
; 67 Let
; 9 Print
; 59 PrintLn
; 42 If
; 1 DispFile
; 5 FOpen
; 5 FClose
; 4 FGet
; 1 FPut
; 9 Delete
; 7 Log
; 2 InputStr
; 4 Delay
; 1 Newline
; 7 Shell
; 4 AnsiPos
; 5 Backup
; 4 SaveScrn
; 4 RestScrn
; 1 FRead
; 1 FWrite
; 3 Copy
; 1 Download
;
;
; ■ Functions used :
;
; 2 *
; 3 /
; 70 +
; 1 -
; 8 ==
; 3 <>
; 11 <
; 3 <=
; 7 >
; 6 >=
; 35 !
; 6 &&
; 3 ||
; 2 Upper()
; 2 Ferr()
; 1 Random()
; 1 YesChar()
; 3 PCBDat()
; 6 PPEPath()
; 3 ReadLine()
; 1 GetToken()
; 1 MinLeft()
; 1 GetEnv()
; 11 Exist()
; 3 GetX()
; 3 GetY()
; 1 HelpPath()
; 1 TokCount()
;
;------------------------------------------------------------------------------
;
; Analysis flags : Sd
;
; S - Shell to DOS ■ 5
; This may be normal if the PPE need to execute an external command,
; but may be actually anything... nasty (formating HD, rebooting,...)
; or usefull (sorting, maintenance,...). Check!
; ■ Search for : SHELL
;
; 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()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 3 For/Next
; 3 While/EndWhile
; 27 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------