ZX81CCP - komfortabler Video Ausgang für ZX81

ZX-Team Forum
Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 21.09.2017, 16:30

Nein aber es gibt keinen Grund, warum das nicht laufen sollte.

Bei den von Dir genannten Programmen greift der Controller ja gar nicht ein, schon gar nicht interessieren ihn irgendwelche Bildschirminhalte oder ob die Frames jeweils anderen Inhalt haben. Der Controller wird lediglich aktiv, wenn mehr als 9 Bildzeilen resp. 600us kein (horizontaler) Syncimpuls mehr kommt. Solange die von Dir genannten Programme ein sinnvolles Timing liefern (ca. 15.625 Hz) und der vertikale Syncimpuls nicht länger als 9 Zeilen ist, wird es hier keine Probleme geben. Auch wird das Timing nur beim Startup ausgemessen in den ersten 5 Frames. Es dürfte schwer sein, innerhalb dieser Zeitspanne eines der Programme zu laden und zu starten.

Wenn ich Zeit habe, teste ich mal. Wobei ich nicht alle Programme verfügbar habe. Wenn nicht bestell Dir doch einfach das Upgrade Kit für EUR 3.50, löte den Controller selbst auf ein vorhandenes Modul und teste alles was Dir so einfällt durch. Ist ja keine Wahnsinns Investition. Und löten kannst Du doch ... :wink:
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
siggi
User
Beiträge: 2163
Registriert: 06.12.2005, 08:34
Wohnort: D, Hessen, tiefste Werreraa
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von siggi » 21.09.2017, 18:25

PokeMon hat geschrieben:
21.09.2017, 16:30
Auch wird das Timing nur beim Startup ausgemessen in den ersten 5 Frames. Es dürfte schwer sein, innerhalb dieser Zeitspanne eines der Programme zu laden und zu starten.
Damit wird das Video-Timig der Rom-Routinen ausgemessen. Ein später gestartetes Programm kann ein anderes Timing haben (ich vermute, daß die Länge des horiz. Syncs unterschiedlich lang sein könnte, wenn ein Programm innerhalb eines Bildes von Lowres auf Hires und zurück hin und her schaltet).
Wenn ich Zeit habe, teste ich mal. Wobei ich nicht alle Programme verfügbar habe. Wenn nicht bestell Dir doch einfach das Upgrade Kit für EUR 3.50, löte den Controller selbst auf ein vorhandenes Modul und teste alles was Dir so einfällt durch. Ist ja keine Wahnsinns Investition. Und löten kannst Du doch ... :wink:
Mein Modul hat eine weisse Lackierung und auf der Rückseite könnte ich den Controller allenfalls aufkleben oder d'raufnageln (Lötpads sind da jedenfalls keine vorhanden). Wird nicht ganz so einfach ... :wink:

Gruß
Siggi
Mein ZX81-Web-Server: online seit 2007
http://zx81-siggi.endoftheinternet.org/index.html

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 21.09.2017, 21:57

Naja - dann bist Du nicht uo-to-date. :wink:

Das Timing ist nicht so entscheidend. Variationen im Hsync können sich bemerkbar machen, stören aber nicht die Funktion an sich. Das angeschlossene Display stellt sich da schnell drauf ein. Eigentlich dürften alle gängigen Programme mit dem 207 Zyklen Takt arbeiten, wenn sie eigene Video Routinen haben.

Es wird nur festgestellt, ob länger als 9 Zeilen (ca. 600us) überhaupt kein Sync Impuls mehr kommt. Nur dann springt der Sync Generator auf dem ZX8-CCB-SYNC an und sobald wieder ein einzelner Sync Impuls kommt, schaltet er sich wieder ab. Er überbrückt sozusagen nur die Pausen.

Wenn man versucht das Timing laufend auf Änderungen hin zu analysieren, handelt man sich nur andere Probleme wie Instabilität ein. So ein kleiner Controller hat auch nur begrenzt Rechenkapazität und Speicher (2kByte ROM und 128 Byte RAM).

Im Moment habe ich kein geeignetes Test Equipment resp. verspüre keine Lust wilde Umbauaktionen für solche zusätzlichen Tests vorzunehmen. Joachim hat eins bestellt und dann warte halt, bis Joachim getestet hat. :wink:

Es funktioniert im Übrigen nicht mit dem ZX81NU, soviel kann ich schon mal sagen. Der hat ein eigenwilliges Timing und bringt a) ständig HSync Impulse raus auch im FAST Mode wenn keine Bilderzeugung passiert und b) hat der störende Impulse auch noch auf dem Vsync. Im Grunde wird beim VSync einfach nur das HSync Signal invertiert. Eigenartig und abweichend von Standard Zeddys. Der ISS1 und ISS3 machen das nicht, die schalten den Ausgang brav ruhig. Ist eigentlich auch notwendig für LOAD und SAVE. Gut, das hat der NU nicht (mehr).

Vielleicht kann man das noch abfangen indem man ggf. noch auf fehlenden VSync triggert. Das hat aber auf jeden Fall deutlich höhere Latenzen von >20ms anstelle der jetzt 0.6ms.
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 24.09.2017, 11:33

Eigentlich ist das ZX8-CCB ideal um die Störsignale ... deutlich zu reduzieren (auf ein kurzes Microflackern) und solche Situationen wie in diesem Video bei 5:00 min zu vermeiden. :wink:

https://www.youtube.com/watch?v=Y4PRiQq5VZs&start=300
Zuletzt geändert von PokeMon am 05.12.2017, 00:04, insgesamt 2-mal geändert.
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 03.12.2017, 20:42

So es gibt ein Update für den Sync Generator.
Es wird nun auch LOAD und SAVE unterstützt.

Ursprünglich war ich davon ausgegangen, dass das bereits funktioniert, hatte das aber nur an meinem CRT getestet. Auf einem LCD oder Plasma TV funktionierte LOAD/SAVE dagegen nicht, weil die Sync Signale nicht korrekt waren. Jetzt wird in der neuesten Version sowohl LOAD als auch SAVE entsprechend erkannt und das Sync Signal untergemischt. Optisch sehen die Streifenmuster leicht unterschiedlich aus, insbesondere bei LOAD, eingehende Daten werden aber durch Veränderung des Musters auch erkannt, wenn man vorm Bildschirm sitzt. Z.B. zum Einpegeln.

Es gibt jetzt sozusagen 3 verschiedene Fälle, die das SYNC Modul unterscheidet:
1) Totalausfall (nach ca. 100 Scanline resp. fehlenden Zeilen, 6.5ms)
2) LOAD mit horizontalen Syncs in weit kürzeren Abständen (ca. alle 15-20us)
3) SAVE mit teilweisen Ausfall von Scanlines, wenn 20 oder mehr Scanline in einem Zeitfenster von 100 Scanlines fehlen, also 20% oder mehr

Das ist recht aufwändig zu programmieren, momentan sind etwa 1.5kB Code und 80 Byte RAM benutzt (inklusive Stack) von 2kb Code und 128 Byte RAM maximal verfügbar.

Beim NU gibt es nur eingeschränkte Unterstützung des Sync Moduls, es funktioniert nicht bei NTSC und auch nicht bei LOAD oder SAVE. Der NU haut ständig (ggf. invertierte) Syncpulse raus was extrem aufwändig zu analysieren wäre.

Das neue Release zeigt auch eine codierte Versionsnummer an. Aktuell ist Rev. 1.2, erkennbar an 2 dünnen Linien nach dem Einschalten auf dem Bildschirm (für ca. 1 Sekunde). Updates von vorhandenen Modulen können wir in Mahlerts machen, wer das möchte. Ich bringe den Programmer mit. :wink:

Jetzt kann ich mich dann ab morgen in Ruhe dem ZXblast widmen.
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
siggi
User
Beiträge: 2163
Registriert: 06.12.2005, 08:34
Wohnort: D, Hessen, tiefste Werreraa
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von siggi » 03.12.2017, 21:31

PokeMon hat geschrieben:
03.12.2017, 20:42
Es gibt jetzt sozusagen 3 verschiedene Fälle, die das SYNC Modul unterscheidet:
1) Totalausfall (nach ca. 100 Scanline resp. fehlenden Zeilen, 6.5ms)
2) LOAD mit horizontalen Syncs in weit kürzeren Abständen (ca. alle 15-20us)
3) SAVE mit teilweisen Ausfall von Scanlines, wenn 20 oder mehr Scanline in einem Zeitfenster von 100 Scanlines fehlen, also 20% oder mehr
Hi Karl
ohne davon zu viel zu wissen (TV-Timing hat mich noch nie so richtig interessiert :wink: )
Wäre es nicht am einfachsten, wenn der Prozessor einfach ergänzt, was fehlt?
Also bei Bild (nach Einschalten) "lernen", in welchem Zeitraster VSYNC und HSYNC nomalerweise kommen.
Und dann nach "Lernen" das Video-Signal überwachen und sofort ergänzen (im letzten Moment des gültigen Timings), wenn ein SYNC fehlt (Wiederhol-Timing basierend auf letzem gültigem Frame, Rückkehr zum "Lernen" mit erstem neuen gültigem Frame).
Dann würde der Übergang von SLOW auf kein-Bild ohne Flackern funktionieren (nur beir asynchroner Wiederkehr des Bildes würde es flackern). Und die verschiedenen Fälle und 50/60Hz müssten damit abdeckbar sein.

Ober das aber auch mit NU funzt, kann ich nicht abschätzen ...
Und ob das einfach Hingeschriebene so funzen würde (im real vorhandenen Prozessor) kann ich schon garnich abschätzen :mrgreen:

Gruß
Siggi
Mein ZX81-Web-Server: online seit 2007
http://zx81-siggi.endoftheinternet.org/index.html

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 03.12.2017, 23:44

So einfach ist es nicht. Wenn das Timing nicht 100% exakt ist, hat man Störungen im Bild. Es liegt allein in der Natur der Sache, dass beide Syncsignale über die Zeit auseinander laufen werden. So genau kann man es gar nicht ausmessen. Der Controller läuft nur mit 16 MHz und muss die Signale per Software steuern. Es gibt zwar Interrupts, aber auch die haben Latenzen. Und als Single Core kann die Überwachung der eingehenden Impulse (Interrupts) nicht zeitgleich mit dem internen Timer (der auch Interrupts erzeugt) funktionieren.

Allein ein Jitter von einem Pixel ist unangenehm und ein Pixel hat eine Dauer von 150ns. Bei 16 MHz Clock Frequenz ist ein Clock bereits 62.5ns und machen Befehle brauchen 2 Clocks und ein Interrupt durchaus mehr mit Adresse auf Stack usw. wenn er nicht gerade im Timer Interrupt festhängt. Das sind halt nicht irgendwelche Logic Gates. Vergleichbar ist das vielleicht mit einem Bit Bang Interface - da braucht man ein Vielfaches der Taktfrequenz. Mit Raspi oder so wäre das machbar aber ein Raspi kostet ein Vielfaches von so einem Controller, von der Größe ganz zu schweigen.

Wenn man nur 1 Frame so synchronisieren möchte (312 Zeilen) müsste die Genauigkeit deutlich besser als 0.3% sein. Allein ein Jitter von einem halben Pixel (75ns) bringt bereits eine gewisse Unschärfe. Die Displays sind halt extrem schnell in diesem Sinne oder der Kathodenstrahl bei einem CRT.

