What is TI-SmartView Telling Us?
Posted at Wednesday, December 31st, 1969 4:33PM

If you're not aware, TI-SmartView is TI's official emulator software for the TI-84 Plus/Silver Edition graphing calculators. And, of course, being the greedy bastards that they are, it's not free.

There is a TI-84 Plus/Silver Edition Flash application called SmartPad which lets you use your calculator as a sort of remote control for the emulator, via the direct USB cable. This is pretty nifty.

Because they so tightly integrated SmartView support into the 84+/SE OS, and SmartPad is a waste of 16KB just to make a few OS calls, I wrote a small ~400 byte program called SmView which does exactly the same thing without the bloat. I included the source and documented the protocol so that it's mostly well-understood.

Since TI-SmartView costs $140, this was an interesting little program to write, but I did succeed. So all's well with the world, right? Wrong.

There is a single BCALL, 52E1h, which exists in OS 2.40+, and it is definitely related to TI-SmartView. It is one of three remaining unknown BCALLs in OS 2.40. It's quite a milestone if we can figure out what this routine does (the original BCALLs, 2.40+ ones (3), and boot code ones (4) are all that's left).

Fortunately, this is a very simple routine: it just returns bit 4 of the USB flag byte, (9C75h). The only problem is knowing exactly what this does.

The OS touches it in only one place...while receiving a control request from a USB host, the calculator checks to make sure it's acting as a SmartView Input Pad. If so, it allows control request 21 09 00 02 00 00 01 00 with one data byte attached. The bit BCALL 52E1h returns is bit 1 of this data byte.

So what I'm saying is that the PC issues a HID Set Report request to the calculator with one data byte, and bit 1 of this byte is what's returned by BCALL 52E1h. So it's some sort of status being set by the SmartView Input Pad PC driver.

This is what I can tell you. The address (in OS 2.41) of the routine which handles control requests (and sets/resets bit 4,(9C75h)) is at 74:510Fh. The PC is issuing a HID Set Report request to the calculator and sending it a bit, which any program or Flash application can then check with BCALL 52E1h.

Seeing as how I don't own TI-SmartView (though I'm insane enough that I'm actually considering buying it just to figure this out), I cannot complete this. But you can! And that's your mission.

What information does BCALL 52E1h return about the TI-SmartView emulator software or the calculator?


re:What is TI-SmartView Telling Us?
Posted at Wednesday, January 28th, 2009 11:11AM by magicdanw

$140 is a pretty hefty fee for an emulator, especially considering how many free ones are available (well, I guess just TilEm and WabbitEmu for 84+ support, but still). I googled "TI-Smartview download" in hopes of finding a copy some teacher had uploaded to an unprotected website, just as I found Testguard and Testguard 2 so long ago, and instead I found that it had already been cracked and uploaded to torrent sites! So, although I'm not advocating illegal activities, I'd like to let you know that it is possible to get your hands on a copy of this software for debugging purposes.


re:What is TI-SmartView Telling Us?
Posted at Wednesday, July 22nd, 2009 8:46AM by graphmastur

The 21 byte seems to be for the Smart View. The 09 byte is the CTS, or the Clear To Send byte. The bit seems to be wether the applications is ready to be talked to or not.


your answer

You must be logged in to post replies.