Forth Version 1 Runs Again

Some people love Forth and some people hate it. However, you usually think of Forth as something running on a little computer such as an 8-bit microcomputer. When [Chuck Moore] developed the system back in the 1960s though, it ran on an IBM 1130. [Carl Claunch] took a scanned listing of the original code and got it running once again.

There are actually a few blog posts with details. Luckily, Forth is pretty simple — especially the core parts. However, there are a lot of differences from a modern Forth. The most obvious is that the dot keyword starts a definition and does not print the top of stack. However, internal details are different too — the system, for example, stores characters in packed EBCDIC — an ASCII-like code used by IBM computers.

Oddly, [Moore] used Forth to write code that would allow the big computer to help design carpets, although the project was ultimately unsuccessful. However, the language, which grew from [Moore’s] private card deck library, was much easier to use than the machine’s preferred FORTRAN.

The group working on this has released the original scans and promises a machine-readable version soon. Don’t have an IBM 1130 to run it on? Sure you do.

If you want something more modern and smaller, you have a choice of Hackaday-approved projects. For instance, Mecrisp-Stellaris Forth on an ARM. Or, go cloud, and run it in your browser.

23 thoughts on “Forth Version 1 Runs Again

      1. The FORTRAN compiler and assembler ran on the machine, loaded from a disk pack drive (IBM 1311 or 2311). I did a lot of FORTRAN on one of these at what was then called Roswell Park Memorial Institute in Buffalo NY in the summer of 1965, when I was a junior in high school. I was working for the Ultracentrifuge Lab in a work-study program, plotting simulation results to a Calcomp 36″ wide plotter. Except for the EBCDIC (which I didn’t have to work with directly :-) it was a great computer!

  1. ” However, the language, which grew from [Moore’s] private card deck library, was much easier to use than the machine’s preferred FORTRAN.”

    Choosy machines chose FORTRAN.

    1. Since discovering Mecrisp Forth for the STM32 ARM chips (and jcw’s excellent libraries) about two years ago, I’ve been using it for 95% (? total guess) of my microcontrollering needs.

      An interactive system, with easy chip-level hardware access and simple multitasking are killer features that make the whole “everything’s backwards” feeling worth getting over. Going back to C when necessary is oddly frustrating, even though it’s my native language.

      And while it’s kinda fun to play around with Forth online in simulators, its real virtue is that it’s not much of a language at all, and doesn’t get in your way when you actually want to _do stuff_. Get the requisite $6 of hardware, download a Forth (shameless plug!) and learn on the job. Hook up some hardware and get hacking.

    1. I worked with a guy who designed a system that drove one of the first 128 nozzle carpet printers. IMSAI 8080, CP/M (of course), and 8 custom S-100 cards with 16 PWM channels. Never saw the printer in action in person, but did see some 8mm film he took of it :) Pretty cutting edge stuff back then.

  2. I ran my entire first 1802 based system on FORTH. It scanned my hand wired keyboard, operated my memory mapped character based display, and performed all my cassette tape and later floppy access.

    When I moved to the 6809 RS CoCo, I found a printed listing for a 6800 FORTH system with a target meta-compiler. I hand entered the source into a Motorola development system we had at work, modified it to take advantage of the upgraded processor (the 6800 code would have run directly on the 6809) and put it on an EPROM to bring home to my beloved Color Computer. On that system I was able to use the CoCo built in code as drivers to run the floppy and wrote a SCSI driver for a hard disk.

    I am still looking for that code listing again because it had the ability to compile headless FORTH code for target systems as standalone code.

    But alas, the PC started getting cheaper and cheaper to the point that the improved CoCo graphics card I was designing was beaten by a $15 IBM-PC color card.

    The PC killed my hobby designing and wire wrapping computer hardware.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.