## Sunday, August 09, 2009

### In which I switch on a 30 year old computer and it just works

Yesterday, I had the pleasure of visiting my parents and getting out an old computer. One of the first computers I used a lot was the Sharp MZ-80K which was sold from 1979 to 1982. I was but a wee bairn, but this is the first machine I really programmed. First using BASIC and then using Z-80 assembler (and sometimes by typing in characters directly on the screen corresponding to Z-80 opcodes and then calling the address of the start of screen memory to have the program on screen executed).

My parents have a Sharp MZ-80K that I purchased as a nostalgia item some years ago. Yesterday I fired it up for the first time and was straight into the boot ROM. Oddly, I could remember everything about the machine's operation and shoved a cassette tape containing SP-BASIC into the tape drive, hit play and typed LOAD.

The machine duly loaded SP-BASIC and gave me the prompt.

Then I did the real test. After poking around and finding a tape of my old BASIC programs I typed LOAD again and explored the tape. 30 years on all the programs loaded from tape just fine and executed. I was able to spend a happy few hours playing character-based games that I wrote.

Here's a screen shot of the listing of one such game: notice the J.G.C. initials at the start. This was one of the few programs I put my name in (I think because it was clearly co-written with A.S.).

I put the survival of that tape down to two things: my parents careful handling of a box of Sharp MZ-80K and BBC Micro tapes and my obsession at the time of being the highest quality CrO2 cassette tapes available: "It is still considered today by many oxide and tape manufacturers to have been the most perfect magnetic recording particulate ever invented."

Labels:

If you enjoyed this blog post, you might enjoy my travel book for people interested in science and technology: The Geek Atlas. Signed copies of The Geek Atlas are available.

<$BlogCommentBody$>

<$BlogCommentDateTime$> <$BlogCommentDeleteIcon$>

<$BlogBacklinkControl$> <$BlogBacklinkTitle$> <$BlogBacklinkDeleteIcon$>
<$BlogBacklinkSnippet$>