home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / BBS / MAVO15ZA.ZIP / MAVOTE.PPE (.txt) < prev   
PCBoard Programming Language Executable  |  1995-01-08  |  12KB  |  568 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.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     Integer  INTEGER007
  26.     Integer  INTEGER008
  27.     Integer  INTEGER009
  28.     Integer  INTEGER010
  29.     Integer  INTEGER011
  30.     Integer  INTEGER012
  31.     Integer  INTEGER013
  32.     Integer  INTEGER014
  33.     Integer  INTEGER015
  34.     Integer  INTEGER016
  35.     Integer  INTEGER017
  36.     Real     REAL001
  37.     String   STRING002
  38.     String   TSTRING003(15)
  39.     String   STRING004
  40.     String   STRING005
  41.     String   STRING006
  42.     String   STRING007
  43.  
  44. ;------------------------------------------------------------------------------
  45.  
  46.     If (Psa(6) == 0) Then
  47.         PrintLn "Enable your Notes PSA in the PCB Setup!"
  48.         End
  49.     Endif
  50.     GetUser
  51.     For INTEGER011 = 0 To 4
  52.         If (Left(U_Notes(INTEGER011), 2) == "MV") Then
  53.             INTEGER016 = INTEGER011
  54.             Goto LABEL001
  55.         Endif
  56.     Next
  57.     INTEGER010 = 0
  58.     For INTEGER011 = 0 To 4
  59.         If (U_Notes(INTEGER011) == 0) Then
  60.             INTEGER010 = INTEGER011
  61.         Endif
  62.     Next
  63.     If (INTEGER010 == 0) Then
  64.         PrintLn "@X0CYour account does not have any Notes PSA available!!"
  65.     Else
  66.         U_Notes(INTEGER010) = "MV00000000000000000000000000000000000000000"
  67.         INTEGER016 = INTEGER010
  68.         :LABEL001
  69.         FOpen 1, PPEPath() + "mavote.cfg", 0, 0
  70.         FGet 1, INTEGER005
  71.         FGet 1, INTEGER006
  72.         FGet 1, INTEGER007
  73.         FClose 1
  74.         If (Exist(PPEPath() + "mavote.bin") == 0) Then
  75.             PrintLn PPEPath() + "MAVOTE.BIN not found!  Creating new MAVOTE.BIN......"
  76.             FOpen 1, PPEPath() + "mavote.bin", 2, 0
  77.             STRING007 = ""
  78.             INTEGER013 = 0
  79.             For INTEGER011 = 1 To 20
  80.                 FWrite 1, STRING007, 60
  81.                 For INTEGER012 = 1 To 10
  82.                     FWrite 1, STRING007, 40
  83.                     FWrite 1, INTEGER013, 5
  84.                 Next
  85.             Next
  86.             FClose 1
  87.         Endif
  88.         If (Exist(PPEPath() + "mavote.dat") == 1) Then
  89.             PrintLn PPEPath() + "MAVOTE.DAT found!  Converting......."
  90.             FOpen 1, PPEPath() + "mavote.bin", 2, 0
  91.             FOpen 2, PPEPath() + "mavote.dat", 0, 0
  92.             FGet 2, INTEGER015
  93.             If (INTEGER015 <> 0) Then
  94.                 For INTEGER002 = 1 To INTEGER015
  95.                     FGet 2, STRING007
  96.                     FWrite 1, STRING007, 60
  97.                     For INTEGER003 = 1 To 15
  98.                         FGet 2, STRING007
  99.                         FGet 2, INTEGER013
  100.                         If (INTEGER003 < 11) Then
  101.                             FWrite 1, STRING007, 40
  102.                             FWrite 1, INTEGER013, 5
  103.                         Endif
  104.                     Next
  105.                 Next
  106.             Endif
  107.             FClose 2
  108.             FClose 1
  109.             Rename PPEPath() + "MAVOTE.DAT", PPEPath() + "MAVOTE.OLD"
  110.             PrintLn PPEPath() + "MAVOTE.DAT renamed to " + PPEPath() + "MAVOTE.OLD."
  111.         Endif
  112.         FOpen 1, PPEPath() + "mavote.bin", 2, 0
  113.         STRING005 = "MV"
  114.         For INTEGER011 = 1 To 20
  115.             FSeek 1, 510 * INTEGER011 - 510, 0
  116.             FRead 1, STRING007, 60
  117.             If (STRING007 == "") Then
  118.                 STRING005 = STRING005 + "00"
  119.             Endif
  120.             If (STRING007 <> "") Then
  121.                 STRING005 = STRING005 + Mid(U_Notes(INTEGER016), 1 + INTEGER011 * 2, 2)
  122.             Endif
  123.         Next
  124.         U_Notes(INTEGER016) = STRING005
  125.         :LABEL002
  126.         INTEGER001 = 0
  127.         Print "@CLS@"
  128.         PrintLn "  @X0AMoon Angel Vote PPE @X0Ev1.4Z @X0Awritten by @X0BRyan Yu @X0Afor @X0BMoon Angel Productions"
  129.         PrintLn 
  130.         INTEGER012 = 0
  131.         For INTEGER011 = 1 To 20
  132.             FSeek 1, 510 * INTEGER011 - 510, 0
  133.             FRead 1, STRING007, 60
  134.             If (STRING007 <> "") Then
  135.                 If (ToInt(Mid(U_Notes(INTEGER016), 1 + INTEGER011 * 2, 2)) <> 0) Then
  136.                     PrintLn "    @X02VQ @X09#" + String(INTEGER011) + ":@X03" + STRING007
  137.                 Endif
  138.                 If (ToInt(Mid(U_Notes(INTEGER016), 1 + INTEGER011 * 2, 2)) == 0) Then
  139.                     PrintLn "  @X0C* @X0AVQ @X0E#" + String(INTEGER011) + ":@X0B" + STRING007
  140.                     INTEGER012 = 1
  141.                 Endif
  142.             Endif
  143.         Next
  144.         PrintLn 
  145.         If (INTEGER012 == 1) Then
  146.             PrintLn "  @X0C* @X0A- You have not voted on that question!"
  147.         Endif
  148.         INTEGER012 = 0
  149.         If (U_Sec > INTEGER005) Then
  150.             Print "  @X09[@X0BA@X09]dd a new voting question       "
  151.             INTEGER012 = 1
  152.         Endif
  153.         If (U_Sec > INTEGER006) Then
  154.             Print "  @X09[@X0BR@X09]emove a voting question        "
  155.             If (INTEGER012 == 1) Then
  156.                 PrintLn 
  157.             Endif
  158.             INTEGER012 = 1
  159.         Endif
  160.         If (U_Sec > INTEGER007) Then
  161.             Print "  @X09[@X0BE@X09]dit a voting question          "
  162.             If (INTEGER012 == 1) Then
  163.                 PrintLn 
  164.             Endif
  165.             INTEGER012 = 1
  166.         Endif
  167.         Print "  @X09[@X0B#@X09]Vote/See results for question #"
  168.         If (INTEGER012 == 1) Then
  169.             PrintLn 
  170.         Endif
  171.         PrintLn 
  172.         PrintLn "  @X03Or press [@X0AENTER@X03] to return to the BBS"
  173.         PrintLn 
  174.         STRING002 = ""
  175.         InputText "@X09[@X0BTime Left:@X0E@TIMELEFT@ @X0BMin.@X09] @X0AVote Command", STRING002, 11, 2
  176.         STRING002 = Lower(STRING002)
  177.         If (STRING002 == "") Then
  178.             Goto LABEL015
  179.         Else
  180.             Select Case (Left(STRING002, 1))
  181.                 Case "a"
  182.                     If (U_Sec > INTEGER005) Then
  183.                         Goto LABEL004
  184.                     Endif
  185.                 Case "r"
  186.                     If (U_Sec > INTEGER006) Then
  187.                         Goto LABEL009
  188.                     Endif
  189.                 Case "e"
  190.                 Case INTEGER007
  191.                     Goto LABEL003
  192.                 Endif
  193.         End Select
  194.         INTEGER014 = ToInt(STRING002)
  195.         Goto LABEL010
  196.         Gosub LABEL016
  197.         Goto LABEL002
  198.         :LABEL003
  199.         PrintLn 
  200.         InputText " Which voting question would you like to edit?", INTEGER014, 11, 2
  201.         PrintLn 
  202.         If ((INTEGER014 > 20) || (INTEGER014 < 1)) Then
  203.             Gosub LABEL016
  204.             Goto LABEL002
  205.         Endif
  206.         INTEGER004 = INTEGER014
  207.         FSeek 1, 510 * INTEGER004 - 510, 0
  208.         FRead 1, STRING004, 60
  209.         For INTEGER011 = 1 To 10
  210.             FRead 1, TSTRING003(INTEGER011), 40
  211.             FRead 1, INTEGER013, 5
  212.         Next
  213.         INTEGER001 = 1
  214.         Goto LABEL005
  215.         :LABEL004
  216.         PrintLn 
  217.         INTEGER010 = 0
  218.         For INTEGER011 = 1 To 20
  219.             FSeek 1, 510 * INTEGER011 - 510, 0
  220.             FRead 1, STRING007, 60
  221.             If (STRING007 == "") Then
  222.                 If (INTEGER010 == 0) Then
  223.                     INTEGER010 = INTEGER011
  224.                 Endif
  225.                 If (INTEGER010 > INTEGER011) Then
  226.                     INTEGER010 = INTEGER011
  227.                 Endif
  228.             Endif
  229.         Next
  230.         If (INTEGER010 > 0) Then
  231.             INTEGER004 = INTEGER010
  232.             INTEGER001 = 0
  233.         Else
  234.             PrintLn "@X0CMA Vote has reached its limit of 20 voting questions!@X07"
  235.             Goto LABEL002
  236.         Endif
  237.         :LABEL005
  238.         PrintLn "@X0BEnter your question at the prompt below, you are limited to @X0960 characters@X0B."
  239.         If (INTEGER001 == 0) Then
  240.             STRING004 = ""
  241.         Endif
  242.         InputText "Question", STRING004, 11, 60
  243.         If (STRING004 == "") Then
  244.             Goto LABEL002
  245.         Endif
  246.         PrintLn 
  247.         PrintLn "@X0ANow enter the possible answers for this question."
  248.         PrintLn "@X0AEach possible answer may be up to @X0B40 characters @X0Ain length"
  249.         PrintLn "@X0Aand you may have up to @X0B10 possible answers@X0A."
  250.         PrintLn "@X0APress [@X0FENTER@X0A] alone to finish entering possible answers."
  251.         If (INTEGER001 == 0) Then
  252.             For INTEGER011 = 1 To 10
  253.                 TSTRING003(INTEGER011) = ""
  254.             Next
  255.         Endif
  256.         INTEGER011 = 1
  257.         :LABEL006
  258.         PrintLn 
  259.         PrintLn "@X0AEntering data for Possible Answer @X0E#" + String(INTEGER011)
  260.         InputText "Answer #" + String(INTEGER011), TSTRING003(INTEGER011), 11, 25
  261.         If (TSTRING003(INTEGER011) == "") Then
  262.             Goto LABEL007
  263.         Endif
  264.         If (Len(TSTRING003(INTEGER011)) > 40) Then
  265.             PrintLn 
  266.             PrintLn "Maximum answer length is 40 characters!"
  267.             PrintLn 
  268.             Goto LABEL006
  269.         Endif
  270.         INTEGER011 = INTEGER011 + 1
  271.         Goto LABEL006
  272.         :LABEL007
  273.         PrintLn "@X0AQuestion is:"
  274.         PrintLn "@X0B" + STRING004
  275.         PrintLn "@X0AAnswers are:"
  276.         For INTEGER011 = 1 To 10
  277.             If (TSTRING003(INTEGER011) <> "") Then
  278.                 PrintLn "@X0B#" + String(INTEGER011) + ":@X0E" + TSTRING003(INTEGER011)
  279.             Endif
  280.         Next
  281.         STRING002 = "Y"
  282.         InputYN "Keep this question", STRING002, 11
  283.         If (STRING002 == "Y") Then
  284.             Goto LABEL008
  285.         Endif
  286.         Goto LABEL002
  287.         :LABEL008
  288.         FSeek 1, 510 * INTEGER004 - 510, 0
  289.         FWrite 1, STRING004, 60
  290.         INTEGER013 = 0
  291.         For INTEGER011 = 1 To 10
  292.             FWrite 1, TSTRING003(INTEGER011), 40
  293.             If (INTEGER001 == 0) Then
  294.                 FWrite 1, INTEGER013, 5
  295.             Endif
  296.             If (INTEGER001 == 1) Then
  297.                 FRead 1, INTEGER013, 5
  298.             Endif
  299.         Next
  300.         Goto LABEL002
  301.         :LABEL009
  302.         PrintLn 
  303.         InputText "Remove which voting question", INTEGER013, 11, 2
  304.         If ((INTEGER013 > 20) || (INTEGER013 < 1)) Then
  305.             Gosub LABEL016
  306.             Goto LABEL002
  307.         Endif
  308.         FSeek 1, 510 * INTEGER013 - 510, 0
  309.         FRead 1, STRING007, 60
  310.         If (STRING007 == "") Then
  311.             Gosub LABEL016
  312.             Goto LABEL002
  313.         Endif
  314.         PrintLn 
  315.         PrintLn "@X0ADeleting the following question:"
  316.         PrintLn "@X0E" + STRING007
  317.         PrintLn 
  318.         STRING002 = "y"
  319.         InputYN "Are you sure", STRING002, 11
  320.         STRING002 = Lower(STRING002)
  321.         If (STRING002 == "y") Then
  322.             STRING007 = ""
  323.             FSeek 1, 510 * INTEGER013 - 510, 0
  324.             FWrite 1, STRING007, 60
  325.             Goto LABEL002
  326.         Endif
  327.         Goto LABEL002
  328.         Goto LABEL015
  329.         :LABEL010
  330.         If ((INTEGER014 > 20) || (INTEGER014 < 1)) Then
  331.             Gosub LABEL016
  332.             Goto LABEL002
  333.         Endif
  334.         FSeek 1, 510 * INTEGER014 - 510, 0
  335.         FRead 1, STRING007, 60
  336.         If (STRING007 == "") Then
  337.             Gosub LABEL016
  338.             Goto LABEL002
  339.         Endif
  340.         INTEGER017 = Mid(U_Notes(INTEGER016), 1 + INTEGER014 * 2, 2)
  341.         INTEGER017 = ToInt(INTEGER017)
  342.         If (INTEGER017 <> 0) Then
  343.             Goto LABEL014
  344.         Endif
  345.         INTEGER008 = 0
  346.         :LABEL011
  347.         PrintLn "@CLS@"
  348.         FSeek 1, 510 * INTEGER014 - 510, 0
  349.         FRead 1, STRING004, 60
  350.         PrintLn STRING004
  351.         PrintLn 
  352.         PrintLn "@X0APossible Votes:"
  353.         For INTEGER011 = 1 To 10
  354.             FRead 1, STRING007, 40
  355.             FRead 1, INTEGER013, 5
  356.             If (STRING007 <> "") Then
  357.                 PrintLn "@X0B#" + String(INTEGER011) + " : @X0A" + STRING007
  358.             Endif
  359.         Next
  360.         PrintLn 
  361.         INTEGER012 = 0
  362.         InputText "What is your vote", INTEGER012, 11, 2
  363.         If (INTEGER012 == 0) Then
  364.             Goto LABEL002
  365.         Endif
  366.         PrintLn 
  367.         FSeek 1, 510 * INTEGER014 - 510, 0
  368.         FRead 1, STRING007, 60
  369.         If (STRING007 == "") Then
  370.             Gosub LABEL016
  371.             Goto LABEL002
  372.         Endif
  373.         If (INTEGER008 > 0) Then
  374.             FSeek 1, 510 * INTEGER014 - 510, 0
  375.             FRead 1, STRING007, 60
  376.             For INTEGER011 = 1 To INTEGER008
  377.                 FRead 1, STRING007, 40
  378.                 FRead 1, INTEGER013, 5
  379.             Next
  380.             INTEGER013 = INTEGER013 - 1
  381.             FSeek 1, -45, 1
  382.             FWrite 1, STRING007, 40
  383.             FWrite 1, INTEGER013, 5
  384.         Endif
  385.         FSeek 1, 510 * INTEGER014 - 510, 0
  386.         FRead 1, STRING007, 60
  387.         For INTEGER011 = 1 To INTEGER012
  388.             FRead 1, STRING007, 40
  389.             FRead 1, INTEGER013, 5
  390.         Next
  391.         FSeek 1, -45, 1
  392.         INTEGER013 = INTEGER013 + 1
  393.         FWrite 1, STRING007, 40
  394.         FWrite 1, INTEGER013, 5
  395.         STRING007 = String(INTEGER012)
  396.         If (INTEGER012 <= 9) Then
  397.             STRING007 = "0" + STRING007
  398.         Endif
  399.         STRING005 = "MV"
  400.         If (INTEGER014 == 1) Then
  401.             Goto LABEL012
  402.         Endif
  403.         For INTEGER011 = 1 To INTEGER014 - 1
  404.             STRING006 = Mid(U_Notes(INTEGER016), 1 + INTEGER011 * 2, 2)
  405.             STRING005 = STRING005 + STRING006
  406.         Next
  407.         :LABEL012
  408.         STRING005 = STRING005 + STRING007
  409.         If (INTEGER014 == 20) Then
  410.             Goto LABEL013
  411.         Endif
  412.         For INTEGER011 = INTEGER014 + 1 To 20
  413.             STRING006 = Mid(U_Notes(INTEGER016), 1 + INTEGER011 * 2, 2)
  414.             STRING005 = STRING005 + STRING006
  415.         Next
  416.         :LABEL013
  417.         U_Notes(INTEGER016) = STRING005
  418.         :LABEL014
  419.         PrintLn "@CLS@"
  420.         PrintLn "@X0AVotes status for voting question:"
  421.         FSeek 1, 510 * INTEGER014 - 510, 0
  422.         FRead 1, STRING007, 60
  423.         PrintLn "@X0E" + STRING007
  424.         PrintLn 
  425.         INTEGER009 = 0
  426.         For INTEGER011 = 1 To 10
  427.             FRead 1, STRING007, 40
  428.             FRead 1, INTEGER013, 5
  429.             INTEGER009 = INTEGER009 + INTEGER013
  430.         Next
  431.         FSeek 1, 510 * INTEGER014 - 510, 0
  432.         FRead 1, STRING007, 60
  433.         For INTEGER011 = 1 To 10
  434.             FRead 1, STRING007, 40
  435.             FRead 1, INTEGER013, 5
  436.             If (STRING007 == "") Then
  437.                 Break
  438.             Endif
  439.             REAL001 = (ToReal(INTEGER013) / ToReal(INTEGER009)) * 100
  440.             INTEGER002 = REAL001
  441.             If (INTEGER011 >= 10) Then
  442.                 Print "@X0A#" + String(INTEGER011) + " : "
  443.             Endif
  444.             If (INTEGER011 < 10) Then
  445.                 Print "@X0A#" + String(INTEGER011) + "  : "
  446.             Endif
  447.             Print " @X0B" + STRING007
  448.             INTEGER003 = 40
  449.             If (INTEGER002 < 10) Then
  450.                 INTEGER003 = 41
  451.             Endif
  452.             If (INTEGER002 > 99) Then
  453.                 INTEGER003 = 39
  454.             Endif
  455.             Forward INTEGER003 - Len(String(STRING007))
  456.             PrintLn "@X0E%", INTEGER002, " @X0A/ @X0B" + String(INTEGER013) + "@X0A votes."
  457.         Next
  458.         STRING007 = Mid(U_Notes(INTEGER016), 1 + INTEGER014 * 2, 2)
  459.         INTEGER012 = ToInt(STRING007)
  460.         PrintLn 
  461.         FSeek 1, 510 * INTEGER014 - 510, 0
  462.         FRead 1, STRING007, 60
  463.         For INTEGER011 = 1 To INTEGER012
  464.             FRead 1, STRING007, 40
  465.             FRead 1, INTEGER013, 5
  466.         Next
  467.         PrintLn "@X09Your vote was for @X0B#" + String(INTEGER012) + " : @X0A" + STRING007
  468.         PrintLn 
  469.         STRING002 = ""
  470.         InputText "@X0A[@X0EC@X0A]hange your vote or @X0D[@X0FENTER@X0D] @X0Ato return to main menu", STRING002, 11, 1
  471.         STRING002 = Upper(STRING002)
  472.         If (STRING002 == "C") Then
  473.             INTEGER008 = INTEGER012
  474.             Goto LABEL011
  475.         Endif
  476.         Goto LABEL002
  477.     Endif
  478.     :LABEL015
  479.     FClose 1
  480.     FClose 2
  481.     PutUser
  482.     End
  483.     :LABEL016
  484.     PrintLn 
  485.     PrintLn 
  486.     PrintLn "@X0CSorry, but that option does not exist!@X07"
  487.     PrintLn 
  488.     PrintLn "@MORE@"
  489.     Return
  490.  
  491. ;------------------------------------------------------------------------------
  492. ;
  493. ; Usage report (before postprocessing)
  494. ;
  495. ; ■ Statements used :
  496. ;
  497. ;    2       End
  498. ;    139     Goto 
  499. ;    106     Let 
  500. ;    8       Print 
  501. ;    61      PrintLn 
  502. ;    81      If 
  503. ;    5       FOpen 
  504. ;    6       FClose 
  505. ;    7       FGet 
  506. ;    1       GetUser
  507. ;    1       PutUser
  508. ;    2       InputYN 
  509. ;    7       Gosub 
  510. ;    1       Return
  511. ;    7       InputText 
  512. ;    1       Forward 
  513. ;    1       Rename 
  514. ;    17      FSeek 
  515. ;    28      FRead 
  516. ;    14      FWrite 
  517. ;
  518. ;
  519. ; ■ Functions used :
  520. ;
  521. ;    2       -
  522. ;    23      *
  523. ;    1       /
  524. ;    79      +
  525. ;    19      -
  526. ;    34      ==
  527. ;    7       <>
  528. ;    27      <
  529. ;    22      <=
  530. ;    14      >
  531. ;    43      >=
  532. ;    81      !
  533. ;    42      &&
  534. ;    24      ||
  535. ;    2       Len(
  536. ;    2       Lower()
  537. ;    1       Upper()
  538. ;    7       Mid()
  539. ;    4       Left()
  540. ;    12      String()
  541. ;    13      PPEPath()
  542. ;    2       Exist()
  543. ;    1       Psa()
  544. ;    2       ToReal()
  545. ;    5       ToInt()
  546. ;
  547. ;------------------------------------------------------------------------------
  548. ;
  549. ; Analysis flags : W
  550. ;
  551. ; W - Write user ■ 5
  552. ;     Program writes a user record. Although this may be normal for a
  553. ;     User Editor, it may also be a way to modify an account level.
  554. ;     ■ Search for : PUTUSER
  555. ;
  556. ;------------------------------------------------------------------------------
  557. ;
  558. ; Postprocessing report
  559. ;
  560. ;    21      For/Next
  561. ;    0       While/EndWhile
  562. ;    56      If/Then or If/Then/Else
  563. ;    1       Select Case
  564. ;
  565. ;------------------------------------------------------------------------------
  566. ;                 AEGiS Corp - Break the routines, code against the machines!
  567. ;------------------------------------------------------------------------------
  568.