<br><tt><font size=2>seabios-bounces@seabios.org wrote on 11/22/2010 07:40:36
PM:<br>
<br>
</font></tt>
<br><tt><font size=2>> <br>
> Cc:</font></tt>
<br><tt><font size=2>> <br>
> seabios</font></tt>
<br><tt><font size=2>> <br>
> On Mon, Nov 22, 2010 at 12:08:33PM -0500, Stefan Berger wrote:<br>
> > The attached patch implements support for the transparent call
of<br>
> > functions in 32 bit space from 16 bit code and allows up to 6<br>
> [...]<br>
> > +        // Disable irqs (and clear direction
flag)<br>
> > +        cli<br>
> > +        cld<br>
> > +<br>
> > +        // Disable nmi<br>
> > +        movl $CMOS_RESET_CODE|NMI_DISABLE_BIT,
%eax<br>
> > +        outb %al, $PORT_CMOS_INDEX<br>
> > +        inb $PORT_CMOS_DATA, %al<br>
> > +<br>
> > +        // enable a20<br>
> > +        inb $PORT_A20, %al<br>
> > +        orb $A20_ENABLE_BIT, %al<br>
> > +        outb %al, $PORT_A20<br>
> <br>
> It should be possible to extend call32() to do what you need -<br>
> duplicating this functionality is a non-starter.</font></tt>
<br>
<br><tt><font size=2>Yes, this block is duplicated, but the code around
it is different than what exists.</font></tt>
<br>
<br><tt><font size=2>Would you want the same type of transparency in the
code, i.e., using the function tables and</font></tt>
<br><tt><font size=2>the tricks with the #defines? Either way is fine,
but it gives me direction on how to proceed.</font></tt>
<br>
<br><tt><font size=2>  Stefan</font></tt>
<br>