Most retrocomputer builds seem to focus on either restoring old machines or rebuilding them from scratch. Either way, the goal is to get as close as possible to the original machine, and while we certainly respect those builds, there are other ways to celebrate the computers of yesterday, as this Z80 single-board computer nicely demonstrates.
[Ivan Farafontov]’s SBC is sort of a “Z80 that never was” build, one that would almost have been possible back in the heyday of 8-bit computing, and would have made quite a splash if it had. Most of the peripheral chips are from Zilog and would have been found in many of the Z80 machines of the day, like the TRS-80 and ZX Spectrum. Where it goes off the old-school path is with the video section, which uses an Atmel CPLD chip and a dual-port RAM to drive a VGA monitor. It still looks the part, though, with a 256×192 pixel, 16-color display. The compact video section helps keep the overall footprint of this machine pretty small, at least by the standards of the old machines. The machine is barely larger than its custom keyboard, which is populated with mechanical switches and really nice-looking custom keycaps, and everything fits into a 3D-printed case.
The demo that starts at the 4:30 mark of the video below will be a nostalgia storm for a lot of readers, starting as it does with a version of Boulder Dash that [Ivan] wrote from scratch, along with the tile editor he used to create the sprites for the game. All the design files and code are available if you want to build your own, of course. We recently featured another Z80 that never was, but [Ivan]’s machine really makes a statement with its compact size and its capabilities.
30 thoughts on “Z80 Single-Board Computer Looks Like It Could Have Been A Killer Product”
Given the era, the CPLDs would need to be merged into an ASIC.
In the second half of the 1980’s this could have been done with off-the-shelf components on a 2-layer PCB roughly the same size (except RAM chips). Using HD64180 and µPD7220 no fancy CPLDs or ASICs were needed, just some PALs or 74xx.
Of course, but it still means that it would be completely doable using period tech.
don’t you mean an ULA ?
Could an Uncommitted Logic Array by Ferranti have been an option, if it were a production design back in the day?
That’s when i started my chip design career. Out depends what was in the CPLD; if it’s just address decode, a ULA would have been ideal.
Even with the ASIC, would have had to wait a few years for a VGA monitor.
Since the late 1970s, color monitors with analog RGB inputs were available in most parts of the civilized world. We called them “TV sets”.
Many TVs didn’t actually have much better than RF.
That’s true. Especially here in Europe. SCART was late, too.
Simpler TVs merely had an UHF connector on the back.
Ok, technically, all TVs could be modded for Composite or VBS (B/W).
It wasn’t unherard of that TVs were used as simple video monitors that way.
All it needs is to bypass the tuner, essentially. Doing an RGB mod required a bit of more work, because the video amp was made for Compsoite in mind.
1. Usually an older TV was used for video games and home computers (phosphor burns were a real problem).
2. Most TVs of that era were “hot chassis”, i.e. no safe place to inject a signal without an isolation transformer.
Being old enough to remember and having lived in what was widely considered to be a civilized part of the world at the time, I would just like to say that most everything referred to as a “TV set” at that time typically only had 300-ohm RF input, and sometimes also a 75-ohm RF coax input.
Color monitors circa 1980 usually had NTSC composite inputs, anything beyond that usually implied higher price tags. It wasn’t until maybe ’83 or ’84 you started to see S video inputs on anything reasonably priced.
That said, a skilled hardware hacker probably could have modified just about anything on offer say the time, although the resolution on the CRTs of the day was abysmal
Video monitors such as the Commodore 1702/1701 had Luma/Chroma inputs, which were similar to S-Video.
However, that wasn’t the norm exactly.
The higher quality video monitors usually had a BNC connector instead of Cinch (RCA for you Americans).
And a switch for chaning impedance, of course.Plus a lot of knobs for H-Sync/V-Synch, V-Hold, H-Hold, Width, Size etc.
Computer monitors sometimes were purely monochrome (Video Displays) and could be used for both 50-60Hz.
Higher end monitors from the broadcast sector had RGB via individual BNC connectors.
Mini-DIN4 for s-video came out in 1988, same as VGA.
Love the machine and remember the Z80 fondly. It was the first CPU I wrote assembler for, on a TRS-80, when I was in high school.
For the monitor, personally I would have preferred monochrome, so would have done same video memory but higher resolution, 512×384. Monochrome CRTs that supported this were available at the time (I had one), in white, green, or amber. That resolution also enables a usable 80 column text display, with a 6 pixel wide font. It’s actually a bit more than the original Mac display.
This has to do with my particular background, a few years of monochrome TRS-80s, never owned a Spectrum, but I did have access to an 80 column ADM-3A terminal connected to a PDP-11.
Also someone here mentioned the idea of a Z80 laptop and I think such a retro project would be much more period realistic with a monochrome display, as these did become available by the later 1980’s, either plasma or LCD.
I was across the iron curtain. Got a Spectrum, when dad went to Singapore.
ASSM screen scroller, horizontal. For ECG display.
All other. I was ok with the uncivilised world.
Analog RGB was really only a thing in Europe. One of the places where RGB analog TV sets were famously not available is North America. When better signal inputs were needed, consumer TV sets went with YPrPb component instead of RGB, because that better matched the way that broadcast TV color encoding worked.
VGA was RGB, but its lowest sync rate was twice the TV sync rate, and it’s hard to multisync scan an analog CRT at such a wide range of frequencies. What bothers me is that no attempt was made with LCD monitor chipsets to support 15KHz scan. Very few LCD computer monitors support 15KHz RGB.
As I understand it, the main reason that SCART had RGB was because France used SECAM, which was not appropriate for video tape recorders, so RGB became the common exchange format. In other words, Europe got TV scan rate RGB because of France.
SECAM VCRs do not use RGB, they work just like their PAL and NTSC counterparts and record chroma on an FM subcarrier. But because SECAM also has FM chroma, chroma processing is even a little bit easier.
The RGB inputs on a SCART connector are actually an overlay to the CVBS input, a necessity for Teletext and similar services. And that’s where SECAM comes in: you cannot directly mix two SECAM sources, FM chroma doen’t allow that. (For that reason, most TV studios in SECAM countries were PAL or RGB on the inside.) If you want an affordable color overlay on a SECAM TV, you need to feed RGB to the color drivers and the CRT does the mixing.
SCART also has CVBS and audio outputs, this was extensively used for pay-TV decoders in cable and terrestrial networks.
Northern America never adopted this versatile and cheap interface because of the “not-invented-here syndrome”, just like they did with Teletext and DVB. Why they didn’t outlaw MP3 is still a mystery to me. ;-)
I bet you every professional monitor used in TV broadcast even back in the late 70s had RGB inputs. Those monitors came at a price but sometimes you could get them as studios and TV production vans were updated. I’ve been using a typical “studio” SONY Trinitron for ultra crisp RGB 80 column display from a Memotech MTX-512. The 80 column RGB generator was in the floppy disk “station” (FDX) that was attached to the computer housed in the keyboard. It wasn’t VGA, but the video bandwidth was a good 3 times the luma bandwidth of composite PAL. This was either in late 1984 or early 1985. The monitor was did both PAL and NTSC.
There were a few techs that might have served. Semi custom ULA chips drove video output in quite a few home micros.
The big limiting factor in the 80s was that VGA didn’t come along til 1987.
Great project. Just wondering if there is a limitation on the graphics resolution? Something like a 80 x 25 text mode?
Looking at the board schematics, the video CPLD is already clocked at 25MHz i.e. 640×480 VGA video timing, meaning 80 x 25 character monochrome text mode should be theoretically possible with the current circuit. Worst case, one might need to up VGACLK to 50MHz, extend the x-axis pixel counter in the CPLD to 10 bits instead of 8 and other CPLD-related tweaks.
Going to a 75MHz VGACLK might even be able to yield a 16-color 80×25 text screen, possibly.
Also yes, his computer remind me of the Vtech Laser 300 system I had as a kid growing up in the 80’s – only his machine is potentially a lot more capable! :-)
32bits diy home computer soon with fullhd display?
Improved versions of most Amiga boards are available. Of course you still need the custom chips and even then fullhd means rather expensive upgrades.
The first thing I should ask you though, is why?
Most systems are based on existing platforms and are driven by nostalgia, why do you want a new 32bit hd capable diy computer? Why would it gain interest enough to get traction?
Don’t misunderstand me, I could be interested in a new 32bit hd capable diy computer too, it just depends on what it could do to be interesting. If it played 32bit games from various systems, that could be a reason, if it only played games created for it but came with a good game creator app of some sort, that could do it too.
I would very much appreciate if you reply, I’m genuinely interested in what you would want out of such a project. :)
I love “What if” projects like this.
But does it run Cry.. err, MP/M II ? :)
OK, nobody said it so I will, laptop. Z-80 Laptop.
Reminds me of my old Microbee. Except for the graphics section.
I built something similar (and still have it) with an 8051. Wire wrap. Hex code for BIOS boot. cassette tape for memory – 1200 baud = 0 2400 baud = 1. What a PITA? But I learned a lot and worth every minute spent on it. I then used it at work for some cool projects. Mission accomplished
The MSX has a Z80.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)