A very simple Commodore Amiga question

What does have even the most ridiculous Amiga 500 which is preventing any of the emulators around there to work properly? Why there is not a single emulator which works decently? I tried to see a pair of old amiga demos (well, basicly State of The Art), and I couldn't stand that slow agony for too long… I know Amiga had several dedicated processors (Paula and so on), but it had around 16MHz processor, and we are talking about emulating it with machines of more than 1000 Mhz, which also have their own dedicated chips (graphic card, sound card).
We have seen good Megadrive, SuperNes and even NeoGeo emulators… all of these machines had their own dedicated chips for sound, graphics, etc, if I am right, so something is going wrong here… I'd like to listen any kind of explanation, as I think I'm missing something for sure :-) (and super greetz go to Humphr3y which I am sure that will like to know why as well, as we commented about this issue some time ago)


Madgoblin
20060214
LOL… State of the art runs on a amigo 500 at 7 Mhz :)
Anyway, with uae you can get very decent speeds… if you know how to configure it properly. This means that doesnt exist a perfect configuration that runs everything at full speed (Imo talking about demos/games). On a pc you can give a try to Fellow (another amiga emu) or amiathlon / amiga XL (but those are really hard to configure and usually require a hard disk partition for them)
sole
20060214
which settings do you have on your macuae? I'm beginning to think it is just me and my "let-the-default-settings" habit…
Madgoblin
20060214
WTF!!! Are you using macuae?? mmm try e-uae
http://www.rcdrummond.net/uae/
Madgoblin
20060214
take a look here too:
http://emulation.victoly.com/amiga/
sole
20060214
thanks :)
i'll take a look there then… you could have told me those links when I asked you, EVIL!
Madgoblin
20060214
I didnt know them… i just used the ubser-super-dupper-mega-google-of-the-death(tm)
sole
20060214
you liar!!! when i asked you about amiga emus you told me: "oh i was just watching some demos!!"
vengeance will be terrible!! }:-D
winden
20060214
What amiga custom chips has is defined synchronization between every part, and it's documented on the Amiga Hardware Reference Manual. So, for proper pixel-perfect emulation, you actualy need to switch between cpu, blitter, copper and paula emulation on each and every hardware cycle. And as the base board ran at 28Mhz, you really need very powerful hardware to get the real deal. It's the same that is done on C64 emulation, but with much more complex cpu and chipsets.
So, actually if UAE with "pixel-perfect" settings is not running at 50fps, then it's due to lack of power on the host part, the same way you need about x86 with 400mhz at least to run a c64 emulator with cycle accurate timming.
Which reminds me, that one of these Sun T1000 processors with 32 hardware threads _may_ be a very good thing to have for amiga emulation ;)
Jcl
20060214
You need newer hardware, your mac is obsolete :-)
sole
20060214
winden: thanks for the info! i didn't know anything about that syncro part :)
jcl: i think it's needless to say i am not using the mac for emulating amigas every single day of my life, you know ;)
humphr3y
20060215
Bueno, lo de los emuladores de Amiga … ya sabeis lo que pienso pq lo he dicho muchas veces. Despues de muchos años de intentos, por ejemplo actualmente consigo ver bastante clavada la Smoke Bomb en mi P4 a 2,4 (GF5900, 1Gb RAM)… pero sigue siendo alucinante como determinadas demos con uso de copper (como State of the Art, como bien comentas) aun se arrastran en esas partes (In Progress^Darkness también es bastante chungo llegar a verla 100%)… es el mundo al revés …
Anyway… me gusta ver el emulador de A500 en la PSP… se arrastra… pero es divertido comprobar el lemmings original vs el lemmings de PSP para ver como ha cambiado el tiempo :D
shash
20060215
A ver… Es un tema algo largo de explicar, pero para resumirlo de forma MUY simple:
- Normalmente, para maquinas >68000 se usa un recompilador dinamico, que sacrifica timing en pro de la velocidad, o en su defecto, y que para el caso es lo mismo, se ejecuta una instruccion completa, sin tener en cuenta que durante alguna de los ciclos que consume la instrucción, uno de los valores de otros cores puede cambiar. Emular esto consume muchisima cpu. De hecho, hay un emulador de snes que lo hace, y pide 2,6ghz para 8mhz de cpu+apu+dsp. Si quieres mas detalles, puedo dar links y documentación, pero a grandes rasgos es esto.
Resumiendo, o quieres precisión pura y dura (y lentitud) o haces aproximaciones para el DMA/cores paralelos/etc que resulta en errores varios/parcheos feo. La mayoria de emuladores de consola corresponden al segundo grupo. El UAE no sé que tipo de emulación usa, pero almenos con esto te puede hacer un poco a la idea.
Jcl
20060215
Sole: still obsolete! :)
humphr3y
20060216
Shash… ya te pillo en una party y me lo "plicas" en cristiano.. que no soy coder :D