instruction set?
come on reg - give us the instruction set and memory model, then we'll see what sort of stuff could be written for it.
A well-known British programmer, blogger and online campaigner has called for a collaborative effort to finally make a legendary steampunk mechanical computer - the Babbage Analytical "Engine", designed but never actually built - a reality. John Graham-Cumming will be well known to many Reg readers as the programmer behind …
AWTT Assemble With Tinker Toys
BOD Beat on Drum
BRO BRanch and Overheat
BWABL Bells, Whistles and Blinking Lights
BWOP BeWilder Operator
CAF Convert Ascii to Farsic
CRN Convert to Roman Numerals
DSI Do Something Interesting
DSR Detonate Status Register
DSTD Do Something Totally Different
DSUIT Do Something Utterly, Indescribably Terrible
DTC Destroy This Command
ENF Emit Noxious Fumes
ENG Enable Gravity
EOI Execute Operator Immediate [a fast version of another instruction]
EP Execute Programmer
EPI Execute Programmer Immediate
FLD FLing Disc
HCF Halt and Catch Fire
IDC Initiate Destruct Command
LTS Loop Till Smokes
LUM LUbricate Memory
RIC Rotate Illogical thru Carry
RLI Rotate Left Indefinitely
ROD ROtate Diagonally
RRC Rotate Random thru Carry
SPA Sliding Point Arithmetic
...and tetris should be possible.
There's a description of a possible mechanical display in "The Difference Engine" by Bruce Sterling and William Gibson. Fun.
A thought: now we have NC machining and much better materials than Babbage could get his hands on, there's no reason why a Difference Engine shouldn't be quite a bit smaller than the original design. This would reduce material cost and space requirements a lot and could/should still be steam powered, preferably from a bio-methane boiler: this would let it continue to run long after all fossil fuel has been used up.
Must just plug the SM's computing collection here.
Went there at the weekend with my son and my mum. He wasn't interested in the computing side so I got dragged past it at high speed.
Aside from the punched card machines that my mum worked with when she started out in programming there are some really old fashioned ways of doing stuff that were high tech at the time. Pegasus, Manchester and that financial modelling device that ran on water that I didn't get a chance to note the name of.
This post has been deleted by its author
The term "Bug" was coined by a Grace Murray Hopper, after locating a problem within one of the large, relay-powered mainframes of the day. A moth had become stuck in the system and was preventing a relay from working correctly. This was recorded in her log book, along with the offending moth, as the first computer bug.
So now you know.
http://www.pbs.org/wgbh/aso/databank/entries/btmurr.html
doesn't it give the original meaning to Bugs even more meaning as according to popular internet myth it was a bug in a big computer in the 50s that gave its name to the term.... it was a moth wasn't it.... *
being lazy i am not going to google the truth in this for you, do it yourself.
The article heavily implies (along with the linked article from 1999) that Ada's position as "first programmer" is based on myth. However, this is not clear from her notes on the translation of Menabrea's talk (scroll down for her notes):
http://www.fourmilab.ch/babbage/sketch.html
assuming that the transcript hasn't been favourably edited, she certainly seems competent enough. It's a little difficult to read text from ye olden days due to that fact that the style was kind of verbose and dull. However, consider this small snippet:
"In studying the action of the Analytical Engine, we find that the peculiar and independent nature of the considerations which in all mathematical analysis belong to operations, as distinguished from the objects operated upon and from the results of the operations performed upon those objects, is very strikingly defined and separated."
Sounds like OO programming to me :)
"By 'unfortunate gen[e]tic disposition' do you mean 'female'?"
Not necessarily. My mother's side of my family are all rather thin-haired, and I unfortunately picked up that gene, resulting in my inability to grow any kind of substantial beard (although I have managed to grow a halfway-decent moustache). Attempts to grow out my facial hair have resulted in pathetic little patches which make me look rather like a nuclear accident victim. So, clean-shaven but for the moustache it is.
> And what a great educational resource so that people can understand
> how computers work
<rant>
Well let's start by turning what we've already got i.e. the Difference Engine in the science museum and the reconstructed Bombe at Bletchley and the Manchester Baby at the Manchester Museum of Science & Industry into "Educational resources". At present, these are just artefacts that you can look at. If you go to the book shops of those places you can no doubt pick up a 500-page book explaining stuff, but none of those things has the 5-minute video or 1000-word booklet describing how it works. Perhaps the problem is that the geeks who make the reconstructions are incapable of explaining how they work in less than 500 pages and the museum curators are incapable of explaining them at all. I've visited each one and found myself explaining stuff to other visitors, who are definitely capable of grasping stuff at the appropriate level.
</rant>
Maybe with Lottery money - do you feel lucky, Steampunk?
It makes me wonder, though. Imagine a parallel historical track where Babbage had built it, and electronic computers hadn't happened. How would the concept have developed, and what would a 21st century analytical engine look like?
... the cyclonic hum of a trillion twisting gears, all air gone earthquake-dark in a mist of oil, in the fractioned heat of intermeshing wheels. Black seamless pavements, uncounted tributary rivulets for the frantic travels of the punched-out lace of data, the ghosts of history loosed in this hot shining necropolis. Paper-thin faces billow like sails, twisting, yawning, tumbling through the empty streets, human faces that are borrowed masks, and lenses for a peering Eye.
- The Difference Engine, William Gibson and Bruce Sterling
I would really love to see this built, but wasn't part of the problem originally that Babbage, being terrible at just sticking to one thing and getting it done, ended up coming up with loads of half-finished designs?
Also, I seem to remember that building the Difference Engine that lives in the Science Museum actually helped drive the engineering company that built it to bankruptcy.
This is all based on what I remember from the book "The Cogwheel Brain" so I might have it wrong.
I would be first in the cue to see a working AE though so I'm really hoping someone steps forward with the cash.
The same will happen as happens now. The Div By Zero flag will go up. Then the OS, or from DOS days the BIOS, will terminate the app and return an error msg with a completely meaningless display and a number, and after twenty paragraphs of reading, the stupidity of what you've done will drop you like a dead fish.
Being able to run an interesting competition is some sort of marker for whether it's a real computer... back when the replica of the Manchester SSEM or 'Baby' was being put together I wrote to the team suggesting that they run a programming competition for it. Which I was glad to see them do.
Posted AC because I never got any credit at the time either...
Since CADing the machine is likely to be a necessary step, why not simulate it after designing it? No point having tens of thousands of components machined if it turns out to be a pile of junk, or have problems Babbage didn't anticipate. Got to be some finite element codes that'd handle cogs turning and stuff, that'd be neat to play with.
Why not make the plans for each individual component fully available to the general public? There's enough of us engineering geeks out here to build components far surpassing the accuracy of Victorian engineering.
We all agree to build a component to, say, 0.1mm tolerance and send it in to JG-C who can organise a team to work on the assembly. If we all spring for our own little bit of component production costs would be minimal and we'll all feel a part of something pretty damn fantastic!
@Code Monkey - I'm already growing a rather obtrusive handlebar moustache and a set of sideburns you can mop a flaggon of ale up with!
Actually, the metric system has every right to be called a British invention -- the French needed a lot of our help getting it to work. (Fundamental stuff like, only having *one* definition for the metre.)
We just let them think they invented it, in exchange for them letting us think we invented front-wheel drive cars.
"On two occasions I have been asked, – "Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" In one case a member of the Upper, and in the other a member of the Lower House put this question. I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."
The first luser support calls in recorded history.
To allow developers to generate code. I'm sure there would be groundswell of (admittedly geeky) interest in the project then.
Ideally, the engine itself would run in a vacuum or a mineral oil bath to avoid both corrosion and bugs. We would need a big steam engine or waterwheel to drive it.
A genetic algorithm could be used to refine it's design details and then pass the result on to the CADCAM shops.
I also will need a new keyboard with very large levers in place of function keys.
"... the cyclonic hum of a trillion twisting gears, all air gone earthquake-dark in a mist of oil, in the fractioned heat of intermeshing wheels. Black seamless pavements, uncounted tributary rivulets for the frantic travels of the punched-out lace of data, the ghosts of history loosed in this hot shining necropolis. Paper-thin faces billow like sails, twisting, yawning, tumbling through the empty streets, human faces that are borrowed masks, and lenses for a peering Eye.
- The Difference Engine, William Gibson and Bruce Sterling"
...why I stopped reading Gibson (after a chapter or 2 of Idoru). Tried once cos of the hype around him and boy did I hate it. So er, thanks for reminding me. I did think of checking out the Difference Engine but will avoid it and stick to proper SciFi and not pretentious wank like the above. I know, different tastes and all that. Seriously though, thanks for reminding me :o)
The Analytical Engine should not be built UNTIL it has been 'built' in virtual reality. With the power of today's computers, it will be possible to do exactly the same thing, and also be able to take a virtual tour of the insides of the machine, much more intimate than the 'real thing'. And if the simulation is open source, anyone can d/l and run it at their own convenience.
Once the Difference Engine was built, people were able to build others. I've seen video of working machines made from Meccano and Lego.
1: This project may be easier than we think.
2: On developing field of computer-aided design is rapid prototyping, Do we have the materials for sufficiently durable parts to be made with sufficient precision? It would be a great demonstration project.
And Whitworth threads only, please.
The original Zuse Z-1 was a mechanical computer, although designed on very different mechanical principles than the Analytical Engine.
What is perhaps a bigger tragedy than Babbage's failure, which was probably unavoidable, was that Torres y Quevedo was not able to successfully construct his attempt at a general-purpose computer, made with electrical relays. That could have led to computers existing much earlier than was actually the case.
It would be nice to have a working Analytical Engine, but spending that much money on something that would basically just look pretty in a museum is questionable. When we can afford it more easily, perhaps.
Whatever they do, please don't give it to the old EDS to write the code for. If this project has been running for 200 years then they will use that to guide their thoughts on delivery timescales and the sun will have burnt its last embers before we see anything.
I would have suggested that HP might have the technology to build this, however they seem to have lost their way recently by hiring a failed software leader, so heaven help HP if he's let loose in Packard's old garage.
Umm, the Agilent spin-off was ten years ago. Since then HP stopped inventing however much their slogan tries to convince you otherwise, with the possible exception of inventing more ways to turn pigments into money.
Getting EDS, and now Apoteker, on board is just par for the course.
... why I started reading Gibson. If that passage doesn't do anything for you, definitely don't try Neal Stephenson, Stephen Donaldson, Poul Anderson, Brian Aldiss, Charles Stross, Philip Dick, Robert Silverberg, Alfred Bester or Ray Bradbury (picking a few of the more literary SF writers). Asimov or Heinlein might be OK. Otherwise the Star Wars tie-ins are a safe bet.
SF books can be just a paper version of a Michael Bay film - and if that's all you want, then fine. The Stainless Steel Rat series is great fun. But there's no reason that SF can't be more that that.
There are at least two better ways to build a non-electronic computer using principles that were understood in the middle 1800s. It's a huge shame that Babbage never encountered them.
The first is electromagnetism. Use relays. I don't think they'd been invented, but I'm sure if you'd asked a young Faraday how to turn an electric current on or off using another electric current, he'd have invented the relay in minutes. Anything binary that can be done with a transistor can be done with a relay. Don't know if a stored-program computer has ever been built out of relays, but complicated logic often still is. That's because relays have quite enormous noise immunity and can be designed to fail safe. Good characteristics for (say) safety interlock systems in a nuclear power station.
The second is fluidics/ pneumatic logic. Logic gates and binary storage can both be created out of streams of compressed air (or water), rather than streams of electrons. For a fun application, look up the water computer that someone built at MIT. I believe that a compressed air computer has actually been used inside a jet engine (probably in the days of Germanium transistors which couldn't hack hot places).
Note: a clock rate of many kilohertz should be achievable. Practical note: one could give such a beast keyboard input (like an organ, but with more complex pipework). Aesthetic note: a factor of two is an octave, threes give perfect fifths, fives give major thirds. Some algorithms might sound quite pleasant as they crunched. Anyone fancy writing a simulator including audio?
I seem to remember a certain german electrical engineer, who delivered a working (primitive) computer on a table top in 1936, using relays. His request for funding, to develop the idea, was rejected. I seem to recall it had a clock of 50 Hz, an accumulator, a couple or four 8 bit registers... I don't think it had alternating data / opcode.
It wasn't quite a von neuman machine, but it was well on the way, and the things he said in trying to 'sell' the bigger version showed he had a firm grasp on what had to be done next. It's perhaps just as well they didn't fund him.
MONIAC Computer, aka Phillips Hydraulic Computer aka Financephalograph.
The one I couldn't remember in the Science Museum. Invented 1949 by a student at the LSE. could model the UK economy.
Readers of Terry Pratchett's Making Money may recognise the principles.
"Graham-Cumming writes on his blog:
I say that it's time Britain built the Analytical Engine. After the wonderful reconstruction of the Difference Engine we need to finish Babbage's dream of a steam-powered, general-purpose computer. "
Time has moved things on quite considerably, Graham-Cumming, and today are all of us in an altogether different space, and hosted hosting place in CyberSpace.
The Post Modern, Babbage Analytical Engine for the LOVE Lace of Ada is AIdDeep and Welcoming Passion delivering PerlyGatedDPython Strings for New Fangled Meme Entanglement .......the SMARTer NEUKlearer HyperRadioProActive IT Drivers for stream-powered, multi-purpose, unilateral controlling command of computers and coded Programs.
CodedDXSSXXXX ProgramMING is just one of ITs Utilities and is a Sophisticated Facility for AIdDriver Target Acquisition Systems ..... and acts as a Virtual Master Key and Crack Hack Tool for both Public Pilot Projects and Private Pirate Raids ...... and all blissful kinds of blessed shenanigans in between.
And that is so much more Enigmatic Bletchley Park than Dogmatic Science Museum ..... and most probably also the sort of Subject Matter of ESPecial Interest to a BAE or Foreign Officed Clone/Sister System.
All possible.
By the way one *very* interesting point of Babbage's plan was making it fail safe. The DE concept predates the idea of "Verifiable" processors attempted by (for example) the RSRE VIPER project by about 150 years.
One of KE Drexlers projects was a mechanical computer to play noughts and crosses (not sure if hard wired or actually programmable) which formed the basis of his nano-mechanical rod-and-ball logic.
It would be interesting to see what the tolerances for the 1830 *were*. Mass production and interchangeable parts were coming in so tolerances were good enough to replace file-to-fit.
For a curved ball on this using modern hindsight look at a mechanical *binary* computer. Eliminate the rotating elements and go to 2 position indicators using some kind of flexure mounts. While these limit angular movement to at most about 30deg the binary nature should still make it readable. High precision mechanical parts can be made using photochemical methods in large quantities. Handy if you're looking to do this.
Clock speed? Well smaller objects can move faster (Drexler's point was at nanometre scale mechanical objects would have GHz operating speeds) but something you could assemble with your bare hands isn't going to work that well. The speed of sound at 340ms suggests an object about 1/3 of a mm *could* move around 1MHz. But the tight fitting of parts are likely to give an air cushion effect which would knock this down a lot. 10s to 100s of KHz seems possible.
As to what use it is. Who knows?
Babbage spent 20 years trying to build his "Difference Engine", and he damn' near bankrupted the government in the process. And we're talking about the British government at the height of Victorian financial glory, not today's debt-ridden behemoth.
The "Analytical Engine" is far more complicated. It's as sure a recipe for bankruptcy of anyone who tries it as I've ever heard of.
JGC wants to throw his own money away, fine. Even take up a public subscription if you like. But don't come crying to the taxpayer when it all goes tits up.
...Stainless Steel Rat. Read them all at the time, along with the 2000ad adaptations!
Not saying they're the best but favourites...
1. Peter F Hamilton
2. Iain M Banks
3. Stephen Donaldson, just for the GAP series/Michael Moorcock, for the old sci-fi stuff.
Liking Richard Morgan too.
As I said, people like different things, and I just don't like Gibson. Obviously some of you can't handle that when you're coming out with comments like the Star Wars stuff etc, which btw, isn't SciFi.