π
<-
Chat plein-écran
[^]

TIOSMOD: un patcher pour OS de TI-68k (pour le moment)...

Programmation et implémentation d'algorithmes.

TIOSMOD: un patcher pour OS de TI-68k (pour le moment)...

Message non lude Lionel Debroux » 13 Aoû 2010, 20:13

Au cours des dernières semaines, par intermittence, j'ai commencé à  faire un truc qui me trotte dans la tête depuis fort longtemps: patcher l'OS officiel des TI-68k de manière automatisée, dans le but d'optimiser quelques mauvais bouts de code qui m'énervent depuis au moins six ans... et au passage, virer les protections stupides mises en place par TI, et pourquoi pas également corriger leurs bugs.

J'ai discuté en privé de l'idée et du programme avec quelques personnes, l'une d'entre elles (BrandonW) a suggéré d'augmenter la généricité: séparer le programme qui réalise le patch et les patches eux-mêmes (écrits dans un langage de type script). C'est clairement une bonne direction, mais je n'ai pas encore atteint de tels niveaux d'abstraction, bien que j'aie essayé de faire un jeu de fonctions de base suffisamment générique pour être utilisable aussi bien pour les OS TI-68k que les OS TI-Z80 :):


Donc, voici un patcheur, qui vire plusieurs protections, optimise un peu quelques points noirs de l'OS officiel des TI-68k, corrige des bugs - et rétrécit deux versions de manière à  fournir aux utilisateur 64 KB de mémoire archive en plus (que les versions plus anciennes fournissaient).
La dernière version en date peut actuellement être téléchargée à  http://tict.ticalc.org/beta/tiosmod-0.2.6.zip .


Comme écrit ci-dessus, le programme n'est en aucun cas un produit fini, c'est une graine pour mieux faire. La todo/wish list le prouve. On pourrait collectivement faire beaucoup de choses pour nos amis utilisateurs et programmeurs de ces familles de calculatrices qui sont largement, ou totalement, abandonnées par le fabricant :):

Les contributions sont plus que bienvenues. Dans ce but, j'ai ouvert un repository Git sur Github: http://github.com/debrouxl/tiosmod .
Enjoy :;):

Anciennes versions: http://tict.ticalc.org/beta/amsopt-0.1.zip , http://tict.ticalc.org/beta/tiosfix-0.2.zip ,
http://tict.ticalc.org/beta/tiosfix-0.2.1.zip , http://tict.ticalc.org/beta/tiosmod-0.2.2.zip , http://tict.ticalc.org/beta/tiosmod-0.2.3.zip , http://tict.ticalc.org/beta/tiosmod-0.2.3a.zip , http://tict.ticalc.org/beta/tiosmod-0.2.3b.zip , http://tict.ticalc.org/beta/tiosmod-0.2.4.zip , http://tict.ticalc.org/beta/tiosmod-0.2.5.zip .

[EDIT 20100822: nouvelle version.]
[EDIT 20100914: deux nouvelles versions.]
[EDIT 20100916: ajout de l'URL du repository Git, une nouvelle version.]
[EDITs 20100922, 20100925, 20101017, 20101024: nouvelle version.]
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6860
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude Adriweb » 14 Aoû 2010, 08:35

Bravo !

C'est une très bonne idée je trouve :)

Je te souhaite a toi et à ces "quelques personnes" de bonnes idées et du joyeux codage :#cool#:


Sinon, ce projet a été proposé autre part pour des contributions extérieures ... ?

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...)
My calculator programs
Mes programmes pour calculatrices
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 78.4%
 
Messages: 14670
Images: 1118
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude Lionel Debroux » 14 Aoû 2010, 16:25

Merci :):

Oui, j'ai posté à  propos de ce programme sur deux des forums anglophones, plutà´t actifs eux aussi.
Je ne vais pas faire le support des OS TI-Z80 (pour permettre, par exemple, de réécrire les patches de BrandonW et thepenguin77), mieux vaut laisser cette tâche à  ceux qui les connaissent.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6860
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude tama » 15 Aoû 2010, 13:33

Bonne initiative :)
Je peux peut-être aider, même si je ne connais pas grand-chose à la structure interne des 68k, mais pour quelques petits bouts de code, why not.
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
Avatar de l’utilisateur
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 40%
 
Messages: 10994
Inscription: 19 Déc 2005, 00:00
Localisation: /dev/null mais je survis :)
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: epita ING3 \o

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude Lionel Debroux » 22 Aoû 2010, 18:26

Nouvelle version, qui sait maintenant également virer la limitation artificielle de la taille des programmes ASM, et la limitation artificielle d'utilisation des programmes ASM dans les expressions ("Invalid Program Reference").
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6860
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude critor » 22 Aoû 2010, 18:33

Lionel Debroux a écrit:Nouvelle version, qui sait maintenant également virer la limitation artificielle de la taille des programmes ASM, et la limitation artificielle d'utilisation des programmes ASM dans les expressions ("Invalid Program Reference").


:#top#:

1 an après la factorisation des clefs 68k, enfin du concret! :8):
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 45%
 
Messages: 41674
Images: 15208
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude Lionel Debroux » 22 Aoû 2010, 19:45

