From: Nick Newsgroups: comp.os.msdos.djgpp Subject: Weird locking bug Date: Tue, 11 Jun 2002 18:14:44 -0400 Organization: MindSpring Enterprises Lines: 28 Message-ID: <3D067654.57A9B1B2@yahoo.com> NNTP-Posting-Host: a5.f7.88.b7 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Server-Date: 11 Jun 2002 22:15:05 GMT X-Mailer: Mozilla 4.75 [en] (Win98; U) X-Accept-Language: en To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com This program: #include #include #include int main(void) { if(_go32_dpmi_lock_code((void *)0x1000, __dpmi_get_segment_limit(_my_cs()))) printf("%x\n", __dpmi_error); return 0; } prints out 600 (the DPMI function code for locking). This is bizzare even by itself, because although I know some DPMI servers don't return error codes, preserving AX would seem to indicate the error happened very early on. Still, shouldn't it work? (According to System Monitor, I have 14.4MB of free physical memory.) System specs: Windows 98 Celeron 1GHz CPU 192MB RAM gcc -v prints: Reading specs from d:/djgpp/lib/gcc-lib/djgpp/2.953/specs gcc version 2.95.3 20010315/djgpp (release) as -v prints: GNU assembler version 2.11.2 (i386-pc-msdosdjgpp) using BFD version 2.11.2