<br><br><div class="gmail_quote">On Wed, Aug 12, 2009 at 9:17 PM, Kevin O'Connor <span dir="ltr"><<a href="mailto:kevin@koconnor.net">kevin@koconnor.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Wed, Aug 12, 2009 at 03:29:06PM +0800, Jason Wang wrote:<br>
> Hi Kevin,<br>
>     The Seabios try to booting usbrom with IPL_TYPE_BEV, which i think<br>
> should use IPL_TYPE_HARDDISK, right? Followed by BIOS BOOT Specification<br>
> I think it can add<br>
> #define IPL_TYPE_USBROM 0x05 to support BCV, how do you think about that?<br>
<br>
</div>SeaBIOS is overloading those flags, and I agree it's confusing.  The<br>
flags for BCV tables are only used in run_bcv(), add_bcv(), and<br>
add_bcv_hd().  It's not necessary to add a new flag.</blockquote><div>I find that handle_19, do_boot only seek the BEV devices <br><ol><li>   if (bootdev >= IPL.bevcount) {</li><li>        printf("No bootable device.\n");</li>
<li>        // Loop with irqs enabled - this allows ctrl+alt+delete to work.</li><li>        for (;;)</li><li>            usleep(1000000);</li><li>    }</li><li>  /* Do the loading, and set up vector as a far pointer to the boot</li>
<li>     * address, and bootdrv as the boot drive */</li><li>    struct ipl_entry_s *ie = &IPL.bev[bootdev];</li></ol>why did not seek IPL.bcv?<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
<div class="im"><br>
On Wed, Aug 12, 2009 at 10:59:51AM +0800, Jason Wang wrote:<br>
> I use a BCV now, sorry for messing this two types. Which i use is BCV.<br>
> I  tried to put only an "lretw" in BCV. but still failed.<br>
><br>
> > I don't know why you can't return - it should work.  Maybe the stack<br>
> > or gdt/idt was changed?<br>
<br>
</div>As before, I'd double check that you've restored the stack, segments,<br>
cr0, and gdt/idt.<br>
<div class="im"><br>
> > As above, define a BCV and hook int13 from the BCV handler.<br>
> ><br>
> So, BCV handler is used to hook int13, anything else that BCV should do?<br>
<br>
</div>That should be it.<br>
<font color="#888888"><br>
-Kevin<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Jason Wang <br>Peking University<br>