delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1996/11/17/16:00:37

From: sandmann AT clio DOT rice DOT edu (Charles Sandmann)
Message-Id: <9611172046.AA13381@clio.rice.edu>
Subject: Re: cwsdpmi - rm callbacks and pm sw ints
To: billc AT blackmagic DOT tait DOT co DOT nz
Date: Sun, 17 Nov 1996 14:46:20 -0600 (CST)
Cc: djgpp-workers AT delorie DOT com
In-Reply-To: <328F3F27.4ADE@blackmagic.tait.co.nz> from "Bill Currie" at Nov 17, 96 04:36:55 pm

> It seems I may have found a bug in cwsdpmi (I hope I'm wrong and it's my
> code).

I compiled this code on my box, and found several bugs in your code.
For one, the %cs override disappears when assembled.  Don't use %xx:
type overrides in gas code, they are buggy.  Either numeric op them in
or use the one per line cs,es, etc type opcodes.

You also don't adjust the RM SP in the callback (Section 1:).  This would
cause the interrupt to be repeated (and thus the hang under CWSDPMI).
Since interrupts are handled differently by different hosts, you will
see different behavior.

After finding these two bugs, I quit looking.  I didn't bother to see if
it worked at that point.

> I've attaced my test code (which works perfectly under windows 3.11).

I have learned this means very little.  Win 3.1 and other DPMI providers
sometimes have hacks in them to handle common coding bugs.  

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019