je savais pas ça de GTC...
cool pr AZUR, qui marque un point face à son concurrent GTC
oué, mais l'AZUR est qd même plus,proche du C que de l'ASM, non ?
comme ça, on ne postera plus dans l'AZUR dans le topic de AS !
Comment on fait pour utiliser des fonctions comme celles de TIGCC (printf, ngetchx, ...) avec CC ?
Apparemment, il faut modifier le fichier AMS_C, non ?
pk tu pete le poulot magnifique de pollux thibaut ?!
on peut parfaitement mettre de l'asm in line !!!
tu connais pas asm("....") ??
tu me decoit vraiement !!
A moins que tu m'apporte la preuve du contraire, l'instruction asm("") n'existe encore ni dans CC ni dans GTC. Cependant, GTC permet l'ASM in-line mais d'une façon très spéciale, regarde l'exemple que j'ai posté page précédente s'il te plaît...

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.
cet exemple je l'ai vu, c'est de la que vient ma stupefaction !!
tu n'as jamai fait ?
void main()
{
ngetchx();
asm("trap #4")
ngetchx();
}
je sais que ca marche, parce que je l'ai fait !!!
[edit]Edité par misato le 08-02-2002 à 19:31:24[/edit]
ben, la 0.9...comme toi il me smble !!!
en plus c'est ecritdans le readme, depuis pas mal de version, va voir !!!
et je rectifie, j'ai oublié un ;
void main()
{
ngetchx();
asm("trap #4")
ngetchx();
}
[edit]Edité par misato le 09-02-2002 à 12:02:52[/edit]
par contre pour cc, j'ai modifié ams_c avec
_cos = -249
_sin = -250
mais il ne le prend pas, je ne comprend pas pk !!, F9 c'est bien la valeur exa de 249 ?pareil pour FA et 250 ?
CC ne supporte pas les virgules flottantes.
et sinon, y a pas de support d'affichage de sprite ? vu que CC ne gere pas les libs statique....et qu'il n'y a pas de rom_call...
mais j'aimerais bien tout de meme un exemple de l'utilisation de memcpy, parce que moi, je n'y arrive pas trop, meme pas du tt ....
Exact, et il est même beaucoup plus souple sur ce point : on peut insérer de l'ASM inline partout, alors qu'avec GTC on est contraint de le faire à l'extérieur des fonctions, pour illustrer :
GTC
#include "stdio"
# fonctionASM:
# move.w d0,d0
# ....
void _main()
{
fonctionASM();
}
AZUR
#include "stdio"
void main[]
{
<
move.w d0,d0
....
>
}
et je savais pas ça de GTC...
cool pr AZUR, qui marque un point face à son concurrent GTC
> meuh non, tu dois avoir une vieille version de GTC... maintenant tu fais tout simplement "asm("move.w d0,d0")"
« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)
niuob Le 09/02/2002 à 17:59 > misato :
typedef unsigned char LCD_BUFFER[3840];
main()
{
LCD_BUFFER ecran;
memcpy(ecran,(void*)0x4c00,(unsigned long)3840);
clrscr();
ngetchx();
memcpy((void*)0x4c00,ecran,(unsigned long)3840);
}
(à condition d'avoir bien définis ngetchx, clrscr et memcpy dans asm_c)
Pollux>>c'est ce que je lui ai expliqué.....
une source(getkey a la con):
main()
{int keya=0;
char buffer[50];
char *str1 = "Press a key";
clrscr();
sprintf(buffer, "%s", str1);
DrawStr(0,0, buffer,1);
do
{keya=ngetchx();
sprintf(buffer, "%d", keya);
DrawStr(78,46, buffer,0);
}while(keya!= 264);
esc :
}
//celle-la ne passe pas a cause du handle !!
void main()
{
progrun("main","doors")
}
void progrun (dossier, name)char *dossier[]; char *name[];
{char fname[17];
HANDLE h;
strcpy (fname, dossier);
strcat (fname, "")
strcat (fname, name);
strcat (fname, "(")
strcat (fname, ")")
push_parse_text (fname);
h = HS_popEStack ();
NG_execute (h, FALSE);
HeapFree (h);
}
[ca c'est ma asm_c:
nolist
old_ams
_ST_helpMsg = -230
_ngetchx = -81
_clrscr = -414
_sprintf = -83
_FontSetSys = -399
_MoveTo = -413
_DrawLine = -423
_DrawChar = -420
_DrawStr = -425
_DrawLine = -423
_DrawPix = -424
_GetPix = -415
_PortSet = -418 //PortSet(vscreen,239,127);
_PortRestore = -419
_push_parse_text = -970
_strcat = -622
_HS_popEStack = -580
_NG_execute = -592
_HeapFree = -151
list
[edit]Edité par misato le 09-02-2002 à 18:06:16[/edit]
Pour HANDLE, il suffit de mettre int à la place. Et pour les sprites, il y a BitmapPut.
ok...par contre j'ai un adresse error des que j'utilise la fonction DrawLine, normal ?
pour DrawLine c moi ca marche impec.
pour afficher des sprites j'ai repris les sources de extgraph et ca marche.
drawline tu met quoi en 5éme parametre ?