antoniovillena escribió:Es estéreo, al menos eso veo en los esquemáticos que me enviaste (MOD-VGA Rev B)
Ah! Pues no me había dado cuenta (no miré el esquemático, sólo el conector). De todas formas, aunque sea estéreo yo no usaría uno de los canales como entrada EAR, ya que seguramente no estará protegido el pin de la FPGA al que se conecte, y meterle una señal analógica que puede tirar por debajo de 0V, o por encima de 3.3V... uffff.... malo para la FPGA. De hecho estoy haciendo pruebas con un circuito de histéresis que me he diseñado para ver qué tal funciona con la ULAplus (que es tela de sorda en su concepción original).
antoniovillena escribió:Edito: De todas formas para este clon lo más práctico es meterle un zócalo/conector SD que use los mismos puertos de la ZXMMC. Lo malo es que si no se consiguen emular los 128K (donde existe Residos/+2e adaptados a MMC) y nos quedamos con un 48K alguien se tendría que currar el firmware.
ResiDOS funciona con 48K, pero creo que es más "asequible" echar a andar un +2A aquí.
El problema fundamental es que la FPGA no tiene memoria suficiente para albergar una ROM de 64KB (para la ROM de 16KB del Spectrum sí que da). El resto de la memoria que tiene es la SRAM o la SDRAM que le hayas soldado. En esa SRAM/SDRAM cabe de sobras la ROM de 64KB.
Así que la cosa es: ¿cómo meter la ROM en esa RAM en el encendido? Pues hay dos formas:
- Que la ROM esté guardada en la platform flash de la FPGA. Si hay 64KB libres en esa platform flash, se puede hacer que dicha flash aparezca como un periférico para el Spectrum. Una mini-ROM (que habría que escribir) se encargaría de leer la flash y volcarla a una zona de RAM que después (usando otros puertos) se mapearía en espacio de ROM y se protegería para que no pudiera ser alterada.
- Que la ROM se guarde en los primeros sectores de la tarjeta SD. En este caso, la mini-ROM leería esos sectores, y haría lo mismo que en el caso anterior.
La primera opción tiene como ventaja (en caso de que se pueda realizar) el que no necesitas implementar desde el primer momento la interfaz MMC, sino que tienes un sistema autosuficiente.
La segunda opción (mi preferida de las dos) tiene varias ventajas: puedes implementarla en cualquier caso (no necesitas que tu platform ROM tenga espacio de sobra), es independiente de tecnología (la platform ROM es propia de Xilinx), y permite al usuario poner sus propias ROM's que puede grabar en la tarjeta SD (que sólo requiere un programilla en Windows/Linux y un lector de tarjetas). Currándoselo un poquito, se puede hacer un selector de ROM's en el inicio (al estilo de lo que hace el ZX Badaloc) y que el usuario elija una, que estará en activo hasta que se apague el aparatito (48K, 128K, +2A, +2E, OpenSE, CargandoLeches, juegos de cartucho ROM, etc)