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 - Autres questions


Index du Forum » Autres questions » **Le SDK pour fx-9860/Graph85** Topic officiel
Matronix Hors ligne Ancien administrateur Points: 6058 Défis: 82 Message

**Le SDK pour fx-9860/Graph85** Topic officiel

Posté le 18/07/2007 15:08

Vu la multitude de topics sur le SDK de la 85, j'ai décidé d'en faire un seul et unique, où l'on posera nos problèmes et explications sur ce même topic, et non pas sur 50, par souci de clareté et de facilité.

Des nouveautés ? Des problèmes ? Des idées ?
Exposez les ici !

Voici une liste de commandes commencées par Muelsaco. N'hésitez pas à rajouter vos commandes dans le topic je les rajouterai pour en faire profiter tout le monde. Merci.

// Locate X,Y,"Texte"
:arrow: locate(x,y); Print("Texte");

// Text X,Y,"Texte"
:arrow: PrintMini(x,y,"Texte",0);

// F-Line x1,y1,x2,y2
:arrow: Bdisp_DrawLineVRAM(x1,y1,x2,y2);

// Tracer une ligne blanche
:arrow: Bdisp_ClearLineVRAM(x1,y1,x2,y2);

// PxlOn x,y & PxlOff x,y
:arrow: Bdisp_SetPoint_VRAM(x,y,<couleur>)
<couleur> : 0 pour le blanc, 1 pour le noir

// Cls
:arrow: Bdisp_AllClr_DDVRAM();

// Actualiser l'écran
:arrow: Bdisp_PutDisp_DD();
Fonction très importante. Elle permet d'afficher une image tracée virtuellement dans la VRAM. Toute image doit d'abord être dessinée dans la VRAM puis affichée à l'écran. Vous ne verrez donc pas votre image s'afficher tant que vous n'aurez pas appelé Bdisp_PutDisp_DD(). À noter que les fonctions GetKey() et Print() l'appellent automatiquement.

While <exp1>
<code>
WhileEnd
:arrow:
while(<exp1>)
{
  <code>
}

// StoPict x
:arrow: SaveDisp(x);
x variant de 1 à 3 uniquement.

// RclPict x
:arrow: RestoreDisp(x);
  x variant de 1 à 3 uniquement.

// Ouvrir un popup (comme les erreurs syntaxe, etc)
:arrow: PopUpWin(<taille>);
  <taille> : de 1 à 8.


Rappels sur les variables globales : Source

* Les variables globales sont à utiliser avec précaution, puisqu'elles créent des liens invisibles entre les fonctions. La modularité d'un programme peut en souffrir et le programmeur risque de perdre la vue d'ensemble.
* Il faut faire attention à ne pas cacher involontairement des variables globales par des variables locales du même nom.
* Le codex de la programmation défensive nous conseille d'écrire nos programmes aussi 'localement' que possible.

L'utilisation de variables globales est jusitifiée, si

* Plusieurs fonctions qui ne s'appellent pas ont besoin des mêmes variables, ou
* Plusieurs fonctions d'un programme ont besoin du même ensemble de variables. Ce serait alors trop encombrant de passer toutes les variables comme paramètres d'une fonction à l'autre.


Précédente 1, 2, 3 ··· 10 ··· 20 ··· 30 ··· 40 ··· 45, 46, 47, 48
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 07/05/2019 21:27 | #


C'est curieux. Je n'ai jamais pu tester gint sur une Graph 35+E donc je n'ai pas de certitude, mais je sais que la gestion du backlight avec la fonction que j'ai citée marche sous overclock.

Pour l'instant je ne saurai donc pas dire d'où peut venir le problème.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Hackcell Hors ligne Maître du Puzzle Points: 1531 Défis: 11 Message

Citer : Posté le 07/05/2019 22:23 | #


Ya du retro eclairage sur les graph35+E ??
Yatis Hors ligne Membre Points: 581 Défis: 0 Message

Citer : Posté le 07/05/2019 22:30 | #


Absolument pas xD
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 07/05/2019 22:47 | #


se sent seul, très seul.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 08/05/2019 06:27 | #


Parlons-nous de la même chose? Ou est-ce que “Backlight” signifie le rétro-éclairage de l'écran?
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 08/05/2019 08:13 | #


Ouh là ! Le backlight c'est le rétroéclairage de l'écran.

Tu ne peux pas allumer la LED examen à ta guise, ce serait de la triche pure et dure...
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 08/05/2019 12:17 | #


Mon école est assez bête pour ne pas utiliser le mode examen.
Je voulais juste essayer d'attribuer une clé pour l'activer et le désactiver pour le plaisir.
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 08/05/2019 13:05 | #


Pas possible malheureusement ! Casio est plus prudent que ça.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 01/06/2019 18:21 | #


