Keyman64: Tastatur- und Hardwarecontroller

There are 716 replies in this Thread which has previously been viewed 147,826 times. The latest Post (December 26, 2025 at 6:53 PM) was by 64erGrufti.

  • Halllo zusammen,

    ich bin dabei mir eine Keyman64 Config für mein 250466+ Board zu erstellen.

    Kernal umschalten, SID Adresse auswählen und Joystick Swappen, es funktioniert fast alles bis auf eine von 8 Kernal-Umschaltungen.

    Mit der Meta Taste und einem doppelten Tastendruck auf die Tasten 1 bis 8 möchte ich die 8 Kernal's umschalten.

    Bis auf die "6" gehen auch alle und die Kernal Zeilen sind alle identisch aufgebaut.

    Evtl. hat einer ne Idee woran das liegen könnte!?

    Hier die Config...

  • Taste '6' Kaputt ? :weg:

    Just kidding.... :wink: Auf dern ersten Blick sehe ich da auch nix.

    Please login to see this link.

    Please login to see this link.

  • Taste '6' Kaputt ? :weg:

    Just kidding.... :wink: Auf dern ersten Blick sehe ich da auch nix.

    Hallo Gerd,

    schön wieder von Dir zu lesen,

    das kann man sicherlich nicht ausschließen.
    So wie oben abgebildet sieht es erstmal gut aus.
    kann ggf. eine Lötstelle einen weg haben?

  • hast Du Pullups an den EPROM-Adressports A13, A14, A15 ??Falls nicht, dann versuche mal statt tristate ---> set

    # Kernal 6 (101)

    MOBO_KERNAL6: requires 2

    MOBO_KERNAL6: set MOBO_KA13

    MOBO_KERNAL6: clear MOBO_KA14

    MOBO_KERNAL6: set MOBO_KA15

    MOBO_KERNAL6: exec MOBO_RESET

    #MOBO_KERNAL6: type kernal 6 active!\n

    Viele Grüße,
    GI-Joe
    Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link.

  • Er hat bei den anderen Kernel ja auch tristate

    Aber das will ja nichts heißen.

    bei "tristate" müssen/sollten für einene sicheren Betrieb Pullup-Widerstände verbaut sein.

    Ich würde bei Kernal-Umschaltungen, welche direkt auf den Adressleitungen liegen, immer set und clear (also definierte Pegel) nehmen.

    Viele Grüße,
    GI-Joe
    Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link.

  • Na schau, da hab ich doch schon wieder was gelernt. Ich war schon froh die Logic hinter den Zeilen zu verstehen. Ich bin ehr kein Programmierer.

    Dann sollte das aber überall bei den 7 Kerneln geändert werden.

  • Jetzt versteh ich gar nichts mehr ?(

    Bei der Config von oben funktioniert der Kernal auf der Taste 6 nicht.

    Schieb ich den Code von 6 hinter die 8, funktioniert der Kernal auf der Taste 7 nicht mehr, dafür die 6.

    Schieb ich den Code von 6 vor die 1, funktioniert die 5 nicht mehr, dafür aber die 6.

    Schiebe ich die 6 Code Blöcke für SID und Joystick vor den Kernal Teil kann ich den 3er Kernal nicht aktivieren.

    Ich arbeite mit Notepad++ unter Windows 11 und Keyman 1.6.

  • warum nutzt Du eigentlich soviele Labels ?

    Probier doch erstmal zur Fehlersuche ganz simpel:

    # Kernal 6

    6: set port a bit 4

    6: clear port a bit 5

    6: set port a bit 6

    6: clear port a bit 1

    6: sleep 20ms

    6: tristate port a bit 1

    Viele Grüße,
    GI-Joe
    Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link. * Please login to see this link.

    Edited once, last by GI-Joe (April 19, 2025 at 2:13 PM).

  • Weitere Tests mit der Config von oben....

    -ATMega neu geflasht, hat nicht geholfen

    -Andere Taste nehmen, z.B. ZERO, hilft nicht

    7 Kernal reichen mir dicke, trotzdem wüsste ich schon gerne woran das liegt.

    //Edit

    Auch ein von Hand unter Linux kompiliertes Config Tool hat nicht geholfen.

  • Hab ich mit der Zahl "SIX" am Zeilenanfang schon versucht, hat leider nicht geholfen.

    Aber ich teste das gerne nochmal komplett ausgeschrieben ohne Labels.

    //Edit

    2 Kernal (1+6) laufen...

    ..weiter gehts.

    //Edit

    1-6 laufen auch.

  • Wow, 1-8 gehen auf diese Weise auch...

    Fehlt noch der Rest.

  • Cool :thumbsup:, es läuft jetzt.

    Danke GI-Joe für den Tip etwas weniger Labels zu nehmen.

    Jetzt tut alles. Kernal-Umschaltung , SIDPlease login to see this link. Adressauswahl und der Joystick Swapper.

    Bisschen Debug Zeugs ist noch enthalten, das fliegt aber noch raus.

    Hier die lauffähige Config...

  • aufgrund des aktuellen Angebotes im Marktplatz und da ich jetzt so schnell hier nicht alle 35 Seiten aufarbeiten kann die einfache Frage:

    Kann ich das Teil verwenden, um eine CBM 6xx Tastatur, also diese

    Please login to see this attachment.

    an einem C64 zu betreiben ohne ein modifiziertes Kernal a la TAST64 verwenden zu müssen?

    Ich hab ein SuperKernal im C64 deshalb kommt eigentlich nur eine reine Hardware-Lösung in Frage...

    Hat das evtl. schonmal jemand gemacht und könnte mir bei dem Projekt helfen (Programmierung der Matrix etc...)

    wenn Du mich fragst:
    Run/Stop+Restore
    POKE781,96:SYS58251

  • Wenn ich das richtig sehe, kann der Keymann maximal eine 8 x 8 Matrix verarbeiten.

    Die CBM 610 Tastatur hat eine 6 x 16 Matrix:

    Please login to see this attachment.

    Das wird also leider nix.

    Für den Triumph des Bösen reicht es, wenn die Guten nichts tun.
    Edmund Burke (1729-1797)