Core PC/XT TEST1 unificado (20170218)

Zup
Mensajes: 112
Registrado: 16 Sep 2016, 20:22

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Zup » 15 Mar 2017, 08:29

He estado buscando un poco información del teclado, pero no veo lo de los scancodes. En la caja no viene, y el manual parece estar desaparecido. Como curiosidad, en la caja viene la conexión para PC/XT y dice que debería funcionar con esos equipos. En fin, ante la duda habrá que pensar que el teclado no soporta ese juego de scancodes.

En cuanto a la pantalla... mi segunda tele y los dos monitores que hay en casa dicen que el modo de vídeo no es válido. La tele que sí funciona (una Philips) muestra la imagen adjunta (cuelgue del equipo, el ancho de la imagen es así todo el tiempo y además la imagen sale cortada por los bordes).
P_20170313_142240.jpg
El resto de cores (Spectrum, Apple, NES) que he probado en VGA funcionan bien... ¿alguna idea?

Como pensamiento aleatorio y sugerencia de feature... los Amstrad PC llevaban joystick digital conectado al teclado, y creo que producían scancodes al moverlo/pulsar botones. Ya que el joystick no está soportado, quizás esta sea una manera fácil (todo pasa a través del controlador del teclado). Como gran inconveniente, creo que este tipo de joystick solo se soportaba en juegos para Amstrad PC... que solo funcionaban en CGA y no está implementada.

Antxiko
Mensajes: 12
Registrado: 08 Oct 2016, 18:06

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Antxiko » 15 Mar 2017, 10:31

Buenos días!

Estoy poniéndome ahora con este core tras instalar los 2MB externos, he creado la tarjeta SD del pack usando el dd de Unix, pero al arrancar el core me dice que la SD tiene 0 bytes y no llega a arrancar, desde el Mac si me lee bien la SD y he podido copiar juegos a una carpeta... ¿Alguien me podria hechar una mano por favor?

Muchas gracias!

Avatar de Usuario
DistWave
Mensajes: 183
Registrado: 14 Oct 2015, 19:24
Ubicación: Zaragoza

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por DistWave » 15 Mar 2017, 10:40

Zup escribió:Como curiosidad, en la caja viene la conexión para PC/XT y dice que debería funcionar con esos equipos. En fin, ante la duda habrá que pensar que el teclado no soporta ese juego de scancodes.
El core utiliza un teclado de PC AT, no funciona con uno para XT. No se cómo va el tema de los scancodes...
Zup escribió:En cuanto a la pantalla... mi segunda tele y los dos monitores que hay en casa dicen que el modo de vídeo no es válido. La tele que sí funciona (una Philips) muestra la imagen adjunta (cuelgue del equipo, el ancho de la imagen es así todo el tiempo y además la imagen sale cortada por los bordes).
No tengo ninguna TV con entrada VGA, lo que sí es cierto es que los timmings no son muy exactos, aunque no me han causado problemas en los monitores que he probado. ¿La TV no permite ajustar manualmente la imagen?
Antxiko escribió:Estoy poniéndome ahora con este core tras instalar los 2MB externos, he creado la tarjeta SD del pack usando el dd de Unix, pero al arrancar el core me dice que la SD tiene 0 bytes y no llega a arrancar, desde el Mac si me lee bien la SD y he podido copiar juegos a una carpeta...
Asegurate de que es una SDHC de 4 GB o más, las SD normales de menor tamaño no son compatibles.

Antxiko
Mensajes: 12
Registrado: 08 Oct 2016, 18:06

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Antxiko » 15 Mar 2017, 10:43

Eso era, estoy usando una SD de 512MB antigua... Voy a comprarme una ahora mismo, gracias!

Por cierto, ahora que lo pienso, la imagen de la SD es de 512MB... Hay manera de aprovechar toda la capacidad de la SD?

Regracias!

Zup
Mensajes: 112
Registrado: 16 Sep 2016, 20:22

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Zup » 16 Mar 2017, 01:57

DistWave escribió:El core utiliza un teclado de PC AT, no funciona con uno para XT. No se cómo va el tema de los scancodes...
Lo siento, me he explicado mal. El teclado (clavija PS/2) supongo que es AT (lo he usado con 486 en adelante). En la caja vienen los esquemas de conexión XT (DIN5) y AT (ellos llaman eso al DIN6), por lo que dejan entrever (aunque pensándolo friamente, lo dudo) que el teclado podría funcionar en modo XT.

Los scancodes son los códigos que genera el teclado cada vez que se pulsa/suelta una tecla (y lo que se manda de vuelta por el cable). Por lo visto los teclados PS/2 disponen de tres juegos de scancodes, y el ordenador puede elegir cuál quiere que use el teclado. El problema con mi teclado podría ser que se le pide que use un juego que no está implementado, o que el core no pide explícitamente un juego y el teclado por defecto usa otro... vete a saber.
DistWave escribió:No tengo ninguna TV con entrada VGA, lo que sí es cierto es que los timings no son muy exactos, aunque no me han causado problemas en los monitores que he probado. ¿La TV no permite ajustar manualmente la imagen?
Lo primero que se me ocurrió tras ver la imagen en la TV fue conectarla a algún monitor y ver si me decía que frecuencias horizontal y vertical estaba generando. Desgraciadamente, no he podido sacar ninguna información. Todos los monitores que tengo son LED, imagino que un monitor CRT no debería dar problemas de sincronismo.

Lo curioso es que habitualmente las teles suelen ser las que aceptan solo unos pocos modos VGA, y los monitores los que tienen más manga ancha.

Mi ZX-Uno usa la BIOS 0.55, pero no sé si los ajustes que deja en la BIOS son relevantes para el core de XT.

En otro orden de cosas, tengo pendientes de hacer algunos experimentos con las tarjetas SD para determinar si puedo aprovechar el espacio libre sobrante...

ManuFerHi
Mensajes: 752
Registrado: 15 Nov 2015, 17:50

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por ManuFerHi » 17 Mar 2017, 16:07

spark2k06 escribió:Revisando la BIOS del core de XT veo que los problemas de teclado pueden ser debidos a que la BIOS inicializa el teclado con el set 1 de scancodes. Por un lado, este set no es compatible con todos los teclados, motivo por el cual puede que no funcione el teclado Benq de @Zup. Por otro lado, sobre el problema de @ManuFerHi al reiniciar, puede ser debido a que se ha quedado establecido en el set 1 en lugar del 2 que usa el core de spectrum, y por tanto es incompatible... Manu, al resetear, prueba a pulsar la tecla 5 en lugar de F2, a ver si entra en la BIOS del core de Spectrum.
Bueno ya comenté por privado a Spark2k06, tenía razón con la tecla 5 entra en bios, parece que después de un reset el core principal se queda con el mismo set de scancodes que usa el core PC/XT.

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Quest » 17 Mar 2017, 18:35

Bueno, he cambiado la BIOS para que use el set 2 (o mejor dicho, usar el set por defecto del teclado) pero entonces pasa lo contrario, que al arrancar el core de PC, las teclas son incorrectas, y al resetear, van bien en el Spectrum.

En la línea 52 aparece "SCANCODE1 equ 1", y durante todo el código hay una serie de IFDEFs que en caso de que esté definido SCANCODE1 o no, hacen una cosa u otra (supuestamente aceptar códigos de set 2 o 1, y en el caso del 1, activar dicho set). En el controlador 8042 real, normalmente se "emulan" o convierten códigos del set 2 (que usan F0 como break en vez de codigo + $80), aparte de que los scancodes son distintos.

Comentando esa línea, se consigue lo que comentaba, el efecto contrario. No lo he mirado a fondo, pero imagino que en este caso la conversión o aceptación de los códigos (si es que está) se estaría haciendo en la BIOS y no en el core (puesto que en el módulo del 8042 no veo nada al respecto).
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
spark2k06
Mensajes: 1188
Registrado: 12 Feb 2016, 13:58

Re: RE: Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por spark2k06 » 17 Mar 2017, 18:50

Quest escribió:Bueno, he cambiado la BIOS para que use el set 2 (o mejor dicho, usar el set por defecto del teclado) pero entonces pasa lo contrario, que al arrancar el core de PC, las teclas son incorrectas, y al resetear, van bien en el Spectrum.

En la línea 52 aparece "SCANCODE1 equ 1", y durante todo el código hay una serie de IFDEFs que en caso de que esté definido SCANCODE1 o no, hacen una cosa u otra (supuestamente aceptar códigos de set 2 o 1, y en el caso del 1, activar dicho set). En el controlador 8042 real, normalmente se "emulan" o convierten códigos del set 2 (que usan F0 como break en vez de codigo + $80), aparte de que los scancodes son distintos.

Comentando esa línea, se consigue lo que comentaba, el efecto contrario. No lo he mirado a fondo, pero imagino que en este caso la conversión o aceptación de los códigos (si es que está) se estaría haciendo en la BIOS y no en el core (puesto que en el módulo del 8042 no veo nada al respecto).
Eso es lo que me pasa a mi, pero no tiene ningún sentido, porque si te fijas en el código que cambia por los ELSE, todo está orientando a usar e interpretar el set 2, sin embargo, solo se queda el set 2 en el teclado, y la BIOS, es como siguiera la parte de interpretación del set 1 del IFDEF SCANCODE1...extraño.

Enviado desde mi Thor mediante Tapatalk

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Uto » 17 Mar 2017, 22:17

Hoy he estado probando el core con las 2Mb externas, pero el caso es que no tengo claro que tengo que poner en en CONFIG.SYS y AUTOEXECT.BAT para que sacar más memoria base (o mejor dicho, no me acuerdo).

He intentado poner DEVICE=C:\DOS\HIMEM.SYS y DOS=HIGH, UMB en el config sys, y se me queda colgado tras salir el texto de HIMEM.SYS. Si lo quito obviamente me ignora los LH CUTEMOUSE y LH KEYBSP y los carga en baja. ¿Hay que poner para algo el EMM386? ¿Alguien tiene un AUTOEXEC/CONFIG ya operativo?

Edit: me he bajado el HIMEM.SYS de DOS 6.22 y me pasa igual (el que venía en la SD "oficila" es la versión 3.15 de IBM, que supongo anterior). En ambos casos se queda frito ahí :-?

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Core PC/XT TEST1 unificado (20170218)

Mensaje por Quest » 17 Mar 2017, 23:04

@Uto

No puede funcionar, puesto que esto no es un 386 (ni siquiera un 286 en realidad). Para poder usar HIMEM.SYS o EMM386.sys (alguna pista da el nombre :D) se necesita que la CPU tenga modo protegido. La CPU implementada en este core (80186) sólo es un 8086 con algunas instrucciones de 286, y sólo en modo real (nada de protegido).

Para poder acceder a la memoria superior/alta y extendida, debes usar únicamente FDXMS286.SYS
Úsalo así en tu config.sys:

DOS=HIGH,UMB
DEVICE=FDXMS286.SYS

Luego haz un "mem" y verás ;)

PD: En los archivos de la versión 2Mb que puso Distwave tienes ese archivo.
(y también un emulador de EMS, que aunque funciona, evidentemente es muy lento, y no tiene mucho sentido usarlo. Ejemplo: Juego Joe & Mac, permite usarlo, pero a una velocidad poco jugable).
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Responder