Und bei LOAD dürfte der Prozessor nicht nur ergänzen was fehlt sondern müsste das was zu viel ist, auch noch rausfiltern. Weil das Timing plötzlich auf eine Horizontalfrequenz von 60-70 kHz springt, also Horizontalpulse alle 15-20us. Und auch wenn (im SLOW Mode) das Display bei Eingabe einer Zeile und Verschiebung des DFILE kurz flackert ist auch hier die Display Steuerung kurz inaktiv und setzt anschließend mit einem Vertikalpuls ein, der aber völlig asynchron zum aktuell laufenden "eigenen" Video Timing ist. Wenn ich da auf mein internes Timing beharren würde, verschiebt sich sofort die Position der ersten sichtbaren Zeile eines Bildes und der Vertikalpuls vom ZX81 ist dann plötzlich mitten im Bild.

Insofern, Dein Ansatz klingt zwar gut, läßt sich mit vertretbarem Aufwand aber so nicht umsetzen. Zumindest nicht, wenn man das Bild nicht schlechter machen will. Ich denke nicht, dass jemand Interesse am ZX8-CCB für die Verbesserung des Videosignals hat, wenn es de facto verhunzt wird. :wink:
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
siggi
User
Beiträge: 2163
Registriert: 06.12.2005, 08:34
Wohnort: D, Hessen, tiefste Werreraa
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von siggi » 04.12.2017, 10:19

PokeMon hat geschrieben:
03.12.2017, 23:44
So einfach ist es nicht. Wenn das Timing nicht 100% exakt ist, hat man Störungen im Bild.

Allein ein Jitter von einem Pixel ist unangenehm und ein Pixel hat eine Dauer von 150ns.
Hallo Karl
ich hatte auch nicht an das Syncronisieren auf Pixel gedacht, nur auf die Syncs. Nach den Bildchen hier

http://martin.hinner.info/vga/pal.html

muß ein HSYNC erst nach 64 usec wieder da sein (sonst ergänzt man ihn halt schnell). Und der VSYNC nach N x 64 usec. Und usec-Timing sollte man auch mit NOP- und Taktzählen des eigenen Takts machen können. Und ist es an dieser Stelle kritisch, wenn ein SYNC-Signal mal ein paar 100 nscec früher oder später kommt (Jitter durch Prozessor Geschindigkeit)? Es kommt dann ja kein Pixel mehr, der hin und her hüpfen könnte, weil ja das Bild ausgefallen ist ...
Und bei LOAD dürfte der Prozessor nicht nur ergänzen was fehlt sondern müsste das was zu viel ist, auch noch rausfiltern.
Wieso filtern? Das macht beim alten Fernseher doch auch keiner! Der fängt sich das Kuddelmuddel ein und zeigt irgendwas (aber alles!). Kann man denn da nicht stur das feste HSYNC-VSYNC-Raster zusätzlich raushauen wie es vor Beginn des LOAD war und sonst alles durchlassen???
Insofern, Dein Ansatz klingt zwar gut, läßt sich mit vertretbarem Aufwand aber so nicht umsetzen. Zumindest nicht, wenn man das Bild nicht schlechter machen will. Ich denke nicht, dass jemand Interesse am ZX8-CCB für die Verbesserung des Videosignals hat, wenn es de facto verhunzt wird. :wink:
Solange ein Bild da ist, soll er ja nicht anspringen. Erst wenn es nicht mehr da ist, soll er anspringen (dann kann nichts mehr verhunzt werden, denn es ist nichts mehr da).

Ob und wie man damit kurzeitigen Bildausfalls (beim Eingeben einer Programmzeile) brauchbar handhaben kann, kann ich wieder nicht abschätzen :mrgreen:

Gruß
Siggi
Mein ZX81-Web-Server: online seit 2007
http://zx81-siggi.endoftheinternet.org/index.html

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 04.12.2017, 15:59

siggi hat geschrieben:
04.12.2017, 10:19
Hallo Karl
ich hatte auch nicht an das Syncronisieren auf Pixel gedacht, nur auf die Syncs. Nach den Bildchen hier

