delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1994/03/14/10:04:12

Date: Mon, 14 Mar 94 09:37:25 -0500
From: dj AT ctron DOT com (DJ Delorie)
To: ghein AT nevada DOT edu
Cc: djgpp AT sun DOT soe DOT clarkson DOT edu, ghein AT nevada DOT edu
Subject: Re: New to djgpp...

> But, there are some things I'm unclear on.  For example, do the  INT calls
> still work the same?  Before I was using BC++ ver 3.1.  What about the
> asm codes?  Specifically "out".  

Some interrupts are emulated by go32.  Those that are and require
pointers take a 32-bit pointer in the offset register and no segment
register (go32 converts).  For maximum forward compatibility, use
_go32_dpmi_simulate_interrupt after moving the data to/from the
transfer buffer (see _go32_info_block).

> Before I accessed video memory at 0xA000:0000.  Obviously with protected 
> mode and flat memory that address is no longer meaningfull.  What is the 
> new address for video?  I read the docs but I was unclear on what 
> exactly happens with the memory changes.  

You can use dosmemget/dosmemput with a physical address of 0xa0000, or
use the gr/grx libraries to manage it for you.  Since you need a far
pointer to reach the memory and gcc doesn't support far pointers, you
need to use assembler to do the far pointer work.  For non-dpmi, you
can access the video at 0xe00a0000, but this won't work in DPMI mode.

> Also, how do i get info.exe to work?  When I run it I get an error about
> dir not found.??!!??!!

dir should be in djdoc*.zip as docs/djgpp/dir.  Make sure you run
setdjgpp, which sets the INFOPATH environment variable.


- Raw text -


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