Difference between revisions of "GeneveOS XOP Definitions"
Jump to navigation
Jump to search
m |
|||
Line 37: | Line 37: | ||
== XOP seven: Memory == | == XOP seven: Memory == | ||
[[MDOS Memory Management Functions]] | |||
== XOP eight: Device operation == | == XOP eight: Device operation == |
Revision as of 12:40, 11 November 2011
MDOS makes frequent use of XOPs and offers them for user programs. An XOP (extended operation) is a special command of the TMS processor family which causes a context switch, transferring control to a location that is specified in a table.
General usage of XOPs
XOP five: Keyboard
Input | R0 LSB | Scan mode |
Output | R0 LSB | Scan mode |
R1 MSB | Scan code | |
R2 MSB | Joystick Y value (see TI, 8376) | |
R2 LSB | Joystick X value (see TI, 8377) | |
EQ bit | if a new key has been pressed |
The scan modes 0-5 are identical to those in the TI console. Scan mode 7 is specifically used to check the BREAK key (EQ set), and scan mode 8 returns the raw scan code in R1 MSB. If no key was pressed, R1 MSB contains 0xFF.
XOP six: Video
XOP seven: Memory
MDOS Memory Management Functions