Cacharreando con el prototipo 2 del ZX-Uno

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 7 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor antoniovillena » 11 Feb 2015, 21:04

Enhorabuena celestinox y garvidal. De celestinox no me esperaba menos, después de crearse su propio clon siguiendo los esquemas. En cuanto a garvidal, para ser tu tercera placa y atreverte con el ZX-Uno hay que tener un buen par. Bueno, al final todo ha ido bien y no te creas, yo también las pasé canutas con el primer prototipo y no era precisamente mi tercera placa (sí era la primera todo SMD) y en algún momento la dí por perdida.

Avatar de Usuario
garvidal
Spectrum 48K Plus
Spectrum 48K Plus
Mensajes: 34
Registrado: 15 Oct 2014, 21:15
Sistema Favorito: Amstrad CPC
primer_sistema: PC
consola_favorita: NeoGeo
Primera consola: Nintendo DS/3DS
Gracias dadas: 4 veces
Gracias recibidas: 2 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor garvidal » 11 Feb 2015, 21:19

antoniovillena escribió:Enhorabuena celestinox y garvidal. De celestinox no me esperaba menos, después de crearse su propio clon siguiendo los esquemas. En cuanto a garvidal, para ser tu tercera placa y atreverte con el ZX-Uno hay que tener un buen par. Bueno, al final todo ha ido bien y no te creas, yo también las pasé canutas con el primer prototipo y no era precisamente mi tercera placa (sí era la primera todo SMD) y en algún momento la dí por perdida.


Antonio, muchas gracias. Es una pasada de proyecto, merece la pena intentarlo sólo por ver como salir adelante y por aprender con cada fallo. Aunque hubiera tenido que dejar la placa como pisapapeles lo habría intentado, creo que está realmente bien.

Por cierto, el teclado que utilizo es un teclado USB, con un adaptador a ps2 y me funciona perfectamente. Es cierto que es el único que he encontrado que me funcionaba con el adaptador de ps2 para spectrum que se hizo hace nada en va-de-retro, quizá el que sea compatible con usb-1 y 2 sea la característica, no lo se, otros teclados usb no me funcionan. Y es de los chinos, tiene narices...

Bueno, pues ahora comenzaré a hacer pruebas, ya os iré contando mis avances.
---------------------------------------------------
http://www.garvidal.com
http://www.dicemarket.es

Avatar de Usuario
Quest
Atari 1040 STf
Atari 1040 STf
Mensajes: 900
Registrado: 18 Jul 2013, 22:20
Sistema Favorito: Commodore Amiga
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo SNES
Primera consola: Nintendo NES/Clónica
Gracias dadas: 9 veces
Gracias recibidas: 15 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor Quest » 11 Feb 2015, 21:51

Adaptador Teclado real Spectrum de matriz 8x5 -> PS/2 del ZX-UNO

Estaréis pensando "este tio está zumbao" :D

...porque parece tener poco sentido, ¿para qué usar un teclado real de spectrum conectado al puerto ps/2 del ZX-UNO, que ya de por sí convierte de ps/2 a matriz de teclado de spectrum internamente? Además, sería bastante sencillo usar los pines de expansión del ZX-UNO para conectarle directamente un teclado real...

Pues la cuestión es que haciendo pruebas con un Atmel (con el que estoy aprendiendo :-ss ) escribí un código sencillo para enviar "datos" ps/2, y pensé que podría demás conectarlo a un teclado de matriz como el del spectrum a ver qué tal. Tras unos cuantos días, ya lo tengo funcionando.

Después pensándolo, veo que al menos a mí, me será de utilidad, ya que el futuro ZX-UNO final que salga a la venta, me gustaría tenerlo dentro de la carcasa de un spectrum, y dado que también querré tener el futuro puerto de expansión Edge para el ZX-UNO, no van a quedar pines para conectarle un teclado real. Así podré tener dentro de una carcasa de spectrum, funcionando con el teclado del spectrum y con conector edge, el ZX-UNO :)

Seguramente os parecerá una tontería, pero bueno, me apetecía comentarlo, ya que es mi primer "desarrollo" para un microcontrolador de estos :mrgreen:
Tiene aún bastantes carencias, como ausencia de control de repetición (lo he fijado a unos 200ms), etc. Pero al menos he implementado las combinaciones de teclas especiales del ZX-UNO, como el NMI (symbol+shift+break) o el RESET completo del ZX-UNO (symbol+shift+9).

