PCem
changeset 16:18fcddb6b75c
Fixed 0fh prefix illegal instructions.
| author | TomW |
|---|---|
| date | Sat Aug 03 20:40:56 2013 +0100 |
| parents | cdce787defd5 |
| children | 5fabef03e81b |
| files | src/386_ops.h |
| diffstat | 1 files changed, 1 insertions(+), 16 deletions(-) [+] |
line diff
1.1 --- a/src/386_ops.h Sat Aug 03 15:05:50 2013 +0100 1.2 +++ b/src/386_ops.h Sat Aug 03 20:40:56 2013 +0100 1.3 @@ -112,20 +112,13 @@ 1.4 { 1.5 int opcode = fetchdat & 0xff; 1.6 pc++; 1.7 - if (x86_opcodes_0f[opcode] == ILLEGAL && opcode != 0xff) 1.8 - { 1.9 - fatal("Illegal 0f instruction %02X w_a16\n", opcode); 1.10 - } 1.11 + 1.12 return x86_opcodes_0f[opcode](fetchdat >> 8); 1.13 } 1.14 static int op0F_l_a16(uint32_t fetchdat) 1.15 { 1.16 int opcode = fetchdat & 0xff; 1.17 pc++; 1.18 - if (x86_opcodes_0f[opcode | 0x100] == ILLEGAL && opcode != 0xff) 1.19 - { 1.20 - fatal("Illegal 0f instruction %02X l_a16\n", opcode); 1.21 - } 1.22 1.23 return x86_opcodes_0f[opcode | 0x100](fetchdat >> 8); 1.24 } 1.25 @@ -133,10 +126,6 @@ 1.26 { 1.27 int opcode = fetchdat & 0xff; 1.28 pc++; 1.29 - if (x86_opcodes_0f[opcode | 0x200] == ILLEGAL && opcode != 0xff) 1.30 - { 1.31 - fatal("Illegal 0f instruction %02X w_a32\n", opcode); 1.32 - } 1.33 1.34 return x86_opcodes_0f[opcode | 0x200](fetchdat >> 8); 1.35 } 1.36 @@ -144,10 +133,6 @@ 1.37 { 1.38 int opcode = fetchdat & 0xff; 1.39 pc++; 1.40 - if (x86_opcodes_0f[opcode | 0x300] == ILLEGAL && opcode != 0xff) 1.41 - { 1.42 - fatal("Illegal 0f instruction %02X l_a32\n", opcode); 1.43 - } 1.44 1.45 return x86_opcodes_0f[opcode | 0x300](fetchdat >> 8); 1.46 }
