是否可以访问键盘控制器的内部 make/break 代码缓冲区?

Is it possible to access the keyboard controller's internal make/break code buffer?

根据此网页:http://stanislavs.org/helppc/8042.html 键盘控制器维护其自己的内部 16 字节 make/break 代码缓冲区。

"The keyboard's internal controller buffers up to 16 bytes of make/break code information. This is common among all PC systems and shouldn't be confused with the (32 byte) keyboard buffer maintained by the BIOS."

能够访问这个缓冲区对我的 8086 汇编语言程序非常有用(大概更新速度比 BIOS 维护的 32 字节缓冲区快)。

除了轮询端口 60h 之外,是否有办法从内部缓冲区中提取那些 make/break 代码?

没有任何记录的方式。我并不是要暗示有一种已知但未记录的方法来做到这一点;我只是不愿意说没有任何未记录的方法。

使用 port 设施访问的设备通常维护自己的离散内存和逻辑,因此您不应期望在系统的其他任何地方看到内存 space 暴露给您。也有例外;内存区域的 DMA 传输,甚至将它们内存映射到物理地址 space。但是对于键盘,不,你看不到那个内存。