Hacker News new | past | comments | ask | show | jobs | submit login
Using an Atari ST as Unix/Linux Terminal (atari-wiki.com)
133 points by indigodaddy 28 days ago | hide | past | web | favorite | 61 comments

Back in the 90s I ran Minix on my Atari and did serious development on it as a contractor for various defense and aerospace companies.

One war story, a big name company had some image processing that needed to be done on a spacecraft. Their scientist had written some software in lisp which was incredibly slow and took 15-30 hours to process one image on a Sun workstation. I was brought in to port it to C in the hopes of improving it, as well as to add several new features. I saw that his algorithms were really bad and rewrote the entire thing using entirely different algorithms I invented myself, bringing the run time down under 10 seconds on my Atari.

I was pretty excited about this. The scientist took my algorithms and published them in a journal as his own work without crediting me. So I quit. Still pissed off about that one.

If you're comfortable with giving details, I'd recommend posting a comment at PubPeer on the paper.


Plagiarism like that is far too common. Every paper a plagiarist gets away with helps their career and hurts other more honest folks because the number of academic positions is limited.

I filed an invention disclosure with my company, but they were not interested in patenting it. Then one of our “business development” people ran his mouth to another division about the technology.

Two years later I get a call from that division, saying they “may” put my name in their patent if I disclose more details about the technology.

I’m still pissed about that.

Well you’ve got my support! This is amazing, thanks for sharing!

You should have published, with source, time stamps, the works.

As an 8 or 9 year old boy, I spent an afternoon calling out an interminable list of numbers for my Dad to enter into DATA statements in a BASIC program on our ZX Spectrum to turn it into a terminal emulator by means of a hex loader. Once we'd entered it (correctly - we ended up making a few inevitable errors along the way) and saved it(!) to tape, we hooked up our phone to an acoustic coupler* and Dad spent a few minutes connected to the university mainframe.

* This (exact) one: http://www.computinghistory.org.uk/det/37926/Moore-Reed-TC-3...

I remember typing in programs from magazines with those lines of DATA-statements - if your magazine was Sinclair User, Your Sinclair, or similar it was easier than if it was a book.

Most books would print a program for BBC-Basic, and give you a set of lines to change for other systems. e.g. Adding in the LET statement for Spectrums.

We used to do the same with those machine code games for the c64 in the back of Compute or Byte magazine. One reader, one typer and one proofer huddled around the screen for hours.

The worst part is that we didnt have the 1541 drive yet, so the game was only around for as long as the power was on.

The good old days lol

Compute! had a handy little program to print a checksum of each line of BASIC on the left margin. Then, their other BASIC listings had that checksum printed alongside, so that eliminated the "proofer" job for us :-)

MLX, I think it was called. I used it to type out Speedscript, a word processor that took only 3K for my Commodore 64 and used it for my first years as a professional writer, it was connected to a Brother electric typewriter with a parallel printer interface to the Commodore 64.

Antic magazine also had similar program, aptly called "Typo" for "Type Your Programe Once".

Amstrad Action also had Type-righter (sic) and would put checksums next to every line of BASIC in the magazine.

Type-righter itself was included on the covermounted tape once that became a thing.

This was written in 2012.

The instructions for getting a TTY login session on the terminal device are now out of date. /etc/inittab is a thing of the past, and telinit q is no longer the tool.

In systemd operating systems, one would instantiate a serial-getty@ttyUSB0.service , tweaked to set the TERM environment variable appropriately.

On systems with nosh service management, one creates and uses an agetty@ttyUSB0 or mgetty@ttyUSB0 service bundle, adjusted with "rcctl set" to set the TERM environment variable appropriately. (What one does on runit/s6 systems is, of course, similar.)

* http://jdebp.uk./FGA/inittab-getty-is-history.html

* http://jdebp.uk./FGA/inittab-is-history.html

* https://unix.stackexchange.com/a/248313/5132

* http://jdebp.uk./Softwares/nosh/guide/real-terminal-login.ht...

I had exactly this setup a couple of years back using a Raspberry Pi and my childhood STE (which is still going strong 25 years later!)

One benefit that the linked article doesn't mention is the ability to initiate file transfers over the very same serial connection using ZMODEM / YMODEM / Kermit etc. When I had this set up it was very useful to act as a bridge to my NAS and download software from there onto the ST.

