Virtual CPU Stays On Script

Some will see it as a great thing, and others as an example of how JavaScript is being abused daily, but [Francis Stokes] decided to design his own CPU architecture and implemented a virtual version of it using JavaScript. The CPU is a 16-bit affair and has a simplified assembly language. The code is on GitHub, but the real value is [Francis’] exposition of the design in the original post.

While discussing the design, [Francis] reveals his first pass at the instruction set, discussed what he found wrong about it, and then reveals the final set composed of real instructions and some macros to handle other common cases.

Continue reading “Virtual CPU Stays On Script”

The Acorn Archimedes At 30

The trouble with being an incidental witness to the start of something that later becomes world-changing is that at the time you are rarely aware of what you are seeing. Take the Acorn Archimedes, the home computer for which the first ARM processor was developed, and which has just turned 30. If you were a British school pupil in 1987 who found a pair of the new machines alongside the row of BBC Micros in the school computer lab, for sure it was an exciting event, after all these were the machines everyone was talking about. But the possibility that their unique and innovative processor would go on to spawn a line of successors that would eventually power so much of the world three decades later was something that probably never occurred to spotty ’80s teens.

[Computerphile] takes a look at some of the first Archimedes machines in the video below the break. We get a little of the history and a description of the OS, plus a look at an early model still in its box and one of the last of the Archimedes line. Familiar to owners of this era of hardware is the moment when a pile of floppies is leafed through to find one that still works, then we’re shown the defining game of the platform, [David Braben]’s Lander, which became the commercial Zarch, and provided the template for his Virus and Virus 2000 games.

The Trojan Room Coffee Cam Archimedes, on display at the Cambridge University Computing Department.
The Trojan Room Coffee Cam Archimedes, on display at the Cambridge University Computing Department.

We see the RiscOS operating system booting lightning-fast from ROM and still giving a good account of itself 20 years later even on a vintage Philips composite monitor. If you were that kid in 1987, you were in for a shock when you reached university and sat down in front of the early Windows versions, it would be quite a few years before mainstream computers matched your first GUI.

The Archimedes line and its successors continued to be available into the mid 1990s, but faded away along with Acorn through the decade. Even one being used to power the famous Trojan Room Coffee Cam couldn’t save it from extinction. We’re told they can still be found in the broadcast industry, and until fairly recently they powered much of the electronic signage on British railways, but other than that the original source of machines has gone. All is not lost though, because of course we all know about their ARM joint venture which continues to this day. If you would like to experience something close to an Archimedes you can do so with another computer from Cambridge, because RiscOS is available for the Raspberry Pi.

Sit back and enjoy the video, and if you were one of those kids in 1987, be proud that you sampled a little piece of the future before everyone else did.

Continue reading “The Acorn Archimedes At 30”

A Virtual Machine, In Google Sheets

In the last couple of decades we have become used to the browser taking over so many of the desktop functions for which we used to rely on stand-alone software. Email clients, calendars, office suites and much more can now be found in the cloud, courtesy of the usual technology companies.

Sometimes these cloud-based alternatives to desktop software can be a little sketchy, but often they have features that might surprise you as they edge towards parity with the packages they seek to replace. Google Docs, for instance has a full-featured built-in scripting language called Apps Script, that gives your full control of a document or spreadsheet with the help of a bit of Javascript. When [Brian Steffens] saw this it piqued his interest, so of course he had to in his words “do something weird with it”. The result of his efforts is the Google Sheets Virtual Machine, a virtual computer in software using spreadsheet cells as memory, stack, and registers.

With only a 100-cell memory and dependent entirely upon the processing power available to the host browser, this machine is not likely to set the world on fire. He gives full instruction set details, there are a couple of demo programs, a Fibronacci sequence generator and a factorial generator, but its general lack of power is not really the point. Instead its value lies in an elegant demonstration for its own sake that a virtual computer can be built in the unlikeliest of places, and for those interested enough to peer into its code, some idea how that might be achieved.

[via Hacker News]

Classic IBM TR-2 Flip-Flop Reproduction

As useful as computers are, most of them have all the design charm of a rubber doorstop. Oh, for the heady early days of computing, when vacuum tubes ruled, hardware was assembled by hand, and engineers always wore a tie.

Looking to recreate an elegant bit of computing hardware from that more civilized age, [updatebjarni] built a reproduction of a 1948 IBM TR-2 flip-flop module — 1,250 of which once formed the memory of the IBM Model 604 Calculating Punch. Admittedly more of a high-speed adding machine than a computer, the 604 is still an important piece of computing history, and [updatebjarni]’s scrap-bin reproduction of the field-replaceable module served as part of a computer history exhibit.

With a single 6J6 double triode tube nestled inside a bent aluminum frame, the goal was to reproduce the appearance of the original TR-2 module, and so the passive components wired up point-to-point style below the tube socket were chosen for their vintage look. That’s not to say the flip-flop won’t function. Although [updatebjarni] hasn’t tested it, he’s built other functional flip-flops from vintage components before, so this one should work too. Only 1,249 left to build and he’ll have enough for a working 604.

If you like this kind of build, you should probably check out some of our Vintage Computer Festival coverage. VCF East in April was a huge success, and VCF West is coming up in August in Mountain View. Hackaday will be well represented there, so stop by.

[via r/geekporn]

Wooden Laptop Enclosure: New Life For Old Thinkpad

Technology is designed to serve us and make our lives better. When a device gets outdated, it is either disposed of or is buried in a pile of junk never to be seen again. However, some individuals tend to develop a certain respect for their mechanical servants and make an effort to preserve them long after they have become redundant.

My relationship with my first laptop is a shining example of how to hold onto beloved hardware way too long. I converted that laptop into a desktop with a number of serious modifications which helped me learn about woodworking along the way. Maybe it’s more pragmatic to just buy new equipment. But you spend so much time each day using your devices. It is incredibly satisfying to have a personal connection that comes from pouring your own craftsmanship into them.

Why the Effort?

IBM Thinkpad R60 via Notebook Review

The laptop in question is an IBM R60 which I lugged around during the first three years after I graduated. It was my companion during some tough times and naturally, I developed a certain attachment to it. With time its peripherals failed including the keyboard which housed the power switch and it was decided that the cost of repair would outweigh its usefulness.

Then came the faithful day when I was inspired to make something with the scrap wood that had accumulated in my workshop. This would be my second woodworking project ever and I did not have the professional heavy machinery advertised in most YouTube videos. Yet I had two targets in mind with this project.

  1. Make the R60 useful again.
  2. Learn about woodworking for creating enclosures for future projects.

Armed with mostly hand tools, a drill and a grinder that was fitted with a saw blade, I started with the IBM R60 to all-in-one PC mod. Following is a log of things I did and those I regret not doing a.k.a. lessons learned. Read on.

Continue reading “Wooden Laptop Enclosure: New Life For Old Thinkpad”

Homemade Computer From 1970s Chips

Sometimes it starts with a 555 timer and an op-amp. Other times with a small microcontroller. But the timing’s not so great and needs a dedicated timing crystal circuit. And maybe some more memory, and maybe the ATtiny should be swapped out for some 74LS-series chips. And now of course it needs video output too. Before you know it, you’re staring at a 40-chip computer that hearkens back to a simpler, yet somehow more complex, time of computing. At least that’s where [Marcel] is with his breadboard computer based on 1970s-era chips.

For what it does, this homebrew computer is relatively simple and straightforward. It gets 8 bits of processing power from 34 TTL chips. Another 6 round out the other features needed for the computer to operate. It is capable of rendering 64 colors in software and has more than enough memory for a computer of this sort. So far the only recurring problem [Marcel] has had has been with breadboard fatigue, as some of the chips keep popping out of the sockets.

This is a great project for anyone interested in homebrew or 8-bit computing, partially because of some of the self-imposed limitations that [Marcel] imposed on himself, like “only chips from the 70s”. It’s an impressive build on its own and looks to get much better since future plans call for a dedicated PCB to solve the issue with the worn-out breadboards. If you’re already invested in a project like this, don’t forget that the rabbit hole can go a little deeper: you can build a computer out of discrete transistors as well.

The Oldest Known Surviving PC Operating System

You’ll all be familiar with the PC, the ubiquitous x86-powered workhorse of desktop and portable computing. All modern PCs are descendants of the original from IBM, the model 5150 which made its debut in August 1981. This 8088-CPU-driven machine was expensive and arguably not as accomplished as its competitors, yet became an instant commercial success.

The genesis of its principal operating system is famous in providing the foundation of Microsoft’s huge success. They had bought Seattle Computer Products’ 86-DOS, which they then fashioned into the first release version of IBM’s PC-DOS. And for those interested in these early PC operating systems there is a new insight to be found, in the form of a pre-release version of PC-DOS 1.0 that has found its way into the hands of OS/2 Museum.

Sadly they don’t show us the diskette itself, but we are told it is the single-sided 160K 5.25″ variety that would have been the standard on these early PCs. We say “the standard” rather than “standard” because a floppy drive was an optional extra on a 5150, the most basic model would have used cassette tape as a storage medium.

The disk is bootable, and indeed we can all have a play with its contents due to the magic of emulation. The dates on the files reveal a date of June 1981, so this is definitely a pre-release version and several months older than the previous oldest known PC-DOS version. They detail an array of differences between this disk and the DOS we might recognise, perhaps the most surprising of which is that even at this late stage it lacks support for .EXE executables.

You will probably never choose to run this DOS version on your PC, but it is an extremely interesting and important missing link between surviving 86-DOS and PC-DOS versions. It also has the interesting feature of being the oldest so-far-found operating system created specifically for the PC.

If you are interested in early PC hardware, take a look at this project using an AVR processor to emulate a PC’s 8088.

Header image: (CC BY-SA 3.0 DE).