# SR-52

Der SR-52 ist ein programmierbarer wissenschaftlicher/technischer Taschenrechner von Texas Instruments mit eingebautem Magnetkartenleser.

## Zeitliche Einordnung

Am 15. September 1975 kam der SR-52 zum Preis von 395 $ auf den US-Markt. In Deutschland kostete er anfangs 1199 DM. Dies entspricht heute kaufkraftbereinigt einem Betrag von 1.990 $ bzw. 1.880 EUR. Er wurde bis 1977 gebaut und dann vom TI-59 abgelöst.
Er galt als Antwort auf den HP-65 und war Texas Instruments erster programmierbarer Taschenrechner. Der eingebaute Magnetkartenleser macht den Rechner sehr schwer und über 4,5 Zentimeter dick, ein tatsächliches Mitführen in der Jacken- oder Hosentasche ist im Grunde nicht möglich.

## Technische Ausstattung und Funktionen

Der SR-52 hat mit 224 mehr Programmierschritte als der HP-65 (100), ähnlich wie beim HP-65 können bei Texas Instruments Tasteneingaben nicht zusammengefasst werden (außer der 2nd-Taste), so dass der Befehl "STO 0 1" im SR-52 drei Programmschritte benötigt und ein Sprung mit GTO (goto) zu einer Programmzeile konnte in einem fehlerhaften Programm auf den zweiten Teil eines Befehls (also beispielsweise auf die Adresse des STO-0-1-Befehls) verzweigen.
Zur permanenten Sicherung der vom Anwender selbst erstellten Programme (und Daten) werden Magnetkarten verwendet, die man jeweils in zwei Spuren beschreiben kann. Jede Spur fasst die Hälfte des Speichers, sodass ein großes Programm zweimaliges durchziehen der Magnetkarte erfordert.
Fertige Anwendungen aus verschiedensten Bereichen (z. B. Aviation, Navigation, Elektrotechnik, Statistik und auch eine Spielesammlung) konnten auf Magnetkarten programmiert erworben werden.

## RAM

Der Arbeitsspeicher des Rechners umfasst 224 Programmschritte plus offiziell 20 Datenspeicher. Es ist durch undokumentierte Features jedoch möglich auch Programmschritte als Datenspeicher zu verwenden; ferner gibt es zwei undokumentierte Speicher mit den Adressen 98 und 99, die außerdem nicht durch den CM (Clear Memory = Speicher löschen) Befehl gelöscht werden.
Da auch das Einlesen der Magentkarten mit einem Programmbefehle ausgelöst werden kann, können fortgeschrittene Nutzer Programme schreiben, die über mehrere Speicherkarten verteilt sind und sich Teile während der Laufzeit selber nachladen.

### Programmspeicher

Ein Programmschritt entspricht zwei Nibbles bzw. einem Byte an Speicherkapazität.

### Datenspeicher

Ein numerischer Datenspeicher (13 Stellen Mantisse + 2 Stellen Exponent + Vorzeichen) belegt 8 Programmschritte, das entspricht (8 Byte) bzw. besser gesagt 16 Nibbles, da der Taschenrechner mit seiner 4-Bit-CPU nibble-orientiert arbeitet.
Da der Programmspeicher direkt über die Datenspeicheradressen 70–97 angesprochen werden kann, kann man die Anzahl der Datenspeicher auf Kosten von Programmschritten erhöhen. Außerdem ist es zumindest theoretisch möglich, das Programm durch Abspeichern von Rechnergebnissen im Programmspeicher selbst zu verändern.

## Programmierung

Die Programmierung des SR-52 geschieht einfach durch Drücken der gewünschten Tastenfunktionen im LRN-Modus. Beim Ausführen des Programms arbeitet der Rechner die aufgezeichnete Liste der gedrückten Tasten ab. Die anwenderseitig erstellten Programme werden in der Regel über die Tasten A bis E (und ihre Zweitbelegungen 2nd - A' bis 2nd - E') gestartet.
Zur Programm-Ablaufsteuerung bietet der SR-52 z. B. eine Start-/Stop-Funktion, Zählschleifen, bedingte Sprungbefehle, mehrfach ineinander verschachtelbare Unterprogramme, die direkte und indirekte Adressierung von Datenspeichern oder Programmschritten, einfache symbolische Programm-Marken (Labels) und die Programmsteuerung über einfache binäre Flags.

### Anzeige im Programmiermodus

Die verwendete Siebensegmentanzeige kann keine Buchstaben anzeigen. Im Programmier-Modus erfolgt daher die Anzeige der Programmschritte neben der dreistelligen Programmschrittnummer als zweistelliger Zahlencode. Der Zahlencode entspricht dabei der Zeilen- und Spaltenposition der gedrückten Taste auf der Tastatur.
Die Zahlencodes „00“ bis „09“ entsprechen zur vereinfachten Lesbarkeit direkt den Zifferntasten 0 bis 9.
Zur Einsparung von Programmspeicher wird u. a. der Code für die Zweitbelegungen („2nd-Function-Key“) der Tasten als der Zahlenwert der Tastenposition plus 5 verwendet. Der Tastendruck auf die 2nd-Taste belegt somit keinen zusätzlichen Programmschritt.
Zur Erleichterung beim Lesen dieser doch recht kryptischen Darstellung lag dem Rechner eine transparente Tastatur-Auflegefolie mit aufgedruckten Zahlencodes bei.

### Undokumentierte Funktionen

Neben den bereits erwähnen zusätzlichen Speichern konnte mit den Adressen 60–69 auf die Arbeitsstacks des Rechners zugegriffen werden.

## Zahlenformat und Rechengenauigkeit

Das interne Zahlenformat beträgt 12 Dezimalstellen in Exponentialdarstellung mit 2-stelligem Exponenten zuzüglich jeweiligem Vorzeichen. Davon werden 10 Stellen Mantisse mit zweistelligem Exponenten und den Vorzeichen angezeigt, wodurch Rechenungenauigkeiten durch Rundungsfehler weniger augenfällig werden sollen, d. h. der Rechner rechnet mit zwei Stellen mehr als er am Ende anzeigt.

## Varianten

Kurz nach Einführung des SR-52 wurde noch der SR-56 vorgestellt, der nur 100 Programmschritte bot und keinen Magnetkartenleser hatte. Das Tischmodell SR-60 verfügte über eigene Tasten für jede Funktion (keine Doppelbelegung der Tasten) einen eingebauten Drucker und auf bis zu 1920 Programmschritte und 100 Datenspeichern ausbaubaren Speicher (im unausgebauten Zustand 480 Programmschritte und 40 Datenspeicher). Der SR-62A verfügte ab Werk über den Vollausbau.

## Optionales Zubehör

Der optional anschließbare Thermopapier-Drucker PC-100 ermöglicht neben dem Ausdruck von Rechenergebnissen auch das Ausdrucken von Programmen mit zeilenweiser Auflistung von alphanumerischer Tasten- und Zahlencode-Darstellung sowie den programmgesteuerten oder manuellen Ausdruck von bis zu 20 Buchstaben und/oder Ziffern je Zeile. Der Drucker wurde nahezu unverändert auch beim Nachfolger TI-59 weiter eingesetzt.

## Technische Daten

* CPU: TMC0501 - 4-Bit-CPU
* RAM: 2 × TMC0599 mit 1920 Bit (SR-56 1x, SR 60 5x, SR-60A 13x)
* Anzeige: 10+2-stellige rote 7-Segment-LED-Anzeige
* Stromversorgung: Über mitgeliefertes Netz-/Ladeteil oder auswechselbaren NiCd-Akku (3,6 Volt)
* Schnittstellen: 12-polige bit-serielle Schnittstelle für den Drucker PC-100
* Speichermedien: Magnetkarten mit 2-Spur-Aufzeichnung

## Trivia

Der NATO-Topspion Rainer Rupp (Tarnname Topas) soll vom Staatssicherheitsdienst der DDR ein als „Schnellgeber“ bezeichnetes Gerät erhalten haben, welches als Telefonmodem dient. Das Gehäuse stammt von einem SR-52.