An Arduino Nano based TMS 0805 emulator running the original 320 instructions that ran on the iconic 1974 Sinclair Scientific Calculator.
Designed by Arduino Enigma in United States of AmericaNo shipping info available.
Set destination country to see options
Shipping to starts at
Free shipping is available to !
Ships from
This item does not ship to .
More Info
Sign up to get notified when this product is back in stock!
Here is the latest version of the Sinclair Scientific Calculator emulator running on a custom PCB which accurately replicates the size and the circuitry of the original calculator. This is powered by…
Read More…Here is the latest version of the Sinclair Scientific Calculator emulator running on a custom PCB which accurately replicates the size and the circuitry of the original calculator. This is powered by an Arduino Nano.
PCB v6 is the same size as a real Sinclair Scientific Calculator, the keyboard and display circuit is accurate as well.
As this project builds upon the work of so many other people, the PCB Gerbers and the full Arduino source code are available online if you want to roll your own.
A matrix keyboard and 9 digit LED display are connected to an Arduino Nano. The Nano runs a port of Ken Shirriff JavaScript 0805 TI CPU Emulator. The emulator is executing the actual 320 instructions that ran on the 1974 calculator. The Nano has some glue logic implementing the translation of keypresses into the I/O signals the Sinclair code expects to see. The original code is given a chance to run one of its very unique 11-bit instructions that contained both the operand and the address of the next instruction. The Nano then inspects the internal state of the calculator's A register and outputs it to the LED displays.
The 1974 Sinclair Scientific was unique as it took the work of geniuses to implement a reverse Polish notation (RPN) scientific calculator with trigonometric functions on a chip barely capable of doing addition, subtraction, and multiplication and division as iterative algorithms. The Texas Instruments TMS 08XX CPU was also limited to storing a 320 instruction program in its internal ROM.
Implementing all of those functions was not without cost. The calculator was slow, some answers can take up to 15 seconds to show up, meanwhile a blank screen is shown. Its accuracy is limited: 4 * arctan(1) yields a value of PI of 3.1440 as shown on the product screenshots. Calculating arctan(0.0001) goes into a loop for a minute and a half before yielding the wrong value of 0. The decimal point is in a fixed spot as storing numbers in a scientific format simplifies both internal calculations and displaying the result. Reverse Polish Notation was used as it simplifies the processing of the operands. There is no space in ROM for important constants, so those were printed on the face of the calculator.
Part of the genius of this product was realizing that sometimes "Worse is Better", the limited accuracy and its other quirks were offset by the fact that this calculator was Cheap! When first released, it cost around $100 when other scientific calculators cost almost $400. After a year, a kit was released for £9.95 (around $24) (incl. VAT)
The hardware portion of this project is now an accurate recreation of the Sinclair Scientific Calculator circuitry. The connections from the keys to the display were reverse engineered by pushing two keys at a time on the original calculator and seeing which two digits in the display were affected.
The Arduino software is a very thin layer interfacing to the original code. There is one option however, code execution speed. If the calculator is powered up, it runs at the original speed and the display is blanked out while a result is being calculated, just like in the original hardware. If the keys 1,2 or 3 are pressed during power-up, prior to 0.0000 00 being shown, the screen will stay illuminated all the time and the speed will be either slow (1), normal (2) or very fast (3). It is very interesting seeing the intermediate results the calculator goes thru before arriving at an answer. The normalize function can be seen working on the slowest setting. Type 0.0001 + and the 1 will be shifted left while the mantissa is incremented.
This work could not have been possible without this:
Sinclair Scientific Calculator Simulator http://files.righto.com/calculator/sinclair_scientific_simulator.htm
Another calculator based on the TMS CPU http://files.righto.com/calculator/TI_calculator_simulator.html
Recent Hackaday articles on the Sinclair Scientific https://hackaday.com/?s=Sinclair+Scientific
Wikipedia page https://en.wikipedia.org/wiki/Sinclair_Scientific
Hackaday.io project page: https://hackaday.io/project/91895-sinclair-scientific-calculator-emulator
No country selected, please select your country to see shipping options.
No rates are available for shipping to .
Enter your email address if you'd like to be notified when Sinclair Scientific Calculator Emulator can be shipped to you:
Thanks! We'll let you know when the seller adds shipping rates for your country.
Shipping Rate | Tracked | Ships From | First Item | Additional Items |
---|---|---|---|---|
:
|
Product: (5.00)
Documentation: (4.67)
Shipping: (5.00)
Communication: (5.00)
Byron | Sept. 10, 2018
Byron | Aug. 20, 2018
Michal | June 26, 2018
David | June 26, 2018
Zdenek | June 24, 2018
Dan | Feb. 14, 2018
No shipping info available.
Set destination country to see options
Shipping to starts at
Free shipping is available to !
Ships from
This item does not ship to .
More Info
Sign up to get notified when this product is back in stock!
Hollywood, FL, United States of America
Ships from United States of America.
11 Reviews | 115 Orders
$150.00
Free Shipping!
$500.00
Free Shipping!
$150.00
Free Shipping!
$300.00
Free Shipping!
$500.00
Free Shipping!
$20.00
Free Shipping!
$69.99
Free Shipping!
$54.99
Free Shipping!
$59.99
Free Shipping!
$49.00
Free Shipping!
By clicking Register, you confirm that you accept our Terms & Conditions
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!