Karoshi MSX Community
05 de Julio de 2021, 03:38:14 pm *
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión
Noticias:
 
   Inicio   Ayuda Buscar Ingresar Registrarse  
Páginas: [1]
  Imprimir  
Autor Tema: mis pequeños descubrimientos...  (Leído 2781 veces)
0 Usuarios y 1 Visitante están viendo este tema.
e_sedes
Karoshi Maniac
****
Mensajes: 442



Email
« : 04 de Agosto de 2006, 06:06:07 am »

Bien, como el calor me provoca una pereza terrible para enfrentarme al z80 y estoy de semivacaciones, he aquí mi buena acción del mes para con la comunidad.
Esto va destinado más bien a los novatos como yo en el mundo del ensamblador. Son cosillas que fui encontrando/descubriendo en mis pesquisas para ver cómo hacer de manera simple las cosas. Supongo que a alguien le puede resultar útil, ahí va:

-Temporizador o contador de interrupciones:
 La variable de sistema JIFFY, en la dirección $FC9E (2 bytes), es igual que el TIME del basic. Se incrementa en cada interrupción y puedes darle valores.

-Lectura de los disparadores:
 TRGFLG en $F3E8 (1 byte), contiene esta información

7 6 5 4 3 2 1 0
| | | |       +-- Space bar, trig(0) (0 = pressed)
| | | +---------- Stick 1, Trigger 1 (0 = pressed)
| | +------------ Stick 1, Trigger 2 (0 = pressed)
| +-------------- Stick 2, Trigger 1 (0 = pressed)
+---------------- Stick 2, Trigger 2 (0 = pressed)

se actualiza a cada interrupción, al igual que la siguiente.

-Lectura de los cursores (o del teclado)

 En el espacio entre $FBE5-$FBEF (11 bytes) está la variable NEWKEY que recoge el mapa del teclado. La fila 8 (en $FBED) es la de los cursores, con este formato:

 bit 7  bit 6  bit 5  bit 4  bit 3  bit 2   bit 1    bit 0
  →      ↓        ↑     ←     DEL   INS  HOME  SPACE


-Lectura joystick:
 Al hacer una llamada a GTSTCK cuando miramos uno de los joysticks (no con los cursores) además de devolver en A el valor correspondiente, tenemos en E esta información: 0000RLDU. Así si solo queremos comprobar una dirección (horizontal o vertical o lo que sea) sólo hay que comprobar el/los bits correspondientes, sin más líos. Incluso puedes mirar si se pulsan simultáneamente arriba y abajo o derecha e izquierda, que de la manera normal no se puede.
 Esto no está documentado oficialmente, pero creo que debe funcionar en todas las máquinas. Lo probé con todas las BIOS distintas que encontré en emuladores y rula. También en mi VG8020 (y en el Sony HB-75P y en el TR FS-A1ST, gracias jl  Wink). Si lo podeis probar en vuestras máquinas y me contais si da algún problema os lo agradecería infinitamente... Smiley  (mirar aquí: http://www.msxgamesbox.com/karoshi/index.php?topic=268.15 )
No va con CBIOS, pero no creo que sea mucho problema, no?

Bien, perdón por el tocho, pero lo dicho, que creo que le puede ser útil a alguien como yo, un pardillo que empieza... Grin
En línea

sempre fun un valente corredor
kabish
Karoshi Maniac
****
Mensajes: 470


caspaflims@hotmail.com
« Respuesta #1 : 05 de Agosto de 2006, 11:14:32 am »

Muchas gracias. A mi me ha servido. Smiley

Da gusto ver q no soy el unico q NO tiene vacaciones.
En línea
e_sedes
Karoshi Maniac
****
Mensajes: 442



Email
« Respuesta #2 : 07 de Agosto de 2006, 08:51:59 pm »

Me alegro de te sirva. Para eso era  Smiley.

Sigo haciendo el llamamiento de que quien pueda pruebe en sus MSX reales el pequeño programa que puse en el hilo que referencio más arriba, porfaaa Cry...

(está visto que sois unos viciosos y voy que tener que hacer un juego pa que lo probeis, diantres!  2 Guns Firing ) Wink
En línea

sempre fun un valente corredor
Páginas: [1]
  Imprimir  
 
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.21 | SMF © 2013, Simple Machines XHTML 1.0 válido! CSS válido!