Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Vos tutoriels et astuces


Index du Forum » Vos tutoriels et astuces » Le ghosting, késako ?
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Le ghosting, késako ?

Posté le 25/04/2018 11:37

Un bug assez connu sur nos calculatrices est celui qui fait que la touche Alpha apparait comme active lorsque Shift et deux directions du pavé sont pressées. Exemple flagrant dans Gravity Duck.

De manière plus générale, ce bug se produit dès lors que trois touches formant un début de rectangle sont pressées en même temps. La réaction est l'apparition d'une 4ème touche "fantôme" vue par la calculatrice comme active, dans le dernier coin du rectangle, alors qu'elle n'est pas pressée.

Ce coté "fantôme" est ce qui donne son nom au bug, en anglais : on parle de ghosting.


Pourquoi du ghosting ?

Physiquement chaque touche est un interrupteur qui laisse passer un signal électrique lorsque qu'elle est enfoncée. Ces interrupteurs sont reliés au processeur, qui lit les signaux pour détecter quelles touches sont actives ou non.

En pratique, on ne peut pas mettre deux connecteurs pour chaque bouton sur le CPU. Ça ferait beaucoup trop d'entrées/sorties. Donc ce que l'on fait, c'est qu'on les organise en matrice.



Le CPU s'occupe d'envoyer un signal sur chaque ligne (ROW) une par une. À chaque fois, il regarde quelle colone (COL) reçoit le signal. En croisant les informations ROW/COL, on est capable de savoir quelle touche est pressée.

Cas le plus simple, une seule touche enfoncée. Le CPU envoie un signal (en vert) ROW 4, lis les différentes colonnes, et voit un retour sur la COL 3. ROW 4/COL 3 → c'est la touche DEL (ici en rouge).



Il se peut que le CPU, envoyant toujours un signal ROW 4, reçoive un signal sur deux colonnes différentes. On a donc deux touches actives : ROW 4/COL 3 qui correspond à DEL et ROW 4/COL 5 qui correspond au 8.



Maintenant si encore plus de touches sont pressées en même temps, le signal électrique peut se propager d'une colonne à une autre. Ici la touche 8 n'est pas enfoncée, mais le signal traverse la touche PLUS, passe par la touche 2, et active la COL 5. Ce signal non souhaité est affiché en bleu sur le schéma. Dans ce cas, le CPU voir toujours deux couples : ROW 4/COL 3 et ROW 4/COL 5. Puisque ce sont les seules informations dont il dispose, il en déduit que les touches DEL et 8 sont activées, comme dans le cas précédent. La touche 8 subit le ghosting.



Comment l'éviter ?

Malheureusement c'est un problème physique, donc qui n'est pas corrigeable logiciellement. Dans les claviers de PC on empêche ce problème en mettant des diodes entre chaque touche pour empêcher la propagation inverse du signal. Mais ça apporte d'autres problèmes en plus d'être cher…

Sur nos calculatrices, la solution consiste donc à ne pas utiliser de touches qui peuvent former un rectangle sur le schéma présenté.

Si au lieu d'utiliser le pavé directionnel, Shift et Alpha j'utilise le pavé directionnel et les touches F1/F2, je ne peux plus avoir cette configuration en rectangle → plus de problème de ghosting. L'inconvénient de cette méthode étant une disposition des touches moins ergonomique.

Bref, il n'existe pas de solution magique, mais au moins vous savez ce qu'est le ghosting et pourquoi il se produit


Pour aller plus loin

Lephe explique plus en détail le fonctionnement du clavier dans ce post : https://www.planet-casio.com/Fr/forums/topic17211-1-demande-dexplications-claires-et-simples-de-ce-que-je-dois-retourner-quand-on-lit-le-port-m-sur-sh4.html#189761


Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Citer : Posté le 25/04/2018 12:30 | #


Sympa la vidéo.

J'avais également ce problème dans Mipjabok où Alpha affichait la map, si un joueur sautait avec shift et haut à la fois, et bougeait sur un côté, la map s'affichait. Mais je n'ai constaté le problème que sur Graph 35++, pas sur ma Graph 85 SD.
matériel différent?
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 25/04/2018 18:58 | #


D'où ce topic est affiché ? oO
Je l'ai publié en décalé pour avoir le temps de le rédiger

Bizarre, c'est ce que disait Lephe : suivant les cas ça peut varier…
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 25/04/2018 21:16 | #


J'ai constaté le problème sur diverses Graph 35+, et il me semble aussi sur la Graph 75+. Je vous en dirai plus quand j'aurai des infos pour ajouter, si tu le veux bien Darks, une section sur les effets particuliers sur les calculatrice. Cela inclut la Graph 90.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 25/04/2018 21:17 | #


Je veux bien, oui, ça me fera préciser l'article. Enfin…

Ajouté le 10/09/2018 à 09:57 :
Note à moi-même : finir ce topic…
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir Hors ligne Administrateur Points: 24229 Défis: 170 Message

Citer : Posté le 10/09/2018 17:21 | #


Ah puis je passe mon temps à appeler à shadowing aussi. Il faut que j'apprenne le bon terme >_<

Note à toi-même : finis ce topic. (+ notif' dans la boîte de réception)
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Shadow15510 Hors ligne Administrateur Points: 5500 Défis: 18 Message

Citer : Posté le 10/09/2018 18:15 | #


Le Shadowing j'aurais du pendre ça comme pseudo !!
C'est une super idée de faire un petit topic dessus : on pourra répondre aux personnes qui nous pose des questions dessus maintenant
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 18/02/2019 23:08 | #


Note à moi-même : finir ce foutu topic… --'
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Dark storm Hors ligne Labélisateur Points: 11634 Défis: 176 Message

Citer : Posté le 16/11/2022 12:28 | #


Eh, mieux vaut tard que jamais
Si vous avez des remarques pour améliorer ça, hésitez pas. J'ai tenté d'être le plus clair et concis possible, c'est pas toujours évident.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Slyvtt Hors ligne Maître du Puzzle Points: 2309 Défis: 17 Message

Citer : Posté le 16/11/2022 15:07 | #


C'est très bien écrit et expliqué DS.
Merci beaucoup.
J'ai dû faire face à un problème de Ghosting dans Outrun et j'ai donc dû implémenter plusieurs touches pour la même action histoire d'offrir une alternative.
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 91 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd