Var 0000, Value 0
{
V0040 = 180 // COURSE
V0045 = 180 // COURSE
V0042 = 180 // HDG
V0043 = 10 // ALT
V0044 = 0 // 00 DEL ALT EL 00 ES FIJO
V0006 = SETBIT 23 // PONE MODO IAS
V0013 = V0004 // IAS LEIDAS EN IAS TEMPORAL
V0014 = V0005 // MATH LEIDAS EN MATH TEMPORAL
V0041 = V0004 // PONE POR IAS EN DISPLAY
&0SUB_DH = 3000
&0SUB_BAR = 1013
&0SUB2_DH = 3000
&0SUB2_BAR = 1013
}
Var 0001, Link FSUIPC_IN, Offset $04E6, Length 2, Type 1 // VS DE ENTRADA
{
V0062 = V0001
CALL V0063 // PONE VALOR EN EL DISPLAY
}
Var 0002, Link FSUIPC_IN, Offset $051C, Length 2 // INDICADORES MCP
{
C0 = TESTBIT V0002 ,0 // ESTà¡ APAGADO EL DISPLAY DEL VS ?
IF C0 // SI ENTONCES
{
V0046 = -999999 // QUITA EL 00 FINAL DEL DISPLAY
V0039 = -999999 // APAGA RESTO DE DIGITOS
V0047 = -999999 // APAGO EL SIGNO -
}
ELSE // NO ENTONCES
{
V0046 = 0 // ENCIENDE LOS 00 DEL DISPLAY
CALL V0063 // PONE EL V/S EN EL DISPLAY
}
}
Var 0003, Link FSUIPC_IN, Offset $04F0, Length 2 // LUCES DEL MCP
{
V0049 = TESTBIT V0003 ,2 // V/S
V0048 = TESTBIT V0003 ,11 // A/T
V0050 = TESTBIT V0003 ,9 // SPEED
V0051 = TESTBIT V0003 ,10 // N1
V0052 = TESTBIT V0003 ,3 // ALT HOLD
V0053 = TESTBIT V0003 ,4 // APP
V0054 = TESTBIT V0003 ,5 // VORLOC
V0055 = TESTBIT V0003 ,6 // LNAV
V0056 = TESTBIT V0003 ,7 // HDG
V0057 = TESTBIT V0003 ,8 // LVL CHG
V0058 = TESTBIT V0003 ,14 // VNAV
V0059 = TESTBIT V0003 ,0 // AP1
V0060 = TESTBIT V0003 ,1 // AP2
C0 = TESTBIT V0003 ,15 // MODO MATH O IAS ?
IF C0 // MATH MODE
{
V0014 = V0005 // CARGO VALOR EN TEMPORAL
V0061 = 1 // ENCIENDO EL PUNTO DECIMAL
CALL V0064 // DISPLAY DEL VALOR
}
ELSE // IAS MODE
{
V0013 = V0004 // CARGO VALOR EN TEMPORAL
V0061 = 0 // APAGO EL PUNTO DECIMAL
CALL V0064 // DISPLAY DEL VALOR
}
}
Var 0004, Link FSUIPC_IN, Offset $04E0, Length 2 // IAS
{
CALL V0064 // DISPLAY DEL VALOR
}
Var 0005, Link FSUIPC_IN, Offset $04E8, Length 2 // MATH
{
CALL V0064 // DISPLAY DEL VALOR
}
Var 0006, Link FSUIPC_OUT, Offset $5410, Length 4 // PULSADORES-I PM
Var 0007, Link FSUIPC_OUT, Offset $5414, Length 4 // PULSADORES-II PM
Var 0008, Link FSUIPC_OUT, Offset $540C, Length 2, Type 1 // V/S DE SALIDA
Var 0009, Link FSUIPC_OUT, Offset $5414, Length 4 // BOTONES MCP
Var 0010, Link FSUIPC_OUT, Offset $0C4E, Length 2 // COURSE
Var 0011, Link FSUIPC_OUT, Offset $5408, Length 2 // HDG
Var 0012, Link FSUIPC_OUT, Offset $540A, Length 2 // ALT
Var 0013, Link FSUIPC_OUT, Offset $5406, Length 2 // IAS
Var 0014, Link FSUIPC_OUT, Offset $540E, Length 2 // MATH
Var 0015, Link FSUIPC_OUT, Offset $0C5E, Length 2 // COURSE 2
Var 0016, Link IOCARD_SW, Input 33 // #SC#MCP&EFIS_PMagenta.txt# INTERRUPTOR A
{
IF V0016 = 1 // SI ESTà¡ ENCENDIDO
{
V0006 = TOGGLE 19 // HAGO TOGGLE DEL BIT 19
}
ELSE
{
V0006 = TOGGLE 20 // SI APAGADO TOGGLE DEL BIT 20
}
}
Var 0017, Link IOCARD_SW, Input 16 // #SC#MCP&EFIS_PMagenta.txt# INTERRUPTOR F
{
IF V0017 = 1
{
V0007 = TOGGLE 5
}
ELSE
{
V0007 = TOGGLE 6
}
}
Var 0018, Link IOCARD_SW, Input 22, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON V/S
{
V0009 = CHANGEBIT 11 ,V0018 // SI PULSADOR ENCENDIDO BIT 11 A 1 SI APAG
}
Var 0019, Link IOCARD_SW, Input 12, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON SPEED
{
V0006 = CHANGEBIT 22 ,V0019
}
Var 0020, Link IOCARD_SW, Input 5, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON THR
{
V0006 = CHANGEBIT 21 ,V0020
}
Var 0021, Link IOCARD_SW, Input 4, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON LVL CHG
{
V0006 = CHANGEBIT 24 ,V0021
}
Var 0022, Link IOCARD_SW, Input 10, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON HDG
{
V0006 = CHANGEBIT 11 ,V0022
}
Var 0023, Link IOCARD_SW, Input 0, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON ALT HOL
{
V0006 = CHANGEBIT 30 ,V0023
}
Var 0024, Link IOCARD_SW, Input 2, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON APP
{
V0006 = CHANGEBIT 29 ,V0024
}
Var 0025, Link IOCARD_SW, Input 6, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON VORLOC
{
V0006 = CHANGEBIT 28 ,V0025
}
Var 0026, Link IOCARD_SW, Input 9, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON LNAV
{
V0006 = CHANGEBIT 27 ,V0026
}
Var 0027, Link IOCARD_SW, Input 11, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON VNAV
{
V0006 = CHANGEBIT 26 ,V0027
}
Var 0028, Link IOCARD_SW, Input 8, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON DISENGA
{
IF V0028 = 0
{
V0009 = TOGGLE 8 // SI APAGO PONGO EL BIT A 0
}
ELSE
{
V0009 = TOGGLE 9 // SI ESTà¡ ENCENDIDO PONGO EL BIT A 1
}
}
Var 0029, Link IOCARD_SW, Input 3, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON CMD1
{
V0009 = CHANGEBIT 0 ,V0029
}
Var 0030, Link IOCARD_SW, Input 7, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON AP2
{
V0009 = CHANGEBIT 1 ,V0030
}
Var 0031, Link IOCARD_SW, Input 100, Type P // #SC#MCP&EFIS_PMagenta.txt# BOTON MATH
{
V0006 = CHANGEBIT 23 ,V0031
}
Var 0032, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt# INTERRUPTOR F
{
IF V0032 = 1
{
V0006 = TOGGLE 17
}
ELSE
{
V0006 = TOGGLE 18
}
}
Var 0033, Link IOCARD_ENCODER, Input 100, Aceleration 4, Type 2 // #SC#MCP&EFIS_PMagenta.txt# ENCODER VS
{
L0 = V0033 * -100 // INCREMENTA DE 100 EN 100
V0062 = ROTATE -9000 ,9000 ,L0 // SUMA O RESTA DEL VALOR TEMPORAL DE V/S
V0008 = V0062
}
Var 0034, Link IOCARD_ENCODER, Input 100, Aceleration 4, Type 2 // #SC#MCP&EFIS_PMagenta.txt# ENCODER COURS
{
L0 = V0034 * -1
V0040 = ROTATE 0 ,359 ,L0 // ROTO EL VALOR DEL COURSE
}
Var 0035, Link IOCARD_ENCODER, Input 61, Aceleration 4, Type 2 // #SC#MCP&EFIS_PMagenta.txt# ENCODER IAS Y
{
L0 = V0035 * -1
C0 = TESTBIT V0003 ,15 // INDICADOR MATH O IAS ?
IF C0 // MATH MODE
{
V0014 = LIMIT 25 ,95 ,L0 // INC O DECREMENTO EL VALOR DEL MATH
}
ELSE
{
V0013 = LIMIT 0 ,340 ,L0 // INC O DECREMENTO EL VALOR DEL IAS
}
}
Var 0036, Link IOCARD_ENCODER, Input 58, Aceleration 4, Type 2 // #SC#MCP&EFIS_PMagenta.txt# ENCODER HDG
{
L0 = V0036 * -1
V0042 = ROTATE 0 ,359 ,L0
}
Var 0037, Link IOCARD_ENCODER, Input 256, Aceleration 4, Type 2 // #SC#MCP&EFIS_PMagenta.txt# ENCODER ALT
{
L0 = V0037 * -1
V0043 = LIMIT 0 ,500 ,L0
}
Var 0038, Link IOCARD_ENCODER, Input 100, Aceleration 4, Type 2 // #SC#MCP&EFIS_PMagenta.txt# ENCODER COURS
{
L0 = V0038 * -1
V0045 = ROTATE 0 ,359 ,L0 // ROTO EL VALOR DEL COURSE
}
Var 0039, Link IOCARD_DISPLAY, Digit 16, Numbers 2 // #SC#MCP&EFIS_PMagenta.txt# VS
Var 0040, Link IOCARD_DISPLAY, Digit 30, Numbers 3 // #SC#MCP&EFIS_PMagenta.txt# COURSE
{
V0010 = V0040 // PASA EL VALOR AL PM
}
Var 0041, Link IOCARD_DISPLAY, Digit 14, Numbers 3 // #SC#MCP&EFIS_PMagenta.txt# IAS Y MATH
Var 0042, Link IOCARD_DISPLAY, Digit 11, Numbers 3 // #SC#MCP&EFIS_PMagenta.txt# HEADING
{
V0011 = V0042 // PASA EL VALOR AL PM
}
Var 0043, Link IOCARD_DISPLAY, Digit 0, Numbers 3 // #SC#MCP&EFIS_PMagenta.txt# ALT
{
V0012 = V0043 // PASA EL VALOR AL PM
}
Var 0044, Link IOCARD_DISPLAY, Digit 3, Numbers 2 // #SC#MCP&EFIS_PMagenta.txt# ALT 00
Var 0045, Link IOCARD_DISPLAY, Digit 19, Numbers 3 // #SC#MCP&EFIS_PMagenta.txt# COURSE 2
{
V0015 = V0045 // PASA EL VALOR AL PM
}
Var 0046, Link IOCARD_DISPLAY, Digit 9, Numbers 2 // #SC#MCP&EFIS_PMagenta.txt# VS 00
Var 0047, Link IOCARD_DISPLAY, Digit 5, Numbers 1 // #SC#MCP&EFIS_PMagenta.txt# SIGNO VS
Var 0048, Link IOCARD_OUT, Output 0 // #SC#MCP&EFIS_PMagenta.txt# LED A/T
Var 0049, Link IOCARD_OUT, Output 0 // #SC#MCP&EFIS_PMagenta.txt# LED DEL BOTON
Var 0050, Link IOCARD_OUT, Output 37 // #SC#MCP&EFIS_PMagenta.txt# LED SPEED
Var 0051, Link IOCARD_OUT, Output 36 // #SC#MCP&EFIS_PMagenta.txt# LED THR
Var 0052, Link IOCARD_OUT, Output 42 // #SC#MCP&EFIS_PMagenta.txt# LED ALT HOLD
Var 0053, Link IOCARD_OUT, Output 43 // #SC#MCP&EFIS_PMagenta.txt# LED APP
Var 0054, Link IOCARD_OUT, Output 44 // #SC#MCP&EFIS_PMagenta.txt# LED VORLOC
Var 0055, Link IOCARD_OUT, Output 40 // #SC#MCP&EFIS_PMagenta.txt# LED LNAV
Var 0056, Link IOCARD_OUT, Output 33 // #SC#MCP&EFIS_PMagenta.txt# LED HDG
Var 0057, Link IOCARD_OUT, Output 34 // #SC#MCP&EFIS_PMagenta.txt# LED LVL CHG
Var 0058, Link IOCARD_OUT, Output 35 // #SC#MCP&EFIS_PMagenta.txt# LED VNAV
Var 0059, Link IOCARD_OUT, Output 45 // #SC#MCP&EFIS_PMagenta.txt# LED AP1
Var 0060, Link IOCARD_OUT, Output 46 // #SC#MCP&EFIS_PMagenta.txt# LED AP2
Var 0061, Link IOCARD_OUT, Output 2 // #SC#MCP&EFIS_PMagenta.txt# LED . DECIMAL
Var 0062 // VALOR TEMPORAL DEL V/S
Var 0063, Link SUBRUTINE // PINTA V/S
{
C0 = TESTBIT V0002 ,0 // COMPRUEBA SI DEBEN DE ESTAR APAGADOS
C0 = NOT C0
IF C0 // Sà³LO EN EL CASO DE ESTAR ENCENDIDOS
{
IF V0062 < 0 // SI V/S ES NEGATIVO PASA A POSITIVO
{
L0 = ABS V0062
V0047 = -999998 // ENCIENDO EL SIGNO -
}
ELSE
{
V0047 = -999999 // APAGO EL SIGNO -
L0 = V0062
}
V0039 = L0 / 100 // MANDA EL VALOR AJUSTADO DE V/S A DISPLAY
}
}
Var 0064, Link SUBRUTINE // PINTA IAS / MATH
{
C0 = TESTBIT V0003 ,15 // MODO MATH O IAS ?
IF C0 // MATH MODE
{
V0061 = 1 // ENCIENDO EL PUNTO DECIMAL
V0041 = V0005 // PONE VALOR MATH EN EL DISPLAY
}
ELSE
{
V0061 = 0 // ENCIENDO EL PUNTO DECIMAL
V0041 = V0004 // PONE VALOR IAS EN EL DISPLAY
}
}
Var 0065, name 0I_5, Link IOCARD_SW, Input 42 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_5 = 1
{
&0PM_RANG = 0
}
}
Var 0066, name 0I_10, Link IOCARD_SW, Input 39 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_10 = 1
{
&0PM_RANG = 1
}
}
Var 0067, name 0I_20, Link IOCARD_SW, Input 41 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_20 = 1
{
&0PM_RANG = 2
}
}
Var 0068, name 0I_40, Link IOCARD_SW, Input 44 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_40 = 1
{
&0PM_RANG = 3
}
}
Var 0069, name 0I_80, Link IOCARD_SW, Input 38 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_80 = 1
{
&0PM_RANG = 4
}
}
Var 0070, name 0I_160, Link IOCARD_SW, Input 43 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_160 = 1
{
&0PM_RANG = 5
}
}
Var 0071, name 0I_320, Link IOCARD_SW, Input 40 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_320 = 1
{
&0PM_RANG = 6
}
}
Var 0072, name 0I_640, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_640 = 1
{
&0PM_RANG = 7
}
}
Var 0073, name 0I_APP, Link IOCARD_SW, Input 33 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_APP = 1
{
&0PM_MODO = 5
}
}
Var 0074, name 0I_VOR, Link IOCARD_SW, Input 34 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_VOR = 1
{
&0PM_MODO = 3
}
}
Var 0075, name 0I_MAP, Link IOCARD_SW, Input 32 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_MAP = 1
{
&0PM_MODO = 1
}
}
Var 0076, name 0I_PLN, Link IOCARD_SW, Input 35 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_PLN = 1
{
&0PM_MODO = 4
}
}
Var 0077, name 0I_S1, Link IOCARD_SW, Input 66 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S1 = 1
{
&0PM_MODO = 90 // STA
}
}
Var 0078, name 0I_S2, Link IOCARD_SW, Input 67 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S2 = 1
{
&0PM_MODO = 93 // WPT
}
}
Var 0079, name 0I_S3, Link IOCARD_SW, Input 65 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S3 = 1
{
&0PM_MODO = 70 // WXR
}
}
Var 0080, name 0I_S4, Link IOCARD_SW, Input 68 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S4 = 1
{
&0PM_MODO = 94 // ARPT
}
}
Var 0081, name 0I_S5, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S5 = 1
{
}
}
Var 0082, name 0I_S6, Link IOCARD_SW, Input 69 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S6 = 1
{
&0PM_MODO = 95 // DATA
}
}
Var 0083, name 0I_S7, Link IOCARD_SW, Input 70 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_S7 = 1
{
&0PM_MODO = 96 // POS
}
}
Var 0084, name 0I_SR1, Link IOCARD_SW, Input 63 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_SR1 = 1
{
&0PM_MODO = 14 // FPV
}
}
Var 0085, name 0I_SR2, Link IOCARD_SW, Input 64 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_SR2 = 1
{
&0PM_MODO = 26 // MTRS
}
}
Var 0086, name 0I_BARONSW, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_BARONSW = 1
{
&0SUB_BAR = 1013
L0 = 1013 * 16
L0 = L0 + 1
&0FS_QNH = L0
}
}
Var 0087, name 0I_MINSW, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_MINSW = 1
{
&0SUB_DH = 3000
}
}
Var 0088, name 0I_VOR1, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_VOR1 = 1
{
&0PM_MODO = 75
}
ELSE
{
IF &0I_ADF1 = 0
{
&0PM_MODO = 73
}
}
}
Var 0089, name 0I_ADF1, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_ADF1 = 1
{
&0PM_MODO = 74
}
ELSE
{
IF &0I_VOR1 = 0
{
&0PM_MODO = 73
}
}
}
Var 0090, name 0I_VOR2, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_VOR2 = 1
{
&0PM_MODO = 78
}
ELSE
{
IF &0I_ADF2 = 0
{
&0PM_MODO = 76
}
}
}
Var 0091, name 0I_ADF2, Link IOCARD_SW, Input 100 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I_ADF2 = 1
{
&0PM_MODO = 77
}
ELSE
{
IF &0I_VOR2 = 0
{
&0PM_MODO = 76
}
}
}
Var 0092, name 0E_BARO, Link IOCARD_ENCODER, Input 100, Aceleration 1, Type 2 // #SC#MCP&EFIS_PMagenta.txt#
{
L0 = &0E_BARO * -1
&0SUB_BAR = &0SUB_BAR + L0
}
Var 0093, name 0E_MIN, Link IOCARD_ENCODER, Input 100, Aceleration 1, Type 2 // #SC#MCP&EFIS_PMagenta.txt#
{
L0 = &0E_MIN * -100
&0SUB_DH = &0SUB_DH + L0
}
Var 0094, name 0SUB_DH, Link SUBRUTINE
{
IF &0SUB_DH > 20000
{
&0SUB_DH = 20000
}
IF &0SUB_DH < 0
{
&0SUB_DH = 0
}
L0 = DIV &0SUB_DH ,100
&0PM_DH = L0
}
Var 0095, name 0SUB_BAR, Link SUBRUTINE
{
L0 = &0SUB_BAR * 16
&0FS_QNH = L0
}
Var 0096, name 0SUB2_DH, Link SUBRUTINE
{
IF &0SUB2_DH > 20000
{
&0SUB2_DH = 20000
}
IF &0SUB2_DH < 0
{
&0SUB2_DH = 0
}
L0 = DIV &0SUB2_DH ,100
&0PM2_DH = L0
}
Var 0097, name 0SUB2_BAR, Link SUBRUTINE
{
L0 = &0SUB2_BAR * 16
&0FS2_QNH = L0
}
Var 0098, name 0PM_MODO, Link FSUIPC_INOUT, Offset $04F4, Length 2 // PM_EFIS_MODO
Var 0099, name 0PM_RANG, Link FSUIPC_OUT, Offset $04F8, Length 2 // PM_EFIS_RANG
Var 0100, name 0PM_DH, Link FSUIPC_OUT, Offset $04FA, Length 2 // PM_EFIS_DH
Var 0101, name 0FS_QNH, Link FSUIPC_OUT, Offset $0330, Length 2 // FS_QNH_MB
Var 0102, name 0PM2_RANG, Link FSUIPC_OUT, Offset $5524, Length 2 // PM_EFIS_RANG FO
Var 0103, name 0PM2_DH, Link FSUIPC_OUT, Offset $5532, Length 2 // PM_EFIS_DH FO
Var 0104, name 0FS2_QNH, Link FSUIPC_OUT, Offset $552E, Length 2 // FS_QNH_MB FO
Var 0105, name 0I2_5, Link IOCARD_SW, Device 2, Input 0 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_5 = 1
{
&0PM2_RANG = 0
}
}
Var 0106, name 0I2_10, Link IOCARD_SW, Device 2, Input 1 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_10 = 1
{
&0PM2_RANG = 1
}
}
Var 0107, name 0I2_20, Link IOCARD_SW, Device 2, Input 2 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_20 = 1
{
&0PM2_RANG = 2
}
}
Var 0108, name 0I2_40, Link IOCARD_SW, Device 2, Input 3 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_40 = 1
{
&0PM2_RANG = 3
}
}
Var 0109, name 0I2_80, Link IOCARD_SW, Device 2, Input 4 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_80 = 1
{
&0PM2_RANG = 4
}
}
Var 0110, name 0I2_160, Link IOCARD_SW, Device 2, Input 5 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_160 = 1
{
&0PM2_RANG = 5
}
}
Var 0111, name 0I2_320, Link IOCARD_SW, Device 2, Input 6 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_320 = 1
{
&0PM2_RANG = 6
}
}
Var 0112, name 0I2_640, Link IOCARD_SW, Device 2, Input 7 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_640 = 1
{
&0PM2_RANG = 7
}
}
Var 0113, name 0I2_APP, Link IOCARD_SW, Device 2, Input 9 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_APP = 1
{
&0PM_MODO = 105
}
}
Var 0114, name 0I2_VOR, Link IOCARD_SW, Device 2, Input 10 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_VOR = 1
{
&0PM_MODO = 103
}
}
Var 0115, name 0I2_MAP, Link IOCARD_SW, Device 2, Input 11 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_MAP = 1
{
&0PM_MODO = 101
}
}
Var 0116, name 0I2_PLN, Link IOCARD_SW, Device 2, Input 12 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_PLN = 1
{
&0PM_MODO = 104
}
}
Var 0117, name 0I2_S1, Link IOCARD_SW, Device 2, Input 27 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S1 = 1
{
&0PM_MODO = 190 // STA
}
}
Var 0118, name 0I2_S2, Link IOCARD_SW, Device 2, Input 28 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S2 = 1
{
&0PM_MODO = 193 // WPT
}
}
Var 0119, name 0I2_S3, Link IOCARD_SW, Device 2, Input 29 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S3 = 1
{
&0PM_MODO = 106 // CTR
}
}
Var 0120, name 0I2_S4, Link IOCARD_SW, Device 2, Input 30 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S4 = 1
{
&0PM_MODO = 194 // ARPT
}
}
Var 0121, name 0I2_S5, Link IOCARD_SW, Device 2, Input 31 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S5 = 1
{
}
}
Var 0122, name 0I2_S6, Link IOCARD_SW, Device 2, Input 32 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S6 = 1
{
&0PM_MODO = 195 // DATA
}
}
Var 0123, name 0I2_S7, Link IOCARD_SW, Device 2, Input 33 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_S7 = 1
{
&0PM_MODO = 196 // POS
}
}
Var 0124, name 0I2_SR1, Link IOCARD_SW, Device 2, Input 34 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_SR1 = 1
{
&0PM_MODO = 114 // FPV
}
}
Var 0125, name 0I2_SR2, Link IOCARD_SW, Device 2, Input 38 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_SR2 = 1
{
&0PM_MODO = 126 // MTRS
}
}
Var 0126, name 0I2_BARONSW, Link IOCARD_SW, Device 2, Input 22 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_BARONSW = 1
{
&0SUB2_BAR = 1013
L0 = 1013 * 16
L0 = L0 + 1
&0FS2_QNH = L0
}
}
Var 0127, name 0I2_MINSW, Link IOCARD_SW, Device 2, Input 25 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_MINSW = 1
{
&0SUB2_DH = 3000
}
}
Var 0128, name 0I2_VOR1, Link IOCARD_SW, Device 2, Input 36 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_VOR1 = 1
{
&0PM_MODO = 175
}
ELSE
{
IF &0I2_ADF1 = 0
{
&0PM_MODO = 173
}
}
}
Var 0129, name 0I2_ADF1, Link IOCARD_SW, Device 2, Input 37 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_ADF1 = 1
{
&0PM_MODO = 174
}
ELSE
{
IF &0I2_VOR1 = 0
{
&0PM_MODO = 173
}
}
}
Var 0130, name 0I2_VOR2, Link IOCARD_SW, Device 2, Input 18 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_VOR2 = 1
{
&0PM_MODO = 178
}
ELSE
{
IF &0I2_ADF2 = 0
{
&0PM_MODO = 176
}
}
}
Var 0131, name 0I2_ADF2, Link IOCARD_SW, Device 2, Input 19 // #SC#MCP&EFIS_PMagenta.txt#
{
IF &0I2_ADF2 = 1
{
&0PM_MODO = 177
}
ELSE
{
IF &0I2_VOR2 = 0
{
&0PM_MODO = 176
}
}
}
Var 0132, name 0E2_BARO, Link IOCARD_ENCODER, Device 2, Input 20, Aceleration 1, Type 2 // #SC#MCP&EFIS_PMagenta.txt
{
L0 = &0E2_BARO * -1
&0SUB2_BAR = &0SUB2_BAR + L0
}
Var 0133, name 0E2_MIN, Link IOCARD_ENCODER, Device 2, Input 23, Aceleration 1, Type 2 // #SC#MCP&EFIS_PMagenta.txt#
{
L0 = &0E2_MIN * -100
&0SUB2_DH = &0SUB2_DH + L0
}
Var 0134, Link IOCARD_SW, Input 14 // #SC#MCP&EFIS_PMagenta.txt# INTERRUPTOR F
{
IF V0134 = 1
{
&BATTERIE = SETBIT 0
V0040 = 180
V0041 = 200
V0042 = 0
V0043 = 10
V0044 = 0
V0045 = 180
V0039 = 0
V0046 = 0
}
ELSE
{
&BATTERIE = CLEARBIT 0
V0040 = -999999
V0041 = -999999
V0042 = -999999
V0043 = -999999
V0044 = -999999
V0045 = -999999
V0039 = -999999
V0046 = -999999
}
}
Var 0135, name BATTERIE, Link FSUIPC_INOUT, Offset $5628, Length 2
Var 0136, name PM_MODO, Link FSUIPC_INOUT, Offset $04F4, Length 4
Var 0525, name P_ECAM_ENG, static, Link IOCARD_SW, Input 52, Type P // SWITCHE PED ECAM ENG
{
&P_ECAM_ENG = 0
&PM_MODO = 301
}
Var 0526, name P_ECAM_STAT, static, Link IOCARD_SW, Input 53, Type P // SWITCHE PED ECAM STAT
{
&P_ECAM_STAT = 0
&PM_MODO = 302
}
Var 0527, name P_ECAM_ELEC, static, Link IOCARD_SW, Input 49, Type P // SWITCHE PED ECAM ELEC
{
&P_ECAM_ELEC = 0
&PM_MODO = 303
}
Var 0528, name P_ECAM_FUEL, static, Link IOCARD_SW, Input 50, Type P // SWITCHE PED ECAM FUEL
{
&P_ECAM_FUEL = 0
&PM_MODO = 304
}
Var 0529, name P_ECAM_ECS, static, Link IOCARD_SW, Input 51, Type P // SWITCHE PED ECAM ECS
{
&P_ECAM_ECS = 0
&PM_MODO = 305
}
Var 0530, name P_ECAM_HYD, static, Link IOCARD_SW, Input 46, Type P // SWITCHE PED ECAM HYD
{
&P_ECAM_HYD = 0
&PM_MODO = 306
}
Var 0531, name P_ECAM_DRS, static, Link IOCARD_SW, Input 47, Type P // SWITCHE PED ECAM DOORS
{
&P_ECAM_DRS = 0
&PM_MODO = 307
}
Var 0532, name P_ECAM_GEAR, static, Link IOCARD_SW, Input 48, Type P // SWITCHE PED ECAM GEAR
{
&P_ECAM_GEAR = 0
&PM_MODO = 308
}
Var 0533, name P_ECAM_CANC, static, Link IOCARD_SW, Input 123, Type P // SWITCHE PED ECAM FUEL
{
&P_ECAM_CANC = 0
&PM_MODO = 318
}
Var 0534, name P_ECAM_RCL, static, Link IOCARD_SW, Input 122, Type P // SWITCHE PED ECAM HYD
{
&P_ECAM_RCL = 0
&PM_MODO = 319
}
Var 0137, name iocp_teclas
Var 0138, name teclado, Link IOCARD_KEYS, Device 3
{
IF &teclado = 71 // menu
{
&k = 629
}
IF &teclado = 79 // perf init
{
&k = 624
}
IF &teclado = 78 // rte
{
&k = 625
}
IF &teclado = 75 // des
{
&k = 628
}
IF &teclado = 70 // legs
{
&k = 630
}
IF &teclado = 67 // prog
{
&k = 633
}
IF &teclado = 63 // n1 altn
{
&k = 634
}
IF &teclado = 62 // fix
{
&k = 635
}
IF &teclado = 77 // clb
{
&k = 626
}
IF &teclado = 76 // crz
{
&k = 627
}
IF &teclado = 69 // dep
{
&k = 631
}
IF &teclado = 68 // hold
{
&k = 632
}
IF &teclado = 66 // ENTER
{
&k = 13
}
IF &teclado = 55 // Prev Pg
{
&k = 33
}
IF &teclado = 54 // Next Pg
{
&k = 34
}
IF &teclado = 7 // 0
{
&k = 48
}
IF &teclado = 32 // 1
{
&k = 49
}
IF &teclado = 31 // 2
{
&k = 50
}
IF &teclado = 30 // 3
{
&k = 51
}
IF &teclado = 24 // 4
{
&k = 52
}
IF &teclado = 23 // 5
{
&k = 53
}
IF &teclado = 22 // 6
{
&k = 54
}
IF &teclado = 16 // 7
{
&k = 55
}
IF &teclado = 15 // 8
{
&k = 56
}
IF &teclado = 14 // 9
{
&k = 57
}
IF &teclado = 8 // .
{
&k = 190
}
IF &teclado = 2 // barra
{
&k = 191
}
IF &teclado = 6 // +
{
&k = 107
}
IF &teclado = 3 // Delete
{
&k = 46
}
IF &teclado = 1 // Clr
{
&k = 8
}
IF &teclado = 4 // Clr
{
&k = 32
}
IF &teclado = 61 // A
{
&k = 65
}
IF &teclado = 60 // B
{
&k = 66
}
IF &teclado = 59 // C
{
&k = 67
}
IF &teclado = 58 // D
{
&k = 68
}
IF &teclado = 57 // E
{
&k = 69
}
IF &teclado = 53 // F
{
&k = 70
}
IF &teclado = 52 // G
{
&k = 71
}
IF &teclado = 51 // H
{
&k = 72
}
IF &teclado = 50 // I
{
&k = 73
}
IF &teclado = 49 // J
{
&k = 74
}
IF &teclado = 29 // K
{
&k = 75
}
IF &teclado = 28 // L
{
&k = 76
}
IF &teclado = 27 // M
{
&k = 77
}
IF &teclado = 26 // N
{
&k = 78
}
IF &teclado = 25 // O
{
&k = 79
}
IF &teclado = 21 // P
{
&k = 80
}
IF &teclado = 20 // Q
{
&k = 81
}
IF &teclado = 19 // R
{
&k = 82
}
IF &teclado = 18 // S
{
&k = 83
}
IF &teclado = 17 // T
{
&k = 84
}
IF &teclado = 13 // U
{
&k = 85
}
IF &teclado = 12 // V
{
&k = 86
}
IF &teclado = 11 // W
{
&k = 87
}
IF &teclado = 10 // X
{
&k = 88
}
IF &teclado = 9 // Y
{
&k = 89
}
IF &teclado = 5 // Z
{
&k = 90
}
IF &teclado = 56 // Linea 1L
{
&k = 112
}
IF &teclado = 64 // Linea 2L
{
&k = 113
}
IF &teclado = 72 // Linea 3L
{
&k = 114
}
IF &teclado = 80 // Linea 4L
{
&k = 115
}
IF &teclado = 88 // Linea 5L
{
&k = 116
}
IF &teclado = 87 // Linea 6L
{
&k = 117
}
IF &teclado = 86 // Linea 1R
{
&k = 118
}
IF &teclado = 85 // Linea 2R
{
&k = 119
}
IF &teclado = 84 // Linea 3R
{
&k = 120
}
IF &teclado = 83 // Linea 4R
{
&k = 121
}
IF &teclado = 82 // Linea 5R
{
&k = 122
}
IF &teclado = 74 // Linea 6R
{
&k = 123
}
}
Var 0139, name k, Link SUBRUTINE
{
IF &k <> 0
{
IF &k = &tempk
{
&offsetk = &k + &shift
IF &shift = 0
{
&shift = 2048
}
ELSE
{
&shift = 0
}
}
ELSE
{
&offsetk = &k
&tempk = &k
}
&k = 0
}
}
Var 0140, name tempk
Var 0141, name shift
Var 0142, name offsetk, Link FSUIPC_INOUT, Offset $5428, Length 2 // CDU Functions
Var 0143, name fmcLeds, Link FSUIPC_INOUT, Offset $052C, Length 2 // FMC LEDs
{
&OUTPUT2 = TESTBIT &fmcLeds ,0 // EXEC LED
&OUTPUT1 = TESTBIT &fmcLeds ,1 // MSG LED
&OUTPUT4 = TESTBIT &fmcLeds ,2 // FAIL
&OUTPUT0 = TESTBIT &fmcLeds ,3 // OFST
}
Var 0144, name OUTPUT2, Link IOCARD_OUT, Device 3, Output 2 // FMC EXEC green led
Var 0145, name OUTPUT1, Link IOCARD_OUT, Device 3, Output 1 // FMC MSG amber led
Var 0146, name OUTPUT4, Link IOCARD_OUT, Device 3, Output 4 // FMC FAIL red led
Var 0147, name OUTPUT0, Link IOCARD_OUT, Device 3, Output 0 // FMC OFST amber led