Jump to content
The simFlight Network Forums

FastBlueMooney

Members
  • Posts

    5
  • Joined

  • Last visited

Posts posted by FastBlueMooney

  1. Joe,

    Thanks for posting the additional explanation and for taking the initiative to generalize Pete's TripleUse.lua .  I figured out how to install LINDA and access the lib-fsxControls.lua provide in LINDA's library.   I have also learned a lot about LUA programming  and FSUIPC in trying to get this code to work on my system.  However; despite my efforts, I couldn't get any other entries in the TripleUseAssignment.lua to work except the very first entry.   All the other entries returned a "nil" error.

    After studying your code, I think I may have found two potential problems (if I understand correctly, which maybe a bad assumptions on my part!) and hope you can review and confirm.

    The first problem is in line 67 of TripleUse.Lua:
    66   for i = 1, #btnFunc do
    67     event.button(btnFunc[i][1], btnFunc[i][2],
    i, "buttonpress")
    68   end

    Line 67 is assigning the a current value ("i") to the "downup" parameter of the event.button() call.  Where, in your code "i" can be any number from 1 to the number of joystick buttons (i.e. #btnFunc) contained in the TripleAssignment.Lua.  However according the page 24 of the FSUIPC Lua Library.pdf,  for the event.button(joynum, button, downup, "function-name"), the only defined  values for "downup"  are  "1", "2", or "3".  My understanding is that "downup"  is telling event.button() to trigger on a press, release or both.   So I'm not sure what happens for values when i > 3.   The "downup" parameter can also be omitted, and if so will look for a "press".    (Perhaps Pete or John will comment, if I am wrong.)
     

    The second problem is the indexing used in the "assert(loadstring(btnFunc[i][i.e. 3,4, or 5].."()"))"  in lines #54, 57 and 61.   The value for "i" is being returned from the event.button() is via line #42:   function buttonpress(j, b, i).

    My understanding from reading about event.button(), is that the value, being returned thorough  "i" ,  is the "downup" parameter and not an index to the joystick button in btnFunc() as loaded into the event.button() in line#67.    In my testing,  the only values i will ever be is "1" or "0".   This explains why only the first joystick/button entry in TripleUseAssignment worked.

    Primarily as an opportunity to learn a bit of LUA coding,  debugging techniques and more about FSUIP, I have attempted to correct the above issues in TripleUse.lua.  In my testing with P3Dv5 and FSUIPC6, it now works for any number of joystick buttons. 

    Briefly,   I replaced "i" in your line #67 with  "1".  I also added the following function to determine the index based on "j" and "b" into btnFunc() in order to call the desired FSX_control function.

    function sendFSControl(j,b,typePress)
        for key, value in pairs(btnFunc) do
            if value[1] == j and value[2] == b then
            assert(_G[value[typePress]])()
            end    
        end
    end  

    {Apologies:  I tried including the files as ATTACHMENTS, but for some reason there the file limit of only 841 bytes!?}  So, I have pasted them into this message. }

     

    Below is my revised version of your TripleUse.Lua and for your review, I have added comments explain what I changed.  

    -------------------------------------------BEGIN TRIPLEUSE.LUA----------------------------------------------------

     

    interval = 500 -- 1/2 second press, gap, press limits
    ignorepress = false

    dofile([[.\LINDA\system\common.lua]])
    dofile([[.\LINDA\libs\lib-fsxcontrols.lua]])
    dofile([[.\TripleUseAssignments.lua]])

    function ignore ()
    end

    local function timebutton(joy, btn, test)
      ignorepress = true
      while true do
            time2 = ipc.elapsedtime()
            if (time2 - time1) > interval then
              ignorepress = false
                return false
            end
             if ipc.testbutton(joy, btn) == test then
                time1 = time2
                return true
            end
             ipc.sleep(20)
        end
    end
    ---------------------------------------------------------

    -- New function added below and called by funtion buttonpress()
    -- Determine index into buttonpress() based on Joy# (j)and Button# (b)
    -- and then call the FSX or MSFS control defined in "btnFunc" table
    -- "typePress" is either single, double or long as press
    --  as determined in "function buttonpress"

    --
    --
    function sendFSControl(j,b,typePress)
        for key, value in pairs(btnFunc) do
            if value[1] == j and value[2] == b then
            assert(_G[value[typePress]])()
            end    
        end
    end    

    ---------------------------------------------------------
    function buttonpress(j, b, i)
    --

    -- note: the "i" parameter returned is "downup" state of the button
    -- it is not an index pointing to which button was pressed
    -- see FSUIPC Lua Library Document page 24 for details

    --
        if ignorepress then
            ignorepress = false
            return
        end
        time1 = ipc.elapsedtime()
        time2 = 0
        if timebutton(j, b, false) then
            -- First press / release counts: see if there's another
            if timebutton(j, b, true) then
                -- got another press in time, look for release
                if timebutton(j, b, false) then
                    -- This was a double press, CS6
                    
    -- replace original line: "assert(loadstring(btnFunc[i][4].."()"))()"
                    -- with this new line

                    -----------------------------------------
                    sendFSControl(j,b,4)
                    -----------------------------------------
                end
            else  -- This was a single press, send CS7
              
       -- replace original line: "assert(loadstring(btnFunc[i][3].."()"))()"
                  -- with the following new line

                ---------------------------------------------
                sendFSControl(j,b,3)
                ---------------------------------------------     
                ignorepress = false
            end
        else  -- This was a single long press, send CS2
             
    -- replace original line: "assert(loadstring(btnFunc[i][5].."()"))()"
              -- with the following new new

            -------------------------------------------------  
            sendFSControl(j,b,5)
            -------------------------------------------------
        end
    end

     

    for i = 1, #btnFunc do
     
       -- replace original line "event.button(btnFunc[k][1], btnFunc[k][2], i, "buttonpress")"
        -- with the following new line
        -- the third parameter ("i") of event.button function is "downup" and can only be = 1,2,3 or ommitted.  
        -- it specifies whether to trigger on a press (=1 or omitted) , a release (=2) or either press or release (=3)
        -- so the new line set downup = 1 detect a button press
        -- see FSUIPC Lua Library document, page 24 for details

        -----------------------------------------------------
        event.button(btnFunc[i][1], btnFunc[i][2], 1, "buttonpress")
        -----------------------------------------------------
    end

    -----------------------------------------------END TRIPLEUSE.LUA----------------------------------------------------

    For anyone else  wanting to gives this a try, below  are my TripleUseAssignments.lua and the Joystick section from my FSUIPC.ini   One thing I would note is that the name of the FSX functions contained in the LINDA lib-fsxControls.lua are different than what is used in FSUIPC in that they all begin with an underscore.

    -------------------------------------- BEGIN TRIPLEUSEASSIGNMENTS.LUA----------------------------------------------------

    btnFunc = {
    { 7, 0, "_XPNDR_1000_INC", "ignore", "_XPNDR_1000_DEC"},
    { 7, 1, "_XPNDR_100_INC", "ignore", "_XPNDR_100_DEC"},
    { 7, 2, "_XPNDR_10_INC", "ignore", "_XPNDR_10_DEC"},
    { 7, 3, "_XPNDR_1_INC", "ignore", "_XPNDR_1_DEC"},
    { 5, 1, "_FLAPS_INCR", "ignore", "_FLAPS_DECR"},
    { 5, 2, "_FLAPS_DOWN", "ignore", "_FLAPS_UP"}
    }

    -------------------------------------- END TRIPLEUSEASSIGNMENTS.LUA----------------------------------------------------

    From my FSUIPC6.ini

    [JoyNames]
    AutoAssignLetters=No
    T=Throttle - HOTAS Warthog
    T.GUID={646A1090-F58C-11E9-8002-444553540000}
    S=RIGHT VPC Stick MT-50CM
    S.GUID={A7F15CB0-9604-11EA-8004-444553540000}
    L=F16 MFD 1
    L.GUID={C3895F50-F58B-11E9-8003-444553540000}
    N=F16 MFD 3
    N.GUID={C3895F50-F58B-11E9-8004-444553540000}
    M=F16 MFD 2
    M.GUID={C3895F50-F58B-11E9-8005-444553540000}
    K=Nostromo n52 Speedpad2
    K.GUID={5AF36D40-F58C-11E9-8007-444553540000}
    X=MFG Crosswind V2
    X.GUID={39EFC3D0-F589-11E9-8001-444553540000}
    0=MFG Crosswind V2
    0.GUID={39EFC3D0-F589-11E9-8001-444553540000}
    1=Throttle - HOTAS Warthog
    1.GUID={646A1090-F58C-11E9-8002-444553540000}
    3=RIGHT VPC Stick MT-50CM
    3.GUID={A7F15CB0-9604-11EA-8004-444553540000}
    5=F16 MFD 1
    5.GUID={C3895F50-F58B-11E9-8003-444553540000}
    6=F16 MFD 3
    6.GUID={C3895F50-F58B-11E9-8004-444553540000}
    7=F16 MFD 2
    7.GUID={C3895F50-F58B-11E9-8005-444553540000}
    9=Nostromo n52 Speedpad2
    9.GUID={5AF36D40-F58C-11E9-8007-444553540000}

    What I have not yet figured out is how to make TripleUse.lua work with Joystick letters in lieu of Joystick numbers.   The event.button() appears to be capable of handling either. (i.e. event.button("joyletter", button,“function-name”).    So there are still some challenges and opportunities remaining in completely generalizing TripleUse.lua.

    Alan

     

     

    • Like 1
  2. Do you ever have one of those days (or weeks) where you are unable "to pour pee out of a boot even if the instructions were written on the heel!"🤬???

    Thanks to Pete and John, I figured out the problem and have TripleUse working with MSFS/FSUIPC7.   As they suggested the missing element was indeed the lib-fsxcontrols.lua and  lib-msfs.lua found in the library for LINDA_4_0_3_41, which is for MSFS only.  The lib-fsxcontrols.lua contains a long list of calls to the default FSX control offsets like:

    function _PITOT_HEAT_OFF (p)     ipc.control( 66073, p )  end
    function _PITOT_HEAT_ON (p)     ipc.control( 66072, p )  end

    The lib-msfs.lua appears to map some MSFS commands to their FSX equivalent :

    function DeIce_PITOT_on ()
        _PITOT_HEAT_ON ()
    end

    function DeIce_PITOT_off ()
        _PITOT_HEAT_OFF ()
    end

    Looking back on this experience, I really was a bull wondering around in a FSUIPC china shop.   I was messing with areas in FSUIPC that I had never ventured before (i.e. lua code) and with a program (LINDA) I had heard about, but had no idea about its functions.

    My first mistake was trying to use this TripleUse with P3Dv5/FSUIPC6.  The OP stated it was for MSFS/FSUIPC7.   When I tried loading LINDA for P3Dv5/FSUIP6, the lib-fsxcontrols.lua and lib-msfs.lua were not in that vesion of Linda\lib and running TripleUse resulted in the error I reported in my first post.

    My second error was assuming that I didn't need LINDA, since TripleUse wasn't working  with LINDA installed in P3D/FSUIPC6.

    My third error was next trying it with MSFS/FSUIPC7, without loading LINDA.   Not knowing LUA or having a deeper understanding about FSUIP, I assumed some magic was happening when the FSUIPC names for the controls were mentioned in the ASSET call.

    After Pete's and John's comments, I spent time reading about LINDA and installed it for MSFS. Browsing through those lib-files, I realized they were the missing  connection between the ASSERT(btn_Func) command in TripleUse and executing the function in FS.

    Although embarrassing to publicly post and reveal my ignorance on this forum,  I have learned a lot about FSUIPC, LUA functions and LINDA that I wouldn't have learned if I had done everything right and it had worked the first time. 

    Pete or John:  Feel free to delete my posts from the user contributions or move them to the general comments if you feel that they have any value to anyone else trying to get TripleUse working on their systems.

  3. Thanks for the responses Pete and John.   I was assuming (wrongly apparently!) that by some magic in FSUIPC, that when TripleUse "asserted" the function names (which I thought were THE EXACT same names showing up in FSUIPC.ini when I simply program a button to those FS controls )  that the ASSERT command  somehow triggered FSUIPC to issue the command to FS.   I'm embarrassed by my lack of understanding.

    I saw the OP's "dofile XXXXXXX" commands in his files, but thought those were related to LINDA.    I did try  installing LINDA, but the "lib-msfs.lua" and "lib-fsxcontrols.lua" files were missing and resulted in errors when I tried executing with his original files.   So I tried stripping them out, thinking they weren't necessary.  As you observed he didn't say anything about LINDA being REQUIRED to make TripleUse work.     So sounds like that is the missing link between the ASSERT (btnFunc....) command  and execution of a command is contained in those files.

    Hopefully, Joe will comment on how to make this work.   I did open an issue on his GitHub.  It would be a really great way to gain extra utility from joystick buttons.

    Alan

  4. Sorry I just can't leave it alone......

    Since the TripleUse.lua was written for FSUIPC7 and MSFS, I wanted to rule out that the error I am getting is because I'm trying to use TripleUse.lua with FSUIPC6 and P3DV5.1.  So I tried running the TripleUse.lua with FSUIPC7/MSFS and I receive the same error.  Below is a cut and paste of the FSUIPC7 log file.

       167625 LUA.1: beginning "D:\Programs\FSUIPC7\ipcReady.lua"
       321469 *** LUA Error: [string "DeIce_PITOT_off()"]:1: attempt to call global 'DeIce_PITOT_off' (a nil value)
       326437 *** LUA Error: D:\Programs\FSUIPC7\TripleUse.lua:45: attempt to index field '?' (a nil value)
       327766 *** LUA Error: [string "DeIce_PITOT_on()"]:1: attempt to call global 'DeIce_PITOT_on' (a nil value)
       328297 *** LUA Error: D:\Programs\FSUIPC7\TripleUse.lua:45: attempt to index field '?' (a nil value)

       369687 LUA.2: Waiting for an event in "D:\Programs\FSUIPC7\TripleUse.lua"
       376969 LUA.2: Button event: calling "buttonpress" in "D:\Programs\FSUIPC7\TripleUse.lua"
      
    377906 *** LUA Error: [string "DeIce_PITOT_on()"]:1: attempt to call global 'DeIce_PITOT_on' (a nil value)
       377922 LUA.2: Waiting for an event in "D:\Programs\FSUIPC7\TripleUse.lua"
       518219 LUA.2: Button event: calling "buttonpress" in "D:\Programs\FSUIPC7\TripleUse.lua"
     
      518766 *** LUA Error: D:\Programs\FSUIPC7\TripleUse.lua:45: attempt to index field '?' (a nil value)
       518781 LUA.2: Waiting for an event in "D:\Programs\FSUIPC7\TripleUse.lua"

    Attached is my version of the TripleUse.lua.

    Now it looks like there are two errors: "

    LUA Error: [string "DeIce_PITOT_on()"]:1: attempt to call global 'DeIce_PITOT_on' (a nil value)

    LUA Error: D:\Programs\FSUIPC7\TripleUse.lua:45: attempt to index field '?' (a nil value)

    btnFunc  is a table array defined as

    btnFunc = {
    { 7, 1, "DeIce_PITOT_on", "ignore", "DeIce_PITOT_off"},
    { 7, 2, "G1000_MFD_SOFTKEY12", "ignore", "G1000_MFD_SOFTKEY11"},
    { 7, 3, "MasterCaution_reset", "ignore", "MasterWarning_reset"}
    }

    So looking at the code, the "assert(loadstring(btnFunc[i][3].."()"))()"  statements must be the means by which TripleUse tells FSUIPC to send the command contained in the string elements stored in the table array (i.e. btnFunc) to MSFS, but for some reason FSUIPC (or lua) doesn't like the fact the string is a global or it has a "nil value".  Can someone explain this error?

    I must be missing something.....

    I don't know about the second error, I didn't see it in the logs from the FSUIPC6/P3D runs.   I think it indicates TripleUse is trying to index a value outside of the array size.

    TripleUse.lua

  5. Joe,

    I use HomeFries' T.A.R.G.E.T. profiles in DCS World and have grown very fond of having short, long and double presses for each key on my TM HOTAS, so I was really glad to see you post this.  It will be great to be able to do this in MSFS and P3D.     Thanks for sharing your hard work.   

    However, despite all my efforts I haven't been able to make this work.   I hope you or someone can tell me what I am doing wrong.  I admit to being a total novice when it come to LUA code and it is probably something pretty simple, but after about four days of "bumping around in the dark" and trying everything I can think of, I am asking for help.

    Using FSUIPC's logging functions, I receive the following error any time I run the TripleUse.lua plug-in.  "*** LUA Error: [string "DeIce_PITOT_off()"]:1: attempt to call global 'DeIce_PITOT_off' (a nil value)"   I am attaching the TripleUse.log file.

    I am running this in P3D and FSUIPC v6, but I have verified the functions you are calling in your example are valid.  I can make the function work by programing buttons in FSUIPC for those functions in your TripleUseAssignment table.  I have posted the contents of the pertinent files below.

    Any help would be greatly appreciated.

    Alan

     

    Below is my version of your TripleUse.Lua I am using

    -----------------------------------------------------------

    interval = 500 -- 1/2 second press, gap, press limits
    ignorepress = false

    btnFunc = {
    { 7, 1, "DeIce_PITOT_on", "ignore", "DeIce_PITOT_off"},
    { 7, 2, "G1000_MFD_SOFTKEY12", "ignore", "G1000_MFD_SOFTKEY11"},
    { 7, 3, "MasterCaution_reset", "ignore", "MasterWarning_reset"}
    }


    function ignore ()
    end

    local function timebutton(joy, btn, test)
      ignorepress = true
      while true do
            time2 = ipc.elapsedtime()
            if (time2 - time1) > interval then
              ignorepress = false
                return false
            end
             if ipc.testbutton(joy, btn) == test then
                time1 = time2
                return true
            end
             ipc.sleep(20)
        end
    end

    function buttonpress(j, b, i)
        if ignorepress then
            ignorepress = false
            return
        end
        time1 = ipc.elapsedtime()
        time2 = 0
        if timebutton(j, b, false) then
            -- First press / release counts: see if there's another
            if timebutton(j, b, true) then
                -- got another press in time, look for release
                if timebutton(j, b, false) then  -- this was a double press, CS6
                    assert(loadstring(btnFunc[i][4].."()"))()
                end
              else  -- This was a single press, send CS7
                assert(loadstring(btnFunc[i][3].."()"))()
                ignorepress = false
            end
        else  -- This was a single long press, send CS2
            assert(loadstring(btnFunc[i][5].."()"))()
      end
    end


    for i = 1, #btnFunc do
        event.button(btnFunc[i][1], btnFunc[i][2], i, "buttonpress")
    end69

    --------------------------------------------------------------------

    Here is my IpcReady.lua

    ------------------------------------------------------------------

    ipc.runlua('TripleUse')

    ------------------------------------------------------------------

    And the IpcReady.log

    ********* LUA: "ipcReady" Log [from FSUIPC version 6.0.12] *********
        47906 System time = 22/01/2021 17:41:01, Simulator time = 17:40:23 (03:40Z)
        47906 LUA: beginning "C:\Users\AlanH\Documents\Prepar3D v5 Add-ons\FSUIPC6\ipcReady.lua"
        47906 LUA: ...H\Documents\Prepar3D v5 Add-ons\FSUIPC6\ipcReady.lua:1
        47906 LUA: Global: ipcPARAM = 0
        48015 >>> Thread forced exit (ipc.exit or os.exit) <<<
        48015 System time = 22/01/2021 17:41:02, Simulator time = 17:40:23 (03:40Z)
    ********* LUA execution terminated: Log Closed *********

     

    Below is my FSUIPC6.ini,

    Quote

     

    General]
    UpdatedByVersion=6012
    History=PWW9FJ4L0CKM8NOCM0SDJ
    InitDelayDevicesToo=No
    PMDG737offsets=Auto
    PMDG747offsets=Auto
    PMDG777offsets=Auto
    Annotate=Yes
    UseSystemTime=No
    UseMidMouseBtn=Yes
    MouseWheelMove=No
    MouseWheelTrim=No
    MouseWheelTrimSpeed=1
    JoystickTimeout=20
    RestoreSimcWindows=No
    FixMachSpeedBug=No
    AutoScanDevices=Yes
    DisconnTrimForAP=No
    ZeroElevForAPAlt=No
    ThrottleSyncAll=No
    WhiteMessages=No
    ShowPMcontrols=No
    SpoilerIncrement=512
    MagicBattery=No
    RudderSpikeRemoval=No
    ElevatorSpikeRemoval=No
    AileronSpikeRemoval=No
    ReversedElevatorTrim=No
    ClockSync=No
    ClockSyncMins=5
    ClearWeatherDynamics=No
    TimeForSelect=4
    LoadFlightMenu=No
    LoadPlanMenu=No
    PauseAfterCrash=No
    BrakeReleaseThreshold=75
    SaveDataWithFlights=No
    ZapSound=firework
    ZapAirRange=1.50
    ZapGroundRange=0.25
    ZapCylinderAltDiff=0
    ShortAircraftNameOk=Substring
    UseProfiles=Yes
    EnableMouseLook=No
    DelayedMouseLookZoom=No
    WideLuaGlobals=Yes
    AxesWrongRange=No
    TCASid=Flight
    TCASrange=40,3
    AxisCalibration=No
    DirectAxesToCalibs=No
    ShowMultilineWindow=Yes
    SuppressSingleline=No
    SuppressMultilineFS=No
    AxisIntercepts=No
    DontResetAxes=No
    ThreadAffinityMask=x0
    LuaAffinityMask=x0
    InitDelay=0
    GetNearestAirports=Yes
    LogOptionProtect=Yes
    TimeForLuaClosing=2
    WeatherReadFactor=2
    WeatherRewriteSeconds=1
    TrafficStallTime=1
    InitialStallTime=10
    NormalStallTime=1
    LuaRerunDelay=66
    ComReadLoopTime=20
    Console=Yes
    ConsoleWindowTopMost=No
    InvokeFSUIPCOptionsKey=70,26
    ConsoleWindow=156,156,1349,675
    LogEvents=Yes
    LogLua=Yes
    DebugLua=Yes
    LogButtonsKeys=Yes
    FSVersionUsed="Lockheed Martin® Prepar3D® v5",5.1.12.26829
    SimConnectUsed=5.1.0.0

    [Traffic Limiter]
    AirportPreference=50
    PlannedAirportsPreference=50
    GroundPreference=50
    NearerPreference=50
    TargetFrameRate=0
    LoLimit=0
    HiLimit=0

    [JoyNames]
    AutoAssignLetters=No
    1=Throttle - HOTAS Warthog
    1.GUID={646A1090-F58C-11E9-8002-444553540000}
    3=RIGHT VPC Stick MT-50CM
    3.GUID={A7F15CB0-9604-11EA-8004-444553540000}
    4=MFG Crosswind V2
    4.GUID={39EFC3D0-F589-11E9-8001-444553540000}
    5=F16 MFD 1
    5.GUID={C3895F50-F58B-11E9-8003-444553540000}
    6=F16 MFD 3
    6.GUID={C3895F50-F58B-11E9-8004-444553540000}
    7=F16 MFD 2
    7.GUID={C3895F50-F58B-11E9-8005-444553540000}
    9=Nostromo n52 Speedpad2
    9.GUID={5AF36D40-F58C-11E9-8007-444553540000}

    [JoystickCalibration]
    RudderBlendLowest=1

    [Axes]
    PollInterval=10
    RangeRepeatRate=10

    [Auto]
    1=TripleUse

    [LuaFiles]
    1=TripleUse
    2=ipcReady

    [Buttons]
    PollInterval=25
    ButtonRepeat=20,10
    1=P5,0,K70,14     -{Key press: ctl+tab+F}-


    [AutoSave]
    Interval=60
    Files=10
    SaveOnGround=No
    AutoSaveEnabled=No

    [GPSout]
    GPSoutEnabled=No
    Port=COM1
    Speed=4800
    Interval=2000
    PosTo6Decimal=No
    SimModeIndicator=No
    Sentences=

    [GPSout2]
    GPSoutEnabled=No
    Port=<none set>
    Speed=4800
    Interval=2000
    PosTo6Decimal=No
    SimModeIndicator=No
    Sentences=

    [WideServer]
    WideFSenabled=Yes
    AdvertiseService=1
    Port=8002
    Port2=9002

    [Sounds]
    Path=D:\Games\Prepar3D v5\Sound\
    Device1=Primary Sound Driver
    Device2=SAMSUNG (NVIDIA High Definition Audio)
    Device3=Realtek HD Audio 2nd output (Realtek(R) Audio)
    Device4=Speakers (Realtek(R) Audio)
    Device5=55S403-3 (NVIDIA High Definition Audio)

    [AutoSaveFilesV5]
    Next=1

    [Keys]
    1=70,26,1930,0     -{ctl+tab+F: Press= }-

     

    Below is the FSUIPC6.log for the run

    ********* FSUIPC6, Version 6.0.12 (12th January 2021) by Pete & John Dowson *********
    Prepar3D.exe version = 5.1.12.26829
    Running inside Prepar3D v5
    Module base=7FFED5930000
    Windows 10 Pro 64 Bit reported as Build 19041, Release ID: 2004 (OS 10.0)
    Reading options from "C:\Users\AlanH\Documents\Prepar3D v5 Add-ons\FSUIPC6\FSUIPC6.ini"
    Checking the Registrations now ...
    User Name=
    User Addr=
    FSUIPC6 Key is provided
    WideFS7 Key is provided
           62 System time = 22/01/2021 17:40:14
           62 FLT UNC path = "\\I9-9900K\E\UserFiles\AlanH\Documents\Prepar3D v5 Files\"
           62 Using DialogMode
           93 FS UNC path = "\\I9-9900K\D\Games\Prepar3D v5\"
          156 ---------------------- Joystick Device Scan -----------------------
          171 Product= RIGHT VPC Stick MT-50CM
          171    Manufacturer= ATMEL/VIRPIL/200325
          171    Vendor=044F, Product=0402 (Version 0.1)
          187    GUIDs returned for product: VID_044F&PID_0402:
          187       GUID= {A7F15CB0-9604-11EA-8004-444553540000}
          187       Details: Btns=19, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R0,U0,V0,X16384,Y16384,Z0
          187 Product= F16 MFD 3
          187    Manufacturer= Thrustmaster
          187    Vendor=044F, Product=B353 (Version 1.0)
          187    GUIDs returned for product: VID_044F&PID_B353:
          187       GUID= {C3895F50-F58B-11E9-8004-444553540000}
          187       Details: Btns=28, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R0,U0,V0,X0,Y0,Z0
          187 Product= F16 MFD 1
          187    Manufacturer= Thrustmaster
          187    Vendor=044F, Product=B351 (Version 1.0)
          187    GUIDs returned for product: VID_044F&PID_B351:
          187       GUID= {C3895F50-F58B-11E9-8003-444553540000}
          187       Details: Btns=28, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R0,U0,V0,X0,Y0,Z0
          187 Product= F16 MFD 2
          187    Manufacturer= Thrustmaster
          187    Vendor=044F, Product=B352 (Version 1.0)
          187    GUIDs returned for product: VID_044F&PID_B352:
          187       GUID= {C3895F50-F58B-11E9-8005-444553540000}
          187       Details: Btns=28, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R0,U0,V0,X0,Y0,Z0
          187 Product= MFG Crosswind V2
          187    Manufacturer= MFG
          187    Serial Number= MFG500002
          187    Vendor=16D0, Product=0A38 (Version 33.1)
          187    GUIDs returned for product: VID_16D0&PID_0A38:
          187       GUID= {39EFC3D0-F589-11E9-8001-444553540000}
          187       Details: Btns=2, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R4096,U0,V0,X4096,Y4096,Z0
          187 Product=
          187    Vendor=050D, Product=0815 (Version 2.16)
          187    GUIDs returned for product: VID_050D&PID_0815:
          187       GUID= {5AF36D40-F58C-11E9-8007-444553540000}
          187       Details: Btns=24, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R255,U255,V255,X255,Y255,Z255
          187 Product= Throttle - HOTAS Warthog
          187    Manufacturer= Thrustmaster
          187    Vendor=044F, Product=0404 (Version 1.0)
          187    GUIDs returned for product: VID_044F&PID_0404:
          187       GUID= {646A1090-F58C-11E9-8002-444553540000}
          187       Details: Btns=32, POVs=(0, 0, 0, 0), Cal=x00000000, Max=R16383,U1023,V0,X1023,Y1023,Z16383
          203 -------------------------------------------------------------------
          203 Device acquired for use:
          203    Joystick ID = 3 (Registry okay)
          203    3=RIGHT VPC Stick MT-50CM
          203    3.GUID={A7F15CB0-9604-11EA-8004-444553540000}
          203 Device acquired for use:
          203    Joystick ID = 6 (Registry okay)
          203    6=F16 MFD 3
          203    6.GUID={C3895F50-F58B-11E9-8004-444553540000}
          203 Device acquired for use:
          203    Joystick ID = 5 (Registry okay)
          203    5=F16 MFD 1
          203    5.GUID={C3895F50-F58B-11E9-8003-444553540000}
          203 Device acquired for use:
          203    Joystick ID = 7 (Registry okay)
          203    7=F16 MFD 2
          203    7.GUID={C3895F50-F58B-11E9-8005-444553540000}
          203 Device acquired for use:
          203    Joystick ID = 4 (Registry okay)
          203    4=MFG Crosswind V2
          203    4.GUID={39EFC3D0-F589-11E9-8001-444553540000}
          203 Device acquired for use:
          203    Joystick ID = 9 (Registry okay)
          203    9=Nostromo n52 Speedpad2
          203    9.GUID={5AF36D40-F58C-11E9-8007-444553540000}
          203 Device acquired for use:
          203    Joystick ID = 1 (Registry okay)
          203    1=Throttle - HOTAS Warthog
          203    1.GUID={646A1090-F58C-11E9-8002-444553540000}
          203 -------------------------------------------------------------------
          250 Controllers are set to OFF
          250 LogOptions=E0000000 00000001
          250 -------------------------------------------------------------------
          250 SimConnect_Open succeeded: waiting to check version okay
          250 Opened separate AI Traffic client okay
         2890 Running in "Lockheed Martin® Prepar3D® v5", Version: 5.1.12.26829 (SimConnect: 5.1.0.0)
         2890 Initialising SimConnect data requests now
         2890 FSUIPC Menu entry added
         2906 ... Using Prepar3D with Professional License
         2937 \\I9-9900K\E\UserFiles\AlanH\Documents\Prepar3D v5 Files\C172 Anniversary N265K - 2021-01-14 19-27-07.fxml
         2937 \\I9-9900K\D\Games\Prepar3D v5\SimObjects\Airplanes\Carenado C172II N\SingleEngineProp.air
        19156 ### The user object is 'C172 Anniversary'
        19156 ### Mode is NORMAL
        19859 ### Mode: PAUSE on
        40906 Loading Complete ...
        40921 ### Mode is NORMAL
        41656 User Aircraft ID 1 supplied, now being used
        41656 Aircraft loaded: running normally now ...
        41828 System time = 22/01/2021 17:40:55, Simulator time = 17:40:17 (03:40Z)
        41843 Aircraft="C172 Anniversary"
        47843 -------------------- Starting everything now ----------------------
        47843 Starting WideServer now ...
        49031 Advanced Weather Interface Enabled
        52000 KEYDOWN: VK=65, Waiting=0, Repeat=N, Shifts=0
        52000 .. Key not programmed -- passed on to FS
        52015 *** EVENT: Cntrl= 66153 (0x00010269), Param= 0 (0x00000000) NEXT_SUB_VIEW
        52171 KEYUP: VK=65, Waiting=0, Shifts=0
        52781 KEYDOWN: VK=65, Waiting=0, Repeat=N, Shifts=0
        52781 .. Key not programmed -- passed on to FS
        52781 *** EVENT: Cntrl= 66153 (0x00010269), Param= 0 (0x00000000) NEXT_SUB_VIEW
        52906 KEYUP: VK=65, Waiting=0, Shifts=0
        61968 KEYDOWN: VK=17, Waiting=0, Repeat=N, Shifts=2
        61968 .. Key not programmed -- passed on to FS
        62265 KEYDOWN: VK=69, Waiting=0, Repeat=N, Shifts=2
        62265 .. Key not programmed -- passed on to FS
        62265 *** EVENT: Cntrl= 66224 (0x000102b0), Param= 0 (0x00000000) ENGINE_AUTO_START
        62359 KEYUP: VK=69, Waiting=0, Shifts=2
        62593 KEYUP: VK=17, Waiting=0, Shifts=0
        88703 KEYDOWN: VK=80, Waiting=0, Repeat=N, Shifts=0
        88703 .. Key not programmed -- passed on to FS
        88703 *** EVENT: Cntrl= 65561 (0x00010019), Param= 0 (0x00000000) PAUSE_TOGGLE
        88703 ### Mode: PAUSE on
        88875 KEYUP: VK=80, Waiting=0, Shifts=0
        94375 *** EVENT: Cntrl= 65794 (0x00010102), Param= 0 (0x00000000) PAUSE_ON
     16990296 *** EVENT: Cntrl= 65732 (0x000100c4), Param= 0 (0x00000000) EXIT
     16990375 Sim stopped: average frame rate for last 16949 secs = 30.0 fps
     16990375    Max AI traffic was 0 aircraft
     16990375 -------------------------------------------------------------------
     16992765 === Closing session: waiting for DLLStop to be called ...
     16999093 === DLLStop called ...
     16999093 === Closing external processes we started ...
     17000093 === About to kill any Lua plug-ins still running ...
     17000234 Lua threads being terminated:
     17000234       2 = "C:\Users\AlanH\Documents\Prepar3D v5 Add-ons\FSUIPC6\TripleUse.lua"
     17000406 LUA: "C:\Users\AlanH\Documents\Prepar3D v5 Add-ons\FSUIPC6\TripleUse.lua": killed
     17000406 === Closing global Lua thread
     17001421 === About to kill my timers ...
     17001625 === Restoring window procs ...
     17001625 === Unloading libraries ...
     17001625 === stopping other threads ...
     17001625 === ... Button scanning ...
     17001718 === ... Axis scanning ...
     17001828 === Releasing joystick devices ...
     17001828 === Freeing macro memory
     17001828 === Removing any offset overrides
     17001828 === Closing all WideFS threads
     17003171 === Clearing any displays left
     17003171 === NOTE: not calling SimConnect_Close ...
     17003171 === AI slots deleted!
     17003187 === Freeing button memory ...
     17003187 === Deleting wxstationlist.bin file ...
     17003187 === Closing my Windows ...
     17003187 === Freeing FS libraries ...
     17004187 === Closing devices ...
     17004187 === Closing the Log ... Bye Bye! ...
     17004187 System time = 22/01/2021 22:23:38, Simulator time = 17:41:04 (03:41Z)
     17004187 *** FSUIPC log file being closed
    Minimum frame rate was 29.6 fps, Maximum was 30.1 fps
    Average frame rate for running time of 16949 secs = 30.0 fps
    Maximum AI traffic for session was 0 aircraft
    Memory managed: 7796 Allocs, 7795 Freed
    ********* FSUIPC Log file closed ***********

     

    TripleUse.log

×
×
  • 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.