Changeset 1078:a1e7d4f63210


Ignore:
Timestamp:
02/14/23 15:15:42 (23 months ago)
Author:
István Váradi <ivaradi@…>
Branch:
python3
Phase:
public
Message:

PMDG on MSFS 2020 support (re #364)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/mlx/fsuipc.py

    r1077 r1078  
    17451745        super(PMDGBoeing737NGModel, self).addMonitoringData(data, fsType)
    17461746
    1747         if fsType==const.SIM_MSFSX or fsType==const.SIM_P3D:
     1747        if fsType==const.SIM_MSFSX or fsType==const.SIM_P3D or fsType==const.SIM_MSFS2020:
    17481748            print("%s detected, adding PMDG 737 NGX-specific offsets" % \
    1749                   ("FSX" if fsType==const.SIM_MSFSX else "P3D",))
     1749                  ("FSX" if fsType==const.SIM_MSFSX else
     1750                   "P3D" if fsType==const.SIM_P3D else "MSFS 2020",))
    17501751            self._addOffsetWithIndexMember(data, 0x6500, "b",
    17511752                                           "_pmdgidx_lts_positionsw")
     
    17551756            self._addOffsetWithIndexMember(data, 0x652c, "H", "_pmdgidx_aphdg")
    17561757            self._addOffsetWithIndexMember(data, 0x652e, "H", "_pmdgidx_apalt")
    1757             self._addOffsetWithIndexMember(data, 0x65cd, "b", "_pmdgidx_xpdr")
     1758            if fsType==const.SIM_MSFS2020:
     1759                self._addOffsetWithIndexMember(data, 0x0b46, "b", "_pmdgidx_xpdr")
     1760            else:
     1761                self._addOffsetWithIndexMember(data, 0x65cd, "b", "_pmdgidx_xpdr")
    17581762        else:
    17591763            print("FS9 detected, adding PMDG 737 NG-specific offsets")
     
    17731777                                                                   timestamp,
    17741778                                                                   data)
    1775         if self._fsType==const.SIM_MSFS9:
     1779
     1780        fsType = self._fsType
     1781        if fsType==const.SIM_MSFSX or fsType==const.SIM_P3D or \
     1782           fsType==const.SIM_MSFS2020:
     1783            state.apMaster = data[self._pmdgidx_cmda]!=0
     1784            state.apHeadingHold = data[self._pmdgidx_aphdgsel]!=0
     1785            state.apAltitudeHold = data[self._pmdgidx_apalthold]!=0
     1786
     1787            # state.strobeLightsOn = data[self._pmdgidx_lts_positionsw]==0x02
     1788            # state.xpdrC = data[self._pmdgidx_xpdr]==4
     1789            if fsType==const.SIM_MSFS2020:
     1790                state.xpdrC = data[self._pmdgidx_xpdr]==4
     1791            else:
     1792                state.strobeLightsOn = None
     1793                state.xpdrC = None
     1794        else:
    17761795            if data[self._pmdgidx_switches]&0x01==0x01:
    17771796                state.altimeter = 1013.25
     
    17851804            # state.strobeLightsOn = None
    17861805            # state.xpdrC = None
    1787         else:
    1788             state.apMaster = data[self._pmdgidx_cmda]!=0
    1789             state.apHeadingHold = data[self._pmdgidx_aphdgsel]!=0
    1790             state.apAltitudeHold = data[self._pmdgidx_apalthold]!=0
    1791 
    1792             # state.strobeLightsOn = data[self._pmdgidx_lts_positionsw]==0x02
    1793             # state.xpdrC = data[self._pmdgidx_xpdr]==4
    1794             state.strobeLightsOn = None
    1795             state.xpdrC = None
    17961806
    17971807        state.apHeading = data[self._pmdgidx_aphdg]
Note: See TracChangeset for help on using the changeset viewer.