Nuevos modos ULA Plus

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
chernandezba
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 253
Registrado: 11 Mar 2015, 10:42
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: ZX81
consola_favorita: NeoGeo
Primera consola: Atari 2600
Gracias dadas: 12 veces
Gracias recibidas: 132 veces

Nuevos modos ULA Plus

Mensajepor chernandezba » 11 Mar 2015, 11:15

Hola

En relación a este hilo:

viewtopic.php?f=26&t=4796&hilit=misco+128x96

Y sobre el modo "radastan" de 128x96, a 16 colores por pixel independiente. Habiéndolo comentado con mcleod_ideafix y radastan, he decidido implementar en mi emulador

http://sourceforge.net/projects/zesarux/

Otros modos alternativos, incluidos este radastan 128x96.
La lista total de modos de ula plus soportados es:

modo 1: rgb. standard ulaplus. 256x192. 64 colores. organización estándar de la pantalla
modo 3: radastan. 128x96. 16 colores por pixel independiente. organización lineal de la pantalla
modo 5: 256x96. 16 colores por pixel independiente. organización lineal de la pantalla
modo 7: 128x192. 16 colores por pixel independiente. organización lineal de la pantalla
modo 9: 256x192. 16 colores por pixel independiente (aún por definir del todo)

Modos 1,3 ocupan 6144 bytes. Modos 5, 7 ocupan 12288 bytes. Y modo 9 ocupa 24576 bytes.
Debido a que el modo 9 ocupa más de una página de 16kb, aún no tengo definido como organizar la memoria en él.
Todos esos modos (excepto el 9) están implementados en mi emulador y disponen de alguna demo (un visor de imágenes) para probarlos.

Alguien pensará que dichos modos 5,7 y sobretodo el 9 ocupan demasiada memoria para gestionarlos desde el Spectrum. Si, es cierto, pero por una parte, se pueden usar para imágenes estáticas o juegos con poco desplazamiento de píxeles, y por otra parte, tengo previsto implementar un chip de gestión de sprites (chip "virtual" emulado en mi emulador) para poder mostrar sprites con mucha rapidez, hacer scrolls, etc, al estilo de las máquinas msx, commodore, consolas tipo master system, etc...

Saludos
César
----

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

Avatar de Usuario
Quest
Atari 1040 STf
Atari 1040 STf
Mensajes: 900
Registrado: 18 Jul 2013, 22:20
Sistema Favorito: Commodore Amiga
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo SNES
Primera consola: Nintendo NES/Clónica
Gracias dadas: 9 veces
Gracias recibidas: 16 veces

Re: Nuevos modos ULA Plus

Mensajepor Quest » 11 Mar 2015, 13:27

Excelente!! :D :D

Ya vamos viendo cada vez más implementaciones de la ULAplus. Creo que 2015 va a ser el año de los modos extra de spectrum.
El hecho de que además implementes el modo radastaniano y algunos más lo hace muy interesante...

Voy a bajarlo y seguiré de cerca tu trabajo.

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Nuevos modos ULA Plus

Mensajepor Hark0 » 11 Mar 2015, 13:37

DIOS!!!!!! :shock: 8-)

Que ganicas tengo de que me llegue mi bicho.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
chernandezba
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 253
Registrado: 11 Mar 2015, 10:42
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: ZX81
consola_favorita: NeoGeo
Primera consola: Atari 2600
Gracias dadas: 12 veces
Gracias recibidas: 132 veces

Re: Nuevos modos ULA Plus

Mensajepor chernandezba » 11 Mar 2015, 14:08

Quest escribió:Excelente!! :D :D

Ya vamos viendo cada vez más implementaciones de la ULAplus. Creo que 2015 va a ser el año de los modos extra de spectrum.
El hecho de que además implementes el modo radastaniano y algunos más lo hace muy interesante...

Voy a bajarlo y seguiré de cerca tu trabajo.


Gracias. Para probarlo, debes usar de momento la versión "snapshot" 2.1, desde
http://sourceforge.net/p/zesarux/code/ci/master/tree/

y seleccionar Download snapshot.

No es una versión final, pero funciona bien.

Saludos
César

-- Actualizado 11 Mar 2015, 14:09 --

Hark0 escribió:DIOS!!!!!! :shock: 8-)

Que ganicas tengo de que me llegue mi bicho.


Que bicho?
----

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

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Nuevos modos ULA Plus

Mensajepor Hark0 » 11 Mar 2015, 16:00

zx-uno :oops: ;)
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 53 veces
Contactar:

Re: Nuevos modos ULA Plus

Mensajepor mcleod_ideafix » 11 Mar 2015, 16:23

César.... ¿qué setup hace falta para compilar este emulador? ¿Se necesita SDL, OpenGL o algo más, aparte de las librerías habituales? ¿Usa ALSA, OSS...? ¿Funciona en X, o puede funcionar en frame-buffer console? ¿Requiere algo que sea propio de Linux o podría compilar en otro "sabor" de Unix, tal como OS X?
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Nuevos modos ULA Plus

Mensajepor Hark0 » 11 Mar 2015, 18:44

mcleod_ideafix escribió:César.... ¿qué setup hace falta para compilar este emulador? ¿Se necesita SDL, OpenGL o algo más, aparte de las librerías habituales? ¿Usa ALSA, OSS...? ¿Funciona en X, o puede funcionar en frame-buffer console? ¿Requiere algo que sea propio de Linux o podría compilar en otro "sabor" de Unix, tal como OS X?



SDL2? :P
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
chernandezba
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 253
Registrado: 11 Mar 2015, 10:42
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: ZX81
consola_favorita: NeoGeo
Primera consola: Atari 2600
Gracias dadas: 12 veces
Gracias recibidas: 132 veces

Re: Nuevos modos ULA Plus

Mensajepor chernandezba » 11 Mar 2015, 19:30

Hola

Bueno lo mínimo es lo que comento en el archivo install:
* x11
* libssl
* libpthreads
* alsa (on Linux/Raspberry)
* pulse (on Linux)

Funciona también con frame buffer, sin necesidad de X11. Probado en Linux, Mac y raspberry (raspbian)
Para Mac, la versión estable 2.0 necesita xquartz. Para la snapshot 2.1 no hace falta; usa gui nativo de Mac aunque va bastante lento
No hace falta sdl ni OpenGL ni nada 'avanzado'
Por tanto podría funcionar en teoría en cualquier sistema unix
Saludos

-- Actualizado 11 Mar 2015, 19:41 --

Aclaracion:
Pulse y alsa no son necesarios para compilar. Pero si no están solo se podrá tener sonido por oss
Ssl también es opcional, habilita rutinas de auto detección de determinados tap para activar opciones del emulador según la cinta cargada

-- Actualizado 11 Mar 2015, 19:46 --

Es mas. Todos los requisitos que comento son para una mínima ejecución 'normal'. Pero se puede compilar sin X11 ni framebuffer y usar solo curses, por ejemplo.
Lo mismo para otros requisitos: pthreads es recomendable pero no necesario
Diría que lo mínimo es un compilador de C y nada mas ;)
----

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

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: Nuevos modos ULA Plus

Mensajepor Hark0 » 12 Mar 2015, 09:23

Se puede compilar para android? :P
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
chernandezba
Amstrad PCW 8256
Amstrad PCW 8256
Mensajes: 253
Registrado: 11 Mar 2015, 10:42
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: ZX81
consola_favorita: NeoGeo
Primera consola: Atari 2600
Gracias dadas: 12 veces
Gracias recibidas: 132 veces

Re: Nuevos modos ULA Plus

Mensajepor chernandezba » 12 Mar 2015, 11:21

Hark0 escribió:Se puede compilar para android? :P


Pues necesita C y entorno Unix.. no va con Java

-- Actualizado 12 Mar 2015, 11:35 --

Hola

Bueno finalmente también he implementado modo 9 256x192 a 16 colores por pixel independiente. En este modo 9, la organización de la memoria es lineal y siempre se lee a partir de la dirección 16384, independientemente de lo que diga el bit de conmutar pantalla de los modos 128k.
En el resto de modos se tiene en cuenta la página 5 o 7 del modo 128k.

Por tanto la lista completa de modos queda:

0: desactivado
1: standard ulaplus 256x192, con 64 colores, mismo esquema de tinta/papel. Ocupa 6912 bytes
3: radastan 128x96 16 colores por pixel. ocupa 6144 bytes
5: ZEsarUX mode 0 256x96 16 colores por pixel. ocupa 12288 bytes
7: ZEsarUX mode 1 128x192 16 colores por pixel. ocupa 12288 bytes.
9: ZEsarUX mode 2 256x192 16 colores por pixel. ocupa 24576 bytes

Para que os hagáis una idea, os paso algunas capturas de como quedan algunas imágenes: una de un perro "modelo" y otra del Sonic Generations:


Original perro 256x192, formato jpg:

Imagen

Misma foto del perro pero en 4 diferentes modos ulaplus del emulador:

128x192
Imagen

256x192
Imagen

256x96
Imagen

128x96 (radastan)
Imagen


Foto del perro pero solo con la silueta, en jpg (esto lo hago porque así reduzco la cantidad total de colores, y por ejemplo la pelota se verá verde, como debe ser):

Imagen

Misma foto del perro pero en 2 diferentes modos ulaplus del emulador:

128x192:
Imagen

256x192:
Imagen


Foto original Sonic Generations:

Imagen

Misma foto del sonic pero en modo 256x192 del emulador y recortando una sección

Imagen


Saludos
César
----

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


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

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