Ramon van Handel wrote:

> Why ?  Is this (again) due to imperfect timing in the monitor, or
> is there a different reason ?

I'm not sure.  I think DOS waits around for a reply from the
keyboard or something like that.  I never got the keyboard
code perfect.  Same thing in bochs.  When I boot from the
floppy, this doesn't happen though.  Seems to be a defect
more in the hardware emulation than anything else.

BTW, I hacked the DMA code just a little, and plex86
can boot DOS from floppy now.  For the next release
I want to see if we can boot the test kernels
from GRUB + test kernel, rather than the bootloader hacks.


> That sounds like a job for me :)  I guess a simple lookup table
> will do...  I'll work on it.

That would be cool.  There was an oddity, where the hard drive
emulation code registers port numbers 0x1f0..0x1f7 one byte
at a time.  0x1f0 is a word port.  0x1f1 is a byte port.  Yet
when you access 0x1f0, it needs to get the whole word.
The current plugin code was splitting these accesses into 2.

Perhaps if a device owns consecutive ports, pass accesses in
larger quanta to the device, and let it split them up.


> >In general, my opinion on performance is, that measuring
> >it now is only useful to see how much we've gain
> >over time.
> 
> That is, IMO, a very useful thing to do.

Much agreed.

-Kevin

Reply via email to