Emulacion de un Spectrum en Amstrad "hoax"?¿

Sistemas 464, 664, 6128, 472, ...
Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Emulacion de un Spectrum en Amstrad "hoax"?¿

Mensajepor mentalthink » 26 Ene 2013, 23:27

Quería haceros está pregunta aunque yo creo que no puede ser... El tema es que viendo ayer un blog, de no se quién, no recuerdo ni la busqueda ni de la fecha de esa entrada... Se comentaba aunque no cercioraba, de que había un rumor de que en un Amstrad CPC se había emulado un Spectrum... a lo que os suelto la pregunta, porque a mi me parece realmente complejo, y como bien dice en el post, internet es my grande pero algo se podría haber visto...

Por lo que se podría emular un Spectrum dentro de un Amstrad, y hacer correr sus juegos y programas... También la duda me viene por aquella máquina del Pac-Man que creo que es emulada no es un juego en si hecho para CPC, pero debido a la antiguedad del Pac-Man no se si es mucho mas "sencilla" que un spectrum...

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: 54 veces
Contactar:

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor mcleod_ideafix » 26 Ene 2013, 23:46

Pues.... difícil, pero no imposible. Software que muestre que es posible esto, yo no lo he visto. Lo más complejo sería renderizar la pantalla del Spectrum en el Amstrad. Además, la pantalla en el Amstrad está en C000, y eso en el Spectrum es memoria normal y corriente. No sé si el Amstrad puede cambiar de sitio el comienzo de la video RAM, pero si no es así, como mucho podrías emular un Spectrum 16K.

Lo que sí se ha hecho es que en Amstrad, a la hora de convertir juegos que originalmente eran para Spectrum, se programaba el CRTC para que la pantalla tuviera las mismas dimensiones que la del Spectrum, y así el port era muy sencillo, para enfado de los fans del CPC, que veían que sus juegos no eran más que burdos ports monocromos en muchos de los casos, de juegos de Spectrum.

Eso sí... otros micros sí se han "emulado" en el Spectrum (con más o menos ayuda). Por ejemplo, un MSX... ;)
http://www.zxprojects.com/index.php/int ... nte-de-msx
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor mentalthink » 27 Ene 2013, 00:20

Si MacLeod estó que comentas del CRTC aunque no lo decían así, creo que leí algo sobre el asunto, por eso comentaban que podría ser cierto...
Lo de cambiar la pantalla del Amstrad , si no me equico no se puede, yo he mirado el codigo que sale en el emulador y creo que hasta un poquito antes de la &4000 viene lo que sería el sistema Operativo, o el Kernel o algo que si tocas, ya hace cosas raras...

Pero bueno ya con lo que me dices del 16K, aunque bueno no es hablar de un Zx81 o un Zx80 , es un Spectrum, a mi me parece algo bastante , pero bastante impactante...

Lo del MSX, creo que ya me lo comentaste, también me parece algo muy chulo, pero no sé si es por Nostalgia o porque es mi Ordenador, no me parece tan alucinante, no sé es que son cosas, que ni imaginabas cuando eras un chavalillo.

McLeod perdona, porque no he leído tú documento, a parte de que ya he flipao otra vez, hay una cosa que no entiendo en el Spectrum digamos que estás cargando algo no, para el Spectrum, la tarjeta que le has hecho por detras es el teclado y el video del MSX, pero el juego del MSX de dónde ha salido, es una rom, es lo que está cargando en el Spectrum?¿...

Y por ultima curiosidad, esto podría ser un proyecto que teniendo un Spectrum, y ese proyecto tuyo, tuvieras un MSX totalmente funcional, partiendo de que usas el Z80 del Spectrum, como CPU es ese MSX virtual o video de MSX, o como sea...

Por cierto y no tengo ni idea, pero si que se necesitan integrados para el tema de Teclado y el video, no?¿, supongo que es algo como la ULA del Harlequin, que con un "puñado" de chips haces el video del MSX, no?¿, si no me equivoco el MSX tenia un Custom Chip para video... o es el 2, o me estoy colando...

Lo dicho muy chulo, no había visto esto..

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: 54 veces
Contactar:

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor mcleod_ideafix » 27 Ene 2013, 01:01

mentalthink escribió:McLeod perdona, porque no he leído tú documento, a parte de que ya he flipao otra vez, hay una cosa que no entiendo en el Spectrum digamos que estás cargando algo no, para el Spectrum, la tarjeta que le has hecho por detras es el teclado y el video del MSX, pero el juego del MSX de dónde ha salido, es una rom, es lo que está cargando en el Spectrum?¿...

La tarjeta pinchada al Spectrum es una tarjeta que integra el chip de video del MSX, con sus 16K de VRAM. No incluye teclado. El teclado es el habitual del Spectrum. Lo que cargo son programas para el MSX, que han sido modificados para que el sonido se rutee a los puertos de E/S del Spectrum, el teclado lo lea del Spectrum, pero el video en lugar de ir a la pantalla del Spectrum, va al chip de video del MSX de la tarjeta. Estos programas los elegí porque encontré el código fuente de todos ellos y los pude modificar a gusto.
Junto con el juego se carga una versión de la BIOS del MSX de libre distribución, llamada CBIOS, de la cual también tengo el código fuente. Esta CBIOS está modificada para que algunas llamadas al sistema para leer el estado del joystick o del teclado, lo hagan con las teclas del Spectrum o un joystick Sinclair.

mentalthink escribió:Y por ultima curiosidad, esto podría ser un proyecto que teniendo un Spectrum, y ese proyecto tuyo, tuvieras un MSX totalmente funcional, partiendo de que usas el Z80 del Spectrum, como CPU es ese MSX virtual o video de MSX, o como sea...

Podría ser, pero para que fuera un MSX funcional habría que añadir tantas cosas a la tarjeta, que lo que tendrías al final es un MSX pegado a un Spectrum. Este proyecto iba de dotar a un Spectrum de las cualidades más sobresalientes de un MSX-1: léase, su chip de video con sus sprites hardware. El sonido es el mismo chip en ambos, y el resto, comparable. La intención era facilitar el port de juegos de MSX a Spectrum.

Ahora que he podido clonar una ULA de manera más o menos sencilla, podría hacer lo contrario, es decir, diseñar un cartucho de MSX que contenga una ULA de Spectrum, y algunas cosillas más, de forma que un MSX pueda funcionar como un Spectrum.

mentalthink escribió:Por cierto y no tengo ni idea, pero si que se necesitan integrados para el tema de Teclado y el video, no?

Era mi primer diseño, y lo hice casi todo en lógica discreta. Por otra parte, el TMS9929, el chip de video, necesita memoria DRAM con el bus de datos de entrada y salida separado, lo que limitaba mis opciones en cuanto a qué tipo de memoria usar. Más bien, casi me obligaba a usar chips de 16K x 1, o 64K x 1 o 256K x 1. En cualquier caso, sólo para la memoria ya necesitaba 8 chips, que es lo que más ocupa espacio en la placa.

En el artículo, dividido en seis partes, puedes ver el esquema del aparatito y los detalles de la fabricación del mismo...
http://www.zxprojects.com/index.php/int ... en-espanol

mentalthink escribió:¿, supongo que es algo como la ULA del Harlequin, que con un "puñado" de chips haces el video del MSX, no?¿, si no me equivoco el MSX tenia un Custom Chip para video... o es el 2, o me estoy colando...

Lo que has visto no es un clon en FPGA o una versión en lógica discreta: el chip gordito que ves en la tarjeta es el mismo chip devideo que monta el MSX. En su momento compré algunos V9958 para hacer lo mismo con los gráficos del MSX2.
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor mentalthink » 27 Ene 2013, 01:42

Pues como siempre muchas gracias por la info...

Avatar de Usuario
Metalbrain
MSX Turbo R
MSX Turbo R
Mensajes: 435
Registrado: 22 Nov 2008, 00:30
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Gracias recibidas: 2 veces

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor Metalbrain » 27 Ene 2013, 11:34

mcleod_ideafix escribió:Además, la pantalla en el Amstrad está en C000, y eso en el Spectrum es memoria normal y corriente. No sé si el Amstrad puede cambiar de sitio el comienzo de la video RAM, pero si no es así, como mucho podrías emular un Spectrum 16K.


Sí que se puede, se puede escoger en que banco de memoria de 16K está la memoria de video, e incluso si se define una pantalla de grandes dimensiones es posible ocupar dos bancos al mismo tiempo. Otra cosa bastante habitual es usar dos bancos para tener una pantalla alternativa e intercambiar la que se muestra (como en el Spectrum 128k), para evitar los parpadeos al actualizar la información de la pantalla. Las ROM que forman el sistema operativo se dividen en dos partes de 16K, una en el primer banco y otra en el último, y se pueden paginar y despaginar para usar la RAM.

Avatar de Usuario
Namek
Atari 1040 STf
Atari 1040 STf
Mensajes: 840
Registrado: 11 Jul 2011, 13:13
Gracias dadas: 18 veces
Gracias recibidas: 63 veces

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor Namek » 27 Ene 2013, 15:24

En mi experiencia con la informatica muchas veces he pensado "eso no se puede hacer, es imposible." Pero el tiempo siempre me ha demostrado lo contrario, en este caso yo se de varios ejemplos, para MSX de 128K se curraron un emulador de GAMEBOY que encima lleva una version de Z80 modificada por NINTENDO con algunas instrucciones distintas del Z80 original, tambien hay por ahi una ROM de Spectrum modificada para funcionar en un MSX-1, os recuerdo tambien el emulador de PACMAN para +2A y +3 y si mal no recuerdo tambien habia un emulador de VIC 20 para Spectrum, por supuesto todos van mas lentos que el caballo del malo, excepto el del PACMAN, pero como he dicho antes, poder se puede...

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor antoniovillena » 27 Ene 2013, 15:38

Lo que sí se podría hacer es algo parecido a lo que hice con Bascolace, es decir, emular sólo el intérprete de BASIC. Lo bueno es que el Amstrad te permite paginar RAM en memoria baja, por lo que no es necesario un reemplazo de ROM para correr el emulador. Y lo malo es que sólo funcionarían los juegos 100% Basic o los que tengan algo de código máquina siempre y cuando no accedan a puertos ni memoria de video, y estos son muy muy pocos juegos.

Avatar de Usuario
scooter
Amiga 1200
Amiga 1200
Mensajes: 1031
Registrado: 17 Jul 2012, 09:25
primer_sistema: C64
Ubicación: Alicante

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor scooter » 28 Ene 2013, 00:48

En su día había un emulador de spectrum para c64, solo de basic claro, pero se ve que cargaba cintas y todo. Cuando salió el 128 que llevaba z80 además del 6502 siempre pensé que hubiese sido un puntazo.
La pega es que el z80 del c128 tenía mil estados de espera para que funcionase el vic y en realidad iba a 2MHz pese a llevar reloj de 4. El caso es que eso nunca pasó.

Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Re: Emulacion de un Spectrum en Asmtrad "hoax"?¿

Mensajepor mentalthink » 28 Ene 2013, 20:27

Ostia ahora me entero que el 128 llevaba el Z80 y el 6502...de ls coas qie se entera uno que se enterá uno...


Volver a “Amstrad CPC”

¿Quién está conectado?

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