Some forget that the Motorola 68000 was the first truly modern processor. It was cheap enough that regular people could actually be exposed to, use, and later on own, machines with them. It facilitated the first commonplace GUI-based computers. It was designed well enough from the start that code written for the original processor can run without modification on later processors. The family gave us the first taste of a common processor that could run modern OSes with arbitrarily large amounts of memory, virtual memory, and performant multitasking years before Intel's first proper, common 32 bit processor.
In contrast, programs on the 8088 / 8086 are vastly different than on the 80286, and vastly different again than on the 80386. The 80386 came out finally in 1985, but even this processor has shortcomings (lack of atomic instructions, for example) that make it so no modern OS supports it any longer.
The Motorola 68020, on the other hand, came out in 1984 and can run fully modern OSes now, in 2024, forty years later.
Whereas much more modern processors like the Intel Itanic came out more than half a decade after the release of the Motorola 68060, it has already died and been relegated to the trash bin of history (with gcc removing support for it recently), whereas m68k has llvm / clang support, excellent support in gcc, a huge following in the retro communities, new products based on them, and a thriving platform, the Amiga, that has never stopped making software for these chips.
>The Motorola 68020, on the other hand, came out in 1984 and can run fully modern OSes now, in 2024, forty years later.
I'd place the cutting point at 68010, which solves a virtualization flaw in 68000 (unprivileged move from SR) and can support virtual memory (can recover from bus error).
However, it'd be difficult to argue that it's actually all that useful ;)
On the other hand, an '020 or '030 system can be quite useful. I compile and run lots of software, including sendmail with TLS, on a Mac LC III+ with a 33 MHz '030 and 36 megs of memory.
>There is actually a modern OS (NetBSD) that can run on m68010 systems:
More than one ;)
Check out the rosco-m68k (I built one of these), which is actually 68010 based. A few systems have been ported to run on it. IIRC fuzix was one of them.
Netbsd can run on 68010, but unfortunately not mmuless.
This explains what the 80386 lacked that was a large part of what made it simpler to stop supporting 80386 entirely and make 80486 the minimum for gcc:
Nick Tredennick is mentioned in the article. I read a book he wrote about his experience in the design of the IBM 370 on a chip. The lore was that it was a 68000 with different microcode, but the book makes it clear that it was a new harddware design, but incorporated a lot of the approach used when making the 68000.
Tredennick was a funny guy and so it kept the book lively, at least as compared to what one might expect from such a book. It talked about both the way the microcode was developed (he had a 5"x7" card for each 360 instruction and it contained his latest version of microcode for that instruction) and how writing the microcode was intertwined with the hardware design. For example, some particular instruction had awkward microcode, so he'd change the underlying hardware to do a little bit of special case logic for that on instruction.
In the back half was an idiosyncratic glossary of terms. I no longer have the book, but one I recall was along these lines: "Methodology: a pompous way to say method."
thanks for this. the glossary alone is pretty funny. page 350 contains the "methodology" definition references in the grandparent comment and several more.
"combinatorial logic" is cute, as is "CISC" and "chip" is epic.
EDIT: oops, I didn't notice somebody already commented on this below.
I don't think IBM made an effort to sell it, and I don't think it ran MVS, but they did make several 'Mainframe 370s' board sets that would fit into a PC. The boards had 68k processors on them + IBM logic chips to run 370 instructions.
Mentioned?
He was a designer on the 68000, the system 370, and the micro system/370, which (gasp) used 68000 chips. ( "Heavily microcode modified. Heavily.)
Now, I do not know about the transition from the 370 on a chip to the XT/370.
Harry L. "Nick" Tredennick was an American manager, inventor, VLSI design engineer and author who was involved in the development for Motorola's MC68000 and for IBM's Micro/370 microprocessors.
In 1982 I was in love with the 68000. I built a 10 MHz wirewrap board that had 48 chips from memory and used a 68010 chip. It had 4K static ram. My main computer was a Heathkit Z80, 2 MHz. I had to write an assembler for the 68000 in Pascal, my brother built an eeprom programmer. Using my assembler I wrote a minimal monitor to transfer code from the Z80 via a parallel port and execute it.
To talk to the 68000 I had to build a parallel port board, which I made by designing a board with tape strips and photo lithography and etching. It was single sided.
When it came to testing it. The parallel port board didn’t work, I surmised that it was transmission line problems so I added rs232 driver chips to the board. This approached worked.
In order to use the parallel port board I had to change the I/O space mapping of the H89. This was controlled by fuse link proms. I had two of these I ordered from the states. But first we had to build a fused link prom burner and write a program that ran on a Motorola 6800 D2 evaluation kit to control the burner. Luckily this worked on the first run.
Then eventually. The small bootstrap program for the 68000 also worked on the first run. Phew!
We were blown away by the speed of this thing. But I could only run small programs on it in 4K.
So… I then started to design and build a 256K memory board that used a Texas Instruments dynamic memory controller. Unfortunately this never worked at all.
In hindsight I’m kinda amazed I got as much to work as I did. Consequently my scores at University were not that good that year and I had to do a repeat year.
And horror of horrors when I moved from New Zealand to Europe my parents moved house and threw this and much more away. Gasp… well, I guess I had been away for more than 10 years :-(
In contrast, programs on the 8088 / 8086 are vastly different than on the 80286, and vastly different again than on the 80386. The 80386 came out finally in 1985, but even this processor has shortcomings (lack of atomic instructions, for example) that make it so no modern OS supports it any longer.
The Motorola 68020, on the other hand, came out in 1984 and can run fully modern OSes now, in 2024, forty years later.
Whereas much more modern processors like the Intel Itanic came out more than half a decade after the release of the Motorola 68060, it has already died and been relegated to the trash bin of history (with gcc removing support for it recently), whereas m68k has llvm / clang support, excellent support in gcc, a huge following in the retro communities, new products based on them, and a thriving platform, the Amiga, that has never stopped making software for these chips.
Quite an impressive architecture!