Si por casualidad alguien tuviera interés en esto, puedo hacer unos dibujos del conexionado y subir el .hex o incluso el código fuente (que está chapucero, lo se, pero estoy empezando) para el que quiera usarlo a su antojo. Se puede portar fácilmente a varios microcontroladores de la serie Atmega o ATUSB90 que tengan los pines suficientes para conectar los 13 contactos del teclado, para ello he puesto #defines en los pines y puertos a usar para la matriz (facilmente editables). Está hecho para AVR Libc / avr-gcc

Unas fotillos de la primera versión funcional sobre una plaquita Atmega328p (una especie de clon de un arduino mini):


Imagen

Imagen

Imagen

Imagen

Avatar de Usuario
celestinox
Commodore 128
Commodore 128
Mensajes: 92
Registrado: 07 Dic 2012, 17:04
Sistema Favorito: Commodore Amiga
primer_sistema: Spectrum 16Kb/48Kb
Primera consola: Sony PlayStation 2
Gracias recibidas: 3 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor celestinox » 11 Feb 2015, 22:01

Mejias3D escribió:Felicidades crack!

Por cierto, me gusta tu caja :mrgreen:

Bien sabes que es la tuya, me sale mal, se me rompe (tengo problemas con el ABS), ahora mismo estoy impriendo en PLA.
Una pregunta, el kit lo he montado como viene con las tiras de pines hembra destinada a bus de expansión, pero esto no casa con tu diseño que parece mas orientado a pines machos acodados, ¿podrías modificar tu diseño para dejar ciega la ventana de la caja destinada a esto. ?

Si no, envíame un archivo modificable y lo edito yo, Gracias.

Un saludo.

-- Actualizado 11 Feb 2015, 23:09 --

antoniovillena escribió:Enhorabuena celestinox y garvidal. De celestinox no me esperaba menos, después de crearse su propio clon siguiendo los esquemas. En cuanto a garvidal, para ser tu tercera placa y atreverte con el ZX-Uno hay que tener un buen par. Bueno, al final todo ha ido bien y no te creas, yo también las pasé canutas con el primer prototipo y no era precisamente mi tercera placa (sí era la primera todo SMD) y en algún momento la dí por perdida.


Gracias.
Tras la experiencia del montaje, se me ocurren 2 sugerencias para una revisión del pcb.

1. Cambiar los condensadores 0603 (puñeteros) por 0805, mas fáciles de soldar.
2. Cambiar el zócalo SD por uno micro SD como el de mi clon. Esto daría espacio suficiente para enrutar los condensadores anteriores, y puede que para algo mas.

Recomendación a aquellos que aún no han montado el zxuno, aunque ya se ha comentado, lo recuerdo por que a mi me ha ido muy bien, soldar la FPGA con flux (yo lo he usado liquido con pincel) y sin añadir ningún tipo de estaño, el que trae depositado el pcb en los pads es suficiente; no he tenido necesidad de repasar las soldaduras.

Un saludo

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: 51 veces
Contactar:

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor mcleod_ideafix » 11 Feb 2015, 23:17

garvidal escribió:Por cierto, el teclado que utilizo es un teclado USB, con un adaptador a ps2 y me funciona perfectamente. Es cierto que es el único que he encontrado que me funcionaba con el adaptador de ps2 para spectrum que se hizo hace nada en va-de-retro

Pues será porque es de los pocos que por defecto se comporta como un teclado PS/2 en lugar de comportarse como un teclado USB. De todas formas, estoy trabajando para cambiar todo el core de teclado y que el nuevo soporte todo tipo de teclados duales PS/2 - USB. Lo normal es que un teclado USB, aunque sea dual, no te vaya en el ZX-Uno tal y como está ahora.

-- Actualizado 11 Feb 2015, 23:23 --

Quest escribió:dado que también querré tener el futuro puerto de expansión Edge para el ZX-UNO, no van a quedar pines para conectarle un teclado real

Sí, si implementas tu teclado como si fuera un teclado externo para el Spectrum y no un teclado externo para ZX-Uno (obsérverse el matiz)

Quest escribió:Tiene aún bastantes carencias, como ausencia de control de repetición (lo he fijado a unos 200ms), etc. Pero al menos he implementado las combinaciones de teclas especiales del ZX-UNO, como el NMI (symbol+shift+break) o el RESET completo del ZX-UNO (symbol+shift+9).

Y... ¿cómo haces para pulsar el paréntesis que se cierra? :O

