Newsgroups: comp.os.msdos.djgpp From: mksmith AT idirect DOT com (Martin Smith) Subject: Help re. Interrupt 0x33 & 32 bit pointers. Content-Type: Text/Plain; charset=US-ASCII MIME-Version: 1.0 Reply-To: mksmith AT idirect DOT com Message-ID: Date: 6 Nov 96 05:39:32 UTC Sender: @chaos.idirect.com Lines: 21 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp I am rewriting some old code which sets a graphics mouse cursor via a call to DOS interrupt 0x33. In the bad old days (the days of SEGMENT:OFFSET), I could do this sort of thing: unsigned short ScreenMaskArray[32]; union REGS registers; registers.ax = 9; //to set the graphics cursor bitmap ... registers.dx = ofset(ScreenMaskArray); registers.es = segment(ScreenMaskArray); // THIS doesn't work CallInterrupt(0x33, ®isters, ®isters); I can't get this to work, because I can't translate a 32-bit pointer to the ScreenMaskArray into anything that DOS can understand. What can be done? {Getting the mouse calls to work is secondary to my learning how to deal with this kind of problem if it arises again.}