Hello, Guest the thread was viewed11k times and contains 99 replies

last post from Natas at the

"Echte" Cursortasten

  • Als Commodoreneuling und jemand, dem schon viele andere Computertastaturen unter die Flossen kamen, ist mir die C64 Cursorsteuerung ein echter Greul! Wer kann nur eine solche erfinden, bei der man teilweise eine zusätzliche Taste festhalten muß. Bei mir eine fast unmögliche Umstellung! Leider sind mir keine Mikrotaser mit 4 Lötanschlüssen bekannt, an denen nicht je 2 Kontakte intern zusammengeschaltet sind, sonst wäre eine Idee von mir recht einfach umzusetzen. Ich würde dann nämlich unter die zwei Cursortasten zwei Mikrotaster setzen, die gleichzeitig den einen Shifttastenkreis und Cursor Up/Down (links) bzw. Shift und Cursor Left/Right (rechts) schließen. Wenn also nix bekannt ist für eine einfache Cursorsteuerung (vier entsprechende Punkte in der Tastaturmatrix), bleibt wohl nix Andres übrig, als eine Relaisschaltung aufzubauen: Folgendes kommt mir da in den Sinn (in Anlehnung an auffindbahre Matrixanlehnung nach erstem Bild - wäre das so in etwas korrekt?):

  • Ich weiß nicht, woher Du das Bild von der Tastaturmatrix hast, aber die des C64 zeigt es definitiv nicht.
    Für "Cursor hoch" würde das Verbinden dreier Leitungen ausreichen, da die up/down-Taste auf der gleichen Leitung wie die linke Shift-Taste liegt. Für "Cursor links" muss man in der Tat zwei separate Verbindungen herstellen.


    Übrigens, man gewöhnt sich erschreckend schnell an die Cursortasten des C64...

  • Ich weiß nicht, woher Du das Bild von der Tastaturmatrix hast, aber die des C64 zeigt es definitiv nicht.
    Für "Cursor hoch" würde das Verbinden dreier Leitungen ausreichen, da die up/down-Taste auf der gleichen Leitung wie die linke Shift-Taste liegt. Für "Cursor links" muss man in der Tat zwei separate Verbindungen herstellen.

    Ich habe nach "Tastaturmatrix Commodore C64" geGOOGLEt und dann den Eintrag Bilder angewählt. Da ich keine direkte Tastaturmatrix entdecken konnte, nahm ich eine Tastaturzeichnung, auf der ich rechts unten etwas Dergleichen entdeckte, und "schnitt" den entsprechenden Bereich aus! Aber Du könntest recht haben ... habe mich wahrscheinlich vertan - das Gesamtbild zeigt eine Tastatur mit Zehnerblock. Wahrscheinlich zu einem anderen Commodore!


    Übrigens, man gewöhnt sich erschreckend schnell an die Cursortasten des C64...

    Könnte sein, aber ich sitze öfters an einem PC ode5r Atari ST, und möchte nicht immer umdenken müssen!


    edit: habe gerade entdeckt, daß das Bild hier im Forum veröffentlicht worden scheint !!!

  • Ich hab die Cursor-Tasten nie als problematisch empfunden. Die Nutzung ist bei mir in Fleisch und Blut übergegangen und auch nach 30 Jahren nutze ich die blind.


    Alles klappt bestens. Auch die Umstellung von C64 auf PC oder andere Tastaturen ist kein Problem.

  • Ich hab die Cursor-Tasten nie als problematisch empfunden. Die Nutzung ist bei mir in Fleisch und Blut übergegangen und auch nach 30 Jahren nutze ich die blind.


    Alles klappt bestens. Auch die Umstellung von C64 auf PC oder andere Tastaturen ist kein Problem.

    Wie geschrieben: Ich bin Commodore-Neuling ...


    Hier was zur Tastatur im C64 incl. der Matrix:


    http://www.c64-wiki.de/index.php/Tastatur

    Icrgendwie hatte ich schon mal was davon gehört/mitgekriegt, daß wohl die Joysticks im Tastaturprozessor mitgesteuert werden. ...


    Für die Atari Computer sind viele verschiedene Matrix-Pläne mit Pinbelegungen am Steckverbinder im Netz verfügbar - zu Commodore fand ich aber nur dieses plausibel, das aber offiziell vom C128 stammt:

  • Der C64 hat keinen Tastaturprozessor, er hat einen CIA (U1) der seine zwei 8Bit-Ports verwendet um eine 8 x 8 Matrix anzusteuern. Die eigentliche Abfrage macht die CPU komplett per Software in der IRQ-Routine.


    Rechner mit eigenem Tastaturprozessor sind der Amiga, der ST und jeder PC.


    Der von mir angegebene Link enthält die Tastaturmatrix des C64 incl. Anmerkungen.

  • Die Tastatur des C128 hat ein paar Tasten mehr (unter anderem vier separate Cursortasten, die aber alle nebeneinander angeordnet sind - komischerweise gewöhnt man sich sogar daran!), ist aber ansonsten abwärtskompatibel: Die rote Linie im letzten Schema zeigt die Trennung zwischen C64- und C128-Tasten, d.h. mit dem Schema kannst Du arbeiten.

  • Wer kann nur eine solche erfinden, bei der man teilweise eine zusätzliche Taste festhalten muß. Bei mir eine fast unmögliche Umstellung!


    Hehehehe :) Ganz einfach: man wollte sparen, wo man konnte. Deshalb teilen sich auch Tastatur und Joystick Leiterbahnen Richtung CIA. Wir fanden das voll normal damals, kein Mensch hat sich darüber aufgeregt, war halt so. Ist btw auf Atari auch komisch gelöst, da hat es zwar 4 Pfeil-Tasten, aber man muss immer CTRL gedrückt halten zwecks CSR-Steuerung.


    Ich würde mich an Deiner Stelle einfach damit abfinden und daran gewöhnen - oder emulieren, in WinVICE z.B. kannst Du die normalen Cursor/Pfeiltasten nehmen (nicht die vom Nrn-Block). Sich für so einen Quatsch mit dem Lötkolben einen abzubrechen, wäre an Pedanterie und Verschrobenheit kaum mehr zu toppen.


  • ... Ist btw auf Atari auch komisch gelöst, da hat es zwar 4 Pfeil-Tasten, aber man muss immer CTRL gedrückt halten zwecks CSR-Steuerung.

    Ganz so sehe ich das nicht. Die Tasten lassen sich ganz einfach nachrüsten. Je nach verwendeten Tasten (ich verwende zB. ganz billige Mikrotasten) kommt man durchaus mit 1€ Auslagen hin ... Wenn Du diese nachrüsten möchtest, gib mir eine eMail per PN, ich sende gerne die Matrxen aller 8bit Atari in einer entsprechenden Mappe, wo auf einigen die zusetzlichen Cursortasten (Bezeichnet mit F1 bis F4) von mir nachgetragen sind. Auf Wunsch auch 'ne komplette Schaltplanmappe zu 'nem bestimmten Atari 8bit als PDF! Mit entsprechenden Zusatztasten erhält man in Verbindung mit <Shift> oder <Control> weitere sinnvolle Zusatzfunktionen!



    Ich würde mich an Deiner Stelle einfach damit abfinden und daran gewöhnen - oder emulieren, in WinVICE z.B. kannst Du die normalen Cursor/Pfeiltasten nehmen (nicht die vom Nrn-Block). Sich für so einen Quatsch mit dem Lötkolben einen abzubrechen, wäre an Pedanterie und Verschrobenheit kaum mehr zu toppen.

    Im Prinzip haste ja recht. Leider hat der C64 keinen Pokey, der zur Steuerung der Tastatur bis auf 4 Sondertasten lediglich 8 Leitungen braucht. Die eigentliche Matrix von 8 Zeilen und 9 Spalten wird nämlich über zwei CMos IC auf jene 8 Steuerleitungen umgesetzt.

  • Hi!


    Ich wage es diesen 10 Jahre alten Thread mal hervorzukramen und - wenn der Themenersteller nichts dagegen hat - zu kapern, weil meine Frage sehr gut dazu passt.


    Mein Vorhaben ist es eine CBM 610/710 Tastatur an den C64 anzupassen. Die Tastatur hat auch vier separate Cursortasten.


    Die Idee ist für die Tastatur eine neue Platine mit KiCad auf Basis der C64-Tastaturmatrix inkl. parallel verdrahtetem "Hexadecimal" Ziffernblock und den separaten Pfeiltasten zu entwerfen.


    Bei den Pfeiltasten müssen ja entweder 3 oder 4 Leitungen aus der Matrix auf Tastendruck verbunden werden: SHIFT+UP und SHIFT+LEFT.


    Genügt es die diagnoal gegenüberliegenden pads des switch-footprints so zu teilen, dass diese Leitungen (also 3 für UP und 4 für DOWN) entsprechend auf Tastendruck verbunden werden?


    Oder könnte es zu timing-Problemen kommen wenn die pads nicht auf die Millisekunde genau gleichzeitig geschlossen werden?


    soweit ist bis jetzt mein KiCad-Entwurf dazu.



    Oder ist es zeitlich nicht derart kritisch?. Normalerweise drückt man ja die shift-Taste immer kurz vor der anderen Pfeiltaste.


    maddoc

  • Hi Ronny!#

    Danke für den Tipp, die Tast64 kannte ich noch nicht, geht aber leider an meinem Ziel vorbei.


    Ich möchte meine Idee weiterverfolgen weil

    1. eine hexadezimaler Ziffernblock enthalten sein soll

    2. ohne besonderen Kernal und ICs auskommen soll - plug'n'play

    3. weil es mir Spaß macht etwas neues zu basteln, und sehen ob ich es - vielleicht mit etwas Hilfe - hinbekomme.


    Es werden also zusätzlich A-F, eine weitere Return als "Enter"-Taste, Punkt und Komma im "Ziffernblock" parallel verknüpft. Die Matrix wird so nicht wirklich erweitert. Es blieben 8x8 Leitungen plus Restore-Taste. Anschluss mit 20 PIN Leiste.


    Für F2, F4, F6 und F8 wäre das selbe Prinzip (geteilte pads) vorgesehen - habe ich aber noch nicht im PCB eingezeichnet.


    Könnte das nicht so funktionieren?

  • Ein MC14066/CD4066 sollte das Problem mit den Cursortasten lösen können.

    Wenn Du die F-Tasten auch noch "auflösen" möchtest sind es noch zwei mehr.

    Jede neue (Cursor) Taste steuert zwei Schalteingänge an, dadurch werden dann zwei Tasten gedrückt.


    [Picture of 4066]


    Also Cursor-up schaltet 5V auf pin 13 und 5.

    Pin 1 ist mit Row 4 und Pin 2 mit Column 6 verbunden (R. Shift)

    Pin 3 ist mit Row 7 und Pin 4 mit Column 0 verbunden (Cursor down)


    Also Cursor-left schaltet 5V auf pin 6 und 12.

    Pin 8 ist mit Row 4 und Pin 9 mit Column 6 verbunden (R. Shift)

    Pin 10 ist mit Row 2 und Pin 11 mit Column 0 verbunden (Cursor right)


    Wenn man 2 Dioden einsetzt kann man auch mit 3 statt 4 analog Schaltern auskommen.

    So das für 6 Tasten zwei 4066 genügen.


    Noch eine Idee aus der Norm/Graph-Taste könnte man ein Char-ROM Switch ähnlich wie beim C128 die DIN Taste bauen und mit OFF RVS zwischen ?, Del , *, /, -, + und A, B, C, D, E, F umschalten.

    F10 vielleicht als Reset oder damit man den nicht aus versehen drückt muss man F9 und F10 gleichzeitig drücken.

  • Quote

    Also Cursor-left schaltet 5V auf pin 6 und 12.

    Pin 8 ist mit Row 4 und Pin 9 mit Column 6 verbunden (R. Shift)

    Pin 10 ist mit Row 2 und Pin 11 mit Column 0 verbunden (Cursor right)

    Die Idee finde ich gut. Aber Woher kommen die Versorgungsspannungen ?


    Liegen auf der Stiftleiste +5V an die zur Tastatur geführt werden?

  • Ich möchte meine Idee weiterverfolgen weil

    1. eine hexadezimaler Ziffernblock enthalten sein soll

    2. ohne besonderen Kernal und ICs auskommen soll - plug'n'play

    3. weil es mir Spaß macht etwas neues zu basteln, und sehen ob ich es - vielleicht mit etwas Hilfe - hinbekomme.

    Da gab es doch mal so ein Ding von Rushware, welches am Joystickport angesteckt wurde ...