ZXBaremulator 3.2

Moderador: Fundadores

Responder
Avatar de Usuario
Kyp !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3377
Registrado: 30 Sep 2013, 14:54
Ubicación: Madrid
Has thanked: 28 times
Been thanked: 146 times

Re: ZXBaremulator 3.2

Mensaje por Kyp »

Probado en la PI-3 y funcionando perfectamente :D
No se si dará igual, mi Pi-2 es v1.1, de momento no lo probado con esa.
Avatar de Usuario
zx81
Aspirante a demonio
Aspirante a demonio
Mensajes: 499
Registrado: 19 Oct 2013, 16:27
Ubicación: Valencia
Has thanked: 11 times
Been thanked: 2 times
Contactar:

Re: ZXBaremulator 3.2

Mensaje por zx81 »

Kyp escribió: 18 Abr 2020, 19:11 Probado en la PI-3 y funcionando perfectamente :D
No se si dará igual, mi Pi-2 es v1.1, de momento no lo probado con esa.
No, no da igual, la PI-2 v1.1 es ARMv7.
Today's robots are very primitive, capable of understanding only a few simple instructions such as 'go left', 'go right' and 'build car'.
John Sladek

Emulador de Spectrum JSpeccy.
Emulador de Spectrum Bare-metal para las Raspberry PI ZXBaremulator
Avatar de Usuario
javier2112
Demonio tercer orden
Demonio tercer orden
Mensajes: 886
Registrado: 30 Oct 2014, 12:36
Ubicación: Málaga
Has thanked: 11 times
Been thanked: 13 times

Re: ZXBaremulator 3.2

Mensaje por javier2112 »

Hola.

¿Has pensado en dar soporte a este teclado USB Spectrum?
http://blog.agm.me.uk/blog/2014/07/zx-keyboard.php
https://github.com/alistairuk/ZX-Keyboard
https://hackaday.io/project/2076-zx-keyboard

En este foro, el compañero Spirax hizo una tirada tiempo atrás. Yo me lo he montado y funciona d.p.m.:
viewtopic.php?f=63&t=7576#p135474

Lo puedo usar en mi PC y en los propios emuladores gracias a un modo especial llamado modo directo.

El problema es que el ZXBaremulator no lo detecta. Curiosamente, un montaje muy parecido funciona según su autor::
http://blog.tynemouthsoftware.co.uk/201 ... ry-pi.html

Pero este montaje no es de libre disposición y sale realmente muy caro.

Ya se que es posible utilizar GPIO en lugar de USB, como también es verdad que en ese caso, para poder disfrutar al 100% del emulador, estamos limitados a un modelo concreto, el 3B, que entre en la carcasa del Spectrum, pues ya no nos sirve el Zero, por falta de pines. También has manifestado que en el futuro no vas a darle soporte porque no te gusta.

¿Sería posible hacer que el emulador reconociera este teclado?

Saludos.


PD. Por si te anima y te sirve, te adjunto información que nos proporciona Linux sobre el mismo:

Código: Seleccionar todo

$ dmesg
[28534.489122] usb 3-5: new low-speed USB device number 47 using xhci_hcd
[28535.767187] usb 3-5: New USB device found, idVendor=4242, idProduct=e131
[28535.767193] usb 3-5: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[28535.767196] usb 3-5: Product: UsbKeyboard
[28535.767199] usb 3-5: Manufacturer: rancidbacon.com
[28536.115073] input: rancidbacon.com UsbKeyboard as /devices/pci0000:00/0000:00:14.0/usb3/3-5/3-5:1.0/0003:4242:E131.000D/input/input30
[28536.173764] hid-generic 0003:4242:E131.000D: input,hidraw2: USB HID v1.01 Keyboard [rancidbacon.com UsbKeyboard] on usb-0000:00:14.0-5/input0

$ lsusb
Bus 003 Device 047: ID 4242:e131 USB Design by Example 

$ usb-devices
T:  Bus=03 Lev=01 Prnt=01 Port=04 Cnt=01 Dev#= 47 Spd=1.5 MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=4242 ProdID=e131 Rev=01.00
S:  Manufacturer=rancidbacon.com
S:  Product=UsbKeyboard
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid
Visita mi hilo de ventas:
viewtopic.php?t=4789
Avatar de Usuario
zx81
Aspirante a demonio
Aspirante a demonio
Mensajes: 499
Registrado: 19 Oct 2013, 16:27
Ubicación: Valencia
Has thanked: 11 times
Been thanked: 2 times
Contactar:

