printf("%.16x%c", adrs, brev? 'r': ' '); 
printf(REG"%c", adrs, brev? 'r': ' '); 
memex(void){	int cmd, inc, i, nslash;	unsigned long n;	unsigned char val[16];	scanhex((void *)&adrs);	cmd = skipbl();	if (cmd == '?') {		printf(memex_help_string);		return;	} else {		termch = cmd;	}	last_cmd = "m\n";	while ((cmd = skipbl()) != '\n') {		switch( cmd ){		case 'b':	size = 1;	break;		case 'w':	size = 2;	break;		case 'l':	size = 4;	break;		case 'd':	size = 8;	break;		case 'r': 	brev = !brev;	break;		case 'n':	mnoread = 1;	break;		case '.':	mnoread = 0;	break;		}	}	if( size <= 0 )		size = 1;	else if( size > 8 )		size = 8;	for(;;){		if (!mnoread)			n = mread(adrs, val, size);		printf("%.16x%c", adrs, brev? 'r': ' ');		if (!mnoread) {			if (brev)				byterev(val, size);			putchar(' ');			for (i = 0; i < n; ++i)				printf("%.2x", val[i]);			for (; i < size; ++i)				printf("%s", fault_chars[fault_type]);		}		putchar(' ');		inc = size;		nslash = 0;		for(;;){			if( scanhex(&n) ){				for (i = 0; i < size; ++i)					val[i] = n >> (i * 8);				if (!brev)					byterev(val, size);				mwrite(adrs, val, size);				inc = size;			}			cmd = skipbl();			if (cmd == '\n')				break;			inc = 0;			switch (cmd) {			case '\'':				for(;;){					n = inchar();					if( n == '\\' )						n = bsesc();					else if( n == '\'' )						break;					for (i = 0; i < size; ++i)						val[i] = n >> (i * 8);					if (!brev)						byterev(val, size);					mwrite(adrs, val, size);					adrs += size;				}				adrs -= size;				inc = size;				break;			case ',':				adrs += size;				break;			case '.':				mnoread = 0;				break;			case ';':				break;			case 'x':			case EOF:				scannl();				return;			case 'b':			case 'v':				size = 1;				break;			case 'w':				size = 2;				break;			case 'l':				size = 4;				break;			case 'u':				size = 8;				break;			case '^':				adrs -= size;				break;				break;			case '/':				if (nslash > 0)					adrs -= 1 << nslash;				else					nslash = 0;				nslash += 4;				adrs += 1 << nslash;				break;			case '\\':				if (nslash < 0)					adrs += 1 << -nslash;				else					nslash = 0;				nslash -= 4;				adrs -= 1 << -nslash;				break;			case 'm':				scanhex((void *)&adrs);				break;			case 'n':				mnoread = 1;				break;			case 'r':				brev = !brev;				break;			case '<':				n = size;				scanhex(&n);				adrs -= n;				break;			case '>':				n = size;				scanhex(&n);				adrs += n;				break;			case '?':				printf(memex_subcmd_help_string);				break;			}		}		adrs += inc;	}}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/e1449ed956ae29129bde3e5137dde1d579d585ff/xmon.c/buggy/arch/powerpc/xmon/xmon.c