Hay uno mejor:
http://www.speccy.org/foro/viewtopic.php?f=8&t=188
Te muestro como lee la kernel:
Aca aparentemente lee la tecla Commodore
E938 A9 7F LDA #$7F
E93A 8D 00 DC STA $DC00
E93D AD 01 DC LDA $DC01
E940 C9 FB CMP #$FB
Entre la instruccion STA $DC00 , la ejecucion de LDA .... el pic tiene que avivarse que se puso un valor en DC00, y sacar de la tabla el valor de la columna 7 (hay que transformar de 7f a 7, no es simple, son varios pasos) y responder a DC01. Tal vez se pueda, pero me suena mucho...
Es mejor porque usa un micro de 50Mhz, asi cualquiera! Pero esta bien que ahora lo metio por adentro y no le agrego una caja enorme por afuera. Mi idea es hacer algo asi (la C64 parese ser mucho mas espaciosa que la spectrum), pero con un micro standart no con un pentium 4 dual core.
Lo estoy leyendo. Todabia no lo ley en detalle esa parte, pero me parece que igual es mas predecible la parte del mouse/joystick (aunque mis estimaciones andan medio erradas, sino ni habria hecho esta placa)Quizas esto te de alguna idea sobre como programar el PIC: LINK
No es para teclado, sino una interfaz de mouse para la 64, que simula un mouse 1351.
El tipo se encontro con un problema similar, ya que tenia que recibir los datos del mouse y a la vez fijarse si la C64 estaba tratando de leer el mouse.
No creo que te convenga guiarte por la temporizacion de la rutina del Kernal, porque muchos juegos/programas deben usar su propia rutina completamente diferente. A lo que voy es que no esperes que la c64 escanee el teclado en una secuencia especifica.
Es mejor porque usa un micro de 50Mhz, asi cualquiera! Pero esta bien que ahora lo metio por adentro y no le agrego una caja enorme por afuera. Mi idea es hacer algo asi (la C64 parese ser mucho mas espaciosa que la spectrum), pero con un micro standart no con un pentium 4 dual core.
Tampoco es tan caro, el microcontrolador ese no creo que salga más de 10 o 15 dólares. No entiendo porque "es cualquiera".
Lo metió por adentro porque lo puso en un Spectrum+, en un Spectrum normal se le complicaría...
La verdad que no tiene mucho sentido, y mas para mi que la C= ni la uso, pero cuando ley el comentario de "elpiloto", me di cuenta que no se me habia ocurrido, y vi que el hardware era mucho mas simple que el que estoy haciendo al revez, y me entusiasme porque parecia mucho mas simple de hacer andar... Grave error!
Ahora, cual es el punto de tener un teclado PS2 en la C64? Las 64C de drean, sobre todo las de teclado blanco, tenian un teclado malisimo, pero las C64 norteamericanas tienen un teclado mejor que los PS2, por ahi tendria sentido si se mete la maquina en un mini gabinete horizontal al estilo PC, sino ocupa mucho espacio.
Lo que seria interesante es como vos proponias, de usar un teclado de C64 en la PC, pero en mi caso se complicaria bastante porque uso tanto o mas el teclado que el raton, de hecho me complica la vida usar una notebook porque necesito las teclas page up/down, home, end, y el teclado numerico. Un teclado de C128 seria interesante, pero tiene un tamaño exagerado. Habria que ver, si se combina la tecla commodore para reemplazar las otras por ahi sea usable.