Date: Sun, 11 Jun 2000 09:03:14 +0300 (IDT) From: Eli Zaretskii X-Sender: eliz AT is To: djgpp AT delorie DOT com Subject: Re: far pointers In-Reply-To: <394204AD.A950D898@the_message_body.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII 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 On Sat, 10 Jun 2000, Alexei A. Frounze wrote: > Eli Zaretskii wrote: > > > > First, you *can* run protected-mode programs on top of plain real-mode > > DOS: that's what CWSDPMI does, for example, when it runs without EMM > > or QEMM installed; the speed of the mode switch is not really relevant > > here. This fact alone seems to go against your text, which suggest > > that V86 allows DOS and PM programs to coexist (meaning that without > > V86, such coexistence is impossible). > > I'm not sure I get your point. The point is that it is IMHO misleading to say that V86 *allows* DOS and PM programs to coexist. V86 has nothing to do with PM programs that use DOS. It makes the mode switch faster in some cases, but that about all it does for PM programs. > > Second, even in V86 mode, a protected-mode program that calls > > real-mode DOS services needs to make an explicit PM-to-RM switch, or > > it will crash. So there's nothing in V86 per se that allows or makes > > it simpler for PM programs to coexist with DOS. Faster, yes, but not > > simpler. > > What do you exactly mean by "simpler"? Replace ``simpler'' with ``different''. I'm saying that V86 doesn't make any difference, in principle, for PM programs that run on top of DOS. You need to use a different API (such as VCPI) to get into protected mode and back, but that's all. > How about IRQs? They should be handled ASAP. V86 helps here. Moreover, you > know that it's good to have 2 separate IRQ handlers: one for PMode, one for > real/v86 mode. This is all true, but how is it relevant to the reason I commented about the tutorial? Let's get back to the topic: the *only* thing I was commenting about was this wording: [V86] means programs like DOS can coexist with protected-mode programs. My comment was that this is misleading, because V86 does nothing to *allow* coexistence between DOS and PM programs. They can coexist with or without V86, and special measures are required in both cases to make that coexistence possible. > It would be impossible to have (let's say) a disk I/O in DJGPP under > DOS without V86. Please explain why do you say so. DJGPP can work on bare-bones DOS machine without any V86 monitor. All you need is CWSDPMI, and CWSDPMI is *not* a V86 monitor, on a vanilla DOS system it really switches the CPU to plain real mode (not to V86) when it calls DOS.