El Premio.tap

Software para o relacionado con el core ZX Spectrum / Software for or related to the ZX Spectrum core
javidoom
Mensajes: 51
Registrado: 19 Mar 2016, 12:11

Re: El Premio.tap

Mensaje por javidoom » 23 Abr 2016, 23:19

carmeloco escribió:A mi en Spectaculator y en fuse, me funciona siempre, pero en un :zxuno: real, no me funciona ni desactivando los joysticks con .joyconf
Sí, a mi , ya desactivando el kempston, funciona siempre :)

El tema es que ni en V6 ni en Mist y según tú dices, tampoco en la ZXUNO parece que funciona... Al menos por ahora :)

Gracias por probar!
Vintagenarios powaaa!

Avatar de Usuario
antoniovillena
Mensajes: 2611
Registrado: 27 Sep 2015, 20:41

Re: El Premio.tap

Mensaje por antoniovillena » 23 Abr 2016, 23:25

A la hora de cargar una ROM en la lista, se pueden configurar diferentes aspectos de la máquina. La máquina que viene seleccionada en realidad no existe, pero está así porque es la que más flexibilidad nos da. Se trata de un +2A con la ROM de 48K en los 4 bancos, timings de 48K y DivMMC activado.

Para que el juego te cargue tienes que añadir una ROM a la lista con el siguiente comando:

GenRom 0 8 1 0 32 "ZX Spectrum 48K" 48.rom 48.tap

Esto provoca que nada más arrancar esté desactivada la paginación.

javidoom
Mensajes: 51
Registrado: 19 Mar 2016, 12:11

Re: El Premio.tap

Mensaje por javidoom » 24 Abr 2016, 00:15

antoniovillena escribió: GenRom 0 8 1 0 32 "ZX Spectrum 48K" 48.rom 48.tap
Holas

Imagino que esto será para el ZXUno real, y también imagino que usando tal comando, se crea una configuración de máquina lo más parecido a un 48k pelado no?

Me interesa bastante, porque ... y aquí va la pregunta:

Podré en el ZXUno tener una configuración lo más parecida a un gomas 48k sin kempston, sin audio AY, sin ulaplus... sin nada... vamos... lo más parecido a un gomas de fábrica? Y un 128k? :chocala!: Y cargarlo todo desde cinta.

(Y perdón si pregunto algo ovbio...)

Un saludo.
Vintagenarios powaaa!

Avatar de Usuario
chernandezba
Mensajes: 832
Registrado: 02 Oct 2015, 23:35

Re: El Premio.tap

Mensaje por chernandezba » 24 Abr 2016, 00:17

No sé si tendrá que ver esto con el tema de que en ZEsarUX solo vaya la primera vez... No será que cambias el control de joystick? Quiero decir, los cursores del teclado emulan lo que diga la opcion de joystick emulation. Si ahí dice que emulan kempston, solo emularan kempston y no actuarán para nada como cursores de spectrum
Para que funcionen como cursores debes indicar en joystick emulation: cursor (o cursor +shift).
Estoy seguro que tiene que haber una explicación muy lógica al hecho de que vaya la primera vez y no las siguientes , cuando tenga un rato lo pruebo
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux

Avatar de Usuario
chernandezba
Mensajes: 832
Registrado: 02 Oct 2015, 23:35

Re: El Premio.tap

Mensaje por chernandezba » 24 Abr 2016, 00:20

javidoom escribió:
antoniovillena escribió: GenRom 0 8 1 0 32 "ZX Spectrum 48K" 48.rom 48.tap
Holas

Imagino que esto será para el ZXUno real, .
Tanto en real como en ZEsarUX ;)
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux

Avatar de Usuario
antoniovillena
Mensajes: 2611
Registrado: 27 Sep 2015, 20:41

Re: El Premio.tap

Mensaje por antoniovillena » 24 Abr 2016, 00:25

javidoom escribió:
antoniovillena escribió: GenRom 0 8 1 0 32 "ZX Spectrum 48K" 48.rom 48.tap
Holas

Imagino que esto será para el ZXUno real, y también imagino que usando tal comando, se crea una configuración de máquina lo más parecido a un 48k pelado no?

