Key Sequence | Code | Function |
---|---|---|
"Program Print" Codes | ||
PRINT tf | 08 02, tt ff | Print, formatted, using 'ff' decimal places and with letter tag 'tt' |
"Alpha" Codes | ||
α STOP | 09 02, 09 03 | 0.5 second pause |
α PRINT | 09 02, 08 02 | enable key trace |
α α | 09 02, 09 02 | disable key trace |
α LOGeX | 09 02, 08 10 | enable program trace |
α eX | 09 02, 08 11 | disable program trace |
α f(x)-00 | 09 02, 10 00 | π |
α f(x) | 09 02, 10 xx | display ×= 10xx |
α F(x) | 09 02, 11 xx | display ÷= 10xx |
α Cx* | 09 02, 14 xx | display ×= 10xx |
α Dx* | 09 02, 15 xx | display ÷= 10xx |
α LOAD PROG | 09 02, 08 14 | Skip N "records" and load program from tape N = display |
α 1/X | 09 02, 08 15 | Skip N "records" and load program from tape (same as α LOAD PROG?) |
α √X | 09 02, 08 13 | (same as α LOAD PROG?) |
α RECALL | 09 02, 08 01 | recall registers from tape, start with R(display), R(display - 1), ... |
α STORE | 09 02, 09 01 | store register(s) to tape, start with R(display), R(display - 1), ... |
α JIF0 | 09 02, 08 04 | jump if R0 = display |
α JIF+ | 09 02, 08 05 | jump if R0 >= display |
α SIN | 09 02, 08 06 | jump if R0 < display |
Program Control | ||
MARK mm | 09 00, mm mm | Set Label mm mm |
SEARCH mm | 08 00, mm mm | Goto Label (MARK, mm mm) |
f(x) | 10 xx | Call function (MARK, 10 xx) |
F(x) | 11 xx | Call function (MARK, 11 xx) |
D7* mm | 15 07, mm mm | Call Label (MARK, mm mm) |
D15* mm | 15 15, mm mm | Goto Label (MARK, mm mm) |
I/O f(x) | 15 02, 10 xx | Jump if R0 = display (xx: don't care) |
I/O F(x) | 15 02, 11 xx | Jump if R0 ≠ display (xx: don't care) |
I/O Cx* | 15 02, 14 xx | Jump if R0 = display (xx: don't care) |
I/O Dx* | 15 02, 15 xx | Jump if R0 ≠ display (xx: don't care) |
Program Control in ROM (all Jump codes also work in ROM) | ||
Ax* | 12 xx | Call ROM f(x) (MARK, 12 xx) |
Bx* | 13 xx | Call ROM F(x) (MARK, 13 xx) |
D3* mm | 15 03, mm mm | Goto Label ROM (MARK, mm mm) |
D4* mm | 15 04, mm mm | Goto Label ROM (MARK, mm mm) |
D5* mm | 15 05, mm mm | Goto Label ROM (MARK, mm mm) |
D6* mm | 15 06, mm mm | Goto Label ROM (MARK, mm mm) |
D12* mm | 15 12, mm mm | Call Label ROM (MARK, mm mm) |
Misc Data | ||
D0* rr | 15 00, rr rr | Recall R(rr) (same as RECALL) |
INDIR cr | 15 11, cc rr | Perform register OP 'cc' indirectly on R(rr). If 'cc' == 00 then add register contents to P.C. |
Cx* | 14 xx | Exchange display and R(xx) |
D1* tf | 15 01, tt ff | Print formatted, same as program print but works from keyboard |
D10* aa | 15 10, aa aa | Mimics alpha functions (same as α) |
D8* xx | 15 08, xx xx | unknown - NO OP |
D9* rr | 15 09, rr rr | Store R(rr) (same as STORE) |
I/O Codes | ||
I/O xy* | 15 02, xx yy xx: 00-09 yy: 00-15 |
Print display to "Output Writer" xx = integer places yy = decimal places |
I/O Ay* | 15 02, 12 yy | Print yy blanks to "Output Writer" |
α cc... | 09 02, cc cc ... 02 02 | Prints string to OutputWriter until 02 02 encountered cc cc must be 00 00 - 07 15, 04 00 - 07 15 plot corresponding character 00 00 - 03 15 based on registers 00 00 (Y) and 00 01 (X) |
I/O By* | 15 02, 13 yy | Page in/out blocks of program steps to/from "Fixed/Removable Disk". Register 00 00 is disk address, 00 01 is program step. 'yy' determines in/out and number of steps. |
GROUP1 xx | 15 13, xx xx | Output 'xx' to "device 4" and stop. Device then takes over and issues GO when done. |
GROUP2 xx | 15 14, xx xx | Output 'xx' to "device 5" and stop. Device then takes over and issues GO when done. |
* Requires use of pushbuttons 1-7, and Sp/8, in combination with keys 00-15 to form code.