Annotation of 43BSD/ucb/pascal/pdx/machine/printdata.c, revision 1.1.1.1

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.