DASM
|
HW implementation for 'SimpleKey'. More...
Public Member Functions | |
Public Functions | |
retval | new (scalar proto, scalar object) |
Construct a new hardware device object. | |
retval | start (scalar self) |
Start up the hardware. | |
retval | stop (scalar self) |
Stop the hardware. | |
retval | window (scalar self) |
Return the size of of the implementation. | |
retval | read (scalar self, scalar offset, scalar exec) |
Read value. | |
retval | write (scalar self, scalar offset, scalar exec, scalar value) |
Write value. | |
retval | symbol (scalar self, scalar offset) |
Get the symbol name for an offset. |
HW implementation for 'SimpleKey'.
A very simple key input.
2 words are provided (little endian):
Offset | Name | Meaning |
---|---|---|
+0 | Read | read a key, or 0 if none available |
+1 | Count | number of characters available |
The characters available are dequeued by reading the Read register. Every read of the Read register will queue any new characters for reading.
Writing to any register has no effect.
Definition at line 46 of file SimpleKey.pm.
retval DExecHW::SimpleKey::new | ( | scalar | proto, |
scalar | object | ||
) |
Construct a new hardware device object.
[in] | $proto | This class object, or prototype to add to |
[in] | $object | The object to proxy for |
[in] | $offset | The offset this object is created for |
retval DExecHW::SimpleKey::read | ( | scalar | self, |
scalar | offset, | ||
scalar | exec | ||
) |
Read value.
[in] | $self | Object |
[in] | $offset | Offset of register within window |
[in] | $exec | DExec object opon which this object is operating |
retval DExecHW::SimpleKey::start | ( | scalar | self | ) |
Start up the hardware.
We configure the terminal for 'cbreak' mode which ensures that the keys are not buffered before delivery.
[in] | $self | Object |
retval DExecHW::SimpleKey::stop | ( | scalar | self | ) |
Stop the hardware.
Returns the terminal to the mode iti was in prior to being placed in 'cbreak' mode.
[in] | $self | Object |
retval DExecHW::SimpleKey::symbol | ( | scalar | self, |
scalar | offset | ||
) |
Get the symbol name for an offset.
[in] | $self | Object |
[in] | $offset | Offset of register within window |
undef | for a default symbol |
"" | for no symbol |
retval DExecHW::SimpleKey::window | ( | scalar | self | ) |
Return the size of of the implementation.
[in] | $self | Object |
retval DExecHW::SimpleKey::write | ( | scalar | self, |
scalar | offset, | ||
scalar | exec, | ||
scalar | value | ||
) |
Write value.
[in] | $self | Object |
[in] | $offset | Offset of register within window |
[in] | $exec | DExec object upon which this object is operating |
[in] | $value | Value to write |