Mail Archives: djgpp/1999/10/17/07:50:48
From: | kriiid AT my-deja DOT com
|
Newsgroups: | comp.os.msdos.djgpp
|
Subject: | allocating memory using DPMI
|
Date: | Sun, 17 Oct 1999 10:14:24 GMT
|
Organization: | Deja.com - Before you buy.
|
Lines: | 33
|
Message-ID: | <7uc7hu$m6f$1@nnrp1.deja.com>
|
NNTP-Posting-Host: | 212.160.57.52
|
X-Article-Creation-Date: | Sun Oct 17 10:14:24 1999 GMT
|
X-Http-User-Agent: | Mozilla/4.0 (compatible; MSIE 4.0; Windows 95)
|
X-Http-Proxy: | 1.1 x24.deja.com:80 (Squid/1.1.22) for client 212.160.57.52
|
X-MyDeja-Info: | XMYDJUIDkriiid
|
To: | djgpp AT delorie DOT com
|
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp
|
Reply-To: | djgpp AT delorie DOT com
|
Hello,
Well, the first question is: when I get SIGSEGV there is written
information about segments. What does limit section mean? I thought
this is size of segment. But now I don't think so, cause values like
0x8ffff are not really possible (if it is size in bytes, maybe it is in
pages...).
I've tried some prettey low-level programming using NASM & DJGPP. For
start - the most essential function - allocating memory (501h). So I
made program which just allocates some memory. I run it under windows.
So, linear address is 05DAC000h. And now the funny part. Base address
of DS/CS is 83046000h ;-). So now I've got a problem. But I thought
it's beacause windows is DPMI host (is it true?) and it doesn't now
that djgpp is using such a high segments. So I run it under DOS.
Allocated addres is 200B0000h, while base addres is 10000000h. It looks
OK, but when I try to write there I get a beautiful SIGSEGV. Of course
(?) I substract base address from allocated address when I write
there...
Do you have any idea what is the problem?
Maybe I should put some code?
May the Force be with ya,
Michal 'CreeD' Szostakiewicz
buttman AT boss DOT staszic DOT waw DOT pl ew. gerwek AT polbox DOT com
ICQ - 2482112
"Only in America we stamp our God
<<In God we Trust>>"
Sent via Deja.com http://www.deja.com/
Before you buy.
- Raw text -