|
|
| version 1.1.1.1, 2003/10/16 17:57:45 | version 1.3, 2003/10/17 11:10:02 |
|---|---|
| Line 13 I286EXT i286c_rep_insb(void) { | Line 13 I286EXT i286c_rep_insb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| BYTE dat = iocore_inp8(I286_DX); | BYTE dat = iocore_inp8(I286_DX); |
| i286_memorywrite(I286_DI + ES_BASE, dat); | i286_memorywrite(I286_DI + ES_BASE, dat); |
| Line 27 I286EXT i286c_rep_insw(void) { | Line 27 I286EXT i286c_rep_insw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| WORD dat = iocore_inp16(I286_DX); | UINT16 dat = iocore_inp16(I286_DX); |
| i286_memorywrite_w(I286_DI + ES_BASE, dat); | i286_memorywrite_w(I286_DI + ES_BASE, dat); |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(4) | I286_CLOCK(4) |
| Line 43 I286EXT i286c_rep_outsb(void) { | Line 43 I286EXT i286c_rep_outsb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| BYTE dat = i286_memoryread(I286_SI + DS_FIX); | BYTE dat = i286_memoryread(I286_SI + DS_FIX); |
| I286_SI += stp; | I286_SI += stp; |
| Line 57 I286EXT i286c_rep_outsw(void) { | Line 57 I286EXT i286c_rep_outsw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| WORD dat = i286_memoryread_w(I286_SI + DS_FIX); | UINT16 dat = i286_memoryread_w(I286_SI + DS_FIX); |
| I286_SI += stp; | I286_SI += stp; |
| iocore_out16(I286_DX, dat); | iocore_out16(I286_DX, dat); |
| I286_CLOCK(4) | I286_CLOCK(4) |
| Line 73 I286EXT i286c_rep_movsb(void) { | Line 73 I286EXT i286c_rep_movsb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| BYTE dat = i286_memoryread(I286_SI + DS_FIX); | BYTE dat = i286_memoryread(I286_SI + DS_FIX); |
| i286_memorywrite(I286_DI + ES_BASE, dat); | i286_memorywrite(I286_DI + ES_BASE, dat); |
| Line 88 I286EXT i286c_rep_movsw(void) { | Line 88 I286EXT i286c_rep_movsw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| WORD dat = i286_memoryread_w(I286_SI + DS_FIX); | UINT16 dat = i286_memoryread_w(I286_SI + DS_FIX); |
| i286_memorywrite_w(I286_DI + ES_BASE, dat); | i286_memorywrite_w(I286_DI + ES_BASE, dat); |
| I286_SI += stp; | I286_SI += stp; |
| I286_DI += stp; | I286_DI += stp; |
| Line 105 I286EXT i286c_rep_lodsb(void) { | Line 105 I286EXT i286c_rep_lodsb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| I286_AL = i286_memoryread(I286_SI + DS_FIX); | I286_AL = i286_memoryread(I286_SI + DS_FIX); |
| I286_SI += stp; | I286_SI += stp; |
| Line 118 I286EXT i286c_rep_lodsw(void) { | Line 118 I286EXT i286c_rep_lodsw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| I286_AX = i286_memoryread_w(I286_SI + DS_FIX); | I286_AX = i286_memoryread_w(I286_SI + DS_FIX); |
| I286_SI += stp; | I286_SI += stp; |
| Line 133 I286EXT i286c_rep_stosb(void) { | Line 133 I286EXT i286c_rep_stosb(void) { |
| I286_CLOCK(4) | I286_CLOCK(4) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| i286_memorywrite(I286_DI + ES_BASE, I286_AL); | i286_memorywrite(I286_DI + ES_BASE, I286_AL); |
| I286_DI += stp; | I286_DI += stp; |
| Line 146 I286EXT i286c_rep_stosw(void) { | Line 146 I286EXT i286c_rep_stosw(void) { |
| I286_CLOCK(4) | I286_CLOCK(4) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| i286_memorywrite_w(I286_DI + ES_BASE, I286_AX); | i286_memorywrite_w(I286_DI + ES_BASE, I286_AX); |
| I286_DI += stp; | I286_DI += stp; |
| Line 161 I286EXT i286c_repe_cmpsb(void) { | Line 161 I286EXT i286c_repe_cmpsb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| DWORD res; | UINT res; |
| DWORD dst = i286_memoryread(I286_SI + DS_FIX); | UINT dst = i286_memoryread(I286_SI + DS_FIX); |
| DWORD src = i286_memoryread(I286_DI + ES_BASE); | UINT src = i286_memoryread(I286_DI + ES_BASE); |
| I286_SI += stp; | I286_SI += stp; |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(9) | I286_CLOCK(9) |
| Line 179 I286EXT i286c_repne_cmpsb(void) { | Line 179 I286EXT i286c_repne_cmpsb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| do { | do { |
| DWORD res; | UINT res; |
| DWORD dst = i286_memoryread(I286_SI + DS_FIX); | UINT dst = i286_memoryread(I286_SI + DS_FIX); |
| DWORD src = i286_memoryread(I286_DI + ES_BASE); | UINT src = i286_memoryread(I286_DI + ES_BASE); |
| I286_SI += stp; | I286_SI += stp; |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(9) | I286_CLOCK(9) |
| Line 197 I286EXT i286c_repe_cmpsw(void) { | Line 197 I286EXT i286c_repe_cmpsw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| DWORD res; | UINT32 res; |
| DWORD dst = i286_memoryread_w(I286_SI + DS_FIX); | UINT32 dst = i286_memoryread_w(I286_SI + DS_FIX); |
| DWORD src = i286_memoryread_w(I286_DI + ES_BASE); | UINT32 src = i286_memoryread_w(I286_DI + ES_BASE); |
| I286_SI += stp; | I286_SI += stp; |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(9) | I286_CLOCK(9) |
| Line 215 I286EXT i286c_repne_cmpsw(void) { | Line 215 I286EXT i286c_repne_cmpsw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| do { | do { |
| DWORD res; | UINT32 res; |
| DWORD dst = i286_memoryread_w(I286_SI + DS_FIX); | UINT32 dst = i286_memoryread_w(I286_SI + DS_FIX); |
| DWORD src = i286_memoryread_w(I286_DI + ES_BASE); | UINT32 src = i286_memoryread_w(I286_DI + ES_BASE); |
| I286_SI += stp; | I286_SI += stp; |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(9) | I286_CLOCK(9) |
| Line 235 I286EXT i286c_repe_scasb(void) { | Line 235 I286EXT i286c_repe_scasb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| DWORD dst = I286_AL; | UINT dst = I286_AL; |
| do { | do { |
| DWORD res; | UINT res; |
| DWORD src = i286_memoryread(I286_DI + ES_BASE); | UINT src = i286_memoryread(I286_DI + ES_BASE); |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(8) | I286_CLOCK(8) |
| BYTE_SUB(res, dst, src) | BYTE_SUB(res, dst, src) |
| Line 252 I286EXT i286c_repne_scasb(void) { | Line 252 I286EXT i286c_repne_scasb(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIR; | SINT16 stp = STRING_DIR; |
| DWORD dst = I286_AL; | UINT dst = I286_AL; |
| do { | do { |
| DWORD res; | UINT res; |
| DWORD src = i286_memoryread(I286_DI + ES_BASE); | UINT src = i286_memoryread(I286_DI + ES_BASE); |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(8) | I286_CLOCK(8) |
| BYTE_SUB(res, dst, src) | BYTE_SUB(res, dst, src) |
| Line 269 I286EXT i286c_repe_scasw(void) { | Line 269 I286EXT i286c_repe_scasw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| DWORD dst = I286_AX; | UINT32 dst = I286_AX; |
| do { | do { |
| DWORD res; | UINT32 res; |
| DWORD src = i286_memoryread_w(I286_DI + ES_BASE); | UINT32 src = i286_memoryread_w(I286_DI + ES_BASE); |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(8) | I286_CLOCK(8) |
| WORD_SUB(res, dst, src) | WORD_SUB(res, dst, src) |
| Line 286 I286EXT i286c_repne_scasw(void) { | Line 286 I286EXT i286c_repne_scasw(void) { |
| I286_CLOCK(5) | I286_CLOCK(5) |
| if (I286_CX) { | if (I286_CX) { |
| WORD stp = STRING_DIRx2; | SINT16 stp = STRING_DIRx2; |
| DWORD dst = I286_AX; | UINT32 dst = I286_AX; |
| do { | do { |
| DWORD res; | UINT32 res; |
| DWORD src = i286_memoryread_w(I286_DI + ES_BASE); | UINT32 src = i286_memoryread_w(I286_DI + ES_BASE); |
| I286_DI += stp; | I286_DI += stp; |
| I286_CLOCK(8) | I286_CLOCK(8) |
| WORD_SUB(res, dst, src) | WORD_SUB(res, dst, src) |