顯示具有 Sharp ROM 標籤的文章。 顯示所有文章
顯示具有 Sharp ROM 標籤的文章。 顯示所有文章

2006年11月17日

[PDA] Zaurus Sharp Rom - 重整手記

還是回到 Sharp ROM,把手頭的 Zaurus 重整了一下,順手把過程記了下來:

  1. C860 Sharp ROM 1.10JP (Conics) + 1.40JP Update + v14i Special Kernel

    三者一氣呵成:1.10JP NAND Restore 後,不要進入系統;接著做兩次 Update 後,還是不要進入系統;然後將 NAND Backup 下來,就可以得到一份乾淨的 1.40JP ROM with v14i Special Kernel。

    重開機進入系統後,校正觸控版及設定時區及時間。

  2. 安裝 Tree!Explorer QT (treeexplorer_1.7.6_arm.ipk)。

    安裝後給予 root 權限,並執行一次,進 menu -> 表示 -> Language,把語系設定成 English。

  3. 安裝 Konsole (opie-embeddedkonsole_1.5.9-2_arm.ipk)。

    安裝後取消該軟體 VGA 畫面調整的選項。

  4. 安裝 ZEditor 英文版 (zeditor_3.5.4english_arm.ipk)。

    安裝後給予 root 權限。

  5. 安裝 CKeyboard (CKeyboard_1.05_all.ipk)。

  6. 安裝字型 arial, mingliu, efont, veramono (qpf 檔在 SD 卡,連結到 /home/QtPalmtop/lib/fonts)。

    原 /home/QtPalmtop/lib/fonts 中的 fixed, helvetica, lcfont 字型都刪除。

    其中 arial 字體較大,把 qpf 字形大小加 20;veramono 改名為 fixed 做為終端機字型,且因 veramono 字體較小,把 qpf 字形大小減 20 (留 fixed 100 及 120 兩個 qpf 就行)。

  7. 安裝中文化檔案 (easycht_1.0_all.ipk 用 winrar 解開,只留 qm 及 desktop 檔)。

    我是習慣留在 ja 語系,所以把中文化的 i18n qm 檔放到 ja 目錄下;把中文化 desktop 檔用 script 把 ja 替換成 bak、en 替換成 ja,再拿來換掉原來的 ja 語系 desktop 檔。(我的檔案替換方式是用 script 比對,有相同名字的檔案才替換)

    另外,我手頭上的中文化檔案不含 HancomSheet 及 HanconWord,所以把 i18n/ja 下的 hancomsheet-ja.qm 及 /home/QtPalmtop/bin/ 下的 word-eucJP.rc 刪除,讓這兩者恢復成 en 語系。

    到此可以重新開機一次,檢查中文化是否正常。

  8. 安裝一些常用的 console 工具:libncurses (libncurses_5.0_arm.ipk), mc (mc-german_0.3_arm.ipk), joe (joe_2.9.8pre1_arm.ipk), sudo (sudo_0.1_arm.ipk), rsync (rsync_2.4.6-2_arm.ipk)。

  9. 安裝一些 applet:Battery Applet (qtopia-commbbatteryapplet_1.0.6_arm.ipk), Clipboard Applet (clipboard-applet_1.0.0-1_arm.ipk), Memory Applet (qtopia-memoryapplet_1.0.1_arm.ipk), Sub Applet (subapplet-zaurus_1.0.8_arm.ipk), Suspend Applet (qpe-suspendapplet_1.5.0-3_arm.ipk), Task List Applet (tasklist-applet_1.0.5_arm.ipk)。

    Battery Applet 用來調整背光亮度及超降頻用;Clipboard Applet 用來取代 Copy/Cut/Paste 快速鍵;Memory Applet 用來設定 swap 及監控 memory 的使用量;Sub Applet 用來收納這些 applet,減少佔用 task bar 的空間;Suspend Applet 用來暫停 zaurus 的 suspend 功能;Task List Applet 用來快速切換已經開啟的程式,特別是那些已經預載的程式。

  10. 安裝一些常用的程式: PortaBase (portabase_1.9_arm.ipk), NeoCal (neocal_1.7.7-2_arm.ipk), Search (qpesearch_0.0.3a_arm.ipk), Alarm Clock (qpealarmclock_1.0.9_arm.ipk), FreeNoteQt (FreeNote_1.12.0_arm.ipk), PhotoStorage (photostorage_1.0.2_arm.ipk), aBookReader (aBookReader_0.9.1_arm.ipk), JustReader (justreader_2.0k_arm.ipk)。

    安裝後取消 PortaBase 及 Search 的 VGA 畫面調整選項。

  11. 安裝 mplayerkino: mplayer (mplayer-bvdd_1.1.5-1_arm.ipk), kino2 (kino2_0.4.3c_arm.ipk)。

  12. 安裝 ZBedic (sqlite3_3.2.2_arm.ipk, zbedic_1.1-0_arm.ipk) 及英英 (en-0.9.0.dic.dz)、英漢 (enzh-0.9.0.dic.dz)、漢英 (zhen-0.9.0.dic.dz) 字典。

    新版的 ZBebdic 須要 SQLite 程式庫。

    另外字典檔可以放在 SD 卡上,再進 ZBedic,把字典檔加進來。

  13. 安裝 PDF2 及所須的程式庫 (libfreetype2_2.1.4-1_arm.ipk, qpdf2_2.0.3-ft-t1_arm.ipk, qpdf-cj_20030222_all.ipk)。

    安裝後取消 PDF2 的 VGA 畫面調整選項。

  14. 安裝 FBReader 及所須的程式庫 (expat_1.95.8_arm.ipk, libenca_1.9_arm.ipk, libbz2_1.0.2_arm.ipk, FBReader_0.7.4m_640x480_arm.ipk)。

  15. 安裝 ruby (ruby_1.8.0-1_arm.ipk, ruby-qte_0.5.2_arm.ipk) 及 EBt memo tool (ebt-en_0.4.0-1_arm.ipk)。

    安裝後進 EBt,把目錄移至 SD 卡,把 /home/zaurus/ebt 目錄砍掉。(因為我的資料都在 SD 上)

  16. 安裝 ntpdate (ntpdate_ntp-4.1.1b-z-4_arm.ipk) 及 Donto Koi Time (dtktime_1.1.0_arm.ipk)。

    安裝後給予 root 權限,執行後到設定頁加入國內的網路對時主機:time.stdtime.gov.tw,clock.stdtime.gov.tw,tick.stdtime.gov.tw,tock.stdtime.gov.tw,watch.stdtime.gov.tw。

    設定網路連線,連上網路後進行網路對時。

  17. 安裝 samba 相關軟體:smbpasswd_0.1-1_arm.ipk,sambacontroller_0.1-0_arm.ipk,smbmount_0.1_arm.ipk,smbmounter_0.1-2_arm.ipk,codepage.950,unicode_map.950。(參考 [PDA] Zaurus C760 新手筆記 (9) - 連上網路芳鄰)

    安裝後把 SambaController 及 SmbMounter 給予 root 權限。把 codepage.950 及 unicode_map.950 放到 /home/root/usr/lib/samba/codepage/ 下。

    把以往備份的 smb.conf 及 smbusers 放到 /home/root/usr/lib/samba/ 下。

    下指令 sudo smbpasswd -a zaurus 及 sudo smbpasswd -a root 來設定網芳密碼。

  18. 安裝 kismet (kismet_3.0.1_arm.ipk, kismet-qt_2.0.0_arm.ipk)。

    安裝後將 kismet-qt 給予 root 權限,並取消 VGA 畫面調整選項。

    到 /home/root/usr/local/etc/,調整 kismet.conf 中的 logtemplate 及 source 兩項。

  19. 安裝 Opera 7.55 (multimodal_arm.ipk)。

    安裝後下指令 ln -s /home/QtPalmtop/opera /home/root/usr/share/opera。

  20. 安裝 bluez 相關軟體:bluez-zaurus_2.3-2.4.18d_arm.ipk,bluez-csr-serial_0.1_arm.ipk,qtopia-bluetoothnetworkapplet_1.0.1_arm.ipk,qtopia-pannetworkapplet_1.0.1_arm.ipk,susp-resume_0.9-3.1.ipk,susp-resume-bluez_0.9.1_arm.ipk。

    到 /etc/bluetooth/uart 加入相應自己 CF 藍牙卡的型號,同目錄下的 pin 及 givepin 也改成自己慣用的 pin 碼。

    到網路設定處新增 PAN-TCP/IP 連線。

    到 /etc/apm.d/bluetooth,在 cardctl eject 前加入 cardctl reset。(我的 CF 卡要加入這一行才能在 suspend 後重新 resume)

  21. 到通訊錄、行事曆、記事本、待辦事項中都新增一筆紀錄,然後執行同步功能,把 PIM 資料同步回 Zaurus 中。




