[sim] andx ignored h/l-bit
authorMartin Perner <martin@perner.cc>
Mon, 20 Dec 2010 22:55:16 +0000 (23:55 +0100)
committerMartin Perner <martin@perner.cc>
Mon, 20 Dec 2010 22:56:19 +0000 (23:56 +0100)
3c_disasm/instr/andx.cpp

index fed223707d6fd4b77978d7ba2c888cb6a249bd6f..6bc03410beaa53449263d06b99b7f05e5f9beb85 100644 (file)
@@ -61,6 +61,9 @@ void Candx::execInstr()
 {
        CDat val = this->m_cpu->getRegister(this->m_rd);
        CDat imm = generate16ImmFill(this->m_imm);
+       if(this->m_hl) {
+               imm <<= 16;
+       }
        val &= imm;
 
        this->m_cpu->setRegister(this->m_rd, val);