En développement depuis plusieurs mois, la fonctionnalité de script est très attendue pour mGBA, le développeur Endrift nous informe que cette fonction a été fusionnée et est disponible dans les versions de développement de son émulateur. Avec cette fusion, les utilisateurs peuvent désormais écrire et exécuter des scripts en Lua, comme cela est possible dans certains autres émulateurs. Actuellement, il n'y a qu'un support préliminaire et de nombreuses fonctionnalités ne sont pas encore prise en charge.
Ces versions intègrent un exemple de script, cela montre comment intégrer les informations nécessaires, et il existe également une documentation sur l'API actuelle disponible.
Comme cette fonctionnalité est encore fraîche, le développeur attend un retour de chaque utilisateur qui tenterait d'en profiter, il existe désormais un canal #scripting sur le serveur Discord.
mGBA permet pour rappel d'émuler une Game Boy, Game Boy Advance ou Game Boy Color sous PC, 3DS, Nintendo Wii, PlayStation Vita, et même Nintendo Switch.
Les fonctionnalités actuelles sont actuellement implémentées :
- Accès en lecture/écriture à la mémoire de l'émulateur (via l'espace d'adressage complet ou via des domaines de mémoire) et aux registres
- Enregistrer l'enregistrement et le chargement de l'état
- Obtenir et mettre à jour les boutons actuellement pressés
- Obtenir divers états d'information sur le jeu émulé
- Prendre une capture d'écran dans le fichier
- Divers rappels, tels que par image, lorsque le noyau est réinitialisé, juste avant la lecture des clés, etc.
- Avance d'instruction, avance de trame et réinitialisation de l'état d'émulation
- Une console pour les loggings et des buffers pour afficher des informations textuelles à l'utilisateur
Cependant, plusieurs fonctionnalités sont actuellement notoirement absentes :
- Overlays ou similaires
- Intégration du débogueur
- Interaction avec l'état géré par le frontal, comme l'avance rapide ou la pause
- Support sur les portages d'homebrew
- Mode "Headless", pour exécuter des scripts en arrière-plan sans que l'émulateur ne soit visible pour l'utilisateur
- Prise en charge de langages autres que Lua, tels que Python
Bien que ces fonctionnalités seront ajoutées à l'avenir, elles pourraient ne pas figurer dans la première version finale avec le support script.
Téléchargement (versions dév) : mgba.io