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

📄 debug.h

📁 一个两碟控制的VCD的代码,两碟之间的转动及连续播放,已大量生产的CODE.
💻 H
字号:
/* Copyright 1996, ESS Technology, Inc.                                 *//* SCCSID @(#)debug.h	1.23 10/13/97  *//* * $Log$ */#ifndef __DEBUG_H__#define __DEBUG_H__#include "common.h"#include "spoolint.h"/************************************************************************ Debugging aids: KEYDEBUG	- Enable minimal debugging. DEBUG		- Enable debugging variables/subroutines,		  EPRINTF() and assert(). DIE_ON_FATAL	- FATAL() stops the normal program flow. ************************************************************************/#ifdef KEYDEBUG#define KEYDEBUGVAR(x, val)     int x = val#define KEYDEBUGINC(cond, x) \    do { (x) = cond ? (x)+1 : (x); spoolkeyvar(&(x)); } while (0);#define KEYDEBUGDEC(cond, x) \    do { (x) = cond ? (x)-1 : (x); spoolkeyvar(&(x)); } while (0);#define KEYDEBUGASSIGN(x,val) do { x = val; spoolkeyvar(&(x)); } while (0) #else	/* !KEYDEBUG */#define KEYDEBUGVAR(x, val)#define KEYDEBUGINC(cond, x)#define KEYDEBUGDEC(cond, x)#define KEYDEBUGASSIGN(x,val)#endif	/* KEYDEBUG */#ifdef DEBUGGBLDEF(int dbg_console, 0);#define DEBUGVAR(x, val)        int x = val#define DEBUGINC(cond, x) \    do { (x) = cond ? (x)+1 : (x); spoolkeyvar(&(x)); } while (0);#define DEBUGDEC(cond, x) \    do { (x) = cond ? (x)-1 : (x); spoolkeyvar(&(x)); } while (0);#define DEBUGASSIGN(x,val) do {	(x) = val; spoolkeyvar(&(x)); } while (0) #define EPRINTF(a)		printf a#define assert(ex) { \    if (!(ex)) { \	(void)printf("Assertion failed: file \"%s\", \    	line %d\n", __FILE__, __LINE__);}}extern void DBG_print_short(int, unsigned short*);extern void DBG_print_int(int, int*);extern int  DBG_dump_memory(char*, int, int, char*);extern void DBG_console(void);#else	/* !DEBUG */#define dbg_console 0#define DEBUGVAR(x, val)#define	DEBUGINC(cond, x)#define	DEBUGDEC(cond, x)#define DEBUGASSIGN(x,val)#define EPRINTF(a)#define assert(ex)#define DBG_print_short(n, x)#define DBG_print_int(n, x)#define DBG_dump_memory(p, n, fp, s) 0#define DBG_console()#endif#ifdef DIE_ON_FATAL#define FATAL(a) do {		\    mvd[riface_irqmask]=0;	\    EPRINTF(a);			\    assert(0);			\    DBG_console();		\} while (0)#else#define FATAL(a) EPRINTF(a)#endif#ifdef DUMP_ABVvoid DBG_dump_abv_continuously_non_real_time(char *s, int start, int stop)#else#define DBG_dump_abv_continuously_non_real_time(a, b, c)#endif#ifdef DUMP_PCM_WHEN_FULLvoid DBG_dump_pcm_when_full(void);#else#define DBG_dump_pcm_when_full()#endif#ifdef MEASURE_TIMINGvoid DBG_mark_current_time(int);void DBG_check_elapsed(int);void DBG_check_elapsed_every(int);#else#define DBG_mark_current_time(i)#define DBG_check_elapsed(i)#define DBG_check_elapsed_every(i)#endif#ifdef TRACE_ONvoid DBG_allocate_trace_buffer(void);void DBG_log_event(int, int, int, int, int, int);void DBG_start_tracing(void);void DBG_stop_tracing(void);#else#define DBG_allocate_trace_buffer()#define DBG_log_event(type, a0, a1, a2, a3, a4)#define DBG_start_tracing()#define DBG_stop_tracing()#endif#ifdef LOG_CMDQ#define DBG_log_cmdq(type, line_num, cmdq_num) \	DBG_log_event(type, line_num, cmdq_num, 0, 0, 0)#else#define DBG_log_cmdq(type, a0, a1)#endif#ifdef LOG_TASK#define DBG_log_task(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_task(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_INT#define DBG_log_interrupt(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_interrupt(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_ERR#define DBG_log_error(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_error(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_PIC#define DBG_log_pic(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_pic(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_BUF#define DBG_log_buffer(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_buffer(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_KARA#define DBG_log_kara(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_kara(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_BEAM#define DBG_log_beam(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_beam(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_TAKEOUT#define DBG_log_takeout(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_takeout(type, a0, a1, a2, a3, a4)#endif#ifdef LOG_TALK#define DBG_log_takeout(type, a0, a1, a2, a3, a4) \	DBG_log_event(type, a0, a1, a2, a3, a4)#else#define DBG_log_takeout(type, a0, a1, a2, a3, a4)#endif#ifdef OH_MYvoid oh_my(uchar);#else#define oh_my(x)#endif#endif /* __DEBUG_H__ */

⌨️ 快捷键说明

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