Page 6 of 7

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 10 Apr 2017, 21:08
by Hamza.S
tu m'excusera, je n'ai pas lu toutes les réponses.

Wistaro wrote:
Code: Select all
uint8_t key; //cette variable contiendra la valeur de la touche

key = kb_ScanGroup(kb_group_7); //on stockes dans key la valeur des touches pressées du groupe

if(key & kb_up) { //si une touche du groupe 7 est préssée et SI c'est la touche up
       //programme
}

lorsque je lis, je me dis qu'il y a un truc qui ne va pas, le clavier de la TI 83 Premium CE possède une touche
trig
où toutes les fonctions trigonométriques sont regroupées et donc qui ne correspond pas au clavier montré.
il faut utiliser les touches directionnelles ou les touches numériques pour sélectionner une fonction.
ont-ils isolé ce cas particulier?

(je rappelle que la TI 83 Premium CE et ces sœurs jumelles n'ont pas le même clavier)

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 10 Apr 2017, 21:44
by Wistaro
Hamza.S wrote:tu m'excusera, je n'ai pas lu toutes les réponses.

Wistaro wrote:
Code: Select all
uint8_t key; //cette variable contiendra la valeur de la touche

key = kb_ScanGroup(kb_group_7); //on stockes dans key la valeur des touches pressées du groupe

if(key & kb_up) { //si une touche du groupe 7 est préssée et SI c'est la touche up
       //programme
}

lorsque je lis, je me dis qu'il y a un truc qui ne va pas, le clavier de la TI 83 Premium CE possède une touche
trig
où toutes les fonctions trigonométriques sont regroupées et donc qui ne correspond pas au clavier montré.
il faut utiliser les touches directionnelles ou les touches numériques pour sélectionner une fonction.
ont-ils isolé ce cas particulier?

(je rappelle que la TI 83 Premium CE et ces sœurs jumelles n'ont pas le même clavier)


Bien vu.
Le sinus/cosinus doivent correspondre à une autre touche. Mais je suis quasi-sûr qu'il ne faut pas aller bidouiller dans Trig -> cos...

Peut-être qu'Adriweb aurait une meilleure réponse ?

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 10 Apr 2017, 22:07
by Adriweb
Euh, pas vraiment, je dirais de tester et voir ce que ça donne :P

Pour autant que je sache, ce qui est marqué sur les touches et l'action de ladite touche dans l'OS, on s'en fout (que ca fasse trig sur 83PCE ou sin sur 84+CE, c'est tout simplement la x-ième touche). Cela dit, s'il y a eu une abstraction plus au niveau différente au niveau des groupes, va falloir chercher...

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 20 Apr 2017, 12:18
by Adriweb
Pour information, j'ai rajouté des screenshots pour presque tous les exemples, ça attirera peut-être d'autant plus les gens à aller les voir :P

https://github.com/CE-Programming/toolc ... d711f57187

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 11 May 2017, 23:52
by Hamza.S
pourquoi ne peut-on pas déclarer des variables quand on veut?
on doit déclarer les variables après { sinon on a un joli message.

erreur : syntax errorsans erreur
Code: Select all
void main(void) {
   
    pgrm_CleanUp();
   
    uint8_t i;

    for (i=0; i<3; i++)
        //blablabla

    /* Wait for a keypress */
    while(!os_GetCSC());

    pgrm_CleanUp();
}
Code: Select all
void main(void) {
    uint8_t i;
   
    pgrm_CleanUp();

    for (i=0; i<3; i++)
        //blablabla

    /* Wait for a keypress */
    while(!os_GetCSC());

    pgrm_CleanUp();
}


c'est rageant.

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 12 May 2017, 07:48
by Adriweb
Parce que c'est comme ça que fonctionne le C ANSI / C89 ;) Et c'est ce vieux standard là qu'utilise le compilateur de Zilog, ZDS.
Ce n'est plus requis à partir du C99 (ou en C++), qui accepte les déclarations n'importe où.

Le plus 'rageant' comme tu dis n'est pas forcément les déclarations de variables utilisées ci-et-là au début de chaque scope (à la limite, ca force à bien scoper), mais pour les indices de boucles où l'on n'a pas la possibilité de faire for(int i=0; i<len; i++) (déclaration de i dedans) par exemple...

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 12 May 2017, 09:07
by Hamza.S
d'accord.

ça ne m'arrange pas mais je vais apprendre à faire avec :D

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 18 May 2017, 16:24
by MMBC_Chris
Hello !
J'ai un problème avec CEDev :
Lorsque j'ai un header inclus (dans ce cas graphx.h)
Il me mets un WARNING (38) "You are using a deprecated lib include path. Simply use #include <graphx.h> instead "
Suivi d'un autre : WARNING (724) --> Symbol _nomdelafonction (obj\main.obj) is not defined.
(peut importe la fonction utilisée appartenant a ce header)

Ce qui résulte en
ERROR: Object file(s) deleted because of option unresolved=fatal.

Voilà voilà...

Pourtant le project builder de ce site ne me donne aucune erreur et compile bien.

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 18 May 2017, 16:47
by Adriweb
mmbcchris wrote:Lorsque j'ai un header inclus (dans ce cas graphx.h)
Il me mets un WARNING (38) "You are using a deprecated lib include path. Simply use #include <graphx.h> instead "

Normal, ça: tu utilises l'ancienne notation pour l'include des libs.
Mais ca n'est pas grave, c'est juste un warning et comme j'ai mis une couche de compatibilité dans la toolchain, ça ne plante pas ;)

mmbcchris wrote:Suivi d'un autre : WARNING (724) --> Symbol _nomdelafonction (obj\main.obj) is not defined.
(peut importe la fonction utilisée appartenant a ce header)

Ce qui résulte en
ERROR: Object file(s) deleted because of option unresolved=fatal.

C'est ça le réel problème, pas celui lié a graphx.h
Tu as visiblement essayé d'appeler une fonction sans la définir ailleurs (ou alors là où c'est défini, ce n'est pas un fichier qui est compilé et/ou linké ?).
Copie/colle ton/tes code source pour voir ?

mmbcchris wrote:Pourtant le project builder de ce site ne me donne aucune erreur et compile bien.

Oui, je n'ai pas encore mis a jour le PB avec la derniere toolchain. Il faut que je m'en occupe...
Cela dit, rien ne change côté compile/link, donc l'erreur de " unresolved=fatal" aurait été strictement la même - t'es sûr que tu essayes de compiler exactement la même chose de la même façon ?

Au passage, récupère bien la dernière version de la toolchain ici : https://github.com/CE-Programming/toolc ... ses/latest
Et regarde comment sont fait les exemples. Si tu lances "make" dans n'importe quel dossier des exemples, ça doit fonctionner. Si non, c'est que ta toolchain a un problème ^^

Re: [FR] Langage C sur ez80 - Mémo, rappels & tutoriels

Unread postPosted: 18 May 2017, 18:38
by MMBC_Chris
J'ai téléchargé le toolchain hier, donc je pense avoir la derniere version...
Les fonctions que j'essaie d'appeler sont celles dans graphx (mais ça me fait le même coup avec les autres biblio genre fileioc...)
J'imagine qu'elles ont été bien compilées...