fix: исправил условия перехода
This commit is contained in:
@ -276,13 +276,13 @@ class VM:
|
||||
def _branch_callback(self, cond: int, disp: int) -> None:
|
||||
c = Condition(cond)
|
||||
vm_c = Condition(self.cc)
|
||||
if (c.v & vm_c.v) & (c.n & vm_c.n) & (c.z & vm_c.z) == c.i:
|
||||
if (c.v & vm_c.v) | (c.n & vm_c.n) | (c.z & vm_c.z) == c.i:
|
||||
self.pc = c_uint32(self.pc.value + disp)
|
||||
|
||||
def _branch_indexed_callback(self, cond: int, r1: int, disp: int) -> None:
|
||||
c = Condition(cond)
|
||||
vm_c = Condition(self.cc.value)
|
||||
if (c.v & vm_c.v) & (c.n & vm_c.n) & (c.z & vm_c.z) == c.i:
|
||||
if (c.v & vm_c.v) | (c.n & vm_c.n) | (c.z & vm_c.z) == c.i:
|
||||
addr = self.registers[r1].value + disp
|
||||
self.pc = c_uint32(addr)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user