Est-il possible de faire des tables avec des chaînes?
Et si oui, comment pourrais-je le faire?
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 01/06/2019 19:23 | #


Tableau de chaînes de caractères ? Oui.

char const * array[] = {
  "abcdef",
  "Hello, World!"
  "foo, bar, baz",
  "fx-9860G SDK"
};

Si tu veux autre chose, sois plus précis.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 18/06/2019 15:07 | #


Désolé de déranger, mais chaque fois que j'appuie sur le bouton de menu dans mon complément, j'ouvre un autre programme sur la calculatrice, cela se produit.
J'utilise uniquement IsKeyDown () et si la touche Menu est enfoncée, je retourne 1
Mactul Hors ligne Membre Points: 699 Défis: 0 Message

Citer : Posté le 18/06/2019 15:11 | #


Je ne suis pas super calé avec le SDK, mais je pense que le pb viens de l'émulateur, quand tu retourne 1, tu tue simplement le programme, ce n'est pas très propre, mais sur calto, ça fait juste qu'il faut rentrer dans un autre Add-Ins pour pouvoir relancer celui-ci
Mes programmes
Cliquer pour enrouler

Venez me rejoindre sur mon nouveau serveur Discord dédié a la programmation sur toutes les plateformes
https://discord.gg/bzfymHQ

Venez vous instruire, dans ce magnifique cours sur les Intelligences Artificielles que j'ai créé:
http://reseaux-neurones-a--z.ml/
Faites apprendre des choses à une machine, faites reconnaître à un ordi des images...
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 18/06/2019 15:13 | #


J'utilise uniquement IsKeyDown () et si la touche Menu est enfoncée, je retourne 1

Tu tiens ton problème. Si tu n'utilises pas GetKey(), ça se produit ; on ne sait pas pourquoi.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 18/06/2019 15:18 | #


Le problème est que GetKey du SDK est un peu lent, je voudrais utiliser quelque chose comme GetKey de BASIC
Mactul Hors ligne Membre Points: 699 Défis: 0 Message

Citer : Posté le 18/06/2019 15:19 | #


de ce que j'ai compris, GetKey(&key) renvoie au fonctions normales de la calto (éteindre, changer le contraste avec shift+flèches,...) et donc à la fonction menu (d'ailleurs à ce moment, on peut refaire menu et rerentrer dans l'Add-Ins là ou on s'était arrété)

Edit: Getkey n'est pas lent, il est bloquant
Mes programmes
Cliquer pour enrouler

Venez me rejoindre sur mon nouveau serveur Discord dédié a la programmation sur toutes les plateformes
https://discord.gg/bzfymHQ

Venez vous instruire, dans ce magnifique cours sur les Intelligences Artificielles que j'ai créé:
http://reseaux-neurones-a--z.ml/
Faites apprendre des choses à une machine, faites reconnaître à un ordi des images...
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 18/06/2019 15:25 | #


Thori a écrit :
Le problème est que GetKey du SDK est un peu lent, je voudrais utiliser quelque chose comme GetKey de BASIC

Tu n'as pas besoin d'appeler GetKey() partout, il suffit de l'appeler une seule fois avant de quitter l'add-in.

Du reste, Mactul a raison, il est bloquant. Le syscalls GetKeyWait() pourrait marcher sans être bloquant mais il faut le mettre en place d'abord...
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 18/06/2019 15:29 | #


D'accord, je vais essayer d'appeler le GetKeyWait syscall alors, merci!
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 18/06/2019 15:40 | #


Attention, tu ne peux pas appeler la fonction GetKeyWait(), qui est buggée : elle se comporte correctement mais elle indique toujours 0 à la place du numéro de la touche pressée. Pas très utile donc.

Pour utiliser le syscall, il faut faire un peu d'assembleur...
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 18/06/2019 15:51 | #


c'était en effet un peu bogué, j'utilise la fonction Keyboard_PRGM_GetKey et cela fonctionne parfaitement sans bugs ni plantages!
Lephenixnoir Hors ligne Administrateur Points: 24574 Défis: 170 Message

Citer : Posté le 18/06/2019 15:58 | #


Impeccable ! La gestion propre du clavier est un sujet compliqué et j'ai toujours peur d'embarquer les gens dans des histoires sans fin. Bien content que tu aies ce que tu veux...
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)


Invité

Citer : Posté le 13/12/2019 18:28 | #


Juste une question, alors que j'apprenais sur l'assemblage et la mémoire.
j'ai vu ceci:

Je me demandais juste jusqu'où va la mémoire?
Est-ce que cela dépend de la RAM de la calculatrice?
Quel est le dernier emplacement où vous pouvez stocker quelque chose dans la mémoire
Précédente 1, 2, 3 ··· 10 ··· 20 ··· 30 ··· 40 ··· 45, 46, 47, 48

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 152 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