main.c

来自「SkyEye是一个可以运行嵌入式操作系统的硬件仿真工具」· C语言 代码 · 共 94 行

C
94
字号
/*************************************//*                                   *//*    Copyright 2000, David Grant    *//*                                   *//*  see ../LICENSE for more details  *//*                                   *//*************************************//* THANKS: to the WINE project.. www.winehq.com.. for many ideas on how * to make this :) */#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <string.h>#include "tracer.h"#define TRACER_DECLARE(ch) {#ch,0},struct _TRACER_Info TRACER_Info[] = {#include "generated.channels.h"	{NULL,0}};#undef TRACER_DECLAREint tracer_indent=0;int tracer_printf(char *msg, ...) {	va_list Args;	int x;/*f(*msg=='+')		tracer_indent++;*//*f(*msg!=':') {		printf("%02d:" tracer_indent);		for(x=0;x<tracer_indent;x++)        		printf("  ");	}*/        va_start(Args,msg);        x=vprintf(msg, Args);        va_end(Args);/*f(*msg=='-')		tracer_indent--;*/	return x;}int tracer_setuptrace(char *str){	char *s, *original_s;	char *ptr;	int x;	char enable;	if(!str) return 0;	s = malloc(strlen(str) + 1);	strcpy(s, str);	original_s = s;		while(1) {		enable=1;		ptr=strchr(s,',');		if(ptr) *ptr=0;				if(s[0] == '-') { 			enable=0;			s++;		}				for(x=0;TRACER_Info[x].Name != NULL; x++) {			if(strcmp(TRACER_Info[x].Name,s)==0 					|| strcmp("all",s)==0) {				TRACER_Info[x].Enabled=enable;			}		}				/* End of string, break. */		if(!ptr) break;		s = ptr+1;	}	printf("Tracing [");	for(x=0;TRACER_Info[x].Name != NULL; x++) {		if(TRACER_Info[x].Enabled)  {			printf(" %s ", TRACER_Info[x].Name);			}	}	printf("]\n");	free(original_s);	return 1;}

⌨️ 快捷键说明

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