閱讀全文 ...

2005年4月10日

[PDA] Zaurus C760 新手筆記 (37) - 超頻

上次在換裝 special kernel 後,就有考慮安裝超頻程式,不過只是想著,一直沒動手安裝測試。今日沒什麼事可以幹,動手試了一下:

  1. 先要換裝 special kernel

  2. 安裝 qclockchangeqfreqchenge applet

    qclockchange 安裝完後是在 "設定" 頁中,qfreqchenge applet 則在右下角的圖示區中。

  3. 執行 qclockchange。基本上就是隨意調整 L/M/N 三個數字,然後點按 "Write CCCR" 後,系統就會超/降頻。基本上可以超頻到多快,是看運氣的。

    另外,如果某模式可以正常執行,請把 L 旁的數字記下來。(就是 161/241/141/... 等的數字)

  4. 編輯 qfreqchenge applet 的設定檔 /home/zaurus/Setting/freqchange.conf,內容大概是:
    quick,1E1
    normal,161
    slow,141
    每一行表示一種模式,逗號前是名稱,其後是模式。在更改過設定檔後,如果要設定馬上生效,可以下指令:
    qcop QPE/TaskBar "reloadApplets()"
不過我的機器好像不太能超頻。


閱讀全文 ...

2005年3月22日

[PDA] Zaurus C760 新手筆記 (36) - Python 2.4 套件

之前所提,Python for arm-linux 計劃暫停 python 2.3.4 的下載,準備放出 python 2.4 版。今天再去他們的網頁看時,發現已於前天放出 Python 2.4 的新套件。

與之前 Riverbank 放出的版本相較,整個套件拆得十分細緻,還沒搞懂我到底要裝那些部份,不過大概是與 PyQt 有關的部份都須要:python-corepython-pyqtpython-sip


閱讀全文 ...

2005年3月16日

[PDA] Zaurus C760 新手筆記 (35) - UTF-8 and BOM

使用 Zaurus 的人大都知道,系統預設的編碼是 UTF-8。不過,Windows 上的 UTF-8 與 Zaurus 上的 UTF-8 雖然大致相同,但卻有小異。

