發表文章

目前顯示的是 十二月, 2008的文章

灰色耶誕節

圖片
台灣不下雪,總是沒有一片銀白色的雪景,也沒有對『聖誕』的感恩,但是大家卻仍然陶醉在這幻想之中的節日,每個人心中常夢想那雪飄和著歡樂的鈴聲,哪怕一切風寒刺骨,人們手心的溫度更暖暖沉沉,緊握著幸福的紅色鑰匙,期待打開綠葉下的繽紛禮物。殊不知,老天正在嘲笑,祂在這天換去了憂鬱的藍色,重新粉刷了灰白顏色,然而,天空偶爾飄下來的不是雪花,卻是扎人的雨針。

若不下雪,怎麼會有朦朧的浪漫和雪中耀眼的火光?又怎會有互相取暖的擁抱?若心中不下雪,沒有冰冷寒凍,又怎能感受到自身原始的溫度?又如何去得到耶誕節的恩賜,與人們活下去的熱情?

下的是針,千根萬根的雨針,人們用雙手擋著天上的刺矛,自顧不暇的分東離西,卻哪還有一起握住幸福的手掌?

諷刺,真是諷刺!灰色耶誕節讓一切現出了原形,原本的白色暖流去了哪裡?又是誰,心裡仍在下著雪?


回到現實,火鍋才能幫助人類取暖!吃得好飽!

PenMount 6000 Touchscreen Driver for kdrive/Xvesa

目前,無論是 Linux Kernel 內的 PenMount Touchscreen Module 或是 Xorg 下的 Driver,都無法支援新版的 PenMount 6000,在官方網站上也只有提供 Xorg 的 binary driver,而且並未開放原始碼。日前因某些案子需要在 kdrive 上驅動 PenMount 6000,就自行 Hack 並寫了一支粗糙的 Driver。由於在 kdrive 上的 touchscreen solution 都是藉由 tslib 來實作,所以這支 driver 是一個 tslib 的 plugin。

一個意外發現,kdrive 底下的 Xvesa 並未支援 tslib,所以就算在 configure 下 enable tslib,雖然相關的 function 會被編進去,但卻不會真正被註冊在 driver list 上。對此,也在這寫了一個小 patch 以解決這問題。

驅動程式原始碼和 Xvesa patch 可在這取得:

http://people.linux.org.tw/~fred/drivers/pm6000_tslib.tgz

將編好的 pm6000.so 放到 plugin 指定目錄後,然後再將 tslib config file 的 module_raw 設定成 pm6000,就可直接用下列方法使 Xvesa 驅動 PenMount 6000 Touchscreen:
Xvesa -mouse tslib,,device=/dev/input/eventX

觀察者與被觀察者

身為一個觀察者,可以無情的看著目標,總能用最理性的視野,注目著眼前的渺小微物。當局者迷,正好反過來描述了觀察者之不迷。被觀察者,卻總是用最直觀的方式面對當前的狀況,喜怒哀樂表於臉上,往往想不開也想不透。於是,藉由觀察自己能夠容易的體會到,觀察者與被觀察者微妙的差異,以及當局者無法輕易掌控的心理狀態,甚至是因此影響到身體上的『病痛』。

生氣時的情緒,影響了當時幾乎所有的思考,不過,很有趣的,縱使當時的想法和反應都不經大腦,還是會下意識的,避開許多自己不希望公開或不想牽扯的議題,甚至會以閃電般的速度為自己找尋到出路,以逃避提及某些話題。生氣時所影響到之心理深度或許並不大,但許多反應卻常出乎意料,心中一瞬間的念頭,都會經過下意識的過濾之後,脫口而出。因此,所謂的『激將法』,其實也不過只能讓人說『是、不是』與『要或不要』,對於要當事人全盤托出某件事,似乎沒有什麼幫助。

與生氣相反的開心,是一種麻醉藥,會讓人短暫忘掉一切不想記住的事,但開心也有分深淺,一般的嘻嘻哈哈,只是單純的麻醉藥,而有些愉悅,確是有可能成為一把雙面刀插在心裡,隨時有可能讓你對麻醉藥上癮,一但解開便痛苦萬分。

最有趣的一種情緒,是憂鬱的現象,除了壓抑自己會造成憂鬱之外,有時莫明的突發事件,如失戀、寵物死掉等,也會讓自己茫茫然,甚至是胸口鬱悶、呼吸困難,身體的許多無中生有的病痛不在話下。以觀察者角度乍看之下,明明是如此大不了的事情,卻完全想不透為什麼可以令人這麼的難受,當下,在觀察者與被觀察者之間,明明顯顯的存在著一條深溝。常聽有人想不開、自殘,都是在這莫明的心理壓力下發生。但在這狀態下,其實腦袋是格外的清醒,扣除掉那莫明的想不透之外,卻能夠很快的想明白其他複雜的事,當然有些時候也包括了幻想與妄想,大腦彷彿在為這壓力尋找解答,全速的運轉。之前曾有篇論文寫道,人在憂鬱的時候,會變成天才,實驗中甚至能夠快速解開非常困難的數學式。換句話說,有人在失敗中重新振作而取得日後的成功,或許也不是沒有道理,因為,人人都有機會可以變成 IQ 200 的天才。

不過,除非是重度憂鬱到成精神病之外,通常一段時間過去,憂鬱的情緒便會逐漸解開,不知不覺中,我們的腦袋已經將一切事情都宣洩掉。坳不過去而走上不歸路的人,卻也真是可惜,何不趁憂鬱時多讀點書,多想些絕世的困難問題呢?難得頭腦超頻呢!

所有情緒中,最無聊的就是哭,哭真的沒什麼道理,任何的…

改變 GtkWidget 的 parent

GTK程式通常是由一個個 Object 所堆積起來,所以 GtkWidget 和 container 都記錄著 parent/child (父/子)的關係。又因為一個 GtkWidget 不能同時擁有兩個 parent,通常,所有的父子關係都是在程式初始化時就被決定好。然而在某些情況,為節省功夫或記憶體,我們會想重覆利用一個 GtkWidget 或是某 container 之下整個體系的成員,而不是重覆描繪類似或一模一樣的介面內容。

遇上這種需求,GTK 提供了一個 function call 可去改變 Widget 的 parent:
void gtk_widget_reparent(GtkWidget *widget, GtkWidget *new_parent)

當然,重新被賦予 parent 的 Widget 會被當成最後一個 child widget,換句話說,若是在 Box 中,會被排列顯示在最後,這時我們可以用此 function 去調整其 widget 在 box 中的位置:
void gtk_box_reorder_child(GtkBox *box, GtkWidget *child, gint position)

後記

一個簡單的小技巧,在此筆記之。

Thinkpad T60's ethernet device doesn't work

If you have the Thinkpad T60 laptop, maybe you will have a problem - ethernet device doesn't work. With command "dmesg", we can get some error messages that is just like:
0000:02:00.0: The NVM Checksum Is Not Valid
ACPI: PCI interrupt for device 0000:02:00.0 disabled
e1000e: probe of 0000:02:00.0 failed with error -5
It means the contents of EEPROM on the ethernet device was broken, because the checksum is not valid. For all I know, so many Thinkpad T60 laptops has the problem cause e1000e or e1000 driver return the error message and the device doesn't work.

Here is a patch to add a parameter - "eeprom_bad_csum_allow" for the e1000e kernel driver:

e1000e-allow_eeprom_bad_checksums.patch

To enable the option will lead e1000e driver to ignore checking checksums of EEPROM. So you can use the command to load the e1000e driver be patched to enable your ethernet device:
sudo modprobe e1000e eeprom_bad_csum_allow=1
BTW, I think you might see the similar patch for e1000 dri…

Recent Status of LXDE

Actually, LXDE(Lightweight X11 Desktop Environment) project has rested for a long time. Though we're getting more and more people to join us since Linux World Expo 2008, LXDE have no much improvements since July this year. It's happened due to our main developers doesn't have time to write a new code, PCMan must took time to focuses on his physician jobs, Jserv has worked for a new project which is confidential. About me, I was burdened with my family, so I also need to focus on my current jobs and my school to earn more money.

Recently, we're planning to release a new version and new stuffs of some LXDE components for Merry Christmas. :D It is a great news that LXDE has a new project - "menu-cache", which is a library creating and utilizing caches to speed up the manipulation for freedesktop.org defined application menus, and also it can be used as a replacement of libgnome-menu of gnome-menus. It means the menu-cache will speed up our LXLauncher and LXPanel …

櫻桃起士蛋糕

圖片
話說上個星期周末,隨著 N 公司的員工旅遊團去花蓮旅行,雖然我並非他們的正職員工,但與他們相處融洽,能得到一同出遊之機會,感激不已。其中一個行程是來到了一個原住民部落,不過我忘了地名了 :(,他們帶我們去撿各式的石頭,然後給我們十分鐘在石頭上畫圖。

接來了幾支畫筆,挑了幾種顏色,就匆匆忙忙的開始作畫了。由於當天沒吃什麼東西,以致肚子太餓,不自覺的就畫了櫻桃起士蛋糕,並匆匆塗上背景,然後留在桌上閃人。(這麼重的石頭誰要扛回家呀!)

這次的旅行很愉快,對於幾乎沒去過花蓮的我,很新鮮。期待下一次的出遊活動。