Exemple #1
0
static void print_checkpoint_info(breakpoint_t *bp)
{
    if (bp->trace) {
        mon_out("TRACE: ");
    } else if (bp->watch_load || bp->watch_store) {
        mon_out("WATCH: ");
    } else {
        if (bp->temporary)
            mon_out("UNTIL: ");
        else
            mon_out("BREAK: ");
    }
    mon_out("%d %s:$%04x",bp->brknum,
        mon_memspace_string[addr_memspace(bp->start_addr)],addr_location(bp->start_addr));
    if (mon_is_valid_addr(bp->end_addr) && (bp->start_addr != bp->end_addr))
        mon_out("-$%04x",addr_location(bp->end_addr));

    if (bp->watch_load)
        mon_out(" load");
    if (bp->watch_store)
        mon_out(" store");

    mon_out("   %s\n", (bp->enabled==e_ON) ? "enabled" : "disabled");

    if (bp->condition) {
        mon_out("\tCondition: ");
        mon_print_conditional(bp->condition);
        mon_out("\n");
    }
    if (bp->command)
        mon_out("\tCommand: %s\n", bp->command);
}
Exemple #2
0
void mon_breakpoint_set_checkpoint_condition(int brk_num,
                                             cond_node_t *cnode)
{
    breakpoint_t *bp;
    bp = find_checkpoint(brk_num);

    if (!bp) {
        mon_out("#%d not a valid breakpoint\n", brk_num);
    } else {
        bp->condition = cnode;

        mon_out("Setting breakpoint %d condition to: ", brk_num);
        mon_print_conditional(cnode);
        mon_out("\n");
    }
}
static void print_checkpoint_info(checkpoint_t *cp)
{
    if (!cp->stop) {
        mon_out("TRACE: ");
    } else if (cp->check_load || cp->check_store) {
        mon_out("WATCH: ");
    } else {
        if (cp->temporary) {
            mon_out("UNTIL: ");
        } else {
            mon_out("BREAK: ");
        }
    }
    mon_out("%d  %s:$%04x", cp->checknum,
            mon_memspace_string[addr_memspace(cp->start_addr)], addr_location(cp->start_addr));
    if (mon_is_valid_addr(cp->end_addr) && (cp->start_addr != cp->end_addr)) {
        mon_out("-$%04x", addr_location(cp->end_addr));
    }

    mon_out(cp->stop ? "  (Stop on" : "  (Trace");
    if (cp->check_load) {
        mon_out(" load");
    }
    if (cp->check_store) {
        mon_out(" store");
    }
    if (cp->check_exec) {
        mon_out(" exec");
    }

    mon_out(")");
    if (cp->enabled != e_ON) {
        mon_out(" disabled");
    }
    mon_out("\n");

    if (cp->condition) {
        mon_out("\tCondition: ");
        mon_print_conditional(cp->condition);
        mon_out("\n");
    }
    if (cp->command) {
        mon_out("\tCommand: %s\n", cp->command);
    }
}
Exemple #4
0
void mon_breakpoint_set_checkpoint_condition(int cp_num,
                                             cond_node_t *cnode)
{
    checkpoint_t *cp;

    if (cnode) {
        cp = find_checkpoint(cp_num);

        if (!cp) {
            mon_out("#%d not a valid checkpoint\n", cp_num);
        } else {
            cp->condition = cnode;

            mon_out("Setting checkpoint %d condition to: ", cp_num);
            mon_print_conditional(cnode);
            mon_out("\n");
        }
    }
}