ZEsarUX estable 7.2

Emuladores y aplicaciones que ayudarán a la perpetuación del Spectrum y su software en el futuro

Moderador: Sir Cilve Sinclair

ZEsarUX estable 7.2

Notapor chernandezba el Mie Abr 10, 2019 9:35 pm

Hola!

He subido una nueva versión estable de ZEsarUX, la 7.2!

Para descargarla, como siempre, id a la parte de descargas del proyecto en GitHub:

https://github.com/chernandezba/zesarux/releases

Hay versiones binarias compiladas para:
-Linux
-Mac
-Windows
-Raspberry Pi

Y por supuesto también el código fuente para aquellos que se lo quieran compilar por ellos mismos:

https://github.com/chernandezba/zesarux/


No olvidéis tampoco el paquete de extras, con montones de juegos, demos, programas y documentación.

Los cambios son:

Version 7.2. 10 April 2019 - Neula edition


Improved menu environment:
-Added new menu window type: ZX Vision. GUI Windows can be moved, resized, scrolled, minimized, closed, and change the focus to the background
-Windows can be scrolled using mouse wheel
-Warning and Error window messages now show an animation
-Added first-aid help windows

Added Z80 assembler
Added setting to specify configuration file
Added key to save text windows contents to a file
Added setting to send a final space after every word in the osd adventure keyboard
Added Dandanator CPC emulation
Added machine Amstrad CPC 4128
Added CPC machines support to ZSF snapshots
Added tape to wav converter (tap, tzx, o, p to wav)
Added text driver (curses, stdout, simpletext) for Chloe 80x24 mode


Improved Debugger:
-Now you can disassemble on the Step-to-step mode from the Debug cpu menu
-Now you can assemble from the Debug cpu menu
-Added Chloe memory Zone

Improved ZRCP:
-commands smartload and snapshot-load are more intelligent now
-running in verbose or limit mode, or cpu-step command, can now update the display inmediately (having real video setting on)
-added commands: assemble, get-cpu-frequency, get-cpu-turbo-speed, get-tstates, get-tstates-partial, load-binary, reset-tstates-partial

Improved sprite viewer:
-you can view sprites up to 512x512
-you can export sprites to C source code file

Improved file selector:
-now it remembers the last files used
-Windows: now you can use up to 20000 files in the same directory
-added drive selector (press shift-d). On Windows, allows you to change drive unit. On Linux and Mac, changes to /media or /Volumes folder

Improved disassemble window:
-now you can export the disassemble to text file
-you can now see the full opcode when debugging Sinclair QL
-you can now show/hide hexadecimal dump of every opcode

Improved hexadecimal editor:
-now showing subzones information

Improved audio: silence detector is disabled by default. That should fix some Windows audio problems. Check Settings->Audio->Silence detector if you have configuration autosaving enabled
Improved vu-meters: high volumes are shown in red
Improved MMC emulation: allow non-standard mmc file sizes
Improved compiled Mac version: default version is faster than before (uses O2 optimization)


Fixed visual glitches in some menus when Pentagon machine and real video, or when enabling interlaced: audio wave, visualmem, ay piano, wave piano, view sprites
Fixed triggering "opcode" condition breakpoint
Fixed emulating Inves interrupt bug
Fixed segmentation fault when showing electron on debug


Changes in TBBlue emulation:
-Added Tiles video mode
-Added "reveal" setting to view which pixels are used by a layer
-Added setting to change machine id
-Improved CPU usage:
--Use 4% less cpu time (in my machine) when only ULA and/or Tiles enabled
--Use 1% less cpu time (in my machine) when all layers enabled
-Improved display emulation: now is twice bigger
-Fixed Timex hi-res mode 512x192
-Fixed autoload on tbblue (on normal and also fast boot mode)
-Fixed error managing Layer 2 vertical scroll
-Fixed audio bug: sending a sample to the DAC by using Next registers, it wasn't reseting the silence detection counter, so sound would probably be frozen (and repeated again, and again...)


Some other minor bugfixes and improvements


Disfrutad!

Saludos,
Cesar
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux
Avatar de Usuario
chernandezba
Sabreman
 
Mensajes: 380
Registrado: Mie Oct 17, 2007 5:26 pm

Re: ZEsarUX estable 7.2

Notapor ochobitero el Mie Abr 24, 2019 1:06 pm

