Free, Open Source OS For TI Calculators
nicklaszlo writes "TICalc.org announced yesterday that Patrick Pelisier has released a new beta OS, called PedroM, for the TI-89 and TI-92+ under the General Public License. Here is the source and binary. This is the first time a TI calculator has been free of proprietary software. The OS has 32 commands and backward compatibility for assembly programs. You can get a Windows/PC emulator of both calculators, for those who don't have either calculator, or don't want to risk their real system."
The other TI calculators with flash memory are the TI-73 and the TI-83 Plus. Personally, I've released the source for a rudimentary proof-of-concept OS (warning: knowledge of how to compile and send it required) for those just to demonstrate that a similar method exists. In fact, on the 83+ one can write to the flash memory with an assembly language program as well.
To those who ask what the point is, it's exciting. Writing your own operating system is quite possibly the hardest thing that a programmer can do. On the computer, it's unmanageable because of complexity, but you can still balance complexity with functionality on a graphing calculator. The TI-83 Plus uses a Z80 chip, and the 89/92+/Voyage 200 a 68000k, so assembly isn't too bad. Most 89/92+/Voyage 200 programs are written in C though.
As someone who works at one of the large community sites about TI calculators, I'm in a position to comment on this.
:)
The OS attempts to be compatible in a lot of ways with the AMS (TI's OS for the 68k calcs) but it really isn't. A lot of the OS such as the math functionality is missing. A lot of assembly programs also rely on hacks to take advantage of the internals of the AMS. These won't work, also.
Another thing is that the majority of assembly programs now are written for AMS 2.0x, but this software only allows for assembly programs written for the old AMS 1.0x. It's somewhat compatible, but is lacking in a lot of ways, too.
The reasons that the compatibility is lacking are that we still haven't documented a lot of functions in the AMS and some features have intentionally been left out for the sake of using less Flash ROM and leaving more of it for the archives. In other places, some speed has been sacrificed for making the OS a lot smaller than the AMS.
It's an interesting project, but at this point, it's more of a proof-of-concept thing than a real replacement for the AMS software. The future of this project, hopefully, will include most of the functionality of the TI-89, including math, but will provide significant advantages over the AMS. For example, the AMS makes a lot of restrictions on the size of assembly language programs and what they can do. These restrictions are gone in PedroM. Also, as I understand, this OS is written in assembly instead of compiled from C like the AMS is. Hopefully this means we can implement the same functionality of the AMS but that runs faster and at a smaller size.
Good luck to PpHd. It's a good start.
TI places a lot of restrictions on what assembly language programs can do. TI encourages programmers to make large software packages into Flash applications. Unfortunately, these applications must be digitally signed by TI. While a program to sign applications has been released as freeware for the TI-83+ calculators, no such signing program has been released for the TI-89/TI-92+/V200. A lot of developers simply don't have the money to buy signings from TI. It's $100 for three signings or $300 for ten signings. A lot of us developers release our software for free and don't want to spend this kind of money just to release our applications for free. Sure, we could charge for them, but most of us don't want to because we'd like free software to continue to dominate the TI community. Anyways, this sort of thing bypasses TI's restrictions on what assembly programs can do.
This calculator was expensive enough, I was very unhappy to learn that the manual that came with it didn't discuss all of its features, and that I had to pay extra to get all the documentation.
Love many, trust a few, do harm to none.