Me interesa bastante, porque ... y aquí va la pregunta:

Podré en el ZXUno tener una configuración lo más parecida a un gomas 48k sin kempston, sin audio AY, sin ulaplus... sin nada... vamos... lo más parecido a un gomas de fábrica? Y un 128k? :chocala!: Y cargarlo todo desde cinta.

(Y perdón si pregunto algo ovbio...)

Un saludo.
El ZX-Uno es siempre la misma máquina que corre con todo el hardware. Los puertos están explicados en este wiki:

http://zxuno.com/wiki/index.php/ZX_Spectrum

Algunas cosas se pueden desactivar, otras no. Y otras cosas como la paginación tienen un bit de bloqueo que no permite reactivarlo hasta el próximo master reset (funciona de la misma forma que en un 128K/+2A).

Avatar de Usuario
carmeloco
Mensajes: 749
Registrado: 25 Dic 2015, 12:02

Re: El Premio.tap

Mensaje por carmeloco » 24 Abr 2016, 02:07

antoniovillena escribió:A la hora de cargar una ROM en la lista, se pueden configurar diferentes aspectos de la máquina. La máquina que viene seleccionada en realidad no existe, pero está así porque es la que más flexibilidad nos da. Se trata de un +2A con la ROM de 48K en los 4 bancos, timings de 48K y DivMMC activado.

Para que el juego te cargue tienes que añadir una ROM a la lista con el siguiente comando:

GenRom 0 8 1 0 32 "ZX Spectrum 48K" 48.rom 48.tap

Esto provoca que nada más arrancar esté desactivada la paginación.
Probado con esta rom. Tampoco funciona. Lo he probado forzando el uso del DivMMC y también desactivando del DivMMC y cargando el tap por audio (previa conversión del mismo a wav), y nada, hace lo mismo, el juego no hace ni caso a las teclas.

javidoom
Mensajes: 51
Registrado: 19 Mar 2016, 12:11

Re: El Premio.tap

Mensaje por javidoom » 24 Abr 2016, 02:57

chernandezba escribió:
javidoom escribió:
antoniovillena escribió: GenRom 0 8 1 0 32 "ZX Spectrum 48K" 48.rom 48.tap
Holas

Imagino que esto será para el ZXUno real, .
Tanto en real como en ZEsarUX ;)
Fantástico! Acabo de bajar la utilidad GENROM y con la línea que ha comentado Antonio, he generado el 48.tap que he metido en el SETUP del ZXUno, y arrancado con él. (El nombre asignado y número sale una línea en blanco... pero tanto da...)
El juego funciona con cursores bien si desactivamos en Zesarux el joystick, y es la primera vez que se carga.
carmeloco escribió:A mi en Spectaculator y en fuse, me funciona siempre, pero en un :zxuno: real, no me funciona ni desactivando los joysticks con .joyconf
El tema sería pues poder desactivar completamente el joystick, o algo para que el juego sepa que no tiene el interface conectado... no?
Y con joystick kempston tampoco te funciona?

"Y una cosa paralela y rápida, cómo se guardan los cambios hechos en los menús Zesarux? Cada vez que arranco el emulador, me toca reconfigurarlo, se puede?"

Gracias y un saludo!
Vintagenarios powaaa!

Avatar de Usuario
chernandezba
Mensajes: 832
Registrado: 02 Oct 2015, 23:35

Re: El Premio.tap

Mensaje por chernandezba » 24 Abr 2016, 08:24

Para guardar la configuración, ya te aviso que ZEsarUX no guarda la configuración.
Pero si que la lee de un archivo de configuración cada vez que arranca. Ese archivo se crea si no existe y debes editarlo a mano. Las opciones que hay que meter en el son las mismas que ves si ejecutas el emulador en consola y le pasas la opción --help o --experthelp.
El archivo se llama .zesaruxrc y lo encuentras en la carpeta de inicio de tu usuario (en Windows típicamente en c:\users\tunombre)
Sigue intrigandome mucho porque no funciona la segunda vez... Entiendo que alguien lo ha probado en ZEsarUX, en spectrum 48k (y no en zxuno), correcto?
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux

Avatar de Usuario
chernandezba
Mensajes: 832
Registrado: 02 Oct 2015, 23:35

Re: El Premio.tap

Mensaje por chernandezba » 24 Abr 2016, 10:45

Ya está, misterio resuelto. Le venía dando vueltas desde ayer y he podido confirmar mi teoría al probarlo. La respuesta va a ser un pelin técnica de información interna de ZEsarUX.
Primero: ZEsarUX arranca en modo real vídeo desactivado. Real vídeo es un concepto del emulador, que quiere decir que cuando está activo, la pantalla se redibuja exactamente igual que en spectrum. Además, con ese modo activo, la lectura de un puerto no asignado, devuelve el byte de pantalla que lee la ula.
Con real video desactivado, la pantalla se redibuja de una manera mucho más rápida, y la lectura de puertos no asignados siempre devuelve el valor 255.
Real vídeo activado consume más cpu que desactivado, por eso el emulador se inicia con esa característica desactivada.
Desde display settings podemos activar manualmente real vídeo, y también si os fijáis hay una opción que dice 'autodetect real vídeo'. Esto básicamente lo que hace que, si esta activado, en determinados eventos se activa automáticamente el real vídeo. Que eventos son esos? Pues un cambio muy rápido de color del borde, cosa que , sin real vídeo activo, no se podría visualizar y por eso el emulador lo activa. Otro caso en que se activa es cuando se lee un puerto no asignado. Cuando eso sucede, se activa real vídeo.

Ahora bien, que es lo que pasa con ese juego? Se inicia el emulador sin real vídeo. Carga el juego y lo que hace es leer un puerto no asignado (probablemente el del joystick kempston). El emulador auto activa el real vídeo, pero el primer valor que lee del puerto es un 255 (debido a que se estaba dibujando la pantalla sin real vídeo y ese es el valor por defecto),
Entonces el juego ve el valor 255 y deduce que no hay interfaz kempston , cosa que habilita las teclas 56780 para jugar. Y aparentemente no vuelve a hacer esa detección de kempston en el juego, solo la hace al iniciarlo.
A partir de ahí el emulador tiene real vídeo activo y las lecturas sobre puertos no usados devuelve el valor que lee la ula de pantalla (una ráfaga de valores 255 y valores de pixeles y atributos de pantalla). La lectura del kempston también devolverá ese valor de la ula, pues el emulador arranca por defecto con emulación de cursores y no emulación de kempston.
Qué pasa al volver a cargar el juego? Muy simple. El juego carga, lee del puerto del kempston, ve que no devuelve 255 y deduce que por tanto hay kempston conectado. Entonces las teclas 56780 no funcionan y solo se mueve la nave con kempston. Hay que decir aquí que si abres el menú del emulador y cambias la emulación de joystick a kempston, podrás mover la nave sin problemas con los cursores.
Con todo esto, si desactivas la opción de auto activar real vídeo, y tienes real vídeo desactivado, y la emulación de joystick de tipo cursors (y no kempston), el juego siempre leerá un 255 en el puerto de kempston y siempre se jugará con teclas 56780.
Comentar aquí que, a nivel técnico, esa detección de kempston me parece un tanto chapucera. La ula como digo retorna valores de pantalla y también valores 255. Entonces el juego asume que, cuando lee un valor diferente de 255 es que hay kempston conectado, deducción completamente invalida. Lo que seguramente sucede en un spectrum real es que esa lectura de puerto se produce en un momento en que la ula lee el border, momento en que siempre retorna 255, y si había kempston pues entonces devolvía diferente de 255 (normalmente un 0 si no tocamos el joystick). Pero bueno debido a que ese juego es muy viejo no vamos a criticar ese método de detección de kempston ;)
En cuanto a cargar en modo 128... Pues ese juego se hizo antes del primer spectrum 128, entonces los efectos de cargarlos en 128 son imprevisibles. Yo lo he probado y el juego funciona pero el sprite de disparo no aparece bien, se ve un sprite completamente aleatorio.

En fin espero no haber sido muy pesado con la respuesta pero el tema no me dejaba dormir, jejejej


Saludos
César
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux

Responder