http://martin.hinner.info/vga/pal.html

muß ein HSYNC erst nach 64 usec wieder da sein (sonst ergänzt man ihn halt schnell). Und der VSYNC nach N x 64 usec. Und usec-Timing sollte man auch mit NOP- und Taktzählen des eigenen Takts machen können. Und ist es an dieser Stelle kritisch, wenn ein SYNC-Signal mal ein paar 100 nscec früher oder später kommt (Jitter durch Prozessor Geschindigkeit)? Es kommt dann ja kein Pixel mehr, der hin und her hüpfen könnte, weil ja das Bild ausgefallen ist ...
Du denkst jetzt nur an das ausfallene Bild. Die Lösung muss sich ja auch mit dem vorhandenen Signal vertragen. "Sonst ergänzt man ihn halt schnell" hört sich einfacher an als es durchführbar ist. Wann fehlt er denn ? Nach 64.1 Mikrosekunden ? Oder nach 64.2 ? Und wie soll der Mikrocontroller dann "schnell" den Puls ergänzen wenn die Latenzzeit sagen wir mal ein paar 100 Nanosekunden sind ? Das sind bei einem Fernsehbild schon fast Welten. Naja zumindest bei Full HD ist ein Anzeigepixel etwa 27ns breit (1920 Pixel pro Zeile). Beim ZXmore in der Videoschaltung tauchen bei hochauflösenden Monitoren hier sehr feine dünne Linien auf durch ein kleine Unachtsamkeit im Timing. :wink:

Eine Voraussetzung für einen nahtlosen Übergang ist daher ein absolut synchroner Clock. Das ist mit Software und Interruptsteuerung durch Signalwechsel an Porteingängen schwer machbar. Die reagieren auf Pegelwechsel aber nicht so schnell, wie Du Dir das vorstellst. Wenn der Prozessor parallel noch in einem eigenen Timer hängt kann das auch einige Mikrosekunden später passieren, dass er darauf reagiert. Und er braucht einen eigenen Timer um zu wissen, ob der Puls zu früh oder zu spät kommt. Und er braucht einen I/O Interrupt um festzustellen ob was kommt. Insofern sind schon mal bei einem Single Core 2 Interrupt Routinen, die der arme Kerl nicht zeitgleich ausführen kann.

Und es liegt in der Natur der Sache, dass man die beiden Takte niemals dauerhaft synchron bekommt außer mit speziellen Hardware Schaltungen. Im Fernseher ist es halt so, dass der horizontale Timer etwas langsamer läuft (z.B. 65-66us pro Zeile) und mit jedem Sync vor dem Ablauf wieder auf Anfangsposition gesetzt wird. Aufgrund der Trägheit der Bildröhre bei früheren Geräten war ja überhaupt ein recht breiter Sync Impuls notwendig, damit der Kathodenstrahl die Zeit hatte, um zurückzulaufen. Deswegen heißt es ja auch horizontales Blanking oder Austasten, weil man den Rücklauf freilich auch sehen könnte auf dem Schirm. Mit Ende des Sync Impulses läuft der Strahl wieder los und zeigt daher im Idealfall Pixel sauber untereinander an. Wenn der Sync immer zur rechten Zeit kommt. Im Übrigen sind da nur enge Spielräume für die Synchronisation und insofern stark abweichende horizontale Syncs als schwarze Balken auf dem Schirm sichtbar.

Angenommen, man bekäme den horizontalen Sync sauber synchronisiert (was in Software sehr schnelle CPUs erfordert), bleibt immer noch die Problemstelle vertikaler Sync. Denn auch hier gibt es analog zum horizontalen Synchronisatonsproblem das vertikale. Und das verursacht die eigentlichen sichtbaren Bildstörungen (flackern). Die Synchronisation vertikal ist in Software viel leichter zu machen, weil wir hier 20 Millisekunden Zeitfenster haben statt 64 Mikrosekunden. Dennoch bleibt das Problem, wenn z.B. eine Programmzeile eingefügt wird und die Bildverarbeitung kurz unterbrochen wird (auch im SLOW Modus).

