// handle PTD fuses (Product Term Disabled) private bool IsRowEnabled(int fuseNumber) { if (!HasPtdFuses) { return(true); } //2128 - 2191 PTD (GAL16v8) int ptdFuseNumber = (fuseNumber / FusesPerRow) + RowEnableStartFuse; // if the fuse is active, then the row is disabled return(!Fuses.Contains(ptdFuseNumber)); }
private void SetMode() { if (Fuses.Contains(2192) && Fuses.Contains(2193)) { // complex syn=1, ac0=1 _mode = GalModeEnum.Complex; } else if (Fuses.Contains(2192)) { // simple syn=1, ac0=0 _mode = GalModeEnum.Simple; } else { // registered syn=0, ac0=1 _mode = GalModeEnum.Registered; } }
private double ActiveLevel(int outputNumber, double outputVoltage) { int fuseNumber = 0; foreach (var o in OlmcUnits) { if (o.OutputPin == outputNumber) { fuseNumber = o.S0FuseNumber; break; } } if (Fuses.Contains(fuseNumber)) { return(outputVoltage.Inverted()); } return(outputVoltage); }