Ich kenne die Schaltung nicht, aber ich wette, die LED wird einfach gleichzeitig mit dem Filter-Bit gesetzt. Das hat keinerlei Aussagequalität. Wenn der Filter kaputt ist, zeigt die LED genau was an? Weder den Defekt noch die korrekte Funktion. Die kannst du nur per Gehör feststellen.
Und genau DAS klappt nicht. Wie soll eine Schaltung beurteilen, ob ein Sound abgespielt wird? Selbst wenn man die SID-Register zurücklesen könnte (was man nicht kann), würde ein dort gesetztes z. B. Wellenformbit ja nicht heißen, dass der Sound auch gespielt wird ...
... genauso wenig, wie ein gesetztes Filterbit bedeuten würde, dass Filter auch aktiv ist.
Irgendein Flag zurücklesen ist wie irgendeine LED setzen - ein Beweis, dass das Bit im Register gesetzt werden konnte. Nicht mehr, nicht weniger. Ob das im IC überhaupt eine Auswirkung hat, und wenn ja, welche und ob die richtige, das kann man nicht in Software feststellen, sondern nur anhand des Sounds beurteilen.
Das ähnelt insofern etwas deinem Wunsch, mit einem Modul mit Display durch den C64 beurteilen und anzeigen zu lassen, ob der VIC defekt ist. Ob ein Bild kommt oder nicht, sieht man am Monitor. Software kann da nichts beurteilen, hier nicht wie da nicht.
Display More
Amiga: weiß ich auch nicht, wie genau das geschaltet ist, war auch nur ein Beispiel. Wenn der Rechner mit nem Guru abstürzt, wirkt sich das unter anderem auch auf den Sound aus, weil während der Fehlermeldung sowohl die Power-LED abwechselnd HELL/DUNKEL blinkt und der Sound hell/dumpf klingt, weil dann auch der Filter aus/an geschaltet wird - warum und wie genau das gemacht wird, weiß ich nicht.
Eine Schaltung könnte schon etwas ermitteln, kommt halt drauf an, WAS man ermitteln will. Um meinen Gedankengang etwas zu verdeutlichen - und das jetzt bitte nicht als anzweifeln Deiner Erklärung betrachten, ich denke nur manchmal halt in ganz andere Richtungen vielleicht, was ja nicht bedeutet, dass es gehen muss, aber möglicherweise ist mein Gedanke ja auch nicht grundsätzlich komplett bescheuert?!? Also ich versuchs mal in Worte zu fassen, was meine Vorstellung da wäre: Du gibst "Befehle" über ein Pin des SID rein und bekommst Sound-Signale über ein/mehrere andere Pins raus - okay, Du kannst nicht rücklesen, was drin steht, wenn Du erst mal Daten reingeschrieben hast und klar, eine 1 in einem Register heißt nicht, dass auch tatsächlich an Pin X das herausgegeben wird, was die 1 bewirken soll - soweit verstanden. ABER Du bekommst - wenn der SID i.O. ist, ein bestimmtes Signal, was man messen könnte, aufzeichnen könnte und damit irgendwie auch auswerten - wie auch immer sei mal dahin gestellt. Ist ja wie gesagt nur meine Idee, bzw. Vorstellung. Schreibst Du nun eine 2 in das Register, solltest Du ein anderes Signal an Pin X oder vielleicht das gleiche Signal an Pin Y erhalten, bei einer 3 wieder ein anderes, oder eins an Pin Z. Nehmen wir mal die erste Variante - je nach Wert im Register wird immer ein anderes Signal an Pin X ausgegeben. Du könntest also gezielt einen "Sägezahn" ins Register schreiben und solltest dann bei jedem SID idealerweise ein sehr ähnliches Signal am Pin X bekommen, messen können und damit auswerten
Also je nachdem, was Du in welche Register an Daten schreibst, solltest Du bei jeweils gleichen Werten auch immer das gleiche Signal ausgegeben bekommen - durch die Streubreite der SID's hätte man natürlich auch ein weniger exakt definiertes Signal am Pin X - aber kommt ein VÖLLIG anderes Signal heraus, oder gar keins, wäre das vielleicht als Zeichen zu werten, dass der Filter, der Kanal, was auch immer - das weißt Du besser, als ich - defekt sein könnte, besonders wenn gar kein Signal kommt. Und klar sollte man dafür - durch Versuche, Erfahrungen, Experimente mit verschiedenen SID's solche Werte für die jeweiligen Register festlegen, die auch bei großer Streubreite der SID's eine einigermaßen zutreffende Erkennung der ausgegebenen Signale zulassen. Und da denke ich jetzt nicht binär, dass ein exakter Wert im Register immer zu 100%ig exakt gleiche Signale generiert, was ja eben durch verschiedene SID's nicht möglich ist, aber immerhin in ermittelten Grenzen relativ sichere Aussagen ermöglicht.
Ist schwierig zu erklären, wie ich das meine, aber vielleicht nochmal etwas anders formuliert: der Wert 2 soll auf Soundkanal 1 einen Sägezahn ausgeben und an Pin X wird ein Sägezahnsignal (Strom-Spannungskurve erfasst, was mal etwas größere Werte beinhaltet, mal etwas kleinere, mal mit ein paar Störungen, mal ohne - aber man kann dieses Signal einem Sägezahn zuordnen. Ein anderer Wert erzeugt einen Sinus und damit wird genauso verfahren - und die Kurvenverläufe von Strom/Spannung lassen dann erkennen ob oder ob kein Sinus am Pin X ausgegeben wird usw.
Soweit noch nachvollziehbar, was ich meine? Also könnte man über das an Pin X/Y/Z ausgegebene Signal doch theoretisch erfassen, ob das, was man erzeugen WILL auch annähernd ausgegeben wird?
Was ICH nicht einschätzen kann - aber Du vermutlich - ob man diese ausgegebenen Werte wieder direkt im 64er erfassen könnte, aber ich denke mal NEIN? Und damit ist natürlich dann klar, dass meine Idee so nicht funktionieren kann. Aber wenn man so eine Möglichkeit der Messung und Auswertung hat, dann könnte man damit und mit der passenden Software durchaus jeden SID auf jede Funktion auch automatisch prüfen lassen, oder?
das funktioniert natürlich NICHT durch das Abspielen von Modulsounds - logisch - aber mit ganz gezielten Testsignalen wäre das durchaus machbar.
Also mit nem Steckplatz und entsprechender Beschaltung und passender Software könnte man zumindest einen SID-Tester aufbauen dann... Vielleicht mit nem RasPi oder Arduino oder was auch immer, für die Auswertung der Signale. Wäre zwar dann deutlich mehr Aufwand und müsste auch entsprechend programmiert werden - ABER es sollte möglich sein... 
Display am Modul - trifft ja auch auf 99% aller Defekte zu, aber wenn ich kein Bild habe, ist das trotzdem nicht der eindeutige Beweis, dass der VIC dann defekt sein muss - auf dem Weg vom VIC-Signal bis zum Display gibts eben auch noch genau die Punkte, die Du mir gerade erklärt hast am SID, die Du nicht erfassen kannst. Natürlich wird der erfahrene Bastler mehr als 1 64er zur Verfügung haben und mehrere VIC's zum Tauschen und schlussfolgern, wenn ein VIC in einem Rechner NICHT, im anderen aber DOCH funktioniert, dann wird es nicht am VIC liegen - aber wenn ich nicht so erfahren bin, keine 2 Rechner und keine VIC's zum Tauschen habe, aber die Videobuchse defekt ist, oder mein Monitorkabel, oder eine Leiterbahn zum Videoport einen Haarriss hat, könnte der VIC-Test auf dem Display vielleicht helfen, nicht erst lange in die falsche Richtung zu suchen, den Rechner wenigstens 2x durchs Land zu schicken und was auch sonst noch. Grundsätzlich versucht man sich doch immer die Arbeit zu erleichtern und das von Dir angesprochene Display ist nun keine so schlechte Sache, dass man sie verteufeln muss?! Vielleicht habe ich auch einfach einen 64er günstig angeboten bekommen, beim Kauf eines Amiga, aber der Verkäufer hat partout keine Möglichkeit, den 64er anzuschließen, außer ans Netzteil - kein Antenneneingang irgendwo, keinen 64er tauglichen Monitor, kein Videokabel - aber ich stecke mein Testmodul mit Display an, schalte den Rechner ein und lasse den Test laufen und am Display wird angezeigt: VIC i.O. SID i.O. Speicher i.O.. PLA i.O., weiß ich doch schon ein klein wenig mehr, als wenn ich das Modul zwar anstecken, aber nichts wirklich damit anfangen kann, wenn ich erst zuhause einen Monitor dafür habe? DANN habe ich doch schon entscheiden müssen, ob ich die 50 Euro noch für den 64er drauf lege, oder ob ich sagen kann - sieht so aus, als wären alle wichtigen Bauteile defekt - mehr als 25 gebe ich Dir nicht...
Ich weiß, dass Du es anders siehst, aber genau dieses Problem hatte ich vor ein paar Wochen.
Vielen Dank!!
Das Stück gefällt mir FAST so gut, wie Amiloyd von MARCEL DONNE (Maniacs of noise) 