HP Forums

Full Version: Image viewer (zoom, scrolling, touch) + online converter
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Over at TI-Planet, we (mostly critor) have worked on a PPL program for viewing images larger than the screen, complete with zoom, scrolling and touch screen support Smile
The Prime became the second target of TI-Planet's online converter mViewer GX Creator, the first target being the Nspire's proprietary Lua, for which mViewer GX was released a couple weeks ago. mViewer GX Creator accepts PDF documents and several image formats.

As usual, the Prime's performance in graphical operations is great Smile

(if we hadn't already faced persons who respect neither other sources of information, nor other persons' work, there would be fewer TI-Planet stickers on the video)
See also http://tiplanet.org/forum/archives_voir.php?id=26760 for a demo pack.

Unlike the Nspire version, for now, the Prime version handles a single page per program. It's because the Prime often crashes when dealing with programs larger than a couple MBs or so, and because transfers are fairly slow (several dozens of KB/s)...
We hope that future firmware versions will improve those sore points, but we know that the Prime's mildly limited RAM size (half of that of the Nspire CX platform, which is more than two years older) will put a cap on the size of individual images, and that for faster communication with the calculator, a change in protocol type is in order.

As shown in the video, besides touch screen interaction, the direction pad triggers small moves in 8 directions; zoom in / zoom out is * and /; the 1-4 and 6-9 keys trigger large moves in 8 directions; the help key displays… help.

Needless to say, we'll keep improving mViewer GX Creator and mViewer GX Prime, as we did for the Nspire version (even if our efforts didn't yield much, due to limitations in TI's Lua) Smile

Original post: http://tiplanet.org/forum/viewtopic.php?...33&lang=en .
wow! Very nice!

Crap, this probably means that I need to work on improving speed of stretch Bit Blit... At the moment it is a very ugly loop of GetPixels, SetPixels...

Hi Cyrille,

It would indeed be fantastic to have even faster blits Smile
While we're talking about wish list items: in order to reduce file size further, JPEG (in general, lossy compression format) support in ICON.

From the POV of users of any large program, such as large images coupled with mViewer GX, transfer reliability and speed are arguably greater issues than blit speed. critor mentioned transfers lasting 45" to 1', without progress feedback in the CK, and frequent calculator crashes when dealing with 1+ MB files.
I added progress information callbacks in the libhpcalcs todo list. In order to reduce initial development time, I didn't port that feature from libti*, but it's desirable to do so at some point.

One thing I noticed is that via the emulator, transfers tend to be faster than with the connectivity kit and the calc has less chances to become unstable. However, it's still somewhat slow, with 100 KB programs taking between 10 and 30 seconds. Success rate is higher with emulator, too.

Anyway, yeah faster BLITs would definitively be nice. I can't imagine how much faster Trailblazer and SHWExec would run with faster stretching of images, although the speed is still fairly impressive so far.
Update: mViewer GX Creator now generates multi-page Prime documents Smile
In fact, for stability reasons (the HP CK and the calculator hate files larger than 2 MB), each program contains a single image - but the + and - keys launch another program for the next / previous page.

During his tests, critor noticed that after viewing lots of images, the real calculator (but not the computer software ?) reports weird syntax errors when switching from a program to another.
Don't edit the program: there's no syntax error, as shown by the fact that pressing the 'Reset' button on the back makes the file readable again. It could be an out of memory condition, diagnosed with a wrong error message (Tim, Cyrille ?).
Reference URL's