// Generated SIOC config stub for ProSim737 // Make sure you configure the correct hardware inputs/outputs // // For AFT Overhead // // Var numbers 4500-4638, 4690, 4708-4719, 4722-4723 are defined in PROSIM config // ASP switches Var 4500, Link IOCARD_SW, Device 5, Input 238 // ASP OBS ADF 1 vol Pushed Var 4501, Link IOCARD_SW, Device 5, Input 237 // ASP OBS ADF 2 vol Pushed Var 4503, Link IOCARD_SW, Device 5, Input 248 // ASP OBS Marker vol Pushed Var 4504, Link IOCARD_SW, Device 5, Input 235 // ASP OBS NAV 1 vol Pushed Var 4505, Link IOCARD_SW, Device 5, Input 236 // ASP OBS NAV 2 vol Pushed Var 4506, Link IOCARD_SW, Device 5, Input 217 // ASP OBS VHF 1 mic Pushed Var 4507, Link IOCARD_SW, Device 5, Input 244 // ASP OBS VHF 1 vol Pushed Var 4508, Link IOCARD_SW, Device 5, Input 218 // ASP OBS VHF 2 mic Pushed Var 4509, Link IOCARD_SW, Device 5, Input 245 // ASP OBS VHF 2 vol Pushed Var 4510, Link IOCARD_SW, Device 5, Input 228 // ASP3 filter mode B Var 4511, Link IOCARD_SW, Device 5, Input 229 // ASP3 filter mode V Var 4512, Link IOCARD_SW, Device 5, Input 233 // ASP3 filter mode R // EEC switches Var 4513, Link IOCARD_SW, Device 5, Input 286 // EEC left latch On Var 4514, Link IOCARD_SW, Device 5, Input 287 // EEC right latch On // ELT and Flight Recorder switches Var 4515, Link IOCARD_SW, Device 5, Input 280 // ELT On Var 4516, Link IOCARD_SW, Device 5, Input 284 // Flight recorder Test // IRS switches Var 4517, Name AFT_IRS_TKGS, Link IOCARD_SW, Device 5, Input 256 // IRS Disp Sel TK/GS Var 4518, Name AFT_IRS_TEST, Link IOCARD_SW, Device 5, Input 257 // IRS Disp Sel Test Var 4519, Name AFT_IRS_PPOS, Link IOCARD_SW, Device 5, Input 258 // IRS Disp Sel PPOS Var 4520, Name AFT_IRS_WIND, Link IOCARD_SW, Device 5, Input 252 // IRS Disp Sel Wind Var 4521, Name AFT_IRS_HDGS, Link IOCARD_SW, Device 5, Input 259 // IRS Disp Sel HDG/STS Var 4524, Name AFT_DSPL_L, Link IOCARD_SW, Device 5, Input 260 // IRS SYS DSPL Left Var 4525, Name AFT_DSPL_R, Link IOCARD_SW, Device 5, Input 255 // IRS SYS DSPL Right Var 4540, Name AFT_IRS_LNAV, Link IOCARD_SW, Device 5, Input 276 // IRS left Nav Var 4541, Link IOCARD_SW, Device 5, Input 277 // IRS left Off Var 4542, Name AFT_IRS_LALIGN, Link IOCARD_SW, Device 5, Input 270 // IRS left Align Var 4543, Name AFT_IRS_LATT, Link IOCARD_SW, Device 5, Input 275 // IRS left Att Var 4544, Name AFT_IRS_RNAV, Link IOCARD_SW, Device 5, Input 273 // IRS right Nav Var 4545, Link IOCARD_SW, Device 5, Input 272 // IRS right Off Var 4546, Name AFT_IRS_RALIGN, Link IOCARD_SW, Device 5, Input 274 // IRS right Align Var 4547, Name AFT_IRS_RATT, Link IOCARD_SW, Device 5, Input 278 // IRS right Att // LE devices switches Var 4526, Link IOCARD_SW, Device 5, Input 281 // LE Devices test Off //Mach Airspeed warning test, Stall test, Pass Oxy switches Var 4527, Link IOCARD_SW, Device 5, Input 279 // Mach Airspeed warning test no1 Pushed Var 4528, Link IOCARD_SW, Device 5, Input 285 // Mach Airspeed warning test no2 Pushed Var 4529, Link IOCARD_SW, Device 5, Input 241 // Stall test 1 Pushed Var 4548, Link IOCARD_SW, Device 5, Input 242 // Stall test 2 Pushed Var 4549, Link IOCARD_SW, Device 5, Input 283 // Pass Oxy ON // ASP LED Var 4560, Link IOCARD_OUT, Device 5, Output 233 // ASP OBS ADF 1 vol Var 4561, Link IOCARD_OUT, Device 5, Output 234 // ASP OBS ADF 2 vol Var 4562, Link IOCARD_OUT, Device 5, Output 235 // ASP OBS Marker vol Var 4563, Link IOCARD_OUT, Device 5, Output 231 // ASP OBS NAV 1 vol Var 4564, Link IOCARD_OUT, Device 5, Output 232 // ASP OBS NAV 2 vol Var 4565, Link IOCARD_OUT, Device 5, Output 217 // ASP OBS VHF 1 mic Var 4566, Link IOCARD_OUT, Device 5, Output 230 // ASP OBS VHF 1 vol Var 4567, Link IOCARD_OUT, Device 5, Output 218 // ASP OBS VHF 2 mic Var 4568, Link IOCARD_OUT, Device 5, Output 229 // ASP OBS VHF 2 vol // EEC LED Var 4569, Link IOCARD_OUT, Device 5, Output 172 // EEC Altn left Var 4570, Link IOCARD_OUT, Device 5, Output 174 // EEC Altn right Var 4571, Link IOCARD_OUT, Device 5, Output 171 // EEC On left Var 4572, Link IOCARD_OUT, Device 5, Output 173 // EEC On right // Annunciators Var 4573 // ELT { &AFT_AN_ELT = &INT_CTRL * V4573 } Var 4650, name AFT_AN_ELT, Link IOCARD_DISPLAY, Device 5, Digit 225, Numbers 1 // 225 ELT Var 4574 // Engine control left { &AFT_AN_ECL = &INT_CTRL * V4574 } Var 4651, name AFT_AN_ECL, Link IOCARD_DISPLAY, Device 5, Digit 238, Numbers 1 // 238 Engine control left Var 4575 // Engine control right { &AFT_AN_ECR = &INT_CTRL * V4575 } Var 4652, name AFT_AN_ECR, Link IOCARD_DISPLAY, Device 5, Digit 234, Numbers 1 // 234 Engine control right Var 4576 // Flight recorder off { &AFT_AN_FRF = &INT_CTRL * V4576 } Var 4653, name AFT_AN_FRF, Link IOCARD_DISPLAY, Device 5, Digit 242, Numbers 1 // 242 Flight recorder off Var 4577 // Gear left aft oh { &AFT_AN_GL = &INT_CTRL * V4577 } Var 4654, name AFT_AN_GL, Link IOCARD_DISPLAY, Device 5, Digit 226, Numbers 1 // 226 Gear left aft oh Var 4578 // Gear nose aft ovh { &AFT_AN_GN = &INT_CTRL * V4578 } Var 4655, name AFT_AN_GN, Link IOCARD_DISPLAY, Device 5, Digit 228, Numbers 1 // 228 Gear nose aft ovh Var 4579 // Gear right aft ovh { &AFT_AN_GR = &INT_CTRL * V4579 } Var 4656, name AFT_AN_GR, Link IOCARD_DISPLAY, Device 5, Digit 230, Numbers 1 // 230 Gear right aft ovh Var 4580 // GPS { &AFT_AN_GPS = &INT_CTRL * V4580 } Var 4657, name AFT_AN_GPS, Link IOCARD_DISPLAY, Device 5, Digit 239, Numbers 1 // 239 GPS Var 4589, Name AFT_V_ILA // IRS left align { &AFT_AN_ILA = &INT_CTRL * &AFT_V_ILA } Var 4658, name AFT_AN_ILA, Link IOCARD_DISPLAY, Device 5, Digit 233, Numbers 1 // 233 IRS left align Var 4590 // IRS left DC Fail { &AFT_AN_IDF = &INT_CTRL * V4590 } Var 4659, name AFT_AN_IDF, Link IOCARD_DISPLAY, Device 5, Digit 224, Numbers 1 // 224 IRS left DC Fail Var 4591 // IRS left Fault { &AFT_AN_ILF = &INT_CTRL * V4591 } Var 4660, name AFT_AN_ILF, Link IOCARD_DISPLAY, Device 5, Digit 227, Numbers 1 // 227 IRS left Fault Var 4592 // IRS left On DC { &AFT_AN_ILOD = &INT_CTRL * V4592 } Var 4661, name AFT_AN_ILOD, Link IOCARD_DISPLAY, Device 5, Digit 231, Numbers 1 // 231 IRS left On DC Var 4593, name AFT_V_IRA // IRS right align { &AFT_AN_IRA = &INT_CTRL * &AFT_V_IRA } Var 4662, name AFT_AN_IRA, Link IOCARD_DISPLAY, Device 5, Digit 235, Numbers 1 // 235 IRS right align Var 4594 // IRS right DC Fail { &AFT_AN_IRDF = &INT_CTRL * V4594 } Var 4663, name AFT_AN_IRDF, Link IOCARD_DISPLAY, Device 5, Digit 243, Numbers 1 // 243 IRS right DC Fail Var 4595 // IRS right Fault { &AFT_AN_IRF = &INT_CTRL * V4595 } Var 4664,name AFT_AN_IRF Link IOCARD_DISPLAY, Device 5, Digit 237, Numbers 1 // 237 IRS right Fault Var 4596 // IRS right On DC { &AFT_AN_IROD = &INT_CTRL * V4596 } Var 4665, name AFT_AN_IROD, Link IOCARD_DISPLAY, Device 5, Digit 241, Numbers 1 // 241 IRS right On DC Var 4597 // Pass oxy on { &AFT_AN_POO = &INT_CTRL * V4597 } Var 4666, name AFT_AN_POO, Link IOCARD_DISPLAY, Device 5, Digit 232, Numbers 1 // 232 Pass oxy on Var 4598 // PSEU { &AFT_AN_PSEU = &INT_CTRL * V4598 } Var 4667, name AFT_AN_PSEU, Link IOCARD_DISPLAY, Device 5, Digit 229, Numbers 1 // 229 PSEU Var 4599 // Reverser left { &AFT_AN_RL = &INT_CTRL * V4599 } Var 4668, name AFT_AN_RL, Link IOCARD_DISPLAY, Device 5, Digit 240, Numbers 1 // 240 Reverser left Var 4600 // Reverser right { &AFT_AN_RR = &INT_CTRL * V4600 } Var 4669, name AFT_AN_RR, Link IOCARD_DISPLAY, Device 5, Digit 236, Numbers 1 // 236 Reverser right // IRS dots Var 4581, Link IOCARD_OUT, Device 5, Output 211 // IRS Panel dot 1 Var 4582, Link IOCARD_OUT, Device 5, Output 215 // IRS Panel dot 2 Var 4583, Link IOCARD_OUT, Device 5, Output 210 // IRS Panel dot 3 Var 4584, Link IOCARD_OUT, Device 5, Output 209 // IRS Panel dot 4 Var 4585, Link IOCARD_OUT, Device 5, Output 216 // IRS Panel dot 5 Var 4586, Link IOCARD_OUT, Device 5, Output 212 // IRS Panel dot 6 Var 4587, name AFT_IRSC_CLR, Link IOCARD_OUT, Device 5, Output 214 // IRS Keypad CLR cue Var 4588, name AFT_IRSC_ENT, Link IOCARD_OUT, Device 5, Output 213 // IRS Keypad ENT cue // LE Devices LED Var 4601, Link IOCARD_OUT, Device 5, Output 161 // Slats extended 1 Var 4602, Link IOCARD_OUT, Device 5, Output 159 // Slats extended 2 Var 4603, Link IOCARD_OUT, Device 5, Output 162 // Slats extended 3 Var 4604, Link IOCARD_OUT, Device 5, Output 160 // Slats extended 4 Var 4605, Link IOCARD_OUT, Device 5, Output 147 // Slats extended 5 Var 4606, Link IOCARD_OUT, Device 5, Output 148 // Slats extended 6 Var 4607, Link IOCARD_OUT, Device 5, Output 145 // Slats extended 7 Var 4608, Link IOCARD_OUT, Device 5, Output 146 // Slats extended 8 Var 4611, Link IOCARD_OUT, Device 5, Output 165 // Slats fullExtended 1 Var 4612, Link IOCARD_OUT, Device 5, Output 166 // Slats fullExtended 2 Var 4613, Link IOCARD_OUT, Device 5, Output 163 // Slats fullExtended 3 Var 4614, Link IOCARD_OUT, Device 5, Output 164 // Slats fullExtended 4 Var 4615, Link IOCARD_OUT, Device 5, Output 150 // Slats fullExtended 5 Var 4616, Link IOCARD_OUT, Device 5, Output 149 // Slats fullExtended 6 Var 4617, Link IOCARD_OUT, Device 5, Output 153 // Slats fullExtended 7 Var 4618, Link IOCARD_OUT, Device 5, Output 154 // Slats fullExtended 8 Var 4621, Link IOCARD_OUT, Device 5, Output 152 // Slats transit 1 Var 4622, Link IOCARD_OUT, Device 5, Output 151 // Slats transit 2 Var 4623, Link IOCARD_OUT, Device 5, Output 156 // Slats transit 3 Var 4624, Link IOCARD_OUT, Device 5, Output 155 // Slats transit 4 Var 4625, Link IOCARD_OUT, Device 5, Output 142 // Slats transit 5 Var 4626, Link IOCARD_OUT, Device 5, Output 144 // Slats transit 6 Var 4627, Link IOCARD_OUT, Device 5, Output 141 // Slats transit 7 Var 4628, Link IOCARD_OUT, Device 5, Output 143 // Slats transit 8 Var 4629, Link IOCARD_OUT, Device 5, Output 169 // Flaps extended 1 Var 4630, Link IOCARD_OUT, Device 5, Output 170 // Flaps extended 2 Var 4631, Link IOCARD_OUT, Device 5, Output 168 // Flaps extended 3 Var 4632, Link IOCARD_OUT, Device 5, Output 167 // Flaps extended 4 Var 4633, Link IOCARD_OUT, Device 5, Output 158 // Flaps transit 1 Var 4634, Link IOCARD_OUT, Device 5, Output 157 // Flaps transit 2 Var 4635, Link IOCARD_OUT, Device 5, Output 140 // Flaps transit 3 Var 4636, Link IOCARD_OUT, Device 5, Output 139 // Flaps transit 4 // IRS Display Var 4637, name AFT_IRS_DL // IRS Display left number provided by PROSIM { IF &AFT_IRS_mode = 0 // Update left display if not input mode { CALL &AFT_UPDT } } Var 4638, name AFT_IRS_DR // IRS Display right number by PROSIM { IF &AFT_IRS_mode = 0 // Update right display if not input mode { CALL &AFT_UPDT } } // IRS Display Lat, Lon, True heading Var 4639, Link IOCARD_OUT, Device 5, Output 203 // N Var 4640, Link IOCARD_OUT, Device 5, Output 204 // S Var 4641, Link IOCARD_OUT, Device 5, Output 205 // H Var 4642, Link IOCARD_OUT, Device 5, Output 206 // E Var 4643, Link IOCARD_OUT, Device 5, Output 207 // W Var 4644, Link IOCARD_OUT, Device 5, Output 208 // I for TEST disp mode // 7 seg display for IRS display windows Var 4670, name AFT_IRS_DSPL_5, Link IOCARD_DISPLAY, Device 5, Digit 192, Numbers 5 // IRS 7seg 5 digits left display Var 4676, name AFT_IRS_DSPL_4, Link IOCARD_DISPLAY, Device 5, Digit 192, Numbers 4 // lower 4 digits Var 4677, name AFT_IRS_DSPL_3, Link IOCARD_DISPLAY, Device 5, Digit 192, Numbers 3 // lower 3 digits Var 4671, name AFT_IRS_DISPL5, Link IOCARD_DISPLAY, Device 5, Digit 192, Numbers 1 Var 4672, name AFT_IRS_DISPL4, Link IOCARD_DISPLAY, Device 5, Digit 193, Numbers 1 Var 4673, name AFT_IRS_DISPL3, Link IOCARD_DISPLAY, Device 5, Digit 194, Numbers 1 Var 4674, name AFT_IRS_DISPL2, Link IOCARD_DISPLAY, Device 5, Digit 195, Numbers 1 Var 4675, name AFT_IRS_DISPL1, Link IOCARD_DISPLAY, Device 5, Digit 196, Numbers 1 Var 4680, name AFT_IRS_DSPR_6, Link IOCARD_DISPLAY, Device 5, Digit 197, Numbers 6 // IRS 7seg 6 digits right display Var 4688, name AFT_IRS_DSPR_3, Link IOCARD_DISPLAY, Device 5, Digit 197, Numbers 3 // lower 3 digits Var 4687, name AFT_IRS_DSPR_2, Link IOCARD_DISPLAY, Device 5, Digit 197, Numbers 2 // lower 2 digits Var 4681, name AFT_IRS_DISPR6, Link IOCARD_DISPLAY, Device 5, Digit 197, Numbers 1 Var 4682, name AFT_IRS_DISPR5, Link IOCARD_DISPLAY, Device 5, Digit 198, Numbers 1 Var 4683, name AFT_IRS_DISPR4, Link IOCARD_DISPLAY, Device 5, Digit 199, Numbers 1 Var 4684, name AFT_IRS_DISPR3, Link IOCARD_DISPLAY, Device 5, Digit 200, Numbers 1 Var 4685, name AFT_IRS_DISPR2, Link IOCARD_DISPLAY, Device 5, Digit 201, Numbers 1 Var 4686, name AFT_IRS_DISPR1, Link IOCARD_DISPLAY, Device 5, Digit 202, Numbers 1 // DIM support for annunciators Var 4690, value 0 // LIGHT TEST Switch DIM indicator set by PROSIM { IF V4690 = 1 { &INT_CTRL = 2 } ELSE { &INT_CTRL = 1 } } Var 4691, name INT_CTRL, value 1 // LIGHT TEST Switch DIM control { IF V4573 = 1 // Check ELT is already lit. { &AFT_AN_ELT = &INT_CTRL * V4573 // If lit, change intensity. } IF V4574 = 1 { &AFT_AN_ECL = &INT_CTRL * V4574 // same as above for all annunciators } IF V4575 = 1 { &AFT_AN_ECR = &INT_CTRL * V4575 } IF V4576 = 1 { &AFT_AN_FRF = &INT_CTRL * V4576 } IF V4577 = 1 { &AFT_AN_GL = &INT_CTRL * V4577 } IF V4578 = 1 { &AFT_AN_GN = &INT_CTRL * V4578 } IF V4579 = 1 { &AFT_AN_GR = &INT_CTRL * V4579 } IF V4580 = 1 { &AFT_AN_GPS = &INT_CTRL * V4580 } IF &AFT_V_ILA = 1 { &AFT_AN_ILA = &INT_CTRL * &AFT_V_ILA } IF V4590 = 1 { &AFT_AN_IDF = &INT_CTRL * V4590 } IF V4591 = 1 { &AFT_AN_ILF = &INT_CTRL * V4591 } IF V4592 = 1 { &AFT_AN_ILOD = &INT_CTRL * V4592 } IF &AFT_V_IRA = 1 { &AFT_AN_IRA = &INT_CTRL * &AFT_V_IRA } IF V4594 = 1 { &AFT_AN_IRDF = &INT_CTRL * V4594 } IF V4595 = 1 { &AFT_AN_IRF = &INT_CTRL * V4595 } IF V4596 = 1 { &AFT_AN_IROD = &INT_CTRL * V4596 } IF V4597 = 1 { &AFT_AN_POO = &INT_CTRL * V4597 } IF V4598 = 1 { &AFT_AN_PSEU = &INT_CTRL * V4598 } IF V4599 = 1 { &AFT_AN_RL = &INT_CTRL * V4599 } IF V4600 = 1 { &AFT_AN_RR = &INT_CTRL * V4600 } } Var 4700, name AFT_UPDT, Link SUBRUTINE { IF &AFT_IRS_TEST = 1 // TEST ----------------------------------------------------- { &AFT_IRS_DSPL_5 = 88888 &AFT_IRS_DSPR_6 = 888888 V4639 = 1 // N on V4640 = 1 // S on V4641 = 1 // H on V4642 = 1 // E on V4643 = 1 // W on V4644 = 1 // I on } IF &AFT_IRS_PPOS = 1 // PPOS ----------------------------------------------------- { CALL &AFT_OFF7_L // Clear left 7seg IF &AFT_IRS_DL <> -1 { L0 = &AFT_IRS_DL IF L0 = 0 { &AFT_IRS_DSPL_5 = 0 // show 0, N00.00.1/S00.00.1 are not supported. } IF L0 <> 0 { L1 = ABS L0 &AFT_IRS_DSPL_5 = L1 // show absolute number } IF L0 > 0 { V4639 = 1 // Show N if plus } ELSE { V4640 = 1 // Show S if minus } } ELSE // -1 is given { C0 = &AFT_DSPL_L = 1 // SYS DSPL = L ? C1 = &IRS1_POS_ON = 1 // IRS 1 position is valid ? C1 = C0 AND C1 // Condition 1 C0 = &AFT_DSPL_R = 1 // SYS DSPL = R ? C2 = &IRS2_POS_ON = 1 // IRS 2 position is valid ? C2 = C0 AND C2 // Condition 2 IF C1 OR C2 { &AFT_IRS_DSPL_5 = 2 // Show 00'00.2' V4640 = 1 // Show S } } CALL &AFT_OFF7_R // Clear right 7seg IF &AFT_IRS_DR <> -1 { L0 = &AFT_IRS_DR + 1 // Recover real value IF L0 = 0 { &AFT_IRS_DSPR_6 = 0 // show 0 } IF L0 <> 0 { L1 = ABS L0 &AFT_IRS_DSPR_6 = L1 // show absolute number } IF L0 > 0 { V4642 = 1 // Show E if plus } ELSE { V4643 = 1 // Show W if minus } } ELSE // -1 is given { C0 = &AFT_DSPL_L = 1 // SYS DSPL = L ? C1 = &IRS1_POS_ON = 1 // IRS 1 position is valid ? C1 = C0 AND C1 // Condition 1 C0 = &AFT_DSPL_R = 1 // SYS DSPL = R ? C2 = &IRS2_POS_ON = 1 // IRS 2 position is valid ? C2 = C0 AND C2 // Condition 2 IF C1 OR C2 { &AFT_IRS_DSPR_6 = 2 // Show 00'00.2' V4643 = 1 // Show W } } } IF &AFT_IRS_HDGS = 1 // HDG/STS ---------------------------------------------------- { CALL &AFT_OFF7_L // Clear left 7seg IF &AFT_IRS_DL <> -1 { &AFT_IRS_DSPL_4 = &AFT_IRS_DL // HDG on left display } CALL &AFT_OFF7_R // Clear right 7seg IF &AFT_IRS_DR <> -1 // All 7seg not off { IF &AFT_IRS_DR < 10 // one digit { &AFT_IRS_DISPR6 = &AFT_IRS_DR // remaining minuts less than 10 mins } IF &AFT_IRS_DR >= 10 // two digits { &AFT_IRS_DSPR_2 = &AFT_IRS_DR // remaining minuts more than 10 mins } } } IF &AFT_IRS_TKGS = 1 // TRK/GS -------------------------------------------------- { CALL &AFT_OFF7_L // Clear left 7seg IF &AFT_IRS_DL <> -1 { &AFT_IRS_DSPL_4 = &AFT_IRS_DL // Track } CALL &AFT_OFF7_R // Clear right 7seg IF &AFT_IRS_DR <> -1 { &AFT_IRS_DSPR_3 = &AFT_IRS_DR // Ground Speed } } IF &AFT_IRS_WIND = 1 // WIND ----------------------------------------------------- { CALL &AFT_OFF7_L // Clear left 7seg IF &AFT_IRS_DL <> -1 { &AFT_IRS_DSPL_4 = &AFT_IRS_DL // WIND Direction } CALL &AFT_OFF7_R // Clear right 7seg IF &AFT_IRS_DR <> -1 { L0 = &AFT_IRS_DR / 10 L0 = ROUND L0 &AFT_IRS_DSPR_3 = L0 // Ground Speed } } } Var 4702, name AFT_OFF7_L, Link SUBRUTINE // Clear left 7 seg 5 digits { &AFT_IRS_DISPL1 = -999999 &AFT_IRS_DISPL2 = -999999 &AFT_IRS_DISPL3 = -999999 &AFT_IRS_DISPL4 = -999999 &AFT_IRS_DISPL5 = -999999 &AFT_IRS_DSPL_5 = -999999 &AFT_IRS_DSPL_4 = -999999 &AFT_IRS_DSPL_3 = -999999 V4639 = 0 // N off V4640 = 0 // S off V4641 = 0 // H off } Var 4703, name AFT_OFF7_R, Link SUBRUTINE // Clear right 7 seg 6 digits { &AFT_IRS_DISPR1 = -999999 &AFT_IRS_DISPR2 = -999999 &AFT_IRS_DISPR3 = -999999 &AFT_IRS_DISPR4 = -999999 &AFT_IRS_DISPR5 = -999999 &AFT_IRS_DISPR6 = -999999 &AFT_IRS_DSPR_6 = -999999 &AFT_IRS_DSPR_3 = -999999 &AFT_IRS_DSPR_2 = -999999 V4642 = 0 // E off V4643 = 0 // W off V4644 = 0 // I off } Var 4704, name AFT_IRS_mode, Value 0 // IRS Input mode : -1 = ENT / 0 = No / 1 = NS mode / 2 = EW mode / 3 = H mode { IF &AFT_IRS_mode = 0 // Resume normal display mode { CALL &AFT_UPDT // Resume display } } Var 4705, name AFT_IRS_pos, Value 0 // Target 7seg digit position // 1-5 : left // 6-11 : right Var 4706, name AFT_IRS_lim, Value 0 // digits limit Var 4721, name AFT_IRS_num, Value -1 // Number to display Var 4707, name AFT_IRS_pnch, Link SUBRUTINE // Display number in positon { IF &AFT_IRS_lim <> 0 // not exceed limit { IF &AFT_IRS_mode = 3 // heading { &AFT_IRS_lim = &AFT_IRS_lim - 1 // decrease limit counter IF &AFT_IRS_pos = 1 { &AFT_IRS_DISPL5 = &AFT_IRS_num // display left window's 5th column &AFT_IRS_DISPL4 = -999998 // display underscore left window's 4th column } IF &AFT_IRS_pos = 2 { &AFT_IRS_DISPL4 = &AFT_IRS_DISPL5 // copy previous number &AFT_IRS_DISPL5 = &AFT_IRS_num // display left window's 5th column &AFT_IRS_DISPL3 = -999998 // display underscore left window's 3rd column } IF &AFT_IRS_pos = 3 { &AFT_IRS_DISPL3 = &AFT_IRS_DISPL4 // copy previous number &AFT_IRS_DISPL4 = &AFT_IRS_DISPL5 // copy previous number &AFT_IRS_DISPL5 = &AFT_IRS_num // display left window's 5th column &AFT_IRS_DISPL2 = -999998 // display - left window's 3rd column } IF &AFT_IRS_pos = 4 { &AFT_IRS_DISPL2 = &AFT_IRS_DISPL3 // copy previous number &AFT_IRS_DISPL3 = &AFT_IRS_DISPL4 // copy previous number &AFT_IRS_DISPL4 = &AFT_IRS_DISPL5 // copy previous number &AFT_IRS_DISPL5 = &AFT_IRS_num // display left window's 5th column &AFT_IRS_DISPL1 = -999998 // display - left window's 3rd column } IF &AFT_IRS_pos = 5 { &AFT_IRS_DISPL1 = &AFT_IRS_DISPL2 // copy previous number &AFT_IRS_DISPL2 = &AFT_IRS_DISPL3 // copy previous number &AFT_IRS_DISPL3 = &AFT_IRS_DISPL4 // copy previous number &AFT_IRS_DISPL4 = &AFT_IRS_DISPL5 // copy previous number &AFT_IRS_DISPL5 = &AFT_IRS_num // display left window's 5th column } } ELSE // input mode = 1, 2 { &AFT_IRS_lim = &AFT_IRS_lim - 1 // decrease limit counter IF &AFT_IRS_pos = 1 { &AFT_IRS_DISPL1 = &AFT_IRS_num // display left window's 1st column } IF &AFT_IRS_pos = 2 { &AFT_IRS_DISPL2 = &AFT_IRS_num // display left window's 2nd column } IF &AFT_IRS_pos = 3 { &AFT_IRS_DISPL3 = &AFT_IRS_num // display left window's 3rd column } IF &AFT_IRS_pos = 4 { &AFT_IRS_DISPL4 = &AFT_IRS_num // display left window's 4th column } IF &AFT_IRS_pos = 5 { &AFT_IRS_DISPL5 = &AFT_IRS_num // display left window's 5th column } IF &AFT_IRS_pos = 6 { &AFT_IRS_DISPR1 = &AFT_IRS_num // display right window's 1st column } IF &AFT_IRS_pos = 7 { &AFT_IRS_DISPR2 = &AFT_IRS_num // display right window's 2nd column } IF &AFT_IRS_pos = 8 { &AFT_IRS_DISPR3 = &AFT_IRS_num // display right window's 3rd column } IF &AFT_IRS_pos = 9 { &AFT_IRS_DISPR4 = &AFT_IRS_num // display right window's 4th column } IF &AFT_IRS_pos = 10 { &AFT_IRS_DISPR5 = &AFT_IRS_num // display right window's 5th column } IF &AFT_IRS_pos = 11 { &AFT_IRS_DISPR6 = &AFT_IRS_num // display right window's 6th column } } &AFT_IRS_pos = &AFT_IRS_pos + 1 // increase position counter } } Var 4720, name BUG_HKEY, Value 0 // PROSIM bug work around Var 4722, name IRS1_POS_ON, Value 0 // IRS 1 Position status set by PROSIM gate Var 4723, name IRS2_POS_ON, Value 0 // IRS 2 Position status set by PROSIM gate Var 4708, Value 0 // CLR key var for prosim Var 4522, Name AFT_IRSK_CLR, Link IOCARD_SW, Device 5, Input 253 // IRS Keypad CLR Off { IF V4522 = 0 { C0 = &AFT_IRS_mode <> 0 // push is valid in input mode C1 = &AFT_IRSC_CLR = 1 // CLR is allowed after ENT IF C0 OR C1 { &BUG_HKEY = 0 // PROSIM bug work around V4708 = 1 // tell CLR is pushed to prosim V4708 = DELAY 0, 30 CALL &AFT_OFF7_L // Clear left 7seg CALL &AFT_OFF7_R // Clear right 7seg CALL &AFT_UPDT // Restore IRS display mode &AFT_IRS_mode = 0 // no input mode } } } Var 4709, Value 0 // ENT key var for prosim Var 4523, Name AFT_IRSK_ENT, Link IOCARD_SW, Device 5, Input 271 // IRS Keypad ENT Off { IF V4523 = 0 // Ensure key is being pressed { IF &AFT_IRSC_ENT = 1 // Is ENT cue indicator on ? { IF &BUG_HKEY = 0 // Is not just after H key pressed ? { V4709 = 1 // tell ENT is pushed to prosim V4709 = DELAY 0, 30 &AFT_IRS_mode = -1 // ENT mode &BUG_HKEY = 0 // PROSIM bug work around } } } } Var 4710, Value 0 // 0 key var for prosim Var 4530, Link IOCARD_SW, Device 5, Input 254 // IRS Keypad 0 Off { IF V4530 = 0 { IF &AFT_IRS_mode <> 0 // push is valid in input mode { &BUG_HKEY = 0 // PROSIM bug work around V4710 = 1 // tell 0 is pushed to prosim V4710 = DELAY 0,30 &AFT_IRS_num = 0 // Display 0 in appropriate position CALL &AFT_IRS_pnch } } } Var 4711, Value 0 // 1 key var for prosim Var 4531, Link IOCARD_SW, Device 5, Input 265 // IRS Keypad 1 Off { IF V4531 = 0 { IF &AFT_IRS_mode <> 0 // push is valid in input mode { &BUG_HKEY = 0 // PROSIM bug work around V4711 = 1 // tell 1 is pushed to prosim V4711 = DELAY 0,30 &AFT_IRS_num = 1 // Display 1 in appropriate position CALL &AFT_IRS_pnch } } } Var 4712, Value 0 // 2N key for prosim Var 4532, Link IOCARD_SW, Device 5, Input 263 // IRS Keypad 2 Off (N) { IF V4532 = 0 { IF &AFT_IRS_mode = 0 // first input case ? { C0 = &AFT_DSPL_L = 1 C1 = &AFT_IRS_LALIGN = 1 C2 = &AFT_IRS_LNAV = 1 C1 = C1 OR C2 C1 = C0 AND C1 C0 = &AFT_IRS_RALIGN = 1 C2 = &AFT_IRS_RNAV = 1 C2 = C0 OR C2 C0 = &AFT_DSPL_R = 1 C2 = C0 AND C2 IF C1 OR C2 // L or R NAV/ALIGN mode ? { &AFT_IRS_mode = 1 // NS mode CALL &AFT_OFF7_L // Clear left display CALL &AFT_OFF7_R // Clear right display V4712 = 1 // tell N is pushed to prosim V4712 = DELAY 0,30 V4639 = 1 // N on &AFT_IRS_pos = 1 // set target 7seg position &AFT_IRS_lim = 5 // set position limit } } ELSE // key 2 { V4712 = 1 // tell 2 is pushed to prosim V4712 = DELAY 0,30 &AFT_IRS_num = 2 // Display 2 in appropriate position CALL &AFT_IRS_pnch } &BUG_HKEY = 0 // PROSIM bug work around } } Var 4713, Value 0 // 3 key for prosim Var 4533, Link IOCARD_SW, Device 5, Input 262 // IRS Keypad 3 Off { IF V4533 = 0 { IF &AFT_IRS_mode <> 0 // push is valid in input mode { &BUG_HKEY = 0 // PROSIM bug work around V4713 = 1 // tell 3 is pushed to prosim V4713 = DELAY 0,30 &AFT_IRS_num = 3 // Display 3 in appropriate position CALL &AFT_IRS_pnch } } } Var 4714, Value 0 // 4W key for prosim Var 4534, Link IOCARD_SW, Device 5, Input 268 // IRS Keypad 4 Off (W) { IF V4534 = 0 { IF &AFT_IRS_mode = 1 // NS input mode ? { IF &AFT_IRS_lim = 0 // Filled full digits ? { C0 = &AFT_DSPL_L = 1 C1 = &AFT_IRS_LALIGN = 1 C2 = &AFT_IRS_LNAV = 1 C1 = C1 OR C2 C1 = C0 AND C1 C0 = &AFT_IRS_RALIGN = 1 C2 = &AFT_IRS_RNAV = 1 C2 = C0 OR C2 C0 = &AFT_DSPL_R = 1 C2 = C0 AND C2 IF C1 OR C2 // L or R NAV/ALIGN mode ? { &AFT_IRS_mode = 2 // EW mode V4643 = 1 // W on V4714 = 1 // tell W is pushed to prosim V4714 = DELAY 0,30 &AFT_IRS_pos = 6 // set target 7seg position &AFT_IRS_lim = 6 // set position limit } } ELSE { V4714 = 1 // tell 4 is pushed to prosim V4714 = DELAY 0,30 &AFT_IRS_num = 4 // Display 4 in appropriate position CALL &AFT_IRS_pnch } } ELSE // key 4 { V4714 = 1 // tell 4 is pushed to prosim V4714 = DELAY 0,30 &AFT_IRS_num = 4 // Display 4 in appropriate position CALL &AFT_IRS_pnch } &BUG_HKEY = 0 // PROSIM bug work around } } Var 4715, Value 0 // 5H key for prosim Var 4535, Link IOCARD_SW, Device 5, Input 269 // IRS Keypad 5 Off (H) { IF V4535 = 0 { IF &AFT_IRS_mode = 0 // first input case ? { C0 = &AFT_DSPL_L = 1 C1 = &AFT_IRS_LATT = 1 C1 = C0 AND C1 C0 = &AFT_DSPL_R = 1 C2 = &AFT_IRS_RATT = 1 C2 = C0 AND C2 IF C1 OR C2 // L or R ATT mode ? { &AFT_IRS_mode = 3 // H mode CALL &AFT_OFF7_L // Clear left display CALL &AFT_OFF7_R // Clear right display V4641 = 1 // H on &AFT_IRS_pos = 1 // set target 7seg position &AFT_IRS_lim = 5 // set position limit &BUG_HKEY = 1 // Prosim bug work around V4715 = 1 // tell H is pushed to prosim V4715 = DELAY 0,30 } } ELSE // key 5 { V4715 = 1 // tell 5 is pushed to prosim V4715 = DELAY 0,30 &BUG_HKEY = 0 // PROSIM bug work around &AFT_IRS_num = 5 // Display 5 in appropriate position CALL &AFT_IRS_pnch } } } Var 4716, Value 0 // 6E key for prosim Var 4536, Link IOCARD_SW, Device 5, Input 264 // IRS Keypad 6 Off (E) { IF V4536 = 0 { IF &AFT_IRS_mode = 1 // NS input mode ? { IF &AFT_IRS_lim = 0 // Filled full digits ? { C0 = &AFT_DSPL_L = 1 C1 = &AFT_IRS_LALIGN = 1 C2 = &AFT_IRS_LNAV = 1 C1 = C1 OR C2 C1 = C0 AND C1 C0 = &AFT_IRS_RALIGN = 1 C2 = &AFT_IRS_RNAV = 1 C2 = C0 OR C2 C0 = &AFT_DSPL_R = 1 C2 = C0 AND C2 IF C1 OR C2 // L or R NAV/ALIGN mode ? { &AFT_IRS_mode = 2 // EW mode V4642 = 1 // E on V4716 = 1 // tell E is pushed to prosim V4716 = DELAY 0,30 &AFT_IRS_pos = 6 // set target 7seg position &AFT_IRS_lim = 6 // set position limit } } ELSE { V4716 = 1 // tell 6 is pushed to prosim V4716 = DELAY 0,30 &AFT_IRS_num = 6 // Display 6 in appropriate position CALL &AFT_IRS_pnch } } ELSE // key 6 { V4716 = 1 // tell 6 is pushed to prosim V4716 = DELAY 0,30 &AFT_IRS_num = 6 // Display 6 in appropriate position CALL &AFT_IRS_pnch } &BUG_HKEY = 0 // PROSIM bug work around } } Var 4717, Value 0 // 7 key for prosim Var 4537, Link IOCARD_SW, Device 5, Input 267 // IRS Keypad 7 Off { IF V4537 = 0 { &BUG_HKEY = 0 // PROSIM bug work around V4717 = 1 // tell 7 is pushed to prosim V4717 = DELAY 0,30 &AFT_IRS_num = 7 // Display 7 in appropriate position CALL &AFT_IRS_pnch } } Var 4718, Value 0 // 8S key for prosim Var 4538, Link IOCARD_SW, Device 5, Input 261 // IRS Keypad 8 Off (S) { IF V4538 = 0 { IF &AFT_IRS_mode = 0 // first input case ? { C0 = &AFT_DSPL_L = 1 C1 = &AFT_IRS_LALIGN = 1 C2 = &AFT_IRS_LNAV = 1 C1 = C1 OR C2 C1 = C0 AND C1 C0 = &AFT_IRS_RALIGN = 1 C2 = &AFT_IRS_RNAV = 1 C2 = C0 OR C2 C0 = &AFT_DSPL_R = 1 C2 = C0 AND C2 IF C1 OR C2 // L or R NAV/ALIGN mode ? { &AFT_IRS_mode = 1 // NS mode CALL &AFT_OFF7_L // Clear left display CALL &AFT_OFF7_R // Clear right display V4640 = 1 // S on V4718 = 1 // tell S is pushed to prosim V4718 = DELAY 0,30 &AFT_IRS_pos = 1 // set target 7seg position &AFT_IRS_lim = 5 // set position limit } } ELSE // key 8 { V4718 = 1 // tell 8 is pushed to prosim V4718 = DELAY 0,30 &AFT_IRS_num = 8 // Display 8 in appropriate position CALL &AFT_IRS_pnch } &BUG_HKEY = 0 // PROSIM bug work around } } Var 4719, Value 0 // 9 key for prosim Var 4539, Link IOCARD_SW, Device 5, Input 266 // IRS Keypad 9 Off { IF V4539 = 0 { &BUG_HKEY = 0 // PROSIM bug work around V4719 = 1 // tell 9 is pushed to prosim V4719 = DELAY 0,30 &AFT_IRS_num = 9 // Display 9 in appropriate position CALL &AFT_IRS_pnch } }