EPL Files and Middleware Files

The files on this page actually bring the cockpit to life. The procedures in my EPL code (EPL stands for EPIC Programing Language) switch on LEDs, read frequencies from FS and set the displays in the cockpit. Without them, the cockpit would be a rather useless collection of buttons, switches and other assorted hardware.

In version 1 of my code I mainly programed simple keyhits that were sent to MS-Flight Simulator after a button was pressed or a switch turned. Even so, some of this code is rather sophisticated. It uses if-then functions and bi-directional communication between the hardware and MSFS. In some cases it creates functions for a cockpit device that were not available in MSFS (or add-on software).

Version 3 marks the almost complete switch from keyhit generation to memory offsets. Offsets control virtually everything in FS and Project Magenta. Offsets can be read and written to via a network - extrely usefull for my 7-PC-setup. Pete Dowson's FSUIPC documentation contains a list of all offsets used by flight simulator.

Since EpicMapper was discontinued, I moved to the excellent FS-Communicator as middleware. The development of FS-Com now sadly is also discontinued, but it still works flawlessly in my cockpit.

My files will NOT work in other cockpit setups because of differences in wiring, button asignments, etc. I recommend you use them as a turorial only. Since EPL code is sometimes hard to understand, I included extensive comments for most of the procedures. If you find parts of my code useful, just copy and paste it into your own project and adapt as needed. Some of my programing will look weird at first, but should become clear when viewed together with the corresponding panels. Detailed info on all panels can be accessed from the Layout Overview page.

Since the cockpit went through several upgrades, the programing has changed quite a bit over the years. I decided to leave files from previos versions of my cockpit on the site as a reference and to show the progress of the project over the years (and, I admit, for nostalgic reasons).

The following files can be downloaded and used but may not be included in commercial distributions without my explicit permission. Use them at your own risk.


Version 3 - EpiCenter V. 1.082

Changes: Upgrade from FS 2002 to FS2004. Switch from EpicMapper to FS-Communicator as middleware. EPIC Firmware 7.1



All definitions and procedures - with even more extensive comments than before! 3.000 LOC
Test.hpl 2007/03 Foreward declarations - a necessity with newer versions of EpiCenter
devices.hpl 2007/03 Some more buttons and switches, but basically the same as before...
EpicHID.inc 2007/03 EPICUSB HID ENQUE16/NQW commands
macros.inc 2007/03 Macros used for conversions, etc.
cockpit.cfg 2007/03 FS-Communicator config file - contains all settings in FS-Communicator


Version 2 - EpiCenter V.0.52

These files were created after the first big upgrade of the cockpit. Changes included: Upgrade from FS98 to FS2002. Switch from ISA to USB EPIC, use of EpicMapper as middleware between MSFS/FSUIPC and EPIC, providing simplified bi-directional communication between these 3 components.

29/04/03 The actual epl file, containing all procedures to make the cockpit work. More than 4.000 LOC with many procedural comments and explanations.
29/04/03 The (in)famous device descriptor file, with many comments
29/04/03 Definitions for the different modules on the EPIC bus
29/04/03 The place where macros are kept. The epl file calls them with "#include"
29/04/03 ini file for EpicMapper. Attention: EpicMapper does not support FS2004!
29/04/03 ZIP file containing all of the above files