Der Tastaturtreiber liest einfach nur den Scancode aus port 0x60 aus und wandelt diesen wenn möglich in einen Ascii-Code um. Anschliessend schreibt er diesen Code in einen Puffer, aus dem man dann die Zeichen lesen kann. Was man damit anstellt wirst du ja selbst wissen.
Aber, wenn du die Treiber eh alle selbst schrieben willst/musst, kannst du dich auch gleich in den ProtectedMode begeben, da du das BIOS-Zeug ja eh nicht nimmst, einen anderen Grund für den RM sehe ich nicht.
Achso falls die Int's generell nicht gehen, schau mal ob irgendwie ein cli nicht wieder aufgehoben wird. Ist mir auch schon mal passiert, hatte ein sti auskommentiert und mich gewundert warum der Int 13h meinen Kernel nicht geladen hat, ohne die IRQ's geht's da nicht. Vielleicht ist das ein Grund.
Just guessed^^