Gracias WIlco2009, esa es la manera decente de hacerlowilco2009 escribió:Si no he entendido mal hay que cablear una señal internamente para que pueda detectar el modelo de Spectrum. Esto no lo acabo de ver porque limita la utilidad.
Qué te parece la siguiente idea, dejas que empiece a arrancar el Spectrum y monitorizas las escrituras a los puertos $1FFD y $7FFD.
Si detectas escrituras a los puertos $1FFD y $7FFD es que es un modelo de Amstrad (+2A/+2B/+3)
Si detectas escrituras al puerto $7FFD pero no al $1FFD es un 128Kb gris.
Si ni una, ni otra es un modelo anterior.
Luego, una vez detectado, haces un reset y activas las pistas de inhabilitación que sean necesarias.
![Sonrisa :)](./images/smilies/sc_jsmiley.gif)
Por otro lado, entiendo que las escrituras a los puertos las hace la ROM del spectrum en cuestión, y en ausencia/modificación o fallo de rom, la detección no funcionaría, ¿no?
Me interesa lo que dices de limitar la utilidad, es algo que ni se me había ocurrido. ¿Me pones algún ejemplo?. Gracias!
(voy a mirar el HW extra que requiere mirar lo de los puertos para hacerlo, a lo mejor, de las dos formas. Descodificación parcial, supongo, ¿no?)