Re: Localiser capture (SIOC)
Hi Lasse,
Here example SIOC code to display the GS needle and Localiser needle values -if alive- at four digit
displays (most left digit blank or minus and then 3 digit value), and two leds for GS alive and loc
tuned in indicators.
You have to update the digit and output numbers to your hardware.
I have not tested it, but this is how one should do it in SIOC...
Code:
// Glide-slope
Var 1 name gs_alive Link FSUIPC_IN Offset $0C4C Length 1
{
CALL &OUTGS
}
Var 2 name gs Link FSUIPC_IN Offset $0C49 Length 1
{
CALL &OUTGS
}
Var 3 name OUTGS LINK SUBRUTINE
{
IF &gs_alive = 1
{
gs_ind = 1
&D_gs = &gs
IF &gs < 0
{
D_gss = -999998 // minus sign
}
ELSE
{
D_gss = -999999 // blank
}
} ELSE
{
gs_ind = 0
&D_gs = -999999 // blank
&D_gss = -999999 // blank
}
}
Var 4 name D_gs Link IOCARD_DISPLAY Digit 1 Numbers 3
Var 5 name D_gss Link IOCARD_DISPLAY Digit 4 Numbers 1
Var 6 name gs_ind Link IOCARD_OUT Device 1 Output 40
// Localiser
Var 10 name loc_tuned Link FSUIPC_IN Offset $0C4A Length 1
{
&loc_tuned_in = TESTBIT &loc_tuned 1
}
Var 11 name loc_tuned_in
{
CALL &OUTLOC
}
Var 12 name loc Link FSUIPC_IN Offset $0C48 Length 1
{
CALL &OUTLOC
}
Var 13 name OUTLOC LINK SUBRUTINE
{
IF &loc_tuned_in = 1
{
loc_tuned_ind = 1
&D_LOC = &loc
IF &loc < 0
{
D_locs = -999998 // minus sign
}
ELSE
{
D_locs = -999999 // blank
}
}
ELSE
{
loc_tuned_ind = 0
&D_loc = -999999 // blank
&D_locs = -999999 // blank
}
}
Var 14 name D_loc Link IOCARD_DISPLAY Digit 5 Numbers 3
Var 15 name D_locs Link IOCARD_DISPLAY Digit 8 Numbers 1
Var 16 name loc_tuned_ind Link IOCARD_OUT Device 1 Output 41
Rgrs,
nico