home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / S / SENDM100.ZIP / SHOWM.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-06-12  |  10KB  |  323 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Date     DATE001
  22.     Date     DATE002
  23.     Integer  INTEGER001
  24.     Integer  INTEGER002
  25.     Integer  INTEGER003
  26.     Integer  INTEGER004
  27.     Integer  INTEGER005
  28.     Integer  INTEGER006
  29.     Integer  INTEGER007
  30.     Integer  INTEGER008
  31.     Integer  INTEGER009
  32.     Integer  INTEGER010
  33.     Integer  INTEGER011
  34.     Integer  INTEGER012
  35.     Integer  INTEGER013
  36.     Integer  INTEGER014
  37.     Integer  INTEGER015
  38.     String   STRING001
  39.     String   STRING002
  40.     String   STRING003
  41.     String   STRING004
  42.     String   STRING005
  43.     String   STRING006
  44.     String   STRING007
  45.     String   STRING008
  46.     String   STRING009
  47.     String   STRING010
  48.     Time     TIME001
  49.     Time     TIME002
  50.  
  51. ;------------------------------------------------------------------------------
  52.  
  53.     GetUser
  54.     If (Exist(PPEPath() + "CONFIG.SEN")) Then
  55.         FOpen 1, PPEPath() + "CONFIG.SEN", 2, 0
  56.         FSeek 1, 0, 0
  57.         FRead 1, STRING008, 1
  58.         FRead 1, INTEGER012, 4
  59.         FRead 1, STRING009, 1
  60.         FRead 1, INTEGER013, 5
  61.         FClose 1
  62.     Else
  63.         STRING009 = "Y"
  64.         INTEGER013 = 0
  65.         STRING008 = "Y"
  66.         INTEGER012 = 7
  67.     Endif
  68.     If (Exist(PPEPath() + "SENDMESS.COD")) Goto LABEL001
  69.     BOOLEAN001 = 0
  70.     Goto LABEL002
  71.     :LABEL001
  72.     BOOLEAN001 = 1
  73.     INTEGER009 = FileInf(PPEPath() + "SENDMESS.COD", 4)
  74.     If (INTEGER009 == 0) Then
  75.         Goto LABEL003
  76.     Endif
  77.     :LABEL002
  78.     If (BOOLEAN001 == 0) Then
  79.         :LABEL003
  80.         Newline
  81.         Newline
  82.         If (Exist(PPEPath() + "NOMESS.SEN")) Goto LABEL004
  83.         PrintLn "@X1C @X1F┌────────────────────────────────────────────────────────────────────────────┐@X07"
  84.         PrintLn "@X1F │   @X10┌────────────────────────────────────────────────────────────────────@X1F┐  @X10 │@X07"
  85.         PrintLn "@X1C @X1F│   @X10│@X1ES@X1Bend@X1EM@X1Bes @X18v@X1A1@X18.@X1A00 @X1C- @X13<@X1BS@X1Ehow@X1BM@X1Ees @X1F[@X1CPPE@X1F]@X13> @X1FSearching for unreceived messages@X1C.. @X1F│ @X10  │@X07"
  86.         PrintLn "@X1C @X1F│   @X10└@X1F────────────────────────────────────────────────────────────────────┘   @X10│@X07"
  87.         PrintLn "@X1C @X1F│            @X1C[@X1FSorry but there is no current message to receive@X1C]              @X10│@X07"
  88.         PrintLn "@X1C @X1F│                @X1A───────────────────────────────────────────                 @X10│@X07"
  89.         PrintLn "@X1C @X1F│                  Copyright @X1B1994 @X1C(@X1Ac@X1C) @X1Aby @X1EScott M. Klassen                    @X10│@X07"
  90.         PrintLn "@X1C @X10└────────────────────────────────────────────────────────────────────────────┘@X07"
  91.         Goto LABEL005
  92.         :LABEL004
  93.         DispFile PPEPath() + "NOMESS.SEN", 1
  94.         :LABEL005
  95.         Newline
  96.         Wait
  97.         End
  98.     Endif
  99.     Goto LABEL009
  100.     :LABEL006
  101.     Newline
  102.     Newline
  103.     If (Exist(PPEPath() + "YOUMESS.SEN")) Goto LABEL007
  104.     PrintLn "@X1C @X1F┌────────────────────────────────────────────────────────────────────────────┐@X07"
  105.     PrintLn "@X1F │   @X10┌────────────────────────────────────────────────────────────────────@X1F┐  @X10 │@X07"
  106.     PrintLn "@X1C @X1F│   @X10│@X1ES@X1Bend@X1EM@X1Bes @X18v@X1A1@X18.@X1A00 @X1C- @X13<@X1BS@X1Ehow@X1BM@X1Ees @X1F[@X1CPPE@X1F]@X13> @X1FSearching for unreceived messages@X1C.. @X1F│  @X10 │@X07"
  107.     PrintLn "@X10 @X1F│   @X10└@X1F────────────────────────────────────────────────────────────────────┘  @X10 │@X07"
  108.     PrintLn "@X1C @X1F│         @X1C[@X1EA message was found..But was sent by you, saving message         @X10 │@X07"
  109.     PrintLn "@X1C @X1F│                            @X1Efor the next caller@X1C]                            @X10│@X0E@X07"
  110.     PrintLn "@X1C @X1F│                @X1A───────────────────────────────────────────                 @X10│@X0F@X07"
  111.     PrintLn "@X1C @X1F│                  @X1FCopyright @X1B1994 @X1C(@X1Ac@X1C) @X1Aby @X1EScott M. Klassen                    @X10│@X0C@X07"
  112.     PrintLn "@X10 └────────────────────────────────────────────────────────────────────────────┘@X07"
  113.     Goto LABEL008
  114.     :LABEL007
  115.     DispFile PPEPath() + "YOUMESS.SEN", 1
  116.     :LABEL008
  117.     Newline
  118.     Wait
  119.     End
  120.     :LABEL009
  121.     INTEGER001 = FileInf(PPEPath() + "SENDMESS.COD", 4)
  122.     FOpen 1, PPEPath() + "SENDMESS.COD", 2, 0
  123.     BOOLEAN002 = 0
  124.     While (BOOLEAN002 <> 1) Do
  125.         FSeek 1, INTEGER014, 0
  126.         FRead 1, STRING002, 25
  127.         FRead 1, STRING003, 50
  128.         FRead 1, STRING004, 1
  129.         FRead 1, DATE001, 2
  130.         FRead 1, TIME001, 4
  131.         FRead 1, STRING001, 25
  132.         FRead 1, STRING010, 8
  133.         INTEGER014 = INTEGER014 + 115
  134.         If (INTEGER014 == INTEGER001) Then
  135.             BOOLEAN002 = 1
  136.         Endif
  137.         If (STRING001 == "") Then
  138.             BOOLEAN002 = 1
  139.         Endif
  140.     EndWhile
  141.     If (STRING001 == "") Then
  142.         If (U_Name() == STRING002) Then
  143.             FClose 1
  144.             Goto LABEL006
  145.         Endif
  146.     Endif
  147.     If (STRING001 <> "") Then
  148.         FClose 1
  149.         Goto LABEL003
  150.     Endif
  151.     FClose 1
  152.     FOpen 2, PPEPath() + "SENDMESS.COD", 2, 0
  153.     FSeek 2, INTEGER014 - 33, 0
  154.     FWrite 2, U_Name(), 25
  155.     FWrite 2, Date(), 2
  156.     FWrite 2, Time(), 4
  157.     FClose 2
  158.     INTEGER001 = FileInf(PPEPath() + "SENDMESS.COD", 4)
  159.     FOpen 3, PPEPath() + "SENDMESS.COD", 2, 0
  160.     FSeek 3, INTEGER014 - 115, 0
  161.     FRead 3, STRING002, 25
  162.     FRead 3, STRING003, 50
  163.     FRead 3, STRING004, 1
  164.     FRead 3, DATE001, 2
  165.     FRead 3, TIME001, 4
  166.     FRead 3, STRING001, 25
  167.     FRead 3, DATE002, 2
  168.     FRead 3, TIME002, 4
  169.     FClose 3
  170.     If (Upper(STRING004) == "N") Then
  171.         STRING002 = "@X1F<@X13NOT @X12- @X13DISCLOSED@X1F>"
  172.     Endif
  173.     STRING005 = StripAtx(STRING002)
  174.     INTEGER003 = Len(STRING003)
  175.     INTEGER004 = Len(STRING005)
  176.     INTEGER005 = 57 - INTEGER004
  177.     INTEGER002 = 50 - INTEGER003
  178.     INTEGER010 = INTEGER002 / 2
  179.     INTEGER011 = INTEGER005 / 2
  180.     Cls
  181.     PrintLn "@X07           @X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X07"
  182.     PrintLn "@X0F           @X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X07"
  183.     PrintLn "@X07           @X10 @X19┌──────────────────────────────────────────────────────@X10┐@X07"
  184.     PrintLn "@X07           @X10 @X19│  @X10┌────@X19┐                                      @X10┌────@X19┐  @X10│@X07"
  185.     PrintLn "@X07           @X10 @X19│  @X10│@X18■■■■@X19│       ⌠@X10┌───────────────────@X19┐⌠        @X10│@X18■■■■@X19│  @X10│@X07"
  186.     PrintLn "@X07           @X10 @X19│  @X10└@X19────┘       ⌡@X10│ @X13° @X1ES@X1Fend@X1EM@X1Fes @X1Bv@X1F1@X17.@X1F0 @X13°  @X19│⌡        @X10└@X19────┘  @X10│@X07"
  187.     PrintLn "@X07           @X10 @X19│                @X10└@X19───────────────────┘                 @X10│@X07"
  188.     PrintLn "@X07           @X10 @X19│        @X1BCopyright @X17(@X1Dc@X17) @X1E1993-94 @X1AScott M. Klassen        @X10│@X07"
  189.     PrintLn "@X07           @X10 @X19└@X10──────────────────────────────────────────────────────┘@X07"
  190.     PrintLn "@X07           @X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X19┌─@X10┐@X07"
  191.     PrintLn "@X0F           @X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X19└@X10─┘@X07"
  192.     PrintLn "@X07           @X10                                                         @X07"
  193.     PrintLn "@X07           @X10           @X1EYour message from the last caller:            @X07"
  194.     PrintLn "@X07           @X10                                                         @X07"
  195.     PrintLn "@X07           @X11 @X10┌──────────────────────────────────────────────────────@X19┐@X07"
  196.     PrintLn "@X07           @X11 @X10│@X1F  " + Space(INTEGER010) + STRING003 + "@POS:67@ @X19│@X07"
  197.     PrintLn "@X07           @X11 @X10└@X19──────────────────────────────────────────────────────┘@X07"
  198.     PrintLn "@X07           @X1F                          From@X1C:                          @X07"
  199.     PrintLn "@X07           @X1F" + Space(INTEGER011) + STRING002 + "@POS:67@  @X07"
  200.     PrintLn "@X07           @X1F                                                         @X07"
  201.     INTEGER015 = INTEGER014 / 115
  202.     Log "SendMes v1.0 - User Received a Message. Rec #" + String(INTEGER015), 0
  203.     INTEGER009 = FileInf(PPEPath() + "SENDMESS.COD", 4)
  204.     FOpen 3, PPEPath() + "SENDMESS.COD", 2, 0
  205.     FSeek 3, INTEGER014 - 115, 0
  206.     FRead 3, STRING006, 25
  207.     FRead 3, STRING003, 50
  208.     FRead 3, STRING004, 1
  209.     Select Case (STRING004)
  210.         Case "Y"
  211.             STRING004 = "No"
  212.         Case "N"
  213.             STRING004 = "Yes"
  214.     End Select
  215.     FSeek 3, INTEGER014 - 1, 0
  216.     FRead 3, STRING007, 1
  217.     FClose 3
  218.     If (STRING007 == "Y") Then
  219.         PrintLn "               @X0C             Writing return receipt..."
  220.         FCreate 3, PPEPath() + "MESSAGE.TXT", 2, 0
  221.         FPutLn 3, "@X0FHello @X0E@FIRST@@X0F,"
  222.         FPutLn 3, "    This is a return receipt from your message you sent on..."
  223.         FPutLn 3, "@X09Date Sent@X0D  :@X0B  " + String(DATE001)
  224.         FPutLn 3, "@X09Time Sent@X0D  :@X0B  " + String(TIME001)
  225.         FPutLn 3, "@X09Message@X0D    :@X0E  " + STRING003
  226.         FPutLn 3, "@X09Received by@X0D:@X0B  " + U_Name()
  227.         FPutLn 3, "@X09Received at@X0D:@X0B  " + String(TIME002)
  228.         FPutLn 3, "@X09Received on@X0D:@X0B  " + String(DATE002)
  229.         FPutLn 3, "@X09Anonymous@X0D  :  @X0C" + STRING004
  230.         FPutLn 3, "@X0A---"
  231.         FPutLn 3, " @X09■ @X0ASend@X0BMes @X0Ev@X0F1@X08.@X0F00 @X0B[@X0EPPE@X0B] @X0E- @X0FGenerated Return Receipt"
  232.         FPutLn 3, " @X09■ @X0ECopyright @X0F(@X0Ec@X0F) @X0B1994 @X0Cby@X0F: @X0EScott M. Klassen"
  233.         FPutLn 3, " @X09■ @X0F@BOARDNAME@ @X07"
  234.         FClose 3
  235.         Message INTEGER013, STRING006, "SendMes v1.0", "Return Receipt", "R", Date() + INTEGER012, 0, 0, PPEPath() + "MESSAGE.TXT"
  236.     Endif
  237.     Wait
  238.     End
  239.     INTEGER006 = Len(STRING003)
  240.     INTEGER007 = 50 - INTEGER006
  241.     INTEGER002 = INTEGER007 / 2
  242.     INTEGER008 = 1
  243.     If (INTEGER006 == 50) Then
  244.         INTEGER008 = 0
  245.     Endif
  246.     PrintLn "            @X07@X10                                                         @X07"
  247.     PrintLn "            @X10           @X1EYour message from the last caller:            @X07"
  248.     PrintLn "            @X10                                                         @X07"
  249.     PrintLn "            @X11 @X10┌──────────────────────────────────────────────────────@X19┐@X07"
  250.     PrintLn "            @X11 @X19│  " + Space(INTEGER002) + STRING003 + Space(INTEGER002) + Space(INTEGER008) + "  @X19│@X07"
  251.     PrintLn "            @X11 @X19└──────────────────────────────────────────────────────┘@X07"
  252.     STRING005 = StripAtx(STRING002)
  253.     INTEGER006 = Len(STRING005)
  254.     INTEGER007 = 55.5 - INTEGER006
  255.     INTEGER002 = INTEGER007 / 2
  256.     PrintLn "            @X1F                                                         @X07"
  257.     PrintLn "            @X1F" + Space(INTEGER002) + STRING002 + Space(INTEGER005) + "@X07"
  258.     PrintLn "            @X1F                                                         @X07"
  259.  
  260. ;------------------------------------------------------------------------------
  261. ;
  262. ; Usage report (before postprocessing)
  263. ;
  264. ; ■ Statements used :
  265. ;
  266. ;    3       End
  267. ;    1       Cls
  268. ;    3       Wait
  269. ;    27      Goto 
  270. ;    34      Let 
  271. ;    47      PrintLn 
  272. ;    17      If 
  273. ;    2       DispFile 
  274. ;    1       FCreate 
  275. ;    5       FOpen 
  276. ;    8       FClose 
  277. ;    13      FPutLn 
  278. ;    1       GetUser
  279. ;    1       Log 
  280. ;    6       Newline
  281. ;    1       Message 
  282. ;    6       FSeek 
  283. ;    23      FRead 
  284. ;    3       FWrite 
  285. ;
  286. ;
  287. ; ■ Functions used :
  288. ;
  289. ;    5       /
  290. ;    42      +
  291. ;    8       -
  292. ;    11      ==
  293. ;    2       <>
  294. ;    17      !
  295. ;    4       Len(
  296. ;    1       Upper()
  297. ;    7       Space()
  298. ;    2       Date()
  299. ;    1       Time()
  300. ;    3       U_Name()
  301. ;    2       StripAtx()
  302. ;    5       String()
  303. ;    17      PPEPath()
  304. ;    4       Exist()
  305. ;    4       FileInf()
  306. ;
  307. ;------------------------------------------------------------------------------
  308. ;
  309. ; Analysis flags : No flag
  310. ;
  311. ;------------------------------------------------------------------------------
  312. ;
  313. ; Postprocessing report
  314. ;
  315. ;    0       For/Next
  316. ;    1       While/EndWhile
  317. ;    11      If/Then or If/Then/Else
  318. ;    1       Select Case
  319. ;
  320. ;------------------------------------------------------------------------------
  321. ;                 AEGiS Corp - Break the routines, code against the machines!
  322. ;------------------------------------------------------------------------------
  323.