void newfunc(void)
{
...........
}
devrait marcher...
le void n'est pas absolument nécessaire, mais il est plus précis de le mettre...
Puis je comprendre pourquoi ceci ne marche pas ?
SCR_RECT Screen = {{0, 0, 159, 99}};
DrawClipRect (MakeWinRect (0,8,159,99),Screen,A_NORMAL||B_DOUBLE);
Screen est mal définit ?
Watcha @ka JBJ @ka @ngelfire
ICQ: 109631918
squale92 : c'est pas tout à fait pareil. Sans le void le compilateur considère que la fonction peut prendre un nombre d'arguments quelconque : zéro ou 10 ou 150 ...

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
Quelqu'un peut répondre, je trouve ça vraiment bizarre.
Watcha @ka JBJ @ka @ngelfire
ICQ: 109631918
zdr Le 17/06/2002 à 18:24 WIN_RECT *MakeWinRect (short x0, short y0, short x1, short y1);
Builds a structure for representing rectangular area.
MakeWinRect accepts coordinates of two corners (x0, y0) and (x1, y1) of an rectangular area, and returns the pointer to the structure of type WIN_RECT in which these coordinates are embeded. This function may be useful in combination with a rich set of TIOS functions which expect a structure of type WIN_RECT as explicite argument, like WinOpen, WinLine, etc.
Note: This function returns a static pointer, which will be rewritten with each call. So, you must not use it inside functions which needs more than one parameter of type WIN_RECT like WinFillLines2 etc.
essaie : DrawClipRect(MakeWinRect(0,8,159,99), (&(SCR_RECT){{0, 0, 159, 99}}) , A_NORMAL | B_DOUBLE);
Watcha Le 17/06/2002 à 19:07Edité par Watcha le 17/06/2002 à 19:19 TachMan> Merci, je pense que sa devrait marcher.
Watcha @ka JBJ @ka @ngelfire
ICQ: 109631918
Au lieu de MakeWinRect(0,8,159,99), utilise plutôt &(WIN_RECT){0,8,159,99}, ça donne du code plus efficace (et ça marche même pour des variables dans la version la plus récente de TIGCC).
Merci Kevin.
Comment faire pour créer un tableau de string dans la ram.
Je m'explique mal, je veux dire par là que la variable representant mon tableau doit être déclarer comme externe au programme car elle prend beaucoup trop de place.
Faut il utiliser malloc ?
Watcha @ka JBJ @ka @ngelfire
ICQ: 109631918
il faut que tu utilise les fonctions de stdarg.h je crois
=> tu devra utiliser quelque chose du style de ce que printf utilise.
A savoir, quelque chose qui t'indique à la fois le nombre d'arguments, et leurs types...
(dans printf, c'est une chaîne de caractères)
Il faut que je déclare un pointeur globale, donc avant void _main(void) et avant toutes mes fonctions, je fais :
void *Screen = malloc(3840);
Tigcc me donne l'erreur "Initializer element is not constant".
Comment faire pour corriger ce problème ?
Watcha @ka JBJ @ka @ngelfire
ICQ: 109631918
BiHi Le 21/06/2002 à 08:54 Il faut déclarer void *screen; puis faire screen = malloc(LCD_SIZE);
car malloc renvoie un pointeur que tu stockes dans screen.

;)
hibou Le 21/06/2002 à 09:31 "Initializer element is not constant"
tigcc est explicite : malloc() est une fonction et non une constante !
En dehors de toute fonction, tu ne peux pas éxécuter de code...
Comme BiHi te l'explique, met:
void * screen=NULL;
void _main(void) {
screen=malloc(3840);
}
PpHd Le 21/06/2002 à 13:40 Dans l'exemple cite, il est declare comme var globale.
Non, elle appelle un simple ROM_CALL qui lui ne contient que 0x4e444e75, c'est-à-dire trap #4;rts.