Suivez-nous sur X
|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Test de E-UAE 1.0.0 JIT
(Article écrit par Mickaël Pernot et extrait d'Amiga Power - avril 2015, mis à jour en mai 2016)
|
|
E-UAE is magJIT ! Et Álmos est le prestidigitateur !
Vous ne le savez peut-être pas, mais les "nouveaux" Amiga sont
compatibles avec les logiciels qu'on trouvait sur les Amiga des années
1980-1990, mais de manière partielle puisque tous ceux utilisant les
puces spécialisées des Amiga ne peuvent pas fonctionner, la faute à
l'absence de ces dernières dans les AmigaOne, Sam, Pegasos II ou autres
Macintosh PowerPC. Les trois premiers font tourner AmigaOS 4, les
trois derniers font tourner MorphOS. Oui, la Sam460 et Pegasos II
sont compatibles AmigaOS 4 et MorphOS, ce qui sera aussi bientôt le
cas de l'AmigaOne X5000.
Pour pallier cela, et permettre de jouer à tous les jeux
de la ludothèque Amiga, puisque la très grande majorité des jeux
utilisaient ces puces dédiées, il nous faut par conséquent utiliser un
émulateur, à savoir E-UAE, un dérivé de WinUAE, performant mais qui
avait quand même ses limites. Cependant, grâce à Álmos "Rachy" Rajnai,
notre E-UAE PowerPC, à l'instar de son grand frère windowsien, s'est lui
aussi doté d'un JIT (qui signifie "Just In Time"). Ce JIT recompile en
fait à la volée des parties du code émulé pour le transformer en code
PowerPC dans le cas présent, ce qui accélère grandement les choses, et
c'est peu de le dire.
Un peu d'Histoire
L'émulation de l'Amiga par d'autres machines était une vaste
plaisanterie, du fait des puces dédiées qui compliquaient largement la
tâche, pas seulement des développeurs, mais surtout des machines qui
essayaient de l'émuler. Il fallait des machines surpuissantes,
qui n'existaient pas alors, pour que cela fonctionne à peu près
correctement. Je vous parle ici du milieu/fin des années 1990. Mais
voilà, avec l'avènement des machines dépassant les centaines de
Mégahertz, la mémoire qui continuait elle aussi d'enfler dans les
configurations PC, ce qui devait arriver arriva et les émulateurs
Amiga ont commencé à se creuser un trou. A l'époque, UAE puis WinUAE (sa variante spécifique pour Windows),
était déjà là, mais Fellow était aussi de la partie.
L'arrivée du JIT dans WinUAE a ensuite permis à toutes les configurations plus ou moins
modestes de pouvoir faire fonctionner correctement la majorité des
jeux Amiga... Ça y était, un PC du Carrouf' du coin pouvait faire
tourner les jeux Amiga. Pour concurrencer ces émulateurs, un autre
émulateur proposait l'originalité de ne pouvoir lancer que les
applications n'utilisant pas les puces dédiées et de pouvoir aussi
exécuter du code Amiga compilé en x86 (qui est, rappelons-le, le
processeur de chez Intel et AMD que l'on retrouve dans les PC, alors
que le processeur de l'Amiga était de la famille des 680x0, de chez
Motorola) tout en possédant lui aussi un JIT : Amithlon.
Celui-ci aurait pu devenir un environnement viable, même s'il était cantonné à
AmigaOS 3.1 (du moins au départ), mais des
mésententes
et diverses engueulades entre son auteur, Bernd Meyer et deux sociétés, Haage & Partner et Amiga Inc.,
en viendront à bout...
Finalement, l'Amiga connut un renouveau avec la sortie du Pegasos
et de son système MorphOS, puis avec la sortie de l'AmigaOne et
d'AmigaOS 4. Ces deux systèmes, à l'instar d'Amithlon, ne pouvaient
lancer que les applications "propres" (qui n'utilisent pas les puces)
mais avaient aussi l'avantage d'évoluer et de proposer des nouveautés.
Mais comme les machines n'étaient pas des super-calculateurs, même si
elles étaient relativement véloces pour l'époque (600 MHz pour le PowerPC G3
du Pegasos par exemple, qui passera à 1 GHz pour le PowerPC G4 du Pegasos II
qui aura en plus l'AltiVec), l'émulateur Amiga UAE permettait de faire
tourner ces vieux jeux de manière honnête mais il ne fallait pas
s'attendre à lancer des jeux pour Amiga 1200 un peu accéléré, voire
certains jeux Amiga 1200 de base.
Petit à petit, les machines accueillant AmigaOS 4 et MorphOS prirent
de la vitesse, mais l'émulation Amiga était toujours un peu juste, il
manquait toujours un petit quelque chose... Et ce petit quelque chose,
c'était le JIT. Disponible pour les possesseurs d'ordinateurs à base
de x86, ce JIT x86 ne pouvait malheureusement pas être réutilisé
puisqu'il était spécifique à ce type de processeur,
qui ne fonctionne pas du tout de la même façon que les PowerPC, base des
AmigaOne et autres. Et si MorphOS et AmigaOS 4
ont eux aussi un JIT (respectivement Trance et Petunia), ceux-ci ne
pouvaient pas non plus être adaptés à UAE. L'une des raisons est que UAE émule des choses au cycle près
comme l'accès à la mémoire Chip partagée entre les composants spécialisés et
le processeur : UAE aurait sans doute besoin de bloquer le processeur dans certains
cas. Pour que les divers JIT soient utilisables, il aurait aussi fallu
qu'UAE fasse tourner le code 68k dans une tâche d'exec.library.
Le développement de ce JIT PowerPC devait donc commencé quasiment de zéro, ce
que personne n'a voulu faire même lorsqu'une cagnotte (financée par
les utilisateurs et attribuée au développeur qui aura rempli le cahier
des charges écrit au préalable) fut créée en 2009. Avec pas loin de
3000 euros à la clé, personne ne voulait s'y atteler. Il fallut attendre
début 2011 pour que Álmos Rajnai se porte "volontaire".
Initialement prévu pour être terminé fin février 2012, il lui aura
finalement fallu près de quatre années pour venir à bout de ce projet
titanesque (qui fut annoncé le 2 janvier 2015).
Álmos avait tout de même un petit avantage par rapport aux
autres, il était l'auteur de Petunia, le JIT d'AmigaOS 4 !
E-UAE 1.0.0 JIT
Le fruit du labeur d'Álmos Rajnai est disponible à l'adresse
sourceforge.net/projects/euaeppcjit/files/1.0.0-Stable/.
Peu après, Fabien Coeurjoly proposa une version spécifique pour MorphOS qui est disponible, elle,
à l'adresse fabportnawak.free.fr/uae/. Et c'est cette dernière qui sert
de base pour ce test.
Entre la version précédente d'E-UAE (0.8.29, sans JIT) et celle proposée par Álmos Rajnai et Fabien Coeurjoly (1.0.0 avec JIT),
il y a eu les changements suivants :
- Ajout de la compilation JIT PowerPC.
- Ajout d'options pour le JIT dans les fichiers de configuration.
- Ajout d'un indicateur (LED) pour voir l'utilisation du JIT.
- Suppression du JIT x86.
- Gestion de l'overlay CyberGraphX (pour MorphOS).
- Gestion du processeur PowerPC G5 (dans la version de Fabien Coeurjoly).
- Correction de bogues.
Préparation de l'émulation
L'archive de E-UAE propose l'exécutable, des fichiers de documentation et divers outils. La version MorphOS
préparée par Fabien Coeurjoly ajoute quelques répertoires, des types MIME pour Ambient et des fichiers de configuration
déjà prêts pour l'émulation de diverses machines Amiga.
Il faudra évidemment ajouter une ou plusieurs ROM Kickstart à tout ceci afin de pouvoir lancer E-UAE.
Le Kickstart est un programme contenu en ROM intégrant les éléments essentiels du système d'exploitation et
un Amiga Classic ne peut pas démarrer sans. Vous pouvez soit acheter Amiga Forever,
la suite d'émulation officielle Amiga, soit récupérer les Kickstart de vos Amiga par vous-même.
La préparation et la configuration de E-UAE peuvent rapidement devenir compliquées si vous souhaitez optimiser les fichiers
de configuration. Un guide d'installation d'E-UAE sur MorphOS, très détaillé et en anglais est
disponible en PDF
(valable également pour la version JIT).
Avec ce nouveau E-UAE 1.0.0 JIT, vous pouvez réutiliser les mêmes fichiers de configuration et les mêmes fichiers-images
qu'avec l'ancienne version de E-UAE. Cependant, l'activation du JIT nécessite l'ajout d'options spécifiques. Elles
sont déjà présentes dans la configuration "WB.conf" de l'archive pour MorphOS mais absentes partout ailleurs. Voici
donc ce qu'il faut ajouter à votre fichier de configuration pour que E-UAE prenne en compte le JIT :
cpu_speed=max
cpu_type=68020
cpu_compatible=false
cpu_cycle_exact=false
blitter_cycle_exact=false
cachesize=8192
comp_constjump=yes
comp_trustbyte=indirect
comp_trustword=indirect
comp_trustlong=indirect
|
Ensuite, il ne reste plus qu'à lancer vos systèmes et applications, que ce soit au format HDF (disque dur virtuel)
ou ADF (disquette virtuelle).
Résultats des courses
Tout d'abord, sachez que SysInfo, qui permet d'avoir quelques
informations sur son Amiga, et qui fait aussi un petit calcul du
nombre d'opérations à la seconde, donne un processeur 68020 à 10 MIPS
sans JIT contre un processeur 68020 à 88 MIPS avec le JIT ! La
différence entre les deux est, par conséquent, déjà plus qu'évidente
sur mon PowerBook G4 à 1,67 GHz. Pour ce qui d'un Mac mini G4 à 1,33
GHz, celui d'Alexis Mouth pour ne pas le citer, il tourne à près de 66 MIPS,
ce qui est plus qu'honorable et ce qui rend le tout enfin utilisable.
SysInfo confirme l'impression de vitesse
Autre sentiment, le démarrage d'un système complet semble nettement plus
rapide et surtout l'utilisation du Workbench émulé est d'une fluidité
quasi parfaite (j'utilise un Workbench en AGA en 640x480) et surtout
bien meilleure qu'avant. Même un Workbench en RTG avec une résolution de 1920x1080
est fluide et totalement utilisable, on ne se croirait pas sous émulation !
Pour être totalement sûr de mon coup, je lance le jeu Alien Breed 3D avec
E-UAE sans le JIT... Outch, que c'est lent, je ne sais même pas si
j'atteins les 5 FPS... Comparons avec la version JIT : nom de Zeus !
C'est fluide, probablement pas très loin de 30 FPS ! Et le résultat
est encore plus saisissant avec Alien Breed 3D 2, plus complexe que
son ainé, et qui est enfin jouable ! Ce qui est étrange, puisque la DEL (oui Diode ÉlectroLuminescente en
bon françois, ou bien LED si vous préférez) dédiée au JIT reste
rouge, ce qui signifie que celui-ci n'est pas activé... Étrange, et
surtout tout bonnement incroyable. Le constat se répète avec d'autres
jeux de tir subjectif comme Breathless. Bien évidemment, le JIT ne permet pas de faire
des miracles puisqu'il ne fonctionne qu'avec un processeur 68020 et plus.
De ce fait, les jeux n'utilisant pas ces processeurs ne tirent pas
parti du JIT. Malgrè cela, il faut avouer que le JIT apporte un
souffle nouveau à l'émulation Amiga sur ordinateurs PowerPC, et
notamment sur AmigaOne/Sam/Pegasos/Mac PowerPC !
Alien Breed 3D 2 enfin jouable sur E-UAE PowerPC
Une petite astuce importante à noter : si vous utilisez MorphOS et que
vous trouvez que votre E-UAE JIT se traîne, allez télécharger la
version compilée par Fabien "Fab1" Coeurjoly et disponible sur
fabportnawak.free.fr.
La différence entre sa version et celle disponible sur le Sourceforge officiel est d'un
facteur de 2 ! D'autre part, si vous utilisez un portable sous MorphOS et que vous utilisez
la version de Fabien Coeurjoly et que ça continue de se traîner, vérifiez que vous
avez bien l'alimentation branchée. En effet, MorphOS gérant assez
efficacement l'énergie, il réduit par défaut la puissance utilisable
sur les ordinateurs portables qui sont sur batterie. Par conséquent, soit vous
allez bidouiller dans les préférences de MorphOS soit vous remettez le
fil à la patte de votre portable !
J'ai également testé E-UAE 1.0.0 JIT sur mon Mac mini G4, qui est tout de même
légèrement surcadencé et tourne à 1,75 GHz (il s'agit également de la
version qui possède 64 Mo de mémoire vidéo) et les résultats sont
identiques à ceux obtenus avec le PowerBook G4. La sensation de vitesse
est là aussi bien présente. La version compilée par Fabien Coeurjoly offre également
la gestion (efficace) du PowerPC G5, chose qui est absente de la version d'Álmos Rajnai.
Slam Tilt
Pour ce qui est de SysInfo, le nombre de MIPS obtenu est proche de celui
avec le PowerBook G4, à savoir 84,3 en mode fenêtré sans overlay
(pour pouvoir faire les captures d'écran) contre 88 pour le
PowerBook G4. Toutefois, le Mac mini G4 monte à 88 MIPS en plein écran avec
l'overlay activé (la gestion de l'affichage est réalisée par la carte graphique,
ce qui libère un peu de temps processeur).
Le mot de la fin
Comme écrit en titre, E-UAE est désormais magJIT, voire magique avec le
JIT ! C'est désormais un vrai plaisir d'utiliser son Amiga émulé sous
MorphOS ou AmigaOS 4. Personnellement, j'ai réinstallé un AmigaOS 3.1 de
base qui se lance sans rien de plus pour pouvoir utiliser iGame et
ainsi lancer de manière "transparente" les jeux WHDLoad notamment.
J'ai aussi installé les scripts Ambient disponibles dans l'archive
d'E-UAE MorphOS afin de simplifier toujours plus le lancement d'ADF ou
autres exécutables 680x0.
Un Workbench 3.1 sous E-UAE
En plus de ces scripts qui me permettent de lancer UAE de manière
"invisible", j'ai aussi créé des icônes qui me lancent les
configurations souhaitées afin d'arriver sur le Workbench de mon choix (dont
un clone de mon A600 et de son disque dur de 20 Mo ^^) ainsi que des
raccourcis vers les répertoires qui font office de disque dur pour E-UAE
afin d'avoir facilement accès à ceux-ci et de pouvoir y copier
facilement mes exécutables et autres. Ce qui est pratique, c'est que
la copie de fichiers dans un de ces répertoires/disque dur est
immédiate et le fichier est disponible instantanément sous UAE. Royal !
Icônes pour lancer la configuration souhaitée
Nom : E-UAE 1.0.0 JIT.
Développeurs : équipe UAE, Álmos Rajnai.
Genre : émulateur Amiga.
Date : 2015.
Configuration minimale : machine sous AmigaOS 4 ou MorphOS, PowerPC, 8 Mo de mémoire.
Licence : à code source ouvert.
Téléchargement : sourceforge.net/projects/euaeppcjit, fabportnawak.free.fr.
NOTE : 9/10.
|
Soutenez le travail d'Obligement
|
|
|