ZX-Uno prototipo 2: seguimos dándole caña

Sinclair QL, ZX81, +2, +3, 128K ...
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: 16 veces

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor Quest » 19 Jun 2015, 02:58

Tengo un problema serio, a ver si podéis ayudarme.

Recordáis que me cascó el puerto JTAG de la FPGA... y que le puse un zócalo DIP8 a mi zxuno para ponerle una SPI flash de ese encapsulado para poderla leer y grabar fácilmente con un programador externo. También recordaréis que desistí de usar la Flash que tenía por aquí en ese encapsulado (una 25F80) porque con los volcados de los cores nuevos no arrancaba pero sí con uno antiguo... y que entonces decidí usar la spi original (25Q80) con unos cablecillos a unos pines 4x2 por si necesitaba flashearla de urgencia con el programador...

Pues bien, hoy estaba haciendo unas pruebas con variaciones de la BIOS y en una de esas pruebas pues ha quedado raro y he decidido (como lo había hecho ya otras veces estos días) flashear con el programador externo un volcado funcional reciente, que tenía 100% comprobado. Pues bien, ahora no arranca.

He estado haciendo múltiples pruebas, y resulta que ahora a la SPI original del ZX-UNO le pasa exactamente lo mismo que a la DIP8 que le puse para probar. Si le grabo cualquier volcado moderno de los que tengo, no arranca (100% COMPROBADO que funcionaban esos volcados ayer mismo, en la misma SPI, con el mismo grabador). Sin embargo, un volcado antiguo si que arranca. No consigo entender por qué, y qué rayos está pasando, y necesito que me echéis un cable, porque ahora mismo estoy con un ZX-UNO inútil para pruebas (puesto que sólo va con un core viejo). No se si es que ha petado la SPI (pero si ha petado, por qué arranca un volcado antiguo?), o si ha petado aún más la FPGA, o qué narices.

Para intentar dar alguna pista, aqui pongo una imagen lado a lado de 2 volcados, el de la izquierda, funciona, y el de la derecha no. El de la izquierda siempre lo identifico como funcional porque en la segunda linea aparece algo asi como "Uf0" y en el de la derecha enseguida se que no funciona, cuando veo en esa misma linea algo como "Uf1".

Imagen

También adjunto ambos volcados aquí, para ver si se puede deducir algo. Llevo horas probando y no hay manera. Evidentemente algo roto hay, porque antes iba, y ahora no, con el mismo material.

Volcado actual, que ahora no va: https://dl.dropboxusercontent.com/u/299 ... oreT16.rar

Volcado antiguo, que es el único que va: https://dl.dropboxusercontent.com/u/299 ... ios227.rar

Gracias de antemano.

-- Actualizado 19 Jun 2015, 11:33 --

ACTUALIZO con nueva información:

Ya he averiguado por qué no arranca, pero no se realmente el motivo por el cual no lo hace (parece una contradicción, lo se :D). Mirando las diferencias entre archivos, he revisado bitfiles, y he visto que gererando un bitfile con ISE con Bus Width de 1 en vez de 4 para la SPI, y grabándolo en la flash, esta arranca perfectamente. En algún momento pasamos de usar uno a usar otro (supongo que al pasar de un tipo de SPI en el prototipo v1 a otro en el prototivo v2).

Por tanto deduzco que o bien mi SPI ha petado de tal modo que sólo funciona en ese modo (parece lo más probable), o bien lo mismo, pero con la FPGA, o bien hay algo en el circuito que haga "algo" para que no funcione, bien sea tema de ruido, pistas, soldaduras, etc.

Bueno, por lo menos generándome así los cores, podré seguir haciendo tests, que es de lo que se trata :)

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

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor antoniovillena » 19 Jun 2015, 12:55

La memoria SPI tiene 8 pines, de los cuales normalmente sólo se usa 1 para entrada y otro para salida. Este es el funcionamiento normal del protocolo SPI, el cual transfiere la información (de una forma parecida a RS232). Pero algún fabricante, aprovechando que hay pines sin usar o que se emplean en otras tareas pero se pueden multiplexar en el momento de la transferencia, se sacó de la manga un modo para transferir 4 bits a la vez (en un punto intermedio se inventó la transferencia de 2 bits).

