home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #1
/
monster.zip
/
monster
/
PCBOARD
/
OS178B.ZIP
/
ONSALE.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-01-29
|
5KB
|
296 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 1.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
String STRING001
String STRING002
String TSTRING003(7)
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
;------------------------------------------------------------------------------
INTEGER001 = 0
STRING001 = "@X00@X0BMain Street@XFF"
STRING012 = "Madison Farrell"
STRING007 = "@X00@X0BOn-Sale@XFF"
STRING008 = ""
STRING002 = PPEPath() + PPEName() + ".CLA"
STRING005 = PPEPath() + PPEName() + ".CFG"
STRING006 = PPEPath() + PPEName() + ".O_E"
STRING009 = PPEPath() + PPEName() + ".CUS"
STRING010 = PPEPath() + PPEName() + ".OSL"
STRING011 = PPEPath() + PPEName() + ".SPC"
STRING014 = PPEPath() + PPEName() + ".TMP"
STRING015 = PPEPath() + PPEName() + ".THK"
STRING016 = "178b"
INTEGER004 = 8
INTEGER005 = 1
INTEGER006 = 0
If (Exist(STRING005)) Then
Gosub LABEL013
Endif
If (INTEGER005 == 1) Gosub LABEL014
While (STRING004 <> "Q") Do
If ((STRING004 <> "") && (STRING004 <> "Q")) Then
Gosub LABEL001
Gosub LABEL002
Endif
STRING004 = Upper(Inkey())
If (STRING004 == "E") Then
Gosub LABEL005
Continue
Endif
If (STRING004 == "R") Then
Gosub LABEL006
Gosub LABEL003
Continue
Endif
If (STRING004 == "O") Then
Gosub LABEL009
Gosub LABEL003
Continue
Endif
If (STRING004 == "S") Then
Gosub LABEL010
Gosub LABEL003
Continue
Endif
If (STRING004 == "P") Then
Gosub LABEL011
Gosub LABEL003
Endif
EndWhile
Newline
PrintLn "Thank you for using " + STRING007 + "."
PrintLn "This program is currently in BETA TESTING. If you noticed anything"
PrintLn "out of the ordinary or have any suggestions for improvement, please"
PrintLn "leave a comment to the SysOp."
PrintLn
PrintLn "Thank you for using On-Sale on " + STRING001 + "."
PrintLn "--- SysOp, " + STRING012
Newline
End
:LABEL001
PrintLn "@CLS@@X07"
PrintLn "@X0F @X7F┌───────────────────────────────────────────────────@X70┐"
PrintLn "@X0F @X7F│@X70─@X71╒@X79═════╗@X71╒@X79═════╗@X70───────@X71╒@X79═════╗@X71╒@X79═════╗@X71╒@X79═╗@X70────@X71╒@X79═════╗@X70─│"
PrintLn "@X0F @X7F│@X70─@X71│ ╓@X79─┐ ║@X71│ @X79║@X71╒@X79═════╗@X71│ @X79───╢@X71│ @X79─ ║@X71│ @X79║@X70────@X71│ @X79───╢@X70─│"
PrintLn "@X0F @X7F│@X70─@X71│ ╚═@X79╛ ║@X71│ │ @X79║@X71└─────@X79╜@X71├─── @X79║@X71│ │ @X79║@X71│ @X79╚═══╗@X71│ @X79───╢@X70─│"
PrintLn "@X0F @X7F│@X70─@X71└─────@X79╜@X71└──┴──@X79╜@X70───────@X71└─────@X79╜@X71└──┴──@X79╜@X71└─────@X79╜@X71└─────@X79╜@X70─│"
PrintLn "@X0F @X7F└@X70───────── Online Shopping and Classifieds ─────" + STRING016 + "┘"
PrintLn "@X0F @X08Copyright (C) 1994 By Madison Farrell, III"
PrintLn " All Rights Reserved"
Return
:LABEL002
Newline
PrintLn "@X0F (@X0CE@X0F)nter classified (@X0CO@X0F)nline Shopping List (@X0CP@X0F)lace an order"
PrintLn " (@X0CR@X0F)ead classifieds (@X0CS@X0F)ales/Special Events (@X0CQ@X0F)uit ON-SALE"
Newline
Return
:LABEL003
PrintLn "Press <@X00@X0EENTER@XFF> To Continue"
While (STRING004 <> Chr(13)) Do
STRING004 = Inkey()
EndWhile
Return
:LABEL004
FOpen 1, STRING014, 1, 3
FPutLn 1, STRING013
FPutLn 1
FClose 1
Return
:LABEL005
If (Exist(STRING006)) DispFile STRING006, 7
Newline
INTEGER002 = 2
TSTRING003(1) = Date()
TSTRING003(1) = TSTRING003(1) + " ----------------------- " + U_Name()
While (INTEGER002 < INTEGER004) Do
Input "@X0F" + INTEGER002 - 1 + ":@X0B", TSTRING003(INTEGER002)
Select Case (TSTRING003(INTEGER002))
Case "/Q"
INTEGER002 = INTEGER004 - 1
Case ""
TSTRING003(INTEGER002) = ". . ."
End Select
PrintLn
INTEGER002 = INTEGER002 + 1
EndWhile
FAppend 1, STRING002, 1, 3
INTEGER007 = 1
While (TSTRING003(INTEGER007) <> "") Do
FPutLn 1, TSTRING003(INTEGER007)
TSTRING003(INTEGER007) = ""
INTEGER007 = INTEGER007 + 1
EndWhile
FClose 1
Return
:LABEL006
If (Exist(STRING002)) Goto LABEL007
PrintLn "No current classifieds on-line."
Goto LABEL008
:LABEL007
Newline
INTEGER003 = 0
FOpen 1, STRING002, 0, 3
While (INTEGER003 == 0) Do
FGet 1, STRING013
If (STRING013 == "") Then
INTEGER003 = 1
Continue
Endif
If (STRING013 == "/Q") Then
STRING013 = ""
Continue
Endif
PrintLn STRING013
EndWhile
FClose 1
:LABEL008
Return
:LABEL009
If (Exist(STRING010)) Then
DispFile STRING010, 7
Else
PrintLn "There is no current on-line shopping list available."
Endif
Return
:LABEL010
If (Exist(STRING011)) Then
DispFile STRING011, 7
Else
PrintLn "There are no current sales or special events in effect."
Endif
Return
:LABEL011
If (Exist(STRING009)) DispFile STRING009, 7
Newline
Input "@X0F:@X0E", STRING008
If (STRING008 <> "") Then
STRING013 = STRING008
Gosub LABEL004
Message 0, "SYSOP", U_Name(), "On-Sale Customer Inquiry", "R", 0, 1, 0, STRING014
Delete STRING014
Newline
If (Exist(STRING015)) Then
DispFile STRING015, 7
Goto LABEL012
Endif
PrintLn "Customer order aborted."
Endif
:LABEL012
Return
:LABEL013
FOpen 1, STRING005, 0, 3
FGet 1, STRING001
FGet 1, STRING012
FGet 1, INTEGER001
FClose 1
Return
:LABEL014
Gosub LABEL001
Gosub LABEL002
If ((FileInf(STRING010, 2) >= U_LDate()) && (FileInf(STRING010, 3) >= U_LTime())) Then
Newline
PrintLn "The on-line shopping list has been updated since your last log-on."
Endif
INTEGER005 = 0
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 38 Goto
; 33 Let
; 26 PrintLn
; 25 If
; 5 DispFile
; 2 Input
; 3 FOpen
; 1 FAppend
; 4 FClose
; 4 FGet
; 3 FPutLn
; 1 Delete
; 16 Gosub
; 11 Return
; 9 Newline
; 1 Message
;
;
; ■ Functions used :
;
; 29 +
; 2 -
; 11 ==
; 6 <>
; 1 <
; 2 >=
; 22 !
; 2 &&
; 1 Upper()
; 1 Chr()
; 1 Date()
; 2 U_Name()
; 1 U_LDate()
; 1 U_LTime()
; 2 Inkey()
; 8 PPEPath()
; 7 Exist()
; 2 FileInf()
; 8 PPEName()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 5 While/EndWhile
; 14 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------