Keystroke programming: Difference between revisions

Content deleted Content added
Ldo (talk | contribs)
fill in rest of table
Ldo (talk | contribs)
pretty much finished
Line 108:
|----
|}
 
TBD
 
=== Merged Keystrokes ===
 
The {{TI-5x/Keys/Alt|Ind}} key allows for indirection: wherever a reference to a memory register or a program ___location is allowed, this key can be used to fetch the actual value from a memory register. For example, the key sequence {{TI-5x/Keys/Brown|RCL}} {{TI-5x/Keys/Alt|Ind}} {{TI-5x/Keys/White| 1 }} {{TI-5x/Keys/White| 0 }} means to fetch the value in memory register 10, and use that value in turn as the number of a memory register whose contents are to be fetched as the current operand. However, in this case the {{TI-5x/Keys/Alt|Ind}} cannot be encoded as code 40, because the code sequence 43 40 would be interpreted as {{TI-5x/Keys/Brown|RCL}} {{TI-5x/Keys/White| 4 }} {{TI-5x/Keys/White| 0 }}, not {{TI-5x/Keys/Brown|RCL}} {{TI-5x/Keys/Alt|Ind}}.
TBD
 
But, because of the use of the 00 .. 09 codes for the {{TI-5x/Keys/White| 0 }} .. {{TI-5x/Keys/White| 9 }} keys, the codes 62-64, 72-74, 82-84 and 92 are available for other uses. So most of these are reallocated to represent ''op'' {{TI-5x/Keys/Alt|Ind}} sequences:
 
{| border="1" cellpadding="2"
|----
| ||''x''2||''x''3||''x''4||
|-
|6''x''
|{{TI-5x/Keys/Alt|Pgm}} {{TI-5x/Keys/Alt|Ind}}||{{TI-5x/Keys/Alt|Exc}} {{TI-5x/Keys/Alt|Ind}}||{{TI-5x/Keys/Alt|Prd}} {{TI-5x/Keys/Alt|Ind}}
|-
|7''x''
|{{TI-5x/Keys/Brown|STO}} {{TI-5x/Keys/Alt|Ind}}||{{TI-5x/Keys/Brown|RCL}} {{TI-5x/Keys/Alt|Ind}}||{{TI-5x/Keys/Brown|SUM}} {{TI-5x/Keys/Alt|Ind}}
|-
|8''x''
| ||{{TI-5x/Keys/Brown|GTO}} {{TI-5x/Keys/Alt|Ind}}||{{TI-5x/Keys/Alt|Op}} {{TI-5x/Keys/Alt|Ind}}
|-
|9''x''
|{{TI-5x/Keys/Brown|INV}} {{TI-5x/Keys/Brown|SBR}}|| || 
|----
|}
 
Thus, the key sequence {{TI-5x/Keys/Brown|RCL}} {{TI-5x/Keys/Alt|Ind}} {{TI-5x/Keys/White| 1 }} {{TI-5x/Keys/White| 0 }} would be encoded as 73 10.
 
Note the use of code 92 for {{TI-5x/Keys/Brown|INV}} {{TI-5x/Keys/Brown|SBR}} (return from subroutine); this was not necessary for reasons of ambiguity, but was done to save space with such a common sequence.
 
== References ==