Aunque hay muchas combinaciones, yo, por sugerir, te sugeriría:
NMI: CAPS + 1 + 5
RESET normal: CAPS + SPACE + 1
RESET maestro: CAPS + SPACE + 2

Creo que son combinaciones que no producen ghosting, y que no se usan en el común de los programas de Spectrum.

-- Actualizado 11 Feb 2015, 23:25 --

Quest escribió:Si por casualidad alguien tuviera interés en esto, puedo hacer unos dibujos del conexionado y subir el .hex o incluso el código fuente (que está chapucero, lo se, pero estoy empezando) para el que quiera usarlo a su antojo. Se puede portar fácilmente a varios microcontroladores de la serie Atmega o ATUSB90 que tengan los pines suficientes para conectar los 13 contactos del teclado, para ello he puesto #defines en los pines y puertos a usar para la matriz (facilmente editables). Está hecho para AVR Libc / avr-gcc

Si te doy acceso de escritura, ¿lo subirías al repositorio? :)
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
Mejias3D
Commodore 128
Commodore 128
Mensajes: 97
Registrado: 07 Dic 2014, 20:05
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Videopac
Primera consola: Videopac
Ubicación: Palma de Mallorca
Contactar:

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor Mejias3D » 11 Feb 2015, 23:47

Quest escribió:Adaptador Teclado real Spectrum de matriz 8x5 -> PS/2 del ZX-UNO

[...]

...a mí, me será de utilidad, ya que el futuro ZX-UNO final que salga a la venta, me gustaría tenerlo dentro de la carcasa de un Spectrum, [...] Así podré tener dentro de una carcasa de Spectrum, funcionando con el teclado del Spectrum y con conector edge, el ZX-UNO :)

[...]

Si por casualidad alguien tuviera interés en esto, puedo hacer unos dibujos del conexionado y subir el .hex o incluso el código fuente


Te felicito, eres un fenómeno!

Desde el primer día que me enteré de la existencia de este proyecto, tenía (y tengo) decidido meter el ZX-Uno dentro de una carcasa Spectrum 48K. Todo lo que dices tiene mucho sentido y coincido en tu opinión plenamente.

Cuando acabe con la carcasa tamaño Raspberry Pi, que llamo "Spectrum Style", le seguirá una nueva carcasa impresa, lo más fiel posible a un Spectrum 48K y a escala 1:1, de esa forma no sacrifico ninguno de los Spectrums que tengo. De hecho hace días que tenía ya listo mi primer boceto, que de momento consiste tan solo en una idea aproximada de lo que será y que incluye solamente unas etiquetas de texto con los lugares reservados para cada conector actual y los futuros add-ons que vendrán. Más adelante diseñaré cada conector y lo situaré en la posición indicada. Los componentes justamente los pedí ayer mismo en Ebay. Me toca esperar 30 días como es costumbre.

Tendrá, entre otros, pulsador de Reset Z80 y 2 conectores de Joystick en el lateral izquierdo, como podemos encontrar en los Spectrum +2 y +3, así como conector PS2 para teclado externo y 4 puertos USB en el lateral derecho. Tal vez solo lleguen a usarse 3, pero ahí estará un 4º.

El botón NMI estará disponible en la parte posterior y también he reservado sitio para un conector RJ45, con vistas a que sea utilizado el día que alguien con conocimientos suficientes y tiempo quiera implementar el Spectranet en Zx-Uno.

El teclado será un teclado de goma original de los usados en Spectrum, pues dispongo de uno huérfano que espera madre ( placa madre ;) ) y que adaptaré al ZX-Uno usando la electrónica de un teclado PS2 y 40 microswitches SMD de perfil bajo. El Reset Maestro se podrá activar mediante la pulsación del Reset Z80 más la pulsación simultanea de una tecla del teclado estandar "gomas" y que está aún por decidir cual será.

Como podéis ver tendrá zumbador interno desconectable y tapa inferior de registro que dará acceso al conector JTAG del ZX-Uno, para que resulte fácil conectar el cable programador en casos puntuales de necesidad o por "brickeos" varios.

Otro detalle es que tendrá un conector de alimentación tipo Power Jack, el mismo que utiliza Spectrum 48K (con patillaje inverso) para que sea posible utilizar la fuente original de Spectrum. Los diferentes voltajes que se necesitan, para la propia PCB y el puerto de expansión, se generarán en un circuito regulador pensado para ello, que estará dentro de la carcasa.

