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 » Questions en rapport avec le tutoriel du Basic Casio
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message

Questions en rapport avec le tutoriel du Basic Casio

Posté le 30/12/2013 11:43

Posez ici toutes vos questions en rapport avec le tutoriel sur le Basic Casio.

Merci de ne pas créer un nouveau topic si elle concerne ce tutoriel, on vous donnera une réponse tout aussi rapidement ici.

Pour toute remarque ou suggestion, laissez votre message sur ce topic.



Pour que votre problème soit traité le plus efficacement possible
Cliquer pour enrouler
Un message du genre "G rien konpri aidé moi " n'incite pas les membres à vous répondre. Pour que votre problème soit traité le plus efficacement possible, posez-vous ces quelques questions et suivez ces remarques :

Peut-on lire mon message rapidement ? En effet, le langage "SMS" n'aide pas à la compréhension d'un message. De plus, si vous avez à écrire un grand morceau de code, utilisez la balise dédiée : [ code ] Votre code [ /code ]
Le problème est-il correctement décrit ? Un problème bien expliqué est souvent plus facile à résoudre par les membres qu'un cas où les causes sont floues. N'hésitez pas à joindre la partie du code qui pose problème.
Le modèle de la calculatrice en question est-il précisé ? Certaines calculatrices ne possèdent pas les mêmes fonctionnalités que d'autres, il est probable que le problème vienne de là.

Dans tous les cas, soyez polis, les membres sont tous des bénévoles qui donnent de leur temps pour vous. Un "merci" ne coute rien mais encourage à aider les visiteurs suivants

Vous pouvez aussi vous inspirer de ce commentaire, qui est très bon exemple de comment poser sa question.



Dernière mise à jour : 30/12/2013 par Dark Storm


Précédente 1, 2, 3 ··· 7, 8, 9, 10
Slyvtt Hors ligne Maître du Puzzle Points: 2389 Défis: 17 Message

Citer : Posté le 04/05/2023 14:19 | #


A ma connaissance (mais je peux me tromper) l'ensemble des données accessible en Basic (donc les data, les listes, les matrices) finissent à un moment ou un autre dans la mémoire principale. Le texte du programme BASIC lui aussi est en mémoire principale, donc la limite est bien cette mémoire. Je ne pense pas que la limite de RAM (que de toute manière tu n'auras pas moyen de changer en BASIC, contrairement à un addin en C par exemple), représente une contrainte forte. A mon avis tu bloqueras avant par la taille de la mémoire principale (qui est au total de 64ko en passant).
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Fcalva En ligne Membre Points: 600 Défis: 10 Message

Citer : Posté le 04/05/2023 14:24 | #


https://en.wikipedia.org/wiki/.kkrieger < meilleur exemple que je connaisse, toute les textures sont crées par des algorithmes de quelques ko.... évidament je compte pas arriver a ce niveau mais pour avoir des trucs simples en 16x16 ou même 8x8 pour rajouter un peu d'ambiance
Pc master race - Apréciateur de Noctua moyen
Caltos : G35+EII, G90+E (briquée )
Lephenixnoir Hors ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 04/05/2023 14:27 | #


Attention aussi à ne pas sur-estimer la vitesse du Basic. Un raycaster à la Wolfenstein sur la Graph 90+E comme ça de tête tu seras fort si tu arrives à générer un frame en 10 secondes.

Sinon oui la Graph 90+E a une puce RAM de 8 Mo. Les Prizm (modèle précédent) avaient une puce RAM de 2 Mo. Mais ça veut pas dire que tu peux utiliser 2 Mo, tout le contraire d'ailleurs : la puce originale de 2 Mo est utilisée par l'OS et si tu écris où que ce soit ailleurs que la mémoire qui t'es fournie explicitement, ça va mal se passer. Grosso modo t'as environ 512 ko totalement à toi, jusqu'à 1 Mo si tu tires tous les leviers exotiques, et si tu utilises le reste de la puce spécifique à la Graph 90+E (... ce qu'on sait qu'on peut faire dans certaines circonstances) tu peux gratter quelques Mo. Mais peu de programmes ont besoin de ça.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Slyvtt Hors ligne Maître du Puzzle Points: 2389 Défis: 17 Message

Citer : Posté le 04/05/2023 14:31 | #


OK, mais je te confirme : tout passe par la mémoire principale qui est la zone ou tout est stocké à un moment ou un autre (code et data, y compris généré à la volée par des algorithmes procéduraux) : cf ici : https://www.planet-casio.com/Fr/programmation/gestion_erreurs.php (partie Memory Error).

En fait en basic les données sont persistantes, si ton programme crash ou si tu l'arretes, les données sont stockées (contrairement à un addin ou la RAM s'efface). Donc ces 64ko (65536o) sont à partager entre le code BASIC et les variables.

Imaginons un cas théorique : si ton corps de programme faisait 65536o (donc prenne toute la mémoire), tu ne pourrais pas créer ou stocker une seule variable, Même un simple 1→A ne serait pas possible car A ne pourrait pas être stocké.

(on est d'accord que d'un point de vue design, c'est un peu con)
There are only 10 types of people in the world: Those who understand binary, and those who don't ...
Gky93 Hors ligne Membre Points: 268 Défis: 0 Message

Citer : Posté le 04/05/2023 19:17 | #


Bonsoir, lorsque je trace des graphiques d'inequations, en plus de la zone hachuré, une droite représentant l'équation apparaît elle aussi. Il y aurait-il un moyen de la faire disparaitre ?
Lephenixnoir Hors ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 04/05/2023 19:17 | #


Si tu utilises SketchDot devant le graphe d'inéquation ça dessine la droite comme une série de points ce qui est plus discret
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Gky93 Hors ligne Membre Points: 268 Défis: 0 Message

Citer : Posté le 04/05/2023 19:22 | #


Ok merci, et existe-t-il une fonction sur les graphs monochrome pour tracer une ligne blanche ?
Fcalva En ligne Membre Points: 600 Défis: 10 Message

Citer : Posté le 04/05/2023 20:50 | #


En vrai même si ça tourne super lentement ça fait de l'entrainement pour refaire en C, et surtout le truc c'est en utilisant des listes et surtout des matrices pour stocker des données je pensait qu'on pouvait arriver a des niveaux décents d'utilisation de mémoire. C'est un peu bête quand même que ça passe forcément par la mémoire principale, surtout ça peut poser des problèmes si elle est un peu plus pleine que prévu.
Lephenixnoir tu peux en théorie utiliser tous les 8mo de ram, vu que tu as un accès libre a la mémoire tu peux virer l'OS, mais bon après il faudrait copier l'intégralité de la mémoire utilisée par l'os sur la mémoire stockage pour pouvoir retourner proprement. Sinon tu peux juste faire un programme qui nécésite d'appuyer sur le bouton reset ou d'enlever les piles pour revenir a l'os, pour un shell ou un autre os (DOS ou Unix seraient les meilleurs choix déja existants)
Gky93, ici et il y a un index des commandes qui a tout (a part les fonctions de trigo )
Pc master race - Apréciateur de Noctua moyen
Caltos : G35+EII, G90+E (briquée )
Lephenixnoir Hors ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 04/05/2023 23:01 | #


Lephenixnoir tu peux en théorie utiliser tous les 8mo de ram, vu que tu as un accès libre a la mémoire tu peux virer l'OS, mais bon après il faudrait copier l'intégralité de la mémoire utilisée par l'os sur la mémoire stockage pour pouvoir retourner proprement.

Oui bien sûr en théorie tu peux tout faire, mais c'est intéressant que si c'est stable et que la probabilité de détruire la calculatrice de ton utilisateur est 0%.

Là par exemple, si tu creuses un peu c'est pas du tout convaincant. Le point d'entrée du système de fichiers et un certain nombre de structures associées sont dans la RAM. Tu ne peux donc pas sauvegarder avec Bfile puisque les structures changeraient durant la copie, résultant en un fichier corrompu. Tu ne peux définitivement pas sortir proprement car après que ton usage de la RAM aura écrasé les structures ni Bfile ni toi ne pourrez trouver les fichiers ; il faudrait sauvegarder les structures séparément à l'avance (et pour info on ne sait même pas encore comment les localiser avec certitude).

La seule approche qui passe le stade de l'expérience de pensée sans nécessiter de driver fs maison ce serait de pré-créer un fichier de swap et de faire la copie hors-fs sans affecter les structures après avoir localisé les blocs du fichier, garder les indices de secteurs sous la main, et le restaurer après. Ce qui a aussi tous les problèmes associés avec écrire des secteurs à la main que si on écrase le mauvais c'est game over.

Et puis pendant que tu utilises tout cette RAM il est hors de question d'appeler du code OS, donc faut désactiver toutes les interruptions et utiliser tes propres drivers. Comme la table des pages de l'add-in est dans la RAM de l'OS, pas moyen non plus d'utiliser le TLB handler de l'OS et donc il faut aussi que tu la copies indirectement à l'avance et que tu répondes à la main (aussi peu convaincant, la dernière personne qui a joué avec le TLB a la main a grillé sa calto).

Du coup oui "en théorie" tu peux, mais déjà "au papier" tu peux pas... x)
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Fcalva En ligne Membre Points: 600 Défis: 10 Message

