Index: /trunk/src/defs/globals.h
===================================================================
--- /trunk/src/defs/globals.h	(revision 6997)
+++ /trunk/src/defs/globals.h	(revision 6998)
@@ -74,8 +74,12 @@
 #define   CONFIG_NAME_PLAYER_ROLL_RIGHT    "RollR"
 #define   CONFIG_NAME_PLAYER_ROLL_LEFT     "RollL"
+#define   CONFIG_NAME_PLAYER_UP            "Up"
+#define   CONFIG_NAME_PLAYER_DOWN          "Down"
 
 #define   CONFIG_NAME_PLAYER_FIRE          "Fire"
 #define   CONFIG_NAME_PLAYER_NEXT_WEAPON   "Next"
 #define   CONFIG_NAME_PLAYER_PREV_WEAPON   "Prev"
+#define   CONFIG_NAME_PLAYER_CHANGE_SHIP   "Change_Ship"
+
 #define   CONFIG_NAME_QUIT                 "Quit"
 #define   CONFIG_NAME_PAUSE                "Pause"
Index: /trunk/src/lib/event/key_mapper.cc
===================================================================
--- /trunk/src/lib/event/key_mapper.cc	(revision 6997)
+++ /trunk/src/lib/event/key_mapper.cc	(revision 6998)
@@ -37,4 +37,6 @@
 int KeyMapper::PEV_LEFT              = EV_UNKNOWN;
 int KeyMapper::PEV_RIGHT             = EV_UNKNOWN;
+int KeyMapper::PEV_UP                = EV_UNKNOWN;
+int KeyMapper::PEV_DOWN              = EV_UNKNOWN;
 int KeyMapper::PEV_ROLL_LEFT         = EV_UNKNOWN;
 int KeyMapper::PEV_ROLL_RIGHT        = EV_UNKNOWN;
@@ -46,4 +48,6 @@
 int KeyMapper::PEV_PREVIOUS_WEAPON   = EV_UNKNOWN;
 int KeyMapper::PEV_NEXT_WEAPON       = EV_UNKNOWN;
+
+int KeyMapper::PEV_CHANGE_SHIP       = EV_UNKNOWN;
 
 int KeyMapper::PEV_VIEW0             = EV_UNKNOWN;
@@ -67,6 +71,8 @@
  */
 orxKeyMapping map[] = {
-  {&KeyMapper::PEV_FORWARD,                   CONFIG_NAME_PLAYER_FORWARD},
-  {&KeyMapper::PEV_BACKWARD,                 CONFIG_NAME_PLAYER_BACKWARD},
+  {&KeyMapper::PEV_FORWARD,              CONFIG_NAME_PLAYER_FORWARD},
+  {&KeyMapper::PEV_BACKWARD,             CONFIG_NAME_PLAYER_BACKWARD},
+  {&KeyMapper::PEV_UP,                   CONFIG_NAME_PLAYER_UP},
+  {&KeyMapper::PEV_DOWN,                 CONFIG_NAME_PLAYER_DOWN},
   {&KeyMapper::PEV_LEFT,                 CONFIG_NAME_PLAYER_LEFT},
   {&KeyMapper::PEV_RIGHT,                CONFIG_NAME_PLAYER_RIGHT},
@@ -81,4 +87,6 @@
   {&KeyMapper::PEV_NEXT_WEAPON,          CONFIG_NAME_PLAYER_NEXT_WEAPON},
   {&KeyMapper::PEV_PREVIOUS_WEAPON,      CONFIG_NAME_PLAYER_PREV_WEAPON},
+
+  {&KeyMapper::PEV_CHANGE_SHIP,          CONFIG_NAME_PLAYER_CHANGE_SHIP},
 
 
Index: /trunk/src/lib/event/key_mapper.h
===================================================================
--- /trunk/src/lib/event/key_mapper.h	(revision 6997)
+++ /trunk/src/lib/event/key_mapper.h	(revision 6998)
@@ -43,4 +43,6 @@
   static int PEV_LEFT;              //!< left button
   static int PEV_RIGHT;             //!< right button
+  static int PEV_UP;                //!< up button
+  static int PEV_DOWN;              //!< down button
 
   static int PEV_ROLL_LEFT;         //!< rolls left
@@ -54,4 +56,6 @@
   static int PEV_PREVIOUS_WEAPON;   //!< prev weapon button
   static int PEV_NEXT_WEAPON;       //!< next weapon button
+
+  static int PEV_CHANGE_SHIP;       //!< The button to change the Ship.
 
   static int PEV_VIEW0;             //!< view 0 button
Index: /trunk/src/lib/gui/gtk_gui/gui_keys.cc
===================================================================
--- /trunk/src/lib/gui/gtk_gui/gui_keys.cc	(revision 6997)
+++ /trunk/src/lib/gui/gtk_gui/gui_keys.cc	(revision 6998)
@@ -119,9 +119,14 @@
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_LEFT, "a"));
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_RIGHT, "d"));
+
+        pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_UP, "r"));
+        pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_DOWN, "f"));
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_ROLL_LEFT, "q"));
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_ROLL_RIGHT, "e"));
+
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_FIRE, "BUTTON_LEFT"));
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_NEXT_WEAPON, "m"));
         pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_PREV_WEAPON, "n"));
+        pKeysBox->fill(addKey(CONFIG_NAME_PLAYER_CHANGE_SHIP, "g"));
         closeButton = new Button("close");
 #ifdef HAVE_GTK2
Index: /trunk/src/world_entities/player.cc
===================================================================
--- /trunk/src/world_entities/player.cc	(revision 6997)
+++ /trunk/src/world_entities/player.cc	(revision 6998)
@@ -40,5 +40,5 @@
   this->hud.show();
 
-  EventHandler::getInstance()->subscribe(this, ES_GAME, SDLK_l);
+  EventHandler::getInstance()->subscribe(this, ES_GAME, KeyMapper::PEV_CHANGE_SHIP);
 }
 
@@ -98,5 +98,5 @@
  void Player::process(const Event &event)
  {
-   if (event.type == SDLK_l && event.bPressed)
+   if (event.type == KeyMapper::PEV_CHANGE_SHIP && event.bPressed)
    {
      /// FIXME this should be in the ObjectManager
Index: /trunk/src/world_entities/space_ships/hover.cc
===================================================================
--- /trunk/src/world_entities/space_ships/hover.cc	(revision 6997)
+++ /trunk/src/world_entities/space_ships/hover.cc	(revision 6998)
@@ -145,6 +145,6 @@
   registerEvent(KeyMapper::PEV_LEFT);
   registerEvent(KeyMapper::PEV_RIGHT);
-  registerEvent(SDLK_e); /// FIXME
-  registerEvent(SDLK_c); /// FIXME
+  registerEvent(KeyMapper::PEV_UP);
+  registerEvent(KeyMapper::PEV_DOWN);
   registerEvent(KeyMapper::PEV_FIRE1);
   registerEvent(KeyMapper::PEV_NEXT_WEAPON);
@@ -362,7 +362,7 @@
   else if( event.type == KeyMapper::PEV_RIGHT)
     this->bRight = event.bPressed;
-  else if( event.type == SDLK_e)
+  else if( event.type == KeyMapper::PEV_UP)
     this->bAscend = event.bPressed; //this->shiftCoor(0,.1,0);
-  else if( event.type == SDLK_c)
+  else if( event.type == KeyMapper::PEV_DOWN)
     this->bDescend = event.bPressed; //this->shiftCoor(0,-.1,0);
   else if( event.type == KeyMapper::PEV_FORWARD)
