Close

How Did Kestrel Receive its Name?

A project log for Kestrel Computer Project

The Kestrel project is all about freedom of computing and the freedom of learning using a completely open hardware and software design.

samuel-a-falvo-iiSamuel A. Falvo II 10/10/2016 at 23:580 Comments

I get asked this a lot, so I figured I'd make a post on it.

Back around 2001 to 2002 or so, long before I had even my first home-brew design working, some of my online friends and I were discussing making a computer built around the 65816 microprocessor, and building it as if Commodore, Apple, Atari, Acorn, and maybe others got together, knowing this was going to be the last 8-bit/16-bit home computer they will ever make, and to come up with their collective last hurrah. Yeah, it was total pie-in-the-sky stuff: a 65816 CPU at 12MHz with 16MB of RAM, video capable of 640x480 resolution with 64K colors, a blitter, tons of sprites, 32-channel PCM audio, 8 expansion slots into which you could plug in things like hard-cards (remember those?!), Ethernet adapters, etc. It was going to be awesome!

Anyway, we needed a name for the project, so I didn't call it "my home-brew computer project" all the time. But, I wanted the name to be marketable (that is, catchy). Commodore, Apple, Atari, Acorn, et. al. all had easy to pronounce names, and no more than three syllables.(If this sounds familiar, yes, it's the same logic I used to stipulate a successful part numbering system for the Kestrel in my previous log.) Eventually, an on-line associate and game software developer named Madgarden suggested, on a whim, Kestrel. I'm not entirely sure why he chose that name, but it has stuck ever since.

And that's how the Kestrel received its name!

But, why Kestrel-3?

OK, since you (never) asked...

Fast forward to 2004, where I finally wire up a 65816 on a cheap Radio Shack (remember them?!) breadboard running at 4MHz, with 32KB of RAM, and a whopping 16 bytes of I/O space. Not even ROM. That took a fair bit of effort to get going as it was, but the proof of concept proved I could do it: I can make the Kestrel.

(I still have my tube of W65C816P-14 DIPs, a pair of W65C22 VIAs, and some 4MHz can oscillators left from those days, if you can believe it. That was back when WDC required a $100 minimum purchase.)

Moving forward again to 2007, I can finally afford my first FPGA development system. This became home to two computer designs. One, the Kestrel as envisioned back in 2001, flopped spectacularly, because I simply didn't have the experience needed to build such a crazy thing. I got flustered, and eventually canned it completely.

Around 2011, I picked it up again, this time taking the approach that I should work on the cores needed to make the Kestrel first, then add the CPU last. I'd use test-driven techniques to build the circuitry (which has never failed me since, BTW). However, bench tests can only go so far; I needed a real CPU to perform integration tests too. So I whipped up a clone of the Steamer-16 CPU from Myron Plichota, and adapted it to my needs, thus making the S16X4 CPU. After integrating this CPU and proving that it worked by pushing raw pixels on the monochrome screen (remember, I was trying to start very simple this time), I moved forward with other components necessary to make a simple computer. Over time, software and hardware accreted organically, and I ended up with a computer that actually worked, and I could call my own. I eventually started giving presentations about this computer on this computer.

At this time, I dubbed it the Kestrel-2, and retroactively re-branded my proof of concept machine the Kestrel-1.

Advance to 2014-2015 time-frame, and now I'm working yet again on another Kestrel incarnation. This one built around a 64-bit RISC-V processor, the KCP53000 (formerly Polaris). I'm reusing as many parts from the Kestrel-2 as I can to build a working 1st generation Kestrel-3 computer; however, rest assured, once this is in place, I'll have not only the platform, but also the experience, needed to finally realize the computer I had in mind back in 2001. Only this time, I'll get there incrementally, slowly, and deliberately; and, not risk having a large up-front and costly design that will inexorably lead to certain failure.

Hope this helps!

Discussions