⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 global.c

📁 MSTARXX.rar
💻 C
字号:
//----------------------------------------------------
#define  EnableColorMatrix

#define _GLOBAL_C_

#include "types.h"
#include "board.h"
#include "global.h"
#include "msace.h"
#include "panel.h"
#include "tv.h"
//#include "menudef.h"
#include "menu.h"
#include "calendarpatch.h"
#include "keypad.h"
#include "msosd.h"
#include "menustr.h"
#include "keypad.h"
#include "tv.h"
#include "nvram.h"
#if GAME_ENABLE
#include "Game.h"
#endif
#include "debug.h"
#include "Menufunc.h"
#include "power.h"
#include "mstar.h"

void CopymatrixArray(void)
{
    BYTE ucRow, ucCol;

    for(ucRow=0; ucRow!=3; ucRow++)
    {
        for(ucCol=0; ucCol!=3; ucCol++)
       {
            tColorCorrectionMatrix[ucRow][ucCol]=tVideoColorCorrectionMatrix[ucRow][ucCol];
       }
    }
}

void Init_GlobalVariables(void)
{
	 g_ucOsdCounter=0;
	 g_ucModeDetectCounter=10;
	 g_ucOsdCounter=0;
	 g_ucPowerDownCounter=0;
	 g_ucInputTimingStableCounter=0;
	 g_ucTimingChangeDebunce=0;
	 g_ucSaveIndex=0; // g_ucSaveIndex
	 g_ucUratProgramCount=0;
	 g_ucCaptionPosition=0;
	 g_ucSwapLeftSerNum=0;
	 g_ucCopyLeftSerNum=0;
	 g_uwSleepTimeCounter=0;

	 g_bDebugProgStopFlag=0;

	 g_ucSyncMaxStableCounter=150;

	 g_ucTimeHour=0;
	 g_ucTimeMinute=0;
	 g_ucONTimeHour=0;
	 g_ucONTimeMinute=0;
	 g_ucOFFTimeHour=0;
	 g_ucOFFTimeMinute=0;

	b_InputTimingChangeBit=0;
	b_PowerSavingBit=0;
	b_ForcePowerSavingBit=0;
	b_InputTimingStableBit=0;
	b_DoModeSettingBit=0;
	b_FreeRunModeBit=0;
	b_OsdTimeoutBit=0;
	b_SaveSettingBit=0;
	b_RxBusyBit=0;

	b_Dynamiccaption=0;

	b_AFCDisableBit=0;
	b_ShowSourceFlagBit=0;
	b_SleepBit=0;
	b_EnableTimeBit=0;
	b_EnableOFFTimeBit=0;
	b_EnableONTimeBit=0;
	b_ReDrawCurrentOSDBit=0;
	b_ChannelChangFlagbit=0;
	b_ForcePowerONFlagbit=0;
	b_PowerONTimeEnableBit=0;
	b_PowerOFFTimeEnableBit=0;
	#ifdef Multi_language
	b_RedrawSystemMenuBit=0;
	#endif
	g_bTVAutoScanChannelEnable=FALSE;
	g_bTVManualSearchEnable=FALSE;
	g_bTVAutoScanChannelBreak=FALSE;
	g_bTVManualStore = FALSE;
    g_bTVManualScanChannelBreak=FALSE;

	 g_ucmSCounter=T100MsTick; // for System timer
     g_uc100mSCounter=SystemTick;
	 g_ucSecond=0;
	 g_b100mSArrival=0;

#if GAME_ENABLE
	 g_uwGameMsCounter=GameTick;
	 b_GameBlockDownBit=0;
	 b_GameBlockFastDownBit=0;
#endif
	 g_bFlashReadOK=0;

 	 g_ucMenuPageIndex=0;
 	 g_ucMenuItemIndex=0;

     ucUartCheckTick = 0;

	 SrcFlags=SyncLoss;

     Key_KeyInit();

#if GAME_ENABLE
	 GameVariableInitial();
#endif

  	 msNLCCurveInit();
	 #if CCFL_FUNCTION
	 msSetCCFLBrightness();
	 #endif

#if CALENDAR_ENABLE
	 InitializeCalendarVariable();
#endif

	 // msACE libary initial
	 InitACEVar();
     CopymatrixArray();

#if IRSEND_ENABLE
	 g_bIRSendEnable=0;
	 g_ucIRSendCount=0;
	 g_ucIRSendStatus=0;
	 g_ucIRSendSYSData1=0x00;
	 g_ucIRSendSYSData2=0xFC;
	 g_ucIRSendCOMData1=0x00;
	 g_ucIRSendCOMData2=0x00;
#endif
}


