Mail Archives: djgpp/1995/06/26/13:12:19
Hans-Bernhard Broeker (softbrek AT hathi DOT informatik DOT rwth-aachen DOT de) wrote:
> sl323 AT city DOT ac DOT uk (Mark Lewis) writes:
> >HELP ! I've managed to get this go32 error from a simple bit of code.
> >go32 version 1.12.maint3 Copyright (C) 1994 DJ Delorie
> >This image has a buggy read.s module. Run DPMIFIX on it and try again.
> >Unsupported DOS request at eip=1967
> >eax=00003f08 ebx=00000008 ecx=00004000 edx=00000000 esi=00000000 edi=00000000
> >ebp=7ffffd90 esp=7ffffd68 cs=d8 ds=48 es=48 fs=48 gs=38 ss=48 cr2=00009000
> >Call frame traceback EIPs:
> > 0x00001967
> > 0x0000128d
> This sounds like a library problem: read.s, the source file for the read()
> function of the C-library, was not DPMI-compatible in some earlier version.
> This has been fixed quite some time ago, and there was a small utility called
> dpmifix that could fix it in readily linked executables by binary patching.
> So: check if you have a correct version 1.12m3 (or m4) installation, and
> esp. a correctly patched libc.a (did you run the *.bat files included in
> 112m[1-4].zip? they are there to patch the libc.a).
Firstly, let me apologise for posting this 3 times. I was posting on a
modem link and my newsreader died all 3 times. I didn't realise anything at
all had gotten through until today.
Secondly, if my code was at fault then please don't flame me. It was
knocked up and fiddled with very late at night while I was trying to isolate
a problem with read() that was being exhibited by another program. This
program is NOT buggy as far as I can tell. It compiles and runs fine under
gcc-2.6.3 (sun-sparc-solaris2.3), emx/gcc (running on DOS), borland C, and
Microsoft C. The code bombs out with almost identical errors to those I got
with my test code during a read() call. I got a GPF when I tried it under
windows instead of DOS.
I fully installed djgpp-1.12m4, including all the patches. I have had no
other problems with it. Identical problems have been reported to me by 2
other people completely independantly, so I think the chances of it being a
problem with my installation are minimal.
The DPMI problem I read about after I had these problems, but I am running
under clean DOS, and I get the same crashes during read() even with
GO32=nodpmi, which makes me think that DPMI support is not an issue.
Like I said before, I believe the problem lies in the read() call as defined
by djgpp. If anyone would like to look at the actual code that's causing
problems then I can mail it to you, either as a MIME attachment or uuencoded.
Thanks in advance,
Mark.
--
..--------------------------{ From: Mark Lewis }--------------------------.
| Computing Services | http://www.city.ac.uk/~sl323/home.html |
| City University | PGP public key available by WWW, or by |
| London, England | fingering sl323 AT finger DOT city DOT ac DOT uk |
`--------{ M DOT Lewis AT city DOT ac DOT uk (MIME) | nostra AT city DOT ac DOT uk (MIME) }---------'
- Raw text -