TI-57
![](http://upload.wikimedia.org/wikipedia/commons/thumb/8/8c/TI_57-b.jpg/220px-TI_57-b.jpg)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/TI-57_LCD-IMG_0391.jpg/220px-TI-57_LCD-IMG_0391.jpg)
The TI-57 was a programmable calculator made by Texas Instruments between 1977 and 1982. There were three machines by this name made by TI, the first was the TI-57 with LED display released in September 1977 along the more powerful TI-58 and TI-59. It had 50 program steps and eight memory registers. Two later versions named TI-57 LCD and TI-57 LCD-II have a LCD display, but were less powerful (ran much slower) and had much less memory: 48 bytes to be allocated between program 'steps' and storage registers.
The TI-57 lacked non-volatile memory, so any programs entered were lost when the calculator was switched off or the battery ran out.
The LED display version of the TI-57 had a rechargeable Nickel-Cadmium battery pack BP7 which contains two AA size batteries and electronics to raise the voltage to the 9V required by the calculator. A popular modification is to power it from a 9V battery and use the battery cover of a LED TI-30 or a part of the dismantled battery pack. This modification provides a better battery life than the original battery pack.
Included, with at least the original version was a book entitled "Making Tracks Into Programming". It was self described as "A step-by-step learning guide to the power, ease and fun of using your TI Programmable 57".
Radio Shack also marketed this calculator, rebranded as the EC-4000.
Programming
The programming capabilities of the TI-57 were similar to a primitive macro assembler. Any keystroke could be stored, along with some simple program flow control commands and conditional tests. These included:
GTO (GoTO): Causes program pointer to jump immediately to a Label (0-9) or to a specific program step (00 to 49).
SBR (SuBRoutine): Causes a program to jump to a Label, and on encountering an Inv SBR command, continue executing at the instruction immediately following the original SBR.
DSZ (Decrement and Skip on Zero): Decrements storage register zero, and skips the next instruction if the result is zero. There was also an inverse form, Decrement and Skip if Not Zero.
Tests for equality/inequality could be performed against a value on the display (the x register) and a dedicated test register, t. The result of the test would cause the next instruction to be conditionally skipped.
Programs could be edited by inserting, deleting, or overwriting a program step. A NOP (No OPeration) function was provided to allow a program step to be ignored. Due to the hard limit of 50 program steps, use of NOP was infrequent. The TI-57 used the "one step, one instruction" principle, regardless of whether one instruction required one or up to four keypresses.
Sample program
The following program generates pseudo-random numbers within the range of 1 to 6.
Step | Code | Key(s) | Function | Comment |
---|---|---|---|---|
00 | 30 | 2nd yx | π | Pi |
01 | 75 | + | + | |
02 | 33 0 | RCL 0 | RCL 0 | Recall register 0 |
03 | 85 | = | ||
04 | 35 | yx | yx | |
05 | 08 | 8 | 8 | |
06 | 65 | − | − | |
07 | 49 | 2nd ) | Int | Integer function |
08 | 85 | = | ||
09 | 32 0 | STO 0 | STO 0 | Store result in register 0 |
10 | 55 | x | x | |
11 | 06 | 6 | 6 | Upper bound of the random number |
12 | 75 | + | + | |
13 | 01 | 1 | 1 | |
14 | 85 | = | ||
15 | 49 | 2nd ) | Int | Integer function |
16 | 81 | R/S | R/S | Stop (Pause) |
17 | 71 | RST | RST | Reset (back to step 00) |
External links
- TI-57 on MyCalcDB (database about 1970s and 1980s pocket calculators)
- TI-57 on The Datamath Calculator Museum.
- TI-57 Program Emulator including a few dozen examples of games and other programs.
- TI-57 Programmable Calculator including an emulator with original ROM and diagnostics.