hola César, es un placer poder comentar aquí contigo sobre este pedazo de emulador que te has currado.

Querría avisarte de un problema con la pantalla completa. Resulta que si tengo activado el HIPS del firewall y lo pongo en pantalla completa, debe haber algún tipo de acceso no permitido que impide ejecutarse, pero se queda en fondo negro sin que nada responda obligándome a reiniciar el PC.

Podría desactivar el firewall para el emulador, y tampoco sé si hay acceso directo a pantalla completa o si podría haber evitado así el tener que reiniciar el ordenador, pero de todos debería de poder cambiarse de un modo a otro con ALT+ENTER.

Aparte de esto también quería comentarte que el tiempo de carga me parece excesivo para el desarrollo, al menos para mi estilo compulsivo. Si tuviese un modo rápido que cargase el tap con lo mínimo para mostrar el resultado inmediatamente sin ninguna pantalla, ni mensaje, ni espera adicional, y luego poder salir con Escape rápidamente sin pasar por el menú, para mí sería ideal. No he encontrado ningún emulador que haga tal cosa como me gustaría. De momento lo mejor que encontré es Speccy, que tarda 3 segundos (que se me hacen eternos despues de la espera de compilar) y me permite salir rapidamente con Escape que también es importante.
ochobitero
rst 0
 
Mensajes: 11
Registrado: Lun Abr 22, 2019 12:25 pm

Re: ZEsarUX estable 7.2

Notapor chernandezba el Mie Abr 24, 2019 10:53 pm

Hola
Los modos de pantalla completa son bastante experimentales en todos los sistemas operativos

En cuanto a pausas de arranque, mensajes de bienvenida y pausas al salir, ZEsarUX tiene varias opciones para modificar esto
Lánzalo con
—help
Y
—experthelp

Y las veras

Saludos
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux
Avatar de Usuario
chernandezba
Sabreman
 
Mensajes: 380
Registrado: Mie Oct 17, 2007 5:26 pm

Re: ZEsarUX estable 7.2

Notapor ochobitero el Jue Abr 25, 2019 12:42 am

he probado unas cuantas --nosplash --nowelcomemessage --disabletooltips --disable-all-first-aid --disablemenu --verbose 0
y no parece mejorar mucho, el tiempo es superior a 5 segundos.

De todos modos creo que no vale la pena pelearse con todo esto, porque lanzar y cerrar el emulador en cada ejecución directamente es poco eficaz, para el desarrollo se necesitaría que se quedase el emulador permanentemente activo, o al menos pausado hasta la siguiente ejecución.

Soy nuevo en esto y no sé si a lo mejor ya existen formas de integrar el emulador en el desarrollo, he visto por ejemplo que spectnetide lo hace, pero claro te obliga a usar su plugin y demás.

¿Crees que podría existir o encontrar alguna manera de que con el emulador activo se pudiera ejecutar la aplicación (en mi caso el archivo tap) enviando una orden desde el IDE, o la linea de comandos, ya que el emulador lo ejecuto en un bat que a su vez es lanzado por el visual studio code?.

A mí se me ocurre que si el emulador simplemente se pusiera en primer plano cuando detectase que el archivo ha sido modificado (haciendo una comprobación cada segundo por ejemplo), y reiniciase el programa, sería suficiente, posteriormente se pausaría automáticamente al pasar a segundo plano (al pasar el foco al IDE se supone). Aunque es una solución un poco fea que no creo que te guste.
ochobitero
rst 0
 
Mensajes: 11
Registrado: Lun Abr 22, 2019 12:25 pm

Re: ZEsarUX estable 7.2

Notapor Nat el Jue Abr 25, 2019 11:30 am

Hola,

Opciones tiene y bastantes pero en algo me equivocaría porque en cuanto uso --verbose 0 casi podría decir que funciona al revés de lo que espero. Sin esta opción arranca en uno o dos segundos y con ella comienza a salir sin parar información sobre r g b y tarda mucho más en ejecutarse. No sé si eso es lo normal o estoy haciendo algo mal.
Saludos,
Nat
Avatar de Usuario
Nat
Herbert
 
Mensajes: 84
Registrado: Lun Mar 25, 2019 10:31 am

Re: ZEsarUX estable 7.2

Notapor chernandezba el Jue Abr 25, 2019 3:17 pm