Good times!

Hah, that's pretty amazing that someone put this online. I did this back at the dawn of time with my old ST, some telephone cable, and Slackware Linux running on - possibly an 8088 (or could have been a 486). Funny to see it crop up again.

Of course, no-one in their right mind would do this to run a second terminal, as the Atari ST had the worst keyboard since the ZX81.

>Of course, no-one in their right mind would do this to run a second terminal, as the Atari ST had the worst keyboard since the ZX81

I hooked up an Oric-48k as a terminal once, having owned an Atari ST, I'm kinda in agreement with you. The Atari Keyboard had a weird springy feel about it, had Atari made mattresses, they would probably of been the best in the World - based upon the spring-feel of their keyboard.

Though the Psion II I used with the serial adapter was the most funkiest at the time, ABC style calculator keyboard (still better than ST apart from layout). But it was portable and a dream. Though I still to this day and occasionally use my Psion 5mx with serial adapter cable.

Now that you mention it - my 1040ST's keyboard was pretty springy, and you never were totally sure about whether it had registered your key hit.

I never ran unix on it, but I wrote a VT100 emulator for it to connect to a multi-processor Xenix machine.

It was very spongy indeed - but (when using the OS - so pretty much universal in GEM apps, and very common for TOS programs) there was a brief sound chip blip each time a keypress was registered. I for one never minded it. If the blip was there to compensate for the lack of feedback, it worked well.

Can't read the article right now (page seems hung) But, funny I did this exact same thing (ST as dumb terminal), 1995ish or so. An old Atari ST (with a missing top half of the case), serial connection to my 486 50 running Linux. In the same room. So friends could come over and IRC or MOO or whatever on one machine while someone was on the other.

The ST's keyboard was crap, but the Mega ST (not Mega STe and TT tho) had a good one. Mechanical (cherry) keyswitches.

In its favour, there were some good terminal emulators for the ST, and its mono monitor was good quality.

I also used the same ST to retrieve usenet and email via UUCP somewhere around 1990 or 1991.

Good times.

Likewise but much much more recently. Also hooked an Amstrad CPC 464 up as a dumb terminal too.

At one point working from home basically meant I was SSHing into work via an 80s micro / personal computer. Albeit my Raspberry Pi did all the heavy lifting.

Re the ST's keyboard: I didn't think it was so bad. I could type easy enough on it and I've used plenty worse.

Mode 2 on the CPC would give you a pretty decent terminal.

> possibly an 8088 (or could have been a 486)

Almost certainly the latter. Linux ran only from the 386 upwards.

Must have been the 486. Actually, now you mention it, it certainly must have been that machine, as a friend brought Slackware round for me to install from a stack of 3.5" floppies, and the 8088 only had a 5.25" drive.

Maybe MINIX?

Atari ST will also run a normal EtherNet TCP / IP stack with Netusbee (I have one):


I've done the same with my Amiga 600 / 1200 with a PCMCIA Ethernet Card and Miami.


I've got an RR-Net MK3 cart for my C64 and have the Contiki web browser handy.


Aaah, those were the days.. I went from an ST to Slackware on a 386, hooked them up using the serial port and wrote my own terminal emulator because whatever emulator I could get my hands on could not keep up with the maximum baudrate; https://github.com/remvee/st-tty

My dad's workplace had several original Atari 520ST machines (not the STM with FM modulator or the STFM with floppy disk and modulator) which they used simply as VT220 terminals for accessing their DEC PDP and VAX minicomputers. Apparently the Ataris were a lot more cost effective than specialised VT220 terminals.

funny, this is exactly how I accessed the internet back in the early 90s, dial up to a terminal on a unix (and VMS) box from my Atari ST :)

Wait, am I reading that right? Debian 6 runs on the Atari ST with automatic hardware detection?

Can it `ssh brow.sh`?

Debian does have an unofficial m68k port, although I'm not sure how well it runs on this specific hardware. SSH from vintage hardware is a pain btw, there is YT video somewhere of someone SSH'ing out from a 486-compatible "586" box with a modern Linux install, and the overhead introduced by SSH is quite real there.

It won’t run on an ST, but a Atari TT can run *nix like OS’s

TT can actually run full Unix. Atari sold a full SYS V Unix for it, and later on NetBSD was ported to it. m68k Linux also ran on it at one point, I believe.