Estas son 3 imágenes del modelo 3D, que muestran mi estudio de la ubicación. Está diseñado, como digo, pensando en las medidas de la carcasa del Spectrum 48K y con espacios de medidas reales ya reservados, por lo que todo lo indicado resulta viable en una carcasa de ese tamaño.

Imagen
Imagen
Imagen
Última edición por Mejias3D el 12 Feb 2015, 00:31, editado 3 veces en total.
El mundo cambia con tu ejemplo no con tu opinión (Paulo Coelho)
El premio es el placer de descubrir (Richard Feynman)

Avatar de Usuario
Haplo
MSX Turbo R
MSX Turbo R
Mensajes: 278
Registrado: 14 Abr 2014, 22:24
Sistema Favorito: PC
primer_sistema: Spectrum +2
consola_favorita: Sony PlayStation 1
Primera consola: Nintendo NES/Clónica
Ubicación: Ciudad Real
Gracias dadas: 33 veces
Gracias recibidas: 5 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor Haplo » 11 Feb 2015, 23:52

Enhorabuena a los nuevos papás! =D> =D> =D>

Avatar de Usuario
celestinox
Commodore 128
Commodore 128
Mensajes: 92
Registrado: 07 Dic 2012, 17:04
Sistema Favorito: Commodore Amiga
primer_sistema: Spectrum 16Kb/48Kb
Primera consola: Sony PlayStation 2
Gracias recibidas: 3 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor celestinox » 11 Feb 2015, 23:55

mcleod_ideafix escribió:
celestinox escribió:Lo de intercalar 256 bytes a cada scr es otro tema, me parece que el enlace que me pasaste de las utils Unix esta caido cuando selecciono descargar.

Un saludo.


Google es tu amigo:
http://sourceforge.net/projects/unxutils/

Hola de nuevo.

Al final, conseguí hacer algunos videos en formato zxm, tanto en BN como en color. La verdad es que tuve problemas para ejecutar las unxutils, ya que tengo windows 7 x64 y no me corre. Sin embargo bajo una máquina virtual con windows XP x86 si me funcionó. Pero como me resultaba incomodo y lento, me decidí a crear una archivo bat que podeis ejecutar bajo cualquier windows. En fichero adjunto están los 2 bats según sea para BN o color, y los 2 archivos de cabecera para cada tipo, así como uno 256 bytes de relleno para las pantallas a color. Solo teneís que editar los .bat para adaptarlos a los nombre de vuestros *.scr. Con esto espero que la gente se anime a crear videos.

Un saludo.
Adjuntos
ficheros para crear videos teniendo scrs.rar
(704 Bytes) Descargado 100 veces

Avatar de Usuario
Mejias3D
Commodore 128
Commodore 128
Mensajes: 97
Registrado: 07 Dic 2014, 20:05
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Videopac
Primera consola: Videopac
Ubicación: Palma de Mallorca
Contactar:

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor Mejias3D » 12 Feb 2015, 00:26

celestinox escribió:Una pregunta, el kit lo he montado como viene con las tiras de pines hembra destinada a bus de expansión, pero esto no casa con tu diseño que parece mas orientado a pines machos acodados, ¿podrías modificar tu diseño para dejar ciega la ventana de la caja destinada a esto?

Efectivamente así es.

Esta carcasa está orientada con esa idea, pensada para admitir la salida por la cara posterior de unos pines machos acodados. No está aún publicado por falta de tiempo, en unos días lo estará y avisaré de ello.

celestinox escribió:Si no, envíame un archivo modificable y lo edito yo, Gracias.

Lo tienes publicado en Thingiverse desde el 31 de enero aquí http://www.thingiverse.com/thing:594804/#files puedes utilizar cualquiera de los formatos disponibles para editarlo, pero el original es el que tiene la extensión SKP (SketchUp)
El mundo cambia con tu ejemplo no con tu opinión (Paulo Coelho)
El premio es el placer de descubrir (Richard Feynman)

Avatar de Usuario
Quest
Atari 1040 STf
Atari 1040 STf
Mensajes: 900
Registrado: 18 Jul 2013, 22:20
Sistema Favorito: Commodore Amiga
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo SNES
Primera consola: Nintendo NES/Clónica
Gracias dadas: 9 veces
Gracias recibidas: 15 veces

Re: Cacharreando con el prototipo 2 del ZX-Uno

