HispaMSX

Re: [hispamsx] Llamada al sistema &H4A

2015-06-02 18:15:40
Buenas,


Aunque pienso hacerlo directamente, empecé, como recomiendan todos los
libros, a hacerlo con las llamadas al sistema. En los mapas de las llamadas
al sistema figura que la: &h4A y &h4D son de lectura y escritura del
periférico video. En la &h4A que supuestamente es equivalente a VPEEK del
BASIC, esta la siguiente rutina en la ROM del BlueMSX (si, ya se, el Open
es mejor, pero a mí me gusta el Blue):


004A          INC BC

004B         OUT (&HA8),A


Imposible.
Debes estar mirando una ROM que no es la de la BIOS.
¿De dónde has sacado ese trozo de código?

Para empezar, piensa que todas las rutinas de entrada de funciones de BIOS
tienen una instrucción JP (cuyo op-code es #C3).
Esto es porque si te fijas, todas las rutinas de BIOS están entre sí
separadas sólo por 3 bytes (#4A + 3 = #4D) ya que toda esa zona de la BIOS
es sólo una tabla con los saltos a la rutina propiamente dicha.

Debes estar mirando otra cosa distinta.



1) Porque figura la dirección del puerto &HA8 en OC OUT si éste
corresponde al PPI y no al VDP (que son &h98 y &h99) y

2) porque no está presente una instrucción RET al final de la llamada (la
siguiente dirección ya es de la siguiente llamada &h4D)?
__,_

Pues porque como te digo, no estás mirando la ROM de la BIOS. Estás mirando
vete a saber qué.
<Anterior en la conversación] Conversación actual [Siguiente en la conversación>