Date:2013-01-27 00:01:32 (11 years 2 months ago)
Author:Werner Almesberger
Commit:8316bc0070f2c47d011dcd16a6ec8e1759e8dade
Message:ubb-la/ubb-la.c (do_buf): move pretty-printing to new function print_samples

Files: ubb-la/ubb-la.c (2 diffs)

Change Details

ubb-la/ubb-la.c
166166}
167167
168168
169static int do_buf(int nibbles, uint32_t trigger, uint32_t mask)
169static void print_samples(FILE *file, uint8_t *buf, int skip, int nibbles)
170170{
171    uint8_t *buf = physmem_malloc(4096);
172    struct physmem_vec vec;
173    int n, i;
174171    uint8_t v, last = 0xff;
175    int count = 0;
176
177    if (mlockall(MCL_CURRENT | MCL_FUTURE)) {
178        perror("mlockall");
179        exit(1);
180    }
181
182    memset(buf, 0, 4096);
183    physmem_flush(buf, 4096);
172    int i, count = 0;
184173
185    n = physmem_xlat((void *) buf, nibbles >> 1, &vec, 1);
186    if (n != 1) {
187        fprintf(stderr, "physmem_xlat_vec: expected 1, got %d\n", n);
188        exit(1);
189    }
190    if (!xfer(vec.addr, nibbles, trigger, mask))
191        return 0;
192
193    for (i = INITIAL_SKIP; i != nibbles; i++) {
174    for (i = skip; i != nibbles; i++) {
194175        v = (buf[i >> 1] >> (4*(~i & 1))) & 0xf;
195176        if (v == last) {
196177            count++;
...... 
213194        printf("%X\n", last);
214195    else
215196        printf("%X{%d}\n", last, count);
197}
198
199
200static int do_buf(int nibbles, uint32_t trigger, uint32_t mask)
201{
202    uint8_t *buf = physmem_malloc(4096);
203    struct physmem_vec vec;
204    int n;
205
206    if (mlockall(MCL_CURRENT | MCL_FUTURE)) {
207        perror("mlockall");
208        exit(1);
209    }
210
211    memset(buf, 0, 4096);
212    physmem_flush(buf, 4096);
213
214    n = physmem_xlat((void *) buf, nibbles >> 1, &vec, 1);
215    if (n != 1) {
216        fprintf(stderr, "physmem_xlat_vec: expected 1, got %d\n", n);
217        exit(1);
218    }
219    if (!xfer(vec.addr, nibbles, trigger, mask))
220        return 0;
221
222    print_samples(stdout, buf, INITIAL_SKIP, nibbles);
223
216224    return 1;
217225}
218226

Archive Download the corresponding diff file

Branches:
master



interactive