X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Fdebug.c;h=8533a9e8c143cee3348932a85098851cbdb8553d;hb=1529dadb6c2170bf9899fbde46d06a3d9a392b52;hp=3a77610217100f7dc0a4280b35d0b46c6e7ce2fb;hpb=ec807c5b95ffb495b9004265a8361b0c8bbd64a4;p=tpg%2Facess2.git diff --git a/Kernel/debug.c b/Kernel/debug.c index 3a776102..8533a9e8 100644 --- a/Kernel/debug.c +++ b/Kernel/debug.c @@ -397,9 +397,10 @@ void Debug_HexDump(char *Header, void *Data, Uint Length) Debug_Puts(1, Header); LogF(" (Hexdump of %p)\r\n", Data); + #define CH(n) ((' '<=cdat[(n)]&&cdat[(n)]<=0x7F) ? cdat[(n)] : '.') + while(Length >= 16) { - #define CH(n) ((' '<=cdat[(n)]&&cdat[(n)]<=0x7F) ? cdat[(n)] : '.') Log("%04x: %02x %02x %02x %02x %02x %02x %02x %02x" " %02x %02x %02x %02x %02x %02x %02x %02x" " %c%c%c%c%c%c%c%c %c%c%c%c%c%c%c%c", @@ -414,14 +415,22 @@ void Debug_HexDump(char *Header, void *Data, Uint Length) pos += 16; } - LogF("Log: %04x: ", pos); - while(Length) { - Uint byte = *cdat; - LogF("%02x ", byte); - Length--; - cdat ++; + int i ; + LogF("Log: %04x: ", pos); + for(i = 0; i < Length; i ++) + { + LogF("%02x ", cdat[i]); + } + for( ; i < 16; i ++) LogF(" "); + LogF(" "); + for(i = 0; i < Length; i ++) + { + if( i == 8 ) LogF(" "); + LogF("%c", CH(i)); + } } + Debug_Putchar('\r'); Debug_Putchar('\n'); }