Copy Link
Add to Bookmark
Report

Développer sur GameBoy Advance (part 2)

Dreamcast's profile picture
Published in 
GameBoy
 · 9 Feb 2020

Développer sur GameBoy Advance
[Méthode automatique]
Remontez l'arborescence pour trouver la méthode manuelle!
Par Linuxshell

Ce tutorial fait suite à celui de la méthode manuelle, en effet les outils présents sur le net se révèlent de meilleurs qualités qu'au début de l'aventure, de plus ils sont précompilés, pas besoin de connaitre les options de compilation de GCC, binutils,etc...que demander de plus?


[Disclaimer On]
Bien que nous essayons d'assurer la fiabilité de l'information figurant sur cette page, l'auteur (et l'hébergeur) ne peut être tenu pour responsable de quelque perte, dommage ou désagrément provoqué par le fait d'une erreur, d'une inexactitude ou d'une omission figurant sur ces pages.
[Disclaimer Off]

Préparation de l'environnement de programmation. Afin de créer des jeux pour Game Boy Advance, vous devrez compiler vos sources, tout comme dans la version manuelle du reste, et donc pour cela un compilateur. Il y a le compilateur ARM, mais payant, et comme nous pouvons nous en sortir aussi bien avec des logiciels libres, faisons-le! Ainsi nous nous servirons d'un kit non-officel de programmation pour Game Boy Advance, que nous téléchargerons sur http://www.io.com/~fenix/devkitadv/ rubrique Download.

Admettons maintenant que vous développiez sous Windows, un tutorial Linux suivra pour les autres,
bien que gnéralement ce genre de tutorial pour les *nixien ne soit pas indispensable :).
Vous n'avez donc pas besoin de tout prendre, voici la liste des fichiers présentés:
- agb-win-core-r5.zip : la 5ème version du coeur du compilateur, essentiel;
- agb-win-binutils-r4.zip : nécessaire pour l'assemblage et le linkage, essentiel;
- agb-win-gcc-r4.zip : compilateur GCC, essentiel! :)
- agb-win-newlib-r4.zip : les librairies standards, utilesi vous ne voulez pas réinventer la roue;
- agb-win-libstdcpp-r4.zip : les librairies C++, inutile si vous codez en C;
- agb-win-patch-r4.zip : possibilité future de patcher ses créations?
- interflip.zip : programme pour s'arranger avec le bit interwork dans les fichiers objets ARM ELF;
- agb-source-r4.zip : pouvoir ajouter des fonctions à GCC...pas très utile pour le moment;

Dézipper tout ça... :)
Alors il parait(ici je me réferre à ce que j'ai lu ici et là), que le fonctionnement de tout ça peut poser problème si ce n'est pas placer directement à la racine du système de fichier... autant sous Windows cela ne posera aucun problèmes, autant sous un système Unix(que ce soit Linux ou BSD le problème est le même=, vous n'aurez pas forcément accès à la racine de votre système...à part si bien sûr vous êtes root enfin on verra ça dans le prochain tutorial :).
Pour en revenir au dézippage de tout ça, vous devrez tout mettre dans C:\DevKitAdv.
Et hop! Tous les outils sont fonctionnels sans toucher une seule ligne de code! :)

Tester notre installation.


Ouvrez votre shell batch, puis tapez:
- PATH=c:\devkitadv\bin;%PATH%
- cd exemple
- make

La première ligne indique au shell où se trouve nos binaires comme GCC et make.

Ici normalement devrait s'afficher:
- gcc - mthumb-interwork -o GBADemo.elf main.o -lgcc -lm -lg -lstdc++ (1)
- Ended linking phase
- objcopy -O binary GBADemo.elf GBADemo.bin (2)

Si jamais cela ne marche toujours pas, essayez de taper (1) puis (2) à la main.
Puis is ça marche toujours pas je peux plus rien pour vous. :)

Donc qu'est-ce qu'ont a fait exactement?
(1) : on appelle GCC par son nom(gcc), en lui demandant de compiler avec les instructions thumb, d'appeler le fichier de sortie GBADemo.elf, celui d'entrée main.o, avec les librairies gcc, C++, puis d'autres mais réferrez-vous directement à 'gcc --help' pour avoir des informations. :)

Conclusion.

Voilà la méthode 'automatique', la plus simple à quiconque veut se concentrer surce qu'il fait et non comment il le fait, dans les prochains tutoriaux nous verrons comment se débrouiller avec les Makefile, les même que ceux que l'ont appelle avec la commande 'make'.
J'espère que ce tutorial pourra aider certains. ;)
Stay tuned!

← previous
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT