problema en asMSX

Por jrcp_kun

Paragon (1410)

Imagen del jrcp_kun

08-02-2015, 17:46

quiero hacer una pruebas y he creado 2 pantallas completas en sc5

si una la hago
p1:
.incbin "pantalla1"

si la p2 la hago igual me da error

como tengo que hacer para cargar esa imagen?? la quiero meter en vram pagina 1 asi que seria:

ld hl,p2
ld de,8000h
ld bc,69ffh
call LDIRVM

pero al compilar me lanza error de que no puede meter en page3 los datos.

hay que poner algo diferente o como va??

Login sesión o register para postear comentarios

Por pitpan

Prophet (3137)

Imagen del pitpan

08-02-2015, 18:56

Hola,

No es un problema de asMSX, sino del propio MSX: estás tratando de meter linealmente dos imágenes en SC5, cuando cada una de ellas te ocupa 256 x 212 / 2 = 26,5 KB. Si lo que estás creando es una ROM (imagino) el máximo son 32 KB lineales. Como ves, 26,5 x 2 = 58 KB, lo que excede el límite. Al usar la directiva ROM, asMSX espera que la página 3 corresponda siempre a memoria RAM (C000h - FFFFh).

Para solucionarlo, tienes dos opciones:

a) Comprimir las imágenes para ver si encajan bien (BitBuster, Pletter, etc.)
b) Usar un megaROM, pero aún así te irá un poco "justito". Mejor quédate con la primera solución.

Investiga un poco, pero el error que te da es exactamente ése: no puedes poner datos en la página 3 si estás creando una ROM. En el mejor de los casos, la ROM te podría ocupar desde la página 0 a la página 2, es decir, de 0000h a BFFFh. Pero después de eso tiene que haber algo de RAM necesariamente.

Por jrcp_kun

Paragon (1410)

Imagen del jrcp_kun

08-02-2015, 19:15

ok
es que msx2 hay 64 kb de vram. por eso me parecia raro el error. o no lo estaba haciendo bien

gracias

Por pitpan

Prophet (3137)

Imagen del pitpan

08-02-2015, 19:21

Todo lo que hagas en asMSX se refiere siempre a la memoria principal. Si quieres copiar algo a VRAM, tendrás que tenerlo primero en RAM o ROM y copiarlo desde allí. El concepto es importante.

Por jrcp_kun

Paragon (1410)

Imagen del jrcp_kun

08-02-2015, 19:58

una cosa estoy con el pletter pero la rutina de descompresion no me funciona para pantallas en screen 5 . es eso normal??
hay otra rutina de descompresion para msx2??

Por Warchild

Paragon (1280)

Imagen del Warchild

08-02-2015, 20:52

Yo he usado el BinDB que me venía en la carpeta Tools junto con el asMSX y me ha ido bien (más o menos una pantalla de screen 5 se comprimía en unos 6KB). Con los megaroms no me aclaro mucho, me faltan bastantes hervores ahí así que no te puedo ayudar en eso.

Por jrcp_kun

Paragon (1410)

Imagen del jrcp_kun

08-02-2015, 21:28

probare ese. la rutina de descompresion??

Por jrcp_kun

Paragon (1410)

Imagen del jrcp_kun

08-02-2015, 22:06

he probado el .rle y si la rutina me descomprime en la pagina visible pero en la segunda pagina no me hace nada.
me lo envia siempre a la visible con los out(98)

Por FX

Champion (264)

Imagen del FX

09-02-2015, 00:01

Hola jrcp_kun:
No tengo aqui ahora como hacerlo, pero tienes que cambiar la pantalla activa a la que quieras. Por defecto siempre tienes la 0.
Espero que te ayude, sino ya lo hablamos....jejejejje
Un saludo

Por jrcp_kun

Paragon (1410)

Imagen del jrcp_kun

09-02-2015, 14:18

Si que no nos vemos jajaja

He cambiado la pagina activa y da igual. Si por ejemplo tengo activa la 1 en vez de la cero me lo pone ahi. Osea directamente en la activa. Sea cual sea la elegida. Ya te paso los ficheros y lo ves. Te hare uno de ejemplo.