Back in 1998, I was 13 years old and had no money to buy a computer. But that wouldn’t stop me. I didn’t care if I had a brand new computer or a used one, all I wanted was a computer. From the conversations of adults around me, I heard it was common for businesses to renew their hardware and throw their old computers into the trash. So I figured, all I had to do was to be in the right trash at the right time, or even better, make the trash come to me. In these years, there were tons of computer paper magazines, so I decided to send a letter to one of them, of which I have now forgotten the name, to publish an ad in their classified section: “13 year-old student in the Paris area, will come to your home or office to get any computers you are about to throw in the bin”. From this classified, I got a 486DX-80 PC, a printer, and a Hector HR2+ computer.
The 486DX-80 and the printer have served me well, and are long gone. Last summer, while visiting my family in France I decided to take a look into the attic. As I was making my way through rusty nails and spider webs, I noticed a bag covered with dust in a dark corner of the room. I had the feeling that I was about to make a very good discovery, and I was not disappointed. I opened the bag with excitement, and there it was, the almighty Hector 2HR+ computer!
In the bag came all the booklets, cables, and cassettes, so I decided that I would spend the afternoon writing code on that machine, and that I would run this code before nightfall. But before I go any further on that, a bit of history about the Hector 2HR+…
The Hector 2HR+, an extinct species from 1983
In 1978, the American manufacturer Interact Electronics designed and released its Interact Model One computer. It had an Intel 8080A processor running at 2 MHz, up to 16KB of RAM, 2KB of ROM, and was running programs from cassettes. A French engineer, who was working at Philips at the time, stumbled on it, and in 1981, the beast ended up being licensed in France by the company named Micronique (pronounced “mee-cro-nic”). Thus the Hector 2HR+ is just a rebranded, white-label clone of the Interact Model One. Although, the Hector 2HR+ had more RAM (48KB) and more ROM (4KB) than the Model One, and also differed by its processor, a Zilog Z80 A.
The Hector 2HR+ didn’t do so well in France. That was the time when dozens of companies were fighting in the consumer market with their own computers. The last Hector model produced by Micronique was the Hector MX in 1985, but that model is even more rare to find than the Hector 2HR+. Micronique is still alive today, but they no longer assemble their own products. They are now doing surface-mount technology (SMT), and they assemble orders for clients, mostly for the medical and transportation industries.
Debugging Basic code like it’s 1983!
Computers from the 80’s are rare, and computers from the 80’s with a French keyboard are even more so. With the finding of this Hector 2HR+ computer, the opportunity was just too good: I hooked the Hector to a TV, and hit the start button. And miracle, it started…
From the main menu, I selected the Basic III option to get into the programming environment and start coding. Like many computers at the time, the Hector 2HR+ was offering the Basic language to its users. And I’m lucky to have the 2HR+ model and not the 2HR. Indeed, the 2HR loads the Basic language from a cassette, whereas the 2HR+ has it already integrated in a ROM.
I did some Basic on Microsoft DOS 6.22 back in the days, but never on a cassette-based computer. The various manuals and booklets that were with the Hector 2HR+ had many small program examples. I chose one that was for a demo application showing a changing color mosaic on the screen. And so I started to enter the listing into the computer.
My first trial was unsuccessful. First of all, I made a syntax error, and I had no clue how to go back at the line to change just that without retyping the whole thing. Then, I found that there was a bug in the program listing: with a more in-depth read of the manual, I was able to figure out that the listing was using the random number function with the syntax of a different version of Basic. After fixing both issues, the program could run. I’m not sure if the result I got is what the original programmer had intended, but well, the screen showed something, so I guess the program was correct, right? :p
Back to 2014
This short glimpse into 1983 had a strong effect on me. The whole process of typing this program, and then debugging and running it was very painful. Writing code in 2014 on a high resolution screen and with the adequate tooling is so much better… I will never complain again about GCC bugs, and from now on, as long as I have a screen that can show more than 40 characters per line, I’ll be happy!
As for what’s next, if you have an interest in the Hector 2HR+, then you should visit the website of this French nonprofit that’s maintaining an Hector 2HR+ emulator along with a cassette backup database of the programs and games that used to be sold with the Hector 2HR+. Their website is: http://hectorvictor.free.fr/.