Karoshi MSX Community

MSX Actualidad => General => Mensaje iniciado por: mohai en 14 de Julio de 2009, 05:20:32 pm



Título: comportamiento del puerto de joystick
Publicado por: mohai en 14 de Julio de 2009, 05:20:32 pm
Buenas,

me gustaría saber cómo se comporta el puerto de joystick en lectura/escritura. En concreto los pines 6 y 7. Son pines de entada y salida.
Sé que para leer/escribir en un puerto de joystick, primero se escribe en el registro 15 del PSG y luego se lee el registro 14 el estado.

Segun la página del MAP, el registro 15 (escritura), funciona de la sigiuente manera:

PSG I/O port B (r#15) – write/read

Bit Description Comment
0 Output joystick port 1, pin 6 (set 1 for input)
1 Output joystick port 1, pin 7 (set 1 for input)
2 Output joystick port 2, pin 6 (set 1 for input)
3 Output joystick port 2, pin 7 (set 1 for input)
4 Output joystick port 1, pin 8 
5 Output joystick port 2, pin 8 
6 Joystick input selection, for r#14 inputs (1=port 2)
7 Kana led control (1=off)

Pero según esto, sólo podríamos escribir ceros (o valores en bajo) en los pines 6 y 7. ¿Al poner un 1 en el registro 15, el pin pasa a un estado de "alta impedancia" o algo asi y se prepara para recibir datos?

Me pregunto si esto es cierto, es decir, ¿hay que poner el bit correspondiente a 1 para leer el pin 6 o 7 o el puerto siempre es legible, independientemente de lo que escribamos y en realidad se pueden escribir ceros o unos para generar el estado (alto o bajo) que queramos? (espero no haberos liado)

Lo que quiero es controlar el estado de estos pines (6 y 7).