X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_debug.c;h=51f1c0ff583f061deceab7959622f55d69a69df7;hb=888c2dd8a3914f9a08e2b0e006ff96c5cc5cd792;hp=35ef98dcdedce2956c1460679e252010da97dbf1;hpb=e70e95962c26832628d586e07f9cd1a2e1852d72;p=palacios.git diff --git a/palacios/src/palacios/vmm_debug.c b/palacios/src/palacios/vmm_debug.c index 35ef98d..51f1c0f 100644 --- a/palacios/src/palacios/vmm_debug.c +++ b/palacios/src/palacios/vmm_debug.c @@ -21,33 +21,37 @@ #include -void PrintDebugHex(unsigned char x) -{ - unsigned char z; +void PrintDebugHex(uchar_t x) { + unsigned char z; - z = (x>>4) & 0xf ; - PrintDebug("%x", z); - z = x & 0xf; - PrintDebug("%x", z); + z = (x >> 4) & 0xf ; + PrintDebug("%x", z); + z = x & 0xf; + PrintDebug("%x", z); } -void PrintDebugMemDump(unsigned char *start, int n) -{ - int i, j; - - for (i=0;i=32) && (start[j]<=126)) ? start[j] : '.'); +void PrintDebugMemDump(uchar_t *start, int n) { + int i, j; + + for (i = 0; i < n; i += 16) { + PrintDebug("%p", (void *)(start + i)); + + for (j = i; (j < (i + 16)) && (j < n); j += 2) { + PrintDebug(" "); + PrintDebugHex(*((uchar_t *)(start + j))); + + if ((j + 1) < n) { + PrintDebugHex(*((uchar_t *)(start + j + 1))); + } + + } + + PrintDebug(" "); + + for (j = i; (j < (i + 16)) && (j < n); j++) { + PrintDebug("%c", ((start[j] >= 32) && (start[j] <= 126)) ? start[j] : '.'); + } + + PrintDebug("\n"); } - PrintDebug("\n"); - } }