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:
parent
b98a6d63b1
commit
abb5184ed4
1 changed files with 2 additions and 0 deletions
|
|
@ -460,6 +460,8 @@ int loadseg(uint16_t seg, x86seg *s)
|
||||||
codegen_flat_ds = 0;
|
codegen_flat_ds = 0;
|
||||||
if (s == &cpu_state.seg_ss)
|
if (s == &cpu_state.seg_ss)
|
||||||
codegen_flat_ss = 0;
|
codegen_flat_ss = 0;
|
||||||
|
if (s == &cpu_state.seg_ss && (cpu_state.eflags & VM_FLAG))
|
||||||
|
set_stack32(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s == &cpu_state.seg_ds)
|
if (s == &cpu_state.seg_ds)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue