On February 25, 1991, during the eve of the of an Iraqi invasion of Saudi Arabia, a Scud missile fired from Iraqi positions hit a US Army barracks in Dhahran, Saudi Arabia. A defense was available – Patriot missiles had intercepted Iraqi Scuds earlier in the year, but not on this day.
The computer controlling the Patriot missile in Dhahran had been operating for over 100 hours when it was launched. The internal clock of this computer was multiplied by 1/10th, and then shoved into a 24-bit register. The binary representation of 1/10th is non-terminating, and after chopping this down to 24 bits, a small error was introduced. This error increased slightly every second, and after 100 hours, the system clock of the Patriot missile system was 0.34 seconds off.
A Scud missile travels at about 1,600 meters per second. In one third of a second, it travels half a kilometer, and well outside the “range gate” that the Patriot tracked. On February 25, 1991, a Patriot missile would fail to intercept a Scud launched at a US Army barracks, killing 28 and wounding 100 others. It was the first time a floating point error had killed a person, and it certainly won’t be the last.
Continue reading “An Improvement To Floating Point Numbers”
Maker Faire Rome is over, and that means it’s time for the Arduino media blitz. Arduino has already had a big announcement this week with the introduction of the Arduino / Genuino 101 board powered by the Intel Curie module. Team .cc hasn’t forgotten all their Atmel-powered boards though. The latest news is that Arduinos will be manufactured in Germany by Watterott Electronics (.de, Google Translate).
Right now, Arduino.cc boards are manufactured in China by Seeed, and in the US by Adafruit and Sparkfun. Watterott Electronics is one of the premier hobby electronics distributors in Germany.
Boards made by Watterott will carry the Genuino mark; Arduino.cc seems to anticipate a loss in the Arduino vs. Arduino trademark dispute outside the US. All boards produced under license from Arduino.cc sold outside the US will carry the Genuino trademark, whereas boards produced for the US market will carry the Arduino trademark. Interestingly, this Arduino vs. Arduino split began with a former manufacturer, with a maelstrom of pettiness stemming from that trademark dispute. In any case, the licensing for boards manufactured by Watterott is most assuredly worked out by now. The new manufacturing partner guarantees a greater supply of Arduinos for all.
Today when you want to upgrade your computer you slap in a card, back in the early 80’s things were not always as simple. When [Carsten] was digging around the house he found his old, and heavily modified Rockwell AIM 65 single board computer, flipped the switch and the primitive 6502 machine popped to life.
Added to the computer was a pile of wires and PCB’s in order to expand the RAM, the I/O to form a “crate bus” and of course tons of LED blinkenlights! On that bus a few cards were installed, including a decoder board to handle all the slots, a monitor controller, a massive GPIO card, and even a universal EEPROM programmer.
If that was not enough there was even a OS upgrade from the standard issue BASIC, to a dual-boot BASIC and FORTH. Though again unlike today where upgrading your OS requires a button click and a reboot, making all these upgrades are planned out on paper, which were scanned for any retro computer buff to pour through.
[Carsten] posted a video of this computer loading the CRT initilization program from a cassette. You can watch, but shouldn’t listen to that video here.