diff options
-rw-r--r-- | lc3.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -169,7 +169,7 @@ uint16_t read_memory(const uint16_t address) { if (check_key()) { - memory[MEMORY_KBSR] = 1u << 15; + memory[MEMORY_KBSR] |= 1u << 15; uint8_t c; ssize_t r = read(0, &c, 1); die(r, "read_memory read()"); @@ -177,7 +177,7 @@ uint16_t read_memory(const uint16_t address) } else { - memory[MEMORY_KBSR] = 0; + memory[MEMORY_KBSR] &= ~(1u << 15); } } else if (MEMORY_DSR == address) |