In dem Moment wo die Bildverarbeitung ausgeschaltet wird, kann der Sync Generator ja noch einspringen. Was aber wenn die Bildverarbeitung wieder einsetzt, also vom temporären FAST Mode während der Speicherorganisation wieder zurückgeschaltet wird ? Die Bildverarbeitung beginnt dann immer hart mit einem vertikalen Syncimpuls. Es würde auch wenig Sinn machen, sich die letzte Position vertikal zu merken über Zähler, weil man dann wissen müsste, wie lange der temporäre FAST Mode aktiv war, also wieviel Zeilen zu überbrücken sind. Die Dauer für das Einfügen einer Zeile hängt z.B. davon ab, wie lang die Zeile ist. Oder ob das DFILE komprimiert ist oder nicht oder wie groß der Variablenspeicher ist. Kann man leicht nachprüfen wenn man eine Zeile einfügt bei einem nackten Zeddy und mit DIM A$(1000) oder DIM A$(10000).

So kommt der vertikale Impuls in der Regel immer zur falschen Zeit und auch hier braucht das Anzeigegerät dann Zeit um sich neu zu synchronisieren. Wenn der vertikale Sync in der Mitte des Bildes ist (ungünstigster Zeitpunkt) dann ist er bei 312 Zeilen pro Frame gut 150 Zeilen zu früh oder zu spät. Selbst wenn man versuchen würde, einen weichen Übergang zu erreichen mit nicht mehr als 10 Zeilen pro Frame bräuchte es dann 15 Frames bis es wieder im Lot ist. Insofern habe ich darauf verzichtet, weil es auch keinen spürbaren Verbesserungseffekt gibt. Jede Veränderung des vertikalen Timings wird von jedem Gerät mit einem kurzen Zucken quittiert. Dann lieber einmal Zucken als 15 mal. Vertikale Syncfehler haben auch deutlich weniger Probleme mit den modernen Fernsehern, die sind da eher genügsam. Außerdem kommt hier die NTSC Kompatibilität zum Tragen. Wenn ein Frame mit 260 Zeilen entdeckt wird, kann das ggf. die NTSC Erkennung auslösen.

Jetzt gibt es aber noch andere Probleme, wie z.B. dass es keinen Unterschied gibt zwischen Bildausfall und Vertikalimpuls beim ZX81. Ob das Bild ausfällt, weiß ich sozusagen erst wenn die Impulse länger als 6 Zeilen ausbleiben. Vorher kann es ein Vertikalimpuls sein. Natürlich kann man hier weder eine Abfrage einbauen, IF VERTIKAL=Y THEN ALLESOKAY. Aber allein diese Abfrage müsste der Prozessor wieder ausführen, was zusätzliche Latenzen einräumt.

Dazu kommt dann noch, dass schnellere Sync Impulse für LOAD sprechen, hier muss also auch eine Routine her nach dem Motto "wenn letzter Sync Impuls weniger als 60us zurückliegt - dann mach das". Oder wenn SAVE kommt haben wir eine Mischung aus Perioden von je 150us ohne Sync Puls und mit Sync Puls (der kann nicht unterdrückt werden bei einem Tape Signal 1). Dazu kommt, dass diese Phasen wieder asynchron sind, da die 150us in Z80 Software gemessen werden und die 64us in Hardwaretimer. Sieht witzig aus auf einem Oszilloskop. Wenn man DIM A$(10000) und SAVE *X" eingibt, läuft der SAVE entsprechend lang. Dazwischen gibt es dann wieder Pausen mit 1.3 Millisekunden (20 horizontale Syncs fehlen).

