2012年12月28日 星期五

新版大象機

今日在開封街某藥局入手的電動吸鼻器 - 新版的大象機 
可以調整吸力...




2012年12月18日 星期二

i9103 刷機方式

1. 從聯強拿回維修後的手機,會是ICS 4.0.4,可以先用odin刷回原廠的2.3.6 (從I9103ZSKK5_I9103OZSKK5_BRI(2.3.6).zip解壓縮出.md5),然後再用odin刷進CWM,就可以使用CWM來更換kernel為ardatdat_9103_kernel_v1.8.3_1.32G(136-8-8).zip。

2. 如果之後想升級到ICS 4.0.4,可先使用odin刷回原廠的2.3.6,再使用kies作線上更新,但不知為什麼刷到ICS 4.0.4後,螢幕鎖定的功能是失效的。

3. 如果想刷第三方的ICS 4.0.4,可以使用CWM來安裝MaZel_II_ROM_0919.zip。

p.s.1 開機後按下home+音量下鍵即可進入odin (挖礦)模式,進入後,再插上USB cable與NB相連,即可在odin 1.8.5看到手機ID。

p.s.2 開機後按下home+音量上鍵即可進入CWM模式。


2012年12月3日 星期一

Override signal action/handler的使用方式 in Linux

Linux process支援signal的機制,可以使用Linux command - "kill"去對某個process發送signal,
你也可以去捕捉想捕捉的signal,然後去override default signal action/handler...

如果想捕捉下面兩個signals,可以override它們的signal action function
(SIGKILL與SIGSTOP不能如此捕捉)

SIGSEGV - Core Invalid memory reference
SIGTERM - Term Termination signal

取得目錄下的所有檔案 in LINUX (another approach)

#include <dirent.h>
    ...
    struct dirent **namelist;
    int filenumber;
    filenumber = scandir(".", &namelist, 0, alphasort);
    while(n--) {
            printf("%s\n", namelist[n]->d_name);
            free(namelist[n]);
        }
        free(namelist);
    }
...

2012年10月16日 星期二

Virtualbox的網路設定

1. 如果guest使用NAT方式,guest會使用host網路上網,但現在在公司內如果host使用有線網路,guest是無法利用host上網,假如host改用wifi連外網,即可讓guest透過host的wifi連出去。可利用此方式讓guest OS可以連上internet做些更新。

2. 如果guest使用橋接介面卡方式,則會讓guest模擬一張網卡,可透過host的網卡向DHCP server要到一組實體IP。

3. 如果單純只是要讓host可以與guest相連,如http server,則可使用僅限主機介面卡,這可讓guest產生一組192.168.56.101的虛擬IP,此時host即可使用這虛擬IP與guest相連接。

2012年10月1日 星期一

The notes to write Linux shell

1. Convert hex byte to decimal format
a=0x30
b=`printf %i $a`
echo $b

2. Convert ASCII code byte to the char.
a=0x61
b=`printf %i $a | awk '{printf("%c\n", $1)}'`
echo $b

3. Convert the char to ASCII code byte
a="abcde"
a_len=`expr length "$a"`

for (( i=1; i<=$a_len; i=i+1  ))
do
                index=$i
                each_char=`expr substr $a $i 1`
                each_char_ascii=`printf %s $each_char | od -A n -t x1 | tr -d ' '`
                echo "$each_char_ascii "


done

4.

2012年9月24日 星期一

201209 六天五夜之花東高雄行 (124p)



之前看了許多高手po的花東照片,讓我也好想親自去走走。
趁著案子即將告一段落,安排了一週來去花東高雄行。

第一天
蘇花公路->松園別館->慶修院->南濱公園夜市->落腳於吉安鄉的羊兒煙囪民宿

第二天
羊兒煙囪->遠雄海洋公園->落腳於七星潭的藍色玻璃海民宿

第三天
藍色玻璃海->光復糖廠->北回歸線地標->赤科山->池上飯包文化故事館->落腳於池上的換鵝山房民宿

第四天
池上鄉單車行(大波池, 洗衣亭與伯朗大道)->換鵝山房->鹿野高台->豐源國小->落腳於台東市區的訪星閣民宿

第五天
訪星閣->琵琶湖(台東森林公園)->台東鐵道藝術村->太麻里金針山->大武彩虹屋->落腳於85大樓綿羊海商務套房

第六天
85大樓綿羊海->駁二藝術特區->美麗島捷運站光之穹頂->眷村裡迷路(自助新村)->兒童美術館->真愛碼頭

1.南方澳觀景台


DSC07787

2012年2月28日 星期二

[開箱文]A77VQ+GF3

A33入手已經滿一年,快門數已經破萬,它是一台CP值很高的入門機。

這次升級A77的理由實在不充裕,若真的要說那就是氣溫比較高時,常使用A33的EVF會讓機身出現溫度計,繼而熱關機,就這點讓我比較在意。我也承認有一大半是因為想玩新機的心態在作祟,應該就是一般人說的器材控吧!

但真的是越來越喜歡從EVF觀景窗看出去的感覺,這是跟Live View的感覺不同的,透過EVF觀察人物,然後等待按下快門的時機,感覺就像是透過準心預測獵物動作,伺機打出子彈。無奈A33的EVF沒辦法讓我持續使用。而且使用EVF會比使用LV來得穩,能減少手震的機率。

在將A33+1855脫手後的隔天,收到SONY Store寄來的包裹,沒錯就是A77。















2012年2月2日 星期四

[開箱文]SONY SAL70300G(烏骨G)

看了好久總算入手俗稱烏骨G的SAL70300G,原本想放棄了,但看到$ONY鏡頭的漲價幅度,實在誇張到不行,索性就趁早入手,以免未來多花冤枉錢。

下面照片是手機拍的~~~傷眼請見諒...

就是這個G字樣啦 令人著迷



















2012年1月17日 星期二

[開箱文] Samsung i9103

看了一年多智慧型手機,總算在這次農曆年前下手,脫離智障型手機了,這次考慮了兩支手機:
1. Sony Ericsson arc S.
2. Samsung i9103.

經過效能與價錢的考量,最後選擇CPU Tegra 2雙核+1GB ram的i9103。

後面有貼著保固聯強的貼紙。




2012年1月5日 星期四

[Linux] Notices for AMI SPX code

1. Create SVN resp時,請用/home/svn/bin/svnadmin

2. Fedora 14必須將python版本降到2.6.5才能跑MDS 3.6.3,
目前Fedora14+Python 2.6.5+MDS 3.6.3+AST2150 packages and configs能
成功在Linux與Windows XP建立SPX project。

3. 使用自己的svn server管理sp-x:
a. check out source code of ast2150 package from AMI SVN server.
b. 建立自己的svn resp。
c. add and commit source code of ast2150 package to my own svn server.
d. configure .spxconfig and check out ast2150 package from my own svn
server via svnspx tool.

4. 如果想把BMC IP source從dhcp改為static,除了修改PMC file內的LAN config外,還得找出interface的檔案,將其修改為static。如果有enable IPV6,則還有另一份的interface需要做修改。

5. 當想要再SP-X內增加一個task,除了package property的section要設為lib與建立meta file外,還需要在oem task內增加下面的code statemnt,IPMI stack才能順利啟動所有task。
OS_THREAD_MUTEX_RELEASE(&pBMCInfo->ThreadSyncMutex);
由於oem task在IPMI conf內沒有section name,所以必須於IPMIConf.c的InitIPMIConfig()內去強制enable task,如此IPMI stack才能會去start up oem task。else if(!strcmp(pBMCInfo->g_DynamicInfoTable[count].SectionName, "SUPPORT_PCH_FLASH_UPDATE")){
//printf("Henbin debug SUPPORT_PCH_FLASH_UPDATE was found, enable PCH flash update task.\n");
pBMCInfo->g_DynamicInfoTable[count].Enabled = 1;
}

6. 若需為某driver module增加一個device file,則可於該driver module package的dev-install加入下列command:
      MAKE_CHAR_NODE pchflash 200 0

7. 若想要kernel自動load driver module又不想rebuild project,則可以把砍掉lib/modules/generic/modules.dep.bb,然後reset BMC,即可自動產生有該driver module的modules.dep.bb。

8. 計算SPI clock frequency:
HCLK = H-PLL Clock (gotten from SCU70 bit9:8) / divide_ratio (gotten from SCU70 bit11:10)
SPI_Clock = HCLK / t-CK (SPI clock frequency selection, from SMC04/FMC10)

9. 計算GPIO Debounce
Debounce time = PCLK cycle time * Debounce timer value
PCLK cycle time = 1/(H-PLL/X), x = bit23:25 of SCU08, H-PLL=bit8:9 of SCU70
=>PCLK = 384/8 = 48MHz, 1/48MHz = 20 x 10^-9 = 20ns.