delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2000/02/18/14:14:28

Sender: root AT delorie DOT com
Message-ID: <38AD8997.295D9B17@inti.gov.ar>
Date: Fri, 18 Feb 2000 15:04:07 -0300
From: salvador <salvador AT inti DOT gov DOT ar>
Organization: INTI
X-Mailer: Mozilla 4.6 [en] (X11; I; Linux 2.0.38 i686)
X-Accept-Language: es-AR, en, es
MIME-Version: 1.0
To: djgpp-workers AT delorie DOT com, Pierre Muller <muller AT cerbere DOT u-strasbg DOT fr>
Subject: Re: Bug in crt0.S
References: <200002171707 DOT SAA16280 AT cerbere DOT u-strasbg DOT fr>
Reply-To: djgpp-workers AT delorie DOT com

Pierre Muller wrote:

>    Hello,
>
>   I  wrote the Run Time Library of the Free Pascal port  to DJGPP  system.
> As such, I changed crt0.S to allow starting a program without any use of the
> C library.
>
>    Due to internal problems, I disabled the multiblock feature in the
> startup code.
> Thus our RTL uses Unixy sbrk with selector base changes.

How it affects? is this problem found only when using Unixy sbrk?

>    Recently, we got more and more problems with our IDE
> (a freeware equivalent of the Borland editor BP) under Windows.
> These crashes allways appeared in the VMOUSE VXD and completely crashed the
> computer!

I have a TV application + Win95 system that have this problem (ramdonly). But is on
exit.

>   These errors were even more frequent on Win98 and Win 2000 !!
> After quite long and hard debugging, I finally realized that
> there is a major bug in the startup code:
>
>    when the function 0x503 of DPMI is called,
> only the cs and ds selector are updated in the 16 byte sbrk16.asm code.
> The djgpp_ds_alias selector (that is used for the RMCB
> to avoid problems with fake exceptions like Crtl-C) is updated
> later in the 32 bit code... but its updated after the
> interrupts are reenabled !!!

Ugh!

>   If the mouse callback is called in the interval between the 0x503
> function call and the update
> of the alias selector base address => you get the crash!!
>
>   I include here a diff to version 2.03 of crt0.S file that also fixes the
> problem for the C library!
> Could someone please test this with RHIDE
> because the recent problem about linking could be due to that fact
> if (and I don't know if this is true) the linker is called internally !

You mean it could be because the RHIDE's RMCB is called during ld startup?

> PS: I first sent this mail by error  to the wrong djgpp-announce mailing list
> but apparently it was rejected anyhow !

DJ monitors all mails sent to announce.

SET

--
Salvador Eduardo Tropea (SET). (Electronics Engineer)
Visit my home page: http://welcome.to/SetSoft or
http://www.geocities.com/SiliconValley/Vista/6552/
Alternative e-mail: set-soft AT usa DOT net set AT computer DOT org
                    set AT ieee DOT org set-soft AT bigfoot DOT com
Address: Curapaligue 2124, Caseros, 3 de Febrero
Buenos Aires, (1678), ARGENTINA Phone: +(5411) 4759 0013



- Raw text -


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