π
<-
Chat plein-écran
[^]

ZLANG, détection langue calculatrice pour programmes 83PCE

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

ZLANG, détection langue calculatrice pour programmes 83PCE

Message non lude critor » 16 Mai 2016, 12:01

Les applications TI-83 Premium CE et TI-84 Plus CE s'adaptent automatiquement à la langue réglée pour la calculatrice.

A notre connaissance, les programmes eux, qu'ils soient en langage Basic ou machine, n'ont jamais disposé d'une telle fonctionnalité. Ce que certains très rares programmes ont proposé c'est :
  • des versions différentes du programme selon la langue souhaitée par l'utilisateur
    (ce qui est lourd à maintenir et mettre à jour pour le développeur)
  • un menu interne au programme permettant de choisir la langue
    (faut-il encore suffisamment comprendre l'anglais pour y accéder)

6897Mais aujourd'hui, c'est fini ! Notre nouvel utilitaire ZLANG est capable de te renvoyer le code ISO-639-1 à deux caractères de la langue de la calculatrice, permettant ainsi à tes programmes d'agir en conséquence ! :bj:
L'intégralité des 7 langues gérées à ce jour par la calculatrice est supportée :
  • DE : allemand
  • EN : anglais
  • ES : espagnol
  • FR : français
  • NL : néerlandais
  • PT : portugais
  • SV : suédois
Voilà donc de quoi lancer une nouvelle génération de programmes révolutionnaires pour TI-83 Premium CE et TI-84 Plus CE ! :bj:

Dans le contexte de la mode du mode examen lancée par la France et dans laquelle les Pays-Bas se sont par la suite engouffrés, peut-être que d'autres de nos voisins européens vont suivre et donc générer un renouvellement massif du parc des calculatrices graphiques par les élèves.
Si tu programmes et en prime maîtrises les langues d'un ou plusieurs de nos voisins, voilà donc une occasion de promouvoir tes créations au-delà de nos frontières ! :bj:

Notons que la méthode de test choisie efface l'écran graphique. Il est donc conseillé de lancer le programme ZLANG en tout début de programme et d'en enregistrer le résultat.



Téléchargement : archives_voir.php?id=538696
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.1%
 
Messages: 41493
Images: 14562
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: ZLANG, détection langue calculatrice pour programmes 83P

Message non lude Adriweb » 16 Mai 2016, 13:14

Concernant un équivalent en C/ASM pour CE, il s'avère qu'il suffit (sans surprise) de lire le bon octet en mémoire (localLanguage) (et il y a aussi le sublang, mais bref, c'est moins important), comme l'explique la doc du SDK 83+ qui s'applique toujours autant (cf. la page "Working with TI Language Localization Applications" de sdk83pguide.pdf)

Adresse de localLanguage:
  • Sur 83+/84+: 9B73h
  • Sur 84+CSE: 9E54h
  • Sur 83PCE/84+CE: 0D025CFh

Donc en C, sur CE, pour lire ça vous pouvez faire:
Code: Tout sélectionner
const uint8_t langCode = *((uint8_t*)0x0D025CF); // localLanguage
...
if (langCode == 0x0C) {
    // if current lang is French
    ...
} else {
    // Default: fallback to English
    ...
}

Bien sûr, histoire de faire les choses proprement et d'éviter des tests de langue à chaque fois qu'on veut afficher un string, il suffit par exemple d'avoir deux arrays de strings distincts (une pour les strings français, et une autre pour les strings anglais par exemple), et d'initialiser, une seule fois (avec le test de langue), un pointeur pointant vers le bon tableau de strings qui sera à utiliser par la suite partout. Après, si vous avez juste 2-3 strings à gérer, c'est moins "grave"...

Pour les equates des langues, provenant de ti83plus.inc:
Code: Tout sélectionner
LANG_NEUTRAL                       equ   00h
LANG_DANISH                        equ   06h
LANG_DUTCH                         equ   13h
LANG_ENGLISH                       equ   09h
LANG_FINNISH                       equ   0Bh
LANG_FRENCH                        equ   0Ch
LANG_GERMAN                        equ   07h
LANG_HUNGARIAN                     equ   0Eh
LANG_ITALIAN                       equ   10h
LANG_NORWEGIAN                     equ   14h
LANG_POLISH                        equ   15h
LANG_PORTUGUESE                    equ   16h
LANG_SPANISH                       equ   0Ah
LANG_SWEDISH                       equ   1Dh
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.2%
 
Messages: 14613
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: ZLANG, détection langue calculatrice pour programmes 83P

Message non lude critor » 16 Mai 2016, 13:41

En fait, je ne vois pas vraiment l'intérêt d'une version asm.

Ce n'est pas comme si il y avait vraiment du temps à gagner ici.

Une version asm aura de plus le gros inconvénient de ne pas être utilisable sur TI-84 Plus C Silver Edition, d'être difficilement adaptable aux TI-82+/83+/84+ monochromes, et d'être impossible à adapter sur les TI-82 Advanced et TI-84 Plus T.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.1%
 
Messages: 41493
Images: 14562
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: ZLANG, détection langue calculatrice pour programmes 83P

Message non lude Anonyme0 » 16 Mai 2016, 13:44

Je pense qu'il parlait plutôt de l'implémentation en vue d'une utilisation dans un programme en C ou en Asm.
Image
(17:46:41) Hayleia: ah, ce bon vieux Firefox, qu'est-ce qu'on est bien avec lui :D
Avatar de l’utilisateur
Anonyme0
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 14.6%
 
Messages: 273
Images: 17
Inscription: 06 Sep 2015, 17:33
Localisation: Pas sur TI-Planet
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: ZLANG, détection langue calculatrice pour programmes 83P

Message non lude Adriweb » 16 Mai 2016, 13:57

Oui, globalement moi je me fous un peu, désormais (et tout simplement aussi parce qu'ils ont moins de RAM) des modèles < CE (mais comme j'avais les equates sous la main pour les z80, je les ai rappelé par générosité)

Et donc oui, je pensais au C, puisque c'est comme ça que se développent les choses les plus avancées maintenant, où l'on ne va certainement pas s'embêter à faire exécuter un programme Basic quand il suffit d'aller lire un octet :P
Ceux qui developpent en ASM connaissaient probablement déjà tout ça de toute façon, donc je suppose que je ne leur apprend rien.

Cela dit, je reste persuadé qu'il vaut mieux compiler des 8xp séparés par langue s'il y a un certain nombre de strings - l'utilisateur final n'en sera que ravi, il choisit tout autant la langue selon le fichier à transférer, et ça lui prendre moins de place une fois sur calculatrice. (Exemple: Cesium)
Là où ça a un intéret de combiner plusieurs langues, c'est quand il n'y a pas beaucoup de strings d'une part, et pas beaucoup de langues non plus d'autre part (2, déjà, c'est bien - et ça rentre bien dans le contexte 83PCE en France et 84+CE aux USA surtout)
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.2%
 
Messages: 14613
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb


Retourner vers News TI-z80 (TI-73, 76, 80, 81, 82, 83, 84, 85, 86)

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 45 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1306 utilisateurs:
>1262 invités
>40 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)