TEST 3a: fixed timings for I/O instructions, improved scandoubler, green phosphor effect and COPY key mapped

Avatar de Usuario
mcleod_ideafix
Mensajes: 831
Registrado: 27 Sep 2015, 00:14
Ubicación: Jerez de la Frontera
Contactar:

TEST 3a: fixed timings for I/O instructions, improved scandoubler, green phosphor effect and COPY key mapped

Mensaje por mcleod_ideafix » 26 Ago 2017, 20:39

The CPU has now correct timings (as far as the test #5 of PLUSTEST utilities can report to me) for all instructions. This means that the glitches you may find on Super Mario tech demo from Rhino/BG should have gone.

Please, test as many games you can. If a high number of them work fine, I can call this part finished and focus on upgrading the machine to 128K and (hopefully), add disk support.

TODO: study the best way to do the scandoubling on the CPC. Issues have been arised regarding misorder of odd and even scanlines, due to (I guess) a change of parameters in the CRTC by the software.
Improved scandoubler. Please, take into account that the Amstrad CPC has a CRTC controller that can be programmed by the user, altering screen timings. Modern VGA monitors will try to sync again everytime it detects timings have changed, which may cause screen to go black for a moment. I cannot do anything to prevent this, I'm afraid :( This doesn't happen when in RGB/composite video mode.

Some users have requested a way to switch from color monitor to green monitor. The machine boots with color enabled initially. The END key will switch color OFF and ON.

The Amstrad key COPY has been mapped to key PrtScn, and to key Left "Windows" (just at the right of Control, as in the CPC 6128 keyboard)
And (sorry about that), the "small ENTER" key is also mapped. That's why Rampage didn't work.

Please, find the included TEST 3a core, ready to be flashed on ZX-UNO in this very same post.

--------------------------

La CPU tiene ahora timings correctos (por lo que me cuenta el test 5 de las utilidades PLUSTEST) para todas las instrucciones. Esto significa que por ejemplo, los glitches que se observaban en la demo técnica de Super Mario de Rhino/BG deberían haber desaparecido.

Por favor, probad con todos los juegos que podais. Si un gran número de ellos funciona bien, puedo dar por terminada esta parte del core y concentrarme en ampliarlo a 128K y darle soporte de disco.

TODO: estudiar de qué manera puedo mejorar el scandoubler en el CPC, ya que se han observado fallos que afectan al orden de los campos par e impar debido a (supongo) que el software cambia los parámetos del CRTC.
Se ha mejorado el scandoubler. Tened de todas formas en cuenta que el CPC tiene un controlador CRTC que puede ser programado por el usuario, alterando la temporización de las señales de la pantalla. Cuando estos tiempos cambien, los monitores modernos VGA intentarán volver a sincronizarse con la señal de video, haciendo probablemente que la imagen desaparezca durante unos instantes. No tengo forma de prevenir esto, me temo. Recordad que esto no pasa ni en video compuesto ni en RGB.

A petición de algunos usuarios se ha implementado una forma de pasar de imagen en color a "efecto fósforo verde". Inicialmente el CPC arranca en color, pero si se pulsa la tecla FIN, va cambiando de modo color a modo verde y viceversa.

La tecla COPY, que se quedó sin mapear en la última versión del core, ha sido mapeada a la tecla ImprPant como se pidió, y también a la tecla Windows izquierda, ya que esta tecla está justo a la derecha de la tecla Control, igual que en el teclado original del CPC 6128.

Y, siento el despiste, la tecla ENTER pequeña del teclado numérico no estaba mapeada. Ahora lo está. El Rampage ya me funciona con los dos monos que se controlan por teclado.

Teneis la última versión del core 3a incluido como adjunto en este post.
2017-09-01 03.00.46.jpg
2017-09-01 03.00.46.jpg
Adjuntos
2017-09-01 03.00.56.jpg
COREn.ZX1
TEST 3a. Fixed timings, improved scandoubler, green phosphor effect, COPY and SMALL ENTER keys mapped.
(336 KiB) Descargado 472 veces
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

skywalky
Mensajes: 95
Registrado: 23 Mar 2016, 19:16

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por skywalky » 26 Ago 2017, 20:53

Eres un máquina. En cuanto pueda lo pruebo. Gracias

Avatar de Usuario
jaildesigner
Mensajes: 158
Registrado: 19 Sep 2016, 08:09

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por jaildesigner » 27 Ago 2017, 10:51

Entonces cancelo las pruebas con el TEST 3 y me pongo con este mejor?

EDIT: Pongo aquí el enlace al documento con los resultados https://docs.google.com/spreadsheets/d/ ... sp=sharing
Última edición por jaildesigner el 27 Ago 2017, 12:07, editado 1 vez en total.

Avatar de Usuario
dustin
Mensajes: 50
Registrado: 15 Ene 2016, 18:50

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por dustin » 27 Ago 2017, 11:10

Hola,

Ahora que comentas lo de ampliar el core al 128k. ¿Has considerado incluir la carga de cdt desde la SD? Lo pregunto, como te puedes suponer, sin saber si es algo factible.

Saludos

Avatar de Usuario
mcleod_ideafix
Mensajes: 831
Registrado: 27 Sep 2015, 00:14
Ubicación: Jerez de la Frontera
Contactar:

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por mcleod_ideafix » 27 Ago 2017, 11:15

dustin escribió:Hola,

Ahora que comentas lo de ampliar el core al 128k. ¿Has considerado incluir la carga de cdt desde la SD? Lo pregunto, como te puedes suponer, sin saber si es algo factible.

Saludos
La carga de CDT tiene el mismo problema que la carga de TZX en el Spectrum (son de hecho el mismo formato), y es que necesitaría incluir el core de player PZX, y una utilidad (un RSX por ejemplo) para convertir un CDT/TZX al formato interno del player, que es PZX simplificado. Se me ha pasado por la cabeza, sí, pero de hacerlo, sería después de conseguir soporte de disco, ya que parece que es el formato mayoritario en Amstrad, incluso para juegos de 64K.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
jaildesigner
Mensajes: 158
Registrado: 19 Sep 2016, 08:09

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por jaildesigner » 27 Ago 2017, 11:33

HA CARGADO EL DIZZY 2!!! :plasplas: :plasplas: :plasplas:

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

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por spark2k06 » 27 Ago 2017, 11:40

A ver si alguien tiene oportunidad de probar el psyco pig, creo que no funcionaba y yo no podre probarlo hasta dentro de un par de semanas.

Enviado desde mi Thor mediante Tapatalk

Avatar de Usuario
jaildesigner
Mensajes: 158
Registrado: 19 Sep 2016, 08:09

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por jaildesigner » 27 Ago 2017, 12:06

spark2k06 escribió:A ver si alguien tiene oportunidad de probar el psyco pig, creo que no funcionaba y yo no podre probarlo hasta dentro de un par de semanas.

Enviado desde mi Thor mediante Tapatalk
Ese ya estaba probado con la TEST 3 y funcionaba perfectamente :plasplas:

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

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por spark2k06 » 27 Ago 2017, 12:17

Bien!!! A ver si tengo oportunidad de repasar la lista. Gracias!

Enviado desde mi Thor mediante Tapatalk

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

Re: TEST 3a: fixed timings for I/O instructions

Mensaje por spark2k06 » 27 Ago 2017, 18:23

Una idea, de fácil implementación. Simular el fósforo verde mediante alguna tecla, cambiar del color a fósforo verde y viceversa.

Enviado desde mi Thor mediante Tapatalk

Responder