Para tener algo que mostrar en el meeting escribí este programita que muestra la intro estilo '80s de la serie Fringe.
El original es este:
Todo empezo convirtiendo un MIDI del tema de Fringe a SID, se me ocurrio primero mostrar algunas imagenes mientras tocaba la musica, luego encontre el programa CSAM v3, que convierte un video a modo texto usando codificación VQ (muy parecido a lo que hace el codec Cinepack) y luego podes grabar el stream resultante en bruto o con distintas formas de compresion. Aparte se graba lo que llama el 'codebook', que no es sino la definición d e caracteres hechos de forma que se adapten mejor al video original. (Un juego de caracteres solo tiene 256 caracteres individuales, pero por cada cuadro de video a pantalla completa hay 1000 distintas celdas que llenar, no es una tarea sencilla) Así es que, usando el video bajado de YouTube, lo baje a 6fps y a 240x150px (Por cuestiones de espacio de memoria , no por limites de velocidad) y lo pase por el CSAM grabando el resultado sin comprimir (ninguno de los metodos de compresion coincidian con la explicación que da en el manual (o yo no pude deducirlo)). Eso lo pasé por un compreslor RLE packbit, lo que redujo los 126 cuadros de ocupar 126000bytes a solo 30Kbytes.
Y luego fue ponerse con el assembler, hacer un descompresor RLE (que increiblemente funcionó a la primera), una manera de controlar los fps y listo! De esta manera sencilla y sin pantalla de presentación fue que mostré el programita en la reunión, ahora en estos días que pasaron le puse la pantalla inicial, que tarde más que el resto porque me faltaba inspiración.. jaja
También hice otra versión en modo multicolor (siempre texto)
Aca dejo los programitas para los que quieran probarlo
Che, es medio off-topic esto... pero cual es la explicación técnica de que siempre en los loaders de demos o cracks de C64 salgan pantallas llenas de caracteres y cosas raras?
Por cierto, muy buena la conversión Woz! En el meeting de acá mostré algo parecido para Spectrum; pero usando el divIDE y solo para 128K, lo copado de esto es que anda en una maquinola estándar.
Son los decompresores que usan el area de pantalla como buffer. En el caso del compresor que use acá, solo muestra un caracter en la esquina para mostrar que esta descomprimiento, pero se puede cambiar por otro efecto o sacar completamente.
Gracias, esta la hice pensando en que entre toda en memoria. Usando algun turbo de disco se puede ir cargando y obtener mayor duración o mas cuadros por segundo.