Obligement - L'Amiga au maximum

Vendredi 06 juin 2025 - 13:06  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in English


Réseaux sociaux

Suivez-nous sur X




Liste des jeux Amiga

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


Trucs et astuces

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


Glossaire

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


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Actualité : wolfSSL pointe son museau sur Amiga
(Article écrit par Andrew Hutchings et extrait de linuxjedi.co.uk - décembre 2024)



Comme beaucoup d'entre vous le savent probablement, je suis l'un des développeurs de wolfSSL, une bibliothèque de sécurité SSL/TLS. Je suis spécialisé dans le portage sur diverses plates-formes, depuis les microcontrôleurs 16 bits jusqu'aux gros processeurs de serveurs 64 bits. J'ai décidé de voir si je pouvais faire fonctionner wolfSSL sur une plate-forme vieille de 30 ans, en particulier "Jops", l'Amiga 4000 que je viens de restaurer.

Portage

wolfSSL a déjà un portage sur 68000, donc une partie du travail est faite pour moi. La partie la plus délicate est de générer de l'entropie pour l'alimentation du générateur de nombres aléatoires. Les moyens typiques de le faire sont les horloges (surtout pas synchronisées avec le proesseur) et les ports analogiques.

Au début, je voulais essayer d'utiliser le compteur HSYNC, mais malheureusement le planificateur de du Workbench synchronise les tranches de temps de l'application avec celui-ci, donc il n'y a pas vraiment d'entropie ici. A la place, j'ai fini par utiliser une combinaison du compteur E-clock à environ 7 kHz, le compteur du nombre de tics de la souris, et l'entrée analogique sur le port manette. Ce n'est pas parfait, mais cela devrait suffire pour l'instant.

Pour les développeurs, voici la partie principale du code :

UBYTE amiga_rng(void)
{
    struct EClockVal clockval;
    UBYTE rng_out;
    UWORD old_pot = potgo;
    potgo = 0x0fff;
	do {
		ReadEClock(&clockval);
	} while (clockval.ev_lo == last_time);
	last_time = clockval.ev_lo;
    rng_out = pot1dat ^ joy0dat ^ clockval.ev_lo;
    potgo = old_pot;
    return rng_out;
}

Le registre "potgo" active/désactive certaines parties de l'entrée analogique pour les ports manette et de la souris, "joy0dat" est le compteur pour le mouvement de la souris.

Après cela, il ne restait plus qu'à créer "user_settings.h" à partir des modèles de WolfSSL et d'un Makefile. J'ai réglé les paramètres de compilation sur un 68030, et il est possible qu'un FPU 68881/68882 soit nécessaire pour fonctionner, mais ces paramètres sont faciles à modifier.

Lorsqu'il est exécuté sur un vrai Amiga, la taille de la pile de l'exécutable doit être augmentée à au moins 16 ko. Le test de performance wolfSSL se compile en un exécutable de 400 ko et nécessitera probablement 1 Mo de mémoire disponible pour fonctionner.

Le code source est disponible ici.

Tests

Tout d'abord, j'ai testé FS-UAE sur mon ordinateur portable, en utilisant une configuration très similaire à celle de mon Amiga 4000. Je ne vous ennuierai pas avec les résultats des tests, mais voici les résultats du test de performance.

wolfSSL

Cela ne va pas battre des records, mais je suis assez impressionné jusqu'à présent, certaines des plates-formes embarquées pour lesquelles je développe ne peuvent pas atteindre ces vitesses. Mais est-ce que cela est pareil sur du matériel réel ?

Amiga réel

Mon Amiga 4000 dispose d'un processeur 68060 cadencé à 50 MHz et de 388 Mo de mémoire. Cette spécification ùaurait été très chère au début des années 1990, quand cette machine était nouvelle. Il n'était pas bon marché de la construire comme elle l'est aujourd'hui. Il a également fallu beaucoup de travail pour réparer tous les dommages causés à la carte mère par les puces défectueuses et les fuites de la batterie.

wolfSSL

wolfSSL

La machine appartenait auparavant à Stoo Cambridge, l'artiste de Sensible Software à l'origine de jeux tels que Cannon Fodder. Il l'utilisait là où il travaillait après Sensible Software.

Résultats

J'ai copié les exécutables sur l'Amiga et j'ai lancé le test de performance. Voici le résultat (avec celui de WhichAmiga).

wolfSSL

En général, les performances sont à peu près équivalentes à celles de l'émulateur. Les performances de RSA et ECC n'étaient pas très bonnes, mais il s'agit d'une puce à 50 MHz, donc je ne devrais pas être surpris. Étant donné les contraintes matérielles des années 1990, je suis très satisfait des résultats.

L'avenir

Il y a beaucoup d'options pour l'avenir. Je peux ou non travailler dessus. Il pourrait s'agir de... :
  • Faire un portage pour remplacer AmiSSL, il devrait être plus léger et plus rapide. wolfSSL a une API compatible avec OpenSSL, donc je pense que cela ne devrait pas être trop difficile.
  • J'ai essayé sur mon Amiga 1200 avec un PiStorm32-Lite, c'est comme si j'avais un processeur 680×0 à 2 GHz.
  • La carte graphique ZZ9000 est équipée d'un processeur ARM, un coeur est utilisé par la sortie vidéo, mais il y a un coeur de rechange. Il y a une API pour télécharger du code depuis l'Amiga. Je pourrais décharger wolfSSL sur ce coeur.
  • Porter d'autres éléments de la suite de bibliothèques et d'outils wolfSSL.
En particulier, je veux essayer de faire un portage de wolfSSH. Il sera intéressant de voir si SSH peut être utilisé pour communiquer avec mon ordinateur portable, et télécharger des fichiers. Ce ne sera certainement pas aussi rapide que le FTP, mais ce sera un projet amusant.


[Retour en haut] / [Retour aux articles]


Soutenez le travail de l'auteur