The Z80 is still manufactured today and I was wondering whether there is any interest for a community or discussion group.
The Z80 is still manufactured today and I was wondering whether there is any interest for a community or discussion group.
Making it run NOPS? Basically turns it into two 4 bit counters. I have some PCB designs made for that to use as sequencers.Clock as slow or fast as it can go!That's as simple as it gets. That should be the first thing everyone does with one.
As a side note-you can buy the Z80 on Ebay for a little more than a dollar each.......The first one I bought in the 70s was way more than that! US supplier Jameco Electronics has the Z80 for 2.49 and also sells the interface chips for even more fun.
Hi Monte.
I used Z80's back in the 1980's and used to have a bunch of them around, but with all the other processors now available, they are not something I would try to use today. Too many support chips needed.
Given the Cypress PSOC, I would start there instead.
DAB
HI DAB
As you know I've used both.
The issue with using modern parts is that one needs a PC and also allows one to gloss over the fundamentals with everything provided on a platter.
Building a Z80 system forces one to at least assemble some hardware, learn machine code if desired, have many more hazards to navigate and develop a full sense of what is going on.
Here's a comparison of the different levels of programming learned.
PSOC C
main() {
unsigned char a=0;
for(;;) {
write_LED(a);
a = ~a;
}
}
Z80 ASSEMBLY
LED_PORT EQU %01
START:
XOR A
$1:
OUT (LED_PORT), A
CPL
JR $1
Z80 HEX
AF D3 01 2F 18 FB
Have a great day!
More like a 16 bit counter but remember that the Z80 will pump out Refresh addresses on (M1) instruction fetch cycles.
The NMOS part has a lower speed minimum but the CMOS can be run as slow as one likes.
As they say in Mortal Kombat - "Most Impressive!"
For NMOS CPUS I'd use higher value pull down resistors to cater for the one TTL (or 4 LSTTL) load limit.
If you put an 8 way dip switch in series with R1-R8 and a LED and current limiting resistor on the /HALT pin to VCC you can perform other programs.
Here are some examples to try;
11000011 C3 -> JP C3 C3 (continually loops at address C3C3 through C3C5
01110110 76 -> HALT (Turns the HALT LED on - and Address LEDS still change value (for REFRESH))
00011000 18 18 -> JR (+18) similar to the NOP loop but in bigger steps.
11001001 C9 -> RET
11001101 CD -> CALL CDCD
11010011 DB DB -> IN A,(DB) (If you hook up a LED and current limiting resistor to the /IORQ line to VCC - it should blink)
10101010 10 10 -> DJNZ +10
Hopefully this thread will pick up and get some folks wanting to play. Doesn't have to be a serious endeavor and maybe we can all learn(or re-learn).
It has been a few years since I played with these last, but may go drag some stuff out get started again. It's a nice break from the modern gear.......
Thanks for your input-will try it out!
Yes, but how do you program it into a PSOC without an accompanying computer?
I haven't looked at it in detail but;
A typical ARM and Z80 has its RAM access speed based upon the period of its CPU Clock speed.
At 8MHz it's 125ns for both devices (and 250ns for ROM on an ARM).
As for clock cycles required for each instruction, they require about the same give or take a bit.
Things get relatively more complex on an ARM because many of its instructions require 3 operands.
e.g.
ADC r1,r2,r3
Admittedly the Z80 has some limited 3 operand instructions with its index registers.
e.g.
LD A,(IX+d)
As for speed if we built a Z80 with SiGe transistors it'd operate at 210GHz at that speed it becomes difficult to interconnect it with other components.
As for speed if we built a Z80 with SiGe transistors it'd operate at 210GHz at that speed it becomes difficult to interconnect it with other components.
I kind of doubt that statement, sir. IBM claims SiGe speed records | EE Times back in 2004 claims a 60 GHz speed. But Z80 could operate faster if miniaturized to the degree the ARM is.
Clem