--- np2/i286c/i286c_sf.c 2003/10/17 11:10:02 1.2 +++ np2/i286c/i286c_sf.c 2003/12/11 21:57:38 1.6 @@ -1,62 +1,61 @@ #include "compiler.h" -#include "i286.h" +#include "cpucore.h" #include "i286c.h" +#include "memory.h" #include "i286c.mcr" #include "i286c_sf.mcr" -#include "memory.h" -#include "nevent.h" // ------------------------------------------------------------------------ -I286_SFT _rol_r8_1(BYTE *p) { +I286_SFT _rol_r8_1(UINT8 *p) { UINT src; UINT dst; src = *p; BYTE_ROL1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _ror_r8_1(BYTE *p) { +I286_SFT _ror_r8_1(UINT8 *p) { UINT src; UINT dst; src = *p; BYTE_ROR1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _rcl_r8_1(BYTE *p) { +I286_SFT _rcl_r8_1(UINT8 *p) { UINT src; UINT dst; src = *p; BYTE_RCL1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _rcr_r8_1(BYTE *p) { +I286_SFT _rcr_r8_1(UINT8 *p) { UINT src; UINT dst; src = *p; BYTE_RCR1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _shl_r8_1(BYTE *p) { +I286_SFT _shl_r8_1(UINT8 *p) { UINT src; UINT dst; src = *p; BYTE_SHL1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } I286_SFT _shr_r8_1(BYTE *p) { @@ -66,7 +65,7 @@ I286_SFT _shr_r8_1(BYTE *p) { src = *p; BYTE_SHR1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } I286_SFT _sar_r8_1(BYTE *p) { @@ -76,7 +75,7 @@ I286_SFT _sar_r8_1(BYTE *p) { src = *p; BYTE_SAR1(dst, src) - *p = (BYTE)dst; + *p = (UINT8)dst; } @@ -87,7 +86,7 @@ I286_SFT _rol_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_ROL1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } I286_SFT _ror_e8_1(UINT32 madr) { @@ -97,7 +96,7 @@ I286_SFT _ror_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_ROR1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } I286_SFT _rcl_e8_1(UINT32 madr) { @@ -107,7 +106,7 @@ I286_SFT _rcl_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_RCL1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } I286_SFT _rcr_e8_1(UINT32 madr) { @@ -117,7 +116,7 @@ I286_SFT _rcr_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_RCR1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } I286_SFT _shl_e8_1(UINT32 madr) { @@ -127,7 +126,7 @@ I286_SFT _shl_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_SHL1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } I286_SFT _shr_e8_1(UINT32 madr) { @@ -137,7 +136,7 @@ I286_SFT _shr_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_SHR1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } I286_SFT _sar_e8_1(UINT32 madr) { @@ -147,7 +146,7 @@ I286_SFT _sar_e8_1(UINT32 madr) { src = i286_memoryread(madr); BYTE_SAR1(dst, src) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } @@ -240,7 +239,7 @@ I286_SFT _rol_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_ROL1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } I286_SFT _ror_e16_1(UINT32 madr) { @@ -250,7 +249,7 @@ I286_SFT _ror_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_ROR1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } I286_SFT _rcl_e16_1(UINT32 madr) { @@ -260,7 +259,7 @@ I286_SFT _rcl_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_RCL1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } I286_SFT _rcr_e16_1(UINT32 madr) { @@ -270,7 +269,7 @@ I286_SFT _rcr_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_RCR1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } I286_SFT _shl_e16_1(UINT32 madr) { @@ -280,7 +279,7 @@ I286_SFT _shl_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_SHL1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } I286_SFT _shr_e16_1(UINT32 madr) { @@ -290,7 +289,7 @@ I286_SFT _shr_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_SHR1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } I286_SFT _sar_e16_1(UINT32 madr) { @@ -300,7 +299,7 @@ I286_SFT _sar_e16_1(UINT32 madr) { src = i286_memoryread_w(madr); WORD_SAR1(dst, src) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } @@ -314,145 +313,145 @@ const I286OPSFTE16 sft_e16_table[] = { // ------------------------------------------------------------------------ -I286_SFT _rol_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _rol_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_ROLCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _ror_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _ror_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_RORCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _rcl_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _rcl_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_RCLCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _rcr_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _rcr_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_RCRCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _shl_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _shl_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_SHLCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _shr_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _shr_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_SHRCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _sar_r8_cl(BYTE *p, BYTE cl) { +I286_SFT _sar_r8_cl(UINT8 *p, REG8 cl) { UINT src; UINT dst; src = *p; BYTE_SARCL(dst, src, cl) - *p = (BYTE)dst; + *p = (UINT8)dst; } -I286_SFT _rol_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _rol_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_ROLCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } -I286_SFT _ror_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _ror_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_RORCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } -I286_SFT _rcl_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _rcl_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_RCLCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } -I286_SFT _rcr_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _rcr_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_RCRCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } -I286_SFT _shl_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _shl_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_SHLCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } -I286_SFT _shr_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _shr_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_SHRCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } -I286_SFT _sar_e8_cl(UINT32 madr, BYTE cl) { +I286_SFT _sar_e8_cl(UINT32 madr, REG8 cl) { UINT src; UINT dst; src = i286_memoryread(madr); BYTE_SARCL(dst, src, cl) - i286_memorywrite(madr, (BYTE)dst); + i286_memorywrite(madr, (REG8)dst); } @@ -467,7 +466,7 @@ const I286OPSFTE8CL sft_e8cl_table[] = { // ------------------------------------------------------------------------ -I286_SFT _rol_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _rol_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -477,7 +476,7 @@ I286_SFT _rol_r16_cl(UINT16 *p, BYTE cl) *p = (UINT16)dst; } -I286_SFT _ror_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _ror_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -487,7 +486,7 @@ I286_SFT _ror_r16_cl(UINT16 *p, BYTE cl) *p = (UINT16)dst; } -I286_SFT _rcl_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _rcl_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -497,7 +496,7 @@ I286_SFT _rcl_r16_cl(UINT16 *p, BYTE cl) *p = (UINT16)dst; } -I286_SFT _rcr_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _rcr_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -507,7 +506,7 @@ I286_SFT _rcr_r16_cl(UINT16 *p, BYTE cl) *p = (UINT16)dst; } -I286_SFT _shl_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _shl_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -517,7 +516,7 @@ I286_SFT _shl_r16_cl(UINT16 *p, BYTE cl) *p = (UINT16)dst; } -I286_SFT _shr_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _shr_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -527,7 +526,7 @@ I286_SFT _shr_r16_cl(UINT16 *p, BYTE cl) *p = (UINT16)dst; } -I286_SFT _sar_r16_cl(UINT16 *p, BYTE cl) { +I286_SFT _sar_r16_cl(UINT16 *p, REG8 cl) { UINT32 src; UINT32 dst; @@ -538,74 +537,74 @@ I286_SFT _sar_r16_cl(UINT16 *p, BYTE cl) } -I286_SFT _rol_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _rol_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_ROLCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } -I286_SFT _ror_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _ror_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_RORCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } -I286_SFT _rcl_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _rcl_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_RCLCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } -I286_SFT _rcr_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _rcr_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_RCRCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } -I286_SFT _shl_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _shl_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_SHLCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } -I286_SFT _shr_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _shr_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_SHRCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); } -I286_SFT _sar_e16_cl(UINT32 madr, BYTE cl) { +I286_SFT _sar_e16_cl(UINT32 madr, REG8 cl) { UINT32 src; UINT32 dst; src = i286_memoryread_w(madr); WORD_SARCL(dst, src, cl) - i286_memorywrite_w(madr, (UINT16)dst); + i286_memorywrite_w(madr, (REG16)dst); }