Citer : Posté le 04/05/2023 23:13 | #


Ouaip. Mais bon après je parlais pas d'utiliser ça pour faire tourner un jeu, la ça serait stupide, mais de faire tourner ton propre OS. Après l'intérêt est minimal vu que de toute façon il faudrait au moins recompiler le code des programmes pour porter, avec les capacités limitée d'une calculatrice on est dans les programmes d'avant 1995 donc peu de véritables nécéssitées OS, ou dumoins c'est rien comparé a retrouver les sources ect.. dans la plupart des cas.
Aussi on est plus vraiment en lien avec le sujet, je vais juste dire que moi ça avance de mon côté, j'ai tout le mouvement mais il va sans doute me falloir plusieurs heures en plus pour la partie rendu, et c'est a ce point la que je vois si j'abandonne ou pas selon la perf.
Pc master race - Apréciateur de Noctua moyen
Caltos : G35+EII, G90+E (briquée )
M.machine Hors ligne Membre Points: 74 Défis: 1 Message

Citer : Posté le 30/07/2023 14:46 | #


Bonjour, je travaille sur un Snake en basic-casio et j’ai besoin de trouver l’index d’une valeur dans une matrice sans boucles For. Un post a déjà été fait a ce sujet mais je ne le trouve plus. Merci d’avance.
Lephenixnoir Hors ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 30/07/2023 19:16 | #


Je ne saurais pas te donner la réponse (je ne sais pas si c'est possible), par contre je suis curieux : pourquoi la boucle For n'est-elle pas une option ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
M.machine Hors ligne Membre Points: 74 Défis: 1 Message

Citer : Posté le 08/08/2023 14:13 | #


Ce n'est pas grave, j'ai trouvé une solution qui change totalement le processus
La boucle For prendrais trop de temps a être effectuée dans une matrice de 15x30

D’ailleurs, j'ai une autre question :
Laquel de ces deux fonction est la plus rapide à executer ?

PlotOff ou PxlOff ?
(je suppose que Totoyo aura LA réponse (ou pas))
Lephenixnoir Hors ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 08/08/2023 15:34 | #


Je crois pas que ce soit très différent mais conceptuellement PxlOff devrait aller plus vite. Elle modifie pas X/Y non plus
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message

Citer : Posté le 25/08/2023 14:04 | #


J'avais fait un benchmark des fonctions basic casio en 2011 : https://www.planet-casio.com/Fr/forums/topic9648-3-vitesse-des-fonctions-fx-cg1020-comparaisons-g85g100.html
PlotOn et PxlOn semblent équivalentes en terme de performance, avec un très léger avantage de seulement 1% pour les fonctions Plot (PlotOn, PlotOff etc) par rapport aux fonctions PxlOn et PxlOff. Rien de décisif en tout cas dans le choix d'une ou de l'autre.
Garywayne64 Hors ligne Membre Points: 1 Défis: 0 Message

Citer : Posté le 24/11/2023 10:27 | #


The Basic Casio tutorial is an invaluable resource for mastering the essentials of Casio devices. Clear explanations, step-by-step guides, and practical tips make it a go-to for users of all levels. Kudos to the creators for simplifying the complexities and empowering users to harness the full potential of their Casio products.

Edit Lephenixnoir : Pour ceux qui se demandent, oui il y a eu un lien plus tard.
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message

Citer : Posté le 24/11/2023 12:08 | #


Merci Garywayne64 pour ce retour élogieux (j'espère que ce n'est pas un troll ).

Sur la page "Gestion des erreurs", les retours à la ligne sont font mal pour certaines sous parties comme "Go Error ou Erreur Saut" et "Memory Error (erreur de mémoire)". Je pense que c'est à cause des images flottantes.


Paline Invité

Citer : Posté le 16/05/2024 07:21 | #


Bonjour
Je voudrais revenir au début d'un calcul si la valeur final ne me convient pas ... Comment je peux faire !!!
Lephenixnoir Hors ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 16/05/2024 07:40 | #


Il nous faudrait plus de détails... mais l'idée sera probablement d'utiliser une boucle. Une boucle te permet de répéter du code (ici le calcul), ce qui te permet de (1) calculer, (2) déterminer si la valeur finale te convient, et (3) si non, rester dans la boucle pour refaire le calcul. Par contre, il faut que tu changes quelque chose dans ton calcul sinon tu vas continuer d'obtenir la même valeur et tu n'auras jamais un résultat qui te convient.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Précédente 1, 2, 3 ··· 7, 8, 9, 10

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