Re: Dos App hangs with DPMI / PIC problem

Ryan Underwood
2004-09-10T16:16:25Z

> Ryan, the dos app was designed for running on a MS-DOS machine that has no
> Windows on it. Since it is not meant for Linux, the vendor is not willing
> to support me in any way...

Maybe you should make some noise to his competitors...

> I also tried to attach dosdebug to dosemu before I start the Dos App. I
> was told that dosdebug will give a lot more information on the problem this
> way. However, dosdebug did not give me any extra info when the Dosemu hang.
>
> Thank you for helping me. What else can I try?

Well, the first thing I'm wondering is what int you are inside of in
that trace. Eventually it does iret, but there was never an int that I
can see. Was part of the trace omitted?

The other thing is that you can try patching the conditional jump
immediately after that comparison that never succeeds:
c316:9036 F64408FF test [si+0x8],0xff
c316:903a 7408 je 9044

The op code for jmp 9044 is EB08. This will at least get you past this
while (foo != -1) situation, but it might just loop again or crash
afterwards. You could also try printing the value at the memory
location si+0x8 when you arrive at that instruction to see if it ever
changes.

--
Ryan Underwood, <nemesis@icequake.net>