Re: ZXBaremulator 3.2

Mensaje por zx81 »

A ver, aclaremos algunas cosas, que debo explicarme fatal:

- Sería posible darle soporte a ese teclado, aunque habría que ver cómo se lo monta porque hace tiempo que el del Tynemouth me mandó un correo para decirme que si le quería dar soporte. Mirándolo detenidamente, era complicado, no recuerdo porqué ahora y, además, es un producto comercial. No doy soporte a productos comerciales, creo que es fácil de comprender. Ya sé que éste no es el caso.

- Dentro de que fuera posible darle soporte, creo que en este momento no tendría mucho sentido. Precisamente, la ventaja del teclado por GPIO es que se comporta de forma real, como lo leería un Spectrum, sin lag ninguno. Ese montaje no deja de ser un USB, con lo que ello comporta y habría que ver si no es peor que cualquier teclado. La información se saca con:

lsusb -vvv -d 4242:e131

pero me resulta extraño que siendo un teclado normal no lo reconozca inmediatamente. Lo único que se me ocurre, así a bote pronto, es que no soporte el protocolo BOOT, necesario para que un teclado USB te funcione en la BIOS del PC. Compruébalo a ver. Si no funciona en la BIOS, jodido lo tienes Mío Cid, porque la librería Circle solo maneja los teclados en modo BOOT. Sospecho que el problema va por aquí. O porque el modo directo no se comporta como un teclado USB real, a saber.

- En el caso de que pudiera darle soporte, necesitaría uno para probarlo. No tengo ningún teclado funcional, mi Spectrum+ tiene bastantes teclas que fallan, cosa de la membrana. De modo que necesitaría placa y teclado.

- Me has malentendido con el soporte de la Zero. Ahora mismo, soportarla me cuesta Zero, excepto porque nadie está contento, principalmente porque tener GPIO impide tener sonido y, es comprensible, un Spectrum mudo es un ñordo. Lo ideal sería el HDMI, pero dadas las dificultades de darle soporte en ese modelo, por solo tener una CPU, lo veo muy difícil. Además, a futuro me limitaría mucho cuando quisiera hacer algo más. En los otros modelos tengo 2 CPUs esperando una buena idea. Alguna tengo, especialmente para el día que el soporte de la Pi4 en Circle funcione bien, eso de soportar dos monitores daría mucho juego.

- No veo dónde está el problema en usar una 3A+ en lugar de una Zero, salvo que por alguna incomprensible razón uno se empeñe que sea la Zero y no otra. Solo es marginalmente más cara que la Zero y no hay color. Pero las manías no las curan los médicos.
Today's robots are very primitive, capable of understanding only a few simple instructions such as 'go left', 'go right' and 'build car'.
John Sladek

Emulador de Spectrum JSpeccy.
Emulador de Spectrum Bare-metal para las Raspberry PI ZXBaremulator
Avatar de Usuario
javier2112
Demonio tercer orden
Demonio tercer orden
Mensajes: 886
Registrado: 30 Oct 2014, 12:36
Ubicación: Málaga
Has thanked: 11 times
Been thanked: 13 times

Re: ZXBaremulator 3.2

Mensaje por javier2112 »

zx81 escribió: 19 Abr 2020, 20:10 A ver, aclaremos algunas cosas, que debo explicarme fatal:

- Sería posible darle soporte a ese teclado, aunque habría que ver cómo se lo monta porque hace tiempo que el del Tynemouth me mandó un correo para decirme que si le quería dar soporte. Mirándolo detenidamente, era complicado, no recuerdo porqué ahora y, además, es un producto comercial. No doy soporte a productos comerciales, creo que es fácil de comprender. Ya sé que éste no es el caso.

- Dentro de que fuera posible darle soporte, creo que en este momento no tendría mucho sentido. Precisamente, la ventaja del teclado por GPIO es que se comporta de forma real, como lo leería un Spectrum, sin lag ninguno. Ese montaje no deja de ser un USB, con lo que ello comporta y habría que ver si no es peor que cualquier teclado. La información se saca con:

