Vous n'êtes pas identifié.
Pages: 1
Rien de plus simple que d'utiliser les memzones me diriez vous ? et bah en temps normal je répondrai oui mais ce soir , enfin ce matin (cf date et heure du post ) je me trouve devant un putain de problème ! j'arrive meme pas à creer un fichu fichier !
voila le code:
#include <dos.h> #include <conio.h> #include <bios.h> #include <stdlib.h> #include <stdio.h> #include "c:dev-cppcwexp2includememzones.c" int main (void) { struct memory_zone bf; char text[16]; if (create_mem_zone(1,"TEST", 230, RESIZE_ZONE) != -2) { if (search_mem_zone(1, (unsigned char *)"TEST", &bf) != -1) { printf("TEST found! The size is %un", bf.b_size); write_mem_zone(&bf, "Hello world!", 0, 14); read_mem_zone(&bf, text, 0, 14); printf("%s", text); } else printf("TEST not found!n"); //this line is useless since it cannot happen!?! } else printf("Not enough memory!n"); bioskey(0); return 0; }
J'ai tout simplement pris l'exemple du readme.
versio de la lib: la 1.0.6 et la version de ma rom: 1.0.5
et l' EXE à l'adresse suivante: http://perso.wanadoo.fr/casioworld/TEST.exe
que ce soit sur ma calculatrice ou sur l'emulateur j'ai le message suivant: Not enough memory !
si kk1 pouvait m'aider parceque là je suis perdu de chez... perdu ! en plus les prog genre Gccom fonctionne très bien quand il cree leur programme basic
Hors ligne
??!!
Visiblement c'est TCC qui fait de siennes... J'ai essayé ton prog sur ma caltoche et ca n'a pas marché; je l'ai recompilé avec DM et ca a bien fonctionné, ensuite j'ai recompilé avec TCC et j'ai eu le meme prob que toi... :?
J'ai bidouillé 3~3 trucs mais sans trouver de solution
Quelqu'un a-t-il une idée?
Edit: J'ai trouvé. Vire l'option '-P' si tu l'as laissée dans ta ligne de commande :P
Hors ligne
Pas encore eu le temps d'essayer mais je te fais confiance.
bon je vais essayer de passer à Digital Mars cete après midi en espérant que le passage se fasse en douceur.
Avant l'utilisation de opendir pour scanner les repertoires de la calculatrice m'empechait de passer à DM mais maintenant que j'utilise Findfirst.
merci encore Julien
Hors ligne
hum moi ca fait un bout de temps que tc3 me soule...
il me trouve toujours des pauvres erreurs de merde...
parfois i en faut peut pour que remarche...
modifie les fonction de place, rajoutte qq lignes de code...
mais bon parfois ya rien a faire
Hors ligne
DM powa si G bien compris
moi aussi tc me saoule beaucoup et depuis que G DM pas de probs...
Hors ligne
euh ...
moi j'ai copié ton programme dans un .c avec comme include memzones.c, et ca marche tres bien sur l'émulateur
Hors ligne
euh ...
moi j'ai copié ton programme dans un .c avec comme include memzones.c, et ca marche tres bien sur l'émulateur
Ca doit très bien marcher, ce sont ses paramètres de compilation qui n'allaient pas
Hors ligne
C'est quoi l'option -P ?
parfois i en faut peut pour que remarche...
modifie les fonction de place, rajoutte qq lignes de code...
Là c'est de ta faute, faut pas exagérer quand même TC est un très bon compilateur... ton programme doit écrire n'importe où dans la mémoire et s'abîmer lui même alors suivant ce que tu fait ça n'est pas la même partie qui est touchée...
C'est toujours plus facile d'accuser le compilateur lorsque ça ne marche pas Ça m'est souvent arrivé aussi et à chaque fois c'était moi qui avait fait une connerie !
Hors ligne
-P c'est pour forcer la compilation C++. Julien a raison ca fou le bordel.
2072 > Swifter a raison, ca arrive parfois. je l'avais remarqué pour le problème de l'execution d'un prog a partir d'un autre programme.
cf tpic: http://www.graph100.com/forum/viewtopic.php?t=2475
reste que tu as raison, vaux mieux se remettre en cause que remettre en cause le compilateur. mais on devient vite parano. en tout cas merci pour votre aide.
Hors ligne
tatatatattatat
je te jure que des fois ca venait du compilateur...
j'avais vérifié au debugueur (mon arme favorite) d'un seul coup le programme allait sur une ligne de code tout autre que celle prévu...
je ne dis pas que je ne fais pas d'erreur, car il m'est souvent arrivé des erreurs super louches, qui était en fait due a mon code... mais j'ai des exemple que je n'ai jamais pu justifier et je je n'avais pas l'impression d'etre en cause...
m'enfin peut etre que je me trompe
Hors ligne
Voila j'ai un nouveau soucis. Cette fois ci c'est dans ma tentative de compiler mon projet avec DM.
J'ai besoin des fonction read, et open que l'on trouve dans io.h
Le problème c'est que quand je les inclus dans mon projet ça créé des erreurs très bizarre dans le lib Memzone
je décide de compiler le programme suivant avec dm:
#include <io.h> #include "c:dev-cppcwexp2includememzones.c" int main (void) { return 0; }
Des erreurs de synthaxe apparaissent au niveau getDS dans memzones.c
Je n'ais pas exactement les message d'erreurs mais c'est bizarre.
Finalement en compilant normalement mon programme: en incluant memzones.h au lieu de memzones.c ( sans oublier de rajouter memzones.c au compilateur ), la compilation s'effectue sans erreur.
Hors ligne
Finalement en compilant normalement mon programme: en incluant memzones.h au lieu de memzones.c ( sans oublier de rajouter memzones.c au compilateur ), la compilation s'effectue sans erreur.
Et ben voila... Pas bien d'inclure des .c
Hors ligne
c'est purement normal car il faut aussi inclure le .h qui definis d'autres fonctions ;-)
Hors ligne
je vous jure mon TC3 est envouté !
j'obtiens pas la meme chose quand je compile en ligne de commande et quan je passe par l'interface
pourtant ma ligne de commande est la suivante:
TCC.exe -ID:CasioTC3Include -LD:CasioTC3LIB -2 -mt -r -O -G -X -Z -I main.cpp
Hors ligne
Qu'est-ce que tu veux dire par "pas la même chose"?
Et puis le "-I" en tout dernier dans ta ligne est inutile, tu peux le retirer
Hors ligne
l'un fonctionne parfaitement avec Memzones.h et l'autre et bah impossible de faire fonctionner les fichiers basic.
Hors ligne
l'un fonctionne parfaitement avec Memzones.h et l'autre et bah impossible de faire fonctionner les fichiers basic.
"fonctionner"?
= compiler, exécuter, planter, générer des erreurs?
Hors ligne
non c le programme qui ne fonctionne pas kom il devrait. la compilation est la meme. mais d'un coté g un exe qui créé correctement son ficheir basic et importe tout ce kil fo et de l'autre coté d'un exe qui se fou de ma gueule lol en créant du vent
Hors ligne
C'est peut-etre lié au C++...
En attendant, on attend tous la version 2.0 de memzones en espérant une compatibilité 100% avec le cpp :P
Hors ligne
À priori la version 2.0 est aussi compatible que la version actuelle, que faudrait-il que je face pour améliorer la compatibilité avec le C++?
Hors ligne
ce qu'il faudrait faire en fait c'est déterminer exactement ce qu'il se passe quand l'exécutable ne fonctionne pas correctement... comme ça on saura s'il y a des opérations "sensibles" avec lesquelles il faudra être prudent par la suite. Moi je serais d'avis de comparer les codes asm générés par exemple... ca fait encore du boulot
Hors ligne
Pages: 1