24:19 The current limits are the same for all pins so its specified just once under DC Characteristics. It's non-symetrical so different for active high and active low. Iₒₗ is 2.0 mA and Iₒₕ is 1.6mA. If you were using a first generation chip you'd have had problems, but later revisions were built to better specs.
@SteveRaynerMakes Жыл бұрын
This is good to know. If anyone is following along with an early chip it could damage it.
@marcusklinkenvan53914 ай бұрын
Recently I started a little 8 bit breadboard computer project with the w65c02. Much fun with the literal 0`s and 1`s right on the chips little legs. I also more recently got hold of 6 circuit boards from some communication system, It holds a D780C-1 processor. Turns out I am now the proud father of 6 Z80 oem CPU's. So a search on yt got me here for a Z80 project, Subbed and bookmarked for later.
@jesusmolo2 жыл бұрын
Hello, good afternoon. Please continue with this project, all my life I wanted to build a microcomputer with the z80. Your way of explaining the subject is excellent. You have one more follower.
@SteveRaynerMakes2 жыл бұрын
Thank you. I will be coming back to this but I can't promise any timescales.
@byteforever782911 ай бұрын
It's amazing and brilliant that this was Zilog's first product and it is still in production and sold millions of units. What a great CPU, and still totally relevant today. Ace project as well, can't wait to watch through the progress.
@zilog12 жыл бұрын
im 25 so i have no nostalgia for this. I like the z80 computers and the cpu because the documentation is fantastic, there are so so many books on the darn thing, its reasonably easy to make a system from, they are cheap and readily available, and because of how old it is, there is a crap ton of software written for it so plenty of example code. This is a fantastic learning tool for any age regardless nostalgia.
@SteveRaynerMakes2 жыл бұрын
Thank you. It's interesting to know that younger viewers might be interested in this type of content despite the Z80 being so old.
@jclosed25162 жыл бұрын
Yep - I still have some old books about the Z80, and they are really helpful. I was experimenting a lot with the Z80 (and all kinds of processors to be honest, starting with the now famous 4004), in a way very similar to this video. That said, I also have a load of books about the 6502 processor. That was another one that was really popular in those days (mainly because the where at the heart of the Acorn Atom and the more widely known BBC-B computer).
@zilog12 жыл бұрын
@@jclosed2516 Fun Fact, the 6502 is still being made brand new by WDC and is being sold by Mouser and digikey. WDC also makes some other 6502 related products like a 16 bit pipelined version and a microcontroller/soc called the MENCH
@jclosed25162 жыл бұрын
@@zilog1 Yeah - I know. I only wanted to point out that around that time those processors (Z80, 6502, 1802) where at the height of their popularity. For me it's still fun to play around with them at the present, but for most people today it's sadly just an ancient piece of technology.
@j.c.murillo Жыл бұрын
Excellent project, thanks for sharing and continue giving life to the Z80
@Dieguscus2 жыл бұрын
Seriously waiting for the continuation of this series. Great job on the explanation! Regards
@SteveRaynerMakes2 жыл бұрын
Yeah sorry. I ran into a problem with the RAM which is holding me up.
@34981372 жыл бұрын
Thank you for your excellent contribution. Your explanation is impeccable. I have the Microprofessor Z80 and was wondering how the z80 worked. With your input I have more clarity on this issue. Continue with your project, surely it will be very useful to us. I am one of your new enthusiastic followers.
@Millstone_Firewood Жыл бұрын
Just found this. Outstanding explanations. I'm going to build all of this so I can follow along. Thank you!
@pikadroo Жыл бұрын
How are the explanations out standing? He has no idea idea why the 74hc14 chip using pin 3 & 4 in the clock circuit he borrowed from someplace else.
@Millstone_Firewood Жыл бұрын
@@pikadroo Certainly there are a lot of things he doesn't know. Even I knew about the clock. Overall this was a good video for a beginner. If you don't like it, don't watch.
@eknuds Жыл бұрын
I just started breadboarding this. I got some C compiled and burned onto an EEPROM but I will have to make my own Z88DK config. After I started connecting it to the Z80 I decided to move the processor to another breadboard and create a bus, putting all of the control, address, and data pins in order. My clock is only 1MHz, so I think it should still work. Then it was early morning so I decided to pick it up another day.
@JohannSwart_JWS Жыл бұрын
Not useless, not low spec. As a embedded microcontroller, its still very useful, and fast. Just inconvenient, in comparison with modern ucontrollers, with everything onboard.
@abrienel65588 ай бұрын
Fabulous and fascinating. At just the right level!
@dante.alighieri Жыл бұрын
Thanks for sharing your knowledge Steve.
@vvtor7 ай бұрын
Great video and excellent way to present, I will watch the rest for sure.
@SteveRaynerMakes7 ай бұрын
Glad you enjoyed it!
@colonelbarker2 жыл бұрын
Great video, looking forward to seeing more at some stage.
@tangente602 жыл бұрын
very interesting stuff, awaiting more...
@Rayvonwiggle2 жыл бұрын
Cheers Steve, really well explained. My first computer too. Looking forward to part two.
@laithal-athary99322 ай бұрын
same nostalgia and same dream to build my own computer
@paulfletcher46135 ай бұрын
Wow. Now I can build my own Z-80 :) Thanks
@melkiorwiseman5234 Жыл бұрын
Just found this series. It looks interesting so I'll follow it for at least an episode or two. Maybe longer. It looks like you're going to be using bank switching. Multitasking? That would be a challenge but an interesting one. I had an idea of building a multitasking / multiuser system which has memory protection to prevent one user's program from intruding on memory intended for a different program. For example, only an instruction executed from the ROM switch memory banks and if a program running elsewhere attempts to do so, the signal is blocked and goes nowhere. This would force running programs to "request" a bank switch when needed and the OS can ensure the request is valid before granting it. Directly jumping to a ROM routine would also be disabled. The running program would need to use a RST call in order to send a request to the OS. Incidentally, it seems that most or all Z80 CPUs will actually access up to 64K I/O ports. This is done by using the IN A,(C) and OUT (C),A instructions. It seems that these instructions actually output the entire BC register pair onto the address bus during the instruction execution, which means you have access to heaps more I/O ports. If you really wanted to, you could even use some of these I/O locations as slow RAM for accessing data. This is undocumented so it might not work on all Z80 CPUs, but it's worth trying to see if your CPU works that way.
@SteveRaynerMakes Жыл бұрын
Hi thanks for your comment. Yes I'm intending to use bank switching to access more memory, but not really for the purpose of multitasking or multi-user system. I think that would be too advanced for me. Yes the IO address space is actually full 16bit (64k). Some instructions place the A register on the top half of the address bus and some use the B register. I'm using this feature in Part 11 for the keypad.
@jamesgoacher1606 Жыл бұрын
I have seen briefly this video in the past but this time I watched it through and I was absolutely enthalled. I believe that the initial standard chip speeds were 2.5MHz and 4MHz and I always found the Z80 to be an understandable chip. Its instruction set and fuction is the same as the Intel-8080 but that require a couple of support chips corrected with the Intel-8085. Somewhere I have all of the chips for a Z80 SBC and a perforated board that I was going to assemble it on. Maybe it is in the loft.
@microhobbyist Жыл бұрын
Great video. I started my own series on the Z80 not too long ago.
@SteveRaynerMakes Жыл бұрын
I just watched them all through. Nice work.
@ChrisSavageEngineer Жыл бұрын
Nice video. One quick note when you're manually doing the output. Whatever you output is going to be on the same bus as those DIP switches, which some are forced HIGH when the switches are closed. Hopefully no data bus pins were damaged.
@SteveRaynerMakes Жыл бұрын
Yes in hindsight that wasn't really a very good idea. I guess the circuit is ok for reading, but not really safe for writing. Luckily there does not appear to be any damage. I think I might have been lucky, in that the instruction I used was OUT (n), A. So it's the contents of register A that would be output. I believe this "may" be FF after a reset.
@ChrisSavageEngineer Жыл бұрын
@@SteveRaynerMakes I saw that you're learning as you go, so these are typical things we all do. I was building a Z80 system yesterday and mixed up a few lines and wondering why my code wasn't doing what it should. Then I accidentally connected the WR line on the EEPROM / Flash memory, so when the code went rogue, it overwrote some of the code. I'm on your third video. Still going...
@mbiella19658 сағат бұрын
This series is amazing and your project is really beautiful, compliments. One question, is possible to have schematics of this project? Thanks in advance
@mk659511 ай бұрын
The second inverter on the clock generator is to buffer the clock signal so that things that are using the clock don't load it down.
@TheWareek2 жыл бұрын
my first computer was a TRS80, 4K of thundering power expandable to 16K.
@TheWareek Жыл бұрын
I had one of those, and to this day I regret selling it. To be able to bring it out and show my grand kids what the first computers were like. Bliss.
@ziadfawzi Жыл бұрын
Thank you so much.
@mrshodz Жыл бұрын
I might try this project.
@user-vq5rx5ym6b7 ай бұрын
Legal!! 😃 Obrigado por compartilhar seu conhecimento do z80!! Eu também quero montar um z80 no protoboard!!
@davidhartmann5492 Жыл бұрын
Very well done!
@SteveRaynerMakes11 ай бұрын
thank you
@garyjohnson46082 жыл бұрын
I beg to differ on this with you. I say the main reason for building this is what you will learn from doing it. Keep in mind that the Z-80 is hardly a gutless wonder.
@SteveRaynerMakes2 жыл бұрын
Yes I'm hoping to learn a lot. Often the journey is more rewarding than the end result.
@user-ws4nz8fu6z Жыл бұрын
Очень интересно. Спасибо большое :)
@PE4Doers Жыл бұрын
Added a like 😊
@TheUnofficialMaker2 жыл бұрын
very interesting and fun.
@mrshodz Жыл бұрын
Nice video.
@cthoadmin74582 жыл бұрын
Going to try this Steve. A question. In Ben Esser's series on the 6502 he talks about not using the early 6502 models because they had dynamic registers that needed to be constantly refreshed by the clock like dynamic memory, meaning slow or single step clocks would cause the processors register contents to disappear. I have what looks like quite an old crusty Z80, just wondering if i might hit the same problem. You don't appear to. Any ideas?
@SteveRaynerMakes Жыл бұрын
If you use static ram like I am, then it doesn't need to be constantly refreshed. The Z80 can handle any clock speed down to zero, completely stopped. It's an excellent processor to learn and get started with.
@eduranger Жыл бұрын
Poderia informar a relação de materiais usados nesta montagem?
Hello! I tried out the circuit, and it works perfectly with automatic clock. However, manual clock does not work as it should in my case: no problem if I press the clock button continuously at a steady pace. But if I stop pushing it, after - let’s say - 1 or 2 seconds all the yellow and blue LEDs turn on. So I can’t really pause the execution. I checked the clock signal with an oscilloscope, and it looks ok. If I stop pressing the button, there is no clock signal. But even in absence of a clock signal, all the LEDs (except halt) will light up after a few seconds.
@ana2kin Жыл бұрын
It looks like my Z80 is an NMOS version of the chip, thus requiring a minimum clock speed. Manual clock only works with newer CMOS processors.
@SteveRaynerMakes11 ай бұрын
Although it doesn't help you much, it is at least good to know.
@ana2kin11 ай бұрын
@@SteveRaynerMakes Indeed, I purchased a new CMOS Z80 and I can confirm that manual clock works properly with it ;-)
@vicheakeng6894 Жыл бұрын
I was running 1991 to 1996. Now I am walking.
@erikfabbri2916 ай бұрын
hi, I have a Zilog Z80 like yours, in cmos, but it behaves anomalously, I made the connections like yours, pullup resistors on the reset-busrq-wait-int and nmi pins, I generate a clock with the blink sketch of arduino (for my convenience at the moment). 4 LEDs with resistance on the negative for the address bus A0-A1-A2-A3 and finally I put all the pulldown resistors of the data bus, the only difference from your project is that I didn't put the jumper on the positive for the databus. It shows no signs of life, the clock LED flashes, the RD LED is always on and on the m1 it never activates even after pressing the reset for a long time... Do you have any suggestions, maybe I missed something? if it can be useful my model is Z84C0020PEC
@SteveRaynerMakes6 ай бұрын
My part number is Z84C0010PEC. Seems we both have CMOS versions. Mine is 10Mhz yours is 20Mhz, but as far as I can tell they should both work the same. All I can suggest is that you double check everything. Did you connect 5v and GND pins on the Z80? Might be obvious, but you didn't mention it. Do you have an oscilliscope?
@erikfabbri2916 ай бұрын
@@SteveRaynerMakes I had taken the power supply for granted, the 5V in pin 11 and GND at pin 29, I power it via the Arduino Mega. I have one oscilloscope that has been sitting in the cellar for many years, I don't know if it still works, I also did a test by changing the breadboard and redoing all the connections, the strange thing is that if I remove it from the board and put in a new one taken 2 days ago even if it is another model (Z8400AB1 or Z80ACPU) I think CMOS doesn't work
@7alken Жыл бұрын
wow, more hardcore than altair/imsai ))
@Stefan_Boerjesson Жыл бұрын
Anyone knowing how, where, to get hold of a Z80 assembler to run on a Pc? Once had Cromemcos Rose running on the Z80 assembling code read from first tape, then floppy disc.
@bradallen8909 Жыл бұрын
Have you never heard of google?
@Stefan_Boerjesson Жыл бұрын
@@bradallen8909 Oh yes! Getting lots of hits and it ends up like looking for a needle in a haystack.
@Jay-qu4ps10 ай бұрын
for such system thinking to make a hard disk using clock machanism and self made farric oxide coted disk 😁 hows my idea....from many years its in my mind
@vegansynths7757 Жыл бұрын
Is there a way to copy the programming from a Z80 and transfer it to another Z80?
@SteveRaynerMakes Жыл бұрын
The program is not stored in the Z80, it is stored in the external memory chips.
@vegansynths7757 Жыл бұрын
@@SteveRaynerMakes got it. Thank you so much for taking the time to respond. ✌
@fench1234567 Жыл бұрын
Choosing a "fairly useless low spec machine" is on the USEer. If you have a USE for a low spec machine as a hardware and/or software driven invention/utility device, then the low spec machine is no longer "USELESS". If you want your computer to decide for itself what it will be used for today, then by all means, USE paywalled corporate driven AI pets!!!!
@adamismaad9604 Жыл бұрын
Hello sir do you have schamtic diagram for this project
@SteveRaynerMakes Жыл бұрын
Sorry, I need to tidy up the schematics, but they will be available soon. Please bear in mind this project is evolving, so the schematics will almost certainly change as the project progresses.
@groveTerm2 жыл бұрын
Hello
@pikadroo Жыл бұрын
So if you aren’t that knowledgeable why are you instructing all of us?
@SteveRaynerMakes Жыл бұрын
:-) I'm not instructing you, I'm just sharing my progress