Arduino Forum

Topics => Device Hacking => Topic started by: dnar on Oct 18, 2014, 08:53 am

Title: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 18, 2014, 08:53 am
I thought I would share this little project with you to show how useful the Arduino can be to quickly solve problems.

I picked up this S-100 computer system (Z80 CPU) earlier this year in a non-working state. it comprises the following S-100 cards:

1 x Z80 Master CPU card running at 2Mhz
1 x Video card with composite output (memory mapped)
4 x 16kB SRAM boards for a total of 64kB
1 x VersaFloppy controller card
1 x Cassette interface

The system did not run at all and I was going around in circles trying to find the issue(s). So I stood back and thought if I could test each card individually then that would be more logical, and right I was just about every card had at least one fault!

So my plan was to use a blank S-100 card that I had to build a test CPU to enable testing of the memory cards and video output card. The video output card is memory mapped, so writing to memory locations would create a "test image". Doing so I managed to repair the video card quickly and move onto the 4 SRAM cards, which each had faulty chips. A total of 128 memory chips are used across the four boards so a few dud chips are to be expected considering their age!

Once I had validated the VDU and SRAM cards I removed my test Arduino CPU card and refitted the original Z80 CPU card which was amazingly easy to get going now with all other cards working. Turns out the monitor ROM had been plugged in the wrong way around! Reversing the ROM left me with a working S-100 system and a flood of memories of my early computing  years.

I used the Mega 2560 to drive the data and address busses and the various S-100 control signals. The sketch provided a familiar looking monitor program that I knocked up over a couple of evenings. This monitor allows me to read and write memory locations and to test specific blocks of memory using various bit patterns. Simples. If anyone wants the code, I can post it up also.


Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 18, 2014, 08:55 am
A few more pics.

Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 18, 2014, 12:11 pm
Man that takes me back, I love that stuff, those were the days, when men were men (and had to be to lift a computer :)).

I've written a few monitors over the years, even did one for the AVR not that long ago.

______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 18, 2014, 12:50 pm

Man that takes me back, I love that stuff, those were the days, when men were men (and had to be to lift a computer :)).

I've written a few monitors over the years, even did one for the AVR not that long ago.

______
Rob

Thanks Rob.

The irony is the power of the Arduino Mega compared with this Z80 system.... All in a single chip!
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 18, 2014, 05:07 pm
I cut my teeth on Z80 assembler and for years I've though of building a retro board with all my old favourites, CPU, PIO, SIO, CTC, etc. It would be a lot of fun but really, why bother...still the idea appeals all the same.

______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 19, 2014, 05:20 am

I cut my teeth on Z80 assembler and for years I've though of building a retro board with all my old favourites, CPU, PIO, SIO, CTC, etc. It would be a lot of fun but really, why bother...still the idea appeals all the same.

______
Rob

Same here, Z80 assembler is how I started out. I designed an all in one embedded board that I used in a few projects. Love the Z80 instruction set. I have written multiply and divide libraries too.
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: Riva on Oct 19, 2014, 08:47 am

Same here, Z80 assembler is how I started out. I designed an all in one embedded board that I used in a few projects. Love the Z80 instruction set. I have written multiply and divide libraries too.

Though I started on the Z80 my favourite CPU has to be the Motorola MC68000
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 20, 2014, 01:58 am
Man I used to drule over the 68k data sheet, and that "aircraft carrier" package, they don't make 'em like that any more :(

I had a product on the market using a Z8, that was a real nice controller. And then another with the 64180, now that was a Z80 on steroids.

Oh well, time passes. I'm currently working with the LPC1549, what a weapon and TBH I can't see myself going back to a Z80 even as a trip down memory lane. The only problem with the new chips is that by the time I get proficient with one it's out of date. :)

______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 21, 2014, 02:16 pm
dnar, your pics have disappeared (courtesy of the recent forum upgrade I guess), any chance you can repost them?

______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 23, 2014, 03:00 pm
dnar, your pics have disappeared (courtesy of the recent forum upgrade I guess), any chance you can repost them?

______
Rob
They are visible to me. Fixed?
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 23, 2014, 03:40 pm
Thanks, I had a mate who was interested in seeing them.

______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: robwlakes on Oct 24, 2014, 06:25 am
Hi Guys,
I have a similar romantic (as I just love those 70-ish things) aspiration to rebuild a SYM-1 (sorry guys, but 6502 is a grandparent of ARM :) ). It is a slightly later system than the S-100 bus & 8080 processors (ie one self contained board, good built in software, and plenty of I/O, sort of like an Arduino grand parent really).  I have (re-)acquired a SYM-1 board courtesy the Internet and 2 of 32k by 8bit chips to fully populate the memory space.  I also intend to use the Arduino products to emulate the audio cassette interface to the original board, as I no longer have a working cassette player/recorder (what a surprise!!).  I am tempted to do the TTY interface as well through an Arduino Mega + touch screen etc.  Using a modern FTDI chip I will having it with a a USB interface as well.  However I am held up with a huge technological hurdle haha, that is 22pin two way connectors at 0.156" spacing to do my memory expansion etc(I have ordered them but they are on a "Slow Boat from China" somewhere). I love the challenge of then having my SYM-1 hand crafted assembler ending up on a 4Gig SD card courtesy Arduino technology.

Great post...dnar

Cheers, Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 24, 2014, 05:17 pm
Nice. I have been pondering an emulated cass interface too, by modifying the monitor rom casette read and write handlers to use zmodem....

FYI that S-100 system is based on the DG640 Z80 card, 640 VDU card as designed and built by Applied Technology here in Australia. In fact this board set was the precursor to the first Microbee home computer that is now legendary.

Hi Guys,
I have a similar romantic (as I just love those 70-ish things) aspiration to rebuild a SYM-1 (sorry guys, but 6502 is a grandparent of ARM :) ). It is a slightly later system than the S-100 bus & 8080 processors (ie one self contained board, good built in software, and plenty of I/O, sort of like an Arduino grand parent really).  I have (re-)acquired a SYM-1 board courtesy the Internet and 2 of 32k by 8bit chips to fully populate the memory space.  I also intend to use the Arduino products to emulate the audio cassette interface to the original board, as I no longer have a working cassette player/recorder (what a surprise!!).  I am tempted to do the TTY interface as well through an Arduino Mega + touch screen etc.  Using a modern FTDI chip I will having it with a a USB interface as well.  However I am held up with a huge technological hurdle haha, that is 22pin two way connectors at 0.156" spacing to do my memory expansion etc(I have ordered them but they are on a "Slow Boat from China" somewhere). I love the challenge of then having my SYM-1 hand crafted assembler ending up on a 4Gig SD card courtesy Arduino technology.

Great post...dnar

Cheers, Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 25, 2014, 12:00 am
I remember AT, and of course the Microbee. I did a commercial product based on the uBee, all in Z80 assembler. and also an extension board with SIO/MAX232 (so it has a real serial port) and PIO plus EPROMs for several programs.

Did you know the Microbee has been resurrected?

http://www.microbeetechnology.com.au/premiumpluskit.htm (http://www.microbeetechnology.com.au/premiumpluskit.htm)

Where in Oz are you dnar?

______
Rob

Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: rockwallaby on Oct 25, 2014, 01:56 am
Thanks for the article and pics dnar, brings back many memories, of the 1Kx 1bit sort  :)

I couldn't pick what sort of system that was, but I did a bit on Cromenco S100 systems back in the 80's.
Cromemco - Wiki (http://en.wikipedia.org/wiki/Cromemco).

Like Rob said, in those days, men were men, and I mention to him the other day that I recall flying into Melbroune with my work colleage to pick up a S100 system built out in Box Hill area in east Melbourne. I mean, we physically needed both of us to carry the darn thing. It sat on the seat next to me on the flight back home, it was considered that precious.

Ah, Microbee's, again, many years these things were part of my staple diet.
I once repaired a Microbee for a chap (Head of Library Services at the Tas Uni, called TSIT in those days) and in return was offered a quality vintage port. That bottle of port has travelled around dusty Australia with me. Two weeks ago I decide to give this 30 year plus botle of vintage port to a family member. I best go round there to try it I guess  :-[

Those sure were the days when you could see the pins on chips and count them.
I did a bit of S100 wire-wrapping back then as well, and these things were works of art with dedicated colours for each of the buses, data, address and control. Also some custom Z80 boards during my work at the Australian Maritime College here in Launceston.

Ah, well, back to today's reality I guess.
You did an outstanding job at getting that beast to work dnar.
Yeah, where abouts in Aus are you?
____
Paul
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 25, 2014, 11:20 am
Hi guys, thanks for your comments.

I am in Perth WA.

BTW I remember looking at this very board set in 1979 when I was just 15, drooling over them and simply not being able to afford them ($800). Hence I jumped when someone on my local hackerspace email group posted it up for salvation or trash. I could not stand by and watch it trashed!

My first computer was a kit from 1977, the SC/MP based Miniscamp with a whopping 256 bytes of SRAM!  http://www.chookfest.net/computers/miniscamp.html

I am eyeing off one of several IMSAI 8080 clone kits....

Just like HiFi (with the demise of real HiFi amps, turntables etc.) computing has lost the romance of the early days....
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Oct 27, 2014, 10:35 am
My first real computer was an Exidy Sorcerer

http://oldcomputers.net/sorcerer.html (http://oldcomputers.net/sorcerer.html)

Get a load of that mother board. I never had an S100 expansion chassis but did make a bank-switched EPROM board that plugged into the cartridge expansion slot so I could load my most used programs without a tape.

Another common hack was to piggy back a second set of DRAM chips on top of the main bank, bend up all the RAS (or was is CAS?) pins. solder a wire to them all and also to a spare output of a '138 decoder. That doubled your RAM.

If I could find one for low $ I reckon I'd buy it just for old-times sake.




______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Oct 27, 2014, 12:49 pm
My first real computer was an Exidy Sorcerer

http://oldcomputers.net/sorcerer.html (http://oldcomputers.net/sorcerer.html)

Get a load of that mother board. I never had an S100 expansion chassis but did make a bank-switched EPROM board that plugged into the cartridge expansion slot so I could load my most used programs without a tape.

Another common hack was to piggy back a second set of DRAM chips on top of the main bank, bend up all the RAS (or was is CAS?) pins. solder a wire to them all and also to a spare output of a '138 decoder. That doubled your RAM. Mine included the RAM expansion too.

If I could find one for low $ I reckon I'd buy it just for old-times sake.




______
Rob
I owned an Exidy from around 1988 to 1992. Complete with a huge external chassis with 2 x 8" Ye-Data double sided double density floppy drives and 1 x 5" DSDD Mitsubishi drive! I think I still have the box of floppies with CP/M, Wordstar, Basic etc.

I wrote a n invoicing, ordering and stock management package in Basic to run my first bench tech business. Man, that Scorcerer ran hot! Beast.

I still have in storage a BigBoard single board CP/M system with 2 x 8" drives. The board was designed in Australia and included an EPROM programmer with ZIF socket right there on the board! Its cool, ifmit receives a CR on the first serial port after boot it redirects the console to that serial port.
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: graynomad on Nov 03, 2014, 10:31 am
I remember the Big Board, it was a real weapon in its day.

_______
Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: rockwallaby on Nov 04, 2014, 09:23 am
Yep, I had a Bigboard (version 2 I think) system myself. I made a special frame for it that rolled about on castor wheels, much like a small 2 draw filling cabinet.
I recall it having a single 8" drive, single sided I think and a single 5.25" Ye-Data drive.
Those were the days of CP/M and 640kB of RAM.
____
Paul
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dnar on Nov 04, 2014, 10:51 am
Yep, I had a Bigboard (version 2 I think) system myself. I made a special frame for it that rolled about on castor wheels, much like a small 2 draw filling cabinet.
I recall it having a single 8" drive, single sided I think and a single 5.25" Ye-Data drive.
Those were the days of CP/M and 640kB of RAM.
____
Paul
64kB of RAM actually! Z80 had just 16 bit address bus. Yeah mine was like that too. The linear PSU was a beast! You could arc weld with it.

I had a Bondwell 14 luggable too, running CP/M 3 which supported banked memory. It had, wait for it, 128kB RAM!
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: enrlaz on Jan 17, 2015, 07:09 pm
OT

Hi guys,
I have heard of Ferguson Bigboard and I'm thrown here.
Since I am a fan of those old boards may you give me some pictures of your precious objects and of course every your comment or memory will be really interesting and accessible freely to my site www.vintagesbc.it (also in English language).

Make as you prefer open a new thread on this forum or answer me to my private email.
enrico dot lazzerini at email dot it

Thanks so much.

Enrico - Pisa - ITALY
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: dally on Dec 12, 2015, 11:55 pm
interesting topic
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: robwlakes on Dec 22, 2015, 01:13 pm
Yep I had a SCMP system too.  An original 110Baud TTY prototyping version that had 512bytes ROM and 128 bytes of RAM. Bought from National Semiconductor in Stud Road Melbourne for about $75.  A large amount for a poor starving uni student.

So going into "old timers brag mode" I used a hardware UART at the time circa 1977 to decode pure binary mentally into hexadecimal from the UART into assembly code.  Later I programmed the thing to produce an editor or monitor program as we called them back then, that could edit memory from a software scanned  hexadecimal keyboard and show the results on a 6 digit multiplexed display (AAAA DD) and also calculate relative branches all within 256 bytes of EPROM.  A 1702A EPROM from Intel if I remember correctly.  I actually telephoned Jim Rowe asking him if he was interested in this superior SCMP system, as I could see the MiniSCMP with its toggle switches and binary leds was missing the microprocessor point completely, however it fell on deaf ears.

I later moved on to the Synertech SYM-1, then the BBC 32k Model B, then the ARM based RISC OS, and still the proud owner of a working Strong ARM RISC-OS machine, and finally numerous Raspberry-Pis. I have been forced to use Intel products for most of my later working life, but now I am now very proud to be using mainly ARM based equipment (ie mobile phone and tablets).  The SCMP and 6502 lineage of lean and mean CPU performance has been largely responsible.

The BBC 32k Model B left the Apple II for dead.  It use of interrupts and relative addressing to access system I/O, language mapping etc was revolutionary.  It is a delight to see the recognition of the ARM designers respect for the economy and beautiful symmetry of the Mostek 6502 CPU.  The Acorn programmers produced some beautiful code with the 6502, it hardly surprising they should come up with its worthy successor, ARM.

 I still have the HEX code for the SCMP monitor if any one is interested, all 256 byte of it!!! :)

I am currently using my Mega 2560 board to program EPROMs for my SYM-1 system.... The Z-80 S100 projects mentioned above inspired me to do it!!!

Cheers, Rob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: jelle007 on Oct 20, 2018, 03:22 am
This is exactly what i need in order to get my old IMSAI 5000 up and running again after 34 years
So please can you post the connection between arduino and S100 bus and also the sketch
thx
jelle.vanderlinde@gmail.com
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: boblark on Mar 11, 2019, 01:01 am
I realize a lot of time has gone by since dnar posted his report.  I too have an IMSAI 8080 that needs life.  Is the .INO and wiring info available anywhere?  Thanks, Bob
Title: Re: Mega 2560 used to debug a 1978 S-100 Z80 system
Post by: Turnimator on Mar 26, 2019, 08:13 am
I had a CompuPro 8-16 (http://www.old-computers.com/museum/computer.asp?c=651) with double 8" floppies, and a Viasyn 286 (http://www.s100computers.com/Hardware%20Folder/CompuPro/CPU-286/CPU-286.htm), both running Digital Research Concurrent DOS.
My development system was a Computer Innovations C-compiler, and a large Facit (http://oldcomputer.info/pictures/gal/Museum/Terminals/Facit_4440/002.jpg) 9600 baud (you're supposed to gasp) terminal capable of displaying Wordstar files without locking up (new gasp required).
Though the 386 ushered in the demise of the S-100 bus, Concurrent DOS lived on for some time, renamed to Real32.

Thank you for letting me relive those memories. Now, I'll wipe a tear from the corner of my eye and continue chasing that PCINT. (Wow. It has an FMUL instruction! That's mainframe capabilities.)