lsusb -vvv -d 4242:e131

pero me resulta extraño que siendo un teclado normal no lo reconozca inmediatamente. Lo único que se me ocurre, así a bote pronto, es que no soporte el protocolo BOOT, necesario para que un teclado USB te funcione en la BIOS del PC. Compruébalo a ver. Si no funciona en la BIOS, jodido lo tienes Mío Cid, porque la librería Circle solo maneja los teclados en modo BOOT. Sospecho que el problema va por aquí. O porque el modo directo no se comporta como un teclado USB real, a saber.

- En el caso de que pudiera darle soporte, necesitaría uno para probarlo. No tengo ningún teclado funcional, mi Spectrum+ tiene bastantes teclas que fallan, cosa de la membrana. De modo que necesitaría placa y teclado.

- Me has malentendido con el soporte de la Zero. Ahora mismo, soportarla me cuesta Zero, excepto porque nadie está contento, principalmente porque tener GPIO impide tener sonido y, es comprensible, un Spectrum mudo es un ñordo. Lo ideal sería el HDMI, pero dadas las dificultades de darle soporte en ese modelo, por solo tener una CPU, lo veo muy difícil. Además, a futuro me limitaría mucho cuando quisiera hacer algo más. En los otros modelos tengo 2 CPUs esperando una buena idea. Alguna tengo, especialmente para el día que el soporte de la Pi4 en Circle funcione bien, eso de soportar dos monitores daría mucho juego.

- No veo dónde está el problema en usar una 3A+ en lugar de una Zero, salvo que por alguna incomprensible razón uno se empeñe que sea la Zero y no otra. Solo es marginalmente más cara que la Zero y no hay color. Pero las manías no las curan los médicos.
Deacuerdo en todo, excepto que la 3A+ esté casi al mismo precio que la Zero. Ni de coña.

Código: Seleccionar todo

# lsusb -vvv -d 4242:e131
Bus 003 Device 004: ID 4242:e131 USB Design by Example 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x4242 USB Design by Example
  idProduct          0xe131 
  bcdDevice            1.00
  iManufacturer           1 rancidbacon.com
  iProduct                2 UsbKeyboard
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.01
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      35
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0000
  (Bus Powered)
Voy a probar a entrar en BIOS con el teclado, a ver si es posible.
Visita mi hilo de ventas:
viewtopic.php?t=4789
Avatar de Usuario
zx81
Aspirante a demonio
Aspirante a demonio
Mensajes: 499
Registrado: 19 Oct 2013, 16:27
Ubicación: Valencia
Has thanked: 11 times
Been thanked: 2 times
Contactar:

Re: ZXBaremulator 3.2

Mensaje por zx81 »

Efectivamente, no soporta modo BOOT. Cuando es así sale algo como:
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
o sea, 3-1-1. Ese teclado da 3-0-0, ni siquiera se identifica como teclado. Otra cosa es que Linux lo maneje porque el soporte de HID es muchísimo más amplio.

En cuanto a precio, encuentro la Zero v1.3 a 14.95€ + 1.72€ de la tira de pines para soldar y la 3A+ a 27.95€, todo con IVA incluido. Si te vas a la Zero WH, 19.95€. No me parece una diferencia como para no elegir caballo grande. Salvo que la ilusión de uno sea montar en pony. Lo increíble es que la PI-1 A+ se vende por 29.95€, más cara que la 3A+. Mi no comprender.

Desde mi punto de vista, el problema es que el soporte que he recuperado de la Zero no me da más que dolores de cabeza porque todo el mundo está descontento. El que no quería teclado real, se joroba sin sonido. Y el que quiere teclado real, también le joroba no tener sonido. No hay manera de acertar.
Today's robots are very primitive, capable of understanding only a few simple instructions such as 'go left', 'go right' and 'build car'.
John Sladek

Emulador de Spectrum JSpeccy.
Emulador de Spectrum Bare-metal para las Raspberry PI ZXBaremulator
Avatar de Usuario
javier2112
Demonio tercer orden
Demonio tercer orden
Mensajes: 886
Registrado: 30 Oct 2014, 12:36
Ubicación: Málaga
Has thanked: 11 times
Been thanked: 13 times

