Re: Proyecto Churrero: AVORCHA - Pentacorn Quest
Publicado: Mié, 07 May 2014, 13:56
Eso es diferente... Lo que hace ese emu es tener una especie de memoria rara "paralela" en la que cada bit es en realidad un byte. Lo que hace es que cuando la CPU manda copiar un byte de memoria de RAM a la pantalla, en realidad es copiar 8 bytes de la memoria especial... De ese modo, lo que antes era un pixel on/off (1 bit) es ahora un pixel de 256 colores.
Es como si fuera un spectrum con un mapa de memoria de 64x8 = 512 kbytes aparte de los 64Kb básicos, donde están los bits de la memoria principal "expandidos", y una ULA especial muy rara que mantiene sincronizada la memoria "normal" (de bits) con la memoria rara "Paralela" (de "bits de 8 bits"). Un show irrealizable en hardware, vaya.
Los juegos hay que adaptarlos a mano. Hay que buscar donde están los bits de los gráficos en la RAM y darles a cada uno un valor de color. No en todos los juegos es posible, suele funcionar sobre todo con los monocromos.
No es algo que pueda hacerse de modo automático con un juego normal para eliminar el colour clash. Ya te digo que para mover cosas en la pantalla solo hay que escribir bytes en la parte de la RAM que la representa. La ULA es la que interpreta esa RAM en forma de imagen. El emulador sólo ve bytes que se escriben en RAM. De un byte puede haber parte de sprite y parte del fondo que había antes... ¿Cómo saber qué parte es sprite y qué parte es fondo?
Es como si fuera un spectrum con un mapa de memoria de 64x8 = 512 kbytes aparte de los 64Kb básicos, donde están los bits de la memoria principal "expandidos", y una ULA especial muy rara que mantiene sincronizada la memoria "normal" (de bits) con la memoria rara "Paralela" (de "bits de 8 bits"). Un show irrealizable en hardware, vaya.
Los juegos hay que adaptarlos a mano. Hay que buscar donde están los bits de los gráficos en la RAM y darles a cada uno un valor de color. No en todos los juegos es posible, suele funcionar sobre todo con los monocromos.
No es algo que pueda hacerse de modo automático con un juego normal para eliminar el colour clash. Ya te digo que para mover cosas en la pantalla solo hay que escribir bytes en la parte de la RAM que la representa. La ULA es la que interpreta esa RAM en forma de imagen. El emulador sólo ve bytes que se escriben en RAM. De un byte puede haber parte de sprite y parte del fondo que había antes... ¿Cómo saber qué parte es sprite y qué parte es fondo?