Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Programmation C » Peek_w (3 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
Nul Ecrit le: Lundi 19 juillet 2004 à 14:42 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Bonjour !

J'ai un problème avec 'peek_w'. Lorsque j'écris: peek_w(LCD_MEM+30*13+(40>>3)), la machine plante :( (je voulais savoir la valeur du word aux coordonées (40, 13) de l'écran usuel). Le même plantage se produit pour un écran virtuel.
Pourquoi ? Aucun plantage n'a lieu lorsque j'utilise simplement 'peek'.

Merci pour votre aide :)
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°1   Marquer comme non lu.
Sasume Ecrit le: Lundi 19 juillet 2004 à 14:46 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

40>>3 = 5.
50 est un nombre impair. Tu essaies donc de lire un word à une adresse impaire.
Les spécificités du hardware du 68000 font que c'est impossible, et cela déclenche l'exception "ADRSS ERROR".

Pour corriger ton problème, tu peux soit lire un octet, soit rendre l'adresse paire.
    
./Post n°2   Marquer comme non lu.
Nul Ecrit le: Lundi 19 juillet 2004 à 15:22 Déconnecté(e)    Voir le profil de Nul Envoyer un email à Nul Envoyer un message privé à Nul  

Ah en fait c'est bon ! J'ai trouvé la solution dans les sources de tigcc (un peu par hasard). Un moyen pour rendre (x>>3) paire est de faire cela: (x>>3)&0xFFFE :p

Merci Sasume (et moi-même) :D

En même temps, je ne comprends pas très bien pourquoi on ne pas lire un word à une adresse impaire.
-Edité le Lundi 19 juillet 2004 à 15:23 par Nul-
"De tous les animaux, l'homme a le plus de pente,
A se porter dedans l'excès."

Jean de la Fontaine
    
./Post n°3   Marquer comme non lu.
Kevin Kofler Ecrit le: Lundi 19 juillet 2004 à 16:16 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Parce que le bus des données n'est pas fait pour.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
  :: Index » Forum Ti68K » Programmation C » Peek_w (3 réponse(s))
Pages : 1/1     « [1] » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 36.19ms avec 18 requetes