The Future Was Here
A long time ago, in a galaxy far, far away, there was a home computer called the Amiga and I owned a couple.
The Amiga was machine from the future. In the early 90s when I and my friends owned them, when Windows 3.1 was barely stumbling along with overlapping windows, the Amiga had a full multitasking operating system with incredible sound and graphics due to custom processors that kept its meagre 8MHz CPU and 1Mb of RAM clipping along nicely by handling most of the work of drawing and making music.
I started with an A500 with exactly that spec, though I replaced the CPU to a 10MHz 68010 and thought I was king of the world. That was mostly just for games. Later I bought an A1200 with 2Mb of RAM and a 68020 CPU to which I was able to add a 20Mb Hard Disk and a universe striding 8Mb of additional RAM.
It was on this machine I that wrote the first program I'd ever written just for me, not for an assignment, or typing something in from a magazine, but to scratch a real itch.
I connected the Amiga1200 to my 386 Windows PC using a null modem cable to join their serial ports, and I wrote a small Windows program and a small Amiga tool to allow me to drag and drop files onto an icon and transfer them between computers. On the PC I used TurboC and on the Amiga, I used a C compiler called DICE.
That Amiga, along with all the boxes, disks, accessories and expensive developer documentation ended up in the attic of my then girlfriends father. I assume it's still there, hidden in an attic in a council flat in Musselburgh. And life moved on. PCs got bigger and better, I got a job, and I forgot all about that machine.
Until last month, when I saw this on my friend Graham's blog:
It's Smalltalk. For Amiga. It was made by following the instructions in the Blue Book: Smalltalk-80: The Language and Its Implementation.
Graham Lee
I love Smalltalk. I've never had cause to use it for anything real but its always occupied a huge space in my brain as something fundamentally different and perspective-altering on my journey of learning about programming. So writing a new Smalltalk implementation seemed interesting, but on an Amiga? Suddenly it all came rushing back and I remembered everything I had loved about it.
So I have been playing along on an Amiga Emulator, I had one abortive attempt with an A1200 I bought on eBay and then passed on, and I'm now awaiting a cleaned up and refurbed Amiga1200 from AmigaPassion.
I've spent a bunch time fiddling with various bits and pieces and figured maybe that gives me a good excuse to try and restart this blog.. to document what I've been doing. Along the way I've learned how to use a CompactFlah card as a hard disk for the Amiga, and I've learned how to use that same CompactFlash card with the emulator on my Mac. I've played with a few different C compilers and discovered that sometimes its just easier to use the new thing instead of being nostalgic for the old. I've struggled to remember that cd /
is what you type on AmigaDOS to go "up", not cd ..
and that AmigaDOS predates posix.
But mostly I've tried to steer a line between recreating the Amiga experience I remember, while taking advantage of newer technology where I can.
I'm going to try and start at the beginning and the next post will be about setting up FS-UAE on the Mac (because most of the articles I could find used the windows version and there's some differences).