

#include <vcl.h>
#pragma hdrstop

//[2010.03.08.월][생성!!!]{----------
//<GMsgBox> 를 다루는 API 를 기술한다.
//}----------------------------------

#include  "GUI_GMsgBox.h"

#include  "vmos_def.h"
#include  "vmos.h"
#include  "c_define.h"

//[GUI]
//{
    #include  "GMsgBox.h"

    #include  "gui_part.h"

    #include  "ide_library.h"

//}

//[2011.12.04.일][중요수정!!!]{*******
//신형 API 방식으로 전부 새롭게 수정.
//}***********************************

void __fastcall _GUI_GMsgBox_Create(void)
{
  //[2010.03.08.월][생성!!!]{---
  //<GMsgBox> 를 하나 생성한다.
  //}---------------------------

  //[VAR]
  //{
     //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU8   pMother;   //주소.
          DTU2   pGid;
          DTS4   pX;
          DTS4   pY;
          DTU1   pVisible;

      //}

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{--------------------------------------------
  //void _GMsgBox_생성_(void            *p생성자,
  //                    void            *p모체생성자,
  //                    unsigned short   p식별자,
  //                    int              pX,
  //                    int              pY,
  //                    unsigned char    p보이기감추기);
  //}----------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[void  *p모체생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pMother)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pMother, &pMother);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned short  p식별자]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (2), (DTU1 *)(&pGid)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (2);
      //}--------------------------

  //}

  //[int  pX]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pX)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[int  pY]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pY)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p보이기감추기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pVisible)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

  //}

  //[명령처리]
  //{
      //일단 확인용으로 무조건 지정 생성하는 것으로 한다.
      GMsgBox_Create((void *)pCreator, (void *)pMother, pGid, pX, pY, pVisible);

  //}

}

void __fastcall _GUI_GMsgBox_Delete(void)
{
  //[2010.03.08.월][생성!!!]{----
  //지정 <GMsgBox> 를 삭제한다.
  //
  //[2011.12.04.일][중요수정!!!]-
  //새로운 방식으로 API 를 처리.
  //}----------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;       //주소.

      //}

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{----------------------------
  //void _GMsgBox_삭제_(void  *p생성자);
  //}------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

  //}

  //[명령처리]
  //{
      //일단 확인용으로 무조건 지정 생성하는 것으로 한다.
      GMsgBox_Delete((void *)pCreator);

  //}

}

void __fastcall _GUI_GMsgBox_Enable(void)
{
  //[2010.03.08.월][생성!!!]{-------------
  //<GMsgBox> 의 <유효/무효> 를 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]----------
  //새로운 방식으로 API 를 처리.
  //}-------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pEnable;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;


  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{------------------------------------------------
  //unsigned char _GMsgBox_유효_(void           *p생성자,
  //                             unsigned char   p유효무효,
  //                             unsigned char   p쓰기읽기);
  //}--------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p유효무효]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pEnable)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->Enabled;

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->Enabled;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_Visible(void)
{
  //[2010.03.08.월][생성!!!]{-----------------
  //<GMsgBox> 의 <보이기/감추기> 를 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]--------------
  //새로운 방식으로 API 를 처리.
  //}-----------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pVisible;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-----------------------------------------------------
  //unsigned char _GMsgBox_보이기_(void           *p생성자,
  //                               unsigned char   p보이기감추기,
  //                               unsigned char   p쓰기읽기);
  //}-------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p보이기감추기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pVisible)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->Visible = pVisible;

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->Visible;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_X(void)
{
  //[2010.03.08.월][생성!!!]{--------
  //<GMsgBox> 의 <Left> 를 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-----
  //새로운 방식으로 API 를 처리.
  //}--------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTS4   pX;
          DTU1   pWR;

          //반환값
          DTS4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-----------------------------------
  //int _GMsgBox_X_(void           *p생성자,
  //                int             pX,
  //                unsigned char   p쓰기읽기);
  //}-------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[int  pX]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pX)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->Left = pX;

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->Left;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_Y(void)
{
  //[2010.03.08.월][생성!!!]{-------
  //<GMsgBox> 의 <Top> 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]----
  //새로운 방식으로 API 를 처리.
  //}-------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTS4   pY;
          DTU1   pWR;

          //반환값
          DTS4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-----------------------------------
  //int _GMsgBox_Y_(void           *p생성자,
  //                int             pY,
  //                unsigned char   p쓰기읽기);
  //}-------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[int  pY]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pY)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->Top = pY;

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->Top;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_OutLineColor(void)
{
  //[2010.03.08.월][생성!!!]{------------
  //<GMsgBox> 의 [외곽선색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]---------
  //새로운 방식으로 API 를 처리.
  //}------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{---------------------------------------------------
  //unsigned int _GMsgBox_외곽선색_(void           *p생성자,
  //                                unsigned int    p색상,
  //                                unsigned char   p쓰기읽기);
  //}-----------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_OutLineColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_outLineColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_BorderColor(void)
{
  //[2010.03.08.월][생성!!!]{------------
  //<GMsgBox> 의 [테두리색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]---------
  //새로운 방식으로 API 를 처리.
  //}------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{---------------------------------------------------
  //unsigned int _GMsgBox_테두리색_(void           *p생성자,
  //                                unsigned int    p색상,
  //                                unsigned char   p쓰기읽기);
  //}-----------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_BorderColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_borderColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_BackColor(void)
{
  //[2010.03.08.월][생성!!!]{-----------
  //<GMsgBox> 의 [배경색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]--------
  //새로운 방식으로 API 를 처리.
  //}-----------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------
  //unsigned int _GMsgBox_배경색_(void           *p생성자,
  //                              unsigned int    p색상,
  //                              unsigned char   p쓰기읽기);
  //}---------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_BackColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_backColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_IconColor(void)
{
  //[2010.03.08.월][생성!!!]{----------
  //<GMsgBox> 의 [그림색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-------
  //새로운 방식으로 API 를 처리.
  //}----------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------
  //unsigned int _GMsgBox_그림색_(void           *p생성자,
  //                              unsigned int    p색상,
  //                              unsigned char   p쓰기읽기);
  //}---------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_IconColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_iconColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_BtnBackColor(void)
{
  //[2010.03.08.월][생성!!!]{--------------
  //<GMsgBox> 의 [버튼배경색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-----------
  //새로운 방식으로 API 를 처리.
  //}--------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-----------------------------------------------------
  //unsigned int _GMsgBox_버튼배경색_(void           *p생성자,
  //                                  unsigned int    p색상,
  //                                  unsigned char   p쓰기읽기);
  //}-------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_BtnBackColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_buttonOk->_backColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_BtnFontColor(void)
{
  //[2010.03.08.월][생성!!!]{--------------
  //<GMsgBox> 의 [버튼문자색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-----------
  //새로운 방식으로 API 를 처리.
  //}--------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-----------------------------------------------------
  //unsigned int _GMsgBox_버튼문자색_(void           *p생성자,
  //                                  unsigned int    p색상,
  //                                  unsigned char   p쓰기읽기);
  //}-------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_BtnFontColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_buttonOk->_fontColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_BtnFontStyle(void)
{
  //[2010.03.08.월][생성!!!]{----------------
  //<GMsgBox> 의 [버튼문자형식] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-------------
  //새로운 방식으로 API 를 처리.
  //}----------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pFontStyle;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{--------------------------------------------------------
  //unsigned char _GMsgBox_버튼문자형식_(void           *p생성자,
  //                                     unsigned char   p문자형식,
  //                                     unsigned char   p쓰기읽기);
  //}----------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p문자형식]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pFontStyle)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_BtnFontStyle(pFontStyle);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_buttonOk->_fontStyle;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_MsgFontColor(void)
{
  //[2010.03.08.월][생성!!!]{----------
  //<GMsgBox> 의 [문자색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-------
  //새로운 방식으로 API 를 처리.
  //}----------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------
  //unsigned int _GMsgBox_문자색_(void           *p생성자,
  //                              unsigned int    p색상,
  //                              unsigned char   p쓰기읽기);
  //}---------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_MsgFontColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_msgLabel->_fontColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_MsgFontStyle(void)
{
  //[2010.03.08.월][생성!!!]{------------
  //<GMsgBox> 의 [문자형식] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]---------
  //새로운 방식으로 API 를 처리.
  //}------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pFontStyle;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{----------------------------------------------------
  //unsigned char _GMsgBox_문자형식_(void           *p생성자,
  //                                 unsigned char   p문자형식,
  //                                 unsigned char   p쓰기읽기);
  //}------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p문자형식]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pFontStyle)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_MsgFontStyle(pFontStyle);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_msgLabel->_fontStyle;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_CaptionFontColor(void)
{
  //[2010.03.08.월][생성!!!]{-----------------
  //<GMsgBox> 의 [제목줄 문자색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]--------------
  //새로운 방식으로 API 를 처리.
  //}-----------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------------
  //unsigned int _GMsgBox_제목줄문자색_(void           *p생성자,
  //                                    unsigned int    p색상,
  //                                    unsigned char   p쓰기읽기);
  //}---------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_CaptionFontColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_captionTitleLabel->_fontColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_CaptionFontStyle(void)
{
  //[2010.03.08.월][생성!!!]{-------------------
  //<GMsgBox> 의 [제목줄 문자형식] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]----------------
  //새로운 방식으로 API 를 처리.
  //}-------------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pFontStyle;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{----------------------------------------------------------
  //unsigned char _GMsgBox_제목줄문자형식_(void           *p생성자,
  //                                       unsigned char   p문자형식,
  //                                       unsigned char   p쓰기읽기);
  //}------------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p문자형식]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pFontStyle)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_CaptionFontStyle(pFontStyle);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_captionTitleLabel->_fontStyle;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_CaptionBackColor(void)
{
  //[2010.03.08.월][생성!!!]{-----------------
  //<GMsgBox> 의 [제목줄 배경색] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]--------------
  //새로운 방식으로 API 를 처리.
  //}-----------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU4   pColor;
          DTU1   pWR;

          //반환값
          DTU4   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------------
  //unsigned int _GMsgBox_제목줄배경색_(void           *p생성자,
  //                                    unsigned int    p색상,
  //                                    unsigned char   p쓰기읽기);
  //}---------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned int  p색상]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (4), (DTU1 *)(&pColor)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (4);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_CaptionBackColor(pColor);

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_captionTitleLabel->_backColor;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (4), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_EditStr(void)
{
  //[2010.03.08.월][생성!!!]{------------------------------------
  //<GMsgBox> 의 [한줄편집기] 의 문자열을 설정하거나 읽어듣인다.
  //
  //[2011.12.04.일][중요수정!!!]---------------------------------
  //새로운 방식으로 API 를 처리.
  //}------------------------------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU8   pStr;
          DTU1   pWR;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{---------------------------------------------------
  //void _GMsgBox_한줄편집기문자열_(void           *p생성자,
  //                                char           *pr문자열,
  //                                unsigned char   p쓰기읽기);
  //}-----------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[char  *pr문자열]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pStr)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pStr, &pStr);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_editEdit->_EDIT_TextOut((char *)pStr);

        } break;

        case d_Rd :
        {
          //문자열 반환.
          STR_Assign((char *)pStr, GMsgBox->_editEdit->_editbuf);

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_MsgBox(void)
{
  //[2010.03.08.월][생성!!!]{---------------
  //<GMsgBox> 의 [기본 알림창] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]------------
  //새로운 방식으로 API 를 처리.
  //}---------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pIndex;
          DTU8   pStr;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{--------------------------------------
  //void _GMsgBox_기본_(void           *p생성자,
  //                    unsigned char   p그림번호,
  //                    char           *p문자열);
  //}----------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------


  //}

  //[unsigned char  p그림번호]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pIndex)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[char  *p문자열]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pStr)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pStr, &pStr);

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      //직접 개체를 처리한다.
      GMsgBox->_MsgBox(pIndex, (char *)pStr);

  //}

  //[2012.05.03.목][중요수정!!!]{--------------------------------------
  //이전에는 <_MsgBox()> 내부적으로 <while()> 을 사용하고
  //내부적으로 <Application->ProcessMessage()> 를 사용하여
  //[확인] 버튼이 눌렸는지 검사했기 때문에 [확인] 버튼이
  //눌리지 않는한 이 API 자체가 종료되지 못하여 VMOS 전체가
  //구동이 중지되고, 강제로 [VMOS:쓰레드] 를 종료시키는 경우
  //무응답 상태가 되는 문제를 발견하였다.
  //
  //따라서, 아래와 같이 수정한다.
  //
  //1) <_MsgBox()> 에서는 [맷돌C] 에서 보여주는 경우는 내부적으로
  //   <while()> 을 사용하여 대기하지 않고 보여주고 종료.
  //
  //2) <API:_GMsgBox_기본_()> 에서 이 [명령] 처리후
  //   <API:_GMsgBox_눌린버튼확인_()> 으로 대기.
  //
  //3) 눌린 버튼이 있다면 종료.
  //
  //의 형식으로 처리한다.
  //즉, [버튼 눌림 확인] 을 VMOS 로 돌아가는 맷돌C 문장으로 처리하므로
  //VMOS 의 실행에 전혀 영향을 주지 않게 된다.
  //[유사모달] 속성을 만들어 주는 것.
  //}------------------------------------------------------------------

}

void __fastcall _GUI_GMsgBox_MsgBox_OkCancel(void)
{
  //[2010.03.08.월][생성!!!]{--------------------------------
  //<GMsgBox> 의 [확인/취소 버튼이 있는 알림창] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]-----------------------------
  //새로운 방식으로 API 를 처리.
  //}--------------------------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pIndex;
          DTU8   pStr;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{---------------------------------------------------
  //unsigned char _GMsgBox_확인취소_(void           *p생성자,
  //                                 unsigned char   p그림번호,
  //                                 char           *p문자열);
  //}-----------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p그림번호]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pIndex)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[char  *p문자열]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pStr)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pStr, &pStr);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      //반환값을 전달 받는다.
      pReturn = GMsgBox->_MsgBox_OkCancel(pIndex, (char *)pStr);

  //}

  //[반환]
  //{
      //[값] 쓰기.
      if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

  //}

  //[2012.05.03.목][중요수정!!!]{--------------------------------------
  //이전에는 <_MsgBox()> 내부적으로 <while()> 을 사용하고
  //내부적으로 <Application->ProcessMessage()> 를 사용하여
  //[확인] 버튼이 눌렸는지 검사했기 때문에 [확인] 버튼이
  //눌리지 않는한 이 API 자체가 종료되지 못하여 VMOS 전체가
  //구동이 중지되고, 강제로 [VMOS:쓰레드] 를 종료시키는 경우
  //무응답 상태가 되는 문제를 발견하였다.
  //
  //따라서, 아래와 같이 수정한다.
  //
  //1) <_MsgBox()> 에서는 [맷돌C] 에서 보여주는 경우는 내부적으로
  //   <while()> 을 사용하여 대기하지 않고 보여주고 종료.
  //
  //2) <API:_GMsgBox_기본_()> 에서 이 [명령] 처리후
  //   <API:_GMsgBox_눌린버튼확인_()> 으로 대기.
  //
  //3) 눌린 버튼이 있다면 종료.
  //
  //의 형식으로 처리한다.
  //즉, [버튼 눌림 확인] 을 VMOS 로 돌아가는 맷돌C 문장으로 처리하므로
  //VMOS 의 실행에 전혀 영향을 주지 않게 된다.
  //[유사모달] 속성을 만들어 주는 것.
  //
  //[반환값] 은 2), 3) 의 단계로 별도 처리되므로 여기서의 [반환값] 은
  //무의미 한 값이다.
  //}------------------------------------------------------------------

}

void __fastcall _GUI_GMsgBox_MsgBox_Edit(void)
{
  //[2010.03.08.월][생성!!!]{---------------------------------------------
  //<GMsgBox> 의 [확인/취소 버튼과 한줄편집기가 있는 알림창] 을 설정한다.
  //
  //[2011.12.04.일][중요수정!!!]------------------------------------------
  //새로운 방식으로 API 를 처리.
  //}---------------------------------------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //[2011.12.04.일][수정!!!]
          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pIndex;
          DTU8   pStr;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-----------------------------------------------------
  //unsigned char _GMsgBox_한줄편집기_(void           *p생성자,
  //                                   unsigned char   p그림번호,
  //                                   char           *p문자열);
  //}-------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p그림번호]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pIndex)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[char  *p문자열]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pStr)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pStr, &pStr);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      //반환값을 전달 받는다.
      pReturn = GMsgBox->_MsgBox_Edit(pIndex, (char *)pStr);

  //}

  //[반환]
  //{
      //[값] 쓰기.
      if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

  //}

  //[2012.05.03.목][중요수정!!!]{--------------------------------------
  //이전에는 <_MsgBox()> 내부적으로 <while()> 을 사용하고
  //내부적으로 <Application->ProcessMessage()> 를 사용하여
  //[확인] 버튼이 눌렸는지 검사했기 때문에 [확인] 버튼이
  //눌리지 않는한 이 API 자체가 종료되지 못하여 VMOS 전체가
  //구동이 중지되고, 강제로 [VMOS:쓰레드] 를 종료시키는 경우
  //무응답 상태가 되는 문제를 발견하였다.
  //
  //따라서, 아래와 같이 수정한다.
  //
  //1) <_MsgBox()> 에서는 [맷돌C] 에서 보여주는 경우는 내부적으로
  //   <while()> 을 사용하여 대기하지 않고 보여주고 종료.
  //
  //2) <API:_GMsgBox_기본_()> 에서 이 [명령] 처리후
  //   <API:_GMsgBox_눌린버튼확인_()> 으로 대기.
  //
  //3) 눌린 버튼이 있다면 종료.
  //
  //의 형식으로 처리한다.
  //즉, [버튼 눌림 확인] 을 VMOS 로 돌아가는 맷돌C 문장으로 처리하므로
  //VMOS 의 실행에 전혀 영향을 주지 않게 된다.
  //[유사모달] 속성을 만들어 주는 것.
  //
  //[반환값] 은 2), 3) 의 단계로 별도 처리되므로 여기서의 [반환값] 은
  //무의미 한 값이다.
  //}------------------------------------------------------------------

}

void __fastcall _GUI_GMsgBox_ButtonKind(void)
{
  //[2012.05.02.수][생성!!!]{-----------------------------------------
  //<GMsgBox> 의 [눌린버튼종류] 를 반환.
  //
  //[맷돌-C] 에서 [모달] 형식을 구현하기 위하여 필요.
  //더불어, <VMOS> 를 강제 종료하는데 지장이 없도록 하기 위하여 필요.
  //기존의 방식은 <GMsgBox> 내부의 <while()> 문으로 <VMOS:쓰레드> 가
  //강제 종료가 안되었다. 이를 개선하기 위한것.
  //
  //즉, 일단 보여만 주고, 눌린 버튼 확인은 <맷돌C> 로 직접 [무한반복]
  //검사하여 VMOS 를 계속 흐르도록 하는 것이 핵심.
  //
  //[반환값]----------------------------------------------------------
  //0 : 눌린버튼 없음.
  //1 : 확인.
  //2 : 취소.
  //}-----------------------------------------------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          
          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;

  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{---------------------------------------------
  //unsigned char _GMsgBox_눌린버튼확인_(void  *p생성자);
  //}-----------------------------------------------------

  //[기본주소 얻기]
  //{
      //[!]{--------------------------------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      //[반환]
      //{
          //[반환값 얻기]
          //{
              if     (GMsgBox->_buttonOkDown     == true) { pReturn = 1; }
              else if(GMsgBox->_buttonCancelDown == true) { pReturn = 2; }
              else                                        { pReturn = 0; }

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

      //}

  //}

}


void __fastcall _GUI_GMsgBox_EvtShow(void)
{
  //[2012.07.20.금][생성!!!]{-----
  //<GMsgBox> [이벤트:Show] 처리.
  //}-----------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pUse;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;


  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------------
  //unsigned char _GMsgBox_이벤트_Show_(void           *p생성자,
  //                                    unsigned char   p사용유무,
  //                                    unsigned char   p쓰기읽기);
  //}---------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p사용유무]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pUse)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_evtShow = pUse;

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_evtShow;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}

void __fastcall _GUI_GMsgBox_EvtHide(void)
{
  //[2012.07.20.금][생성!!!]{-----
  //<GMsgBox> [이벤트:Hide] 처리.
  //}-----------------------------

  //[VAR]
  //{
      //[기본]
      //{
          class  VMOS  *vmos;

          //<@LOCAL> 을 기본으로 한 [절대주소](대문자로 절대주소임을 구분하자).
          DTU8   ADR;

      //}

      //[API]
      //{
          //주소는 전부 MCU 상의 주소다.
          DTU8   pCreator;  //주소.
          DTU1   pUse;
          DTU1   pWR;

          //반환값
          DTU1   pReturn;

      //}

      //대상개체.
      TGMsgBox_Form  *GMsgBox;


  //}

  //[VMOS 위치 얻기]{--
  VMOS_GetPtr(&vmos);
  //}------------------

  //[함수형]{-------------------------------------------------------
  //unsigned char _GMsgBox_이벤트_Hide_(void           *p생성자,
  //                                    unsigned char   p사용유무,
  //                                    unsigned char   p쓰기읽기);
  //}---------------------------------------------------------------

  //[기본주소 얻기]
  //{
      //[2011.12.04.일][추가!!!]{-----------------------------------
      //<@LOCAL> 과 같은 [절대주소] 값.
      //함수 [인수] 등 모든 지역변수는 <@LOCAL> 부터 시작되기 때문.
      //첫번째 [지역변수(인수포함)] 의 [절대주소] 가 된다.
      //}-----------------------------------------------------------

      ADR = (vmos->regREG_[d_VM_Reg_LOCAL]);

  //}

  //[void  *p생성자]
  //{
      //[절대주소] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (8), (DTU1 *)(&pCreator)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //MCU 내부적으로처리 하므로 실제 물리주소로 바꾼다.
      vmos->VMOS_Conv_AdrToSysAdr(pCreator, &pCreator);

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (8);
      //}--------------------------

  //}

  //[unsigned char  p사용유무]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pUse)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[unsigned char  p쓰기읽기]
  //{
      //[값] 읽기.
      if(vmos->VMOS_WrRd(d_Rd, ADR, (1), (DTU1 *)(&pWR)) != true)
      { vmos->regSysFuncCallResult = d_False; return; }

      //[다음 주소 계산]{----------
      //현재 [인수] 크기를 더한다.
      ADR += (1);
      //}--------------------------

  //}

  //[명령처리]
  //{
      //[개체 위치 얻기]
      //{
          //[생성자] 의 정보로 해당 개체의 위치를 얻는다.
          GMsgBox = (TGMsgBox_Form *)(*((DTU8 *)pCreator));

      //}

      switch(pWR)
      {
        case d_Wr :
        {
          //직접 개체를 처리한다.
          GMsgBox->_evtHide = pUse;

        } break;

        case d_Rd :
        {
          //[반환값 얻기]
          //{
              pReturn = GMsgBox->_evtHide;

          //}

          //[값] 쓰기.
          if(vmos->VMOS_WrRd(d_Wr, ADR, (1), (DTU1 *)(&pReturn)) != true)
          { vmos->regSysFuncCallResult = d_False; return; }

        } break;

      }

  //}

}






