private int CheckAgainstTurboSpeedLimiter(SymbolCollection symbols, string filename, int rpm, int requestedairmass, ref limitType AirmassLimiter)
{
int cols = GetSymbolLength(symbols, "LimEngCal.p_AirSP") / 2;
int[] turbospeed = readIntdatafromfile(filename, (int)GetSymbolAddress(symbols, "LimEngCal.TurboSpeedTab"), GetSymbolLength(symbols, "LimEngCal.TurboSpeedTab"));
int[] xaxis = new int[1];
xaxis.SetValue(0, 0);
int[] yaxis = readIntdatafromfile(filename, (int)GetSymbolAddress(symbols, "LimEngCal.p_AirSP"), GetSymbolLength(symbols, "LimEngCal.p_AirSP"));
int ambientpressure = /*1000*/ Convert.ToInt32(spinEdit1.EditValue) * 10;
int airmasslimit = Convert.ToInt32(GetInterpolatedTableValue(turbospeed, xaxis, yaxis, /*rpm*/ ambientpressure, 0));
if (airmasslimit < requestedairmass)
{
requestedairmass = airmasslimit;
AirmassLimiter = limitType.TurboSpeedLimiter;
}
return requestedairmass;
}