delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2002/01/10/12:12:11

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-workers-bounces using -f
Date: Thu, 10 Jan 2002 12:12:10 -0500
Message-Id: <200201101712.g0AHCAb01945@envy.delorie.com>
From: DJ Delorie <dj AT delorie DOT com>
To: djgpp-workers AT delorie DOT com
In-reply-to: <250B3114DA16D511B82C00E0094005F8055AC858@MSGWAW11> (message from
=?iso-8859-2?Q?Wojciech_Ga=B3=B1zka?= on Thu, 10 Jan 2002 10:39:19
+0100)
Subject: Re: WIP: lfn under dosemu
References: <250B3114DA16D511B82C00E0094005F8055AC858 AT MSGWAW11>
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Can you give a clue how to actually issue linux system calls within a
> plugin?

The plugin itself is part of the dosemu program, not part of the V86
box.  You can just call open() read() stat() etc.

As for getting to the plugin from your DOS program, you call int 0xE6
with a value in AH.  dosemu uses AH to select a plugin, and passes
control to it (in linux mode).  The code then has access to all the
registers and the DOS memory (it's mapped right into the linux process
space, at address zero!).

So all the TSR does (in my case) is hook int 0x21 and call int 0xe6 so
that the plugin gets to see every int 0x21 call.

- Raw text -


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