Karoshi MSX Community
05 de Julio de 2021, 07:15:08 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 [2]
  Imprimir  
Autor Tema: Volcado de pantallazos a lo cafre  (Leído 8976 veces)
0 Usuarios y 1 Visitante están viendo este tema.
WYZ
Visitante
« Respuesta #15 : 24 de Abril de 2006, 10:03:09 am »

Jon, teoricamente hay dos maneras de hacer un modo bitmap con una tabla de colores (o sin ella) reducida.

- Una modo mixto SC1 con $40 bytes de tabla de color (creo recordar, porque la use en alguna prueba extraña y funcionó. Ademas pregunté por ello en MRC para cambiar muy rapidamente el color del bitmap a pantalla completa muy rapidamente)

- Un modo Bitmap en modo texto, con lo que seguro que tienes dos bancos de formas en $0000 y $2000 y te olvidas de la tabal de color porque en este modo (seria algo asi como un screen 0) el color se toma directamente del registro 7. No lo he probado nunca, pero es posible que solo se vean los 6 bits mas altos de cada byte en pantalla por cada tile, ya que tenemos 40 caracteres por linea o no se si seria visible una resolucion de 320 pixeles de ancho.(?) a ver si alguien se atreve!  Grin

En línea
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #16 : 24 de Abril de 2006, 06:00:35 pm »

Os agradezco de veras vuestra ayuda, aquí nunca se espera menos, mil gracias de nuevo Smiley

Me estoy liando un poco con tanto cambio de "páginas" si se le puede llamar así, así que permitidme replantear la pregunta:

¿Cómo hacen esas conversiones de Spectrum para que, habiendo acción por toda la pantalla, o 2 tercios como era habitual, vaya la cosa medio fina? Podría pintar sólo los sprites, pero hay varios y grandes y situados por planos y me parece que volcarlos directamente a VRAM me tardaría un egg de pato Smiley Por eso por ahora los vuelco a un buffer y de ahí a la VRAM a saco.

 Smiley
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
jltursan
Karoshi Forum's Guru
*******
Mensajes: 1516


¿Que es lo que has aprendido hoy?


WWW Email
« Respuesta #17 : 24 de Abril de 2006, 06:56:15 pm »

Citar
- Una modo mixto SC1 con $40 bytes de tabla de color (creo recordar, porque la use en alguna prueba extraña y funcionó. Ademas pregunté por ello en MRC para cambiar muy rapidamente el color del bitmap a pantalla completa muy rapidamente)

¡Menudo engendro Smiley!, ¿cuantos carácteres entran en un byte de color?, con 64 bytes disponibles, ¿son cada 4 en lugar de cada 8?

Citar
- Un modo Bitmap en modo texto, con lo que seguro que tienes dos bancos de formas en $0000 y $2000 y te olvidas de la tabal de color porque en este modo (seria algo asi como un screen 0) el color se toma directamente del registro 7. No lo he probado nunca, pero es posible que solo se vean los 6 bits mas altos de cada byte en pantalla por cada tile, ya que tenemos 40 caracteres por linea o no se si seria visible una resolucion de 320 pixeles de ancho.(?) a ver si alguien se atreve!  Grin

De ese me suena haber leido algo; pero creo recordar que decían que luego no podías acceder a la VRAM y te quedabas sin poder hacer nada... Sad
¿No se fastidiará el VDP con tanto experimento, verdad? Evil

Citar
Cómo hacen esas conversiones de Spectrum para que, habiendo acción por toda la pantalla, o 2 tercios como era habitual, vaya la cosa medio fina? Podría pintar sólo los sprites, pero hay varios y grandes y situados por planos y me parece que volcarlos directamente a VRAM me tardaría un egg de pato Smiley Por eso por ahora los vuelco a un buffer y de ahí a la VRAM a saco.

Pues eso, que no podemos comparar. El spectrum utilizaba doble buffer para pantalla completa y accesos directos cuando no había demasiadas cosas que mover. La ventaja era que no había VRAM; ya sabes, accedías a la pantalla (si no recuerdo mal) mediante el rango de direcciones 16384-17152 de la RAM. Si querías hacer un scroll suave pues le hacías una rotación directamente a los bytes en esas posiciones, si querías transferir bloques a toda leche, pues un mogollón de LDI y arreglado.

El sistema que estás utilizando ahora creo que es el único viable. Para optimizar un poco el asunto y sin pasarte de complejidad lo que puedes hacer es, una vez volcados al buffer, calcular el rectángulo (o rectángulos a gusto del consumidor) más pequeño que los engloba a todos y volcar únicamente ese fragmento a la VRAM. Como poco seguro que te ahorras 1/3 del total.
En línea

Doom dee doom dee doom
Jon_Cortazar
Administrator
Karoshi Forum's God
********
Mensajes: 2777



WWW Email
« Respuesta #18 : 25 de Abril de 2006, 08:52:01 am »

¿No estarás preparando un "After the Darth"?. ¿O un "Fistro Moves?. Cheesy
En línea

Jon Cortázar Abraido (aka El Viejo Archivero)
RELEVO Videogames
[Dioniso: La cafeína está haciendo su trabajo; yo espero hacer el mío.]
[pitpan: Me sigue pareciendo más productivo jugar al SNAIL MAZE que seguir esta discusión.]
Darth_Fistro
Karoshi Hero
*****
Mensajes: 507


Email
« Respuesta #19 : 25 de Abril de 2006, 08:12:05 pm »

Jejejeje, nada de eso, Jon  Wink

De todas formas entonces parece que las conversiones o bien hacían un volcado a lo bruto o bien sólo volcaban los sprites a la pantalla directamente, que la verdad, no sé si la diferencia entre ambos métodos es mucha sobre todo si los sprites son grandes  Huh

Bueno, intentaré lo de los nops y si no, pues a fastidiarse con "olas"  Cheesy
En línea

MSX FOREVER (hasta que saquen un ZX81 con TMS, PSG y 64K de RAM)
Páginas: 1 [2]
  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!