View Single Post
Posts: 567 | Thanked: 2,965 times | Joined on Oct 2009
#1
Previously I posted this thread http://talk.maemo.org/showthread.php?t=91606 with a reverse-engineered copy of Fremantle PR 1.3 MCE. Thanks to some new reverse engineering skills/tools and some renewed interest in N900 work, I decided to go back and verify all the reverse engineering work I did for MCE to make sure it really IS a 1:1 clone. After a few all-nighters and a LOT of hard work (plus massive quantities of Coca-Cola , I found out it wasn't a 1:1 clone and came up with some fixes.

http://www.cncmods.net/files/mce/mce_1.8.126+0m5.tar.gz is the new source code, http://www.cncmods.net/files/mce/ mce_1.8.126+0m5_armel.deb is the new binary package (which I am running on my own phone as of 4:30am or so) You will also need http://www.cncmods.net/files/mce/mod...e-dbus-names.h and http://www.cncmods.net/files/mce/spl...n-dbus-names.h as those were fixed.

The fixes I made are:
1.Correct values for modechange_response_t in modechange-dbus-names.h
2.Correct values for splashscreen_t in splashscreen-dbus-names.h
3.Correct prototype of devlock_notify_remove in libdevlock.h
4.Fix calls to devlock_notify_remove in mce_devlock_exit (in devlock.c)
5.Fix a stray space in a log message in mce_mode_init (in modetransition.c)
6.Fix some issues in keypress_trigger (in tklock.c)
and 7.Fix an incorrect comparison in call_state_trigger (in tklock.c).

As of this release, all my analysis (and my binary diff tools) have convinced me that everything is a 1:1 functionally equivalent clone with the exception of keypress_trigger in tklock.c and set_tklock_state in tklock.c. Those 2 are still showing up as not being matches.

If you want an actual diff file, you could download the old code (from the link in the original thread I linked to above) and the new code and make one.

Anyone who wants to take these changes and put them into CSSU repos or wherever else, feel free. (some of these may be fixes that were already made by others since my initial reverse engineering work)
 

The Following 36 Users Say Thank You to jonwil For This Useful Post: