Add notd, used by vf2 collision (nw)

This commit is contained in:
Olivier Galibert 2018-04-05 21:26:54 +02:00
parent 26389b2bed
commit f65019462c
2 changed files with 14 additions and 6 deletions

View File

@ -307,6 +307,14 @@ void mb86233_device::alu_pre(u32 alu)
break;
}
case 0x04: {
// notd
m_alu_stmask = F_ZRD|F_SGD|F_CPD|F_OVD|F_DVZD;
m_alu_r1 = ~m_d;
m_alu_stset = m_alu_r1 ? m_alu_r1 & 0x80000000 ? F_SGD : 0 : F_ZRD;
break;
}
case 0x05: {
// fcpd
m_alu_stmask = F_ZRD|F_SGD|F_CPD|F_OVD|F_DVZD;
@ -504,11 +512,11 @@ void mb86233_device::alu_post(u32 alu)
alu_update_st();
break;
case 0x01: case 0x02: case 0x03: case 0x06:
case 0x07: case 0x0b: case 0x0c: case 0x0e:
case 0x0f: case 0x10: case 0x11: case 0x13:
case 0x14: case 0x16: case 0x17: case 0x18:
case 0x19: case 0x1a: case 0x1b:
case 0x01: case 0x02: case 0x03: case 0x04:
case 0x06: case 0x07: case 0x0b: case 0x0c:
case 0x0e: case 0x0f: case 0x10: case 0x11:
case 0x13: case 0x14: case 0x16: case 0x17:
case 0x18: case 0x19: case 0x1a: case 0x1b:
// d update
m_d = m_alu_r1;
alu_update_st();

View File

@ -222,7 +222,7 @@ std::string mb86233_disassembler::alu0_func(u32 alu)
case 0x01: util::stream_format(stream, "andd"); break;
case 0x02: util::stream_format(stream, "orad"); break;
case 0x03: util::stream_format(stream, "eord"); break;
// 04
case 0x04: util::stream_format(stream, "notd"); break;
case 0x05: util::stream_format(stream, "fcpd"); break;
case 0x06: util::stream_format(stream, "fadd"); break;
case 0x07: util::stream_format(stream, "fsbd"); break;