How to configure crrcsim
------------------------

Currently there are five means of adapting crrcsim to your needs:

1. Hit escape to show the graphical user interface and change settings there.
   As of today, the important (but not all) settings can be adjusted there.
2. Editing the file crrcsim.xml. This is the new config file for crrcsim. It
   does not look that easy, but it provides structure, which has several
   advantages. Once you understood that structure (just try), you'll know how 
   to handle most things. Not every option in this file is effective yet. Some are 
   written down so a developer knows what to implement in the future and
   how to configure it.
   Take a look at this file!
3. Using command-line options. call
     crrcsim --help
   to see what's available. Anything specified on the command line should
   override what's given in one of the files.
   The airplane to be used can only be configured using command-line options!
4. Modifying crrc_config.h before compiling the program. Currently you can
   change some keybindings there.
5. Editing the source code. This is just for developers, of course ;-)




Graphics setup
--------------

See options provided by graphical user interface, except the following ones:
    video.color_depth             How many bits per pixel? Usually 8, 16, 24
    video.shading.option          'SMOOTH' interpolation of colors, or 'FLAT'
    video.textures.fUse_textures  '1' to use textures (requires 3D acclerator)
    video.textures.fUse_mipmaps   '1' or '0'. The use of mipmaps smoothes out distant textures.


Joystick setup
--------------

The binding of buttons and axes can be configured via the GUI.
See input scaling below.


Input scaling
-------------

For joystick and mouse input you can make use of input scaling.
Here we added lots of work to make the joystick and mouse inputs at least
evenly capable to a microcontroler transmitter control. this means you can
now mix exp, set output rate, correct input offset and input scaleing. a
complete description would get too long here, so just try to figure out this
simplified formula: 

output = rate * expmix(input * scale + trim, exp) + offset

to help getting the best settings, you should always start with 1.0 for the
factors (or -1.0 to invert it) and 0.0 for the addends, then call crrcsim
with '-v' and watch the values. The values should be around
from -0.5 to +0.5 and for the throttle around 0.0 to 1.0.



Using a transmitter interface
-----------------------------

Several methods of plugging your transmitter to the computer are available.
Most things can be configured using the graphical user interface.
  * Parallel port interface by Jan Kansky (linux, win32)
    inputMethod.method = PARALLEL
    Setup the LPT to use in crrcsim.xml    
  * Sound card interface (linux, win32, mac)
    Should work with any transmitter with available output PPM signal. A
    simple adapter (a wire) is connected between rc transmitter and input audio
    port of the PC/mac.   
    inputMethod.method = AUDIO
  * RCTRAN2 (linux, kernel version 2.4 and 2.6)
    The PPM signal is connected to the parallel port. You need to compile
    the kernel module rctran2, which is included. See
    interface_rctran2/kernel_module/README.txt
    inputMethod.method = RCTRAN2    
  * RCTRAN (linux, kernel version ?, does it work at all?)
    Same hardware as RCTRAN2, but uses another kernel module.
    inputMethod.method = RCTRAN    
  * SERIAL2 (currently linux only)
    A very special interface, only useful if you want to send control signals
    via RS232.
    inputMethod.method = SERIAL2
    
Most interfaces are PPM-based. You can setup the inputMethod.radio_type in crrcsim.xml,
for example JR or FUTABA (all available options are listed there).

Call crrcsim with the commandline option '-v' to test your transmitter
interface setup.


Zoom control
------------

zoom.control can be set to one of: MOUSE, KEYBOARD




Configuring how the airplane should be started
----------------------------------------------

You can adjust the initial altitude (relative to ground), velocity (factor
to the airplane's natural speed) and angle of an airplane.

Those values used to be set in the .air-file describing the airplane itself,
but that is not true anymore. If there is something about it in the
.air-file, it is ignored.

Now you can set those initial conditions using the GUI.

The direction your planes faces is always into the wind, so if you change
the direction of the wind, your plane will start into that direction, too.




Configuring wind and thermals
-----------------------------

Wind and thermals can be configured in the GUI. Settings are saved only for
the current location, to haev good presets for every location. 
Velocity is in ft/s here!


Setting up sound output
-----------------------
Currently two things are implemented: 
  * A simple variometer, which does not use the soundcard but
    the beeper. Currently linux only. Can be enabled via GUI,
    some settings might only be available through crrcsim.xml.
  * A simple noise representing the current throttle setting.
    This one uses the soundcard. The sound is not perfect yet,
    every time you change the throttle setting, the sound
    is interrupted for some time.
    Can be enabled via GUI.
    

