Jump to content
The simFlight Network Forums

edfair

Members
  • Posts

    11
  • Joined

  • Last visited

Posts posted by edfair

  1. Pete,

    A note of caution about the macros I just posted. It may be premature to post them ... while the program is still in some state of flux. I had a problem recently with FSX crashing on startup. Following the advice on the PMDG website I installed their hotfix. It appeared to resolve my system crash issue...... BUT .......

    Upon returning to my original setup, everything looked to be in order until I tried to use my equipment - MCP, EFIS, OVH. When I looked in FSUIPC all of the button assignments were unchanged. My Throttle CH Quad, CH Yoke, CH Pedals and Saitek Radio were fine. Assignments came up OK in FSUIPC when I pressed the associated buttons. I went back with FSUIPC to create a new Mouse macro file and lo and behold the returned values were all different. Apparently the associated .dll file was changed by the hotfix.

    RED FLAG - anyone who has applied the same hotfix may fined my macros useless!! Apologies to anyone whose time I wasted...

    Maybe it's best to have the program stabilize prior to widely disseminating macros. Anybody out there experienced problems of this sort?

    Comments?

    Ed Fairchild

  2. Here are some more recent macro files. I actually split up my macro files into macros titled as follows:

    0_P738W_MCP.MCRO

    0_P739W_EFIS.MCRO

    0_P738W_OVH.MCRO

    Naming them this way puts them at the top of the command list.. a lot quicker when you're assigning as many buttons/switches as this. I've tried them all with my OVH and EFIS (both homemade using Bodnar interfaces) and they work in flight with the virtual cockpit or 2-D version.

    (Pete.. What is the max number of macro steps allowed? I know it's probably in your thorough docs but I've beem pretty busy button pushing to look! Sorry for my laziness.)

    Anyway here they are:

    Ed F

    0_P739W_EFIS.MCRO

    [Macros]
    Module="PMDG_737NGX.DLL"
    1=EFIS_AIRPT=RX44030*X8bcc
    2=EFIS_BARO_DEC=RX43ef0*X8bcc
    3=EFIS_BARO_INC=RX43ef0*X8bcc,31
    4=EFIS_CTR=RX43f50*X8bcc
    5=EFIS_DATA=RX44050*X8bcc
    6=EFIS_FPV=RX43e70*X8bcc
    7=EFIS_MINS_DEC=RX43e50*X8bcc
    8=EFIS_MINS_INC=RX43e50*X8bcc,31
    9=EFIS_MODE_CCW=RX43f70*X8bcc
    10=EFIS_MODE_CW=RX43f70*X8bcc,31
    11=EFIS_MTRS=RX43e90*X8bcc
    12=EFIS_POS=RX44070*X8bcc
    13=EFIS_RADBAR_CCW=RX43e10*X8b05
    14=EFIS_RADBAR_CW=RX43e10*X8b05,31
    15=EFIS_RANGE_CCW=RX43fb0*X8bcc
    16=EFIS_RANGE_CW=RX43fb0*X8bcc,31
    17=EFIS_RINGS=RX43f90*X8bcc
    18=EFIS_RST=RX43e30*X8bcc
    19=EFIS_STA=RX43ff0*X8bcc
    20=EFIS_STD=RX43ed0*X8bcc
    21=EFIS_TERR=RX44090*X8bcc
    22=EFIS_VOR1_DN=RX43f10*X8bcc
    23=EFIS_VOR1_UP=RX43f10*X8bcc,31
    24=EFSI_VOR2_DN=RX43f30*X8bcc
    25=EFIS_VOR2_UP=RX43f30*X8bcc,31
    26=EFIS_WPT=RX44010*X8bcc
    27=EFIS_WXR=RX43fd0*X8bcc
    

    0_P738W_OVH.MCRO

    [Macros]
    Module="PMDG_737NGX.DLL"
    1=OVH_ACMET_CCW=RX4c950*X8bcc
    2=OVH_ACMET_CW=RX4c950*X8bcc,31
    3=OVH_ANTICOLL=RX4e040*X8bcc
    4=OVH_APU_DN=RX4df80*X8bcc
    5=OVH_APU_UP=RX4df80*X8bcc,31
    6=OVH_APUBLEED=RX49170*X8bcc
    7=OVH_APUELEC1=RX4cc40*X8bcc
    8=OVH_APUELEC2=RX4cc60*X8bcc
    9=OVH_APUGEN1_DN=RX4cc40*X8bcc
    10=OVH_APUGEN1_UP=RX4cc40*X8bcc,31
    11=OVH_APUGEN2_DN=RX4cc60*X8bcc
    12=OVH_APUGEN2_UP=RX4cc60*X8bcc,31
    13=OVH_BLEED1=RX4dab0*X8bcc,31
    14=OVH_BLEED2=RX49190*X8bcc
    15=OVH_CABUTIL=RX4c970*Xe8cc
    16=OVH_CHIME=RX49030*X8bcc,31
    17=OVH_DCMET_CCW=RX48fb0*X8bcc
    18=OVH_DCMET_CW=RX48fb0*X8bcc,31
    19=OVH_E1_AI=RX490f0*X8bcc
    20=OVH_E1_IGN_CCW=RX4dfa0*X8bcc
    21=OVH_E1_IGN_CW=RX4dfa0*X8bcc,31
    22=OVH_E2_AI=RX49110*X8bcc
    23=OVH_E2_IGN_CCW=RX4dfe0*X8bcc
    24=OVH_E2_IGN_CW=RX4dfe0*X8bcc,31
    25=OVH_ELEC1_HYD=RX4d3c0*X8bcc
    26=OVH_ELEC1=RX48fd0*X8bcc
    27=OVH_ELEC2_HYD=RX4d3a0*X8bcc
    28=OVH_ELEC2=RX4cc20*X8bcc
    29=OVH_EMERLT_DN=RX4d520*Xe8cc
    30=OVH_EMERLT_UP=RX4d520*Xe8cc,31
    31=OVH_ENG1_ANTI=RX4d3e0*X8bcc
    32=OVH_ENG1_HYD=RX4d380*X8bcc
    33=OVH_ENG2_ANTI=RX49110*X8bcc
    34=OVH_ENG2_HYD=RX4d3e0*X8bcc
    35=OVH_FLTALT_DEC=RX491b0*X8bcc
    36=OVH_FLTALT_INC=RX491b0*X8bcc,31
    37=OVH_GEN1=RX48fd0*X8bcc
    38=OVH_GRDPWR=RX4cb90*X8bcc,31
    39=OVH_IFEPAS=RX4c9b0*X8bcc
    40=OVH_IGN1_LEFT=RX4dfc0*X8bcc
    41=OVH_IGN2_RT=RX4dfc0*X8bcc,31
    42=OVH_ISO_DN=RX4da90*X8bcc
    43=OVH_ISO_UP=RX4da90*X8bcc,31
    44=OVH_LANDALT_DEC=RX491f0*X8bcc
    45=OVH_LANDALT_INC=RX491f0*X8bcc,31
    46=OVH_LNDGLT_ALLOFF=RX4ddc0*X8bcc,31
    47=OVH_LNDGLT_ALLON=RX4de30*Xa1cc
    48=OVH_LOGOLT=RX4e000*X8bcc
    49=OVH_LPACK_DN=RX4da70*X8bcc
    50=OVH_LPACK_UP=RX4da70*X8bcc,31
    51=OVH_LWIPER_CCW=RX48ff0*X8bcc
    52=OVH_LWIPER_CW=RX48ff0*X8bcc,31
    53=OVH_MASTER_DN=RX4cab0*Xe8cc
    54=OVH_MASTER_UP=RX4cab0*Xe8cc,31
    55=OVH_PRBHT1=RX490b0*X8bcc
    56=OVH_PRBHT2=RX4d2a0*X8bcc
    57=OVH_PUMP_CTR1=RX4cdc0*X8bcc
    58=OVH_PUMP_CTR2=RX4cde0*X8bcc
    59=OVH_PUMP1_AFT=RX4cd60*X8bcc
    60=OVH_PUMP1_FWD=RX4cd40*X8bcc
    61=OVH_PUMP2_AFT=RX4cda0*X8bcc
    62=OVH_PUMP2_FWD=RX4cd80*X8bcc
    63=OVH_RND_PWR=RX4cb90*X8bcc
    64=OVH_RPACK_DN=RX49150*X8bcc
    65=OVH_RPACK_UP=RX49150*X8bcc,31
    66=OVH_RUNTRN_L=RX4df20*X8bcc
    67=OVH_RUNTRN_R=RX4df40*X8bcc
    68=OVH_SEATBELT_OFF=RX4d590*X8bcc,31
    69=OVH_SEATBELT_ON=RX4d590*X8bcc
    70=OVH_STBYPWR_LF=RX4cb40*Xe8cc
    71=OVH_STBYPWR_RT=RX4cb40*Xe8cc,31
    72=OVH_STROBE_DN=RX4e020*X8bcc
    73=OVH_STROBE_UP=RX4e020*X8bcc,31
    74=OVH_TAXI=RX4df60*X8bcc
    75=OVH_TRIMAIR=RX4d880*X80cc
    76=OVH_TRIPRESET=RX49510*X8bcc
    77=OVH_WHEEL_LT=RX4e080*X8bcc
    78=OVH_WIN_OHT=RX4d280*X8bcc,31
    79=OVH_WIN_PT=RX4d280*X8bcc
    80=OVH_WING_AI=RX490d0*X8bcc
    81=OVH_WING_LT=RX4e060*X8bcc
    82=OVH_WINHT_LF=RX4d240*X8bcc
    83=OVH_WINHT_LS=RX4d220*X8bcc
    84=OVH_WINHT_RF=RX49090*X8bcc
    85=OVH_WINHT_RS=RX4d260*X8bcc
    86=OVH_YAWD=RX48e10*X8bcc
    

  3. Just an FYI these work fine in the older Honeywell MCP, but some of the functions (like the FD and CMD buttons) don't work under the Collins MCP, because they're in a slightly different spot.

    Right you are! I should have mentioned the model in the note... this matches the hardware that I've made. Thanks for pointing that out.

    Ed F.

  4. Pete,

    Version 4.721 works fine. If people are not looking at the macro with an editor after making changes there may be multiple steps that confuse NGX. That happened to me first try. I just edited out duplicates and it worked fine. Also gave me a chance to clean up the key names. I know most users will know that but thought it might to be new to some reading this topic. I posted my MCP macro in another thread.

    Ed F.

  5. I just posted a MCP macro on Pete's support site. I'll be doing others tomorrow. I flight tested this and it worked fine with my homebuilt MCP.

    Ed F.

    [Macros]
    Module="PMDG_737NGX.DLL"
    1=MCP_N1=RX48bd0*X8bcc
    2=MCP_IAS=RX43480*Xe8cc
    3=MCP_LVL CHG=RX48c90*X8bcc
    4=MCP_HDG=RX43740*X8bcc
    5=MCP_APPR=RX48cd0*X8bcc
    6=MCP_ALTHLD=RX48d10*X8bcc
    7=MCP_VS=RX48d30*X8bcc
    8=MCP_IAS_DN=RX48c50*X8bcc
    9=MCP_IAS_UP=RX48c50*X8bcc,31
    10=MCP_CRSA_DN=RX48b90*X8bcc
    11=MCP_CRSA_UP=RX48b90*X8bcc,31
    12=MCP_HD_DN=RX437c0*X8bcc
    13=MCP_HD_UP=RX437c0*X8bcc,31
    14=MCP_ALT_UP=RX48cf0*X8bcc,31
    15=MCP_ALT_DN=RX48cf0*X8bcc
    16=MCP_VS_UP=RX43a70*Xe8cc
    17=MCP_VS_DN=RX43a70*Xe8cc,31
    18=MCP_BANK_INC=RX43860*Xe8cc,31
    19=MCP_VORLOC=RX43970*X8bcc
    20=MCP_LNAV=RX48cb0*X8bcc
    21=MCP_VNAV=RX43660*X8bcc
    22=MCP_AT=RX43300*Xe8cc
    23=MCP_FDA=RX43360*Xe8cc
    24=MCP_CO=RX434e0*Xe8cc
    25=MCP_SPDINTV=RX435a0*Xe8cc
    26=MCP_ALTINTV=RX43a50*X8bcc
    27=MCP_CMDA=RX43ad0*Xe8cc
    28=MCP_CMDB=RX43b30*Xe8cc
    29=MCP_APDISCON=RX43c80*X8bcc
    30=MCP_CWSA=RX43b90*Xe8cc
    31=MCP_CWSB=RX43bf0*Xe8cc
    32=MCP_FDB=RX433c0*Xe8cc
    33=MCP_BANK_DEC=RX43860*Xe8cc
    34=MCP_TOGA=RX43ca0*X8bcc
    35=MCP_HDG_UP=RX43790*Xe8cc,31
    36=MCP_HDG_DN=RX43790*Xe8cc
    37=MCP_CRSB_UP=RX432b0*X8bcc,31
    38=MCP_CRSB_DN=RX432b0*X8bcc
    

  6. Just started working out files for MCP, EFIS and Lower Overhead for the great! new 737NGX. What a plane!

    I'll attach the MCP now because I've tested them with my homemade MCP. Others to follow.

    Anyone else out there done other function? Hope these help.

    Ed F.

    [Macros]
    Module="PMDG_737NGX.DLL"
    1=MCP_N1=RX48bd0*X8bcc
    2=MCP_IAS=RX43480*Xe8cc
    3=MCP_LVL CHG=RX48c90*X8bcc
    4=MCP_HDG=RX43740*X8bcc
    5=MCP_APPR=RX48cd0*X8bcc
    6=MCP_ALTHLD=RX48d10*X8bcc
    7=MCP_VS=RX48d30*X8bcc
    8=MCP_IAS_DN=RX48c50*X8bcc
    9=MCP_IAS_UP=RX48c50*X8bcc,31
    10=MCP_CRSA_DN=RX48b90*X8bcc
    11=MCP_CRSA_UP=RX48b90*X8bcc,31
    12=MCP_HD_DN=RX437c0*X8bcc
    13=MCP_HD_UP=RX437c0*X8bcc,31
    14=MCP_ALT_UP=RX48cf0*X8bcc,31
    15=MCP_ALT_DN=RX48cf0*X8bcc
    16=MCP_VS_UP=RX43a70*Xe8cc
    17=MCP_VS_DN=RX43a70*Xe8cc,31
    18=MCP_BANK_INC=RX43860*Xe8cc,31
    19=MCP_VORLOC=RX43970*X8bcc
    20=MCP_LNAV=RX48cb0*X8bcc
    21=MCP_VNAV=RX43660*X8bcc
    22=MCP_AT=RX43300*Xe8cc
    23=MCP_FDA=RX43360*Xe8cc
    24=MCP_CO=RX434e0*Xe8cc
    25=MCP_SPDINTV=RX435a0*Xe8cc
    26=MCP_ALTINTV=RX43a50*X8bcc
    27=MCP_CMDA=RX43ad0*Xe8cc
    28=MCP_CMDB=RX43b30*Xe8cc
    29=MCP_APDISCON=RX43c80*X8bcc
    30=MCP_CWSA=RX43b90*Xe8cc
    31=MCP_CWSB=RX43bf0*Xe8cc
    32=MCP_FDB=RX433c0*Xe8cc
    33=MCP_BANK_DEC=RX43860*Xe8cc
    34=MCP_TOGA=RX43ca0*X8bcc
    35=MCP_HDG_UP=RX43790*Xe8cc,31
    36=MCP_HDG_DN=RX43790*Xe8cc
    37=MCP_CRSB_UP=RX432b0*X8bcc,31
    38=MCP_CRSB_DN=RX432b0*X8bcc
    

  7. I noticed after I posted the lua routine that I had left in a small segment looking at a variable called reply. This was set in my fsuipc.ini to allow me to switch between a number of key assignment sets on my throttle quadrant. Prior to luas display function I had difficulty displaying what keyset was active. That function in itself was a great plus and I elaborated on it in later lua sub to allow active display of all the key assignments. The Lua addon makes it easy to display lots of little prompt screens - it's great for semi-programmers like myself. Thanks again.

    I don't see a lot of ini files posted on your site. Any thoughts yea or nay? I'm always glad to share code ideas. (clumsy though some of mine may be)

    edfair :)

  8. Sorry hit the submit button without the Lua attachment. (I guess it won't take a .txt or .lua file so here:

    -- "Display radios" example LUA plug-in, by Ed Fairchild, December 2009

    -- Loop forever: to stop this you'll have to use the LuaKill control on it.

    while 1 do

    -- Converts a decimal value in bcdnum to a string of the form "19.90"

    function nav2mhz(val)

    c1=tostring(val)

    c2=string.sub(string.format("%x",c1),1,2)

    c3=string.sub(string.format("%x",c1),3,4)

    c4=string.sub(c2,1,1)

    c5="1"..c2..c3

    if c4=="8" or c4=="9"then c5="10"..c2..c3 end

    c6=string.sub(c5,1,3).."."..string.sub(c5,4,5)

    return c6

    end

    -- Get all of the data we want to display

    com1 = ipc.readUW(0x034E)

    com2 = ipc.readUW(0x3118)

    com1sb = ipc.readUW(0x311A)

    com2sb = ipc.readUW(0x311C)

    nav1 = ipc.readUW(0x0350)

    nav2 = ipc.readUW(0x0352)

    nav1sb = ipc.readUW(0x311E)

    nav2sb = ipc.readUW(0x3120)

    adf1 = ipc.readUW(0x034C)

    adf2 = ipc.readUW(0x02D4)

    xpd = ipc.readUW(0x0354)

    adf1a =tostring(adf1)

    adf1b =string.sub(string.format("%x",adf1a),1,4)

    adf2a =tostring(adf2)

    adf2b =string.sub(string.format("%x",adf2a),1,4)

    xpda =tostring(xpd)

    xpdb =string.sub(string.format("%x",xpda),1,4)

    stat = ipc.readUB(0x66c0)

    co1 = nav2mhz(com1)

    co2 = nav2mhz(com2)

    co1s = nav2mhz(com1sb)

    co2s = nav2mhz(com2sb)

    n1 = nav2mhz(nav1)

    n2 = nav2mhz(nav2)

    n1s = nav2mhz(nav1sb)

    n2s = nav2mhz(nav2sb)

    -- test for stat

    if stat == 0 then reply="Throttle"

    elseif stat == 1 then reply="COM"

    elseif stat == 2 then reply="Panels"

    elseif stat == 3 then reply="Lights"

    elseif stat == 4 then reply="NAV"

    elseif stat == 5 then reply="XPNDR"

    elseif stat == 6 then reply="ADF"

    end

    -- display it all in an FS window

    ipc.display("\------------------------------"..

    "\n** Quad keys = "..reply.." **"..

    "\n------------------------------"..

    "\n COM1 = "..co1.." <- "..co1s..

    "\n COM2 = "..co2.." <- "..co2s..

    "\n------------------------------"..

    "\n NAV1 = "..n1.." <- "..n1s..

    "\n NAV2 = "..n2.." <- "..n2s..

    "\n------------------------------"..

    "\n ADF1 = "..adf1b..

    "\n ADF2 = "..adf2b..

    "\n------------------------------"..

    "\n Transponder = "..xpdb..

    "\n")

    -- Sleep for 50 mSecs so the update gets done roughly 20 times per second

    ipc.sleep(50)

    --

    end

  9. Thanks Pete for posting this. I've used your program(s) for a few years. Both 3 and 4 versions and WideFS (all reg) and they are fantastic. SPAD prompted me to send a congrats message to his website - my first post ever - and I felt I should follow up with a very hearty thanks to you for your years of great work. - I did post some fsuipc.ini files to his web (at his request) and I thought I should check with you to make sure that was alright (sorry - I should have asked first) - He's interested and has lots of requests for PMDG stuff - mine is sure not elegant but it works!!

    One thing I love is the additon of LUA. My first effort - a direct substitution of your code example - was a radio display some users may fine useful. I've attached it here - If it's useful have at it. Any comments are welcome.

    The fsuipc.ini I sent needs a lot of work but works really well with an EFIS/MCP panel I built for a PMDG 737. I need to play more with your mouse routines - neat addon but I'm finding some PMDG panels particularly on a split screen setup have issues.

    Anyway thanks again for great stuff.!!!

    edfair

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.