joncampbell123 / dosbox-x

DOSBox-X fork of the DOSBox project
GNU General Public License v2.0
2.6k stars 375 forks source link

DOS session inside Windows 98 hangs when using the dynamic_x86 core #2424

Open Diatonator opened 3 years ago

Diatonator commented 3 years ago

Describe the bug When something requires a DOS session inside Windows 98 SE the OS hangs. If just running it from the Start menu - the same result. I could try Ctrl-Alt-Del to de-hang the system, but the app which uses the DOS mode most likely won't work.

To Reproduce Steps to reproduce the behavior: image

Expected behavior On a normal core the DOS session worked most of the time I tried it.

Screenshots The screen just freezes and the mouse pointer too.

Environment (please complete the following information):

Additional context I seen some discussion here but was unable to find the exact issue on the tracker, thus I created this one

Wengier commented 3 years ago

This is indeed a known issue as pointed out by @joncampbell123 earlier. @koolkdev may want to take a look at it when he has time.

CyberTacoX commented 2 years ago

Bumping this, as the issue still happens, it also affects any Windows program that opens a dos window at all (launchers, patch extractors, etc), and the host CPU savings for switching the cpu core to dynamic_x86 are tremendous. Please give this another look if you could, it would be very appreciated. :-)

maron2000 commented 2 years ago

It didn't hang on Windows x64 SDL1. win98

joncampbell123 commented 2 years ago

It is possible that the recent fixes to VGA rendering code fixed the issue by not issuing reads per scanline in case of JEGA/DBCS text modes. I was seeing instability in a DOS VM under Windows 3.1 until I split the JEGA/DBCS case out to another function. Can you confirm that if you compile the latest commit, it no longer occurs?

CyberTacoX commented 2 years ago

I'd be happy to test. Were those VGA fixes incorporated into the latest release, 0.84.0 (05-31-2022)?

Diatonator commented 2 years ago

I downloaded 0.84.1 and the hanging is still there. I didn't change the config (P1 MMX, dynamic core).