Zu guter Letzt kommt auch noch eine Steuerung des Video Eingangs zum Tragen. Bei kurzen Sync Fehlern (oder während langer FAST Perioden) soll der Bildschirmhintergrund weiß sein (zumindest strebe ich das aus optischen Gründen an) und bei LOAD und SAVE soll das Pixelsignal durchgeschaltet werden. Auch hier sind wieder Fallunterscheidungen notwendig. Ob man das Bildsignal grundsätzlich durchschaltet (also plötzlich schwarz in langen FAST Perioden) ist eine geschmackliche Frage, würde aber an den grundsätzlichen Problemen wie Synchronisation und Wiedereinsetzen der Bilderzeugung mitten im Frame nichts ändern.

Die 1.5 KB Code für diese recht simple Aufgabe kommen also nicht zustande, weil ich nicht effizient in C programmieren könnte sondern weil die Aufgabe nicht so simpel ist, wie sie im ersten Moment klingt. :wink:

Natürlich könnte man mit einem schnelleren Controller vielleicht einige Sachen in den Griff kriegen. Das hier ist halt eine Low Cost Lösung mit einem 1 EUR Chip (je nach Stückzahl). Muss man halt auch berücksichtigen. Aber es erfüllt seinen Zweck. Ansonsten wäre hier eine Lösung mit einem gepufferten Bildspeicher die optimale Lösung. Kommt vielleicht nochmal irgendwann. Und ein Zeddy ganz ohne Flackern ist streng genommen kein Zeddy mehr. :lol:
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
siggi
User
Beiträge: 2163
Registriert: 06.12.2005, 08:34
Wohnort: D, Hessen, tiefste Werreraa
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von siggi » 04.12.2017, 16:48

PokeMon hat geschrieben:
04.12.2017, 15:59
Bei kurzen Sync Fehlern (oder während langer FAST Perioden) soll der Bildschirmhintergrund weiß sein (zumindest strebe ich das aus optischen Gründen an)
:twisted: Bei FAST ein WEISSER Bildschirm? Das ist Blasphemie!!! Beim FAST ist jeder Röhren-TV dunkelschwarz! Und wenn das nicht so ist, ist es kein ZX81 mehr! :roll:
Allenfalls ein kaputter Zeddy, dem das inverse K links unten fehlt. Oder der keinen Toner mehr im Zeichengenerator hat :wink:
und bei LOAD und SAVE soll das Pixelsignal durchgeschaltet werden. Auch hier sind wieder Fallunterscheidungen notwendig. Ob man das Bildsignal grundsätzlich durchschaltet (also plötzlich schwarz in langen FAST Perioden) ist eine geschmackliche Frage,
Nein, das ist DIE Frage, ob es noch ein ZX81 ist!
Weisser Bildschirm im FAST-Modus :shock: Das ich das noch erleben muss ... :mrgreen:

Siggi

PS: heute ist nicht der 1. April, also lass die Vera... ung :wink:
Mein ZX81-Web-Server: online seit 2007
http://zx81-siggi.endoftheinternet.org/index.html

Benutzeravatar
bodo
User
Beiträge: 304
Registriert: 14.02.2007, 17:21
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von bodo » 04.12.2017, 20:55

Sach mal, kannste nich nen noch schnelleren(*) Controller nehm, und dann ein farbiges Bild erzeung, wenn Papa Zeddy nich selbst eins macht? :twisted:

(*) fürn Farbburst
B0D0: Real programmers do it in hex.

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 05.12.2017, 00:05

PokeMon hat geschrieben:
24.09.2017, 11:33
Eigentlich ist das ZX8-CCB ideal um die Störsignale ... deutlich zu reduzieren (auf ein kurzes Microflackern) und solche Situationen wie in diesem Video bei 0:40 min zu vermeiden. :wink:

