LEGO Mindstorms EV3


App Template

//**********************************************************************
//        PROGRAM                                                     //
//**********************************************************************
                                                                      //
define    MyConstant                    100                           //
                                                                      //
vmthread  MAIN                                                        //  void    MAIN(void)
{                                                                     //  {
  DATA8   Run                                                         //
  DATA8   Tmp                                                         //
                                                                      //
                                                                      //
  UI_DRAW(FILLWINDOW,0x00,0,0)                                        //    UI_DRAW(FILLWINDOW,0x00,0,0)
  UI_DRAW(SELECT_FONT,SMALL_FONT)                                     //    UI_DRAW(SELECT_FONT,SMALL_FONT)
  UI_DRAW(TEXT,FG_COLOR,0,1,'My App')                                 //    UI_DRAW(TEXT,FG_COLOR,0,1,'My App')
  UI_DRAW(LINE,FG_COLOR,0,TOPLINE_HEIGHT,LCD_WIDTH,TOPLINE_HEIGHT)    //    UI_DRAW(LINE,FG_COLOR,0,TOPLINE_HEIGHT,LCD_WIDTH,TOPLINE_HEIGHT)
  UI_DRAW(SELECT_FONT,NORMAL_FONT)                                    //    UI_DRAW(SELECT_FONT,NORMAL_FONT)
  UI_DRAW(UPDATE)                                                     //    UI_DRAW(UPDATE)
                                                                      //
  MOVE8_8(1,Run)                                                      //    Run     =  1
                                                                      //    do
Loop:                                                                 //    {
                                                                      //
  MOVE8_8(0,Tmp)                                                      //      Tmp   =  0
  CALL(MySubcall,Tmp)                                                 //      MySubcall(Tmp)
                                                                      //
                                                                      //
  UI_BUTTON(SHORTPRESS,ENTER_BUTTON,Tmp)                              //      UI_BUTTON(SHORTPRESS,ENTER_BUTTON,Tmp)
  JR_FALSE(Tmp,NoPress)                                               //      if (Tmp)
                                                                      //      {
  MOVE8_8(0,Run)                                                      //        Run  =  0
                                                                      //
NoPress:                                                              //      }
                                                                      //
                                                                      //    }
  JR_TRUE(Run,Loop)                                                   //    while (Run)
  UI_BUTTON(FLUSH)                                                    //    UI_BUTTON(FLUSH)
}                                                                     //  }
                                                                      //
                                                                      //
//**********************************************************************
//        SUBCALL                                                     //
//**********************************************************************
                                                                      //
                                                                      //
subcall   MySubcall                                                   //  void MySubcall(DATA8 Par)
{                                                                     //  {
  IO_8    Par                                                         //
                                                                      //
  DATA8   Tmp                                                         //
                                                                      //
  MOVE8_8(Par,Tmp)                                                    //    Tmp  =  Par
                                                                      //
                                                                      //
}                                                                     //  }
                                                                      //
                                                                      // 

LEGO® Robotics Firmware Documentation
Confidential Information © 2013 The LEGO Group