Yo, aunque en el diseño haya ruteado los 4 pines a la FPGA, en la implentación SPI que ha creado McLeod el protocolo SPI funciona a 1 sólo bit. En principio no hay necesidad de mayor transferencia, ya que ese mismo SPI de 1 bit se puede reusar para el interface ZXMMC. Lo ruteé con la idea de que en un futuro se pudiese implementar una ROM al vuelo y así tener más SRAM disponible. Lo que se hace ahora es copiar de flash a SRAM (esto lo hace la BIOS) y "emular" la ROM del spectrum en SRAM. Con ROM al vuelo se podrían leer datos directamente de SPI Flash al Z80 sin usar la SRAM. De todas formas esta característica es demasiado compleja y probablemente nunca se implemente.

Lo que sí permite el rutear los 4 pines a la FPGA es la carga del bitstream de configuración a velocidad x4. Esto apenas se nota porque se produce al enchufar el ZX-Uno (no se produce en un master reset). No hay que implementar nada porque esto lo hace automáticamente la FPGA dependiendo de unos bits concretos de configuración del bitstream.

En resumen, que lo más probable es que o bien tengas roto internamente algunos de los otros 3 pines de la FPGA, o bien falle el contacto externo (SPI->FPGA) por una mala soldadura.

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: 16 veces

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor Quest » 19 Jun 2015, 13:20

Para los que tenéis algún teclado PS/2 que no os funcione con el ZX-UNO o uno USB híbrido con adaptador USB->PS/2 que no os funcione:

He modificado la BIOS para intentar "inicializar" estos teclados problemáticos y parece que funciona. Más abajo la adjunto, para ver si lo podéis probar y saber si funcionan. En mi caso, con esta modificación, mis 2 teclados problemáticos (un USB/PS/2 con adaptador y un PS/2 moderno) funcionan ahora perfectamente. (Imprescindible tener instalado el último core!!! Test16)

El tema es que yo de ensamblador "ni idea", y sólo he metido una ñapa en el código asm de la BIOS (que a saber si peta alguna otra cosa :mrgreen: ) para este fin. La idea es únicamente comprobar con este envío de datos al teclado, si son capaces de funcionar más modelos. La implementación correcta, ya la harán los gurús del proyecto :D

El único detalle a tener en cuenta es que para estos teclados problemáticos, la primera vez que enciendes el ZX-UNO (de la corriente) no puedes entrar a la BIOS, pero sí después de un master reset. Esto es debido a que estos teclados (al menos en el caso de los míos) tardan aproximadamente 1 segundo en autocheckearse antes de aceptar comandos del host, así que no admite nada antes de que cargue la ROM que tengamos seleccionada en el ZX-UNO. El comando se lo envío justo después de que desaparezca el mensaje "Press <Edit> to Setup <Break> Boot Menu", dado que enviarlo antes, no funciona por lo que ya he mencionado, estos teclados no admiten comandos antes de ese tiempo. Pero no hay problema, una vez arrancado, un master reset (ctrl+alt+backspace) y ya podemos entrar a BIOS o sacar el menú de ROMs.

Ah, a pesar de que las pruebas que he hecho han ido bien, por si acaso, los que no tenéis cable Xilinx, no actualicéis esta BIOS.

Aquí adjunto el .tap y .rom para el que lo quiera probar. Sería interesante que comentárais los resultados para ampliar la cantidad de teclados soportados en el futuro:
firmwareQ2.zip
(14.37 KiB) Descargado 231 veces


Importante insistir: Sólo funcionará si tenéis instalado el último core disponible en el SVN, el test16 ultimísimo que hay para descargar.

No he querido subir nada de esta BIOS modificada al SVN puesto que pienso que es una chapucilla, y como comentaba antes, ya se encargarán los que saben de hacerlo en condiciones.

antoniovillena escribió:En resumen, que lo más probable es que o bien tengas roto internamente algunos de los otros 3 pines de la FPGA, o bien falle el contacto externo (SPI->FPGA) por una mala soldadura.


Sí, seguramente algo así será, más será lo primero (FPGA), dado que están repasadas las soldaduras, pero bueno, de momento con el apaño que he comentado me va sirviendo. Muchas gracias por las explicaciones :)

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

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor celestinox » 20 Jun 2015, 10:32

antoniovillena escribió:
Superfo en su versión A+ usa un conector USB que es más bajo. Ojo, sería conector USB pero no funciona con teclados USB que no sean multinorma. A las malas también hay adaptadores a PS/2 pero queda feo, lo suyo es que tengas un teclado multinorma y enchufarlo directamente por el conector USB (aunque el protocolo que funcione sea PS/2).

