diff options
| -rw-r--r-- | tis100-curses.c | 2 | ||||
| -rw-r--r-- | tpu.c | 8 |
2 files changed, 7 insertions, 3 deletions
diff --git a/tis100-curses.c b/tis100-curses.c index c45f367..8556480 100644 --- a/tis100-curses.c +++ b/tis100-curses.c @@ -213,7 +213,7 @@ tui_draw_tpu(struct tpu *tpu) } tui_draw_text(sx + 1 + offx, sy + 1 + offy, inst == tpu->pc ? A_STANDOUT | (tpu->idle ? A_DIM : 0) : 0, - "%-*.*s", TPU_MAX_COLS, TPU_MAX_COLS, rowbuf); + "%-*.*s", TPU_MAX_COLS - offx, TPU_MAX_COLS, rowbuf); inst += 1; offy += 1; offx = 0; @@ -770,7 +770,6 @@ tis_gen_stats(struct tis *tis) stats.steps = MAX(stats.steps, tis->out_ports[i]->io_step + 1); } } - if (!stats.steps) stats.steps = tis->steps; all_steps = 0; idle_steps = 0; @@ -784,7 +783,12 @@ tis_gen_stats(struct tis *tis) } } - stats.idle = (float) idle_steps / (float) all_steps; + if (!stats.steps) stats.steps = all_steps; + + if (all_steps == 0) + stats.idle = 0; + else + stats.idle = (float) idle_steps / (float) all_steps; return stats; } |
