Je comprend mal le sens de
#define USE_TIxx
Je pensait qu'a la compilation le préprocesseur remplacait simplement toutes les macros du genre LCD_WIDTH par la valeur correspondante à la calculatrice, et que quand on met :
#define USE_TI89
#define USE_TI92PLUS
il faisait deux versions du programme dans lesquelles les macros ont été remplacés par des constantes.
En fait j'ai lu dans le doc que ce sont des pseudos constantes et que si l'on compile pour deux modèles, dans les prorgammes, ce ne sont pas des constantes.
En effet, je constate que la taille du prog augmente de 2000 octets !!
Donc en fait, je vois pas l'interêt, autant faire une compilation avec #define USE_TI89 seulement, puis avec #define USE_TI92PLUS seulement, ça gagne de la place en mémoire, ce qui est crucial.
Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique
Tokamak Est ce que un programme 89z peut être exécuté sur une TI-92+ ??
Si oui, je comprends mieux.
Mais alors vaut il mieux avoir deux version du programme ou une seule qui marche sur les deux modèles en tenant compte des différences, mais qui est plus grosse ?
Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique
Tokamak il n'y a que TRES peu de programmes qui tournent sur 89 et sur 92+ en plein écran avec le même exécutable.
il me semble que txtrider en fait parti...
Kevin Kofler Le 27/10/2002 à 14:43Edité par Kevin Kofler le 27/10/2002 à 14:47 Ça, c'est à toi de voir. Personnellement, je préfère la compatibilité on-calc.
Et attention: n'oublie pas les Voyage 200!
Donc:
* utilise la bêta la plus récente de TIGCC. Les anciennes versions (y compris 0.93) ne supportaient pas ou mal la V200. (Pour la version 0.93, elle était censée la supporter, mais j'ai fait une erreur dans le code de détection, donc ça ne marche pas.)
* mets aussi #define USE_V200 partout où tu mets #define USE_TI92PLUS!
Ceci est valable à la fois si tu choisis la compilation séparée et si tu choisis la compatibilité on-calc.
Pour la compilation séparée, dans le cas général, tu ne gagneras rien si tu fais des versions séparées pour TI-92+ et pour V200. Exceptions:
* tu définis un layout de touches spécial (plus adapté) pour les V200 (C'est nécessaire dans certains cas, vu que certaines touches ont été déplacées.) OU
* tu utilises la pseudo-constante ROM_base (ou d'autres trucs qui retournent une valeur différente sur V200 que sur TI-92+) à plusieurs endroits.
Et pour répondre à ta question d'origine:
* Si ton programme supporte un seul modèle (ou s'il supporte seulement TI-92+ et V200, pour lesquelles presque toutes les pseudo-constantes ont la même valeur), les pseudo-constantes seront automatiquement optimisées en constantes en temps de compilation, et dans la bêta actuelle, un test sera rajouté au début du programme pour éviter que le programme soit exécuté sur les modèles pour lesquels il n'est pas prévu.
* S'il supporte plusieurs modèles, les pseudo-constantes resteront des pseudo-constantes, dont la valeur effective sera déterminée en temps d'exécution seulement.

Donc tu conseille une version TI89, et une version TI92+/V200, sachant que vour la version TI92+/V200, il faut faire quelques tests pour le clavier qui seront éxecutés pendant l'éxecution du programme ?
Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique
Tokamak Pim89 Le 27/10/2002 à 15:13 la compatibilité on calc est surtout utile quand on veut envoyer le prgm d'une 92+ à une 89 sans se soucier de tout.
Sinon compile une fois en USE_89
compile une fois en 92PLUS
et en V200 ...
en fait déclarer USE_89 et USE_92+ va seulement faire un prgm pour 89 et un autre pour 92+, avec un test au tt début du prog comme Kevin l'a dit.
Non-Webmaster et
non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les
Webmasters .«- Pas Moo ! ^^
Et si on met les 2, il n'y aura pas du tout 2 programmes séparés mis dans le même exécutable! Il y aura un seul programme qui, à chaque fois qu'il aura besoin d'une pseudo-constante, regardera la valeur de la variable __calculator initialisée par le code de détection au début du programme et retournera la valeur appropriée pour la pseudo-constante.
la registré est incorrect, je ne vois pas ce que tu veux dire. Base de registres ?
Moi, dans ce cas, je supprime simplement ce type de fichier (dans les options des dossiers -> types de fichiers)
désolé. En anglais, c'est "the registry". On peut le changer avec le programme "regedit".
Moi, je préfère carrément que les extensions soient masquées.
Link à cpôté de ça, g une connexionnde rève
=> je v pas raler pr un détail qui prend 10 secondes à régler
moitib> ExtendeD avait sorti un pack avec la ROM2.07 et ce qu'il fallait pr l'utiliser sur VTI
(la 2.07 étant une ROM spécifique aux V200 => ça permettait d'muler une V200)
Link Le 28/10/2002 à 22:52 Comprends pas, tu parlais dans ce même topic d'un seul exe mrchant pourles deux, comment je l'obtiens en asm?

Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.