P.O.W. sur Amiga AGA : le beat'em up de SNK arrive sur A1200

P.O.W. sur Amiga AGA : le beat'em up de SNK arrive sur A1200

P.O.W. (Prisoners of War) de SNK fait partie de ces beat'em up d'arcade qui n'ont jamais vraiment eu sur nos machines de salon l'adaptation qu'ils méritaient. Un développeur connu sous le nom d'ESKAY est en train d'y remédier avec une conversion AGA native pour l'Amiga 1200, construite à partir du code de la borne elle-même. Une nouvelle alpha est déjà disponible, et vous pouvez désormais y jouer du début à la fin.

Une obsession d'adolescent qui boucle la boucle

Ce projet est une affaire personnelle. Adolescent, ESKAY possédait la carte JAMMA originale de P.O.W., et son amour pour ce jeu ne date donc pas d'hier. Des figures de la scène comme Hoffman lui ont donné un surcroît d'inspiration, et tout a commencé avec une version partielle du premier niveau tournant sur A1200.

Selon ESKAY, il s'agissait au départ d'une expérience de programmation qui lui a "échappé". Quatre mois de travail sur son temps libre plus tard, le résultat ressemble à bien plus que ça.

De la ROM d'arcade à du C propre

C'est la méthode qui est la plus intéressante. ESKAY compte 25 ans d'expérience professionnelle en programmation et s'est appuyé sur des outils d'IA comme Claude Code et Codex pour traduire le code machine de la ROM d'arcade en C propre. Si cela vous dit quelque chose, c'est normal : l'approche ressemble à celle du portage d'Outrun codé par IA arrivé récemment sur Amstrad CPC.

Des scripts maison ont extrait les données des cartes et le comportement des sprites directement depuis l'émulateur MAME. Une chaîne de débogage assistée par IA a ensuite comparé les paramètres du nouveau code C à l'état de la borne d'origine, encore et encore, pour garantir la fidélité de l'ensemble. Ça fait beaucoup de vérifications, et cela se voit dans la fidélité visée par le résultat.

Tirer le maximum de l'A1200

Côté Amiga, ESKAY a recours à quelques astuces sérieuses :

  • Triple buffering
  • Défilement entièrement matériel
  • Une interface de jeu affichée uniquement avec des sprites matériels

Résultat : les objets du jeu se déplacent avec une fluidité étonnante sur un A1200 équipé d'un processeur 020 standard et de 2 Mo de Fast RAM. Pas besoin d'une carte accélératrice monstrueuse.

Il y a aussi un joli bonus. ESKAY a séparé le moteur du jeu du code propre à chaque plateforme. Grâce à ça, le moteur a également été compilé, à titre de preuve de concept, sur Sharp X68000, Sega Mega Drive, Atari STE et PC. La version Amiga reste toutefois la plus aboutie et la plus solide du lot.

La nouvelle alpha : du premier niveau au générique

La dernière mise à jour apporte une nouvelle alpha jouable de bout en bout, du niveau d'ouverture jusqu'au générique de fin. Elle tient désormais sur deux disquettes avec chargement des niveaux, et 2 Mo de Fast RAM sont nécessaires.

Le jeu n'est pas encore terminé. Selon les propres mots d'ESKAY, "le saut de la cascade et l'ascenseur demandent encore du travail". La séquence de l'ascenseur pourrait finir par utiliser un mode dual playfield en 16+16 couleurs pour être au point.

Le son est l'autre pièce manquante. ESKAY cherche un musicien pour composer un fichier .mod Amiga sur mesure pour le premier niveau, avec environ 100 Ko de mémoire réservés rien qu'à la musique. La bande-son de la borne a un côté rugueux, alors celui qui relèvera le défi a de quoi s'amuser.

Le projet est suivi sur EAB, le forum English Amiga Board, où l'alpha peut également être téléchargée.

Notre avis

P.O.W. sur Amiga s'inscrit parfaitement dans une vague de conversions arcade qui ne cessent de prouver que l'A1200 avait plus de ressources que la plupart d'entre nous ne le pensaient à l'époque. Nous avons déjà vu Castlevania AGA atteindre la version 1.0, et Gun.Smoke de Capcom sur Amiga AGA témoignait du même appétit pour des portages arcade fidèles.

Ce qui retient l'attention ici, c'est la méthode. Associer des décennies d'expérience à des outils d'IA et à l'extraction de données depuis MAME laisse entrevoir un chemin plus rapide entre la ROM d'arcade et le matériel rétro que l'ancienne approche entièrement manuelle. Séparer le moteur du code de la plateforme est aussi un choix malin, et il sera intéressant de voir si les versions X68000, Mega Drive ou STE iront un jour au-delà de la preuve de concept.

Pour l'instant, ce qu'il faut surveiller, ce sont les corrections de l'ascenseur et de la cascade, et l'arrivée éventuelle d'un musicien pour remplir ces 100 Ko avec quelque chose de suffisamment percutant. Si vous avez un A1200 avec de la Fast RAM, l'alpha vaut le coup d'oeil.