747IPC

PS1 Data Capture

These are legacy versions of 747IPC. The latest versions are available from SourceForge. You are strongly advised to avoid using these legacy versions !

Features
(2.6)
  1. Support for PS1.3-EE4.
  2. Support for the overhead panel generator Drive Disconnect switches.
  3. Partial support for the Fire Test button.
  4. Bugfix for the APU Selector switch.
  5. Keypress animation removal now an option.
  6. New keys "IPC.caution" and "IPC.warning" that report the status of PS1's master caution/warning light.
  7. Auto-detect PS1 every 3 seconds upon pressing the "Connect PS1" button, until PS1 is found. This saves on having to Alt-Tab from PS1 to 747IPC to manually push the button.
(2.5A)
  1. Overhauled the keystroke injection mechanism for CDU and overhead panel switches.
  2. New button to disable PS1's keystroke auto-accel feature.
  3. Updated VIDTSR.COM that eliminates ND flickering with overhead panel keypresses.
(2.4)
  1. Generic IPC.poke mechanism for injecting any data into PS1 memory.
  2. IPC.pokeSust mechanism for sustained poking.
(2.3)
  1. Support for hardware overhead panels and CDU -- uses keystroke injection via VIDTSR.
  2. VMREAD module now reads VMREAD.CFG for user-specified variable capture. Format of this file is identical to that for the VMREAD program.
  3. User interface refined: comboboxes for Broker host and PS1 path.
  4. Experimental data injection for thrust lever position. Uses Broker key "IPC.pokeN1" to set thrust for each engine.
(1.99)
  1. New user interface: you can configure network and path settings graphically. You have control over PS1 and Broker connections.
  2. 747IPC.INI configuration file (automatically generated at first run). You can still use the old command line options.
  3. Improved error detection and reporting. For bug reports and requests for help, please send me the output of the "Debug" button.
  4. New version numbering system to avoid confusion.


Below are legacy versions of 747IPC -- avoid them !! The latest versions are available from SourceForge.

Version 2.6 (5 October 2003): IPC26.ZIP (23,288 bytes).
Version 2.5A (19 May 2003): IPC25A.ZIP (23,688 bytes).
Version 2.4 (15 April 2003): IPC24.ZIP (23,136 bytes).
Version 1.99 (16 Dec 2002): IPC199.ZIP (15,818 bytes).
Previous version for Win 95/98/NT/2K/Me/XP (25 July 2002): 747IPC.ZIP (12,272 bytes).
Previous version for Win9x only (10 June 2002): 747IPC9X.ZIP (6,204 bytes).
Older version for Win9x only (8 May 2002): 747IPC_OLD.ZIP. (PS1.3-EE3 not supported)

Visit Ed Parker's homepage which contains useful tips and diagrams on how PS1, 747IPC, Broker, Visual744 and MSFS connect together.


Documentation
Until formal docs are written, here's a post from the PS1 Message Board, 15 April 2003:

Broker key "IPC.poke {xxxx yy zz}"
where xxxx is the offset in PS1's data segment of the variable to be poked, in hexadecimal only;
yy is the data to be poked, in decimal;
zz is the size of the data in bytes, decimal.

"IPC.pokeSust {xxxx yy zz}"
arguments as above, however 747IPC's behaviour is different. The data will be repeatedly poked at up to 20 Hz, until a cancellation order is received. This takes the form
   "IPC.pokeSust {xxxx 0 0}"
where xxxx must be the same value as the previous start order.

Note that you can have up to 8 addresses in the IPC.pokeSust list at a ny time. You must individually cancel each address that was previously added to the list, as detailed above.

finally, for users with throttle hardware,
"IPC.pokeN1 {aa bb cc dd}"
where the 4 arguments are in decimal and represent the "target N1 equivalent" in percentage units x 10.

eg on the GE-engine configs,
   "IPC.pokeN1 {500 500 500 500}"
will set 50.0% N1 on all 4 engines. On non-GE types, the actual N1 may not be 50.0% but it should be true that any given value will always correspond to the same thrust lever position in PS1.

Ivan Ngeow WSSS <rimb1991 at yahoo dot com>
Last modified 2 December 2007