ACE Economy Gauge for Microsoft Flight Simulator 98
===================================================
Version 1.2.0, 30-Dec-1997, Ian A Young
=======================================
Introduction
============
I built this gauge so that I could figure out the flight characteristics
(in particular, cruise characteristics) of aircraft when I wasn't used
to them. The Microsoft Panel SDK came along at just the right moment
to allow me to ditch the pencil-and-paper work and replace it with
just a few 10-hour debugging runs (just kidding).
The other major use of this gauge is as a fuel flow meter if you are
flying an aircraft for which decent analogue fuel gauges are not
available: using the Cessna fuel gauges is all very well aesthetically,
but a fuel flow gauge is not much use if it stays pegged at the maximum
reading unless you have the engine idling. My understanding of FS98
is that thrust is usually proportional to fuel burn rate, so this
readout also gives you a broad indication of how much thrust you are
getting.
The version is the general public release, and if you already have a
copy of V1.0.0 or V1.1.0, you should delete them now.
Contact Me
==========
This is new software, and I'm looking for bug reports and suggestions,
although I don't promise to fix or implement anything in particular :-)
So, let me know if you find anything interesting:
Ian Young <ian@rats.demon.co.uk>
My personal web site is at the following URL:
http://www.rats.demon.co.uk
Copyright
=========
All files Copyright (C) Ian A Young, 1997.
I made this. You can use it, or give away it to someone else, and that's
fine by me if you include this file and don't modify anything in any way.
You can't sell it to anyone, and you can't claim that it's yours.
Installation
============
Copy the file IAY.AceEconomy.gau into your Flight Simulator gauges directory.
On my machine, that's:
C:\Program Files\Microsoft Games\Flight Simulator\Gauges
This makes the new gauge available to any panel that uses it. Now you need
to set up a panel configuration file so that the gauge appears on an actual
panel.
Example 1: Cessna Skylane 182S Panel Temperature Gauge
======================================================
You can use this gauge in place of any other gauge, if you're in a hurry and
can do without something else. For example, the default aircraft in Flight
Simulator is a Cessna 182S which has a temperature gauge on its main panel.
This so happens to be the gauge that the background bitmap for the ACE economy
gauge is based on, so it is exactly the right size and shape. Open the panel
configuration file for this aircraft in notepad or some similar text editor.
On my machine, that file is in:
C:\Program Files\Microsoft Games\Flight Simulator\Aircraft\C182\Panel\Panel.cfg
In the [Window00] clause of this file, the temperature gauge appears like this:
gauge15=Bendix_King.DME, 477, 34, 68
gauge16=Bell_206B.Temperature, 549, 42, 51
gauge17=Bendix_King.ADF.Model_A, 516, 66
gauge18=Cessna_182.RPM, 513, 156
Duplicate the second line, comment one copy out with a semi-colon (so that
you can go back one day) and replace the gauge name, thus:
gauge15=Bendix_King.DME, 477, 34, 68
;gauge16=Bell_206B.Temperature, 549, 42, 51
gauge16=IAY.AceEconomy, 549, 42, 51
gauge17=Bendix_King.ADF.Model_A, 516, 66
gauge18=Cessna_182.RPM, 513, 156
Save the file back and start Flight Simulator, and you should find that
the temperate gauge in the top-right corner of the panel has turned into
the ACE Economy gauge, probably saying "0.44 GPH" or something similar.
For reference, the three numbers are an X and Y position on the panel (in
panel work units) and a size in work units.
Example 2: Cessna Skylane 182S Panel ADF Gauge
==============================================
You don't have to replace a gauge that is exactly the right size and shape.
Let's go back to the original panel and replace the ADF gauge instead:
gauge15=Bendix_King.DME, 477, 34, 68
gauge16=Bell_206B.Temperature, 549, 42, 51
;gauge17=Bendix_King.ADF.Model_A, 516, 66
gauge17=IAY.AceEconomy, 516, 66, 80
gauge18=Cessna_182.RPM, 513, 156
Note that I've set the size of the gauge to 80 units rather than 51. The
result is a big hole in the panel where the ADF gauge was, and a somewhat
larger economy gauge bolted into the top half of it. The temperature
gauge has come back again.
If you're working through these examples, you'll need to either close and
restart Flight Simulator, or load another aircraft and then reload the
182S to see the changes.
Example 3: Lets Have Two Of Them
================================
Lets say you wanted to have two ACE Economy gauges in one aircraft.
For example, you might like a little one on the main panel and a
larger one in an engine quadrant panel. Or, more spookily, you might
like two replacing your Cessna's ADF gauge so that you can show
gallons-per-hour in one and gallons per mile in the other. Well, you
can't just include the gauge twice: what happens is that both of them
are supressed by Flight Simulator. What you have to do is to create
a copy of the .GAU file in your \gauges directory. Lets say you
duplicate IAY.AceEconomy.gau and call the copy IAY.AceEconomy.2.gau
Now, you can add an extra gauge to your 182S main panel. It has to
have the higher number after all of the other gauges. Here's an
example:
gauge15=Bendix_King.DME, 477, 34, 68
gauge16=Bell_206B.Temperature, 549, 42, 51
;gauge17=Bendix_King.ADF.Model_A, 516, 66
gauge17=IAY.AceEconomy, 516, 66, 80
gauge18=Cessna_182.RPM, 513, 156
gauge19=Cessna_182.Switches, 24, 243
gauge20=Cessna_182.Controls, 287, 244
gauge21=IAY.AceEconomy.2, 516, 106, 70
If you start Flight Simulator now, you'll see two apparently identical
gauges, both reading "0.44 GPH". I've made the new one a different
size just to make the point that the two gauges are completely
independent, and if you click on one of them to change its display
mode it won't affect the other one at all.
Example 4: Don Alexander's DC-3 Engine Panel
============================================
If you use Don Alexander's fine DC-3 panel for Flight Simulator, as I do,
you can insert an ACE Economy gauge where it will do most good, above
the expanded engine controls. The panel.cfg file for this panel has
the following at the end of the [Window03] section:
gauge08=Generic.Controls.2, 10, 285
Just add another gauge in numeric order as follows:
gauge08=Generic.Controls.2, 10, 285
gauge09=IAY.AceEconomy, 63, 10, 60
The resulting gauge fits neatly between the big yellow numbers at the
top of the panel.
In my own installation, I have a second copy of the ACE Economy gauge
on the main panel at the top left, showing total fuel flow. I had to
repaint the panel background bitmap to make this look nice, so I
won't include the details here.
Operating The Gauge
===================
When the gauge starts up, it is in a total flow display mode, where it
displays "n GPH", for example "25.6 GPH". The number is the sum of
the current flow into all of the engines on your aircraft, in gallons
per hour. If the number is small, you'll get more digits after the
decimal point; if the number is large, the fractional part will disappear
altogether.
You change the gauge's mode by clicking it. The gauge's other three
modes all involve computations involving the indicated airspeed,
though, and to make things simple the display won't indicate a reading
if the indicated airspeed is too low. So, let's get airborne.
The second mode the gauge has is "gallons per mile". This is the inverse
of the "miles per gallon" you might get quoted for your car, and things
are more economical if this is a smaller number, all other things being
equal: you'll cover the same distance using less fuel if you have a low
GPM figure. This is obviously going to be most critical if you are
planning a long flight and might not have enough fuel to make it.
The third mode shows the aircraft's range in nautical miles, given the
present fuel consumption, airspeed and amount of fuel remaining.
The fourth mode for the gauge is only of interest to pilots working for the
ACE virtual airline (http://ace.1earth.net/index.html). ACE charges
just one virtual dollar for each gallon of fuel, but $5000 every 20
hours flying for servicing. The cost mode (which displays something
like "$1.23 PM") indicates the amount of money you're spending for
each mile you fly, including gas used and the appropriate proportion
of the regular service fee. ACE pilots may be surprised at the
results: flying faster can reduce the implied cost of a flight quite
a bit, even if you double your fuel consumption.
If you click past the last mode, the gauge cycles back to the first
mode again.
I use the gauge by setting the autopilot for altitude and heading
hold, then trying different settings of throttle, prop and mixture
controls. For each setting, I let the aircraft settle for a couple
of minutes before recording airspeed and the three results from the
gauge. The resulting table gives me a good idea of what kind of
cruise settings I want under different circumstances, and how much
fuel I'm likely to consume in a flight I'm planning.
Your Mileage May Vary
=====================
If you build a cruise table in the way described above, there are
some wrinkles you should look out for. Firstly, note that everything
changes depending on cruise altitude and ambient winds. This is
partly to do with the physics of the engine and propeller, but also
related to the fact that the gauge uses indicated airspeed rather
than, say, groundspeed. Indicated airspeed will be well off speed
across the ground if there are significant winds or if you fly high.
So, you should really build a cruise table in zero ambient wind, and
flying at your intended cruise altitude.
Having said all that, if you build a cruise table at 35000 feet (where
indicated airspeed is much much smaller than ground speed) you can
still use the figures to compare different settings.
Speed From DME vs. Indicated Airspeed
=====================================
If you click the gauge once with the RIGHT mouse button, the digits
will turn green to indicate that the speed used in calculations
is now taken from the aircraft's Distance Measuring Equipment (DME)
indicator, rather than the indicated airspeed. You can return to
obtaining your speed from IAS by right-clicking once more. The
gauge digits will return to their original red colour to let you
know you've done this.
To use this facility sensibly, start by setting altitude and heading
holds on the autopilot. Then, tune in a nearby VOR and twiddle the
OBS dial until you select a radial leading directly to or from the
VOR. Now select NAV mode on the autopilot so that you are heading
directly towards or directly away from the VOR. The resulting
speed indicated on the DME will be more accurate than indicated
airspeed in letting you know how fast you are travelling over the
ground, particularly if you are flying at high altitudes.
If you use this facility but don't fly directly along a radial, the
gauge will still indicate but the results will be pretty meaningless.
I've considered having the gauge refuse to indicate unless you
are flying a sensible course relative to the VOR, but that might be
egging the pudding a bit.
Known Problems
==============
If you resize the panel the gauge is on, or otherwise cause Flight
Simulator to unload and reload the gauge, it will start again in
its fuel flow and IAS modes. If I can figure out how to distinguish
between different instances of the gauge, it may be possible to store
mode settings in the system registry to alleviate this problem.
Revision History
================
V1.2.0
======
Toned down the green used to indicate DME speed mode from "purest green"
to something less hard on the eyes and closer to real displays. Actually,
the new green is stolen from a photograph of some electronic equipment.
Reworked the gauge sources for the 19-Dec-1997 version of the Panel SDK.
This simplifies the source quite a bit, although the result is identical.
V1.1.0
======
Discovered that the background bitmap had ended up as a 24-bit colour image.
Going back to an 8-bit bitmap saves quite a lot of space in the GAU file.
After exchange with Russ Glaeser at Microsoft, stopped using TICK18 to make
sure the gauge got refreshed every 1/18th of a second and therefore after
every mouse click, and changed to explicitly calling the SET_OFF_SCREEN
macro, which seems to cause a redraw. This should make the gauge more
frame-rate-friendly.
The gauge file now has a proper version number, product name, copyright
notice and all the rest.
Revised the readme file quite a bit.
Added a range mode, which lets you know how far you can fly in the
current configuration before running out of fuel.
The gauge can now take airspeed from the NAV1 DME indication, which is
more accurate, particularly at high altitudes.
If the gauge is suppressing the readout because of insufficient speed,
it now just blanks the digits and allows the unit part to be
displayed. So, you now know what you're _not_ looking at.
V1.0.0
======
First public release.