mardi 30 octobre 2012

Quake bug (II)

Voici une nouvelle version de Quake, basée sur la version 68020 (celle sur le CD) puisque la version 68060 a un léger problème...

La version du CD contient donc beaucoup d'instructions émulées par la 68060.library sur un vrai CPU 060. Avec Oxypatcher, c'est très pratique, nous pouvons les voir :

Il faut savoir aussi que lorsqu'une instruction non-présente dans le 060 est émulée par la librairie, le multitâche est coupé : pas cool ça !

Ma nouvelle v1.10 en ôte maintenant beaucoup. Une vérification de Fpu a été aussi ajouté pour éviter un crach du programme si absent ainsi que la stack présente dans le .info ! Plus besoin de lancé un 'stack 16384' avant le jeu dans un cli, ce qui est bien pratique : 

Mais les plus importantes et aussi les plus lentes sont encore là...

Pas de speedup pour le moment : mais même en supprimant toutes les instructions émulées, est ce qu'il sera possible d'avoir un gain de rapidité ?

Voici quelques benchmarks, d'abord en AGA avec mon Apollo 1260@95 en 320x256 avec la version 020 :

Et avec la version 060 buggée sous l'eau :

Bof, pas grand changement. Pourtant tous les sinus et cosinus ont disparus avec cette version spéciale, les gars de PXL avaient bien bossé :

Un autre test en RTG cette fois avec une MK3@72 et sa CyberVisionPPC en 320x240. Ici avec la version 020 :

Et là avec la 060 buggée under water :

La nouvelle version est disponible ici.