Hi, Dirk!
Ich hab's bei mir so gelöst (sind zwar andere Variablen, aber vielleicht hilft dir das):
Code:
Var 0001, name InternalFlags
{
&ElecOn = TESTBIT &InternalFlags ,0
&MaingenOn = TESTBIT &InternalFlags ,6
}
Var 0005, name ElecOn // Boolean to check, when displaying lights
{
CALL &updateFPanel
}
Var 0006, name MaingenOn
{
CALL &updateCMDS
}
Var 0007
Var 0010, name CPanelLights
Var 0011, name FPanelLights
{
CALL &updateFPanel
}
Var 1000, name updateFPanel, Link SUBRUTINE
{
IF &ElecOn = 1 // check, if electricity in jet
{
&masterc = TESTBIT &FPanelLights ,0
&lebTfFail = TESTBIT &FPanelLights ,1
&aoa_dn = TESTBIT &FPanelLights ,2
&aoa_ok = TESTBIT &FPanelLights ,3
&aoa_up = TESTBIT &FPanelLights ,4
&rdy = TESTBIT &FPanelLights ,5
&nws = TESTBIT &FPanelLights ,6
&disc = TESTBIT &FPanelLights ,7
&rebEngFire = TESTBIT &FPanelLights ,8
&rebEngine = TESTBIT &FPanelLights ,9
&rebHydPres = TESTBIT &FPanelLights ,10
&rebOilPres = TESTBIT &FPanelLights ,10
&rebFlcs = TESTBIT &FPanelLights ,11
&rebDbuOn = TESTBIT &FPanelLights ,12
&rebToLdg = TESTBIT &FPanelLights ,13
&rebConfig = TESTBIT &FPanelLights ,13
&rebCanopy = TESTBIT &FPanelLights ,14
&rebOxyLow = TESTBIT &FPanelLights ,15
&twsHandoff = TESTBIT &FPanelLights ,16
&twsLaunch = TESTBIT &FPanelLights ,17
&twsPriMode = TESTBIT &FPanelLights ,18
&twsNaval = TESTBIT &FPanelLights ,19
&twsUnknown = TESTBIT &FPanelLights ,20
&twsTgtSep = TESTBIT &FPanelLights ,21
&ecmOn = TESTBIT &FPanelLights ,22
&tfrActive = TESTBIT &FPanelLights ,23
&tfrStby = TESTBIT &FPanelLights ,24
}
ELSE
{
&masterc = 0
&lebTfFail = 0
&aoa_dn = 0
&aoa_ok = 0
&aoa_up = 0
&rdy = 0
&nws = 0
&disc = 0
&rebEngFire = 0
&rebEngine = 0
&rebHydPres = 0
&rebOilPres = 0
&rebFlcs = 0
&rebDbuOn = 0
&rebToLdg = 0
&rebConfig = 0
&rebCanopy = 0
&rebOxyLow = 0
&twsHandoff = 0
&twsLaunch = 0
&twsPriMode = 0
&twsNaval = 0
&twsUnknown = 0
&twsTgtSep = 0
&ecmOn = 0
&tfrActive = 0
&tfrStby = 0
}
}
Var 1001, name updateCMDS, Link SUBRUTINE
{
L0 = &MaingenOn + &ElecOn
IF L0 = 2 // check, if mainGenerator running and ELEC switch on
{
if &ChaffCount < 100
{
&disp_Chaff = &ChaffCount
}
ELSE
{
&disp_Chaff = 99
}
if &FlareCount < 100
{
&disp_Flares = &FlareCount
}
ELSE
{
&disp_Flares = 99
}
}
else
{
&disp_Flares = -999999
&disp_Chaff = -999999
}
}
/////////////////////////////////
// LEDs are from 2000 - 2050 //
/////////////////////////////////
Var 2000, name masterc, Link IOCARD_OUT, Output 11 // Master Caution Light
Var 2001, name aoa_dn, Link IOCARD_OUT, Output 12
Var 2002, name aoa_ok, Link IOCARD_OUT, Output 13
usw...
lg
michi