可以參看 UTF-8 and Unicode FAQ for Unix/Linux 一文中的這一小節 What different encodings are there?,其中有一段:
In order to allow the automatic detection of the byte order, it has become customary on some platforms (notably Win32) to start every Unicode file with the character U+FEFF (ZERO WIDTH NO-BREAK SPACE), also known as the Byte-Order Mark (BOM). Its byte-swapped equivalent U+FFFE is not a valid Unicode character, therefore it helps to unambiguously distinguish the Bigendian and Littleendian variants of UTF-16 and UTF-32.
先說明一下什麼是 Byte-Order:在一些平台上,是把代表數值較大的 byte 放在前面,這稱為 Big Endian (BE) 的系統;有些平台則相反,是把代表數值較小的 byte 放在前面,稱為 Little Endian (LE) 的系統。像 Zaurus 是屬於 BE 的系統,而 wintel 架構則屬 LE。若同以 "中" 這個字來看,它的 Unicode 是 U+4E2D,故在 BE 上是以 0x4E 0x2D 來表示,而在 LE 上則以 0x2D 0x4E 來表示。

在某些平台上 (特別是 Win32 系統),文檔習慣以 U+FEFF 這個字元 (慣稱為 BOM: Byte-Order Mark) 開頭,來辦識該文檔是採 BE 或 LE 的方式編碼。若採 LE 方式編碼,BOM 會表示為 0xFF 0xFE,而在 Unicode 的定義中不存在 U+FFFE 這個字元,所以若前兩個 byte 為 0xFF 0xFE,則一定是 LE 編碼的文檔;反之,若採 BE 方式編碼,BOM 會表示為 0xFE 0xFF,而 U+FEFF 是在 Unicode 中的有效字元,故為 BE 編碼的文檔。又因為 U+FEFF 字元,在 Unicode 中代表的是一個不佔空間的 space 符號,所以即使沒被解釋為 BOM,也不會對閱覽者產生錯誤的訊息。

換句話說,若某文檔僅有一個 "中" 字。則採 BE 系統,且用了 BOM 字元時,該檔 Unicode 編碼的 binary 內容為:
0xFE 0xFF 0x4E 0x2D
採 LE 系統,且用了 BOM 字元時,該檔 Unicode 編碼的 binary 內容為 (wintel 架構下的典型情況):
0xFF 0xFE 0x2D 0x4E
但是在 Zaurus 上,習慣上並不用 BOM 字元,而是單純認定文檔採 BE 系統,所以該檔 Unicode 編碼的 binary 內容為:
0x4E 0x2D

但是,我們要談的是 UTF-8 編碼,它並不等同於 Unicode。若僅考慮 Unicode 從 U+0000 到 U+FFFF 的範圍,它是以下列的規則轉為 UTF-8 編碼:
U+0000 - U+007F:0xxxxxxx
U+0080 - U+07FF:110xxxxx 10xxxxxx
U+0800 - U+FFFF:1110xxxx 10xxxxxx 10xxxxxx
一樣以 "中" U+4E2D 為例,因為 0x4E 0x2D = 01001110 00101101,所以它的 UTF-8 編碼為
11100100 10111000 10101101 = 0xE4 0xB8 0xAD
同理可得 BOM 字元的 UTF-8 編碼為 0xEF 0xBB 0xBF。又,因為每個字元不見得剛好是 2 個 byte,所以不管是以 LE 或是 BE 為主的系統上,UTF-8 文檔大都採 BE 方式編碼。

換句話說,若某文檔僅有一個 "中" 字。當用了 BOM 字元時,該檔 UTF-8 編碼的 binary 內容為 (wintel 架構下的典型情況):
0xEF 0xBB 0xBF 0xE4 0xB8 0xAD
而在 Zaurus 上,因為不用 BOM 字元,所以該檔 UTF-8 編碼的 binary 內容為:
0xE4 0xB8 0xAD

前面所提看來頗為無用,但是在某些情況下,直接從 wintel 平台轉出的 UTF-8 文檔,會無法在 Zaurus 下使用

因 為 Unix 系統有所謂的 magic word,即是以檔案的前兩個 byte 來辨識該檔的性質。最簡單的例子就是 bash/perl/python 等 script 檔,開頭必定是 "#!"。若在 wintel 平台下轉出 UTF-8 文檔,則前兩個 byte 被 BOM 字元佔用,會導致 shell 無法判讀。

那該怎麼做比較能確保檔案不會被誤轉呢?我沒什麼好方法,不過只要是從 PC 上轉出的檔案,我必定先在 Zaurus 平台上以編輯器 (我是用 ZEditor) 重新開啟並儲存一次,以確保 BOM 字元不會在檔頭出現。

另外,雖然 Ultraedit 能夠讀懂 UTF-8 格式的文檔,而且在 menu 上也有把文檔轉為 UTF-8 的功能選項,但它實際上永遠是把 UTF-8 儲存成 Unicode 格式 (我在 Ultraedit v11 上測試多次,不管怎麼選擇,如何轉換,它實際上還是把檔案存成 Unicode 格式)。有興趣者可以下載安裝 WinHex, 直接看 ultraedit 輸出的 UTF-8 文檔,並與 Windows XP 的記事本軟體 (選擇另存新檔,即可選擇檔案格式) 輸出的 UTF-8 文檔比較。不過,因為 ZEditor 也可讀懂 Unicode 文檔,且在 Zaurus 上本來就要重新儲存一次,所以影響也不大。
註 1:Windows XP 的記事本,處理 Unicode 及 UTF-8 比 Ultraedit 更精準。例如,Big Endian 的 Unicode 文檔,Ultraedit 會無法辨識,但記事本卻能正確解讀。不過,記事本只認 DOS 的換行模式。
註 2:ZEditor (我用的是日文版) 會自行根據文本轉換內碼系統,在字少的狀況下容易誤判成 Shift JIS 編碼。例如,全文只有一個 "中" 字時。



閱讀全文 ...

2005年3月10日

[PDA] Zaurus C760 新手筆記 (34) - Trolltech 中文網頁

Trolltech 的網頁現在也有中文版了。雖然是簡體中文版,不過聊勝於無。

(Trolltech 是 Qtopia 的供應商,而 Zaurus 是建立於 Qtopia + Linux 之上)
 

閱讀全文 ...

2005年3月7日

[PDA] Zaurus C760 新手筆記 (33) - 用 opera 收發 gmail

剛剛在 OESF 看到,已經可以用 opera/netfront 來收發 Gmail 上的信件。自己也用 opera 試了一下,中文郵件的收發沒什麼問題,附件夾檔也正常運作。

底下是 Gmail 的說明:
If you sign in to Gmail using a browser that isn't fully supported, you'll automatically be directed to a basic HTML view of our service. To make sure that you can always access your mail, we've developed this basic HTML view that is compatible with almost any browser.

Since your browser isn't fully supported, you might notice that some of your favorite features aren't available in the current view, including the following:
  • Filter creation
  • Settings
  • Spell checker
  • Keyboard shortcuts
  • Address auto-complete
For access to all of Gmail's features, sign in to your account from a fully supported browser, and make sure you have cookies and JavaScript enabled.


閱讀全文 ...

2005年3月4日

[PDA] Zaurus C760 新手筆記 (32) - python

最近因為工作須要,準備開始學寫一些簡單的 python 程式。除了在慣用的平台 Windows 及 Debian 上安裝外,當然也不會忘掉 Zaurus。不過小繞了個圈子,才找到 Zaurus 下的解譯器。

  • 大部份找到的鏈結都是指向:Riverbank

    不過上面卻標明:"We no longer support our port of Python to the Sharp Zaurus. An alternative port can be found at the Python for arm-linux site."。

    如果到 Riverbank 的 download 頁,還是有 ipk 檔的下載鏈結 python_2.3.3-1.0_arm.ipk。不過實際上點下去後,回應是 "Error 404: Not Found"。

  • 如果依 Riverbank 的建議,到 Python for arm-linux 看看。沒錯,版本比較新,是 2.3.4。

    不過真的要下載時,上面卻說:"Package feed temporarily out of order because of reconstruction. Stay tuned for Python 2.4"。

  • 於是開始請出 Google 大神,第十九筆 (於發這篇文的時候) 的搜尋結果:http://zaurus.spy.org 下,有一個鏈結指向 Fred's Z corner : spare parts for the Sharp Zaurus。Bingo!終於找到了,是 Riverbank 在結束支援前,最後放出的版本。

底下是幾篇中文的 python 文件:


閱讀全文 ...

2005年2月16日

[PDA] Zaurus C760 新手筆記 (31) - photostorage

Sharp 推出新的圖片瀏覽程式 - photostorage,不過只能用在 C3000 上。(消息來源)

不過我的偽 SL-C860,在小小的 patch 過原來的 ipk 檔後,也可以正常使用了。

其實只要把 ipk 檔用 tar zxvf 的方式解開後,再把其中的 preinst 及 photostorage 兩個檔的 SL-C3000 及 SL-C3100 兩個字串改成 SL-C760 及 SL-C860,最後再用 tar zcvf 重組回去,就可以在 CX60 上安裝及執行了。


閱讀全文 ...

2005年2月11日

[PDA] Zaurus C760 新手筆記 (30) - running a script ...

script 愈積愈多,每次都要開 terminal 來執行有點麻煩;如果不開 terminal,建一個獨立的 icon 也很麻煩。

後來在 Script To Launch Console Apps 看到一個簡單的方法:
  1. 先確定 /home/QtPalmtop/etc/mime.types 當中有下列這行:(我的機器上原即有此項)
    application/x-sh sh
  2. 在慣用的 terminal 程式的 desktop 檔 (依該程式所在 tab 而定,應該在 /home/QtPalmtop/apps/ 的下一層目錄中) 加入下列兩行:
    MimeType = application/x-sh
    MimeTypeIcons = konsole/Terminal <= 圖示檔名,可以自己選擇想要的
  3. 重開機後,就可以直接在 "檔案" 的 tab 下,瀏覽檔案目錄時,點選 .sh 後,啟動 terminal 程式而執行。

不過對於要 root 權限的 script,此法行不通。


閱讀全文 ...

[PDA] Zaurus C760 新手筆記 (29) - ZSI 搬家了

這應該是算舊聞,不過我到前幾天才發現。

ZSI: Zaurus Software Index,全新改版,而且搬家後變身成 ELSI: Embedded Linux Software Index

ZUG 也把網域從 .com 換成 .org。

詳情請看 http://www.oesf.org/forums/index.php?showtopic=10058


閱讀全文 ...

2005年2月3日

[PDA] Zaurus C760 新手筆記 (28) - zaif

裝上了 zaif,準備用來替代在 Palm 上的 PMT xl。

不過已經習慣 PMT xl 的記帳方式,把帳戶區分為 "Asset/Liability/Income/Expense",而 zaif 的作法比較像是單純地計流水帳。所以想了個變通的方法,讓在 zaif 上計帳,也能適當地區分出資金的流動。
  • 把在 PMT 上的 Asset account,都轉登錄在 zaif 上的 account。但在帳戶名前面加上個 "+",來標示這是個 asset

  • 把在 PMT 上的 Liability account,都轉登錄在 zaif 上的 account。但在帳戶名前面加上個 "-",來標示這是個 liability。另外在 zaif 上標註這些 account 為 "credit"。

  • 把在 PMT 上的 Income account,都轉登錄在 zaif 上的 account。但在帳戶名前面加上個 ">",來標示這是個 income

  • 把在 PMT 上的 Expense account,都轉登錄在 zaif 上的 categoryroot 項。但在帳戶名前面加上個 "<",來標示這是個 expense。另外把 PMT xl 上的 description,都依類別登錄到 zaif 的 category 的 child 項。

  • 在 zaif 上也額外地建一個 Equity 的 account,依 PMT xl 上各帳戶的最終金額及 asset/liability 不同,在 zaif 上把資金從 Equity 轉入或轉出至 asset/liability。

  • 當帳戶間有資金流動時,就利用 zaif 的 move 功能。這與 PMT xl 上的作法是一樣的。

  • 當有花費時,就用 zaif 的標準作法。這與 PMT xl 上的用法也類似。

  • 當 有收入時,用 income 的帳戶來記錄;並額外多個動作,把資金由 income 的帳戶轉至 asset 的帳戶。(為何要這樣呢?因為如果把收入直接轉入 asset,那除了用 memo 欄位來記錄收入來源外,別無它法。可是 memo 只能用輸入的,無法點選,所以分兩段記錄,這樣就可以單用單選的方式,仍能分辨出收入的來源。)

  • 要查看統計的結果,就用 zaif 的 summary 功能。大致上 PMT xl 所能提供的統計結果,都可以在其中找到。
差不多就是這樣。用了幾天,大概各種狀況都能適用。不過,zaif 的清單功能不夠完全,只能單純地以流水帳的方式來查看。


閱讀全文 ...

[PDA] Zaurus C760 新手筆記 (27) - special kernel

PIL 上看到的。Zaurus 可以更新 kernel,也跑去下載換裝了。整個過程其實就與之前升級 Sharp 原廠更新檔的做法一樣。不過有幾點小小的不同:
  1. sharp 的更新檔有四個:

    • initrd.bin: 這是 root file system。
    • zImage.bin: 這是 kernel。
    • updater.sh: 升級程式,會把 initrd.bin 及 zImage.bin 寫入 ROM 中。
    • mversion.bin: 大概是版本描述之類的。

    至於這次換裝 special kernel 的作法,也是可以有四個檔 (實際只有三個):

    • initrd.bin: 相當於 sharp 的同名檔案。(這次換裝不含這個檔)
    • zImage: 相當於 sharp 的 zImage.bin。(一個沒有附檔名,一個有)
    • updater.sh: 相當於 sharp 的同名檔案。
    • consolescroll: 大概是螢幕的驅動程式之類的。(猜的)

  2. sharp 原廠的更新程式,會在升級後自動進行重開機的程序;但這次的不會,要自行進行 reset。

還沒發現換裝 special kernel 後的明顯不同 (除了開機過程變酷了,一看就知道是 Linux)。可能要再試試。


閱讀全文 ...

[PDA] Zaurus C760 新手筆記 (26) - 批次轉影音檔給 Zaurus

之前在 [PDA] Zaurus C760 新手筆記 (22) - kino2 + rmvb,提到轉 rmvb 檔給 Zaurus 看的作法。可是一個個轉太累了。後來在 Microsoft 的網站看到有批次轉檔的方式,所以把當中的 wmcmd.vbs 叫出來看,其中有一個 loadprofile 的參數,可以把設定載入。實驗了一下,我目前是用下列的方式轉檔:

  1. 先隨便找一個影音檔,依之前的作法,設定想要的各項參數。

  2. 在做完 "Custom Encoding Settings" 的畫面時,有一個 "Export" 的按鍵,按下後可以把設定存下來,假設檔案就在預設的位置,檔名是 "zaurus.prx"。

  3. 把下面的檔案存成批次檔:
    set WME="C:\Program Files\Windows Media Components\Encoder"

    :start

    if %1 == "" goto end

    cscript.exe %WME%\WMCmd.vbs -input %1 -output %1.wmv -loadprofile %WME%\Profiles\zaurus.prx
    shift

    goto start

    :end
    其中的 WME 變數,要依實際 Windows Meida Encoder 的安裝路徑而定。

  4. 把影音檔 (可以一次抓很多個,抓目錄也可以) 直接抓到批次檔的圖示上,就會開始自動轉檔了。轉出來的檔案會在原來的位置上。

  5. 如果進去看 wmcmd.vbs 檔,找到第 3399 行。其中列了很多的副檔名,如果直接抓取目錄時,wmcmd 只會篩選符合的檔案進來轉檔,所以可以在該行最後加上 ", rmvb",這樣當抓取整個目錄給批次檔時,才不會漏掉 rmvb 檔。


閱讀全文 ...

2005年2月1日

[PDA] Zaurus C760 新手筆記 (25) - "qinstall" 與 "ipkg install"

今天在 MPlayer for Zaurus 看到一段話:
ipkのpostinstにこの操作を書いているんですが、Qtopiaからインストールしても実行されていないようです。ipkg install ...でインストールすると正しく実行されます。
我當然是看不懂日文。不過在 Babel Fish 的協助下,把上面這段話翻成英文:
This operation is written on postinst of ipk, it is, but installing from Qtopia, being executed, it seems that is not. Ipkg install.. When so it installs, it is executed just.
大概是說有 "postinst" 功能的 ipk 檔,不能用 "ipkg install" 的方式安裝,一定要用 qtopia 的 "qinstall" (就是 "新增/移除 程式"),postinst 才會發生作用。

