__interrupt void Timer_A0 (void)//100ms { //P2OUT ^= 0x08; // Toggle P2.3 //UartWriteStr("1234567890");// //TACCR0 = 0; ProcessKey(); if((TimerCtrl&0x01)&&(TimerCnt0!=0))//CH0 { TimerCnt0--; } else { TimerCnt0 = 0; } if((TimerCtrl&0x02)&&(XbeeBusy!=0))//CH1 { XbeeBusy--; if(XbeeBusy == 0) ClearRxd(); } if(TimerCtrl&0x04)//CH2 { if(TimerCntRun!=0) { TimerCntRun--; } else { TimerCntRun = 10; // TempFlag |= 0x01;//采集温度传感器-标记 } } if((XbeeBusy==0)&&(RxdState))//判断接收数据完成 { if(RxdCntOld!=RxdCnt) { RxdCntOld = RxdCnt; } else { MsgProcess(); RxdCntOld = 0; RxdCnt = 0; RxdOk = 0; RxdState = 0; } } /*------------------------------------------- if(ActMsgCnt<(ED_Reg[ACT]*100))//Act.Msg----send 10*100*100mS=10SEC { ActMsgCnt ++; } else { ActMsgCnt = 0; ActMsgFlag = 1; // P2OUT ^= 0x08; // Toggle P2.3 } */ /*-------------------------------------------*/ if(InitCnt<HoldReg[rST])//10Second { InitCnt++; } else { AppProcess(); InitCnt = 0; InitFlag = 1; } /*-------------------------------------------*/ }
int GTH::StartProcessFrame() { check.time0 = check.timer.Tick(); if( m_frameFlag ) { if( FAILED( BeginScene() ) ) return E_FAIL; ApplyTimeEnv(); check.time1 = check.timer.Tick(); WorldRenderBefore(); check.time2 = check.timer.Tick(); CharacterFrame(); check.time3 = check.timer.Tick(); EntityFrame(); check.time4 = check.timer.Tick(); WorldRenderAfter(); check.time5 = check.timer.Tick(); CursorFrame(); g_ifMng->PrepareRender(); g_ifMng->Render(); RenderText(); g_chatManager->Render(); } check.time6 = check.timer.Tick(); g_entityMng->Process( m_myCharacter->position , g_camera.m_position , m_frameFlag , g_camera.m_distance ); g_itemMng->Process( g_camera.m_position , m_frameFlag ); g_effectMng->Process( g_camera.m_position , m_frameFlag ); switch( AppProcess() ) { case false : break; case 2 : if( m_frameFlag ) EndScene(); return E_FAIL; } check.time7 = check.timer.Tick(); WorldFrame(); check.time8 = check.timer.Tick(); if( m_frameFlag ) { check.time9 = check.timer.Tick(); EndScene(); check.time10 = check.timer.Tick(); } m_frameFlag++; return S_OK; }