Assy 250469 Rev B - kein Takt

Es gibt 426 Antworten in diesem Thema, welches 44.404 mal aufgerufen wurde. Der letzte Beitrag (3. September 2019 um 18:44) ist von kinzi.

  • es kann doch sein, das die tastatur abfrage im EF ganz anders gemacht wird als in den original roms.
    es kann doch auch sein, das da die nmi und irq routine anders aufgebaut ist.

    Deine Theorie ist bist jetzt die beste Theorie ... und wird auch vom Schaltplan her gestützt über den Expansion Port ... habe es mal *rot* markiert ... das macht absolut Sinn, was du geschrieben hast.

  • hallo call286,

    ich wollte mich ja eigentlich nur kurz hier melden,

    weil ich nur wissen wollte, welcher ausgangs-pin am u22 die tastatur blokiert.

    tschüss

    ich drücke dir die daumen.

    Einmal editiert, zuletzt von tumleh (11. August 2019 um 04:51)

  • der nmi blokiert die irq routine. die ja die tastatur abfrägt.

    Der Cursor blinkt aber richtig, also sollte die IRQ-Routine laufen. Außerdem, wenn er "durch das EF3 durchstartet" (mit gedrückter Commodore-Taste), steht er genau so im BASIC und es läuft die gleiche Kernal-IRQ-Routine, dann geht es aber.

    Da ich deinen Nick nicht kenne ... stelle dich doch bitte mal kurz vor ... THX! ;)

    Mal von hinten nach vorne lesen ...

    call286 Kannst du mit deinem Oszi mal /NMI einfangen, 1 V/div Vertikalauflösung, die Zeitbasis musst du halt mal durchschalten, von langsam nach schnell. Falls da ein Störsignal drauf ist wissen wir ja nicht mit welcher Frequenz.

    Wenn es aber wirklich ein NMI-Problem ist, lässt sich das sehr leicht prüfen: CPU Pin 4 ist /NMI, den hochbiegen und auf +5 V legen. Dann ist Sense mit NMI.

  • Der Cursor blinkt aber richtig, also sollte die IRQ-Routine laufen. Außerdem, wenn er "durch das EF3 durchstartet" (mit gedrückter Commodore-Taste), steht er genau so im BASIC und es läuft die gleiche Kernal-IRQ-Routine, dann geht es aber.

    Ja, aber mit einem kleinen Unterschied... Das Easyflash im Ultramax Modus wird ja sofort angesprochen, bevor der Cevi groß was anderes macht...

    Und die Abfrage mit gedrückter Commodore Taste direkt ins BASIC zu gelangen, das läuft ja dann über Routinen im EF3...

    Auch das zurücksetzen und initialisieren läuft wenn ich das richtig interpretiere über Routinen/Befehle aus dem EF3 heraus und nicht durch die eigentliche C64 Hardware, bevor er dann abschließend ans BASIC dann abgibt.

    Und genau da liegt auch der Hase im Pfeffer... Wir wissen noch nicht wirklich an welcher Stelle und warum Informationen falsch oder nicht "durchgehen".

    Vermutung: Entweder zieht irgend ein Bauteil ein oder mehrere Signale auf einen falschen Pegel und behindert den korrekten Datenfluss...

    Oder auch ne Vermutung dass irgendeine der Adress- oder Datenleitungen vielleicht sogar nur in einer ganz bestimmten Konstellation beim initialisieren mit was anderem sich kurz schliesst/beinflussen lässt und so falsche Pegelwerte entstehen, die dann auch zu dem Zeitpunkt einen falschen Datenfluss zur Folge haben.

  • Ja, aber mit einem kleinen Unterschied... Das Easyflash im Ultramax Modus wird ja sofort angesprochen, bevor der Cevi groß was anderes macht...

    Und die Abfrage mit gedrückter Commodore Taste direkt ins BASIC zu gelangen, das läuft ja dann über Routinen im EF3...

    Erstmal richtig,

    Auch das zurücksetzen und initialisieren läuft wenn ich das richtig interpretiere über Routinen/Befehle aus dem EF3 heraus und nicht durch die eigentliche C64 Hardware, bevor er dann abschließend ans BASIC dann abgibt.

    Jein.

    Das EF3 initialisiert die Hardware im Ultimax Mode selbst, soweit richtig. Es macht das auch definitiv anders ("faster"), siehe Kommentar im Code:

    ; faster replacement for $ff87
    init_system_constants_light:

    Das EF3 macht dann aber bei einem Kill (ob mit "K" oder mit C= beim Booten) einen normalen Reset. Folglich wird der C64 dann softwaremäßig wieder genau gleich initialisiert wie ohne EF3. Es muss also was sein, was das EF3 anders macht und das dann Auswirkungen auf später hat. Ich würde z. B. mal vermuten, dass der Port A von CIA1 erfolgreich auf Ausgang gestellt wird (wieso auch immer), wohingegen das beim normalen Boot ohne EF3 nicht glückt und daher der Port A nicht auf Ausgang steht -> keine Abfrage der Tastaturmatrix möglich. WARUM das nicht geht, das ist des Pudels Kern.

    Vermutung: Entweder zieht irgend ein Bauteil ein oder mehrere Signale auf einen falschen Pegel und behindert den korrekten Datenfluss...

    Da liegst du meiner Meinung nach völlig richtig. Da denke ich schon 48 Stunden oder länger angestrengt darüber nach. Leider ohne Erfolg.

  • ich habe hier schon seit drei tagen mitgelesen und spontan ist mir da sofort dazu der nmi eingefallen.

    Wenn NMI auf low liegt während des normalen Resets hängt auch ein funktonierender Rechner. Bitte ausprobieren - RESTORE drücken und dann den RESET-Knopf.

    es kann doch auch sein, das da die nmi und irq routine ganz anders aufgebaut ist.

    Das ist sie, zumindest der Teil, der beim ersten Booten ausgeführt wird verwendet z. B. keine IRQs (gesperrt mit SEI, IRQ- und NMI-Vector auf "0000" gesetzt).

    nun habe ich mich mal extra hier angemeldet

    Du hast doch einen Account - Passwort vergessen? ;)

  • call286 Mal ganz eine absurde Idee - weiß gar nicht, ob ich die schon hatte ... was ist, wenn du CIA2 gesteckt lässt, aber CIA1 entfernst und ohne EF3 einschaltest?

    :gruebel Und wie soll er dann die Tastatur nutzen/bedienen?

    Vermutung: Entweder zieht irgend ein Bauteil ein oder mehrere Signale auf einen falschen Pegel und behindert den korrekten Datenfluss...

    Da liegst du meiner Meinung nach völlig richtig. Da denke ich schon 48 Stunden oder länger angestrengt darüber nach. Leider ohne Erfolg.

    Mal schauen ob bei der Kontrolle der Packs was raus kommt... Hatte auch noch paar Stellen uffm Board mal ihm geschickt, die er sich anschauen soll...

  • Die mit den geraden Zahlen ... also gemäß Schaltplan & Datasheet mal PIN 10 hochbiegen ... richtig ... tumleh?

    die u22 7406 inverter ausgänge pin 2, 4, 6, 8, 10 und 12.
    ich würde aber mit dem pin 10 anfangen.

  • Du hast doch einen Account - Passwort vergessen? ;)

    eigentlich wollte ich erstmal, nicht mehr hier ins forum.

    was man mit mir vor einem halben jahr gemacht hatte, reichte mir erstmal.

    fahre auch nicht zu der doreco und der cc2019.

    aber hier geht es ja um eine wiederbelebung eines c64.

    ich wurde gefragt, ob ich den fehler kenne und dann habe ich mir gedanken gemacht.

    wie ich den fehler versuchen würde einzukreisen.

    da ohne dem u22 die eingabe funktioniert, würde ich die signale an dem u22 untersuchen.

  • Wahnsinn, was hier ab geht. Erstmal sorry, es war Ruhe bei mir, weil wir heute mit Freunden unterwegs waren. Jetzt sitze ich grade wieder dran und arbeite den Thread durch.

    ch1ller Die Stellen zum checken aus den Bildern habe ich nochmal genau angeschaut, das war wohl das Licht, ich habe da keine Kurzschlüsse, die nicht hin gehören.

    @tumleh Pin 10 weg biegen brachte nichts. Aber Pin 12 war ein Treffer, damit bekomme ich Tastatureingabe. Aber der 7406 ist sehr heiß geworden nach wenigen Sekunden. Ich hab den Pin dann zurück gebogen und er wird immernoch sehr heiß, also hat es den wohl bei der Aktion zerlegt. Damit kann ich nicht sagen, ob es wirklich Pin 12 war oder einfach der 7406 durchgebrannt ist und deshalb die Tastatur wieder ging. Hab einen neuen drauf gesteckt, der wird nicht heiß, Tastatur wieder weg

    kinzi ohne CIA1 / U1 kein Cursor aber Basic Bild.

  • Aber Pin 12 war ein Treffer, damit bekomme ich Tastatureingabe. Aber der 7406 ist sehr heiß geworden nach wenigen Sekunden

    ???

    Wenn man den Ausgang wegbiegt wird er heiß?

    Es wird immer besser in diesem Fall hier ... ?(?(?(

    Pin 12 ist DATA ... und der geht zurück auf CIA2, PA7 (Pin 9).

    Sag mal, kannst du die /CS-Leitungen von CIA1 und CIA2 mal mit deinem Oszi darstellen, ob die irgendwie korrelieren?

    [edit]

    Das wäre Pin 23 am CIA.

    [/edit]
  • Klar. Hier mal ein wenig NMI, ich musste das Gif aber splitten. Meintest du das so Kinzi?

    Bitte melde dich an, um diesen Anhang zu sehen.Bitte melde dich an, um diesen Anhang zu sehen.

    EDIT:

    Es könnte auch schon bei Pin 10 von 7406 was gefetzt haben, da habe ich den Chip nicht angefasst, erst bei Pin 12...

  • tumleh Pin 10 weg biegen brachte nichts. Aber Pin 12 war ein Treffer, damit bekomme ich Tastatureingabe. Aber der 7406 ist sehr heiß geworden nach wenigen Sekunden. Ich hab den Pin dann zurück gebogen und er wird immernoch sehr heiß, also hat es den wohl bei der Aktion zerlegt. Damit kann ich nicht sagen, ob es wirklich Pin 12 war oder einfach der 7406 durchgebrannt ist und deshalb die Tastatur wieder ging. Hab einen neuen drauf gesteckt, der wird nicht heiß, Tastatur wieder weg

    den 7406 kannst du so unmöglich zerstören.
    er hat ja open collector ausgänge. ein low am eingang bewrikt genau das gleiche, wie pin herausbiegen.

    du hast ihn nicht mal vorher, verkehrt herum eingesteckt? da könnte ich es mir vorstellen.

    wenn der schaltplan stimm, ist der pin12 für data zuständig.
    dann müsste da ja etwas schwingen und auch messbar sein.
    der irq pin vom cia u2 ist mit nmi verbunden.

    dann mal den tip von kinzi testen

    Wenn es aber wirklich ein NMI-Problem ist, lässt sich das sehr leicht prüfen: CPU Pin 4 ist /NMI, den hochbiegen und auf +5 V legen. Dann ist Sense mit NMI.

    oder einfach am u2 den irq pin 21 wegbiegen.

    oder mit einem zwischensockel isolieren.


    bitte überprüfe ob wirklich der u22 pin12 an data geht und nochmal bitte den pullup widerstand überprüfen.
    auch messen ob der wirklich mit +5v verbunden ist.

    edit...wie immer ich bin zu langsam mit dem schreiben.....

  • Auf Pin 23 wird das "Chip Select"-Signal (/CS) an die CIAs geliefert. Das muss bei CIA1 mindestens im 60 Hz-Rhythmus gegen GND gezogen werden, weil da die Tastaturabfrage im IRQ läuft. Bei CIA2 würde man erwarten, dass das /CS ruhig ist, solange keine Diskettenzugriffe usw. stattfinden.

    Diese beiden Signale wären interessant gleichzeitig zu sehen; Zweikanalmode, Trigger auf CIA1, Y-Auflösung 1 V/div, Zeitbasis 10 ms/div.

  • sehe ich richtig, du hast da gar keinen pegel und es schwingt?
    ich mag keine digitalen oszis :(
    da habe ich einen 4040 zähler mit ein paar leds viel lieber.

  • ich würde erstmal data nicht überprüfen.

    bitte überprüfe mal den pullup widerstand
    (rp3 3,3K, pin1 und pin2 und ob da am pin 1 auch die +5V sind, falss der schaltplan stimmt)

    es ist wohl doch ein signal schwingen am nmi

    edit....bitte messe ob du von u22 pin10 (oder u2 pin21 oder u6 pin 4)
    zu +5v die 3,3kohm messen kannst. im ausgeschaltetem zustand.
    Parser hat da vor ein paar stunden etwas rot eingezeichnet.

    es sieht so aus, als ob der pullup widerstand da fehlt (defekt) oder er keine verbindung mit den +5v hat.

    6 Mal editiert, zuletzt von tumleh (11. August 2019 um 22:17)