難怪之前我在安裝 KDE Pim 時,用 "ipkg install" 的方式,KDE Pim 總是不正常。


閱讀全文 ...

[PDA] Zaurus C760 新手筆記 (24) - kismet

底下是 Zaurus Software Index 對 kismet 的簡介:
Kismet is a 802.11b wireless network sniffer.
簡單說就是偷聽無線網路或掃描 AP 的軟體。我用的是 Asus WL-110 無線網卡,幾乎無須任何設定就可正常使用。

文字界面的 kismet:


GUI 界面的 kismet-qt:


不過這軟體在啟動的順序上有點討厭,所以寫了個 script 來簡化流程。

底下 script 的流程主要是依 PIL 上 Dabinn 的發言內容 而來:
  • 先安裝 kismet。也可選擇性地安裝 kismet-qt

  • 把下面這段 script 轉成 UTF-8/UNIX 格式的文字檔 (假設檔名為 kismet.sh),放到 Zaurus 上,並且給與執行的權限。
    #!/bin/bash

    # 指定 kismet 所監聽的 interface,正常來說應該都是 eth0。
    IFACE="eth0"

    # 指定啟動無線網卡的設定,可以查閱 /etc/pcmcia/network.opts,
    # 比對該檔的 INFO 及其前一行,可以找到相對應的 scheme name。
    # 系統預設的 "指定なし" 連線服務設定為 qpewlan0。
    WLAN="qpewlan0"

    # 在沒有可連接的 AP 時,timeout 的時間。單位;秒。
    DELAY=5

    function start_iface {

      # 先確定有無預先已啟動的 $IFACE。若有,則直接使用。
      IFACE_LINE="`ifconfig | grep -e "$IFACE"`"
      
      if [ "$IFACE_LINE!" == "!" ]; then
      
        # 若沒有預先啟動的 $IFACE,則啟動之。
        cardctl scheme CardResume
        cardctl scheme "$WLAN" &
        WLANPID=$!
        
        # 啟動 $IFACE 後,等待 $DELAY 秒。
        sleep $DELAY
        
        # 若能正確連上 AP,則後續無須再強制啟動 $IFACE。
        ps -p $WLANPID > /dev/null
        if [ $? -eq 0 ]; then
        
          # 無法連上 AP,清除等待中的程序。(光殺掉 cardctl 沒用)
          # 下面這一行有點暴力。
          killall cardctl wlan-ng network dhcpcd
          
          # 強制啟動 $IFACE。
          /etc/pcmcia/wlan-ng start "$IFACE"
        fi    
      fi
    }

    function end_iface {

      IFACE_LINE="`ifconfig | grep -e "$IFACE"`"
      
      if [ "$IFACE_LINE!" != "!" ]; then
        # 如果 $IFACE 還活著,砍掉它。
        cardctl scheme default
      fi  
    }

    # 啟動 $IFACE。
    start_iface

    # 如果使用文字界面的 kismet,保留下面三行。
    kismet_monitor
    kismet
    kismet_unmonitor

    # 如果使用 GUI 界面的 kismet,保留下面一行。
    #kismet_qt

    # 關閉 $IFACE。
    end_iface
  • 執行 kismet:
    sudo kismet.sh
    原則上如果無線網卡符合 kismet 預設的 source 設定值,那這樣就可以開始監測了。

  • 如果不行,就要回頭改 kismet 的設定。設定主要是在 /usr/etc/kismet.conf 檔。找到 source=prism2_legacy,eth0,kismet 這一行,把 prism2_legacy 改成其它的試試看 (可以看 kismet.conf 檔,裏面有說明)。

  • 另外,因 kismet 的 log 檔又多又大,所以可以把 log 檔改移到記憶卡上。一樣是在 kismet.conf 檔上,把 logtemplate=%n-%d-%i.%l,改成 logtemplate=/mnt/card/or/anywhere/%n-%d-%i.%l。


閱讀全文 ...

2005年1月31日

[PDA] Zaurus C760 新手筆記 (23) - PortaBase 及 SplashID

連續找了幾個保密資料管理的軟體,準備用來替換 PALM 上的 SplashID:
  • PwM/Pi: 不支援中文,沒有 PC 端的程式。而且除了用匯入的方法外,我竟然找不到新增分類的方法?
  • ZSafe: 只用了 PC 端來測試,不支援中文。
  • Passkeyper: 還在 alpha 階段。
  • keyring: 找不到可以下載的點?
  • SafeDee: 看起來很像 SplashID,可惜是要花錢的 commercial software,列入後補。
所以想說乾脆把資料建進資料庫。最早是想試 mysql,可是只有找到 tkcRekall 可以做為前端管理的 GUI 界面,因為 tkcRekall 也是商業軟體,同樣列入後補 (十分心動,有點想買)。最後選了 PortaBase,有 Windows/Debian 用的 PC 端程式,支援中文,也支援加密。



