ASCII by Jason Scott

Jason Scott's Weblog

JSMESS and the Big Day —

Photo by Raj


On Thursday, the 24th, (1024, in computer vernacular) I was part of a raft of announcements from the Internet Archive for the coming year. Reviews of great things that happened, great things happening, wonders to be shown. If you want to watch the whole event with pomp and circumstance (surprise guest and all), then here is the video on the Archive itself.

If you want to check out just the ten-minute presentation I gave, here’s a link right to it. And if you want the summary of what I talked about for those ten minutes, here it is:

JSMESS is real. It works. It works well, very well. It emulates 300 platforms and can run many thousands of programs on those platforms. It works in pretty much all modern browsers and will be continually updated.

But more than that, we have now installed JSMESS into the Internet Archive, in a collection called the Historical Software collection.

For people who follow this weblog, JSMESS and its progression from my initial call for it in October of 2011 have been a steady drumbeat, with incremental improvements the whole way along. But for a whole other range of people, this past few days have made them wander into the Internet Archive and realize, to their horror and delight, that a collection of programs are a click away from playing right in their browsers. One click, and an old machine is alive and running software. No plugins, no click-throughs, no downloading and configuring of emulators, and certainly no goddamned Java.

With the introduction of the Historical Software Collection, we have a real-world, dreams-come true experience of seeing contextual descriptions of old programs, and an instant-click window that will bring you right into the experience of that old program. From “Oh, Pitfall!” to playing Pitfall in less than 10 seconds. From then, it’s just you trying it out, ranging from a few pithy stabs at the keyboard to verify it works, to playing the crazy thing all the way through. It’s up to you! You’re not making anybody wait, you’re not trying to figure out if you got the right emulator program and where the cartridge image for Pitfall! is going to come from – you’re right there, like you are with movies, music and texts. That’s the magic. That’s the miracle.



As of this writing, dozens of major online news outlets have spread the news, either about JSMESS or about the HSC. Most are just reporting our weblog entry about it, but a few are doing some in-depth discussion of the meaning of it all, and the experience of using old things like Visicalc or Wordstar. It is, as I had hoped, a joy to read all this, to crash-land JSMESS into the Internet Archive and watch people flip out in joy and incredulity.

Along with this comes the usual “I never head of this 15 seconds ago and damn howdy do I have something to say” Opinion Tourism that weighs into so much of online writing. Most of it I expected – very little is a surprise. I might as well answer it in one place.

A whole range is “it is better emulated in native/desktop”. Well, YES. The difference is that in one case you’re in the process of tracking down materials, installing items on your desktop, running them, finding what ELSE is missing, and then getting it going. You’ve gone from an observer to a fiddler and a hobbyist in the process. In the other case, you click on something and it is right there. We’re going to make the JSMESS emulator better, more accurate (thanks to the work of MESS) and add features as we go. This was the big push to get this going for the big announcement, but we have a long way to travel. But we are travelling – everyone’s excited to get JSMESS better and better. But we obviously will always be one step behind programs not fighting the browser paradigm and running at a reduced speed. The key is to make that step as tiny as possible. Where we will always be ahead is Time-To-Action – and that was the big reason for doing this. The day when you can say “Check this out” to someone and within seconds they are checking it out is now here. That is a very big day.

Another range of discussions is “awww, only 30 programs, what about _____”. A lot of the reason for this was that I wanted JSMESS and the entire paradigm of a software museum to be highly, highly curated. I wanted it an impeccable collection of unquestionably seminal and pioneering works. I wanted there to be no question that, sans the fact that it has no physical space and can be called up on anything from a phone to a tablet to someone’s laptop – it was a truly valid place to learn about computer history. So we started small. On a technical side, the methods we used to add the programs took a lot of custom work, and I’d like to see us remake this down the road so anyone can add their old software up and have it boot. I promise you – within a year, this collection will be in the thousands, far beyond what one reasonable person would ever need. It’ll be a place that historians and educators can point to for people to experience these items and comment on them.


A particularly nice moment has been to come back to the MESS coders, an amazing and intense group of people, and show real results. JSMESS is now something that, with some luck, will be accounted for in future MESS versions, with a few code modifications and other cleanup work being brought back. Contributors are helping on both sides, and I think the projects with both benefit from that. We’re currently 2 years and multiple versions behind the latest version of MESS – the goal is to make that disappear.

People have already come to me, inspired by all this, to talk about contributing emulation code and support to the MESS project to ensure JSMESS supports their favorite machines and supports them well. That is exactly what I had hoped for – the feedback loop of seeing it arrive in your browser window, and knowing your efforts will result in something millions can use instantly.

It is absolutely a brand new day for software preservation. The question that now arises is – what is going to happen?



I have been to a lot of places over the last couple of years to tell people this was coming. We can’t go back – it exists, it’s up on github, it’s everywhere. People know, by the tens of thousands (and soon the hundreds of thousands) that this exists. They like it, they want it, and they want it smoother, faster, better.

I’ve talked with institutions about this approach of mine – it’s one of several out there, and I think it’s one of the slickest, but either way they come to it, institutions now have to think about how they will approach emulation of these programs. It’s here. It’s now. It is now very interesting and very immediate. There is no barrier to entry. None. Your browser has to work. You have to have the vaguest interest. Once JSMESS is a distributable plug-it-into-your-website package, it’s going to be in a lot of places – weblogs, websites, kiosks.

The flood of new users of emulators, an entire casual class, is going to have interesting effects in the world of emulation in general. More people savvy this exists, more folks wandering in to learn about all the hard work that’s been done, and with that, new demands and wishes. And both the emulator makers, the groups trying to do emulation as a service or emulation as a standard, are going to find out that the hoped-for audience is here, right now, and they want action.

How will this brand new day work? It’s not up to me. I’m going to focus on the short-term – getting the historical collection filled with a few more dozen items people are requesting, cleaning up some of the related projects that came with this one, and working with the JSMESS (and maybe MESS) team to get things even smoother.

I can’t wait to see how it all plays out.

Categorised as: computer history

Comments are disabled on this post


  1. Dan Tobias says:

    The keyboard bindings can still be a little weird. I know there are clashes sometimes between being historically accurate in duplicating the specific keys of the platform being emulated, and being usable on modern-day machines with a different keyboard layout, but it can get frustrating trying to figure out how to type things when the shifted digits (and other keys) go to different symbols than are on the modern keytops, and (especially) the fact that the backspace never seems to work on any of the emulations… didn’t those old machines have backspace keys? why can’t the modern backspace be mapped onto them?

  2. […] work together and yet somehow do – hence the “Mess” in the name. (Check out his blog about it for actually accurate […]