68020 motherboard for RC2014

441 views
Skip to first unread message

Bill Shen

unread,
Jan 28, 2020, 9:06:07 AM1/28/20
to retro-comp
 I found a bunch of 68020 and 4 or 8 meg DRAM SIMM72 that I bought in electronic surplus sales, probably around 2008 financial crash when many business closed.  I'm thinking of a 68020 motherboard consists of 68020, CPLD, DRAM and 3 or 4 RC2014 slots.  The slots are for RC2014 ROM, serial, CF boards.  I figure people here probably have a number of extra RC2014 boards and may even have 4/8 meg DRAM or 68020, so you may be interested getting a motherboard with the CPLD populated and programmed and then add your own part to build a CP/M68K capable 68020.  Thoughts?
  Bill

Message has been deleted

Bill Shen

unread,
Jan 28, 2020, 1:17:02 PM1/28/20
to retro-comp
Did a quick exploratory design.  It fits in 3 RC2014 slots.  I can assemble and program the SMT CPLD first and the remaining components completed by the end users.  Quite a bit of flexibility in DRAM, it should handle 4/8/16/32/64 meg SIMM72.  It boots off the RC2014 EPROM and talk to outside world with SIO and run CP/M68K with CF board.
  Bill

On Tuesday, January 28, 2020 at 11:15:39 AM UTC-7, Bill Shen wrote:
Did a quick exploratory design.  It fits in 3 RC2014 slots.  I can assemble and program the SMT CPLD first and the remaining components completed by the end users.  Quite a bit of flexibility in DRAM, it should handle 4/8/16/32/64 meg SIMM72.  It boots off the RC2014 EPROM and talk to outside world with SIO and run CP/M68K with CF board.
  Bill
MB020_scm_preliminary.pdf
mb020 exploratory.jpg

Tom Szolyga

unread,
Jan 28, 2020, 5:00:41 PM1/28/20
to retro-comp
Hi BIll,

I am willing to give up one slot to put the EPROM and a MC68681 on the board.  One issue with a RC2014 CF Card interface is the timing difference between a Z80 and 68020 when doing Read/Write cycles to the card.

Tom

Bill Shen

unread,
Jan 29, 2020, 9:25:22 AM1/29/20
to retro-comp
The intent is to generate Z80-like signals using the CPLD so the RC2014 bus has Z80 timing compatible signals.  RC2014 RAM/ROM/SIO/CF should all work without modification, however the ROM needs to be reprogrammed to boot 68020 code.  I thought it may be a cheap way to experiment with 680x0 for people with extra RC2014 boards.
  Bill

Bill Shen

unread,
Feb 3, 2020, 9:41:22 PM2/3/20
to retro-comp
My 68020 motherboard is at JLCPCB.  It was 85% completed Saturday, but then it just stopped.  Must be crazy chaotic out there.
  Bill
mb020_r0.png

Bill Shen

unread,
Feb 12, 2020, 12:29:12 AM2/12/20
to retro-comp
Received the pc boards from JLCPCB this afternoon.  Decide to work on MB020 first.  Populated with 16 megabyte DRAM and use Karlab's switch ROM module, 13C, as the boot ROM for MB020.  The first test is a simple NOP test and it appears to be working.  I started a homepage for MB020 here:
https://www.retrobrewcomputers.org/doku.php?id=builderpages:plasmo:mb020

The development plan are:
* Memory test for 16 meg DRAM
* Add a RC2014 SIO2 board to communicate with terminal emulator
* A monitor for 68020
* Add a RC2014 CF interface
* Porting CP/M68K

  Bill
DSC_56280211.jpg

Bill Shen

unread,
Feb 12, 2020, 10:45:26 AM2/12/20
to retro-comp
Making good progress on MB020.  Add Karlab's MC68B50 serial board (32b) and it is talking to console and passing memory diagnostic.

Sadly I have real chores to do for the remaining of the day.
  Bill


DSC_56310212.jpg

Bill Shen

unread,
Feb 15, 2020, 11:08:46 AM2/15/20
to retro-comp
Back to MB020 work.  RC2014 ROM is 8K in size, so 68020 monitor needs to be cut down to fit.  The monitor is up and running.  I can load program and run.  Add a "wall clock" feature that display the time whenever "help" command is issued.

Loaded Lee Davison's EhBasic for 68K and run the ASCIIART benchmark.

I'm sure there are many bugs, but I'm anxious to try out CP/M68K using Karlab's Storage Module (#10e).  This is what a fully populated MB020 looks like:  16meg DRAM in front, 8K ROM (Karlab #13c) in first RC2014 slot, 68B50 I/O (Karlab #32b) in 2nd slot, CF disk in last slot (Karlab #10e).  68020 is running at 14.7MHz, it is capable of 22MHz.  Serial port interrupt is enabled.

  Bill
mb020_mon_ehbasic.jpg
DSC_56340214.jpg

Steve Crompton

unread,
Feb 15, 2020, 3:21:55 PM2/15/20
to retro-comp
Hi Bill,

can you upload the asciiart file please, I would like to run it on my 68000 system

Regards
Steve

Bill Shen

unread,
Feb 15, 2020, 7:35:48 PM2/15/20
to retro-comp
Steve,
Here is the asciiart file:

10 FOR Y=-12 TO 12
20 FOR X=-39 TO 39
30 CA=X*0.0458
40 CB = Y*0.08333
50 A=CA
60 B=CB
70 FOR I=0 TO 15
80 T=A*A-B*B+CA
90 B=2*A*B+CB
100 A=T
110 IF (A*A+B*B)>4 GOTO200
120 NEXT I
130 PRINT " ";
140 GOTO 210
200 IF I>9 THEN I=I+7
205 PRINT CHR$(48+I);
210 NEXT X
220 PRINT
230 NEXT Y

Bill Shen

unread,
Feb 16, 2020, 10:39:10 AM2/16/20
to retro-comp
I am able to get CP/M68K running on MB020.  The setup consists of MB020 with 14.7MHz clock, 16 meg SIMM, 8K ROM (Karlab #13c) in first RC2014 slot, 68B50 I/O (Karlab #32b) in 2nd slot, CF disk in the last slot (Karlab #10e).   Unfortunately the CF interface does not operate reliably and a small modification is required.  This is actually not unexpected; I was worried about the greater data bus capacitance of a fully loaded motherboard may cause greater ground bounce when a modern, fast CF disk is driving the bus.  The ground glitch clocks out extra byte of data from the CF data FIFO and messes up all subsequent reads.  I'm not picking on your CF design, Karl, it is a known problem for most of the existing RC2014 CF designs and I've been worrying about it for a while.  The simplest fix is adding an RC filter (100 ohm, 100pF) to the CF read line which is what I did.  Now it is operating reliably with the no-brand CF disk shown in the picture.  Karl is familiar with that disk because he has 200 of them and so do I.  Unfortunately, this means the design is marginal, so there will be CF disks that won't work even with this modification.  I'll need to do more testings to find out the list of suitable CF disks.
  Bill


CF_modification_for_MB020.jpg

Steve Crompton

unread,
Feb 16, 2020, 12:35:52 PM2/16/20
to retro-comp
Thank You Bill

Karl Albert Brokstad

unread,
Feb 16, 2020, 2:52:53 PM2/16/20
to retro-comp
Hi Bill
I am thankful for suggestions improving the storage module.
The storage module is crudely designed, but when it works it works.
I am however trying to make the module work more reliable, and have redesigned a new experimental module (10g)
Its in production (75%) and I hope to receive it next week.
The modification you have made is very neat and I take the liberty to implement it the next iteration of the experimental design (10h).

Your work with the 68020 and 030 is very impressive but too complicated for my little brain.
There is a guy who has recreated the Amiga 500+ PCB board. I was never an Amiga fan since I had the competing Atari ST. 
If someone can make a Atari ST/TT compatible PCB, Im am interested :). 

Karl

Screen Shot 2020-02-16 at 20.42.15.png


Tom Szolyga

unread,
Feb 16, 2020, 3:22:56 PM2/16/20
to retro-comp
Thanks Karl!  I too would like a 100% reliable CF interface.  My current board is about 80% reliable on a Z80 system and about 40% reliable on a 68K system.  

Thanks Bill!  Using the flip flop to delay the /RD signal to the CF Card is a good, simple solution.

Best Regards,
Tom

Steve Crompton

unread,
Feb 16, 2020, 3:31:57 PM2/16/20
to retro-comp
HI Bill,

asciiart now downloads and runs great on my 68HC000 16MHz system, I have installed TeraTerm and can now copy and paste BASIC code into the terminal window - joy :-)

Do you have or know of any other useful BASIC programs out there I could try with EHBasic

Regards
Steve

On Sunday, 16 February 2020 00:35:48 UTC, Bill Shen wrote:

Bill Shen

unread,
Feb 16, 2020, 10:22:47 PM2/16/20
to retro-comp
Steve,
I assume you've already checked EASy68K for EHBasic examples?  Lee Davison was active on 6502.org, in fact, there is a dedicated subtopic on EHBasic, so I'm sure there are many examples there.  Even though it is for 6502, I believe many code will work with 68000 version of EHBasic.
  Bill

Bill Shen

unread,
Feb 16, 2020, 10:38:04 PM2/16/20
to retro-comp
Karl,
I think you have the right idea experimenting either resistor termination for the data line or 74HCT245.  I had a version of Z80MB64 that has similar layout to explore a possible problem with CF.  Turned out that was due to a different issue unrelated to CF interface, but I did tried out both resistor termination as well as 74HCT245.  With flip flop delay plus RC filter for /RD of CF interface, I am able to get 100% CF disks to work on Z80 systems.  For reasons I still don't understand, 680x0 systems have much more problems with CF interface even with all the filtering, delaying and data bus termination, many CF disks still do not work with 680x0 systems.  I'm working on that.
  Bill

Bill Shen

unread,
Feb 16, 2020, 11:39:16 PM2/16/20
to retro-comp
Karl,
I've been testing your CF card (#10e) with the 100 ohm + 100pF RC filter.  It is quite robust, passing some of my more challenging CF disks.  It is not 100%, but 90% of CF disks.  I think you should try out the modification and see if it will work with your problem disks.
  Bill

Steve Crompton

unread,
Feb 17, 2020, 4:33:45 PM2/17/20
to retro-comp
Hi Bill,

Thanks for the tip - but I ended up using the internet wayback machine to look at Lee Davidson's original site for EHBasic - couple of examples there but nothing that interesting really, however I have used them to verify I can copy and paste basic code into the console window and download it without losing characters to my 68K board

Bill Shen

unread,
Feb 17, 2020, 11:51:10 PM2/17/20
to retro-comp
Steve,
I found a Startrek program for EhBasic, but I think it is buggy.  This also takes a long time to load via cut/paste.  This is where Load/Save functions are useful. 
  Bill
startre1.bas

Steve Crompton

unread,
Feb 18, 2020, 4:30:28 AM2/18/20
to retro-comp
Thanks Bill

Yeah I still plan to add CP/M 68K so I can get Load/Save functionality, I don't have much free time and so I'm STILL on documentation of the projects journey so far (I am actually creating a website for it), however every now and again I get bored with that and inch forward to the next hardware/software milestone. I have been able to get code running from ROM's (Tutor Monitor & EHBasic) and the hardware I have is rock solid even using 25MHz cpu clock, however downloading stuff using cut and paste via terminal window has always been an issue - I was using PuTTY as terminal on PC but now switched to TeraTerm so that I can throttle character transmission speed to 68K system hence the need to test a fix with something - I used basic code to test because if characters dropped during the download, running the program usually resulted in a syntax error - crude pass/fail indication. I have actually doubled the serial port speed to 38400 now and added an end of line delay in TeraTerm and all seems good. I got your CP/M-68K simulation in Easy68K SIM working so next is changing my BIOS to use the Trap I/O functions but first I must to be able to download S-Record files reliably so I don't have to keep burning ROM's to test code changes.

Bill are you ok with me including your CP/M-68K SIM files on my website ?

Bill Shen

unread,
Feb 19, 2020, 9:34:44 AM2/19/20
to retro-comp
Steve,
Please feel free to include my published works including the CP/M-68K SIM files in you website.  I publish all my works just so people can refer, reuse, and improve them as they see fit.
  Bill

Steve Crompton

unread,
Feb 19, 2020, 3:15:00 PM2/19/20
to retro-comp
Thanks Bill

Bill Shen

unread,
Jul 31, 2021, 10:23:06 PMJul 31
to retro-comp
The 2-layer pcb design of MB020 appears to have grounding problems.   Some SIMM modules generate more noises than others and failed memory diagnostics.  I can mitigate the memory diagnostic problem somewhat by adding several ground wires, but that's still not enough for some boards.

I noticed recently JLCPCB is offering five 4-layer pc boards (100mmX100mm) for $8.  That's just too good to pass up, so I redesign MB020 to give it internal power and ground planes.  This has the added benefit of freeing up more room for signal routes making better, shorter connections.   This is my first 4-layer pc board since my retirement.

The fabrication took 4 days instead of the normal 2 days for 2-layer pcb, so it took 10 days from submitting the designs to receiving the boards.  The boards are beautifully made and most importantly, it works!
  Bill
DSC_66190731.jpg
Reply all
Reply to author
Forward
0 new messages