comparison target-utils/dspdump/dumpops.c @ 543:947c6a443a9c

dspdump: bugfix in bigdump command
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 28 Oct 2019 20:47:40 +0000
parents b95b251b33eb
children 451d8b545b11
comparison
equal deleted inserted replaced
542:b95b251b33eb 543:947c6a443a9c
41 41
42 dump_large_section(mode, addr, len) 42 dump_large_section(mode, addr, len)
43 u16 mode; 43 u16 mode;
44 u32 addr, len; 44 u32 addr, len;
45 { 45 {
46 u32 chunk, remain; 46 u32 chunk, remain, n;
47 volatile u16 *api; 47 volatile u16 *api;
48 int rc; 48 int rc;
49 49
50 for (remain = len; remain; remain -= chunk) { 50 for (remain = len; remain; remain -= chunk) {
51 chunk = remain; 51 chunk = remain;
55 if (rc < 0) { 55 if (rc < 0) {
56 printf("ERROR: DSP timeout on read operation\n"); 56 printf("ERROR: DSP timeout on read operation\n");
57 return(rc); 57 return(rc);
58 } 58 }
59 api = (volatile u16 *) APIF_ADDR; 59 api = (volatile u16 *) APIF_ADDR;
60 for (; chunk; chunk--) { 60 for (n = chunk; n; n--) {
61 if (!(addr & 0xF)) 61 if (!(addr & 0xF))
62 printf("%05x : ", addr); 62 printf("%05x : ", addr);
63 printf("%04x%c", *api++, ((addr&15)==15)?'\n':' '); 63 printf("%04x%c", *api++, ((addr&15)==15)?'\n':' ');
64 addr++; 64 addr++;
65 } 65 }