             for(int i=0; i<buffer_index; i++) {
                 // Always do flow control if baudMismatch
                 // Check that C64 is ready to receive
-                while (digitalReadFast(C64_RTS) == LOW);   // If not...  C64 RTS and CTS are inverted.
+            //while (digitalReadFast(C64_RTS) == LOW);   // If not...  C64 RTS and CTS are inverted.
                 C64Serial.write(buffer[i]);
 
-                while (wifly.available() > 0)
+            while (C64Serial.available() > 0)
                 {
-                    DoFlowControl();
-                    C64Serial.write(wifly.read());
+            wifly.write(C64Serial.read());
                 }
             }
 

//            break;

        default: // Invalid - on first startup or if corrupted.  Clear silently and continue to menu.
            EEPROM.write(ADDR_AUTOSTART, AUTO_NONE);
            autostart_mode = AUTO_NONE;
            return;
    }

void SetPETSCIIMode(boolean mode)
{
    petscii_mode = mode;
    if (EEPROM.read(ADDR_PETSCII) != petscii_mode)
        EEPROM.write(ADDR_PETSCII, petscii_mode);
}

// ----------------------------------------------------------
