def _cond_jr(processor, memory, pc, flag, jump_value): offset, pc = fetch_signed_byte(memory, pc) if processor.condition(flag) == jump_value: _jr_offset(processor.special_registers, offset) return 12, True, pc else: return 7, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) _cp_value( self.processor, self.memory[0xffff & (self.processor.index_registers[self.indexed_reg] + offset)], False) return 19, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) self.processor.main_registers['b'] = (self.processor.main_registers['b'] - 1) & 0xff if self.processor.main_registers['b'] != 0: _jr_offset(self.processor.special_registers, offset) return 13, True, pc else: return 8, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) self.processor.main_registers['b'] = ( self.processor.main_registers['b'] - 1) & 0xff if self.processor.main_registers['b'] != 0: _jr_offset(self.processor.special_registers, offset) return 13, True, pc else: return 8, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) _jr_offset(processor.special_registers, offset) return 12, True, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) address = self.processor.index_registers[self.indexed_reg] + offset result = _dec_value(self.processor, self.memory[0xffff & address]) self.memory[0xffff & address] = result return 23, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) value = self.memory[0xffff & ( self.processor.index_registers[self.indexed_reg] + offset)] _sub_a(self.processor, value, self.processor.condition('c')) return 19, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) _cp_value(self.processor, self.memory[0xffff & (self.processor.index_registers[self.indexed_reg] + offset)], False) return 19, False, pc
def execute(self, processor, memory, pc): offset, pc = fetch_signed_byte(memory, pc) value = self.memory[0xffff & (self.processor.index_registers[self.indexed_reg] + offset)] _sub_a(self.processor, value, self.processor.condition('c')) return 19, False, pc