SourceCode/Bond/Servo/CBonder.cpp
@@ -193,12 +193,13 @@
         // master recipe list report
         CEqReadStep* pStep = new CEqReadStep(m_nIndex == 0 ? 0xa955 : 0xe955, 255 * 2,
            [&](void* pFrom, int code, const char* pszData, size_t size) -> int {
               CEqReadStep* pTmpStep = (CEqReadStep*)pFrom;
               short ret = MRLRC_OK;
               if (code == ROK && pszData != nullptr && size > 0) {
                  // 此处解释配方数据
                  short ret = decodeRecipeListReport(pszData, size);
                  pStep->setReturnCode(ret);
                  ret = decodeRecipeListReport(pszData, size);
               }
               pStep->setReturnCode(MRLRC_OK);
               pTmpStep->setReturnCode(ret);
               return -1;
            });
         pStep->setName(STEP_EQ_MASTER_RECIPE_LIST);
@@ -420,16 +421,18 @@
      CEquipment::onTimer(nTimerid);
      // test    
      /*
      static int i[2] = { 0, 0 };
      i[m_nIndex]++;
      if (m_nIndex == 0 && i[m_nIndex] == 100) {
      if (m_nIndex == 0 && i[m_nIndex] % 20 == 0) {
         if (m_listener.onAlarm != nullptr) {
            m_listener.onAlarm(this, 1,
               100,
               i[m_nIndex],
               getID(),
               1);
         }
      }
      */
   }
   void CBonder::serialize(CArchive& ar)
@@ -465,6 +468,12 @@
      return pBuddy != nullptr;
   }
   BOOL CBonder::hasG2Class()
   {
      CGlass* pGlass = (CGlass*)m_slot[0].getContext();
      return (pGlass != nullptr);
   }
   int CBonder::onProcessData(CProcessData* pProcessData)
   {
      CEquipment::onProcessData(pProcessData);