Loading SS in v86 mode (but not real mode) does reset the stack size. Fixes DOS programs in Windows 9x.

This commit is contained in:
SarahW 2019-04-30 21:47:17 +01:00
commit abb5184ed4

View file

@ -460,6 +460,8 @@ int loadseg(uint16_t seg, x86seg *s)
codegen_flat_ds = 0;
if (s == &cpu_state.seg_ss)
codegen_flat_ss = 0;
if (s == &cpu_state.seg_ss && (cpu_state.eflags & VM_FLAG))
set_stack32(0);
}
if (s == &cpu_state.seg_ds)