Author Topic: TIOSMOD: a computer-based patcher for TI-68k OS (for now)...  (Read 23263 times)

0 Members and 1 Guest are viewing this topic.

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
TIOSMOD: a computer-based patcher for TI-68k OS (for now)...
« on: August 13, 2010, 03:14:07 pm »
Over the past few months, in an intermittent manner, I've started scratching an old itch of mine: patching TI's OS for TI-68k in an automated way, in order to optimize several sore performance spots that have bugged me for at least six years... and while at it, killing the silly protections laid out by TI, and why not fixing their bugs as well.
I discussed about the idea and program privately with several persons, one of whom (BrandonW) suggested to go up one level in genericity: split the patcher application and the patches themselves (written in a scripting-type language). The direction is clearly good, but I haven't reached such levels of abstraction yet, although I have tried to make a set of primitive functions generic enough to be usable for both TI-68k OS and TI-Z80 OS :)

So here's a patcher, which kills several protections, optimizes a bit several sore performance spots of the official TI-68k OS, fixes some bugs - and shrinks two versions so as to provide users 64 KB of additional archive memory (which older versions used to provide).
The latest version can currently be downloaded from http://tict.ticalc.org/beta/tiosmod-0.2.6.zip .


As noted above, the program is by no means a finished product, it's a seed for going further. The todo/wish list proves it. There's a lot that we could collectively do, in order to gain further power on calculator lines that are mostly, or totally, abandoned by the manufacturer - and help our fellow users :)
Contributions are more than welcome. To that effect, I have opened a Git repository on Github, http://github.com/debrouxl/tiosmod
Enjoy ;)

Older versions, for historical purposes: 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: posting a new version.]
[EDITs 20100914: posting two new versions.]
[EDITs 20100916: adding the Github repository information; posting a new version.]
[EDITs 20100922, 20100925, 20101017, 20101024: posting a new version.]
« Last Edit: October 24, 2010, 09:01:23 am by Lionel Debroux »
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #1 on: August 13, 2010, 03:18:50 pm »
That sounds nice, and it helps prevent possible copyright issues.
Now for patches for the z80 calcs, one of which I have ;D
Good luck :D
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #2 on: August 13, 2010, 03:26:38 pm »
Yes, this sounds very nice.

Could you also use BrandonW's resign68k program to resign the 68k OS? That's what I used for GTC, and it says it works with AMS upgrades too.



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #3 on: August 13, 2010, 03:30:10 pm »
Whenever the z80 version gets going, rabbitsign is used there, and it works very well :)
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #4 on: August 14, 2010, 01:56:11 am »
Yeah, RabbitSign works well, I named it in the README.
Note that I'm not going to add the TI-Z80 support myself, I'm not a TI-Z80 guy ;)
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #5 on: August 14, 2010, 08:13:40 am »
I'm curious as to the specifics of the patch, could you elaborate a bit on what changes it makes? Im not sure about what protections were in place, and how they could be "fixed". It doesn't surprise either that their were some things that could be optimized, but I am curious as to what. Also, which OS(es) is this for? The old TI-89 and the Ti-92+ appear to have the same OS (2.09) and the TI-89 Titanium and the Voyage 200 appear to have the same OS (3.10).

Offline qazz42

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1130
  • Rating: +30/-12
  • hiiiiiiiii
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #6 on: August 14, 2010, 09:23:45 am »
Yeah, I dont know what this does, especially sconce  I will be getting a TI-89 sooner or later (or should I get a TI-92?)

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #7 on: August 14, 2010, 10:56:43 am »
AOC: well, I have listed in the README 1) the protections nullified, 2) the optimizations performed, and 3) the OS versions supported by the program ;)
* protections: RAM execution, Flash execution, artificial limitation of the amount of archive memory, and FlashApp signature checking;
* optimizations: HeapDeref, hard-coding the default fonts in character/string drawing code, and optionally hard-coding the English language in XR_stringPtr;
* OS versions: 2.05, 2.09, 3.01 and 3.10.
Changes are made by patching binary data at select places using other binary data.

qazz42: see what TC01 and I wrote you in another topic, i.e. that by all means, don't get a 92 or 92 II.
« Last Edit: August 14, 2010, 11:22:11 am by Lionel Debroux »
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline qazz42

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1130
  • Rating: +30/-12
  • hiiiiiiiii
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #8 on: August 14, 2010, 11:02:10 am »
I forget, which topic did you write it in? Or, you can repeat it here ;D


EDIT: I remember now, it isnt allowed on some tests..
« Last Edit: August 14, 2010, 11:04:34 am by qazz42 »

Offline TC01

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 344
  • Rating: +9/-0
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #9 on: August 14, 2010, 11:23:29 am »
I forget, which topic did you write it in? Or, you can repeat it here ;D


EDIT: I remember now, it isnt allowed on some tests..
In my project's topic on this page.

In addition to that, the 92 can't be programmed in C, has less memory, less math capabilities, and less-sophisticated assembly programming.



The userbars in my sig are links embedded links.

And in addition to calculator (and Python!) stuff, I mod Civilization 4 (frequently with Python).

Offline qazz42

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1130
  • Rating: +30/-12
  • hiiiiiiiii
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #10 on: August 14, 2010, 12:17:49 pm »
Yes, I remember that now, thanks, I will get a TI-89 then!

Offline TIfanx1999

  • ಠ_ಠ ( ͡° ͜ʖ ͡°)
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 6173
  • Rating: +191/-9
    • View Profile
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #11 on: August 14, 2010, 01:21:12 pm »
@Lionel: Thanks for the info. I figured it might be in the readme, but I thought you might not be support Older OSes (I have a normal TI-89) and I wasn't sure if it would be beneficial for me to download or not.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #12 on: August 16, 2010, 08:27:29 pm »
Nice idea Lionel. I got a 89T so it could become handy in the future :)

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #13 on: August 17, 2010, 02:37:22 am »
AFAICT, you can already use it on your real calculator and avoid installing HW3Patch and Flashappy. I'm eating my own dogfood, the 89T I bought a while ago is running an AMS 3.10 modified by the program (and resigned with `rabbitsign -vv -r -k 09.key -o <outfile> <file>`) :)
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: TIOSFIX: a computer-based patcher for TI-68k OS (for now)...
« Reply #14 on: August 17, 2010, 11:25:47 am »
Oh I just meant right now I am not using my 89T so in the future when I do, I'll most likely try your software