Espero que uses la spartan 6 en tu próximo proyecto. Otra cosa que puedes hacer para miniaturizar, pero esto ya es nivel maestro es quitarle el chip de RAM. La FPGA tiene internamente 64 Kb de RAM, así que sólo te valdría para sintetizar un gomas. O también puedes escoger otro chip más tocho que el LX9 (por ejemplo el LX45 tiene 232Kb) y tener así cualquier modelo de spectrum. Nivel maestro supremo sería emplear un chip BGA, el LX9 de este tamaño ocupa 8x8mm, pero esto implica meterle mínimo 4 capas (no sé si te quedas corto con 4).


No me meteré a diseñar nada en BGA, como mucho, veré la posibilidad de usar otro chip RAM con un encapsulado mas pequeño quizás en TSOP. No sé si habrá alguna memoria un poco mas barata que la actual CY62148EV30, esta tiene la siguientes caracteristicas:

Tiene que ser estática, 512KX8 con una velocidad de 45 ns, y claro trabajar a 3,3 V,

El valor de 45ns; ¿puede ser mayor?¿Hasta cuanto? ¿Como habéis calculado el valor necesario?

Otra cosa, si coloco un conector USB, como debo conectar los pines data- y data+. con respecto a las actuales lineas del PS2;?

Además ¿como averiguo si un teclado es multinorama o solo USB?

Un saludo.
Adjuntos
PS2.png
PS2.png (13.26 KiB) Visto 6039 veces
Última edición por celestinox el 20 Jun 2015, 10:54, editado 2 veces en total.

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: 16 veces

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor Quest » 20 Jun 2015, 10:41

Creo que he encontrado algun bug en el nuevo core de teclado (ultimo test16). Creo que es un bug porque he probado con el core antiguo y no pasa, y con 4 teclados distintos.

Pasa sobre todo al pulsar Shift derecho con la tecla punto "." para conseguir los dos puntos, pero tambien puede pasar con otras. El resultado es que la tecla resultante se sigue pulsando sola de forma indefinida, aunque ya no estes tocando el teclado.

La forma en la que he conseguido reproducir el efecto mas frecuentemente es, pulsando modo extendido (se puede pulsar otra vez para desactivarlo, da igual, la cuestion es pulsarlo) y luego shift derecho + el punto "."

Otra cosa que he notado es que pese que al pulsar TAB sale el modo extendido, no sale al pulsar caps shift + symbol shift, cuando deberia hacerlo. De hecho solo he conseguido que lo haga pulsando caps shift + los dos symbol shift a la vez, pero deberia hacerlo solo con uno.

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: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor mcleod_ideafix » 20 Jun 2015, 10:49

celestinox escribió:El valor de 45ns; ¿puede ser mayor?¿Hasta cuanto? ¿Como habéis calculado el valor necesario?

No se calculó el valor, sino que a mi me dieron el diseño con ese valor, y a partir de él diseñé el módulo de interleaving de memoria. Tendríamos mejores prestaciones (la CPU pòdría ir a mayor velocidad) si la memoria fuese más rápida.

Mira, puede que lo veas más claro si lees el resumen del trabajo de fin de master que presenté, y que es un resumen de mi trabajo en el ZX-Uno. Hay una sección dedicada al manejador de memoria.
http://www.atc.us.es/~rodriguj/trabajo_ ... esumen.zip

-- Actualizado 20 Jun 2015, 09:57 --

Quest escribió:Creo que he encontrado algun bug en el nuevo core de teclado (ultimo test16). Creo que es un bug porque he probado con el core antiguo y no pasa, y con 4 teclados distintos.

En los cores anteriores tambén pasa. Estoy bien informado de que existe ese bug y sé por qué se produce, y tengo más o menos estudiado la forma de solucionarlo, pero necesito que en la BIOS haya una secuencia de inicialización del teclado que incluya el desactivar el autorrepeat que tiene el propio teclado.

El error se produce cuando pulsas una tecla con SHIFT. Por ejemplo, los dos puntos ":" . Si la secuencia es: pulsar SHIFT, pulsar ":", soltar ":", soltar SHIFT, entonces no pasa nada malo. Pero si la secuencia es pulsar SHIFT, pulsar ":", soltar SHIFT, soltar ":", entonces sí que se produce el error.

Quest escribió:Otra cosa que he notado es que pese que al pulsar TAB sale el modo extendido, no sale al pulsar caps shift + symbol shift, cuando deberia hacerlo. De hecho solo he conseguido que lo haga pulsando caps shift + los dos symbol shift a la vez, pero deberia hacerlo solo con uno.

