Busco imagen con atributos numerados

BlackHole
Mensajes: 664
Registrado: 03 Ago 2011 23:07
Agradecimiento recibido: 28 veces

Busco imagen con atributos numerados

Mensajepor BlackHole » 12 Sep 2017 12:03

Hola,

Para ayudarme a desarrollar un algoritmo, que me está fallando y no doy con la solución, estoy buscando a ver si existe alguna imagen de Spectrum (256x192 pixels) donde estén numerados cada uno de los 768 caracteres en chiquitito. Es que hacerla ahora a mano sería una tarea que me podría llevar varios días, por eso pregunto por si me puedo ahorrar el trabajo.

Gracias.

dancresp
Mensajes: 4956
Registrado: 13 Nov 2010 02:08
Agradecido : 13 veces
Agradecimiento recibido: 68 veces

Re: Busco imagen con atributos numerados

Mensajepor dancresp » 12 Sep 2017 12:06

¿Ein?
¿768 caracteres en chiquitito?

No te entiendo !!!

Avatar de Usuario
dandare
Mensajes: 345
Registrado: 15 Jul 2016 00:38
Ubicación: Madrid, Córdoba, Luanco
Agradecido : 19 veces
Agradecimiento recibido: 88 veces
Contactar:

Re: Busco imagen con atributos numerados

Mensajepor dandare » 12 Sep 2017 13:19

BlackHole escribió:Hola,

Para ayudarme a desarrollar un algoritmo, que me está fallando y no doy con la solución, estoy buscando a ver si existe alguna imagen de Spectrum (256x192 pixels) donde estén numerados cada uno de los 768 caracteres en chiquitito. Es que hacerla ahora a mano sería una tarea que me podría llevar varios días, por eso pregunto por si me puedo ahorrar el trabajo.

Gracias.

Pues es que es difícil meter números de 3 cifras en 8x8 pixels, a partir del 100 te iba a costar, y del 200 aún más.

Entiendo que quieres cada uno de los cuadrados de 8x8 numerados del 0-767 por ejemplo. (32 columnas x 24 filas)
_.. ._ _.

Avatar de Usuario
carmeloco
Mensajes: 902
Registrado: 16 Dic 2015 08:56
Agradecido : 3 veces
Agradecimiento recibido: 58 veces

Re: Busco imagen con atributos numerados

Mensajepor carmeloco » 12 Sep 2017 13:28

Quizá esto te sirva:
http://www.worldofspectrum.org/ZXSpectrum128+3Manual/chapter8pt15.html

Está el esquema de pantalla en caracteres y pixels. Ojo, que está girado hacia la derecha.

Si tienes el manual del +2 original, es la página 106.
Si quieres, escaneo la página y la pongo.
¿Quieres un ZX-Uno? puedes comprarlo en:
viewtopic.php?f=71&t=685

Tirada MSX Zemmix Neo en:
viewtopic.php?f=49&t=200033116

Avatar de Usuario
carmeloco
Mensajes: 902
Registrado: 16 Dic 2015 08:56
Agradecido : 3 veces
Agradecimiento recibido: 58 veces

Re: Busco imagen con atributos numerados

Mensajepor carmeloco » 12 Sep 2017 13:34

La página del manual escaneada:

Imagen
¿Quieres un ZX-Uno? puedes comprarlo en:
viewtopic.php?f=71&t=685

Tirada MSX Zemmix Neo en:
viewtopic.php?f=49&t=200033116

BlackHole
Mensajes: 664
Registrado: 03 Ago 2011 23:07
Agradecimiento recibido: 28 veces

Re: Busco imagen con atributos numerados

Mensajepor BlackHole » 12 Sep 2017 15:37

Hola. Tal vez me debería haber explicado mejor. No sería estrictamente necesario que en el cuadrado de 8x8 hubiese un número de 3 cifras desde 1 a 768; pero por ejemplo sí cabrían bien dos coordenadas en base 32 que identificarían unívocamente el carácter, por ejemplo. Obviamente, podría dibujarla yo a mano, pero es un curro importante que quería evitarme.

Carmeloco: Gracias por tu interés, pero la teoría la conozco perfectamente, dónde debería estar cada coordenada en chars o pixels. Sin embargo, no me sirve el tenerlo en papel. El problema es que estoy haciendo un algoritmo de reordenación de la pantalla para que sea más comprimible, y a la hora de reordenarla en MSX (que es el destino real de la pantalla) no me cuadran los resultados teóricos con los prácticos, y quería saber a dónde diablos había ido a parar cada bloque de 8x8 porque obtengo basura en pantalla...

Bueno, el programa lo tengo hecho desde hace 10 años y lo he utilizado con éxito en Spectrum y Amstrad (por ejemplo, es usado en el Cannon Bubble). Genera 4 patrones diferentes: 3 bloques de 32 columnas de 64 líneas cada uno, 24 filas de 32 columnas de 8 líneas cada una, 32 columnas de 192 líneas y 192 líneas de 32 bytes cada una. Luego comprimo cada imagen y escojo la más pequeña. Tengo algoritmos en Spectrum para "desencriptar" cada patrón, pero en MSX no me están funcionando. Algo hago mal pero no doy con la clave...

