$this->bbcode_second_pass_quote('radastan', 'E')s que mi idea es muy sencilla: un par de funciones para recoger y restaurar el fondo. Es decir, algo en plan:
get_background_x16 (x,y,puntero);
put_background_x16 (x,y,puntero);
Sólo tienes que definir un espacio de memoria para cada sprite que quieras mover, donde se almacenará el fondo, y usar esas dos funciones entre la que imprime el sprite. Tendré que hacer subversiones para cada tamaño, al igual que las rutinas de sprites, pero es que la librería va a ocupar una "mierda" en tamaño gracias a que es en ensamblador y no hay dependencias.
Pintando sprites de 16x16 en ensamblador
Moderador: na_th_an
Re: Pintando sprites de 16x16 en ensamblador
Esta era la idea inicial, por ejemplo, en Subacolib (la que lleva el Maritrini tipo Saimazoom), pero no funciona. Hacer todo el proceso de almacenado y restaurado de fondo desde el lenguaje "host" (C o Basic, me refiero) es mucho más costoso computacionalmente y apenas te da tiempo de gestionar un sprite antes de que se te acabe el tiempo de borde (que es el que tienes para que no haya parpadeos sin tener que hacer cosas raras). Por eso tuve que añadir el gestionado automático de sprites a la biblioteca, porque si no, no había forma de hacer un juego en condiciones.
Como diría Rorshach: "Urm..."