Installation
============
Currently no installer is provided. To install FSUIPC7, simply create a folder (e.g. FSUIPC7)
and copy the FSUIPC7.exe and FSUIPC7.key files to this folder (or simply move the FSUIPC7 folder
created when you unzip to the required location).

If you have previously used FSUIPC, you can also copy and rename your FSUIPC4/5/6.ini file
to the FSUIPC7 installation folder as FSUIPC7.ini, and aksi remember to copy any other auxiliary
files or folders you may use (.mcro, .lua, .dll, Profiles, etc).

Note that, from this version onwards, the SimConnect.dll is no longer required. If you have
already copied that file to your FSUIPC7 installation folder, it can be removed.


Usage Instructions
==================
FSUIPC7 as now a standalone executable, and no longer an embedded dll.
Simply run the FSUIPC7.exe to start.

FSUIPC7 will then sit in the system tray. To open, double-click the tray icon or
use the provided context menu.

A default windows hot key (currently Alt-F) is also acquired when you start FSUIPC7
which will display/open the FSUIPC7 main window. If this hot key cannot be acquired
(e.g. as its already in use) then a message will be logged. You can change the key
assigned by manually editing the following ini parameter:

InvokeFSUIPCOptionsKey=70,12

where, in the above example, 70 is the F key (0x46) and 12 is the modifier (which is
actually a hex value, 0x12 which is VK_MENU, i.e. the Alt key).

For no hot key, use

InvokeFSUIPCOptionsKey=No


Using WideFS
============
If you have a license for WideFS7 that you would also like to use, you can do this by
adding the following lines to the included FSUIPC7.key file:

NameForWideFS=<your WideFS registration name>
WideFSaddress=<your WideFS registration email/address>
WideFS=<your 12 character WideFS key>

You will need to restart FSUIPC7 for the license to take effect.


Missing Functionality
=====================
The following functionality is not currently available in FSUIPC7. We may look at re-instating
some of these items at a later date, if and when such facilites are provided by the MSFS SDK:

1. Mouse Macros (and other mouse functionality, e.g “mouse look”, etc):  pending facilities to be provided
2. lVar access: pending facilities to be provided (if lVars still exist!)
3. AI Traffic management (Traffic Limiter and Zapper): pending facilities to be provided.
    Note that the offsets for AI traffic are populated.
4. Text display facilities: pending SimConnect functionality (some basic functionality may work)
5. Menu facilities: pending SimConnect functionality
6. Weather: apart from a few variables concerning ambient conditions at the aircraft, no other weather information
    is currently availablefor reading or updating


Limitations
===========
Currently no documentation on what key events/controls from the SimConnect API are actually working.
Many do not currently work. These include:
   - events for view control
   - events for slew control
   - events for weather

For view and slew control, it is recommended to assign these functions directly in MSFS for the time
being, as the corresponding events are working when assigned in the sim itself.

SimVar status: it looks like some simulator variables that were previously read/write are now read-only.
For such variables, it will no longer be possible to write/update them.

Text/message/menu display facilities: may not work correctly due to issues with SimConnect_Text API function

Keyboard input is not masked, and so any key assigned in FSUIPC (via any mechanism) will also be seen by the sim.
Keyboard input is also recognised when either MSFS or FSUIPC7 have the window focus. The colon key (’:’) cannot
currently be assigned (as MSFS is continually sending notifications for this key if requested).

Issues
======
1. If you receive the following error when running FSUIPC7:
        The code execution cannot proceed because VCRUNTIME140_1.dll was not found. Reinstalling the program may fix this problem.
   Please see https://answers.microsoft.com/en-us/windows/forum/all/vcruntime140dll/8fe4965d-2013-49cb-816e-17cc2bb0c077?auth=1


Documentation
=============
Currently no User documentation is provided. Documentation for FSUIPC4/5/6 should generally be applicable.
The UI for FSUIPC7 is slightly different, as its now an executable rather than an embedded DLL, but
it should be relatively easy to navigate the UI if you are familiar with previous versions of FSUIPC.

Attached is a spreadsheet (for OpenOffice or Excel)) containing details of the current state, as far as we know,
of the FSUIPC offsets. This is a work-in-progress, and eventually will be used to provide an updated FSUIPC Offset
Status document. I am relying on feedback from FSUIPC7 Beta users/testers to make this as complete as possible.

I will provide further documentation as and when available, and all existing documentation will be updated for use
with FSUIPC7 by the official release date.


Functionality to be Added (ToDo list)
====================================
The following is a short list of some of the main work still to be done in FSUIPC7 (in no particular order):
1. Allow a 'button screen' facility to be added to the main window of FSUIPC7, similar to the functions provided
    by WideClient.
2. Enable FSUIPC7 to work on a client PC (using a networked SimConnect).
    Note that this would be different from using WideClient, as the offset area maintained by FSUIPC7 on
    a client PC would be distinct from the offset area used by FSUIPC7 on the FS PC (although of course the data
    received from the sim to populate the offsets would be the same).
3. Add registration facilities.
4. Re-instate aileron/rudder trim control axes: either when/if axes added back to SDK, or switch to using simulator variables
5. Re-instate functionality in offset 0x2FE0 ('Add-on' menu entries) but allow menu entries to be added to FSUIPC7 menu bar.
6. Add [Programs] section to profiles
7. Provide an installer

Feedback
========
Please use the following sub-forum for all FSUIPC7-Beta / MSFS related issues:
        https://forum.simflight.com/forum/183-fsuipc7-beta-for-msfs/
Where possible, please provide feedback on which offsets are working for both read/write access, together
with any issues found. Any problems with events/controls will for the time being be collated, and be addressed as and when we
have further documentation in this area.

Attached is a spreadsheet (for OpenOffice or Excel) containing the status of each offset. I will update this on a regular
basis from feedback, internal testing and after MSFS SDK updates.


John Dowson, 17th August 2020