fredb [Sat, 4 Mar 2006 20:21:32 +0000 (20:21 +0000)]
Jean-Yves Lefort :
I have implemented a Honeywell MK VIII EGPWS emulation for FlightGear.
The MK VIII is an Enhanced Ground Proximity Warning System aimed at
regional turboprop and small turbofan aircrafts such as the Citation,
Citation Bravo, B1900D, Beechcraft 99 and L410.
Frederic Bouvier:
make the MSVC compilation possible. Rearrange base package directories.
durk [Sat, 4 Mar 2006 08:49:36 +0000 (08:49 +0000)]
Improved selection of active runway (currently AI traffic only).
The original code selected the most preferable runway combination,
regardless of which combination was currently active. This patch
builds in some additional resistance against change, by keeping
track of which runways are already in use, and forces a change
in active runways only when new (wheather/time of day) conditions
force it to do so, resulting in much more consistent runway assignment.
behavior.
mfranz [Fri, 3 Mar 2006 19:43:41 +0000 (19:43 +0000)]
improve error message: if festival doesn't seem to be listening, then it's
probably blocked by not being able to open a sound device (because fgfs is
using the only available device already).
mfranz [Thu, 2 Mar 2006 10:41:48 +0000 (10:41 +0000)]
let removelistener() return the number of remaining Nasal listeners. (We
need to return nil for errors and something else for success, so we can
as well return something (remotely) useful.)
andy [Wed, 1 Mar 2006 22:59:58 +0000 (22:59 +0000)]
Fixes a bugs in the handling of the holdback mount point (by Mathias),
and in the calculation of the launchbar angle (by Vivian).
It also calculates the holdback angle, and sets a Boolean value which
can be used to initiate the release of the catapult strop submodel at
the appropriate moment (new code by Vivian).
andy [Mon, 27 Feb 2006 23:35:02 +0000 (23:35 +0000)]
Inspired by a patch from Vivian, this adds a settable "WASTEGATE"
control to piston engines that allows external scripts to control the
turbo/supercharger boost programatically by setting this axis to
values in the range [0:1]. It also adds a "turbo-lag" attribute (a
time in seconds) to engines implementing turbocharger spooling delays.
This isn't terribly well tested, but doesn't seem to have broken
anything.
david [Mon, 27 Feb 2006 02:24:14 +0000 (02:24 +0000)]
Change from Dave Perry:
I am attaching a trivial patch that changes the normalization from 24 to
12 in turn_indicator.cxx. With this change, the pa24 tc has a turn
indicator spin value in the property tree of 0.9996 and the same value
for the pa28-161 is 1.0, so there is no harm to a 24 volt electrical
system in this change. Should the battery or alternator put out a lower
voltage than 12 volts, the spin value goes down and the tc shows a
negative turn that increases as the voltage gets less. This file shows
you as the author. If you are comfortable with this change, commit it
to cvs and the tc will be correct even for 12 volt systems.
david [Sun, 26 Feb 2006 16:46:51 +0000 (16:46 +0000)]
Allow YASim flight models to override the hard-coded fine and coarse
propeller pitch stops for constant speed propellers. The default
values are the same as the previous hard-coded values. The new
attributes, "fine-stop" and "coarse-stop", are documented in the base
package, Docs/README.yasim.
durk [Thu, 23 Feb 2006 21:42:11 +0000 (21:42 +0000)]
Bugfix: variable fp was deleted in both AIBase::~AIBase() and AIAircraft::AIAircraft(), resulting in a segmentation fault.
Here the delete fp; statement is removed from the AIAircraft() destructor.
daveluff [Wed, 22 Feb 2006 19:21:29 +0000 (19:21 +0000)]
A couple of hacks to fix cygwin compilation. These may not be the correct fix, but they prevent new cygwin users getting an almost instant compile error following make
mfranz [Tue, 21 Feb 2006 21:29:19 +0000 (21:29 +0000)]
disable old ATC display. This is now done via screen.log.write() messages.
(Decide after 0.9.10 if it should be replaced with a new C++ implementation,
or if the Nasal one is good enough.)
mfranz [Tue, 21 Feb 2006 13:19:33 +0000 (13:19 +0000)]
- remove unused pthread mutex and condition
- remove cleanup handler that unlocks unused mutex
- make the result_queue a locking queue (blocking is only done in the
pop() anyway, and this isn't used in the thread at all)
- don't disallow thread cancelling in the request_queue's pop(), which
is the only cancellation point in this thread
ehofman [Sun, 19 Feb 2006 17:28:31 +0000 (17:28 +0000)]
Mathias Fröhlich:
This patch makes use of the vectors now available in simgear with that past
patch. And using that it simplyfies the carrier code somehow.
- Small additional factory's to the quaternion code are done in the simgear
part. Also more explicit unit names in the factory functions.
- The flightgear part makes use of them and simplyfies some computations
especially in the carrier code.
- The data part fixes the coordinate frames I used for the park positions in
the carrier to match the usual ones. I believed that I had done so, but it
was definitly different. Also there are more parking positions avaliable now.
ehofman [Fri, 17 Feb 2006 09:43:33 +0000 (09:43 +0000)]
Mathias Fröhlich:
The new multiplayer patch with an extension to transmit some properties with
the base package. The properties are transmitted in a way that will not
immediately brake the packet format if we need new ones.
Even if the maxmimum number needs to be limited somehow, that format might
work well until we have an improoved packet format which is even more compact
and that does not require to retransmit redundant information with each
packet.
That part is relatively fresh and based on that what Oliver provides on his
multiplayer server web page.
The properties are transferred to the client and I have modified the seahawks
rudder animation property to use a relative property path to verify that it
works appart from the fact that you can see it changing in the property
browser.
The movement is still a bit jerky, but that can be fixed/tuned later without
again braking the packet format.
ehofman [Fri, 17 Feb 2006 08:54:22 +0000 (08:54 +0000)]
Olaf Flebbe:
This patch makes FlightGear at least compile on MSVC. I hope I have removed
reference of my other local changes. DSP and DSW files are included for
reference. They have been reconstructed with am2dsp.pl. I had to introduce a
change to am2dsp because of the need of filenames with embedded spaces. (Yuck)
The major direction is to remove clutter like the _USE_MATH_DEFINES and have it
on the compiler command line sice there is no central include file. You will
have to put it on the command line for your locale Project files, if it not
there, already. I added the _CRT_SECURE_NO_DEPRECATE define for 2005, since it
does no harm to other VC version.
mfranz [Thu, 16 Feb 2006 21:02:09 +0000 (21:02 +0000)]
in fgWarpMouse() we need to flush all mouse motion events before we can set
the mouse pointer to a new position. Otherwise it can happen that the new
position is first set, but then come a few still unprocessed events for the
old position. This makes ugly jumps in mouse view mode.
david [Thu, 16 Feb 2006 01:30:28 +0000 (01:30 +0000)]
The "constrained" property for a mouse mode now actually constrains
the mouse rather than wrapping it. Wrapping around to the other side
of the screen has very bad consequences when using the mouse for
flying or viewing -- it can result in sudden jumps in the controls or
the viewpoint when the mouse jumps to another side of the screen.
Right now, the mouse is constrained to stay between 25% and 75% of the
screen on both the X and Y axis -- whenever it hits an edge, it jumps
back to the centre of the screen again (which causes no control or
view jump).
mfranz [Mon, 13 Feb 2006 20:08:04 +0000 (20:08 +0000)]
screenPrint() is obsolete. Use screen.log.write() for the same purpose,
or write to the color properties in /sim/screen/. If this Nasal/GUI
implementation turns out to be too slow, we'll write a generic OpenGL/plib
version simliar to the ATCdisplay code. (OK'ed by Andy and Stuart)
mfranz [Mon, 13 Feb 2006 19:59:07 +0000 (19:59 +0000)]
screenPrint() is obsolete. Use screen.log.write() for the same purpose,
or write to the color properties in /sim/screen/. If this Nasal/GUI
implementation turns out to be too slow, we'll write a generic OpenGL/plib
version simliar to the ATCdisplay code. (OK'ed by Andy and Stuart)
mfranz [Mon, 13 Feb 2006 19:46:03 +0000 (19:46 +0000)]
screenPrint() is obsolete. Use screen.log.write() for the same purpose,
or write to the color properties in /sim/screen/. If this Nasal/GUI
implementation turns out to be too slow, we'll write a generic OpenGL/plib
version simliar to the ATCdisplay code. (OK'ed by Andy and Stuart)
mfranz [Mon, 13 Feb 2006 16:49:18 +0000 (16:49 +0000)]
set /sim/fg-home in analogy to /sim/fg-root. This is useful for various
scripts that load/write user specific data that shouldn't go to PWD, and
can't go to $FG_ROOT (due to permissions and clean separation of 'official'
data and local modifications)
mfranz [Sun, 12 Feb 2006 20:37:57 +0000 (20:37 +0000)]
Just a gimmick: make background color configurable. Maybe some dark color
might look nicer for certain aircraft specific splash screens. Test with:
$ fgfs --prop:/sim/gui/colors/splash-screen/blue=0.35
mfranz [Sun, 12 Feb 2006 19:43:53 +0000 (19:43 +0000)]
only user specified negative coords are interpreted as relative to the upper
right corner, not those that are result of centering a dialog if no x/y are
given. This centers screen.log messages correctly. But maybe we have to
rethink that special meaning of negative coords altogether.
ehofman [Sat, 11 Feb 2006 13:16:56 +0000 (13:16 +0000)]
Mathias Froehlich:
This patch removes some useless indirection when creating AIModels. It
obsolets AIScenario*.
AIEntities are just an intermediate copy of an other intermediate copy of an
xml file on the way from the ai scenario configuration file to the AIModels.
As such the AImodels can now be created directly from the property tree read
from the scenario file.
This reduces the amount of work needed to add an other AIModel and reduces the
amount of copy operations done during initialization.
It also moves internal knowledge of special AI models into these special AI
models class instead of spreading that into the whole AIModel subdirectory
which in turn enables to use carrier internal data structures for carrier
internal data ...
Also some unused variables are removed from the AIModel classes.
I believe that there are still more of them, but that is what I stumbled
accross ...
Tested, like the other splitouts these days in a seperate tree and using the
autopilot for some time, and in this case with a carrier start ...
mfranz [Sat, 11 Feb 2006 11:51:20 +0000 (11:51 +0000)]
rename user `preferences.xml' to `autosave.xml'. The former name lead to
problems because a lot of people already have their *real* preferences
set in ~/.fgfs/preferences.xml (and don't want fgfs to stomp over them),
because the name doesn't tell people that their data aren't save there
(comments!), and because this is inconsistent with the global preferences.xml
file, where user changes *are* respected.
daveluff [Fri, 10 Feb 2006 23:19:45 +0000 (23:19 +0000)]
Implement some of the inner-knob-out scan functionality. The waypoints of the active flightplan can now be scanned on the NAV4 page, and will become the default direct-to waypoint if dto is pressed whilst scan in on on the NAV4 page. Scan functionality on the waypoint pages is still TODO.
mfranz [Fri, 10 Feb 2006 20:15:01 +0000 (20:15 +0000)]
preliminary fix for the "golf foxtrot sierra follow the golf foxtrott sierra"
problem; Of course, this needs to respect the /sim/user/callsign settings
as a next step.
ehofman [Thu, 9 Feb 2006 12:29:05 +0000 (12:29 +0000)]
Vivian Meazza:
This patch is a combined effort by Gregor Richards, Oliver Schroeder, and
Vivian Meazza (and code cleanups and improvements by Erik Hofman). It corrects
the bug in which a Multiplayer model responds to local inputs, and the view
number bug which caused certain aircraft to appear as cockpit only models. It
passes remote properties over the net, and all major control surfaces and gear
are now animated correctly, providing that the local ~model.xml file contains
no leading "/" in the <property></property> data entries. MP objects
are now extrapolated using 1st and 2nd derivatives to make their movement
appear more smooth. The sim is now halted while a new client joins the net.
Known problems with MP are non-display of the remote client under certain
circumstances of starting/resetting, and a freeze on starting. These bugs are
long standing, and are not addressed by this patch.
Special thanks must go to AJ Macleod for his patient testing of this patch over many evenings.
We have also moved part of multiplayer into AIModels as part of the ongoing
development of MP.
mfranz [Wed, 8 Feb 2006 17:18:24 +0000 (17:18 +0000)]
make sure the index is in the array, which isn't necessarily the case,
because a dialog button can get pressed when its callback isn't available
any more. Ideally, we would close the dialog or update its buttons when
this happens. But this requires bigger changes.
mfranz [Tue, 7 Feb 2006 22:35:22 +0000 (22:35 +0000)]
emit to different message properties:
/sim/messages/{atc,pilot,ai-plane,ground,approach}
These can the be used for differenct screen.log colors and for different
voices. (Aircraft & tutoruals may want to write to /sim/messages/copilot)