From b99e4210bac71e75e963f2f3070e3ac3e927b410 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Wed, 31 May 2017 19:57:03 -0400 Subject: [PATCH] Eliminated pointless abstraction; I ended up going indirect on instruction pages rather than scheduling methods. --- Processors/Z80/Z80.hpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Processors/Z80/Z80.hpp b/Processors/Z80/Z80.hpp index b71840c2f..e229acf20 100644 --- a/Processors/Z80/Z80.hpp +++ b/Processors/Z80/Z80.hpp @@ -628,10 +628,6 @@ template class Processor: public MicroOpScheduler { target.fetch_decode_execute[2] = fetch_decode_execute[2]; } - void decode_operation(uint8_t operation) { - schedule_program(current_instruction_page_->instructions[operation]); - } - public: Processor() : MicroOpScheduler(), halt_mask_(0xff), @@ -705,7 +701,7 @@ template class Processor: public MicroOpScheduler { case MicroOp::DecodeOperation: r_ = (r_ & 0x80) | ((r_ + current_instruction_page_->r_step_) & 0x7f); pc_.full++; - decode_operation(operation_ & halt_mask_); + schedule_program(current_instruction_page_->instructions[operation_ & halt_mask_]); break; case MicroOp::Increment16: (*(uint16_t *)operation->source)++; break;