Gameboys    La Gameboy

Une gameboy

Description

La GameBoy est la console portable de Nintendo. C'est une console de jeux video, néanmoins elle demeure être un formidable outil de programmation pour les électroniciens !!!
En effet dans des revues electronique comme Elektor, elle a souvent été l'objet de transformations inattendues : ils ont réussit à la transformer en un Oscilloscope numérique portable (GameBoy Digital Storage Scope) !!! Il suffit de changer de cartouche pour changer la fonction que fait le gameboy. Dans cette page nous allons découvrir comment fonctionne la GameBoy.

La GameBoy utilise un circuit similaire au Z80 qui est lui même un dérivé du 8080 de Intel. Il contient donc toutes les instructions du 8080 en dehors de celle utilisé pour les permutations. Il sait exécuter des programmes de jeux et peut donc prendre à sa charge une part des fonctionnalités de votre montage (gestion de l'affichage, du clavier, de sa mémoire, des ports de communication (série, IR et port d'extensions). Pour pouvoir exploiter ces composants il faut parfaitement connaitre la programmation en assembleur du 8080. Néanmoins une solution reste enviseageable pour les plus fainéant d'entre vous il existe un compilateur C pour le Gameboy : Le Gameboy Devellopement Kit. Ce qui rend le devellopement d'application plus simple, car le language C est un language universel. Il vous reste plus qu'a commencer à apprendre le C pour commencer à développer sur le Gameboy!! Mais si vous tenez tout de même à programmer en language machine , de nombreux assembleurs sont disponible sur internet comme RGBDS, TASM (Table ASsembler) et ADVancedGBIDE. De nombreux tutoriels existe sur internet il sont très biens fait : à voir dans les liens.

Les caractéristiques techniques du Gameboy sont les suivantes : Tous ces informations sont regroupées dans un document appelé GBSpec.

Les Cartouches     

        Le nom le plus courant pour  for a Gameboy game-cartridge is 'cart'. Une cartouche contient une mémoire ROM nécessaire pour débuter le jeux. La mémoire ROM est en fait le jeux. Cette mémoire est mapper dans les 32Ko de la mémoire basse du Gameboy. The bottom 16 KB is fixed, the resst of the ROM is mapped in the second 16 KB of the memory map, using bank switching. For this purpose the Memory Bank Controller (MBC) is present. The cartridges I took apart all have the MBC-1 inside so I will only pay attention to this particular one. Please read the documentation section (see navigator) for all details.

cartouchecaesar


Baby Blue -- 8Mbit Single Time Write Game ROM

Red -- 256kbit SRAM to Hold Save Data

Dark Blue -- Memory Bank Controller 5 ( Allows the puny 8bit gameboy CPU to access large game ROMS and SRAM. )

Yellow -- An attempt to remove the chip in green with a shitty soldering iron goes bad.

Green -- MM1134A Chip Protects SRAM by switching from power from the gameboy to power provided by the onboard battery.

Purple -- I hate onboard batteries so I removed this one. ; )


    Voici le contenu d'une cartouche de Gameboy. Les cartouches Gameboy les plus complètes sont composées d'une alimentation interne, (pour conserver le contenu de la RAM même lorsque que la cartouche n'est plus alimenté par la gameboy), une mémoire RAM, une mémoire ROM et un controleur MBC (MB5 dans notre cas). Les cartouches les plus simples peuvent être composées simplement d'une ROM quand le jeux ne nécessite pas de mémoire afin de sauvegarder des données.