comparison debug.c @ 2183:eb2e0e61b1b4

Fix stale values in display
author Michael Pavone <pavone@retrodev.com>
date Sat, 13 Aug 2022 22:57:57 -0700
parents 2d7f8195be3b
children 408fb8a7e990
comparison
equal deleted inserted replaced
2182:2d7f8195be3b 2183:eb2e0e61b1b4
2720 uint8_t * pc = get_native_pointer(address, (void **)context->mem_pointers, &context->Z80_OPTS->gen); 2720 uint8_t * pc = get_native_pointer(address, (void **)context->mem_pointers, &context->Z80_OPTS->gen);
2721 if (!pc) { 2721 if (!pc) {
2722 fatal_error("Failed to get native pointer on entering Z80 debugger at address %X\n", address); 2722 fatal_error("Failed to get native pointer on entering Z80 debugger at address %X\n", address);
2723 } 2723 }
2724 for (disp_def * cur = root->displays; cur; cur = cur->next) { 2724 for (disp_def * cur = root->displays; cur; cur = cur->next) {
2725 for (int i = 0; i < cur->num_args; i++)
2726 {
2727 eval_expr(root, cur->args[i].parsed, &cur->args[i].value);
2728 }
2725 cmd_print(root, cur->format, cur->num_args, cur->args); 2729 cmd_print(root, cur->format, cur->num_args, cur->args);
2726 } 2730 }
2727 uint8_t * after_pc = z80_decode(pc, &inst); 2731 uint8_t * after_pc = z80_decode(pc, &inst);
2728 z80_disasm(&inst, input_buf, address); 2732 z80_disasm(&inst, input_buf, address);
2729 printf("%X:\t%s\n", address, input_buf); 2733 printf("%X:\t%s\n", address, input_buf);
2820 } 2824 }
2821 uint32_t after = m68k_decode(m68k_instruction_fetch, context, &inst, address); 2825 uint32_t after = m68k_decode(m68k_instruction_fetch, context, &inst, address);
2822 root->after = after; 2826 root->after = after;
2823 root->inst = &inst; 2827 root->inst = &inst;
2824 for (disp_def * cur = root->displays; cur; cur = cur->next) { 2828 for (disp_def * cur = root->displays; cur; cur = cur->next) {
2829 for (int i = 0; i < cur->num_args; i++)
2830 {
2831 eval_expr(root, cur->args[i].parsed, &cur->args[i].value);
2832 }
2825 cmd_print(root, cur->format, cur->num_args, cur->args); 2833 cmd_print(root, cur->format, cur->num_args, cur->args);
2826 } 2834 }
2827 m68k_disasm(&inst, input_buf); 2835 m68k_disasm(&inst, input_buf);
2828 printf("%X: %s\n", address, input_buf); 2836 printf("%X: %s\n", address, input_buf);
2829 #ifdef _WIN32 2837 #ifdef _WIN32