HispaMSX

RE: [hispamsx] Duda romera

2004-05-21 09:16:53
Nada, nada... Tú tranquilo, que el MSX es muy apañado y te da facilidades.

Cuando la BIOS se encarga de iniciar una ROM primero ha localizado RAM en las páginas 2 y 3 para el BASIC. Como en MSXdev'04 sólo se pueden utilizar 16 KB de RAM, tienes que poner tus variables en la página 3, pero esto es muy sencillo. Prueba a hacer algo así como

org C000h

VARIABLE_1: ds 1
VARIABLE_2: ds 2
...

Esto, claro, dependerá del ensamblador que uses. Algunos prefieren cosas como defb o defs ... En cuanto a la ROM en sí misma, casi te recomiendo que la pongas en la página 2 (8000h). Así, pueden convertirla fácilmente en un archivo binario que carga desde BASIC. Y la versión "convertida" será compatible con cualquier MSX con al menos 32 KB de RAM.

Para hacer que tu ROM se convierte en BIN, teniendola ya en la página 2, bastaría con hacer algo parecido:

db FEh
dw 8000h,9FFFh,EJECUCION

INCBIN "juego.rom"

En ejecución, claro está, tendrías que poner la misma dirección que pusiste en la cabecera de la ROM.

Otra versión, aunque ya te ocuparía más de 8 KB, podría ser más flexible:

db FEh
dw 8000h,FIN-1,RUTINA

INCBIN "juego.rom"

RUTINA:
ld hl,[8002h]
jp [hl]
FIN:

Bueno, espero que esto ayude. Y ya te digo, programando así no necesitas saber nada (o casi nada) de slots, subslots y esas cosillas. Luego diréis que no he puesto facilidades...

Un saludo,

Edu Robsy


Codeanto yo estaba "quelcòm" para la MSXdev'04, cuando de repente como
su un flash se trarara recorde que el formato a presentar es ROM, o
sea, read only memory, por lo que solo lee, no writea, y se me
ocurre... las variables hay que ponerlas en RAM... supongo que hay que
hacer "cosas" con los slots para usar la ram para las variables....
pero no tengo ni idea T_T de nada T_T, luego me reelere el easymbler
(C) que recuerdo que comentaba cosas de slots... nomacuerdo...
Resumiendo, socorro, ayuda, auxilio, ¿que tengo que saber para
poner/sacar cosas de ram? ¿solo con un org bien puesto tengo suficiente?
estoy muy perdido T_T



*HispaMSX. La mailing-list de MSX en castellano*
Para cualquier duda: hispamsx-owner(_en_)yahoogroups(_punto_)com
Web de lista: http://www.hispamsx.org
Enlaces a Yahoo! Grupos

Para visitar tu grupo en la web, accede a:
 http://es.groups.yahoo.com/group/hispamsx/

Para cancelar tu suscripción en este grupo, envía
un mensaje en blanco a:
 hispamsx-unsubscribe(_en_)yahoogroups(_punto_)com

El uso que hagas de Yahoo! Grupos está sujeto a
las Condiciones del servicio de Yahoo!:
 http://es.docs.yahoo.com/info/utos.html


_________________________________________________________________
Una nueva forma de navegar. Descarga la Barra de Herramientas de MSN. http://toolbar.msn.es/


<Anterior en la conversación] Conversación actual [Siguiente en la conversación>