natohara escribió:Hola,

Opciones tiene y bastantes pero en algo me equivocaría porque en cuanto uso --verbose 0 casi podría decir que funciona al revés de lo que espero. Sin esta opción arranca en uno o dos segundos y con ella comienza a salir sin parar información sobre r g b y tarda mucho más en ejecutarse. No sé si eso es lo normal o estoy haciendo algo mal.


Esto no es así necesariamente. Verbose 0 está siempre a 0 por defecto. Si te sale toda esa info en consola es porque lo has cambiado tu
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux
Avatar de Usuario
chernandezba
Sabreman
 
Mensajes: 380
Registrado: Mie Oct 17, 2007 5:26 pm

Re: ZEsarUX estable 7.2

Notapor chernandezba el Jue Abr 25, 2019 3:21 pm

ochobitero escribió:he probado unas cuantas --nosplash --nowelcomemessage --disabletooltips --disable-all-first-aid --disablemenu --verbose 0
y no parece mejorar mucho, el tiempo es superior a 5 segundos.

De todos modos creo que no vale la pena pelearse con todo esto, porque lanzar y cerrar el emulador en cada ejecución directamente es poco eficaz, para el desarrollo se necesitaría que se quedase el emulador permanentemente activo, o al menos pausado hasta la siguiente ejecución.

Soy nuevo en esto y no sé si a lo mejor ya existen formas de integrar el emulador en el desarrollo, he visto por ejemplo que spectnetide lo hace, pero claro te obliga a usar su plugin y demás.

¿Crees que podría existir o encontrar alguna manera de que con el emulador activo se pudiera ejecutar la aplicación (en mi caso el archivo tap) enviando una orden desde el IDE, o la linea de comandos, ya que el emulador lo ejecuto en un bat que a su vez es lanzado por el visual studio code?.

A mí se me ocurre que si el emulador simplemente se pusiera en primer plano cuando detectase que el archivo ha sido modificado (haciendo una comprobación cada segundo por ejemplo), y reiniciase el programa, sería suficiente, posteriormente se pausaría automáticamente al pasar a segundo plano (al pasar el foco al IDE se supone). Aunque es una solución un poco fea que no creo que te guste.


5 segundos no tarda en ningún caso en arrancar el emulador. Supongo que te refieres al
Tiempo de carga del tap. Si quieres acelerar la carga de la cinta, o bien usas otro formato que sea snapshot, o activas la opción de acelerate loaders, que está en tape settings

En cuanto a ide y demás, échale un vistazo a esto;
https://github.com/maziac/z80-debug

Se integra con protocolo ZRCP, que es un protocolo de conexión al emulador y que puedes testear mediante telnet
Prueba a activarlo desde settings - debug
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux
Avatar de Usuario
chernandezba
Sabreman
 
Mensajes: 380
Registrado: Mie Oct 17, 2007 5:26 pm

Re: ZEsarUX estable 7.2

Notapor ochobitero el Jue Abr 25, 2019 8:35 pm

vale lo miraré a ver
ochobitero
rst 0
 
Mensajes: 11
Registrado: Lun Abr 22, 2019 12:25 pm

Re: ZEsarUX estable 7.2

Notapor Nat el Vie May 03, 2019 8:45 pm

chernandezba escribió:Esto no es así necesariamente. Verbose 0 está siempre a 0 por defecto. Si te sale toda esa info en consola es porque lo has cambiado tu


Ejecuto el emulador sin opciones, da esta info justo antes de arrancar y el tiempo de carga hasta que veo su ventana es de 5.11"

