Logicielsmoto.com

Nous sommes le 28 Mar 2024, 17:02

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 21 messages ]  Aller à la page Précédente  1, 2
Auteur Message
 Sujet du message:
MessagePosté: 10 Mai 2006, 07:48 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 492
jasz a écrit:
En regardant ton screenshoot on se rend compte que les opérations de branchement sont relativement gourmandes en TM.


Ce sont les JSR ... Un JSR implique un empilement du PC dans la pile S puis un branchement. C'est effectivement beaucoup plus long qu'un simple JMP ... D'ou justement l'avantage de les eviter en faisant par exemple une pile de JSR a l'avance qu'il suffit juste de depiler (RTS) comme discute dans un autre topic. Ca fait gagner 8 cycles a chaque fois ;)


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 10 Mai 2006, 09:15 
Hors ligne

Inscription: 13 Juin 2005, 21:50
Messages: 290
Localisation: Planete Zorg (31)
... et pas que les JSR, les BSR et les LBSR aussi.

Tout les appels en sous routine en fait...


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 10 Mai 2006, 09:29 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 492
jasz a écrit:
... et pas que les JSR, les BSR et les LBSR aussi.

Tout les appels en sous routine en fait...


A prendre avec des pincettes quand meme, je n'ai pas totallement verifie la valeur des cycles, et il se peut qu'il y ait des erreurs. Quand j'aurais fini toutes les instructions, je les passerais toutes a la verification des cycles et mode d'adressage ;)


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 10 Mai 2006, 15:21 
Hors ligne

Inscription: 13 Juin 2005, 21:50
Messages: 290
Localisation: Planete Zorg (31)
C'est ce qui est indiqué sur le manuel de programmation du 6809; LBSR- 9 cycles, BSR- 7 cycles ;)

Tu n'a commis aucune erreur :)


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 13 Mai 2006, 17:59 
Hors ligne

Inscription: 13 Juin 2005, 21:50
Messages: 290
Localisation: Planete Zorg (31)
Actuellement, je me prend la tête avec la routine KC (keyboard controller). Les routines moniteur implantées en $E806 et $E809 ne sont qu'un enchevètrement de JSR et de JMP.

N'y a t-il pas une méthode plus simple pour faire une routine KC?

Du style:
CMP.B $#39,$FC02.W '57 est le code de la touche space sur st et $FC02 est le registre moniteur de l'entrée clavier un peu comme $E7C8 (enfin,je crois que c'est $E7C8).

Car mon programme utilisera les touches shift,cnt et raz.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message:
MessagePosté: 09 Juin 2006, 09:17 
Hors ligne

Inscription: 13 Juin 2005, 21:50
Messages: 290
Localisation: Planete Zorg (31)
Je me prends la tête en ce moment avec le keyboard controler.

La lecture du clavier selon le manuel se fait en $E7C8. Cependant quand une touche est frappée sa valeur devient -1. En cherchant dans les tampons, je n'ai trouvé aucun renseignement du code de la touche. De plus le registre $E7C8 ne valide pas les touches shift et cnt. Comment dois-je m'y prendre pour avoir une routine KC digne?

Merci.

ps. Le registre $A7C1 des MO donne quant à lui des infos sur la touche frappée mais lui aussi ne réagit pas au shift et cnt.


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 21 messages ]  Aller à la page Précédente  1, 2

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 37 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com