Avatar de Usuario
minter
Mensajes: 1215
Registrado: 22 Jul 2014 18:51
Agradecido : 435 veces
Agradecimiento recibido: 233 veces

Re: Busco imagen con atributos numerados

Mensajepor minter » 12 Sep 2017 16:06

como un código corby pero en 8x8?
y no te valen con tres líneas de 4 pixeles y pintar en binario?
unidad decena y centena en binario. te valdría ocupar 3x4 del bloque 8x8.

BlackHole
Mensajes: 664
Registrado: 03 Ago 2011 23:07
Agradecimiento recibido: 28 veces

Re: Busco imagen con atributos numerados

Mensajepor BlackHole » 12 Sep 2017 17:23

Hola. No sé lo que es un código corby, lo siento. No me sale nada en Google. ¿Está bien escrito?
Intentaba que fuese más "legible" a simple vista porque aunque ahora estoy moviendo bloques de 8 bytes, no necesariamente podrían acabar juntos.
También es cierto, que si el algoritmo estuviese bien hecho y tuviese una idea de donde falla, no deberían estar separados.
Pero acabaría con un "mar de puntos" y un buen dolor de cabeza descifrándolos, hahaha.

Avatar de Usuario
carmeloco
Mensajes: 902
Registrado: 16 Dic 2015 08:56
Agradecido : 3 veces
Agradecimiento recibido: 58 veces

Re: Busco imagen con atributos numerados

Mensajepor carmeloco » 12 Sep 2017 17:25

Pues a mi se me ocurre hacer una imagen, con cinco atributos, cada uno en un punto estratégico de la pantalla, y cada uno de un color distinto, sobre un fondo blanco. Yo empezaría por cuatro de los cinco atributos, en cada una de las esquinas de la imagen, y el quinto, en el centro. Para ver dónde se mueven, y si ese movimiento sigue algún patrón específico, creo que puede valer. Buscar cada uno de los que se han movido en atributos numerados en toda la pantalla, puede ser terrible.
¿Quieres un ZX-Uno? puedes comprarlo en:
viewtopic.php?f=71&t=685

Tirada MSX Zemmix Neo en:
viewtopic.php?f=49&t=200033116

BlackHole
Mensajes: 664
Registrado: 03 Ago 2011 23:07
Agradecimiento recibido: 28 veces

Re: Busco imagen con atributos numerados

Mensajepor BlackHole » 12 Sep 2017 18:04

Los atributos no coinciden ninguno donde deben quedar, por eso estoy sospechando que mis calculos de los offsets son incorrectos.

Obtengo esta imagen:
tlm0001.png
tlm0001.png (15.28 KiB) Visto 20 veces

cuando debería algo similar a esta otra (versión ZX Spectrum):
tlm_zx.png
tlm_zx.png (6.07 KiB) Visto 20 veces

Avatar de Usuario
luiscoco
Mensajes: 2323
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 27 veces
Agradecimiento recibido: 44 veces
Contactar:

Re: Busco imagen con atributos numerados

Mensajepor luiscoco » 12 Sep 2017 18:32

al parecer con un programa se puede hacer

Avatar de Usuario
elfoscuro
Mensajes: 1258
Registrado: 01 Jun 2012 20:46
Agradecimiento recibido: 24 veces
Contactar:

Re: Busco imagen con atributos numerados

Mensajepor elfoscuro » 12 Sep 2017 23:31

BlackHole escribió:Los atributos no coinciden ninguno donde deben quedar, por eso estoy sospechando que mis calculos de los offsets son incorrectos.

Obtengo esto: tlm0001.png
cuando debería obtener esto otro: tlm_zx.png


¿Pero esas imágenes son ambas en un Spectrum o ya en el MSX? Es que la distribución del spectrum imagino que sabrás que es rara de narices...

De todos modos... Yo intentaría descomprimir en RAM, pero no en la de pantalla, a ver cuantos bytes resultan de la descompresión (asegurante de poner todo a cero antes, para ver que bytes se modifican). Debería de dar 6912 bytes modificados, si da otra cosa, es que la descompresión es incorrecta y no es un offset de la pantalla.

Es que veo patrones al principio de la pantalla que ni siquiera existen (si existe el tile en el crater, pero se repite un montón de veces, como si el dato del descompresor estuviera mal).

Un saludo.

Avatar de Usuario
gflorez
Mensajes: 667
Registrado: 12 Sep 2014 19:58
Agradecido : 8 veces
Agradecimiento recibido: 81 veces

Mensajepor gflorez » 12 Sep 2017 23:40

