Michael Sheldon's Development Stuff

Michael Sheldon (mike at mikeasoft dot com)

October 12, 2008

FBReader now working on the OpenMoko FreeRunner
Mike @ 7:09 pm

I’ve just spent the day hacking on FBReader to make it work correctly under OpenMoko (OM2008.*). Until now it’s been pretty much unusable due to the GPE version of FBReader expecting you to be using a device that has some physical buttons which then get bound to vital functions like turning the page. The changes I’ve made are as follows:

  • Add scroll forward/backward buttons to the toolbar
  • Add fullscreen mode button to the toolbar (doesn’t have an icon at the moment, it’s the third button from the right)
  • Change fullscreen mode so that it doesn’t hide the toolbar (otherwise there’s no way to get back from fullscreen mode)
  • Switch to using the much prettier blue tango icons
  • Make the line separation larger so the text doesn’t overlap
  • Reduce the font size
  • Change the default colours to match openmoko’s colour scheme better (and so it’s a little easier on the eyes)

And most importantly…

  • Make it so that tapping the sides of the screen turns the book’s pages (left = backwards, right = forwards)

Here’s a screenshot of what it used to look like:

And what it looks like with my patches:

To install it simply run:

opkg install http://mikeasoft.com/~mike/openmoko/enca_1.9-r3_armv4t.ipk http://mikeasoft.com/~mike/openmoko/fbreader_0.8.2a-r7+elleopatches_om-gta02.ipk

For those interested the patch can also be downloaded from http://mikeasoft.com/~mike/openmoko/fbreader-openmoko.patch.

Bonus points for anyone who knows what book I’m testing it with in the screenshots (without googling) ;).


August 16, 2008

Jokosher running on the Neo FreeRunner
Mike @ 11:38 pm

Just for a bit of fun I thought I’d see how well Jokosher runs on the Neo FreeRunner mobile phone. It actually seems to be almost usable, I might see about finally looking at bug #228035 (making Jokosher more usable on small screen devices) to make it a bit easier to use.

Jokosher on the Neo FreeRunner

Once some of the other more important tasks are completed I might also go back and take a look at implementing the Jokosher remote that we’ve had planned for a few years.


August 10, 2008

Improved Crash Protection for Jokosher
Mike @ 12:23 am

I’ve just about finished rewriting the crash protection code for Jokosher. It now supports recovering multiple crashed projects at any time after the fact (instead of forcing you to choose immediately after a crash has occurred). It also checks that the crashed project hasn’t changed since the backup was saved and makes sure the user really wants to restore the project if this is the case.

Jokosher has recently moved to using bazaar instead of SVN, as such this feature has it’s own branch, we’ll still need to see if this branch gets merged before or after the 0.10 release.


May 25, 2008

Jokosher Crash Recovery
Mike @ 4:05 pm

I’ve just finished adding a new feature for the 0.10 release of Jokosher (scheduled for August). Jokosher can now recover a user’s project after a crash:

Jokosher recovering a project after crashing

It still needs some testing, but it seems to work acceptably well at the moment and doesn’t appear to cause any problems with editing while backups are being saved.

Also, thanks to the great work of Sebastian Dröge fixing bugs in the GStreamer audioconvert and deinterleave plugins, when I get home in a couple of weeks I’ll be able to finish the work we started over a year ago on getting support for multiple simultaneous inputs in to Jokosher.


September 18, 2007

New LUGRadio Forums Theme
Mike @ 11:20 am

Just in time for the new season of LUGRadio starting on Monday, I’ve created a new PHPBB3 compatible theme for the LUGRadio forums. The hard working trig should have it up on the official forums soon, until then you can have a peek at it on my development installation, although that might not be around for long.

And here’s a quick screenshot of it for posterity:

LUGRadio Forums


July 1, 2007

OpenMoko on a Treo 650
Mike @ 2:40 pm

Following on from yesterday’s post I now have have OpenMoko running on my Treo.

OpenMoko on a Treo 650

When I next have some time to spare I’ll have a go at hacking support for the Treo’s GSM chip into OpenMoko’s gsmd, then it’ll be possible to make phone calls through OpenMoko’s phone application :).


June 30, 2007

Im in ur Treo, Linuxin’ ur phonez…
Mike @ 7:42 pm

With much help from the chaps in #hackndev I managed to get Linux installed on my Treo 650:

Linux Treo 650

You can see a video of it booting and running a few applications here:

http://elleo.blip.tv/file/get/Elleo-LinuxOnATreo650996.ogg (Ogg Theora)

For anyone else wanting to do this, the steps are as follows:

  1. Download and unpack P3t3’s Treo image.
  2. Overwrite the zImage with my version. This is a more up-to-date kernel and has the initramfs built in to the kernel image (because of some buggyness in the MMC driver loading an initrd image from an SD card can be unreliable).
  3. Copy AngstromOPIE_t650-v01.ext2, linux.boot.cfg and zImage to the root of your SD card (make sure you unmount it cleanly after you’ve finished).
  4. Download P3t3’s Treo version of cocoboot and install it to your Treo.
  5. Run Cocoboot on your Treo, replace the line saying “init=/linuxrc” with “mem=32M”, then hit “Boot”.
  6. Enjoy the geeky goodness :).

For people asking about the 680, I don’t own one but you could try using the latest zImage and cocoboot version from: http://www.palmlinux.cz/p3t3/treo680/.

It’s still not amazingly fast, but adding the swap makes it just about usable (see update), and there’s still a lot of work needs doing before it can actually be used as a phone. I believe P3t3 has worked out how to switch the GSM chip in to AT mode (PalmOS uses some odd binary mode for talking to the chip), but I don’t think things have gone much further than that yet.

To get back in to PalmOS just hit the reset button. It shouldn’t touch any of your files in any way, but it might be a good idea to backup first just in case ;).

Update: The speed can be increased greatly by passing the parameter mem=32M in Cocoboot, for some reason without this the kernel only makes use of about 16MB of RAM.

Update 2: Fixed dead links, added links for Treo 680, removed swap info (not needed with the mem=32M parameter).


June 18, 2007

Jokosher Network Instruments – Contacts Integrated
Mike @ 2:50 pm

Now that I’ve got most of the libempathy and libempathy-gtk functions I need working as python bindings I’ve finally been able to get on with some fun hacking on Jokosher itself. A user’s contacts (managed by Telepathy’s Mission Control) are now offered as possible instruments which can be added to a project:

Add Network Instruments

Next I’ll see about fixing some problems with the python bindings so that the avatar pixbuf generation works correctly, rather than just assigning everyone with a generic avatar.


May 24, 2007

Every time a bug goes unreported in Jokosher…
Mike @ 7:19 am

Jono Bacon kills a kitten.

Which is to say, Jokosher 0.9 has now been released and we’d really love anyone with some spare time to have a go at testing it and report any bugs. We’d like 1.0 to be a really polished release which works correctly for just about everybody, and for that to happen we need as much testing done as possible. Bugs can be reported here: https://launchpad.net/jokosher/+filebug


May 7, 2007

Jokosher SoC
Mike @ 8:50 pm

I’ve begun work on my Summer of Code project for Jokosher. My task is to integrate VoIP facilities, making it possible for people to treat their contacts as if they were just another instrument. Hopefully making life simpler for podcasters interviewing guests, or for podcasts who’s presenters are all remote.

To start with I’ve been creating python bindings for libempathy and libempathy-gtk. The initial use of these libraries is for the accounts dialog, so that Jokosher can share the same accounts dialog (and actual accounts) as any other libempathy based applications. The bindings currently wrap approximately 75% of libempathy’s functions, which is far more than I need myself, but I’d like to try and make the bindings as complete as possible so that they can help other GNOME developers wanting to make use of VoIP functionality.

Here’s a quick screenshot of Jokosher displaying the libempathy-gtk accounts dialog. There’s still some bugs to work through, but things are starting to pick up momentum :).

Jokosher Network Instrument Accounts


« Previous PageNext Page »

Powered by WordPress