整個從 SpalshID 轉換到 PortaBase 的流程也很容易:
  • 先到 PortaBaseSourceForge 網頁下載程式。

    • PC 端的直接安裝即可。

    • Zaurus 端的程式在安裝後,會依系統的 locale 設定,決定語系。但因我的系統是跑 "ja" 語系,所以要把 "/home/QtPalmtop/i18n/zh_TW" 下的 "portabase.qm" 複製到 "/home/QtPalmtop/i18n/ja",替換原 ja 語系的 i18n 檔。

  • 把 PALM 上的資料經由 HotSync 同步進 PC 端。

  • 用 PC 端的 SplashID Desktop,選 "Menu->File->Export->CVS->Export All Records",把所有資料轉成 CSV 檔 (假設名為 "SplashID.csv")。

  • 用 UltraEdit 開 "SplashID.csv" 檔。因 Memo 中的換行字元會被 SplashID Desktop 轉成 "0x0B" 輸出,所以進 UltraeEdit 的 Hex 編輯模式,把 "0B" 轉成 "0D 0A"。最後再把該檔轉成 UTF-8/Unix 的格式。

  • 進 PC 端的 PortaBase,新建一個有加密的資料庫。用 "檔案->集合編輯",新建兩個集合:

    1. Type: 集合項目就是 SplashID 上的 types。
    2. Category: 集合的項目就是 SplashID 上的分類。

    再用 "檔案->編輯欄位" 建立九個欄位:

    1. Type: 型別為 "Type"
    2. Field1: 型別為 "字串"
    3. Field2: 型別為 "字串"
    4. Field3: 型別為 "字串"
    5. Field4: 型別為 "字串"
    6. Field5: 型別為 "字串"
    7. Field6: 型別為 "字串"
    8. Memo: 型別為 "多行文字項"
    9. Category: 型別為 "Category"

    最後再用 "檔案->匯入",把剛剛的 SplashID.csv 轉入 PortaBase 中。

  • 把剛建好的 PortaBase 檔傳到 Zaurus 上,就可以看看是否正常運作了。

PortaBase 的中文手冊:PortaBase 1.9


閱讀全文 ...

2005年1月28日

[PDA] Zaurus C760 新手筆記 (22) - kino2 + rmvb

kino2 我用的是 TWZUG 重新打包過的 kino2 0.3 (應該是要會員才能下載),好處是省得還要抽 kino2 0.2 的 mplayer 出來。kino2 原本就支援相當多的編碼格式,可惜是不支援 rmvb。所以找了一下轉 rmvb 格式的方法 (google 大神:kino2 + rmvb,唯一的那個就是了)。


(全螢幕撥放時的畫面)

整個流程是從Palm User Message Board 看來的:
  1. 先要下載:

    • Windows Media Encoder: 用來轉 wmv 檔用 (原本不支援 rmvb 編碼的檔案)。下載後就把它安裝起來。

    • RealMedia Splitter: 讓 Window Media Encoder 支援 rmvb 編碼的檔案。下載後把它解開就好。

  2. 啟動 Window Media Encoder 的 MP3 encoder 功能:

    執行下列的 reg 檔 (或是開 regedit 後,自己改)
    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\Windows Media\WMSDK\AudioEncode]
    "85"=""
  3. 註冊 RealMedia Splitter:

    把下載的 RealMediaSplitter.ax (請選對版本) 放到 C:\windows\system32\ 下,並且下指令:
    regsvr32 C:\windows\system32\RealMediaSplitter.ax
  4. 其後就是依 Zaurus SL-C760 Movie Player Conversion Tips 的作法,開始轉檔。

    重點大概有幾個:

    • 選用 "Convert a File" 的功能,把檔案轉成 "File Archive"

    • 設定 audio 為 MPEG Layer-3 Codec

    • 設定 vedio 為 ISO MPEG-4 Video V1

    • 設定想要的 bitrate 及 fp

  5. 然後等很久後,就可以把檔案放到 Zaurus 上欣賞了。(大約是兩倍速吧!沒仔細看。)



閱讀全文 ...

[PDA] Zaurus C760 新手筆記 (21) - USB 連線傳送速度

試著透過 Zaurus 與 PC 的 USB 連線,利用網芳傳送一個大檔案到 CF 卡,然後開流量監視軟體,發現傳送速度的極限約在 500 k/s 左右。

我想瓶頸應該是在 Zaurus。


閱讀全文 ...

[PDA] Zaurus C760 新手筆記 (20) - FreeNoteQt

FreeNoteQT - 準備用來替換在 PALM 上使用的 BugMe!。



為了試用,隨手畫了上面的圖,看來這個軟體遠勝 BugMe!。

為什麼這麼說呢?主要有下列幾點:
  • FreeNoteQT 網頁上寫的:

    • huge canvas
    • export to the PDF form
    • freehand lines are formatted automatically
    • freehand curves are formatted automatically

  • 支援 layer

  • 可以用 "copy/paste/eraser" 的方式來 "複製/拖拉" 物件

  • 可以輸出成 PNG 檔

  • 手寫很順

  • 很容易控制
其它的還在觀察中。


閱讀全文 ...

2005年1月27日

[PDA] Zaurus C760 新手筆記 (19) - 轉移 PALM 的 PIM 資料到 KDE Pim

怎麼想也是帶一部機子比帶兩部方便,所以決定把 PALM 上的資料漸次轉移到 Zaurus 上。決定先從 PALM 的 "Date/Todo/Address" 開始,目標是轉移到 KDE Pim;Memo 的部份還沒找到替代軟體,還是用 Zaurus 內建的 "Text Notes"。

KDE Pim 中的 KO/Pi 的畫面:



KDE Pim 中的 KA/Pi 的畫面:



我目前在 Zaurus 上使用的 PIM 軟體:



過程是斷斷續續做的,沒做筆記,底下只是回想的綱要:

  1. 下載 KDE Pim:

    須要 Zaurus 端的:KDE Pimopenssl。(openssl 程式庫是 KDE Pim 中的 OM/Pi 要用的)

    及 Windows 端的:KDE Pim

  2. 安裝:

    Zaurus 上的軟體解開後共有 10 個 ipk 檔,通通裝到 Zaurus 上。內容主要有四個程式:

    • KO/Pi: Datebook + Todo List
    • KA/Pi: Address Book
    • PWM/Pi: 準備拿來替代 Splash ID,紀錄密碼、個人資料用的
    • OM/Pi: email client 軟體,還沒試用

    不過,當初在安裝 ipk 的時候,想說有 10 個檔,懶的一個個按,就開 terminal 下指令 "ipkg install *.ipk",安裝結果正常,可是後來要與 Sharp 的 DTM 資料同步時一直失敗,問題不知在那。後來還是開 "新增/移除 程式" 一個個安裝。

    另外,Windows 上的 KDE Pim,置放的目錄不能有中文字,否則 KA/Pi 會無法修改資料。Windows 端的軟體只有 KO/Pi 及 KA/Pi。

  3. 用 HotSync 把 Palm 上的資料同步到 Palm Desktop 上。

  4. 用 Zaurus 的同步軟體,把資料從 Windows 端轉移到 Zaurus 端。

    在同步時,要記得在 Intellisync 中設定,把所有的 "Todo/Datebook" 資料都轉移。(預設只有未發生的事件才會轉移)

    其中 Zaurus 的資料是放在 /home/zaurus/Applications/dtm 下。如果想要重來,可以砍掉其下的:SLADRS*.*、SLDATE*.*、SLTODO*.*、SLMEMO*.*。其它的不要亂砍,我曾砍掉過 SLFLER*.*,結果是相關的程式都無法啟動。

  5. 用 KO/Pi 及 KA/Pi 內建的同步功能,把 Sharp DTM 的資料同步進 KDE Pim。

    但在要同步之前,最好先關掉 Zaurus 內建 "Calendar/Todo List/Address Book" 的快速啟動功能,並且退出。不然,在同步後 KDE Pim 的程式會 WriteBack 資料回 DTM,但是原來內建的程式仍常駐在記憶體上,結果會無法同步或是資料錯亂。

    KDE Pim 的資料都在 /home/zaurus/kdepim 下,如果想要重來,把整個目錄砍掉就行。其中 KA/Pi 的資料是在 apps/kabc/std.vcf,KO/Pi 的資料是在 apps/korganizer/mycalendar.ics。兩個檔都是文字檔。

  6. 重整 std.vcf 的內容:

    KA/Pi 會把所有原來在 PALM 上列為 "行動電話" 的資料,都轉移成 "Home Mobile"。用 sed 把 std.vcf 檔中的 "Type=home;Type=cell" 文字段落都替換成 "Type=cell"。如果有兩隻以上的 Mobile 也沒關係,KA/Pi 會辨識出來。

    如果在 PALM 的 email 欄位有放兩個以上的 email address,其中的換行字元會被誤判,所以用 sed 把所有的 "EMAIL:*sp" (整行) 及 "*sp" (開頭 EMAIL,結尾是 *sp) 都殺掉。

    另外,KA/Pi 的分類不能用中文字元,把所有分類的中文字元都用 sed 替換成英文字。再進 KA/Pi,重建那些新的分類。

    在覆寫檔案回 std.vcf 時,要記得先把 KA/Pi 停掉。(如果有快速啟動,也要先停掉)

  7. 重整 mycalendar.ics 的內容:

    因為我在 PALM 端用的是 Agendus,它會在 "Todo/DateBook" 紀錄的 "Memo" 欄位放進一些特有的標記。把 mycalendar.ics 用編輯器打開後,找 DESCRIPTION 的欄位,觀察一下,可以找出那些標記的模式,用 sed 把它們砍掉。(細節忘了。其實不做也沒關係,我的潔癖而已。)

    不知是那裏錯誤,我有些在 PALM 上設為重覆發生的事件,轉移到 KO/Pi 後,都變成一筆筆單獨的重覆紀錄,數量很多 (不過好像又有些是正常的,不確定)。用 awk 抓 mycalendar.ics 上面 "BEGIN:VEVENT" 及 "END:VEVENT" 成對與 "BEGIN:VTODO" 及 "END:VTODO" 成對的段落,切成一個個的檔案;再用 grep 找出,把那些重覆紀錄的檔案砍掉,只留最早的一筆;再把各個檔案合併回來;最後再進 KO/Pi 設定重覆的條件。(細節忘了)

    另外,KO/Pi 的分類不能用中文字元,把所有分類的中文字元都用 sed 替換成英文字。再進 KO/Pi,重建那些新的分類。

    在覆寫檔案回 mycalendar.ics 時,要記得先把 KO/Pi 停掉。(如果有快速啟動,也要先停掉)

  8. 將 Zaurus 的 KDE Pim 與 Windows 上的 KDE Pim 同步:

    我試過用 Pi-Sync 的方式,不穩定,時而可以,時而不行。不知問題在那。

    用過 Remote file 的方式,不方便設定。(scp 是用 putty 的 scp 版本)

    最後是選擇用 Local file 的方式,直接用 Windows 上的 KA/Pi 及 KO/Pi 同步 Zaurus 上分享出來的網芳上的檔案。但是 Zaurus 的 KA/Pi 在同步前要先停掉,因為它不會辨識到檔案是否有被異動;KO/Pi 比較聰明,它會在辨識到檔案異動後,自行再同步一次。

  9. 之後異動過資料,只要重覆上個步驟就可以了。

不過,我最後發現,其實 PIM 在 PALM 上才是王道。簡單直覺的使用環境。

KDE Pim 算是夠華麗了,可是不夠直覺。


閱讀全文 ...