void __fastcall _qrz_PushARMCycles(unsigned int clks) { uint32 arm,cnt; int sp=0; if(sdf>0) sdf--; if(sf>0) sf--; if(unknownflag11>0)unknownflag11--; if(ARM_CLOCK<0x7A1200)ARM_CLOCK=0x7A1200; if(ARM_CLOCK>0x1C9C380)ARM_CLOCK=0x1C9C380; if(speedfixes>0&&speedfixes<0x186A1) {sp=0x2DC6C0; speedfixes--;} else if(speedfixes>0x186A1&&speedfixes<0x30D41) {if(sdf==0)sp=0x6ACFC0; speedfixes--;} else if(speedfixes<0) {sp=0x3D0900; speedfixes++;} else if(speedfixes>0x30D41) {sp=0x30D400; speedfixes--;}//0x3567E0 else if(speedfixes==0x30D41||speedfixes==0x186A1) speedfixes=0; if(_clio_GetTimerDelay()==0x150&&sf==0) sp=-(0x1C9C380-ARM_CLOCK); if(sf>0x186A0)sp=-(12500000-ARM_CLOCK); if((ARM_CLOCK-sp)<0x2DC6C0)sp=-(0x2DC6C0-ARM_CLOCK); arm=(clks<<24)/(ARM_CLOCK-sp); qrz_AccARM+=arm*ARM_CLOCK; if( (qrz_AccARM>>24) != clks ) { arm++; qrz_AccARM+=ARM_CLOCK; qrz_AccARM&=0xffffff; } qrz_AccDSP+=arm*SND_CLOCK; qrz_AccVDL+=arm*(VDL_CLOCK); //if(Get_madam_FSM()!=FSM_INPROCESS) if(_clio_GetTimerDelay())qrz_TCount+=arm*((0?12500000:21000000)/(_clio_GetTimerDelay()));//clks<<1; }
void __fastcall _qrz_PushARMCycles(unsigned int clks) { uint32 arm; arm=(clks<<24)/ARM_CLOCK; qrz_AccARM+=arm*ARM_CLOCK; if( (qrz_AccARM>>24) != clks ) { arm++; qrz_AccARM+=ARM_CLOCK; qrz_AccARM&=0xffffff; } qrz_AccDSP+=arm*SND_CLOCK; qrz_AccVDL+=arm*(VDL_CLOCK); //if(Get_madam_FSM()!=FSM_INPROCESS) if(_clio_GetTimerDelay())qrz_TCount+=arm*((__temporalfixes?12500000:25000000)/(_clio_GetTimerDelay()));//clks<<1; }