Ver Mensaje Individual
  #93 (permalink)  
Antiguo 17/07/2003, 14:21
Avatar de Instru
Instru
 
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 22 años, 4 meses
Puntos: 52
Otra vez yo.

Voy a hacer unas aclaraciones para que sepan porque se puede emular y no se puede emular una consola.


Emular es hacer que algo trabaje como otra cosa. Una pc como maquintosh, Windows como linux, y viceversa.

Para emular una consola se nesesitan tener como minimos requerimientos las condiciones de la consola a emular: Memoria Ram, VRAM, el bufer de sonido, en el case del PS unidad de dr-Rom, y sobretodo un procesador lo mas parecido posible.

No se preocupen por eso, las pc de hoy son mucho mas poderosas que el play y todas esas.

Por ejemplo, el play usa 2mb de Ram, las pc de hoy usan como minimo 64 mb de ram si no es que ya los 128!!!

Los procesadores son super rapidos(Mhz) y el sonido pues igual.

El problema es que el Play se diseño para juagr SOLO JUEGOS DE PLAY STATION, Y LA PC PARA TODO LO QUE SIRVE UNA PC.

Osea un play y una pc son dos cosas muy diferentes.

Entonces para hacer que una pc funcione como play se nesesita un traductor.

El traductor es el mismo emulador que traduce todo lo que dice el juego para que la pc lo entienda como formato de la pc y lo ejecute.


Primero se nesesita traducir el procesador: Todas las consolas tienen un procesador a cierta frecuencia pero el procesador tiene ciertas instrucciones que los procesadores de las computadoras de ahora ya no tiene.

Entonces lo que hacen los emuladores es traducir esas instrucciones a otras instrucciones parecidas o equivalentes.
(No siempre es posible hacer equivalentes las instrucciones, se nesesita de mucho trabajo traducir esas instrucciones.)

Un pequeño ejemplo para que se entienda.

Imaginemos que una instrucciones del procesador es multiplicar.
Otro procesador no tiene esa instruccion de multiplicar.

entonces para traducirla se nesesitaria usar la suma.

En la programacion esto se llama algoritmo.

Imaginemos que queremos multiplicar 3x3.

Entonces para traducirlo seria 3+3+3.

Pero lo complicado es cuando no se tienen los valores.
Por ejemplo:

y*y

y+y+y+y........

Nadie sabe cuantas veces. Eso ya se resuelve en la programacion con un pequeño algoritmo.

Esto fue un pequeñisimo ejemplo de lo que tiene que hacer un emulador para emular un CPU de una consola.

ademas echenle encima el tiempo que se tarda en traducir todas las instrucciones.

Un procesador cuenta con MILES!!! de instrucciones de las cuales un cierto porciento se tiene que traducir.

Pero se preguntaran ¿para que traducir el CPU?

Pues para poder trabajar con todo lo que dice un se nesesitan esas instrucciones.

El juego dice multiplicar 640x480 para crear una pantalla.
Entonces el procesador nesesita hacer esa multiplicacion para que el juego continue o no saque algun error.

Los graficos, sonido, controles tambien se nesesitan emular ya que son diferentes a los formatos que conocemos(gifs, bmp. jpg, etc.)

Se nesesita que el emulador primero los lea y luego con ayuda de libreria graficas con la cual fue compilado mostrarlo en pantalla.

¿que significa eso de compilarlo?

Al hacer el programa de codigo a ejecutable se nesesita pasar por un procesao dopnde el codigo se transforma en lenguaje maquina.(Mas informacion: Foro de programacion)

Las librerias graficas tienen instrucciones que hacen que por ejemplo mustren graficos en la pantalla, se oiga algun sonido o musica, etc.

No siempre se nesesitan estas librerias ya que el que hizo el emulador pudo haber programado sus propias instrucciones para mostrar los graficos, etc.

Es por esa razon que la mauyoria de los emuladores nesesitan DirectX u OpenGL porque las dos son librerias donde dice todas las instrucciones para manejar graficos, sonidos, controles, etc.

Si no usan esas dos puede que hayan hecho sus propias instrucciones o hayan utilizado una libreria que no nesesite de directx u openGl.


El emulador se encarga de hacer muchas cosas, es muy dificil hacer uno, por eso es un buen reto.

Un emulador de play es algo complicado pero las pcs pueden correr los emuladores mas facilmente.

¿Porque?

Porque generalmente las librerias, sus instrucicones , lo que hacen es en tu tarjeta grafica, de sonido, teclado, joystick, etc, realizar las instrucciones de para mostrar cosas.
Esto significa que si tu tienes una buena tarjeta de video o aceleradora 3d tendras un buen rendimiento.
Pero si tiene algo :-p pues el emulador le costara mas trabajo realizar todas las operaciones nesesarias.

Con esto ya quedo aclarado porque el DirectX y el Opengl y porque hay que tener una buena tarjeta aceleradora.




El bleem lo que hizo es que con las tarjetas aceleradoras le dieran cierta textura a los graficos de play patra que se vieran mejor!.

Osea mejoro los graficos.
Esto ya es algo comlicado porque se nesesita de mucha logica para poder hacer lo que bleem hizo.

Los demas emuladores pues tambien ya van para lo que llego bleem pero es demasiado complicado.

En cambio emuraydan quiere lograr el objetivo de un emulador.

El principal objetivo del emulador NO es que se mejoren los graficos, que vaya mas rapido que la consola, etc. El princiupal objetivo es que funcione tal y como la consola lo haria.

Una vez cumplido ese objetivo ya lodemas es mejoramiento.

Emurayden y VGS son muy buenos emuladores que solo emulan y no mejora.

Esos son de los mejores.

Bleem emula y aparte mejora, pero su emulacion no esta completa por su incompatibiliad.


Sobre los emuladores del play 2 pues es aun mas complicado porque los graficos son mas dificiles de traducir aligual que el sonido y el procesador porque el play dos es mas potente por lo que se nesesita un maquin mas potente y un emulador mas elaborado.

SI!!
si hay emuladores del play 2 creo que solo han salido 2 pero no se como se llaman solo oi que ya habia emuladores que funcionaran pero ibas a nesesitar una buena tarjeta aceleradora.


Espero que mi post haya sido de mucha ayuda.

Saludos y nos vemos despues.