Classic ST can't do it, because no MMU. On them we had MiNT, which was a Unix-like extension to TOS. Ran fine on an ST with a 1MB or so of RAM. At various times I ran a full suite of Unix ports... bash, emacs, nn, vi, the whole nine yards. There was also a port of the MGR window system.

But the machines with an '030 (TT And Falcon) could run a proper Unix. Including X11. I remember even seeing discussion of this in UnixWorld magazine back in the day.

No, you’re definitely reading it wrong ;)

This is just connecting up a serial console, nothing more.

I see, so the hardware detection is from the modern machine detecting the serial port. That truly is the definition of a terminal then. Still, pretty cool!

Atari ST has an alternative operating system called MiNT and RPM-based SpareMiNT, which is a UNIX-like operating system, but still TOS compatible.


I bought an Apple IIe (just like my original personal computer), installed a serial card, and used it as a terminal. You can connect to google and search in text mode just fine.

Sounds fun, though I would recommend my old friend's FreeZe Dried Terminal as the terminal program on the ST side.

I still have a Heath/Zenith terminal like the one pictured alongside the story. Ahh ... memories :-)

For those late weekend nights :)

I imagine similarly could be done on any old computer? (Amiga, etc?)

I imagine similarly could be done on any old computer? (Amiga, etc?)

Yes. I do this occasionally with a TRS-80 Model 100.

And back when they were both still current, I would dial in to a PR1ME and Vax minicomputers with a Commodore 64.

My holy grail is figuring out how to run a personal Zork server on an Ubuntu machine that I can access (serial or telnet) from the 100.

https://bytemyvdu.wordpress.com/2016/09/03/tandy-trs80-m100-... Would be most, if not all the battle. Might need to run the serial at a lower speed to accommodate the serial buffer on the M100. From there, you can telnet to the localhost and avoid a lot of messing with the zork server if you are unable to hook it directly to the serial port you are using.

That was actually the easy part. I'm already doing that. It's the Zork end that's the problem.

http://www.retroadventures.net/zork-telnet-server/ covers that and as I said, you can just telnet to localhost from the M100.

Maybe i'm missing something, but why not just run frotz from the command line given you can already log in over serial?

What on earth is a "Zork Server" anyway?

Just set zork as your login shell and enable telnet/serial tty

But the ST is good for this, as (unless you're a demo coder) it's mostly otherwise useless - and unless it's an STe, not even that.

And its 70Hz mono monitor is still decent by modern standards. (If you've only seen 70Hz colour CRTs: the ST's mono monitor is not the same! Mono phosphors look quite different. No flicker, like an LCD, but with restful, paper-like contrast levels, like a Kindle.)

Wouldn't say useless, plenty of musicians still work with them.

Amiga runs just fine as a dumb terminal in just about any combination of serial (PPP / Slip / straight serial). PCMCIA cards enable it to run regular SSH and NFS to a host (best used in combination with Solaris or illumos systems). Vampire accelerators enable TCP / IP networking on a regular A500.

>Vampire accelerators enable TCP / IP networking on a regular A500.

A regular A500 can do TCP/IP just fine without a vampire.

By using AmiTCP or roadshow TCP/IP stack and PPP, SLIP, PLIP (e.g. with a plipbox) or a NIC based on the left expansion header.

A600 and A1200 can simply use a PCMCIA card. The typical choice is ne2000-compatible cards using the cnet.device driver.

A500 could always do Slip and PPP, but it's awfully slow over serial and parallel ports. Even plipbox manages only about 53 KB/s.

I also use cnet.device in my A1200.

>I also use cnet.device in my A1200.

As an aside, the ne2000 cards do also work on the Amiga ports of Netbsd and Linux.

I know, I run NetBSD on my A1200 as well. I have it set up as a dual boot.

It's good to know I'm not totally alone :)

you could run x11 on an amiga, along with xterm, but yes you could run a simple terminal emulator as well.

I could use that. What's the X11 archive for Amiga called on "AmiNet"?

unfortunately i don't know - the last time i booted an amiga was a little over 20 years ago, but it looks like DaggeX might do the trick (just search for x11 on aminet)

Yeah. There are quite a few ways to do it.

You can even get TCP/IP stack and a Web browser running (though things are very slow and many sites do not work).


+ midi!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact