Post Reply 
Third-party firmware PoC...
07-08-2014, 06:42 PM (This post was last modified: 07-09-2014 06:10 AM by debrouxl.)
Post: #16
RE: Third-party firmware PoC...
Two ways to accelerate discovery of the hardware:
* the UART would make for a more productive means of dumping hardware ports than drawing sprites (characters, or squares, good suggestion) on the screen. Unlike the Nspire's UART, the Prime's UART is not directly accessible from the outside. Who to punch a hole in the back cover of his/her calculator, so that the UART can be accessed without having to keep the PCB outside the case ?
* perform far more reverse-engineering on the Prime's software than was done until now. Last summer, somebody anonymously posted a bit of work for the very beginning of BXCBOOT0.BIN at http://tiplanet.org/hpwiki/index.php?tit...m_SKw5xtev - and nothing since then.

Reverse-engineering would make it possible to take advantage of the syscalls used by the standard armfir.elf. It's pretty easy to see that unlike the Nspire's OS, armfir.elf isn't standalone, without even looking at the code. With my dummy armfir.elf, pressing ON while the calculator is inside the infinite loop turns it off, and pressing ON again will resume the calculator... somewhere. Reset required to give back control of the CPU to the dummy armfir.elf.


EDIT the next day: BTW, besides the motivations of a learning experience, and the "just because we can" motivation, porting Linux to the Prime would give access to a wide range of existing Linux-based userspace programs.
That happens on the Nspire as well, even if few people take advantage of it. Many things can be cross-compiled through OpenEmbedded, Buildroot, Yocto and others - and many things are pre-built by other people / infrastructures in the first place, e.g. Debian armel chroots (userspaces from several other distros were successfully tested on Nspire as well).

In soft environmental conditions (few calculators are field-hardened devices, and neither the Prime, nor the Nspire, are), calculators can be useful for, among other non-standard purposes:
* emulating a HID mouse, a HID keyboard;
* providing some form of display accessed through an emulated serial port;
* emulating a MSD containing system rescue programs;
* implementing one of the first jailbreak procedures for the PS3.
The TI-89 Titanium can do all of those, thanks to the "Linky" program by Brandon Wilson. I did use my 89T as mouse + keyboard in the real world, several months after filling in Linky's keyboard mapping code, for the initial setup of an embedded ARM-based board, in the absence of an USB mini-A male <-> USB A female cable.
The Prime's CPU (400 MHz ARM9) is far more powerful than a 89T (12-14 MHz 68000), it has immensely more RAM and Flash than a 89T (RAM: 32 MB vs. 256 KB, i.e. 128 times more, and Flash: 256 MB vs. 4 MB, 64 times more), a faster USB controller, etc. Therefore, it could do much better.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
Third-party firmware PoC... - debrouxl - 07-05-2014, 09:17 PM
RE: Third-party firmware PoC... - eried - 07-06-2014, 12:02 AM
RE: Third-party firmware PoC... - debrouxl - 07-06-2014, 06:50 AM
RE: Third-party firmware PoC... - eried - 07-07-2014, 08:19 AM
RE: Third-party firmware PoC... - debrouxl - 07-07-2014, 08:43 AM
RE: Third-party firmware PoC... - debrouxl - 07-07-2014, 06:21 PM
RE: Third-party firmware PoC... - debrouxl - 07-07-2014, 07:50 PM
RE: Third-party firmware PoC... - debrouxl - 07-08-2014 06:42 PM



User(s) browsing this thread: 1 Guest(s)