| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

ASM z80

Page history last edited by PBworks 16 years, 4 months ago

Programmer en ASM pour TI z80

 

Crée le 17 Novembre 2007
version 1.0
Dernière modification le 19 Novembre 2007 par Tama
   Vous trouvez le basic trop lent ? vous voulez avoir accès à plus de fonctionnalités ? Alors il vous faut l'ASM
    Bon, outre que cette phrase fait un peu slogan de pub, elle est quand même vraie. L'ASM est beaucoup plus rapide que le basic et permet nettement plus de choses que celui-ci.

En revanche, l'ASM est difficile à apprendre. Enfin, au début. Ce n'est pas un langage instinctif comme le ti-basic car il est de beaucoup plus bas niveau, c'est-à-dire qu'il est beaucoup plus loin de notre langue maternelle et plus proche du langage machine, composé uniquement de 0 et de 1. Toutefois, après quelques semaines, vous devriez être capable de faire des programmes corrects, sans non plus sortir le super-jeu-de-la-mort-qui-tue-tout. Il faudra encore quelques mois pour ça.

    Tout d'abord, avant de commencer ce tutorial, signalons qu'il n'a pas été écrit par des experts, et qu'il existe toujours des erreurs (l'erreur est humaine, dit-on). C'est pour quoi certains tutorials seront proposés dans la dernière partie de ce tutorial pour compléter ce que vous aurez (ou pas) appris et acquis et corriger les erreurs de ce tutorial.
    Voilà c'est tout, maintenant nous pouvons commencer :)
De quoi ai-je besoin pour programmer en ASM ?
Tout simplement d'un compilateur, c'est-à-dire un programme pour traduire ce qu'on va écrire en un langage compréhensible par la machine, c'est-à-dire composé uniquement de 0 et de 1.
Des liens pour télécharger des compilateurs sont proposés tout à la fin de ce tutorial, après, il ne s'agira plus que de coder :)
Avant de commencer : les bases

Premiers pas en ASM
Les registres, stocker une valeur dans un registre, la pile
Les ROM CALL
Les ROM CALL sont des appels de fonctions predefinis dans la memoire de la Ti. Ces fonctions sont precises et ne peuvent sortir de leur contexte.
Leur syntaxe est la suivante:
    bcall(_NOMROMCALL)
_NOMROMCALL correspond au nom de ce que vous appelez, qui est transforme par le compilateur en une adresse hexadecimale, celle ci doit etre contenue dans le fichier 'include' fournit avec le compilateur, ou si ce n'est pas le cas peut etre rajoute dans l'header.
Certaines ROM CALL n'ont pas besoin d'entrees, comme _clrlcdfull qui comme son nom l'indique efface le contenu de l'ecran.
D'autres necessitent des entrees particulieres dans des registres predefinis, comme ILine (d'adresse 47E0 en héxadécimal)

Les shells/kernels

La VAT
Les interruptions/TSR
Les sprites/Les graphismes

 

Conclusion
    Voilà enfin la fin du tutorial. Maintenant vous avez de quoi faire avec tout ce que vous avez appris :)
    Pour compléter vos connaissances, comme indiqué dans l'introduction, voici quelques tutos/programmes utiles :
Tutoriaux
  • ASM in 28 days : comment apprendre l'ASM en 1 mois online
    • Très complet, très bien expliqué, mais entièrement en anglais :)
    • Pour la version offline (à télécharger), c'est par ici
  • ASM Guru : version anglaise
    • Un tutorial aussi complet, avec beaucoup de choses à apprendre, en version anglaise ET française :)
    • Pour la version française, c'est ici
Programmes
    Sur PC

 

    Sur TI
  • OTBP assembler, un assembleur performant directement sur TI
    • OTBP assembler ++,  le même légèrement plus rapide, avec quelques fonctionnalités supplémentaires
  • Chasm, une application également capable de compiler un programme assembleur
  • Ion (v1.6), le kernel pour certains programmes
  • Mirage OS (v1.2), un shell pour certains programmes, également doté d'options utiles

 

Autres
Voilà c'est tout, maintenant amusez-vous bien à programmer :)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Tama & Syfo
2007

Comments (0)

You don't have permission to comment on this page.