![]() |
Re: Sharp MZ-80K help needed on repair
Thanks for the code, I will have a go at disassembling it as far as the 8255 initialisation sequence later on.
For the sockets you will obviously need two for the ICs and another two to use as plug-in carriers for the NOP test resistors - they will be fitted instead of IC36 and IC37. Let's see if the replacement buffers miraculously fix your fault - no harm in being optimistic - and if not, I will do a little sketch showing what the plug-ins should look like. |
Re: Sharp MZ-80K help needed on repair
I've had a first look at the code in the RAM TEST EPROM.
The first thing I notice is that there are no instances of IN and OUT instructions, suggesting that all of the hardware including the large peripheral ICs are memory mapped, that is, the system writes to them and reads from them by using instructions which are normally used to write to or read from memory. The IORQ signal, although buffered by IC35, does not appear to go anywhere after that other than to the bus expansion connector. This is useful for us as it means that the simple NOP test, if we get that far, will exercise the chip select signals for the peripheral ICs as well as the memory ICs. My reading of the workings of the main address decoder IC47 (output intervals of 1000 Hex) and the sub-address decoder IC30 for the peripheral ICs (output steps at 00, 04, 08, 0C etc) puts the 8255 at addresses E000-E003, the 8253 at E004-E007 and the sound hardware, although I don't quite understand that bit yet, at E008-E00B. The initial part of the code: -Disables interrupts -Places the stack at 0xE000 -Block shifts a large amount of structured-looking data from 0x01A3-onwards into the screen RAM. I believe this is 'drawing' the background 'framework' for the RAM TEST screen display. -Polls address 0xE002, which is likely to be the 8255 PORT C register, and waits until PORT C bit 7 (=V-BLANK) is detected to be low, before carrying on. As expected, the code does not try to use system memory for storing variables or for stack operations / subroutine calls - all writes to and reads from system RAM are for the purposes of testing the RAM only. |
Re: Sharp MZ-80K help needed on repair
Just to expand on one point above, notice the code just goes right ahead and tries to read the state of V-BLANK through portC bit 7 without first setting up the 8255. It can do this because after reset, the 8255 initialises with all three ports set up as 8-bit inputs, so the IC requires no specific setup if you just want all the port pins to be inputs.
Although the code does make use of the V-BLANK signal for sync / timing purposes just as pudwink's source said it does, it doesn't make any attempt to change the port pin connected to V-GATE to an output, nor does it ever try to drive V-GATE - so we shouldn't worry too much about what V-GATE looks like with the RAM TEST EPROM fitted in the machine. Mark did suggest looking at the V-GATE signal with the MROM fitted and we can come back to that once we get the system running code from ROM reliably, although hopefully, if we get that far, the machine will spring to life anyway. I disassembled all of the code portion of the RAM TEST code last night - most of the code in the EPROM appears to be an image of the program's 'display panel' which is copied into the screen RAM very early on - I commented some of the code before waking up with the keyboard stuck to my face. I'll post what I have this evening. |
Re: Sharp MZ-80K help needed on repair
Hi
Now the new ICs came today but the guy sent the wrong ones I ordered SN74LS241N and he sent SN74ALS241N he says they are 99% the same thing so I have tried hem anyway and still the same corrupt screen. |
Re: Sharp MZ-80K help needed on repair
OK, that rules those out although in the long term I would look around for 74LS241s as originally fitted. Not a complete bust as we now know those buffers aren't the problem, and having them in sockets allows us to replace them with a simple NOP simulator. I'll put together a sketch a bit later.
|
Re: Sharp MZ-80K help needed on repair
1 Attachment(s)
Here's the recipe:-
2 x 20 pin sockets 8 x resistors, wattage unimportant but ideally small ones like 1/8th (0.125) watt, value around 220 ohms give or take a bit Take one socket and four resistors and insert one end of a resistor into socket pins 18, 16, 14, and 12. Join the other ends of the resistors together and connect them with a single piece of solid core wire to socket pin 10. (see sketch). How you physically organise this is up to you, you can either just push the resistors and common wire into the sockets or you can add a spot of solder to each one to make sure the resistors and wire stay put and stay connected. See the attached sketch. Do the same with the other socket and when you're happy with them, remove the newly fitted IC36 and IC37 and plug these socket / resistor assemblies into the sockets normally occupied by IC36 and IC37. Obviously, pin 1 of the socket needs to go to pin 1 of the socket you are plugging it into. With those fitted, turn on the machine, you should see a screen full of random characters - this is because the Z80 currrently can not send data to anywhere, including the screen memory. Use your scope to look at the A0 line (pin 30) of the Z80. If the NOP rig is working you should see a steady square waveform on there and also on pins 31, 32, 33, 34, 35, 36, 37. As you step upwards from one pin to the next the pulses on each line should be twice as long as they were on the previous one. You can also use your logic probe to look at the same pins. Let us know if that works. |
Re: Sharp MZ-80K help needed on repair
Hi
That's brilliant will try it tomorrow as have to be up at 2am for work with the resistors I have some 1/4 watt 270R ones do you think these will be ok. |
Re: Sharp MZ-80K help needed on repair
They will be fine the 1/8 watt was just for size and 270 will hold the lines fine I am sure.
|
Re: Sharp MZ-80K help needed on repair
As Tim says, 270R at 1/4 watt will be fine.
|
Re: Sharp MZ-80K help needed on repair
As promised, a disassembly of the RAM TEST code so we can see what it is supposed to be doing. Virtually the first thing it does - or should do - is to draw the 'Front Panel' of the utility. As we know, that only happens very occasionally.
Apologies in advance for any mitsakes. Code:
0000 f3 di ;Disable interrupts |
Re: Sharp MZ-80K help needed on repair
Remember that as the 8255 output is not being initialised the display might remain blank. The ram checker code is relying on the ls ttl input floating high, it might work in most cases but it was only reaching 1v on pudwinks system. A 4k7 pull up resistor should solve this and won’t cause a problem if not removed later.
|
Re: Sharp MZ-80K help needed on repair
1 Attachment(s)
Looking at the relevant section of the diagram (Video Generator: Manual page 32: PDF page 34) The video bitstream is coming out of IC29 pin into IC17 pin 10.
The job of IC17 (Pins 1,2,13,12) is to act as a gate which either allows the video to pass through from pin 2 to its output on pin 12 or does not, depending on the states of V-Gate, V-Blank and H-Blank. When all of those signals are high, video is allowed to pass through IC17 from pin 2 to pin 12, but if any of those signals are low, then video does not pass through to pin 12. A low state on any one of those three signals including V-Gate blanks the video output. I agree with Mark that V-Gate had better have a decent 'High' on it for the RAM TEST code to work because the RAM TEST code does not turn the 8255 pin 14 into an output and drive it high. It probably should. Therefore, as Mark says, you can remove one possible area of uncertainty by fitting a 4K7 resistor between IC24 pin 1 and IC24 pin 14 to make sure that IC24 pin 1 is always high unless it is intentionally driven low by the 8255. There is a chance that IC24 pin 1 (an input) is actually faulty and should in fact be floating much higher than the 1V apparently being measured on it. Should we have pudwink replace it and see what the voltage on pin 1 comes up to then? Don't all (working) TTL inputs have internal pullup resistors? |
Re: Sharp MZ-80K help needed on repair
5 Attachment(s)
Done the NOP test on the Z80 these are the results.
|
Re: Sharp MZ-80K help needed on repair
3 Attachment(s)
I think it looks right
|
Re: Sharp MZ-80K help needed on repair
Nice, that looks like it is working and you've obviously got the hang of tweaking the Time / Div control as you step through the pins so you can always see several pulses on the screen. It's nice the way that scope shows the V/Div and Time / Div settings on the screen itself.
From Pin 38, carry on through the Z80 pins 39, 40, 1, 2, 3, 4, 5, you should see more of the same with the waveforms changing ever more slowly. No need to take photos now that you know what you are looking for, just make sure all of those pins are flipping high and low at an even rate. Could you also put a 4K7 from IC24 pin 1 to +5V (IC24 pin 14) as Mark suggested - this is to ensure the correct operation of the RAM TEST code which does not appear to drive V-Gate properly. It can be removed later when the system is eventually working, because the code in MROM will drive the V-Gate signal properly. One thing I do notice is that your pin 38 trace doesn't appear to have gaps on the bottom edge like all the others, I don't know if this is perhaps because the other trace was turned on when that shot was taken. |
Re: Sharp MZ-80K help needed on repair
I have done the scope tests on the other pins of the Z80 and they look ok I have today replaced IC24 but still showing 1v on pin 14 I have not got any 4K7 resistors so will have to source some.
|
Re: Sharp MZ-80K help needed on repair
Dont know if its anything or just the resistors connected to the 0v but getting a pulsing through the picture.
https://www.youtube.com/watch?v=0bXXtlI_ZpA |
Re: Sharp MZ-80K help needed on repair
1 Attachment(s)
OK - that odd low voltage on the input of IC24 pin 1 certainly is a mystery. Let's see if we can lift it up a bit. The resistor doesn't have to be 4K7 exactly, up or down a bit in value will do. (2K2, 2K7, 3K3, 5K6, 6K8, etc).
Your next job is to look at A0 to A15 (as you have been doing) but this time on the other side of the address buffer ICs, IC44 and IC45. Look at IC44 pins 14, 16, 18, 3, 5, 7, 12, 9 and IC45 pins 14, 16, 18, 3, 5, 7, 12, 9 These should look the same as the A0 to A15 pins did on the Z80 - a very fast changing waveform on IC44 pin 14 (Buffered A0), working your way through all the buffered address pins to a slow changing waveform on IC45 pin 9 (Buffered A15). |
Re: Sharp MZ-80K help needed on repair
Ref: The disturbance on the picture, can you scope IC 35 (74LS244) pins 7, 5 and 14 and show what you see on those?
7 should be mainly high with short low pulses 5 should be staying high 14 should be mainly high with short low pulses |
Re: Sharp MZ-80K help needed on repair
Also, try removing all of the system RAM from its sockets and setting it to one side. Do you still get that disturbance on the display?
|
All times are GMT. The time now is 2:34 am. |
Powered by vBulletin®
Copyright ©2000 - 2022, vBulletin Solutions, Inc.
Copyright ©2002 - 2021, Paul Stenning.