Código: Seleccionar todo
Debug: set_breakpoint_optimized: Detected possible optimized type=1
Debug: set_breakpoint_optimized: Detected possible optimized type=1
Debug: set_breakpoint_optimized: Set optimized breakpoint operator index 1 type
1 value 5DE4H
Info: Enabling RealVideo
Info: Setting joystick type Cursor&Shift
Info: Setting button -1 to event Up
Debug: Button/Axis -1 is axis number 1 and sign -1
Debug: Event Up has event number: 0
Info: Setting button +1 to event Down
Debug: Button/Axis +1 is axis number 1 and sign 1
Debug: Event Down has event number: 1
Info: Setting button -0 to event Left
Debug: Button/Axis -0 is axis number 0 and sign -1
Debug: Event Left has event number: 2
Info: Setting button +0 to event Right
Debug: Button/Axis +0 is axis number 0 and sign 1
Debug: Event Right has event number: 3
Info: Setting button 3 to event Fire
Debug: Button/Axis 3 is button number 3
Debug: Event Fire has event number: 4
Info: Setting button 0 to event EscMenu
Debug: Button/Axis 0 is button number 0
Debug: Event EscMenu has event number: 5
Info: Setting button 8 to event Enter
Debug: Button/Axis 8 is button number 8
Debug: Event Enter has event number: 6
Info: Setting button 9 to event Smartload
Debug: Button/Axis 9 is button number 9
Debug: Event Smartload has event number: 8
Info: Setting button 5 to event Osdkeyboard
Debug: Button/Axis 5 is button number 5
Debug: Event Osdkeyboard has event number: 10
Info: Setting button 2 to event NumSelect
Debug: Button/Axis 2 is button number 2
Debug: Event NumSelect has event number: 12
Info: Setting button 1 to event NumAction
Debug: Button/Axis 1 is button number 1
Debug: Event NumAction has event number: 13
Info: Setting button 4 to event Aux1
Debug: Button/Axis 4 is button number 4
Debug: Event Aux1 has event number: 15
R Tape loading error, 0:1 ... Just kidding ;)


con las opciones --enable-breakpoints --disableborder --nosplash --nowelcomemessage da esta otra info y el tiempo de carga supera los 7"

Código: Seleccionar todo
páginas y páginas de:
-------
Debug: 32 bit: r: 42 g: 106 b: 181
Debug: tsconf color: 4434. 15 bit: r: 4 g: 10 b: 18

-------
repitiendo una y otra vez con números diferentes. Después

Info: Initializing putpixel_cache
Info: Initializing putpixel_cache of size: 461824 bytes
Info: Clearing putpixel cache
Info: Setting GUI menu zoom to 1
Info: Reset cpu
Info: Initializing AY Chip
Info: Setting AY chip frequency to 1773400 HZ
Info: Initializing CPU Statistics Counter Array
Info: Initializing Video Driver
Info: Init SDL Video Driver
Debug: Calling SDL_Init
Debug: Creating window 512 X 432
Info: Loading keymap
Info: Initializing putpixel_cache
Info: Freeing previous putpixel_cache
Info: Initializing putpixel_cache of size: 461824 bytes
Info: Clearing putpixel cache
Info: Setting GUI menu zoom to 1
Info: Setting putpixel functions to variable zoom
Info: init_footer
Debug: Clearing Footer
Debug: Showing ZEsarUX footer message
Info: Initializing Audio
Debug: Emptying audio buffer
Info: Init SDL Audio Driver, 15600 Hz, sample size: 512
Info: Initializing AY Chip
Info: Setting AY chip frequency to 1773400 HZ
Info: Initializing real joystick
Info: Linux real joystick support disabled on compilation
Debug: FPS: 0
Info: Enabling debug on MMU
Debug: Filling nested function. ID: 0 Name: Debug poke_byte
Debug: Filling nested function. ID: 0 Name: Debug poke_byte_no_time
Debug: Filling nested function. ID: 0 Name: Debug peek_byte
Debug: Filling nested function. ID: 0 Name: Debug peek_byte_no_time
Info: Enabling debug on cpu core
Debug: Adding first core to nested list
Debug: Filling nested function. ID: 0 Name: Debug core
Info: See if we have to load snapshot...
Info: Calling main loop emulator on the main thread as it is required by SDL2
Info: Clearing putpixel cache
Info: width: 512 get_window_width: 256 height: 432 get_window_height: 216
Info: zoom_x: 2 zoom_y: 2 zoom_x_calculated: 2 zoom_y_calculated: 2
Debug: Creating window 512 X 432
Info: init_footer
Debug: Clearing Footer
Debug: Showing ZEsarUX footer message
Debug: Resizing windows due to a previous pending resize
Info: Clearing putpixel cache
Debug: Creating window 512 X 432
Info: init_footer
Debug: Clearing Footer
Debug: Showing ZEsarUX footer message
Paranoid: Mouse motion. X: 416 Y:431 kempston x: 208 y: 40
Debug: Framedrop 0
Debug: Framedrop 1
Debug: Framedrop 2
Debug: Framedrop 3
Debug: Framedrop 4
Debug: Framedrop 5
Debug: Framedrop 6
Debug: Framedrop 7
Debug: Framedrop 8
Debug: Framedrop 9
Debug: Framedrop 10
Debug: Framedrop 11
Debug: Framedrop 12
Debug: Framedrop 13
Debug: Framedrop 14
Debug: Framedrop 15
Debug: Framedrop 16
Debug: Framedrop 17
Debug: Framedrop 18
...

y después otras de "Heatmap", etc.
Saludos,
Nat
Avatar de Usuario
Nat
Herbert
 
Mensajes: 84
Registrado: Lun Mar 25, 2019 10:31 am

Re: ZEsarUX estable 7.2

Notapor chernandezba el Sab May 04, 2019 11:53 pm

Ahí mismo se ve claro. Si aparecen hasta los mensajes de debug es porque el nivel de verbose esta al menos en 3
Lo tendrás grabado en el archivo de configuración
Mete —verbose 0 y listo
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux
Avatar de Usuario
chernandezba
Sabreman
 
Mensajes: 380
Registrado: Mie Oct 17, 2007 5:26 pm

Re: ZEsarUX estable 7.2

Notapor Nat el Dom May 05, 2019 2:17 pm

¡Arreglado! Así tarda menos de un segundo en arrancar, me viene perfecto. Gracias.

Si no pensé en el fichero de configuración es porque nunca lo había modificado antes, no sé cómo ha llegado a tener verbose 4

A propósito, el fichero de configuración está en Documents and Settings... ¿se puede modificar para que esté donde el ejecutable o en una trayectoria específica?
Saludos,
Nat
Avatar de Usuario
Nat
Herbert
 
Mensajes: 84
Registrado: Lun Mar 25, 2019 10:31 am

Re: ZEsarUX estable 7.2

Notapor chernandezba el Sab May 11, 2019 11:11 pm

natohara escribió:¡Arreglado! Así tarda menos de un segundo en arrancar, me viene perfecto. Gracias.

Si no pensé en el fichero de configuración es porque nunca lo había modificado antes, no sé cómo ha llegado a tener verbose 4

A propósito, el fichero de configuración está en Documents and Settings... ¿se puede modificar para que esté donde el ejecutable o en una trayectoria específica?


Con —configfile le dices la ruta al archivo de config
Usa —help y —experthelp veras el montón de opciones que tiene
----

ZEsarUX
ZX Second-Emulator And Released for UniX
https://github.com/chernandezba/zesarux
Avatar de Usuario
chernandezba
Sabreman
 
Mensajes: 380
Registrado: Mie Oct 17, 2007 5:26 pm

Re: ZEsarUX estable 7.2

Notapor Nat el Dom May 12, 2019 2:32 pm

Gracias
Saludos,
Nat
Avatar de Usuario
Nat
Herbert
 
Mensajes: 84
Registrado: Lun Mar 25, 2019 10:31 am

Re: ZEsarUX estable 7.2

Notapor ochobitero el Mar May 14, 2019 2:38 am

no consigo conectar, estoy intentado ejecutar el programa de prueba que hay en github (z80-sample-program) , y sale el error conecction timeout (Error in conecction to ZesarUX!)

Lo inicie con --enable-remoteprotocol como dice el tutorial

He buscado la otra alternativa de activarlo con "Settings"->"Debug"->"Remote protocol" to "Enabled" , pero esa opción no está.

He probado la versión zesarux-debug por si ahora era necesario usar esa pero me sale que necesita pthreadGC-3.dll

no sé qué hacer
ochobitero
rst 0
 
Mensajes: 11
Registrado: Lun Abr 22, 2019 12:25 pm

Re: ZEsarUX estable 7.2

Notapor ochobitero el Jue May 16, 2019 7:34 pm

después de encontrar el dll al ejecutar obtengo unos errores y el ZEsarUX se cierra

mejor lo dejo y sigo de manera rudimentaria, porque estas cosas me desesperan. A ver si con suerte alguien se curra un entorno de desarrollo donde esté todo perfectamente integrado.
ochobitero
rst 0
 
Mensajes: 11
Registrado: Lun Abr 22, 2019 12:25 pm

Siguiente

Volver a Emulación y preservación

¿Quién está conectado?

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