?? debug.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 + -