1

Lionel Debroux a releasé son projet tiosmod. Il s'agit d'un patcheur pour les ROMs TI.

Etant donné que TI ne releasera a priori plus jamais de ROMs pour les TI68k, Lionel a entrepris d'écrire un programme permettant de patcher ces ROMs afin d'en accroitre les possibilités (d'autant que pouvoir signer n'importe quelles ROMs nous facilite maintenant les choses).

Quelques features :
- Suppression de diverses protections, entre autres de la protection d'exécution en ROM.
- Récupération d'un secteur de flash (64 kB d'archive) sur les derniers AMS 2.08 et 2.09 pour TI89 qui prenaient plus de place que les précédents
- Suppression de limite de taille pour les exécutables
- et bien d'autres choses encore !

Le GIT de tiosmod est accessible à cette adresse : http://github.com/debrouxl/tiosmod (le readme est sur cette même page).

Enfin, ce projet a été présenté sur d'autres forums français et internationaux il y a deux mois :
Sur TI-Bank : http://tibank.forumactif.com/programmation-f5/tiosmod-un-patcher-pour-os-de-ti-68k-pour-le-moment-t5872.htm
Sur Cemetech : http://www.cemetech.net/forum/viewtopic.php?t=4814
Sur Omnimaga : http://www.omnimaga.org/index.php?topic=4069.0
wink

2

smile

3

Sympa comme projet !
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

4

Merci Martial pour la feature smile

Le patcher + patchset ne représente pas un boulot fou, je dois y avoir passé aux alentours d'un homme-semaine (< 1300 lignes brutes de code C). Même avant la factorisation des clés de signature, comme les TI-68k avaient déjà TIB-Receiver puis FreeFlash depuis fort longtemps, et que ça fait déjà trois ans qu'on est à peu près sûrs qu'il n'y aura plus de nouvelle version d'AMS, je suis en fin de compte surpris d'être, manifestement, le premier à faire un patcheur un peu générique sur notre plate-forme préférée ?

Le patchset est sous WTFPLv2 trioui
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

5

// 1b) Disable Flash execution protection by setting a higher value in port 700012.

Tu as oublié les HW1.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

6

Exact.

Il faudrait donc remplacer le trio de lectures
move.w 45EA4,d0
move.w 85EA4,d0
move.w C5EA4,d0
par des écritures.
Vu que la valeur de 5EA4 mod 40000 n'a aucune importance, la transformation en
move.w d0,45EA4
move.w d0,85EA4
move.w d0,C5EA4
devrait être suffisante.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

7

Rien de comparable prévu pour v200 ? tsss
[edit] Ah, con, c'est pour les TI 68k, donc ça devrait fonctionner
• Ymox va s'acheter un nouveau cerveau
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

8

Lionel Debroux (./4) :
Le patchset est sous WTFPLv2 trioui

Tu compte rentrer dans le CacaLabs ? wink
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

9

Lionel Debroux (./6) :
Il faudrait donc remplacer le trio de lectures
move.w 45EA4,d0
move.w 85EA4,d0
move.w C5EA4,d0
par des écritures.
Vu que la valeur de 5EA4 mod 40000 n'a aucune importance, la transformation en
move.w d0,45EA4
move.w d0,85EA4
move.w d0,C5EA4devrait être suffisante.

Hmmm, l'adresse 0x5EA4 est-elle safe à détruire?
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

10

L'adresse 5EA4 est utilisée, sous la forme 185EA4, pour l'activation / désactivation de l'écran, et sous la forme 1C5EA4, pour l'activation / désactivation de la Protection. Elle est aussi utilisée un certain nombre de fois, presque toujours en écriture, sous la forme 5EA4, dans des boucles comme la recopie des vecteurs.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

11

Nouvelle version, qui désactive en théorie la protection d'exécution en Flash sur les HW1 aussi, et remet OSVRegister/OSVFreeTimer + le code nécessaire dans le code de reset et le handler d'interruption, c'est à dire les timers vectorisés que TI avait enlevés dans AMS 2.04. Ces timers avaient été réimplémentés indépendamment d'AMS par Zeljko Juric dans la librairie de TIGCC (et donc de GCC4TI).

Comme d'habitude, et bien que l'OS tourne avec succès des tests des fonctions ajoutées sur une de mes calculettes physiques, utilisez le patcher+patchset ou les diffs binaires à vos risques et périls smile
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

12

Je suis content de voir que pour une fois, tu fais du travail utile

Cela dit, ton dépôt git, tu comptes le mettre à jour quand? Visiblement, tu n'as toujours pas appris à utiliser correctement un SCM. (Cf. aussi ton système "un commit par version". sick)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

13

Kevin Kofler (./12) :
Je suis content de voir que pour une fois, tu fais du travail utile

Cela dit, ton dépôt git, tu comptes le mettre à jour quand? Visiblement, tu n'as toujours pas appris à utiliser correctement un SCM. (Cf. aussi ton système "un commit par version". sick)

OK, que ce soit clair : soit tu es correct dans tes posts, soit tu te fais kicker. Tu n'auras pas d'autre averstissement de ma part.

L'incident est clos pour ce topic, j'aimerais que ça ne parte pas en flame.
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

14

Je vois que ton TODO parle d'intégrer PreOs à AMS. À mon avis, une meilleure solution serait d'en faire une FlashApp, comme MirageOS sur Z80.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

15

Je suis très partisan d'un PreOS en flash évidemment, en tant que flash apps, mais l'implantation ne sera certainement pas aisée...

Question : un programme peut-il présumer que l'AMS sur lequel il tourne a été TIOSMODé ?
Sinon, comment le détecter ? Peut-on avoir une série de flag à un endroit de la ROM (une adresse inutilisée sous tous les AMS) permettant de savoir quels sont les patches installés ? Tu pourrais fournir un header tiosmoh.h, définissant cette adresse et les bits correspondant aux patches implantés lors du patch de la ROM ?
Ou alors il faudrait un autre moyen ? Parce que pouvoir faire un trap #3 sous AMS, c'est génial (PreOS n'embarque pas cette feature malheureusement sad), mais encore faut-il que ça ne conduise pas à un crash...

 pea Str(pc)
 bsr printf
 addq.l #4,sp
 jsr tios::ngetchx
 movea.w d3,a0
 trap #3
 pea Str2(pc)
 bsr printf
 addq.l #4,sp
 ...
Str: dc.b "Attention, si ça crash sévère, allez TIOSMODer votre ROM. Appuyez sur une touche et serrez très fort les fesses...",0
Str2: dc.b "Vous avez le cul bordé de nouilles !",0

16

Nouvelle version, http://tict.ticalc.org/beta/tiosmod-0.2.6.zip et également, après la prochaine mise à jour des archives, sur ticalc.org: http://www.ticalc.org/archives/files/fileinfo/431/43198.html .
* correction de bugs dans le patcher/patchset;
* ajout de la compatibilité Windows: les fonctions dont le patcher a besoin existent bien dans msvcrt, c'est juste qu'elles ont des noms différents;
* ajout de la correction d'un autre bug d'AMS, corrigé par HW3Patch, à savoir celui qui peut se produire quand on change les piles.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

17

Bien joué top

18

19

chapo

20

Ouah, chapeau !

21

top

Bravo l'artiste wink

22

petite news sur tifr wink
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

23

Je l'avais vue, merci wink
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.