Message-Id: Comments: Authenticated sender is From: "Salvador Eduardo Tropea (SET)" Organization: INTI To: ovek AT arcticnet DOT no (Ove Kaaven), djgpp AT delorie DOT com Date: Fri, 14 Nov 1997 16:24:25 +0000 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: GAS segment override Precedence: bulk ovek AT arcticnet DOT no (Ove Kaaven) wrote: > Eli Zaretskii wrote: > > >On Tue, 11 Nov 1997, Johan Levin wrote: > > > >> Allegro does it this way: > >> .byte 0x2e > >> movw ___djgpp_ds_alias, %ax > >> > >> But I'd like a neater wayt than to use '.byte'. > >> '.byte' looks like a temporary solution. > > > >It's not temporary, it *is* the solution. See section 17.2 of the DJGPP > >FAQ list (v2/faq210b.zip), it explicitely tells you to do it the Allegro > >way (unless you want to get in trouble). > > I doubt. The trouble is with > > mov cs:mem > > not with > > cs <-- separate and valid instruction > mov mem > > as far as I know, and using .byte is an unnecessary complication for a > workaround that is already built-in (the separate "cs" instruction). > Is this wrong? In old versions of AS segment override was very buggy and produced too much troubles to people like Morten. I don't know if the separated version is good enough. The code in headers still using the .byte thing because was made for the old AS. The worst problem was the random faults when using the segment override. So if you want to use it, do it, and if after a deep use you determine that the bug is finally killed make know it. By now I think that people wanting to avoid problems (they can appear when compiling the code with djgpp v2.0+BNU 2.7) must use the byte workaround. SET ------------------------------------ 0 -------------------------------- Visit my home page: http://www.geocities.com/SiliconValley/Vista/6552/ Salvador Eduardo Tropea (SET). (Electronics Engineer) Alternative e-mail: set-sot AT usa DOT net - ICQ: 2951574 Address: Curapaligue 2124, Caseros, 3 de Febrero Buenos Aires, (1678), ARGENTINA TE: +(541) 759 0013