diff --git a/src/cpu.py b/src/cpu.py index da4ce9d..25a3278 100644 --- a/src/cpu.py +++ b/src/cpu.py @@ -55,6 +55,13 @@ class TwoDigitHexInput: print(self.digits) +group = displayio.Group() +board.DISPLAY.root_group = group +text_area = label.Label(terminalio.FONT, text="") +text_area.x = 10 +text_area.y = 10 +group.append(text_area) + class CPU: def __init__(self): self.running = False @@ -90,14 +97,11 @@ class CPU: print() def print_monitor(self): - displayGroup = displayio.Group() - board.DISPLAY.root_group = displayGroup + text1 = "IP " + str(self.IP) + " DATA " + str(self.memory[self.IP]) # + "ACC " + str(self.acc) + print(text1) + text_area.text = text1 + - text = "IP " + str(self.IP) + "DATA " + str(self.memory[self.IP]) + "ACC " + str(self.acc) - text_area = label.Label(terminalio.FONT, text=text) - text_area.x = 10 - text_area.y = 100 - displayGroup.append(text_area) def read_keys(self): @@ -172,10 +176,10 @@ class CPU: t = time.time() while (time.time() - t) < 30: self.read_keys() -# self.print_monitor() -# if self.running: -# self.step() -# time.sleep(0.5) + if self.running: + self.step() + self.print_monitor() + time.sleep(0.5) print("timeout") print(self.memory) @@ -300,8 +304,8 @@ class CPU: cpu = CPU() -#prog = '04 FF 04 01 14 01 00 00' -prog = '00' +prog = '04 FF 04 01 14 01 00 00' +#prog = '00' program_bytes = bytearray.fromhex(prog.replace(" ", "")) # Add jmp at addr 254: program_with_jump = program_bytes + bytearray(254 - len(program_bytes)) + bytearray.fromhex('0600')