Karoshi MSX Community

Desarrollo MSX => Desarrollo (Español/Spanish) => Mensaje iniciado por: e_sedes en 25 de Enero de 2006, 01:00:38 am



Título: caracteres de texto de la ROM
Publicado por: e_sedes en 25 de Enero de 2006, 01:00:38 am
¿La fuente de de texto que viene en la rom está en la misma posición en todos los modelos?
En la posición 4H de memoria está la dirección de comienzo de esa tabla, no? pero es como con los puertos del VDP, que son siempre los mismos o hai que consultarlo para saberlo?
gracias.


Título: Re: caracteres de texto de la ROM
Publicado por: pitpan en 25 de Enero de 2006, 08:46:48 am
Por las pruebas que he hecho, que han consistido en abrir en el BlueMSX distintas configuraciones y probar, parece que siempre estén en las mismas posiciones: si haces desde BASIC

PRINT HEX$(PEEK(4)+256*PEEK(5))
1BBF
Ok
_

Al menos, es el resultado que me ha dado para modelos diversos de MSX, MSX2, MSX2+ y Turbo-R. De todos modos, no te la juegues y hazlo bien: no te cuesta nada. Además, es algo que no te cambiará la velocidad. Sin embargo, un OUT sí que cambia si cada vez tienes que cargar una variable con el puerto en cuestión. Tu verás.

Incluso para C-BIOS la dirección es también 1BBFh.


Título: Re: caracteres de texto de la ROM
Publicado por: e_sedes en 25 de Enero de 2006, 11:46:36 am
Gracias. Ya me parecía a mi que sería una de esas cosas "estandar" oficiosas, pero bueno, mejor comprobarlo por si. La verdad es que no cuesta nada, pero la vagancia de ahorrarse dos lineas y tal...


Título: Re: caracteres de texto de la ROM
Publicado por: jltursan en 25 de Enero de 2006, 12:15:27 pm
Debe de ser MUY oficioso, en el Red Book se da por hecho que por defecto la dirección es &H1BBF. No se me ha ocurrido mirar en todos los equipos, a ver si en alguna familia cambia la dirección.


Título: Re: caracteres de texto de la ROM
Publicado por: e_sedes en 25 de Enero de 2006, 01:57:46 pm
Lo acabo de leer tambien en un libraco de esos de Data Becker (de los que se te deshacen en las manos, que encuadernación mas mala...) que tenía por ahí. Pone que la dirección es siempre &h1bbf. Me resulta curioso eso de en la ROM te especifiquen algo que es fijo, lo harían por algo, supongo.

Tambien dice (no lo sabía) que esa dirección está indicada en &hf920 &hf921. Ya lo miré y ya lo pokeé. Y tras un screen 0 te aparece la fuente cambiada. Está bien para hacerlo sin tener que liarse.


Título: Re: caracteres de texto de la ROM
Publicado por: Darth_Fistro en 25 de Enero de 2006, 03:47:47 pm
Si quieres cambiar el juego de caracteres en cualquier modo de pantalla, copia la VRAM con los caracteres (los 256) a una dirección en RAM, y luego haz:

poke &hf91f,3

poke &hf920,parte baja de la dirección
poke &hf921,parte alta de la dirección

Aunque cambies de modo de pantalla, seguirás teniendo dicho juego de caracteres. Lo que hace es "parchear" el puntero de los caracteres de la ROM a la RAM.

Espero que te sirva  :)


Título: Re: caracteres de texto de la ROM
Publicado por: e_sedes en 25 de Enero de 2006, 05:51:18 pm
Ya me documenté un poco más. Sé que en F91F está la variable del sistema CGPNT que son 3 bytes. F920 y F921 ya me suponía que apuntaba al juego de car., pero qué es lo de F91F? es curiosidad...


Título: Re: caracteres de texto de la ROM
Publicado por: WYZ en 25 de Enero de 2006, 06:00:37 pm
.... pero es como con los puertos del VDP, que son siempre los mismos o hay que consultarlo para saberlo?
gracias.

Los puertos del VDP tampoco son fijos :D.. vienen especificados tambien en la ROM por defecto en las direcciones precisamente posteriores a las de la direccion de inicio de la tabla de caracteres ( 06h y 07h) = 98h




Título: Re: caracteres de texto de la ROM
Publicado por: SapphiRe en 25 de Enero de 2006, 06:17:03 pm
Los puertos del VDP tampoco son fijos :D

De hecho existen modelos de MSX que tienen los puertos del VDP en otras direcciones. Son raros, pero existen.


Título: Re: caracteres de texto de la ROM
Publicado por: e_sedes en 25 de Enero de 2006, 06:29:50 pm
Los puertos del VDP tampoco son fijos :D

De hecho existen modelos de MSX que tienen los puertos del VDP en otras direcciones. Son raros, pero existen.

Pensaba que solo cambiaban en los cartuchos esos de ampliacion a MSX2 que traían un VDP, pero bueno, me refería a que todo el mundo (creo) pasa de consultarlo, no?


Título: Re: caracteres de texto de la ROM
Publicado por: Darth_Fistro en 25 de Enero de 2006, 07:45:39 pm
Ya me documenté un poco más. Sé que en F91F está la variable del sistema CGPNT que son 3 bytes. F920 y F921 ya me suponía que apuntaba al juego de car., pero qué es lo de F91F? es curiosidad...

Ese 3 indica el número de página donde se aloja el juego de caracteres. En el ejemplo que te puse venía la página 3 (se me olvidó comentártelo). Imagino que por defecto será un 0.


Título: Re: caracteres de texto de la ROM
Publicado por: e_sedes en 25 de Enero de 2006, 09:02:31 pm
Ese 3 indica el número de página donde se aloja el juego de caracteres. En el ejemplo que te puse venía la página 3 (se me olvidó comentártelo). Imagino que por defecto será un 0.
OK, gracias. Pero por qué hay que especificarle la página? Eso no va implicito dando la dirección? ???


Título: Re: caracteres de texto de la ROM
Publicado por: jltursan en 25 de Enero de 2006, 09:25:20 pm
Es que lo que realmente codifica es el Slot en el que se encuentra, primario o secundario. Por defecto suele valer 0 ya que se localiza en el Slot primario 0. El banco de carácteres puede estar localizado en cualquier otro slot de memoria.