|
|
| version 1.13, 2003/12/17 14:26:27 | version 1.15, 2003/12/25 19:58:24 |
|---|---|
| Line 51 I286_0F _lgdt(UINT op) { | Line 51 I286_0F _lgdt(UINT op) { |
| I286_GDTR.limit = i286_memoryread_w(seg + ad); | I286_GDTR.limit = i286_memoryread_w(seg + ad); |
| I286_GDTR.base = i286_memoryread_w(seg + LOW16(ad + 2)); | I286_GDTR.base = i286_memoryread_w(seg + LOW16(ad + 2)); |
| I286_GDTR.base24 = i286_memoryread(seg + LOW16(ad + 4)); | I286_GDTR.base24 = i286_memoryread(seg + LOW16(ad + 4)); |
| I286_GDTR.reserved = i286_memoryread(seg + LOW16(ad + 5)); | // I286_GDTR.reserved = i286_memoryread(seg + LOW16(ad + 5)); |
| } | } |
| else { | else { |
| INT_NUM(6, I286_IP - 2); | INT_NUM(6, I286_IP - 2); |
| Line 69 I286_0F _lidt(UINT op) { | Line 69 I286_0F _lidt(UINT op) { |
| I286_IDTR.limit = i286_memoryread_w(seg + ad); | I286_IDTR.limit = i286_memoryread_w(seg + ad); |
| I286_IDTR.base = i286_memoryread_w(seg + LOW16(ad + 2)); | I286_IDTR.base = i286_memoryread_w(seg + LOW16(ad + 2)); |
| I286_IDTR.base24 = i286_memoryread(seg + LOW16(ad + 4)); | I286_IDTR.base24 = i286_memoryread(seg + LOW16(ad + 4)); |
| I286_IDTR.reserved = i286_memoryread(seg + LOW16(ad + 5)); | // I286_IDTR.reserved = i286_memoryread(seg + LOW16(ad + 5)); |
| } | } |
| else { | else { |
| INT_NUM(6, I286_IP - 2); | INT_NUM(6, I286_IP - 2); |
| Line 90 I286_0F _smsw(UINT op) { | Line 90 I286_0F _smsw(UINT op) { |
| I286_0F _lmsw(UINT op) { | I286_0F _lmsw(UINT op) { |
| REG16 msw; | |
| if (op >= 0xc0) { | if (op >= 0xc0) { |
| I286_WORKCLOCK(2); | I286_WORKCLOCK(2); |
| I286_MSW = *(REG16_B20(op)); | msw = *(REG16_B20(op)); |
| } | } |
| else { | else { |
| I286_WORKCLOCK(3); | I286_WORKCLOCK(3); |
| I286_MSW = i286_memoryread_w(CALC_EA(op)); | msw = i286_memoryread_w(CALC_EA(op)); |
| } | } |
| I286_MSW = msw | (I286_MSW & 1); | |
| } | } |
| static const I286OP_0F cts1_table[] = { | static const I286OP_0F cts1_table[] = { |