📄 debug.c
字号:
case 6: // DSP
msWriteByte(BK0_00_REGBK, 2);
if( (UART_CMD_MS_REGINDEX&0x01) == 1 )
msVDDSPWriteByte( UART_CMD_MS_REGINDEX-1, msVDDSPReadByte(UART_CMD_MS_REGINDEX-1) );
msVDDSPWriteByte( UART_CMD_MS_REGINDEX, UART_CMD_MS_REGDATA );
if( (UART_CMD_MS_REGINDEX&0x01) == 0 )
msVDDSPWriteByte( UART_CMD_MS_REGINDEX+1, msVDDSPReadByte(UART_CMD_MS_REGINDEX+1) );
break;
case 0xA: // Debug1
{
switch(UART_CMD_MS_REGINDEX)
{
case 0:
g_ucmsVDCtl = UART_CMD_MS_REGDATA;
break;
case 1:
g_ucmsVDCtl2 = UART_CMD_MS_REGDATA;
break;
case 2:
g_ucMSVDDebug = UART_CMD_MS_REGDATA;
break;
case 3:
g_ucMSVDDebug2 = UART_CMD_MS_REGDATA;
break;
case 4:
g_ucDebugFlag = UART_CMD_MS_REGDATA;
break;
}
break;
} // End of case 0xA
case 0x0B: // Debug2
{
switch(UART_CMD_MS_REGINDEX)
{
#if(ENABLE_VD_DSP)
case 0:
g_ucDSP_Ctl = UART_CMD_MS_REGDATA;
break;
#ifdef DSP_MARIA_DEBUG
case 1:
g_dspDebugInfoIdx = UART_CMD_MS_REGDATA;
break;
case 2:
g_dspDebugFlag = UART_CMD_MS_REGDATA;
break;
#endif
#endif
case 3:
//g_wFSCBurstMag = UART_CMD_MS_REGDATA;
break;
case 4:
s_ucFSCBurstOn = UART_CMD_MS_REGDATA;
break;
case 5:
s_ucFSCBurstOff = UART_CMD_MS_REGDATA;
break;
case 6:
//g_ucFSCNoiseMag = UART_CMD_MS_REGDATA;
break;
case 7:
s_ucFSCNoiseOn = UART_CMD_MS_REGDATA;
break;
case 8:
s_ucFSCNoiseOff = UART_CMD_MS_REGDATA;
break;
case 9:
//g_ucFSCPhaseErrorAvg = UART_CMD_MS_REGDATA;
break;
case 0xA:
s_ucFSCPhaseErrorLevelOn = UART_CMD_MS_REGDATA;
break;
case 0xB:
s_ucFSCPhaseErrorLevelOff = UART_CMD_MS_REGDATA;
break;
}
break;
}
}
if (!g_bDebugASCIICommandFlag) putchar(0xF1);
break;
}
case kRead_MST_Bank_n:
{
UART_CMD_MS_REGDATA = 0;
switch( UART_CMD_MS_BANK )
{
case UART_OSD_BANK:
msWriteByte(BK0_00_REGBK, REG_BANK_SCALER);
UART_CMD_MS_REGDATA = msReadOSDByte(UART_CMD_MS_REGINDEX);
break;
case 0:
case 1:
case 2:
case 3:
case 4:
msWriteByte(BK0_00_REGBK, UART_CMD_MS_BANK);
UART_CMD_MS_REGDATA = msReadByte(UART_CMD_MS_REGINDEX);
break;
case 5: // MCU SFR
UART_CMD_MS_REGDATA = sfRegs[UART_CMD_MS_REGINDEX];
break;
case 6: // DSP
msWriteByte(BK0_00_REGBK, 2);
UART_CMD_MS_REGDATA = msVDDSPReadByte(UART_CMD_MS_REGINDEX);
break;
case 0xA:
{
switch(UART_CMD_MS_REGINDEX)
{
case 0:
UART_CMD_MS_REGDATA = g_ucmsVDCtl;
break;
case 1:
UART_CMD_MS_REGDATA = g_ucmsVDCtl2;
break;
case 2:
UART_CMD_MS_REGDATA = g_ucMSVDDebug;
break;
case 3:
UART_CMD_MS_REGDATA = g_ucMSVDDebug2;
break;
case 4:
UART_CMD_MS_REGDATA = g_ucDebugFlag;
break;
case 0x10:
UART_CMD_MS_REGDATA = msDSP_Std_GetNoiseMag();
break;
case 0x11:
UART_CMD_MS_REGDATA = msDSP_Std_GetBurstMag();
break;
case 0x12:
UART_CMD_MS_REGDATA = msDSP_Std_GetPhaseError();
break;
case 0x13:
UART_CMD_MS_REGDATA = msVD_FSC_GetColorBurstStatus();
break;
case 0x20:
UART_CMD_MS_REGDATA = msVDGetSyncStatus();
break;
case 0x21:
UART_CMD_MS_REGDATA = msVDGetSyncStatus()>>8;
break;
}
break;
} // End of case 0xA
case 0xB:
{
#if(ENABLE_VD_DSP)
#ifdef DSP_MARIA_DEBUG
if( UART_CMD_MS_REGINDEX >= 0x10 && UART_CMD_MS_REGINDEX < 0x50 )
{
UART_CMD_MS_REGDATA = g_dspDebugInfo[(UART_CMD_MS_REGINDEX-0x10)];
}
else
#endif
#endif
{
switch(UART_CMD_MS_REGINDEX)
{
#if(ENABLE_VD_DSP)
case 0:
UART_CMD_MS_REGDATA = g_ucDSP_Ctl;
break;
#ifdef DSP_MARIA_DEBUG
case 1:
UART_CMD_MS_REGDATA = g_dspDebugInfoIdx;
break;
case 2:
UART_CMD_MS_REGDATA = g_dspDebugFlag;
break;
#endif
#endif
case 3:
UART_CMD_MS_REGDATA = g_wFSCBurstMag;
break;
case 4:
UART_CMD_MS_REGDATA = s_ucFSCBurstOn;
break;
case 5:
UART_CMD_MS_REGDATA = s_ucFSCBurstOff;
break;
case 6:
UART_CMD_MS_REGDATA = g_ucFSCNoiseMag;
break;
case 7:
UART_CMD_MS_REGDATA = s_ucFSCNoiseOn;
break;
case 8:
UART_CMD_MS_REGDATA = s_ucFSCNoiseOff;
break;
case 9:
UART_CMD_MS_REGDATA = g_ucFSCPhaseErrorAvg;
break;
case 0xA:
UART_CMD_MS_REGDATA = s_ucFSCPhaseErrorLevelOn;
break;
case 0xB:
UART_CMD_MS_REGDATA = s_ucFSCPhaseErrorLevelOff;
break;
}
}
break;
}
} // End of switch( UART_CMD_MS_BANK )
putchar(0xF2);
putchar(UART_CMD_MS_REGDATA);
if (g_bDebugASCIICommandFlag)
{
printf("BK%x", UART_CMD_MS_BANK);
printf("[0x%x]=", UART_CMD_MS_REGINDEX);
printf("0x%x\r\n", UART_CMD_MS_REGDATA);
}
break;
}
case kWrite_MST_OSD:
{
msWriteByte(BK0_00_REGBK, REG_BANK_SCALER);
msWriteOSDByte(UART_CMD_MS_REG, UART_CMD_MS_DAT);
if (!g_bDebugASCIICommandFlag) putchar(0xF1);
}
break;
case kRead_MST_OSD:
{
msWriteByte(BK0_00_REGBK, REG_BANK_SCALER);
UART_CMD_MS_DAT = msReadOSDByte(UART_CMD_MS_REG);
putchar(0xF2);
putchar(UART_CMD_MS_DAT);
if (g_bDebugASCIICommandFlag)
{
printf("OSD[0x%x]=", UART_CMD_MS_REG);
printf("0x%x \r\n", UART_CMD_MS_DAT);
}
}
break;
case kWrite_MCU:
{
switch (UART_CMD_MS_REG)
{
case MCU_P0:
P0 = UART_CMD_MS_DAT;
break;
case MCU_P1:
P1 = UART_CMD_MS_DAT;;
break;
case MCU_P2:
P2 = UART_CMD_MS_DAT;;
break;
case MCU_P3:
P3 = UART_CMD_MS_DAT;;
break;
case MCU_P4:
#if 1//(MCU_SEL!=MCU_MTV230M)
P4 = UART_CMD_MS_DAT;
#endif
break;
#if 1//( MCU_IS_MSTAR||(MCU_SEL==MCU_W77E532) )
case MCU_TCON:
TCON = UART_CMD_MS_DAT;;
break;
case MCU_TMOD:
TMOD = UART_CMD_MS_DAT;;
break;
case MCU_PCON:
PCON = UART_CMD_MS_DAT;;
break;
case MCU_IE:
IE = UART_CMD_MS_DAT;;
break;
case MCU_IP:
IP = UART_CMD_MS_DAT;;
break;
case MCU_SCON:
SCON = UART_CMD_MS_DAT;;
break;
#endif
}
if (!g_bDebugASCIICommandFlag) putchar(0xF1);
}
break;
case kRead_MCU:
{
UART_CMD_MS_DAT = 0;
switch (UART_CMD_MS_REG)
{
case MCU_P0:
UART_CMD_MS_DAT = P0;
break;
case MCU_P1:
UART_CMD_MS_DAT = P1;
break;
case MCU_P2:
UART_CMD_MS_DAT = P2;
break;
case MCU_P3:
UART_CMD_MS_DAT = P3;
break;
case MCU_P4:
#if 1//(MCU_SEL!=MCU_MTV230M)
UART_CMD_MS_DAT = P4;
#endif
break;
#if 1//( MCU_IS_MSTAR||(MCU_SEL==MCU_W77E532) )
case MCU_TCON:
UART_CMD_MS_DAT = TCON;
break;
case MCU_TMOD:
UART_CMD_MS_DAT = TMOD;
break;
case MCU_PCON:
UART_CMD_MS_DAT = PCON;
break;
case MCU_IE:
UART_CMD_MS_DAT = IE;
break;
case MCU_IP:
UART_CMD_MS_DAT = IP;
break;
case MCU_SCON:
UART_CMD_MS_DAT = SCON;
break;
#endif
}
putchar(0xF2);
putchar(UART_CMD_MS_DAT);
if (g_bDebugASCIICommandFlag)
{
printf("0x%x \r\n", UART_CMD_MS_DAT);
}
}
break;
case kWrite_MCU_XDATA:
{
XBYTE[MAKEWORD(UART_CMD_MCU_IDX_H, UART_CMD_MCU_IDX_L)] = UART_CMD_MCU_DATA;;
if (!g_bDebugASCIICommandFlag) putchar(0xF1);
}
break;
case kRead_MCU_XDATA:
{
UART_CMD_MCU_DATA = XBYTE[MAKEWORD(UART_CMD_MCU_IDX_H, UART_CMD_MCU_IDX_L)];
putchar(0xF2);
putchar(UART_CMD_MCU_DATA);
if (g_bDebugASCIICommandFlag)
{
printf("0x%x \r\n", UART_CMD_MCU_DATA);
}
}
break;
#if (_DEBUG_EXTDEV_EN_)
case kWrite_EEPROM:
{
WORD uwEEADDR;
uwEEADDR = MAKEWORD(g_UartCommand.Buffer[_UART_CMD_INDEX1_],g_UartCommand.Buffer[_UART_CMD_INDEX2_]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -