[UPDATED] Retro Virtual Machine v1.0.1 disponible!!!
Moderador: Sir Cilve Sinclair
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
[UPDATED] Retro Virtual Machine v1.0.1 disponible!!!
Buenas a todos primero me presento.
Soy Juan Carlos de Alicante y soy el autor de este nuevo emulador para OS X.
Podeis encontrar mucha mas información en:
http://www.retrovirtualmachine.org
Así como en sus manuales (os dejo aquí el enlace al manual en Castellano)
http://www.retrovirtualmachine.org/manuals/manSpa.pdf
El objetivo en esta primera versión es que el emulador sea muy usable y ejecutar lo más fielmente posible los modelos emulados tal como eran sin periféricos. Para programadores ya tendréis más funcionalidades en siguientes versiones
Espero que os guste y todas las dudas curiosidades o fallos que encontréis lo hablamos por aquí.
Actualización
He encontrado un bug bastante severo que podia impedir ejecutarse al emulador.
Por favor descargar y actualizar desde la web.
Un saludo.
Soy Juan Carlos de Alicante y soy el autor de este nuevo emulador para OS X.
Podeis encontrar mucha mas información en:
http://www.retrovirtualmachine.org
Así como en sus manuales (os dejo aquí el enlace al manual en Castellano)
http://www.retrovirtualmachine.org/manuals/manSpa.pdf
El objetivo en esta primera versión es que el emulador sea muy usable y ejecutar lo más fielmente posible los modelos emulados tal como eran sin periféricos. Para programadores ya tendréis más funcionalidades en siguientes versiones
Espero que os guste y todas las dudas curiosidades o fallos que encontréis lo hablamos por aquí.
Actualización
He encontrado un bug bastante severo que podia impedir ejecutarse al emulador.
Por favor descargar y actualizar desde la web.
Un saludo.
Última edición por jcgamestoy el Jue Sep 03, 2015 7:17 pm, editado 1 vez en total.
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Hola
Bueno ya hemos hablado en otros foros pero ya que te veo por aquí, una pregunta:
Que es el flag Q?
Se nota que tienes práctica con diseño gráfico, tanto en el emulador como en la documentación, cosa que a mi me falta
Saludos
Bueno ya hemos hablado en otros foros pero ya que te veo por aquí, una pregunta:
Que es el flag Q?
Se nota que tienes práctica con diseño gráfico, tanto en el emulador como en la documentación, cosa que a mi me falta
Saludos
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
Re: Retro Virtual Machine v1.0.0 disponible!!!
Bueno he puesto flag q y tenia que haber puesto registro q.
Es otra característica undocumentada del Z80. Creo que la descubrio Patrik Rak autor del emulador ZXDS
http://www.worldofspectrum.org/forums/d ... edirect/p1
Y aqui una bateria de tests (los paso todos ni siquiera fuse lo hace ) que hizo Patrik por acá:
http://www.worldofspectrum.org/forums/d ... ter#latest
Es otra característica undocumentada del Z80. Creo que la descubrio Patrik Rak autor del emulador ZXDS
http://www.worldofspectrum.org/forums/d ... edirect/p1
Y aqui una bateria de tests (los paso todos ni siquiera fuse lo hace ) que hizo Patrik por acá:
http://www.worldofspectrum.org/forums/d ... ter#latest
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Conozco esos tests... Muchas veces se toma Fuse como referencia y por ejemplo no emula memptr, según el mismo Philip Kendall no lo emulará nunca, pues es una feature de poco uso (y tal vez tenga razón). ZEsarUX pasa todos esos test excepto el BIT n,(HL).
He leido eso del flag Q y no acabo de entender cual es el comportamiento final, leo como conclusión:
" In actual fact, we'll probably model our Q register in such a way that Q takes the value 0 if flags change, but takes the value F & ((1 << 3) | (1 << 5)) when flags are left unchanged."
O sea que si hay cambio de flags en alguna instrucción, se resetea a 0, y sino, pues tiene el valor que se indica con la fórmula?
Creo igualmente que el flag Q no se comprueba en esos test, a no ser que sea con la instrucción BIT n,(HL), pues es la única que falla en mi emu (y no implemento el Q).
Por cierto, tu emulador... código cerrado? No hay código fuente para descargar?
He leido eso del flag Q y no acabo de entender cual es el comportamiento final, leo como conclusión:
" In actual fact, we'll probably model our Q register in such a way that Q takes the value 0 if flags change, but takes the value F & ((1 << 3) | (1 << 5)) when flags are left unchanged."
O sea que si hay cambio de flags en alguna instrucción, se resetea a 0, y sino, pues tiene el valor que se indica con la fórmula?
Creo igualmente que el flag Q no se comprueba en esos test, a no ser que sea con la instrucción BIT n,(HL), pues es la única que falla en mi emu (y no implemento el Q).
Por cierto, tu emulador... código cerrado? No hay código fuente para descargar?
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
Re: Retro Virtual Machine v1.0.0 disponible!!!
Efectivamente yo lo hago de la siguiente manera.
Si la instrucción cambia flags q=1 sino q=0
y luego en scf y ccf los bits 3 y 5:
si q=1 son una copia del registro A
si q=0 son A or F (solo los bits 3 y 5) vamos en mi código:
y
En cuanto a lo de código abierto y cerrado utilizo dentro otro de mis proyectos que de momento es de código cerrado y no hago RVM publico porque ni siquiera podriais compilarlo sin esa parte.
Una de las cosas que tengo pendientes es eliminar esa parte para poder sacarlo en código abierto.
La licencia sera BSD lo más seguro pero ya veremos.
Otra cosa me he bajado ZEsarUX 3.0 (hay alguna version más reciente) para Mac (que cantidad de opciones ) y no pasa los test estos (z80full.tap) falla justamente en scf ccf.
En cuanto a lo de bit n,(hl) si te falla es por el memptr el registro q no influye aquí como lo hago yo:
Un saludo y en todo lo que pueda ayudar ya sabes
Si la instrucción cambia flags q=1 sino q=0
y luego en scf y ccf los bits 3 y 5:
si q=1 son una copia del registro A
si q=0 son A or F (solo los bits 3 y 5) vamos en mi código:
Código: Seleccionar todo
void scf(z80* z)
{
uint8_t v=z->r.q ? (z->r.a & 0x28) : ((z->r.f | z->r.a) & 0x28);
z->r.f=(z->r.f & 0xc4) | v | 0x1;
z->r.q=1;
z->T=4;
}
Código: Seleccionar todo
void ccf(z80* z)
{
uint8_t c=z->r.f & 0x1;
uint8_t nc=c ? 0 : 0x1;
uint8_t v=z->r.q ? (z->r.a & 0x28) : ((z->r.f | z->r.a) & 0x28);
z->r.f=(z->r.f & 0xc4) | v | (c<<4) | nc;
z->r.q=1;
z->T=4;
}
Una de las cosas que tengo pendientes es eliminar esa parte para poder sacarlo en código abierto.
La licencia sera BSD lo más seguro pero ya veremos.
Otra cosa me he bajado ZEsarUX 3.0 (hay alguna version más reciente) para Mac (que cantidad de opciones ) y no pasa los test estos (z80full.tap) falla justamente en scf ccf.
En cuanto a lo de bit n,(hl) si te falla es por el memptr el registro q no influye aquí como lo hago yo:
Código: Seleccionar todo
z->r.f=(sz53cFlags[v] & 0x80) | (sz53cFlags[z->r.mptrh] & 0x28) | ((v) ? 0x10 : 0x54) | (z->r.f & 0x1);
z->r.q=1;
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Gracias. Lo que no acabo de entender es como se lee el valor de ese flag Q, o sólo influye en algunas instrucciones como SCF o CCF?jcgamestoy escribió:Efectivamente yo lo hago de la siguiente manera.
Si la instrucción cambia flags q=1 sino q=0
y luego en scf y ccf los bits 3 y 5:
si q=1 son una copia del registro A
si q=0 son A or F (solo los bits 3 y 5) vamos en mi código:
Si para cada instrucción que cambia o no los flags (todas) tengo que meter una parte de código, creo que casi que no lo agregaré. Todo lo que sea meter cosas en el core de la cpu representa usar mas cpu real y hacer que vaya mas lento. Total, no habrá ningún juego que no funcione debido a eso, sólo estos tests..
Incluso la emulación que tengo de memptr se puede desactivar al compilar el código para ahorrar ciclos de cpu real.
Bueno eso ya depende de cada uno... Incluso podrías publicar esa parte de código abierto, aunque no se pueda compilar.
En cuanto a lo de código abierto y cerrado utilizo dentro otro de mis proyectos que de momento es de código cerrado y no hago RVM publico porque ni siquiera podriais compilarlo sin esa parte.
Una de las cosas que tengo pendientes es eliminar esa parte para poder sacarlo en código abierto.
Si, efectivamente falla. Durante mucho tiempo mi test de referencia fue el z80tests.tap, hice lo imposible para que se ejecutase bien (donde hay test de scf y ccf que sí que pasan) y luego descubrí otros tests mas, y la pesadilla volvió a empezar..
La licencia sera BSD lo más seguro pero ya veremos.
Otra cosa me he bajado ZEsarUX 3.0 (hay alguna version más reciente) para Mac (que cantidad de opciones ) y no pasa los test estos (z80full.tap) falla justamente en scf ccf.
En cuanto a versiones de ZEsarUX, la última estable es la 3.0. Hay una beta de la 3.1 compilada para Windows aquí:
http://sourceforge.net/projects/zesarux ... _versions/
Y para el resto de sistemas puedes siempre bajar el código del repositorio y compilar:
http://sourceforge.net/p/zesarux/code/ci/master/tree/
Gracias. Como te digo esto del flag Q me lo apunto pero no lo agregaré.
En cuanto a lo de bit n,(hl) si te falla es por el memptr el registro q no influye aquí como lo hago yo:
Un saludo y en todo lo que pueda ayudar ya sabesCódigo: Seleccionar todo
z->r.f=(sz53cFlags[v] & 0x80) | (sz53cFlags[z->r.mptrh] & 0x28) | ((v) ? 0x10 : 0x54) | (z->r.f & 0x1); z->r.q=1;
Saludos
César
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Hola Juan Carlos.
He probado tu emulador y debo decirte que la parte gráfica esta muy currada, funciona con fluidez y el consumo de cpu no es elevado para todo lo que hace.
Ahora bien, yo cambiaría dos cosas:
1) Al iniciar una máquina hay que grabar la configuración en disco... No hay una manera de pulsar el botón Add, escoger máquina y que no haya que grabarla? Es un tanto engorroso...
2) Después de esto la máquina aparece creada pero apagada, con la pantalla con nieve.... El efecto está super chulo pero seria mejor que arrancase directamente. Sinceramente creo que soy muy torpe porque me ha costado encontrar la manera de hacer el "Power On"
Y veo que no soportas ningún formato de snapshot... excepto uno tuyo propio. Se echa mucho de menos sobretodo abrir archivos .z80, hay montón de juegos por ahi que solo están en ese formato. Además, si alguien ha grabado un snapshot en otro emulador, probablemente lo habrá hecho en formato .z80, y no podrá cargarlo en tu emulador. Ya me imagino que lo sabías de sobra, pero es algo que la gente te pedirá.
Eso si, en cintas tienes montones de formatos, y otros mas recientes, PZX y CSW. Por cierto, hay cintas publicadas en ese formato?
Y otro comentario mas... poniendo el modo de video LCD-RGB, que creo que es el que se ve perfecto, los pixeles son ligeramente mas grandes de lo normal... Comparando con zxsp o ZEsarUX tus pixeles son ligeramente mas grandes, digamos que tu pantalla es mas o menos un 10% mas grande que en otros emuladores... Hay manera de ponerlo a escala 1:1 normal?
Por lo demás, gran emulador. Buen trabajo!
Saludos
César
He probado tu emulador y debo decirte que la parte gráfica esta muy currada, funciona con fluidez y el consumo de cpu no es elevado para todo lo que hace.
Ahora bien, yo cambiaría dos cosas:
1) Al iniciar una máquina hay que grabar la configuración en disco... No hay una manera de pulsar el botón Add, escoger máquina y que no haya que grabarla? Es un tanto engorroso...
2) Después de esto la máquina aparece creada pero apagada, con la pantalla con nieve.... El efecto está super chulo pero seria mejor que arrancase directamente. Sinceramente creo que soy muy torpe porque me ha costado encontrar la manera de hacer el "Power On"
Y veo que no soportas ningún formato de snapshot... excepto uno tuyo propio. Se echa mucho de menos sobretodo abrir archivos .z80, hay montón de juegos por ahi que solo están en ese formato. Además, si alguien ha grabado un snapshot en otro emulador, probablemente lo habrá hecho en formato .z80, y no podrá cargarlo en tu emulador. Ya me imagino que lo sabías de sobra, pero es algo que la gente te pedirá.
Eso si, en cintas tienes montones de formatos, y otros mas recientes, PZX y CSW. Por cierto, hay cintas publicadas en ese formato?
Y otro comentario mas... poniendo el modo de video LCD-RGB, que creo que es el que se ve perfecto, los pixeles son ligeramente mas grandes de lo normal... Comparando con zxsp o ZEsarUX tus pixeles son ligeramente mas grandes, digamos que tu pantalla es mas o menos un 10% mas grande que en otros emuladores... Hay manera de ponerlo a escala 1:1 normal?
Por lo demás, gran emulador. Buen trabajo!
Saludos
César
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
Re: Retro Virtual Machine v1.0.0 disponible!!!
por partes
La idea es que te puedas guardar estos archivos en una carpeta como Dropbox y sincronizar tus maquinas entre varios equipos.
Ademas esta pensado para la futura emulación del DIVIDE (y otras cosas que no puedo contar) para emularlo como realmente se utiliza en la máquina, es decir que el usuario pueda meter un cassette y flashear la rom del DIVIDE etc...
Cierto lo estoy repensando y lo mejor es lanzar un mensaje que ponga "CMD+ENTER to power on" de todas formas se puede encender desde los controles de la parte de abajo o bien desde el menú machine.
Si soporta Z80 y SNA tienes que entrar en la gestión de snapshots (cmd+8) darle al botón import y puedes importar las snapshots o exportarlas. Se quedaran guardadas dentro de esta máquina y desde aquí también puedes renombrarlas o eliminarlas.
Si en CSW hay un monton (basicamente es un Wav comprimido exacto de la cinta) y PZX esta el paquete de pruebas que hizo Patrik Rak que lo puedes bajar aquí:
http://zxds.raxoft.cz/pzx.html
PZX es una gozada casi tan simple como TAP y soporta TODO lo que puede hacer TZX pero sin tantos dolores de cabeza. Ojalá la gente se concienciará y pasaramos todo a este formato.
Y aprovechando ya me he leído el articulo... Brutal cuando lo asimile te cuento pero creo que no tendré muchos problemas en implementar todas las "features" del inves.
Y estoy haciendo pruebas con ZEsarUX 3.0 y me pasa como a ti, estoy acostumbrado al mío y no me aclaro con cosas:
1) Que es eso de "Real Video" y autodetect "Real Video". Cuando lo activo los fps caen en picado a 17 pero no aumenta el consumo de cpu ¿?
2) Se puede cargar un tzx sin autocarga, o es que el soporte de TZX no es completo o algo yo algo mal porque hay muchos que no me cargan.
3) Que significa el "%" que aparece al lado del modelo y de los fps.
A parte de esto chulisimas todas las opciones que tienes en el menu de depuración.
Un saludo Cesar ya me cuentas.
Juan Carlos
Ya pero hay que decirle donde guardar el archivo (en verdad es un Bundle de os vamos hablando en plata una carpeta) y dentro de este se guardan las snapshots, la configuración del teclado y el estado cuando se cierra el emulador.chernandezba escribió:Hola Juan Carlos.
He probado tu emulador y debo decirte que la parte gráfica esta muy currada, funciona con fluidez y el consumo de cpu no es elevado para todo lo que hace.
Ahora bien, yo cambiaría dos cosas:
1) Al iniciar una máquina hay que grabar la configuración en disco... No hay una manera de pulsar el botón Add, escoger máquina y que no haya que grabarla? Es un tanto engorroso...
César
La idea es que te puedas guardar estos archivos en una carpeta como Dropbox y sincronizar tus maquinas entre varios equipos.
Ademas esta pensado para la futura emulación del DIVIDE (y otras cosas que no puedo contar) para emularlo como realmente se utiliza en la máquina, es decir que el usuario pueda meter un cassette y flashear la rom del DIVIDE etc...
chernandezba escribió: 2) Después de esto la máquina aparece creada pero apagada, con la pantalla con nieve.... El efecto está super chulo pero seria mejor que arrancase directamente. Sinceramente creo que soy muy torpe porque me ha costado encontrar la manera de hacer el "Power On"
Cierto lo estoy repensando y lo mejor es lanzar un mensaje que ponga "CMD+ENTER to power on" de todas formas se puede encender desde los controles de la parte de abajo o bien desde el menú machine.
60 páginas de manual y no os las leeis ninguno.chernandezba escribió: Y veo que no soportas ningún formato de snapshot... excepto uno tuyo propio. Se echa mucho de menos sobretodo abrir archivos .z80, hay montón de juegos por ahi que solo están en ese formato. Además, si alguien ha grabado un snapshot en otro emulador, probablemente lo habrá hecho en formato .z80, y no podrá cargarlo en tu emulador. Ya me imagino que lo sabías de sobra, pero es algo que la gente te pedirá.
Eso si, en cintas tienes montones de formatos, y otros mas recientes, PZX y CSW. Por cierto, hay cintas publicadas en ese formato?
Si soporta Z80 y SNA tienes que entrar en la gestión de snapshots (cmd+8) darle al botón import y puedes importar las snapshots o exportarlas. Se quedaran guardadas dentro de esta máquina y desde aquí también puedes renombrarlas o eliminarlas.
Si en CSW hay un monton (basicamente es un Wav comprimido exacto de la cinta) y PZX esta el paquete de pruebas que hizo Patrik Rak que lo puedes bajar aquí:
http://zxds.raxoft.cz/pzx.html
PZX es una gozada casi tan simple como TAP y soporta TODO lo que puede hacer TZX pero sin tantos dolores de cabeza. Ojalá la gente se concienciará y pasaramos todo a este formato.
Exactamente casi ese 10% y si si entras en las opciones de video justo debajo hay un botón que pone OVERSCAN aquí puedes configurarlo como quieras en la opción FULL PAL se muestra el frame completo 384x288 como haces tu en ZEsarUX pero yo lo hice así ya que en un CRT nunca podías ver la resolución PAL completa desde aquí lo puedes configurar al gusto de cada uno.chernandezba escribió:Y otro comentario mas... poniendo el modo de video LCD-RGB, que creo que es el que se ve perfecto, los pixeles son ligeramente mas grandes de lo normal... Comparando con zxsp o ZEsarUX tus pixeles son ligeramente mas grandes, digamos que tu pantalla es mas o menos un 10% mas grande que en otros emuladores... Hay manera de ponerlo a escala 1:1 normal?
Por lo demás, gran emulador. Buen trabajo!
Saludos
César
Y aprovechando ya me he leído el articulo... Brutal cuando lo asimile te cuento pero creo que no tendré muchos problemas en implementar todas las "features" del inves.
Y estoy haciendo pruebas con ZEsarUX 3.0 y me pasa como a ti, estoy acostumbrado al mío y no me aclaro con cosas:
1) Que es eso de "Real Video" y autodetect "Real Video". Cuando lo activo los fps caen en picado a 17 pero no aumenta el consumo de cpu ¿?
2) Se puede cargar un tzx sin autocarga, o es que el soporte de TZX no es completo o algo yo algo mal porque hay muchos que no me cargan.
3) Que significa el "%" que aparece al lado del modelo y de los fps.
A parte de esto chulisimas todas las opciones que tienes en el menu de depuración.
Un saludo Cesar ya me cuentas.
Juan Carlos
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Si, todo esto parece lógico. Pero creo que debería haber una manera rápida de arrancar una maquina, todos los emuladores lo hacen así, seleccionas maquina y arranca. Pero bueno, solo es mi opinión...jcgamestoy escribió: por partesYa pero hay que decirle donde guardar el archivo (en verdad es un Bundle de os vamos hablando en plata una carpeta) y dentro de este se guardan las snapshots, la configuración del teclado y el estado cuando se cierra el emulador.chernandezba escribió:Hola Juan Carlos.
He probado tu emulador y debo decirte que la parte gráfica esta muy currada, funciona con fluidez y el consumo de cpu no es elevado para todo lo que hace.
Ahora bien, yo cambiaría dos cosas:
1) Al iniciar una máquina hay que grabar la configuración en disco... No hay una manera de pulsar el botón Add, escoger máquina y que no haya que grabarla? Es un tanto engorroso...
César
La idea es que te puedas guardar estos archivos en una carpeta como Dropbox y sincronizar tus maquinas entre varios equipos.
Ademas esta pensado para la futura emulación del DIVIDE (y otras cosas que no puedo contar) para emularlo como realmente se utiliza en la máquina, es decir que el usuario pueda meter un cassette y flashear la rom del DIVIDE etc...
Bueno esos controles no aparecen siempre... Creo que solo cuando dejas el ratón por ahí encima,no?
chernandezba escribió: 2) Después de esto la máquina aparece creada pero apagada, con la pantalla con nieve.... El efecto está super chulo pero seria mejor que arrancase directamente. Sinceramente creo que soy muy torpe porque me ha costado encontrar la manera de hacer el "Power On"
Cierto lo estoy repensando y lo mejor es lanzar un mensaje que ponga "CMD+ENTER to power on" de todas formas se puede encender desde los controles de la parte de abajo o bien desde el menú machine.
Lógico, 60 páginas son demasiadas creo que fui al menú de abrir, no pude seleccionar un archivo .z80, fui a la documentación, leí solo la sección de cintas y archivos soportados y no leí más allá...
60 páginas de manual y no os las leeis ninguno.chernandezba escribió: Y veo que no soportas ningún formato de snapshot... excepto uno tuyo propio. Se echa mucho de menos sobretodo abrir archivos .z80, hay montón de juegos por ahi que solo están en ese formato. Además, si alguien ha grabado un snapshot en otro emulador, probablemente lo habrá hecho en formato .z80, y no podrá cargarlo en tu emulador. Ya me imagino que lo sabías de sobra, pero es algo que la gente te pedirá.
Eso si, en cintas tienes montones de formatos, y otros mas recientes, PZX y CSW. Por cierto, hay cintas publicadas en ese formato?
Si soporta Z80 y SNA tienes que entrar en la gestión de snapshots (cmd+8) darle al botón import y puedes importar las snapshots o exportarlas. Se quedaran guardadas dentro de esta máquina y desde aquí también puedes renombrarlas o eliminarlas.
Bueno ahora mismo el 99% de juegos esta en WOS y ahí solo hay tap y tzx. Dudo que nadie vaya a convertirlos y mas teniendo en cuenta el nulo mantenimiento que tiene la página desde hace año y medio.
Si en CSW hay un monton (basicamente es un Wav comprimido exacto de la cinta) y PZX esta el paquete de pruebas que hizo Patrik Rak que lo puedes bajar aquí:
http://zxds.raxoft.cz/pzx.html
PZX es una gozada casi tan simple como TAP y soporta TODO lo que puede hacer TZX pero sin tantos dolores de cabeza. Ojalá la gente se concienciará y pasaramos todo a este formato.
Exactamente casi ese 10% y si si entras en las opciones de video justo debajo hay un botón que pone OVERSCAN aquí puedes configurarlo como quieras en la opción FULL PAL se muestra el frame completo 384x288 como haces tu en ZEsarUX pero yo lo hice así ya que en un CRT nunca podías ver la resolución PAL completa desde aquí lo puedes configurar al gusto de cada uno.chernandezba escribió:Y otro comentario mas... poniendo el modo de video LCD-RGB, que creo que es el que se ve perfecto, los pixeles son ligeramente mas grandes de lo normal... Comparando con zxsp o ZEsarUX tus pixeles son ligeramente mas grandes, digamos que tu pantalla es mas o menos un 10% mas grande que en otros emuladores... Hay manera de ponerlo a escala 1:1 normal?
Por lo demás, gran emulador. Buen trabajo!
Saludos
César
Ok lo probare. Pero creo que por defecto se debería ver a escala normal.
Con Real video des habilitado la pantalla se refresca de manera que usa menos cpu pero no soporta, por ejemplo, efectos rainbow. Esta pensada para equipos lentos.
Y aprovechando ya me he leído el articulo... Brutal cuando lo asimile te cuento pero creo que no tendré muchos problemas en implementar todas las "features" del inves.
Y estoy haciendo pruebas con ZEsarUX 3.0 y me pasa como a ti, estoy acostumbrado al mío y no me aclaro con cosas:
1) Que es eso de "Real Video" y autodetect "Real Video". Cuando lo activo los fps caen en picado a 17 pero no aumenta el consumo de cpu ¿?
En cuando a los FPS, en Mac OS, cuando lo habilitas, automáticamente te aumenta el valor de frameskip, valor que puedes luego poner a 0. Esto lo hice porque en mi anterior mac usaba demasiada cpu al activar real video y tenía que bajar el consumo...
Esto es algo que he mejorado para la versión 3.1. Un tzx si es todo binario se puede cargar como cinta normal, siempre que el juego no use una rutina propia de carga. En caso de tzx de audio, turbo o de carga binaria propia, se debe meter como real tape
2) Se puede cargar un tzx sin autocarga, o es que el soporte de TZX no es completo o algo yo algo mal porque hay muchos que no me cargan.
uso de cpu... Si te digo la verdad en mac ahora no se si te muestra el uso de cpu solo del proceso emulador o de todo el equipo. En Linux muestra el uso de cpu total
3) Que significa el "%" que aparece al lado del modelo y de los fps.
Gracias. Te sugiero que pruebes los breakpoints condicionales...
A parte de esto chulisimas todas las opciones que tienes en el menu de depuración.
Saludos
Un saludo Cesar ya me cuentas.
Juan Carlos
Cesar
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
Re: Retro Virtual Machine v1.0.0 disponible!!!
Ahora lo pillo, ósea que utilizas dos rutinas para "dibujar" la pantalla una rápida y otra precisa. Lo he activado le he quitado el Frameskip y va muy bien.chernandezba escribió:Con Real video des habilitado la pantalla se refresca de manera que usa menos cpu pero no soporta, por ejemplo, efectos rainbow. Esta pensada para equipos lentos.
En cuando a los FPS, en Mac OS, cuando lo habilitas, automáticamente te aumenta el valor de frameskip, valor que puedes luego poner a 0. Esto lo hice porque en mi anterior mac usaba demasiada cpu al activar real video y tenía que bajar el consumo...
Lo que si he visto en que en los tests de Richard:
http://www.zxspectrum4.net/op_timing.php
Tienes alguna problema con la memoria en contienda. Esto si es importante yo hasta que no los pase todos habian algunos tzx que no cargaban como deberían (El puto bubble bobble cargaba pero algunos gráficos salían corruptos).
Veo que no te has liado tampoco con la emulación del FDC765 mmm ya veras ya que pesadilla.
Bueno teniendo en cuenta que fuse usa 320x240 y se come medio border me quedo entre medio (por defecto).chernandezba escribió: Ok lo probare. Pero creo que por defecto se debería ver a escala normal.
Y otra cosa que te quiero comentar llevo todo el día buscando donde encontré un .tap que tengo y no consigo recordarlo. Creo que fue en WOS pero no me acuerdo.
El tap en cuestion es una demo de no se quien que aprovechando el snow bug conseguía hacer un scroll por hardware (si como suena) de la pantalla.
Yo lo emulo bastante bien pero no estoy 100% seguro de que la emulación del snow bug este bien. (Más teniendo en cuenta que no tengo ningún spectrum para probarlo).
Puedes verlo en este video de youtube:
https://www.youtube.com/watch?v=cEE7t6t-cQo
A partir del minuto 2:36
Por favor si alguien a leido algo de esto y se acuerda que me refresque la memoria. Y si te interesa el tap lo tengo aquí ya me dices como te lo mando.
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Si, de manera resumida:jcgamestoy escribió:Ahora lo pillo, ósea que utilizas dos rutinas para "dibujar" la pantalla una rápida y otra precisa. Lo he activado le he quitado el Frameskip y va muy bien.chernandezba escribió:Con Real video des habilitado la pantalla se refresca de manera que usa menos cpu pero no soporta, por ejemplo, efectos rainbow. Esta pensada para equipos lentos.
En cuando a los FPS, en Mac OS, cuando lo habilitas, automáticamente te aumenta el valor de frameskip, valor que puedes luego poner a 0. Esto lo hice porque en mi anterior mac usaba demasiada cpu al activar real video y tenía que bajar el consumo...
-Sin Real Video. A cada 50 Hz leo la memoria de pantalla (ram 5 o 7) y la muestro en la ventana tal cual. Y dibujo el borde con el color del puerto FEH
-Con Real Video. Cada scanline se va guardando en un buffer de pantalla y se vuelca todo el buffer en la ventana cada 50 Hz. Por eso le llamo "Real", porque es tal y como se ve un spectrum real.
Gracias, lo se Es por eso que la demo overscan en 48k no sale del todo perfecta. Hay un byte de atributos en la primera linea que no sale coordinado. Estos errores de contienda o de ciclos de cpu son muy dificiles de encontrar, o lo haces bien a la primera o hacer debug de eso es una pesadilla. Yo he encontrado algunos de esos bugs por casualidad.
Lo que si he visto en que en los tests de Richard:
http://www.zxspectrum4.net/op_timing.php
Tienes alguna problema con la memoria en contienda. Esto si es importante yo hasta que no los pase todos habian algunos tzx que no cargaban como deberían (El puto bubble bobble cargaba pero algunos gráficos salían corruptos).
Lo del bubble bobble no me suena... si que recuerdo ver gráficos corruptos pero en modo Inves... tienes mas detalles de eso? Para además ver si mi emulador los muestra bien o no...
Ni creo que me lie nunca. Quien usa discos de +3? Es como preguntar.... quien usa microdrives? Creo que el esfuerzo de implementar la emulación de eso no merece la pena. Siempre tienes la opción de recurrir al código fuente de fuse, allí hay un archivo .c con la emulación del floppy, puedes hacer casi un copy-paste y meterlo en mi emulador. Lo iba a hacer un dia pero al final pasé...
Veo que no te has liado tampoco con la emulación del FDC765 mmm ya veras ya que pesadilla.
No me refiero al tamaño del border. Me refiero al tamaño de los pixeles tal cual. Digamos que con zoom 2 (en mi emulador o con zxsp por ejemplo) se ven claramente puntos de 2x2 pixeles. En tu emulador esos puntos son algo mas grandes. Es facil de comparar, arrancas tu emulador y otro y en el copyright de sinclair tus letras son algo mas grandes...Bueno teniendo en cuenta que fuse usa 320x240 y se come medio border me quedo entre medio (por defecto).chernandezba escribió: Ok lo probare. Pero creo que por defecto se debería ver a escala normal.
Eso es muy muy raro. Que yo sepa el snow effect no hace eso ni por asomo. Todas las descripciones del snow effect, pese a ser algo crípticas, jamás hablan de mover bloques de memoria (necesarios para hacer scroll). Creo que es un fake en toda regla.
Y otra cosa que te quiero comentar llevo todo el día buscando donde encontré un .tap que tengo y no consigo recordarlo. Creo que fue en WOS pero no me acuerdo.
El tap en cuestion es una demo de no se quien que aprovechando el snow bug conseguía hacer un scroll por hardware (si como suena) de la pantalla.
Yo lo emulo bastante bien pero no estoy 100% seguro de que la emulación del snow bug este bien. (Más teniendo en cuenta que no tengo ningún spectrum para probarlo).
Puedes verlo en este video de youtube:
https://www.youtube.com/watch?v=cEE7t6t-cQo
A partir del minuto 2:36
Por favor si alguien a leido algo de esto y se acuerda que me refresque la memoria. Y si te interesa el tap lo tengo aquí ya me dices como te lo mando.
Y si, me interesa el tap, mándamelo si quieres a mi mail personal. Lo encontrarás en el archivo HISTORY de mi emu (no lo digo por aqui para evitar spammers-bots)
Gracias
César
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Aqui hay algo que no entiendo...
Y otra cosa que te quiero comentar llevo todo el día buscando donde encontré un .tap que tengo y no consigo recordarlo. Creo que fue en WOS pero no me acuerdo.
El tap en cuestion es una demo de no se quien que aprovechando el snow bug conseguía hacer un scroll por hardware (si como suena) de la pantalla.
Yo lo emulo bastante bien pero no estoy 100% seguro de que la emulación del snow bug este bien. (Más teniendo en cuenta que no tengo ningún spectrum para probarlo).
Puedes verlo en este video de youtube:
https://www.youtube.com/watch?v=cEE7t6t-cQo
A partir del minuto 2:36
Por favor si alguien a leido algo de esto y se acuerda que me refresque la memoria. Y si te interesa el tap lo tengo aquí ya me dices como te lo mando.
-Ese video es de tu emulador
-Se ve claramente que hace scroll de pantalla
-No veo (o no consigo ver) el snow effect
Entonces, no entiendo porque dices que es un scroll por hardware que no sabes como funciona, si tu emulador lo hace...
Y además no le veo relación aquí con el snow effect.
Yo veo simplemente un scroll de pantalla, nada mas...
Saludos
César
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
Re: Retro Virtual Machine v1.0.0 disponible!!!
No, no me he explicado bien.
De fake nada lo hace y me costo emularlo un huevo. Lo que no recuerdo es en que foro lo vi, cuando estaba implementando el snow lo encontré y creía que lo había guardado en favoritos pero no lo encuentro.
Los "pixeles" extraños que se ven en el snow effect son debidos a que cuando se hace el refresco de ram se corrompe la dirección no el dato que lee la ULA para mostrar en pantalla. Básicamente se ponen los 7 bits bajos del registro r en las 7 direcciones bajas del bus de direcciones.
Con lo cual la ULA lee de otra posición de la pantalla. El tap este muy inteligentemente va reiniciando el registro r (supongo no he mirado el codigo) de manera que el snow bug lee de las direcciones de pantalla que le interesan al autor de esto.
Es brutal, lo que no se y es eso lo que preguntaba es como se ve en un Spectrum Real. Me interesa muchísimo verlo en marcha en un 48k. Por favor alguien que me lea si puede grabar un video de esto corriendo y subirlo a Youtube se lo agradecería enormemente.
El tap lo podeis descargar aqui:
https://www.dropbox.com/s/oj1cet0mb1ro3jz/snow.tap?dl=0
Pero recuerdo no es mio. Si alguien lo ha visto también en la red que me recuerde donde.
Otra cosa en cuanto al snow bug veo que en ZEsarUX haces que el ordenador se cuelgue a los pocos segundos.
Esto creo que no es del todo correcto, los 48k creo que no se cuelgan. Y los de 128k se cuelgan solo cuando la contienda es con I>0xc0 y hay unos modelos de +2 que usan otro PAL que no se cuelgan.
Esto me lo pasaron en el foro de los mojontwins creo cuando discutiamos el snow effect en la primera version de Ninjajar.
http://velesoft.speccy.cz/zx/umbrella/umbrella.htm
Un placer discutir contigo todas estas cuestiones técnicas por aqui. Seguro que podemos aprender mucho el uno del otro.
Un saludo
Juan Carlos
De fake nada lo hace y me costo emularlo un huevo. Lo que no recuerdo es en que foro lo vi, cuando estaba implementando el snow lo encontré y creía que lo había guardado en favoritos pero no lo encuentro.
Los "pixeles" extraños que se ven en el snow effect son debidos a que cuando se hace el refresco de ram se corrompe la dirección no el dato que lee la ULA para mostrar en pantalla. Básicamente se ponen los 7 bits bajos del registro r en las 7 direcciones bajas del bus de direcciones.
Con lo cual la ULA lee de otra posición de la pantalla. El tap este muy inteligentemente va reiniciando el registro r (supongo no he mirado el codigo) de manera que el snow bug lee de las direcciones de pantalla que le interesan al autor de esto.
Es brutal, lo que no se y es eso lo que preguntaba es como se ve en un Spectrum Real. Me interesa muchísimo verlo en marcha en un 48k. Por favor alguien que me lea si puede grabar un video de esto corriendo y subirlo a Youtube se lo agradecería enormemente.
El tap lo podeis descargar aqui:
https://www.dropbox.com/s/oj1cet0mb1ro3jz/snow.tap?dl=0
Pero recuerdo no es mio. Si alguien lo ha visto también en la red que me recuerde donde.
Otra cosa en cuanto al snow bug veo que en ZEsarUX haces que el ordenador se cuelgue a los pocos segundos.
Esto creo que no es del todo correcto, los 48k creo que no se cuelgan. Y los de 128k se cuelgan solo cuando la contienda es con I>0xc0 y hay unos modelos de +2 que usan otro PAL que no se cuelgan.
Esto me lo pasaron en el foro de los mojontwins creo cuando discutiamos el snow effect en la primera version de Ninjajar.
http://velesoft.speccy.cz/zx/umbrella/umbrella.htm
Un placer discutir contigo todas estas cuestiones técnicas por aqui. Seguro que podemos aprender mucho el uno del otro.
Un saludo
Juan Carlos
- jcgamestoy
- rst 0
- Mensajes: 38
- Registrado: Mié Abr 29, 2015 8:38 am
- Contactar:
- chernandezba
- Sabreman
- Mensajes: 408
- Registrado: Mié Oct 17, 2007 5:26 pm
Re: Retro Virtual Machine v1.0.0 disponible!!!
Puf tela... rectifico, no será fake, con esto que me dices...
Lo he probado con mi emulador y aparece mi snow, pero nada que ver con un scroll...
Te agradecería enormemente si me pasaste el método que utilizas tu para mostrarlo
En cuanto al reset, yo leí por ahí que el Spectrum 48k se acababa reseteando al cabo de unos segundos, pero no se si sucedía siempre, y/o si pasaba con cualquier ULA...
Gracias
César
Lo he probado con mi emulador y aparece mi snow, pero nada que ver con un scroll...
Te agradecería enormemente si me pasaste el método que utilizas tu para mostrarlo
En cuanto al reset, yo leí por ahí que el Spectrum 48k se acababa reseteando al cabo de unos segundos, pero no se si sucedía siempre, y/o si pasaba con cualquier ULA...
Gracias
César
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 34 invitados