1 /*- 2 * Copyright (c) 1980 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.redist.c% 6 */ 7 8 #ifndef lint 9 static char sccsid[] = "@(#)printdata.c 5.3 (Berkeley) 04/16/91"; 10 #endif /* not lint */ 11 12 /* 13 * print contents of data addresses in octal 14 * 15 * There are two entries: one is given a range of addresses, 16 * the other is given a count and a starting address. 17 */ 18 19 #include "defs.h" 20 #include "machine.h" 21 #include "process.h" 22 #include "object.h" 23 #include "process/process.rep" 24 #include "process/pxinfo.h" 25 26 #define WORDSPERLINE 4 27 28 /* 29 * print words from lowaddr to highaddr 30 */ 31 32 printdata(lowaddr, highaddr) 33 ADDRESS lowaddr; 34 ADDRESS highaddr; 35 { 36 register int count; 37 register ADDRESS addr; 38 int val; 39 40 if (lowaddr > highaddr) { 41 error("first address larger than second"); 42 } 43 count = 0; 44 for (addr = lowaddr; addr <= highaddr; addr += sizeof(int)) { 45 if (count == 0) { 46 printf("%8x: ", addr); 47 } 48 dread(&val, addr, sizeof(val)); 49 printf(" %8x", val); 50 if (++count >= WORDSPERLINE) { 51 putchar('\n'); 52 count = 0; 53 } 54 } 55 if (count != 0) { 56 putchar('\n'); 57 } 58 } 59