|
|
@@ -0,0 +1,27 @@ |
|
|
|
# Protocols |
|
|
|
|
|
|
|
Some subsystems (and in the case of KEY and EMIT, the core) re- |
|
|
|
quire drivers to implement certain words in a certain way. For |
|
|
|
example, the core requires drivers to implement (key) and (emit) |
|
|
|
or else it won't know how to provide a console. |
|
|
|
|
|
|
|
These protocols are described here. |
|
|
|
|
|
|
|
# TTY protocol |
|
|
|
|
|
|
|
(key) -- c Returns the next typed key on the console. |
|
|
|
If none, block until there is one. |
|
|
|
(emit) c -- Spit a character on the console. |
|
|
|
|
|
|
|
# PS/2 protocol |
|
|
|
|
|
|
|
(ps2kc) -- kc Returns the next typed PS/2 keycode from the |
|
|
|
console. Blocking. |
|
|
|
|
|
|
|
# SPI Relay protocol |
|
|
|
|
|
|
|
(spie) -- Enable SPI device |
|
|
|
(spid) -- Disable SPI device |
|
|
|
(spix) n -- n Perform SPI exchange (push a number, get a |
|
|
|
number back) |
|
|
|
|