[SeaBIOS] [PATCH] support T13 EDD3.0 spec

Sebastian Herbszt herbszt at gmx.de
Sat Jan 8 13:48:00 CET 2011


Kevin O'Connor wrote:
> On Thu, Jan 06, 2011 at 04:24:13PM +0200, Gleb Natapov wrote:
>> On Thu, Jan 06, 2011 at 09:00:00AM -0500, Kevin O'Connor wrote:
>> > On Thu, Jan 06, 2011 at 03:53:57PM +0200, Gleb Natapov wrote:
>> > > On Thu, Jan 06, 2011 at 08:41:11AM -0500, Kevin O'Connor wrote:
>> > > > On Thu, Jan 06, 2011 at 07:09:27AM +0200, Gleb Natapov wrote:
>> > > > > On Wed, Jan 05, 2011 at 09:32:33PM -0500, Kevin O'Connor wrote:
>> > > > > > > -        SET_INT13DPT(regs, host_bus[3], 0);
>> > > > > > > +        SET_INT13DPT(regs, host_bus[3], ' ');
>> > > > > > 
>> > > > > > What if we're not in t13 mode?  Should this be:
>> > > > > >   u8 fillchar = t13 ? ' ' : 0;
>> > > > > >   SET_INT13DPT(regs, host_bus[3], fillchar);
>> > > > > > 
>> > > > > Phoenix does not specify padding. Are you sure phoenix has to have zero
>> > > > > padding?
>> > > > 
>> > > > I think RBIL documented 0s.  It may not be important.
>> > > > 
>> > > What is RBIL?
>> > 
>> > Sorry - Ralph Brown's interrupt list:
>> > 
>> > http://www.cs.cmu.edu/~ralf/files.html
>> > 
>> Ah, I have it, just didn't know it is called RBIL :).
>> 
>> Do you want me to resend with fillchar = t13 ? ' ' : 0; or space should
>> be good enough?
> 
> I just tested winxp, and it doesn't seem to call 1348 with a size
> bigger than 26 bytes.  So, thinking about it further, I'm not sure it
> matters - the spec isn't clear and I don't know of anything that would
> care.  (To be clear, I think we should support the 66 byte buffer
> size, however I'm not sure the padding matters.)
> 
> Sebastian - do you know of anything that calls 1348 with a buffer size
> that could observe the difference?

I think syslinux and FreeDOS call 1348 - will check their buffers later.

I have tested 1348 on VMware Player 3.0.0 build-203739. It runs
PhoenixBIOS 4.0 Release 6.0, VMware BIOS build 314. Results:
Input Buffer length -> Output Buffer length
1a -> 1a
1e -> 1e
42 -> 1e (looks like it doesn't support 42!)
4a -> 4a (wrong output buffer length, should be 1e; uses space padding)

Will do more tests later.

Sebastian




More information about the SeaBIOS mailing list