Einzelnen Beitrag anzeigen
Alt 27.07.2017, 11:07   #11
RalfFriedl
Registrierter Benutzer
Thank you for your reply.

I had attached the debugger to ntvdm, as that was the process consuming the CPU time. It seems to do some busy waiting for something that happens either after hours of waiting, or never. What I don't know is how I find out which BIOS instructions are executed. Do I need the DOS-Mode debugger, debug.exe? If so, this is a problem, because as a DOS program, debug.exe needs/runs ntvdm and again hangs. Or do I have to start a real DOS and trace through INT 10? If so, which function?

What I don't understand is why the VGA BIOS even matters, and if it does than only for DOS mode programs not for other programs in a console window. Even if a DOS program uses INT 10, there is no reason to invoke the VGA BIOS because initialization/output goes to the console window, not to the real screen. Actually it would seems dangerous to invoke the VGA BIOS, it might change the mode from graphics to text, it might write something into VGA memory that might distort the image. And trying to switch to fullscreen just gives the message that fullscreen is not supported on the system.
Would it be possible to patch the BIOS Image so that INT 10 immediately returns?

Some programs use INT 10, although most do not because is was also slow on the original machines. It seems Intel wants to do a proper emulation, although I'm not sure the original machines were that slow. Regarding your statement about Linux, Intel has working text output, they just don't care that it is so slow that you can see the characters appear. Linux users have no real problem because it affects only the boot manager, Linux will talk directly to the hardware.

Regarding your offer, what would I need to have installed?
On an intellectual level I would like to know what causes this and how to fix it. On a practical level, I have installed Microsoft's Virtual XP Mode, and while not ideal, it works.
RalfFriedl ist offline   Mit Zitat antworten