Date: 22 Jul 2003 15:00:12 +0200 Message-Id: From: Eli Zaretskii To: djgpp AT delorie DOT com In-reply-to: (sosaria@freechal.com) Subject: Re: Please Help! Logical Disk Access References: Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > From: "Keonwoo Kim" > Newsgroups: comp.os.msdos.djgpp > Date: Tue, 22 Jul 2003 11:18:29 +0900 > > hi. I could know what is matter. > under Windows 98, DPMI server assume the address is linear. It's not the DPMI server that assumes this, it's the DOS extender built into Windows. Plain DOS doesn't have a DOS extender, thus the difference. The problem is that you issue INT 25h as a real-mode procedure. Instead, I think it's much easier to use __dpmi_int to invoke 25h. Why didn't you do that in the first place? > my program should work under msdos and windows. so > i should know vandor of dpmi server which it use. > --- how can i know this? I don't think your program needs to know that, if you change the code as mentioned above. But anyhow, the function __dpmi_get_capabilities, if supported by the DPMI server, returns the vendor ID. Alternatively, simply detect Windows (using Int 2Fh, AX=17xx) and assume the DPMI is the one bundled with Windows.