void StartCommand(GUI_Settings guiSettings) { int hr = 0; int swvclk; enumSWVMode enumMode; byte[] outBytes; ThreadMonitor.SetAbortFlag(false); if (guiSettings.prot == Protocol.MANCHESTER) { enumMode = enumSWVMode.MANCHESTER; } else { enumMode = enumSWVMode.TX8; } if (pp == null) { AppendTextToLog("==> Error! Not connected to programmer."); return; } swvclk = int.Parse(cbFreq.SelectedItem.ToString(), NumberStyles.AllowThousands); hr = pp.SWV_Setup(enumMode, swvclk, out outBytes, out m_sLastError); if (!SUCCEEDED(hr)) { AppendTextToLog("==> Error! Can't setup SWV configuration in PP COM. " + m_sLastError); return; } //Start Async mode in COM-level string strError = ""; hr = pp.USB2IIC_AsyncMode1(2, null, out strError); //Start bulk async mode in COM if (!SUCCEEDED(hr)) { AppendTextToLog("==> Error! Can't set async mode in PP COM. " + m_sLastError); return; } guiStatusNow.Busy = Busy.BUSY; }