diff --git a/src/py65/devices/mpu6502.py b/src/py65/devices/mpu6502.py index 8fc7852..a725726 100644 --- a/src/py65/devices/mpu6502.py +++ b/src/py65/devices/mpu6502.py @@ -43,7 +43,7 @@ class MPU: # init self.reset() - def reprformat(self): + def reprformat(self): return ("%s PC AC XR YR SP NV-BDIZC\n" + \ "%s: %04x %02x %02x %02x %02x %s" ) @@ -52,18 +52,16 @@ class MPU: flags = itoa(self.p, 2).rjust(self.byteWidth, '0') indent = ' ' * (len(self.name) + 2) - return self.reprformat() % (indent, self.name, + return self.reprformat() % (indent, self.name, self.pc, self.a, self.x, self.y, self.sp, flags) def step(self): instructCode = self.ImmediateByte() - self.pc +=1 - self.pc &=self.addrMask + self.pc = (self.pc + 1) & self.addrMask self.excycles = 0 self.addcycles = self.extracycles[instructCode] self.instruct[instructCode](self) self.processorCycles += self.cycletime[instructCode]+self.excycles - self.pc &= self.addrMask return self def reset(self): @@ -170,7 +168,7 @@ class MPU: def stPushWord(self, z): self.stPush((z>>self.byteWidth)&self.byteMask) self.stPush(z&self.byteMask) - + def stPopWord(self): z = self.stPop() z += self.stPop()<