www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/05/15/06:43:40

From: HAHN MARKUS <681614 AT pcmail DOT rz DOT fht-esslingen DOT de>
Organization: FHT-Esslingen
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Date: Mon, 15 May 1995 10:35:12 MET
Subject: real (mode) problem

Hello folks !

Sorry for that, but I have a simple (hope not stupid) question :

I use GCC for DOS and want to call an software interrupt via
the INT86() function. Unfort. the function needs a real mode
pointer in ES:DI.
I know that GCC runs in protected mode and leave the segmented
sh.. of the 8088 architecture behind :)
Who can I convert my prot.mode linear 32bit pointer in a
real mode SEG:OFS one to call the fucntion correctly ?
Or should I implement a special routine, that handles
the <1MB area ?


(e.g. : ... 
        #include <dos.h>    

        char *mess[]="Hello, world$"
        union REGS regs;
        
        regs.x.ax=0x0009;
        
        regs.x.es=      <----- ????       
        regs.x.di=
        
        int86x(0x21, &regs, &regs);
)

Hope you can help me ...

Thanx for all !

Markus from Germany

        
        







- Raw text -


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