Gameduino (o como meter un ZX Spectrum con ULAplus en...)

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor Hark0 » 27 Nov 2012, 10:02

mcleod_ideafix escribió:
Hark0 escribió:Me "socurre" una pregunta viendo las fotos de la primera página del hilo:

¿se pueden añadir DOS jack para MIC/EAR?

Si no voy mal de la vista, en las fotos se aprecia uno....


Sí. Iba a mirar si es estéreo, pero parece que es monoaural. Nada impide que se use ese jack para salida de audio, por ejemplo, y se emplee aparte un pin de la FPGA (convenientemente protegido) como entrada EAR.



Olé!!!!

=D>
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor antoniovillena » 27 Nov 2012, 10:47

mcleod_ideafix escribió:
Hark0 escribió:Me "socurre" una pregunta viendo las fotos de la primera página del hilo:

¿se pueden añadir DOS jack para MIC/EAR?

Si no voy mal de la vista, en las fotos se aprecia uno....


Sí. Iba a mirar si es estéreo, pero parece que es monoaural. Nada impide que se use ese jack para salida de audio, por ejemplo, y se emplee aparte un pin de la FPGA (convenientemente protegido) como entrada EAR.


Es estéreo, al menos eso veo en los esquemáticos que me enviaste (MOD-VGA Rev B)

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.

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 53 veces
Contactar:

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor mcleod_ideafix » 27 Nov 2012, 11:52

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)
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor antoniovillena » 27 Nov 2012, 13:05

Cuenta conmigo para todo lo que sea firmware. Yo también me decantaría por la segunda opción. Antes del menú yo me iría por algo más básico, como leer los 64K de un archivo de la SD. El problema es que sólo con 16K de ROM no podemos cargar nada con este clon que no sean cintas. Tengo hecho un programa que carga el primer sector de un archivo dado (el cual busca en el directorio raíz) en una tarjeta SD formateada en FAT32 mediante el interfaz ZXMMC. Sería cuestión de adaptarlo para que lea el archivo entero y emplee los métodos de paginación necesarios para guardarlo en la ROM del clon (que iría en RAM).

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 53 veces
Contactar:

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor mcleod_ideafix » 27 Nov 2012, 14:11

antoniovillena escribió:Cuenta conmigo para todo lo que sea firmware.

Gracias, pero.... errr..... no recuerdo haber dicho en ningún momento que esté soportando o ayudando en este proyecto (que es de Don Superfo). Tengo comprada la plaquita, y algún día me pondré a hacer cosas con ella, pero antes tengo que terminar la ULAplus y alguna cosilla más. Quizás para el verano que viene haga algo con ella, y en tal caso, publicaré los resultados para los que también la teneis, podais hacer lo mismo :)
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor antoniovillena » 27 Nov 2012, 14:47

Pues sí que se te acumula el trabajo :P

Para cuando sea, cuenta conmigo en el bootloader SD->RAM.

Avatar de Usuario
mike_01
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 142
Registrado: 08 Dic 2012, 00:58
Sistema Favorito: VIC20
primer_sistema: VIC20
consola_favorita: NeoGeo
Primera consola: (Otro)
Ubicación: Valencia

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor mike_01 » 08 Dic 2012, 14:28

Hola,

no sé si habéis visto este diseño basado en Gameduino, pero utilizando una LaunchPad como soporte. Es alucinante lo de tener dos conectores NES para utilizar los gamepad.
http://bear24rw.blogspot.com.es/

Lástima que el autor no se ha animado a comercializarlo (al menos, por el momento).

Por cierto, hablando del Gameduino, o de su clon MOD-VGA, ¿alguien puede comentar experiencias con esta placa? Tenía intención de comprarme el clon para utilizarlo con mi Arduino Uno, pero me gustaría saber que tal funciona o si alguien lo ha probado.

Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor mentalthink » 08 Dic 2012, 16:00

Hola Comentar que creo que he dado una opinion erronea sobre el Clon del gameDuino el MOD-Vga, el hecho es que funciona sin problemas, lo que pasa que en el ArduinoMega hay que puentear 3 patillas, está my bien.. Aquí hay pixel tocho también :mrgreen:

Supongo que para hacer un ordenador , creo que en condiciones con colores y la mandanga debe ir muy bien... Una cosa buena que trae respecto al gamuduino original es que tiene entrada de teclado y salida de audio...

PS: Perdón por haber creado la confusión.

Avatar de Usuario
mike_01
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 142
Registrado: 08 Dic 2012, 00:58
Sistema Favorito: VIC20
primer_sistema: VIC20
consola_favorita: NeoGeo
Primera consola: (Otro)
Ubicación: Valencia

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor mike_01 » 08 Dic 2012, 16:58

Para poder reprogramar la FPGA de la Gameduino (o la del MOD-VGA), ¿sólo es posible mediante un programador JTAG, o también se puede realizar cargando una nueva imagen desde el propio Arduino, es decir, mediante el interfaz SPI?

Según comenta el autor del Gameduino parece que es posible mediante ambos métodos,
http://answers.gameduino.com/question/22/is-the-fpga-reprogrammable

y de hecho, es el método que se utiliza para actualizar el propio Gameduino.
http://excamera.com/sphinx/gameduino/samples/update/index.html

Pero lo que no me queda claro es cómo se puede obtener esta imagen, a partir del código fuente Verilog.

jepalza

Re: Gameduino (o como meter un ZX Spectrum con ULAplus en...

Mensajepor jepalza » 17 Dic 2012, 07:23

mike_01 escribió:Pero lo que no me queda claro es cómo se puede obtener esta imagen, a partir del código fuente Verilog.


Mas vale tarde que nunca. Quedó escondida la pregunta, que ninguno de los (digamos) entendidos hemos visto. Ya puedes perdonarnos.

Para pasar Verilog a fichero binario compilado (mas bien, lo llamaríamos "sintetizado", del tipo .BIT o .MCS) se requiere el ISE-WEB de Xilinx. Se necesita registro y una licencia, que te la regalan ellos en modo básico, suficiente para jugar. Pero si no tienes conocimientos sobre programación, olvídalo (y pega la vuelta, que dirían Pimpinela). Es MUY complicado de usar e instalar. El módulo básico requiere la friolera de ¡14 GIGABYTES! (y mas de 100.000 archivos) de instalación. Luego, jugando un poco una vez instalado, puedes borrar cosas que no usas, pero no es fácil bajarlo de 4Gb. Y todo para compilar una cosa que puede tener 600kbytes en tamaño final, una diferencia de 1:14000000

Hay alguna alternativa, de compilación mas simple, y libre, pero muy limitada, y "sosa", como el ICARUS. La probé y no me gusto, todo errores, y ademas, se emplea desde MS-DOS, a la vieja usanza.


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 17 invitados