[LinuxBIOS] New version of ROM posting app

Paulo Marques pmarques at grupopie.com
Mon Mar 28 20:44:55 CEST 2005

Jon Smirl wrote:
> On Mon, 28 Mar 2005 11:05:08 -0700, Li-Ta Lo <ollie at lanl.gov> wrote:
>>>>Which version of x86emu are you using? The larger one from XF86 or the
>>>>reduced version from Paulo?
>>>The one from linux BIOS cvs:
>>Actually, the code on the LinuxBIOS cvs may be the reduced version by
>>Paulo, depending on when you check it out. Paulo's version has some
>>bug such that it may fail to init the hardware. I did commited some
>>fix to the CVS I got from him. But there are some fixed not commited
>>dur to the CVS -> TLA transition.
> What I used is in the current CVS repository:
> :pserver:anonymous at cvs.sourceforge.net:/cvsroot/freebios

I just went there to check out the versions.

The version in "freebios" is the large version whereas the version in 
"freebios2" is the reduced version.

The large version still has the "#define xorl(a,b)   ((a) && !(b)) || 
(!(a) && (b))" bug in line 100 in ops2.c. This macro needs an extra 
parenthesis to avoid priority issues.

The reduced version, on top of this bug, still has the XCHG AX,BX bug. 
To fix it manually, edit line 2230 in ops.c and change:

         M.x86.R_EAX = *reg16;


         M.x86.R_AX = *reg16;

This bug cleared the top 16 bits of EAX when doing a XCHG AX,BX 
instruction. In the BIOS Ollie tested with, this produced a division by 
zero later in the code.

It also has the "write destination on CMP" bug.

I can send a proper patch against this version to fix all this, but if 
the version in the arch repository is already updated, then there is no 
need for it.

Paulo Marques
Software Development Department - Grupo PIE, S.A.
Phone: +351 252 290600, Fax: +351 252 290601
Web: www.grupopie.com

All that is necessary for the triumph of evil is that good men do nothing.
Edmund Burke (1729 - 1797)

More information about the coreboot mailing list