UDG4ZXpand Thread

ZX-Team Forum
Antworten
Benutzeravatar
schombi
User
Beiträge: 2483
Registriert: 05.09.2012, 09:45
Wohnort: Kreis KA

UDG4ZXpand Thread

Beitrag von schombi » 30.03.2018, 08:22

udg0.jpg
udg0.jpg (38.9 KiB) 1087 mal betrachtet
Nachdem ich in Mahlerts ein UDG4ZXpand gesehen hatte und realisierte, dass dieses Thema vollkommen an mir vorbeigegangen war, musste ich nnatürlich auch eines haben. Nachdem es eingetroffen war und ich ein paar Probleme damit hatte (habe) fiel mir auf, dass ich hier im Forum nichts darüber finden kann - klar, das ist ein Produkt von Andy und darum natürlich auch im englischen Forum daheim. Nichtsdestotrotz dachte ich, es wäre vielleicht eine gute Idee hier einen Thread aufzumachen.

Hier kann man meine Fehlerbeschreibung/Troubleshooting nachlesen
https://www.sinclairzxworld.com/viewtop ... =20#p30336

Vielleicht hat ja jemand noch Tipps? Oder hat es doch etwas mit dem ZX8-CCB zu tun und ist etwas, das ich auch nicht mitbekommen habe?
Zuletzt geändert von schombi am 30.03.2018, 11:06, insgesamt 1-mal geändert.

Benutzeravatar
Jens
User
Beiträge: 1142
Registriert: 23.08.2005, 13:31
Wohnort: D-31582 Nienburg/Weser

Re: UDG4ZXpand Thread

Beitrag von Jens » 30.03.2018, 10:42

Hey Schombi!

Ich habe außer dem typischen "Wobble-Effekt" keinerlei Probleme bei der UDG-Nutzung mit dem ZXPand+

Hier ist ein Blog-Artikel, der das UDG ganz gut beschriebt (zur Info):

http://www.zx81keyboardadventure.com/20 ... -part.html

Gruß
Jens

P.S.: Ich nutze einen originalen ZX81 mit dem Video-Out von Pokemon
Der ZX81 rechnet mit allem, nur nicht mit seinem Besitzer...
Neues aus der KI-Welt... Die Automate kann sich selbst essen.

Benutzeravatar
Grautier
User
Beiträge: 449
Registriert: 18.11.2013, 18:44
Wohnort: Mühldorf

Re: UDG4ZXpand Thread

Beitrag von Grautier » 30.03.2018, 10:58

schombi hat geschrieben:
30.03.2018, 08:22
Nachdem ich in Mahlerts ein UDG4ZXpand gesehen hatte und realisierte, dass dieses Thema vollkommen an mir vorbeigegangen war, musste ich nnatürlich auch eines haben.
Ist mir genauso gegangen :D
Meines wartet noch in der Postagentur.

Benutzeravatar
schombi
User
Beiträge: 2483
Registriert: 05.09.2012, 09:45
Wohnort: Kreis KA

Re: UDG4ZXpand Thread

Beitrag von schombi » 30.03.2018, 11:07

Danke! Den Artikel kannte ich noch nicht.

Mein ZX8-CCB ist ebenfalls von Pokemon.

Benutzeravatar
Jungsi
User
Beiträge: 731
Registriert: 05.10.2012, 13:53
Wohnort: Simbach am Inn
Kontaktdaten:

Re: UDG4ZXpand Thread

Beitrag von Jungsi » 30.03.2018, 15:33

Ich hab ja auch das UDG und in meinem ZX81 eine Platine von Karl - keine Probleme damit.
Vieles rund um Sinclair und andere Retro-Computer:
http://www.jungsi.de

andyrea
User
Beiträge: 49
Registriert: 03.04.2018, 20:30

Re: UDG4ZXpand Thread

Beitrag von andyrea » 03.04.2018, 21:11

I have today worked on relentlesly Schombi's problem and the only ay i could reliably duplicate the problem as to deliberately mess with the clock signal at the edge connector. it seems that the Xilinx chip is more susceptible to a noisy clock that traditional 5v logic.

If anybody else has such problems then first i would try a known clean power supply, secondly if you or a nearby friend has good soldering skills the 0 ohm link at position R1 can be changed for a 330 ohm 1206 SMD resistor this resistor along with the capacitor next to it forms a classic RC lowpass filter, that should help with low levels of noise. it seems that not all zeddy's are the same when it comes to clock signal at the edge connector.

why does this problem only appear in ZeDragon and bad apple ( so far ) ? the display drivers disable int's all together so if the hsync counter on the udg board goes out of sync with the hsync counter in the ULA then the line counter on the UDG board gets incremented at the wrong time, so the character appears rotated bottom line goed to top... with almost all normal display driver that use halt to signify the end of the scanline then an int occurs which make the cpu generate a int-ack that resyncs the hsync counter so problem does not get a chance to exhibit itself, but with no re-syncing a noisy clock make the count get worse and worse.. so what can we do...

the proper fix would be to add a Schmidt trigger buffer before the clock signal enters the CPLD, maybe this can be implemented on next revision.

Regards Andy

Benutzeravatar
schombi
User
Beiträge: 2483
Registriert: 05.09.2012, 09:45
Wohnort: Kreis KA

Re: UDG4ZXpand Thread

Beitrag von schombi » 04.04.2018, 08:45

Thanks Andy for letting us know and for working on that!

Benutzeravatar
schombi
User
Beiträge: 2483
Registriert: 05.09.2012, 09:45
Wohnort: Kreis KA

Re: UDG4ZXpand Thread

Beitrag von schombi » 09.04.2018, 20:31

With the 330 Ohm resistor, the problem with the graphic glitches is gone :D

Thanks for helping, Andy!
UDG1.jpg
UDG1.jpg (44.43 KiB) 910 mal betrachtet
The fine vertical lines I can still see sometimes, but I guess this can be sorted by tweaking the potentiometers on the ZX8-CCB.

andyrea
User
Beiträge: 49
Registriert: 03.04.2018, 20:30

Re: UDG4ZXpand Thread

Beitrag von andyrea » 10.04.2018, 19:38

great stuff, glad it's all working good now. I shall incorporate the changes into future builds.

For everyone else, the changes that were made are resistor in clock circuit from 0ohm to 330ohm forming a classic RC low-pass filter ( maybe i should have done this in the first, my bad :oops: ) and secondly a slight change to the logic as follows.

The UDG board re-creates much of the ULA circuit and keeps track of Vsync, Hsync, NMI on/off along with the internal line counter for producing the alternate address lines. However it seems that with a noisy clock signal this count can get corrupted and unless it is re-synchronised it becomes a problem as the line counter increments at the wrong time during the scanline.

so why is it only apparent with some custom display drivers? on standard display routines using the INT mechanism the hsync counter automatically gets re-synchronised at the end of each scan line so even if there was a miscount during that scan line the early incrementing of the line counter occurs off screen and the count is correct again on the next scanline. however many custom display routines disable the INT's and so the hsync counter does not get re-synchronised every scan line and when errors occur the count gets worse and worse until it starts impacting on the displayed area.

So to help with this i also made a small change to the logic on the CPLD in addition to the usual INT-ACK's keeping the hsync counter in sync it also gets reset with Vsync's ( like we did on the clones in the old days :D ) this ensures that at least every frame the counter gets synchronised.

So if the resistor mod doesn't work for you and you have the means to program xilinx chips i can provide the JED file for you.

if you wish to message me its probably best to do so on the english forum as i tend to check that more often.

regards Andy

Antworten