I am currently developing my PS/2 keyboard driver, and having some troubles with "ACK" signal wait etc...
So in the wiki, we can read this :

To me, it means that the keyboard will send "ACK" only after having sent the command byte AND the data byte.
Using QEMU, I've been receiving an ACK for keyboard reset command, then an ACK for 0xED, and then an ACK for LED states data byte, and so I'm lost and don't know how it should normally behave.
Thanks by advance,
Ankeraout.