diff --git a/bus.cpp b/bus.cpp index 14d53d3..9e1b73c 100644 --- a/bus.cpp +++ b/bus.cpp @@ -195,6 +195,13 @@ uint16_t bus::read(const uint16_t a, const bool word_mode, const bool use_prev, DOLOG(debug, !peek_only, "readb stack limit register"); return c -> getStackLimitRegister() >> 8; } + + if (a == ADDR_MICROPROG_BREAK_REG) { // microprogram break register + return microprogram_break_register & 255; + } + if (a == ADDR_MICROPROG_BREAK_REG + 1) { // microprogram break register + return microprogram_break_register >> 8; + } } else { if (a == ADDR_MMR0) { @@ -230,6 +237,10 @@ uint16_t bus::read(const uint16_t a, const bool word_mode, const bool use_prev, DOLOG(debug, !peek_only, "read CPUERR"); return CPUERR; } + + if (a == ADDR_MICROPROG_BREAK_REG) { // microprogram break register + return microprogram_break_register; + } } if (tm11 && a >= TM_11_BASE && a < TM_11_END)