[SeaBIOS] Bochs cvs + SeaBIOS git master + FreeDOS = slow load + invalid opcode

Sebastian Herbszt herbszt at gmx.de
Sat May 15 14:17:01 CEST 2010


Kevin O'Connor wrote:
> On Sat, Jan 09, 2010 at 07:48:51PM +0100, Sebastian Herbszt wrote:
>> I have tried SeaBIOS 0.5.1 on Bochs cvs with FreeDOS 1.0 Final boot floppy.
>> Loading from floppy was utterly slow and then FreeDOS dumped
> 
> FYI.  Hopefully this will be fixed in Bochs, but in the meantime I've
> committed the following change to SeaBIOS:
> 
> --- a/src/floppy.c
> +++ b/src/floppy.c
> @@ -182,7 +182,9 @@ wait_floppy_irq(void)
>         v = GET_BDA(floppy_recalibration_status);
>         if (v & FRS_TIMEOUT)
>             break;
> -        wait_irq();
> +        // Could use wait_irq() here, but that causes issues on
> +        // bochs, so use yield() instead.
> +        yield();
>     }
> 
>     v &= ~FRS_TIMEOUT;

Fixed in Bochs 2.4.5.

Sebastian




More information about the SeaBIOS mailing list