home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PCBOARD / FPCB270A.ZIP / FPCBNM.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-02-06  |  17KB  |  769 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.     Integer  INTEGER001
  20.     Integer  INTEGER002
  21.     String   STRING001
  22.     String   STRING002
  23.     String   STRING003
  24.     String   STRING004
  25.     String   STRING005
  26.     String   STRING006
  27.     String   STRING007
  28.     String   STRING008
  29.     String   STRING009
  30.     String   STRING010
  31.     String   STRING011
  32.     String   STRING012
  33.     String   STRING013
  34.     String   STRING014
  35.     String   STRING015
  36.     String   STRING016
  37.     String   STRING017
  38.     String   STRING018
  39.     String   STRING019
  40.     String   STRING020
  41.     String   STRING021
  42.     String   STRING022
  43.     String   STRING023
  44.     String   STRING024
  45.     String   STRING025
  46.     String   STRING026
  47.     String   STRING027
  48.     String   STRING028
  49.     String   STRING029
  50.     String   STRING030
  51.     String   STRING031
  52.     String   STRING032
  53.     String   STRING033
  54.     String   STRING034
  55.     String   STRING035
  56.     String   STRING036
  57.     String   STRING037
  58.     String   STRING038
  59.     String   STRING039
  60.     String   STRING040
  61.     String   STRING041
  62.     String   STRING042
  63.     String   STRING043
  64.     String   STRING044
  65.     String   STRING045
  66.     String   STRING046
  67.     String   STRING047
  68.     String   STRING048
  69.     String   STRING049
  70.     String   STRING050
  71.     String   STRING051
  72.     String   STRING052
  73.     String   STRING053
  74.     String   STRING054
  75.     String   STRING055
  76.     String   STRING056
  77.     String   STRING057
  78.     String   STRING058
  79.     String   STRING059
  80.     String   STRING060
  81.     String   STRING061
  82.     String   STRING062
  83.     String   STRING063
  84.     String   STRING064
  85.     String   STRING065
  86.     String   STRING066
  87.     String   STRING067
  88.     String   STRING068
  89.     String   STRING069
  90.     String   STRING070
  91.     String   STRING071
  92.     String   STRING072
  93.     String   STRING073
  94.     String   STRING074
  95.     String   STRING075
  96.     String   STRING076
  97.     String   STRING077
  98.     String   STRING078
  99.  
  100. ;------------------------------------------------------------------------------
  101.  
  102.     :LABEL001
  103.     STRING011 = Chr(13)
  104.     STRING029 = Space(6) + STRING011
  105.     STRING005 = "FPCBNM"
  106.     STRING007 = TokenStr()
  107.     Tokenize STRING007
  108.     If (TokCount() < 1) Then
  109.         Gosub LABEL021
  110.         PrintLn "@X0BPLEASE @X0Ftell the @X0BSYSOP @X0Fthat there is @X0BNO FPCBNM Configuration File Specified!@X07"
  111.         Log "@X0ENo FPCBNM Configuration File Specified@X07", 1
  112.     Else
  113.         GetToken STRING012
  114.         If (Exist(PPEPath() + STRING012)) Goto LABEL002
  115.         Gosub LABEL021
  116.         PrintLn "@X0BPLEASE @X0Ftell the @X0BSYSOP @X0Fthat there is @X0BNO FPCBNM Configuration File Found!@X07"
  117.         Log "@X0ENo FPCBNM Configuration File Found@X07", 1
  118.         Goto LABEL024
  119.         :LABEL002
  120.         FOpen 1, PPEPath() + STRING012, 2, 0
  121.         FGet 1, STRING002
  122.         FGet 1, STRING004
  123.         FGet 1, STRING020
  124.         FGet 1, STRING021
  125.         FGet 1, STRING024
  126.         FGet 1, STRING016
  127.         FGet 1, STRING017
  128.         FGet 1, STRING018
  129.         FGet 1, STRING046
  130.         FGet 1, STRING045
  131.         FGet 1, STRING048
  132.         FClose 1
  133.         If (STRING002 == "") Goto LABEL023
  134.         If (STRING020 == "") Goto LABEL023
  135.         If (STRING021 == "") Goto LABEL023
  136.         If (STRING016 == "") Goto LABEL023
  137.         If (STRING017 == "") Goto LABEL023
  138.         If (STRING018 == "") Goto LABEL023
  139.         If (STRING004 == "00000000") Goto LABEL022
  140.         If (STRING048 == "") Goto LABEL023
  141.         STRING001 = ReadLine(PCBDat(), 94)
  142.         STRING001 = Strip(STRING001, " ")
  143.         STRING002 = Strip(STRING002, " ")
  144.         STRING001 = Upper(STRING001)
  145.         STRING002 = Upper(STRING002)
  146.         STRING005 = Upper(STRING005)
  147.         STRING006 = STRING005 + STRING001 + STRING002
  148.         INTEGER002 = -1
  149.         INTEGER001 = 1
  150.         While (INTEGER001 <= Len(STRING006)) Do
  151.             INTEGER002 = (INTEGER002 * Asc(Mid(STRING006, INTEGER001, 1))) / 3
  152.             INTEGER002 = And(INTEGER002, 1073741823)
  153.             INTEGER001 = INTEGER001 + 1
  154.         EndWhile
  155.         STRING003 = I2S(INTEGER002, 16)
  156.         If (STRING003 <> STRING004) Then
  157.             Goto LABEL022
  158.         Endif
  159.         :LABEL003
  160.         STRING020 = Upper(STRING020)
  161.         STRING016 = "(" + STRING016 + ")"
  162.         If (STRING016 == STRING016) Then
  163.             STRING016 = Space(6)
  164.         Endif
  165.         STRING021 = Upper(STRING021)
  166.         If (STRING021 == "Y") Goto LABEL005
  167.         If (STRING021 == "N") Goto LABEL004
  168.         Goto LABEL024
  169.         :LABEL004
  170.         Goto LABEL009
  171.         Goto LABEL024
  172.         :LABEL005
  173.         If (STRING007 == "1") Goto LABEL009
  174.         If (STRING007 == "2") Goto LABEL018
  175.         If (STRING007 <> "") STRING008 = ""
  176.         GetUser
  177.         If (U_Sec >= STRING046) Goto LABEL006
  178.         Goto LABEL007
  179.         Goto LABEL024
  180.         :LABEL006
  181.         If (STRING045 == "Y") Goto LABEL008
  182.         :LABEL007
  183.         Cls
  184.         STRING008 = ""
  185.         If (Exist(PPEPath() + "FPCBNM1")) Then
  186.             DispFile PPEPath() + "FPCBNM1", 1 + 2 + 4
  187.         Else
  188.             Newline
  189.             PrintLn "@X1F ┌──────────────────────────────────────────────────────────────────────────┐ @X07"
  190.             PrintLn "@X1F │ @SYSDATE:8@       S E L E C T   T Y P E   O F   N E T M A I L         @SYSTIME:5R@ │ @X07"
  191.             PrintLn "@X1F └──────────────────────────────────────────────────────────────────────────┘ @X07"
  192.             PrintLn "@X1F ┌──────────────────────────────────────────────────────────────────────────┐ @X07"
  193.             PrintLn "@X1F │                (1) NetMail to a User at a Node in FidoNet                │ @X07"
  194.             PrintLn "@X1F │                (2) NetMail to a User at an InterNet Site                 │ @X07"
  195.             PrintLn "@X1F └──────────────────────────────────────────────────────────────────────────┘ @X07"
  196.             Newlines 2
  197.         Endif
  198.         If (Exist(PPEPath() + "FPCBTX1")) Then
  199.             DispFile PPEPath() + "FPCBTX1", 1 + 4 + 2
  200.             InputText "", STRING008, 14, 1
  201.             STRING008 = Upper(STRING008)
  202.         Else
  203.             InputStr " @X0FEnter@X0E=(@X0FQ@X0E)uit, Netmail Selection Command@X0E", STRING008, 14, 1, "q, Q, 1, 2", 2 + 4 + 128 + 8
  204.         Endif
  205.         If (STRING008 == "1") Goto LABEL012
  206.         If (STRING008 == "2") Goto LABEL018
  207.         If (STRING008 == "Q") Goto LABEL024
  208.         If (STRING008 == "") Goto LABEL024
  209.         Goto LABEL024
  210.         :LABEL008
  211.         STRING008 = ""
  212.         Cls
  213.         If (Exist(PPEPath() + "FPCBNM2")) Then
  214.             DispFile PPEPath() + "FPCBNM2", 1 + 2 + 4
  215.         Else
  216.             Newline
  217.             PrintLn "@X1F ┌──────────────────────────────────────────────────────────────────────────┐ @X07"
  218.             PrintLn "@X1F │ @SYSDATE:8@       S E L E C T   T Y P E   O F   N E T M A I L         @SYSTIME:5R@ │ @X07"
  219.             PrintLn "@X1F └──────────────────────────────────────────────────────────────────────────┘ @X07"
  220.             PrintLn "@X1F ┌──────────────────────────────────────────────────────────────────────────┐ @X07"
  221.             PrintLn "@X1F │                (1) NetMail to a User at a Node in FidoNet                │ @X07"
  222.             PrintLn "@X1F │                (2) NetMail to a User at an InterNet Site                 │ @X07"
  223.             PrintLn "@X1F │                (3) NetMail via Auto-Addresser                            │ @X07"
  224.             PrintLn "@X1F └──────────────────────────────────────────────────────────────────────────┘ @X07"
  225.             Newlines 2
  226.         Endif
  227.         If (Exist(PPEPath() + "FPCBTX2")) Then
  228.             Newlines 2
  229.             DispFile PPEPath() + "FPCBTX2", 1 + 4 + 2
  230.             InputText "", STRING008, 14, 1
  231.         Else
  232.             InputStr " @X0FEnter@X0E=(@X0FQ@X0E)uit, Netmail Selection Command@X0E", STRING008, 14, 1, "q, Q, 1, 2, 3", 8
  233.         Endif
  234.         If (STRING008 == "1") Goto LABEL012
  235.         If (STRING008 == "2") Goto LABEL018
  236.         If (STRING008 == "3") Goto LABEL017
  237.         If (STRING008 == "Q") Goto LABEL024
  238.         If (STRING008 == "") Goto LABEL024
  239.         Goto LABEL024
  240.         :LABEL009
  241.         GetUser
  242.         If (U_Sec >= STRING046) Goto LABEL010
  243.         Goto LABEL012
  244.         Goto LABEL024
  245.         :LABEL010
  246.         If (STRING045 == "Y") Goto LABEL011
  247.         Goto LABEL012
  248.         Goto LABEL024
  249.         :LABEL011
  250.         Cls
  251.         STRING008 = ""
  252.         If (Exist(PPEPath() + "FPCBNM7")) Then
  253.             DispFile PPEPath() + "FPCBNM7", 1 + 2 + 4
  254.         Else
  255.             Newline
  256.             PrintLn "@X1F ┌──────────────────────────────────────────────────────────────────────────┐ @X07"
  257.             PrintLn "@X1F │ @SYSDATE:8@       S E L E C T   T Y P E   O F   N E T M A I L         @SYSTIME:5R@ │ @X07"
  258.             PrintLn "@X1F └──────────────────────────────────────────────────────────────────────────┘ @X07"
  259.             PrintLn "@X1F ┌──────────────────────────────────────────────────────────────────────────┐ @X07"
  260.             PrintLn "@X1F │                (1) NetMail to a User at a Node in FidoNet                │ @X07"
  261.             PrintLn "@X1F │                (2) NetMail Via Auto-Addresser                            │ @X07"
  262.             PrintLn "@X1F └──────────────────────────────────────────────────────────────────────────┘ @X07"
  263.             Newline
  264.         Endif
  265.         If (Exist(PPEPath() + "FPCBTX3")) Then
  266.             DispFile PPEPath() + "FPCBTX3", 1 + 4 + 2
  267.             InputText "", STRING008, 14, 1
  268.         Else
  269.             InputStr " @X0FEnter@X0E=(@X0FQ@X0E)uit, Netmail Selection Command@X0E", STRING008, 14, 1, "q, Q, 1, 2", 2 + 4 + 128 + 8
  270.         Endif
  271.         If (STRING008 == "1") Goto LABEL012
  272.         If (STRING008 == "2") Goto LABEL017
  273.         If (STRING008 == "Q") Goto LABEL024
  274.         If (STRING008 == "") Goto LABEL024
  275.         Goto LABEL024
  276.         :LABEL012
  277.         Cls
  278.         If (Exist(PPEPath() + "FPCBNM3")) Then
  279.             DispFile PPEPath() + "FPCBNM3", 1 + 2 + 4
  280.         Else
  281.             Newline
  282.             PrintLn "@X1F ┌───────────────────────────────────────────────────────────────────────────┐ @X07"
  283.             PrintLn "@X1F │    You are about to enter an FIDONET NETMAIL MESSAGE.  Ensure that you    │ @X07"
  284.             PrintLn "@X1F │                   have the following prior to beginning:                  │ @X07"
  285.             PrintLn "@X1F │                                                                           │ @X07"
  286.             PrintLn "@X1F │              o The FULL REAL NAME of the INTENDED reciptient              │ @X07"
  287.             PrintLn "@X1F │     o The FULL FIDONET NODE ADDRESS where the Recipient can be found.     │ @X07"
  288.             PrintLn "@X1F └───────────────────────────────────────────────────────────────────────────┘ @X07"
  289.         Endif
  290.         Newline
  291.         DispText 199, 32768
  292.         InputText "", STRING013, 14, 60
  293.         PrintLn 
  294.         DispText 200, 32768
  295.         InputText "", STRING014, 14, 60
  296.         If (Len(STRING014) < 2) Goto LABEL024
  297.         GetUser
  298.         Select Case (U_FSEP)
  299.             Case 0
  300.                 STRING010 = NoChar()
  301.             Case 1
  302.                 STRING010 = YesChar()
  303.         End Select
  304.         If (U_Sec >= STRING018) Then
  305.             STRING019 = NoChar()
  306.         Endif
  307.         Newline
  308.         If (Exist(PPEPath() + "FPCBTX4")) Then
  309.             DispFile PPEPath() + "FPCBTX4", 1 + 4 + 2
  310.             InputText "", STRING015, 14, 20
  311.         Else
  312.             InputStr "@X0EEnter FidoNet Node Number@X0E", STRING015, 14, 20, "1234567890/:.", 8
  313.         Endif
  314.         :LABEL013
  315.         STRING015 = "(" + STRING015 + ")"
  316.         If (STRING020 == "INTERPCB") Goto LABEL014
  317.         If (U_Sec < STRING017) Then
  318.             Goto LABEL014
  319.         Endif
  320.         Cls
  321.         If (Exist(PPEPath() + "FPCBNM4")) Then
  322.             DispFile PPEPath() + "FPCBNM4", 1 + 2 + 4
  323.         Else
  324.             Newline
  325.             PrintLn " "
  326.             PrintLn "@X0F     Select the Netmail Priority You Wish Your Message To Be Routed As:@X07"
  327.             PrintLn " "
  328.             PrintLn "    @X0F(@X0EC@X0F)  @X0ACRASH       @X0F=  @X0ESend to FidoNet Node Directly.@X07"
  329.             PrintLn "    @X0F(@X0EH@X0F)  @X0AHOLD        @X0F=  @X0EHold for Pickup by FidoNet Node.@X07"
  330.             PrintLn "    @X0F(@X0EI@X0F)  @X0AIMMEDIATELY @X0F=  @X0EImmediately Route Along Normal FidoNet Chain.@X07"
  331.             PrintLn "    @X0F(@X0EN@X0F)  @X0ANONE        @X0F=  @X0ENo Transfer Mode Desired.@X07"
  332.             PrintLn " "
  333.             Newline
  334.         Endif
  335.         If (Exist(PPEPath() + "FPCBTX5")) Then
  336.             DispFile PPEPath() + "FPCBTX5", 1 + 4 + 2
  337.             InputText "", STRING009, 14, 1
  338.             STRING009 = Upper(STRING009)
  339.         Else
  340.             InputStr "@X0E Select NetMail Priority, (@X0FENTER@X0E) for Default Priority@X0E", STRING009, 15, 1, "C, c, I, i, H, h, n, N", 2 + 4 + 128 + 8
  341.         Endif
  342.         Select Case (STRING009)
  343.             Case "C"
  344.                 STRING016 = "(CRASH)"
  345.             Case "I"
  346.                 STRING016 = "(IMM)"
  347.             Case "H"
  348.                 STRING016 = "(HOLD)"
  349.             Case "N"
  350.                 STRING016 = Space(2)
  351.         End Select
  352.         :LABEL014
  353.         STRING030 = "E " + STRING011 + STRING013 + STRING011 + STRING014 + STRING011 + STRING010 + STRING011
  354.         STRING031 = STRING015 + STRING011
  355.         STRING032 = STRING016 + STRING011
  356.         STRING033 = "E " + STRING011 + STRING013 + STRING011 + STRING014 + STRING011
  357.         STRING034 = "@<" + STRING015 + STRING011
  358.         Select Case (STRING020)
  359.             Case "FIDOPCB"
  360.                 Goto LABEL015
  361.             Case "QFRONT"
  362.                 Goto LABEL015
  363.             Case Else
  364.                 Goto LABEL016
  365.         End Select
  366.         :LABEL015
  367.         If ((U_Sec < STRING018) && (U_FSEP == 0)) Then
  368.             KbdStuff STRING033 + STRING031 + STRING032
  369.             Goto LABEL024
  370.         ElseIf ((U_Sec >= STRING018) && (U_FSEP == 0)) Then
  371.             KbdStuff STRING033 + STRING031 + STRING032
  372.             Goto LABEL024
  373.         Else
  374.             KbdStuff STRING030 + STRING031 + STRING032
  375.             Goto LABEL024
  376.         Endif
  377.         Goto LABEL024
  378.         :LABEL016
  379.         If ((U_Sec < STRING018) && (U_FSEP == 0)) Then
  380.             KbdStuff STRING033 + STRING034
  381.             Goto LABEL024
  382.         ElseIf ((U_Sec >= STRING018) && (U_FSEP == 0)) Then
  383.             KbdStuff STRING033 + STRING034
  384.             Goto LABEL024
  385.         Else
  386.             KbdStuff STRING030 + STRING034
  387.             Goto LABEL024
  388.         Endif
  389.         Goto LABEL024
  390.         :LABEL017
  391.         If (STRING046 == "") Goto LABEL023
  392.         If (STRING045 == "") Goto LABEL023
  393.         Cls
  394.         Newline
  395.         If (Exist(PPEPath() + "ADDRESS.TXT")) DispFile PPEPath() + "ADDRESS.TXT", 1 + 2 + 4
  396.         FOpen 1, PPEPath() + "ADDRESS.CFG", 0, 3
  397.         FGet 1, STRING049
  398.         FGet 1, STRING059
  399.         FGet 1, STRING069
  400.         FGet 1, STRING050
  401.         FGet 1, STRING060
  402.         FGet 1, STRING070
  403.         FGet 1, STRING051
  404.         FGet 1, STRING061
  405.         FGet 1, STRING071
  406.         FGet 1, STRING052
  407.         FGet 1, STRING062
  408.         FGet 1, STRING072
  409.         FGet 1, STRING053
  410.         FGet 1, STRING063
  411.         FGet 1, STRING073
  412.         FGet 1, STRING054
  413.         FGet 1, STRING064
  414.         FGet 1, STRING074
  415.         FGet 1, STRING055
  416.         FGet 1, STRING065
  417.         FGet 1, STRING075
  418.         FGet 1, STRING056
  419.         FGet 1, STRING066
  420.         FGet 1, STRING076
  421.         FGet 1, STRING057
  422.         FGet 1, STRING067
  423.         FGet 1, STRING077
  424.         FGet 1, STRING058
  425.         FGet 1, STRING068
  426.         FGet 1, STRING078
  427.         FClose 1
  428.         STRING047 = ""
  429.         If (Exist(PPEPath() + "FPCBTX6")) Then
  430.             Newline
  431.             DispFile PPEPath() + "FPCBTX6", 1 + 4 + 2
  432.             InputText "", STRING047, 14, 1
  433.             STRING047 = Upper(STRING047)
  434.         Else
  435.             InputStr "@X0E(ENTER)=Quit, Select Desired Address@X0E", STRING047, 15, 2, "Qq1234567890", 2 + 4 + 128 + 256 + 8
  436.         Endif
  437.         Select Case (STRING047)
  438.             Case "1"
  439.                 STRING015 = STRING049
  440.                 STRING013 = STRING059
  441.                 STRING014 = STRING069
  442.                 Goto LABEL013
  443.             Case "2"
  444.                 STRING015 = STRING050
  445.                 STRING013 = STRING060
  446.                 STRING014 = STRING070
  447.                 Goto LABEL013
  448.             Case "3"
  449.                 STRING015 = STRING051
  450.                 STRING013 = STRING061
  451.                 STRING014 = STRING071
  452.                 Goto LABEL013
  453.             Case "4"
  454.                 STRING015 = STRING052
  455.                 STRING013 = STRING062
  456.                 STRING014 = STRING072
  457.                 Goto LABEL013
  458.             Case "5"
  459.                 STRING015 = STRING053
  460.                 STRING013 = STRING063
  461.                 STRING014 = STRING073
  462.                 Goto LABEL013
  463.             Case "6"
  464.                 STRING015 = STRING054
  465.                 STRING013 = STRING064
  466.                 STRING014 = STRING074
  467.                 Goto LABEL013
  468.             Case "7"
  469.                 STRING015 = STRING055
  470.                 STRING013 = STRING065
  471.                 STRING014 = STRING075
  472.                 Goto LABEL013
  473.             Case "8"
  474.                 STRING015 = STRING056
  475.                 STRING013 = STRING066
  476.                 STRING014 = STRING076
  477.                 Goto LABEL013
  478.             Case "9"
  479.                 STRING015 = STRING057
  480.                 STRING013 = STRING067
  481.                 STRING014 = STRING077
  482.                 Goto LABEL013
  483.             Case "10"
  484.                 STRING015 = STRING058
  485.                 STRING013 = STRING068
  486.                 STRING014 = STRING078
  487.                 Goto LABEL013
  488.             Case "Q"
  489.                 Goto LABEL001
  490.             Case STRING011
  491.                 Goto LABEL024
  492.         End Select
  493.         Goto LABEL024
  494.         :LABEL018
  495.         If (STRING024 == "") Goto LABEL023
  496.         STRING024 = "(" + STRING024 + ")"
  497.         Cls
  498.         If (Exist(PPEPath() + "FPCBNM5")) Then
  499.             DispFile PPEPath() + "FPCBNM5", 1 + 2 + 4
  500.         Else
  501.             Newline
  502.             PrintLn "@X1F ┌───────────────────────────────────────────────────────────────────────────┐ @X07"
  503.             PrintLn "@X1F │    You are about to enter an INTERNET E-MAIL MESSAGE.  Ensure that you    │ @X07"
  504.             PrintLn "@X1F │                   have the following prior to beginning:                  │ @X07"
  505.             PrintLn "@X1F │                                                                           │ @X07"
  506.             PrintLn "@X1F │              o the INTERNET ALIAS of the INTENDED reciptient              │ @X07"
  507.             PrintLn "@X1F │        o Site and Domain where the Intended Recipient can be found        │ @X07"
  508.             PrintLn "@X1F └───────────────────────────────────────────────────────────────────────────┘ @X07"
  509.         Endif
  510.         Newline
  511.         DispText 200, 32768
  512.         InputText "", STRING014, 14, 53
  513.         If (Len(STRING014) < 2) Goto LABEL024
  514.         Newline
  515.         GetUser
  516.         Select Case (U_FSEP)
  517.             Case 0
  518.                 STRING010 = NoChar()
  519.             Case 1
  520.                 STRING010 = YesChar()
  521.         End Select
  522.         If (U_Sec >= STRING018) Then
  523.             STRING019 = NoChar()
  524.         Endif
  525.         If (Exist(PPEPath() + "FPCBTX7")) Then
  526.             DispFile PPEPath() + "FPCBTX7", 1 + 4 + 2
  527.             InputText "", STRING022, 14, 60
  528.             Newline
  529.         Else
  530.             InputStr "@X0EEnter the user's @X0FNAME@X0E mail is intended for", STRING022, 14, 60, Mask_Ascii(), 2 + 4 + 256
  531.         Endif
  532.         If (Exist(PPEPath() + "FPCBTX8")) Then
  533.             DispFile PPEPath() + "FPCBTX8", 1 + 4 + 2
  534.             InputText "", STRING025, 14, 60
  535.             Newline
  536.         Else
  537.             InputStr "@X0EEnter the InterNet @X0FSITE@X0E this msg is to be sent to", STRING025, 14, 60, Mask_Ascii(), 2 + 4 + 256
  538.         Endif
  539.         If (Exist(PPEPath() + "FPCBTX9")) Then
  540.             DispFile PPEPath() + "FPCBTX9", 1 + 4 + 2
  541.             InputText "", STRING027, 14, 60
  542.         Else
  543.             InputStr "@X0EEnter the InterNet @X0FDOMAIN@X0E this msg is to be sent to", STRING027, 14, 60, Mask_Ascii(), 2 + 4
  544.         Endif
  545.         STRING023 = Lower(STRING022)
  546.         STRING026 = Lower(STRING025)
  547.         STRING028 = Lower(STRING027)
  548.         STRING035 = "E " + STRING011 + "UUCP" + STRING011 + STRING014 + STRING011 + STRING010 + STRING011
  549.         STRING036 = "To: " + STRING023 + "@" + STRING026 + "." + STRING028 + STRING011 + STRING029 + STRING029
  550.         STRING037 = "E " + STRING011 + "UUCP" + STRING011 + STRING014 + STRING011 + STRING019 + STRING011 + STRING010 + STRING011
  551.         STRING038 = "E " + STRING011 + "UUCP" + STRING011 + STRING014 + STRING011
  552.         STRING039 = STRING024 + STRING011
  553.         STRING040 = "E " + STRING011 + "UUCP" + STRING011 + STRING014 + STRING011 + STRING010 + STRING011
  554.         STRING041 = "E " + STRING011 + "UUCP" + STRING011 + STRING014 + STRING011
  555.         STRING042 = "E " + STRING011 + "UUCP" + STRING011 + STRING014 + STRING011 + STRING019 + STRING011 + STRING010 + STRING011
  556.         STRING043 = "@<" + STRING024 + STRING011
  557.         STRING044 = "To: " + STRING023 + "@" + STRING026 + "." + STRING028 + STRING011 + STRING029 + STRING029
  558.         Select Case (STRING020)
  559.             Case "FIDOPCB"
  560.                 Goto LABEL019
  561.             Case "QFRONT"
  562.                 Goto LABEL019
  563.             Case Else
  564.                 Goto LABEL020
  565.         End Select
  566.         :LABEL019
  567.         If ((U_Sec < STRING018) && (U_FSEP == 0)) Then
  568.             KbdStuff STRING038 + STRING039 + STRING036
  569.             Goto LABEL024
  570.         ElseIf ((U_Sec >= STRING018) && (U_FSEP == 0)) Then
  571.             KbdStuff STRING038 + STRING039 + STRING036
  572.             Goto LABEL024
  573.         Else
  574.             KbdStuff STRING035 + STRING039 + STRING036
  575.             Goto LABEL024
  576.         Endif
  577.         Goto LABEL024
  578.         :LABEL020
  579.         If ((U_Sec < STRING018) && (U_FSEP == 0)) Then
  580.             KbdStuff STRING041 + STRING043 + STRING044
  581.             Goto LABEL024
  582.         ElseIf ((U_Sec >= STRING018) && (U_FSEP == 0)) Then
  583.             KbdStuff STRING041 + STRING043 + STRING044
  584.             Goto LABEL024
  585.         Else
  586.             KbdStuff STRING040 + STRING043 + STRING044
  587.             Goto LABEL024
  588.         Endif
  589.         Goto LABEL024
  590.         :LABEL021
  591.         Sound 440
  592.         Delay 9
  593.         Sound 0
  594.         Delay 9
  595.         Return
  596.         :LABEL022
  597.         Gosub LABEL021
  598.         Cls
  599.         Newlines 7
  600.         PrintLn "@X4F ┌───────────────────────────────────────────────────────────────────────────┐ @X07"
  601.         PrintLn "@X4F │                         FPCBNM V2.70 by John Luce                         │ @X07"
  602.         PrintLn "@X4F │                Copyright (c) 1993-94.  ALL RIGHTS RESERVED                │ @X07"
  603.         PrintLn "@X4F │                                                                           │ @X07"
  604.         PrintLn "@X4F │              * * * This Copy of FPCBNM is UNREGISTERED * * *              │ @X07"
  605.         PrintLn "@X4F │                  PLEASE ENCOURAGE YOUR SYSOP TO REGISTER                  │ @X07"
  606.         PrintLn "@X4F └───────────────────────────────────────────────────────────────────────────┘ @X07"
  607.         Delay 91
  608.         Goto LABEL003
  609.         :LABEL023
  610.         If (STRING002 == "") Then
  611.             PrintLn 
  612.             Gosub LABEL021
  613.             PrintLn "@X0EPLEASE @X0Ftell the @X0ESYSOP @X0Fthat there is a @X0EFPCBNM Configuration Error @X0Fon @X0ELine 1@X07"
  614.             Log "@X0EFPCBNM Configuration File  Error Line 1@X07", 1
  615.         Endif
  616.         If (STRING020 == "") Then
  617.             PrintLn 
  618.             Gosub LABEL021
  619.             PrintLn "@X0DPLEASE @X0Ftell the @X0DSYSOP @X0Fthat there is a @X0DFPCBNM Configuration Error @X0Fon @X0DLine 2@X07"
  620.             Log "@X0EFPCBNM Configuration File  Error Line 2@X07", 1
  621.         Endif
  622.         If (STRING021 == "") Then
  623.             PrintLn 
  624.             Gosub LABEL021
  625.             PrintLn "@X09PLEASE @X0Ftell the @X09SYSOP @X0Fthat there is a @X09FPCBNM Configuration Error @X0Fon @X09Line 3@X07"
  626.             Log "@X0EFPCBNM Configuration File  Error Line 3@X07", 1
  627.         Endif
  628.         If (STRING024 == "") Then
  629.             PrintLn 
  630.             Gosub LABEL021
  631.             PrintLn "@X0APLEASE @X0Ftell the @X0ASYSOP @X0Fthat there is a @X0AFPCBNM Configuration Error @X0Fon @X0ALine 4@X07"
  632.             Log "@X0EFPCBNM Configuration File  Error Line 4@X07", 1
  633.         Endif
  634.         If (STRING024 == "") Then
  635.             PrintLn 
  636.             Gosub LABEL021
  637.             PrintLn "@X0BPLEASE @X0Ftell the @X0BSYSOP @X0Fthat there is a @X0BFPCBNM Configuration Error @X0Fon @X0BLine 5@X07"
  638.             Log "@X0EFPCBNM Configuration File  Error Line 5@X07", 1
  639.         Endif
  640.         If (STRING016 == "") Then
  641.             PrintLn 
  642.             Gosub LABEL021
  643.             PrintLn "@X0CPLEASE @X0Ftell the @X0CSYSOP @X0Fthat there is a @X0CFPCBNM Configuration Error @X0Fon @X0CLine 6@X07"
  644.             Log "@X0EFPCBNM Configuration File  Error Line 6@X07", 1
  645.         Endif
  646.         If (STRING017 == "") Then
  647.             PrintLn 
  648.             Gosub LABEL021
  649.             PrintLn "@X0EPLEASE @X0Ftell the @X0ESYSOP @X0Fthat there is a @X0EFPCBNM Configuration Error @X0Fon @X0ELine 7@X07"
  650.             Log "@X0EFPCBNM Configuration File  Error Line 7@X07", 1
  651.         Endif
  652.         If (STRING018 == "") Then
  653.             PrintLn 
  654.             Gosub LABEL021
  655.             PrintLn "@X0DPLEASE @X0Ftell the @X0DSYSOP @X0Fthat there is a @X0DFPCBNM Configuration Error @X0Fon @X0DLine 8@X07"
  656.             Log "@X0EFPCBNM Configuration File  Error Line 8@X07", 1
  657.         Endif
  658.         If (STRING046 == "") Then
  659.             PrintLn 
  660.             Gosub LABEL021
  661.             Log "@X0EFPCBNM Configuration File  Error Line 9@X07", 1
  662.         Endif
  663.         PrintLn "@X09PLEASE @X0Ftell the @X09SYSOP @X0Fthat there is a @X09FPCBNM Configuration Error @X0Fon @X09Line 9@X07"
  664.         If (STRING045 == "") Then
  665.             PrintLn 
  666.             Gosub LABEL021
  667.             PrintLn "@X0APLEASE @X0Ftell the @X0ASYSOP @X0Fthat there is a @X0AFPCBNM Configuration Error @X0Fon @X0ALine 10@X07"
  668.             Log "@X0EFPCBNM Configuration File  Error Line 10@X07", 1
  669.         Endif
  670.         If (STRING048 == "") Then
  671.             PrintLn 
  672.             Gosub LABEL021
  673.             PrintLn "@X0BPLEASE @X0Ftell the @X0BSYSOP @X0Fthat there is a @X0BFPCBNM Configuration Error @X0Fon @X0BLine 11@X07"
  674.             Log "@X0EFPCBNM Configuration File Error Line 11@X07", 1
  675.         Endif
  676.         Goto LABEL024
  677.     Endif
  678.     :LABEL024
  679.     End
  680.  
  681. ;------------------------------------------------------------------------------
  682. ;
  683. ; Usage report (before postprocessing)
  684. ;
  685. ; ■ Statements used :
  686. ;
  687. ;    1       End
  688. ;    8       Cls
  689. ;    198     Goto 
  690. ;    89      Let 
  691. ;    76      PrintLn 
  692. ;    103     If 
  693. ;    16      DispFile 
  694. ;    2       FOpen 
  695. ;    2       FClose 
  696. ;    41      FGet 
  697. ;    4       GetUser
  698. ;    13      Log 
  699. ;    9       InputStr 
  700. ;    14      Gosub 
  701. ;    1       Return
  702. ;    3       Delay 
  703. ;    16      Newline
  704. ;    4       Newlines 
  705. ;    1       Tokenize 
  706. ;    1       GetToken 
  707. ;    3       DispText 
  708. ;    12      InputText 
  709. ;    12      KbdStuff 
  710. ;    2       Sound 
  711. ;
  712. ;
  713. ; ■ Functions used :
  714. ;
  715. ;    1       -
  716. ;    1       *
  717. ;    1       /
  718. ;    193     +
  719. ;    75      ==
  720. ;    2       <>
  721. ;    8       <
  722. ;    1       <=
  723. ;    8       >=
  724. ;    66      !
  725. ;    8       &&
  726. ;    3       Len(
  727. ;    3       Lower()
  728. ;    8       Upper()
  729. ;    1       Mid()
  730. ;    3       Space()
  731. ;    1       Chr()
  732. ;    1       Asc()
  733. ;    4       NoChar()
  734. ;    2       YesChar()
  735. ;    2       Strip()
  736. ;    3       Mask_Ascii()
  737. ;    1       PCBDat()
  738. ;    35      PPEPath()
  739. ;    1       ReadLine()
  740. ;    17      Exist()
  741. ;    1       I2S()
  742. ;    1       TokenStr()
  743. ;    1       And()
  744. ;    1       TokCount()
  745. ;
  746. ;------------------------------------------------------------------------------
  747. ;
  748. ; Analysis flags : d
  749. ;
  750. ; d - Access PCBOARD.DAT ■ 2
  751. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  752. ;     for many PPE so they can find various informations on the system
  753. ;     (system paths, max number of lines in messages, ...) but it may also
  754. ;     be a way to gather vital informations.
  755. ;     ■ Search for : PCBDAT()
  756. ;
  757. ;------------------------------------------------------------------------------
  758. ;
  759. ; Postprocessing report
  760. ;
  761. ;    0       For/Next
  762. ;    1       While/EndWhile
  763. ;    40      If/Then or If/Then/Else
  764. ;    6       Select Case
  765. ;
  766. ;------------------------------------------------------------------------------
  767. ;                 AEGiS Corp - Break the routines, code against the machines!
  768. ;------------------------------------------------------------------------------
  769.