delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/03/03/18:01:30

Message-ID: <36DDBEB1.258A@erols.com>
Date: Wed, 03 Mar 1999 17:58:57 -0500
From: "John S. Fine" <johnfine AT erols DOT com>
X-Mailer: Mozilla 3.01 (Win95; U)
MIME-Version: 1.0
To: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
CC: djgpp AT delorie DOT com
Subject: Re: HELP! Assembly language dual mode interrupt handler for djgpp program
References: <Pine DOT SUN DOT 3 DOT 91 DOT 990303084023 DOT 7979G-100000 AT is>
Reply-To: djgpp AT delorie DOT com

Eli Zaretskii wrote:

> > I think using true real mode is a bad design for many reasons
> 
> You didn't expect a 20K program written by an engineer on his free
> time to include a memory manager and a V86 monitor, did you?

  Someday I ought to take the time to look at that source code
(I assume it is available somewhere).  It must be able to
handle various reflections of interrupts.  Having written a
few V86 monitors myself, I would think that reflecting
interrupts in a pmode/V86 design is enough easier than in a
pmode/real design to cover the entire effort of the V86
monitor (especially if V86 runs with IOPL 3, which is certianly
no less protected than real mode).

> >   One of my projects runs mainly in V86 mode on a 50Mhz 486.  All
> > interrupts are in pmode and it often sevices interrupts well over
> > 20Khz for sustained periods.
> 
> Interesting.
> 
> What system configuration was that?  Did you use MS-DOS and standard
> memory managers to get to V86, or some custom software as well?

  Not that time.  In that case I wrote the OS; I wrote the V86
monitor;  I wrote the interrupt service routine that ran at
over 20Hz.

  A few years earlier I did a program (just for my own computer)
that had a high timer rate, also over 20Khz.  Not only the main
app, but even the interrupt service routine was in V86 mode (That
is additional overhead).  And I did it using QEMM, rather than my
own V86 monitor.  I forget the speed 486 I was using (but it was
a lot higher than 50).  At the time it was AMD's newest and fastest
486.  It didn't come close to working on an Intel 66Mhz 486, nor
would it work with EMM386.
-- 
http://www.erols.com/johnfine/
http://www.geocities.com/SiliconValley/Peaks/8600/

- Raw text -


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