short m115a(FT_EEPROM ft_eeprom) { int[] iArr = new int[80]; if (ft_eeprom.getClass() != FT_EEPROM_245R.class) { return (short) 1; } FT_EEPROM_245R ft_eeprom_245r = (FT_EEPROM_245R) ft_eeprom; for (short s = (short) 0; s < (short) 80; s = (short) (s + 1)) { iArr[s] = m43a(s); } try { int i = (iArr[0] & 65280) | 0; if (ft_eeprom_245r.HighIO) { i |= 4; } if (ft_eeprom_245r.LoadVCP) { i |= 8; } if (ft_eeprom_245r.ExternalOscillator) { i |= 2; } else { i &= 65533; } iArr[0] = i; iArr[1] = ft_eeprom_245r.VendorId; iArr[2] = ft_eeprom_245r.ProductId; iArr[3] = 1536; iArr[4] = m41a((Object) ft_eeprom); i = m54b(ft_eeprom); if (ft_eeprom_245r.InvertTXD) { i |= 256; } if (ft_eeprom_245r.InvertRXD) { i |= 512; } if (ft_eeprom_245r.InvertRTS) { i |= 1024; } if (ft_eeprom_245r.InvertCTS) { i |= 2048; } if (ft_eeprom_245r.InvertDTR) { i |= 4096; } if (ft_eeprom_245r.InvertDSR) { i |= 8192; } if (ft_eeprom_245r.InvertDCD) { i |= D2xxManager.FTDI_BREAK_ON; } if (ft_eeprom_245r.InvertRI) { i |= 32768; } iArr[5] = i; int i2 = ft_eeprom_245r.CBus2 << 8; iArr[10] = ((ft_eeprom_245r.CBus0 | (ft_eeprom_245r.CBus1 << 4)) | i2) | (ft_eeprom_245r.CBus3 << 12); iArr[11] = ft_eeprom_245r.CBus4; i2 = m42a( ft_eeprom_245r.Product, iArr, m42a(ft_eeprom_245r.Manufacturer, iArr, 12, 7, true), 8, true); if (ft_eeprom_245r.SerNumEnable) { m42a(ft_eeprom_245r.SerialNumber, iArr, i2, 9, true); } if (iArr[1] == 0 || iArr[2] == 0) { return (short) 2; } byte latencyTimer = f106d.getLatencyTimer(); f106d.setLatencyTimer((byte) 119); boolean a = m51a(iArr, 80); f106d.setLatencyTimer(latencyTimer); if (a) { return (short) 0; } return (short) 1; } catch (Exception e) { e.printStackTrace(); return (short) 0; } }
short programEeprom(FT_EEPROM var1) { int[] var2 = new int[this.mEepromSize]; if (var1.getClass() != FT_EEPROM_2232H.class) { return (short) 1; } else { FT_EEPROM_2232H var3 = (FT_EEPROM_2232H) var1; try { if (!var3.A_UART) { if (var3.A_FIFO) { var2[0] |= 1; } else if (var3.A_FIFOTarget) { var2[0] |= 2; } else { var2[0] |= 4; } } if (var3.A_LoadVCP) { var2[0] |= 8; } if (!var3.B_UART) { if (var3.B_FIFO) { var2[0] |= 256; } else if (var3.B_FIFOTarget) { var2[0] |= 512; } else { var2[0] |= 1024; } } if (var3.B_LoadVCP) { var2[0] |= 2048; } if (var3.PowerSaveEnable) { var2[0] |= '耀'; } var2[1] = var3.VendorId; var2[2] = var3.ProductId; var2[3] = 1792; var2[4] = this.setUSBConfig((Object) var1); var2[5] = this.b(var1); var2[6] = 0; byte var4 = var3.AL_DriveCurrent; if (var4 == -1) { var4 = 0; } var2[6] |= var4; if (var3.AL_SlowSlew) { var2[6] |= 4; } if (var3.AL_SchmittInput) { var2[6] |= 8; } byte var5 = var3.AH_DriveCurrent; if (var5 == -1) { var5 = 0; } short var12 = (short) (var5 << 4); var2[6] |= var12; if (var3.AH_SlowSlew) { var2[6] |= 64; } if (var3.AH_SchmittInput) { var2[6] |= 128; } byte var6 = var3.BL_DriveCurrent; if (var6 == -1) { var6 = 0; } short var13 = (short) (var6 << 8); var2[6] |= var13; if (var3.BL_SlowSlew) { var2[6] |= 1024; } if (var3.BL_SchmittInput) { var2[6] |= 2048; } byte var7 = var3.BH_DriveCurrent; short var14 = (short) (var7 << 12); var2[6] |= var14; if (var3.BH_SlowSlew) { var2[6] |= 16384; } if (var3.BH_SchmittInput) { var2[6] |= '耀'; } boolean var8 = false; byte var9 = 77; if (this.mEepromType == 70) { var9 = 13; var8 = true; } int var15 = this.a(var3.Manufacturer, var2, var9, 7, var8); var15 = this.a(var3.Product, var2, var15, 8, var8); if (var3.SerNumEnable) { this.a(var3.SerialNumber, var2, var15, 9, var8); } switch (var3.TPRDRV) { case 0: var2[11] = 0; break; case 1: var2[11] = 8; break; case 2: var2[11] = 16; break; case 3: var2[11] = 24; break; default: var2[11] = 0; } var2[12] = this.mEepromType; if (var2[1] != 0 && var2[2] != 0) { boolean var10 = false; var10 = this.a(var2, this.mEepromSize - 1); return (short) (var10 ? 0 : 1); } else { return (short) 2; } } catch (Exception var11) { var11.printStackTrace(); return (short) 0; } } }
FT_EEPROM m114a() { int i; FT_EEPROM ft_eeprom_245r = new FT_EEPROM_245R(); int[] iArr = new int[80]; for (i = 0; i < 80; i++) { iArr[i] = m43a((short) i); } try { if ((iArr[0] & 4) == 4) { ft_eeprom_245r.HighIO = true; } else { ft_eeprom_245r.HighIO = false; } if ((iArr[0] & 8) == 8) { ft_eeprom_245r.LoadVCP = true; } else { ft_eeprom_245r.LoadVCP = false; } if ((iArr[0] & 2) == 2) { ft_eeprom_245r.ExternalOscillator = true; } else { ft_eeprom_245r.ExternalOscillator = false; } ft_eeprom_245r.VendorId = (short) iArr[1]; ft_eeprom_245r.ProductId = (short) iArr[2]; m48a(ft_eeprom_245r, iArr[4]); m49a((Object) ft_eeprom_245r, iArr[5]); if ((iArr[5] & 256) == 256) { ft_eeprom_245r.InvertTXD = true; } else { ft_eeprom_245r.InvertTXD = false; } if ((iArr[5] & 512) == 512) { ft_eeprom_245r.InvertRXD = true; } else { ft_eeprom_245r.InvertRXD = false; } if ((iArr[5] & 1024) == 1024) { ft_eeprom_245r.InvertRTS = true; } else { ft_eeprom_245r.InvertRTS = false; } if ((iArr[5] & 2048) == 2048) { ft_eeprom_245r.InvertCTS = true; } else { ft_eeprom_245r.InvertCTS = false; } if ((iArr[5] & 4096) == 4096) { ft_eeprom_245r.InvertDTR = true; } else { ft_eeprom_245r.InvertDTR = false; } if ((iArr[5] & 8192) == 8192) { ft_eeprom_245r.InvertDSR = true; } else { ft_eeprom_245r.InvertDSR = false; } if ((iArr[5] & D2xxManager.FTDI_BREAK_ON) == D2xxManager.FTDI_BREAK_ON) { ft_eeprom_245r.InvertDCD = true; } else { ft_eeprom_245r.InvertDCD = false; } if ((iArr[5] & 32768) == 32768) { ft_eeprom_245r.InvertRI = true; } else { ft_eeprom_245r.InvertRI = false; } i = iArr[10]; ft_eeprom_245r.CBus0 = (byte) (i & 15); ft_eeprom_245r.CBus1 = (byte) ((i & 240) >> 4); ft_eeprom_245r.CBus2 = (byte) ((i & 3840) >> 8); ft_eeprom_245r.CBus3 = (byte) ((i & 61440) >> 12); ft_eeprom_245r.CBus4 = (byte) (iArr[11] & Telemetry.cbTagMax); ft_eeprom_245r.Manufacturer = m46a(((iArr[7] & Telemetry.cbTagMax) - 128) / 2, iArr); ft_eeprom_245r.Product = m46a(((iArr[8] & Telemetry.cbTagMax) - 128) / 2, iArr); ft_eeprom_245r.SerialNumber = m46a(((iArr[9] & Telemetry.cbTagMax) - 128) / 2, iArr); return ft_eeprom_245r; } catch (Exception e) { return null; } }