OT? What 8bit Microprocessors still available new?

From: J.C. Wren <jcwren_at_jcwren.com>
Date: Thu Feb 19 19:19:31 2004

    If I were going for audience appeal, and you don't plan to be
booting CP/M or some other free readily available O/S from the get-go,
I'd aim for something that was was well supported. For me, SIMH was a
powerful tool in getting the Z80 SBC up. I'd compile the BIOS under the
SIMH Z80 emulator running CP/M, upload it to the Linux box, and download
it to the ROM emulator. Turn around time was very quick.

    Problem is, Z80's aren't real interesting. There's lots of
software, but they're kinda old hat. Homebrew 6502 systems seem a lot
less common, making thier interest level, for me, higher. 1802's even
more so. I would favor a CPU that has a static core. Being able to toy
with the clock is helpful, especially in the early stages of bringup.

    While concievable that you could write a disk-based OS on a 8031,
the architecture doesn't lend itself well to that. I'd pick something
that has a real stack, with a real von-Nuemann architecture. Yes, you
can play games with an 8031 and overlap the code and data space by
AND'ing /PSEN and /RD, but the instruction set still lacks a real stack,
and you're limited to 1.5 16 bit registers (I'm counting the MOVX _at_P2 mode).

    Obviously, building something with an external 32 bit bus is going
to be more work than a 8 bit or 16 bit bus. 16-bit address and 8 or 16
bit data would be middle of the road. Are you going to stick to 5V
logic, or 3.3V? With 3.3V logic, you've got a lot more available
choices, these days. If you wanted to play with an ARM core, as far as
I know, there are no 5V ARM cores. Or if there are, they're not very

    One neat part is the Philips LPC2106. 128K bytes FLASH, 64K bytes
RAM, all on chip. ARM core, timers, 2 serial ports, GNU tools readily
available. But it's SMT only. And 3.3V I/O with a 1.8V CPU core.

    Something like a 6809 would be fun (I like those). When you're
done, you could boot OS/9 or Flex/09. If you want to write on the bare
metal, it's got a nicer instruction set than the Z80, but lacks
registers. You make up for that with more addressing modes, and better
relative branches. With a 6809E, the bus interface doesn't get much
easier. The original 6809 was a lot more trouble to work with because
of the clock requirements.

    1802s are fun, too. The have a really neat instruction set that's
way ahead of it's time, in some respects. It lacks a real stack,
however, so you have to use 7 instructions are so to build a real stack
in external memory. There's a fair amount of software, but CPUs are
going for ~$10/ea, and the commonly availabel CDP1802ACE is only a
3.2Mhz part. If you want the 5Mhz part, you need a CDP1802BCE, and
those are going for a lot more money. The max specs say you can run a
1802 at 6.4Mhz with 10V, but the > 5V parts are less common. You also
have to use all CMOS glue logic. Single stepping and using switches to
enter/edit memory is trivial. The CPU design supports that pretty much
instrinsically, with little extra logic needed.

    Then there's the venerable 6800. Lots of software, lots of
emulators, and OSs are available. Common, easy to find. Sorta like the
Z80, though. It's common.

    You could build a 68000 system. Those are pretty easy to find, have
good support, etc. 68K homebrew systems seems to be far less common
than Z80s and 6800s. I don't know what support chips you'd need/want to
make it play. I've used 68K systems, but never built my own. Slightly
on the sluggish side, if you're looking for speed. I don't think the
68Ks started getting fast until the 68030 or so. The 68020 was better,
but still no speed demon, IIRC.

    The NSC32000 would be an uncommon homebrew system. Software may be
hard to find, including emulators. I don't see a lot of 32K parts going
by on eBay, so you might be hard pressed to come up with what you need
one. Same for the Zilog Z8000.

    These are all the common 8, 16 and 32 bit systems I can recall. At
some point, trying to homebrew something like an 80286 gets to be too
much trouble. And little reward, in my book. I feel good everytime I
throw away anything x86 that's less than an Athlon 1Ghz. And even those
are getting ready to get moved to the "why bother?" list. There were
some oddities, like the 6502 Forth chip, and several other Forth
processors. I don't think I'd want anything with BASIC build in, like
the 8031AH-BASIC (you said you wanted bare metal, anyway).

    Any basic families I missed here, not counting variants like 6510s,
CDP1805s, etc?


Ron Hudson wrote:

> On Thursday, February 19, 2004, at 04:06 PM, Philip Pemberton wrote:
>> I'd be very tempted to add GPIB (aka HPIB, aka IEEE488) just because
>> it's a
>> very usable bus for connecting stuff like disc drives up.
>>> Best use would be to connect it to a PC running a terminal emulator for
>>> IO and Mass storage.
>> I'd also add an IDE interface and an 80MB hard drive - fun factor
>> again :)
> I suppose we'll have to take the busses out to an edge-card connector...
Received on Thu Feb 19 2004 - 19:19:31 GMT

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:36:43 BST