Re: ZXBaremulator 3.2

Mensaje por javier2112 »

zx81 escribió: 19 Abr 2020, 21:46 Efectivamente, no soporta modo BOOT. Cuando es así sale algo como:
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
o sea, 3-1-1. Ese teclado da 3-0-0, ni siquiera se identifica como teclado. Otra cosa es que Linux lo maneje porque el soporte de HID es muchísimo más amplio.
Vaya. Mala suerte.
zx81 escribió: En cuanto a precio, encuentro la Zero v1.3 a 14.95€ + 1.72€ de la tira de pines para soldar y la 3A+ a 27.95€, todo con IVA incluido. Si te vas a la Zero WH, 19.95€. No me parece una diferencia como para no elegir caballo grande. Salvo que la ilusión de uno sea montar en pony. Lo increíble es que la PI-1 A+ se vende por 29.95€, más cara que la 3A+. Mi no comprender.
No se de donde sacas el precio de la Zero, siempre ha sido mucho más bajo. Por ejemplo, en KUBII la Raspberry Pi Zero v1.3 está a 5,45€.
zx81 escribió: Desde mi punto de vista, el problema es que el soporte que he recuperado de la Zero no me da más que dolores de cabeza porque todo el mundo está descontento. El que no quería teclado real, se joroba sin sonido. Y el que quiere teclado real, también le joroba no tener sonido. No hay manera de acertar.
Entonces es que no hay sonido de ninguna de las maneras, entiendo, porque teclado tendrías que ponerle uno, si o sí.
Visita mi hilo de ventas:
viewtopic.php?t=4789
Avatar de Usuario
zx81
Aspirante a demonio
Aspirante a demonio
Mensajes: 499
Registrado: 19 Oct 2013, 16:27
Ubicación: Valencia
Has thanked: 11 times
Been thanked: 2 times
Contactar:

Re: ZXBaremulator 3.2

Mensaje por zx81 »

javier2112 escribió: 20 Abr 2020, 17:51
zx81 escribió: En cuanto a precio, encuentro la Zero v1.3 a 14.95€ + 1.72€ de la tira de pines para soldar y la 3A+ a 27.95€, todo con IVA incluido. Si te vas a la Zero WH, 19.95€. No me parece una diferencia como para no elegir caballo grande. Salvo que la ilusión de uno sea montar en pony. Lo increíble es que la PI-1 A+ se vende por 29.95€, más cara que la 3A+. Mi no comprender.
No se de donde sacas el precio de la Zero, siempre ha sido mucho más bajo. Por ejemplo, en KUBII la Raspberry Pi Zero v1.3 está a 5,45€.
De casi la única tienda española que conozco que la tiene, Tiendatec. El caso es peculiar, porque es el triple de cara que la página francesa, cuando la 3A+ solo cuesta alrededor de 1.5€ más que en Francia. Claramente, meten el rejonazo porque saben que la gente la busca. Pero por esa diferencia de precio, merece la pena pedirla allí, desde luego. Era una página que no conocía, la verdad.
javier2112 escribió: 20 Abr 2020, 17:51
zx81 escribió: Desde mi punto de vista, el problema es que el soporte que he recuperado de la Zero no me da más que dolores de cabeza porque todo el mundo está descontento. El que no quería teclado real, se joroba sin sonido. Y el que quiere teclado real, también le joroba no tener sonido. No hay manera de acertar.
Entonces es que no hay sonido de ninguna de las maneras, entiendo, porque teclado tendrías que ponerle uno, si o sí.
No, en la Zero no hay sonido porque el soporte de teclado real está incluido en cualquier caso. Si hiciera una faena considerable podría generar dos binarios, uno con sonido y otro con soporte de teclado. Y entonces, la gente se liaría y, además, dejaría sin solución al que quiere las dos cosas. Este es uno de esos casos que se aplica la frase hagas lo que hagas, la cagas.
Today's robots are very primitive, capable of understanding only a few simple instructions such as 'go left', 'go right' and 'build car'.
John Sladek

