public void InitKeyMapDictionary(ControllerIndex index)
 {
     Index            = index;
     KeyMapDictionary = new Dictionary <NesKeys, KeyMap>()
     {
         { NesKeys.a, KeyMap.A(
               Config.GetKeyMapConfig(index, NesKeys.a),
               lblA
               ) },
         { NesKeys.b, KeyMap.B(
               Config.GetKeyMapConfig(index, NesKeys.b),
               lblB
               ) },
         { NesKeys.select, KeyMap.Select(
               Config.GetKeyMapConfig(index, NesKeys.select),
               lblSelect
               ) },
         { NesKeys.start, KeyMap.Start(
               Config.GetKeyMapConfig(index, NesKeys.start),
               lblStart
               ) },
         { NesKeys.up, KeyMap.Up(
               Config.GetKeyMapConfig(index, NesKeys.up),
               lblUp
               ) },
         { NesKeys.down, KeyMap.Down(
               Config.GetKeyMapConfig(index, NesKeys.down),
               lblDown
               ) },
         { NesKeys.left, KeyMap.Left(
               Config.GetKeyMapConfig(index, NesKeys.left),
               lblLeft
               ) },
         { NesKeys.right, KeyMap.Right(
               Config.GetKeyMapConfig(index, NesKeys.right),
               lblRight
               ) }
     };
 }