Lines Matching refs:M

88     if (M.x86.R_SP != 0) {  in x86emuOp_illegal_op()
92 M.x86.R_CS, M.x86.R_IP - 1, op1)); in x86emuOp_illegal_op()
181 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_RM_R()
209 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_RM_R()
237 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_RM_R()
265 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_RM_R()
362 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_R_RM()
388 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_R_RM()
414 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_R_RM()
440 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_R_RM()
480 M.x86.R_AL = add_byte(M.x86.R_AL, srcval); in x86emuOp_add_byte_AL_IMM()
495 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_AX_IMM()
505 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_add_word_AX_IMM()
506 M.x86.R_EAX = add_long(M.x86.R_EAX, srcval); in x86emuOp_add_word_AX_IMM()
509 M.x86.R_AX = add_word(M.x86.R_AX, (u16) srcval); in x86emuOp_add_word_AX_IMM()
525 push_word(M.x86.R_ES); in x86emuOp_push_ES()
540 M.x86.R_ES = pop_word(); in x86emuOp_pop_ES()
619 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_RM_R()
647 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_RM_R()
675 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_RM_R()
703 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_RM_R()
800 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_R_RM()
826 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_R_RM()
852 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_R_RM()
878 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_R_RM()
918 M.x86.R_AL = or_byte(M.x86.R_AL, srcval); in x86emuOp_or_byte_AL_IMM()
933 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_AX_IMM()
943 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_or_word_AX_IMM()
944 M.x86.R_EAX = or_long(M.x86.R_EAX, srcval); in x86emuOp_or_word_AX_IMM()
947 M.x86.R_AX = or_word(M.x86.R_AX, (u16) srcval); in x86emuOp_or_word_AX_IMM()
963 push_word(M.x86.R_CS); in x86emuOp_push_CS()
975 u8 op2 = (*sys_rdb) (((u32) M.x86.R_CS << 4) + (M.x86.R_IP++)); in x86emuOp_two_byte()
1055 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_RM_R()
1083 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_RM_R()
1111 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_RM_R()
1139 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_RM_R()
1236 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_R_RM()
1262 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_R_RM()
1288 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_R_RM()
1314 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_R_RM()
1354 M.x86.R_AL = adc_byte(M.x86.R_AL, srcval); in x86emuOp_adc_byte_AL_IMM()
1369 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_AX_IMM()
1379 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_adc_word_AX_IMM()
1380 M.x86.R_EAX = adc_long(M.x86.R_EAX, srcval); in x86emuOp_adc_word_AX_IMM()
1383 M.x86.R_AX = adc_word(M.x86.R_AX, (u16) srcval); in x86emuOp_adc_word_AX_IMM()
1399 push_word(M.x86.R_SS); in x86emuOp_push_SS()
1414 M.x86.R_SS = pop_word(); in x86emuOp_pop_SS()
1493 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_RM_R()
1521 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_RM_R()
1549 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_RM_R()
1577 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_RM_R()
1674 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_R_RM()
1700 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_R_RM()
1726 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_R_RM()
1752 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_R_RM()
1792 M.x86.R_AL = sbb_byte(M.x86.R_AL, srcval); in x86emuOp_sbb_byte_AL_IMM()
1807 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_AX_IMM()
1817 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sbb_word_AX_IMM()
1818 M.x86.R_EAX = sbb_long(M.x86.R_EAX, srcval); in x86emuOp_sbb_word_AX_IMM()
1821 M.x86.R_AX = sbb_word(M.x86.R_AX, (u16) srcval); in x86emuOp_sbb_word_AX_IMM()
1837 push_word(M.x86.R_DS); in x86emuOp_push_DS()
1852 M.x86.R_DS = pop_word(); in x86emuOp_pop_DS()
1935 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_RM_R()
1963 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_RM_R()
1991 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_RM_R()
2019 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_RM_R()
2116 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_R_RM()
2142 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_R_RM()
2169 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_R_RM()
2195 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_R_RM()
2235 M.x86.R_AL = and_byte(M.x86.R_AL, srcval); in x86emuOp_and_byte_AL_IMM()
2250 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_AX_IMM()
2260 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_and_word_AX_IMM()
2261 M.x86.R_EAX = and_long(M.x86.R_EAX, srcval); in x86emuOp_and_word_AX_IMM()
2264 M.x86.R_AX = and_word(M.x86.R_AX, (u16) srcval); in x86emuOp_and_word_AX_IMM()
2280 M.x86.mode |= SYSMODE_SEGOVR_ES; in x86emuOp_segovr_ES()
2298 M.x86.R_AL = daa_byte(M.x86.R_AL); in x86emuOp_daa()
2377 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_RM_R()
2405 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_RM_R()
2433 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_RM_R()
2461 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_RM_R()
2558 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_R_RM()
2584 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_R_RM()
2610 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_R_RM()
2636 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_R_RM()
2676 M.x86.R_AL = sub_byte(M.x86.R_AL, srcval); in x86emuOp_sub_byte_AL_IMM()
2691 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_AX_IMM()
2701 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_sub_word_AX_IMM()
2702 M.x86.R_EAX = sub_long(M.x86.R_EAX, srcval); in x86emuOp_sub_word_AX_IMM()
2705 M.x86.R_AX = sub_word(M.x86.R_AX, (u16) srcval); in x86emuOp_sub_word_AX_IMM()
2721 M.x86.mode |= SYSMODE_SEGOVR_CS; in x86emuOp_segovr_CS()
2736 M.x86.R_AL = das_byte(M.x86.R_AL); in x86emuOp_das()
2815 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_RM_R()
2843 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_RM_R()
2871 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_RM_R()
2899 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_RM_R()
2996 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_R_RM()
3022 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_R_RM()
3048 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_R_RM()
3074 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_R_RM()
3114 M.x86.R_AL = xor_byte(M.x86.R_AL, srcval); in x86emuOp_xor_byte_AL_IMM()
3129 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_AX_IMM()
3139 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xor_word_AX_IMM()
3140 M.x86.R_EAX = xor_long(M.x86.R_EAX, srcval); in x86emuOp_xor_word_AX_IMM()
3143 M.x86.R_AX = xor_word(M.x86.R_AX, (u16) srcval); in x86emuOp_xor_word_AX_IMM()
3159 M.x86.mode |= SYSMODE_SEGOVR_SS; in x86emuOp_segovr_SS()
3174 M.x86.R_AX = aaa_word(M.x86.R_AX); in x86emuOp_aaa()
3250 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_RM_R()
3276 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_RM_R()
3302 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_RM_R()
3328 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_RM_R()
3425 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_R_RM()
3451 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_R_RM()
3477 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_R_RM()
3503 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_R_RM()
3543 cmp_byte(M.x86.R_AL, srcval); in x86emuOp_cmp_byte_AL_IMM()
3558 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_AX_IMM()
3568 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmp_word_AX_IMM()
3569 cmp_long(M.x86.R_EAX, srcval); in x86emuOp_cmp_word_AX_IMM()
3572 cmp_word(M.x86.R_AX, (u16) srcval); in x86emuOp_cmp_word_AX_IMM()
3588 M.x86.mode |= SYSMODE_SEGOVR_DS; in x86emuOp_segovr_DS()
3603 M.x86.R_AX = aas_word(M.x86.R_AX); in x86emuOp_aas()
3616 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_AX()
3623 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_AX()
3624 M.x86.R_EAX = inc_long(M.x86.R_EAX); in x86emuOp_inc_AX()
3627 M.x86.R_AX = inc_word(M.x86.R_AX); in x86emuOp_inc_AX()
3641 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_CX()
3648 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_CX()
3649 M.x86.R_ECX = inc_long(M.x86.R_ECX); in x86emuOp_inc_CX()
3652 M.x86.R_CX = inc_word(M.x86.R_CX); in x86emuOp_inc_CX()
3666 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_DX()
3673 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_DX()
3674 M.x86.R_EDX = inc_long(M.x86.R_EDX); in x86emuOp_inc_DX()
3677 M.x86.R_DX = inc_word(M.x86.R_DX); in x86emuOp_inc_DX()
3691 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_BX()
3698 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_BX()
3699 M.x86.R_EBX = inc_long(M.x86.R_EBX); in x86emuOp_inc_BX()
3702 M.x86.R_BX = inc_word(M.x86.R_BX); in x86emuOp_inc_BX()
3716 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_SP()
3723 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_SP()
3724 M.x86.R_ESP = inc_long(M.x86.R_ESP); in x86emuOp_inc_SP()
3727 M.x86.R_SP = inc_word(M.x86.R_SP); in x86emuOp_inc_SP()
3741 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_BP()
3748 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_BP()
3749 M.x86.R_EBP = inc_long(M.x86.R_EBP); in x86emuOp_inc_BP()
3752 M.x86.R_BP = inc_word(M.x86.R_BP); in x86emuOp_inc_BP()
3766 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_SI()
3773 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_SI()
3774 M.x86.R_ESI = inc_long(M.x86.R_ESI); in x86emuOp_inc_SI()
3777 M.x86.R_SI = inc_word(M.x86.R_SI); in x86emuOp_inc_SI()
3791 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_DI()
3798 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_inc_DI()
3799 M.x86.R_EDI = inc_long(M.x86.R_EDI); in x86emuOp_inc_DI()
3802 M.x86.R_DI = inc_word(M.x86.R_DI); in x86emuOp_inc_DI()
3816 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_AX()
3823 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_AX()
3824 M.x86.R_EAX = dec_long(M.x86.R_EAX); in x86emuOp_dec_AX()
3827 M.x86.R_AX = dec_word(M.x86.R_AX); in x86emuOp_dec_AX()
3841 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_CX()
3848 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_CX()
3849 M.x86.R_ECX = dec_long(M.x86.R_ECX); in x86emuOp_dec_CX()
3852 M.x86.R_CX = dec_word(M.x86.R_CX); in x86emuOp_dec_CX()
3866 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_DX()
3873 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_DX()
3874 M.x86.R_EDX = dec_long(M.x86.R_EDX); in x86emuOp_dec_DX()
3877 M.x86.R_DX = dec_word(M.x86.R_DX); in x86emuOp_dec_DX()
3891 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_BX()
3898 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_BX()
3899 M.x86.R_EBX = dec_long(M.x86.R_EBX); in x86emuOp_dec_BX()
3902 M.x86.R_BX = dec_word(M.x86.R_BX); in x86emuOp_dec_BX()
3916 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_SP()
3923 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_SP()
3924 M.x86.R_ESP = dec_long(M.x86.R_ESP); in x86emuOp_dec_SP()
3927 M.x86.R_SP = dec_word(M.x86.R_SP); in x86emuOp_dec_SP()
3941 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_BP()
3948 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_BP()
3949 M.x86.R_EBP = dec_long(M.x86.R_EBP); in x86emuOp_dec_BP()
3952 M.x86.R_BP = dec_word(M.x86.R_BP); in x86emuOp_dec_BP()
3966 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_SI()
3973 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_SI()
3974 M.x86.R_ESI = dec_long(M.x86.R_ESI); in x86emuOp_dec_SI()
3977 M.x86.R_SI = dec_word(M.x86.R_SI); in x86emuOp_dec_SI()
3991 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_DI()
3998 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_dec_DI()
3999 M.x86.R_EDI = dec_long(M.x86.R_EDI); in x86emuOp_dec_DI()
4002 M.x86.R_DI = dec_word(M.x86.R_DI); in x86emuOp_dec_DI()
4016 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_AX()
4023 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_AX()
4024 push_long(M.x86.R_EAX); in x86emuOp_push_AX()
4027 push_word(M.x86.R_AX); in x86emuOp_push_AX()
4041 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_CX()
4048 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_CX()
4049 push_long(M.x86.R_ECX); in x86emuOp_push_CX()
4052 push_word(M.x86.R_CX); in x86emuOp_push_CX()
4066 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_DX()
4073 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_DX()
4074 push_long(M.x86.R_EDX); in x86emuOp_push_DX()
4077 push_word(M.x86.R_DX); in x86emuOp_push_DX()
4091 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_BX()
4098 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_BX()
4099 push_long(M.x86.R_EBX); in x86emuOp_push_BX()
4102 push_word(M.x86.R_BX); in x86emuOp_push_BX()
4116 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_SP()
4127 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_SP()
4128 push_long(M.x86.R_ESP); in x86emuOp_push_SP()
4131 push_word((u16) (M.x86.R_SP)); in x86emuOp_push_SP()
4145 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_BP()
4152 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_BP()
4153 push_long(M.x86.R_EBP); in x86emuOp_push_BP()
4156 push_word(M.x86.R_BP); in x86emuOp_push_BP()
4170 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_SI()
4177 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_SI()
4178 push_long(M.x86.R_ESI); in x86emuOp_push_SI()
4181 push_word(M.x86.R_SI); in x86emuOp_push_SI()
4195 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_DI()
4202 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_DI()
4203 push_long(M.x86.R_EDI); in x86emuOp_push_DI()
4206 push_word(M.x86.R_DI); in x86emuOp_push_DI()
4220 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_AX()
4227 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_AX()
4228 M.x86.R_EAX = pop_long(); in x86emuOp_pop_AX()
4231 M.x86.R_AX = pop_word(); in x86emuOp_pop_AX()
4245 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_CX()
4252 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_CX()
4253 M.x86.R_ECX = pop_long(); in x86emuOp_pop_CX()
4256 M.x86.R_CX = pop_word(); in x86emuOp_pop_CX()
4270 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_DX()
4277 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_DX()
4278 M.x86.R_EDX = pop_long(); in x86emuOp_pop_DX()
4281 M.x86.R_DX = pop_word(); in x86emuOp_pop_DX()
4295 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_BX()
4302 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_BX()
4303 M.x86.R_EBX = pop_long(); in x86emuOp_pop_BX()
4306 M.x86.R_BX = pop_word(); in x86emuOp_pop_BX()
4320 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_SP()
4327 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_SP()
4328 M.x86.R_ESP = pop_long(); in x86emuOp_pop_SP()
4331 M.x86.R_SP = pop_word(); in x86emuOp_pop_SP()
4345 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_BP()
4352 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_BP()
4353 M.x86.R_EBP = pop_long(); in x86emuOp_pop_BP()
4356 M.x86.R_BP = pop_word(); in x86emuOp_pop_BP()
4370 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_SI()
4377 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_SI()
4378 M.x86.R_ESI = pop_long(); in x86emuOp_pop_SI()
4381 M.x86.R_SI = pop_word(); in x86emuOp_pop_SI()
4395 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_DI()
4402 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_DI()
4403 M.x86.R_EDI = pop_long(); in x86emuOp_pop_DI()
4406 M.x86.R_DI = pop_word(); in x86emuOp_pop_DI()
4420 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_all()
4427 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_all()
4428 u32 old_sp = M.x86.R_ESP; in x86emuOp_push_all()
4430 push_long(M.x86.R_EAX); in x86emuOp_push_all()
4431 push_long(M.x86.R_ECX); in x86emuOp_push_all()
4432 push_long(M.x86.R_EDX); in x86emuOp_push_all()
4433 push_long(M.x86.R_EBX); in x86emuOp_push_all()
4435 push_long(M.x86.R_EBP); in x86emuOp_push_all()
4436 push_long(M.x86.R_ESI); in x86emuOp_push_all()
4437 push_long(M.x86.R_EDI); in x86emuOp_push_all()
4440 u16 old_sp = M.x86.R_SP; in x86emuOp_push_all()
4442 push_word(M.x86.R_AX); in x86emuOp_push_all()
4443 push_word(M.x86.R_CX); in x86emuOp_push_all()
4444 push_word(M.x86.R_DX); in x86emuOp_push_all()
4445 push_word(M.x86.R_BX); in x86emuOp_push_all()
4447 push_word(M.x86.R_BP); in x86emuOp_push_all()
4448 push_word(M.x86.R_SI); in x86emuOp_push_all()
4449 push_word(M.x86.R_DI); in x86emuOp_push_all()
4463 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_all()
4470 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_all()
4471 M.x86.R_EDI = pop_long(); in x86emuOp_pop_all()
4472 M.x86.R_ESI = pop_long(); in x86emuOp_pop_all()
4473 M.x86.R_EBP = pop_long(); in x86emuOp_pop_all()
4474 M.x86.R_ESP += 4; /* skip ESP */ in x86emuOp_pop_all()
4475 M.x86.R_EBX = pop_long(); in x86emuOp_pop_all()
4476 M.x86.R_EDX = pop_long(); in x86emuOp_pop_all()
4477 M.x86.R_ECX = pop_long(); in x86emuOp_pop_all()
4478 M.x86.R_EAX = pop_long(); in x86emuOp_pop_all()
4481 M.x86.R_DI = pop_word(); in x86emuOp_pop_all()
4482 M.x86.R_SI = pop_word(); in x86emuOp_pop_all()
4483 M.x86.R_BP = pop_word(); in x86emuOp_pop_all()
4484 M.x86.R_SP += 2; /* skip SP */ in x86emuOp_pop_all()
4485 M.x86.R_BX = pop_word(); in x86emuOp_pop_all()
4486 M.x86.R_DX = pop_word(); in x86emuOp_pop_all()
4487 M.x86.R_CX = pop_word(); in x86emuOp_pop_all()
4488 M.x86.R_AX = pop_word(); in x86emuOp_pop_all()
4507 M.x86.mode |= SYSMODE_SEGOVR_FS; in x86emuOp_segovr_FS()
4525 M.x86.mode |= SYSMODE_SEGOVR_GS; in x86emuOp_segovr_GS()
4543 M.x86.mode |= SYSMODE_PREFIX_DATA; in x86emuOp_prefix_data()
4558 M.x86.mode |= SYSMODE_PREFIX_ADDR; in x86emuOp_prefix_addr()
4573 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_word_IMM()
4581 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_word_IMM()
4606 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_word_IMM()
4657 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_word_IMM()
4708 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_word_IMM()
4759 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_word_IMM()
4821 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_push_byte_IMM()
4847 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_byte_IMM()
4896 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_byte_IMM()
4945 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_byte_IMM()
4994 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_imul_byte_IMM()
5064 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_ins_word()
5100 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_outs_word()
5127 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_O()
5131 M.x86.R_IP = target; in x86emuOp_jump_near_O()
5150 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NO()
5154 M.x86.R_IP = target; in x86emuOp_jump_near_NO()
5173 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_B()
5177 M.x86.R_IP = target; in x86emuOp_jump_near_B()
5196 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NB()
5200 M.x86.R_IP = target; in x86emuOp_jump_near_NB()
5219 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_Z()
5223 M.x86.R_IP = target; in x86emuOp_jump_near_Z()
5242 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NZ()
5246 M.x86.R_IP = target; in x86emuOp_jump_near_NZ()
5266 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_BE()
5270 M.x86.R_IP = target; in x86emuOp_jump_near_BE()
5290 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NBE()
5294 M.x86.R_IP = target; in x86emuOp_jump_near_NBE()
5313 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_S()
5317 M.x86.R_IP = target; in x86emuOp_jump_near_S()
5336 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NS()
5340 M.x86.R_IP = target; in x86emuOp_jump_near_NS()
5359 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_P()
5363 M.x86.R_IP = target; in x86emuOp_jump_near_P()
5382 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NP()
5386 M.x86.R_IP = target; in x86emuOp_jump_near_NP()
5406 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_L()
5412 M.x86.R_IP = target; in x86emuOp_jump_near_L()
5432 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NL()
5439 M.x86.R_IP = target; in x86emuOp_jump_near_NL()
5460 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_LE()
5466 M.x86.R_IP = target; in x86emuOp_jump_near_LE()
5487 target = (u16) (M.x86.R_IP + (s16) offset); in x86emuOp_jump_near_NLE()
5493 M.x86.R_IP = target; in x86emuOp_jump_near_NLE()
5698 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc81_word_RM_IMM()
5728 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc81_word_RM_IMM()
5758 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc81_word_RM_IMM()
5788 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc81_word_RM_IMM()
6014 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc83_word_RM_IMM()
6042 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc83_word_RM_IMM()
6070 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc83_word_RM_IMM()
6098 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opc83_word_RM_IMM()
6199 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_test_word_RM_R()
6225 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_test_word_RM_R()
6251 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_test_word_RM_R()
6277 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_test_word_RM_R()
6386 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_RM_R()
6418 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_RM_R()
6450 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_RM_R()
6482 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_RM_R()
6581 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_R()
6603 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_R()
6625 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_R()
6647 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_R()
6744 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_R_RM()
6770 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_R_RM()
6796 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_R_RM()
6822 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_R_RM()
6919 if (M.x86.mode & SYSMODE_PREFIX_ADDR) { in x86emuOp_lea_word_R_M()
6939 if (M.x86.mode & SYSMODE_PREFIX_ADDR) { in x86emuOp_lea_word_R_M()
6959 if (M.x86.mode & SYSMODE_PREFIX_ADDR) { in x86emuOp_lea_word_R_M()
7067 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_RM()
7087 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_RM()
7107 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_RM()
7127 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pop_RM()
7173 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_CX()
7180 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_CX()
7181 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_CX()
7182 M.x86.R_EAX = M.x86.R_ECX; in x86emuOp_xchg_word_AX_CX()
7183 M.x86.R_ECX = tmp; in x86emuOp_xchg_word_AX_CX()
7186 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_CX()
7187 M.x86.R_AX = M.x86.R_CX; in x86emuOp_xchg_word_AX_CX()
7188 M.x86.R_CX = (u16) tmp; in x86emuOp_xchg_word_AX_CX()
7204 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_DX()
7211 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_DX()
7212 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_DX()
7213 M.x86.R_EAX = M.x86.R_EDX; in x86emuOp_xchg_word_AX_DX()
7214 M.x86.R_EDX = tmp; in x86emuOp_xchg_word_AX_DX()
7217 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_DX()
7218 M.x86.R_AX = M.x86.R_DX; in x86emuOp_xchg_word_AX_DX()
7219 M.x86.R_DX = (u16) tmp; in x86emuOp_xchg_word_AX_DX()
7235 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_BX()
7242 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_BX()
7243 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_BX()
7244 M.x86.R_EAX = M.x86.R_EBX; in x86emuOp_xchg_word_AX_BX()
7245 M.x86.R_EBX = tmp; in x86emuOp_xchg_word_AX_BX()
7248 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_BX()
7249 M.x86.R_AX = M.x86.R_BX; in x86emuOp_xchg_word_AX_BX()
7250 M.x86.R_BX = (u16) tmp; in x86emuOp_xchg_word_AX_BX()
7266 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_SP()
7273 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_SP()
7274 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_SP()
7275 M.x86.R_EAX = M.x86.R_ESP; in x86emuOp_xchg_word_AX_SP()
7276 M.x86.R_ESP = tmp; in x86emuOp_xchg_word_AX_SP()
7279 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_SP()
7280 M.x86.R_AX = M.x86.R_SP; in x86emuOp_xchg_word_AX_SP()
7281 M.x86.R_SP = (u16) tmp; in x86emuOp_xchg_word_AX_SP()
7297 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_BP()
7304 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_BP()
7305 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_BP()
7306 M.x86.R_EAX = M.x86.R_EBP; in x86emuOp_xchg_word_AX_BP()
7307 M.x86.R_EBP = tmp; in x86emuOp_xchg_word_AX_BP()
7310 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_BP()
7311 M.x86.R_AX = M.x86.R_BP; in x86emuOp_xchg_word_AX_BP()
7312 M.x86.R_BP = (u16) tmp; in x86emuOp_xchg_word_AX_BP()
7328 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_SI()
7335 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_SI()
7336 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_SI()
7337 M.x86.R_EAX = M.x86.R_ESI; in x86emuOp_xchg_word_AX_SI()
7338 M.x86.R_ESI = tmp; in x86emuOp_xchg_word_AX_SI()
7341 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_SI()
7342 M.x86.R_AX = M.x86.R_SI; in x86emuOp_xchg_word_AX_SI()
7343 M.x86.R_SI = (u16) tmp; in x86emuOp_xchg_word_AX_SI()
7359 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_DI()
7366 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_xchg_word_AX_DI()
7367 tmp = M.x86.R_EAX; in x86emuOp_xchg_word_AX_DI()
7368 M.x86.R_EAX = M.x86.R_EDI; in x86emuOp_xchg_word_AX_DI()
7369 M.x86.R_EDI = tmp; in x86emuOp_xchg_word_AX_DI()
7372 tmp = M.x86.R_AX; in x86emuOp_xchg_word_AX_DI()
7373 M.x86.R_AX = M.x86.R_DI; in x86emuOp_xchg_word_AX_DI()
7374 M.x86.R_DI = (u16) tmp; in x86emuOp_xchg_word_AX_DI()
7388 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cbw()
7395 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cbw()
7396 if (M.x86.R_AX & 0x8000) { in x86emuOp_cbw()
7397 M.x86.R_EAX |= 0xffff0000; in x86emuOp_cbw()
7400 M.x86.R_EAX &= 0x0000ffff; in x86emuOp_cbw()
7404 if (M.x86.R_AL & 0x80) { in x86emuOp_cbw()
7405 M.x86.R_AH = 0xff; in x86emuOp_cbw()
7408 M.x86.R_AH = 0x0; in x86emuOp_cbw()
7423 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cwd()
7431 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cwd()
7432 if (M.x86.R_EAX & 0x80000000) { in x86emuOp_cwd()
7433 M.x86.R_EDX = 0xffffffff; in x86emuOp_cwd()
7436 M.x86.R_EDX = 0x0; in x86emuOp_cwd()
7440 if (M.x86.R_AX & 0x8000) { in x86emuOp_cwd()
7441 M.x86.R_DX = 0xffff; in x86emuOp_cwd()
7444 M.x86.R_DX = 0x0; in x86emuOp_cwd()
7462 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_call_far_IMM()
7472 CALL_TRACE(M.x86.saved_cs, M.x86.saved_ip, farseg, faroff, "FAR "); in x86emuOp_call_far_IMM()
7481 push_word(M.x86.R_CS); in x86emuOp_call_far_IMM()
7482 M.x86.R_CS = farseg; in x86emuOp_call_far_IMM()
7483 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_call_far_IMM()
7484 push_long(M.x86.R_EIP); in x86emuOp_call_far_IMM()
7487 push_word(M.x86.R_IP); in x86emuOp_call_far_IMM()
7489 M.x86.R_EIP = faroff & 0xffff; in x86emuOp_call_far_IMM()
7519 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pushf_word()
7528 flags = (M.x86.R_EFLG & F_MSK) | F_ALWAYS_ON; in x86emuOp_pushf_word()
7529 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_pushf_word()
7547 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_popf_word()
7554 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_popf_word()
7555 M.x86.R_EFLG = pop_long(); in x86emuOp_popf_word()
7558 M.x86.R_FLG = pop_word(); in x86emuOp_popf_word()
7575 M.x86.R_FLG &= 0xffffff00; in x86emuOp_sahf()
7577 M.x86.R_FLG |= M.x86.R_AH; in x86emuOp_sahf()
7592 M.x86.R_AH = (u8) (M.x86.R_FLG & 0xff); in x86emuOp_lahf()
7595 M.x86.R_AH |= 0x2; in x86emuOp_lahf()
7614 M.x86.R_AL = fetch_data_byte(offset); in x86emuOp_mov_AL_M_IMM()
7630 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_AX_M_IMM()
7637 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_AX_M_IMM()
7638 M.x86.R_EAX = fetch_data_long(offset); in x86emuOp_mov_AX_M_IMM()
7641 M.x86.R_AX = fetch_data_word(offset); in x86emuOp_mov_AX_M_IMM()
7661 store_data_byte(offset, M.x86.R_AL); in x86emuOp_mov_M_AL_IMM()
7677 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_M_AX_IMM()
7684 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_M_AX_IMM()
7685 store_data_long(offset, M.x86.R_EAX); in x86emuOp_mov_M_AX_IMM()
7688 store_data_word(offset, M.x86.R_AX); in x86emuOp_mov_M_AX_IMM()
7713 if (M.x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) { in x86emuOp_movs_byte()
7716 count = M.x86.R_CX; in x86emuOp_movs_byte()
7717 M.x86.R_CX = 0; in x86emuOp_movs_byte()
7718 M.x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE); in x86emuOp_movs_byte()
7721 val = fetch_data_byte(M.x86.R_SI); in x86emuOp_movs_byte()
7722 store_data_byte_abs(M.x86.R_ES, M.x86.R_DI, val); in x86emuOp_movs_byte()
7723 M.x86.R_SI += inc; in x86emuOp_movs_byte()
7724 M.x86.R_DI += inc; in x86emuOp_movs_byte()
7742 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_movs_word()
7758 if (M.x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) { in x86emuOp_movs_word()
7761 count = M.x86.R_CX; in x86emuOp_movs_word()
7762 M.x86.R_CX = 0; in x86emuOp_movs_word()
7763 M.x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE); in x86emuOp_movs_word()
7766 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_movs_word()
7767 val = fetch_data_long(M.x86.R_SI); in x86emuOp_movs_word()
7768 store_data_long_abs(M.x86.R_ES, M.x86.R_DI, val); in x86emuOp_movs_word()
7771 val = fetch_data_word(M.x86.R_SI); in x86emuOp_movs_word()
7772 store_data_word_abs(M.x86.R_ES, M.x86.R_DI, (u16) val); in x86emuOp_movs_word()
7774 M.x86.R_SI += inc; in x86emuOp_movs_word()
7775 M.x86.R_DI += inc; in x86emuOp_movs_word()
7799 if (M.x86.mode & SYSMODE_PREFIX_REPE) { in x86emuOp_cmps_byte()
7802 while (M.x86.R_CX != 0) { in x86emuOp_cmps_byte()
7803 val1 = fetch_data_byte(M.x86.R_SI); in x86emuOp_cmps_byte()
7804 val2 = fetch_data_byte_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_byte()
7806 M.x86.R_CX -= 1; in x86emuOp_cmps_byte()
7807 M.x86.R_SI += inc; in x86emuOp_cmps_byte()
7808 M.x86.R_DI += inc; in x86emuOp_cmps_byte()
7812 M.x86.mode &= ~SYSMODE_PREFIX_REPE; in x86emuOp_cmps_byte()
7814 else if (M.x86.mode & SYSMODE_PREFIX_REPNE) { in x86emuOp_cmps_byte()
7817 while (M.x86.R_CX != 0) { in x86emuOp_cmps_byte()
7818 val1 = fetch_data_byte(M.x86.R_SI); in x86emuOp_cmps_byte()
7819 val2 = fetch_data_byte_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_byte()
7821 M.x86.R_CX -= 1; in x86emuOp_cmps_byte()
7822 M.x86.R_SI += inc; in x86emuOp_cmps_byte()
7823 M.x86.R_DI += inc; in x86emuOp_cmps_byte()
7827 M.x86.mode &= ~SYSMODE_PREFIX_REPNE; in x86emuOp_cmps_byte()
7830 val1 = fetch_data_byte(M.x86.R_SI); in x86emuOp_cmps_byte()
7831 val2 = fetch_data_byte_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_byte()
7833 M.x86.R_SI += inc; in x86emuOp_cmps_byte()
7834 M.x86.R_DI += inc; in x86emuOp_cmps_byte()
7851 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmps_word()
7866 if (M.x86.mode & SYSMODE_PREFIX_REPE) { in x86emuOp_cmps_word()
7869 while (M.x86.R_CX != 0) { in x86emuOp_cmps_word()
7870 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmps_word()
7871 val1 = fetch_data_long(M.x86.R_SI); in x86emuOp_cmps_word()
7872 val2 = fetch_data_long_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_word()
7876 val1 = fetch_data_word(M.x86.R_SI); in x86emuOp_cmps_word()
7877 val2 = fetch_data_word_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_word()
7880 M.x86.R_CX -= 1; in x86emuOp_cmps_word()
7881 M.x86.R_SI += inc; in x86emuOp_cmps_word()
7882 M.x86.R_DI += inc; in x86emuOp_cmps_word()
7886 M.x86.mode &= ~SYSMODE_PREFIX_REPE; in x86emuOp_cmps_word()
7888 else if (M.x86.mode & SYSMODE_PREFIX_REPNE) { in x86emuOp_cmps_word()
7891 while (M.x86.R_CX != 0) { in x86emuOp_cmps_word()
7892 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmps_word()
7893 val1 = fetch_data_long(M.x86.R_SI); in x86emuOp_cmps_word()
7894 val2 = fetch_data_long_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_word()
7898 val1 = fetch_data_word(M.x86.R_SI); in x86emuOp_cmps_word()
7899 val2 = fetch_data_word_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_word()
7902 M.x86.R_CX -= 1; in x86emuOp_cmps_word()
7903 M.x86.R_SI += inc; in x86emuOp_cmps_word()
7904 M.x86.R_DI += inc; in x86emuOp_cmps_word()
7908 M.x86.mode &= ~SYSMODE_PREFIX_REPNE; in x86emuOp_cmps_word()
7911 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_cmps_word()
7912 val1 = fetch_data_long(M.x86.R_SI); in x86emuOp_cmps_word()
7913 val2 = fetch_data_long_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_word()
7917 val1 = fetch_data_word(M.x86.R_SI); in x86emuOp_cmps_word()
7918 val2 = fetch_data_word_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_cmps_word()
7921 M.x86.R_SI += inc; in x86emuOp_cmps_word()
7922 M.x86.R_DI += inc; in x86emuOp_cmps_word()
7942 test_byte(M.x86.R_AL, (u8) imm); in x86emuOp_test_AL_IMM()
7957 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_test_AX_IMM()
7967 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_test_AX_IMM()
7968 test_long(M.x86.R_EAX, srcval); in x86emuOp_test_AX_IMM()
7971 test_word(M.x86.R_AX, (u16) srcval); in x86emuOp_test_AX_IMM()
7993 if (M.x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) { in x86emuOp_stos_byte()
7996 while (M.x86.R_CX != 0) { in x86emuOp_stos_byte()
7997 store_data_byte_abs(M.x86.R_ES, M.x86.R_DI, M.x86.R_AL); in x86emuOp_stos_byte()
7998 M.x86.R_CX -= 1; in x86emuOp_stos_byte()
7999 M.x86.R_DI += inc; in x86emuOp_stos_byte()
8001 M.x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE); in x86emuOp_stos_byte()
8004 store_data_byte_abs(M.x86.R_ES, M.x86.R_DI, M.x86.R_AL); in x86emuOp_stos_byte()
8005 M.x86.R_DI += inc; in x86emuOp_stos_byte()
8022 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_stos_word()
8038 if (M.x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) { in x86emuOp_stos_word()
8041 count = M.x86.R_CX; in x86emuOp_stos_word()
8042 M.x86.R_CX = 0; in x86emuOp_stos_word()
8043 M.x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE); in x86emuOp_stos_word()
8046 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_stos_word()
8047 store_data_long_abs(M.x86.R_ES, M.x86.R_DI, M.x86.R_EAX); in x86emuOp_stos_word()
8050 store_data_word_abs(M.x86.R_ES, M.x86.R_DI, M.x86.R_AX); in x86emuOp_stos_word()
8052 M.x86.R_DI += inc; in x86emuOp_stos_word()
8074 if (M.x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) { in x86emuOp_lods_byte()
8077 while (M.x86.R_CX != 0) { in x86emuOp_lods_byte()
8078 M.x86.R_AL = fetch_data_byte(M.x86.R_SI); in x86emuOp_lods_byte()
8079 M.x86.R_CX -= 1; in x86emuOp_lods_byte()
8080 M.x86.R_SI += inc; in x86emuOp_lods_byte()
8082 M.x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE); in x86emuOp_lods_byte()
8085 M.x86.R_AL = fetch_data_byte(M.x86.R_SI); in x86emuOp_lods_byte()
8086 M.x86.R_SI += inc; in x86emuOp_lods_byte()
8103 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_lods_word()
8119 if (M.x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) { in x86emuOp_lods_word()
8122 count = M.x86.R_CX; in x86emuOp_lods_word()
8123 M.x86.R_CX = 0; in x86emuOp_lods_word()
8124 M.x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE); in x86emuOp_lods_word()
8127 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_lods_word()
8128 M.x86.R_EAX = fetch_data_long(M.x86.R_SI); in x86emuOp_lods_word()
8131 M.x86.R_AX = fetch_data_word(M.x86.R_SI); in x86emuOp_lods_word()
8133 M.x86.R_SI += inc; in x86emuOp_lods_word()
8156 if (M.x86.mode & SYSMODE_PREFIX_REPE) { in x86emuOp_scas_byte()
8159 while (M.x86.R_CX != 0) { in x86emuOp_scas_byte()
8160 val2 = fetch_data_byte_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_byte()
8161 cmp_byte(M.x86.R_AL, val2); in x86emuOp_scas_byte()
8162 M.x86.R_CX -= 1; in x86emuOp_scas_byte()
8163 M.x86.R_DI += inc; in x86emuOp_scas_byte()
8167 M.x86.mode &= ~SYSMODE_PREFIX_REPE; in x86emuOp_scas_byte()
8169 else if (M.x86.mode & SYSMODE_PREFIX_REPNE) { in x86emuOp_scas_byte()
8172 while (M.x86.R_CX != 0) { in x86emuOp_scas_byte()
8173 val2 = fetch_data_byte_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_byte()
8174 cmp_byte(M.x86.R_AL, val2); in x86emuOp_scas_byte()
8175 M.x86.R_CX -= 1; in x86emuOp_scas_byte()
8176 M.x86.R_DI += inc; in x86emuOp_scas_byte()
8180 M.x86.mode &= ~SYSMODE_PREFIX_REPNE; in x86emuOp_scas_byte()
8183 val2 = fetch_data_byte_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_byte()
8184 cmp_byte(M.x86.R_AL, val2); in x86emuOp_scas_byte()
8185 M.x86.R_DI += inc; in x86emuOp_scas_byte()
8202 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_scas_word()
8217 if (M.x86.mode & SYSMODE_PREFIX_REPE) { in x86emuOp_scas_word()
8220 while (M.x86.R_CX != 0) { in x86emuOp_scas_word()
8221 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_scas_word()
8222 val = fetch_data_long_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_word()
8223 cmp_long(M.x86.R_EAX, val); in x86emuOp_scas_word()
8226 val = fetch_data_word_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_word()
8227 cmp_word(M.x86.R_AX, (u16) val); in x86emuOp_scas_word()
8229 M.x86.R_CX -= 1; in x86emuOp_scas_word()
8230 M.x86.R_DI += inc; in x86emuOp_scas_word()
8234 M.x86.mode &= ~SYSMODE_PREFIX_REPE; in x86emuOp_scas_word()
8236 else if (M.x86.mode & SYSMODE_PREFIX_REPNE) { in x86emuOp_scas_word()
8239 while (M.x86.R_CX != 0) { in x86emuOp_scas_word()
8240 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_scas_word()
8241 val = fetch_data_long_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_word()
8242 cmp_long(M.x86.R_EAX, val); in x86emuOp_scas_word()
8245 val = fetch_data_word_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_word()
8246 cmp_word(M.x86.R_AX, (u16) val); in x86emuOp_scas_word()
8248 M.x86.R_CX -= 1; in x86emuOp_scas_word()
8249 M.x86.R_DI += inc; in x86emuOp_scas_word()
8253 M.x86.mode &= ~SYSMODE_PREFIX_REPNE; in x86emuOp_scas_word()
8256 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_scas_word()
8257 val = fetch_data_long_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_word()
8258 cmp_long(M.x86.R_EAX, val); in x86emuOp_scas_word()
8261 val = fetch_data_word_abs(M.x86.R_ES, M.x86.R_DI); in x86emuOp_scas_word()
8262 cmp_word(M.x86.R_AX, (u16) val); in x86emuOp_scas_word()
8264 M.x86.R_DI += inc; in x86emuOp_scas_word()
8284 M.x86.R_AL = imm; in x86emuOp_mov_byte_AL_IMM()
8303 M.x86.R_CL = imm; in x86emuOp_mov_byte_CL_IMM()
8322 M.x86.R_DL = imm; in x86emuOp_mov_byte_DL_IMM()
8341 M.x86.R_BL = imm; in x86emuOp_mov_byte_BL_IMM()
8360 M.x86.R_AH = imm; in x86emuOp_mov_byte_AH_IMM()
8379 M.x86.R_CH = imm; in x86emuOp_mov_byte_CH_IMM()
8398 M.x86.R_DH = imm; in x86emuOp_mov_byte_DH_IMM()
8417 M.x86.R_BH = imm; in x86emuOp_mov_byte_BH_IMM()
8432 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_AX_IMM()
8442 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_AX_IMM()
8443 M.x86.R_EAX = srcval; in x86emuOp_mov_word_AX_IMM()
8446 M.x86.R_AX = (u16) srcval; in x86emuOp_mov_word_AX_IMM()
8462 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_CX_IMM()
8472 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_CX_IMM()
8473 M.x86.R_ECX = srcval; in x86emuOp_mov_word_CX_IMM()
8476 M.x86.R_CX = (u16) srcval; in x86emuOp_mov_word_CX_IMM()
8492 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_DX_IMM()
8502 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_DX_IMM()
8503 M.x86.R_EDX = srcval; in x86emuOp_mov_word_DX_IMM()
8506 M.x86.R_DX = (u16) srcval; in x86emuOp_mov_word_DX_IMM()
8522 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_BX_IMM()
8532 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_BX_IMM()
8533 M.x86.R_EBX = srcval; in x86emuOp_mov_word_BX_IMM()
8536 M.x86.R_BX = (u16) srcval; in x86emuOp_mov_word_BX_IMM()
8552 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_SP_IMM()
8562 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_SP_IMM()
8563 M.x86.R_ESP = srcval; in x86emuOp_mov_word_SP_IMM()
8566 M.x86.R_SP = (u16) srcval; in x86emuOp_mov_word_SP_IMM()
8582 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_BP_IMM()
8592 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_BP_IMM()
8593 M.x86.R_EBP = srcval; in x86emuOp_mov_word_BP_IMM()
8596 M.x86.R_BP = (u16) srcval; in x86emuOp_mov_word_BP_IMM()
8612 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_SI_IMM()
8622 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_SI_IMM()
8623 M.x86.R_ESI = srcval; in x86emuOp_mov_word_SI_IMM()
8626 M.x86.R_SI = (u16) srcval; in x86emuOp_mov_word_SI_IMM()
8642 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_DI_IMM()
8652 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_DI_IMM()
8653 M.x86.R_EDI = srcval; in x86emuOp_mov_word_DI_IMM()
8656 M.x86.R_DI = (u16) srcval; in x86emuOp_mov_word_DI_IMM()
8835 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcC1_word_RM_MEM()
8861 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcC1_word_RM_MEM()
8887 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcC1_word_RM_MEM()
8913 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcC1_word_RM_MEM()
8950 RETURN_TRACE("RET", M.x86.saved_cs, M.x86.saved_ip); in x86emuOp_ret_near_IMM()
8952 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_ret_near_IMM()
8953 M.x86.R_EIP = pop_long(); in x86emuOp_ret_near_IMM()
8955 M.x86.R_IP = pop_word(); in x86emuOp_ret_near_IMM()
8957 M.x86.R_SP += imm; in x86emuOp_ret_near_IMM()
8971 RETURN_TRACE("RET", M.x86.saved_cs, M.x86.saved_ip); in x86emuOp_ret_near()
8973 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_ret_near()
8974 M.x86.R_EIP = pop_long(); in x86emuOp_ret_near()
8976 M.x86.R_IP = pop_word(); in x86emuOp_ret_near()
9004 M.x86.R_ES = fetch_data_word(srcoffset + 2); in x86emuOp_les_R_IMM()
9013 M.x86.R_ES = fetch_data_word(srcoffset + 2); in x86emuOp_les_R_IMM()
9022 M.x86.R_ES = fetch_data_word(srcoffset + 2); in x86emuOp_les_R_IMM()
9054 M.x86.R_DS = fetch_data_word(srcoffset + 2); in x86emuOp_lds_R_IMM()
9063 M.x86.R_DS = fetch_data_word(srcoffset + 2); in x86emuOp_lds_R_IMM()
9072 M.x86.R_DS = fetch_data_word(srcoffset + 2); in x86emuOp_lds_R_IMM()
9157 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_IMM()
9179 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_IMM()
9201 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_IMM()
9223 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_mov_word_RM_IMM()
9266 push_word(M.x86.R_BP); in x86emuOp_enter()
9267 frame_pointer = M.x86.R_SP; in x86emuOp_enter()
9270 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_enter()
9271 M.x86.R_BP -= 4; in x86emuOp_enter()
9272 push_long(fetch_data_long_abs(M.x86.R_SS, M.x86.R_BP)); in x86emuOp_enter()
9274 M.x86.R_BP -= 2; in x86emuOp_enter()
9275 push_word(fetch_data_word_abs(M.x86.R_SS, M.x86.R_BP)); in x86emuOp_enter()
9280 M.x86.R_BP = frame_pointer; in x86emuOp_enter()
9281 M.x86.R_SP = (u16) (M.x86.R_SP - local); in x86emuOp_enter()
9296 M.x86.R_SP = M.x86.R_BP; in x86emuOp_leave()
9297 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_leave()
9298 M.x86.R_EBP = pop_long(); in x86emuOp_leave()
9300 M.x86.R_BP = pop_word(); in x86emuOp_leave()
9319 RETURN_TRACE("RETF", M.x86.saved_cs, M.x86.saved_ip); in x86emuOp_ret_far_IMM()
9321 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_ret_far_IMM()
9322 M.x86.R_EIP = pop_long(); in x86emuOp_ret_far_IMM()
9323 M.x86.R_CS = pop_long() & 0xffff; in x86emuOp_ret_far_IMM()
9325 M.x86.R_IP = pop_word(); in x86emuOp_ret_far_IMM()
9326 M.x86.R_CS = pop_word(); in x86emuOp_ret_far_IMM()
9328 M.x86.R_SP += imm; in x86emuOp_ret_far_IMM()
9342 RETURN_TRACE("RETF", M.x86.saved_cs, M.x86.saved_ip); in x86emuOp_ret_far()
9344 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_ret_far()
9345 M.x86.R_EIP = pop_long(); in x86emuOp_ret_far()
9346 M.x86.R_CS = pop_long() & 0xffff; in x86emuOp_ret_far()
9348 M.x86.R_IP = pop_word(); in x86emuOp_ret_far()
9349 M.x86.R_CS = pop_word(); in x86emuOp_ret_far()
9369 push_word((u16) M.x86.R_FLG); in x86emuOp_int3()
9372 push_word(M.x86.R_CS); in x86emuOp_int3()
9373 M.x86.R_CS = mem_access_word(3 * 4 + 2); in x86emuOp_int3()
9374 push_word(M.x86.R_IP); in x86emuOp_int3()
9375 M.x86.R_IP = mem_access_word(3 * 4); in x86emuOp_int3()
9399 push_word((u16) M.x86.R_FLG); in x86emuOp_int_IMM()
9402 push_word(M.x86.R_CS); in x86emuOp_int_IMM()
9403 M.x86.R_CS = mem_access_word(intnum * 4 + 2); in x86emuOp_int_IMM()
9404 push_word(M.x86.R_IP); in x86emuOp_int_IMM()
9405 M.x86.R_IP = mem_access_word(intnum * 4); in x86emuOp_int_IMM()
9426 push_word((u16) M.x86.R_FLG); in x86emuOp_into()
9429 push_word(M.x86.R_CS); in x86emuOp_into()
9430 M.x86.R_CS = mem_access_word(4 * 4 + 2); in x86emuOp_into()
9431 push_word(M.x86.R_IP); in x86emuOp_into()
9432 M.x86.R_IP = mem_access_word(4 * 4); in x86emuOp_into()
9451 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_iret()
9452 M.x86.R_EIP = pop_long(); in x86emuOp_iret()
9453 M.x86.R_CS = pop_long() & 0xffff; in x86emuOp_iret()
9454 M.x86.R_EFLG = (pop_long() & 0x257FD5) | (M.x86.R_EFLG & 0x1A0000); in x86emuOp_iret()
9456 M.x86.R_IP = pop_word(); in x86emuOp_iret()
9457 M.x86.R_CS = pop_word(); in x86emuOp_iret()
9458 M.x86.R_FLG = pop_word(); in x86emuOp_iret()
9614 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD1_word_RM_1()
9638 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD1_word_RM_1()
9662 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD1_word_RM_1()
9686 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD1_word_RM_1()
9768 amt = M.x86.R_CL; in x86emuOp_opcD2_byte_RM_CL()
9863 amt = M.x86.R_CL; in x86emuOp_opcD3_word_RM_CL()
9866 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD3_word_RM_CL()
9890 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD3_word_RM_CL()
9914 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD3_word_RM_CL()
9938 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcD3_word_RM_CL()
9981 M.x86.R_AX = aam_word(M.x86.R_AL); in x86emuOp_aam()
10006 M.x86.R_AX = aad_word(M.x86.R_AX); in x86emuOp_aad()
10025 addr = (u16) (M.x86.R_BX + (u8) M.x86.R_AL); in x86emuOp_xlat()
10026 M.x86.R_AL = fetch_data_byte(addr); in x86emuOp_xlat()
10045 ip += (s16) M.x86.R_IP; in x86emuOp_loopne()
10048 M.x86.R_CX -= 1; in x86emuOp_loopne()
10049 if (M.x86.R_CX != 0 && !ACCESS_FLAG(F_ZF)) /* CX != 0 and !ZF */ in x86emuOp_loopne()
10050 M.x86.R_IP = ip; in x86emuOp_loopne()
10067 ip += (s16) M.x86.R_IP; in x86emuOp_loope()
10070 M.x86.R_CX -= 1; in x86emuOp_loope()
10071 if (M.x86.R_CX != 0 && ACCESS_FLAG(F_ZF)) /* CX != 0 and ZF */ in x86emuOp_loope()
10072 M.x86.R_IP = ip; in x86emuOp_loope()
10089 ip += (s16) M.x86.R_IP; in x86emuOp_loop()
10092 M.x86.R_CX -= 1; in x86emuOp_loop()
10093 if (M.x86.R_CX != 0) in x86emuOp_loop()
10094 M.x86.R_IP = ip; in x86emuOp_loop()
10113 target = (u16) (M.x86.R_IP + offset); in x86emuOp_jcxz()
10116 if (M.x86.R_CX == 0) in x86emuOp_jcxz()
10117 M.x86.R_IP = target; in x86emuOp_jcxz()
10136 M.x86.R_AL = (*sys_inb) (port); in x86emuOp_in_byte_AL_IMM()
10153 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_in_word_AX_IMM()
10160 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_in_word_AX_IMM()
10161 M.x86.R_EAX = (*sys_inl) (port); in x86emuOp_in_word_AX_IMM()
10164 M.x86.R_AX = (*sys_inw) (port); in x86emuOp_in_word_AX_IMM()
10184 (*sys_outb) (port, M.x86.R_AL); in x86emuOp_out_byte_IMM_AL()
10201 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_out_word_IMM_AX()
10208 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_out_word_IMM_AX()
10209 (*sys_outl) (port, M.x86.R_EAX); in x86emuOp_out_word_IMM_AX()
10212 (*sys_outw) (port, M.x86.R_AX); in x86emuOp_out_word_IMM_AX()
10230 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_call_near_IMM()
10232 ip32 += (s16) M.x86.R_IP; /* CHECK SIGN */ in x86emuOp_call_near_IMM()
10234 CALL_TRACE(M.x86.saved_cs, M.x86.saved_ip, M.x86.R_CS, ip32, ""); in x86emuOp_call_near_IMM()
10238 ip16 += (s16) M.x86.R_IP; /* CHECK SIGN */ in x86emuOp_call_near_IMM()
10240 CALL_TRACE(M.x86.saved_cs, M.x86.saved_ip, M.x86.R_CS, ip16, ""); in x86emuOp_call_near_IMM()
10243 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_call_near_IMM()
10244 push_long(M.x86.R_EIP); in x86emuOp_call_near_IMM()
10245 M.x86.R_EIP = ip32 & 0xffff; in x86emuOp_call_near_IMM()
10248 push_word(M.x86.R_IP); in x86emuOp_call_near_IMM()
10249 M.x86.R_EIP = ip16; in x86emuOp_call_near_IMM()
10266 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_jump_near_IMM()
10268 ip += (u32) M.x86.R_EIP; in x86emuOp_jump_near_IMM()
10271 M.x86.R_EIP = (u32) ip; in x86emuOp_jump_near_IMM()
10275 ip += (s16) M.x86.R_IP; in x86emuOp_jump_near_IMM()
10278 M.x86.R_IP = (u16) ip; in x86emuOp_jump_near_IMM()
10296 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_jump_far_IMM()
10306 M.x86.R_EIP = ip & 0xffff; in x86emuOp_jump_far_IMM()
10307 M.x86.R_CS = cs; in x86emuOp_jump_far_IMM()
10325 target = (u16) (M.x86.R_IP + offset); in x86emuOp_jump_byte_IMM()
10328 M.x86.R_IP = target; in x86emuOp_jump_byte_IMM()
10343 M.x86.R_AL = (*sys_inb) (M.x86.R_DX); in x86emuOp_in_byte_AL_DX()
10356 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_in_word_AX_DX()
10363 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_in_word_AX_DX()
10364 M.x86.R_EAX = (*sys_inl) (M.x86.R_DX); in x86emuOp_in_word_AX_DX()
10367 M.x86.R_AX = (*sys_inw) (M.x86.R_DX); in x86emuOp_in_word_AX_DX()
10383 (*sys_outb) (M.x86.R_DX, M.x86.R_AL); in x86emuOp_out_byte_DX_AL()
10396 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_out_word_DX_AX()
10403 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_out_word_DX_AX()
10404 (*sys_outl) (M.x86.R_DX, M.x86.R_EAX); in x86emuOp_out_word_DX_AX()
10407 (*sys_outw) (M.x86.R_DX, M.x86.R_AX); in x86emuOp_out_word_DX_AX()
10439 M.x86.mode |= SYSMODE_PREFIX_REPNE; in x86emuOp_repne()
10454 M.x86.mode |= SYSMODE_PREFIX_REPE; in x86emuOp_repe()
10793 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10823 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10847 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10871 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10893 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10915 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10937 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10963 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
10993 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11017 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11041 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11063 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11085 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11107 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11133 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11163 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11187 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11211 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11233 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11255 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11277 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11303 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11333 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11353 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11373 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11393 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11413 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11433 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcF7_word_RM()
11697 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11705 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11740 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11758 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11776 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11779 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
11780 M.x86.R_EIP = destval; in x86emuOp_opcFF_word_RM()
11784 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
11785 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11789 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11793 push_long(M.x86.R_CS); in x86emuOp_opcFF_word_RM()
11794 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11795 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
11796 M.x86.R_EIP = destval; in x86emuOp_opcFF_word_RM()
11801 push_word(M.x86.R_CS); in x86emuOp_opcFF_word_RM()
11802 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11803 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
11804 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11810 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11816 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11817 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11820 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11842 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11860 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11878 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11881 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
11882 M.x86.R_EIP = destval; in x86emuOp_opcFF_word_RM()
11886 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
11887 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11891 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11895 push_long(M.x86.R_CS); in x86emuOp_opcFF_word_RM()
11896 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11897 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
11898 M.x86.R_EIP = destval; in x86emuOp_opcFF_word_RM()
11903 push_word(M.x86.R_CS); in x86emuOp_opcFF_word_RM()
11904 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11905 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
11906 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11912 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11918 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11919 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11922 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11944 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11962 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11980 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11983 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
11984 M.x86.R_EIP = destval; in x86emuOp_opcFF_word_RM()
11988 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
11989 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
11993 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
11997 push_long(M.x86.R_CS); in x86emuOp_opcFF_word_RM()
11998 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
11999 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
12000 M.x86.R_EIP = destval; in x86emuOp_opcFF_word_RM()
12005 push_word(M.x86.R_CS); in x86emuOp_opcFF_word_RM()
12006 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
12007 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
12008 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
12014 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
12020 M.x86.R_IP = destval; in x86emuOp_opcFF_word_RM()
12021 M.x86.R_CS = destval2; in x86emuOp_opcFF_word_RM()
12024 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
12044 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
12062 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
12080 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()
12084 push_long(M.x86.R_EIP); in x86emuOp_opcFF_word_RM()
12085 M.x86.R_EIP = *destreg; in x86emuOp_opcFF_word_RM()
12090 push_word(M.x86.R_IP); in x86emuOp_opcFF_word_RM()
12091 M.x86.R_IP = *destreg; in x86emuOp_opcFF_word_RM()
12104 M.x86.R_IP = (u16) (*destreg); in x86emuOp_opcFF_word_RM()
12112 if (M.x86.mode & SYSMODE_PREFIX_DATA) { in x86emuOp_opcFF_word_RM()