12.30.08

Flight Sim History

Posted in Culture, Tech Nostalgia at 2:34 am by thomas

While googling up another arcane feature of the Atari ST system hardware I stumbled over this: The Flight Simulator History page.

It offers a very comprehensive history of all versions of FS and background about its creators, and then in addition pre-built emulator packages so you can go and check out what Flight Simulator looked like back in the early 80s.

A perfect timesink for the rainy/snowy holiday season. :)

My latest Tweets:

1000 Instructions and Counting…

Posted in Programming at 2:20 am by thomas

Coming back from a programming break over the holidays, I went back to work on my ST emulation… The CPU is making steady progress and for the first time the emulator ran through 1000 instructions without a hiccup.

It finally coughed up an exception on a bit shift operation about 1300 instructions into the TOS 1.04 that I’m using as my testbed. At that point a good chunk of the memory test of the Atari ST is over, and the system is about to figure out how much RAM is available.

Next up – initializing the video memory and a large number of system variables. That’s when things will get much more exciting on the system side of the emulation, and once my emulator runs TOS to the point where the video memory is being written to I can post some screenshots. I’m sure looking forward now to see as much as a few of the old bomb errors on the screen…

12.28.08

Impulse Purchase!

Posted in Modern Life, Tech Nostalgia at 12:52 am by thomas

If you’ve used an original Atari Joystick back in the 80s, you know that there was something very special about that joystick. I could never figure out what it was, and undoubtedly the ergonomics of every other later joypad/analog stick thingy was far superior. But still… there was something to that old square box, all corners and sharp edges, that no later input device could replace.

Well, too late now to think about it – it’s all gone in a puff of electronic smoke by now.

Or is it? Just found Legacy Engineering Group, which seems to be a small company specializing in reproducing modernized versions of old Atari hardware (you can make a business out of that?), and they have a USB version of the old Atari Joystick for sale!

It took me only about 20 seconds to complete this shopping transaction, from first pageload to the confirmation page. :-)

12.23.08

Of Writing a CPU

Posted in Programming, Tech Nostalgia at 2:22 am by thomas

I’ve always been fascinated by software emulators. The earliest example I’ve used that I can think of was a ZX Spectrum emulator on an Atari ST around 1987. I had a real Spectrum for some time at that point and had just bought a ST the year before, when I found this program on a BBS for download that was able to run all the Spectrum games on the ST. Needless to say, I was intrigued.

It was a pretty novel concept for me at that time, but emulators had already been around in University settings for a while. But on home computers this was a new thing, and the concept became hugely popular with the geek crowd of the day. By the late 80s, there were PC/DOS emulators on ST, Amiga and Mac, there was a full range of 8-bit emulations on everything 16-bit and there was even a Mac emulation on the ST.

The idea never really lost its importance or attraction, and nowadays we have programs like the excellent VMWare Fusion to run Windows on Macs and generally most modern operating systems are moving more and more into virtual machines for greater security and versatility.

So while I’ve been using emulators for more than 20 years now, I’ve always been intimidated by the idea of programming such a thing. But sooner or later I had to try.

A few weeks ago after seeing the progress that Tony Headford is making with Miggy – his Amiga emulator in Java, I thought that now is the time…

I’ve started work on a new ST emulator and I’m doing it from the ground up, with new 68K and hardware emulation code. I do lean for some of the concepts on exisiting code – starting with some of the CPU code from Miggy, but also checking out other open-source emulators for useful bits.

So I’m writing a CPU. Which is really quite exhilarating and quite possible one of the biggest programming challenges I’ve ever taken on. It feels like I’m working on the biggest Rubic’s Cube ever!

Right now I have about 50% of the CPU working, and I’m making steady progress. I’m loading Atari TOS 1.04 into it for testing and just boot the virtual machine and see where it gets stuck, which is then the next thing to work on. This is a very appealing way to approach this problem, since the virtual CPU in debugging mode automatically coughs up my next task every evening as another opcode to implement, so there is never a question of prioritization.

I’ve also started to implement the virtual hardware for the ST, and that will be quite a tough nut to crack, since the interrupt behavior of some of the custom chips is pretty complex.

More details coming soon…

12.22.08

The Clones Never Sleep

Posted in Modern Life, Tech Nostalgia at 1:06 am by thomas

While I was doing some research around the behavior of Atari ST hardware, I found several interesting sites with quite amazing hardware projects around the ST. There are several people who are in the process of building complete Atari clones based on VHDL (programmable logic chips)!

Here’s a few very promising projects:

  • S Like Suska – an active and far advanced clone project. It looks like the prototype is already running Nebulus in color, so this one has already passed one of the most important tests in my book. :-)
  • Alltogether (PDF) – seemingly a successfully finished student project. The PDF linked here has some excellent details around the deeper behavior of the original ST chipset.
  • VHDL page on atari.org – a list with several other projects around this subject.

While I’ve pretty much put my soldering iron away a long time ago, my Electronic Engineer’s heart sings while looking at these sites.

It’s quite possible that we’ll all be able to buy one of those machines as a kit one of these days, and since these clones are a lot smaller and can probably be booted from Flash memory, this is a great way to move the Atari hardware platform into the 21st century.

12.18.08

Manhattan Street Corners

Posted in Culture, Good Stuff, Photography, Travel at 11:42 pm by thomas

Richard Howe spent much of 2006 walking the streets of Manhattan, taking photos of ALL the street corners in town.

I love these kinds of projects that take on a mysterious life of their own. On first thought it sounds like a ridiculous idea. A photo of every street corner? But once you click your way into the galleries, and move from photo to photo and from corner to corner, suddenly it all starts to make sense.

The photos are presented in a widescreen format that lends itself well to the subject, with every street corner revealing a panoramic microcosm of life in Manhattan. There is yellow taxis everywhere, bike couriers, businessmen out for lunch, hustlers and shoppers.

Many of the corners have well-known brand stores in the downtown areas, but further along the island there are many unique local cornerstores and sometimes quite exotic businesses that add so much to the charme of the big city.

The galleries offer an autoplay function that invites to take effortless, dreamy strolls through parts of Manhattan that many tourists never visit.

12.06.08

The Making Of…

Posted in Modern Life, Programming, Tech Nostalgia at 12:19 am by thomas

It’s interesting to see developers open their programming process to the world on their blogs.

Here are two recent examples that I found while looking for resources on emulator programming (ahem!) – Miggy is a blog from Bristol in the UK and the owner, t0ne, started work on a Amiga emulator in Java in October. He is making great progress – and if I may say so has already produced some of the easiest-to-read 68k emulation code I’ve ever seen.

And there is Legacy System by Jonners in London, who started on a 6502 / Vic-20 emulator in September and who is also making great strides to bring the ultimate Vic-20 emulator in C# to the world.

I very much recommend both blogs for their great writing about the scary depths and exhilarating highs of emulation programming. Both t0ne and Jonners have a gift to write entertaining about some pretty intimidating coding issues.

12.04.08

Scripted Emulators

Posted in Modern Life, Programming, Tech Nostalgia at 12:12 am by thomas

With the speed increases in computers and browser code, a new class of emulators is slowly growing to significant levels: Emulators built in JavaScript!

I wrote about this recently when I found Matt West’s cool Spectrum emulator on the web, and since then I’ve been looking around a bit to see what else is out there:

There has been an obvious preference for the simpler, early CPUs, but with the JavaScript engines being aggressively pushed towards faster execution speeds it is only a matter of time before we will see more complex CPUs and computers in fully scripted glory.

I’m very excited about this trend towards deep, code-intensive applications written in JavaScript, since it opens this kind of development to a whole new generation of young coders who would previously have never considered being involved in such a project.

Since these applications are completely open and since there is no need for a development environment beyond a text editor and a browser, it has never been easier to take part in something as complex as emulation programming. I can’t wait to see what all the new talent will come up with!