Results 1 to 10 of 18
-
07-02-2008, 03:48 AM #1
- Join Date
- Aug 2007
- Location
- Kallinge, Sweden
- Posts
- 29
SIOC scripts for OC MCP/EFIS for default FSX planes wanted
Hi, does anyone have SIOC scripts for OpenCockpits MCP and EFIS that works with the default FSX airplanes?
Configuring it on my own seems to be impossible task for me.
I have used Kiek磗 fine setup with my level-d 767 and it works fine, but I also want to use the default 737/747 and here the problems begins.
The default planes don't use all buttons but the ones that are there should be possible to replicate on my setup I think.
I have tested the scripts from OC and found some of it to be working fairly good, but some buttons don't work and some are on the wrong button on my MCP. On the EFIS I can only get the Baro to work.
I would be really greatful for some help.
-
07-02-2008, 03:57 AM #2
- Join Date
- Aug 2007
- Location
- Kallinge, Sweden
- Posts
- 29
This is the setup I have come up with so far.
But there are some issue.
For instance,
1. My MCP engages ALT HLD in FSX with the V/S button instead of the ALT HLD button.
2. VOR LOC on my MCP engages the LNAV in FSX.
3. N1 Does not work.
C/O does not work correctly.
It would be neat if I could use the LNAV and VNAV buttons on my MCP to
emulate the NAV/GPS switch
--------------------------------------------------------
// *****************************************************************************
// * Config_SIOC ver 3.5 - By Manolo V閘ez - www.opencockpits.com
// *****************************************************************************
// * FileName : sioc_mcp_efisv1.txt
// * Date : 2008-06-29
Var 0000, Value 0
{
&CONTADOR = 0
&CHECK = TIMER 999 ,0 ,25
&CMD = 1
&D_COURSE1 = 360
&D_COURSE2 = 360
&D_HDG = 360
&D_ALT = 4000
&D_VS = 0
&T_IAS = 140
&AP_IAS = 1
&AP_IAS = DELAY 0 ,10
&SUB_DH = 3000
&SUB_BAR = 1023
&SUB2_DH = 3000
&SUB2_BAR = 1023
}
Var 0002, name AP_MASTER_SW, Link FSUIPC_INOUT, Offset $07BC, Length 4
{
IF &CMD = 1
{
IF &AP_MASTER_SW = 1
{
&O_CMDA = 1
&O_CMDB = 0
}
ELSE
{
&O_CMDA = 0
&O_CMDB = 0
}
}
ELSE
{
IF &AP_MASTER_SW = 1
{
&O_CMDA = 0
&O_CMDB = 1
}
ELSE
{
&O_CMDA = 0
&O_CMDB = 0
}
}
}
Var 0004, Link FSUIPC_INOUT, Offset $07C0, Length 4 // AP_LVL
Var 0006, Link FSUIPC_INOUT, Offset $07C4, Length 4 // AP_NAV1
{
IF V0006 = 1
{
&O_LNAV = 1
}
ELSE
{
&O_LNAV = 0
}
}
Var 0008, Link FSUIPC_INOUT, Offset $07C8, Length 4 // AP_HDG_SEL
{
IF V0008 = 1
{
&O_HDGSEL = 1
}
ELSE
{
&O_HDGSEL = 0
}
}
Var 0010, name APD_HDG, Link FSUIPC_INOUT, Offset $07CC, Length 2 // APD_HDG
Var 0012, name AP_ALT, Link FSUIPC_INOUT, Offset $07D0, Length 4 // AP_ALT
{
IF &AP_ALT = 1
{
&O_VS = 1
}
ELSE
{
&O_VS = 0
}
}
Var 0014, name AP_IAS, Link FSUIPC_INOUT, Offset $07DC, Length 4 // AP_IAS
{
IF &AP_IAS = 1
{
&SPEED = 1
&O_SPEED = 1
&F_IAS = &T_IAS
}
ELSE
{
IF &AP_MACH = 0
{
&O_SPEED = 0
}
}
}
Var 0016, name APD_IAS, Link FSUIPC_INOUT, Offset $07E2, Length 2 // D_IAS
Var 0018, name APD_ALT, Link FSUIPC_INOUT, Offset $07D4, Length 4 // APD_ALT
Var 0020, name AP_MACH, Link FSUIPC_INOUT, Offset $07E4, Length 4 // AP_MACH
{
IF &AP_MACH = 1
{
&SPEED = 2
&O_SPEED = 1
}
ELSE
{
IF &AP_IAS = 0
{
&O_SPEED = 0
}
}
}
Var 0022, name APD_MACH, Link FSUIPC_INOUT, Offset $07E8, Length 4 // APD_MACH
Var 0024, Link FSUIPC_INOUT, Offset $3210, Length 2 // LOCALV_IAS/M
Var 0026, name APD_VS, Link FSUIPC_INOUT, Offset $07F2, Length 2, Type 1 // D_V/S
Var 0028, Link FSUIPC_INOUT, Offset $0810, Length 4 // AP_AT
{
IF V0028 = 1
{
&O_AT = 1
}
ELSE
{
&O_AT = 0
}
}
Var 0030, Link FSUIPC_INOUT, Offset $2EE0, Length 4 // AP_FD
Var 0032, Link FSUIPC_INOUT, Offset $07C4, Length 4 // AP_NAV
Var 0034, Link FSUIPC_INOUT, Offset $0800, Length 4 // AP_APP
{
IF V0034 = 1
{
&O_APP = 1
}
ELSE
{
&O_APP = 0
}
}
Var 0036, Link FSUIPC_INOUT, Offset $0804, Length 4 // AP_BC
Var 0038, Link FSUIPC_INOUT, Offset $0808, Length 4 // AP_YD
Var 0040, name APD_COURSE1, Link FSUIPC_INOUT, Offset $0C4E, Length 2 // APD_COURSE1
Var 0042, name APD_COURSE2, Link FSUIPC_INOUT, Offset $0C5E, Length 2 // APD_COURSE2
Var 0044, name FS_IAS, Link FSUIPC_IN, Offset $02BC, Length 4 // IAS FS
Var 0046, name FS_MACH, Link FSUIPC_IN, Offset $11C6, Length 2 // IAS FS
Var 0048, Link FSUIPC_INOUT, Offset $07FC, Length 4 // AP_APP2
Var 0050, name CMD
{
IF &CMD = 1
{
&O_CMDA = TESTBIT &AP_MASTER_SW ,0 // LED_AP_SW
}
ELSE
{
&O_CMDB = TESTBIT &AP_MASTER_SW ,0 // LED_AP_SW
}
}
Var 0052, name SPEED
{
IF &SPEED <> 2
{
&O_DECIMAL = 0
&F_IAS = &T_IAS
}
ELSE
{
&O_DECIMAL = 1
&F_IAS = &T_MACH
}
}
Var 0054, name T_IAS
Var 0056, name T_MACH
Var 0058, name F_IAS
{
IF &SPEED <> 2
{
&O_DECIMAL = 0
&D_IAS = &F_IAS
&APD_IAS = DELAY &F_IAS ,10
}
ELSE
{
&O_DECIMAL = 1
&D_IAS = &F_IAS
L0 = &F_IAS * 655.36
&APD_MACH = DELAY L0 ,10
}
}
Var 0060, name CHECK, Link SUBRUTINE
{
&CONTADOR = &CONTADOR + 1
IF &CONTADOR > 10000
{
&CONTADOR = 1000
}
ELSE
{
IF &CONTADOR > 4
{
IF &APD_VS <> &D_VS
{
&D_VS = &APD_VS
}
}
}
}
Var 0062, name CONTADOR
Var 0064, name D_COURSE1, Link IOCARD_DISPLAY, Digit 0, Numbers 3
{
&APD_COURSE1 = &D_COURSE1
}
Var 0066, name D_IAS, Link IOCARD_DISPLAY, Digit 3, Numbers 3
Var 0068, name D_HDG, Link IOCARD_DISPLAY, Digit 6, Numbers 3
{
L1 = &D_HDG * 182.04444
L0 = L1 + 1
&APD_HDG = L0
}
Var 0070, name D_ALT, Link IOCARD_DISPLAY, Digit 9, Numbers 5
{
L0 = &D_ALT * 19975.37
&APD_ALT = L0
}
Var 0072, name D_VS, Link IOCARD_DISPLAY, Digit 14, Numbers 5
Var 0074, name D_COURSE2, Link IOCARD_DISPLAY, Digit 19, Numbers 3
{
&APD_COURSE2 = &D_COURSE2
}
Var 0076, name O_DECIMAL, Link IOCARD_OUT, Output 20
Var 0078, name O_N1, Link IOCARD_OUT, Output 21
Var 0080, name O_AT, Link IOCARD_OUT, Output 22
Var 0082, name O_SPEED, Link IOCARD_OUT, Output 23
Var 0084, name O_LVLCHG, Link IOCARD_OUT, Output 24
Var 0086, name O_VNAV, Link IOCARD_OUT, Output 25
Var 0088, name O_HDGSEL, Link IOCARD_OUT, Output 26
Var 0090, name O_APP, Link IOCARD_OUT, Output 27
Var 0092, name O_VORLOC, Link IOCARD_OUT, Output 28
Var 0094, name O_LNAV, Link IOCARD_OUT, Output 29
Var 0096, name O_ALTHLD, Link IOCARD_OUT, Output 30
Var 0098, name O_VS, Link IOCARD_OUT, Output 31
Var 0100, name O_CWSA, Link IOCARD_OUT, Output 32
Var 0102, name O_CMDA, Link IOCARD_OUT, Output 33
Var 0104, name O_CWSB, Link IOCARD_OUT, Output 34
Var 0106, name O_CMDB, Link IOCARD_OUT, Output 35
Var 0108, name E_IAS, Link IOCARD_ENCODER, Input 0, Aceleration 4, Type 2
{
IF &SPEED <> 2
{
L0 = &E_IAS * -1
&T_IAS = LIMIT 0 ,360 ,L0
&F_IAS = &T_IAS
}
ELSE
{
L0 = &E_IAS * -1
&T_MACH = LIMIT 0 ,99 ,L0
&F_IAS = &T_MACH
}
}
Var 0110, name E_ALT, Link IOCARD_ENCODER, Input 2, Aceleration 4, Type 2
{
L0 = &E_ALT * -100
&D_ALT = LIMIT 0 ,50000 ,L0
}
Var 0112, name E_COURSE1, Link IOCARD_ENCODER, Input 4, Aceleration 4, Type 2
{
L0 = &E_COURSE1 * -1
&D_COURSE1 = ROTATE 1 ,360 ,L0
}
Var 0114, name E_HDG, Link IOCARD_ENCODER, Input 6, Aceleration 4, Type 2
{
L0 = &E_HDG * -1
&D_HDG = ROTATE 1 ,360 ,L0
}
Var 0116, name E_COURSE2, Link IOCARD_ENCODER, Input 9, Aceleration 4, Type 2
{
L0 = &E_COURSE2 * -1
&D_COURSE2 = ROTATE 1 ,360 ,L0
}
Var 0118, name E_VS, Link IOCARD_ENCODER, Input 11, Aceleration 4, Type 2
{
L0 = &E_VS * -100
&D_VS = LIMIT -9000 ,9000 ,L0
&CONTADOR = 0
&APD_VS = &D_VS
}
Var 0120, name I_CO, Link IOCARD_SW, Input 13, Type P
{
IF &O_SPEED = 1
{
IF &SPEED <> 0
{
IF &SPEED = 1
{
L0 = &FS_MACH / 204.8
&T_MACH = L0
&AP_MACH = 1
}
ELSE
{
L0 = &FS_IAS / 128
&T_IAS = L0
&AP_IAS = 1
}
}
}
}
Var 0122, name I_FD2, Link IOCARD_SW, Input 14
Var 0124, name I_DISENGAGE, Link IOCARD_SW, Input 15
Var 0126, name I_FD1, Link IOCARD_SW, Input 16
{
IF &I_FD1 = 1
{
V0030 = 1
}
ELSE
{
V0030 = 0
}
}
Var 0128, name I_CWSB, Link IOCARD_SW, Input 18
Var 0130, name I_CMDB, Link IOCARD_SW, Input 19
{
IF &I_CMDB = 1
{
&CMD = 2
IF &AP_MASTER_SW = 1
{
&AP_MASTER_SW = 0
}
ELSE
{
&AP_MASTER_SW = 1
}
}
}
Var 0132, name I_CWSA, Link IOCARD_SW, Input 20
Var 0134, name I_CMDA, Link IOCARD_SW, Input 21
{
IF &I_CMDA = 1
{
&CMD = 1
IF &AP_MASTER_SW = 1
{
&AP_MASTER_SW = 0
}
ELSE
{
&AP_MASTER_SW = 1
}
}
}
Var 0136, name I_VS, Link IOCARD_SW, Input 22
{
IF &I_VS = 1
{
IF &AP_ALT <> 1
{
&AP_ALT = 1
}
ELSE
{
&AP_ALT = 0
}
}
}
Var 0138, name I_ALTHLD, Link IOCARD_SW, Input 23
Var 0140, name IP_APP, Link IOCARD_SW, Input 24
{
IF &IP_APP = 1
{
IF V0034 <> 1
{
V0034 = 1
V0048 = 1
}
ELSE
{
V0034 = 0
V0048 = 0
}
}
}
Var 0142, name I_VORLOC, Link IOCARD_SW, Input 25
Var 0144, name I_LNAV, Link IOCARD_SW, Input 27
{
IF &I_LNAV = 1
{
IF V0032 <> 1
{
V0032 = 1
}
ELSE
{
V0032 = 0
}
}
}
Var 0146, name I_HDGSEL, Link IOCARD_SW, Input 28
{
IF &I_HDGSEL = 1
{
IF V0008 <> 1
{
V0008 = 1
}
ELSE
{
V0008 = 0
}
}
}
Var 0148, name I_LVLCHG, Link IOCARD_SW, Input 29
Var 0150, name I_VNAV, Link IOCARD_SW, Input 30
Var 0152, name I_SPEED, Link IOCARD_SW, Input 31
{
IF &I_SPEED = 1
{
IF &SPEED = 0
{
&AP_IAS = 1
}
ELSE
{
&AP_IAS = 0
&AP_MACH = 0
&SPEED = 0
}
}
}
Var 0154, name I_N1, Link IOCARD_SW, Input 32
Var 0156, name I_AT, Link IOCARD_SW, Input 33
{
IF &I_AT = 1
{
V0028 = 1
}
ELSE
{
V0028 = 0
}
}
Var 0158, name I_5, Link IOCARD_SW, Device 1, Input 0
{
IF &I_5 = 1
{
&PM_RANG = 0
}
}
Var 0160, name I_10, Link IOCARD_SW, Device 1, Input 1
{
IF &I_10 = 1
{
&PM_RANG = 1
}
}
Var 0162, name I_20, Link IOCARD_SW, Device 1, Input 2
{
IF &I_20 = 1
{
&PM_RANG = 2
}
}
Var 0164, name I_40, Link IOCARD_SW, Device 1, Input 3
{
IF &I_40 = 1
{
&PM_RANG = 3
}
}
Var 0166, name I_80, Link IOCARD_SW, Device 1, Input 4
{
IF &I_80 = 1
{
&PM_RANG = 4
}
}
Var 0168, name I_160, Link IOCARD_SW, Device 1, Input 5
{
IF &I_160 = 1
{
&PM_RANG = 5
}
}
Var 0170, name I_320, Link IOCARD_SW, Device 1, Input 6
{
IF &I_320 = 1
{
&PM_RANG = 6
}
}
Var 0172, name I_640, Link IOCARD_SW, Device 1, Input 7
{
IF &I_640 = 1
{
&PM_RANG = 7
}
}
Var 0174, name I_APP, Link IOCARD_SW, Device 1, Input 9
{
IF &I_APP = 1
{
&PM_MODO = 5
}
}
Var 0176, name I_VOR, Link IOCARD_SW, Device 1, Input 10
{
IF &I_VOR = 1
{
&PM_MODO = 3
}
}
Var 0178, name I_MAP, Link IOCARD_SW, Device 1, Input 11
{
IF &I_MAP = 1
{
&PM_MODO = 1
}
}
Var 0180, name I_PLN, Link IOCARD_SW, Device 1, Input 12
{
IF &I_PLN = 1
{
&PM_MODO = 4
}
}
Var 0182, name I_S1, Link IOCARD_SW, Device 1, Input 27
{
IF &I_S1 = 1
{
&PM_MODO = 90 // STA
}
}
Var 0184, name I_S2, Link IOCARD_SW, Device 1, Input 28
{
IF &I_S2 = 1
{
&PM_MODO = 93 // WPT
}
}
Var 0186, name I_S3, Link IOCARD_SW, Device 1, Input 29
{
IF &I_S3 = 1
{
&PM_MODO = 6 // CTR
}
}
Var 0188, name I_S4, Link IOCARD_SW, Device 1, Input 30
{
IF &I_S4 = 1
{
&PM_MODO = 94 // ARPT
}
}
Var 0190, name I_S5, Link IOCARD_SW, Device 1, Input 31
{
IF &I_S5 = 1
{
}
}
Var 0192, name I_S6, Link IOCARD_SW, Device 1, Input 32
{
IF &I_S6 = 1
{
&PM_MODO = 95 // DATA
}
}
Var 0194, name I_S7, Link IOCARD_SW, Device 1, Input 33
{
IF &I_S7 = 1
{
&PM_MODO = 96 // POS
}
}
Var 0196, name I_SR1, Link IOCARD_SW, Device 1, Input 34
{
IF &I_SR1 = 1
{
&PM_MODO = 14 // FPV
}
}
Var 0198, name I_SR2, Link IOCARD_SW, Device 1, Input 38
{
IF &I_SR2 = 1
{
&PM_MODO = 26 // MTRS
}
}
Var 0200, name I_BARONSW, Link IOCARD_SW, Device 1, Input 22
{
IF &I_BARONSW = 1
{
&SUB_BAR = 1013
L0 = 1013 * 16
L0 = L0 + 1
&FS_QNH = L0
}
}
Var 0202, name I_MINSW, Link IOCARD_SW, Device 1, Input 25
{
IF &I_MINSW = 1
{
&SUB_DH = 3000
}
}
Var 0204, name I_VOR1, Link IOCARD_SW, Device 1, Input 36
{
IF &I_VOR1 = 1
{
&PM_MODO = 75
}
ELSE
{
IF &I_ADF1 = 0
{
&PM_MODO = 73
}
}
}
Var 0206, name I_ADF1, Link IOCARD_SW, Device 1, Input 37
{
IF &I_ADF1 = 1
{
&PM_MODO = 74
}
ELSE
{
IF &I_VOR1 = 0
{
&PM_MODO = 73
}
}
}
Var 0208, name I_VOR2, Link IOCARD_SW, Device 1, Input 18
{
IF &I_VOR2 = 1
{
&PM_MODO = 78
}
ELSE
{
IF &I_ADF2 = 0
{
&PM_MODO = 76
}
}
}
Var 0210, name I_ADF2, Link IOCARD_SW, Device 1, Input 19
{
IF &I_ADF2 = 1
{
&PM_MODO = 77
}
ELSE
{
IF &I_VOR2 = 0
{
&PM_MODO = 76
}
}
}
Var 0212, name E_BARO, Link IOCARD_ENCODER, Device 1, Input 20, Aceleration 1, Type 2
{
L0 = &E_BARO * -1
&SUB_BAR = &SUB_BAR + L0
}
Var 0214, name E_MIN, Link IOCARD_ENCODER, Device 1, Input 23, Aceleration 1, Type 2
{
L0 = &E_MIN * -100
&SUB_DH = &SUB_DH + L0
}
Var 0216, name SUB_DH, Link SUBRUTINE
{
IF &SUB_DH > 20000
{
&SUB_DH = 20000
}
IF &SUB_DH < 0
{
&SUB_DH = 0
}
L0 = DIV &SUB_DH ,100
&PM_DH = L0
}
Var 0218, name SUB_BAR, Link SUBRUTINE
{
L0 = &SUB_BAR * 16
&FS_QNH = L0
}
Var 0220, name SUB2_DH, Link SUBRUTINE
{
IF &SUB2_DH > 20000
{
&SUB2_DH = 20000
}
IF &SUB2_DH < 0
{
&SUB2_DH = 0
}
L0 = DIV &SUB2_DH ,100
&PM2_DH = L0
}
Var 0222, name SUB2_BAR, Link SUBRUTINE
{
L0 = &SUB2_BAR * 16
&FS2_QNH = L0
}
Var 0224, name PM_MODO, Link FSUIPC_INOUT, Offset $04F4, Length 2 // PM_EFIS_MODO
Var 0226, name PM_RANG, Link FSUIPC_OUT, Offset $04F8, Length 2 // PM_EFIS_RANG
Var 0228, name PM_DH, Link FSUIPC_OUT, Offset $04FA, Length 2 // PM_EFIS_DH
Var 0230, name FS_QNH, Link FSUIPC_OUT, Offset $0330, Length 2 // FS_QNH_MB
Var 0232, name PM2_RANG, Link FSUIPC_OUT, Offset $5524, Length 2 // PM_EFIS_RANG FO
Var 0234, name PM2_DH, Link FSUIPC_OUT, Offset $5532, Length 2 // PM_EFIS_DH FO
Var 0236, name FS2_QNH, Link FSUIPC_OUT, Offset $552E, Length 2 // FS_QNH_MB FO
Var 0238, name I2_5, Link IOCARD_SW, Device 2, Input 0
{
IF &I2_5 = 1
{
&PM2_RANG = 0
}
}
Var 0240, name I2_10, Link IOCARD_SW, Device 2, Input 1
{
IF &I2_10 = 1
{
&PM2_RANG = 1
}
}
Var 0242, name I2_20, Link IOCARD_SW, Device 2, Input 2
{
IF &I2_20 = 1
{
&PM2_RANG = 2
}
}
Var 0244, name I2_40, Link IOCARD_SW, Device 2, Input 3
{
IF &I2_40 = 1
{
&PM2_RANG = 3
}
}
Var 0246, name I2_80, Link IOCARD_SW, Device 2, Input 4
{
IF &I2_80 = 1
{
&PM2_RANG = 4
}
}
Var 0248, name I2_160, Link IOCARD_SW, Device 2, Input 5
{
IF &I2_160 = 1
{
&PM2_RANG = 5
}
}
Var 0250, name I2_320, Link IOCARD_SW, Device 2, Input 6
{
IF &I2_320 = 1
{
&PM2_RANG = 6
}
}
Var 0252, name I2_640, Link IOCARD_SW, Device 2, Input 7
{
IF &I2_640 = 1
{
&PM2_RANG = 7
}
}
Var 0254, name I2_APP, Link IOCARD_SW, Device 2, Input 9
{
IF &I2_APP = 1
{
&PM_MODO = 105
}
}
Var 0256, name I2_VOR, Link IOCARD_SW, Device 2, Input 10
{
IF &I2_VOR = 1
{
&PM_MODO = 103
}
}
Var 0258, name I2_MAP, Link IOCARD_SW, Device 2, Input 11
{
IF &I2_MAP = 1
{
&PM_MODO = 101
}
}
Var 0260, name I2_PLN, Link IOCARD_SW, Device 2, Input 12
{
IF &I2_PLN = 1
{
&PM_MODO = 104
}
}
Var 0262, name I2_S1, Link IOCARD_SW, Device 2, Input 27
{
IF &I2_S1 = 1
{
&PM_MODO = 190 // STA
}
}
Var 0264, name I2_S2, Link IOCARD_SW, Device 2, Input 28
{
IF &I2_S2 = 1
{
&PM_MODO = 193 // WPT
}
}
Var 0266, name I2_S3, Link IOCARD_SW, Device 2, Input 29
{
IF &I2_S3 = 1
{
&PM_MODO = 106 // CTR
}
}
Var 0268, name I2_S4, Link IOCARD_SW, Device 2, Input 30
{
IF &I2_S4 = 1
{
&PM_MODO = 194 // ARPT
}
}
Var 0270, name I2_S5, Link IOCARD_SW, Device 2, Input 31
{
IF &I2_S5 = 1
{
}
}
Var 0272, name I2_S6, Link IOCARD_SW, Device 2, Input 32
{
IF &I2_S6 = 1
{
&PM_MODO = 195 // DATA
}
}
Var 0274, name I2_S7, Link IOCARD_SW, Device 2, Input 33
{
IF &I2_S7 = 1
{
&PM_MODO = 196 // POS
}
}
Var 0276, name I2_SR1, Link IOCARD_SW, Device 2, Input 34
{
IF &I2_SR1 = 1
{
&PM_MODO = 114 // FPV
}
}
Var 0278, name I2_SR2, Link IOCARD_SW, Device 2, Input 38
{
IF &I2_SR2 = 1
{
&PM_MODO = 126 // MTRS
}
}
Var 0280, name I2_BARONSW, Link IOCARD_SW, Device 2, Input 22
{
IF &I2_BARONSW = 1
{
&SUB2_BAR = 1013
L0 = 1013 * 16
L0 = L0 + 1
&FS2_QNH = L0
}
}
Var 0282, name I2_MINSW, Link IOCARD_SW, Device 2, Input 25
{
IF &I2_MINSW = 1
{
&SUB2_DH = 3000
}
}
Var 0284, name I2_VOR1, Link IOCARD_SW, Device 2, Input 36
{
IF &I2_VOR1 = 1
{
&PM_MODO = 175
}
ELSE
{
IF &I2_ADF1 = 0
{
&PM_MODO = 173
}
}
}
Var 0286, name I2_ADF1, Link IOCARD_SW, Device 2, Input 37
{
IF &I2_ADF1 = 1
{
&PM_MODO = 174
}
ELSE
{
IF &I2_VOR1 = 0
{
&PM_MODO = 173
}
}
}
Var 0288, name I2_VOR2, Link IOCARD_SW, Device 2, Input 18
{
IF &I2_VOR2 = 1
{
&PM_MODO = 178
}
ELSE
{
IF &I2_ADF2 = 0
{
&PM_MODO = 176
}
}
}
Var 0290, name I2_ADF2, Link IOCARD_SW, Device 2, Input 19
{
IF &I2_ADF2 = 1
{
&PM_MODO = 177
}
ELSE
{
IF &I2_VOR2 = 0
{
&PM_MODO = 176
}
}
}
Var 0292, name E2_BARO, Link IOCARD_ENCODER, Device 2, Input 20, Aceleration 1, Type 2
{
L0 = &E2_BARO * -1
&SUB2_BAR = &SUB2_BAR + L0
}
Var 0294, name E2_MIN, Link IOCARD_ENCODER, Device 2, Input 23, Aceleration 1, Type 2
{
L0 = &E2_MIN * -100
&SUB2_DH = &SUB2_DH + L0
}
-
07-02-2008, 09:12 AM #3
First you`ll need to find the offset for the NAV/GPS switch in FSX which you`ll find via FSUIPC by enabling the Logging section. Hit the GPS/NAV function and then goto the log file, you`ll see it there logged. I don't think you`ll be able to use the VNAV button for actually emulating the real way VNAV works regarding the default 737 etc...
As in regards your EFIS and Autopilot are they the prebuilt modules from OpenCockpits.com ?
-
07-02-2008, 02:26 PM #4
- Join Date
- Aug 2007
- Location
- Kallinge, Sweden
- Posts
- 29
Thanks for the advise, I will check the logs this evening to see what offset I should use. Hopefully I will be able to create something out of it.
I really need to learn how to program SIOC.
Yes both MCP and EFIS are prebuilt from OC. Just uploaded a photo of my cockpit .
The script I have put here, concists of two original OC scripts that are available as download from them, that I have merged into one script.
The only other EFIS and MCP scripts they have use Project Magenta ,which I don't have, so they don't work good either.
Have you been able to spot why Alt Hold is enabled by my MCP V/S button? Cannot figure it out my self.
-
07-03-2008, 04:02 AM #5
- Join Date
- Aug 2007
- Location
- Kallinge, Sweden
- Posts
- 29
Found the V/S - ALT HLD issue
on var 136,138 and 96,98 the inputs and outputs was wrong.
Replaced input 22 with 23 and vice vers.
Replaced output 30 with 31 and vice vers.
Presto! correct button responds
One issue down....plenty to go.
Was testing the logs late night, but it's very hard to find what I'm looking for.
Should I only enable button logs?
Am I looking for read or write?
Is there a way to see the log while pressing a button/switch in FSX?
would make it much easier to spot the lines.
-
07-03-2008, 05:07 AM #6
- Join Date
- Jan 2007
- Posts
- 496
Logging can identify FS control names, but it won't tell you offsets -- you need to know the offset in order to log changes to it.
Why not search the offsets list supplied in the FSUIPC SDK? That's why the list is provided. I just searched on "GPS" and it was the first thing found:
132C4NAV/GPS switch, in FS2000 & FS2002. 0=NAV, 1=GPS
It does work in FS2004 and FSX too. I must get around to revising the wordings some time ...
Is there a way to see the log while pressing a button/switch in FSX? would make it much easier to spot the lines.
Regards
Pete
-
Post Thanks / Like - 3 Thanks, 0 Likes, 0 Dislikes
-
07-03-2008, 11:50 AM #7
Hi Peter, the man himself. Now that's what I am talking about. You want answers come to Mycockpits and you get answers.
Thanks for taking time from your busy schedule to drop in and help. Your FSUIPC should be required purchasing for MSFS. It is by far the most useful add-on I have ever purchased.John
System:
ASUS P5Q SE/R
Intel Q9550 O/C to 3.4 GHz
4 GB 1066 DDR2 RAM
300 GB WD 10,000 RPM Raptor SATA Drive
GeForce 8800 GT 512 KB RAM
Matrox TH2Go with three 19" Sumsung 940 BX
IR Track 4
-
07-03-2008, 11:54 PM #8
-
07-04-2008, 05:02 PM #9
- Join Date
- Aug 2007
- Location
- Kallinge, Sweden
- Posts
- 29
Thanks for the support so far. Correcting the script bit by bit.
So far I have fixed the VOR LOC to work properly also.
It was the same issue as with alt hld...wrong input/output.
I have also managed to get the N1 to work partly.
I can engage N1 but not disengage. Only way to do that is to engage Speed (then disengage that) or turn off A/T.
Any ideas what I'm doing wrong?
Var 0028, Link FSUIPC_INOUT, Offset $080C, Length 4 // AP_N1
{
IF V0028 = 1
{
&O_N1 = 1
}
ELSE
{
&O_N1 = 0
}
}
Var 0082, name O_N1, Link IOCARD_OUT, Output 21
Var 0158, name I_N1, Link IOCARD_SW, Input 32
{
IF &I_N1 <> 1
{
V0028 = 1
}
ELSE
{
V0028 = 0
}
}
I just found a forum thread with this information from Peter Dowson.
"Most of the EFIS panel controls are purely panel functions and only usable with the mouse"
"The EFIS panel functions which can be assigned (with names to match) are:
Increase decision height
Decrease decision height
Barometric std pressure
Kohlsman inc (i.e altimeter pressure setting inc)
Kohlsman dec (i.e altimeter pressure setting dec)
So It seems like I don't need to bother with the rest of the EFIS switches.
Just a question to Peter, if you are reading this
I cannot find the offsets for:
Increase decision height
Decrease decision height
Appreciate your help
-
07-04-2008, 07:28 PM #10
- Join Date
- Aug 2007
- Location
- Kallinge, Sweden
- Posts
- 29
Found the N1 issue too
Var 0158, name I_N1, Link IOCARD_SW, Input 32
{
IF &I_N1 = 1
{
IF V0028 <> 1
{
V0028 = 1
}
ELSE
{
V0028 = 0
}
}
}
Similar Threads
-
EFIS problem with default 737 FSX
By FooFighters in forum I/O Interfacing and HardwareReplies: 8Last Post: 07-12-2011, 12:29 PM -
In desperate need of generic SIOC scripts
By remcosol in forum I/O Interfacing Hardware and SoftwareReplies: 0Last Post: 08-15-2010, 03:24 PM -
Need sioc scripts...
By remcosol in forum General Builder Questions All Aircraft TypesReplies: 6Last Post: 03-03-2010, 01:25 PM -
SIOC Scripts and Computers
By paulj in forum OpenCockpits General DiscussionReplies: 3Last Post: 06-08-2008, 08:43 AM
Meet Women Ready for Fun Tonight in Your Town
Experience the Best of Casual...