Pero esa pantalla también tiene el bitmap mal, totalmente mal... parece que de 8 en 8 lineas van bien porque se aprecian bastantes cuadrados de caracteres correctos aunque en mal sitio. Luego otros se repiten demasiado, como la primera linea y media.

Yo empezaría a ver porqué el gráfico está tan descolocado. Como dice elfoscuro, las lineas de gráficos van alternadas.

Los atributos descolocados únicamente producen lio de colores porque van perfectamente consecutivos.

BlackHole
Mensajes: 664
Registrado: 03 Ago 2011 23:07
Agradecimiento recibido: 28 veces

Re: Busco imagen con atributos numerados

Mensajepor BlackHole » 13 Sep 2017 02:03

elfoscuro: La primera captura es una imagen del emulador openMSX y es lo que se ve. La segunda es una captura del ZX-Paintbrush con colores del Spectrum (que son más brillantes que el MSX como sabrás) y es lo que supuestamente debería de haber salido en pantalla. Pues la cosa es que descomprime bien, tanto la pantalla como luego el juego posterior. No tiene sentido el que aparezcan patrones erroneos. Es que para acceder a la VRAM del MSX hay que hacer OUT en puertos específicos, no sirve llenar la memoria con el gráfico como en el resto de ordenadores: hay que alimentar al chip de video.

Al final me he currado la pantalla en Photoshop y luego la he importado y creado el SCR. Entre una cosa y otra al final se me han ido 4 horas.

nros.png
nros.png (8.57 KiB) Visto 4 veces

BlackHole
Mensajes: 664
Registrado: 03 Ago 2011 23:07
Agradecimiento recibido: 28 veces

Re: Busco imagen con atributos numerados

Mensajepor BlackHole » 13 Sep 2017 02:52

Bien. Esta es la nueva captura del emulador openMSX sustituyendo en la carga la imagen nueva comprimida, con el mismo algoritmo de reordenación de la imagen. Si los datos hubiesen estado mal comprimidos, aparte de que lo más lógico es que se hubiese colgado al descomprimir, el resultado no mostraría los números tan colocados, que es lo que quería demostrar. La memoria VRAM entre 0000 y 17FF define el bitmap (como en Spectrum entre 4000 y 57FF) y el bitmap parece correcto, pero resulta que entre 1800 y 1AFF hay que mapear qué "tiles" queremos que aparezcan en pantalla, porque la memoria de vídeo se basa primordialmente en caracteres redefinidos (en esto MSX se parece a otras videoconsolas de 8 bits).

captura2.png
captura2.png (17.35 KiB) Visto 18 veces
Sin embargo, vemos claramente que no muestra el orden esperado [11][12][13][14]... sino un que parecen ordenadas aleatoriamente, algo que yo no he programado, aparte de que aparecen como restos de sprites (en azul y blanco) que yo tampoco he definido. Aquí parece que es donde me estoy encontrando el problema. Supuestamente el manual dice que si yo cambio al el modo gráfico SCREEN 2 con la rutina de la BIOS INIGRP (0x0072) estos valores tendrían que inicializarse correctamente, pero por lo que veo, toman valores aleatorios. O debo pokear a mano los valores por mi cuenta, o el manual me está engañando. ¿Algún programador de MSX/Colecovision en la sala? Voy a hacer más pruebas...

Avatar de Usuario
elfoscuro
Mensajes: 1258
Registrado: 01 Jun 2012 20:46
Agradecimiento recibido: 24 veces
Contactar:

Re: Busco imagen con atributos numerados

Mensajepor elfoscuro » 13 Sep 2017 08:25

Vale... es que yo de pantalla MSX ni papa, pero si que me parece recordar que hay varios modos de pantalla, y el de "modo pixel" existe también. Busca info por ahí, por si es el problema.

Por otro lado, si que me gustaría recordarte lo "peculiar" de la memoria de video del spectrum:

- La pantalla está dividida en tres bloques para los pixels, y una adicional para el color.
- Cada tercio de pantalla se dibuja poniendo scan por scan a pixel por cada caracter. Primero 32 bytes para la primera fila de pixels y así con todos los del tercio, luego 32 para la segunda fila... No es un bloque de 6144 bytes para toda la memoria seguida (tipo BMP, PNG... ), es mucho más rara. Imagino que en MSX será más tipo BMP, PNG, es decir, cada pixel en órden.
- Sin embargo, los atributos, que van por otro lado, si van en órden de la pantalla, empezando por 0,0 y acabando por 32,24. Los atributos van en "modo carácter" de 8x8 pixels.

Te quiero decir con esto que no vale con descomprimir tal cual, si no que hay que ir pegando saltos en la RAM como un loco. Esos saltos los pega el Spectrum solito, sin nada más, pero el MSX imagino que espera la información ordenada. De ahí el descontrol (imagino, claro, sin ver lo que hace tu código fuente, sólo puedo apostar ;-) ).

Un saludo.


Volver a “Software Spectrum”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado