Buenas
Pues nada, os comento mis progresos:
- Tras pelearme un poco con la pantalla, he metido un par de modos nuevos: --scanlines y --average.
Estos modos lo que hacen es tener en cuenta que, en una pantalla PAL, los frames se dibujan en dos pasadas. (Líneas impares en un frame, líneas pares en el siguiente). Entonces, he cogido el bitmap que usaba para dibujar, lo he duplicado a lo alto, y he empezado a pintar exactamente así. El resultado es que desaparece el parpadeo en las demos que, como Mescaline Synesthesia, utilizan este entrelazado para sacar colores fuera de la paleta del Speccy.
La diferencia es que en --scanlines simplemente se hace el entrelazado, y en --average se promedian los colores de ambas pasadas. En ambos casos se ve sin parpadeo, pero imagino que en una tele de tubo se producía ese promediado de colores.
(Dadle un tiento: SpecIde --fullscreen --average --flashtap --plus2a mescaline_zx_plus2a_plus3.tap)
(O bien: SpecIde --fullscreen --average --flashtap --plus2 mescaline_zx_128_plus2.tap)
Yo personalmente uso el modo "normal" (sin --average ni --scanlines) para juegos, y los otros para demos. Además, como en el modo "normal" uso el tamaño original de bitmap, el modo de pantalla completa se ajusta mejor a la resolución de pantalla.
- He metido una opción de ayuda de línea de comando: SpecIde --help (o bien SpecIde -h). Ya tocaba.
En próximas actualizaciones espero tener más avanzada la emulación del FDC765, y poder decir que emulo también el +3, y luego no sé si meterme a hacer una emulación basada en ciclos de máquina en vez de en ciclos de reloj (que consumirá mucha menos CPU), o si meterme a emular los Spectrums rusos.
Binarios para Windows:
https://drive.google.com/open?id=1C5zRc ... SGP1Zs-3NC
Fuentes:
https://github.com/MartianGirl/SpecIde
Espero que os guste.
Marta.