Nueva beta ZEsarUX - preparando para versión estable

Software para o relacionado con el core ZX Spectrum / Software for or related to the ZX Spectrum core
Avatar de Usuario
jsj
Mensajes: 336
Registrado: 21 Nov 2015, 12:48

Re: RE: Re: RE: Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por jsj » 29 Nov 2016, 17:26

chernandezba escribió:
jsj escribió: O el propio ZEsarUX por algún "bug" que sólo se manifieste en Windows.
Bugs pueden haber muchos en el emulador, pero en ese caso no hay bug. Yo simplemente abro el archivo (la imagen SD/MMC) sin ningún tipo de bloqueo, para lectura y escritura, y es Windows quien se encarga de bloquear el acceso al archivo desde cualquier otro sitio.
Esto es algo "normal" en Windows desde hace años, no hay que darle mas importancia. No uséis Windows, como hago yo, y seréis mas felices

Saludos
Pues no sé como abres los ficheros. Pero en Windows es perfectamente posible abrirlos sin que queden bloqueados para lectura y/o escritura.

Ahora bien... como no sé que método usas para abrirlos no sabría orientarte en cómo corregir eso.

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

Re: RE: Re: RE: Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por chernandezba » 29 Nov 2016, 20:23

jsj escribió:
Ahora bien... como no sé que método usas para abrirlos no sabría orientarte en cómo corregir eso.
Gracias. Pero me da igual. Yo no hago nada especial, es un simple fopen de toda la vida. Como digo el problema lo tiene windows, no mi emulador. Además no es común que el emulador use un archivo (por ejemplo el de la emulación de mmc) y tu desde "fuera" quieras modificarlo.
Como ya he dicho muchas veces, la versión Windows está "de rebote", mi prioridad más que absoluta es la versión Unix. Lo de Windows es un extra por el que no pienso complicarme la vida :llamarada:

Saludos
César
----

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

Avatar de Usuario
jsj
Mensajes: 336
Registrado: 21 Nov 2015, 12:48

Re: RE: Re: RE: Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por jsj » 29 Nov 2016, 20:46

chernandezba escribió:Gracias. Pero me da igual. Yo no hago nada especial, es un simple fopen de toda la vida. Como digo el problema lo tiene windows, no mi emulador.
El problema no es de Windows; y se puede demostrar muy fácilmente. El problema es ese "fopen de toda la vida"... :silbando:
chernandezba escribió:Además no es común que el emulador use un archivo (por ejemplo el de la emulación de mmc) y tu desde "fuera" quieras modificarlo.
Como ya he dicho muchas veces, la versión Windows está "de rebote", mi prioridad más que absoluta es la versión Unix. Lo de Windows es un extra por el que no pienso complicarme la vida :llamarada:
Ok. Al fin y al cabo yo tampoco uso tu emulador así que no insistiré más. :mario:

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

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por chernandezba » 29 Nov 2016, 20:56

https://linux.die.net/man/3/fopen

Ver flag:

O_EXCL

Flag que NO uso.

Repito en que yo uso llamadas Unix, y según POSIX, eso no es exclusivo por defecto. Luego lo que haga mingw o windows por debajo me da bastante igual

Pero bueno no creo que valga la pena insistir
----

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

Avatar de Usuario
Haplo
Mensajes: 368
Registrado: 05 Oct 2015, 13:51
Ubicación: Ciudad Real

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por Haplo » 29 Nov 2016, 21:31

César el tema del archivo .MMC sólo le es útil a los desarrolladores en principio.Solemos modificar un archivo con una nueva versión para probar si se corrige el bug que estás viendo en el emulador. Ahora mismo hay que cerrar y abrir ZEsarUX para que relea el .MMC y así ejecutar el archivo modificado, con lo que breakpoints y demas se borra. Un usuario normal (el 99%) no lo necesita. Comprendo tu postura y supongo que si hubiera solución fácil ya la habrías puesto. Yo estoy muy contento con cómo funciona todo, pero siempre nos mola rizar el rizo :)

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

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por chernandezba » 29 Nov 2016, 22:24

He revisado mi código. Por una parte:
El archivo mmc se abre, se carga en memoria interna y se cierra el archivo justo al activar mmc emulation. Por tanto, mientras está activado, NO leo nada de disco
Todas las operaciones de lectura y escritura de mmc las hago de mi memoria interna y no del disco
Lo único que hace es que , cuando se escribe en mmc, vuelco todo el contenido de mi memoria al disco. Y se abre y se cierra el archivo.
Por tanto, si desde fuera el Windows no os deja tocar el mmc es culpa solo y solo de Windows. Pues como digo, yo abro y cierro el archivo SIEMPRE. Será que Windows no hace ese fclose que yo sí que hago? A saber... y sinceramente no me importa
Y el hecho de que tengáis que cerrar ZEsarUX y volver a entrar es culpa solo de Windows. En otros sistemas, yo puedo modificar la sd 'desde fuera', la misma que usa ZEsarUX, y en el emulador es suficiente con volver a seleccionar el mismo archivo mmc para que lo relea.
Por mi parte no tengo más que hablar sobre este tema.
Insisto: todo lo que sean problemas de Windows no los voy a gestionar. ZEsarUX, como parte de su nombre indica, es para Unix. Si veis el código, no veréis nada de código tipo Windows. Solo hay una rutina de ordenación de archivos que en Mingw no existe (y en unix si) y tuve que implementar yo
Última edición por chernandezba el 29 Nov 2016, 22:26, editado 1 vez en total.
----

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

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

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por chernandezba » 29 Nov 2016, 22:25

Haplo escribió:. Yo estoy muy contento con cómo funciona todo, pero siempre nos mola rizar el rizo :)
Dichosos desarrolladores :llamarada:
----

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

Avatar de Usuario
Haplo
Mensajes: 368
Registrado: 05 Oct 2015, 13:51
Ubicación: Ciudad Real

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por Haplo » 29 Nov 2016, 23:23

Ahora que lo ha explicado lo entiendo perfectamente. Creo que había una confusión entre acceso a fichero abierto y cómo funciona lo que hace César. Evidentemente por mucho que modifiquemos el .mmc desde el exterior, si ZEsarUX no trabaja con el fichero directamente (salvo para grabar), ya nos podemos hartar de llorar, que el emulador solo se enterará de los cambios si le recargamos el .mmc. :tepego:

Efectivamente no es problema del emulador ni de windows, es de concepto de funcionamiento.

mmm, ahora si que molaría tener macros de atajos de teclado para asociar la operación de reselección de .mmc a una teclita :)

Avatar de Usuario
yombo
Mensajes: 487
Registrado: 05 Oct 2015, 14:10

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por yombo » 30 Nov 2016, 03:51

Haplo escribió:Ahora que lo ha explicado lo entiendo perfectamente. Creo que había una confusión entre acceso a fichero abierto y cómo funciona lo que hace César. Evidentemente por mucho que modifiquemos el .mmc desde el exterior, si ZEsarUX no trabaja con el fichero directamente (salvo para grabar), ya nos podemos hartar de llorar, que el emulador solo se enterará de los cambios si le recargamos el .mmc. :tepego:

Efectivamente no es problema del emulador ni de windows, es de concepto de funcionamiento.
chernandezba escribió:En otros sistemas, yo puedo modificar la sd 'desde fuera', la misma que usa ZEsarUX, y en el emulador es suficiente con volver a seleccionar el mismo archivo mmc para que lo relea.
Si fuera cierto lo que dices Haplo, entonces por qué sí funciona en Unix?

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

Re: Nueva beta ZEsarUX - preparando para versión estable

Mensaje por chernandezba » 30 Nov 2016, 08:46

En todos los sistemas el funcionamiento es el que digo. Por tanto como dice haplo:

-Dado que el emulador lee toda la mmc/sd en memoria al seleccionarla desde el menú, aunque se haga algún cambio desde fuera, el emulador NO va a ver esos cambios a no ser que se vuelva a seleccionar el archivo de nuevo desde el menú, que en ese caso, cargará de nuevo el archivo en memoria (e insisto, lo deja luego siempre cerrado).

Si no se re-selecciona el archivo desde menú, el emulador no va a ver esos cambios, da igual el sistema: ni Linux, ni Mac, ni Windows, ni nada que acabe en UX que se os ocurra :smashPC:

Es lo que ya he dicho varias veces

Saludos
----

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

Responder