[Coco] 16/32 bit 6809 derivative

James Ross jrosslist at outlook.com
Sat Sep 23 16:49:15 EDT 2017


I have thought about it quite a bit and I think it would be fun too!! But, it would be a lot of work.  You would want an emulator of it + the FPGA of it + an assembler, debugger, and disassembler. And then you would probably want at least a C compiler. 

But it would be cool.  

However, I disagree w/ the notion that you don’t start w/ the 6309.  The 6309 has long been accepted as a legitimate upgrade to any CoCo (even though primarily to the CoCo3) since it came out. 

So a CoCo w/ a 6309 is still 100% "a CoCo".  

I think you start w/ the 6309 and expand it and remain 100% backward compatible down to the modes and cycle timings and hardware signals.  But you add additional modes. So in a 32bit mode X, Y, S, U, PC now become 32bit registers. A/B/E/F & D/W & Q remain what they are but add more registers (perhaps you have 4+ Q registers that break down the same way they do now so you would A2,B2,E2,F2 = Q2) or something similar to that, expanding the existing opcodes as necessary… 

While the CPU was in 32bit mode you could have any number of Virtual 6809/6309 machines running for running existing DECB/OS-9 programs.  

There are plenty holes left for pre-byte expansion … a quick look at $00-$3F I see $15/$18/$1B/$38/$3E … in total I count 19 available. But you wouldn’t need that many anyway.  W/ each you have a whole new set of 255 opcodes available.  

The way I see it, the important thing is 100% backward compatibility, else I don’t see the point.  And even then you are probably not going to get many folks in the community onboard even w/ the 100% backward compatibility.  Let alone it wasn’t. 

It’s basically an exercise of “what if”… Reliving a feeling of "what if" Motorola had expanded the 6809 instead of dropping it and putting all its effort into the incompatible 68k series. (w/ the caveat that now, you have to take into account the Hitachi expansion of 6809).   

Intel (and Microsoft) got it right. They understood that backward compatibility is what was important back in the day (and to perhaps a bit lesser degree) still is today. If you are worried about elegance and symmetry or saving gates to implement the logic, then you are duplicating the Motorola mistake. 

Those are just my 2c anyway … 

James

________________________________________
From: Coco <coco-bounces at maltedmedia.com> on behalf of Joel Rees <joel.rees at gmail.com>
Sent: Saturday, September 23, 2017 12:25 PM
To: CoCoList for Color Computer Enthusiasts
Subject: Re: [Coco] 16/32 bit 6809 derivative

2017/09/23 15:26 "Gene Heskett" <gheskett at shentel.net>:
>
> On Friday 22 September 2017 23:54:02 Joel Rees wrote:
>
> > A number of people are designing MMUs for their softcore Cocos.
> >
> > I'm wondering if I'm the only one who thinks about designing a CPU
> > that implements the 6809 instruction set in 16-bit accumulators and
> > 32-bit index registers, with a 16-bit instruction set accessed by
> > pre-bytes.
>
> If going to that much trouble Joel,

If only I could.

I keep wishing I had time to write an emulator for such a CPU.That
would likely be my first step.

> how about giving it the 6309 instruction set?

As fun as that may sound, it doesn't seem like a good idea to me. The
6309 instructions would get in the way of making the design a simple
extension of the 6809, and most of the useful functionality would be
present in 16/32 bit versions of the 6809's 8/16 bit instructions.

If I'm going to go to the trouble of warp the machine code layout to
support 6309 instructions, I'd rather warp it a different direction.

It might be useful to add some meaningful features, like microcode
primitives, including full bit primitives for multiplication and division,
caching the stacks, integrating the MMU with the index registers
(properly -- not the half-baked gadgetry of the 8086), true DMA
channels (instead of blind CPU-blocking block moves), that kind of
thing.

6309 support would just get in the way.

> In modern 3.3 volt 1500 mhz silicon, it ought to be
> able to out coco3 a coco3.

Well, yeah. Of course.

> I'd love to see something like that running
> on a 4GB, 4 core rockchip running at 1.5 GHz on a rock64 card. I just
> got 2 of them, and am about to see if I can replace the r-pi-3b running
> my biggest lathe, an 11x36 Sheldon thats about 70 years old. I've not
> yet booted one, just got them yesterday but oral surgery interfered.

Ouch.

> I only need one to run the lathe.

Yeah, if I had the money and time to design this thing, it would make a
good controller for lathes and such.

But for the foreseeable future, the ARM in your rockchip is going to get
you
there a darn sight faster.

(Darn. :-/ )

> Cheers, Gene Heskett
> --
> "There are four boxes to be used in defense of liberty:
>  soap, ballot, jury, and ammo. Please use in that order."
> -Ed Howdershelt (Author)
> Genes Web page <http://geneslinuxbox.net:6309/gene>

--
Joel Rees

http://defining-computers.blogspot.jp/

--
Coco mailing list
Coco at maltedmedia.com
https://pairlist5.pair.net/mailman/listinfo/coco


More information about the Coco mailing list