CAPS SHIFT es la tecla Windows izquierda, y SYMBOL SHIFT es la tecla Windows derecha, en este mapeado que he hecho. En el video creo que lo comento. Las teclas SHIFT del teclado se comportan como CAPS o como SYMBOL dependiendo de con qué tecla la pulses, para que al pulsar por ejemplo SHIFT+A obtengas una A mayúscula, que seria CAPS+A, pero si pulsas SHIFT+4 obtengas el súmbolo del dolar, que sería SYMBOL+4.

Todo esto, por supuesto, se puede cambiar. Aunque aún no he explicado cómo, pero si le echas un vistazo al programa genkeybmap_es.c que está en el mismo directorio del test16 verás más o menos cómo genero los mapas. Si conoces algo de C (y aunque no lo conozcas) puedes probar a cambiar el mapeo por el que más te guste, y generar tu propio fichero de mapa de teclado para cargar con .keymap para que CAPS y SYMBOL estén donde tú quieras :) Para compilar este programa cualquier compilador de C te vale. No es un programa que necesite Windows ni nada de eso.

-- Actualizado 20 Jun 2015, 10:03 --

celestinox escribió:Otra cosa, si coloco un conector USB, como debo conectar los pines data- y data+. con respecto a las actuales lineas del PS2;?

Si colocas un conector USB necesitas en realidad dos conectores USB, ya que en el conector PS/2 hay en realidad dos dispositivos: teclado y ratón. Sobre cómo conectar los pines, aquí lo explican:
http://www.taringa.net/comunidades/tari ... a-usb.html

celestinox escribió:Además ¿como averiguo si un teclado es multinorama o solo USB?

Por lo general:
- Si es un teclado "de marca" (HP, etc) que viene incluido con un equipo, suelen ser sólo USB
- Si es un teclado inhalámbrico y lleva un pequeño "dongle" USB, es sólo USB
- Si es un "combo" de teclado y ratón y el conector es USB, es sólo USB
- Si es un teclado de Apple, es sólo USB
- Si no, es bastante probable que sea dual. Una forma de averiguarlo es dándole alimentación al teclado. Si al hacerlo, se encienden por un momento las tres luces del teclado y luego se apagan, es casi seguro que sea dual.
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

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: 16 veces

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor Quest » 20 Jun 2015, 12:00

Gracias por las aclaraciones :)

mcleod_ideafix escribió:En los cores anteriores tambén pasa. Estoy bien informado de que existe ese bug y sé por qué se produce, y tengo más o menos estudiado la forma de solucionarlo, pero necesito que en la BIOS haya una secuencia de inicialización del teclado que incluya el desactivar el autorrepeat que tiene el propio teclado.


Vaya, pues no he conseguido reproducirlo en cores anteriores. No obstante si dices que también existe, pues será así, claro :)

Respecto a la secuencia de inicialización para desactivar la repetición del teclado, lo veo bastante complicado. Por un lado está el typematic rate/delay, que se controla con el comando F3 pero que lamentablemente sólo se puede variar según un rango de valores prefijado, entre los cuales no hay ninguno que desactive el rate, o yo no lo he visto en ninguna tabla conocida. Por otro lado tenemos el FC, que elimina la repetición para las teclas indicadas (hay que irlas indicando una a una, y el teclado queda deshabilitado hasta que no recibe todas), solo que lo descarto porque al parecer este comando requiere que el scancode set sea el 3. El set 3 no está soportado por muchos teclados, lo cual para mí ya descataría este método.

No conozco ninguna otra forma de atacar el problema del auto repeat. Si sabes de alguna puedo hacer alguna prueba con la BIOS, dado que al menos conseguí enviar un reset (bueno, en realidad un echo 0xEE que tarda menos) al teclado para habilitar los problemáticos ayer en el arranque y funcionó bien. No conseguí activar LEDs porque no se hacer algo tan tonto como un delay de 1ms en ensamblador :mrgreen: (bueno, lo intenté con algún bucle de comandos "dummy" que supuestamente gastan "X" T-estados, haciendo la cuenta, pero nada, ni idea xD) para separar el 0xED del 0x02 y que le de tiempo al teclado...

¿Cómo hacen en otros proyectos de máquinas FPGA con teclados PS/2 para manejar este tema adecuadamente sin provocar el bug?

