{
  //-----------------------------------------------------------------------------------------------------------------------------
  //-- ENTRY --------------------------------------------------------------------------------------------------------------------
  if ( scMainStates.u8SmStateLast != scMainStates.u8SmState )
  {
    scMainStates.u8SmStateLast	=	scMainStates.u8SmState;
    scMainStates.u16SmTimeHigh	=	g_u16TimeTick;

    //-- Display löschen ----------------------------------------
    lcd4x20_fill ( /* u8Line */ 0b1111,
                   /* u8Val  */ ' '       );

    //-- Hauptmenu aufbauen -------------------------------------
    strcpy_P ( &au8TempStr[0], AU8TXT_MAIN1 );
    lcd4x20_show ( /* u8Line  */ 0b0001,
                   /* u8Col   */ 1,
                   /* pu8Data */ &au8TempStr[0],
                   /* u8Len   */ strlen_P(AU8TXT_MAIN1) );

    strcpy_P ( &au8TempStr[0], AU8TXT_MAIN2 );
    lcd4x20_show ( /* u8Line  */ 0b0010,
                   /* u8Col   */ 1,
                   /* pu8Data */ &au8TempStr[0],
                   /* u8Len   */ strlen_P(AU8TXT_MAIN2) );

    strcpy_P ( &au8TempStr[0],	AU8TXT_MAIN3	);
    lcd4x20_show ( /* u8Line  */ 0b0100,
                   /* u8Col   */ 1,
                   /* pu8Data */ &au8TempStr[0],
                   /* u8Len   */ strlen_P(AU8TXT_MAIN3) );

    //-- Bedienzeile ausgeben -----------------------------------

    //-- Cursor vorpositionieren --------------------------------
    scMainMenu.u8MainIdx       =  0;
    scMainMenu.u8MainIdxLast   = ~scMainMenu.u8MainIdx;
    scMainMenu.u8MainStart     =  0;
    scMainMenu.u8MainStartLast = ~scMainMenu.u8MainStart;

    //-- Tasten sperren ---------------------------------------------
    key_press_lock ( 0xFF );
  }


  //-----------------------------------------------------------------------------------------------------------------------------
  //-- ACTION -------------------------------------------------------------------------------------------------------------------
  //-- Taste Main_runter ------------------------------------------------------------------------------------
  if ( key_press_get(C_BTN_MAINDN) )
  {
    scMainMenu.u8MainIdx++;
  }

  //-- Taste Main_hoch --------------------------------------------------------------------------------------
  if ( key_press_get(C_BTN_MAINUP) )
  {
    scMainMenu.u8MainIdx--;
  }

  //-- Cursorposition geändert ------------------------------------------------------------------------------
  if (     ( scMainMenu.u8MainIdxLast   != scMainMenu.u8MainIdx   )
        || ( scMainMenu.u8MainStartLast != scMainMenu.u8MainStart ) )
  {
    scMainMenu.u8MainIdxLast		=	scMainMenu.u8MainIdx;
    scMainMenu.u8MainStartLast	=	scMainMenu.u8MainStart;
    //-- neu Positionieren --------------------------------------------------------------
    lcd4x20_cron ( /* u8Row   */ (scMainMenu.u8MainIdx-scMainMenu.u8MainStart),
                   /* u8Col   */ 1,
                   /* u8Blink */ 0xFF  );
    //-- Pfeil nach oben ----------------------------------------------------------------
    if (    ( scMainMenu.u8MainStart  == 0 )
         && ( scMainMenu.u8MainIdx    == 0 )  )
    { /* ausblenden */
      key_press_lock ( C_BTN_MAINUP );
      lcd4x20_put ( /* u8Row  */ 3,
                    /* u8Col  */ 1,
                    /* u8Char */ ' '   );
    }
    else
    { /* anzeigen */
      key_press_enable ( C_BTN_MAINUP );
      strcpy_P ( &au8TempStr[0], AU8SMB_PFHOCH );
      lcd4x20_show ( /* u8Line  */ 0b1000,
                     /* u8Col   */ 1,
                     /* pu8Data */ &au8TempStr[0],
                     /* u8Len   */ strlen_P(AU8SMB_PFHOCH)  );
    }
    //-- Pfeil nach unten ---------------------------------------------------------------
    if (     ( scMainMenu.u8MainStart + scMainMenu.u8MainIdx )	
          == ( 2                                             )  )
    { /* ausblenden */
      key_press_lock ( C_BTN_MAINDN );
      lcd4x20_put ( /* u8Row  */ 3,
                    /* u8Col  */ 3,
                    /* u8Char */ ' '  );
    }
    else
    { /* anzeigen */
      key_press_enable ( C_BTN_MAINDN );
      strcpy_P	( &au8TempStr[0], AU8SMB_PFRNTR );
      lcd4x20_show ( /* u8Line  */ 0b1000,
                     /* u8Col   */ 3,
                     /* pu8Data	*/ &au8TempStr[0],
                     /* u8Len   */ strlen_P(AU8SMB_PFRNTR)  );
    }
  }




  //-----------------------------------------------------------------------------------------------------------------------------
  //-- TRANSITION ---------------------------------------------------------------------------------------------------------------

  // Tastenabfragen, um Menupunkte zu wechseln



}