     }
     return;
 }
-

         addedTime = execTime;
      }
      
      //~~~~~~~~~~~~~~~~Check for transmission start signal from plotter~~~~~~~~~~~~~~~~
      /*if(Serial2.available() > 2)
      {
        char start_buf[10] = "";
        Serial2.readBytes(start_buf, Serial2.available());
        if(String(start_buf) == "!!!")  
        {
          transBegin = true;
        }
        if(String(start_buf) == "~~~")  transBegin = false;
        if(String(start_buf) == "---")
        {
          EEPROM.write(EEPROM_TIMEBASE_ADDR+2, 0);
          EEPROM.write(EEPROM_TIMEBASE_ADDR+1, 0);
          EEPROM.write(EEPROM_TIMEBASE_ADDR, 0);
          n=0;
          initRead = 0;
          resetTime = execTime;
        }
      }
      if(!transBegin) continue;
      */
      execTime = execTime - resetTime;
      //~~~~~~~~~~~~~~~~~~~~~Refer to stored timebase in EEPROM~~~~~~~~~~~~~~~~~~~~~~~~~
      if(retainTimeReference)
      {
        float timeRead = 0;
        timeRead = float(EEPROM.read(EEPROM_TIMEBASE_ADDR+2)<<8) + float(EEPROM.read(EEPROM_TIMEBASE_ADDR+1)) + float(EEPROM.read(EEPROM_TIMEBASE_ADDR))/100.0;
        if((execTime - 0.1) < timeRead) 
        {
          if(n == 0)  initRead = timeRead;
          execTime = execTime + initRead;
        }
        
        EEPROM.write(EEPROM_TIMEBASE_ADDR+2, int(execTime)>>8);
        EEPROM.write(EEPROM_TIMEBASE_ADDR+1, execTime);
        EEPROM.write(EEPROM_TIMEBASE_ADDR, int(execTime*100)-int(execTime));
        
      }
      
      i++;
      if((i>=10) || (n==0))

    int n=0;                                // Count loops around print routine
    int i=0;
    boolean transBegin = false;
    boolean downloadBegin = false;
    
    for(;;)
    {
      //~~~~~~~~~~~~~~~~~~~~~~~Create simulation data for now~~~~~~~~~~~~~~~~~~~~~~~~~~~