mcleod_ideafix escribió:Todo esto, por supuesto, se puede cambiar. Aunque aún no he explicado cómo, pero si le echas un vistazo al programa genkeybmap_es.c que está en el mismo directorio del test16 verás más o menos cómo genero los mapas. Si conoces algo de C (y aunque no lo conozcas) puedes probar a cambiar el mapeo por el que más te guste, y generar tu propio fichero de mapa de teclado para cargar con .keymap para que CAPS y SYMBOL estén donde tú quieras :) Para compilar este programa cualquier compilador de C te vale. No es un programa que necesite Windows ni nada de eso.


Ningún problema con el C ;) le echaré un vistazo al código para hacerme el mapeo personalizado :D gracias.

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

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor celestinox » 20 Jun 2015, 12:26

mcleod_ideafix escribió:
celestinox escribió:Otra cosa, si coloco un conector USB, como debo conectar los pines data- y data+. con respecto a las actuales lineas del PS2;?

Si colocas un conector USB necesitas en realidad dos conectores USB, ya que en el conector PS/2 hay en realidad dos dispositivos: teclado y ratón. Sobre cómo conectar los pines, aquí lo explican:
http://www.taringa.net/comunidades/tari ... a-usb.html



Ahora si que me perdido, superfo en el A+ solo coloca un USB, por que iba a ¿necesitar ahora dos USB?, no tengo intención de usar ratón.
Por lo que veo en los adaptadores de PS2 a USB, habrá 2 tipos de conexionado, 1 para teclado y otro para ratón. Yo necesitaría entonces solo implementar el conexionado del teclado USB.

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: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor mcleod_ideafix » 20 Jun 2015, 12:41

Quest escribió:Respecto a la secuencia de inicialización para desactivar la repetición del teclado, lo veo bastante complicado. Por un lado está el typematic rate/delay, que se controla con el comando F3 pero que lamentablemente sólo se puede variar según un rango de valores prefijado, entre los cuales no hay ninguno que desactive el rate, o yo no lo he visto en ninguna tabla conocida. Por otro lado tenemos el FC, que elimina la repetición para las teclas indicadas (hay que irlas indicando una a una, y el teclado queda deshabilitado hasta que no recibe todas), solo que lo descarto porque al parecer este comando requiere que el scancode set sea el 3. El set 3 no está soportado por muchos teclados, lo cual para mí ya descataría este método.

Muy sencillo: el comando es F8. Esto deshabiita el typematic para todas las teclas, y sólo se permite el envío de Make/Break. No obstante, si lo pruebas verás que no se elimina el bug porque el código Verilog que lo implementa lo tengo todavía a medio hacer.

Quest escribió:¿Cómo hacen en otros proyectos de máquinas FPGA con teclados PS/2 para manejar este tema adecuadamente sin provocar el bug?

Aparte del ZX Badaloc reloaded, no he "catado" personalmente ningún otro proyecto FPGA de clon, pero lo más normal es que no implementen teclas desdobladas, sino que lo que hacen es mapear las 40 teclas del Spectrum a 40 teclas del teclado PS/2, y ya está. De esa forma sí que es cierto que no se produce el error. De hecho, en el ZX-Uno si te olvidas de que existen las teclas desdobladas y te ciñes a las teclas numéricas, las alfabéticas, la barra espaciadora, Intro, y las dos teclas de Windows izquierda y derecha que hacen de CAPS y SYMBOL, tampoco tendrás problemas :D
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

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: 16 veces

Re: ZX-Uno prototipo 2: seguimos dándole caña

Mensajepor Quest » 20 Jun 2015, 12:53

mcleod_ideafix escribió:Muy sencillo: el comando es F8. Esto deshabiita el typematic para todas las teclas, y sólo se permite el envío de Make/Break. No obstante, si lo pruebas verás que no se elimina el bug porque el código Verilog que lo implementa lo tengo todavía a medio hacer.


Cierto, olvidé mencionar F8, que hace lo mismo que FC pero para todas las teclas, pero el problema sigue siendo que sólo funciona con el scancode set 3, que yo sepa.

mcleod_ideafix escribió:De hecho, en el ZX-Uno si te olvidas de que existen las teclas desdobladas y te ciñes a las teclas numéricas, las alfabéticas, la barra espaciadora, Intro, y las dos teclas de Windows izquierda y derecha que hacen de CAPS y SYMBOL, tampoco tendrás problemas :D


Cierto :D , para mi uso, con generarme un mapa personalizado ya está. Lo que me preocupa siempre en este periodo de prototipos y testeo es lo que ocurre de cara al usuario final, que sin saber cómo, de repente se le repiten las teclas solas y a ver si se va a pensar que está poseído el cacharro :mrgreen: :mrgreen:


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

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