https://www.youtube.com/watch?v=Y4PRiQq5VZs&start=40
So siggi - wo ist denn da jetzt bitte ein schwarzer Bildschirm im FAST Modus ? :wink:
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
siggi
User
Beiträge: 2163
Registriert: 06.12.2005, 08:34
Wohnort: D, Hessen, tiefste Werreraa
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von siggi » 05.12.2017, 09:04

PokeMon hat geschrieben:
05.12.2017, 00:05
PokeMon hat geschrieben:
24.09.2017, 11:33
Eigentlich ist das ZX8-CCB ideal um die Störsignale ... deutlich zu reduzieren (auf ein kurzes Microflackern) und solche Situationen wie in diesem Video bei 0:40 min zu vermeiden. :wink:

https://www.youtube.com/watch?v=Y4PRiQq5VZs&start=40
So siggi - wo ist denn da jetzt bitte ein schwarzer Bildschirm im FAST Modus ? :wink:
Immer zwischen den tausenden IN/OUT-Befehlen, die beim Laden des P-Files Richtung MINI-Mefisdos-Interface und beim Laden via ZeddyNet Richtung ZeddyNet-Karte (alles im FAST-Modus) rausgetrommelt werden. Muß ich Dir wirdklich erzählen, daß damit auch diverse Signale Richtung Video-Ausgang von der ULA losgetreten werden? :mrgreen:

Läßt man diese IN/OUT weg, bleibt im FAST alles schwarz: siehe

Code: Alles auswählen

10 FAST
20 GOTO 20
Viel Spaß beim Zusehen :mrgreen:

Siggi

PS: Deshalb sieht ja auch der Bildschirm meines aktiven Webservers, der im FAST läuft und ständig die Z80-SIO per IN/OUT pollt, so aus wie auf diesem Bild:

Bild

PS: NEIN, der macht da weder SAVE noch LOAD ...
Mein ZX81-Web-Server: online seit 2007
http://zx81-siggi.endoftheinternet.org/index.html

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 05.12.2017, 16:42

Ihr könnt hier soviel jammern wie ihr wollt, der neue Standard ist weißer Schirm im FAST Mode mit ZX8-CCB-SYNC.
Basta. :mrgreen:

Und wenn jemand wirklich schwarz möchte, kann er ja einen CRT nehmen und das normale ZX8-CCB. :wink:
Außerdem reduziert das das Flackern.

Wer das invertierte Bild nutzt, hat immer einen schwarzen Hintergrund. Dann blendet das Modul oben eine weiße Linie ein. :wink:
Also entweder schwarz oder weiß aber kein Mischmasch.
Wer seinen Computer ehrt, lebt nicht verkehrt.

Benutzeravatar
siggi
User
Beiträge: 2163
Registriert: 06.12.2005, 08:34
Wohnort: D, Hessen, tiefste Werreraa
Kontaktdaten:

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von siggi » 05.12.2017, 19:55

Na dann werden einige Spiele ---äh Programme - anders laufen als designed: bei meinem Interceptor-Game wird - wenn der Abfangjäger vom UFO zerstört wurde und der Pilot sich Richtung ewige Jagdgründe auf den Weg macht - der Bildschirm erstmal zum Flackern gebracht und wird dann endgültig dunkel (fast so wie im richtigen Leben :wink: ).

Rate mal, wie ich das gemacht habe :wink:
Mein ZX81-Web-Server: online seit 2007
http://zx81-siggi.endoftheinternet.org/index.html

Benutzeravatar
PokeMon
User
Beiträge: 4568
Registriert: 31.08.2011, 23:41

Re: ZX81CCP - komfortabler Video Ausgang für ZX81

Beitrag von PokeMon » 12.12.2017, 00:13

Na im richtigen Leben kommt da nach dem Tode ein Tunnel mit Licht (habe ich mir sagen lassen).
Dann stimmt es doch wieder, wenn der Bildschirm anschließend schön weiß leuchtet. :wink:
Wer seinen Computer ehrt, lebt nicht verkehrt.

Antworten