From: Tim R. <tim...@us...> - 2001-12-08 07:16:49
|
Update of /cvsroot/blob/blob/src/blob In directory usw-pr-cvs1:/tmp/cvs-serv22231/src/blob Modified Files: debug.c Log Message: dump Index: debug.c =================================================================== RCS file: /cvsroot/blob/blob/src/blob/debug.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- debug.c 2001/11/13 13:24:28 1.5 +++ debug.c 2001/12/08 07:16:47 1.6 @@ -206,13 +206,14 @@ } return ret; } + /********************************************************************* * Peek * - * AUTOR: Stefan Eletzhofer + * AUTHOR: Stefan Eletzhofer * REVISED: * - * Poke values to memory + * Peeks values from memory * */ int Peek( int argc, char *argv[] ) @@ -272,6 +273,67 @@ } return ret; } + +/********************************************************************* + * dump + * + * AUTHOR: Tim Riker + * REVISED: + * + * dumps memory + * + */ +int dump( int argc, char *argv[] ) +{ + int ret = 0; + u32 address; + u32 endaddress; + u32 tmpaddress; + u32 value; + + if ( argc < 2 ) + ERR( -EINVAL ); + + ret = strtou32(argv[1], &address); + if ( ret < 0 ) + ERR( -EINVAL ); + + if ( argc == 3 ) { + ret = strtou32(argv[2], &endaddress); + if ( ret < 0 ) + ERR( -EINVAL ); + } else + endaddress = address + 0x80; + + for ( ; address < endaddress; address += 0x10) { + SerialOutputHex(address); + SerialOutputString(": "); + for (tmpaddress = address; tmpaddress < address + 0x10; tmpaddress += 4) { + value = (*((u32 *)tmpaddress)); + barrier(); + SerialOutputHex(value); + SerialOutputByte(' '); + } + for (tmpaddress = address; tmpaddress < address + 0x10; tmpaddress++) { + value = (*((u8 *)tmpaddress)) & 0xff; + barrier(); + if ((value >= ' ') && (value <= '~')) + SerialOutputByte(value); + else + SerialOutputByte('.'); + } + SerialOutputByte('\n'); + } + + ret = 0; +DONE: + if ( ret != 0 ) { + perror( ret, __FUNCTION__ ); + } + return ret; +} +static char dumphelp[] = "dump address [endAddress]\n"; +__commandlist(dump, "dump", dumphelp ); /********************************************************************* * BitChange |