void SlowTimeHandler(void)
{
	BOOL TOneMinArrival=FALSE;

	if(g_b100mSArrival)
	{
		g_b100mSArrival=0;

	    #if TV_ENABLE
       // TurnerAFCHandler();
	    #endif

		if(DynamiccaptionFlag)
		{
			  if(g_ucCaptionPosition)
			  {
				  g_ucCaptionPosition--;
				  Osd_SetTextColor(CP_YellowColor, CP_TransparenceColor);
				  Osd_DrawStr(g_ucCaptionPosition, 0, DynamicText(g_ucMenuPageIndex-PictureMenu));
			  }
			  else
			    Clr_DynamiccaptionFlag();
		}

	    #if TV_ENABLE
        if(g_bTVAutoScanChannelEnable)
            ReDrawProgram(g_bProgramFlash);
	    #endif

		if(IsSrcHasSignal())
		{
		    msVDCombHandler();
            Fsm_ResetHandle();
            msVideoAGCHandle();
		}
        //-----100ms tick end---------------

	    if(--(g_uc100mSCounter)==0)
    	{
    	    //one second tick
    	    g_ucSecond++;
            g_uc100mSCounter=SystemTick;

            if (ucUartCheckTick)
                if ((--ucUartCheckTick)==0)
                    g_UartCommand.Index = 0;

    	    if(g_ucSecond==60)
    	    {
    	    	g_ucSecond=0;
    	    	TOneMinArrival=TRUE;

    			if (g_uwSleepTimeCounter)
    				if (--g_uwSleepTimeCounter==0)
    					Set_SleepTimeoutFlag();
    	    }

    	    if (SleepFlag)
    	    {
    	    	Clr_SleepTimeoutFlag();
    			g_VideoSetting.SleepTime=SleepTimeOff;
    	       	NVRam_WriteByte(nvrVideoAddr(SleepTime), g_VideoSetting.SleepTime);
    			ExecuteKeyEvent(MIA_Power);
    	    }

    	    if(EnableTimeFlag)
    	    {
    	         if(ForcePowerONFlag)
    	         {
    	         	if(!PowerOnFlag)
    		        ExecuteKeyEvent(MIA_Power);
    	         }
    	    }
    	    if(EnableTimeFlag)
    	    {
    	    	if(TOneMinArrival)
    	    	{
    	 			 if (g_ucMenuPageIndex==ClockMenu)
    	 			 {
    		 			Set_ReDrawCurrentOSDFlag();
    					Clr_PowerOFFTimeEnableFlag();
    					Clr_PowerONTimeEnableFlag();
    	 			 }
    				g_ucTimeMinute++;
    				if(g_ucTimeMinute==60)
    				{
    					g_ucTimeMinute=0;
    					g_ucTimeHour++;
    					if(g_ucTimeHour==24)
    						g_ucTimeHour=0;
    				}

    				if (EnableONTimeFlag)
    				{
    					if((g_ucTimeHour==g_ucONTimeHour)&&(g_ucTimeMinute==g_ucONTimeMinute)&&!PowerONTimeEnableFlag)
    					Set_ForcePowerONFlag();
    				}
    				if (EnableOFFTimeFlag)
    				{
    					if((g_ucTimeHour==g_ucOFFTimeHour)&&(g_ucTimeMinute==g_ucOFFTimeMinute)&&!PowerOFFTimeEnableFlag)
    					Set_SleepTimeoutFlag();
    				}
    	    	}
    	    }


    		if (g_ucOsdCounter)
    			{
    			if (--g_ucOsdCounter==0)
    				{
    	    				g_bIrNumKeyStart = 0;
    	    				g_bIrKeyNumEnd = 0;
    	    				Set_OsdTimeoutFlag();
    				}
    			}

    		if (g_ucPowerDownCounter)
    			if (--g_ucPowerDownCounter==0)
    				Set_ForcePowerSavingFlag();
    	}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -