Learn vintage electronic / computer engineering at 2019.

For experts to discuss very technical stuff and newbies to ask why the Spectrum they bought off ebay doesn't work.
Post Reply
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

Hello friends.

Lets say that in 2019 an absolutely beginner (me :lol: ), with not good knowledge of electronics and computers, want to learn and study about 8-bit computers and have as target to build his own Z80 based computer. What is the proper way to start? What books free or non free "must' read and study? What is the based electronics should he known to be able to understand the way that things work?

One other part is, what tools except multi-meter should have to help him on hardware projects or even for repairs?

Till now i have in my lab:
Solder iron
IC tester
8ch logic analyzer
Arduino 4116 tester
Arduino 4164/41256 tester
Crystal tester
Multi-meter
Eprom programmer
ESR Meter

Books:
Spectrum harware manual / for issues 2 & 3 (by Adrian C. Dickens) * just got it yesterday!
The ZX Spectrum Ula: How to Design a Microcomputer

  • Maybe some newbie/stupid questions will follow, so please be armed with patience... :D


Thank you.
Last edited by Muttley Black on Sun Apr 07, 2019 11:34 am, edited 3 times in total.
User avatar
djnzx48
Manic Miner
Posts: 730
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Learn vintage electronic / computer engineering at 2019.

Post by djnzx48 »

This is something I've wanted to learn more about as well. From what I've heard, it's possible to build a simple computer (without a display) on a breadboard, basically with just a Z80, a memory chip and some sort of memory controller so the CPU can interface with it. And you'd have a clock source as well to run everything off.

Looking at the schematic for the Spectrum, there doesn't seem to be too much in the way of discrete components; the TV and audio output look to be the most complicated bits, and the rest is mainly ICs. So maybe it wouldn't be too hard to design something more simple from scratch?

The main concept I find tricky to get my head around is the data and address lines, and how bits get sent around to the right components without getting mixed up. I think the resistors have something to do with that though.
Ralf
Rick Dangerous
Posts: 2283
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Learn vintage electronic / computer engineering at 2019.

Post by Ralf »

Do you want to build it classic way or modern way?

Personally I'm totally crap at hardware but I know one thing that today there are technologies like FPGA and CPLD. You buy a general usage chip
and then you write a program that will alter it so it behaves like Spectrum. Or like CPC or like Amiga or whatever. In such case
you don't need real Z80 CPU chip in your machine for example as everything is in that FPGA.

When Zx Spectrum was made this technology wasn't available but today it is very popular and used in many Spectrum clones.

So when you say "vintage" you mean you want to do it like it was done in the 1980s or like it is done in 2010s?
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

In classic way! Like it was done back in the 80’.
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

Most mass produced home computers hide a lot of complexity in custom chips. This includes the ZX81/TS1000 and the various ZX Spectrum models.

The most complex area is the circuitry to produce a video picture that can be displayed on an ‘ordinary’ television.

If you leave out the video circuitry, and use modern memory chips, you can reduce the chip count and the complexity down rather a lot.

So a basic Z80 based single board computer (SBC) can be made with:
  1. Z80 CPU
  2. RAM: A single SRAM memory chip (a 32k x 8 bit type or a 128k x 8 type is recommended such as a 62256 or a )
  3. ROM: A single 8k x 8 bit EEPROM, or a 32k x 8 bit EPROM chip or anywhere inbetween (examples AT28C64B, AT28C256, 27C256)
  4. Some kind of input interface circuits/system (buttons, keyboard, RS232 serial)
  5. Some link of output interface circuits/system (LEDs, LCD text display, RS232 serial)
  6. Some logic chips to glue all of the above together, to provide a reset signal and a clock signal to the CPU
  7. A suitable PSU or power supply circuitry
The address bus on such a computer is really rather simple. Address lines A0 to A14 go from the Z80 CPU to the SRAM and the ROM (be it EPROM or EEPROM). Address line A15 is used by the address decoder part of the glue logic to select between the ROM or the RAM.

Some address lines, such as A0 to A7 may also be used by the I/O chips / circuitry.

The data bus lines D0 to D7 go to everything that needs to connect to the data bus.

The order of the actual connections to the SRAM chip doesn’t matter. So it’s okay to connect CPU A0 to the SRAM chips A6 pin for example. As long as all the SRAM’s address pins are uniquely connected. Same goes for the SRAM’s data bus pins. Don’t try this on the ROM chip though.

The I/O circuits and glue logic depend on what the actual requirements are.

Grant has published a design for a simple Z80 based computer here.

See also the RC2014 web site.

The Sinclair ZX World forums have plenty of hardware home brew related posts (mainly related to the ZX80/ZX81/TS1000), so you may want to visit this forum as well.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

Very interesting stuff!

What i also want to ask is if it's necessary to learn Z80 assembly language to be able to finish a project like that. Sorry if my question's sound a bit silly, but what i want to do at the very first, is to put the steps in a priority line. As i said in my first post i am not good knowledge on electronics.

So the proper way to start this is?

1) Get familiar with electronics. Study about capacitors, transistors and parts that included on retro computers. (Any good book to suggest me)?
2) Study about Z80 cpu
3) Read and understand an Z80 based computer schematic
4) Starting step my step my project.

Am I right? Or did i miss a big step here?

I want to learn in depth about that 8-bit old fellas, not matter the time its needed. I am not in rush. :)
AndyC
Dynamite Dan
Posts: 1405
Joined: Mon Nov 13, 2017 5:12 am

Re: Learn vintage electronic / computer engineering at 2019.

Post by AndyC »

You probably won't get very far without at least a reasonable grasp of Z80 as well as the ability to program an EPROM or similar to give your "computer" some instructions to run.
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

If you build your own design, there will be absolutely no ready made software for it. So you will need to write some software yourself. The Z80 only understands 8 bit binary numbers (bytes) [called machine code]. So to program at this low level in a manner that is a bit friendly to humans, there is assembly language. The mnemonics translate directly into machine code.

If you build a design which is the same as, or compatible with an existing design, then there will be at least some software that you can run on it.

In both cases, you have to give the CPU the start-up code somehow. In the designs that I talked about earlier, this is code that is programmed into a ‘ROM’ chip.

If you have a RS232 serial communications port, it may be possible to transfer program code from another computer (say a PC) into the RAM of your home build computer, and then run that software.

If you have a reasonable fast PC, you can download various emulators for most of the popular 1980s computers. Using cross compilers, you can write and edit source code using a editor on the PC. Then instruct the cross compiler which file you want assembled, and it will produce a file containing the machine code. Load this into the emulator and you can see if it works. Then you can adapt the code to run on your home built computer. [Warning, this sounds easy, but it eats time and can be frustrating at times].

There are many ways to learn. It does not have to be do 1, 2, 3 etc... in a strict order.

If you don’t have any experience building circuits, then I strongly recommend you start with some simple electronic projects first. Learn about the various components. These days, it is easy to find all kinds of interesting stuff via internet searches.

If you can wait for a bit of a delay, buy some bits from China, such as a breadboard, a selection of resistors, capacitors, diodes (1N4148, 1N4001), transistors (2N2222), and some simple logic chips (74LS00, 74LS02, 74LS04), a couple of NE555 timers have a play.

I’ll add some links later...

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Ast A. Moore »

For dabbling with logic gates, microprocessors, etc., I highly recommend Ben Eater’s video series on how to build an 8-bit computer. It’s very detailed and quite easy to follow.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

1024MAK wrote: Sun Apr 07, 2019 6:42 pm If you build your own design, there will be absolutely no ready made software for it. So you will need to write some software yourself. The Z80 only understands 8 bit binary numbers (bytes) [called machine code]. So to program at this low level in a manner that is a bit friendly to humans, there is assembly language. The mnemonics translate directly into machine code.

If you build a design which is the same as, or compatible with an existing design, then there will be at least some software that you can run on it.

In both cases, you have to give the CPU the start-up code somehow. In the designs that I talked about earlier, this is code that is programmed into a ‘ROM’ chip.

If you have a RS232 serial communications port, it may be possible to transfer program code from another computer (say a PC) into the RAM of your home build computer, and then run that software.

If you have a reasonable fast PC, you can download various emulators for most of the popular 1980s computers. Using cross compilers, you can write and edit source code using a editor on the PC. Then instruct the cross compiler which file you want assembled, and it will produce a file containing the machine code. Load this into the emulator and you can see if it works. Then you can adapt the code to run on your home built computer. [Warning, this sounds easy, but it eats time and can be frustrating at times].

There are many ways to learn. It does not have to be do 1, 2, 3 etc... in a strict order.

If you don’t have any experience building circuits, then I strongly recommend you start with some simple electronic projects first. Learn about the various components. These days, it is easy to find all kinds of interesting stuff via internet searches.

If you can wait for a bit of a delay, buy some bits from China, such as a breadboard, a selection of resistors, capacitors, diodes (1N4148, 1N4001), transistors (2N2222), and some simple logic chips (74LS00, 74LS02, 74LS04), a couple of NE555 timers have a play.

I’ll add some links later...

Mark
I totally understand! Thank you very much for the time you spend to explain all this stuff with simple words! I just order the components you suggest me to buy. I started watching some videos about electronics for beginners and of course reading also about them on the net. When the components arrive and feel ready and comfortable to deal with them, i am gonna search for small project's inside the philosophy of computers to do.

Ast A. Moore wrote: Sun Apr 07, 2019 7:29 pm For dabbling with logic gates, microprocessors, etc., I highly recommend Ben Eater’s video series on how to build an 8-bit computer. It’s very detailed and quite easy to follow.
Very nice and helpful videos! Thanks for sharing!
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

This supplier on eBay is what I have used recently for breadboards. Mine came in about ten days.

One thing that I forgot to include in my suggested list of bits, was LEDs. You don’t need fancy white or blue ones. Red, green and maybe yellow will be fine. For use on a breadboard, 3mm types will be fine. Always (unless shown differently) connect a resistor (typical value 330 ohms to 1K ohms for use on a 5V supply) in series with each LED.

Again, packs of LEDs can be obtained from China for not much money these days.

It will be handy to have a suitable DC power supply. The easiest type to get these days is a USB PSU. Then cut the end of a cheap USB lead. Alternatively an old mobile telephone PSU may be suitable. But post up details first, as some are unregulated.

Alternatively you can use a battery. For circuits designed to run on 5V DC, you will need either three fresh 1.5V alkaline cells, or four 1.2V NiMH cells. And of course a suitable battery holder for them.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
dfzx
Manic Miner
Posts: 680
Joined: Mon Nov 13, 2017 6:55 pm
Location: New Forest, UK
Contact:

Re: Learn vintage electronic / computer engineering at 2019.

Post by dfzx »

For learning the basics it might be quicker and easier to use one of the many circuit designer and simulator websites. They're not as much fun as soldering real things together, but they make experimentation a lot quicker (and less expensive when you get to the point of blowing things up).

For Arduino stuff I like https://www.circuito.io/ because it simulates the Arduino hardware and software, plus all the devices you're likely to want to lash up to an Arduino. There's lots of others which are less Arduino specific.
Derek Fountain, author of the ZX Spectrum C Programmer's Getting Started Guide and various open source games, hardware and other projects, including an IF1 and ZX Microdrive emulator.
User avatar
djnzx48
Manic Miner
Posts: 730
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Learn vintage electronic / computer engineering at 2019.

Post by djnzx48 »

Thanks for posting those links, there's a lot of useful information in there.

Do you guys often get PCBs etched for circuits after you've got the initial design working? I've done a few boards myself and it was a pretty simple process, but I know the materials can get expensive, especially if you make a mistake.
User avatar
Ast A. Moore
Rick Dangerous
Posts: 2641
Joined: Mon Nov 13, 2017 3:16 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Ast A. Moore »

PCB etching is quite simple indeed. For more complicated designs and larger quantities, though, it’s better to outsource it. There’s no shortage of places that will happily make you a bunch of PCBs of virtually any complexity. Even through-hole plating doesn’t cost a lot (if anything) nowadays. The slight downside is that you’ll also have to learn how to properly prepare layout files for them.
Every man should plant a tree, build a house, and write a ZX Spectrum game.

Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

1024MAK wrote: Tue Apr 09, 2019 7:06 am This supplier on eBay is what I have used recently for breadboards. Mine came in about ten days.

One thing that I forgot to include in my suggested list of bits, was LEDs. You don’t need fancy white or blue ones. Red, green and maybe yellow will be fine. For use on a breadboard, 3mm types will be fine. Always (unless shown differently) connect a resistor (typical value 330 ohms to 1K ohms for use on a 5V supply) in series with each LED.

Again, packs of LEDs can be obtained from China for not much money these days.

It will be handy to have a suitable DC power supply. The easiest type to get these days is a USB PSU. Then cut the end of a cheap USB lead. Alternatively an old mobile telephone PSU may be suitable. But post up details first, as some are unregulated.

Alternatively you can use a battery. For circuits designed to run on 5V DC, you will need either three fresh 1.5V alkaline cells, or four 1.2V NiMH cells. And of course a suitable battery holder for them.

Mark
Hi Mark.

I have plenty of green, red and yellow Led's. I had purchased them for my arduino dram tester's back then. About breadboards i also order some yesterday, but i forgot to mention it. Also to be able to give power to breadboard i order two from this. Apart all above mentioned, i got also some cheap 5W 9V 12V 24V To 5V DC 7805 module's to play with them. By the way, have you (or anyone else) ever tried this module's to replace the old 7805 on ZX Spectrum? Are they any good? In a long term of use...

Thank you!
dfzx wrote: Tue Apr 09, 2019 8:45 am For learning the basics it might be quicker and easier to use one of the many circuit designer and simulator websites. They're not as much fun as soldering real things together, but they make experimentation a lot quicker (and less expensive when you get to the point of blowing things up).

For Arduino stuff I like https://www.circuito.io/ because it simulates the Arduino hardware and software, plus all the devices you're likely to want to lash up to an Arduino. There's lots of others which are less Arduino specific.
I got that in mind and of-course i give it a try. Why not! As you say you can do a lot quicker test's. But all the fun is the real soldering way with real components! :D

Thank you!
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

I have not used that particular DC/DC converter, but have fitted RECOM DC/DC converters to ZX81, ZX Spectrum 48k computers and to a recreated Jupiter Ace computer.

ZX81 fitted with a RECOM over on Sinclair ZX World

A recreated Jupiter Ace fitted with a RECOM over on Sinclair ZX World

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

Yes, I know about Recom, MuRata and Traco. Traco is what I used to replace the 7805 in my issue two tester board. I just wondering about that cheap fellas, if are good idea to be a part of Zx spectrum dc circuit. Anyway, when they come I do a stretch test in one of them and I post the results.

Thank you.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

Muttley Black wrote: Wed Apr 10, 2019 4:57 pm Anyway, when they come I do a stretch test in one of them and I post the results.
That cheap as chips Chinese regulators work nice. I did some stretch tests with no problems. They give perfect 5 Volts and they cooperate nice with the DC spectrum circuit. More than 20 days is fitted on my testing board, with every day of use, with stretched input voltage from regulated power supply.

In case you want to give them a try, you need to replace the angle type pins that are soldered on them and put new straight ones, upside down.


Image
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

Thanks for that :D

They also are available from other places, for example eBay. Search for “5v 7805 lm2596 dc converter”.

Some time ago I was asked about books to learn more about electronics. One book I found very useful, but is not really a beginners book, rather an intermediate level book, is “Instrumentation and Test Gear Circuits Manual” by R.M.Marston. ISBN 0 7506 0758 0. The same author also has various other books, but I don’t have those. I have no idea if it is still in print. Note this book and the books, magazines, and links below are all general electronics, not specific to 8 bit computing.

For learning, EPE (Everyday Practical Electronics) which has recently changed name to PE (Practical Electronics) has “teach-in” series. Some of which are available separately. See their web site https://www.epemag3.com/. Teach-in CD-ROMs (these are not cheap if money is an issue). They also do two electronic “manuals” on CD-ROM. I have older paper versions, they do go into a fair level of detail, but are a bit “dry” (meaning, not exciting, more formal education type material than fun).

There is a good book that I used to borrow from my local library, but I can’t remember the name of it :oops:

These You Tube channels may also be of interest:
Big Clive Dot Com and he also has a web site :D
Julian Ilett
DiodeGoneWild and he also has a web site!

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

Thank you for the treasure!

You have an opinion about the “Electronic Principles” book, by Albert Malvino?
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

in terms of general computing, which includes how home computers work, there is also the part work magazine “The Home Computer Course” which was followed by the “The Home Computer Advanced Course”. They covered the mainstream U.K. home computers, which of course included the ZX Spectrum :D

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
1024MAK
Bugaboo
Posts: 3118
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: Learn vintage electronic / computer engineering at 2019.

Post by 1024MAK »

Muttley Black wrote: Thu Jun 06, 2019 3:36 pm Thank you for the treasure!

You have an opinion about the “Electronic Principles” book, by Albert Malvino?
Yes, as I understand it, it is a very good book. I don’t have a copy myself. But I think I did see a copy in my local library back in the 1980s.

You don’t need to spend money on the latest edition though, not for understanding a 1982 computer :lol:

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer later in the year.
User avatar
Muttley Black
Microbot
Posts: 119
Joined: Wed Apr 03, 2019 3:31 pm

Re: Learn vintage electronic / computer engineering at 2019.

Post by Muttley Black »

1024MAK wrote: Fri Jun 07, 2019 8:37 am in terms of general computing, which includes how home computers work, there is also the part work magazine “The Home Computer Course” which was followed by the “The Home Computer Advanced Course”. They covered the mainstream U.K. home computers, which of course included the ZX Spectrum :D

Mark
I just read that post! This is magic found for me, thank you!
Hyuma
Drutt
Posts: 34
Joined: Sat May 18, 2019 7:43 am

Re: Learn vintage electronic / computer engineering at 2019.

Post by Hyuma »

I use this interesting topic to ask, as a novice that I am, if you know some video tutorials to learn how to use the oscilloscope applied to these vintage computers (zx spectrum, commodre 64, etc.). I would like to buy one, but I would also like to learn how to use it well.
Post Reply