Mensajepor Quest » 12 Feb 2015, 00:50

mcleod_ideafix escribió:Sí, si implementas tu teclado como si fuera un teclado externo para el Spectrum y no un teclado externo para ZX-Uno (obsérverse el matiz)


Je je... si, cierto. Suena incluso paradójico.. "teclado interno de spectrum para teclado externo de spectrum" :D :D
No obstante al hacerlo así compartiría señales con otros periféricos que conectaras al edge (no es que sea un prolema realmente, pero sería más seguro tenerlo aparte).

mcleod_ideafix escribió:
Quest escribió:Tiene aún bastantes carencias, como ausencia de control de repetición (lo he fijado a unos 200ms), etc. Pero al menos he implementado las combinaciones de teclas especiales del ZX-UNO, como el NMI (symbol+shift+break) o el RESET completo del ZX-UNO (symbol+shift+9).

Y... ¿cómo haces para pulsar el paréntesis que se cierra? :O


:?: :?: El paréntesis que se cierra se hace con symbol+9. Mi combinación es symbol+shift+9 (shift = caps, quizá estuvo ahí el equívoco?)
Además la comprobación de la pulsación simultánea de casos especiales como los de reset, nmi, etc los hago antes de hacer el recorrido de filas/columnas normal. Es decir, que tienen preferencia sobre otras combinaciones/ teclas.

mcleod_ideafix escribió:Aunque hay muchas combinaciones, yo, por sugerir, te sugeriría:
NMI: CAPS + 1 + 5
RESET normal: CAPS + SPACE + 1
RESET maestro: CAPS + SPACE + 2

Creo que son combinaciones que no producen ghosting, y que no se usan en el común de los programas de Spectrum.


Hmm, no. Ya hice pruebas con varias combinaciones. Las que comentas, por ejemplo, en tu propuesta de NMI el CAPS, SPACE y el 1 comparten columna, por tanto no es viable para una combinación de 3 (ya probé y no hubo manera), lo mismo para la segunda combinación. La tercera sería viable, y el SPACE comparte pulsación en el plus con el BREAK, así que bien. Es más cómodo usar break en un teclado de plus que space, y en el gomas es cómodo igualmente.He tratado de que fuera cómodo en ambos teclados. De hecho como el de plus usa la miisma configuración de 5x8 pero en 4 capas, si haces por ejemplo EXTENDED+9 también se genera reset maestro (dado que extended se consigue con caps+symbol) :D (hablamos siempre de pulsación simultánea).

mcleod_ideafix escribió:Si te doy acceso de escritura, ¿lo subirías al repositorio? :)

Ok, sin problema. De paso cuando tenga listo el listado completo de roms con su checksum, el generamcs y aa000.asm que me pidió Antonio, aprovecharía para subirlo también.

Mejias3D escribió:Desde el primer día que me enteré de la existencia de este proyecto, tenía (y tengo) decidido meter el ZX-Uno dentro de una carcasa Spectrum 48K. Todo lo que dices tiene mucho sentido y coincido en tu opinión plenamente.
[...]


De hecho todo lo que has comentado sobre la carcasa se me había pasado por la cabeza, sobre todo por un detalle: cuando se diseñen los add-ons (como la plaquita del edge, la del spectranet Lite, VGAs definitiva, etc, lo más importante es diseñarlas con tamaño, fortma y mecanizado de agujeros tal que sea posible anclarlas a una carcasa de forma organizada, que quepan correctamente y que se puedan fijar o atornillar a la misma en las posiciones exactas para que por ejemplo la conexión de una interfaz externa sea perfecta sin que choque o haya uqe hacer inventos raros para conectarla.

celestinox escribió:Al final, conseguí hacer algunos videos en formato zxm, tanto en BN como en color. La verdad es que tuve problemas para ejecutar las unxutils, ya que tengo windows 7 x64 y no me corre. Sin embargo bajo una máquina virtual con windows XP x86 si me funcionó. Pero como me resultaba incomodo y lento, me decidí a crear una archivo bat que podeis ejecutar bajo cualquier windows. En fichero adjunto están los 2 bats según sea para BN o color, y los 2 archivos de cabecera para cada tipo, así como uno 256 bytes de relleno para las pantallas a color. Solo teneís que editar los .bat para adaptarlos a los nombre de vuestros *.scr. Con esto espero que la gente se anime a crear videos.


Muchas gracias :D me voy a animar a hacer algunos vídeos.


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

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