Bien avant tiosfix (peu après la factorisation des clés), il y avait eu la signature de PedroM 0.82 avec la clé privée :;):
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6860
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude Lionel Debroux » 14 Sep 2010, 07:36

Nouvelle version, v0.2.2, aujourd'hui.
Depuis la v0.2.1, à  part deux changements non-fonctionnels (renommer une nouvelle fois le programme et le couper en deux morceaux), le programme a maintenant la capacité expérimentale de rétrécir AMS 2.08 pour 89, dans le but de regagner le secteur de mémoire archive (64 KB) que cette version a volé aux utilisateurs. Cette capacité est implémentée en déplaçant 322 octets de données depuis la fin de l'OS vers une grande (~20 KB) zone inutilisée au début de l'OS :):

Le ZIP contient maintenant des patches binaires directement applicables avec xdelta 1.x, xdelta 3.x ou bsdiff. Ces patches ont été créés avec toutes les optimisations activées, y compris le codage en dur de la langue anglaise, qui empêche les localisations de langue de fonctionner correctement (c'est peut-être davantage un inconvénient pour les utilisateurs non anglophones, mais de toute façon, beaucoup de gens dans des pays qui n'ont pas l'anglais comme langue officielle n'utilisent pas ces FlashApps de localisation parce qu'elles créent des incompatibilités avec les programmes TI-BASIC).
L'optimisation du dessin avec la petite police + le codage en dur de la langue anglaise rendent (par exemple) le dialogue MODE, qui est composé de chaînes de caractères localisables dessinées avec la petite police, visiblement plus rapide (je compare deux 89 HW2 cà´te à  cà´te).
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6860
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude critor » 14 Sep 2010, 10:21

Lionel Debroux a écrit:Nouvelle version, v0.2.2, aujourd'hui.
Depuis la v0.2.1, à part deux changements non-fonctionnels (renommer une nouvelle fois le programme et le couper en deux morceaux), le programme a maintenant la capacité expérimentale de rétrécir AMS 2.08 pour 89, dans le but de regagner le secteur de mémoire archive (64 KB) que cette version a volé aux utilisateurs. Cette capacité est implémentée en déplaçant 322 octets de données depuis la fin de l'OS vers une grande (~20 KB) zone inutilisée au début de l'OS :):


Cela me semble devenir très intéressant pour les utilisateurs, de par la diversité et l'utilité des patchs proposés.

Je teste et prépare une news.


PS: Ce serait bien de gérer les OS z80.
Plusieurs patchs sont en effet disponibles sur TI-Bank au format IPS, et j'en ai encore 2 en cours de création.

Le problème, c'est que l'application de 2 patchs IPS successifs au même OS (si on veut modifier simultanément 2 choses) ne donne évidemment pas une signature valide.

Donc, soit je dois imaginer toutes les combinaisons possibles, et ça va être de pire en pire...

Soit il faudrait fournir sur le portail des fichiers 8Xu déjà modifiés (ce qui est illégal) ou alors les clés RSA des TI-z80 (ce qui est illégal pour TI)...

Ton patcheur mettrait fin à ce dilemme! :#top#:
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 45%
 
Messages: 41674
Images: 15208
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: TIOSMOD: un patcher pour OS de TI-68k (pour le moment)..

Message non lude Lionel Debroux » 14 Sep 2010, 10:29

Je ne veux bien sûr pas te priver de poster une news, mais que penses-tu d'attendre quelques jours (hopefully), que le rétrécissement d'AMS 2.09 pour 89, qui est plus intéressant que 2.08 (je dirais que c'est uniquement dans AMS 2.09 que la commande "delete file" a été ajoutée au link) soit lui aussi codé et testé ? :):

Je suis complètement d'accord que ça serait super de gérer les OS TI-Z80, mais apparemment (discussion sur #ti un soir il y a quelques semaines, faudra que je retrouve dans mes logs), à  cause de la pagination et de la façon dont ils sont stockés, c'est le bazar :(:
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6860
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Suivante

Retourner vers Programmation

Qui est en ligne

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

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Offre de test des nouveautés de rentrée 2024 par Casio. Enseignant(e), reçois gratuitement 1 exemplaire, à ton choix, de la Graph Light ou bien de la Graph Math+
14€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 31 Octobre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 90+E d'ici le 31 Décembre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 25 d'ici le 31 Décembre 2024
8€ remboursés par Casio sur l'achat de ta calculatrice Graph Math+ d'ici le 31 Octobre 2024
Reprise de ton ancienne fx-92 Collège ou Graph 25/35/90 à 3€ peu importe son état. Même non fonctionnelle et donc invendable, même ancienne Graph 35 non conforme aux programmes (pas de Python), même ancienne Graph 25/35 inutilisable aux examens (pas de mode examen) et donc invendable. Etiquette de retour fournie, pas de frais de port à payer.
3€ remboursés par Casio sur l'achat de ta calculatrice fx-92 Collège d'ici le 30 Septembre 2024
5€ de remise immédiate sur l'achat de ta calculatrice TI-83 Premium CE Edition Python chez les revendeurs partenaires
4€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced Edition Python chez les revendeurs partenaires
3€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced chez les revendeurs partenaires
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234567891011121314
-
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.
1195 utilisateurs:
>1142 invités
>48 membres
>5 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)