www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/04/03/21:22:03

Xref: news2.mv.net comp.os.msdos.djgpp:2419
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: DJGPP v2 and direct memory writing
Date: Wed, 3 Apr 1996 07:40:17 +0200
Organization: NetVision LTD.
Lines: 28
Message-ID: <Pine.SUN.3.91.960403073339.16244H-100000@is>
References: <4jqo2o$7ud AT news DOT mdata DOT fi>
NNTP-Posting-Host: is.elta.co.il
Mime-Version: 1.0
In-Reply-To: <4jqo2o$7ud@news.mdata.fi>
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

On 1 Apr 1996, Vesa-Matti Heino wrote:

> I use in my programs direct screen writing routines. When I upgradet to version
> 2 of djgpp, my programs wont work anymore. GCC compiles them just right, but
> when I run these files Gcc gives error and register values. What is wrong...
> 
> Here is one of functions, whitch wont work:
> 
> char *screen=(char *)0xD0000000;
> 
> void inline plot(short x,short y,char col){
>             screen[(y<<8)+(y<<6)+x]=col;
>             }
> 
> Also my direct textmode routines wont work... :(

Direct access to video RAM (and any other memory-mapped device) by poking 
a constant address like 0xD0000000 doesn't work in v2.0.  In fact, it 
didn't even work in v1.x in DPMI mode, and v2.0 is DPMI-only 
environment.  Read the __djgpp_nearptr_enable section in the libc.a 
on-line Info docs, or point your Web browser to this URL:

   http://www.delorie.com/djgpp/doc/libc-2.00/libc_111.html#SEC111.

Section 18.4 in the FAQ list (available as v2/faq200b.zip from the same 
place you get DJGPP) tells you about other available methods of accessing 
conventional memory and memory-mapped devices.  I suggest you read it.

- Raw text -


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