Re: ZX80 Core - new ZX80 motherboards
Posted: Mon May 06, 2013 1:41 pm
Yep - i'm interested. Will chat with a friend tomorrow, he'll probably want one too.
Discussion forums for users of the Sinclair 8-bit range of computers - ZX80, ZX81, ZX Spectrum, Z88, clones...
https://sinclairzxworld.com/
Well the idea was born a few month ago. I heard about the board you did maybe 2 years ago and Paul showed it to me on the last ZX team meeting in april 2013. So my approach is a little bit different but wasn't planned to get into competition with you. I want the board optical identical to the old ZX80 layout and use exactly the same circuits even same pins used for single gates. There are a few differences regarding RAM and ROM due to availability and a little option to play with. But I want to keep most like original. Even should look a little bit nice, not the standard green IT stuff you get saturated after some time. And yes you guessed right, I am located in Europe/Germany.Lee Hart wrote:It looks like the main difference is that you are aiming to exactly copy the Sinclair ZX80, while I am making changes that I hope will make it cheaper and easier to build. Also, I am in the USA and it sounds like you are in Europe? Since shipping costs so much today, our boards will probably go to different customers.
I don't know why you use HC devices instead of HCT devices with TTL compatible inputs. They are internally CMOS designed and inputs are TTL compatible. And there is a different input design, hysteresis and so on. I guess that's maybe the source of problems with the keyboard, also I wouldn't use the 1N4148 and would prefer shottky diodes like BAT46 or similar. I followed the discussion a little bit in your thread but can not understand the problems with the keyboard at all as this can be measured out very easy with a multimeter because a key stroke is very slow and can go for seconds or minutes.Lee Hart wrote: - Used as much 74HC as possible to reduce power.
Yes i thought something like that - at least this was planned. I only once saw really a keyboard membrane with a metal stripe on it.Lee Hart wrote: On diodes D1 and D2: Yes, they are for static protection. The keyboard overlay has a metalized layer. If you have built up a static charge and touch the keyboard, these diodes provide a discharge path without it going through an IC (which could damage it).
Well that's the problem above. I think this can be solved easy, see my thoughts above. I will simply measure this out.Lee Hart wrote: On resistors R13-17: Sinclair used 47k. I tried this, and found it is too high, and you don't get proper TTL levels. We had erratic keyboard operation unless U10 was chosen carefully. Try a lower value, like 10k.
Okay, don't worry - you can not see as I just changed the net to VCC and didn't display the net name.1024MAK wrote: @ PokeMon, looking at resistors R13-17 on your schematic, I don't see a connection to +5V / Vcc
Mark
I think it is a good plan. There will be people who want an exact replacement. I like the idea of making it a different color; that way, people won't try to pass it off as an "original" to cheat someone.PokeMon wrote:... I heard about the board you did maybe 2 years ago and Paul showed it to me on the last ZX team meeting in April 2013. So my approach is a little bit different... I want to keep most like original. Even should look a little bit nice, not the standard green IT stuff you get saturated after some time...
HC and HCT are essentially interchangeable. There is no internal difference. Many manufacturers just make one part, test its input threshold voltage, and mark it HC or HCT depending on whether it is high or low. I am striving to use all CMOS (no old TTL parts), in which case HC, HCT, AHCT, AC, etc. are all interchangeable.PokeMon wrote:I don't know why you use HC devices instead of HCT devices with TTL compatible inputs.
The root cause is that Sinclair's cheap design does not meet TTL logic level specs at the inputs of U10. When a key is pressed, a logic "low" (on A8-A15) goes through a diode (D3-D10) to pull a resistor (R13-R17) and an input of U10 low. But the diode's forward voltage drop plus the "low" from the Z80 is more than 1 volt at the input of U10. This may, or may not be low enough for it to recognize it as "low" (the spec is 0.8v or less). It depends on the specific chip you use. Some work, and some don't. The problem is most easily seen with the SHIFT key.PokeMon wrote:I guess that's maybe the source of problems with the keyboard, also I wouldn't use the 1N4148 and would prefer Schottky diodes like BAT46 or similar.
It is not that easy. There is a lot of noise on the address bus, as it is constantly going high/low. The only time that the value on the address bus matters is at the *instant* the software reads U10. You need a pretty fast oscilloscope to look at what happens at this instant. And part of the challenge is that as soon as I connect my scope probe, it changes the problem!PokeMon wrote:...can not understand the problems with the keyboard at all as this can be measured out very easy with a multimeter because a key stroke is very slow and can go for seconds or minutes.
I think some Sinclair engineer put D1 and D2 in because they reduce problems from electrostatic shocks. But (as usual) some accountant took them back out to save a few pennies. "The customer won't notice, and if he does, we can charge him for repairs or replacements."PokeMon wrote: (re: diodes D1 and D2 are for static protection...) Yes i thought something like that - at least this was planned. I only once saw really a keyboard membrane with a metal stripe on it.
They are interchangeable from logic function but have not (definetely not !) internal design and not same data characteristic. Do you ever read datasheets ?Lee Hart wrote: HC and HCT are essentially interchangeable. There is no internal difference. Many manufacturers just make one part, test its input threshold voltage, and mark it HC or HCT depending on whether it is high or low.
Well in that point you are right I think, didn't thought about the speed of address bus. Anyway this could be solved and easily managed with a custom program in FAST mode and a special written keyboard input routine. That's how I would solve this problem. You can read the key maybe all 20 microseconds and scan with a scope what happens. Quite easy to do. Just a IN instruction in a loop.Lee Hart wrote: The root cause is that Sinclair's cheap design does not meet TTL logic level specs at the inputs of U10. When a key is pressed, a logic "low" (on A8-A15) goes through a diode (D3-D10) to pull a resistor (R13-R17) and an input of U10 low. But the diode's forward voltage drop plus the "low" from the Z80 is more than 1 volt at the input of U10. This may, or may not be low enough for it to recognize it as "low" (the spec is 0.8v or less). It depends on the specific chip you use. Some work, and some don't. The problem is most easily seen with the SHIFT key.
But there is more to it than that. I can select a CMOS part for U10 that has a high input threshold (like 2.5v), and it *still* may not work. Lowering the values of R13-R17 helps, but I don't know why. Changing D3-D10 to Schottky or germanium diodes also helps. But it *still* does not work with all chips! I do not know why.
Well then it seems to be a capacitive problem. But with a 10:1 probe shouldn't affect measurings too much.Lee Hart wrote: It is not that easy. There is a lot of noise on the address bus, as it is constantly going high/low. The only time that the value on the address bus matters is at the *instant* the software reads U10. You need a pretty fast oscilloscope to look at what happens at this instant. And part of the challenge is that as soon as I connect my scope probe, it changes the problem!