Messages in this thread | | | From | "Pedro M. Rodrigues" <> | Date | Thu, 14 Mar 2002 22:19:23 +0100 | Subject | Re: IO delay, port 0x80, and BIOS POST codes |
| |
This piece of code is taken from an old Minix source code tree, the file being boothead.s . Notice the port 0xED usage and the comment.
! Enable (ah = 0xDF) or disable (ah = 0xDD) the A20 address line. gate_A20: call kb_wait movb al, #0xD1 ! Tell keyboard that a command is coming outb 0x64 call kb_wait movb al, ah ! Enable or disable code outb 0x60 call kb_wait
mov ax, #25 ! 25 microsec delay for slow keyboard chip 0: out 0xED ! Write to an unused port (1us) dec ax jne 0b
ret kb_wait: inb 0x64 testb al, #0x02 ! Keyboard input buffer full? jnz kb_wait ! If so, wait ret
/Pedro
On 14 Mar 2002 at 16:03, Richard B. Johnson wrote:
> > > Well I can see why he's an EX-Phoenix BIOS developer. A port at 0xed > does not exist on any standard or known non-standard Intel/PC/AT > compatible. > > Remember DOS debug? > > C:\>debug > > -i ed > FF > -o ed aa > -i ed > FF > -o ed 55 > -i ed > FF > -q > > > This is not a DOS emulation. This is a real-mode boot where any ports > will be visible. If you used it with success, it means that you didn't > need the I/O delay of writing to a real port. Instead you got the few > hundred nanoseconds of delay you get by writing to nowhere. > > Cheers, > Dick Johnson
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |