www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/11/25/08:44:37

Xref: news-dnh.mv.net comp.os.msdos.djgpp:3423
Path: news-dnh.mv.net!mv!news.sprintlink.net!cs.utexas.edu!usc!math.ohio-state.edu!uwm.edu!fnnews.fnal.gov!hycpsg01!kccheng
From: kccheng AT hycpsg01 DOT fnal DOT gov (Kuang-chun Cheng)
Newsgroups: comp.os.msdos.djgpp
Subject: need help
Date: 24 Nov 1995 23:42:15 GMT
Organization: FERMILAB, Batavia, IL
Lines: 35
Nntp-Posting-Host: hycpsg01.fnal.gov
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Dj-Gateway: from newsgroup comp.os.msdos.djgpp

Hi,

   I am using DJGPP for a driver of a interface board on 386 which run
   under DOS 6.2.  The interface board have 16K momary mapped on PC ISA
   bus 0xc4000~0xc7fff.  I simply create a pointer to access, said, 0xc4000
   directly.  But I got a segmentation error like,

      Segmentation violation at pointer 0xc4000 in df:13f7
      cs=df  ds=48  es==48 ....

   Well, in segment df, the address is limited up to df<<4+0xFFFF.  The
   access to 0xc4000 of course is a error.  But my question is ...

   As I know, DJGPP is a 32 bits C compiler.  Why I still be limited on
   segment << 4 +(16 bits offset) region ????

   The following is the environment I used to compiler my program

       set DJGPP=c:\djgpp\djgpp.env
       set TMPDIR=c:\tmp
       set GO32TMP=c:\tmp
       set GO32=
       gcc -O4 -I./include -o my_prog my_prog.c
       coff2exe my_prog

   Thanks for any help and suggestion. 

   Kuang-chun
   

   ________________
   Kuang-chun Cheng
   kccheng AT phys DOT sinica DOT edu DOT tw  kccheng AT hycpsg01 DOT fnal DOT gov

- Raw text -


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