Posts by Henning

    Das Gerät funktioniert bei mir, egal ob mit oder ohne MixSID.


    Allerdings dauert es manchmal bis zu drei Sekunden, bis durch ein zweimaliges Blinken der LED angezeigt wird, dass das Gerät bereit ist.


    Dieses Verhalten tritt bei mir nur dann auf, wenn zuvor die LED beim Ausschalten nochmals aufblinkt. Da aus der Firmware ersichtlich ist, dass die LED nur beim Einschalten blinkt, vermute ich, das der Brown-Out Detector zuschlägt und einen Reset macht, der Atmel aber danach nochmal kurz anläuft. Das kann nur durch eine kurze Spannungssenke unter 4.3V vor dem endgültigen Abfallen der Spannung ausgelöst werden.


    Auf jeden Fall funktioniert das Gerät spätestens nach drei Sekunden. Der Fall, dass das Gerät garnicht funktioniert, tritt hier nicht auf.


    Nimmt man Erweiterungen weg (egal welche), verringert sich die Häufigkeit der Startverzögerungen. An einem nackten board ohne zusätzliche Hardware gibt es keine Verzögerungen (auch kein Aufblinken beim Ausschalten).


    Ich werde mal etwas basteln und den Brownout-Detector auf die nächstkleinere Schwelle von 2.7V setzen. Laut Datenblatt läuft der Atmel bei 8MHz zwischen 2.7 und 5.5V stabil. Es gibt also keinen triftigen Grund, bei 4.3V Panik zu machen, außer es zeigt sich, dass das Speichern der letzten Einstellung dann nicht mehr funktioniert.

    Also ich habe weiter versucht irgend ein Gesetzt dabei herauszufinden, jedoch ohne Ergebnis. Wenn ich die 1541U herausgezogen habe lief der Switch ein zwei Einschaltvorgänge, danach wieder nicht.
    Jetzt habe ich den MixSID entfernt und OHNE SID versucht. Der Switch funktionierte auf Anhieb, mehrere Aus/Ein Schaltvorgänge ohne Mucken.


    Danach habe ich den SID vom MixSID runter genommen und in den C64 gesteckt, danach zeigte der Switch sein altes Verhalten. Evt. doch der SID?

    Die Tatsache, dass zwei Ereignisse in zeitlicher Abfolge stehen bedeutet noch lange nicht, dass sie auch in kausalem Zusammenhang stehen. Mit dieser Methode kannst du ewig weitermachen, ohne zu einem Ergebnis zu kommen.


    Solange du nicht herausfindest, was der Atmega8 tatsächlich tut, wird sich die Hypothese, dass es "irgendwie am SID liegt" weder bestätigen noch widerlegen lassen.


    Betrachtet man allerdings die Firmware für den Attiny48 so sieht man, dass dieser NICHTS mit den POTX/POTY-Leitungen zu tun hat. Der SID steht aber NUR über diese Leitungen in Verbindung mit dem Controlport. Selbst WENN der Atmega8, der offensichtlich die Mausemulation macht und der direkt an die POTX/POTY-Leitungen geht, nicht funktionieren sollte, würde der Attiny48 davon vollkommen unbeeindruckt bleiben.


    Fakt ist, dass der Attiny48 einen Reset macht, sobald seine Spannung unter 4.3V fällt. Das tut er offensichtlich auch nochmal im Moment des Ausschaltens, was sich am Blinken der LED erkennen lässt. Ich würde mir mal den Verlauf der Versorgungsspannung im Moment des Einschaltens genauer angucken.


    Du kannst jetzt diese Information in deine Bemühungen einbeziehen oder halt nicht.

    Ich würde auch eventuell auf dem SID tippen.

    Auf welcher Grundlage? Reine Spekulation?


    InsertDisk2: Weiter oben schreibst du, dass das Teil dann doch plötzlich ging, dann wieder nicht. Genau das gleiche hast du per PN im Bezug auf die Ultimate gesagt: Du hättest die abgesteckt, dann hätte es funktioniert, dann hast du korrigiert, ging also dann doch nicht verläßlich ohne Ultimate.


    Also, das riecht für mich danach, dass es das Teil selbst ist und keine Erweiterung. Manchmal geht's, manchmal nicht. Dass das zufällig dann passiert, wenn du gerade testweise irgendeine Erweiterung abgezogen hast, ist nicht aussagekräftig. Korelation != Kausalität.


    Ich habe gerade nochmal getestet und siehe da: Manchmal kommt das zweimalige Blinken sofort nach dem Einschalten, manchmal blinkt er beim Ausschalten(!) nochmal kurz auf, danach beim Wiedereinschalten blinkt er garnicht und funktioniert auch nicht, irgendwann geht's dann wieder.


    Alles ohne irgendwelche Erweiterungen zu verändern.


    Die vom Entwickler gennannten Fuses (EE DC FF) ergeben folgende Einstellungen für den Attiny48:


    Interner Oscillator bei 8MHz, startup time 6CK/14CK + 65ms
    Brownout-Detection bei 4.3V (ziemlich hoch).


    Des weiteren ist auf dem Board nur ein einziger Kondensator (1nF in einer Signalleitung), keine Bypass-Kondensatoren, Versorgungsleitungen sind nicht breiter ausgeführt, keine Massefläche, kein sonderlich sorgfältiges Routing (90 Grad Winkel etc).


    Dazu ist der Taster zum Umschalten am außersten Rand der Platine angebracht, also dort, wo die Hebelwirkung am größten ist. Nicht gerade gut für eine Platine ohne Gehäuse und ohne Fuß, die sich nur in die Control-Ports klammert. Beim Umschalten wird zusätzlich in's EEprom geschrieben, um die aktuelle Einstellung zu sichern. Gerade in dem Moment, wo das Teil vielleicht halb aus seinem Port rutscht.


    Von daher wundert es mich nicht, dass das Teil nicht so doll funktioniert.

    Mal eine Anmerkung: Das Teil heißt nicht "MixedSID", auch nicht "Mixed SID" und auch nicht nur "Mixed", es heißt MixSID :P


    Das sollte eigentlich ein Wortspiel sein, es klingt ja wie "Mix it!", und passt auch gut, man kann sowohl SID-Modelle als auch Klang damit mischen... aber wenn man es erklären muss, war's wohl doch nicht so gut 8|


    Aber egal, InsertDisk2 schickt mir seinen Switcher zu und dann gucke ich mir das genauer an.

    Ich gehe auch davon aus, dass der Switch irgend was erwartet was er mit MixSID so in der Art nicht oder anders "bekommt" und deshalb nicht "startet".

    Wenn man davon ausgeht, dass der Switcher bei der Mouse-Emulation so funktioniert wie von tulan beschrieben, dann kann es daran liegen, dass der 4053 auf dem MixSID ca. 150 Ohm zur Pot-Leitung hinzufügt und der Switch deshalb die Ladegeschwindigkeit des Kondensators nicht wie erwartet beeinflussen kann. Könnte sein, dass ihn das verwirrt. Bei Paddles mit 1M ohm Potis machen die 150 Ohm den Bock nicht fett. Ich habe es wohl versäumt, mich beim Design des MixSIDs über die Funktionsweise der 1351 (und damit auch der Möglichkeiten zur Emulation) zu informieren... :/


    Hat denn jemand schonmal eine normale 1351 in Kombination mit dem MixSID betrieben? Ich habe leider keine, um das auszuprobieren, aber ich habe bisher auch keine negativen Berichte dahingehend bekommen.


    Die POT-Leitungen gehen aber sowieso noch durch einen 4066 auf dem C64-board (U18 auf 469, sonst U28). Es wäre interessant, wie die on-resistance beim original verbauten Teil aussieht. Unter Umständen könnte ein Austausch durch einen 74HC4066 helfen, der hat im Vergleich zum CD4066 oder HEF4066 eine deutlich geringere on-resistance.


    Aber das sind alles erstmal nur Mutmaßungen. Leider finde ich keine weiteren Angebote zu diesem speziellen Switcher, sonst würde ich mir den besorgen und das mal selbst testen.

    So, kleiner Zwischenbericht, ich hab den MixSID einfach mal raus gezogen und ohne "SID" eingeschaltet, und der Joy-switcher läuft direkt

    Tja, jetzt müsste man wissen, wie dieser Joy-Switcher im Detail funktioniert. Gibt es dazu einen Schaltplan? Firmware? Wenigstens eine genaue Bezeichnung?


    Ansonsten wundert mich das schon ein wenig, wie gesagt ist das einzige, das zusätzlich zwischen den POT-Leitungen und dem SID hängt ist ein analoger switch aus dem 4053.

    Ich kenne ein Projekt wo eine 1351 Maus nachgebaut wird, da hängt ein Interrupt am Analog Signal, damit der Entladezeitpunkt des Kondis durch den SID gemessen wird.

    Kannst du dieses Projekt näher benennen? Mich würde das schon interessieren, wie das genau gemacht wird.


    @Zipcom benutzt meines Wissens für sein Projekt digipots, um Paddle bzw. Mouse simulieren zu können. Wäre interessant zu hören, ob es da mit dem MixSID auch Probleme gibt.


    EDIT: InsertDisk2: Kannst du auch mal den MixSID ohne SIDs einstecken? Nur um das weiter einzugrenzen.

    Es könnte mit dem MixedSID zusammenhängen. Kenne zwar die Schaltung des Joystickswitchers nicht genau, aber die Maus benötigt die Signale des SID (Analog X, Y). Vielleicht kommt es deswegen zur Verzögerung?

    Du meinst, dass die zusätzlichen 10-30ns propagation delay des 4053 auf dem MixSID eine Verzögerung von mehreren Minuten nach sich ziehen und dafür sorgen, dass Joysticksignale nicht bei der CIA ankommen? Das halte ich für sehr unwahrscheinlich.

    ohne Funktion, kein Joy geht, Umschalten auch nicht, keine LED leuchtet.

    Dass das Gerät selbst schon nicht funktioniert ("Kein Umschalten, keine LED leuchtet") deutet viel eher auf ein Problem mit an den Joystickports selbst hin, wie CapFuture1975 schon vermutet hat.

    Genau das beschreibt es perfekt! Dann bin ich ja beruhigt, dass bei mir alles in Ordnung ist

    Ich auch! Ich hatte das jetzt so verstanden, dass das Phänomen bei dir spontan und ohne dein zutun auftritt.

    Vielen Dank für diese fantastischen Erweiterungen. Das Aufbauen bzw zusammenlöten sowie Konfiguration der Teile hat mir sehr viel Spaß gemacht!

    Das freut mich zu hören, vielen Dank :)

    Passiert dieses "Phänomen" immer wenn man in die Stereo-Adressierung wechselt?

    Nicht immer, es kommt darauf an, welchen Moment du erwischt.


    Wenn du im parallelen Modus bist und ein Stück abspielst, spielen beide SIDs das, was auf $d400 ankommt. Wechselst du dann in die Stereo-Adressierung, wird ein SID mittendrin auf die Stereo-Adresse(n) gelegt. Wenn dieser SID dann gerade ein Gate-Bit gesetzt hat (also ein Ton gehalten wird, bis das Gate-Bit später gelöscht wird und der Ton ausklingen darf), dann bleibt der Ton halt an, weil niemand mehr das Gate-Bit löscht. Erwischt du einen Moment, in dem gerade für keine Stimme das Gate-Bit gesetzt ist, klingen die Töne noch aus und dann passiert nichts mehr.


    Ist es das, was du meinst? Oder passiert das bei dir spontan? Die Keyman-Config ist unauffällig.

    Die Charsets liegen als ».64c« Daten vor. Die würde ich einerseits gerne als ».bin« oder ».rom« konvertieren, andererseits zuerst auf Vollständigkeit überprüfen (sind alle Plätze belegt, sind die Grafikzeichen enthalten?). Leider ist meine Suche nach einer passenden Anwendung erfolglos. Anbei eine Beispieldatei. Mit welchem Tool komme ich hier weiter?

    Ich habe zu diesem Zweck ein einfaches Tool programmiert, mit dem man unvollständige Zeichensätze zu einem vollständigen ROM-Image komplettieren kann.


    Dabei werden Buchstaben, Ziffern und Interpunktionszeichen aus dem Ausgangs-Zeichensatz an die jeweils richtigen Stellen in den Original-Zeichensatz kopiert und wo nötig invertiert. Grafikzeichen werden dabei nicht berücksichtigt, da ich davon ausgehe, dass diese unverändert bleiben sollten, damit PETSCII-Grafik weiterhin so aussieht wie gedacht.


    Je nach Vollständigkeit des Ausgangszeichensatzes muss danach noch mehr oder weniger Hand angelegt werden, um zu einem brauchbaren Zeichensatz-ROM zu kommen.


    Liegt nur der Großbuchstabensatz vor, so bleiben die Kleinbuchstaben in der zweiten Hälfte des Zeichensatz-ROMs natürlich unverändert und entsprechen weiterhin dem Original-Zeichensatz. Beispiel:


    quadro-graf-input.gif (quadro_graf.64c)


    > charcomp.exe quadro-graf.64c output.rom



    Liegt ein gemischter Zeichensatz vor (Klein- und Großbuchstaben, zweite Hälfte des ROMS) kann ein nahezu vollständiger Zeichensatz erstellt werden, lediglich das PI-Symbol könnte dann vielleicht noch eine Anpassung vertragen. Beispiel:


    antik-1-input.gif (antik_1.64c)


    > charcomp.exe --mixed antik_1.64c output.rom



    Sollten in einem Zeichensatz keine brauchbaren Ziffern, Symbole oder auch Buchstaben vorliegen, kann man das Kopieren dieser Zeichengruppen jeweils einzeln unterdrücken, dazu gibt es die Optionen --skip-letters, --skip-symbols, --skip-digits.


    Wenn der erzeugte Zeichensatz noch weiter bearbeitet wird, empfiehlt es sich, im Editor ein Zeichen immer nur dort zu editieren, wo dieses zuerst auftaucht. Das weitere Kopieren und Invertieren kann man danach wieder mit dem tool machen, indem man den Zeichensatz einfach nochmal durchlaufen lässt:


    > charcomp.exe editiertes.rom editiertes-und-normalisiertes.rom


    Und schließlich lassen sich auch über die Option --bitmap Vorschaubilder im PBM-Format erzeugen.


    Weitere Beispiele, Quelltext und Windows-Exe auf github:


    https://github.com/hbekel/charcomp
    https://github.com/hbekel/char…ownload/v1.0/charcomp.exe

    Ich hatte behauptet mein MixSID würde mit installierten SIDs einen schwarzen Bildschirm beim Einschalten erzeugen.....

    Hat er ja auch :)

    Nach dem ich die von Henning vorgeschlagenen Messungen erledigte
    und dies mir mir immer CS Low anzeigte

    Weißt du noch, ob beide CS-Pins am GAL (16 und 17) low waren oder nur einer?

    Leider laß mein Gerät nur Müll. (Was daran liegen könnte das Henning evtl. das Lockbit beim Brennen aktiviert hat oder ich den falschen Chip einstellte)

    Das Lockbit aktiviere ich nie, schließlich ist das Design sowieso offen.

    Bis heute. Denn Farnell lieferte heute eine Lieferung GALs wovon ich mir dann einen Schnappte und programmierte und einlötete.
    Nach dem anklemmen aller Leitungen und aufschaltens des Stereosignals auf den Modulatorersatz erklingen nun beide SIDs in
    so wie sie sollen in Stereo.

    Das freut mich :)

    Und ich bitte noch mal um entschuldigung für das Chaos welches ich hier stiftete....

    Kein Problem. Im Eifer des Gefechts auch verständlich, ist halt nur blöd für den, der auf gerade verschwindende Sätze antwortet.


    @Elrond022 : Es macht mich natürlich stutzig, dass dein MixSID ein ähnliches Symptom zeigt wie der von HyBird. Ich habe hier gerade nochmal einen der GALs aus dem aktuellen Batch in meinen MixSID gesteckt (der hat einen Sockel zum Testen), da funktioniert er allerdings problemlos.


    Allerdings bin ich mir gerade auch nicht sicher, ob ich schonmal eine positive Rückmeldung für den MixSID auf den Reloaded-Boards bekommen habe. Hast du es mal auf einem originalen Board ausprobiert?


    Falls jemand den MixSID erfolgreich auf einem Reloaded-Board betreibt, bitte melden, dann können wir das ausschließen. Es spricht allerdings erstmal nichts dagegen, dass es nicht funktionieren sollte.


    Ansonsten, kannst du anhand des Schaltplans bzw. des PCB-Layouts mal alle Ein- und Ausgangsleitungen des GALs überprüfen? Wenn das nichts ergibt, könnte ich dir auf Verdacht einen anderen GAL schicken, wäre natürlich blöd, wenn ein Wechsel mit auslöten dann keine Besserung brächte. Zur Not könntest du mir deinen MixSID auch zuschicken, Ferndiagnose ist immer schwierig.

    Darf ich eigentlich vom PIN 5 des GALs eine direkte Leitung zum PIN 17 des GALs legen oder zerstöre ich dabei etwas?

    Das würde zwar nichts zerstören, wäre aber unsinnig, damit würdest du die Logik zur Adressierung umgehen. CS geht immer dann low, wenn der Adressbereich des SIDs angesprochen wird. CS1 und CS2 werden vom GAL erzeugt, um die SIDs in Abhängigkeit von A5 und A8 in unterschiedlichen Adressbereichen erscheinen zu lassen. Ist CS1 immer low, fühlt sich ein dort eingesetzter SID bei jedem Zugriff des Prozessors mit angesprochen und und legt Daten mit auf den Bus, quatscht also ständig dazwischen. Und dann läuft halt nichts mehr.


    Überprüfe mal bitte, ob MS tatsächlich HIGH ist, ob tatsächlich A5 und A8 angeschlossen sind und ob du irgendwo einen Kurzschluss hast, der Pin 17 auf Masse zieht.