Help! black screen!!

Page 2/2
1 |

By ali6x944

Master (152)

ali6x944's picture

16-01-2019, 20:52

https://drive.google.com/file/d/1Z_ypJvF5l6tqiz6MkfHKlT_1kD3...
https://drive.google.com/file/d/1v_e58u5wee-q9g6H0xlNdKUlm2k...
some captures I was able to upload to google drive so far, the cpu's data line is f@!#ed up to a certain degree, I suspect either a buffer is loading the data line so badly it is causing the horrible waveform or the cpu's data bus is dead.
I am feeling sort of lost at this point

By ali6x944

Master (152)

ali6x944's picture

16-01-2019, 20:56

do I need to replace video ram?

By ali6x944

Master (152)

ali6x944's picture

18-01-2019, 05:49

Good morning again,
The certain pins on the data bus is stuck on or off, I am looking for the 3-state buffer but I can't seem to find it, however I think due to the lines being stuck the cpu is to blame...
I am not sure however that this is true.

By RetroTechie

Paragon (1475)

RetroTechie's picture

18-01-2019, 18:07

There's a module plugged into the mainboard with 1 or more ROMs on it, correct? Can you unplug & re-plug that module a few times? Also it would be nice if you can identify what chips are on there, or upload a photo of components on it. Any EPROMs on it btw?

ali6x944 wrote:

the cpu's data line is f@!#ed up to a certain degree, I suspect either a buffer is loading the data line so badly it is causing the horrible waveform or the cpu's data bus is dead.

Not necessarily! Periods where /MREQ and /RD are both low, is where memory is read (most likely instruction fetch from BIOS ROM). Your picture shows D0 low there, that is: a value of ???????0 binary is read. Looks okay - although D0 should read "1" for 1st instruction fetch from ROM (DI instruction) I think? May not mean much.
In between (where /MREQ goes low but /RD stays high) is the Z80's refresh cycle, where databus is left in hi-Z so you'd expect datalines returning high due to pull-up resistors on the databus. That happens relatively slow (like in an RC circuit), which is exactly what we're seeing. So this may be okay & normal behaviour. Edges should be steep only where data outputs of some IC go active.

Quote:

The certain pins on the data bus is stuck on or off, I am looking for the 3-state buffer but I can't seem to find it, however I think due to the lines being stuck the cpu is to blame...

Stuck high might mean alternating between pulled-up (by resistors) and driven high, making it appear as if stuck. Could be fine.
Stuck low (continuously!) means some IC is driving that line low even when told not to. In that case: with machine powered off, measuring resistance between data line & GND, exact value read will be slightly lower if test pins of your meter are physically closer to the 'short circuit'. So moving around your test pins may help determine which IC is pulling that line low (and disconnecting that pin from IC should resolve that issue).

What would be useful here, is disable/remove BIOS ROM (like, unplug that ROM module?), and then connect a tri-state buffer to the databus that causes "NOP" instruction to be read whenever Z80 does an instruction fetch. An IC like a 74LS244 or similar would do. Inputs wired to GND, enabled by /MREQ, /RD or /ROMCS signal? A working Z80 would then cycle its address lines like a binary counter, which is really easy to check with a scope (and nothing to unsolder to check this Smile ).

Video signal you posted (or just CSYNC?) looks fine at first glance. Other things worth checking:

  • A couple of the datalines simultaneously, using /ROMCS as trigger. This may tell what's the first opcode being read from ROM (DI ?)
  • Same, but with a few of the lower address lines. This may tell from what ROM address it's being read.
  • Any activity on videochip /CSR or /CSW lines? This could help to tell "Z80 isn't starting / ROM dead" apart from "bad RAM or VDP issues".

By ali6x944

Master (152)

ali6x944's picture

20-01-2019, 15:07

I unplugged and replugged it a couple of times and that didn't make the screen do anything I will try unplugging it and do the low data bus test tonight, could you elaborate more on the test circuit -anything I should look for and schematic if possible-
chips on the module board:
1) HD74LS148P; 8-line-to-3-line Octal Priority Encoder
2) SN74LS32N; quad OR gate
3) SN74LS00N; quad AND gate
4) XD025C0-052 <-- probably the ROM
photo:
https://drive.google.com/file/d/1ShcCfJzCsaJpDw_QN0CktALFj2v...
https://drive.google.com/file/d/172v5LhLpX6jxfU5lWQlHu8_IZel...
about the video signal, this is what I got directly of the composite video out.
the weird part is that the sync interval is there but no video data :-?
I will check the ROM module board activity tonight, and upload the results asap

By ali6x944

Master (152)

ali6x944's picture

26-01-2019, 14:35

@RetroTechie can I use a 74LS241 instead of 74LS244 ?
sorry it is what I have at hand...
Should all be the control signals be connected without any changes?

By ali6x944

Master (152)

ali6x944's picture

05-02-2019, 17:49

where is /ROMCS? I can't seem to find it Question
also, there are 2 74ls244 chips in the board under the ROM module, also I have recently got some 74LS244 chips, I test the circuit, I just need to know how to hook it up...

By RetroTechie

Paragon (1475)

RetroTechie's picture

06-02-2019, 17:55

The LS241 and 244 are very similar. Both include 2 groups of 4 buffers, each group with their own enable input. But.. datasheet I have here says that for the '241 one enable is active-low (=what you want to have here), and the other is active-high. Which would make the '241 a pain to use for this purpose.

Going with an LS244: you'd wire all 1A1..4 and 2A1..4 inputs to circuit ground. Then 1Y1..4 and 2Y1..4 outputs each to a different data line (D0..D7). Tie the 2 enable inputs (pin 1 & 19) together, and to your 'read memory' signal. For this use, I think simply Z80's /MREQ or /RD should work. Oh and don't forget power supply pins on the LS244! Note that you have to make sure no other memory chips outputs data while the '244 does that, so better remove that ROM module (RAM chips no problem as they aren't being accessed in this situation). To be safe, you could add some low-value series resistor (100-220 Ohm or so) to each data line. The basic idea is that whenever the Z80 does an instruction fetch, it reads "0" (NOP). A variation on this circuit.

As for the /ROMCS signal: you're right, S1985 doesn't have it! According to that IC's datasheet, the relevant signal would be /SLT0/00 (S1985 pin 47). Not needed for this test, but could be useful for fault-finding.

By ali6x944

Master (152)

ali6x944's picture

16-02-2019, 19:08

hi again,
as I was soldering the connections between the z80 and LS244 I have noticed a rather weird resistance measurement on
pin 11 of the z80, which was roughly 49 ohms measured between pin11 of the z80 and ground pin29 of the z80.
now is this normal? shouldn't this affect the voltage previously measured which was ok at 4.9-5v?
I will continue soldering the chip and I will inform you with all the proceedings,
thanks for your help.

Page 2/2
1 |
My MSX profile