Hallo,
ich möchte mal eine Alternative zum Crosspoint-Switch vorstellen. Ich hatte mir vor kurzen auch ein kleines Board gebaut um eine C64-Tastatur zu emulieren und entsprechend Kommandos über die serielle Schnittstelle zu empfangen. Der Clou dabei ist, die Ports des CIA sind direkt mit 2 Ports des Atmega (in meinen Fall ein Atmega324) verbunden. Die Matrix wird nun in Software im AVR realisiert, in dem hier die Pin-Change-Interrupts verwendet werden. Sobald der C64 also ein Signal auf low zieht wird entsprechend der anderen Port von der Firmware angepasst (entsprechende Pins auf Masse legen bzw. weiterhin als Input konfiguriert). Damit das Ganze funktioniert, muss der Atmega recht schnell getaktet werden (in meinen Fall läuft er mit 14.56MHz) und es sollten keine weiteren Interrupts in der Firmware verwendet werden, da es sonst zu Verzögerungen in der Ausführung der Pin-Change-Interrupts kommen könnte.
Anbei noch ein paar Bildchen.