[Coco] RS232 Schematics, was DriveWire survey

CoCoList for Color Computer Enthusiasts coco at maltedmedia.com
Mon May 12 07:10:08 EDT 2014


On Mon, May 12, 2014 at 1:19 AM, CoCoList for Color Computer Enthusiasts <
coco at maltedmedia.com> wrote:

> On Sun, May 11, 2014 at 10:59 PM, Jim wrote:
>
> > Any chance the Verilog/CHDL is available?  I was going to scare some up
> > for this, but I'm always excited to find already debugged HDL.
> >
>
> Sorry..it is not.  The HDL is generated from a schematic for a larger
> project (FDC emulator).
>
> Darren
>

Darren and I had similar project goals, but he got his working in a much
more elegant way.  :-)  I never got the FDC data transfer timing quite
right for NOS9, but for some reason it was fine with disk basic.  I got
tired to trying to figure it out.

In any event, all of my code and design docs are up at
https://github.com/mattstock/cococpld.  It has evolved a lot as I have
tried various things, but the design you talk about (Jim) with a bank of
read and write registers and bus IO being handled by the CPLD was
implemented and worked well.  I did a lot of my prototyping using one of
the Altera FPGA board, but the Verilog is identical. I have tried a lot of
different variations of where and how many of those register to store, but
all of them are in revision control.  Feel free to browse around,  but
https://github.com/mattstock/cococpld/blob/master/cpld/cocofdc.v should
give you some ideas.  In this case, I have 3 registers stored in the CPLD,
and the rest (including a ROM image) stored in external SRAM.

The FPGA directory is where I spent time most recently.  I modified the
code to create a virtual MPI, and since I had a lot more space in the FPGA
I moved all of the registers into the device and cleaned up the logic a bit
https://github.com/mattstock/cococpld/blob/master/fpga/cocofpga.v.

There's also code for the uC side of things in the firmware directory.

I will look at the 65SPI code you mentioned.  My designs used the CPLD/FPGA
as a SPI slave, not as a master, and so having a simple block of code that
will add that support would be nice.
  -Matt



More information about the Coco mailing list