Emulador de Spectrum JSpeccy.
Emulador de Spectrum Bare-metal para las Raspberry PI ZXBaremulator
Avatar de Usuario
javier2112
Demonio tercer orden
Demonio tercer orden
Mensajes: 886
Registrado: 30 Oct 2014, 12:36
Ubicación: Málaga
Has thanked: 11 times
Been thanked: 13 times

Re: ZXBaremulator 3.2

Mensaje por javier2112 »

zx81 escribió: 20 Abr 2020, 18:40
javier2112 escribió: 20 Abr 2020, 17:51
zx81 escribió: En cuanto a precio, encuentro la Zero v1.3 a 14.95€ + 1.72€ de la tira de pines para soldar y la 3A+ a 27.95€, todo con IVA incluido. Si te vas a la Zero WH, 19.95€. No me parece una diferencia como para no elegir caballo grande. Salvo que la ilusión de uno sea montar en pony. Lo increíble es que la PI-1 A+ se vende por 29.95€, más cara que la 3A+. Mi no comprender.
No se de donde sacas el precio de la Zero, siempre ha sido mucho más bajo. Por ejemplo, en KUBII la Raspberry Pi Zero v1.3 está a 5,45€.
De casi la única tienda española que conozco que la tiene, Tiendatec. El caso es peculiar, porque es el triple de cara que la página francesa, cuando la 3A+ solo cuesta alrededor de 1.5€ más que en Francia. Claramente, meten el rejonazo porque saben que la gente la busca. Pero por esa diferencia de precio, merece la pena pedirla allí, desde luego. Era una página que no conocía, la verdad.
javier2112 escribió: 20 Abr 2020, 17:51
zx81 escribió: Desde mi punto de vista, el problema es que el soporte que he recuperado de la Zero no me da más que dolores de cabeza porque todo el mundo está descontento. El que no quería teclado real, se joroba sin sonido. Y el que quiere teclado real, también le joroba no tener sonido. No hay manera de acertar.
Entonces es que no hay sonido de ninguna de las maneras, entiendo, porque teclado tendrías que ponerle uno, si o sí.
No, en la Zero no hay sonido porque el soporte de teclado real está incluido en cualquier caso. Si hiciera una faena considerable podría generar dos binarios, uno con sonido y otro con soporte de teclado. Y entonces, la gente se liaría y, además, dejaría sin solución al que quiere las dos cosas. Este es uno de esos casos que se aplica la frase hagas lo que hagas, la cagas.
Desde el desconocimiento, ¿por qué no das soporte al teclado por USB, como para el resto de modelos? Y así dejas el sonido por GPIO.
Visita mi hilo de ventas:
viewtopic.php?t=4789
Avatar de Usuario
zx81
Aspirante a demonio
Aspirante a demonio
Mensajes: 499
Registrado: 19 Oct 2013, 16:27
Ubicación: Valencia
Has thanked: 11 times
Been thanked: 2 times
Contactar:

Re: ZXBaremulator 3.2

Mensaje por zx81 »

javier2112 escribió: 20 Abr 2020, 18:46 Desde el desconocimiento, ¿por qué no das soporte al teclado por USB, como para el resto de modelos? Y así dejas el sonido por GPIO.
Nadie ha dicho que la Zero no tenga soporte para teclado USB. Y ratón. Y joystick.

Por eso decía que tendría que generar dos binarios diferentes, uno con soporte de teclado GPIO y otro sin él y, por tanto, con sonido. O que se pudiera configurar en el cmdline.txt. Vamos, que para que la gente no se gaste 20€ más yo tengo que hacer trabajo extra por valor de 200€ como mínimo. Y no es un número al azar, probablemente me quedo corto. El desarrollo lo hago en mi tiempo libre, pero mi tiempo libre también es finito. La otra solución para tener las dos cosas es una Pi-1 A+, que en Francia no la tienen en stock. En la A+ y B+ el sonido PWM sale por los GPIO 44 y 45 que no están accesibles en el peine.

Y todo eso para que llegue el día en que la Zero se quede definitivamente corta y no pueda mantener dos branches separados de desarrollo.
Today's robots are very primitive, capable of understanding only a few simple instructions such as 'go left', 'go right' and 'build car'.
John Sladek

Emulador de Spectrum JSpeccy.
Emulador de Spectrum Bare-metal para las Raspberry PI ZXBaremulator
Responder

Volver a “Emulación”