Xref: news-dnh.mv.net comp.os.msdos.djgpp:990 Newsgroups: comp.os.msdos.djgpp Path: news-dnh.mv.net!mv!news.sprintlink.net!uunet!in1.uu.net!psinntp!psinntp!psinntp!psinntp!netrixgw.netrix.com!jasmine!ld From: ld AT jasmine DOT netrix DOT com (Long Doan) Subject: Re: Execution of Data ? To: mbbad AT s-crim1 DOT dl DOT ac DOT uk (I. Badcoe) Sender: ld AT jasmine (Long Doan) Reply-To: ld AT netrix DOT com Organization: Netrix Corporation References: <3ugi2m$cq7 AT mserv1 DOT dl DOT ac DOT uk> Date: Wed, 19 Jul 1995 12:12:54 GMT Lines: 17 Dj-Gateway: from newsgroup comp.os.msdos.djgpp In article <3ugi2m$cq7 AT mserv1 DOT dl DOT ac DOT uk>, mbbad AT s-crim1 DOT dl DOT ac DOT uk (I. Badcoe) writes: |> Hi, |> Just a quick query. Am I right in thinking that I can load a suitable |> set of bytes into an array and then jump to the start of the array (perhaps |> by casting, perhaps using some of the go32_dpmi_* functions or perhaps with |> inline asm) and it will execute happily under go32 ? Yes, you can, but you don't have to use inline assembly or go32_... functions or anything. Just point a function pointer to that code and call the function. (Make sure that your %ds segment is executable, though.) |> I seem to remember when I looked at some of the _go32_dpmi* function |> source that they did similar things to this (except perhaps they always use |> DOS-memory; that may be because they always use RM code). Long.